From 7af172f7e456cac4791713849e0ee8508474d26c Mon Sep 17 00:00:00 2001 From: Julink Date: Wed, 28 Aug 2024 14:17:47 +0200 Subject: [PATCH] feat: deployment to sepolia --- .../NFTResolverModule#LabelUtils.dbg.json | 4 + .../NFTResolverModule#LabelUtils.json | 49 + .../NFTResolverModule#NFTResolver.dbg.json | 4 + .../NFTResolverModule#NFTResolver.json | 420 + .../b2e8ce1ffa5fe8a5a8091ecc939c1bee.json | 659863 +++++++++++++++ .../chain-11155111/deployed_addresses.json | 4 + .../deployments/chain-11155111/journal.jsonl | 12 + ignition/modules/NFTResolver.ts | 46 +- 8 files changed, 660400 insertions(+), 2 deletions(-) create mode 100644 ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.dbg.json create mode 100644 ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.json create mode 100644 ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.dbg.json create mode 100644 ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.json create mode 100644 ignition/deployments/chain-11155111/build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json create mode 100644 ignition/deployments/chain-11155111/deployed_addresses.json create mode 100644 ignition/deployments/chain-11155111/journal.jsonl diff --git a/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.dbg.json b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.dbg.json new file mode 100644 index 0000000..0a6a140 --- /dev/null +++ b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.dbg.json @@ -0,0 +1,4 @@ +{ + "_format": "hh-sol-dbg-1", + "buildInfo": "../build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json" +} \ No newline at end of file diff --git a/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.json b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.json new file mode 100644 index 0000000..84ef228 --- /dev/null +++ b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#LabelUtils.json @@ -0,0 +1,49 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "LabelUtils", + "sourceName": "contracts/LabelUtils.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "extractFirstLabel", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "label", + "type": "bytes" + } + ], + "name": "extractNumericSuffix", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x610738610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806308dea91d1461004557806394bc2db614610075575b600080fd5b61005f600480360381019061005a9190610409565b6100a5565b60405161006c919061046b565b60405180910390f35b61008f600480360381019061008a9190610409565b610193565b60405161009c9190610505565b60405180910390f35b600080600090506000805b84518110156101485760008582815181106100ce576100cd610527565b5b602001015160f81c60f81b60f81c905060308160ff16101580156100f6575060398160ff1611155b1561012d576030816101089190610592565b60ff16600a8561011891906105c7565b6101229190610609565b93506001925061013a565b82156101395750610148565b5b5080806001019150506100b0565b5080610189576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101809061069a565b60405180910390fd5b8192505050919050565b60606000808382815181106101ab576101aa610527565b5b602001015160f81c60f81b60f81c905081806101c6906106ba565b92505060008160ff1667ffffffffffffffff8111156101e8576101e76102de565b5b6040519080825280601f01601f19166020018201604052801561021a5781602001600182028036833780820191505090505b50905060005b8260ff168110156102a3578581856102389190610609565b8151811061024957610248610527565b5b602001015160f81c60f81b82828151811061026757610266610527565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610220565b50809350505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610316826102cd565b810181811067ffffffffffffffff82111715610335576103346102de565b5b80604052505050565b60006103486102af565b9050610354828261030d565b919050565b600067ffffffffffffffff821115610374576103736102de565b5b61037d826102cd565b9050602081019050919050565b82818337600083830152505050565b60006103ac6103a784610359565b61033e565b9050828152602081018484840111156103c8576103c76102c8565b5b6103d384828561038a565b509392505050565b600082601f8301126103f0576103ef6102c3565b5b8135610400848260208601610399565b91505092915050565b60006020828403121561041f5761041e6102b9565b5b600082013567ffffffffffffffff81111561043d5761043c6102be565b5b610449848285016103db565b91505092915050565b6000819050919050565b61046581610452565b82525050565b6000602082019050610480600083018461045c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104c05780820151818401526020810190506104a5565b60008484015250505050565b60006104d782610486565b6104e18185610491565b93506104f18185602086016104a2565b6104fa816102cd565b840191505092915050565b6000602082019050818103600083015261051f81846104cc565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061059d82610556565b91506105a883610556565b9250828203905060ff8111156105c1576105c0610563565b5b92915050565b60006105d282610452565b91506105dd83610452565b92508282026105eb81610452565b9150828204841483151761060257610601610563565b5b5092915050565b600061061482610452565b915061061f83610452565b925082820190508082111561063757610636610563565b5b92915050565b600082825260208201905092915050565b7f4e6f206e756d657269632073756666697820666f756e64000000000000000000600082015250565b600061068460178361063d565b915061068f8261064e565b602082019050919050565b600060208201905081810360008301526106b381610677565b9050919050565b60006106c582610452565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106f7576106f6610563565b5b60018201905091905056fea2646970667358221220fd64dc77b8c67827745419800c3980f933551e388779f20784cc6bf95b81b97c64736f6c63430008190033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806308dea91d1461004557806394bc2db614610075575b600080fd5b61005f600480360381019061005a9190610409565b6100a5565b60405161006c919061046b565b60405180910390f35b61008f600480360381019061008a9190610409565b610193565b60405161009c9190610505565b60405180910390f35b600080600090506000805b84518110156101485760008582815181106100ce576100cd610527565b5b602001015160f81c60f81b60f81c905060308160ff16101580156100f6575060398160ff1611155b1561012d576030816101089190610592565b60ff16600a8561011891906105c7565b6101229190610609565b93506001925061013a565b82156101395750610148565b5b5080806001019150506100b0565b5080610189576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101809061069a565b60405180910390fd5b8192505050919050565b60606000808382815181106101ab576101aa610527565b5b602001015160f81c60f81b60f81c905081806101c6906106ba565b92505060008160ff1667ffffffffffffffff8111156101e8576101e76102de565b5b6040519080825280601f01601f19166020018201604052801561021a5781602001600182028036833780820191505090505b50905060005b8260ff168110156102a3578581856102389190610609565b8151811061024957610248610527565b5b602001015160f81c60f81b82828151811061026757610266610527565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610220565b50809350505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610316826102cd565b810181811067ffffffffffffffff82111715610335576103346102de565b5b80604052505050565b60006103486102af565b9050610354828261030d565b919050565b600067ffffffffffffffff821115610374576103736102de565b5b61037d826102cd565b9050602081019050919050565b82818337600083830152505050565b60006103ac6103a784610359565b61033e565b9050828152602081018484840111156103c8576103c76102c8565b5b6103d384828561038a565b509392505050565b600082601f8301126103f0576103ef6102c3565b5b8135610400848260208601610399565b91505092915050565b60006020828403121561041f5761041e6102b9565b5b600082013567ffffffffffffffff81111561043d5761043c6102be565b5b610449848285016103db565b91505092915050565b6000819050919050565b61046581610452565b82525050565b6000602082019050610480600083018461045c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104c05780820151818401526020810190506104a5565b60008484015250505050565b60006104d782610486565b6104e18185610491565b93506104f18185602086016104a2565b6104fa816102cd565b840191505092915050565b6000602082019050818103600083015261051f81846104cc565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061059d82610556565b91506105a883610556565b9250828203905060ff8111156105c1576105c0610563565b5b92915050565b60006105d282610452565b91506105dd83610452565b92508282026105eb81610452565b9150828204841483151761060257610601610563565b5b5092915050565b600061061482610452565b915061061f83610452565b925082820190508082111561063757610636610563565b5b92915050565b600082825260208201905092915050565b7f4e6f206e756d657269632073756666697820666f756e64000000000000000000600082015250565b600061068460178361063d565b915061068f8261064e565b602082019050919050565b600060208201905081810360008301526106b381610677565b9050919050565b60006106c582610452565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106f7576106f6610563565b5b60018201905091905056fea2646970667358221220fd64dc77b8c67827745419800c3980f933551e388779f20784cc6bf95b81b97c64736f6c63430008190033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.dbg.json b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.dbg.json new file mode 100644 index 0000000..0a6a140 --- /dev/null +++ b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.dbg.json @@ -0,0 +1,4 @@ +{ + "_format": "hh-sol-dbg-1", + "buildInfo": "../build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json" +} \ No newline at end of file diff --git a/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.json b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.json new file mode 100644 index 0000000..b15bd69 --- /dev/null +++ b/ignition/deployments/chain-11155111/artifacts/NFTResolverModule#NFTResolver.json @@ -0,0 +1,420 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "NFTResolver", + "sourceName": "contracts/NFTResolver.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IEVMVerifier", + "name": "_verifier", + "type": "address" + }, + { + "internalType": "contract ENS", + "name": "_ens", + "type": "address" + }, + { + "internalType": "contract INameWrapper", + "name": "_nameWrapper", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_l2ChainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_publicResolver", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "CommandTooLong", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string[]", + "name": "urls", + "type": "string[]" + }, + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "callbackFunction", + "type": "bytes4" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "OffchainLookup", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "actual", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expected", + "type": "uint256" + } + ], + "name": "ResponseLengthMismatch", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "StorageHandledByL2", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "TooManyCommands", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "TargetSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "addrCallback", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "extractNFTId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getAcceptedL2BlockRangeLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "response", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extradata", + "type": "bytes" + } + ], + "name": "getStorageSlotsCallback", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "getTarget", + "outputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2ChainId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nameWrapper", + "outputs": [ + { + "internalType": "contract INameWrapper", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "publicResolver", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "resolve", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "setTarget", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "verifier", + "outputs": [ + { + "internalType": "contract IEVMVerifier", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x61012060405234801561001157600080fd5b506040516139bb3803806139bb833981810160405281019061003391906103b6565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036100a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100999061048e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610111576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610108906104fa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610180576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017790610566565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508160e081815250508073ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff16815250505050505050610586565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061029382610268565b9050919050565b60006102a582610288565b9050919050565b6102b58161029a565b81146102c057600080fd5b50565b6000815190506102d2816102ac565b92915050565b60006102e382610288565b9050919050565b6102f3816102d8565b81146102fe57600080fd5b50565b600081519050610310816102ea565b92915050565b600061032182610288565b9050919050565b61033181610316565b811461033c57600080fd5b50565b60008151905061034e81610328565b92915050565b6000819050919050565b61036781610354565b811461037257600080fd5b50565b6000815190506103848161035e565b92915050565b61039381610288565b811461039e57600080fd5b50565b6000815190506103b08161038a565b92915050565b600080600080600060a086880312156103d2576103d1610263565b5b60006103e0888289016102c3565b95505060206103f188828901610301565b94505060406104028882890161033f565b935050606061041388828901610375565b9250506080610424888289016103a1565b9150509295509295909350565b600082825260208201905092915050565b7f4e616d6520577261707065722061646472657373206d75737420626520736574600082015250565b6000610478602083610431565b915061048382610442565b602082019050919050565b600060208201905081810360008301526104a78161046b565b9050919050565b7f56657269666965722061646472657373206d7573742062652073657400000000600082015250565b60006104e4601c83610431565b91506104ef826104ae565b602082019050919050565b60006020820190508181036000830152610513816104d7565b9050919050565b7f52656769737472792061646472657373206d7573742062652073657400000000600082015250565b6000610550601c83610431565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b60805160a05160c05160e051610100516133c76105f460003960008181610c4a0152610e92015260008181610b610152611184015260008181610a110152818161105a01526110ad01526000818161059c0152610fbe0152600081816105780152610f6301526133c76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639061b9231161008c578063d6ae3cd511610066578063d6ae3cd514610274578063f00eebf414610292578063f470901a146102c2578063f8256121146102f2576100ea565b80639061b9231461020a578063a8e5fbc01461023a578063d358df7714610258576100ea565b80632b7ac3f3116100c85780632b7ac3f3146101805780633f15457f1461019e5780635bdaa916146101bc5780636d74e86e146101ec576100ea565b806301ffc9a7146100ef57806315f643861461011f5780631a33ddae14610150575b600080fd5b61010960048036038101906101049190611994565b610310565b60405161011691906119dc565b60405180910390f35b61013960048036038101906101349190611b3d565b61045a565b604051610147929190611be0565b60405180910390f35b61016a60048036038101906101659190611c69565b610471565b6040516101779190611ccf565b60405180910390f35b610188610576565b6040516101959190611d49565b60405180910390f35b6101a661059a565b6040516101b39190611d85565b60405180910390f35b6101d660048036038101906101d19190611da0565b6105be565b6040516101e39190611ea0565b60405180910390f35b6101f4610778565b6040516102019190611ccf565b60405180910390f35b610224600480360381019061021f9190611da0565b610783565b6040516102319190611ea0565b60405180910390f35b610242610a0f565b60405161024f9190611ee3565b60405180910390f35b610272600480360381019061026d9190611f2a565b610a33565b005b61027c610b5f565b6040516102899190611ccf565b60405180910390f35b6102ac60048036038101906102a79190611f2a565b610b83565b6040516102b99190611ea0565b60405180910390f35b6102dc60048036038101906102d7919061206b565b610bea565b6040516102e99190611ea0565b60405180910390f35b6102fa610c48565b60405161030791906120e3565b60405180910390f35b60007f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103db57507f15f64386000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061044357507ff00eebf4000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610453575061045282610c6c565b5b9050919050565b600080610468836000610cd6565b91509150915091565b60008073__$9c99182377933a0292ee16286dad4ecc22$__6394bc2db685856040518363ffffffff1660e01b81526004016104ad92919061213c565b600060405180830381865af41580156104ca573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104f391906121d0565b905073__$9c99182377933a0292ee16286dad4ecc22$__6308dea91d826040518263ffffffff1660e01b815260040161052c9190612252565b602060405180830381865af4158015610549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056d91906122a0565b91505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600085858101906105d19190611b3d565b905060008060008060008089898101906105eb9190612438565b95509550955095509550955060008673ffffffffffffffffffffffffffffffffffffffff1663c51ca02a8787878c610621610778565b6040518663ffffffff1660e01b81526004016106419594939291906126e3565b600060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106879190612800565b905084518151146106d357805185516040517f291894250000000000000000000000000000000000000000000000000000000081526004016106ca929190612849565b60405180910390fd5b600061076e8483856040516024016106ec929190612872565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16610e3f90919063ffffffff16565b9050805160208201f35b600062015180905090565b606060048383905010156107cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c390612906565b60405180910390fd5b6000838360049080926107e193929190612930565b8101906107ee919061296b565b905060008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905080156108f7576108ee87878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610e8b565b92505050610a07565b600061094888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050600086869061095a91906129b0565b9050633b3b57de60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036109cc5760006109b48a8a610471565b90506109c08184610f38565b95505050505050610a07565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fe90612a5b565b60405180910390fd5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610a8284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061045a565b509050610a8e81610fb9565b610acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac490612aed565b60405180910390fd5b8160008083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8848484604051610b5193929190612b3a565b60405180910390a150505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000610bd685858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050610be281611182565b509392505050565b6060600083600081518110610c0257610c01612b6c565b5b6020026020010151806020019051810190610c1d9190612bb0565b905080604051602001610c3091906120e3565b60405160208183030381529060405291505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000806000610cee84866111e190919063ffffffff16565b60ff1690506000801b92506000811115610e26576000610d25600186610d149190612c0c565b838861120c9092919063ffffffff16565b9050610d488660018488610d399190612c0c565b610d439190612c0c565b610cd6565b80945081955050508381604051602001610d63929190612c61565b604051602081830303815290604052805190602001209350600073ffffffffffffffffffffffffffffffffffffffff1660008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e20578360008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050610e38565b50610e36565b6000801b60009250925050610e38565b505b9250929050565b6060610e83838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250611238565b905092915050565b60606000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1684604051610ed59190612cc9565b600060405180830381855afa9150503d8060008114610f10576040519150601f19603f3d011682016040523d82523d6000602084013e610f15565b606091505b50915091508115610f2a578092505050610f32565b805160208201fd5b92915050565b6060610fb363f470901a60e01b60405180602001604052806000815250610fa486610f966002610f887f00000000000000000000000000000000000000000000000000000000000000008a611305565b61141490919063ffffffff16565b6114f590919063ffffffff16565b6115769092919063ffffffff16565b92915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b81526004016110159190612ce0565b602060405180830381865afa158015611032573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110569190612d10565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361114b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b81526004016111079190611ccf565b602060405180830381865afa158015611124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111489190612d10565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614915050919050565b7f0000000000000000000000000000000000000000000000000000000000000000816040517fe0a050710000000000000000000000000000000000000000000000000000000081526004016111d8929190612d3d565b60405180910390fd5b60008282815181106111f6576111f5612b6c565b5b602001015160f81c60f81b60f81c905092915050565b60008351828461121c9190612c0c565b111561122757600080fd5b818360208601012090509392505050565b60608247101561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612dd8565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516112a69190612cc9565b60006040518083038185875af1925050503d80600081146112e3576040519150601f19603f3d011682016040523d82523d6000602084013e6112e8565b606091505b50915091506112f987838387611701565b92505050949350505050565b61130d6118cd565b6000602067ffffffffffffffff81111561132a57611329611a12565b5b6040519080825280602002602001820160405280156113585781602001602082028036833780820191505090505b5090506000602067ffffffffffffffff81111561137857611377611a12565b5b6040519080825280602002602001820160405280156113ab57816020015b60608152602001906001900390816113965790505b50905060008252600081526040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200160008152602001828152509250505092915050565b61141c6118cd565b60008360400151905060008151905060008111801561143f575060208560600151105b156114505761144f8560ff611776565b5b600181018252602085604001515111156114a25760206040517f128e70080000000000000000000000000000000000000000000000000000000081526004016114999190611ccf565b60405180910390fd5b60008560600181815250506114b8856000611776565b6114ea856114e587876040516020016114d19190611ccf565b60405160208183030381529060405261181d565b611776565b849250505092915050565b6114fd6118cd565b602083606001511061153b576040517fb00fd63800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156d8361156885856040516020016115549190611ccf565b60405160208183030381529060405261181d565b611776565b82905092915050565b600083604001515111801561158f575060208360600151105b156115a05761159f8360ff611776565b5b30836000015173ffffffffffffffffffffffffffffffffffffffff1663b50f2fbc6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156115f0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116199190612f7a565b84602001518560400151866080015160405160240161163a93929190612fc3565b60405160208183030381529060405263ea9cd3bf60e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050635bdaa91660e01b866000015187602001518860400151896080015189896040516020016116b296959493929190613017565b6040516020818303038152906040526040517f556f18300000000000000000000000000000000000000000000000000000000081526004016116f89594939291906131a4565b60405180910390fd5b6060831561176357600083510361175b5761171b8561185a565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190613258565b60405180910390fd5b5b82905061176e565b61176d838361187d565b5b949350505050565b6000600183604001515161178a9190613278565b905082606001805180919061179e906132ac565b81525060086117ad91906132f4565b8260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c836040015182815181106117ec576117eb612b6c565b5b6020026020010151178360400151828151811061180c5761180b612b6c565b5b602002602001018181525050505050565b600080836080015190508051915060018201815282818360ff168151811061184857611847612b6c565b5b60200260200101819052505092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156118905781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c4919061336f565b60405180910390fd5b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6119718161193c565b811461197c57600080fd5b50565b60008135905061198e81611968565b92915050565b6000602082840312156119aa576119a9611932565b5b60006119b88482850161197f565b91505092915050565b60008115159050919050565b6119d6816119c1565b82525050565b60006020820190506119f160008301846119cd565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a4a82611a01565b810181811067ffffffffffffffff82111715611a6957611a68611a12565b5b80604052505050565b6000611a7c611928565b9050611a888282611a41565b919050565b600067ffffffffffffffff821115611aa857611aa7611a12565b5b611ab182611a01565b9050602081019050919050565b82818337600083830152505050565b6000611ae0611adb84611a8d565b611a72565b905082815260208101848484011115611afc57611afb6119fc565b5b611b07848285611abe565b509392505050565b600082601f830112611b2457611b236119f7565b5b8135611b34848260208601611acd565b91505092915050565b600060208284031215611b5357611b52611932565b5b600082013567ffffffffffffffff811115611b7157611b70611937565b5b611b7d84828501611b0f565b91505092915050565b6000819050919050565b611b9981611b86565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bca82611b9f565b9050919050565b611bda81611bbf565b82525050565b6000604082019050611bf56000830185611b90565b611c026020830184611bd1565b9392505050565b600080fd5b600080fd5b60008083601f840112611c2957611c286119f7565b5b8235905067ffffffffffffffff811115611c4657611c45611c09565b5b602083019150836001820283011115611c6257611c61611c0e565b5b9250929050565b60008060208385031215611c8057611c7f611932565b5b600083013567ffffffffffffffff811115611c9e57611c9d611937565b5b611caa85828601611c13565b92509250509250929050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b6000819050919050565b6000611d0f611d0a611d0584611b9f565b611cea565b611b9f565b9050919050565b6000611d2182611cf4565b9050919050565b6000611d3382611d16565b9050919050565b611d4381611d28565b82525050565b6000602082019050611d5e6000830184611d3a565b92915050565b6000611d6f82611d16565b9050919050565b611d7f81611d64565b82525050565b6000602082019050611d9a6000830184611d76565b92915050565b60008060008060408587031215611dba57611db9611932565b5b600085013567ffffffffffffffff811115611dd857611dd7611937565b5b611de487828801611c13565b9450945050602085013567ffffffffffffffff811115611e0757611e06611937565b5b611e1387828801611c13565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e5b578082015181840152602081019050611e40565b60008484015250505050565b6000611e7282611e21565b611e7c8185611e2c565b9350611e8c818560208601611e3d565b611e9581611a01565b840191505092915050565b60006020820190508181036000830152611eba8184611e67565b905092915050565b6000611ecd82611d16565b9050919050565b611edd81611ec2565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b611f0781611bbf565b8114611f1257600080fd5b50565b600081359050611f2481611efe565b92915050565b600080600060408486031215611f4357611f42611932565b5b600084013567ffffffffffffffff811115611f6157611f60611937565b5b611f6d86828701611c13565b93509350506020611f8086828701611f15565b9150509250925092565b600067ffffffffffffffff821115611fa557611fa4611a12565b5b602082029050602081019050919050565b6000611fc9611fc484611f8a565b611a72565b90508083825260208201905060208402830185811115611fec57611feb611c0e565b5b835b8181101561203357803567ffffffffffffffff811115612011576120106119f7565b5b80860161201e8982611b0f565b85526020850194505050602081019050611fee565b5050509392505050565b600082601f830112612052576120516119f7565b5b8135612062848260208601611fb6565b91505092915050565b6000806040838503121561208257612081611932565b5b600083013567ffffffffffffffff8111156120a05761209f611937565b5b6120ac8582860161203d565b925050602083013567ffffffffffffffff8111156120cd576120cc611937565b5b6120d985828601611b0f565b9150509250929050565b60006020820190506120f86000830184611bd1565b92915050565b600082825260208201905092915050565b600061211b83856120fe565b9350612128838584611abe565b61213183611a01565b840190509392505050565b6000602082019050818103600083015261215781848661210f565b90509392505050565b600061217361216e84611a8d565b611a72565b90508281526020810184848401111561218f5761218e6119fc565b5b61219a848285611e3d565b509392505050565b600082601f8301126121b7576121b66119f7565b5b81516121c7848260208601612160565b91505092915050565b6000602082840312156121e6576121e5611932565b5b600082015167ffffffffffffffff81111561220457612203611937565b5b612210848285016121a2565b91505092915050565b600061222482611e21565b61222e81856120fe565b935061223e818560208601611e3d565b61224781611a01565b840191505092915050565b6000602082019050818103600083015261226c8184612219565b905092915050565b61227d81611cb6565b811461228857600080fd5b50565b60008151905061229a81612274565b92915050565b6000602082840312156122b6576122b5611932565b5b60006122c48482850161228b565b91505092915050565b60006122d882611bbf565b9050919050565b6122e8816122cd565b81146122f357600080fd5b50565b600081359050612305816122df565b92915050565b600061231682611b9f565b9050919050565b6123268161230b565b811461233157600080fd5b50565b6000813590506123438161231d565b92915050565b600067ffffffffffffffff82111561236457612363611a12565b5b602082029050602081019050919050565b61237e81611b86565b811461238957600080fd5b50565b60008135905061239b81612375565b92915050565b60006123b46123af84612349565b611a72565b905080838252602082019050602084028301858111156123d7576123d6611c0e565b5b835b8181101561240057806123ec888261238c565b8452602084019350506020810190506123d9565b5050509392505050565b600082601f83011261241f5761241e6119f7565b5b813561242f8482602086016123a1565b91505092915050565b60008060008060008060c0878903121561245557612454611932565b5b600061246389828a016122f6565b965050602061247489828a01612334565b955050604087013567ffffffffffffffff81111561249557612494611937565b5b6124a189828a0161240a565b945050606087013567ffffffffffffffff8111156124c2576124c1611937565b5b6124ce89828a0161203d565b93505060806124df89828a0161197f565b92505060a087013567ffffffffffffffff811115612500576124ff611937565b5b61250c89828a01611b0f565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61254e81611b86565b82525050565b60006125608383612545565b60208301905092915050565b6000602082019050919050565b600061258482612519565b61258e8185612524565b935061259983612535565b8060005b838110156125ca5781516125b18882612554565b97506125bc8361256c565b92505060018101905061259d565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061261f82611e21565b6126298185612603565b9350612639818560208601611e3d565b61264281611a01565b840191505092915050565b60006126598383612614565b905092915050565b6000602082019050919050565b6000612679826125d7565b61268381856125e2565b935083602082028501612695856125f3565b8060005b858110156126d157848403895281516126b2858261264d565b94506126bd83612661565b925060208a01995050600181019050612699565b50829750879550505050505092915050565b600060a0820190506126f86000830188611bd1565b818103602083015261270a8187612579565b9050818103604083015261271e818661266e565b905081810360608301526127328185611e67565b90506127416080830184611cc0565b9695505050505050565b600061275e61275984611f8a565b611a72565b9050808382526020820190506020840283018581111561278157612780611c0e565b5b835b818110156127c857805167ffffffffffffffff8111156127a6576127a56119f7565b5b8086016127b389826121a2565b85526020850194505050602081019050612783565b5050509392505050565b600082601f8301126127e7576127e66119f7565b5b81516127f784826020860161274b565b91505092915050565b60006020828403121561281657612815611932565b5b600082015167ffffffffffffffff81111561283457612833611937565b5b612840848285016127d2565b91505092915050565b600060408201905061285e6000830185611cc0565b61286b6020830184611cc0565b9392505050565b6000604082019050818103600083015261288c818561266e565b905081810360208301526128a08184611e67565b90509392505050565b600082825260208201905092915050565b7f706172616d206461746120746f6f2073686f7274000000000000000000000000600082015250565b60006128f06014836128a9565b91506128fb826128ba565b602082019050919050565b6000602082019050818103600083015261291f816128e3565b9050919050565b600080fd5b600080fd5b6000808585111561294457612943612926565b5b838611156129555761295461292b565b5b6001850283019150848603905094509492505050565b60006020828403121561298157612980611932565b5b600061298f8482850161238c565b91505092915050565b600082905092915050565b600082821b905092915050565b60006129bc8383612998565b826129c7813561193c565b92506004821015612a0757612a027fffffffff00000000000000000000000000000000000000000000000000000000836004036008026129a3565b831692505b505092915050565b7f696e76616c69642073656c6563746f7200000000000000000000000000000000600082015250565b6000612a456010836128a9565b9150612a5082612a0f565b602082019050919050565b60006020820190508181036000830152612a7481612a38565b9050919050565b7f4e6f7420617574686f72697a656420746f207365742074617267657420666f7260008201527f2074686973206e6f646500000000000000000000000000000000000000000000602082015250565b6000612ad7602a836128a9565b9150612ae282612a7b565b604082019050919050565b60006020820190508181036000830152612b0681612aca565b9050919050565b6000612b198385611e2c565b9350612b26838584611abe565b612b2f83611a01565b840190509392505050565b60006040820190508181036000830152612b55818587612b0d565b9050612b646020830184611bd1565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612baa8161231d565b92915050565b600060208284031215612bc657612bc5611932565b5b6000612bd484828501612b9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c1782611cb6565b9150612c2283611cb6565b9250828201905080821115612c3a57612c39612bdd565b5b92915050565b6000819050919050565b612c5b612c5682611b86565b612c40565b82525050565b6000612c6d8285612c4a565b602082019150612c7d8284612c4a565b6020820191508190509392505050565b600081905092915050565b6000612ca382611e21565b612cad8185612c8d565b9350612cbd818560208601611e3d565b80840191505092915050565b6000612cd58284612c98565b915081905092915050565b6000602082019050612cf56000830184611b90565b92915050565b600081519050612d0a81611efe565b92915050565b600060208284031215612d2657612d25611932565b5b6000612d3484828501612cfb565b91505092915050565b6000604082019050612d526000830185611cc0565b612d5f6020830184611bd1565b9392505050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612dc26026836128a9565b9150612dcd82612d66565b604082019050919050565b60006020820190508181036000830152612df181612db5565b9050919050565b600067ffffffffffffffff821115612e1357612e12611a12565b5b602082029050602081019050919050565b600067ffffffffffffffff821115612e3f57612e3e611a12565b5b612e4882611a01565b9050602081019050919050565b6000612e68612e6384612e24565b611a72565b905082815260208101848484011115612e8457612e836119fc565b5b612e8f848285611e3d565b509392505050565b600082601f830112612eac57612eab6119f7565b5b8151612ebc848260208601612e55565b91505092915050565b6000612ed8612ed384612df8565b611a72565b90508083825260208201905060208402830185811115612efb57612efa611c0e565b5b835b81811015612f4257805167ffffffffffffffff811115612f2057612f1f6119f7565b5b808601612f2d8982612e97565b85526020850194505050602081019050612efd565b5050509392505050565b600082601f830112612f6157612f606119f7565b5b8151612f71848260208601612ec5565b91505092915050565b600060208284031215612f9057612f8f611932565b5b600082015167ffffffffffffffff811115612fae57612fad611937565b5b612fba84828501612f4c565b91505092915050565b6000606082019050612fd86000830186611bd1565b8181036020830152612fea8185612579565b90508181036040830152612ffe818461266e565b9050949350505050565b6130118161193c565b82525050565b600060c08201905061302c6000830189611d3a565b6130396020830188611bd1565b818103604083015261304b8187612579565b9050818103606083015261305f818661266e565b905061306e6080830185613008565b81810360a08301526130808184611e67565b9050979650505050505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60006130e0826130b9565b6130ea81856130c4565b93506130fa818560208601611e3d565b61310381611a01565b840191505092915050565b600061311a83836130d5565b905092915050565b6000602082019050919050565b600061313a8261308d565b6131448185613098565b935083602082028501613156856130a9565b8060005b858110156131925784840389528151613173858261310e565b945061317e83613122565b925060208a0199505060018101905061315a565b50829750879550505050505092915050565b600060a0820190506131b96000830188611bd1565b81810360208301526131cb818761312f565b905081810360408301526131df8186611e67565b90506131ee6060830185613008565b81810360808301526132008184611e67565b90509695505050505050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613242601d836128a9565b915061324d8261320c565b602082019050919050565b6000602082019050818103600083015261327181613235565b9050919050565b600061328382611cb6565b915061328e83611cb6565b92508282039050818111156132a6576132a5612bdd565b5b92915050565b60006132b782611cb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132e9576132e8612bdd565b5b600182019050919050565b60006132ff82611cb6565b915061330a83611cb6565b925082820261331881611cb6565b9150828204841483151761332f5761332e612bdd565b5b5092915050565b6000613341826130b9565b61334b81856128a9565b935061335b818560208601611e3d565b61336481611a01565b840191505092915050565b600060208201905081810360008301526133898184613336565b90509291505056fea26469706673582212205bb3f0bfa04cb3562838e41dbf668e48d8b109ef17a588380510fd0153dba59364736f6c63430008190033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639061b9231161008c578063d6ae3cd511610066578063d6ae3cd514610274578063f00eebf414610292578063f470901a146102c2578063f8256121146102f2576100ea565b80639061b9231461020a578063a8e5fbc01461023a578063d358df7714610258576100ea565b80632b7ac3f3116100c85780632b7ac3f3146101805780633f15457f1461019e5780635bdaa916146101bc5780636d74e86e146101ec576100ea565b806301ffc9a7146100ef57806315f643861461011f5780631a33ddae14610150575b600080fd5b61010960048036038101906101049190611994565b610310565b60405161011691906119dc565b60405180910390f35b61013960048036038101906101349190611b3d565b61045a565b604051610147929190611be0565b60405180910390f35b61016a60048036038101906101659190611c69565b610471565b6040516101779190611ccf565b60405180910390f35b610188610576565b6040516101959190611d49565b60405180910390f35b6101a661059a565b6040516101b39190611d85565b60405180910390f35b6101d660048036038101906101d19190611da0565b6105be565b6040516101e39190611ea0565b60405180910390f35b6101f4610778565b6040516102019190611ccf565b60405180910390f35b610224600480360381019061021f9190611da0565b610783565b6040516102319190611ea0565b60405180910390f35b610242610a0f565b60405161024f9190611ee3565b60405180910390f35b610272600480360381019061026d9190611f2a565b610a33565b005b61027c610b5f565b6040516102899190611ccf565b60405180910390f35b6102ac60048036038101906102a79190611f2a565b610b83565b6040516102b99190611ea0565b60405180910390f35b6102dc60048036038101906102d7919061206b565b610bea565b6040516102e99190611ea0565b60405180910390f35b6102fa610c48565b60405161030791906120e3565b60405180910390f35b60007f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103db57507f15f64386000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061044357507ff00eebf4000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610453575061045282610c6c565b5b9050919050565b600080610468836000610cd6565b91509150915091565b60008073__$9c99182377933a0292ee16286dad4ecc22$__6394bc2db685856040518363ffffffff1660e01b81526004016104ad92919061213c565b600060405180830381865af41580156104ca573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104f391906121d0565b905073__$9c99182377933a0292ee16286dad4ecc22$__6308dea91d826040518263ffffffff1660e01b815260040161052c9190612252565b602060405180830381865af4158015610549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056d91906122a0565b91505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600085858101906105d19190611b3d565b905060008060008060008089898101906105eb9190612438565b95509550955095509550955060008673ffffffffffffffffffffffffffffffffffffffff1663c51ca02a8787878c610621610778565b6040518663ffffffff1660e01b81526004016106419594939291906126e3565b600060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106879190612800565b905084518151146106d357805185516040517f291894250000000000000000000000000000000000000000000000000000000081526004016106ca929190612849565b60405180910390fd5b600061076e8483856040516024016106ec929190612872565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16610e3f90919063ffffffff16565b9050805160208201f35b600062015180905090565b606060048383905010156107cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c390612906565b60405180910390fd5b6000838360049080926107e193929190612930565b8101906107ee919061296b565b905060008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905080156108f7576108ee87878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610e8b565b92505050610a07565b600061094888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050600086869061095a91906129b0565b9050633b3b57de60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036109cc5760006109b48a8a610471565b90506109c08184610f38565b95505050505050610a07565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fe90612a5b565b60405180910390fd5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610a8284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061045a565b509050610a8e81610fb9565b610acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac490612aed565b60405180910390fd5b8160008083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8848484604051610b5193929190612b3a565b60405180910390a150505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000610bd685858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050610be281611182565b509392505050565b6060600083600081518110610c0257610c01612b6c565b5b6020026020010151806020019051810190610c1d9190612bb0565b905080604051602001610c3091906120e3565b60405160208183030381529060405291505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000806000610cee84866111e190919063ffffffff16565b60ff1690506000801b92506000811115610e26576000610d25600186610d149190612c0c565b838861120c9092919063ffffffff16565b9050610d488660018488610d399190612c0c565b610d439190612c0c565b610cd6565b80945081955050508381604051602001610d63929190612c61565b604051602081830303815290604052805190602001209350600073ffffffffffffffffffffffffffffffffffffffff1660008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e20578360008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050610e38565b50610e36565b6000801b60009250925050610e38565b505b9250929050565b6060610e83838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250611238565b905092915050565b60606000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1684604051610ed59190612cc9565b600060405180830381855afa9150503d8060008114610f10576040519150601f19603f3d011682016040523d82523d6000602084013e610f15565b606091505b50915091508115610f2a578092505050610f32565b805160208201fd5b92915050565b6060610fb363f470901a60e01b60405180602001604052806000815250610fa486610f966002610f887f00000000000000000000000000000000000000000000000000000000000000008a611305565b61141490919063ffffffff16565b6114f590919063ffffffff16565b6115769092919063ffffffff16565b92915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b81526004016110159190612ce0565b602060405180830381865afa158015611032573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110569190612d10565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361114b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b81526004016111079190611ccf565b602060405180830381865afa158015611124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111489190612d10565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614915050919050565b7f0000000000000000000000000000000000000000000000000000000000000000816040517fe0a050710000000000000000000000000000000000000000000000000000000081526004016111d8929190612d3d565b60405180910390fd5b60008282815181106111f6576111f5612b6c565b5b602001015160f81c60f81b60f81c905092915050565b60008351828461121c9190612c0c565b111561122757600080fd5b818360208601012090509392505050565b60608247101561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612dd8565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516112a69190612cc9565b60006040518083038185875af1925050503d80600081146112e3576040519150601f19603f3d011682016040523d82523d6000602084013e6112e8565b606091505b50915091506112f987838387611701565b92505050949350505050565b61130d6118cd565b6000602067ffffffffffffffff81111561132a57611329611a12565b5b6040519080825280602002602001820160405280156113585781602001602082028036833780820191505090505b5090506000602067ffffffffffffffff81111561137857611377611a12565b5b6040519080825280602002602001820160405280156113ab57816020015b60608152602001906001900390816113965790505b50905060008252600081526040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200160008152602001828152509250505092915050565b61141c6118cd565b60008360400151905060008151905060008111801561143f575060208560600151105b156114505761144f8560ff611776565b5b600181018252602085604001515111156114a25760206040517f128e70080000000000000000000000000000000000000000000000000000000081526004016114999190611ccf565b60405180910390fd5b60008560600181815250506114b8856000611776565b6114ea856114e587876040516020016114d19190611ccf565b60405160208183030381529060405261181d565b611776565b849250505092915050565b6114fd6118cd565b602083606001511061153b576040517fb00fd63800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156d8361156885856040516020016115549190611ccf565b60405160208183030381529060405261181d565b611776565b82905092915050565b600083604001515111801561158f575060208360600151105b156115a05761159f8360ff611776565b5b30836000015173ffffffffffffffffffffffffffffffffffffffff1663b50f2fbc6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156115f0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116199190612f7a565b84602001518560400151866080015160405160240161163a93929190612fc3565b60405160208183030381529060405263ea9cd3bf60e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050635bdaa91660e01b866000015187602001518860400151896080015189896040516020016116b296959493929190613017565b6040516020818303038152906040526040517f556f18300000000000000000000000000000000000000000000000000000000081526004016116f89594939291906131a4565b60405180910390fd5b6060831561176357600083510361175b5761171b8561185a565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190613258565b60405180910390fd5b5b82905061176e565b61176d838361187d565b5b949350505050565b6000600183604001515161178a9190613278565b905082606001805180919061179e906132ac565b81525060086117ad91906132f4565b8260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c836040015182815181106117ec576117eb612b6c565b5b6020026020010151178360400151828151811061180c5761180b612b6c565b5b602002602001018181525050505050565b600080836080015190508051915060018201815282818360ff168151811061184857611847612b6c565b5b60200260200101819052505092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156118905781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c4919061336f565b60405180910390fd5b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6119718161193c565b811461197c57600080fd5b50565b60008135905061198e81611968565b92915050565b6000602082840312156119aa576119a9611932565b5b60006119b88482850161197f565b91505092915050565b60008115159050919050565b6119d6816119c1565b82525050565b60006020820190506119f160008301846119cd565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a4a82611a01565b810181811067ffffffffffffffff82111715611a6957611a68611a12565b5b80604052505050565b6000611a7c611928565b9050611a888282611a41565b919050565b600067ffffffffffffffff821115611aa857611aa7611a12565b5b611ab182611a01565b9050602081019050919050565b82818337600083830152505050565b6000611ae0611adb84611a8d565b611a72565b905082815260208101848484011115611afc57611afb6119fc565b5b611b07848285611abe565b509392505050565b600082601f830112611b2457611b236119f7565b5b8135611b34848260208601611acd565b91505092915050565b600060208284031215611b5357611b52611932565b5b600082013567ffffffffffffffff811115611b7157611b70611937565b5b611b7d84828501611b0f565b91505092915050565b6000819050919050565b611b9981611b86565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bca82611b9f565b9050919050565b611bda81611bbf565b82525050565b6000604082019050611bf56000830185611b90565b611c026020830184611bd1565b9392505050565b600080fd5b600080fd5b60008083601f840112611c2957611c286119f7565b5b8235905067ffffffffffffffff811115611c4657611c45611c09565b5b602083019150836001820283011115611c6257611c61611c0e565b5b9250929050565b60008060208385031215611c8057611c7f611932565b5b600083013567ffffffffffffffff811115611c9e57611c9d611937565b5b611caa85828601611c13565b92509250509250929050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b6000819050919050565b6000611d0f611d0a611d0584611b9f565b611cea565b611b9f565b9050919050565b6000611d2182611cf4565b9050919050565b6000611d3382611d16565b9050919050565b611d4381611d28565b82525050565b6000602082019050611d5e6000830184611d3a565b92915050565b6000611d6f82611d16565b9050919050565b611d7f81611d64565b82525050565b6000602082019050611d9a6000830184611d76565b92915050565b60008060008060408587031215611dba57611db9611932565b5b600085013567ffffffffffffffff811115611dd857611dd7611937565b5b611de487828801611c13565b9450945050602085013567ffffffffffffffff811115611e0757611e06611937565b5b611e1387828801611c13565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e5b578082015181840152602081019050611e40565b60008484015250505050565b6000611e7282611e21565b611e7c8185611e2c565b9350611e8c818560208601611e3d565b611e9581611a01565b840191505092915050565b60006020820190508181036000830152611eba8184611e67565b905092915050565b6000611ecd82611d16565b9050919050565b611edd81611ec2565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b611f0781611bbf565b8114611f1257600080fd5b50565b600081359050611f2481611efe565b92915050565b600080600060408486031215611f4357611f42611932565b5b600084013567ffffffffffffffff811115611f6157611f60611937565b5b611f6d86828701611c13565b93509350506020611f8086828701611f15565b9150509250925092565b600067ffffffffffffffff821115611fa557611fa4611a12565b5b602082029050602081019050919050565b6000611fc9611fc484611f8a565b611a72565b90508083825260208201905060208402830185811115611fec57611feb611c0e565b5b835b8181101561203357803567ffffffffffffffff811115612011576120106119f7565b5b80860161201e8982611b0f565b85526020850194505050602081019050611fee565b5050509392505050565b600082601f830112612052576120516119f7565b5b8135612062848260208601611fb6565b91505092915050565b6000806040838503121561208257612081611932565b5b600083013567ffffffffffffffff8111156120a05761209f611937565b5b6120ac8582860161203d565b925050602083013567ffffffffffffffff8111156120cd576120cc611937565b5b6120d985828601611b0f565b9150509250929050565b60006020820190506120f86000830184611bd1565b92915050565b600082825260208201905092915050565b600061211b83856120fe565b9350612128838584611abe565b61213183611a01565b840190509392505050565b6000602082019050818103600083015261215781848661210f565b90509392505050565b600061217361216e84611a8d565b611a72565b90508281526020810184848401111561218f5761218e6119fc565b5b61219a848285611e3d565b509392505050565b600082601f8301126121b7576121b66119f7565b5b81516121c7848260208601612160565b91505092915050565b6000602082840312156121e6576121e5611932565b5b600082015167ffffffffffffffff81111561220457612203611937565b5b612210848285016121a2565b91505092915050565b600061222482611e21565b61222e81856120fe565b935061223e818560208601611e3d565b61224781611a01565b840191505092915050565b6000602082019050818103600083015261226c8184612219565b905092915050565b61227d81611cb6565b811461228857600080fd5b50565b60008151905061229a81612274565b92915050565b6000602082840312156122b6576122b5611932565b5b60006122c48482850161228b565b91505092915050565b60006122d882611bbf565b9050919050565b6122e8816122cd565b81146122f357600080fd5b50565b600081359050612305816122df565b92915050565b600061231682611b9f565b9050919050565b6123268161230b565b811461233157600080fd5b50565b6000813590506123438161231d565b92915050565b600067ffffffffffffffff82111561236457612363611a12565b5b602082029050602081019050919050565b61237e81611b86565b811461238957600080fd5b50565b60008135905061239b81612375565b92915050565b60006123b46123af84612349565b611a72565b905080838252602082019050602084028301858111156123d7576123d6611c0e565b5b835b8181101561240057806123ec888261238c565b8452602084019350506020810190506123d9565b5050509392505050565b600082601f83011261241f5761241e6119f7565b5b813561242f8482602086016123a1565b91505092915050565b60008060008060008060c0878903121561245557612454611932565b5b600061246389828a016122f6565b965050602061247489828a01612334565b955050604087013567ffffffffffffffff81111561249557612494611937565b5b6124a189828a0161240a565b945050606087013567ffffffffffffffff8111156124c2576124c1611937565b5b6124ce89828a0161203d565b93505060806124df89828a0161197f565b92505060a087013567ffffffffffffffff811115612500576124ff611937565b5b61250c89828a01611b0f565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61254e81611b86565b82525050565b60006125608383612545565b60208301905092915050565b6000602082019050919050565b600061258482612519565b61258e8185612524565b935061259983612535565b8060005b838110156125ca5781516125b18882612554565b97506125bc8361256c565b92505060018101905061259d565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061261f82611e21565b6126298185612603565b9350612639818560208601611e3d565b61264281611a01565b840191505092915050565b60006126598383612614565b905092915050565b6000602082019050919050565b6000612679826125d7565b61268381856125e2565b935083602082028501612695856125f3565b8060005b858110156126d157848403895281516126b2858261264d565b94506126bd83612661565b925060208a01995050600181019050612699565b50829750879550505050505092915050565b600060a0820190506126f86000830188611bd1565b818103602083015261270a8187612579565b9050818103604083015261271e818661266e565b905081810360608301526127328185611e67565b90506127416080830184611cc0565b9695505050505050565b600061275e61275984611f8a565b611a72565b9050808382526020820190506020840283018581111561278157612780611c0e565b5b835b818110156127c857805167ffffffffffffffff8111156127a6576127a56119f7565b5b8086016127b389826121a2565b85526020850194505050602081019050612783565b5050509392505050565b600082601f8301126127e7576127e66119f7565b5b81516127f784826020860161274b565b91505092915050565b60006020828403121561281657612815611932565b5b600082015167ffffffffffffffff81111561283457612833611937565b5b612840848285016127d2565b91505092915050565b600060408201905061285e6000830185611cc0565b61286b6020830184611cc0565b9392505050565b6000604082019050818103600083015261288c818561266e565b905081810360208301526128a08184611e67565b90509392505050565b600082825260208201905092915050565b7f706172616d206461746120746f6f2073686f7274000000000000000000000000600082015250565b60006128f06014836128a9565b91506128fb826128ba565b602082019050919050565b6000602082019050818103600083015261291f816128e3565b9050919050565b600080fd5b600080fd5b6000808585111561294457612943612926565b5b838611156129555761295461292b565b5b6001850283019150848603905094509492505050565b60006020828403121561298157612980611932565b5b600061298f8482850161238c565b91505092915050565b600082905092915050565b600082821b905092915050565b60006129bc8383612998565b826129c7813561193c565b92506004821015612a0757612a027fffffffff00000000000000000000000000000000000000000000000000000000836004036008026129a3565b831692505b505092915050565b7f696e76616c69642073656c6563746f7200000000000000000000000000000000600082015250565b6000612a456010836128a9565b9150612a5082612a0f565b602082019050919050565b60006020820190508181036000830152612a7481612a38565b9050919050565b7f4e6f7420617574686f72697a656420746f207365742074617267657420666f7260008201527f2074686973206e6f646500000000000000000000000000000000000000000000602082015250565b6000612ad7602a836128a9565b9150612ae282612a7b565b604082019050919050565b60006020820190508181036000830152612b0681612aca565b9050919050565b6000612b198385611e2c565b9350612b26838584611abe565b612b2f83611a01565b840190509392505050565b60006040820190508181036000830152612b55818587612b0d565b9050612b646020830184611bd1565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612baa8161231d565b92915050565b600060208284031215612bc657612bc5611932565b5b6000612bd484828501612b9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c1782611cb6565b9150612c2283611cb6565b9250828201905080821115612c3a57612c39612bdd565b5b92915050565b6000819050919050565b612c5b612c5682611b86565b612c40565b82525050565b6000612c6d8285612c4a565b602082019150612c7d8284612c4a565b6020820191508190509392505050565b600081905092915050565b6000612ca382611e21565b612cad8185612c8d565b9350612cbd818560208601611e3d565b80840191505092915050565b6000612cd58284612c98565b915081905092915050565b6000602082019050612cf56000830184611b90565b92915050565b600081519050612d0a81611efe565b92915050565b600060208284031215612d2657612d25611932565b5b6000612d3484828501612cfb565b91505092915050565b6000604082019050612d526000830185611cc0565b612d5f6020830184611bd1565b9392505050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612dc26026836128a9565b9150612dcd82612d66565b604082019050919050565b60006020820190508181036000830152612df181612db5565b9050919050565b600067ffffffffffffffff821115612e1357612e12611a12565b5b602082029050602081019050919050565b600067ffffffffffffffff821115612e3f57612e3e611a12565b5b612e4882611a01565b9050602081019050919050565b6000612e68612e6384612e24565b611a72565b905082815260208101848484011115612e8457612e836119fc565b5b612e8f848285611e3d565b509392505050565b600082601f830112612eac57612eab6119f7565b5b8151612ebc848260208601612e55565b91505092915050565b6000612ed8612ed384612df8565b611a72565b90508083825260208201905060208402830185811115612efb57612efa611c0e565b5b835b81811015612f4257805167ffffffffffffffff811115612f2057612f1f6119f7565b5b808601612f2d8982612e97565b85526020850194505050602081019050612efd565b5050509392505050565b600082601f830112612f6157612f606119f7565b5b8151612f71848260208601612ec5565b91505092915050565b600060208284031215612f9057612f8f611932565b5b600082015167ffffffffffffffff811115612fae57612fad611937565b5b612fba84828501612f4c565b91505092915050565b6000606082019050612fd86000830186611bd1565b8181036020830152612fea8185612579565b90508181036040830152612ffe818461266e565b9050949350505050565b6130118161193c565b82525050565b600060c08201905061302c6000830189611d3a565b6130396020830188611bd1565b818103604083015261304b8187612579565b9050818103606083015261305f818661266e565b905061306e6080830185613008565b81810360a08301526130808184611e67565b9050979650505050505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60006130e0826130b9565b6130ea81856130c4565b93506130fa818560208601611e3d565b61310381611a01565b840191505092915050565b600061311a83836130d5565b905092915050565b6000602082019050919050565b600061313a8261308d565b6131448185613098565b935083602082028501613156856130a9565b8060005b858110156131925784840389528151613173858261310e565b945061317e83613122565b925060208a0199505060018101905061315a565b50829750879550505050505092915050565b600060a0820190506131b96000830188611bd1565b81810360208301526131cb818761312f565b905081810360408301526131df8186611e67565b90506131ee6060830185613008565b81810360808301526132008184611e67565b90509695505050505050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613242601d836128a9565b915061324d8261320c565b602082019050919050565b6000602082019050818103600083015261327181613235565b9050919050565b600061328382611cb6565b915061328e83611cb6565b92508282039050818111156132a6576132a5612bdd565b5b92915050565b60006132b782611cb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132e9576132e8612bdd565b5b600182019050919050565b60006132ff82611cb6565b915061330a83611cb6565b925082820261331881611cb6565b9150828204841483151761332f5761332e612bdd565b5b5092915050565b6000613341826130b9565b61334b81856128a9565b935061335b818560208601611e3d565b61336481611a01565b840191505092915050565b600060208201905081810360008301526133898184613336565b90509291505056fea26469706673582212205bb3f0bfa04cb3562838e41dbf668e48d8b109ef17a588380510fd0153dba59364736f6c63430008190033", + "linkReferences": { + "contracts/LabelUtils.sol": { + "LabelUtils": [ + { + "length": 20, + "start": 2666 + }, + { + "length": 20, + "start": 2795 + } + ] + } + }, + "deployedLinkReferences": { + "contracts/LabelUtils.sol": { + "LabelUtils": [ + { + "length": 20, + "start": 1142 + }, + { + "length": 20, + "start": 1271 + } + ] + } + } +} \ No newline at end of file diff --git a/ignition/deployments/chain-11155111/build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json b/ignition/deployments/chain-11155111/build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json new file mode 100644 index 0000000..e494c97 --- /dev/null +++ b/ignition/deployments/chain-11155111/build-info/b2e8ce1ffa5fe8a5a8091ecc939c1bee.json @@ -0,0 +1,659863 @@ +{ + "id": "b2e8ce1ffa5fe8a5a8091ecc939c1bee", + "_format": "hh-sol-build-info-1", + "solcVersion": "0.8.25", + "solcLongVersion": "0.8.25+commit.b61c2a91", + "input": { + "language": "Solidity", + "sources": { + "@consensys/linea-state-verifier/contracts/EVMFetcher.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ^0.8.25;\n\nimport {IEVMVerifier} from \"./IEVMVerifier.sol\";\nimport {EVMFetchTarget} from \"./EVMFetchTarget.sol\";\nimport {Address} from \"@openzeppelin/contracts/utils/Address.sol\";\n\ninterface IEVMGateway {\n function getStorageSlots(\n address addr,\n bytes32[] memory commands,\n bytes[] memory constants\n ) external pure returns (bytes memory witness);\n}\n\nuint8 constant FLAG_DYNAMIC = 0x01;\nuint8 constant OP_CONSTANT = 0x00;\nuint8 constant OP_BACKREF = 0x20;\nuint8 constant OP_END = 0xff;\n\n/**\n * @dev A library to facilitate requesting storage data proofs from contracts, possibly on a different chain.\n * See l1-verifier/test/TestL1.sol for example usage.\n */\nlibrary EVMFetcher {\n uint256 constant MAX_COMMANDS = 32;\n uint256 constant MAX_CONSTANTS = 32; // Must not be greater than 32\n\n using Address for address;\n\n error TooManyCommands(uint256 max);\n error CommandTooLong();\n error InvalidReference(uint256 value, uint256 max);\n error OffchainLookup(\n address sender,\n string[] urls,\n bytes callData,\n bytes4 callbackFunction,\n bytes extraData\n );\n\n struct EVMFetchRequest {\n IEVMVerifier verifier;\n address target;\n bytes32[] commands;\n uint256 operationIdx;\n bytes[] constants;\n }\n\n /**\n * @dev Creates a request to fetch the value of multiple storage slots from a contract via CCIP-Read, possibly from\n * another chain.\n * Supports dynamic length values and slot numbers derived from other retrieved values.\n * @param verifier An instance of a verifier contract that can provide and verify the storage slot information.\n * @param target The address of the contract to fetch storage proofs for.\n */\n function newFetchRequest(\n IEVMVerifier verifier,\n address target\n ) internal pure returns (EVMFetchRequest memory) {\n bytes32[] memory commands = new bytes32[](MAX_COMMANDS);\n bytes[] memory constants = new bytes[](MAX_CONSTANTS);\n assembly {\n mstore(commands, 0) // Set current array length to 0\n mstore(constants, 0)\n }\n return EVMFetchRequest(verifier, target, commands, 0, constants);\n }\n\n /**\n * @dev Starts describing a new fetch request.\n * Paths specify a series of hashing operations to derive the final slot ID.\n * See https://docs.soliditylang.org/en/v0.8.17/internals/layout_in_storage.html for details on how Solidity\n * lays out storage variables.\n * @param request The request object being operated on.\n * @param baseSlot The base slot ID that forms the root of the path.\n */\n function getStatic(\n EVMFetchRequest memory request,\n uint256 baseSlot\n ) internal pure returns (EVMFetchRequest memory) {\n bytes32[] memory commands = request.commands;\n uint256 commandIdx = commands.length;\n if (commandIdx > 0 && request.operationIdx < 32) {\n // Terminate previous command\n _addOperation(request, OP_END);\n }\n assembly {\n mstore(commands, add(commandIdx, 1)) // Increment command array length\n }\n if (request.commands.length > MAX_COMMANDS) {\n revert TooManyCommands(MAX_COMMANDS);\n }\n request.operationIdx = 0;\n _addOperation(request, 0);\n _addOperation(request, _addConstant(request, abi.encode(baseSlot)));\n return request;\n }\n\n /**\n * @dev Starts describing a new fetch request.\n * Paths specify a series of hashing operations to derive the final slot ID.\n * See https://docs.soliditylang.org/en/v0.8.17/internals/layout_in_storage.html for details on how Solidity\n * lays out storage variables.\n * @param request The request object being operated on.\n * @param baseSlot The base slot ID that forms the root of the path.\n */\n function getDynamic(\n EVMFetchRequest memory request,\n uint256 baseSlot\n ) internal pure returns (EVMFetchRequest memory) {\n bytes32[] memory commands = request.commands;\n uint256 commandIdx = commands.length;\n if (commandIdx > 0 && request.operationIdx < 32) {\n // Terminate previous command\n _addOperation(request, OP_END);\n }\n assembly {\n mstore(commands, add(commandIdx, 1)) // Increment command array length\n }\n if (request.commands.length > MAX_COMMANDS) {\n revert TooManyCommands(MAX_COMMANDS);\n }\n request.operationIdx = 0;\n _addOperation(request, FLAG_DYNAMIC);\n _addOperation(request, _addConstant(request, abi.encode(baseSlot)));\n return request;\n }\n\n /**\n * @dev Adds a `uint256` element to the current path.\n * @param request The request object being operated on.\n * @param el The element to add.\n */\n function element(\n EVMFetchRequest memory request,\n uint256 el\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n _addOperation(request, _addConstant(request, abi.encode(el)));\n return request;\n }\n\n /**\n * @dev Adds a `bytes32` element to the current path.\n * @param request The request object being operated on.\n * @param el The element to add.\n */\n function element(\n EVMFetchRequest memory request,\n bytes32 el\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n _addOperation(request, _addConstant(request, abi.encode(el)));\n return request;\n }\n\n /**\n * @dev Adds an `address` element to the current path.\n * @param request The request object being operated on.\n * @param el The element to add.\n */\n function element(\n EVMFetchRequest memory request,\n address el\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n _addOperation(request, _addConstant(request, abi.encode(el)));\n return request;\n }\n\n /**\n * @dev Adds a `bytes` element to the current path.\n * @param request The request object being operated on.\n * @param el The element to add.\n */\n function element(\n EVMFetchRequest memory request,\n bytes memory el\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n _addOperation(request, _addConstant(request, el));\n return request;\n }\n\n /**\n * @dev Adds a `string` element to the current path.\n * @param request The request object being operated on.\n * @param el The element to add.\n */\n function element(\n EVMFetchRequest memory request,\n string memory el\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n _addOperation(request, _addConstant(request, bytes(el)));\n return request;\n }\n\n /**\n * @dev Adds a reference to a previous fetch to the current path.\n * @param request The request object being operated on.\n * @param idx The index of the previous fetch request, starting at 0.\n */\n function ref(\n EVMFetchRequest memory request,\n uint8 idx\n ) internal pure returns (EVMFetchRequest memory) {\n if (request.operationIdx >= 32) {\n revert CommandTooLong();\n }\n if (idx > request.commands.length || idx > 31) {\n revert InvalidReference(idx, request.commands.length);\n }\n _addOperation(request, OP_BACKREF | idx);\n return request;\n }\n\n /**\n * @dev Initiates the fetch request.\n * Calling this function terminates execution; clients that implement CCIP-Read will make a callback to\n * `callback` with the results of the operation.\n * @param callbackId A callback function selector on this contract that will be invoked via CCIP-Read with the result of the lookup.\n * The function must have a signature matching `(bytes[] memory values, bytes callbackData)` with a return type matching the call in which\n * this function was invoked. Its return data will be returned as the return value of the entire CCIP-read operation.\n * @param callbackData Extra data to supply to the callback.\n */\n function fetch(\n EVMFetchRequest memory request,\n bytes4 callbackId,\n bytes memory callbackData\n ) internal view {\n if (request.commands.length > 0 && request.operationIdx < 32) {\n // Terminate last command\n _addOperation(request, OP_END);\n }\n\n revert OffchainLookup(\n address(this),\n request.verifier.gatewayURLs(),\n abi.encodeCall(\n IEVMGateway.getStorageSlots,\n (request.target, request.commands, request.constants)\n ),\n EVMFetchTarget.getStorageSlotsCallback.selector,\n abi.encode(\n request.verifier,\n request.target,\n request.commands,\n request.constants,\n callbackId,\n callbackData\n )\n );\n }\n\n function _addConstant(\n EVMFetchRequest memory request,\n bytes memory value\n ) private pure returns (uint8 idx) {\n bytes[] memory constants = request.constants;\n idx = uint8(constants.length);\n assembly {\n mstore(constants, add(idx, 1)) // Increment constant array length\n }\n constants[idx] = value;\n }\n\n function _addOperation(\n EVMFetchRequest memory request,\n uint8 op\n ) private pure {\n uint256 commandIdx = request.commands.length - 1;\n request.commands[commandIdx] =\n request.commands[commandIdx] |\n (bytes32(bytes1(op)) >> (8 * request.operationIdx++));\n }\n}\n" + }, + "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ^0.8.25;\n\nimport {IEVMVerifier} from \"./IEVMVerifier.sol\";\nimport {Address} from \"@openzeppelin/contracts/utils/Address.sol\";\n\n/**\n * @dev Callback implementation for users of `EVMFetcher`. If you use `EVMFetcher`, your contract must\n * inherit from this contract in order to handle callbacks correctly.\n */\nabstract contract EVMFetchTarget {\n using Address for address;\n\n error ResponseLengthMismatch(uint256 actual, uint256 expected);\n\n /**\n * @dev Internal callback function invoked by CCIP-Read in response to a `getStorageSlots` request.\n */\n function getStorageSlotsCallback(\n bytes calldata response,\n bytes calldata extradata\n ) external returns (bytes memory) {\n bytes memory proof = abi.decode(response, (bytes));\n (\n IEVMVerifier verifier,\n address addr,\n bytes32[] memory commands,\n bytes[] memory constants,\n bytes4 callback,\n bytes memory callbackData\n ) = abi.decode(\n extradata,\n (IEVMVerifier, address, bytes32[], bytes[], bytes4, bytes)\n );\n\n bytes[] memory values = verifier.getStorageValues(\n addr,\n commands,\n constants,\n proof,\n getAcceptedL2BlockRangeLength()\n );\n\n if (values.length != commands.length) {\n revert ResponseLengthMismatch(values.length, commands.length);\n }\n bytes memory ret = address(this).functionCall(\n abi.encodeWithSelector(callback, values, callbackData)\n );\n assembly {\n return(add(ret, 32), mload(ret))\n }\n }\n\n /**\n * @dev The child contract has to return an accepted L2 block range used by the verifier\n * to verify that the block number verified is in the accepted block range.\n */\n function getAcceptedL2BlockRangeLength()\n public\n view\n virtual\n returns (uint256);\n}\n" + }, + "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ^0.8.25;\n\ninterface IEVMVerifier {\n function gatewayURLs() external view returns (string[] memory);\n\n function getStorageValues(\n address target,\n bytes32[] memory commands,\n bytes[] memory constants,\n bytes memory proof,\n uint256 acceptedL2BlockRangeLength\n ) external view returns (bytes[] memory values);\n}\n" + }, + "@consensys/linea-state-verifier/contracts/lib/Mimc.sol": { + "content": "// SPDX-License-Identifier: Apache-2.0\n\n// Copyright 2023 Consensys Software Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// Code generated by gnark DO NOT EDIT\npragma solidity 0.8.25;\n\n/**\n * @title Library to perform MiMC hashing\n * @author ConsenSys Software Inc.\n * @custom:security-contact security-report@linea.build\n */\nlibrary Mimc {\n /**\n * Thrown when the data is not provided\n */\n error DataMissing();\n\n /**\n * Thrown when the data is not purely in 32 byte chunks\n */\n error DataIsNotMod32();\n\n uint256 constant FR_FIELD =\n 8444461749428370424248824938781546531375899335154063827935233455917409239041;\n /**\n * @notice Performs a MiMC hash on the data provided\n * @param _msg The data to be hashed\n * @dev Only data that has length modulus 32 is hashed, reverts otherwise\n * @return mimcHash The computed MiMC hash\n */\n function hash(\n bytes calldata _msg\n ) external pure returns (bytes32 mimcHash) {\n if (_msg.length == 0) {\n revert DataMissing();\n }\n\n if (_msg.length % 0x20 != 0) {\n revert DataIsNotMod32();\n }\n\n assembly {\n let chunks := div(add(_msg.length, 0x1f), 0x20)\n\n for {\n let i := 0\n } lt(i, chunks) {\n i := add(i, 1)\n } {\n let offset := add(_msg.offset, mul(i, 0x20))\n let chunk := calldataload(offset)\n\n let r := encrypt(mimcHash, chunk)\n mimcHash := addmod(\n addmod(mimcHash, r, FR_FIELD),\n chunk,\n FR_FIELD\n )\n }\n\n function encrypt(h, chunk) -> output {\n let frField := FR_FIELD\n let tmpSum := 0\n\n tmpSum := addmod(\n addmod(chunk, h, frField),\n 6780559962679281898511952483033644312910028090361101779689089025541625982996,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2327326745520207001136649348523057964841679868424949608370212081331899020358,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6201177823658417253260885485467023993767823924255470286063250782233002635405,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3401276671970505639801802718275229999176446092725813928949571059366811327963,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 796636033841689627732941016044857384234234277501564259311815186813195010627,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 159507412325830262114089631199386481336725966652415909300570415682233424809,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 1669348614406363339435491723584591316524711695667693315027811919444714635748,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2220664510675218580883672035712942523468288190837741520497926350441362544422,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 1294712289478715410717626660893541311126892630747701030449280341780183665665,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6758843230175145783288330173723849603007070607311612566540600202723911987180,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6271650829101108787041306415787253036818921034903891854433479166754956001513,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 8037654458661109859150348337922011363549131313762043865209663327750426111866,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2450972517788523786981910980516860147992539249204314270739451472218657823669,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2707650969937705465351357815756127556801434183777713569980595073268026256128,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7874262417209200618473337039194351886630571503697269268624099887104149796259,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3089899920017810079637556867207463807565125948241456751227734590626249857937,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 8231877132811199596376758288825197494440517476607659739835166243301765860904,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 4889925300033981791993403687473437637164964770774352761851347729331041993593,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 506118690894045980182310960875885680782486421163823930266542078948815948062,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 4773308728424659273056201947330432214661646691949138677097247858746575076542,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6610301125072219342086627276930551094394509958433369744427479834611436778066,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 8062913614098409973923064402439991628739389434149534836396892159147794104642,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2576406140423312875091927795739341819101209176346955562285186911769083519728,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6247267546819369987508590432055536928557259658317014243676640822343115627202,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2354620213005699835215298236574714075068230025566107498090395819138978823906,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 1012123997779098542887516673253442986051441272786218052382513879552027657616,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 220252773286234814215172180118321537145064642853938490221604200051823270477,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2306037967476458159399202685728266972768173510335885477997450635969358782263,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 5906000615460106310157278190403974694555979202144571560620360962365001056276,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 8029952345415718287377564183334920026617762793749604843629313086537726648143,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6806091261750378774545720021859645013630360296898036304733359077422908323188,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3791365032107216523624488143755156784159183778414385385850652127088602339940,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7713951866326004273632564650741019619975760271948208739458822610304231437565,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2159153222189174173490067225063044363535871059524538695070191871847470955412,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3459892854150586819083449948613048924207735017129514254460829121652786324530,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 8165919441562399076732808928206069494664474480220235797297111305840352207764,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 5067127638759272574597184239140007718698192996511162583428330546781376830321,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7564926180046670501077982861476967417487855218354401587881011340975488196742,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 4793316512087044382791577380686883286681140325373390439122763061600650301139,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 12025027725022723723984202199185080936456585195449250668991990971241927925,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 5056480146405086811789505170440731715530475328844870175949109998024731067467,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3850822128034659558863504800917443538100103152464488164345952697508772708155,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 5490569542353168488797150359760203713598401616662275350850844170956899716180,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6809916892509991991280249336166027496157481609693382555884367500846199028644,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6102228360565846712478499570512196976845845959851353003471378423251561935785,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7957411254301481793006532646538815862020547208300835763521138686017052464640,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7577948604138385646013244290592520699579040577712519004775644201729392063846,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6025758357861563690691793181574484773095829890586160167641973490103511417496,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2004214547184552249779883547311284063339374005887218065319674453115808726850,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 1316449090346410801845183915381769525990226349513436734911941391785200212382,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 4556285572033080226119128815763547597118327635770271287655822355222839175285,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 2369904002063218534853867482545647755243877244064168179905450676831047307618,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 7451702566176584025980909730992154118931318734166468698682947787653334803016,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 1329300832483899103910420486510886619321904846687482243968569167489052205690,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3238521361072472828313630322811653086792441312858682853521070248794222258735,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3475214489590830586915334473771293324307275731565327099797069845161869229357,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 4274287601159036159363576568654710230919275259553081321690187920135177947814,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6938336600682072955973769075275160235517201022692151378695173193891386346405,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 3998198747256139339077883878547228988120873864712400941893285440315291004215,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6699213631756936754252081929574788294275116402464654263316543921533804167968,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6962236729635042756258761323749531146700535903704299930132981735734543600942,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n tmpSum := addmod(\n addmod(output, h, frField),\n 6961288456480688271133399693659146309378114560595485436408179085016705585674,\n frField\n )\n output := mulmod(tmpSum, tmpSum, frField)\n output := mulmod(output, output, frField)\n output := mulmod(output, output, frField)\n output := mulmod(\n mulmod(output, output, frField),\n tmpSum,\n frField\n )\n\n output := addmod(output, h, frField)\n }\n }\n }\n}\n" + }, + "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol": { + "content": "// SPDX-License-Identifier: AGPL-3.0\npragma solidity 0.8.25;\n\nimport {Mimc} from \"./Mimc.sol\";\n\n/**\n * @title Library to perform SparseMerkleProof actions using the MiMC hashing algorithm\n * @author ConsenSys Software Inc.\n * @custom:security-contact security-report@linea.build\n */\nlibrary SparseMerkleProof {\n using Mimc for *;\n\n /**\n * The Account struct represents the state of the account including the storage root, nonce, balance and codesize\n * @dev This is mapped directly to the output of the storage proof\n */\n struct Account {\n uint64 nonce;\n uint256 balance;\n bytes32 storageRoot;\n bytes32 mimcCodeHash;\n bytes32 keccakCodeHash;\n uint64 codeSize;\n }\n\n /**\n * Represents the leaf structure in both account and storage tries\n * @dev This is mapped directly to the output of the storage proof\n */\n struct Leaf {\n uint256 prev;\n uint256 next;\n bytes32 hKey;\n bytes32 hValue;\n }\n\n /**\n * Thrown when expected bytes length is incorrect\n */\n error WrongBytesLength(uint256 expectedLength, uint256 bytesLength);\n\n /**\n * Thrown when the length of bytes is not in exactly 32 byte chunks\n */\n error LengthNotMod32();\n\n /**\n * Thrown when the leaf index is higher than the tree depth\n */\n error MaxTreeLeafIndexExceed();\n\n /**\n * Thrown when the length of the unformatted proof is not provided exactly as expected (UNFORMATTED_PROOF_LENGTH)\n */\n error WrongProofLength(uint256 expectedLength, uint256 actualLength);\n\n uint256 internal constant TREE_DEPTH = 40;\n uint256 internal constant UNFORMATTED_PROOF_LENGTH = 42;\n bytes32 internal constant ZERO_HASH = 0x0;\n uint256 internal constant MAX_TREE_LEAF_INDEX = 2 ** TREE_DEPTH - 1;\n\n /**\n * @notice Formats input, computes root and returns true if it matches the provided merkle root\n * @param _rawProof Raw sparse merkle tree proof\n * @param _leafIndex Index of the leaf\n * @param _root Sparse merkle root\n * @return If the computed merkle root matches the provided one\n */\n function verifyProof(\n bytes[] calldata _rawProof,\n uint256 _leafIndex,\n bytes32 _root\n ) external pure returns (bool) {\n if (_rawProof.length != UNFORMATTED_PROOF_LENGTH) {\n revert WrongProofLength(UNFORMATTED_PROOF_LENGTH, _rawProof.length);\n }\n\n (\n bytes32 nextFreeNode,\n bytes32 leafHash,\n bytes32[] memory proof\n ) = _formatProof(_rawProof);\n return _verify(proof, leafHash, _leafIndex, _root, nextFreeNode);\n }\n\n /**\n * @notice Hash a value using MIMC hash\n * @param _input Value to hash\n * @return {bytes32} Mimc hash\n */\n function mimcHash(bytes calldata _input) external pure returns (bytes32) {\n return Mimc.hash(_input);\n }\n\n /**\n * @notice Get leaf\n * @param _encodedLeaf Encoded leaf bytes (prev, next, hKey, hValue)\n * @return Leaf Formatted leaf struct\n */\n function getLeaf(\n bytes calldata _encodedLeaf\n ) external pure returns (Leaf memory) {\n return _parseLeaf(_encodedLeaf);\n }\n\n /**\n * @notice Get account\n * @param _encodedAccountValue Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n * @return Account Formatted account struct\n */\n function getAccount(\n bytes calldata _encodedAccountValue\n ) external pure returns (Account memory) {\n return _parseAccount(_encodedAccountValue);\n }\n\n /**\n * @notice Hash account value\n * @param _value Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n * @return {bytes32} Account value hash\n */\n function hashAccountValue(\n bytes calldata _value\n ) external pure returns (bytes32) {\n Account memory account = _parseAccount(_value);\n (bytes32 msb, bytes32 lsb) = _splitBytes32(account.keccakCodeHash);\n return\n Mimc.hash(\n abi.encode(\n account.nonce,\n account.balance,\n account.storageRoot,\n account.mimcCodeHash,\n lsb,\n msb,\n account.codeSize\n )\n );\n }\n\n /**\n * @notice Hash storage value\n * @param _value Encoded storage value bytes\n * @return {bytes32} Storage value hash\n */\n function hashStorageValue(bytes32 _value) external pure returns (bytes32) {\n (bytes32 msb, bytes32 lsb) = _splitBytes32(_value);\n return Mimc.hash(abi.encodePacked(lsb, msb));\n }\n\n /**\n * @notice Parse leaf value\n * @param _encodedLeaf Encoded leaf bytes (prev, next, hKey, hValue)\n * @return {Leaf} Formatted leaf struct\n */\n function _parseLeaf(\n bytes calldata _encodedLeaf\n ) private pure returns (Leaf memory) {\n if (_encodedLeaf.length != 128) {\n revert WrongBytesLength(128, _encodedLeaf.length);\n }\n return abi.decode(_encodedLeaf, (Leaf));\n }\n\n /**\n * @notice Parse account value\n * @param _value Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n * @return {Account} Formatted account struct\n */\n function _parseAccount(\n bytes calldata _value\n ) private pure returns (Account memory) {\n if (_value.length != 192) {\n revert WrongBytesLength(192, _value.length);\n }\n return abi.decode(_value, (Account));\n }\n\n /**\n * @notice Split bytes32 into two bytes32 taking most significant bits and least significant bits\n * @param _b bytes to split\n * @return msb Most significant bits\n * @return lsb Least significant bits\n */\n function _splitBytes32(\n bytes32 _b\n ) private pure returns (bytes32 msb, bytes32 lsb) {\n assembly {\n msb := shr(128, _b)\n lsb := and(_b, 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF)\n }\n }\n\n /**\n * @notice Format proof\n * @param _rawProof Non formatted proof array\n * @return (bytes32, bytes32, bytes32[]) NextFreeNode, leafHash and formatted proof array\n */\n function _formatProof(\n bytes[] calldata _rawProof\n ) private pure returns (bytes32, bytes32, bytes32[] memory) {\n uint256 rawProofLength = _rawProof.length;\n uint256 formattedProofLength = rawProofLength - 2;\n\n bytes32[] memory proof = new bytes32[](formattedProofLength);\n\n if (_rawProof[0].length != 0x40) {\n revert WrongBytesLength(0x40, _rawProof[0].length);\n }\n\n bytes32 nextFreeNode = bytes32(_rawProof[0][:32]);\n bytes32 leafHash = Mimc.hash(_rawProof[rawProofLength - 1]);\n\n for (uint256 i = 1; i < formattedProofLength; ) {\n proof[formattedProofLength - i] = Mimc.hash(_rawProof[i]);\n unchecked {\n ++i;\n }\n }\n\n // If the sibling leaf (_rawProof[formattedProofLength]) is equal to zero bytes we don't hash it\n if (_isZeroBytes(_rawProof[formattedProofLength])) {\n proof[0] = ZERO_HASH;\n } else {\n proof[0] = Mimc.hash(_rawProof[formattedProofLength]);\n }\n\n return (nextFreeNode, leafHash, proof);\n }\n\n /**\n * @notice Check if bytes contain only zero byte elements\n * @param _data Bytes to be checked\n * @return isZeroBytes true if bytes contain only zero byte elements, false otherwise\n */\n function _isZeroBytes(\n bytes calldata _data\n ) private pure returns (bool isZeroBytes) {\n if (_data.length % 0x20 != 0) {\n revert LengthNotMod32();\n }\n\n isZeroBytes = true;\n assembly {\n let dataStart := _data.offset\n\n for {\n let currentPtr := dataStart\n } lt(currentPtr, add(dataStart, _data.length)) {\n currentPtr := add(currentPtr, 0x20)\n } {\n let dataWord := calldataload(currentPtr)\n\n if eq(iszero(dataWord), 0) {\n isZeroBytes := 0\n break\n }\n }\n }\n }\n\n /**\n * @notice Computes merkle root from proof and compares it to the provided root\n * @param _proof Sparse merkle tree proof\n * @param _leafHash Leaf hash\n * @param _leafIndex Index of the leaf\n * @param _root Sparse merkle root\n * @param _nextFreeNode Next free node\n * @return If the computed merkle root matches the provided one\n */\n function _verify(\n bytes32[] memory _proof,\n bytes32 _leafHash,\n uint256 _leafIndex,\n bytes32 _root,\n bytes32 _nextFreeNode\n ) private pure returns (bool) {\n bytes32 computedHash = _leafHash;\n uint256 currentIndex = _leafIndex;\n\n if (_leafIndex > MAX_TREE_LEAF_INDEX) {\n revert MaxTreeLeafIndexExceed();\n }\n\n for (uint256 height; height < TREE_DEPTH; ++height) {\n if ((currentIndex >> height) & 1 == 1)\n computedHash = Mimc.hash(\n abi.encodePacked(_proof[height], computedHash)\n );\n else\n computedHash = Mimc.hash(\n abi.encodePacked(computedHash, _proof[height])\n );\n }\n\n return\n Mimc.hash(abi.encodePacked(_nextFreeNode, computedHash)) == _root;\n }\n}\n" + }, + "@consensys/linea-state-verifier/contracts/LineaProofHelper.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.25;\nimport {SparseMerkleProof} from \"./lib/SparseMerkleProof.sol\";\n\nuint256 constant LAST_LEAF_INDEX = 41;\n\nstruct AccountProof {\n bytes value;\n bytes[] proofRelatedNodes;\n}\n\nstruct StorageProof {\n bytes32 value;\n bytes[] proofRelatedNodes;\n}\n\nstruct AccountProofStruct {\n address key;\n uint256 leafIndex;\n AccountProof proof;\n}\n\nstruct StorageProofStruct {\n bytes32 key;\n uint256 leafIndex;\n StorageProof proof;\n bool initialized;\n}\n\nuint8 constant OP_CONSTANT = 0x00;\nuint8 constant OP_BACKREF = 0x20;\nuint8 constant FLAG_DYNAMIC = 0x01;\n\nlibrary LineaProofHelper {\n error UnknownOpcode(uint8);\n error InvalidSlotSize(uint256 size);\n\n function executeOperation(\n bytes1 operation,\n bytes[] memory constants,\n bytes[] memory values\n ) private pure returns (bytes memory) {\n uint8 opcode = uint8(operation) & 0xe0;\n uint8 operand = uint8(operation) & 0x1f;\n\n if (opcode == OP_CONSTANT) {\n return constants[operand];\n } else if (opcode == OP_BACKREF) {\n return values[operand];\n } else {\n revert UnknownOpcode(opcode);\n }\n }\n\n function computeFirstSlot(\n bytes32 command,\n bytes[] memory constants,\n bytes[] memory values\n ) private pure returns (bool isDynamic, uint256 slot) {\n uint8 flags = uint8(command[0]);\n isDynamic = (flags & FLAG_DYNAMIC) != 0;\n\n bytes memory slotData = executeOperation(command[1], constants, values);\n require(slotData.length == 32, \"First path element must be 32 bytes\");\n slot = uint256(bytes32(slotData));\n\n for (uint256 j = 2; j < 32 && command[j] != 0xff; j++) {\n bytes memory index = executeOperation(\n command[j],\n constants,\n values\n );\n slot = uint256(keccak256(abi.encodePacked(index, slot)));\n }\n }\n\n function getDynamicValue(\n uint256 slot,\n uint256 proofIdx,\n StorageProofStruct[] memory storageProofs,\n SparseMerkleProof.Account memory account\n ) private pure returns (bytes memory value, uint256 newProofIdx) {\n if (!storageProofs[proofIdx].initialized) {\n return (\"\", proofIdx++);\n }\n verifyStorageProof(\n account,\n storageProofs[proofIdx].leafIndex,\n storageProofs[proofIdx].proof.proofRelatedNodes,\n storageProofs[proofIdx].proof.value,\n bytes32(slot)\n );\n uint256 firstValue = uint256(storageProofs[proofIdx++].proof.value);\n if (firstValue & 0x01 == 0x01) {\n // Long value: first slot is `length * 2 + 1`, following slots are data.\n slot = uint256(keccak256(abi.encodePacked(slot)));\n value = new bytes(firstValue >> 1);\n uint256 off;\n while (off < value.length) {\n verifyStorageProof(\n account,\n storageProofs[proofIdx].leafIndex,\n storageProofs[proofIdx].proof.proofRelatedNodes,\n storageProofs[proofIdx].proof.value,\n bytes32(slot++)\n );\n off += 32;\n bytes32 temp = storageProofs[proofIdx++].proof.value;\n assembly {\n mstore(add(value, off), temp)\n }\n }\n return (value, proofIdx);\n } else {\n uint256 length = (firstValue & 0xFF) >> 1;\n return (sliceBytes(abi.encode(firstValue), 0, length), proofIdx);\n }\n }\n\n function sliceBytes(\n bytes memory data,\n uint256 start,\n uint256 length\n ) public pure returns (bytes memory) {\n require(start + length <= data.length, \"sliceBytes: out of range\");\n\n bytes memory result = new bytes(length);\n for (uint256 i = 0; i < length; i++) {\n result[i] = data[i + start];\n }\n\n return result;\n }\n\n function verifyAccountProof(\n address target,\n AccountProofStruct memory accountProof,\n bytes32 stateRoot\n ) private pure returns (bool) {\n // Verify the target contract first against the account proof's last leaf node's hkey\n bytes32 targetHash = SparseMerkleProof.mimcHash(abi.encode(target));\n SparseMerkleProof.Leaf memory accountLeaf = SparseMerkleProof.getLeaf(\n accountProof.proof.proofRelatedNodes[LAST_LEAF_INDEX]\n );\n bytes32 hKey = accountLeaf.hKey;\n\n require(targetHash == hKey, \"LineaProofHelper: wrong target\");\n\n // Verify the account's proof itself\n bool accountProofVerified = SparseMerkleProof.verifyProof(\n accountProof.proof.proofRelatedNodes,\n accountProof.leafIndex,\n stateRoot\n );\n\n bytes32 hAccountValue = SparseMerkleProof.hashAccountValue(\n accountProof.proof.value\n );\n\n require(\n accountProofVerified && accountLeaf.hValue == hAccountValue,\n \"LineaProofHelper: invalid account proof\"\n );\n\n return true;\n }\n\n function verifyStorageProof(\n SparseMerkleProof.Account memory account,\n uint256 leafIndex,\n bytes[] memory proof,\n bytes32 value,\n bytes32 key\n ) private pure {\n bool storageProofVerified = SparseMerkleProof.verifyProof(\n proof,\n leafIndex,\n account.storageRoot\n );\n\n SparseMerkleProof.Leaf memory storageLeaf = SparseMerkleProof.getLeaf(\n proof[LAST_LEAF_INDEX]\n );\n\n // Verify the key\n bytes32 hKey = SparseMerkleProof.hashStorageValue(key);\n\n // Verify the storage value\n bytes32 hValue = SparseMerkleProof.hashStorageValue(value);\n require(\n storageProofVerified &&\n storageLeaf.hKey == hKey &&\n storageLeaf.hValue == hValue,\n \"LineaProofHelper: invalid storage proof\"\n );\n }\n\n function getStorageValues(\n address target,\n bytes32[] memory commands,\n bytes[] memory constants,\n bytes32 stateRoot,\n AccountProofStruct memory accountProof,\n StorageProofStruct[] memory storageProofs\n ) internal pure returns (bytes[] memory values) {\n require(\n commands.length <= storageProofs.length,\n \"LineaProofHelper: commands number > storage proofs number\"\n );\n verifyAccountProof(target, accountProof, stateRoot);\n SparseMerkleProof.Account memory account = SparseMerkleProof.getAccount(\n accountProof.proof.value\n );\n uint256 proofIdx = 0;\n values = new bytes[](commands.length);\n for (uint256 i = 0; i < commands.length; i++) {\n bytes32 command = commands[i];\n (bool isDynamic, uint256 slot) = computeFirstSlot(\n command,\n constants,\n values\n );\n if (!isDynamic) {\n if (!storageProofs[proofIdx].initialized) {\n values[i] = abi.encode(0);\n proofIdx++;\n } else {\n verifyStorageProof(\n account,\n storageProofs[proofIdx].leafIndex,\n storageProofs[proofIdx].proof.proofRelatedNodes,\n storageProofs[proofIdx].proof.value,\n bytes32(slot)\n );\n\n values[i] = abi.encode(\n storageProofs[proofIdx++].proof.value\n );\n\n if (values[i].length > 32) {\n revert InvalidSlotSize(values[i].length);\n }\n }\n } else {\n (values[i], proofIdx) = getDynamicValue(\n slot,\n proofIdx,\n storageProofs,\n account\n );\n }\n }\n }\n}\n" + }, + "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.25;\n\nimport {IEVMVerifier} from \"./IEVMVerifier.sol\";\nimport {StorageProofStruct, AccountProofStruct, LineaProofHelper} from \"./LineaProofHelper.sol\";\n\ninterface IRollup {\n function stateRootHashes(\n uint256 l2blockNumber\n ) external view returns (bytes32);\n\n function currentL2BlockNumber() external view returns (uint256);\n}\n\ncontract LineaSparseProofVerifier is IEVMVerifier {\n string[] public _gatewayURLs;\n address public _rollup;\n\n constructor(string[] memory urls, address rollup) {\n _gatewayURLs = urls;\n _rollup = rollup;\n }\n\n function getStorageValues(\n address target,\n bytes32[] memory commands,\n bytes[] memory constants,\n bytes memory proof,\n uint256 acceptedL2BlockRangeLength\n ) external view returns (bytes[] memory values) {\n (\n uint256 blockNo,\n AccountProofStruct memory accountProof,\n StorageProofStruct[] memory storageProofs\n ) = abi.decode(\n proof,\n (uint256, AccountProofStruct, StorageProofStruct[])\n );\n\n // Check that the L2 block number used is a recent one and is part of the range accepted\n uint256 currentL2BlockNumber = IRollup(_rollup).currentL2BlockNumber();\n require(\n (currentL2BlockNumber <= acceptedL2BlockRangeLength &&\n blockNo <= currentL2BlockNumber) ||\n (blockNo >= currentL2BlockNumber - acceptedL2BlockRangeLength),\n \"LineaSparseProofVerifier: block not in range accepted\"\n );\n\n bytes32 stateRoot = IRollup(_rollup).stateRootHashes(blockNo);\n require(\n stateRoot != bytes32(0),\n \"LineaSparseProofVerifier: invalid state root\"\n );\n\n return\n LineaProofHelper.getStorageValues(\n target,\n commands,\n constants,\n stateRoot,\n accountProof,\n storageProofs\n );\n }\n\n function gatewayURLs() external view override returns (string[] memory) {\n return _gatewayURLs;\n }\n}\n" + }, + "@ensdomains/buffer/contracts/Buffer.sol": { + "content": "// SPDX-License-Identifier: BSD-2-Clause\npragma solidity ^0.8.4;\n\n/**\n* @dev A library for working with mutable byte buffers in Solidity.\n*\n* Byte buffers are mutable and expandable, and provide a variety of primitives\n* for appending to them. At any time you can fetch a bytes object containing the\n* current contents of the buffer. The bytes object should not be stored between\n* operations, as it may change due to resizing of the buffer.\n*/\nlibrary Buffer {\n /**\n * @dev Represents a mutable buffer. Buffers have a current value (buf) and\n * a capacity. The capacity may be longer than the current value, in\n * which case it can be extended without the need to allocate more memory.\n */\n struct buffer {\n bytes buf;\n uint capacity;\n }\n\n /**\n * @dev Initializes a buffer with an initial capacity.\n * @param buf The buffer to initialize.\n * @param capacity The number of bytes of space to allocate the buffer.\n * @return The buffer, for chaining.\n */\n function init(buffer memory buf, uint capacity) internal pure returns(buffer memory) {\n if (capacity % 32 != 0) {\n capacity += 32 - (capacity % 32);\n }\n // Allocate space for the buffer data\n buf.capacity = capacity;\n assembly {\n let ptr := mload(0x40)\n mstore(buf, ptr)\n mstore(ptr, 0)\n let fpm := add(32, add(ptr, capacity))\n if lt(fpm, ptr) {\n revert(0, 0)\n }\n mstore(0x40, fpm)\n }\n return buf;\n }\n\n /**\n * @dev Initializes a new buffer from an existing bytes object.\n * Changes to the buffer may mutate the original value.\n * @param b The bytes object to initialize the buffer with.\n * @return A new buffer.\n */\n function fromBytes(bytes memory b) internal pure returns(buffer memory) {\n buffer memory buf;\n buf.buf = b;\n buf.capacity = b.length;\n return buf;\n }\n\n function resize(buffer memory buf, uint capacity) private pure {\n bytes memory oldbuf = buf.buf;\n init(buf, capacity);\n append(buf, oldbuf);\n }\n\n /**\n * @dev Sets buffer length to 0.\n * @param buf The buffer to truncate.\n * @return The original buffer, for chaining..\n */\n function truncate(buffer memory buf) internal pure returns (buffer memory) {\n assembly {\n let bufptr := mload(buf)\n mstore(bufptr, 0)\n }\n return buf;\n }\n\n /**\n * @dev Appends len bytes of a byte string to a buffer. Resizes if doing so would exceed\n * the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @param len The number of bytes to copy.\n * @return The original buffer, for chaining.\n */\n function append(buffer memory buf, bytes memory data, uint len) internal pure returns(buffer memory) {\n require(len <= data.length);\n\n uint off = buf.buf.length;\n uint newCapacity = off + len;\n if (newCapacity > buf.capacity) {\n resize(buf, newCapacity * 2);\n }\n\n uint dest;\n uint src;\n assembly {\n // Memory address of the buffer data\n let bufptr := mload(buf)\n // Length of existing buffer data\n let buflen := mload(bufptr)\n // Start address = buffer address + offset + sizeof(buffer length)\n dest := add(add(bufptr, 32), off)\n // Update buffer length if we're extending it\n if gt(newCapacity, buflen) {\n mstore(bufptr, newCapacity)\n }\n src := add(data, 32)\n }\n\n // Copy word-length chunks while possible\n for (; len >= 32; len -= 32) {\n assembly {\n mstore(dest, mload(src))\n }\n dest += 32;\n src += 32;\n }\n\n // Copy remaining bytes\n unchecked {\n uint mask = (256 ** (32 - len)) - 1;\n assembly {\n let srcpart := and(mload(src), not(mask))\n let destpart := and(mload(dest), mask)\n mstore(dest, or(destpart, srcpart))\n }\n }\n\n return buf;\n }\n\n /**\n * @dev Appends a byte string to a buffer. Resizes if doing so would exceed\n * the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @return The original buffer, for chaining.\n */\n function append(buffer memory buf, bytes memory data) internal pure returns (buffer memory) {\n return append(buf, data, data.length);\n }\n\n /**\n * @dev Appends a byte to the buffer. Resizes if doing so would exceed the\n * capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @return The original buffer, for chaining.\n */\n function appendUint8(buffer memory buf, uint8 data) internal pure returns(buffer memory) {\n uint off = buf.buf.length;\n uint offPlusOne = off + 1;\n if (off >= buf.capacity) {\n resize(buf, offPlusOne * 2);\n }\n\n assembly {\n // Memory address of the buffer data\n let bufptr := mload(buf)\n // Address = buffer address + sizeof(buffer length) + off\n let dest := add(add(bufptr, off), 32)\n mstore8(dest, data)\n // Update buffer length if we extended it\n if gt(offPlusOne, mload(bufptr)) {\n mstore(bufptr, offPlusOne)\n }\n }\n\n return buf;\n }\n\n /**\n * @dev Appends len bytes of bytes32 to a buffer. Resizes if doing so would\n * exceed the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @param len The number of bytes to write (left-aligned).\n * @return The original buffer, for chaining.\n */\n function append(buffer memory buf, bytes32 data, uint len) private pure returns(buffer memory) {\n uint off = buf.buf.length;\n uint newCapacity = len + off;\n if (newCapacity > buf.capacity) {\n resize(buf, newCapacity * 2);\n }\n\n unchecked {\n uint mask = (256 ** len) - 1;\n // Right-align data\n data = data >> (8 * (32 - len));\n assembly {\n // Memory address of the buffer data\n let bufptr := mload(buf)\n // Address = buffer address + sizeof(buffer length) + newCapacity\n let dest := add(bufptr, newCapacity)\n mstore(dest, or(and(mload(dest), not(mask)), data))\n // Update buffer length if we extended it\n if gt(newCapacity, mload(bufptr)) {\n mstore(bufptr, newCapacity)\n }\n }\n }\n return buf;\n }\n\n /**\n * @dev Appends a bytes20 to the buffer. Resizes if doing so would exceed\n * the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @return The original buffer, for chhaining.\n */\n function appendBytes20(buffer memory buf, bytes20 data) internal pure returns (buffer memory) {\n return append(buf, bytes32(data), 20);\n }\n\n /**\n * @dev Appends a bytes32 to the buffer. Resizes if doing so would exceed\n * the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @return The original buffer, for chaining.\n */\n function appendBytes32(buffer memory buf, bytes32 data) internal pure returns (buffer memory) {\n return append(buf, data, 32);\n }\n\n /**\n * @dev Appends a byte to the end of the buffer. Resizes if doing so would\n * exceed the capacity of the buffer.\n * @param buf The buffer to append to.\n * @param data The data to append.\n * @param len The number of bytes to write (right-aligned).\n * @return The original buffer.\n */\n function appendInt(buffer memory buf, uint data, uint len) internal pure returns(buffer memory) {\n uint off = buf.buf.length;\n uint newCapacity = len + off;\n if (newCapacity > buf.capacity) {\n resize(buf, newCapacity * 2);\n }\n\n uint mask = (256 ** len) - 1;\n assembly {\n // Memory address of the buffer data\n let bufptr := mload(buf)\n // Address = buffer address + sizeof(buffer length) + newCapacity\n let dest := add(bufptr, newCapacity)\n mstore(dest, or(and(mload(dest), not(mask)), data))\n // Update buffer length if we extended it\n if gt(newCapacity, mload(bufptr)) {\n mstore(bufptr, newCapacity)\n }\n }\n return buf;\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ^0.8.4;\n\nimport \"../utils/BytesUtils.sol\";\nimport \"@ensdomains/buffer/contracts/Buffer.sol\";\n\n/**\n * @dev RRUtils is a library that provides utilities for parsing DNS resource records.\n */\nlibrary RRUtils {\n using BytesUtils for *;\n using Buffer for *;\n\n /**\n * @dev Returns the number of bytes in the DNS name at 'offset' in 'self'.\n * @param self The byte array to read a name from.\n * @param offset The offset to start reading at.\n * @return The length of the DNS name at 'offset', in bytes.\n */\n function nameLength(\n bytes memory self,\n uint256 offset\n ) internal pure returns (uint256) {\n uint256 idx = offset;\n while (true) {\n assert(idx < self.length);\n uint256 labelLen = self.readUint8(idx);\n idx += labelLen + 1;\n if (labelLen == 0) {\n break;\n }\n }\n return idx - offset;\n }\n\n /**\n * @dev Returns a DNS format name at the specified offset of self.\n * @param self The byte array to read a name from.\n * @param offset The offset to start reading at.\n * @return ret The name.\n */\n function readName(\n bytes memory self,\n uint256 offset\n ) internal pure returns (bytes memory ret) {\n uint256 len = nameLength(self, offset);\n return self.substring(offset, len);\n }\n\n /**\n * @dev Returns the number of labels in the DNS name at 'offset' in 'self'.\n * @param self The byte array to read a name from.\n * @param offset The offset to start reading at.\n * @return The number of labels in the DNS name at 'offset', in bytes.\n */\n function labelCount(\n bytes memory self,\n uint256 offset\n ) internal pure returns (uint256) {\n uint256 count = 0;\n while (true) {\n assert(offset < self.length);\n uint256 labelLen = self.readUint8(offset);\n offset += labelLen + 1;\n if (labelLen == 0) {\n break;\n }\n count += 1;\n }\n return count;\n }\n\n uint256 constant RRSIG_TYPE = 0;\n uint256 constant RRSIG_ALGORITHM = 2;\n uint256 constant RRSIG_LABELS = 3;\n uint256 constant RRSIG_TTL = 4;\n uint256 constant RRSIG_EXPIRATION = 8;\n uint256 constant RRSIG_INCEPTION = 12;\n uint256 constant RRSIG_KEY_TAG = 16;\n uint256 constant RRSIG_SIGNER_NAME = 18;\n\n struct SignedSet {\n uint16 typeCovered;\n uint8 algorithm;\n uint8 labels;\n uint32 ttl;\n uint32 expiration;\n uint32 inception;\n uint16 keytag;\n bytes signerName;\n bytes data;\n bytes name;\n }\n\n function readSignedSet(\n bytes memory data\n ) internal pure returns (SignedSet memory self) {\n self.typeCovered = data.readUint16(RRSIG_TYPE);\n self.algorithm = data.readUint8(RRSIG_ALGORITHM);\n self.labels = data.readUint8(RRSIG_LABELS);\n self.ttl = data.readUint32(RRSIG_TTL);\n self.expiration = data.readUint32(RRSIG_EXPIRATION);\n self.inception = data.readUint32(RRSIG_INCEPTION);\n self.keytag = data.readUint16(RRSIG_KEY_TAG);\n self.signerName = readName(data, RRSIG_SIGNER_NAME);\n self.data = data.substring(\n RRSIG_SIGNER_NAME + self.signerName.length,\n data.length - RRSIG_SIGNER_NAME - self.signerName.length\n );\n }\n\n function rrs(\n SignedSet memory rrset\n ) internal pure returns (RRIterator memory) {\n return iterateRRs(rrset.data, 0);\n }\n\n /**\n * @dev An iterator over resource records.\n */\n struct RRIterator {\n bytes data;\n uint256 offset;\n uint16 dnstype;\n uint16 class;\n uint32 ttl;\n uint256 rdataOffset;\n uint256 nextOffset;\n }\n\n /**\n * @dev Begins iterating over resource records.\n * @param self The byte string to read from.\n * @param offset The offset to start reading at.\n * @return ret An iterator object.\n */\n function iterateRRs(\n bytes memory self,\n uint256 offset\n ) internal pure returns (RRIterator memory ret) {\n ret.data = self;\n ret.nextOffset = offset;\n next(ret);\n }\n\n /**\n * @dev Returns true iff there are more RRs to iterate.\n * @param iter The iterator to check.\n * @return True iff the iterator has finished.\n */\n function done(RRIterator memory iter) internal pure returns (bool) {\n return iter.offset >= iter.data.length;\n }\n\n /**\n * @dev Moves the iterator to the next resource record.\n * @param iter The iterator to advance.\n */\n function next(RRIterator memory iter) internal pure {\n iter.offset = iter.nextOffset;\n if (iter.offset >= iter.data.length) {\n return;\n }\n\n // Skip the name\n uint256 off = iter.offset + nameLength(iter.data, iter.offset);\n\n // Read type, class, and ttl\n iter.dnstype = iter.data.readUint16(off);\n off += 2;\n iter.class = iter.data.readUint16(off);\n off += 2;\n iter.ttl = iter.data.readUint32(off);\n off += 4;\n\n // Read the rdata\n uint256 rdataLength = iter.data.readUint16(off);\n off += 2;\n iter.rdataOffset = off;\n iter.nextOffset = off + rdataLength;\n }\n\n /**\n * @dev Returns the name of the current record.\n * @param iter The iterator.\n * @return A new bytes object containing the owner name from the RR.\n */\n function name(RRIterator memory iter) internal pure returns (bytes memory) {\n return\n iter.data.substring(\n iter.offset,\n nameLength(iter.data, iter.offset)\n );\n }\n\n /**\n * @dev Returns the rdata portion of the current record.\n * @param iter The iterator.\n * @return A new bytes object containing the RR's RDATA.\n */\n function rdata(\n RRIterator memory iter\n ) internal pure returns (bytes memory) {\n return\n iter.data.substring(\n iter.rdataOffset,\n iter.nextOffset - iter.rdataOffset\n );\n }\n\n uint256 constant DNSKEY_FLAGS = 0;\n uint256 constant DNSKEY_PROTOCOL = 2;\n uint256 constant DNSKEY_ALGORITHM = 3;\n uint256 constant DNSKEY_PUBKEY = 4;\n\n struct DNSKEY {\n uint16 flags;\n uint8 protocol;\n uint8 algorithm;\n bytes publicKey;\n }\n\n function readDNSKEY(\n bytes memory data,\n uint256 offset,\n uint256 length\n ) internal pure returns (DNSKEY memory self) {\n self.flags = data.readUint16(offset + DNSKEY_FLAGS);\n self.protocol = data.readUint8(offset + DNSKEY_PROTOCOL);\n self.algorithm = data.readUint8(offset + DNSKEY_ALGORITHM);\n self.publicKey = data.substring(\n offset + DNSKEY_PUBKEY,\n length - DNSKEY_PUBKEY\n );\n }\n\n uint256 constant DS_KEY_TAG = 0;\n uint256 constant DS_ALGORITHM = 2;\n uint256 constant DS_DIGEST_TYPE = 3;\n uint256 constant DS_DIGEST = 4;\n\n struct DS {\n uint16 keytag;\n uint8 algorithm;\n uint8 digestType;\n bytes digest;\n }\n\n function readDS(\n bytes memory data,\n uint256 offset,\n uint256 length\n ) internal pure returns (DS memory self) {\n self.keytag = data.readUint16(offset + DS_KEY_TAG);\n self.algorithm = data.readUint8(offset + DS_ALGORITHM);\n self.digestType = data.readUint8(offset + DS_DIGEST_TYPE);\n self.digest = data.substring(offset + DS_DIGEST, length - DS_DIGEST);\n }\n\n function isSubdomainOf(\n bytes memory self,\n bytes memory other\n ) internal pure returns (bool) {\n uint256 off = 0;\n uint256 counts = labelCount(self, 0);\n uint256 othercounts = labelCount(other, 0);\n\n while (counts > othercounts) {\n off = progress(self, off);\n counts--;\n }\n\n return self.equals(off, other, 0);\n }\n\n function compareNames(\n bytes memory self,\n bytes memory other\n ) internal pure returns (int256) {\n if (self.equals(other)) {\n return 0;\n }\n\n uint256 off;\n uint256 otheroff;\n uint256 prevoff;\n uint256 otherprevoff;\n uint256 counts = labelCount(self, 0);\n uint256 othercounts = labelCount(other, 0);\n\n // Keep removing labels from the front of the name until both names are equal length\n while (counts > othercounts) {\n prevoff = off;\n off = progress(self, off);\n counts--;\n }\n\n while (othercounts > counts) {\n otherprevoff = otheroff;\n otheroff = progress(other, otheroff);\n othercounts--;\n }\n\n // Compare the last nonequal labels to each other\n while (counts > 0 && !self.equals(off, other, otheroff)) {\n prevoff = off;\n off = progress(self, off);\n otherprevoff = otheroff;\n otheroff = progress(other, otheroff);\n counts -= 1;\n }\n\n if (off == 0) {\n return -1;\n }\n if (otheroff == 0) {\n return 1;\n }\n\n return\n self.compare(\n prevoff + 1,\n self.readUint8(prevoff),\n other,\n otherprevoff + 1,\n other.readUint8(otherprevoff)\n );\n }\n\n /**\n * @dev Compares two serial numbers using RFC1982 serial number math.\n */\n function serialNumberGte(\n uint32 i1,\n uint32 i2\n ) internal pure returns (bool) {\n unchecked {\n return int32(i1) - int32(i2) >= 0;\n }\n }\n\n function progress(\n bytes memory body,\n uint256 off\n ) internal pure returns (uint256) {\n return off + 1 + body.readUint8(off);\n }\n\n /**\n * @dev Computes the keytag for a chunk of data.\n * @param data The data to compute a keytag for.\n * @return The computed key tag.\n */\n function computeKeytag(bytes memory data) internal pure returns (uint16) {\n /* This function probably deserves some explanation.\n * The DNSSEC keytag function is a checksum that relies on summing up individual bytes\n * from the input string, with some mild bitshifting. Here's a Naive solidity implementation:\n *\n * function computeKeytag(bytes memory data) internal pure returns (uint16) {\n * uint ac;\n * for (uint i = 0; i < data.length; i++) {\n * ac += i & 1 == 0 ? uint16(data.readUint8(i)) << 8 : data.readUint8(i);\n * }\n * return uint16(ac + (ac >> 16));\n * }\n *\n * The EVM, with its 256 bit words, is exceedingly inefficient at doing byte-by-byte operations;\n * the code above, on reasonable length inputs, consumes over 100k gas. But we can make the EVM's\n * large words work in our favour.\n *\n * The code below works by treating the input as a series of 256 bit words. It first masks out\n * even and odd bytes from each input word, adding them to two separate accumulators `ac1` and `ac2`.\n * The bytes are separated by empty bytes, so as long as no individual sum exceeds 2^16-1, we're\n * effectively summing 16 different numbers with each EVM ADD opcode.\n *\n * Once it's added up all the inputs, it has to add all the 16 bit values in `ac1` and `ac2` together.\n * It does this using the same trick - mask out every other value, shift to align them, add them together.\n * After the first addition on both accumulators, there's enough room to add the two accumulators together,\n * and the remaining sums can be done just on ac1.\n */\n unchecked {\n require(data.length <= 8192, \"Long keys not permitted\");\n uint256 ac1;\n uint256 ac2;\n for (uint256 i = 0; i < data.length + 31; i += 32) {\n uint256 word;\n assembly {\n word := mload(add(add(data, 32), i))\n }\n if (i + 32 > data.length) {\n uint256 unused = 256 - (data.length - i) * 8;\n word = (word >> unused) << unused;\n }\n ac1 +=\n (word &\n 0xFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00) >>\n 8;\n ac2 += (word &\n 0x00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF);\n }\n ac1 =\n (ac1 &\n 0x0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF) +\n ((ac1 &\n 0xFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000) >>\n 16);\n ac2 =\n (ac2 &\n 0x0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF) +\n ((ac2 &\n 0xFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000) >>\n 16);\n ac1 = (ac1 << 8) + ac2;\n ac1 =\n (ac1 &\n 0x00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF) +\n ((ac1 &\n 0xFFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000) >>\n 32);\n ac1 =\n (ac1 &\n 0x0000000000000000FFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFF) +\n ((ac1 &\n 0xFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFF0000000000000000) >>\n 64);\n ac1 =\n (ac1 &\n 0x00000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) +\n (ac1 >> 128);\n ac1 += (ac1 >> 16) & 0xFFFF;\n return uint16(ac1);\n }\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol": { + "content": "pragma solidity >=0.8.4;\n\nimport \"../registry/ENS.sol\";\nimport \"./IBaseRegistrar.sol\";\nimport \"@openzeppelin/contracts/token/ERC721/ERC721.sol\";\nimport \"@openzeppelin/contracts/access/Ownable.sol\";\n\ncontract BaseRegistrarImplementation is ERC721, IBaseRegistrar, Ownable {\n // A map of expiry times\n mapping(uint256 => uint256) expiries;\n // The ENS registry\n ENS public ens;\n // The namehash of the TLD this registrar owns (eg, .eth)\n bytes32 public baseNode;\n // A map of addresses that are authorised to register and renew names.\n mapping(address => bool) public controllers;\n uint256 public constant GRACE_PERIOD = 90 days;\n bytes4 private constant INTERFACE_META_ID =\n bytes4(keccak256(\"supportsInterface(bytes4)\"));\n bytes4 private constant ERC721_ID =\n bytes4(\n keccak256(\"balanceOf(address)\") ^\n keccak256(\"ownerOf(uint256)\") ^\n keccak256(\"approve(address,uint256)\") ^\n keccak256(\"getApproved(uint256)\") ^\n keccak256(\"setApprovalForAll(address,bool)\") ^\n keccak256(\"isApprovedForAll(address,address)\") ^\n keccak256(\"transferFrom(address,address,uint256)\") ^\n keccak256(\"safeTransferFrom(address,address,uint256)\") ^\n keccak256(\"safeTransferFrom(address,address,uint256,bytes)\")\n );\n bytes4 private constant RECLAIM_ID =\n bytes4(keccak256(\"reclaim(uint256,address)\"));\n\n /**\n * v2.1.3 version of _isApprovedOrOwner which calls ownerOf(tokenId) and takes grace period into consideration instead of ERC721.ownerOf(tokenId);\n * https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v2.1.3/contracts/token/ERC721/ERC721.sol#L187\n * @dev Returns whether the given spender can transfer a given token ID\n * @param spender address of the spender to query\n * @param tokenId uint256 ID of the token to be transferred\n * @return bool whether the msg.sender is approved for the given token ID,\n * is an operator of the owner, or is the owner of the token\n */\n function _isApprovedOrOwner(\n address spender,\n uint256 tokenId\n ) internal view override returns (bool) {\n address owner = ownerOf(tokenId);\n return (spender == owner ||\n getApproved(tokenId) == spender ||\n isApprovedForAll(owner, spender));\n }\n\n constructor(ENS _ens, bytes32 _baseNode) ERC721(\"\", \"\") {\n ens = _ens;\n baseNode = _baseNode;\n }\n\n modifier live() {\n require(ens.owner(baseNode) == address(this));\n _;\n }\n\n modifier onlyController() {\n require(controllers[msg.sender]);\n _;\n }\n\n /**\n * @dev Gets the owner of the specified token ID. Names become unowned\n * when their registration expires.\n * @param tokenId uint256 ID of the token to query the owner of\n * @return address currently marked as the owner of the given token ID\n */\n function ownerOf(\n uint256 tokenId\n ) public view override(IERC721, ERC721) returns (address) {\n require(expiries[tokenId] > block.timestamp);\n return super.ownerOf(tokenId);\n }\n\n // Authorises a controller, who can register and renew domains.\n function addController(address controller) external override onlyOwner {\n controllers[controller] = true;\n emit ControllerAdded(controller);\n }\n\n // Revoke controller permission for an address.\n function removeController(address controller) external override onlyOwner {\n controllers[controller] = false;\n emit ControllerRemoved(controller);\n }\n\n // Set the resolver for the TLD this registrar manages.\n function setResolver(address resolver) external override onlyOwner {\n ens.setResolver(baseNode, resolver);\n }\n\n // Returns the expiration timestamp of the specified id.\n function nameExpires(uint256 id) external view override returns (uint256) {\n return expiries[id];\n }\n\n // Returns true iff the specified name is available for registration.\n function available(uint256 id) public view override returns (bool) {\n // Not available if it's registered here or in its grace period.\n return expiries[id] + GRACE_PERIOD < block.timestamp;\n }\n\n /**\n * @dev Register a name.\n * @param id The token ID (keccak256 of the label).\n * @param owner The address that should own the registration.\n * @param duration Duration in seconds for the registration.\n */\n function register(\n uint256 id,\n address owner,\n uint256 duration\n ) external override returns (uint256) {\n return _register(id, owner, duration, true);\n }\n\n /**\n * @dev Register a name, without modifying the registry.\n * @param id The token ID (keccak256 of the label).\n * @param owner The address that should own the registration.\n * @param duration Duration in seconds for the registration.\n */\n function registerOnly(\n uint256 id,\n address owner,\n uint256 duration\n ) external returns (uint256) {\n return _register(id, owner, duration, false);\n }\n\n function _register(\n uint256 id,\n address owner,\n uint256 duration,\n bool updateRegistry\n ) internal live onlyController returns (uint256) {\n require(available(id));\n require(\n block.timestamp + duration + GRACE_PERIOD >\n block.timestamp + GRACE_PERIOD\n ); // Prevent future overflow\n\n expiries[id] = block.timestamp + duration;\n if (_exists(id)) {\n // Name was previously owned, and expired\n _burn(id);\n }\n _mint(owner, id);\n if (updateRegistry) {\n ens.setSubnodeOwner(baseNode, bytes32(id), owner);\n }\n\n emit NameRegistered(id, owner, block.timestamp + duration);\n\n return block.timestamp + duration;\n }\n\n function renew(\n uint256 id,\n uint256 duration\n ) external override live onlyController returns (uint256) {\n require(expiries[id] + GRACE_PERIOD >= block.timestamp); // Name must be registered here or in grace period\n require(\n expiries[id] + duration + GRACE_PERIOD > duration + GRACE_PERIOD\n ); // Prevent future overflow\n\n expiries[id] += duration;\n emit NameRenewed(id, expiries[id]);\n return expiries[id];\n }\n\n /**\n * @dev Reclaim ownership of a name in ENS, if you own it in the registrar.\n */\n function reclaim(uint256 id, address owner) external override live {\n require(_isApprovedOrOwner(msg.sender, id));\n ens.setSubnodeOwner(baseNode, bytes32(id), owner);\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view override(ERC721, IERC165) returns (bool) {\n return\n interfaceID == INTERFACE_META_ID ||\n interfaceID == ERC721_ID ||\n interfaceID == RECLAIM_ID;\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol": { + "content": "import \"../registry/ENS.sol\";\nimport \"./IBaseRegistrar.sol\";\nimport \"@openzeppelin/contracts/token/ERC721/IERC721.sol\";\n\ninterface IBaseRegistrar is IERC721 {\n event ControllerAdded(address indexed controller);\n event ControllerRemoved(address indexed controller);\n event NameMigrated(\n uint256 indexed id,\n address indexed owner,\n uint256 expires\n );\n event NameRegistered(\n uint256 indexed id,\n address indexed owner,\n uint256 expires\n );\n event NameRenewed(uint256 indexed id, uint256 expires);\n\n // Authorises a controller, who can register and renew domains.\n function addController(address controller) external;\n\n // Revoke controller permission for an address.\n function removeController(address controller) external;\n\n // Set the resolver for the TLD this registrar manages.\n function setResolver(address resolver) external;\n\n // Returns the expiration timestamp of the specified label hash.\n function nameExpires(uint256 id) external view returns (uint256);\n\n // Returns true if the specified name is available for registration.\n function available(uint256 id) external view returns (bool);\n\n /**\n * @dev Register a name.\n */\n function register(\n uint256 id,\n address owner,\n uint256 duration\n ) external returns (uint256);\n\n function renew(uint256 id, uint256 duration) external returns (uint256);\n\n /**\n * @dev Reclaim ownership of a name in ENS, if you own it in the registrar.\n */\n function reclaim(uint256 id, address owner) external;\n}\n" + }, + "@ensdomains/ens-contracts/contracts/registry/ENS.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface ENS {\n // Logged when the owner of a node assigns a new owner to a subnode.\n event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner);\n\n // Logged when the owner of a node transfers ownership to a new account.\n event Transfer(bytes32 indexed node, address owner);\n\n // Logged when the resolver for a node changes.\n event NewResolver(bytes32 indexed node, address resolver);\n\n // Logged when the TTL of a node changes\n event NewTTL(bytes32 indexed node, uint64 ttl);\n\n // Logged when an operator is added or removed.\n event ApprovalForAll(\n address indexed owner,\n address indexed operator,\n bool approved\n );\n\n function setRecord(\n bytes32 node,\n address owner,\n address resolver,\n uint64 ttl\n ) external;\n\n function setSubnodeRecord(\n bytes32 node,\n bytes32 label,\n address owner,\n address resolver,\n uint64 ttl\n ) external;\n\n function setSubnodeOwner(\n bytes32 node,\n bytes32 label,\n address owner\n ) external returns (bytes32);\n\n function setResolver(bytes32 node, address resolver) external;\n\n function setOwner(bytes32 node, address owner) external;\n\n function setTTL(bytes32 node, uint64 ttl) external;\n\n function setApprovalForAll(address operator, bool approved) external;\n\n function owner(bytes32 node) external view returns (address);\n\n function resolver(bytes32 node) external view returns (address);\n\n function ttl(bytes32 node) external view returns (uint64);\n\n function recordExists(bytes32 node) external view returns (bool);\n\n function isApprovedForAll(\n address owner,\n address operator\n ) external view returns (bool);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol": { + "content": "pragma solidity >=0.8.4;\n\nimport \"./ENS.sol\";\n\n/**\n * The ENS registry contract.\n */\ncontract ENSRegistry is ENS {\n struct Record {\n address owner;\n address resolver;\n uint64 ttl;\n }\n\n mapping(bytes32 => Record) records;\n mapping(address => mapping(address => bool)) operators;\n\n // Permits modifications only by the owner of the specified node.\n modifier authorised(bytes32 node) {\n address owner = records[node].owner;\n require(owner == msg.sender || operators[owner][msg.sender]);\n _;\n }\n\n /**\n * @dev Constructs a new ENS registry.\n */\n constructor() public {\n records[0x0].owner = msg.sender;\n }\n\n /**\n * @dev Sets the record for a node.\n * @param node The node to update.\n * @param owner The address of the new owner.\n * @param resolver The address of the resolver.\n * @param ttl The TTL in seconds.\n */\n function setRecord(\n bytes32 node,\n address owner,\n address resolver,\n uint64 ttl\n ) external virtual override {\n setOwner(node, owner);\n _setResolverAndTTL(node, resolver, ttl);\n }\n\n /**\n * @dev Sets the record for a subnode.\n * @param node The parent node.\n * @param label The hash of the label specifying the subnode.\n * @param owner The address of the new owner.\n * @param resolver The address of the resolver.\n * @param ttl The TTL in seconds.\n */\n function setSubnodeRecord(\n bytes32 node,\n bytes32 label,\n address owner,\n address resolver,\n uint64 ttl\n ) external virtual override {\n bytes32 subnode = setSubnodeOwner(node, label, owner);\n _setResolverAndTTL(subnode, resolver, ttl);\n }\n\n /**\n * @dev Transfers ownership of a node to a new address. May only be called by the current owner of the node.\n * @param node The node to transfer ownership of.\n * @param owner The address of the new owner.\n */\n function setOwner(\n bytes32 node,\n address owner\n ) public virtual override authorised(node) {\n _setOwner(node, owner);\n emit Transfer(node, owner);\n }\n\n /**\n * @dev Transfers ownership of a subnode keccak256(node, label) to a new address. May only be called by the owner of the parent node.\n * @param node The parent node.\n * @param label The hash of the label specifying the subnode.\n * @param owner The address of the new owner.\n */\n function setSubnodeOwner(\n bytes32 node,\n bytes32 label,\n address owner\n ) public virtual override authorised(node) returns (bytes32) {\n bytes32 subnode = keccak256(abi.encodePacked(node, label));\n _setOwner(subnode, owner);\n emit NewOwner(node, label, owner);\n return subnode;\n }\n\n /**\n * @dev Sets the resolver address for the specified node.\n * @param node The node to update.\n * @param resolver The address of the resolver.\n */\n function setResolver(\n bytes32 node,\n address resolver\n ) public virtual override authorised(node) {\n emit NewResolver(node, resolver);\n records[node].resolver = resolver;\n }\n\n /**\n * @dev Sets the TTL for the specified node.\n * @param node The node to update.\n * @param ttl The TTL in seconds.\n */\n function setTTL(\n bytes32 node,\n uint64 ttl\n ) public virtual override authorised(node) {\n emit NewTTL(node, ttl);\n records[node].ttl = ttl;\n }\n\n /**\n * @dev Enable or disable approval for a third party (\"operator\") to manage\n * all of `msg.sender`'s ENS records. Emits the ApprovalForAll event.\n * @param operator Address to add to the set of authorized operators.\n * @param approved True if the operator is approved, false to revoke approval.\n */\n function setApprovalForAll(\n address operator,\n bool approved\n ) external virtual override {\n operators[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /**\n * @dev Returns the address that owns the specified node.\n * @param node The specified node.\n * @return address of the owner.\n */\n function owner(\n bytes32 node\n ) public view virtual override returns (address) {\n address addr = records[node].owner;\n if (addr == address(this)) {\n return address(0x0);\n }\n\n return addr;\n }\n\n /**\n * @dev Returns the address of the resolver for the specified node.\n * @param node The specified node.\n * @return address of the resolver.\n */\n function resolver(\n bytes32 node\n ) public view virtual override returns (address) {\n return records[node].resolver;\n }\n\n /**\n * @dev Returns the TTL of a node, and any records associated with it.\n * @param node The specified node.\n * @return ttl of the node.\n */\n function ttl(bytes32 node) public view virtual override returns (uint64) {\n return records[node].ttl;\n }\n\n /**\n * @dev Returns whether a record has been imported to the registry.\n * @param node The specified node.\n * @return Bool if record exists\n */\n function recordExists(\n bytes32 node\n ) public view virtual override returns (bool) {\n return records[node].owner != address(0x0);\n }\n\n /**\n * @dev Query if an address is an authorized operator for another address.\n * @param owner The address that owns the records.\n * @param operator The address that acts on behalf of the owner.\n * @return True if `operator` is an approved operator for `owner`, false otherwise.\n */\n function isApprovedForAll(\n address owner,\n address operator\n ) external view virtual override returns (bool) {\n return operators[owner][operator];\n }\n\n function _setOwner(bytes32 node, address owner) internal virtual {\n records[node].owner = owner;\n }\n\n function _setResolverAndTTL(\n bytes32 node,\n address resolver,\n uint64 ttl\n ) internal {\n if (resolver != records[node].resolver) {\n records[node].resolver = resolver;\n emit NewResolver(node, resolver);\n }\n\n if (ttl != records[node].ttl) {\n records[node].ttl = ttl;\n emit NewTTL(node, ttl);\n }\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.4;\n\ninterface IMulticallable {\n function multicall(\n bytes[] calldata data\n ) external returns (bytes[] memory results);\n\n function multicallWithNodeCheck(\n bytes32,\n bytes[] calldata data\n ) external returns (bytes[] memory results);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.4;\n\nimport \"./IMulticallable.sol\";\nimport \"@openzeppelin/contracts/utils/introspection/ERC165.sol\";\n\nabstract contract Multicallable is IMulticallable, ERC165 {\n function _multicall(\n bytes32 nodehash,\n bytes[] calldata data\n ) internal returns (bytes[] memory results) {\n results = new bytes[](data.length);\n for (uint256 i = 0; i < data.length; i++) {\n if (nodehash != bytes32(0)) {\n bytes32 txNamehash = bytes32(data[i][4:36]);\n require(\n txNamehash == nodehash,\n \"multicall: All records must have a matching namehash\"\n );\n }\n (bool success, bytes memory result) = address(this).delegatecall(\n data[i]\n );\n require(success);\n results[i] = result;\n }\n return results;\n }\n\n // This function provides an extra security check when called\n // from priviledged contracts (such as EthRegistrarController)\n // that can set records on behalf of the node owners\n function multicallWithNodeCheck(\n bytes32 nodehash,\n bytes[] calldata data\n ) external returns (bytes[] memory results) {\n return _multicall(nodehash, data);\n }\n\n function multicall(\n bytes[] calldata data\n ) public override returns (bytes[] memory results) {\n return _multicall(bytes32(0), data);\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IMulticallable).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"./IABIResolver.sol\";\nimport \"../ResolverBase.sol\";\n\nabstract contract ABIResolver is IABIResolver, ResolverBase {\n mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes))) versionable_abis;\n\n /**\n * Sets the ABI associated with an ENS node.\n * Nodes may have one ABI of each content type. To remove an ABI, set it to\n * the empty string.\n * @param node The node to update.\n * @param contentType The content type of the ABI\n * @param data The ABI data.\n */\n function setABI(\n bytes32 node,\n uint256 contentType,\n bytes calldata data\n ) external virtual authorised(node) {\n // Content types must be powers of 2\n require(((contentType - 1) & contentType) == 0);\n\n versionable_abis[recordVersions[node]][node][contentType] = data;\n emit ABIChanged(node, contentType);\n }\n\n /**\n * Returns the ABI associated with an ENS node.\n * Defined in EIP205.\n * @param node The ENS node to query\n * @param contentTypes A bitwise OR of the ABI formats accepted by the caller.\n * @return contentType The content type of the return value\n * @return data The ABI data\n */\n function ABI(\n bytes32 node,\n uint256 contentTypes\n ) external view virtual override returns (uint256, bytes memory) {\n mapping(uint256 => bytes) storage abiset = versionable_abis[\n recordVersions[node]\n ][node];\n\n for (\n uint256 contentType = 1;\n contentType <= contentTypes;\n contentType <<= 1\n ) {\n if (\n (contentType & contentTypes) != 0 &&\n abiset[contentType].length > 0\n ) {\n return (contentType, abiset[contentType]);\n }\n }\n\n return (0, bytes(\"\"));\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IABIResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"./IAddrResolver.sol\";\nimport \"./IAddressResolver.sol\";\n\nabstract contract AddrResolver is\n IAddrResolver,\n IAddressResolver,\n ResolverBase\n{\n uint256 private constant COIN_TYPE_ETH = 60;\n\n mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes))) versionable_addresses;\n\n /**\n * Sets the address associated with an ENS node.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n * @param a The address to set.\n */\n function setAddr(\n bytes32 node,\n address a\n ) external virtual authorised(node) {\n setAddr(node, COIN_TYPE_ETH, addressToBytes(a));\n }\n\n /**\n * Returns the address associated with an ENS node.\n * @param node The ENS node to query.\n * @return The associated address.\n */\n function addr(\n bytes32 node\n ) public view virtual override returns (address payable) {\n bytes memory a = addr(node, COIN_TYPE_ETH);\n if (a.length == 0) {\n return payable(0);\n }\n return bytesToAddress(a);\n }\n\n function setAddr(\n bytes32 node,\n uint256 coinType,\n bytes memory a\n ) public virtual authorised(node) {\n emit AddressChanged(node, coinType, a);\n if (coinType == COIN_TYPE_ETH) {\n emit AddrChanged(node, bytesToAddress(a));\n }\n versionable_addresses[recordVersions[node]][node][coinType] = a;\n }\n\n function addr(\n bytes32 node,\n uint256 coinType\n ) public view virtual override returns (bytes memory) {\n return versionable_addresses[recordVersions[node]][node][coinType];\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IAddrResolver).interfaceId ||\n interfaceID == type(IAddressResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n\n function bytesToAddress(\n bytes memory b\n ) internal pure returns (address payable a) {\n require(b.length == 20);\n assembly {\n a := div(mload(add(b, 32)), exp(256, 12))\n }\n }\n\n function addressToBytes(address a) internal pure returns (bytes memory b) {\n b = new bytes(20);\n assembly {\n mstore(add(b, 32), mul(a, exp(256, 12)))\n }\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"./IContentHashResolver.sol\";\n\nabstract contract ContentHashResolver is IContentHashResolver, ResolverBase {\n mapping(uint64 => mapping(bytes32 => bytes)) versionable_hashes;\n\n /**\n * Sets the contenthash associated with an ENS node.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n * @param hash The contenthash to set\n */\n function setContenthash(\n bytes32 node,\n bytes calldata hash\n ) external virtual authorised(node) {\n versionable_hashes[recordVersions[node]][node] = hash;\n emit ContenthashChanged(node, hash);\n }\n\n /**\n * Returns the contenthash associated with an ENS node.\n * @param node The ENS node to query.\n * @return The associated contenthash.\n */\n function contenthash(\n bytes32 node\n ) external view virtual override returns (bytes memory) {\n return versionable_hashes[recordVersions[node]][node];\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IContentHashResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"../../dnssec-oracle/RRUtils.sol\";\nimport \"./IDNSRecordResolver.sol\";\nimport \"./IDNSZoneResolver.sol\";\n\nabstract contract DNSResolver is\n IDNSRecordResolver,\n IDNSZoneResolver,\n ResolverBase\n{\n using RRUtils for *;\n using BytesUtils for bytes;\n\n // Zone hashes for the domains.\n // A zone hash is an EIP-1577 content hash in binary format that should point to a\n // resource containing a single zonefile.\n // node => contenthash\n mapping(uint64 => mapping(bytes32 => bytes)) private versionable_zonehashes;\n\n // The records themselves. Stored as binary RRSETs\n // node => version => name => resource => data\n mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes))))\n private versionable_records;\n\n // Count of number of entries for a given name. Required for DNS resolvers\n // when resolving wildcards.\n // node => version => name => number of records\n mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))\n private versionable_nameEntriesCount;\n\n /**\n * Set one or more DNS records. Records are supplied in wire-format.\n * Records with the same node/name/resource must be supplied one after the\n * other to ensure the data is updated correctly. For example, if the data\n * was supplied:\n * a.example.com IN A 1.2.3.4\n * a.example.com IN A 5.6.7.8\n * www.example.com IN CNAME a.example.com.\n * then this would store the two A records for a.example.com correctly as a\n * single RRSET, however if the data was supplied:\n * a.example.com IN A 1.2.3.4\n * www.example.com IN CNAME a.example.com.\n * a.example.com IN A 5.6.7.8\n * then this would store the first A record, the CNAME, then the second A\n * record which would overwrite the first.\n *\n * @param node the namehash of the node for which to set the records\n * @param data the DNS wire format records to set\n */\n function setDNSRecords(\n bytes32 node,\n bytes calldata data\n ) external virtual authorised(node) {\n uint16 resource = 0;\n uint256 offset = 0;\n bytes memory name;\n bytes memory value;\n bytes32 nameHash;\n uint64 version = recordVersions[node];\n // Iterate over the data to add the resource records\n for (\n RRUtils.RRIterator memory iter = data.iterateRRs(0);\n !iter.done();\n iter.next()\n ) {\n if (resource == 0) {\n resource = iter.dnstype;\n name = iter.name();\n nameHash = keccak256(abi.encodePacked(name));\n value = bytes(iter.rdata());\n } else {\n bytes memory newName = iter.name();\n if (resource != iter.dnstype || !name.equals(newName)) {\n setDNSRRSet(\n node,\n name,\n resource,\n data,\n offset,\n iter.offset - offset,\n value.length == 0,\n version\n );\n resource = iter.dnstype;\n offset = iter.offset;\n name = newName;\n nameHash = keccak256(name);\n value = bytes(iter.rdata());\n }\n }\n }\n if (name.length > 0) {\n setDNSRRSet(\n node,\n name,\n resource,\n data,\n offset,\n data.length - offset,\n value.length == 0,\n version\n );\n }\n }\n\n /**\n * Obtain a DNS record.\n * @param node the namehash of the node for which to fetch the record\n * @param name the keccak-256 hash of the fully-qualified name for which to fetch the record\n * @param resource the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\n * @return the DNS record in wire format if present, otherwise empty\n */\n function dnsRecord(\n bytes32 node,\n bytes32 name,\n uint16 resource\n ) public view virtual override returns (bytes memory) {\n return versionable_records[recordVersions[node]][node][name][resource];\n }\n\n /**\n * Check if a given node has records.\n * @param node the namehash of the node for which to check the records\n * @param name the namehash of the node for which to check the records\n */\n function hasDNSRecords(\n bytes32 node,\n bytes32 name\n ) public view virtual returns (bool) {\n return (versionable_nameEntriesCount[recordVersions[node]][node][\n name\n ] != 0);\n }\n\n /**\n * setZonehash sets the hash for the zone.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n * @param hash The zonehash to set\n */\n function setZonehash(\n bytes32 node,\n bytes calldata hash\n ) external virtual authorised(node) {\n uint64 currentRecordVersion = recordVersions[node];\n bytes memory oldhash = versionable_zonehashes[currentRecordVersion][\n node\n ];\n versionable_zonehashes[currentRecordVersion][node] = hash;\n emit DNSZonehashChanged(node, oldhash, hash);\n }\n\n /**\n * zonehash obtains the hash for the zone.\n * @param node The ENS node to query.\n * @return The associated contenthash.\n */\n function zonehash(\n bytes32 node\n ) external view virtual override returns (bytes memory) {\n return versionable_zonehashes[recordVersions[node]][node];\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IDNSRecordResolver).interfaceId ||\n interfaceID == type(IDNSZoneResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n\n function setDNSRRSet(\n bytes32 node,\n bytes memory name,\n uint16 resource,\n bytes memory data,\n uint256 offset,\n uint256 size,\n bool deleteRecord,\n uint64 version\n ) private {\n bytes32 nameHash = keccak256(name);\n bytes memory rrData = data.substring(offset, size);\n if (deleteRecord) {\n if (\n versionable_records[version][node][nameHash][resource].length !=\n 0\n ) {\n versionable_nameEntriesCount[version][node][nameHash]--;\n }\n delete (versionable_records[version][node][nameHash][resource]);\n emit DNSRecordDeleted(node, name, resource);\n } else {\n if (\n versionable_records[version][node][nameHash][resource].length ==\n 0\n ) {\n versionable_nameEntriesCount[version][node][nameHash]++;\n }\n versionable_records[version][node][nameHash][resource] = rrData;\n emit DNSRecordChanged(node, name, resource, rrData);\n }\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IABIResolver {\n event ABIChanged(bytes32 indexed node, uint256 indexed contentType);\n\n /**\n * Returns the ABI associated with an ENS node.\n * Defined in EIP205.\n * @param node The ENS node to query\n * @param contentTypes A bitwise OR of the ABI formats accepted by the caller.\n * @return contentType The content type of the return value\n * @return data The ABI data\n */\n function ABI(\n bytes32 node,\n uint256 contentTypes\n ) external view returns (uint256, bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\n/**\n * Interface for the new (multicoin) addr function.\n */\ninterface IAddressResolver {\n event AddressChanged(\n bytes32 indexed node,\n uint256 coinType,\n bytes newAddress\n );\n\n function addr(\n bytes32 node,\n uint256 coinType\n ) external view returns (bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\n/**\n * Interface for the legacy (ETH-only) addr function.\n */\ninterface IAddrResolver {\n event AddrChanged(bytes32 indexed node, address a);\n\n /**\n * Returns the address associated with an ENS node.\n * @param node The ENS node to query.\n * @return The associated address.\n */\n function addr(bytes32 node) external view returns (address payable);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IContentHashResolver {\n event ContenthashChanged(bytes32 indexed node, bytes hash);\n\n /**\n * Returns the contenthash associated with an ENS node.\n * @param node The ENS node to query.\n * @return The associated contenthash.\n */\n function contenthash(bytes32 node) external view returns (bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IDNSRecordResolver {\n // DNSRecordChanged is emitted whenever a given node/name/resource's RRSET is updated.\n event DNSRecordChanged(\n bytes32 indexed node,\n bytes name,\n uint16 resource,\n bytes record\n );\n // DNSRecordDeleted is emitted whenever a given node/name/resource's RRSET is deleted.\n event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource);\n\n /**\n * Obtain a DNS record.\n * @param node the namehash of the node for which to fetch the record\n * @param name the keccak-256 hash of the fully-qualified name for which to fetch the record\n * @param resource the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\n * @return the DNS record in wire format if present, otherwise empty\n */\n function dnsRecord(\n bytes32 node,\n bytes32 name,\n uint16 resource\n ) external view returns (bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IDNSZoneResolver {\n // DNSZonehashChanged is emitted whenever a given node's zone hash is updated.\n event DNSZonehashChanged(\n bytes32 indexed node,\n bytes lastzonehash,\n bytes zonehash\n );\n\n /**\n * zonehash obtains the hash for the zone.\n * @param node The ENS node to query.\n * @return The associated contenthash.\n */\n function zonehash(bytes32 node) external view returns (bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.4;\n\ninterface IExtendedResolver {\n function resolve(\n bytes memory name,\n bytes memory data\n ) external view returns (bytes memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IInterfaceResolver {\n event InterfaceChanged(\n bytes32 indexed node,\n bytes4 indexed interfaceID,\n address implementer\n );\n\n /**\n * Returns the address of a contract that implements the specified interface for this name.\n * If an implementer has not been set for this interfaceID and name, the resolver will query\n * the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that\n * contract implements EIP165 and returns `true` for the specified interfaceID, its address\n * will be returned.\n * @param node The ENS node to query.\n * @param interfaceID The EIP 165 interface ID to check for.\n * @return The address that implements this interface, or 0 if the interface is unsupported.\n */\n function interfaceImplementer(\n bytes32 node,\n bytes4 interfaceID\n ) external view returns (address);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface INameResolver {\n event NameChanged(bytes32 indexed node, string name);\n\n /**\n * Returns the name associated with an ENS node, for reverse records.\n * Defined in EIP181.\n * @param node The ENS node to query.\n * @return The associated name.\n */\n function name(bytes32 node) external view returns (string memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\nimport \"../ResolverBase.sol\";\nimport \"./AddrResolver.sol\";\nimport \"./IInterfaceResolver.sol\";\n\nabstract contract InterfaceResolver is IInterfaceResolver, AddrResolver {\n mapping(uint64 => mapping(bytes32 => mapping(bytes4 => address))) versionable_interfaces;\n\n /**\n * Sets an interface associated with a name.\n * Setting the address to 0 restores the default behaviour of querying the contract at `addr()` for interface support.\n * @param node The node to update.\n * @param interfaceID The EIP 165 interface ID.\n * @param implementer The address of a contract that implements this interface for this node.\n */\n function setInterface(\n bytes32 node,\n bytes4 interfaceID,\n address implementer\n ) external virtual authorised(node) {\n versionable_interfaces[recordVersions[node]][node][\n interfaceID\n ] = implementer;\n emit InterfaceChanged(node, interfaceID, implementer);\n }\n\n /**\n * Returns the address of a contract that implements the specified interface for this name.\n * If an implementer has not been set for this interfaceID and name, the resolver will query\n * the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that\n * contract implements EIP165 and returns `true` for the specified interfaceID, its address\n * will be returned.\n * @param node The ENS node to query.\n * @param interfaceID The EIP 165 interface ID to check for.\n * @return The address that implements this interface, or 0 if the interface is unsupported.\n */\n function interfaceImplementer(\n bytes32 node,\n bytes4 interfaceID\n ) external view virtual override returns (address) {\n address implementer = versionable_interfaces[recordVersions[node]][\n node\n ][interfaceID];\n if (implementer != address(0)) {\n return implementer;\n }\n\n address a = addr(node);\n if (a == address(0)) {\n return address(0);\n }\n\n (bool success, bytes memory returnData) = a.staticcall(\n abi.encodeWithSignature(\n \"supportsInterface(bytes4)\",\n type(IERC165).interfaceId\n )\n );\n if (!success || returnData.length < 32 || returnData[31] == 0) {\n // EIP 165 not supported by target\n return address(0);\n }\n\n (success, returnData) = a.staticcall(\n abi.encodeWithSignature(\"supportsInterface(bytes4)\", interfaceID)\n );\n if (!success || returnData.length < 32 || returnData[31] == 0) {\n // Specified interface not supported by target\n return address(0);\n }\n\n return a;\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IInterfaceResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IPubkeyResolver {\n event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y);\n\n /**\n * Returns the SECP256k1 public key associated with an ENS node.\n * Defined in EIP 619.\n * @param node The ENS node to query\n * @return x The X coordinate of the curve point for the public key.\n * @return y The Y coordinate of the curve point for the public key.\n */\n function pubkey(bytes32 node) external view returns (bytes32 x, bytes32 y);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface ITextResolver {\n event TextChanged(\n bytes32 indexed node,\n string indexed indexedKey,\n string key,\n string value\n );\n\n /**\n * Returns the text data associated with an ENS node and key.\n * @param node The ENS node to query.\n * @param key The text data key to query.\n * @return The associated text data.\n */\n function text(\n bytes32 node,\n string calldata key\n ) external view returns (string memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\ninterface IVersionableResolver {\n event VersionChanged(bytes32 indexed node, uint64 newVersion);\n\n function recordVersions(bytes32 node) external view returns (uint64);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"./INameResolver.sol\";\n\nabstract contract NameResolver is INameResolver, ResolverBase {\n mapping(uint64 => mapping(bytes32 => string)) versionable_names;\n\n /**\n * Sets the name associated with an ENS node, for reverse records.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n */\n function setName(\n bytes32 node,\n string calldata newName\n ) external virtual authorised(node) {\n versionable_names[recordVersions[node]][node] = newName;\n emit NameChanged(node, newName);\n }\n\n /**\n * Returns the name associated with an ENS node, for reverse records.\n * Defined in EIP181.\n * @param node The ENS node to query.\n * @return The associated name.\n */\n function name(\n bytes32 node\n ) external view virtual override returns (string memory) {\n return versionable_names[recordVersions[node]][node];\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(INameResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"./IPubkeyResolver.sol\";\n\nabstract contract PubkeyResolver is IPubkeyResolver, ResolverBase {\n struct PublicKey {\n bytes32 x;\n bytes32 y;\n }\n\n mapping(uint64 => mapping(bytes32 => PublicKey)) versionable_pubkeys;\n\n /**\n * Sets the SECP256k1 public key associated with an ENS node.\n * @param node The ENS node to query\n * @param x the X coordinate of the curve point for the public key.\n * @param y the Y coordinate of the curve point for the public key.\n */\n function setPubkey(\n bytes32 node,\n bytes32 x,\n bytes32 y\n ) external virtual authorised(node) {\n versionable_pubkeys[recordVersions[node]][node] = PublicKey(x, y);\n emit PubkeyChanged(node, x, y);\n }\n\n /**\n * Returns the SECP256k1 public key associated with an ENS node.\n * Defined in EIP 619.\n * @param node The ENS node to query\n * @return x The X coordinate of the curve point for the public key.\n * @return y The Y coordinate of the curve point for the public key.\n */\n function pubkey(\n bytes32 node\n ) external view virtual override returns (bytes32 x, bytes32 y) {\n uint64 currentRecordVersion = recordVersions[node];\n return (\n versionable_pubkeys[currentRecordVersion][node].x,\n versionable_pubkeys[currentRecordVersion][node].y\n );\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IPubkeyResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"../ResolverBase.sol\";\nimport \"./ITextResolver.sol\";\n\nabstract contract TextResolver is ITextResolver, ResolverBase {\n mapping(uint64 => mapping(bytes32 => mapping(string => string))) versionable_texts;\n\n /**\n * Sets the text data associated with an ENS node and key.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n * @param key The key to set.\n * @param value The text data value to set.\n */\n function setText(\n bytes32 node,\n string calldata key,\n string calldata value\n ) external virtual authorised(node) {\n versionable_texts[recordVersions[node]][node][key] = value;\n emit TextChanged(node, key, key, value);\n }\n\n /**\n * Returns the text data associated with an ENS node and key.\n * @param node The ENS node to query.\n * @param key The text data key to query.\n * @return The associated text data.\n */\n function text(\n bytes32 node,\n string calldata key\n ) external view virtual override returns (string memory) {\n return versionable_texts[recordVersions[node]][node][key];\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(ITextResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity >=0.8.17 <0.9.0;\n\nimport \"../registry/ENS.sol\";\nimport \"./profiles/ABIResolver.sol\";\nimport \"./profiles/AddrResolver.sol\";\nimport \"./profiles/ContentHashResolver.sol\";\nimport \"./profiles/DNSResolver.sol\";\nimport \"./profiles/InterfaceResolver.sol\";\nimport \"./profiles/NameResolver.sol\";\nimport \"./profiles/PubkeyResolver.sol\";\nimport \"./profiles/TextResolver.sol\";\nimport \"./Multicallable.sol\";\nimport {ReverseClaimer} from \"../reverseRegistrar/ReverseClaimer.sol\";\nimport {INameWrapper} from \"../wrapper/INameWrapper.sol\";\n\n/**\n * A simple resolver anyone can use; only allows the owner of a node to set its\n * address.\n */\ncontract PublicResolver is\n Multicallable,\n ABIResolver,\n AddrResolver,\n ContentHashResolver,\n DNSResolver,\n InterfaceResolver,\n NameResolver,\n PubkeyResolver,\n TextResolver,\n ReverseClaimer\n{\n ENS immutable ens;\n INameWrapper immutable nameWrapper;\n address immutable trustedETHController;\n address immutable trustedReverseRegistrar;\n\n /**\n * A mapping of operators. An address that is authorised for an address\n * may make any changes to the name that the owner could, but may not update\n * the set of authorisations.\n * (owner, operator) => approved\n */\n mapping(address => mapping(address => bool)) private _operatorApprovals;\n\n /**\n * A mapping of delegates. A delegate that is authorised by an owner\n * for a name may make changes to the name's resolver, but may not update\n * the set of token approvals.\n * (owner, name, delegate) => approved\n */\n mapping(address => mapping(bytes32 => mapping(address => bool)))\n private _tokenApprovals;\n\n // Logged when an operator is added or removed.\n event ApprovalForAll(\n address indexed owner,\n address indexed operator,\n bool approved\n );\n\n // Logged when a delegate is approved or an approval is revoked.\n event Approved(\n address owner,\n bytes32 indexed node,\n address indexed delegate,\n bool indexed approved\n );\n\n constructor(\n ENS _ens,\n INameWrapper wrapperAddress,\n address _trustedETHController,\n address _trustedReverseRegistrar\n ) ReverseClaimer(_ens, msg.sender) {\n ens = _ens;\n nameWrapper = wrapperAddress;\n trustedETHController = _trustedETHController;\n trustedReverseRegistrar = _trustedReverseRegistrar;\n }\n\n /**\n * @dev See {IERC1155-setApprovalForAll}.\n */\n function setApprovalForAll(address operator, bool approved) external {\n require(\n msg.sender != operator,\n \"ERC1155: setting approval status for self\"\n );\n\n _operatorApprovals[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /**\n * @dev See {IERC1155-isApprovedForAll}.\n */\n function isApprovedForAll(\n address account,\n address operator\n ) public view returns (bool) {\n return _operatorApprovals[account][operator];\n }\n\n /**\n * @dev Approve a delegate to be able to updated records on a node.\n */\n function approve(bytes32 node, address delegate, bool approved) external {\n require(msg.sender != delegate, \"Setting delegate status for self\");\n\n _tokenApprovals[msg.sender][node][delegate] = approved;\n emit Approved(msg.sender, node, delegate, approved);\n }\n\n /**\n * @dev Check to see if the delegate has been approved by the owner for the node.\n */\n function isApprovedFor(\n address owner,\n bytes32 node,\n address delegate\n ) public view returns (bool) {\n return _tokenApprovals[owner][node][delegate];\n }\n\n function isAuthorised(bytes32 node) internal view override returns (bool) {\n if (\n msg.sender == trustedETHController ||\n msg.sender == trustedReverseRegistrar\n ) {\n return true;\n }\n address owner = ens.owner(node);\n if (owner == address(nameWrapper)) {\n owner = nameWrapper.ownerOf(uint256(node));\n }\n return\n owner == msg.sender ||\n isApprovedForAll(owner, msg.sender) ||\n isApprovedFor(owner, node, msg.sender);\n }\n\n function supportsInterface(\n bytes4 interfaceID\n )\n public\n view\n override(\n Multicallable,\n ABIResolver,\n AddrResolver,\n ContentHashResolver,\n DNSResolver,\n InterfaceResolver,\n NameResolver,\n PubkeyResolver,\n TextResolver\n )\n returns (bool)\n {\n return super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.4;\n\nimport \"@openzeppelin/contracts/utils/introspection/ERC165.sol\";\nimport \"./profiles/IVersionableResolver.sol\";\n\nabstract contract ResolverBase is ERC165, IVersionableResolver {\n mapping(bytes32 => uint64) public recordVersions;\n\n function isAuthorised(bytes32 node) internal view virtual returns (bool);\n\n modifier authorised(bytes32 node) {\n require(isAuthorised(node));\n _;\n }\n\n /**\n * Increments the record version associated with an ENS node.\n * May only be called by the owner of that node in the ENS registry.\n * @param node The node to update.\n */\n function clearRecords(bytes32 node) public virtual authorised(node) {\n recordVersions[node]++;\n emit VersionChanged(node, recordVersions[node]);\n }\n\n function supportsInterface(\n bytes4 interfaceID\n ) public view virtual override returns (bool) {\n return\n interfaceID == type(IVersionableResolver).interfaceId ||\n super.supportsInterface(interfaceID);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol": { + "content": "pragma solidity >=0.8.4;\n\ninterface IReverseRegistrar {\n function setDefaultResolver(address resolver) external;\n\n function claim(address owner) external returns (bytes32);\n\n function claimForAddr(\n address addr,\n address owner,\n address resolver\n ) external returns (bytes32);\n\n function claimWithResolver(\n address owner,\n address resolver\n ) external returns (bytes32);\n\n function setName(string memory name) external returns (bytes32);\n\n function setNameForAddr(\n address addr,\n address owner,\n address resolver,\n string memory name\n ) external returns (bytes32);\n\n function node(address addr) external pure returns (bytes32);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity >=0.8.17 <0.9.0;\n\nimport {ENS} from \"../registry/ENS.sol\";\nimport {IReverseRegistrar} from \"../reverseRegistrar/IReverseRegistrar.sol\";\n\ncontract ReverseClaimer {\n bytes32 constant ADDR_REVERSE_NODE =\n 0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2;\n\n constructor(ENS ens, address claimant) {\n IReverseRegistrar reverseRegistrar = IReverseRegistrar(\n ens.owner(ADDR_REVERSE_NODE)\n );\n reverseRegistrar.claim(claimant);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol": { + "content": "pragma solidity >=0.8.4;\n\nimport \"../registry/ENS.sol\";\nimport \"./IReverseRegistrar.sol\";\nimport \"@openzeppelin/contracts/access/Ownable.sol\";\nimport \"../root/Controllable.sol\";\n\nabstract contract NameResolver {\n function setName(bytes32 node, string memory name) public virtual;\n}\n\nbytes32 constant lookup = 0x3031323334353637383961626364656600000000000000000000000000000000;\n\nbytes32 constant ADDR_REVERSE_NODE = 0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2;\n\n// namehash('addr.reverse')\n\ncontract ReverseRegistrar is Ownable, Controllable, IReverseRegistrar {\n ENS public immutable ens;\n NameResolver public defaultResolver;\n\n event ReverseClaimed(address indexed addr, bytes32 indexed node);\n event DefaultResolverChanged(NameResolver indexed resolver);\n\n /**\n * @dev Constructor\n * @param ensAddr The address of the ENS registry.\n */\n constructor(ENS ensAddr) {\n ens = ensAddr;\n\n // Assign ownership of the reverse record to our deployer\n ReverseRegistrar oldRegistrar = ReverseRegistrar(\n ensAddr.owner(ADDR_REVERSE_NODE)\n );\n if (address(oldRegistrar) != address(0x0)) {\n oldRegistrar.claim(msg.sender);\n }\n }\n\n modifier authorised(address addr) {\n require(\n addr == msg.sender ||\n controllers[msg.sender] ||\n ens.isApprovedForAll(addr, msg.sender) ||\n ownsContract(addr),\n \"ReverseRegistrar: Caller is not a controller or authorised by address or the address itself\"\n );\n _;\n }\n\n function setDefaultResolver(address resolver) public override onlyOwner {\n require(\n address(resolver) != address(0),\n \"ReverseRegistrar: Resolver address must not be 0\"\n );\n defaultResolver = NameResolver(resolver);\n emit DefaultResolverChanged(NameResolver(resolver));\n }\n\n /**\n * @dev Transfers ownership of the reverse ENS record associated with the\n * calling account.\n * @param owner The address to set as the owner of the reverse record in ENS.\n * @return The ENS node hash of the reverse record.\n */\n function claim(address owner) public override returns (bytes32) {\n return claimForAddr(msg.sender, owner, address(defaultResolver));\n }\n\n /**\n * @dev Transfers ownership of the reverse ENS record associated with the\n * calling account.\n * @param addr The reverse record to set\n * @param owner The address to set as the owner of the reverse record in ENS.\n * @param resolver The resolver of the reverse node\n * @return The ENS node hash of the reverse record.\n */\n function claimForAddr(\n address addr,\n address owner,\n address resolver\n ) public override authorised(addr) returns (bytes32) {\n bytes32 labelHash = sha3HexAddress(addr);\n bytes32 reverseNode = keccak256(\n abi.encodePacked(ADDR_REVERSE_NODE, labelHash)\n );\n emit ReverseClaimed(addr, reverseNode);\n ens.setSubnodeRecord(ADDR_REVERSE_NODE, labelHash, owner, resolver, 0);\n return reverseNode;\n }\n\n /**\n * @dev Transfers ownership of the reverse ENS record associated with the\n * calling account.\n * @param owner The address to set as the owner of the reverse record in ENS.\n * @param resolver The address of the resolver to set; 0 to leave unchanged.\n * @return The ENS node hash of the reverse record.\n */\n function claimWithResolver(\n address owner,\n address resolver\n ) public override returns (bytes32) {\n return claimForAddr(msg.sender, owner, resolver);\n }\n\n /**\n * @dev Sets the `name()` record for the reverse ENS record associated with\n * the calling account. First updates the resolver to the default reverse\n * resolver if necessary.\n * @param name The name to set for this address.\n * @return The ENS node hash of the reverse record.\n */\n function setName(string memory name) public override returns (bytes32) {\n return\n setNameForAddr(\n msg.sender,\n msg.sender,\n address(defaultResolver),\n name\n );\n }\n\n /**\n * @dev Sets the `name()` record for the reverse ENS record associated with\n * the account provided. Updates the resolver to a designated resolver\n * Only callable by controllers and authorised users\n * @param addr The reverse record to set\n * @param owner The owner of the reverse node\n * @param resolver The resolver of the reverse node\n * @param name The name to set for this address.\n * @return The ENS node hash of the reverse record.\n */\n function setNameForAddr(\n address addr,\n address owner,\n address resolver,\n string memory name\n ) public override returns (bytes32) {\n bytes32 node = claimForAddr(addr, owner, resolver);\n NameResolver(resolver).setName(node, name);\n return node;\n }\n\n /**\n * @dev Returns the node hash for a given account's reverse records.\n * @param addr The address to hash\n * @return The ENS node hash.\n */\n function node(address addr) public pure override returns (bytes32) {\n return\n keccak256(\n abi.encodePacked(ADDR_REVERSE_NODE, sha3HexAddress(addr))\n );\n }\n\n /**\n * @dev An optimised function to compute the sha3 of the lower-case\n * hexadecimal representation of an Ethereum address.\n * @param addr The address to hash\n * @return ret The SHA3 hash of the lower-case hexadecimal encoding of the\n * input address.\n */\n function sha3HexAddress(address addr) private pure returns (bytes32 ret) {\n assembly {\n for {\n let i := 40\n } gt(i, 0) {\n\n } {\n i := sub(i, 1)\n mstore8(i, byte(and(addr, 0xf), lookup))\n addr := div(addr, 0x10)\n i := sub(i, 1)\n mstore8(i, byte(and(addr, 0xf), lookup))\n addr := div(addr, 0x10)\n }\n\n ret := keccak256(0, 40)\n }\n }\n\n function ownsContract(address addr) internal view returns (bool) {\n try Ownable(addr).owner() returns (address owner) {\n return owner == msg.sender;\n } catch {\n return false;\n }\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/root/Controllable.sol": { + "content": "pragma solidity ^0.8.4;\n\nimport \"@openzeppelin/contracts/access/Ownable.sol\";\n\ncontract Controllable is Ownable {\n mapping(address => bool) public controllers;\n\n event ControllerChanged(address indexed controller, bool enabled);\n\n modifier onlyController() {\n require(\n controllers[msg.sender],\n \"Controllable: Caller is not a controller\"\n );\n _;\n }\n\n function setController(address controller, bool enabled) public onlyOwner {\n controllers[controller] = enabled;\n emit ControllerChanged(controller, enabled);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ^0.8.4;\n\nlibrary BytesUtils {\n error OffsetOutOfBoundsError(uint256 offset, uint256 length);\n\n /*\n * @dev Returns the keccak-256 hash of a byte range.\n * @param self The byte string to hash.\n * @param offset The position to start hashing at.\n * @param len The number of bytes to hash.\n * @return The hash of the byte range.\n */\n function keccak(\n bytes memory self,\n uint256 offset,\n uint256 len\n ) internal pure returns (bytes32 ret) {\n require(offset + len <= self.length);\n assembly {\n ret := keccak256(add(add(self, 32), offset), len)\n }\n }\n\n /**\n * @dev Returns the ENS namehash of a DNS-encoded name.\n * @param self The DNS-encoded name to hash.\n * @param offset The offset at which to start hashing.\n * @return The namehash of the name.\n */\n function namehash(\n bytes memory self,\n uint256 offset\n ) internal pure returns (bytes32) {\n (bytes32 labelhash, uint256 newOffset) = readLabel(self, offset);\n if (labelhash == bytes32(0)) {\n require(offset == self.length - 1, \"namehash: Junk at end of name\");\n return bytes32(0);\n }\n return\n keccak256(abi.encodePacked(namehash(self, newOffset), labelhash));\n }\n\n /**\n * @dev Returns the keccak-256 hash of a DNS-encoded label, and the offset to the start of the next label.\n * @param self The byte string to read a label from.\n * @param idx The index to read a label at.\n * @return labelhash The hash of the label at the specified index, or 0 if it is the last label.\n * @return newIdx The index of the start of the next label.\n */\n function readLabel(\n bytes memory self,\n uint256 idx\n ) internal pure returns (bytes32 labelhash, uint256 newIdx) {\n require(idx < self.length, \"readLabel: Index out of bounds\");\n uint256 len = uint256(uint8(self[idx]));\n if (len > 0) {\n labelhash = keccak(self, idx + 1, len);\n } else {\n labelhash = bytes32(0);\n }\n newIdx = idx + len + 1;\n }\n\n /*\n * @dev Returns a positive number if `other` comes lexicographically after\n * `self`, a negative number if it comes before, or zero if the\n * contents of the two bytes are equal.\n * @param self The first bytes to compare.\n * @param other The second bytes to compare.\n * @return The result of the comparison.\n */\n function compare(\n bytes memory self,\n bytes memory other\n ) internal pure returns (int256) {\n return compare(self, 0, self.length, other, 0, other.length);\n }\n\n /*\n * @dev Returns a positive number if `other` comes lexicographically after\n * `self`, a negative number if it comes before, or zero if the\n * contents of the two bytes are equal. Comparison is done per-rune,\n * on unicode codepoints.\n * @param self The first bytes to compare.\n * @param offset The offset of self.\n * @param len The length of self.\n * @param other The second bytes to compare.\n * @param otheroffset The offset of the other string.\n * @param otherlen The length of the other string.\n * @return The result of the comparison.\n */\n function compare(\n bytes memory self,\n uint256 offset,\n uint256 len,\n bytes memory other,\n uint256 otheroffset,\n uint256 otherlen\n ) internal pure returns (int256) {\n if (offset + len > self.length) {\n revert OffsetOutOfBoundsError(offset + len, self.length);\n }\n if (otheroffset + otherlen > other.length) {\n revert OffsetOutOfBoundsError(otheroffset + otherlen, other.length);\n }\n\n uint256 shortest = len;\n if (otherlen < len) shortest = otherlen;\n\n uint256 selfptr;\n uint256 otherptr;\n\n assembly {\n selfptr := add(self, add(offset, 32))\n otherptr := add(other, add(otheroffset, 32))\n }\n for (uint256 idx = 0; idx < shortest; idx += 32) {\n uint256 a;\n uint256 b;\n assembly {\n a := mload(selfptr)\n b := mload(otherptr)\n }\n if (a != b) {\n // Mask out irrelevant bytes and check again\n uint256 mask;\n if (shortest - idx >= 32) {\n mask = type(uint256).max;\n } else {\n mask = ~(2 ** (8 * (idx + 32 - shortest)) - 1);\n }\n int256 diff = int256(a & mask) - int256(b & mask);\n if (diff != 0) return diff;\n }\n selfptr += 32;\n otherptr += 32;\n }\n\n return int256(len) - int256(otherlen);\n }\n\n /*\n * @dev Returns true if the two byte ranges are equal.\n * @param self The first byte range to compare.\n * @param offset The offset into the first byte range.\n * @param other The second byte range to compare.\n * @param otherOffset The offset into the second byte range.\n * @param len The number of bytes to compare\n * @return True if the byte ranges are equal, false otherwise.\n */\n function equals(\n bytes memory self,\n uint256 offset,\n bytes memory other,\n uint256 otherOffset,\n uint256 len\n ) internal pure returns (bool) {\n return keccak(self, offset, len) == keccak(other, otherOffset, len);\n }\n\n /*\n * @dev Returns true if the two byte ranges are equal with offsets.\n * @param self The first byte range to compare.\n * @param offset The offset into the first byte range.\n * @param other The second byte range to compare.\n * @param otherOffset The offset into the second byte range.\n * @return True if the byte ranges are equal, false otherwise.\n */\n function equals(\n bytes memory self,\n uint256 offset,\n bytes memory other,\n uint256 otherOffset\n ) internal pure returns (bool) {\n return\n keccak(self, offset, self.length - offset) ==\n keccak(other, otherOffset, other.length - otherOffset);\n }\n\n /*\n * @dev Compares a range of 'self' to all of 'other' and returns True iff\n * they are equal.\n * @param self The first byte range to compare.\n * @param offset The offset into the first byte range.\n * @param other The second byte range to compare.\n * @return True if the byte ranges are equal, false otherwise.\n */\n function equals(\n bytes memory self,\n uint256 offset,\n bytes memory other\n ) internal pure returns (bool) {\n return\n self.length == offset + other.length &&\n equals(self, offset, other, 0, other.length);\n }\n\n /*\n * @dev Returns true if the two byte ranges are equal.\n * @param self The first byte range to compare.\n * @param other The second byte range to compare.\n * @return True if the byte ranges are equal, false otherwise.\n */\n function equals(\n bytes memory self,\n bytes memory other\n ) internal pure returns (bool) {\n return\n self.length == other.length &&\n equals(self, 0, other, 0, self.length);\n }\n\n /*\n * @dev Returns the 8-bit number at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes\n * @return The specified 8 bits of the string, interpreted as an integer.\n */\n function readUint8(\n bytes memory self,\n uint256 idx\n ) internal pure returns (uint8 ret) {\n return uint8(self[idx]);\n }\n\n /*\n * @dev Returns the 16-bit number at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes\n * @return The specified 16 bits of the string, interpreted as an integer.\n */\n function readUint16(\n bytes memory self,\n uint256 idx\n ) internal pure returns (uint16 ret) {\n require(idx + 2 <= self.length);\n assembly {\n ret := and(mload(add(add(self, 2), idx)), 0xFFFF)\n }\n }\n\n /*\n * @dev Returns the 32-bit number at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes\n * @return The specified 32 bits of the string, interpreted as an integer.\n */\n function readUint32(\n bytes memory self,\n uint256 idx\n ) internal pure returns (uint32 ret) {\n require(idx + 4 <= self.length);\n assembly {\n ret := and(mload(add(add(self, 4), idx)), 0xFFFFFFFF)\n }\n }\n\n /*\n * @dev Returns the 32 byte value at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes\n * @return The specified 32 bytes of the string.\n */\n function readBytes32(\n bytes memory self,\n uint256 idx\n ) internal pure returns (bytes32 ret) {\n require(idx + 32 <= self.length);\n assembly {\n ret := mload(add(add(self, 32), idx))\n }\n }\n\n /*\n * @dev Returns the 32 byte value at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes\n * @return The specified 32 bytes of the string.\n */\n function readBytes20(\n bytes memory self,\n uint256 idx\n ) internal pure returns (bytes20 ret) {\n require(idx + 20 <= self.length);\n assembly {\n ret := and(\n mload(add(add(self, 32), idx)),\n 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000\n )\n }\n }\n\n /*\n * @dev Returns the n byte value at the specified index of self.\n * @param self The byte string.\n * @param idx The index into the bytes.\n * @param len The number of bytes.\n * @return The specified 32 bytes of the string.\n */\n function readBytesN(\n bytes memory self,\n uint256 idx,\n uint256 len\n ) internal pure returns (bytes32 ret) {\n require(len <= 32);\n require(idx + len <= self.length);\n assembly {\n let mask := not(sub(exp(256, sub(32, len)), 1))\n ret := and(mload(add(add(self, 32), idx)), mask)\n }\n }\n\n function memcpy(uint256 dest, uint256 src, uint256 len) private pure {\n // Copy word-length chunks while possible\n for (; len >= 32; len -= 32) {\n assembly {\n mstore(dest, mload(src))\n }\n dest += 32;\n src += 32;\n }\n\n // Copy remaining bytes\n unchecked {\n uint256 mask = (256 ** (32 - len)) - 1;\n assembly {\n let srcpart := and(mload(src), not(mask))\n let destpart := and(mload(dest), mask)\n mstore(dest, or(destpart, srcpart))\n }\n }\n }\n\n /*\n * @dev Copies a substring into a new byte string.\n * @param self The byte string to copy from.\n * @param offset The offset to start copying at.\n * @param len The number of bytes to copy.\n */\n function substring(\n bytes memory self,\n uint256 offset,\n uint256 len\n ) internal pure returns (bytes memory) {\n require(offset + len <= self.length);\n\n bytes memory ret = new bytes(len);\n uint256 dest;\n uint256 src;\n\n assembly {\n dest := add(ret, 32)\n src := add(add(self, 32), offset)\n }\n memcpy(dest, src, len);\n\n return ret;\n }\n\n // Maps characters from 0x30 to 0x7A to their base32 values.\n // 0xFF represents invalid characters in that range.\n bytes constant base32HexTable =\n hex\"00010203040506070809FFFFFFFFFFFFFF0A0B0C0D0E0F101112131415161718191A1B1C1D1E1FFFFFFFFFFFFFFFFFFFFF0A0B0C0D0E0F101112131415161718191A1B1C1D1E1F\";\n\n /**\n * @dev Decodes unpadded base32 data of up to one word in length.\n * @param self The data to decode.\n * @param off Offset into the string to start at.\n * @param len Number of characters to decode.\n * @return The decoded data, left aligned.\n */\n function base32HexDecodeWord(\n bytes memory self,\n uint256 off,\n uint256 len\n ) internal pure returns (bytes32) {\n require(len <= 52);\n\n uint256 ret = 0;\n uint8 decoded;\n for (uint256 i = 0; i < len; i++) {\n bytes1 char = self[off + i];\n require(char >= 0x30 && char <= 0x7A);\n decoded = uint8(base32HexTable[uint256(uint8(char)) - 0x30]);\n require(decoded <= 0x20);\n if (i == len - 1) {\n break;\n }\n ret = (ret << 5) | decoded;\n }\n\n uint256 bitlen = len * 5;\n if (len % 8 == 0) {\n // Multiple of 8 characters, no padding\n ret = (ret << 5) | decoded;\n } else if (len % 8 == 2) {\n // Two extra characters - 1 byte\n ret = (ret << 3) | (decoded >> 2);\n bitlen -= 2;\n } else if (len % 8 == 4) {\n // Four extra characters - 2 bytes\n ret = (ret << 1) | (decoded >> 4);\n bitlen -= 4;\n } else if (len % 8 == 5) {\n // Five extra characters - 3 bytes\n ret = (ret << 4) | (decoded >> 1);\n bitlen -= 1;\n } else if (len % 8 == 7) {\n // Seven extra characters - 4 bytes\n ret = (ret << 2) | (decoded >> 3);\n bitlen -= 3;\n } else {\n revert();\n }\n\n return bytes32(ret << (256 - bitlen));\n }\n\n /**\n * @dev Finds the first occurrence of the byte `needle` in `self`.\n * @param self The string to search\n * @param off The offset to start searching at\n * @param len The number of bytes to search\n * @param needle The byte to search for\n * @return The offset of `needle` in `self`, or 2**256-1 if it was not found.\n */\n function find(\n bytes memory self,\n uint256 off,\n uint256 len,\n bytes1 needle\n ) internal pure returns (uint256) {\n for (uint256 idx = off; idx < off + len; idx++) {\n if (self[idx] == needle) {\n return idx;\n }\n }\n return type(uint256).max;\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity >=0.8.17 <0.9.0;\n\nimport \"@openzeppelin/contracts/access/Ownable.sol\";\nimport \"@openzeppelin/contracts/token/ERC20/IERC20.sol\";\n\n/**\n @notice Contract is used to recover ERC20 tokens sent to the contract by mistake.\n */\n\ncontract ERC20Recoverable is Ownable {\n /**\n @notice Recover ERC20 tokens sent to the contract by mistake.\n @dev The contract is Ownable and only the owner can call the recover function.\n @param _to The address to send the tokens to.\n@param _token The address of the ERC20 token to recover\n @param _amount The amount of tokens to recover.\n */\n function recoverFunds(\n address _token,\n address _to,\n uint256 _amount\n ) external onlyOwner {\n IERC20(_token).transfer(_to, _amount);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\nimport \"@openzeppelin/contracts/access/Ownable.sol\";\n\ncontract Controllable is Ownable {\n mapping(address => bool) public controllers;\n\n event ControllerChanged(address indexed controller, bool active);\n\n function setController(address controller, bool active) public onlyOwner {\n controllers[controller] = active;\n emit ControllerChanged(controller, active);\n }\n\n modifier onlyController() {\n require(\n controllers[msg.sender],\n \"Controllable: Caller is not a controller\"\n );\n _;\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\nimport \"@openzeppelin/contracts/utils/introspection/ERC165.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol\";\nimport \"@openzeppelin/contracts/utils/Address.sol\";\n\n/* This contract is a variation on ERC1155 with the additions of _setData, getData and _beforeTransfer and ownerOf. _setData and getData allows the use of the other 96 bits next to the address of the owner for extra data. We use this to store 'fuses' that control permissions that can be burnt. 32 bits are used for the fuses themselves and 64 bits are used for the expiry of the name. When a name has expired, its fuses will be be set back to 0 */\n\nabstract contract ERC1155Fuse is ERC165, IERC1155, IERC1155MetadataURI {\n using Address for address;\n /**\n * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.\n */\n event Approval(\n address indexed owner,\n address indexed approved,\n uint256 indexed tokenId\n );\n mapping(uint256 => uint256) public _tokens;\n\n // Mapping from owner to operator approvals\n mapping(address => mapping(address => bool)) private _operatorApprovals;\n // Mapping from token ID to approved address\n mapping(uint256 => address) internal _tokenApprovals;\n\n /**************************************************************************\n * ERC721 methods\n *************************************************************************/\n\n function ownerOf(uint256 id) public view virtual returns (address) {\n (address owner, , ) = getData(id);\n return owner;\n }\n\n /**\n * @dev See {IERC721-approve}.\n */\n function approve(address to, uint256 tokenId) public virtual {\n address owner = ownerOf(tokenId);\n require(to != owner, \"ERC721: approval to current owner\");\n\n require(\n msg.sender == owner || isApprovedForAll(owner, msg.sender),\n \"ERC721: approve caller is not token owner or approved for all\"\n );\n\n _approve(to, tokenId);\n }\n\n /**\n * @dev See {IERC721-getApproved}.\n */\n function getApproved(\n uint256 tokenId\n ) public view virtual returns (address) {\n return _tokenApprovals[tokenId];\n }\n\n /**\n * @dev See {IERC165-supportsInterface}.\n */\n function supportsInterface(\n bytes4 interfaceId\n ) public view virtual override(ERC165, IERC165) returns (bool) {\n return\n interfaceId == type(IERC1155).interfaceId ||\n interfaceId == type(IERC1155MetadataURI).interfaceId ||\n super.supportsInterface(interfaceId);\n }\n\n /**\n * @dev See {IERC1155-balanceOf}.\n *\n * Requirements:\n *\n * - `account` cannot be the zero address.\n */\n function balanceOf(\n address account,\n uint256 id\n ) public view virtual override returns (uint256) {\n require(\n account != address(0),\n \"ERC1155: balance query for the zero address\"\n );\n address owner = ownerOf(id);\n if (owner == account) {\n return 1;\n }\n return 0;\n }\n\n /**\n * @dev See {IERC1155-balanceOfBatch}.\n *\n * Requirements:\n *\n * - `accounts` and `ids` must have the same length.\n */\n function balanceOfBatch(\n address[] memory accounts,\n uint256[] memory ids\n ) public view virtual override returns (uint256[] memory) {\n require(\n accounts.length == ids.length,\n \"ERC1155: accounts and ids length mismatch\"\n );\n\n uint256[] memory batchBalances = new uint256[](accounts.length);\n\n for (uint256 i = 0; i < accounts.length; ++i) {\n batchBalances[i] = balanceOf(accounts[i], ids[i]);\n }\n\n return batchBalances;\n }\n\n /**\n * @dev See {IERC1155-setApprovalForAll}.\n */\n function setApprovalForAll(\n address operator,\n bool approved\n ) public virtual override {\n require(\n msg.sender != operator,\n \"ERC1155: setting approval status for self\"\n );\n\n _operatorApprovals[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /**\n * @dev See {IERC1155-isApprovedForAll}.\n */\n function isApprovedForAll(\n address account,\n address operator\n ) public view virtual override returns (bool) {\n return _operatorApprovals[account][operator];\n }\n\n /**\n * @dev Returns the Name's owner address and fuses\n */\n function getData(\n uint256 tokenId\n ) public view virtual returns (address owner, uint32 fuses, uint64 expiry) {\n uint256 t = _tokens[tokenId];\n owner = address(uint160(t));\n expiry = uint64(t >> 192);\n fuses = uint32(t >> 160);\n }\n\n /**\n * @dev See {IERC1155-safeTransferFrom}.\n */\n function safeTransferFrom(\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes memory data\n ) public virtual override {\n require(to != address(0), \"ERC1155: transfer to the zero address\");\n require(\n from == msg.sender || isApprovedForAll(from, msg.sender),\n \"ERC1155: caller is not owner nor approved\"\n );\n\n _transfer(from, to, id, amount, data);\n }\n\n /**\n * @dev See {IERC1155-safeBatchTransferFrom}.\n */\n function safeBatchTransferFrom(\n address from,\n address to,\n uint256[] memory ids,\n uint256[] memory amounts,\n bytes memory data\n ) public virtual override {\n require(\n ids.length == amounts.length,\n \"ERC1155: ids and amounts length mismatch\"\n );\n require(to != address(0), \"ERC1155: transfer to the zero address\");\n require(\n from == msg.sender || isApprovedForAll(from, msg.sender),\n \"ERC1155: transfer caller is not owner nor approved\"\n );\n\n for (uint256 i = 0; i < ids.length; ++i) {\n uint256 id = ids[i];\n uint256 amount = amounts[i];\n\n (address oldOwner, uint32 fuses, uint64 expiry) = getData(id);\n\n _beforeTransfer(id, fuses, expiry);\n\n require(\n amount == 1 && oldOwner == from,\n \"ERC1155: insufficient balance for transfer\"\n );\n _setData(id, to, fuses, expiry);\n }\n\n emit TransferBatch(msg.sender, from, to, ids, amounts);\n\n _doSafeBatchTransferAcceptanceCheck(\n msg.sender,\n from,\n to,\n ids,\n amounts,\n data\n );\n }\n\n /**************************************************************************\n * Internal/private methods\n *************************************************************************/\n\n /**\n * @dev Sets the Name's owner address and fuses\n */\n function _setData(\n uint256 tokenId,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal virtual {\n _tokens[tokenId] =\n uint256(uint160(owner)) |\n (uint256(fuses) << 160) |\n (uint256(expiry) << 192);\n }\n\n function _beforeTransfer(\n uint256 id,\n uint32 fuses,\n uint64 expiry\n ) internal virtual;\n\n function _clearOwnerAndFuses(\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal virtual returns (address, uint32);\n\n function _mint(\n bytes32 node,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal virtual {\n uint256 tokenId = uint256(node);\n (address oldOwner, uint32 oldFuses, uint64 oldExpiry) = getData(\n uint256(node)\n );\n\n uint32 parentControlledFuses = (uint32(type(uint16).max) << 16) &\n oldFuses;\n\n if (oldExpiry > expiry) {\n expiry = oldExpiry;\n }\n\n if (oldExpiry >= block.timestamp) {\n fuses = fuses | parentControlledFuses;\n }\n\n require(oldOwner == address(0), \"ERC1155: mint of existing token\");\n require(owner != address(0), \"ERC1155: mint to the zero address\");\n require(\n owner != address(this),\n \"ERC1155: newOwner cannot be the NameWrapper contract\"\n );\n\n _setData(tokenId, owner, fuses, expiry);\n emit TransferSingle(msg.sender, address(0x0), owner, tokenId, 1);\n _doSafeTransferAcceptanceCheck(\n msg.sender,\n address(0),\n owner,\n tokenId,\n 1,\n \"\"\n );\n }\n\n function _burn(uint256 tokenId) internal virtual {\n (address oldOwner, uint32 fuses, uint64 expiry) = ERC1155Fuse.getData(\n tokenId\n );\n (, fuses) = _clearOwnerAndFuses(oldOwner, fuses, expiry);\n // Clear approvals\n delete _tokenApprovals[tokenId];\n // Fuses and expiry are kept on burn\n _setData(tokenId, address(0x0), fuses, expiry);\n emit TransferSingle(msg.sender, oldOwner, address(0x0), tokenId, 1);\n }\n\n function _transfer(\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes memory data\n ) internal {\n (address oldOwner, uint32 fuses, uint64 expiry) = getData(id);\n\n _beforeTransfer(id, fuses, expiry);\n\n require(\n amount == 1 && oldOwner == from,\n \"ERC1155: insufficient balance for transfer\"\n );\n\n if (oldOwner == to) {\n return;\n }\n\n _setData(id, to, fuses, expiry);\n\n emit TransferSingle(msg.sender, from, to, id, amount);\n\n _doSafeTransferAcceptanceCheck(msg.sender, from, to, id, amount, data);\n }\n\n function _doSafeTransferAcceptanceCheck(\n address operator,\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes memory data\n ) private {\n if (to.isContract()) {\n try\n IERC1155Receiver(to).onERC1155Received(\n operator,\n from,\n id,\n amount,\n data\n )\n returns (bytes4 response) {\n if (\n response != IERC1155Receiver(to).onERC1155Received.selector\n ) {\n revert(\"ERC1155: ERC1155Receiver rejected tokens\");\n }\n } catch Error(string memory reason) {\n revert(reason);\n } catch {\n revert(\"ERC1155: transfer to non ERC1155Receiver implementer\");\n }\n }\n }\n\n function _doSafeBatchTransferAcceptanceCheck(\n address operator,\n address from,\n address to,\n uint256[] memory ids,\n uint256[] memory amounts,\n bytes memory data\n ) private {\n if (to.isContract()) {\n try\n IERC1155Receiver(to).onERC1155BatchReceived(\n operator,\n from,\n ids,\n amounts,\n data\n )\n returns (bytes4 response) {\n if (\n response !=\n IERC1155Receiver(to).onERC1155BatchReceived.selector\n ) {\n revert(\"ERC1155: ERC1155Receiver rejected tokens\");\n }\n } catch Error(string memory reason) {\n revert(reason);\n } catch {\n revert(\"ERC1155: transfer to non ERC1155Receiver implementer\");\n }\n }\n }\n\n /* ERC721 internal functions */\n\n /**\n * @dev Approve `to` to operate on `tokenId`\n *\n * Emits an {Approval} event.\n */\n function _approve(address to, uint256 tokenId) internal virtual {\n _tokenApprovals[tokenId] = to;\n emit Approval(ownerOf(tokenId), to, tokenId);\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\ninterface IMetadataService {\n function uri(uint256) external view returns (string memory);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\nimport \"../registry/ENS.sol\";\nimport \"../ethregistrar/IBaseRegistrar.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport \"./IMetadataService.sol\";\nimport \"./INameWrapperUpgrade.sol\";\n\nuint32 constant CANNOT_UNWRAP = 1;\nuint32 constant CANNOT_BURN_FUSES = 2;\nuint32 constant CANNOT_TRANSFER = 4;\nuint32 constant CANNOT_SET_RESOLVER = 8;\nuint32 constant CANNOT_SET_TTL = 16;\nuint32 constant CANNOT_CREATE_SUBDOMAIN = 32;\nuint32 constant CANNOT_APPROVE = 64;\n//uint16 reserved for parent controlled fuses from bit 17 to bit 32\nuint32 constant PARENT_CANNOT_CONTROL = 1 << 16;\nuint32 constant IS_DOT_ETH = 1 << 17;\nuint32 constant CAN_EXTEND_EXPIRY = 1 << 18;\nuint32 constant CAN_DO_EVERYTHING = 0;\nuint32 constant PARENT_CONTROLLED_FUSES = 0xFFFF0000;\n// all fuses apart from IS_DOT_ETH\nuint32 constant USER_SETTABLE_FUSES = 0xFFFDFFFF;\n\ninterface INameWrapper is IERC1155 {\n event NameWrapped(\n bytes32 indexed node,\n bytes name,\n address owner,\n uint32 fuses,\n uint64 expiry\n );\n\n event NameUnwrapped(bytes32 indexed node, address owner);\n\n event FusesSet(bytes32 indexed node, uint32 fuses);\n event ExpiryExtended(bytes32 indexed node, uint64 expiry);\n\n function ens() external view returns (ENS);\n\n function registrar() external view returns (IBaseRegistrar);\n\n function metadataService() external view returns (IMetadataService);\n\n function names(bytes32) external view returns (bytes memory);\n\n function name() external view returns (string memory);\n\n function upgradeContract() external view returns (INameWrapperUpgrade);\n\n function supportsInterface(bytes4 interfaceID) external view returns (bool);\n\n function wrap(\n bytes calldata name,\n address wrappedOwner,\n address resolver\n ) external;\n\n function wrapETH2LD(\n string calldata label,\n address wrappedOwner,\n uint16 ownerControlledFuses,\n address resolver\n ) external returns (uint64 expires);\n\n function registerAndWrapETH2LD(\n string calldata label,\n address wrappedOwner,\n uint256 duration,\n address resolver,\n uint16 ownerControlledFuses\n ) external returns (uint256 registrarExpiry);\n\n function renew(\n uint256 labelHash,\n uint256 duration\n ) external returns (uint256 expires);\n\n function unwrap(bytes32 node, bytes32 label, address owner) external;\n\n function unwrapETH2LD(\n bytes32 label,\n address newRegistrant,\n address newController\n ) external;\n\n function upgrade(bytes calldata name, bytes calldata extraData) external;\n\n function setFuses(\n bytes32 node,\n uint16 ownerControlledFuses\n ) external returns (uint32 newFuses);\n\n function setChildFuses(\n bytes32 parentNode,\n bytes32 labelhash,\n uint32 fuses,\n uint64 expiry\n ) external;\n\n function setSubnodeRecord(\n bytes32 node,\n string calldata label,\n address owner,\n address resolver,\n uint64 ttl,\n uint32 fuses,\n uint64 expiry\n ) external returns (bytes32);\n\n function setRecord(\n bytes32 node,\n address owner,\n address resolver,\n uint64 ttl\n ) external;\n\n function setSubnodeOwner(\n bytes32 node,\n string calldata label,\n address newOwner,\n uint32 fuses,\n uint64 expiry\n ) external returns (bytes32);\n\n function extendExpiry(\n bytes32 node,\n bytes32 labelhash,\n uint64 expiry\n ) external returns (uint64);\n\n function canModifyName(\n bytes32 node,\n address addr\n ) external view returns (bool);\n\n function setResolver(bytes32 node, address resolver) external;\n\n function setTTL(bytes32 node, uint64 ttl) external;\n\n function ownerOf(uint256 id) external view returns (address owner);\n\n function approve(address to, uint256 tokenId) external;\n\n function getApproved(uint256 tokenId) external view returns (address);\n\n function getData(\n uint256 id\n ) external view returns (address, uint32, uint64);\n\n function setMetadataService(IMetadataService _metadataService) external;\n\n function uri(uint256 tokenId) external view returns (string memory);\n\n function setUpgradeContract(INameWrapperUpgrade _upgradeAddress) external;\n\n function allFusesBurned(\n bytes32 node,\n uint32 fuseMask\n ) external view returns (bool);\n\n function isWrapped(bytes32) external view returns (bool);\n\n function isWrapped(bytes32, bytes32) external view returns (bool);\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\ninterface INameWrapperUpgrade {\n function wrapFromUpgrade(\n bytes calldata name,\n address wrappedOwner,\n uint32 fuses,\n uint64 expiry,\n address approved,\n bytes calldata extraData\n ) external;\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\nimport {ERC1155Fuse, IERC165, IERC1155MetadataURI} from \"./ERC1155Fuse.sol\";\nimport {Controllable} from \"./Controllable.sol\";\nimport {INameWrapper, CANNOT_UNWRAP, CANNOT_BURN_FUSES, CANNOT_TRANSFER, CANNOT_SET_RESOLVER, CANNOT_SET_TTL, CANNOT_CREATE_SUBDOMAIN, CANNOT_APPROVE, PARENT_CANNOT_CONTROL, CAN_DO_EVERYTHING, IS_DOT_ETH, CAN_EXTEND_EXPIRY, PARENT_CONTROLLED_FUSES, USER_SETTABLE_FUSES} from \"./INameWrapper.sol\";\nimport {INameWrapperUpgrade} from \"./INameWrapperUpgrade.sol\";\nimport {IMetadataService} from \"./IMetadataService.sol\";\nimport {ENS} from \"../registry/ENS.sol\";\nimport {IReverseRegistrar} from \"../reverseRegistrar/IReverseRegistrar.sol\";\nimport {ReverseClaimer} from \"../reverseRegistrar/ReverseClaimer.sol\";\nimport {IBaseRegistrar} from \"../ethregistrar/IBaseRegistrar.sol\";\nimport {IERC721Receiver} from \"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport {Ownable} from \"@openzeppelin/contracts/access/Ownable.sol\";\nimport {BytesUtils} from \"../utils/BytesUtils.sol\";\nimport {ERC20Recoverable} from \"../utils/ERC20Recoverable.sol\";\n\nimport \"hardhat/console.sol\";\n\nerror Unauthorised(bytes32 node, address addr);\nerror IncompatibleParent();\nerror IncorrectTokenType();\nerror LabelMismatch(bytes32 labelHash, bytes32 expectedLabelhash);\nerror LabelTooShort();\nerror LabelTooLong(string label);\nerror IncorrectTargetOwner(address owner);\nerror CannotUpgrade();\nerror OperationProhibited(bytes32 node);\nerror NameIsNotWrapped();\nerror NameIsStillExpired();\n\ncontract NameWrapper is\n Ownable,\n ERC1155Fuse,\n INameWrapper,\n Controllable,\n IERC721Receiver,\n ERC20Recoverable,\n ReverseClaimer\n{\n using BytesUtils for bytes;\n\n ENS public immutable ens;\n IBaseRegistrar public immutable registrar;\n IMetadataService public metadataService;\n mapping(bytes32 => bytes) public names;\n string public constant name = \"NameWrapper\";\n\n uint64 private constant GRACE_PERIOD = 90 days;\n bytes32 private constant ETH_NODE =\n 0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae;\n bytes32 private constant ETH_LABELHASH =\n 0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0;\n bytes32 private constant ROOT_NODE =\n 0x0000000000000000000000000000000000000000000000000000000000000000;\n\n INameWrapperUpgrade public upgradeContract;\n uint64 private constant MAX_EXPIRY = type(uint64).max;\n\n constructor(\n ENS _ens,\n IBaseRegistrar _registrar,\n IMetadataService _metadataService\n ) ReverseClaimer(_ens, msg.sender) {\n ens = _ens;\n registrar = _registrar;\n metadataService = _metadataService;\n\n /* Burn PARENT_CANNOT_CONTROL and CANNOT_UNWRAP fuses for ROOT_NODE and ETH_NODE and set expiry to max */\n\n _setData(\n uint256(ETH_NODE),\n address(0),\n uint32(PARENT_CANNOT_CONTROL | CANNOT_UNWRAP),\n MAX_EXPIRY\n );\n _setData(\n uint256(ROOT_NODE),\n address(0),\n uint32(PARENT_CANNOT_CONTROL | CANNOT_UNWRAP),\n MAX_EXPIRY\n );\n names[ROOT_NODE] = \"\\x00\";\n names[ETH_NODE] = \"\\x03eth\\x00\";\n }\n\n function supportsInterface(\n bytes4 interfaceId\n ) public view virtual override(ERC1155Fuse, INameWrapper) returns (bool) {\n return\n interfaceId == type(INameWrapper).interfaceId ||\n interfaceId == type(IERC721Receiver).interfaceId ||\n super.supportsInterface(interfaceId);\n }\n\n /* ERC1155 Fuse */\n\n /**\n * @notice Gets the owner of a name\n * @param id Label as a string of the .eth domain to wrap\n * @return owner The owner of the name\n */\n\n function ownerOf(\n uint256 id\n ) public view override(ERC1155Fuse, INameWrapper) returns (address owner) {\n return super.ownerOf(id);\n }\n\n /**\n * @notice Gets the owner of a name\n * @param id Namehash of the name\n * @return operator Approved operator of a name\n */\n\n function getApproved(\n uint256 id\n )\n public\n view\n override(ERC1155Fuse, INameWrapper)\n returns (address operator)\n {\n address owner = ownerOf(id);\n if (owner == address(0)) {\n return address(0);\n }\n return super.getApproved(id);\n }\n\n /**\n * @notice Approves an address for a name\n * @param to address to approve\n * @param tokenId name to approve\n */\n\n function approve(\n address to,\n uint256 tokenId\n ) public override(ERC1155Fuse, INameWrapper) {\n (, uint32 fuses, ) = getData(tokenId);\n if (fuses & CANNOT_APPROVE == CANNOT_APPROVE) {\n revert OperationProhibited(bytes32(tokenId));\n }\n super.approve(to, tokenId);\n }\n\n /**\n * @notice Gets the data for a name\n * @param id Namehash of the name\n * @return owner Owner of the name\n * @return fuses Fuses of the name\n * @return expiry Expiry of the name\n */\n\n function getData(\n uint256 id\n )\n public\n view\n override(ERC1155Fuse, INameWrapper)\n returns (address owner, uint32 fuses, uint64 expiry)\n {\n (owner, fuses, expiry) = super.getData(id);\n\n (owner, fuses) = _clearOwnerAndFuses(owner, fuses, expiry);\n }\n\n /* Metadata service */\n\n /**\n * @notice Set the metadata service. Only the owner can do this\n * @param _metadataService The new metadata service\n */\n\n function setMetadataService(\n IMetadataService _metadataService\n ) public onlyOwner {\n metadataService = _metadataService;\n }\n\n /**\n * @notice Get the metadata uri\n * @param tokenId The id of the token\n * @return string uri of the metadata service\n */\n\n function uri(\n uint256 tokenId\n )\n public\n view\n override(INameWrapper, IERC1155MetadataURI)\n returns (string memory)\n {\n return metadataService.uri(tokenId);\n }\n\n /**\n * @notice Set the address of the upgradeContract of the contract. only admin can do this\n * @dev The default value of upgradeContract is the 0 address. Use the 0 address at any time\n * to make the contract not upgradable.\n * @param _upgradeAddress address of an upgraded contract\n */\n\n function setUpgradeContract(\n INameWrapperUpgrade _upgradeAddress\n ) public onlyOwner {\n if (address(upgradeContract) != address(0)) {\n registrar.setApprovalForAll(address(upgradeContract), false);\n ens.setApprovalForAll(address(upgradeContract), false);\n }\n\n upgradeContract = _upgradeAddress;\n\n if (address(upgradeContract) != address(0)) {\n registrar.setApprovalForAll(address(upgradeContract), true);\n ens.setApprovalForAll(address(upgradeContract), true);\n }\n }\n\n /**\n * @notice Checks if msg.sender is the owner or operator of the owner of a name\n * @param node namehash of the name to check\n */\n\n modifier onlyTokenOwner(bytes32 node) {\n if (!canModifyName(node, msg.sender)) {\n revert Unauthorised(node, msg.sender);\n }\n\n _;\n }\n\n /**\n * @notice Checks if owner or operator of the owner\n * @param node namehash of the name to check\n * @param addr which address to check permissions for\n * @return whether or not is owner or operator\n */\n\n function canModifyName(\n bytes32 node,\n address addr\n ) public view returns (bool) {\n (address owner, uint32 fuses, uint64 expiry) = getData(uint256(node));\n return\n (owner == addr || isApprovedForAll(owner, addr)) &&\n !_isETH2LDInGracePeriod(fuses, expiry);\n }\n\n /**\n * @notice Checks if owner/operator or approved by owner\n * @param node namehash of the name to check\n * @param addr which address to check permissions for\n * @return whether or not is owner/operator or approved\n */\n\n function canExtendSubnames(\n bytes32 node,\n address addr\n ) public view returns (bool) {\n (address owner, uint32 fuses, uint64 expiry) = getData(uint256(node));\n return\n (owner == addr ||\n isApprovedForAll(owner, addr) ||\n getApproved(uint256(node)) == addr) &&\n !_isETH2LDInGracePeriod(fuses, expiry);\n }\n\n /**\n * @notice Wraps a .eth domain, creating a new token and sending the original ERC721 token to this contract\n * @dev Can be called by the owner of the name on the .eth registrar or an authorised caller on the registrar\n * @param label Label as a string of the .eth domain to wrap\n * @param wrappedOwner Owner of the name in this contract\n * @param ownerControlledFuses Initial owner-controlled fuses to set\n * @param resolver Resolver contract address\n */\n\n function wrapETH2LD(\n string calldata label,\n address wrappedOwner,\n uint16 ownerControlledFuses,\n address resolver\n ) public returns (uint64 expiry) {\n uint256 tokenId = uint256(keccak256(bytes(label)));\n address registrant = registrar.ownerOf(tokenId);\n if (\n registrant != msg.sender &&\n !registrar.isApprovedForAll(registrant, msg.sender)\n ) {\n revert Unauthorised(\n _makeNode(ETH_NODE, bytes32(tokenId)),\n msg.sender\n );\n }\n\n // transfer the token from the user to this contract\n registrar.transferFrom(registrant, address(this), tokenId);\n\n // transfer the ens record back to the new owner (this contract)\n registrar.reclaim(tokenId, address(this));\n\n expiry = uint64(registrar.nameExpires(tokenId)) + GRACE_PERIOD;\n\n _wrapETH2LD(\n label,\n wrappedOwner,\n ownerControlledFuses,\n expiry,\n resolver\n );\n }\n\n /**\n * @dev Registers a new .eth second-level domain and wraps it.\n * Only callable by authorised controllers.\n * @param label The label to register (Eg, 'foo' for 'foo.eth').\n * @param wrappedOwner The owner of the wrapped name.\n * @param duration The duration, in seconds, to register the name for.\n * @param resolver The resolver address to set on the ENS registry (optional).\n * @param ownerControlledFuses Initial owner-controlled fuses to set\n * @return registrarExpiry The expiry date of the new name on the .eth registrar, in seconds since the Unix epoch.\n */\n\n function registerAndWrapETH2LD(\n string calldata label,\n address wrappedOwner,\n uint256 duration,\n address resolver,\n uint16 ownerControlledFuses\n ) external onlyController returns (uint256 registrarExpiry) {\n uint256 tokenId = uint256(keccak256(bytes(label)));\n registrarExpiry = registrar.register(tokenId, address(this), duration);\n _wrapETH2LD(\n label,\n wrappedOwner,\n ownerControlledFuses,\n uint64(registrarExpiry) + GRACE_PERIOD,\n resolver\n );\n }\n\n /**\n * @notice Renews a .eth second-level domain.\n * @dev Only callable by authorised controllers.\n * @param tokenId The hash of the label to register (eg, `keccak256('foo')`, for 'foo.eth').\n * @param duration The number of seconds to renew the name for.\n * @return expires The expiry date of the name on the .eth registrar, in seconds since the Unix epoch.\n */\n\n function renew(\n uint256 tokenId,\n uint256 duration\n ) external onlyController returns (uint256 expires) {\n bytes32 node = _makeNode(ETH_NODE, bytes32(tokenId));\n\n uint256 registrarExpiry = registrar.renew(tokenId, duration);\n\n // Do not set anything in wrapper if name is not wrapped\n try registrar.ownerOf(tokenId) returns (address registrarOwner) {\n if (\n registrarOwner != address(this) ||\n ens.owner(node) != address(this)\n ) {\n return registrarExpiry;\n }\n } catch {\n return registrarExpiry;\n }\n\n // Set expiry in Wrapper\n uint64 expiry = uint64(registrarExpiry) + GRACE_PERIOD;\n\n // Use super to allow names expired on the wrapper, but not expired on the registrar to renew()\n (address owner, uint32 fuses, ) = super.getData(uint256(node));\n _setData(node, owner, fuses, expiry);\n\n return registrarExpiry;\n }\n\n /**\n * @notice Wraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\n * @dev Can be called by the owner in the registry or an authorised caller in the registry\n * @param name The name to wrap, in DNS format\n * @param wrappedOwner Owner of the name in this contract\n * @param resolver Resolver contract\n */\n\n function wrap(\n bytes calldata name,\n address wrappedOwner,\n address resolver\n ) public {\n (bytes32 labelhash, uint256 offset) = name.readLabel(0);\n bytes32 parentNode = name.namehash(offset);\n bytes32 node = _makeNode(parentNode, labelhash);\n\n names[node] = name;\n\n if (parentNode == ETH_NODE) {\n revert IncompatibleParent();\n }\n\n address owner = ens.owner(node);\n\n if (owner != msg.sender && !ens.isApprovedForAll(owner, msg.sender)) {\n revert Unauthorised(node, msg.sender);\n }\n\n if (resolver != address(0)) {\n ens.setResolver(node, resolver);\n }\n\n ens.setOwner(node, address(this));\n\n _wrap(node, name, wrappedOwner, 0, 0);\n }\n\n /**\n * @notice Unwraps a .eth domain. e.g. vitalik.eth\n * @dev Can be called by the owner in the wrapper or an authorised caller in the wrapper\n * @param labelhash Labelhash of the .eth domain\n * @param registrant Sets the owner in the .eth registrar to this address\n * @param controller Sets the owner in the registry to this address\n */\n\n function unwrapETH2LD(\n bytes32 labelhash,\n address registrant,\n address controller\n ) public onlyTokenOwner(_makeNode(ETH_NODE, labelhash)) {\n if (registrant == address(this)) {\n revert IncorrectTargetOwner(registrant);\n }\n _unwrap(_makeNode(ETH_NODE, labelhash), controller);\n registrar.safeTransferFrom(\n address(this),\n registrant,\n uint256(labelhash)\n );\n }\n\n /**\n * @notice Unwraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\n * @dev Can be called by the owner in the wrapper or an authorised caller in the wrapper\n * @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n * @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n * @param controller Sets the owner in the registry to this address\n */\n\n function unwrap(\n bytes32 parentNode,\n bytes32 labelhash,\n address controller\n ) public onlyTokenOwner(_makeNode(parentNode, labelhash)) {\n if (parentNode == ETH_NODE) {\n revert IncompatibleParent();\n }\n if (controller == address(0x0) || controller == address(this)) {\n revert IncorrectTargetOwner(controller);\n }\n _unwrap(_makeNode(parentNode, labelhash), controller);\n }\n\n /**\n * @notice Sets fuses of a name\n * @param node Namehash of the name\n * @param ownerControlledFuses Owner-controlled fuses to burn\n * @return Old fuses\n */\n\n function setFuses(\n bytes32 node,\n uint16 ownerControlledFuses\n )\n public\n onlyTokenOwner(node)\n operationAllowed(node, CANNOT_BURN_FUSES)\n returns (uint32)\n {\n // owner protected by onlyTokenOwner\n (address owner, uint32 oldFuses, uint64 expiry) = getData(\n uint256(node)\n );\n _setFuses(node, owner, ownerControlledFuses | oldFuses, expiry, expiry);\n return oldFuses;\n }\n\n /**\n * @notice Extends expiry for a name\n * @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n * @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n * @param expiry When the name will expire in seconds since the Unix epoch\n * @return New expiry\n */\n\n function extendExpiry(\n bytes32 parentNode,\n bytes32 labelhash,\n uint64 expiry\n ) public returns (uint64) {\n bytes32 node = _makeNode(parentNode, labelhash);\n\n if (!_isWrapped(node)) {\n revert NameIsNotWrapped();\n }\n\n // this flag is used later, when checking fuses\n bool canExtendSubname = canExtendSubnames(parentNode, msg.sender);\n // only allow the owner of the name or owner of the parent name\n if (!canExtendSubname && !canModifyName(node, msg.sender)) {\n revert Unauthorised(node, msg.sender);\n }\n\n (address owner, uint32 fuses, uint64 oldExpiry) = getData(\n uint256(node)\n );\n\n // Either CAN_EXTEND_EXPIRY must be set, or the caller must have permission to modify the parent name\n if (!canExtendSubname && fuses & CAN_EXTEND_EXPIRY == 0) {\n revert OperationProhibited(node);\n }\n\n // Max expiry is set to the expiry of the parent\n (, , uint64 maxExpiry) = getData(uint256(parentNode));\n expiry = _normaliseExpiry(expiry, oldExpiry, maxExpiry);\n\n _setData(node, owner, fuses, expiry);\n emit ExpiryExtended(node, expiry);\n return expiry;\n }\n\n /**\n * @notice Upgrades a domain of any kind. Could be a .eth name vitalik.eth, a DNSSEC name vitalik.xyz, or a subdomain\n * @dev Can be called by the owner or an authorised caller\n * @param name The name to upgrade, in DNS format\n * @param extraData Extra data to pass to the upgrade contract\n */\n\n function upgrade(bytes calldata name, bytes calldata extraData) public {\n bytes32 node = name.namehash(0);\n\n if (address(upgradeContract) == address(0)) {\n revert CannotUpgrade();\n }\n\n if (!canModifyName(node, msg.sender)) {\n revert Unauthorised(node, msg.sender);\n }\n\n (address currentOwner, uint32 fuses, uint64 expiry) = getData(\n uint256(node)\n );\n\n address approved = getApproved(uint256(node));\n\n _burn(uint256(node));\n\n upgradeContract.wrapFromUpgrade(\n name,\n currentOwner,\n fuses,\n expiry,\n approved,\n extraData\n );\n }\n\n /** \n /* @notice Sets fuses of a name that you own the parent of\n * @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n * @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n * @param fuses Fuses to burn\n * @param expiry When the name will expire in seconds since the Unix epoch\n */\n\n function setChildFuses(\n bytes32 parentNode,\n bytes32 labelhash,\n uint32 fuses,\n uint64 expiry\n ) public {\n bytes32 node = _makeNode(parentNode, labelhash);\n _checkFusesAreSettable(node, fuses);\n (address owner, uint32 oldFuses, uint64 oldExpiry) = getData(\n uint256(node)\n );\n if (owner == address(0) || ens.owner(node) != address(this)) {\n revert NameIsNotWrapped();\n }\n // max expiry is set to the expiry of the parent\n (, uint32 parentFuses, uint64 maxExpiry) = getData(uint256(parentNode));\n if (parentNode == ROOT_NODE) {\n if (!canModifyName(node, msg.sender)) {\n revert Unauthorised(node, msg.sender);\n }\n } else {\n if (!canModifyName(parentNode, msg.sender)) {\n revert Unauthorised(parentNode, msg.sender);\n }\n }\n\n _checkParentFuses(node, fuses, parentFuses);\n\n expiry = _normaliseExpiry(expiry, oldExpiry, maxExpiry);\n\n // if PARENT_CANNOT_CONTROL has been burned and fuses have changed\n if (\n oldFuses & PARENT_CANNOT_CONTROL != 0 &&\n oldFuses | fuses != oldFuses\n ) {\n revert OperationProhibited(node);\n }\n fuses |= oldFuses;\n _setFuses(node, owner, fuses, oldExpiry, expiry);\n }\n\n /**\n * @notice Sets the subdomain owner in the registry and then wraps the subdomain\n * @param parentNode Parent namehash of the subdomain\n * @param label Label of the subdomain as a string\n * @param owner New owner in the wrapper\n * @param fuses Initial fuses for the wrapped subdomain\n * @param expiry When the name will expire in seconds since the Unix epoch\n * @return node Namehash of the subdomain\n */\n\n function setSubnodeOwner(\n bytes32 parentNode,\n string calldata label,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) public onlyTokenOwner(parentNode) returns (bytes32 node) {\n bytes32 labelhash = keccak256(bytes(label));\n node = _makeNode(parentNode, labelhash);\n _checkCanCallSetSubnodeOwner(parentNode, node);\n _checkFusesAreSettable(node, fuses);\n bytes memory name = _saveLabel(parentNode, node, label);\n expiry = _checkParentFusesAndExpiry(parentNode, node, fuses, expiry);\n\n if (!_isWrapped(node)) {\n ens.setSubnodeOwner(parentNode, labelhash, address(this));\n _wrap(node, name, owner, fuses, expiry);\n } else {\n _updateName(parentNode, node, label, owner, fuses, expiry);\n }\n }\n\n /**\n * @notice Sets the subdomain owner in the registry with records and then wraps the subdomain\n * @param parentNode parent namehash of the subdomain\n * @param label label of the subdomain as a string\n * @param owner new owner in the wrapper\n * @param resolver resolver contract in the registry\n * @param ttl ttl in the registry\n * @param fuses initial fuses for the wrapped subdomain\n * @param expiry When the name will expire in seconds since the Unix epoch\n * @return node Namehash of the subdomain\n */\n\n function setSubnodeRecord(\n bytes32 parentNode,\n string memory label,\n address owner,\n address resolver,\n uint64 ttl,\n uint32 fuses,\n uint64 expiry\n ) public onlyTokenOwner(parentNode) returns (bytes32 node) {\n bytes32 labelhash = keccak256(bytes(label));\n node = _makeNode(parentNode, labelhash);\n _checkCanCallSetSubnodeOwner(parentNode, node);\n _checkFusesAreSettable(node, fuses);\n _saveLabel(parentNode, node, label);\n expiry = _checkParentFusesAndExpiry(parentNode, node, fuses, expiry);\n if (!_isWrapped(node)) {\n ens.setSubnodeRecord(\n parentNode,\n labelhash,\n address(this),\n resolver,\n ttl\n );\n _storeNameAndWrap(parentNode, node, label, owner, fuses, expiry);\n } else {\n ens.setSubnodeRecord(\n parentNode,\n labelhash,\n address(this),\n resolver,\n ttl\n );\n _updateName(parentNode, node, label, owner, fuses, expiry);\n }\n }\n\n /**\n * @notice Sets records for the name in the ENS Registry\n * @param node Namehash of the name to set a record for\n * @param owner New owner in the registry\n * @param resolver Resolver contract\n * @param ttl Time to live in the registry\n */\n\n function setRecord(\n bytes32 node,\n address owner,\n address resolver,\n uint64 ttl\n )\n public\n onlyTokenOwner(node)\n operationAllowed(\n node,\n CANNOT_TRANSFER | CANNOT_SET_RESOLVER | CANNOT_SET_TTL\n )\n {\n ens.setRecord(node, address(this), resolver, ttl);\n if (owner == address(0)) {\n (, uint32 fuses, ) = getData(uint256(node));\n if (fuses & IS_DOT_ETH == IS_DOT_ETH) {\n revert IncorrectTargetOwner(owner);\n }\n _unwrap(node, address(0));\n } else {\n address oldOwner = ownerOf(uint256(node));\n _transfer(oldOwner, owner, uint256(node), 1, \"\");\n }\n }\n\n /**\n * @notice Sets resolver contract in the registry\n * @param node namehash of the name\n * @param resolver the resolver contract\n */\n\n function setResolver(\n bytes32 node,\n address resolver\n ) public onlyTokenOwner(node) operationAllowed(node, CANNOT_SET_RESOLVER) {\n ens.setResolver(node, resolver);\n }\n\n /**\n * @notice Sets TTL in the registry\n * @param node Namehash of the name\n * @param ttl TTL in the registry\n */\n\n function setTTL(\n bytes32 node,\n uint64 ttl\n ) public onlyTokenOwner(node) operationAllowed(node, CANNOT_SET_TTL) {\n ens.setTTL(node, ttl);\n }\n\n /**\n * @dev Allows an operation only if none of the specified fuses are burned.\n * @param node The namehash of the name to check fuses on.\n * @param fuseMask A bitmask of fuses that must not be burned.\n */\n\n modifier operationAllowed(bytes32 node, uint32 fuseMask) {\n (, uint32 fuses, ) = getData(uint256(node));\n if (fuses & fuseMask != 0) {\n revert OperationProhibited(node);\n }\n _;\n }\n\n /**\n * @notice Check whether a name can call setSubnodeOwner/setSubnodeRecord\n * @dev Checks both CANNOT_CREATE_SUBDOMAIN and PARENT_CANNOT_CONTROL and whether not they have been burnt\n * and checks whether the owner of the subdomain is 0x0 for creating or already exists for\n * replacing a subdomain. If either conditions are true, then it is possible to call\n * setSubnodeOwner\n * @param parentNode Namehash of the parent name to check\n * @param subnode Namehash of the subname to check\n */\n\n function _checkCanCallSetSubnodeOwner(\n bytes32 parentNode,\n bytes32 subnode\n ) internal view {\n (\n address subnodeOwner,\n uint32 subnodeFuses,\n uint64 subnodeExpiry\n ) = getData(uint256(subnode));\n\n // check if the registry owner is 0 and expired\n // check if the wrapper owner is 0 and expired\n // If either, then check parent fuses for CANNOT_CREATE_SUBDOMAIN\n bool expired = subnodeExpiry < block.timestamp;\n if (\n expired &&\n // protects a name that has been unwrapped with PCC and doesn't allow the parent to take control by recreating it if unexpired\n (subnodeOwner == address(0) ||\n // protects a name that has been burnt and doesn't allow the parent to take control by recreating it if unexpired\n ens.owner(subnode) == address(0))\n ) {\n (, uint32 parentFuses, ) = getData(uint256(parentNode));\n if (parentFuses & CANNOT_CREATE_SUBDOMAIN != 0) {\n revert OperationProhibited(subnode);\n }\n } else {\n if (subnodeFuses & PARENT_CANNOT_CONTROL != 0) {\n revert OperationProhibited(subnode);\n }\n }\n }\n\n /**\n * @notice Checks all Fuses in the mask are burned for the node\n * @param node Namehash of the name\n * @param fuseMask The fuses you want to check\n * @return Boolean of whether or not all the selected fuses are burned\n */\n\n function allFusesBurned(\n bytes32 node,\n uint32 fuseMask\n ) public view returns (bool) {\n (, uint32 fuses, ) = getData(uint256(node));\n return fuses & fuseMask == fuseMask;\n }\n\n /**\n * @notice Checks if a name is wrapped\n * @param node Namehash of the name\n * @return Boolean of whether or not the name is wrapped\n */\n\n function isWrapped(bytes32 node) public view returns (bool) {\n bytes memory name = names[node];\n if (name.length == 0) {\n return false;\n }\n (bytes32 labelhash, uint256 offset) = name.readLabel(0);\n bytes32 parentNode = name.namehash(offset);\n return isWrapped(parentNode, labelhash);\n }\n\n /**\n * @notice Checks if a name is wrapped in a more gas efficient way\n * @param parentNode Namehash of the name\n * @param labelhash Namehash of the name\n * @return Boolean of whether or not the name is wrapped\n */\n\n function isWrapped(\n bytes32 parentNode,\n bytes32 labelhash\n ) public view returns (bool) {\n bytes32 node = _makeNode(parentNode, labelhash);\n bool wrapped = _isWrapped(node);\n if (parentNode != ETH_NODE) {\n return wrapped;\n }\n try registrar.ownerOf(uint256(labelhash)) returns (address owner) {\n return owner == address(this);\n } catch {\n return false;\n }\n }\n\n function onERC721Received(\n address to,\n address,\n uint256 tokenId,\n bytes calldata data\n ) public returns (bytes4) {\n //check if it's the eth registrar ERC721\n if (msg.sender != address(registrar)) {\n revert IncorrectTokenType();\n }\n\n (\n string memory label,\n address owner,\n uint16 ownerControlledFuses,\n address resolver\n ) = abi.decode(data, (string, address, uint16, address));\n\n bytes32 labelhash = bytes32(tokenId);\n bytes32 labelhashFromData = keccak256(bytes(label));\n\n if (labelhashFromData != labelhash) {\n revert LabelMismatch(labelhashFromData, labelhash);\n }\n\n // transfer the ens record back to the new owner (this contract)\n registrar.reclaim(uint256(labelhash), address(this));\n\n uint64 expiry = uint64(registrar.nameExpires(tokenId)) + GRACE_PERIOD;\n\n _wrapETH2LD(label, owner, ownerControlledFuses, expiry, resolver);\n\n return IERC721Receiver(to).onERC721Received.selector;\n }\n\n /***** Internal functions */\n\n function _beforeTransfer(\n uint256 id,\n uint32 fuses,\n uint64 expiry\n ) internal override {\n // For this check, treat .eth 2LDs as expiring at the start of the grace period.\n if (fuses & IS_DOT_ETH == IS_DOT_ETH) {\n expiry -= GRACE_PERIOD;\n }\n\n if (expiry < block.timestamp) {\n // Transferable if the name was not emancipated\n if (fuses & PARENT_CANNOT_CONTROL != 0) {\n revert(\"ERC1155: insufficient balance for transfer\");\n }\n } else {\n // Transferable if CANNOT_TRANSFER is unburned\n if (fuses & CANNOT_TRANSFER != 0) {\n revert OperationProhibited(bytes32(id));\n }\n }\n\n // delete token approval if CANNOT_APPROVE has not been burnt\n if (fuses & CANNOT_APPROVE == 0) {\n delete _tokenApprovals[id];\n }\n }\n\n function _clearOwnerAndFuses(\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal view override returns (address, uint32) {\n if (expiry < block.timestamp) {\n if (fuses & PARENT_CANNOT_CONTROL == PARENT_CANNOT_CONTROL) {\n owner = address(0);\n }\n fuses = 0;\n }\n\n return (owner, fuses);\n }\n\n function _makeNode(\n bytes32 node,\n bytes32 labelhash\n ) private pure returns (bytes32) {\n return keccak256(abi.encodePacked(node, labelhash));\n }\n\n function _addLabel(\n string memory label,\n bytes memory name\n ) internal pure returns (bytes memory ret) {\n if (bytes(label).length < 1) {\n revert LabelTooShort();\n }\n if (bytes(label).length > 255) {\n revert LabelTooLong(label);\n }\n return abi.encodePacked(uint8(bytes(label).length), label, name);\n }\n\n function _mint(\n bytes32 node,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal override {\n _canFusesBeBurned(node, fuses);\n (address oldOwner, , ) = super.getData(uint256(node));\n if (oldOwner != address(0)) {\n // burn and unwrap old token of old owner\n _burn(uint256(node));\n emit NameUnwrapped(node, address(0));\n }\n super._mint(node, owner, fuses, expiry);\n }\n\n function _wrap(\n bytes32 node,\n bytes memory name,\n address wrappedOwner,\n uint32 fuses,\n uint64 expiry\n ) internal {\n _mint(node, wrappedOwner, fuses, expiry);\n emit NameWrapped(node, name, wrappedOwner, fuses, expiry);\n }\n\n function _storeNameAndWrap(\n bytes32 parentNode,\n bytes32 node,\n string memory label,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal {\n bytes memory name = _addLabel(label, names[parentNode]);\n _wrap(node, name, owner, fuses, expiry);\n }\n\n function _saveLabel(\n bytes32 parentNode,\n bytes32 node,\n string memory label\n ) internal returns (bytes memory) {\n bytes memory name = _addLabel(label, names[parentNode]);\n names[node] = name;\n return name;\n }\n\n function _updateName(\n bytes32 parentNode,\n bytes32 node,\n string memory label,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal {\n (address oldOwner, uint32 oldFuses, uint64 oldExpiry) = getData(\n uint256(node)\n );\n bytes memory name = _addLabel(label, names[parentNode]);\n if (names[node].length == 0) {\n names[node] = name;\n }\n _setFuses(node, oldOwner, oldFuses | fuses, oldExpiry, expiry);\n if (owner == address(0)) {\n _unwrap(node, address(0));\n } else {\n _transfer(oldOwner, owner, uint256(node), 1, \"\");\n }\n }\n\n // wrapper function for stack limit\n function _checkParentFusesAndExpiry(\n bytes32 parentNode,\n bytes32 node,\n uint32 fuses,\n uint64 expiry\n ) internal view returns (uint64) {\n (, , uint64 oldExpiry) = getData(uint256(node));\n (, uint32 parentFuses, uint64 maxExpiry) = getData(uint256(parentNode));\n _checkParentFuses(node, fuses, parentFuses);\n return _normaliseExpiry(expiry, oldExpiry, maxExpiry);\n }\n\n function _checkParentFuses(\n bytes32 node,\n uint32 fuses,\n uint32 parentFuses\n ) internal pure {\n bool isBurningParentControlledFuses = fuses & PARENT_CONTROLLED_FUSES !=\n 0;\n\n bool parentHasNotBurnedCU = parentFuses & CANNOT_UNWRAP == 0;\n\n if (isBurningParentControlledFuses && parentHasNotBurnedCU) {\n revert OperationProhibited(node);\n }\n }\n\n function _normaliseExpiry(\n uint64 expiry,\n uint64 oldExpiry,\n uint64 maxExpiry\n ) private pure returns (uint64) {\n // Expiry cannot be more than maximum allowed\n // .eth names will check registrar, non .eth check parent\n if (expiry > maxExpiry) {\n expiry = maxExpiry;\n }\n // Expiry cannot be less than old expiry\n if (expiry < oldExpiry) {\n expiry = oldExpiry;\n }\n\n return expiry;\n }\n\n function _wrapETH2LD(\n string memory label,\n address wrappedOwner,\n uint32 fuses,\n uint64 expiry,\n address resolver\n ) private {\n bytes32 labelhash = keccak256(bytes(label));\n bytes32 node = _makeNode(ETH_NODE, labelhash);\n // hardcode dns-encoded eth string for gas savings\n bytes memory name = _addLabel(label, \"\\x03eth\\x00\");\n names[node] = name;\n\n _wrap(\n node,\n name,\n wrappedOwner,\n fuses | PARENT_CANNOT_CONTROL | IS_DOT_ETH,\n expiry\n );\n\n if (resolver != address(0)) {\n ens.setResolver(node, resolver);\n }\n }\n\n function _unwrap(bytes32 node, address owner) private {\n if (allFusesBurned(node, CANNOT_UNWRAP)) {\n revert OperationProhibited(node);\n }\n\n // Burn token and fuse data\n _burn(uint256(node));\n ens.setOwner(node, owner);\n\n emit NameUnwrapped(node, owner);\n }\n\n function _setFuses(\n bytes32 node,\n address owner,\n uint32 fuses,\n uint64 oldExpiry,\n uint64 expiry\n ) internal {\n _setData(node, owner, fuses, expiry);\n emit FusesSet(node, fuses);\n if (expiry > oldExpiry) {\n emit ExpiryExtended(node, expiry);\n }\n }\n\n function _setData(\n bytes32 node,\n address owner,\n uint32 fuses,\n uint64 expiry\n ) internal {\n _canFusesBeBurned(node, fuses);\n super._setData(uint256(node), owner, fuses, expiry);\n }\n\n function _canFusesBeBurned(bytes32 node, uint32 fuses) internal pure {\n // If a non-parent controlled fuse is being burned, check PCC and CU are burnt\n if (\n fuses & ~PARENT_CONTROLLED_FUSES != 0 &&\n fuses & (PARENT_CANNOT_CONTROL | CANNOT_UNWRAP) !=\n (PARENT_CANNOT_CONTROL | CANNOT_UNWRAP)\n ) {\n revert OperationProhibited(node);\n }\n }\n\n function _checkFusesAreSettable(bytes32 node, uint32 fuses) internal pure {\n if (fuses | USER_SETTABLE_FUSES != USER_SETTABLE_FUSES) {\n // Cannot directly burn other non-user settable fuses\n revert OperationProhibited(node);\n }\n }\n\n function _isWrapped(bytes32 node) internal view returns (bool) {\n return\n ownerOf(uint256(node)) != address(0) &&\n ens.owner(node) == address(this);\n }\n\n function _isETH2LDInGracePeriod(\n uint32 fuses,\n uint64 expiry\n ) internal view returns (bool) {\n return\n fuses & IS_DOT_ETH == IS_DOT_ETH &&\n expiry - GRACE_PERIOD < block.timestamp;\n }\n}\n" + }, + "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol": { + "content": "//SPDX-License-Identifier: MIT\npragma solidity ~0.8.17;\n\ncontract StaticMetadataService {\n string private _uri;\n\n constructor(string memory _metaDataUri) {\n _uri = _metaDataUri;\n }\n\n function uri(uint256) public view returns (string memory) {\n return _uri;\n }\n}\n" + }, + "@openzeppelin/contracts/access/Ownable.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../utils/Context.sol\";\n\n/**\n * @dev Contract module which provides a basic access control mechanism, where\n * there is an account (an owner) that can be granted exclusive access to\n * specific functions.\n *\n * By default, the owner account will be the one that deploys the contract. This\n * can later be changed with {transferOwnership}.\n *\n * This module is used through inheritance. It will make available the modifier\n * `onlyOwner`, which can be applied to your functions to restrict their use to\n * the owner.\n */\nabstract contract Ownable is Context {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n /**\n * @dev Initializes the contract setting the deployer as the initial owner.\n */\n constructor() {\n _transferOwnership(_msgSender());\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n _checkOwner();\n _;\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view virtual returns (address) {\n return _owner;\n }\n\n /**\n * @dev Throws if the sender is not the owner.\n */\n function _checkOwner() internal view virtual {\n require(owner() == _msgSender(), \"Ownable: caller is not the owner\");\n }\n\n /**\n * @dev Leaves the contract without owner. It will not be possible to call\n * `onlyOwner` functions. Can only be called by the current owner.\n *\n * NOTE: Renouncing ownership will leave the contract without an owner,\n * thereby disabling any functionality that is only available to the owner.\n */\n function renounceOwnership() public virtual onlyOwner {\n _transferOwnership(address(0));\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Can only be called by the current owner.\n */\n function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0), \"Ownable: new owner is the zero address\");\n _transferOwnership(newOwner);\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Internal function without access restriction.\n */\n function _transferOwnership(address newOwner) internal virtual {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner, newOwner);\n }\n}\n" + }, + "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (token/ERC1155/extensions/IERC1155MetadataURI.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../IERC1155.sol\";\n\n/**\n * @dev Interface of the optional ERC1155MetadataExtension interface, as defined\n * in the https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[EIP].\n *\n * _Available since v3.1._\n */\ninterface IERC1155MetadataURI is IERC1155 {\n /**\n * @dev Returns the URI for token type `id`.\n *\n * If the `\\{id\\}` substring is present in the URI, it must be replaced by\n * clients with the actual token type ID.\n */\n function uri(uint256 id) external view returns (string memory);\n}\n" + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC1155/IERC1155.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../../utils/introspection/IERC165.sol\";\n\n/**\n * @dev Required interface of an ERC1155 compliant contract, as defined in the\n * https://eips.ethereum.org/EIPS/eip-1155[EIP].\n *\n * _Available since v3.1._\n */\ninterface IERC1155 is IERC165 {\n /**\n * @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\n */\n event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);\n\n /**\n * @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all\n * transfers.\n */\n event TransferBatch(\n address indexed operator,\n address indexed from,\n address indexed to,\n uint256[] ids,\n uint256[] values\n );\n\n /**\n * @dev Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to\n * `approved`.\n */\n event ApprovalForAll(address indexed account, address indexed operator, bool approved);\n\n /**\n * @dev Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI.\n *\n * If an {URI} event was emitted for `id`, the standard\n * https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value\n * returned by {IERC1155MetadataURI-uri}.\n */\n event URI(string value, uint256 indexed id);\n\n /**\n * @dev Returns the amount of tokens of token type `id` owned by `account`.\n *\n * Requirements:\n *\n * - `account` cannot be the zero address.\n */\n function balanceOf(address account, uint256 id) external view returns (uint256);\n\n /**\n * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}.\n *\n * Requirements:\n *\n * - `accounts` and `ids` must have the same length.\n */\n function balanceOfBatch(\n address[] calldata accounts,\n uint256[] calldata ids\n ) external view returns (uint256[] memory);\n\n /**\n * @dev Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`,\n *\n * Emits an {ApprovalForAll} event.\n *\n * Requirements:\n *\n * - `operator` cannot be the caller.\n */\n function setApprovalForAll(address operator, bool approved) external;\n\n /**\n * @dev Returns true if `operator` is approved to transfer ``account``'s tokens.\n *\n * See {setApprovalForAll}.\n */\n function isApprovedForAll(address account, address operator) external view returns (bool);\n\n /**\n * @dev Transfers `amount` tokens of token type `id` from `from` to `to`.\n *\n * Emits a {TransferSingle} event.\n *\n * Requirements:\n *\n * - `to` cannot be the zero address.\n * - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}.\n * - `from` must have a balance of tokens of type `id` of at least `amount`.\n * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the\n * acceptance magic value.\n */\n function safeTransferFrom(address from, address to, uint256 id, uint256 amount, bytes calldata data) external;\n\n /**\n * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}.\n *\n * Emits a {TransferBatch} event.\n *\n * Requirements:\n *\n * - `ids` and `amounts` must have the same length.\n * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the\n * acceptance magic value.\n */\n function safeBatchTransferFrom(\n address from,\n address to,\n uint256[] calldata ids,\n uint256[] calldata amounts,\n bytes calldata data\n ) external;\n}\n" + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.5.0) (token/ERC1155/IERC1155Receiver.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../../utils/introspection/IERC165.sol\";\n\n/**\n * @dev _Available since v3.1._\n */\ninterface IERC1155Receiver is IERC165 {\n /**\n * @dev Handles the receipt of a single ERC1155 token type. This function is\n * called at the end of a `safeTransferFrom` after the balance has been updated.\n *\n * NOTE: To accept the transfer, this must return\n * `bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"))`\n * (i.e. 0xf23a6e61, or its own function selector).\n *\n * @param operator The address which initiated the transfer (i.e. msg.sender)\n * @param from The address which previously owned the token\n * @param id The ID of the token being transferred\n * @param value The amount of tokens being transferred\n * @param data Additional data with no specified format\n * @return `bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"))` if transfer is allowed\n */\n function onERC1155Received(\n address operator,\n address from,\n uint256 id,\n uint256 value,\n bytes calldata data\n ) external returns (bytes4);\n\n /**\n * @dev Handles the receipt of a multiple ERC1155 token types. This function\n * is called at the end of a `safeBatchTransferFrom` after the balances have\n * been updated.\n *\n * NOTE: To accept the transfer(s), this must return\n * `bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"))`\n * (i.e. 0xbc197c81, or its own function selector).\n *\n * @param operator The address which initiated the batch transfer (i.e. msg.sender)\n * @param from The address which previously owned the token\n * @param ids An array containing ids of each token being transferred (order and length must match values array)\n * @param values An array containing amounts of each token being transferred (order and length must match ids array)\n * @param data Additional data with no specified format\n * @return `bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"))` if transfer is allowed\n */\n function onERC1155BatchReceived(\n address operator,\n address from,\n uint256[] calldata ids,\n uint256[] calldata values,\n bytes calldata data\n ) external returns (bytes4);\n}\n" + }, + "@openzeppelin/contracts/token/ERC20/IERC20.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC20 standard as defined in the EIP.\n */\ninterface IERC20 {\n /**\n * @dev Emitted when `value` tokens are moved from one account (`from`) to\n * another (`to`).\n *\n * Note that `value` may be zero.\n */\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n /**\n * @dev Emitted when the allowance of a `spender` for an `owner` is set by\n * a call to {approve}. `value` is the new allowance.\n */\n event Approval(address indexed owner, address indexed spender, uint256 value);\n\n /**\n * @dev Returns the amount of tokens in existence.\n */\n function totalSupply() external view returns (uint256);\n\n /**\n * @dev Returns the amount of tokens owned by `account`.\n */\n function balanceOf(address account) external view returns (uint256);\n\n /**\n * @dev Moves `amount` tokens from the caller's account to `to`.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transfer(address to, uint256 amount) external returns (bool);\n\n /**\n * @dev Returns the remaining number of tokens that `spender` will be\n * allowed to spend on behalf of `owner` through {transferFrom}. This is\n * zero by default.\n *\n * This value changes when {approve} or {transferFrom} are called.\n */\n function allowance(address owner, address spender) external view returns (uint256);\n\n /**\n * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * IMPORTANT: Beware that changing an allowance with this method brings the risk\n * that someone may use both the old and the new allowance by unfortunate\n * transaction ordering. One possible solution to mitigate this race\n * condition is to first reduce the spender's allowance to 0 and set the\n * desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n *\n * Emits an {Approval} event.\n */\n function approve(address spender, uint256 amount) external returns (bool);\n\n /**\n * @dev Moves `amount` tokens from `from` to `to` using the\n * allowance mechanism. `amount` is then deducted from the caller's\n * allowance.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(address from, address to, uint256 amount) external returns (bool);\n}\n" + }, + "@openzeppelin/contracts/token/ERC721/ERC721.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC721/ERC721.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./IERC721.sol\";\nimport \"./IERC721Receiver.sol\";\nimport \"./extensions/IERC721Metadata.sol\";\nimport \"../../utils/Address.sol\";\nimport \"../../utils/Context.sol\";\nimport \"../../utils/Strings.sol\";\nimport \"../../utils/introspection/ERC165.sol\";\n\n/**\n * @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including\n * the Metadata extension, but not including the Enumerable extension, which is available separately as\n * {ERC721Enumerable}.\n */\ncontract ERC721 is Context, ERC165, IERC721, IERC721Metadata {\n using Address for address;\n using Strings for uint256;\n\n // Token name\n string private _name;\n\n // Token symbol\n string private _symbol;\n\n // Mapping from token ID to owner address\n mapping(uint256 => address) private _owners;\n\n // Mapping owner address to token count\n mapping(address => uint256) private _balances;\n\n // Mapping from token ID to approved address\n mapping(uint256 => address) private _tokenApprovals;\n\n // Mapping from owner to operator approvals\n mapping(address => mapping(address => bool)) private _operatorApprovals;\n\n /**\n * @dev Initializes the contract by setting a `name` and a `symbol` to the token collection.\n */\n constructor(string memory name_, string memory symbol_) {\n _name = name_;\n _symbol = symbol_;\n }\n\n /**\n * @dev See {IERC165-supportsInterface}.\n */\n function supportsInterface(bytes4 interfaceId) public view virtual override(ERC165, IERC165) returns (bool) {\n return\n interfaceId == type(IERC721).interfaceId ||\n interfaceId == type(IERC721Metadata).interfaceId ||\n super.supportsInterface(interfaceId);\n }\n\n /**\n * @dev See {IERC721-balanceOf}.\n */\n function balanceOf(address owner) public view virtual override returns (uint256) {\n require(owner != address(0), \"ERC721: address zero is not a valid owner\");\n return _balances[owner];\n }\n\n /**\n * @dev See {IERC721-ownerOf}.\n */\n function ownerOf(uint256 tokenId) public view virtual override returns (address) {\n address owner = _ownerOf(tokenId);\n require(owner != address(0), \"ERC721: invalid token ID\");\n return owner;\n }\n\n /**\n * @dev See {IERC721Metadata-name}.\n */\n function name() public view virtual override returns (string memory) {\n return _name;\n }\n\n /**\n * @dev See {IERC721Metadata-symbol}.\n */\n function symbol() public view virtual override returns (string memory) {\n return _symbol;\n }\n\n /**\n * @dev See {IERC721Metadata-tokenURI}.\n */\n function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {\n _requireMinted(tokenId);\n\n string memory baseURI = _baseURI();\n return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI, tokenId.toString())) : \"\";\n }\n\n /**\n * @dev Base URI for computing {tokenURI}. If set, the resulting URI for each\n * token will be the concatenation of the `baseURI` and the `tokenId`. Empty\n * by default, can be overridden in child contracts.\n */\n function _baseURI() internal view virtual returns (string memory) {\n return \"\";\n }\n\n /**\n * @dev See {IERC721-approve}.\n */\n function approve(address to, uint256 tokenId) public virtual override {\n address owner = ERC721.ownerOf(tokenId);\n require(to != owner, \"ERC721: approval to current owner\");\n\n require(\n _msgSender() == owner || isApprovedForAll(owner, _msgSender()),\n \"ERC721: approve caller is not token owner or approved for all\"\n );\n\n _approve(to, tokenId);\n }\n\n /**\n * @dev See {IERC721-getApproved}.\n */\n function getApproved(uint256 tokenId) public view virtual override returns (address) {\n _requireMinted(tokenId);\n\n return _tokenApprovals[tokenId];\n }\n\n /**\n * @dev See {IERC721-setApprovalForAll}.\n */\n function setApprovalForAll(address operator, bool approved) public virtual override {\n _setApprovalForAll(_msgSender(), operator, approved);\n }\n\n /**\n * @dev See {IERC721-isApprovedForAll}.\n */\n function isApprovedForAll(address owner, address operator) public view virtual override returns (bool) {\n return _operatorApprovals[owner][operator];\n }\n\n /**\n * @dev See {IERC721-transferFrom}.\n */\n function transferFrom(address from, address to, uint256 tokenId) public virtual override {\n //solhint-disable-next-line max-line-length\n require(_isApprovedOrOwner(_msgSender(), tokenId), \"ERC721: caller is not token owner or approved\");\n\n _transfer(from, to, tokenId);\n }\n\n /**\n * @dev See {IERC721-safeTransferFrom}.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId) public virtual override {\n safeTransferFrom(from, to, tokenId, \"\");\n }\n\n /**\n * @dev See {IERC721-safeTransferFrom}.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data) public virtual override {\n require(_isApprovedOrOwner(_msgSender(), tokenId), \"ERC721: caller is not token owner or approved\");\n _safeTransfer(from, to, tokenId, data);\n }\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n * are aware of the ERC721 protocol to prevent tokens from being forever locked.\n *\n * `data` is additional data, it has no specified format and it is sent in call to `to`.\n *\n * This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.\n * implement alternative mechanisms to perform token transfer, such as signature-based.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function _safeTransfer(address from, address to, uint256 tokenId, bytes memory data) internal virtual {\n _transfer(from, to, tokenId);\n require(_checkOnERC721Received(from, to, tokenId, data), \"ERC721: transfer to non ERC721Receiver implementer\");\n }\n\n /**\n * @dev Returns the owner of the `tokenId`. Does NOT revert if token doesn't exist\n */\n function _ownerOf(uint256 tokenId) internal view virtual returns (address) {\n return _owners[tokenId];\n }\n\n /**\n * @dev Returns whether `tokenId` exists.\n *\n * Tokens can be managed by their owner or approved accounts via {approve} or {setApprovalForAll}.\n *\n * Tokens start existing when they are minted (`_mint`),\n * and stop existing when they are burned (`_burn`).\n */\n function _exists(uint256 tokenId) internal view virtual returns (bool) {\n return _ownerOf(tokenId) != address(0);\n }\n\n /**\n * @dev Returns whether `spender` is allowed to manage `tokenId`.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function _isApprovedOrOwner(address spender, uint256 tokenId) internal view virtual returns (bool) {\n address owner = ERC721.ownerOf(tokenId);\n return (spender == owner || isApprovedForAll(owner, spender) || getApproved(tokenId) == spender);\n }\n\n /**\n * @dev Safely mints `tokenId` and transfers it to `to`.\n *\n * Requirements:\n *\n * - `tokenId` must not exist.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function _safeMint(address to, uint256 tokenId) internal virtual {\n _safeMint(to, tokenId, \"\");\n }\n\n /**\n * @dev Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is\n * forwarded in {IERC721Receiver-onERC721Received} to contract recipients.\n */\n function _safeMint(address to, uint256 tokenId, bytes memory data) internal virtual {\n _mint(to, tokenId);\n require(\n _checkOnERC721Received(address(0), to, tokenId, data),\n \"ERC721: transfer to non ERC721Receiver implementer\"\n );\n }\n\n /**\n * @dev Mints `tokenId` and transfers it to `to`.\n *\n * WARNING: Usage of this method is discouraged, use {_safeMint} whenever possible\n *\n * Requirements:\n *\n * - `tokenId` must not exist.\n * - `to` cannot be the zero address.\n *\n * Emits a {Transfer} event.\n */\n function _mint(address to, uint256 tokenId) internal virtual {\n require(to != address(0), \"ERC721: mint to the zero address\");\n require(!_exists(tokenId), \"ERC721: token already minted\");\n\n _beforeTokenTransfer(address(0), to, tokenId, 1);\n\n // Check that tokenId was not minted by `_beforeTokenTransfer` hook\n require(!_exists(tokenId), \"ERC721: token already minted\");\n\n unchecked {\n // Will not overflow unless all 2**256 token ids are minted to the same owner.\n // Given that tokens are minted one by one, it is impossible in practice that\n // this ever happens. Might change if we allow batch minting.\n // The ERC fails to describe this case.\n _balances[to] += 1;\n }\n\n _owners[tokenId] = to;\n\n emit Transfer(address(0), to, tokenId);\n\n _afterTokenTransfer(address(0), to, tokenId, 1);\n }\n\n /**\n * @dev Destroys `tokenId`.\n * The approval is cleared when the token is burned.\n * This is an internal function that does not check if the sender is authorized to operate on the token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n *\n * Emits a {Transfer} event.\n */\n function _burn(uint256 tokenId) internal virtual {\n address owner = ERC721.ownerOf(tokenId);\n\n _beforeTokenTransfer(owner, address(0), tokenId, 1);\n\n // Update ownership in case tokenId was transferred by `_beforeTokenTransfer` hook\n owner = ERC721.ownerOf(tokenId);\n\n // Clear approvals\n delete _tokenApprovals[tokenId];\n\n unchecked {\n // Cannot overflow, as that would require more tokens to be burned/transferred\n // out than the owner initially received through minting and transferring in.\n _balances[owner] -= 1;\n }\n delete _owners[tokenId];\n\n emit Transfer(owner, address(0), tokenId);\n\n _afterTokenTransfer(owner, address(0), tokenId, 1);\n }\n\n /**\n * @dev Transfers `tokenId` from `from` to `to`.\n * As opposed to {transferFrom}, this imposes no restrictions on msg.sender.\n *\n * Requirements:\n *\n * - `to` cannot be the zero address.\n * - `tokenId` token must be owned by `from`.\n *\n * Emits a {Transfer} event.\n */\n function _transfer(address from, address to, uint256 tokenId) internal virtual {\n require(ERC721.ownerOf(tokenId) == from, \"ERC721: transfer from incorrect owner\");\n require(to != address(0), \"ERC721: transfer to the zero address\");\n\n _beforeTokenTransfer(from, to, tokenId, 1);\n\n // Check that tokenId was not transferred by `_beforeTokenTransfer` hook\n require(ERC721.ownerOf(tokenId) == from, \"ERC721: transfer from incorrect owner\");\n\n // Clear approvals from the previous owner\n delete _tokenApprovals[tokenId];\n\n unchecked {\n // `_balances[from]` cannot overflow for the same reason as described in `_burn`:\n // `from`'s balance is the number of token held, which is at least one before the current\n // transfer.\n // `_balances[to]` could overflow in the conditions described in `_mint`. That would require\n // all 2**256 token ids to be minted, which in practice is impossible.\n _balances[from] -= 1;\n _balances[to] += 1;\n }\n _owners[tokenId] = to;\n\n emit Transfer(from, to, tokenId);\n\n _afterTokenTransfer(from, to, tokenId, 1);\n }\n\n /**\n * @dev Approve `to` to operate on `tokenId`\n *\n * Emits an {Approval} event.\n */\n function _approve(address to, uint256 tokenId) internal virtual {\n _tokenApprovals[tokenId] = to;\n emit Approval(ERC721.ownerOf(tokenId), to, tokenId);\n }\n\n /**\n * @dev Approve `operator` to operate on all of `owner` tokens\n *\n * Emits an {ApprovalForAll} event.\n */\n function _setApprovalForAll(address owner, address operator, bool approved) internal virtual {\n require(owner != operator, \"ERC721: approve to caller\");\n _operatorApprovals[owner][operator] = approved;\n emit ApprovalForAll(owner, operator, approved);\n }\n\n /**\n * @dev Reverts if the `tokenId` has not been minted yet.\n */\n function _requireMinted(uint256 tokenId) internal view virtual {\n require(_exists(tokenId), \"ERC721: invalid token ID\");\n }\n\n /**\n * @dev Internal function to invoke {IERC721Receiver-onERC721Received} on a target address.\n * The call is not executed if the target address is not a contract.\n *\n * @param from address representing the previous owner of the given token ID\n * @param to target address that will receive the tokens\n * @param tokenId uint256 ID of the token to be transferred\n * @param data bytes optional data to send along with the call\n * @return bool whether the call correctly returned the expected magic value\n */\n function _checkOnERC721Received(\n address from,\n address to,\n uint256 tokenId,\n bytes memory data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n /// @solidity memory-safe-assembly\n assembly {\n revert(add(32, reason), mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }\n\n /**\n * @dev Hook that is called before any token transfer. This includes minting and burning. If {ERC721Consecutive} is\n * used, the hook may be called as part of a consecutive (batch) mint, as indicated by `batchSize` greater than 1.\n *\n * Calling conditions:\n *\n * - When `from` and `to` are both non-zero, ``from``'s tokens will be transferred to `to`.\n * - When `from` is zero, the tokens will be minted for `to`.\n * - When `to` is zero, ``from``'s tokens will be burned.\n * - `from` and `to` are never both zero.\n * - `batchSize` is non-zero.\n *\n * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].\n */\n function _beforeTokenTransfer(address from, address to, uint256 firstTokenId, uint256 batchSize) internal virtual {}\n\n /**\n * @dev Hook that is called after any token transfer. This includes minting and burning. If {ERC721Consecutive} is\n * used, the hook may be called as part of a consecutive (batch) mint, as indicated by `batchSize` greater than 1.\n *\n * Calling conditions:\n *\n * - When `from` and `to` are both non-zero, ``from``'s tokens were transferred to `to`.\n * - When `from` is zero, the tokens were minted for `to`.\n * - When `to` is zero, ``from``'s tokens were burned.\n * - `from` and `to` are never both zero.\n * - `batchSize` is non-zero.\n *\n * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].\n */\n function _afterTokenTransfer(address from, address to, uint256 firstTokenId, uint256 batchSize) internal virtual {}\n\n /**\n * @dev Unsafe write access to the balances, used by extensions that \"mint\" tokens using an {ownerOf} override.\n *\n * WARNING: Anyone calling this MUST ensure that the balances remain consistent with the ownership. The invariant\n * being that for any address `a` the value returned by `balanceOf(a)` must be equal to the number of tokens such\n * that `ownerOf(tokenId)` is `a`.\n */\n // solhint-disable-next-line func-name-mixedcase\n function __unsafe_increaseBalance(address account, uint256 amount) internal {\n _balances[account] += amount;\n }\n}\n" + }, + "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/IERC721Metadata.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../IERC721.sol\";\n\n/**\n * @title ERC-721 Non-Fungible Token Standard, optional metadata extension\n * @dev See https://eips.ethereum.org/EIPS/eip-721\n */\ninterface IERC721Metadata is IERC721 {\n /**\n * @dev Returns the token collection name.\n */\n function name() external view returns (string memory);\n\n /**\n * @dev Returns the token collection symbol.\n */\n function symbol() external view returns (string memory);\n\n /**\n * @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token.\n */\n function tokenURI(uint256 tokenId) external view returns (string memory);\n}\n" + }, + "@openzeppelin/contracts/token/ERC721/IERC721.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC721/IERC721.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../../utils/introspection/IERC165.sol\";\n\n/**\n * @dev Required interface of an ERC721 compliant contract.\n */\ninterface IERC721 is IERC165 {\n /**\n * @dev Emitted when `tokenId` token is transferred from `from` to `to`.\n */\n event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.\n */\n event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\n */\n event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\n\n /**\n * @dev Returns the number of tokens in ``owner``'s account.\n */\n function balanceOf(address owner) external view returns (uint256 balance);\n\n /**\n * @dev Returns the owner of the `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function ownerOf(uint256 tokenId) external view returns (address owner);\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external;\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n * are aware of the ERC721 protocol to prevent tokens from being forever locked.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId) external;\n\n /**\n * @dev Transfers `tokenId` token from `from` to `to`.\n *\n * WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721\n * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must\n * understand this adds an external call which potentially creates a reentrancy vulnerability.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(address from, address to, uint256 tokenId) external;\n\n /**\n * @dev Gives permission to `to` to transfer `tokenId` token to another account.\n * The approval is cleared when the token is transferred.\n *\n * Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n *\n * Requirements:\n *\n * - The caller must own the token or be an approved operator.\n * - `tokenId` must exist.\n *\n * Emits an {Approval} event.\n */\n function approve(address to, uint256 tokenId) external;\n\n /**\n * @dev Approve or remove `operator` as an operator for the caller.\n * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n *\n * Requirements:\n *\n * - The `operator` cannot be the caller.\n *\n * Emits an {ApprovalForAll} event.\n */\n function setApprovalForAll(address operator, bool approved) external;\n\n /**\n * @dev Returns the account approved for `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function getApproved(uint256 tokenId) external view returns (address operator);\n\n /**\n * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n *\n * See {setApprovalForAll}\n */\n function isApprovedForAll(address owner, address operator) external view returns (bool);\n}\n" + }, + "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/IERC721Receiver.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @title ERC721 token receiver interface\n * @dev Interface for any contract that wants to support safeTransfers\n * from ERC721 asset contracts.\n */\ninterface IERC721Receiver {\n /**\n * @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n * by `operator` from `from`, this function is called.\n *\n * It must return its Solidity selector to confirm the token transfer.\n * If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n *\n * The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\n */\n function onERC721Received(\n address operator,\n address from,\n uint256 tokenId,\n bytes calldata data\n ) external returns (bytes4);\n}\n" + }, + "@openzeppelin/contracts/utils/Address.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)\n\npragma solidity ^0.8.1;\n\n/**\n * @dev Collection of functions related to the address type\n */\nlibrary Address {\n /**\n * @dev Returns true if `account` is a contract.\n *\n * [IMPORTANT]\n * ====\n * It is unsafe to assume that an address for which this function returns\n * false is an externally-owned account (EOA) and not a contract.\n *\n * Among others, `isContract` will return false for the following\n * types of addresses:\n *\n * - an externally-owned account\n * - a contract in construction\n * - an address where a contract will be created\n * - an address where a contract lived, but was destroyed\n *\n * Furthermore, `isContract` will also return true if the target contract within\n * the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n * which only has an effect at the end of a transaction.\n * ====\n *\n * [IMPORTANT]\n * ====\n * You shouldn't rely on `isContract` to protect against flash loan attacks!\n *\n * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n * constructor.\n * ====\n */\n function isContract(address account) internal view returns (bool) {\n // This method relies on extcodesize/address.code.length, which returns 0\n // for contracts in construction, since the code is only stored at the end\n // of the constructor execution.\n\n return account.code.length > 0;\n }\n\n /**\n * @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n * `recipient`, forwarding all available gas and reverting on errors.\n *\n * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n * of certain opcodes, possibly making contracts go over the 2300 gas limit\n * imposed by `transfer`, making them unable to receive funds via\n * `transfer`. {sendValue} removes this limitation.\n *\n * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n *\n * IMPORTANT: because control is transferred to `recipient`, care must be\n * taken to not create reentrancy vulnerabilities. Consider using\n * {ReentrancyGuard} or the\n * https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n */\n function sendValue(address payable recipient, uint256 amount) internal {\n require(address(this).balance >= amount, \"Address: insufficient balance\");\n\n (bool success, ) = recipient.call{value: amount}(\"\");\n require(success, \"Address: unable to send value, recipient may have reverted\");\n }\n\n /**\n * @dev Performs a Solidity function call using a low level `call`. A\n * plain `call` is an unsafe replacement for a function call: use this\n * function instead.\n *\n * If `target` reverts with a revert reason, it is bubbled up by this\n * function (like regular Solidity function calls).\n *\n * Returns the raw returned data. To convert to the expected return value,\n * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n *\n * Requirements:\n *\n * - `target` must be a contract.\n * - calling `target` with `data` must not revert.\n *\n * _Available since v3.1._\n */\n function functionCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, \"Address: low-level call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n * `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but also transferring `value` wei to `target`.\n *\n * Requirements:\n *\n * - the calling contract must have an ETH balance of at least `value`.\n * - the called Solidity function must be `payable`.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {\n return functionCallWithValue(target, data, value, \"Address: low-level call with value failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n * with `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(\n address target,\n bytes memory data,\n uint256 value,\n string memory errorMessage\n ) internal returns (bytes memory) {\n require(address(this).balance >= value, \"Address: insufficient balance for call\");\n (bool success, bytes memory returndata) = target.call{value: value}(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {\n return functionStaticCall(target, data, \"Address: low-level static call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n (bool success, bytes memory returndata) = target.staticcall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionDelegateCall(target, data, \"Address: low-level delegate call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n (bool success, bytes memory returndata) = target.delegatecall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n *\n * _Available since v4.8._\n */\n function verifyCallResultFromTarget(\n address target,\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n if (success) {\n if (returndata.length == 0) {\n // only check isContract if the call was successful and the return data is empty\n // otherwise we already know that it was a contract\n require(isContract(target), \"Address: call to non-contract\");\n }\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n /**\n * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n * revert reason or using the provided one.\n *\n * _Available since v4.3._\n */\n function verifyCallResult(\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal pure returns (bytes memory) {\n if (success) {\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n function _revert(bytes memory returndata, string memory errorMessage) private pure {\n // Look for revert reason and bubble it up if present\n if (returndata.length > 0) {\n // The easiest way to bubble the revert reason is using memory via assembly\n /// @solidity memory-safe-assembly\n assembly {\n let returndata_size := mload(returndata)\n revert(add(32, returndata), returndata_size)\n }\n } else {\n revert(errorMessage);\n }\n }\n}\n" + }, + "@openzeppelin/contracts/utils/Context.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Provides information about the current execution context, including the\n * sender of the transaction and its data. While these are generally available\n * via msg.sender and msg.data, they should not be accessed in such a direct\n * manner, since when dealing with meta-transactions the account sending and\n * paying for execution may not be the actual sender (as far as an application\n * is concerned).\n *\n * This contract is only required for intermediate, library-like contracts.\n */\nabstract contract Context {\n function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }\n\n function _contextSuffixLength() internal view virtual returns (uint256) {\n return 0;\n }\n}\n" + }, + "@openzeppelin/contracts/utils/introspection/ERC165.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./IERC165.sol\";\n\n/**\n * @dev Implementation of the {IERC165} interface.\n *\n * Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n * for the additional interface id that will be supported. For example:\n *\n * ```solidity\n * function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n * return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n * }\n * ```\n *\n * Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.\n */\nabstract contract ERC165 is IERC165 {\n /**\n * @dev See {IERC165-supportsInterface}.\n */\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(IERC165).interfaceId;\n }\n}\n" + }, + "@openzeppelin/contracts/utils/introspection/IERC165.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC165 standard, as defined in the\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\n *\n * Implementers can declare support of contract interfaces, which can then be\n * queried by others ({ERC165Checker}).\n *\n * For an implementation, see {ERC165}.\n */\ninterface IERC165 {\n /**\n * @dev Returns true if this contract implements the interface defined by\n * `interfaceId`. See the corresponding\n * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n * to learn more about how these ids are created.\n *\n * This function call must use less than 30 000 gas.\n */\n function supportsInterface(bytes4 interfaceId) external view returns (bool);\n}\n" + }, + "@openzeppelin/contracts/utils/math/Math.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/math/Math.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Standard math utilities missing in the Solidity language.\n */\nlibrary Math {\n enum Rounding {\n Down, // Toward negative infinity\n Up, // Toward infinity\n Zero // Toward zero\n }\n\n /**\n * @dev Returns the largest of two numbers.\n */\n function max(uint256 a, uint256 b) internal pure returns (uint256) {\n return a > b ? a : b;\n }\n\n /**\n * @dev Returns the smallest of two numbers.\n */\n function min(uint256 a, uint256 b) internal pure returns (uint256) {\n return a < b ? a : b;\n }\n\n /**\n * @dev Returns the average of two numbers. The result is rounded towards\n * zero.\n */\n function average(uint256 a, uint256 b) internal pure returns (uint256) {\n // (a + b) / 2 can overflow.\n return (a & b) + (a ^ b) / 2;\n }\n\n /**\n * @dev Returns the ceiling of the division of two numbers.\n *\n * This differs from standard division with `/` in that it rounds up instead\n * of rounding down.\n */\n function ceilDiv(uint256 a, uint256 b) internal pure returns (uint256) {\n // (a + b - 1) / b can overflow on addition, so we distribute.\n return a == 0 ? 0 : (a - 1) / b + 1;\n }\n\n /**\n * @notice Calculates floor(x * y / denominator) with full precision. Throws if result overflows a uint256 or denominator == 0\n * @dev Original credit to Remco Bloemen under MIT license (https://xn--2-umb.com/21/muldiv)\n * with further edits by Uniswap Labs also under MIT license.\n */\n function mulDiv(uint256 x, uint256 y, uint256 denominator) internal pure returns (uint256 result) {\n unchecked {\n // 512-bit multiply [prod1 prod0] = x * y. Compute the product mod 2^256 and mod 2^256 - 1, then use\n // use the Chinese Remainder Theorem to reconstruct the 512 bit result. The result is stored in two 256\n // variables such that product = prod1 * 2^256 + prod0.\n uint256 prod0; // Least significant 256 bits of the product\n uint256 prod1; // Most significant 256 bits of the product\n assembly {\n let mm := mulmod(x, y, not(0))\n prod0 := mul(x, y)\n prod1 := sub(sub(mm, prod0), lt(mm, prod0))\n }\n\n // Handle non-overflow cases, 256 by 256 division.\n if (prod1 == 0) {\n // Solidity will revert if denominator == 0, unlike the div opcode on its own.\n // The surrounding unchecked block does not change this fact.\n // See https://docs.soliditylang.org/en/latest/control-structures.html#checked-or-unchecked-arithmetic.\n return prod0 / denominator;\n }\n\n // Make sure the result is less than 2^256. Also prevents denominator == 0.\n require(denominator > prod1, \"Math: mulDiv overflow\");\n\n ///////////////////////////////////////////////\n // 512 by 256 division.\n ///////////////////////////////////////////////\n\n // Make division exact by subtracting the remainder from [prod1 prod0].\n uint256 remainder;\n assembly {\n // Compute remainder using mulmod.\n remainder := mulmod(x, y, denominator)\n\n // Subtract 256 bit number from 512 bit number.\n prod1 := sub(prod1, gt(remainder, prod0))\n prod0 := sub(prod0, remainder)\n }\n\n // Factor powers of two out of denominator and compute largest power of two divisor of denominator. Always >= 1.\n // See https://cs.stackexchange.com/q/138556/92363.\n\n // Does not overflow because the denominator cannot be zero at this stage in the function.\n uint256 twos = denominator & (~denominator + 1);\n assembly {\n // Divide denominator by twos.\n denominator := div(denominator, twos)\n\n // Divide [prod1 prod0] by twos.\n prod0 := div(prod0, twos)\n\n // Flip twos such that it is 2^256 / twos. If twos is zero, then it becomes one.\n twos := add(div(sub(0, twos), twos), 1)\n }\n\n // Shift in bits from prod1 into prod0.\n prod0 |= prod1 * twos;\n\n // Invert denominator mod 2^256. Now that denominator is an odd number, it has an inverse modulo 2^256 such\n // that denominator * inv = 1 mod 2^256. Compute the inverse by starting with a seed that is correct for\n // four bits. That is, denominator * inv = 1 mod 2^4.\n uint256 inverse = (3 * denominator) ^ 2;\n\n // Use the Newton-Raphson iteration to improve the precision. Thanks to Hensel's lifting lemma, this also works\n // in modular arithmetic, doubling the correct bits in each step.\n inverse *= 2 - denominator * inverse; // inverse mod 2^8\n inverse *= 2 - denominator * inverse; // inverse mod 2^16\n inverse *= 2 - denominator * inverse; // inverse mod 2^32\n inverse *= 2 - denominator * inverse; // inverse mod 2^64\n inverse *= 2 - denominator * inverse; // inverse mod 2^128\n inverse *= 2 - denominator * inverse; // inverse mod 2^256\n\n // Because the division is now exact we can divide by multiplying with the modular inverse of denominator.\n // This will give us the correct result modulo 2^256. Since the preconditions guarantee that the outcome is\n // less than 2^256, this is the final result. We don't need to compute the high bits of the result and prod1\n // is no longer required.\n result = prod0 * inverse;\n return result;\n }\n }\n\n /**\n * @notice Calculates x * y / denominator with full precision, following the selected rounding direction.\n */\n function mulDiv(uint256 x, uint256 y, uint256 denominator, Rounding rounding) internal pure returns (uint256) {\n uint256 result = mulDiv(x, y, denominator);\n if (rounding == Rounding.Up && mulmod(x, y, denominator) > 0) {\n result += 1;\n }\n return result;\n }\n\n /**\n * @dev Returns the square root of a number. If the number is not a perfect square, the value is rounded down.\n *\n * Inspired by Henry S. Warren, Jr.'s \"Hacker's Delight\" (Chapter 11).\n */\n function sqrt(uint256 a) internal pure returns (uint256) {\n if (a == 0) {\n return 0;\n }\n\n // For our first guess, we get the biggest power of 2 which is smaller than the square root of the target.\n //\n // We know that the \"msb\" (most significant bit) of our target number `a` is a power of 2 such that we have\n // `msb(a) <= a < 2*msb(a)`. This value can be written `msb(a)=2**k` with `k=log2(a)`.\n //\n // This can be rewritten `2**log2(a) <= a < 2**(log2(a) + 1)`\n // → `sqrt(2**k) <= sqrt(a) < sqrt(2**(k+1))`\n // → `2**(k/2) <= sqrt(a) < 2**((k+1)/2) <= 2**(k/2 + 1)`\n //\n // Consequently, `2**(log2(a) / 2)` is a good first approximation of `sqrt(a)` with at least 1 correct bit.\n uint256 result = 1 << (log2(a) >> 1);\n\n // At this point `result` is an estimation with one bit of precision. We know the true value is a uint128,\n // since it is the square root of a uint256. Newton's method converges quadratically (precision doubles at\n // every iteration). We thus need at most 7 iteration to turn our partial result with one bit of precision\n // into the expected uint128 result.\n unchecked {\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n result = (result + a / result) >> 1;\n return min(result, a / result);\n }\n }\n\n /**\n * @notice Calculates sqrt(a), following the selected rounding direction.\n */\n function sqrt(uint256 a, Rounding rounding) internal pure returns (uint256) {\n unchecked {\n uint256 result = sqrt(a);\n return result + (rounding == Rounding.Up && result * result < a ? 1 : 0);\n }\n }\n\n /**\n * @dev Return the log in base 2, rounded down, of a positive value.\n * Returns 0 if given 0.\n */\n function log2(uint256 value) internal pure returns (uint256) {\n uint256 result = 0;\n unchecked {\n if (value >> 128 > 0) {\n value >>= 128;\n result += 128;\n }\n if (value >> 64 > 0) {\n value >>= 64;\n result += 64;\n }\n if (value >> 32 > 0) {\n value >>= 32;\n result += 32;\n }\n if (value >> 16 > 0) {\n value >>= 16;\n result += 16;\n }\n if (value >> 8 > 0) {\n value >>= 8;\n result += 8;\n }\n if (value >> 4 > 0) {\n value >>= 4;\n result += 4;\n }\n if (value >> 2 > 0) {\n value >>= 2;\n result += 2;\n }\n if (value >> 1 > 0) {\n result += 1;\n }\n }\n return result;\n }\n\n /**\n * @dev Return the log in base 2, following the selected rounding direction, of a positive value.\n * Returns 0 if given 0.\n */\n function log2(uint256 value, Rounding rounding) internal pure returns (uint256) {\n unchecked {\n uint256 result = log2(value);\n return result + (rounding == Rounding.Up && 1 << result < value ? 1 : 0);\n }\n }\n\n /**\n * @dev Return the log in base 10, rounded down, of a positive value.\n * Returns 0 if given 0.\n */\n function log10(uint256 value) internal pure returns (uint256) {\n uint256 result = 0;\n unchecked {\n if (value >= 10 ** 64) {\n value /= 10 ** 64;\n result += 64;\n }\n if (value >= 10 ** 32) {\n value /= 10 ** 32;\n result += 32;\n }\n if (value >= 10 ** 16) {\n value /= 10 ** 16;\n result += 16;\n }\n if (value >= 10 ** 8) {\n value /= 10 ** 8;\n result += 8;\n }\n if (value >= 10 ** 4) {\n value /= 10 ** 4;\n result += 4;\n }\n if (value >= 10 ** 2) {\n value /= 10 ** 2;\n result += 2;\n }\n if (value >= 10 ** 1) {\n result += 1;\n }\n }\n return result;\n }\n\n /**\n * @dev Return the log in base 10, following the selected rounding direction, of a positive value.\n * Returns 0 if given 0.\n */\n function log10(uint256 value, Rounding rounding) internal pure returns (uint256) {\n unchecked {\n uint256 result = log10(value);\n return result + (rounding == Rounding.Up && 10 ** result < value ? 1 : 0);\n }\n }\n\n /**\n * @dev Return the log in base 256, rounded down, of a positive value.\n * Returns 0 if given 0.\n *\n * Adding one to the result gives the number of pairs of hex symbols needed to represent `value` as a hex string.\n */\n function log256(uint256 value) internal pure returns (uint256) {\n uint256 result = 0;\n unchecked {\n if (value >> 128 > 0) {\n value >>= 128;\n result += 16;\n }\n if (value >> 64 > 0) {\n value >>= 64;\n result += 8;\n }\n if (value >> 32 > 0) {\n value >>= 32;\n result += 4;\n }\n if (value >> 16 > 0) {\n value >>= 16;\n result += 2;\n }\n if (value >> 8 > 0) {\n result += 1;\n }\n }\n return result;\n }\n\n /**\n * @dev Return the log in base 256, following the selected rounding direction, of a positive value.\n * Returns 0 if given 0.\n */\n function log256(uint256 value, Rounding rounding) internal pure returns (uint256) {\n unchecked {\n uint256 result = log256(value);\n return result + (rounding == Rounding.Up && 1 << (result << 3) < value ? 1 : 0);\n }\n }\n}\n" + }, + "@openzeppelin/contracts/utils/math/SignedMath.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.8.0) (utils/math/SignedMath.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Standard signed math utilities missing in the Solidity language.\n */\nlibrary SignedMath {\n /**\n * @dev Returns the largest of two signed numbers.\n */\n function max(int256 a, int256 b) internal pure returns (int256) {\n return a > b ? a : b;\n }\n\n /**\n * @dev Returns the smallest of two signed numbers.\n */\n function min(int256 a, int256 b) internal pure returns (int256) {\n return a < b ? a : b;\n }\n\n /**\n * @dev Returns the average of two signed numbers without overflow.\n * The result is rounded towards zero.\n */\n function average(int256 a, int256 b) internal pure returns (int256) {\n // Formula from the book \"Hacker's Delight\"\n int256 x = (a & b) + ((a ^ b) >> 1);\n return x + (int256(uint256(x) >> 255) & (a ^ b));\n }\n\n /**\n * @dev Returns the absolute unsigned value of a signed value.\n */\n function abs(int256 n) internal pure returns (uint256) {\n unchecked {\n // must be unchecked in order to support `n = type(int256).min`\n return uint256(n >= 0 ? n : -n);\n }\n }\n}\n" + }, + "@openzeppelin/contracts/utils/Strings.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/Strings.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./math/Math.sol\";\nimport \"./math/SignedMath.sol\";\n\n/**\n * @dev String operations.\n */\nlibrary Strings {\n bytes16 private constant _SYMBOLS = \"0123456789abcdef\";\n uint8 private constant _ADDRESS_LENGTH = 20;\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` decimal representation.\n */\n function toString(uint256 value) internal pure returns (string memory) {\n unchecked {\n uint256 length = Math.log10(value) + 1;\n string memory buffer = new string(length);\n uint256 ptr;\n /// @solidity memory-safe-assembly\n assembly {\n ptr := add(buffer, add(32, length))\n }\n while (true) {\n ptr--;\n /// @solidity memory-safe-assembly\n assembly {\n mstore8(ptr, byte(mod(value, 10), _SYMBOLS))\n }\n value /= 10;\n if (value == 0) break;\n }\n return buffer;\n }\n }\n\n /**\n * @dev Converts a `int256` to its ASCII `string` decimal representation.\n */\n function toString(int256 value) internal pure returns (string memory) {\n return string(abi.encodePacked(value < 0 ? \"-\" : \"\", toString(SignedMath.abs(value))));\n }\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation.\n */\n function toHexString(uint256 value) internal pure returns (string memory) {\n unchecked {\n return toHexString(value, Math.log256(value) + 1);\n }\n }\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length.\n */\n function toHexString(uint256 value, uint256 length) internal pure returns (string memory) {\n bytes memory buffer = new bytes(2 * length + 2);\n buffer[0] = \"0\";\n buffer[1] = \"x\";\n for (uint256 i = 2 * length + 1; i > 1; --i) {\n buffer[i] = _SYMBOLS[value & 0xf];\n value >>= 4;\n }\n require(value == 0, \"Strings: hex length insufficient\");\n return string(buffer);\n }\n\n /**\n * @dev Converts an `address` with fixed length of 20 bytes to its not checksummed ASCII `string` hexadecimal representation.\n */\n function toHexString(address addr) internal pure returns (string memory) {\n return toHexString(uint256(uint160(addr)), _ADDRESS_LENGTH);\n }\n\n /**\n * @dev Returns true if the two strings are equal.\n */\n function equal(string memory a, string memory b) internal pure returns (bool) {\n return keccak256(bytes(a)) == keccak256(bytes(b));\n }\n}\n" + }, + "contracts/deps.sol": { + "content": "// SPDX-License-Identifier: MIT\n\nimport \"@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol\";\nimport \"@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol\";\nimport \"@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol\";\nimport \"@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol\";\nimport {ReverseRegistrar} from \"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\";\nimport {PublicResolver} from \"@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol\";\nimport {LineaSparseProofVerifier} from \"@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol\";\n" + }, + "contracts/IAddrSetter.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.25;\n\ninterface IAddrSetter {\n function setAddr(\n bytes calldata name,\n address _addr\n ) external view returns (bytes memory result);\n}\n" + }, + "contracts/ITargetResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.25;\n\ninterface ITargetResolver {\n function getTarget(\n bytes memory name\n ) external view returns (bytes32 node, address target);\n}\n" + }, + "contracts/LabelUtils.sol": { + "content": "// SPDX-License-Identifier: Apache-2.0\npragma solidity 0.8.25;\n\n/**\n * @title Library to perform ENS label manipulation\n * @author ConsenSys Software Inc.\n */\nlibrary LabelUtils {\n /**\n * Extract the first label name from a dns encoded ens domain\n * @param name the dns encoded ENS domain\n * @return label as bytes\n */\n function extractFirstLabel(\n bytes memory name\n ) external pure returns (bytes memory) {\n uint256 idx = 0;\n uint8 labelLength = uint8(name[idx]);\n idx++;\n bytes memory label = new bytes(labelLength);\n for (uint256 i = 0; i < labelLength; i++) {\n label[i] = name[idx + i];\n }\n return label;\n }\n\n /**\n * Extract the numeric suffix from the dns encoded label\n * @param label the dns encoded label\n * @return number the numeric suffix\n */\n function extractNumericSuffix(\n bytes memory label\n ) external pure returns (uint256) {\n uint256 num = 0;\n bool hasNumber = false;\n\n for (uint256 i = 0; i < label.length; i++) {\n uint8 char = uint8(label[i]);\n if (char >= 48 && char <= 57) {\n // ASCII for '0' is 48 and '9' is 57\n num = num * 10 + (char - 48);\n hasNumber = true;\n } else if (hasNumber) {\n // Break on first non-digit after starting to read numbers\n break;\n }\n }\n\n require(hasNumber, \"No numeric suffix found\");\n return num;\n }\n}\n" + }, + "contracts/NFTMock.sol": { + "content": "pragma solidity 0.8.25;\n\nimport \"@openzeppelin/contracts/token/ERC721/ERC721.sol\";\n\ncontract NFTMock is ERC721 {\n uint256 public currentTokenId;\n\n constructor() ERC721(\"Test\", \"TST\") {\n currentTokenId = 1;\n }\n\n function mint() external {\n _safeMint(msg.sender, currentTokenId);\n currentTokenId++;\n }\n}\n" + }, + "contracts/NFTResolver.sol": { + "content": "// SPDX-License-Identifier: Apache-2.0\npragma solidity 0.8.25;\n\nimport {EVMFetcher} from \"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\";\nimport {EVMFetchTarget} from \"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\";\nimport {IEVMVerifier} from \"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\";\nimport \"@ensdomains/ens-contracts/contracts/registry/ENS.sol\";\nimport {INameWrapper} from \"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\";\nimport {BytesUtils} from \"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\";\nimport {IAddrResolver} from \"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\";\nimport {IAddressResolver} from \"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\";\nimport \"@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol\";\nimport {ITargetResolver} from \"./ITargetResolver.sol\";\nimport {IAddrSetter} from \"./IAddrSetter.sol\";\nimport \"@openzeppelin/contracts/utils/introspection/ERC165.sol\";\nimport {LabelUtils} from \"./LabelUtils.sol\";\n\ncontract NFTResolver is\n EVMFetchTarget,\n ITargetResolver,\n IExtendedResolver,\n IAddrSetter,\n ERC165\n{\n using EVMFetcher for EVMFetcher.EVMFetchRequest;\n using BytesUtils for bytes;\n IEVMVerifier public immutable verifier;\n ENS public immutable ens;\n INameWrapper public immutable nameWrapper;\n uint256 public immutable l2ChainId;\n // PublicResolver used to resolve a base domain such as xxx.eth when queried\n address public immutable publicResolver;\n mapping(bytes32 => address) targets;\n uint256 constant OWNERS_SLOT = 2;\n // To check how old is the value/proof returned and is in the acceptable range\n uint256 constant ACCEPTED_L2_BLOCK_RANGE_LENGTH = 86400;\n\n event TargetSet(bytes name, address target);\n\n function isAuthorised(bytes32 node) internal view returns (bool) {\n address owner = ens.owner(node);\n if (owner == address(nameWrapper)) {\n owner = nameWrapper.ownerOf(uint256(node));\n }\n return owner == msg.sender;\n }\n\n /**\n * @dev EIP-5559 - Error to raise when mutations are being deferred to an L2.\n * @param chainId Chain ID to perform the deferred mutation to.\n * @param contractAddress Contract Address at which the deferred mutation should transact with.\n */\n error StorageHandledByL2(uint256 chainId, address contractAddress);\n\n /**\n * @param _verifier The chain verifier address\n * @param _ens The ENS registry address\n * @param _nameWrapper The ENS name wrapper address\n * @param _l2ChainId The chainId at which the resolver resolves data from\n * @param _publicResolver The PublicResolver address to use to resolve base domains\n */\n constructor(\n IEVMVerifier _verifier,\n ENS _ens,\n INameWrapper _nameWrapper,\n uint256 _l2ChainId,\n address _publicResolver\n ) {\n require(\n address(_nameWrapper) != address(0),\n \"Name Wrapper address must be set\"\n );\n require(\n address(_verifier) != address(0),\n \"Verifier address must be set\"\n );\n require(address(_ens) != address(0), \"Registry address must be set\");\n verifier = _verifier;\n ens = _ens;\n nameWrapper = _nameWrapper;\n l2ChainId = _l2ChainId;\n publicResolver = _publicResolver;\n }\n\n /**\n * @dev inherits from EVMFetchTarget\n */\n function getAcceptedL2BlockRangeLength()\n public\n pure\n override\n returns (uint256)\n {\n return ACCEPTED_L2_BLOCK_RANGE_LENGTH;\n }\n\n /**\n * Set target address to verify against\n * @param name The encoded name to query.\n * @param target The L2 resolver address to verify against.\n */\n function setTarget(bytes calldata name, address target) external {\n (bytes32 node, ) = getTarget(name);\n require(\n isAuthorised(node),\n \"Not authorized to set target for this node\"\n );\n targets[node] = target;\n emit TargetSet(name, target);\n }\n\n /**\n * @dev Returns the L2 target address that can answer queries for `name`.\n * @param name DNS encoded ENS name to query\n * @return node The node of the name\n * @return target The L2 resolver address to verify against.\n */\n function getTarget(\n bytes memory name\n ) public view returns (bytes32 node, address target) {\n return _getTarget(name, 0);\n }\n\n function _getTarget(\n bytes memory name,\n uint256 offset\n ) private view returns (bytes32 node, address target) {\n uint256 len = name.readUint8(offset);\n node = bytes32(0);\n if (len > 0) {\n bytes32 label = name.keccak(offset + 1, len);\n (node, target) = _getTarget(name, offset + len + 1);\n node = keccak256(abi.encodePacked(node, label));\n if (targets[node] != address(0)) {\n return (node, targets[node]);\n }\n } else {\n return (bytes32(0), address(0));\n }\n return (node, target);\n }\n\n /**\n * @dev Resolve and verify a record stored in l2 target address. It supports subname by fetching target recursively to the nearest parent.\n * @param name DNS encoded ENS name to query\n * @param data The actual calldata\n * @return result result of the call\n */\n function resolve(\n bytes calldata name,\n bytes calldata data\n ) external view returns (bytes memory result) {\n require(data.length >= 4, \"param data too short\");\n\n bytes32 node = abi.decode(data[4:], (bytes32));\n bool isBaseDomain = targets[node] != address(0);\n\n // If trying to resolve the base domain, we use the PublicResolver\n if (isBaseDomain) {\n return _resolve(name, data);\n }\n\n (, address target) = _getTarget(name, 0);\n\n bytes4 selector = bytes4(data);\n\n if (selector == IAddrResolver.addr.selector) {\n // Get NFT Index from the\n uint256 nftId = extractNFTId(name);\n return _addr(nftId, target);\n }\n\n // None selector has been found it reverts\n revert(\"invalid selector\");\n }\n\n /**\n * Get the NFT Id from the ENS name's label\n * @param name DNS encoded ENS name\n * @return id the NFT id\n */\n function extractNFTId(bytes calldata name) public pure returns (uint256) {\n bytes memory firstLabel = LabelUtils.extractFirstLabel(name);\n return LabelUtils.extractNumericSuffix(firstLabel);\n }\n\n /**\n * @dev Resolve and throws an EIP 3559 compliant error\n * @param name DNS encoded ENS name to query\n * @param _addr The actual calldata\n * @return result result of the call\n */\n function setAddr(\n bytes calldata name,\n address _addr\n ) external view returns (bytes memory result) {\n (, address target) = _getTarget(name, 0);\n _writeDeferral(target);\n }\n\n /**\n * @dev The `PublicResolver` does not implement the `resolve(bytes,bytes)` method.\n * This method completes the resolution request by staticcalling `PublicResolver` with the resolve request.\n * Implementation matches the ENS `ExtendedResolver:resolve(bytes,bytes)` method with the exception that it `staticcall`s the\n * the `rootResolver` instead of `address(this)`.\n * @param data The ABI encoded data for the underlying resolution function (Eg, addr(bytes32), text(bytes32,string), etc).\n * @return The return data, ABI encoded identically to the underlying function.\n */\n function _resolve(\n bytes memory,\n bytes memory data\n ) internal view returns (bytes memory) {\n (bool success, bytes memory result) = publicResolver.staticcall(data);\n if (success) {\n return result;\n } else {\n // Revert with the reason provided by the call\n assembly {\n revert(add(result, 0x20), mload(result))\n }\n }\n }\n\n function _addr(\n uint256 tokenId,\n address target\n ) private view returns (bytes memory) {\n EVMFetcher\n .newFetchRequest(verifier, target)\n .getStatic(OWNERS_SLOT)\n .element(tokenId)\n .fetch(this.addrCallback.selector, \"\"); // recordVersions\n }\n\n function addrCallback(\n bytes[] memory values,\n bytes memory\n ) external pure returns (bytes memory) {\n address addr = abi.decode(values[0], (address));\n return abi.encode(addr);\n }\n\n function supportsInterface(\n bytes4 interfaceId\n ) public view override returns (bool) {\n return\n interfaceId == type(IExtendedResolver).interfaceId ||\n interfaceId == type(ITargetResolver).interfaceId ||\n interfaceId == type(IAddrSetter).interfaceId ||\n super.supportsInterface(interfaceId);\n }\n\n function _writeDeferral(address target) internal view {\n revert StorageHandledByL2(l2ChainId, target);\n }\n}\n" + }, + "contracts/RollupMock.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.25;\n\ncontract RollupMock {\n event DataFinalized(\n uint256 indexed lastBlockFinalized,\n bytes32 indexed startingRootHash,\n bytes32 indexed finalRootHash,\n bool withProof\n );\n\n uint256 public currentL2BlockNumber;\n mapping(uint256 blockNumber => bytes32 stateRootHash)\n public stateRootHashes;\n\n constructor(uint256 _currentL2BlockNumber, bytes32 _currentStateRootHash) {\n currentL2BlockNumber = _currentL2BlockNumber;\n stateRootHashes[currentL2BlockNumber] = _currentStateRootHash;\n\n emit DataFinalized(\n _currentL2BlockNumber,\n _currentStateRootHash,\n _currentStateRootHash,\n false\n );\n }\n\n function setCurrentStateRoot(\n uint256 _currentL2BlockNumber,\n bytes32 _currentStateRootHash\n ) external {\n currentL2BlockNumber = _currentL2BlockNumber;\n stateRootHashes[currentL2BlockNumber] = _currentStateRootHash;\n\n emit DataFinalized(\n _currentL2BlockNumber,\n _currentStateRootHash,\n _currentStateRootHash,\n false\n );\n }\n}\n" + }, + "hardhat/console.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.4.22 <0.9.0;\n\nlibrary console {\n address constant CONSOLE_ADDRESS =\n 0x000000000000000000636F6e736F6c652e6c6f67;\n\n function _sendLogPayloadImplementation(bytes memory payload) internal view {\n address consoleAddress = CONSOLE_ADDRESS;\n /// @solidity memory-safe-assembly\n assembly {\n pop(\n staticcall(\n gas(),\n consoleAddress,\n add(payload, 32),\n mload(payload),\n 0,\n 0\n )\n )\n }\n }\n\n function _castToPure(\n function(bytes memory) internal view fnIn\n ) internal pure returns (function(bytes memory) pure fnOut) {\n assembly {\n fnOut := fnIn\n }\n }\n\n function _sendLogPayload(bytes memory payload) internal pure {\n _castToPure(_sendLogPayloadImplementation)(payload);\n }\n\n function log() internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log()\"));\n }\n function logInt(int256 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(int256)\", p0));\n }\n\n function logUint(uint256 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256)\", p0));\n }\n\n function logString(string memory p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string)\", p0));\n }\n\n function logBool(bool p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool)\", p0));\n }\n\n function logAddress(address p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address)\", p0));\n }\n\n function logBytes(bytes memory p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes)\", p0));\n }\n\n function logBytes1(bytes1 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes1)\", p0));\n }\n\n function logBytes2(bytes2 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes2)\", p0));\n }\n\n function logBytes3(bytes3 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes3)\", p0));\n }\n\n function logBytes4(bytes4 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes4)\", p0));\n }\n\n function logBytes5(bytes5 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes5)\", p0));\n }\n\n function logBytes6(bytes6 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes6)\", p0));\n }\n\n function logBytes7(bytes7 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes7)\", p0));\n }\n\n function logBytes8(bytes8 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes8)\", p0));\n }\n\n function logBytes9(bytes9 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes9)\", p0));\n }\n\n function logBytes10(bytes10 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes10)\", p0));\n }\n\n function logBytes11(bytes11 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes11)\", p0));\n }\n\n function logBytes12(bytes12 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes12)\", p0));\n }\n\n function logBytes13(bytes13 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes13)\", p0));\n }\n\n function logBytes14(bytes14 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes14)\", p0));\n }\n\n function logBytes15(bytes15 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes15)\", p0));\n }\n\n function logBytes16(bytes16 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes16)\", p0));\n }\n\n function logBytes17(bytes17 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes17)\", p0));\n }\n\n function logBytes18(bytes18 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes18)\", p0));\n }\n\n function logBytes19(bytes19 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes19)\", p0));\n }\n\n function logBytes20(bytes20 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes20)\", p0));\n }\n\n function logBytes21(bytes21 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes21)\", p0));\n }\n\n function logBytes22(bytes22 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes22)\", p0));\n }\n\n function logBytes23(bytes23 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes23)\", p0));\n }\n\n function logBytes24(bytes24 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes24)\", p0));\n }\n\n function logBytes25(bytes25 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes25)\", p0));\n }\n\n function logBytes26(bytes26 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes26)\", p0));\n }\n\n function logBytes27(bytes27 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes27)\", p0));\n }\n\n function logBytes28(bytes28 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes28)\", p0));\n }\n\n function logBytes29(bytes29 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes29)\", p0));\n }\n\n function logBytes30(bytes30 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes30)\", p0));\n }\n\n function logBytes31(bytes31 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes31)\", p0));\n }\n\n function logBytes32(bytes32 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bytes32)\", p0));\n }\n\n function log(uint256 p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256)\", p0));\n }\n\n function log(string memory p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string)\", p0));\n }\n\n function log(bool p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool)\", p0));\n }\n\n function log(address p0) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address)\", p0));\n }\n\n function log(uint256 p0, uint256 p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256)\", p0, p1));\n }\n\n function log(uint256 p0, string memory p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string)\", p0, p1));\n }\n\n function log(uint256 p0, bool p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool)\", p0, p1));\n }\n\n function log(uint256 p0, address p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address)\", p0, p1));\n }\n\n function log(string memory p0, uint256 p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256)\", p0, p1));\n }\n\n function log(string memory p0, string memory p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string)\", p0, p1));\n }\n\n function log(string memory p0, bool p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool)\", p0, p1));\n }\n\n function log(string memory p0, address p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address)\", p0, p1));\n }\n\n function log(bool p0, uint256 p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256)\", p0, p1));\n }\n\n function log(bool p0, string memory p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string)\", p0, p1));\n }\n\n function log(bool p0, bool p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool)\", p0, p1));\n }\n\n function log(bool p0, address p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address)\", p0, p1));\n }\n\n function log(address p0, uint256 p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256)\", p0, p1));\n }\n\n function log(address p0, string memory p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string)\", p0, p1));\n }\n\n function log(address p0, bool p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool)\", p0, p1));\n }\n\n function log(address p0, address p1) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address)\", p0, p1));\n }\n\n function log(uint256 p0, uint256 p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,uint256)\", p0, p1, p2));\n }\n\n function log(uint256 p0, uint256 p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,string)\", p0, p1, p2));\n }\n\n function log(uint256 p0, uint256 p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,bool)\", p0, p1, p2));\n }\n\n function log(uint256 p0, uint256 p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,address)\", p0, p1, p2));\n }\n\n function log(uint256 p0, string memory p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,uint256)\", p0, p1, p2));\n }\n\n function log(uint256 p0, string memory p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,string)\", p0, p1, p2));\n }\n\n function log(uint256 p0, string memory p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,bool)\", p0, p1, p2));\n }\n\n function log(uint256 p0, string memory p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,address)\", p0, p1, p2));\n }\n\n function log(uint256 p0, bool p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,uint256)\", p0, p1, p2));\n }\n\n function log(uint256 p0, bool p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,string)\", p0, p1, p2));\n }\n\n function log(uint256 p0, bool p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,bool)\", p0, p1, p2));\n }\n\n function log(uint256 p0, bool p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,address)\", p0, p1, p2));\n }\n\n function log(uint256 p0, address p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,uint256)\", p0, p1, p2));\n }\n\n function log(uint256 p0, address p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,string)\", p0, p1, p2));\n }\n\n function log(uint256 p0, address p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,bool)\", p0, p1, p2));\n }\n\n function log(uint256 p0, address p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,address)\", p0, p1, p2));\n }\n\n function log(string memory p0, uint256 p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,uint256)\", p0, p1, p2));\n }\n\n function log(string memory p0, uint256 p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,string)\", p0, p1, p2));\n }\n\n function log(string memory p0, uint256 p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,bool)\", p0, p1, p2));\n }\n\n function log(string memory p0, uint256 p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,address)\", p0, p1, p2));\n }\n\n function log(string memory p0, string memory p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,uint256)\", p0, p1, p2));\n }\n\n function log(string memory p0, string memory p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,string)\", p0, p1, p2));\n }\n\n function log(string memory p0, string memory p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,bool)\", p0, p1, p2));\n }\n\n function log(string memory p0, string memory p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,address)\", p0, p1, p2));\n }\n\n function log(string memory p0, bool p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint256)\", p0, p1, p2));\n }\n\n function log(string memory p0, bool p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,string)\", p0, p1, p2));\n }\n\n function log(string memory p0, bool p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,bool)\", p0, p1, p2));\n }\n\n function log(string memory p0, bool p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,address)\", p0, p1, p2));\n }\n\n function log(string memory p0, address p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,uint256)\", p0, p1, p2));\n }\n\n function log(string memory p0, address p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,string)\", p0, p1, p2));\n }\n\n function log(string memory p0, address p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,bool)\", p0, p1, p2));\n }\n\n function log(string memory p0, address p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,address)\", p0, p1, p2));\n }\n\n function log(bool p0, uint256 p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,uint256)\", p0, p1, p2));\n }\n\n function log(bool p0, uint256 p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,string)\", p0, p1, p2));\n }\n\n function log(bool p0, uint256 p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,bool)\", p0, p1, p2));\n }\n\n function log(bool p0, uint256 p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,address)\", p0, p1, p2));\n }\n\n function log(bool p0, string memory p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,uint256)\", p0, p1, p2));\n }\n\n function log(bool p0, string memory p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,string)\", p0, p1, p2));\n }\n\n function log(bool p0, string memory p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,bool)\", p0, p1, p2));\n }\n\n function log(bool p0, string memory p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,address)\", p0, p1, p2));\n }\n\n function log(bool p0, bool p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,uint256)\", p0, p1, p2));\n }\n\n function log(bool p0, bool p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,string)\", p0, p1, p2));\n }\n\n function log(bool p0, bool p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,bool)\", p0, p1, p2));\n }\n\n function log(bool p0, bool p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,address)\", p0, p1, p2));\n }\n\n function log(bool p0, address p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,uint256)\", p0, p1, p2));\n }\n\n function log(bool p0, address p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,string)\", p0, p1, p2));\n }\n\n function log(bool p0, address p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,bool)\", p0, p1, p2));\n }\n\n function log(bool p0, address p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,address)\", p0, p1, p2));\n }\n\n function log(address p0, uint256 p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,uint256)\", p0, p1, p2));\n }\n\n function log(address p0, uint256 p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,string)\", p0, p1, p2));\n }\n\n function log(address p0, uint256 p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,bool)\", p0, p1, p2));\n }\n\n function log(address p0, uint256 p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,address)\", p0, p1, p2));\n }\n\n function log(address p0, string memory p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,uint256)\", p0, p1, p2));\n }\n\n function log(address p0, string memory p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,string)\", p0, p1, p2));\n }\n\n function log(address p0, string memory p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,bool)\", p0, p1, p2));\n }\n\n function log(address p0, string memory p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,address)\", p0, p1, p2));\n }\n\n function log(address p0, bool p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,uint256)\", p0, p1, p2));\n }\n\n function log(address p0, bool p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,string)\", p0, p1, p2));\n }\n\n function log(address p0, bool p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,bool)\", p0, p1, p2));\n }\n\n function log(address p0, bool p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,address)\", p0, p1, p2));\n }\n\n function log(address p0, address p1, uint256 p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,uint256)\", p0, p1, p2));\n }\n\n function log(address p0, address p1, string memory p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,string)\", p0, p1, p2));\n }\n\n function log(address p0, address p1, bool p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,bool)\", p0, p1, p2));\n }\n\n function log(address p0, address p1, address p2) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,address)\", p0, p1, p2));\n }\n\n function log(uint256 p0, uint256 p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,string,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,string,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,address,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, uint256 p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,uint256,address,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,string,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,string,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,address,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, string memory p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,string,address,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,string,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,string,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,address,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, bool p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,bool,address,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,string,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,string,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,address,string)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(uint256 p0, address p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(uint256,address,address,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,string,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,string,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,address,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, uint256 p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,uint256,address,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,string,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,string,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,address,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, string memory p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,string,address,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,string,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,string,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,address,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, bool p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,bool,address,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,string,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,string,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,address,string)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(string memory p0, address p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(string,address,address,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,string,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,string,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,address,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, uint256 p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,uint256,address,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,string,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,string,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,address,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, string memory p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,string,address,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,string,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,string,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,address,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, bool p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,bool,address,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,string,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,string,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,address,string)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(bool p0, address p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(bool,address,address,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,string,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,string,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,address,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, uint256 p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,uint256,address,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,string,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,string,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,address,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, string memory p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,string,address,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,string,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,string,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,address,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, bool p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,bool,address,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, uint256 p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,uint256,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, uint256 p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,uint256,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, uint256 p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,uint256,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, uint256 p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,uint256,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, string memory p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,string,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, string memory p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,string,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, string memory p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,string,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, string memory p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,string,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, bool p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,bool,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, bool p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,bool,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, bool p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,bool,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, bool p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,bool,address)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, address p2, uint256 p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,address,uint256)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, address p2, string memory p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,address,string)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, address p2, bool p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,address,bool)\", p0, p1, p2, p3));\n }\n\n function log(address p0, address p1, address p2, address p3) internal pure {\n _sendLogPayload(abi.encodeWithSignature(\"log(address,address,address,address)\", p0, p1, p2, p3));\n }\n\n}\n" + } + }, + "settings": { + "evmVersion": "paris", + "optimizer": { + "enabled": false, + "runs": 200 + }, + "outputSelection": { + "*": { + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ], + "": [ + "ast" + ] + } + } + } + }, + "output": { + "errors": [ + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> @ensdomains/ens-contracts/contracts/root/Controllable.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/root/Controllable.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "1878", + "formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> contracts/NFTMock.sol\n\n", + "message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: \" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "contracts/NFTMock.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "3420", + "formattedMessage": "Warning: Source file does not specify required compiler version! Consider adding \"pragma solidity ^0.8.25;\"\n--> @ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\n\n", + "message": "Source file does not specify required compiler version! Consider adding \"pragma solidity ^0.8.25;\"", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "3420", + "formattedMessage": "Warning: Source file does not specify required compiler version! Consider adding \"pragma solidity ^0.8.25;\"\n--> contracts/deps.sol\n\n", + "message": "Source file does not specify required compiler version! Consider adding \"pragma solidity ^0.8.25;\"", + "severity": "warning", + "sourceLocation": { + "end": -1, + "file": "contracts/deps.sol", + "start": -1 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:20:9:\n |\n20 | address owner = records[node].owner;\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 443, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 430 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:41:9:\n |\n41 | address owner,\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 991, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 978 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:42:9:\n |\n42 | address resolver,\n | ^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:159:5:\n |\n159 | function resolver(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4814, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4675 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 1017, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 1001 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:43:9:\n |\n43 | uint64 ttl\n | ^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:170:5:\n |\n170 | function ttl(bytes32 node) public view virtual override returns (uint64) {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 5096, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4982 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 1037, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 1027 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:60:9:\n |\n60 | address owner,\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 1557, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 1544 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:61:9:\n |\n61 | address resolver,\n | ^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:159:5:\n |\n159 | function resolver(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4814, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4675 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 1583, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 1567 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:62:9:\n |\n62 | uint64 ttl\n | ^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:170:5:\n |\n170 | function ttl(bytes32 node) public view virtual override returns (uint64) {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 5096, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4982 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 1603, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 1593 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:75:9:\n |\n75 | address owner\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 2059, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 2046 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:90:9:\n |\n90 | address owner\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 2586, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 2573 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:105:9:\n |\n105 | address resolver\n | ^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:159:5:\n |\n159 | function resolver(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4814, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4675 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 3072, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 3056 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:118:9:\n |\n118 | uint64 ttl\n | ^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:170:5:\n |\n170 | function ttl(bytes32 node) public view virtual override returns (uint64) {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 5096, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4982 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 3417, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 3407 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:192:9:\n |\n192 | address owner,\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 5780, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 5767 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:198:38:\n |\n198 | function _setOwner(bytes32 node, address owner) internal virtual {\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:143:5:\n |\n143 | function owner(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4502, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4259 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 5961, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 5948 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:204:9:\n |\n204 | address resolver,\n | ^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:159:5:\n |\n159 | function resolver(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 4814, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4675 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 6105, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 6089 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:205:9:\n |\n205 | uint64 ttl\n | ^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:170:5:\n |\n170 | function ttl(bytes32 node) public view virtual override returns (uint64) {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 5096, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "message": "The shadowed declaration is here:", + "start": 4982 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 6125, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 6115 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol:140:9:\n |\n140 | bytes32 node = claimForAddr(addr, owner, resolver);\n | ^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol:150:5:\n |\n150 | function node(address addr) public pure override returns (bytes32) {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 5456, + "file": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "message": "The shadowed declaration is here:", + "start": 5255 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 4969, + "file": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "start": 4957 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:392:9:\n |\n392 | bytes calldata name,\n | ^^^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 13108, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 13089 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:542:22:\n |\n542 | function upgrade(bytes calldata name, bytes calldata extraData) public {\n | ^^^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 18257, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 18238 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:641:9:\n |\n641 | bytes memory name = _saveLabel(parentNode, node, label);\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 21598, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 21581 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:838:9:\n |\n838 | bytes memory name = names[node];\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 28388, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 28371 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:959:9:\n |\n959 | bytes memory name\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 32054, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 32037 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:988:9:\n |\n988 | bytes memory name,\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 32908, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 32891 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:1005:9:\n |\n1005 | bytes memory name = _addLabel(label, names[parentNode]);\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 33345, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 33328 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:1014:9:\n |\n1014 | bytes memory name = _addLabel(label, names[parentNode]);\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 33609, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 33592 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:1030:9:\n |\n1030 | bytes memory name = _addLabel(label, names[parentNode]);\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 34029, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 34012 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:1098:9:\n |\n1098 | bytes memory name = _addLabel(label, \"\\x03eth\\x00\");\n | ^^^^^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:48:5:\n |\n48 | string public constant name = \"NameWrapper\";\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 2013, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "message": "The shadowed declaration is here:", + "start": 1970 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 36151, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 36134 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2519", + "formattedMessage": "Warning: This declaration shadows an existing declaration.\n --> contracts/NFTResolver.sol:195:9:\n |\n195 | address _addr\n | ^^^^^^^^^^^^^\nNote: The shadowed declaration is here:\n --> contracts/NFTResolver.sol:224:5:\n |\n224 | function _addr(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "This declaration shadows an existing declaration.", + "secondarySourceLocations": [ + { + "end": 8472, + "file": "contracts/NFTResolver.sol", + "message": "The shadowed declaration is here:", + "start": 8157 + } + ], + "severity": "warning", + "sourceLocation": { + "end": 6957, + "file": "contracts/NFTResolver.sol", + "start": 6944 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2462", + "formattedMessage": "Warning: Visibility for constructor is ignored. If you want the contract to be non-deployable, making it \"abstract\" is sufficient.\n --> @ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol:28:5:\n |\n28 | constructor() public {\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "Visibility for constructor is ignored. If you want the contract to be non-deployable, making it \"abstract\" is sufficient.", + "severity": "warning", + "sourceLocation": { + "end": 687, + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "start": 618 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "5667", + "formattedMessage": "Warning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n --> contracts/NFTResolver.sol:195:9:\n |\n195 | address _addr\n | ^^^^^^^^^^^^^\n\n", + "message": "Unused function parameter. Remove or comment out the variable name to silence this warning.", + "severity": "warning", + "sourceLocation": { + "end": 6957, + "file": "contracts/NFTResolver.sol", + "start": 6944 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "5667", + "formattedMessage": "Warning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n --> contracts/NFTResolver.sol:196:30:\n |\n196 | ) external view returns (bytes memory result) {\n | ^^^^^^^^^^^^^^^^^^^\n\n", + "message": "Unused function parameter. Remove or comment out the variable name to silence this warning.", + "severity": "warning", + "sourceLocation": { + "end": 7006, + "file": "contracts/NFTResolver.sol", + "start": 6987 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "2018", + "formattedMessage": "Warning: Function state mutability can be restricted to pure\n --> @ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol:187:5:\n |\n187 | function supportsInterface(\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "Function state mutability can be restricted to pure", + "severity": "warning", + "sourceLocation": { + "end": 7014, + "file": "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol", + "start": 6751 + }, + "type": "Warning" + }, + { + "component": "general", + "errorCode": "5574", + "formattedMessage": "Warning: Contract code size is 37263 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n --> @ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol:33:1:\n |\n33 | contract NameWrapper is\n | ^ (Relevant source part starts here and spans across multiple lines).\n\n", + "message": "Contract code size is 37263 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.", + "severity": "warning", + "sourceLocation": { + "end": 38494, + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "start": 1613 + }, + "type": "Warning" + } + ], + "sources": { + "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "EVMFetchTarget": [ + 122 + ], + "IEVMVerifier": [ + 798 + ] + }, + "id": 123, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "31:24:0" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "file": "./IEVMVerifier.sol", + "id": 3, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 123, + "sourceUnit": 799, + "src": "57:48:0", + "symbolAliases": [ + { + "foreign": { + "id": 2, + "name": "IEVMVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 798, + "src": "65:12:0", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Address.sol", + "file": "@openzeppelin/contracts/utils/Address.sol", + "id": 5, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 123, + "sourceUnit": 14842, + "src": "106:66:0", + "symbolAliases": [ + { + "foreign": { + "id": 4, + "name": "Address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14841, + "src": "114:7:0", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [], + "canonicalName": "EVMFetchTarget", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 6, + "nodeType": "StructuredDocumentation", + "src": "174:185:0", + "text": " @dev Callback implementation for users of `EVMFetcher`. If you use `EVMFetcher`, your contract must\n inherit from this contract in order to handle callbacks correctly." + }, + "fullyImplemented": false, + "id": 122, + "linearizedBaseContracts": [ + 122 + ], + "name": "EVMFetchTarget", + "nameLocation": "378:14:0", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 9, + "libraryName": { + "id": 7, + "name": "Address", + "nameLocations": [ + "405:7:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14841, + "src": "405:7:0" + }, + "nodeType": "UsingForDirective", + "src": "399:26:0", + "typeName": { + "id": 8, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "417:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "errorSelector": "29189425", + "id": 15, + "name": "ResponseLengthMismatch", + "nameLocation": "437:22:0", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 14, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11, + "mutability": "mutable", + "name": "actual", + "nameLocation": "468:6:0", + "nodeType": "VariableDeclaration", + "scope": 15, + "src": "460:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "460:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13, + "mutability": "mutable", + "name": "expected", + "nameLocation": "484:8:0", + "nodeType": "VariableDeclaration", + "scope": 15, + "src": "476:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "476:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "459:34:0" + }, + "src": "431:63:0" + }, + { + "body": { + "id": 114, + "nodeType": "Block", + "src": "758:961:0", + "statements": [ + { + "assignments": [ + 26 + ], + "declarations": [ + { + "constant": false, + "id": 26, + "mutability": "mutable", + "name": "proof", + "nameLocation": "781:5:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "768:18:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 25, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "768:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 34, + "initialValue": { + "arguments": [ + { + "id": 29, + "name": "response", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18, + "src": "800:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 31, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "811:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 30, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "811:5:0", + "typeDescriptions": {} + } + } + ], + "id": 32, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "810:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + } + ], + "expression": { + "id": 27, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "789:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 28, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "793:6:0", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "789:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 33, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "789:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "768:50:0" + }, + { + "assignments": [ + 37, + 39, + 42, + 45, + 47, + 49 + ], + "declarations": [ + { + "constant": false, + "id": 37, + "mutability": "mutable", + "name": "verifier", + "nameLocation": "855:8:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "842:21:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + "typeName": { + "id": 36, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 35, + "name": "IEVMVerifier", + "nameLocations": [ + "842:12:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "842:12:0" + }, + "referencedDeclaration": 798, + "src": "842:12:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 39, + "mutability": "mutable", + "name": "addr", + "nameLocation": "885:4:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "877:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 38, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "877:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 42, + "mutability": "mutable", + "name": "commands", + "nameLocation": "920:8:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "903:25:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 40, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "903:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 41, + "nodeType": "ArrayTypeName", + "src": "903:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 45, + "mutability": "mutable", + "name": "constants", + "nameLocation": "957:9:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "942:24:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 43, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "942:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 44, + "nodeType": "ArrayTypeName", + "src": "942:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 47, + "mutability": "mutable", + "name": "callback", + "nameLocation": "987:8:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "980:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 46, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "980:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 49, + "mutability": "mutable", + "name": "callbackData", + "nameLocation": "1022:12:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "1009:25:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 48, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1009:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 68, + "initialValue": { + "arguments": [ + { + "id": 52, + "name": "extradata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20, + "src": "1075:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 53, + "name": "IEVMVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 798, + "src": "1103:12:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IEVMVerifier_$798_$", + "typeString": "type(contract IEVMVerifier)" + } + }, + { + "id": 55, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1117:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 54, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1117:7:0", + "typeDescriptions": {} + } + }, + { + "baseExpression": { + "id": 57, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1126:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 56, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1126:7:0", + "typeDescriptions": {} + } + }, + "id": 58, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1126:9:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "type(bytes32[] memory)" + } + }, + { + "baseExpression": { + "id": 60, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1137:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 59, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1137:5:0", + "typeDescriptions": {} + } + }, + "id": 61, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1137:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "type(bytes memory[] memory)" + } + }, + { + "id": 63, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1146:6:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 62, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1146:6:0", + "typeDescriptions": {} + } + }, + { + "id": 65, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1154:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 64, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1154:5:0", + "typeDescriptions": {} + } + } + ], + "id": 66, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1102:58:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_type$_t_contract$_IEVMVerifier_$798_$_$_t_type$_t_address_$_$_t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$_$_t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_$_t_type$_t_bytes4_$_$_t_type$_t_bytes_storage_ptr_$_$", + "typeString": "tuple(type(contract IEVMVerifier),type(address),type(bytes32[] memory),type(bytes memory[] memory),type(bytes4),type(bytes storage pointer))" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_tuple$_t_type$_t_contract$_IEVMVerifier_$798_$_$_t_type$_t_address_$_$_t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$_$_t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_$_t_type$_t_bytes4_$_$_t_type$_t_bytes_storage_ptr_$_$", + "typeString": "tuple(type(contract IEVMVerifier),type(address),type(bytes32[] memory),type(bytes memory[] memory),type(bytes4),type(bytes storage pointer))" + } + ], + "expression": { + "id": 50, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1047:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 51, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1051:6:0", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "1047:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 67, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1047:127:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_contract$_IEVMVerifier_$798_$_t_address_payable_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes4_$_t_bytes_memory_ptr_$", + "typeString": "tuple(contract IEVMVerifier,address payable,bytes32[] memory,bytes memory[] memory,bytes4,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "828:346:0" + }, + { + "assignments": [ + 73 + ], + "declarations": [ + { + "constant": false, + "id": 73, + "mutability": "mutable", + "name": "values", + "nameLocation": "1200:6:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "1185:21:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 71, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1185:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 72, + "nodeType": "ArrayTypeName", + "src": "1185:7:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "id": 83, + "initialValue": { + "arguments": [ + { + "id": 76, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 39, + "src": "1248:4:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 77, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 42, + "src": "1266:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 78, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45, + "src": "1288:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 79, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26, + "src": "1311:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 80, + "name": "getAcceptedL2BlockRangeLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 121, + "src": "1330:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 81, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1330:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 74, + "name": "verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "1209:8:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "id": 75, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1218:16:0", + "memberName": "getStorageValues", + "nodeType": "MemberAccess", + "referencedDeclaration": 797, + "src": "1209:25:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (address,bytes32[] memory,bytes memory[] memory,bytes memory,uint256) view external returns (bytes memory[] memory)" + } + }, + "id": 82, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1209:162:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1185:186:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 88, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 84, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "1386:6:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 85, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1393:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1386:13:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "id": 86, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 42, + "src": "1403:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 87, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1412:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1403:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1386:32:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 97, + "nodeType": "IfStatement", + "src": "1382:124:0", + "trueBody": { + "id": 96, + "nodeType": "Block", + "src": "1420:86:0", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "expression": { + "id": 90, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "1464:6:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 91, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1471:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1464:13:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 92, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 42, + "src": "1479:8:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 93, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1488:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1479:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 89, + "name": "ResponseLengthMismatch", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15, + "src": "1441:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 94, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1441:54:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 95, + "nodeType": "RevertStatement", + "src": "1434:61:0" + } + ] + } + }, + { + "assignments": [ + 99 + ], + "declarations": [ + { + "constant": false, + "id": 99, + "mutability": "mutable", + "name": "ret", + "nameLocation": "1528:3:0", + "nodeType": "VariableDeclaration", + "scope": 114, + "src": "1515:16:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 98, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1515:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 112, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 107, + "name": "callback", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 47, + "src": "1597:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "id": 108, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "1607:6:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 109, + "name": "callbackData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 49, + "src": "1615:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 105, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1574:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1578:18:0", + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "1574:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1574:54:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "arguments": [ + { + "id": 102, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "1542:4:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_EVMFetchTarget_$122", + "typeString": "contract EVMFetchTarget" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_EVMFetchTarget_$122", + "typeString": "contract EVMFetchTarget" + } + ], + "id": 101, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1534:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1534:7:0", + "typeDescriptions": {} + } + }, + "id": 103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1534:13:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1548:12:0", + "memberName": "functionCall", + "nodeType": "MemberAccess", + "referencedDeclaration": 14581, + "src": "1534:26:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_address_$", + "typeString": "function (address,bytes memory) returns (bytes memory)" + } + }, + "id": 111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1534:104:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1515:123:0" + }, + { + "AST": { + "nativeSrc": "1657:56:0", + "nodeType": "YulBlock", + "src": "1657:56:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "ret", + "nativeSrc": "1682:3:0", + "nodeType": "YulIdentifier", + "src": "1682:3:0" + }, + { + "kind": "number", + "nativeSrc": "1687:2:0", + "nodeType": "YulLiteral", + "src": "1687:2:0", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1678:3:0", + "nodeType": "YulIdentifier", + "src": "1678:3:0" + }, + "nativeSrc": "1678:12:0", + "nodeType": "YulFunctionCall", + "src": "1678:12:0" + }, + { + "arguments": [ + { + "name": "ret", + "nativeSrc": "1698:3:0", + "nodeType": "YulIdentifier", + "src": "1698:3:0" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1692:5:0", + "nodeType": "YulIdentifier", + "src": "1692:5:0" + }, + "nativeSrc": "1692:10:0", + "nodeType": "YulFunctionCall", + "src": "1692:10:0" + } + ], + "functionName": { + "name": "return", + "nativeSrc": "1671:6:0", + "nodeType": "YulIdentifier", + "src": "1671:6:0" + }, + "nativeSrc": "1671:32:0", + "nodeType": "YulFunctionCall", + "src": "1671:32:0" + }, + "nativeSrc": "1671:32:0", + "nodeType": "YulExpressionStatement", + "src": "1671:32:0" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 99, + "isOffset": false, + "isSlot": false, + "src": "1682:3:0", + "valueSize": 1 + }, + { + "declaration": 99, + "isOffset": false, + "isSlot": false, + "src": "1698:3:0", + "valueSize": 1 + } + ], + "id": 113, + "nodeType": "InlineAssembly", + "src": "1648:65:0" + } + ] + }, + "documentation": { + "id": 16, + "nodeType": "StructuredDocumentation", + "src": "500:115:0", + "text": " @dev Internal callback function invoked by CCIP-Read in response to a `getStorageSlots` request." + }, + "functionSelector": "5bdaa916", + "id": 115, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getStorageSlotsCallback", + "nameLocation": "629:23:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18, + "mutability": "mutable", + "name": "response", + "nameLocation": "677:8:0", + "nodeType": "VariableDeclaration", + "scope": 115, + "src": "662:23:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 17, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "662:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20, + "mutability": "mutable", + "name": "extradata", + "nameLocation": "710:9:0", + "nodeType": "VariableDeclaration", + "scope": 115, + "src": "695:24:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 19, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "695:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "652:73:0" + }, + "returnParameters": { + "id": 24, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 115, + "src": "744:12:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 22, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "744:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "743:14:0" + }, + "scope": 122, + "src": "620:1099:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 116, + "nodeType": "StructuredDocumentation", + "src": "1725:189:0", + "text": " @dev The child contract has to return an accepted L2 block range used by the verifier\n to verify that the block number verified is in the accepted block range." + }, + "functionSelector": "6d74e86e", + "id": 121, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAcceptedL2BlockRangeLength", + "nameLocation": "1928:29:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 117, + "nodeType": "ParameterList", + "parameters": [], + "src": "1957:2:0" + }, + "returnParameters": { + "id": 120, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 119, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 121, + "src": "2021:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 118, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2021:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2020:9:0" + }, + "scope": 122, + "src": "1919:111:0", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 123, + "src": "360:1672:0", + "usedErrors": [ + 15 + ], + "usedEvents": [] + } + ], + "src": "31:2002:0" + }, + "id": 0 + }, + "@consensys/linea-state-verifier/contracts/EVMFetcher.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/EVMFetcher.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "EVMFetchTarget": [ + 122 + ], + "EVMFetcher": [ + 771 + ], + "FLAG_DYNAMIC": [ + 147 + ], + "IEVMGateway": [ + 144 + ], + "IEVMVerifier": [ + 798 + ], + "OP_BACKREF": [ + 153 + ], + "OP_CONSTANT": [ + 150 + ], + "OP_END": [ + 156 + ] + }, + "id": 772, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 124, + "literals": [ + "solidity", + "^", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "31:24:1" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "file": "./IEVMVerifier.sol", + "id": 126, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 772, + "sourceUnit": 799, + "src": "57:48:1", + "symbolAliases": [ + { + "foreign": { + "id": 125, + "name": "IEVMVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 798, + "src": "65:12:1", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol", + "file": "./EVMFetchTarget.sol", + "id": 128, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 772, + "sourceUnit": 123, + "src": "106:52:1", + "symbolAliases": [ + { + "foreign": { + "id": 127, + "name": "EVMFetchTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "114:14:1", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Address.sol", + "file": "@openzeppelin/contracts/utils/Address.sol", + "id": 130, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 772, + "sourceUnit": 14842, + "src": "159:66:1", + "symbolAliases": [ + { + "foreign": { + "id": 129, + "name": "Address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14841, + "src": "167:7:1", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IEVMGateway", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 144, + "linearizedBaseContracts": [ + 144 + ], + "name": "IEVMGateway", + "nameLocation": "237:11:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "ea9cd3bf", + "id": 143, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getStorageSlots", + "nameLocation": "264:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 132, + "mutability": "mutable", + "name": "addr", + "nameLocation": "297:4:1", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "289:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 131, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "289:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 135, + "mutability": "mutable", + "name": "commands", + "nameLocation": "328:8:1", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "311:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 133, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "311:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 134, + "nodeType": "ArrayTypeName", + "src": "311:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 138, + "mutability": "mutable", + "name": "constants", + "nameLocation": "361:9:1", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "346:24:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 136, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "346:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 137, + "nodeType": "ArrayTypeName", + "src": "346:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "279:97:1" + }, + "returnParameters": { + "id": 142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 141, + "mutability": "mutable", + "name": "witness", + "nameLocation": "413:7:1", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "400:20:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 140, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "400:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "399:22:1" + }, + "scope": 144, + "src": "255:167:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + } + ], + "scope": 772, + "src": "227:197:1", + "usedErrors": [], + "usedEvents": [] + }, + { + "constant": true, + "id": 147, + "mutability": "constant", + "name": "FLAG_DYNAMIC", + "nameLocation": "441:12:1", + "nodeType": "VariableDeclaration", + "scope": 772, + "src": "426:34:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 145, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "426:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783031", + "id": 146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "456:4:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 150, + "mutability": "constant", + "name": "OP_CONSTANT", + "nameLocation": "477:11:1", + "nodeType": "VariableDeclaration", + "scope": 772, + "src": "462:33:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 148, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "462:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783030", + "id": 149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "491:4:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 153, + "mutability": "constant", + "name": "OP_BACKREF", + "nameLocation": "512:10:1", + "nodeType": "VariableDeclaration", + "scope": 772, + "src": "497:32:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 151, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "497:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783230", + "id": 152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "525:4:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "0x20" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 156, + "mutability": "constant", + "name": "OP_END", + "nameLocation": "546:6:1", + "nodeType": "VariableDeclaration", + "scope": 772, + "src": "531:28:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 154, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "531:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30786666", + "id": 155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "555:4:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xff" + }, + "visibility": "internal" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "EVMFetcher", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 157, + "nodeType": "StructuredDocumentation", + "src": "562:176:1", + "text": " @dev A library to facilitate requesting storage data proofs from contracts, possibly on a different chain.\n See l1-verifier/test/TestL1.sol for example usage." + }, + "fullyImplemented": true, + "id": 771, + "linearizedBaseContracts": [ + 771 + ], + "name": "EVMFetcher", + "nameLocation": "747:10:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 160, + "mutability": "constant", + "name": "MAX_COMMANDS", + "nameLocation": "781:12:1", + "nodeType": "VariableDeclaration", + "scope": 771, + "src": "764:34:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 158, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "764:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3332", + "id": 159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "796:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 163, + "mutability": "constant", + "name": "MAX_CONSTANTS", + "nameLocation": "821:13:1", + "nodeType": "VariableDeclaration", + "scope": 771, + "src": "804:35:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 161, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "804:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3332", + "id": 162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "837:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "visibility": "internal" + }, + { + "global": false, + "id": 166, + "libraryName": { + "id": 164, + "name": "Address", + "nameLocations": [ + "883:7:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14841, + "src": "883:7:1" + }, + "nodeType": "UsingForDirective", + "src": "877:26:1", + "typeName": { + "id": 165, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "895:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "errorSelector": "128e7008", + "id": 170, + "name": "TooManyCommands", + "nameLocation": "915:15:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 169, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 168, + "mutability": "mutable", + "name": "max", + "nameLocation": "939:3:1", + "nodeType": "VariableDeclaration", + "scope": 170, + "src": "931:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 167, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "931:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "930:13:1" + }, + "src": "909:35:1" + }, + { + "errorSelector": "b00fd638", + "id": 172, + "name": "CommandTooLong", + "nameLocation": "955:14:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 171, + "nodeType": "ParameterList", + "parameters": [], + "src": "969:2:1" + }, + "src": "949:23:1" + }, + { + "errorSelector": "101586e0", + "id": 178, + "name": "InvalidReference", + "nameLocation": "983:16:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 177, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 174, + "mutability": "mutable", + "name": "value", + "nameLocation": "1008:5:1", + "nodeType": "VariableDeclaration", + "scope": 178, + "src": "1000:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 173, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1000:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 176, + "mutability": "mutable", + "name": "max", + "nameLocation": "1023:3:1", + "nodeType": "VariableDeclaration", + "scope": 178, + "src": "1015:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 175, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1015:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "999:28:1" + }, + "src": "977:51:1" + }, + { + "errorSelector": "556f1830", + "id": 191, + "name": "OffchainLookup", + "nameLocation": "1039:14:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 190, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 180, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1071:6:1", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "1063:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1063:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 183, + "mutability": "mutable", + "name": "urls", + "nameLocation": "1096:4:1", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "1087:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 181, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1087:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 182, + "nodeType": "ArrayTypeName", + "src": "1087:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 185, + "mutability": "mutable", + "name": "callData", + "nameLocation": "1116:8:1", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "1110:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 184, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1110:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 187, + "mutability": "mutable", + "name": "callbackFunction", + "nameLocation": "1141:16:1", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "1134:23:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 186, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1134:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 189, + "mutability": "mutable", + "name": "extraData", + "nameLocation": "1173:9:1", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "1167:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 188, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1167:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1053:135:1" + }, + "src": "1033:156:1" + }, + { + "canonicalName": "EVMFetcher.EVMFetchRequest", + "id": 205, + "members": [ + { + "constant": false, + "id": 194, + "mutability": "mutable", + "name": "verifier", + "nameLocation": "1241:8:1", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "1228:21:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + "typeName": { + "id": 193, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 192, + "name": "IEVMVerifier", + "nameLocations": [ + "1228:12:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "1228:12:1" + }, + "referencedDeclaration": 798, + "src": "1228:12:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 196, + "mutability": "mutable", + "name": "target", + "nameLocation": "1267:6:1", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "1259:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1259:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 199, + "mutability": "mutable", + "name": "commands", + "nameLocation": "1293:8:1", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "1283:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 197, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1283:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 198, + "nodeType": "ArrayTypeName", + "src": "1283:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 201, + "mutability": "mutable", + "name": "operationIdx", + "nameLocation": "1319:12:1", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "1311:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 200, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1311:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 204, + "mutability": "mutable", + "name": "constants", + "nameLocation": "1349:9:1", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "1341:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 202, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1341:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 203, + "nodeType": "ArrayTypeName", + "src": "1341:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "name": "EVMFetchRequest", + "nameLocation": "1202:15:1", + "nodeType": "StructDefinition", + "scope": 771, + "src": "1195:170:1", + "visibility": "public" + }, + { + "body": { + "id": 248, + "nodeType": "Block", + "src": "1958:336:1", + "statements": [ + { + "assignments": [ + 221 + ], + "declarations": [ + { + "constant": false, + "id": 221, + "mutability": "mutable", + "name": "commands", + "nameLocation": "1985:8:1", + "nodeType": "VariableDeclaration", + "scope": 248, + "src": "1968:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 219, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1968:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 220, + "nodeType": "ArrayTypeName", + "src": "1968:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 227, + "initialValue": { + "arguments": [ + { + "id": 225, + "name": "MAX_COMMANDS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 160, + "src": "2010:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 224, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "1996:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes32[] memory)" + }, + "typeName": { + "baseType": { + "id": 222, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2000:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 223, + "nodeType": "ArrayTypeName", + "src": "2000:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + } + }, + "id": 226, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1996:27:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1968:55:1" + }, + { + "assignments": [ + 232 + ], + "declarations": [ + { + "constant": false, + "id": 232, + "mutability": "mutable", + "name": "constants", + "nameLocation": "2048:9:1", + "nodeType": "VariableDeclaration", + "scope": 248, + "src": "2033:24:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 230, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2033:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 231, + "nodeType": "ArrayTypeName", + "src": "2033:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "id": 238, + "initialValue": { + "arguments": [ + { + "id": 236, + "name": "MAX_CONSTANTS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "2072:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2060:11:1", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 233, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2064:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 234, + "nodeType": "ArrayTypeName", + "src": "2064:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + } + }, + "id": 237, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2060:26:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2033:53:1" + }, + { + "AST": { + "nativeSrc": "2105:109:1", + "nodeType": "YulBlock", + "src": "2105:109:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "commands", + "nativeSrc": "2126:8:1", + "nodeType": "YulIdentifier", + "src": "2126:8:1" + }, + { + "kind": "number", + "nativeSrc": "2136:1:1", + "nodeType": "YulLiteral", + "src": "2136:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2119:6:1", + "nodeType": "YulIdentifier", + "src": "2119:6:1" + }, + "nativeSrc": "2119:19:1", + "nodeType": "YulFunctionCall", + "src": "2119:19:1" + }, + "nativeSrc": "2119:19:1", + "nodeType": "YulExpressionStatement", + "src": "2119:19:1" + }, + { + "expression": { + "arguments": [ + { + "name": "constants", + "nativeSrc": "2191:9:1", + "nodeType": "YulIdentifier", + "src": "2191:9:1" + }, + { + "kind": "number", + "nativeSrc": "2202:1:1", + "nodeType": "YulLiteral", + "src": "2202:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2184:6:1", + "nodeType": "YulIdentifier", + "src": "2184:6:1" + }, + "nativeSrc": "2184:20:1", + "nodeType": "YulFunctionCall", + "src": "2184:20:1" + }, + "nativeSrc": "2184:20:1", + "nodeType": "YulExpressionStatement", + "src": "2184:20:1" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 221, + "isOffset": false, + "isSlot": false, + "src": "2126:8:1", + "valueSize": 1 + }, + { + "declaration": 232, + "isOffset": false, + "isSlot": false, + "src": "2191:9:1", + "valueSize": 1 + } + ], + "id": 239, + "nodeType": "InlineAssembly", + "src": "2096:118:1" + }, + { + "expression": { + "arguments": [ + { + "id": 241, + "name": "verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 209, + "src": "2246:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + { + "id": 242, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 211, + "src": "2256:6:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 243, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 221, + "src": "2264:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "hexValue": "30", + "id": 244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2274:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 245, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 232, + "src": "2277:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + ], + "id": 240, + "name": "EVMFetchRequest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 205, + "src": "2230:15:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_EVMFetchRequest_$205_storage_ptr_$", + "typeString": "type(struct EVMFetcher.EVMFetchRequest storage pointer)" + } + }, + "id": 246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2230:57:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 216, + "id": 247, + "nodeType": "Return", + "src": "2223:64:1" + } + ] + }, + "documentation": { + "id": 206, + "nodeType": "StructuredDocumentation", + "src": "1371:449:1", + "text": " @dev Creates a request to fetch the value of multiple storage slots from a contract via CCIP-Read, possibly from\n another chain.\n Supports dynamic length values and slot numbers derived from other retrieved values.\n @param verifier An instance of a verifier contract that can provide and verify the storage slot information.\n @param target The address of the contract to fetch storage proofs for." + }, + "id": 249, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "newFetchRequest", + "nameLocation": "1834:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 212, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 209, + "mutability": "mutable", + "name": "verifier", + "nameLocation": "1872:8:1", + "nodeType": "VariableDeclaration", + "scope": 249, + "src": "1859:21:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + "typeName": { + "id": 208, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 207, + "name": "IEVMVerifier", + "nameLocations": [ + "1859:12:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "1859:12:1" + }, + "referencedDeclaration": 798, + "src": "1859:12:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 211, + "mutability": "mutable", + "name": "target", + "nameLocation": "1898:6:1", + "nodeType": "VariableDeclaration", + "scope": 249, + "src": "1890:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 210, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1890:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1849:61:1" + }, + "returnParameters": { + "id": 216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 215, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 249, + "src": "1934:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 214, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 213, + "name": "EVMFetchRequest", + "nameLocations": [ + "1934:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "1934:15:1" + }, + "referencedDeclaration": 205, + "src": "1934:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "1933:24:1" + }, + "scope": 771, + "src": "1825:469:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 325, + "nodeType": "Block", + "src": "2882:658:1", + "statements": [ + { + "assignments": [ + 265 + ], + "declarations": [ + { + "constant": false, + "id": 265, + "mutability": "mutable", + "name": "commands", + "nameLocation": "2909:8:1", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2892:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 263, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2892:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 264, + "nodeType": "ArrayTypeName", + "src": "2892:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 268, + "initialValue": { + "expression": { + "id": 266, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "2920:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2928:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "2920:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2892:44:1" + }, + { + "assignments": [ + 270 + ], + "declarations": [ + { + "constant": false, + "id": 270, + "mutability": "mutable", + "name": "commandIdx", + "nameLocation": "2954:10:1", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2946:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 269, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2946:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 273, + "initialValue": { + "expression": { + "id": 271, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 265, + "src": "2967:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2976:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2967:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2946:36:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 274, + "name": "commandIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 270, + "src": "2996:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3009:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2996:14:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 277, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3014:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 278, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3022:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "3014:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3037:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3014:25:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2996:43:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 288, + "nodeType": "IfStatement", + "src": "2992:146:1", + "trueBody": { + "id": 287, + "nodeType": "Block", + "src": "3041:97:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 283, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3111:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "id": 284, + "name": "OP_END", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 156, + "src": "3120:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 282, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "3097:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3097:30:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 286, + "nodeType": "ExpressionStatement", + "src": "3097:30:1" + } + ] + } + }, + { + "AST": { + "nativeSrc": "3156:94:1", + "nodeType": "YulBlock", + "src": "3156:94:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "commands", + "nativeSrc": "3177:8:1", + "nodeType": "YulIdentifier", + "src": "3177:8:1" + }, + { + "arguments": [ + { + "name": "commandIdx", + "nativeSrc": "3191:10:1", + "nodeType": "YulIdentifier", + "src": "3191:10:1" + }, + { + "kind": "number", + "nativeSrc": "3203:1:1", + "nodeType": "YulLiteral", + "src": "3203:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3187:3:1", + "nodeType": "YulIdentifier", + "src": "3187:3:1" + }, + "nativeSrc": "3187:18:1", + "nodeType": "YulFunctionCall", + "src": "3187:18:1" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3170:6:1", + "nodeType": "YulIdentifier", + "src": "3170:6:1" + }, + "nativeSrc": "3170:36:1", + "nodeType": "YulFunctionCall", + "src": "3170:36:1" + }, + "nativeSrc": "3170:36:1", + "nodeType": "YulExpressionStatement", + "src": "3170:36:1" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 270, + "isOffset": false, + "isSlot": false, + "src": "3191:10:1", + "valueSize": 1 + }, + { + "declaration": 265, + "isOffset": false, + "isSlot": false, + "src": "3177:8:1", + "valueSize": 1 + } + ], + "id": 289, + "nodeType": "InlineAssembly", + "src": "3147:103:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 290, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3263:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 291, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3271:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "3263:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3280:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3263:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 293, + "name": "MAX_COMMANDS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 160, + "src": "3289:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3263:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 300, + "nodeType": "IfStatement", + "src": "3259:105:1", + "trueBody": { + "id": 299, + "nodeType": "Block", + "src": "3303:61:1", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 296, + "name": "MAX_COMMANDS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 160, + "src": "3340:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 295, + "name": "TooManyCommands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 170, + "src": "3324:15:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$returns$__$", + "typeString": "function (uint256) pure" + } + }, + "id": 297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3324:29:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 298, + "nodeType": "RevertStatement", + "src": "3317:36:1" + } + ] + } + }, + { + "expression": { + "id": 305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 301, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3373:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 303, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3381:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "3373:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3396:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3373:24:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 306, + "nodeType": "ExpressionStatement", + "src": "3373:24:1" + }, + { + "expression": { + "arguments": [ + { + "id": 308, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3421:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "hexValue": "30", + "id": 309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3430:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 307, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "3407:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3407:25:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 311, + "nodeType": "ExpressionStatement", + "src": "3407:25:1" + }, + { + "expression": { + "arguments": [ + { + "id": 313, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3456:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 315, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3478:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 318, + "name": "baseSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 255, + "src": "3498:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 316, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3487:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3491:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "3487:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3487:20:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 314, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "3465:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3465:43:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 312, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "3442:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3442:67:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 322, + "nodeType": "ExpressionStatement", + "src": "3442:67:1" + }, + { + "expression": { + "id": 323, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 253, + "src": "3526:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 260, + "id": 324, + "nodeType": "Return", + "src": "3519:14:1" + } + ] + }, + "documentation": { + "id": 250, + "nodeType": "StructuredDocumentation", + "src": "2300:439:1", + "text": " @dev Starts describing a new fetch request.\n Paths specify a series of hashing operations to derive the final slot ID.\n See https://docs.soliditylang.org/en/v0.8.17/internals/layout_in_storage.html for details on how Solidity\n lays out storage variables.\n @param request The request object being operated on.\n @param baseSlot The base slot ID that forms the root of the path." + }, + "id": 326, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getStatic", + "nameLocation": "2753:9:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 253, + "mutability": "mutable", + "name": "request", + "nameLocation": "2795:7:1", + "nodeType": "VariableDeclaration", + "scope": 326, + "src": "2772:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 252, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 251, + "name": "EVMFetchRequest", + "nameLocations": [ + "2772:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "2772:15:1" + }, + "referencedDeclaration": 205, + "src": "2772:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 255, + "mutability": "mutable", + "name": "baseSlot", + "nameLocation": "2820:8:1", + "nodeType": "VariableDeclaration", + "scope": 326, + "src": "2812:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 254, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2812:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2762:72:1" + }, + "returnParameters": { + "id": 260, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 259, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 326, + "src": "2858:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 258, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 257, + "name": "EVMFetchRequest", + "nameLocations": [ + "2858:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "2858:15:1" + }, + "referencedDeclaration": 205, + "src": "2858:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "2857:24:1" + }, + "scope": 771, + "src": "2744:796:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 402, + "nodeType": "Block", + "src": "4129:669:1", + "statements": [ + { + "assignments": [ + 342 + ], + "declarations": [ + { + "constant": false, + "id": 342, + "mutability": "mutable", + "name": "commands", + "nameLocation": "4156:8:1", + "nodeType": "VariableDeclaration", + "scope": 402, + "src": "4139:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 340, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4139:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 341, + "nodeType": "ArrayTypeName", + "src": "4139:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 345, + "initialValue": { + "expression": { + "id": 343, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4167:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 344, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4175:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "4167:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4139:44:1" + }, + { + "assignments": [ + 347 + ], + "declarations": [ + { + "constant": false, + "id": 347, + "mutability": "mutable", + "name": "commandIdx", + "nameLocation": "4201:10:1", + "nodeType": "VariableDeclaration", + "scope": 402, + "src": "4193:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 346, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4193:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 350, + "initialValue": { + "expression": { + "id": 348, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 342, + "src": "4214:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4223:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4214:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4193:36:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 351, + "name": "commandIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 347, + "src": "4243:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4256:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4243:14:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 354, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4261:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 355, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4269:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "4261:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4284:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4261:25:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4243:43:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 365, + "nodeType": "IfStatement", + "src": "4239:146:1", + "trueBody": { + "id": 364, + "nodeType": "Block", + "src": "4288:97:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 360, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4358:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "id": 361, + "name": "OP_END", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 156, + "src": "4367:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 359, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "4344:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4344:30:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 363, + "nodeType": "ExpressionStatement", + "src": "4344:30:1" + } + ] + } + }, + { + "AST": { + "nativeSrc": "4403:94:1", + "nodeType": "YulBlock", + "src": "4403:94:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "commands", + "nativeSrc": "4424:8:1", + "nodeType": "YulIdentifier", + "src": "4424:8:1" + }, + { + "arguments": [ + { + "name": "commandIdx", + "nativeSrc": "4438:10:1", + "nodeType": "YulIdentifier", + "src": "4438:10:1" + }, + { + "kind": "number", + "nativeSrc": "4450:1:1", + "nodeType": "YulLiteral", + "src": "4450:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4434:3:1", + "nodeType": "YulIdentifier", + "src": "4434:3:1" + }, + "nativeSrc": "4434:18:1", + "nodeType": "YulFunctionCall", + "src": "4434:18:1" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4417:6:1", + "nodeType": "YulIdentifier", + "src": "4417:6:1" + }, + "nativeSrc": "4417:36:1", + "nodeType": "YulFunctionCall", + "src": "4417:36:1" + }, + "nativeSrc": "4417:36:1", + "nodeType": "YulExpressionStatement", + "src": "4417:36:1" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 347, + "isOffset": false, + "isSlot": false, + "src": "4438:10:1", + "valueSize": 1 + }, + { + "declaration": 342, + "isOffset": false, + "isSlot": false, + "src": "4424:8:1", + "valueSize": 1 + } + ], + "id": 366, + "nodeType": "InlineAssembly", + "src": "4394:103:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 367, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4510:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 368, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4518:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "4510:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4527:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4510:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 370, + "name": "MAX_COMMANDS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 160, + "src": "4536:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4510:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 377, + "nodeType": "IfStatement", + "src": "4506:105:1", + "trueBody": { + "id": 376, + "nodeType": "Block", + "src": "4550:61:1", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 373, + "name": "MAX_COMMANDS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 160, + "src": "4587:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 372, + "name": "TooManyCommands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 170, + "src": "4571:15:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$returns$__$", + "typeString": "function (uint256) pure" + } + }, + "id": 374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4571:29:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 375, + "nodeType": "RevertStatement", + "src": "4564:36:1" + } + ] + } + }, + { + "expression": { + "id": 382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 378, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4620:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 380, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4628:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "4620:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4643:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4620:24:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 383, + "nodeType": "ExpressionStatement", + "src": "4620:24:1" + }, + { + "expression": { + "arguments": [ + { + "id": 385, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4668:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "id": 386, + "name": "FLAG_DYNAMIC", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 147, + "src": "4677:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 384, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "4654:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4654:36:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 388, + "nodeType": "ExpressionStatement", + "src": "4654:36:1" + }, + { + "expression": { + "arguments": [ + { + "id": 390, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4714:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 392, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4736:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 395, + "name": "baseSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "4756:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 393, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4745:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4749:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "4745:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4745:20:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 391, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "4723:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4723:43:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 389, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "4700:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4700:67:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 399, + "nodeType": "ExpressionStatement", + "src": "4700:67:1" + }, + { + "expression": { + "id": 400, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 330, + "src": "4784:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 337, + "id": 401, + "nodeType": "Return", + "src": "4777:14:1" + } + ] + }, + "documentation": { + "id": 327, + "nodeType": "StructuredDocumentation", + "src": "3546:439:1", + "text": " @dev Starts describing a new fetch request.\n Paths specify a series of hashing operations to derive the final slot ID.\n See https://docs.soliditylang.org/en/v0.8.17/internals/layout_in_storage.html for details on how Solidity\n lays out storage variables.\n @param request The request object being operated on.\n @param baseSlot The base slot ID that forms the root of the path." + }, + "id": 403, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getDynamic", + "nameLocation": "3999:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 330, + "mutability": "mutable", + "name": "request", + "nameLocation": "4042:7:1", + "nodeType": "VariableDeclaration", + "scope": 403, + "src": "4019:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 329, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 328, + "name": "EVMFetchRequest", + "nameLocations": [ + "4019:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "4019:15:1" + }, + "referencedDeclaration": 205, + "src": "4019:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 332, + "mutability": "mutable", + "name": "baseSlot", + "nameLocation": "4067:8:1", + "nodeType": "VariableDeclaration", + "scope": 403, + "src": "4059:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 331, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4059:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4009:72:1" + }, + "returnParameters": { + "id": 337, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 336, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 403, + "src": "4105:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 335, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 334, + "name": "EVMFetchRequest", + "nameLocations": [ + "4105:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "4105:15:1" + }, + "referencedDeclaration": 205, + "src": "4105:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "4104:24:1" + }, + "scope": 771, + "src": "3990:808:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 437, + "nodeType": "Block", + "src": "5105:191:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 415, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 407, + "src": "5119:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 416, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5127:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "5119:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 417, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5143:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "5119:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 423, + "nodeType": "IfStatement", + "src": "5115:80:1", + "trueBody": { + "id": 422, + "nodeType": "Block", + "src": "5147:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 419, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "5168:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5168:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 421, + "nodeType": "RevertStatement", + "src": "5161:23:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 425, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 407, + "src": "5218:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 427, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 407, + "src": "5240:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 430, + "name": "el", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 409, + "src": "5260:2:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 428, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5249:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5253:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "5249:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5249:14:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 426, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "5227:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5227:37:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 424, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "5204:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5204:61:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 434, + "nodeType": "ExpressionStatement", + "src": "5204:61:1" + }, + { + "expression": { + "id": 435, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 407, + "src": "5282:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 414, + "id": 436, + "nodeType": "Return", + "src": "5275:14:1" + } + ] + }, + "documentation": { + "id": 404, + "nodeType": "StructuredDocumentation", + "src": "4804:166:1", + "text": " @dev Adds a `uint256` element to the current path.\n @param request The request object being operated on.\n @param el The element to add." + }, + "id": 438, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "element", + "nameLocation": "4984:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 410, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 407, + "mutability": "mutable", + "name": "request", + "nameLocation": "5024:7:1", + "nodeType": "VariableDeclaration", + "scope": 438, + "src": "5001:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 406, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 405, + "name": "EVMFetchRequest", + "nameLocations": [ + "5001:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "5001:15:1" + }, + "referencedDeclaration": 205, + "src": "5001:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 409, + "mutability": "mutable", + "name": "el", + "nameLocation": "5049:2:1", + "nodeType": "VariableDeclaration", + "scope": 438, + "src": "5041:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 408, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5041:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4991:66:1" + }, + "returnParameters": { + "id": 414, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 413, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 438, + "src": "5081:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 412, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 411, + "name": "EVMFetchRequest", + "nameLocations": [ + "5081:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "5081:15:1" + }, + "referencedDeclaration": 205, + "src": "5081:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "5080:24:1" + }, + "scope": 771, + "src": "4975:321:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 472, + "nodeType": "Block", + "src": "5603:191:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 450, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 442, + "src": "5617:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 451, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5625:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "5617:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 452, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5641:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "5617:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 458, + "nodeType": "IfStatement", + "src": "5613:80:1", + "trueBody": { + "id": 457, + "nodeType": "Block", + "src": "5645:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 454, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "5666:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5666:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 456, + "nodeType": "RevertStatement", + "src": "5659:23:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 460, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 442, + "src": "5716:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 462, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 442, + "src": "5738:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 465, + "name": "el", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 444, + "src": "5758:2:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 463, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5747:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 464, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5751:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "5747:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5747:14:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 461, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "5725:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5725:37:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 459, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "5702:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5702:61:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 469, + "nodeType": "ExpressionStatement", + "src": "5702:61:1" + }, + { + "expression": { + "id": 470, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 442, + "src": "5780:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 449, + "id": 471, + "nodeType": "Return", + "src": "5773:14:1" + } + ] + }, + "documentation": { + "id": 439, + "nodeType": "StructuredDocumentation", + "src": "5302:166:1", + "text": " @dev Adds a `bytes32` element to the current path.\n @param request The request object being operated on.\n @param el The element to add." + }, + "id": 473, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "element", + "nameLocation": "5482:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 445, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 442, + "mutability": "mutable", + "name": "request", + "nameLocation": "5522:7:1", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "5499:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 441, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 440, + "name": "EVMFetchRequest", + "nameLocations": [ + "5499:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "5499:15:1" + }, + "referencedDeclaration": 205, + "src": "5499:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 444, + "mutability": "mutable", + "name": "el", + "nameLocation": "5547:2:1", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "5539:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 443, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5539:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5489:66:1" + }, + "returnParameters": { + "id": 449, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 448, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "5579:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 447, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 446, + "name": "EVMFetchRequest", + "nameLocations": [ + "5579:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "5579:15:1" + }, + "referencedDeclaration": 205, + "src": "5579:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "5578:24:1" + }, + "scope": 771, + "src": "5473:321:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 507, + "nodeType": "Block", + "src": "6102:191:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 485, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 477, + "src": "6116:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 486, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6124:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "6116:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 487, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6140:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "6116:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 493, + "nodeType": "IfStatement", + "src": "6112:80:1", + "trueBody": { + "id": 492, + "nodeType": "Block", + "src": "6144:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 489, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "6165:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6165:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 491, + "nodeType": "RevertStatement", + "src": "6158:23:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 495, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 477, + "src": "6215:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 497, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 477, + "src": "6237:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 500, + "name": "el", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 479, + "src": "6257:2:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 498, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6246:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 499, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6250:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "6246:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6246:14:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 496, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "6224:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6224:37:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 494, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "6201:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6201:61:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 504, + "nodeType": "ExpressionStatement", + "src": "6201:61:1" + }, + { + "expression": { + "id": 505, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 477, + "src": "6279:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 484, + "id": 506, + "nodeType": "Return", + "src": "6272:14:1" + } + ] + }, + "documentation": { + "id": 474, + "nodeType": "StructuredDocumentation", + "src": "5800:167:1", + "text": " @dev Adds an `address` element to the current path.\n @param request The request object being operated on.\n @param el The element to add." + }, + "id": 508, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "element", + "nameLocation": "5981:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 480, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 477, + "mutability": "mutable", + "name": "request", + "nameLocation": "6021:7:1", + "nodeType": "VariableDeclaration", + "scope": 508, + "src": "5998:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 476, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 475, + "name": "EVMFetchRequest", + "nameLocations": [ + "5998:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "5998:15:1" + }, + "referencedDeclaration": 205, + "src": "5998:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 479, + "mutability": "mutable", + "name": "el", + "nameLocation": "6046:2:1", + "nodeType": "VariableDeclaration", + "scope": 508, + "src": "6038:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 478, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6038:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5988:66:1" + }, + "returnParameters": { + "id": 484, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 483, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 508, + "src": "6078:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 482, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 481, + "name": "EVMFetchRequest", + "nameLocations": [ + "6078:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "6078:15:1" + }, + "referencedDeclaration": 205, + "src": "6078:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "6077:24:1" + }, + "scope": 771, + "src": "5972:321:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 539, + "nodeType": "Block", + "src": "6603:179:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 520, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 512, + "src": "6617:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 521, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6625:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "6617:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 522, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6641:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "6617:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 528, + "nodeType": "IfStatement", + "src": "6613:80:1", + "trueBody": { + "id": 527, + "nodeType": "Block", + "src": "6645:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 524, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "6666:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6666:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 526, + "nodeType": "RevertStatement", + "src": "6659:23:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 530, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 512, + "src": "6716:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 532, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 512, + "src": "6738:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "id": 533, + "name": "el", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 514, + "src": "6747:2:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 531, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "6725:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6725:25:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 529, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "6702:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6702:49:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 536, + "nodeType": "ExpressionStatement", + "src": "6702:49:1" + }, + { + "expression": { + "id": 537, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 512, + "src": "6768:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 519, + "id": 538, + "nodeType": "Return", + "src": "6761:14:1" + } + ] + }, + "documentation": { + "id": 509, + "nodeType": "StructuredDocumentation", + "src": "6299:164:1", + "text": " @dev Adds a `bytes` element to the current path.\n @param request The request object being operated on.\n @param el The element to add." + }, + "id": 540, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "element", + "nameLocation": "6477:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 515, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 512, + "mutability": "mutable", + "name": "request", + "nameLocation": "6517:7:1", + "nodeType": "VariableDeclaration", + "scope": 540, + "src": "6494:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 511, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 510, + "name": "EVMFetchRequest", + "nameLocations": [ + "6494:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "6494:15:1" + }, + "referencedDeclaration": 205, + "src": "6494:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 514, + "mutability": "mutable", + "name": "el", + "nameLocation": "6547:2:1", + "nodeType": "VariableDeclaration", + "scope": 540, + "src": "6534:15:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 513, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6534:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6484:71:1" + }, + "returnParameters": { + "id": 519, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 518, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 540, + "src": "6579:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 517, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 516, + "name": "EVMFetchRequest", + "nameLocations": [ + "6579:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "6579:15:1" + }, + "referencedDeclaration": 205, + "src": "6579:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "6578:24:1" + }, + "scope": 771, + "src": "6468:314:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 574, + "nodeType": "Block", + "src": "7094:186:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 552, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 544, + "src": "7108:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 553, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7116:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "7108:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7132:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "7108:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 560, + "nodeType": "IfStatement", + "src": "7104:80:1", + "trueBody": { + "id": 559, + "nodeType": "Block", + "src": "7136:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 556, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "7157:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7157:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 558, + "nodeType": "RevertStatement", + "src": "7150:23:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 562, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 544, + "src": "7207:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 564, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 544, + "src": "7229:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "arguments": [ + { + "id": 567, + "name": "el", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 546, + "src": "7244:2:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7238:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 565, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7238:5:1", + "typeDescriptions": {} + } + }, + "id": 568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7238:9:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 563, + "name": "_addConstant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "7216:12:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_uint8_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes memory) pure returns (uint8)" + } + }, + "id": 569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7216:32:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 561, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "7193:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7193:56:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 571, + "nodeType": "ExpressionStatement", + "src": "7193:56:1" + }, + { + "expression": { + "id": 572, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 544, + "src": "7266:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 551, + "id": 573, + "nodeType": "Return", + "src": "7259:14:1" + } + ] + }, + "documentation": { + "id": 541, + "nodeType": "StructuredDocumentation", + "src": "6788:165:1", + "text": " @dev Adds a `string` element to the current path.\n @param request The request object being operated on.\n @param el The element to add." + }, + "id": 575, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "element", + "nameLocation": "6967:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 544, + "mutability": "mutable", + "name": "request", + "nameLocation": "7007:7:1", + "nodeType": "VariableDeclaration", + "scope": 575, + "src": "6984:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 543, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 542, + "name": "EVMFetchRequest", + "nameLocations": [ + "6984:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "6984:15:1" + }, + "referencedDeclaration": 205, + "src": "6984:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 546, + "mutability": "mutable", + "name": "el", + "nameLocation": "7038:2:1", + "nodeType": "VariableDeclaration", + "scope": 575, + "src": "7024:16:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 545, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7024:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6974:72:1" + }, + "returnParameters": { + "id": 551, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 550, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 575, + "src": "7070:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 549, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 548, + "name": "EVMFetchRequest", + "nameLocations": [ + "7070:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "7070:15:1" + }, + "referencedDeclaration": 205, + "src": "7070:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "7069:24:1" + }, + "scope": 771, + "src": "6958:322:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 623, + "nodeType": "Block", + "src": "7631:304:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 587, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "7645:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 588, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7653:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "7645:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7669:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "7645:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 595, + "nodeType": "IfStatement", + "src": "7641:80:1", + "trueBody": { + "id": 594, + "nodeType": "Block", + "src": "7673:48:1", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 591, + "name": "CommandTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 172, + "src": "7694:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7694:16:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 593, + "nodeType": "RevertStatement", + "src": "7687:23:1" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 596, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 581, + "src": "7734:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "expression": { + "id": 597, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "7740:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 598, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7748:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "7740:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 599, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7757:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7740:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7734:29:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 601, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 581, + "src": "7767:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3331", + "id": 602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7773:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "31" + }, + "src": "7767:8:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7734:41:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 613, + "nodeType": "IfStatement", + "src": "7730:125:1", + "trueBody": { + "id": 612, + "nodeType": "Block", + "src": "7777:78:1", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 606, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 581, + "src": "7815:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "expression": { + "expression": { + "id": 607, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "7820:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 608, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7828:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "7820:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7837:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7820:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 605, + "name": "InvalidReference", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 178, + "src": "7798:16:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7798:46:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 611, + "nodeType": "RevertStatement", + "src": "7791:53:1" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 615, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "7878:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 616, + "name": "OP_BACKREF", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 153, + "src": "7887:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 617, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 581, + "src": "7900:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "7887:16:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 614, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "7864:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7864:40:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 620, + "nodeType": "ExpressionStatement", + "src": "7864:40:1" + }, + { + "expression": { + "id": 621, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "7921:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "functionReturnParameters": 586, + "id": 622, + "nodeType": "Return", + "src": "7914:14:1" + } + ] + }, + "documentation": { + "id": 576, + "nodeType": "StructuredDocumentation", + "src": "7286:215:1", + "text": " @dev Adds a reference to a previous fetch to the current path.\n @param request The request object being operated on.\n @param idx The index of the previous fetch request, starting at 0." + }, + "id": 624, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ref", + "nameLocation": "7515:3:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 579, + "mutability": "mutable", + "name": "request", + "nameLocation": "7551:7:1", + "nodeType": "VariableDeclaration", + "scope": 624, + "src": "7528:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 578, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 577, + "name": "EVMFetchRequest", + "nameLocations": [ + "7528:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "7528:15:1" + }, + "referencedDeclaration": 205, + "src": "7528:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 581, + "mutability": "mutable", + "name": "idx", + "nameLocation": "7574:3:1", + "nodeType": "VariableDeclaration", + "scope": 624, + "src": "7568:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 580, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7568:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "7518:65:1" + }, + "returnParameters": { + "id": 586, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 585, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 624, + "src": "7607:22:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 584, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 583, + "name": "EVMFetchRequest", + "nameLocations": [ + "7607:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "7607:15:1" + }, + "referencedDeclaration": 205, + "src": "7607:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + } + ], + "src": "7606:24:1" + }, + "scope": 771, + "src": "7506:429:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 691, + "nodeType": "Block", + "src": "8787:734:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 635, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "8801:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 636, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8809:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "8801:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8818:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8801:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 638, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8827:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8801:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 640, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "8832:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 641, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8840:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "8832:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 642, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8855:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "8832:25:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8801:56:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 651, + "nodeType": "IfStatement", + "src": "8797:155:1", + "trueBody": { + "id": 650, + "nodeType": "Block", + "src": "8859:93:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 646, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "8925:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + { + "id": 647, + "name": "OP_END", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 156, + "src": "8934:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 645, + "name": "_addOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 770, + "src": "8911:13:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint8_$returns$__$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint8) pure" + } + }, + "id": 648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8911:30:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 649, + "nodeType": "ExpressionStatement", + "src": "8911:30:1" + } + ] + } + }, + { + "errorCall": { + "arguments": [ + { + "arguments": [ + { + "id": 655, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "9005:4:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_EVMFetcher_$771", + "typeString": "library EVMFetcher" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_EVMFetcher_$771", + "typeString": "library EVMFetcher" + } + ], + "id": 654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8997:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 653, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8997:7:1", + "typeDescriptions": {} + } + }, + "id": 656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8997:13:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "expression": { + "id": 657, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9024:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 658, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9032:8:1", + "memberName": "verifier", + "nodeType": "MemberAccess", + "referencedDeclaration": 194, + "src": "9024:16:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "id": 659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9041:11:1", + "memberName": "gatewayURLs", + "nodeType": "MemberAccess", + "referencedDeclaration": 779, + "src": "9024:28:1", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function () view external returns (string memory[] memory)" + } + }, + "id": 660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9024:30:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + { + "arguments": [ + { + "expression": { + "id": 663, + "name": "IEVMGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 144, + "src": "9100:11:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IEVMGateway_$144_$", + "typeString": "type(contract IEVMGateway)" + } + }, + "id": 664, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9112:15:1", + "memberName": "getStorageSlots", + "nodeType": "MemberAccess", + "referencedDeclaration": 143, + "src": "9100:27:1", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_pure$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function IEVMGateway.getStorageSlots(address,bytes32[] memory,bytes memory[] memory) pure returns (bytes memory)" + } + }, + { + "components": [ + { + "expression": { + "id": 665, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9146:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 666, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9154:6:1", + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 196, + "src": "9146:14:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 667, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9162:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 668, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9170:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "9162:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "expression": { + "id": 669, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9180:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 670, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9188:9:1", + "memberName": "constants", + "nodeType": "MemberAccess", + "referencedDeclaration": 204, + "src": "9180:17:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + } + ], + "id": 671, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "9145:53:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "tuple(address,bytes32[] memory,bytes memory[] memory)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_function_declaration_pure$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function IEVMGateway.getStorageSlots(address,bytes32[] memory,bytes memory[] memory) pure returns (bytes memory)" + }, + { + "typeIdentifier": "t_tuple$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "tuple(address,bytes32[] memory,bytes memory[] memory)" + } + ], + "expression": { + "id": 661, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9068:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 662, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9072:10:1", + "memberName": "encodeCall", + "nodeType": "MemberAccess", + "src": "9068:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodecall_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9068:144:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "expression": { + "id": 673, + "name": "EVMFetchTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "9226:14:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_EVMFetchTarget_$122_$", + "typeString": "type(contract EVMFetchTarget)" + } + }, + "id": 674, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9241:23:1", + "memberName": "getStorageSlotsCallback", + "nodeType": "MemberAccess", + "referencedDeclaration": 115, + "src": "9226:38:1", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_bytes_calldata_ptr_$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function EVMFetchTarget.getStorageSlotsCallback(bytes calldata,bytes calldata) returns (bytes memory)" + } + }, + "id": 675, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9265:8:1", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9226:47:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "expression": { + "id": 678, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9315:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 679, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9323:8:1", + "memberName": "verifier", + "nodeType": "MemberAccess", + "referencedDeclaration": 194, + "src": "9315:16:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + { + "expression": { + "id": 680, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9349:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 681, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9357:6:1", + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 196, + "src": "9349:14:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 682, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9381:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 683, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9389:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "9381:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "expression": { + "id": 684, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 628, + "src": "9415:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 685, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9423:9:1", + "memberName": "constants", + "nodeType": "MemberAccess", + "referencedDeclaration": 204, + "src": "9415:17:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 686, + "name": "callbackId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 630, + "src": "9450:10:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "id": 687, + "name": "callbackData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 632, + "src": "9478:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 676, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9287:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9291:6:1", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "9287:10:1", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9287:217:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 652, + "name": "OffchainLookup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 191, + "src": "8969:14:1", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_address_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes4_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,string memory[] memory,bytes memory,bytes4,bytes memory) pure" + } + }, + "id": 689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8969:545:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 690, + "nodeType": "RevertStatement", + "src": "8962:552:1" + } + ] + }, + "documentation": { + "id": 625, + "nodeType": "StructuredDocumentation", + "src": "7941:704:1", + "text": " @dev Initiates the fetch request.\n Calling this function terminates execution; clients that implement CCIP-Read will make a callback to\n `callback` with the results of the operation.\n @param callbackId A callback function selector on this contract that will be invoked via CCIP-Read with the result of the lookup.\n The function must have a signature matching `(bytes[] memory values, bytes callbackData)` with a return type matching the call in which\n this function was invoked. Its return data will be returned as the return value of the entire CCIP-read operation.\n @param callbackData Extra data to supply to the callback." + }, + "id": 692, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fetch", + "nameLocation": "8659:5:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 633, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 628, + "mutability": "mutable", + "name": "request", + "nameLocation": "8697:7:1", + "nodeType": "VariableDeclaration", + "scope": 692, + "src": "8674:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 627, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 626, + "name": "EVMFetchRequest", + "nameLocations": [ + "8674:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "8674:15:1" + }, + "referencedDeclaration": 205, + "src": "8674:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 630, + "mutability": "mutable", + "name": "callbackId", + "nameLocation": "8721:10:1", + "nodeType": "VariableDeclaration", + "scope": 692, + "src": "8714:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 629, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "8714:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 632, + "mutability": "mutable", + "name": "callbackData", + "nameLocation": "8754:12:1", + "nodeType": "VariableDeclaration", + "scope": 692, + "src": "8741:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 631, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8741:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8664:108:1" + }, + "returnParameters": { + "id": 634, + "nodeType": "ParameterList", + "parameters": [], + "src": "8787:0:1" + }, + "scope": 771, + "src": "8650:871:1", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 725, + "nodeType": "Block", + "src": "9656:239:1", + "statements": [ + { + "assignments": [ + 706 + ], + "declarations": [ + { + "constant": false, + "id": 706, + "mutability": "mutable", + "name": "constants", + "nameLocation": "9681:9:1", + "nodeType": "VariableDeclaration", + "scope": 725, + "src": "9666:24:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 704, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9666:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 705, + "nodeType": "ArrayTypeName", + "src": "9666:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "id": 709, + "initialValue": { + "expression": { + "id": 707, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 695, + "src": "9693:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 708, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9701:9:1", + "memberName": "constants", + "nodeType": "MemberAccess", + "referencedDeclaration": 204, + "src": "9693:17:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9666:44:1" + }, + { + "expression": { + "id": 716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 710, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 700, + "src": "9720:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "expression": { + "id": 713, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 706, + "src": "9732:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9742:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9732:16:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9726:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 711, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9726:5:1", + "typeDescriptions": {} + } + }, + "id": 715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9726:23:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "9720:29:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 717, + "nodeType": "ExpressionStatement", + "src": "9720:29:1" + }, + { + "AST": { + "nativeSrc": "9768:89:1", + "nodeType": "YulBlock", + "src": "9768:89:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "constants", + "nativeSrc": "9789:9:1", + "nodeType": "YulIdentifier", + "src": "9789:9:1" + }, + { + "arguments": [ + { + "name": "idx", + "nativeSrc": "9804:3:1", + "nodeType": "YulIdentifier", + "src": "9804:3:1" + }, + { + "kind": "number", + "nativeSrc": "9809:1:1", + "nodeType": "YulLiteral", + "src": "9809:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9800:3:1", + "nodeType": "YulIdentifier", + "src": "9800:3:1" + }, + "nativeSrc": "9800:11:1", + "nodeType": "YulFunctionCall", + "src": "9800:11:1" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9782:6:1", + "nodeType": "YulIdentifier", + "src": "9782:6:1" + }, + "nativeSrc": "9782:30:1", + "nodeType": "YulFunctionCall", + "src": "9782:30:1" + }, + "nativeSrc": "9782:30:1", + "nodeType": "YulExpressionStatement", + "src": "9782:30:1" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 706, + "isOffset": false, + "isSlot": false, + "src": "9789:9:1", + "valueSize": 1 + }, + { + "declaration": 700, + "isOffset": false, + "isSlot": false, + "src": "9804:3:1", + "valueSize": 1 + } + ], + "id": 718, + "nodeType": "InlineAssembly", + "src": "9759:98:1" + }, + { + "expression": { + "id": 723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 719, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 706, + "src": "9866:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 721, + "indexExpression": { + "id": 720, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 700, + "src": "9876:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9866:14:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 722, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 697, + "src": "9883:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "9866:22:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 724, + "nodeType": "ExpressionStatement", + "src": "9866:22:1" + } + ] + }, + "id": 726, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_addConstant", + "nameLocation": "9536:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 698, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 695, + "mutability": "mutable", + "name": "request", + "nameLocation": "9581:7:1", + "nodeType": "VariableDeclaration", + "scope": 726, + "src": "9558:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 694, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 693, + "name": "EVMFetchRequest", + "nameLocations": [ + "9558:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "9558:15:1" + }, + "referencedDeclaration": 205, + "src": "9558:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 697, + "mutability": "mutable", + "name": "value", + "nameLocation": "9611:5:1", + "nodeType": "VariableDeclaration", + "scope": 726, + "src": "9598:18:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 696, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9598:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "9548:74:1" + }, + "returnParameters": { + "id": 701, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 700, + "mutability": "mutable", + "name": "idx", + "nameLocation": "9651:3:1", + "nodeType": "VariableDeclaration", + "scope": 726, + "src": "9645:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 699, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9645:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "9644:11:1" + }, + "scope": 771, + "src": "9527:368:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 769, + "nodeType": "Block", + "src": "10001:214:1", + "statements": [ + { + "assignments": [ + 735 + ], + "declarations": [ + { + "constant": false, + "id": 735, + "mutability": "mutable", + "name": "commandIdx", + "nameLocation": "10019:10:1", + "nodeType": "VariableDeclaration", + "scope": 769, + "src": "10011:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 734, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10011:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 741, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 736, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 729, + "src": "10032:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 737, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10040:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "10032:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10049:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "10032:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 739, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10058:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "10032:27:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10011:48:1" + }, + { + "expression": { + "id": 767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "expression": { + "id": 742, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 729, + "src": "10069:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 745, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10077:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "10069:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 746, + "indexExpression": { + "id": 744, + "name": "commandIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 735, + "src": "10086:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10069:28:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "expression": { + "id": 747, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 729, + "src": "10112:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 748, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10120:8:1", + "memberName": "commands", + "nodeType": "MemberAccess", + "referencedDeclaration": 199, + "src": "10112:16:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 750, + "indexExpression": { + "id": 749, + "name": "commandIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 735, + "src": "10129:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10112:28:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 755, + "name": "op", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 731, + "src": "10171:2:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 754, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10164:6:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes1_$", + "typeString": "type(bytes1)" + }, + "typeName": { + "id": 753, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "10164:6:1", + "typeDescriptions": {} + } + }, + "id": 756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10164:10:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 752, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10156:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 751, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "10156:7:1", + "typeDescriptions": {} + } + }, + "id": 757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10156:19:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 762, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "38", + "id": 758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10180:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "10184:22:1", + "subExpression": { + "expression": { + "id": 759, + "name": "request", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 729, + "src": "10184:7:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 760, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10192:12:1", + "memberName": "operationIdx", + "nodeType": "MemberAccess", + "referencedDeclaration": 201, + "src": "10184:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10180:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 763, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10179:28:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10156:51:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 765, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10155:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "10112:96:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "10069:139:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 768, + "nodeType": "ExpressionStatement", + "src": "10069:139:1" + } + ] + }, + "id": 770, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_addOperation", + "nameLocation": "9910:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 729, + "mutability": "mutable", + "name": "request", + "nameLocation": "9956:7:1", + "nodeType": "VariableDeclaration", + "scope": 770, + "src": "9933:30:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + }, + "typeName": { + "id": 728, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 727, + "name": "EVMFetchRequest", + "nameLocations": [ + "9933:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "9933:15:1" + }, + "referencedDeclaration": 205, + "src": "9933:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 731, + "mutability": "mutable", + "name": "op", + "nameLocation": "9979:2:1", + "nodeType": "VariableDeclaration", + "scope": 770, + "src": "9973:8:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 730, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9973:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "9923:64:1" + }, + "returnParameters": { + "id": 733, + "nodeType": "ParameterList", + "parameters": [], + "src": "10001:0:1" + }, + "scope": 771, + "src": "9901:314:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "scope": 772, + "src": "739:9478:1", + "usedErrors": [ + 170, + 172, + 178, + 191 + ], + "usedEvents": [] + } + ], + "src": "31:10187:1" + }, + "id": 1 + }, + "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "exportedSymbols": { + "IEVMVerifier": [ + 798 + ] + }, + "id": 799, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 773, + "literals": [ + "solidity", + "^", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "31:24:2" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IEVMVerifier", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 798, + "linearizedBaseContracts": [ + 798 + ], + "name": "IEVMVerifier", + "nameLocation": "67:12:2", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "b50f2fbc", + "id": 779, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "gatewayURLs", + "nameLocation": "95:11:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 774, + "nodeType": "ParameterList", + "parameters": [], + "src": "106:2:2" + }, + "returnParameters": { + "id": 778, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 777, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "132:15:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 775, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "132:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 776, + "nodeType": "ArrayTypeName", + "src": "132:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "src": "131:17:2" + }, + "scope": 798, + "src": "86:63:2", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c51ca02a", + "id": 797, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getStorageValues", + "nameLocation": "164:16:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 792, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 781, + "mutability": "mutable", + "name": "target", + "nameLocation": "198:6:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "190:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 780, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "190:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 784, + "mutability": "mutable", + "name": "commands", + "nameLocation": "231:8:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "214:25:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 782, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "214:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 783, + "nodeType": "ArrayTypeName", + "src": "214:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 787, + "mutability": "mutable", + "name": "constants", + "nameLocation": "264:9:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "249:24:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 785, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "249:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 786, + "nodeType": "ArrayTypeName", + "src": "249:7:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 789, + "mutability": "mutable", + "name": "proof", + "nameLocation": "296:5:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "283:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 788, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "283:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 791, + "mutability": "mutable", + "name": "acceptedL2BlockRangeLength", + "nameLocation": "319:26:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "311:34:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "311:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "180:171:2" + }, + "returnParameters": { + "id": 796, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 795, + "mutability": "mutable", + "name": "values", + "nameLocation": "390:6:2", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "375:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 793, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "375:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 794, + "nodeType": "ArrayTypeName", + "src": "375:7:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "374:23:2" + }, + "scope": 798, + "src": "155:243:2", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 799, + "src": "57:343:2", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:370:2" + }, + "id": 2 + }, + "@consensys/linea-state-verifier/contracts/LineaProofHelper.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/LineaProofHelper.sol", + "exportedSymbols": { + "AccountProof": [ + 811 + ], + "AccountProofStruct": [ + 825 + ], + "FLAG_DYNAMIC": [ + 844 + ], + "LAST_LEAF_INDEX": [ + 805 + ], + "LineaProofHelper": [ + 1559 + ], + "OP_BACKREF": [ + 841 + ], + "OP_CONSTANT": [ + 838 + ], + "SparseMerkleProof": [ + 2295 + ], + "StorageProof": [ + 817 + ], + "StorageProofStruct": [ + 835 + ] + }, + "id": 1560, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 800, + "literals": [ + "solidity", + "^", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "32:24:3" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol", + "file": "./lib/SparseMerkleProof.sol", + "id": 802, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1560, + "sourceUnit": 2296, + "src": "57:62:3", + "symbolAliases": [ + { + "foreign": { + "id": 801, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "65:17:3", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "constant": true, + "id": 805, + "mutability": "constant", + "name": "LAST_LEAF_INDEX", + "nameLocation": "138:15:3", + "nodeType": "VariableDeclaration", + "scope": 1560, + "src": "121:37:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "121:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3431", + "id": 804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "156:2:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_41_by_1", + "typeString": "int_const 41" + }, + "value": "41" + }, + "visibility": "internal" + }, + { + "canonicalName": "AccountProof", + "id": 811, + "members": [ + { + "constant": false, + "id": 807, + "mutability": "mutable", + "name": "value", + "nameLocation": "193:5:3", + "nodeType": "VariableDeclaration", + "scope": 811, + "src": "187:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 806, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "187:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 810, + "mutability": "mutable", + "name": "proofRelatedNodes", + "nameLocation": "212:17:3", + "nodeType": "VariableDeclaration", + "scope": 811, + "src": "204:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 808, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "204:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 809, + "nodeType": "ArrayTypeName", + "src": "204:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "name": "AccountProof", + "nameLocation": "168:12:3", + "nodeType": "StructDefinition", + "scope": 1560, + "src": "161:71:3", + "visibility": "public" + }, + { + "canonicalName": "StorageProof", + "id": 817, + "members": [ + { + "constant": false, + "id": 813, + "mutability": "mutable", + "name": "value", + "nameLocation": "268:5:3", + "nodeType": "VariableDeclaration", + "scope": 817, + "src": "260:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 812, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "260:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 816, + "mutability": "mutable", + "name": "proofRelatedNodes", + "nameLocation": "287:17:3", + "nodeType": "VariableDeclaration", + "scope": 817, + "src": "279:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 814, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "279:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 815, + "nodeType": "ArrayTypeName", + "src": "279:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "name": "StorageProof", + "nameLocation": "241:12:3", + "nodeType": "StructDefinition", + "scope": 1560, + "src": "234:73:3", + "visibility": "public" + }, + { + "canonicalName": "AccountProofStruct", + "id": 825, + "members": [ + { + "constant": false, + "id": 819, + "mutability": "mutable", + "name": "key", + "nameLocation": "349:3:3", + "nodeType": "VariableDeclaration", + "scope": 825, + "src": "341:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 818, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "341:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 821, + "mutability": "mutable", + "name": "leafIndex", + "nameLocation": "366:9:3", + "nodeType": "VariableDeclaration", + "scope": 825, + "src": "358:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 820, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "358:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 824, + "mutability": "mutable", + "name": "proof", + "nameLocation": "394:5:3", + "nodeType": "VariableDeclaration", + "scope": 825, + "src": "381:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_storage_ptr", + "typeString": "struct AccountProof" + }, + "typeName": { + "id": 823, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 822, + "name": "AccountProof", + "nameLocations": [ + "381:12:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 811, + "src": "381:12:3" + }, + "referencedDeclaration": 811, + "src": "381:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_storage_ptr", + "typeString": "struct AccountProof" + } + }, + "visibility": "internal" + } + ], + "name": "AccountProofStruct", + "nameLocation": "316:18:3", + "nodeType": "StructDefinition", + "scope": 1560, + "src": "309:93:3", + "visibility": "public" + }, + { + "canonicalName": "StorageProofStruct", + "id": 835, + "members": [ + { + "constant": false, + "id": 827, + "mutability": "mutable", + "name": "key", + "nameLocation": "444:3:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "436:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 826, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "436:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 829, + "mutability": "mutable", + "name": "leafIndex", + "nameLocation": "461:9:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "453:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 828, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "453:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 832, + "mutability": "mutable", + "name": "proof", + "nameLocation": "489:5:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "476:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_storage_ptr", + "typeString": "struct StorageProof" + }, + "typeName": { + "id": 831, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 830, + "name": "StorageProof", + "nameLocations": [ + "476:12:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 817, + "src": "476:12:3" + }, + "referencedDeclaration": 817, + "src": "476:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_storage_ptr", + "typeString": "struct StorageProof" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 834, + "mutability": "mutable", + "name": "initialized", + "nameLocation": "505:11:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "500:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 833, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "500:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "name": "StorageProofStruct", + "nameLocation": "411:18:3", + "nodeType": "StructDefinition", + "scope": 1560, + "src": "404:115:3", + "visibility": "public" + }, + { + "constant": true, + "id": 838, + "mutability": "constant", + "name": "OP_CONSTANT", + "nameLocation": "536:11:3", + "nodeType": "VariableDeclaration", + "scope": 1560, + "src": "521:33:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 836, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "521:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783030", + "id": 837, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "550:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 841, + "mutability": "constant", + "name": "OP_BACKREF", + "nameLocation": "571:10:3", + "nodeType": "VariableDeclaration", + "scope": 1560, + "src": "556:32:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 839, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "556:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783230", + "id": 840, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "584:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "0x20" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 844, + "mutability": "constant", + "name": "FLAG_DYNAMIC", + "nameLocation": "605:12:3", + "nodeType": "VariableDeclaration", + "scope": 1560, + "src": "590:34:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 842, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "590:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "30783031", + "id": 843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "620:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "visibility": "internal" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "LineaProofHelper", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "id": 1559, + "linearizedBaseContracts": [ + 1559 + ], + "name": "LineaProofHelper", + "nameLocation": "635:16:3", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "b378b6d4", + "id": 848, + "name": "UnknownOpcode", + "nameLocation": "664:13:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 847, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 846, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "678:5:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 845, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "678:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "677:7:3" + }, + "src": "658:27:3" + }, + { + "errorSelector": "54d02091", + "id": 852, + "name": "InvalidSlotSize", + "nameLocation": "696:15:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 851, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 850, + "mutability": "mutable", + "name": "size", + "nameLocation": "720:4:3", + "nodeType": "VariableDeclaration", + "scope": 852, + "src": "712:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 849, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "712:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "711:14:3" + }, + "src": "690:36:3" + }, + { + "body": { + "id": 906, + "nodeType": "Block", + "src": "891:329:3", + "statements": [ + { + "assignments": [ + 866 + ], + "declarations": [ + { + "constant": false, + "id": 866, + "mutability": "mutable", + "name": "opcode", + "nameLocation": "907:6:3", + "nodeType": "VariableDeclaration", + "scope": 906, + "src": "901:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 865, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "901:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 873, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 869, + "name": "operation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 854, + "src": "922:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "916:5:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 867, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "916:5:3", + "typeDescriptions": {} + } + }, + "id": 870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "916:16:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30786530", + "id": 871, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "935:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_224_by_1", + "typeString": "int_const 224" + }, + "value": "0xe0" + }, + "src": "916:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "901:38:3" + }, + { + "assignments": [ + 875 + ], + "declarations": [ + { + "constant": false, + "id": 875, + "mutability": "mutable", + "name": "operand", + "nameLocation": "955:7:3", + "nodeType": "VariableDeclaration", + "scope": 906, + "src": "949:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 874, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "949:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 882, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 878, + "name": "operation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 854, + "src": "971:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 877, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "965:5:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 876, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "965:5:3", + "typeDescriptions": {} + } + }, + "id": 879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "965:16:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30783166", + "id": 880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "984:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "0x1f" + }, + "src": "965:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "949:39:3" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 883, + "name": "opcode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 866, + "src": "1003:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 884, + "name": "OP_CONSTANT", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 838, + "src": "1013:11:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "1003:21:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 891, + "name": "opcode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 866, + "src": "1086:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 892, + "name": "OP_BACKREF", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 841, + "src": "1096:10:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "1086:20:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 903, + "nodeType": "Block", + "src": "1161:53:3", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 900, + "name": "opcode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 866, + "src": "1196:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 899, + "name": "UnknownOpcode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 848, + "src": "1182:13:3", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint8_$returns$__$", + "typeString": "function (uint8) pure" + } + }, + "id": 901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1182:21:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 902, + "nodeType": "RevertStatement", + "src": "1175:28:3" + } + ] + }, + "id": 904, + "nodeType": "IfStatement", + "src": "1082:132:3", + "trueBody": { + "id": 898, + "nodeType": "Block", + "src": "1108:47:3", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 894, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1129:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 896, + "indexExpression": { + "id": 895, + "name": "operand", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 875, + "src": "1136:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1129:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 864, + "id": 897, + "nodeType": "Return", + "src": "1122:22:3" + } + ] + } + }, + "id": 905, + "nodeType": "IfStatement", + "src": "999:215:3", + "trueBody": { + "id": 890, + "nodeType": "Block", + "src": "1026:50:3", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 886, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 857, + "src": "1047:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 888, + "indexExpression": { + "id": 887, + "name": "operand", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 875, + "src": "1057:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1047:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 864, + "id": 889, + "nodeType": "Return", + "src": "1040:25:3" + } + ] + } + } + ] + }, + "id": 907, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "executeOperation", + "nameLocation": "741:16:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 854, + "mutability": "mutable", + "name": "operation", + "nameLocation": "774:9:3", + "nodeType": "VariableDeclaration", + "scope": 907, + "src": "767:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 853, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "767:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 857, + "mutability": "mutable", + "name": "constants", + "nameLocation": "808:9:3", + "nodeType": "VariableDeclaration", + "scope": 907, + "src": "793:24:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 855, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "793:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 856, + "nodeType": "ArrayTypeName", + "src": "793:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 860, + "mutability": "mutable", + "name": "values", + "nameLocation": "842:6:3", + "nodeType": "VariableDeclaration", + "scope": 907, + "src": "827:21:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 858, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "827:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 859, + "nodeType": "ArrayTypeName", + "src": "827:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "757:97:3" + }, + "returnParameters": { + "id": 864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 863, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 907, + "src": "877:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 862, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "877:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "876:14:3" + }, + "scope": 1559, + "src": "732:488:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1009, + "nodeType": "Block", + "src": "1400:591:3", + "statements": [ + { + "assignments": [ + 923 + ], + "declarations": [ + { + "constant": false, + "id": 923, + "mutability": "mutable", + "name": "flags", + "nameLocation": "1416:5:3", + "nodeType": "VariableDeclaration", + "scope": 1009, + "src": "1410:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 922, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1410:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 930, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 926, + "name": "command", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "1430:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 928, + "indexExpression": { + "hexValue": "30", + "id": 927, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1438:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1430:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 925, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1424:5:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 924, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1424:5:3", + "typeDescriptions": {} + } + }, + "id": 929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1424:17:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1410:31:3" + }, + { + "expression": { + "id": 938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 931, + "name": "isDynamic", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 918, + "src": "1451:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 932, + "name": "flags", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 923, + "src": "1464:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 933, + "name": "FLAG_DYNAMIC", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 844, + "src": "1472:12:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "1464:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 935, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1463:22:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1489:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1463:27:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1451:39:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 939, + "nodeType": "ExpressionStatement", + "src": "1451:39:3" + }, + { + "assignments": [ + 941 + ], + "declarations": [ + { + "constant": false, + "id": 941, + "mutability": "mutable", + "name": "slotData", + "nameLocation": "1514:8:3", + "nodeType": "VariableDeclaration", + "scope": 1009, + "src": "1501:21:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 940, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1501:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 949, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 943, + "name": "command", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "1542:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 945, + "indexExpression": { + "hexValue": "31", + "id": 944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1550:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1542:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + { + "id": 946, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 912, + "src": "1554:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 947, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 915, + "src": "1565:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + ], + "id": 942, + "name": "executeOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 907, + "src": "1525:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes1_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes1,bytes memory[] memory,bytes memory[] memory) pure returns (bytes memory)" + } + }, + "id": 948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1525:47:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1501:71:3" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 951, + "name": "slotData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1590:8:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1599:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1590:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3332", + "id": 953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1609:2:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "1590:21:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4669727374207061746820656c656d656e74206d757374206265203332206279746573", + "id": 955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1613:37:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893", + "typeString": "literal_string \"First path element must be 32 bytes\"" + }, + "value": "First path element must be 32 bytes" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893", + "typeString": "literal_string \"First path element must be 32 bytes\"" + } + ], + "id": 950, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1582:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1582:69:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 957, + "nodeType": "ExpressionStatement", + "src": "1582:69:3" + }, + { + "expression": { + "id": 966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 958, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 920, + "src": "1661:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 963, + "name": "slotData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1684:8:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 962, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1676:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 961, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1676:7:3", + "typeDescriptions": {} + } + }, + "id": 964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1676:17:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 960, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1668:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 959, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1668:7:3", + "typeDescriptions": {} + } + }, + "id": 965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1668:26:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1661:33:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 967, + "nodeType": "ExpressionStatement", + "src": "1661:33:3" + }, + { + "body": { + "id": 1007, + "nodeType": "Block", + "src": "1760:225:3", + "statements": [ + { + "assignments": [ + 985 + ], + "declarations": [ + { + "constant": false, + "id": 985, + "mutability": "mutable", + "name": "index", + "nameLocation": "1787:5:3", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "1774:18:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 984, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1774:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 993, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 987, + "name": "command", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "1829:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 989, + "indexExpression": { + "id": 988, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 969, + "src": "1837:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1829:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + { + "id": 990, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 912, + "src": "1857:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 991, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 915, + "src": "1884:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + ], + "id": 986, + "name": "executeOperation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 907, + "src": "1795:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes1_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes1,bytes memory[] memory,bytes memory[] memory) pure returns (bytes memory)" + } + }, + "id": 992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1795:109:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1774:130:3" + }, + { + "expression": { + "id": 1005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 994, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 920, + "src": "1918:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 1000, + "name": "index", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 985, + "src": "1960:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1001, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 920, + "src": "1967:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 998, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1943:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1947:12:3", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "1943:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1943:29:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 997, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1933:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1933:40:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 996, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1925:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 995, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1925:7:3", + "typeDescriptions": {} + } + }, + "id": 1004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1925:49:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1918:56:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1006, + "nodeType": "ExpressionStatement", + "src": "1918:56:3" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 972, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 969, + "src": "1725:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1729:2:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "1725:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 975, + "name": "command", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 909, + "src": "1735:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 977, + "indexExpression": { + "id": 976, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 969, + "src": "1743:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1735:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30786666", + "id": 978, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1749:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xff" + }, + "src": "1735:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1725:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1008, + "initializationExpression": { + "assignments": [ + 969 + ], + "declarations": [ + { + "constant": false, + "id": 969, + "mutability": "mutable", + "name": "j", + "nameLocation": "1718:1:3", + "nodeType": "VariableDeclaration", + "scope": 1008, + "src": "1710:9:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 968, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1710:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 971, + "initialValue": { + "hexValue": "32", + "id": 970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1722:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1710:13:3" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1755:3:3", + "subExpression": { + "id": 981, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 969, + "src": "1755:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 983, + "nodeType": "ExpressionStatement", + "src": "1755:3:3" + }, + "nodeType": "ForStatement", + "src": "1705:280:3" + } + ] + }, + "id": 1010, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "computeFirstSlot", + "nameLocation": "1235:16:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 916, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 909, + "mutability": "mutable", + "name": "command", + "nameLocation": "1269:7:3", + "nodeType": "VariableDeclaration", + "scope": 1010, + "src": "1261:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 908, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1261:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 912, + "mutability": "mutable", + "name": "constants", + "nameLocation": "1301:9:3", + "nodeType": "VariableDeclaration", + "scope": 1010, + "src": "1286:24:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 910, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1286:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 911, + "nodeType": "ArrayTypeName", + "src": "1286:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 915, + "mutability": "mutable", + "name": "values", + "nameLocation": "1335:6:3", + "nodeType": "VariableDeclaration", + "scope": 1010, + "src": "1320:21:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 913, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1320:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 914, + "nodeType": "ArrayTypeName", + "src": "1320:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "1251:96:3" + }, + "returnParameters": { + "id": 921, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 918, + "mutability": "mutable", + "name": "isDynamic", + "nameLocation": "1375:9:3", + "nodeType": "VariableDeclaration", + "scope": 1010, + "src": "1370:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 917, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1370:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 920, + "mutability": "mutable", + "name": "slot", + "nameLocation": "1394:4:3", + "nodeType": "VariableDeclaration", + "scope": 1010, + "src": "1386:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 919, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1386:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1369:30:3" + }, + "scope": 1559, + "src": "1226:765:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1173, + "nodeType": "Block", + "src": "2240:1434:3", + "statements": [ + { + "condition": { + "id": 1032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2254:36:3", + "subExpression": { + "expression": { + "baseExpression": { + "id": 1028, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "2255:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1030, + "indexExpression": { + "id": 1029, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2269:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2255:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1031, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2279:11:3", + "memberName": "initialized", + "nodeType": "MemberAccess", + "referencedDeclaration": 834, + "src": "2255:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1039, + "nodeType": "IfStatement", + "src": "2250:90:3", + "trueBody": { + "id": 1038, + "nodeType": "Block", + "src": "2292:48:3", + "statements": [ + { + "expression": { + "components": [ + { + "hexValue": "", + "id": 1033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2314:2:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + { + "id": 1035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2318:10:3", + "subExpression": { + "id": 1034, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2318:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1036, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2313:16:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_$_t_uint256_$", + "typeString": "tuple(literal_string \"\",uint256)" + } + }, + "functionReturnParameters": 1027, + "id": 1037, + "nodeType": "Return", + "src": "2306:23:3" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 1041, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "2381:7:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + { + "expression": { + "baseExpression": { + "id": 1042, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "2402:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1044, + "indexExpression": { + "id": 1043, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2416:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2402:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1045, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2426:9:3", + "memberName": "leafIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "2402:33:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1046, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "2449:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1048, + "indexExpression": { + "id": 1047, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2463:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2449:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1049, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2473:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "2449:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1050, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2479:17:3", + "memberName": "proofRelatedNodes", + "nodeType": "MemberAccess", + "referencedDeclaration": 816, + "src": "2449:47:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1051, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "2510:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1053, + "indexExpression": { + "id": 1052, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2524:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2510:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1054, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2534:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "2510:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1055, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2540:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "2510:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 1058, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "2567:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2559:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 1056, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2559:7:3", + "typeDescriptions": {} + } + }, + "id": 1059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2559:13:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1040, + "name": "verifyStorageProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1376, + "src": "2349:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_Account_$1774_memory_ptr_$_t_uint256_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (struct SparseMerkleProof.Account memory,uint256,bytes memory[] memory,bytes32,bytes32) pure" + } + }, + "id": 1060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2349:233:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1061, + "nodeType": "ExpressionStatement", + "src": "2349:233:3" + }, + { + "assignments": [ + 1063 + ], + "declarations": [ + { + "constant": false, + "id": 1063, + "mutability": "mutable", + "name": "firstValue", + "nameLocation": "2600:10:3", + "nodeType": "VariableDeclaration", + "scope": 1173, + "src": "2592:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1062, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2592:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1073, + "initialValue": { + "arguments": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 1066, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "2621:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1069, + "indexExpression": { + "id": 1068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2635:10:3", + "subExpression": { + "id": 1067, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "2635:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2621:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1070, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2647:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "2621:31:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1071, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2653:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "2621:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1065, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2613:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 1064, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2613:7:3", + "typeDescriptions": {} + } + }, + "id": 1072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2613:46:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2592:67:3" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1074, + "name": "firstValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1063, + "src": "2673:10:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30783031", + "id": 1075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2686:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "src": "2673:17:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30783031", + "id": 1077, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2694:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "src": "2673:25:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1171, + "nodeType": "Block", + "src": "3524:144:3", + "statements": [ + { + "assignments": [ + 1152 + ], + "declarations": [ + { + "constant": false, + "id": 1152, + "mutability": "mutable", + "name": "length", + "nameLocation": "3546:6:3", + "nodeType": "VariableDeclaration", + "scope": 1171, + "src": "3538:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1151, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3538:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1159, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1153, + "name": "firstValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1063, + "src": "3556:10:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30784646", + "id": 1154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3569:4:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xFF" + }, + "src": "3556:17:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1156, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3555:19:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 1157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3578:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3555:24:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3538:41:3" + }, + { + "expression": { + "components": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 1163, + "name": "firstValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1063, + "src": "3623:10:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1161, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3612:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3616:6:3", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "3612:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1164, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3612:22:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 1165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3636:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 1166, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1152, + "src": "3639:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1160, + "name": "sliceBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1227, + "src": "3601:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 1167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3601:45:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1168, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3648:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1169, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3600:57:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bytes memory,uint256)" + } + }, + "functionReturnParameters": 1027, + "id": 1170, + "nodeType": "Return", + "src": "3593:64:3" + } + ] + }, + "id": 1172, + "nodeType": "IfStatement", + "src": "2669:999:3", + "trueBody": { + "id": 1150, + "nodeType": "Block", + "src": "2700:818:3", + "statements": [ + { + "expression": { + "id": 1089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1079, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "2799:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 1085, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "2841:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1083, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2824:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2828:12:3", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2824:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2824:22:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1082, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2814:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2814:33:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1081, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2806:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 1080, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2806:7:3", + "typeDescriptions": {} + } + }, + "id": 1088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2806:42:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2799:49:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1090, + "nodeType": "ExpressionStatement", + "src": "2799:49:3" + }, + { + "expression": { + "id": 1098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1091, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1024, + "src": "2862:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1094, + "name": "firstValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1063, + "src": "2880:10:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 1095, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2894:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2880:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2870:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 1092, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2874:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 1097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2870:26:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "2862:34:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1099, + "nodeType": "ExpressionStatement", + "src": "2862:34:3" + }, + { + "assignments": [ + 1101 + ], + "declarations": [ + { + "constant": false, + "id": 1101, + "mutability": "mutable", + "name": "off", + "nameLocation": "2918:3:3", + "nodeType": "VariableDeclaration", + "scope": 1150, + "src": "2910:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1100, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2910:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1102, + "nodeType": "VariableDeclarationStatement", + "src": "2910:11:3" + }, + { + "body": { + "id": 1144, + "nodeType": "Block", + "src": "2962:508:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1108, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "3020:7:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + { + "expression": { + "baseExpression": { + "id": 1109, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "3049:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1111, + "indexExpression": { + "id": 1110, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3063:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3049:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1112, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3073:9:3", + "memberName": "leafIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "3049:33:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1113, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "3104:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1115, + "indexExpression": { + "id": 1114, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3118:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3104:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1116, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3128:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "3104:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1117, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3134:17:3", + "memberName": "proofRelatedNodes", + "nodeType": "MemberAccess", + "referencedDeclaration": 816, + "src": "3104:47:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1118, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "3173:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1120, + "indexExpression": { + "id": 1119, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3187:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3173:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1121, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3197:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "3173:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1122, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3203:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "3173:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 1126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3238:6:3", + "subExpression": { + "id": 1125, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "3238:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1124, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3230:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 1123, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3230:7:3", + "typeDescriptions": {} + } + }, + "id": 1127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3230:15:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1107, + "name": "verifyStorageProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1376, + "src": "2980:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_Account_$1774_memory_ptr_$_t_uint256_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (struct SparseMerkleProof.Account memory,uint256,bytes memory[] memory,bytes32,bytes32) pure" + } + }, + "id": 1128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2980:283:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1129, + "nodeType": "ExpressionStatement", + "src": "2980:283:3" + }, + { + "expression": { + "id": 1132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1130, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "3281:3:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 1131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3288:2:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3281:9:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1133, + "nodeType": "ExpressionStatement", + "src": "3281:9:3" + }, + { + "assignments": [ + 1135 + ], + "declarations": [ + { + "constant": false, + "id": 1135, + "mutability": "mutable", + "name": "temp", + "nameLocation": "3316:4:3", + "nodeType": "VariableDeclaration", + "scope": 1144, + "src": "3308:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1134, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3308:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1142, + "initialValue": { + "expression": { + "expression": { + "baseExpression": { + "id": 1136, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1018, + "src": "3323:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1139, + "indexExpression": { + "id": 1138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3337:10:3", + "subExpression": { + "id": 1137, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3337:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3323:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1140, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3349:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "3323:31:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1141, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3355:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "3323:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3308:52:3" + }, + { + "AST": { + "nativeSrc": "3387:69:3", + "nodeType": "YulBlock", + "src": "3387:69:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3420:5:3", + "nodeType": "YulIdentifier", + "src": "3420:5:3" + }, + { + "name": "off", + "nativeSrc": "3427:3:3", + "nodeType": "YulIdentifier", + "src": "3427:3:3" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3416:3:3", + "nodeType": "YulIdentifier", + "src": "3416:3:3" + }, + "nativeSrc": "3416:15:3", + "nodeType": "YulFunctionCall", + "src": "3416:15:3" + }, + { + "name": "temp", + "nativeSrc": "3433:4:3", + "nodeType": "YulIdentifier", + "src": "3433:4:3" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3409:6:3", + "nodeType": "YulIdentifier", + "src": "3409:6:3" + }, + "nativeSrc": "3409:29:3", + "nodeType": "YulFunctionCall", + "src": "3409:29:3" + }, + "nativeSrc": "3409:29:3", + "nodeType": "YulExpressionStatement", + "src": "3409:29:3" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 1101, + "isOffset": false, + "isSlot": false, + "src": "3427:3:3", + "valueSize": 1 + }, + { + "declaration": 1135, + "isOffset": false, + "isSlot": false, + "src": "3433:4:3", + "valueSize": 1 + }, + { + "declaration": 1024, + "isOffset": false, + "isSlot": false, + "src": "3420:5:3", + "valueSize": 1 + } + ], + "id": 1143, + "nodeType": "InlineAssembly", + "src": "3378:78:3" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1103, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "2942:3:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1104, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1024, + "src": "2948:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2954:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2948:12:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2942:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1145, + "nodeType": "WhileStatement", + "src": "2935:535:3" + }, + { + "expression": { + "components": [ + { + "id": 1146, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1024, + "src": "3491:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1147, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1014, + "src": "3498:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1148, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3490:17:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bytes memory,uint256)" + } + }, + "functionReturnParameters": 1027, + "id": 1149, + "nodeType": "Return", + "src": "3483:24:3" + } + ] + } + } + ] + }, + "id": 1174, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getDynamicValue", + "nameLocation": "2006:15:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1022, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1012, + "mutability": "mutable", + "name": "slot", + "nameLocation": "2039:4:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2031:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1011, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2031:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1014, + "mutability": "mutable", + "name": "proofIdx", + "nameLocation": "2061:8:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2053:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1013, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2053:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1018, + "mutability": "mutable", + "name": "storageProofs", + "nameLocation": "2107:13:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2079:41:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct[]" + }, + "typeName": { + "baseType": { + "id": 1016, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1015, + "name": "StorageProofStruct", + "nameLocations": [ + "2079:18:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 835, + "src": "2079:18:3" + }, + "referencedDeclaration": 835, + "src": "2079:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_storage_ptr", + "typeString": "struct StorageProofStruct" + } + }, + "id": 1017, + "nodeType": "ArrayTypeName", + "src": "2079:20:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_storage_$dyn_storage_ptr", + "typeString": "struct StorageProofStruct[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1021, + "mutability": "mutable", + "name": "account", + "nameLocation": "2163:7:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2130:40:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 1020, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1019, + "name": "SparseMerkleProof.Account", + "nameLocations": [ + "2130:17:3", + "2148:7:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "2130:25:3" + }, + "referencedDeclaration": 1774, + "src": "2130:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + } + ], + "src": "2021:155:3" + }, + "returnParameters": { + "id": 1027, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1024, + "mutability": "mutable", + "name": "value", + "nameLocation": "2212:5:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2199:18:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1023, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2199:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1026, + "mutability": "mutable", + "name": "newProofIdx", + "nameLocation": "2227:11:3", + "nodeType": "VariableDeclaration", + "scope": 1174, + "src": "2219:19:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1025, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2219:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2198:41:3" + }, + "scope": 1559, + "src": "1997:1677:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1226, + "nodeType": "Block", + "src": "3815:255:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1188, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1186, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "3833:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1187, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1180, + "src": "3841:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3833:14:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 1189, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1176, + "src": "3851:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3856:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3851:11:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3833:29:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "736c69636542797465733a206f7574206f662072616e6765", + "id": 1192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3864:26:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "typeString": "literal_string \"sliceBytes: out of range\"" + }, + "value": "sliceBytes: out of range" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "typeString": "literal_string \"sliceBytes: out of range\"" + } + ], + "id": 1185, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3825:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3825:66:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1194, + "nodeType": "ExpressionStatement", + "src": "3825:66:3" + }, + { + "assignments": [ + 1196 + ], + "declarations": [ + { + "constant": false, + "id": 1196, + "mutability": "mutable", + "name": "result", + "nameLocation": "3915:6:3", + "nodeType": "VariableDeclaration", + "scope": 1226, + "src": "3902:19:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1195, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3902:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1201, + "initialValue": { + "arguments": [ + { + "id": 1199, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1180, + "src": "3934:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "3924:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 1197, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3928:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 1200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3924:17:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3902:39:3" + }, + { + "body": { + "id": 1222, + "nodeType": "Block", + "src": "3988:52:3", + "statements": [ + { + "expression": { + "id": 1220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1212, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1196, + "src": "4002:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1214, + "indexExpression": { + "id": 1213, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1203, + "src": "4009:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4002:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1215, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1176, + "src": "4014:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1219, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1216, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1203, + "src": "4019:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1217, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "4023:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4019:9:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4014:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "4002:27:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 1221, + "nodeType": "ExpressionStatement", + "src": "4002:27:3" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1206, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1203, + "src": "3971:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1207, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1180, + "src": "3975:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3971:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1223, + "initializationExpression": { + "assignments": [ + 1203 + ], + "declarations": [ + { + "constant": false, + "id": 1203, + "mutability": "mutable", + "name": "i", + "nameLocation": "3964:1:3", + "nodeType": "VariableDeclaration", + "scope": 1223, + "src": "3956:9:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1202, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3956:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1205, + "initialValue": { + "hexValue": "30", + "id": 1204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3968:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3956:13:3" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 1210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3983:3:3", + "subExpression": { + "id": 1209, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1203, + "src": "3983:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1211, + "nodeType": "ExpressionStatement", + "src": "3983:3:3" + }, + "nodeType": "ForStatement", + "src": "3951:89:3" + }, + { + "expression": { + "id": 1224, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1196, + "src": "4057:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 1184, + "id": 1225, + "nodeType": "Return", + "src": "4050:13:3" + } + ] + }, + "functionSelector": "9f070142", + "id": 1227, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sliceBytes", + "nameLocation": "3689:10:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1181, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1176, + "mutability": "mutable", + "name": "data", + "nameLocation": "3722:4:3", + "nodeType": "VariableDeclaration", + "scope": 1227, + "src": "3709:17:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1175, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3709:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1178, + "mutability": "mutable", + "name": "start", + "nameLocation": "3744:5:3", + "nodeType": "VariableDeclaration", + "scope": 1227, + "src": "3736:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1177, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3736:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1180, + "mutability": "mutable", + "name": "length", + "nameLocation": "3767:6:3", + "nodeType": "VariableDeclaration", + "scope": 1227, + "src": "3759:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1179, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3759:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3699:80:3" + }, + "returnParameters": { + "id": 1184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1183, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1227, + "src": "3801:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1182, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3801:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3800:14:3" + }, + "scope": 1559, + "src": "3680:390:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1308, + "nodeType": "Block", + "src": "4237:974:3", + "statements": [ + { + "assignments": [ + 1240 + ], + "declarations": [ + { + "constant": false, + "id": 1240, + "mutability": "mutable", + "name": "targetHash", + "nameLocation": "4349:10:3", + "nodeType": "VariableDeclaration", + "scope": 1308, + "src": "4341:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1239, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4341:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1248, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 1245, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1229, + "src": "4400:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1243, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4389:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4393:6:3", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "4389:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4389:18:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1241, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "4362:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4380:8:3", + "memberName": "mimcHash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1879, + "src": "4362:26:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4362:46:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4341:67:3" + }, + { + "assignments": [ + 1253 + ], + "declarations": [ + { + "constant": false, + "id": 1253, + "mutability": "mutable", + "name": "accountLeaf", + "nameLocation": "4448:11:3", + "nodeType": "VariableDeclaration", + "scope": 1308, + "src": "4418:41:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + }, + "typeName": { + "id": 1252, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1251, + "name": "SparseMerkleProof.Leaf", + "nameLocations": [ + "4418:17:3", + "4436:4:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1784, + "src": "4418:22:3" + }, + "referencedDeclaration": 1784, + "src": "4418:22:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_storage_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + } + }, + "visibility": "internal" + } + ], + "id": 1262, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "expression": { + "expression": { + "id": 1256, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "4501:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + "id": 1257, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4514:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "4501:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_memory_ptr", + "typeString": "struct AccountProof memory" + } + }, + "id": 1258, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4520:17:3", + "memberName": "proofRelatedNodes", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "4501:36:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1260, + "indexExpression": { + "id": 1259, + "name": "LAST_LEAF_INDEX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 805, + "src": "4538:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4501:53:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1254, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "4462:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4480:7:3", + "memberName": "getLeaf", + "nodeType": "MemberAccess", + "referencedDeclaration": 1893, + "src": "4462:25:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_Leaf_$1784_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (struct SparseMerkleProof.Leaf memory)" + } + }, + "id": 1261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4462:102:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4418:146:3" + }, + { + "assignments": [ + 1264 + ], + "declarations": [ + { + "constant": false, + "id": 1264, + "mutability": "mutable", + "name": "hKey", + "nameLocation": "4582:4:3", + "nodeType": "VariableDeclaration", + "scope": 1308, + "src": "4574:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1263, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4574:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1267, + "initialValue": { + "expression": { + "id": 1265, + "name": "accountLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1253, + "src": "4589:11:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "id": 1266, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4601:4:3", + "memberName": "hKey", + "nodeType": "MemberAccess", + "referencedDeclaration": 1781, + "src": "4589:16:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4574:31:3" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1269, + "name": "targetHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1240, + "src": "4624:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 1270, + "name": "hKey", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1264, + "src": "4638:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "4624:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a2077726f6e6720746172676574", + "id": 1272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4644:32:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306", + "typeString": "literal_string \"LineaProofHelper: wrong target\"" + }, + "value": "LineaProofHelper: wrong target" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306", + "typeString": "literal_string \"LineaProofHelper: wrong target\"" + } + ], + "id": 1268, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4616:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4616:61:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1274, + "nodeType": "ExpressionStatement", + "src": "4616:61:3" + }, + { + "assignments": [ + 1276 + ], + "declarations": [ + { + "constant": false, + "id": 1276, + "mutability": "mutable", + "name": "accountProofVerified", + "nameLocation": "4738:20:3", + "nodeType": "VariableDeclaration", + "scope": 1308, + "src": "4733:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1275, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4733:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 1286, + "initialValue": { + "arguments": [ + { + "expression": { + "expression": { + "id": 1279, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "4804:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + "id": 1280, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4817:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "4804:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_memory_ptr", + "typeString": "struct AccountProof memory" + } + }, + "id": 1281, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4823:17:3", + "memberName": "proofRelatedNodes", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "4804:36:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "expression": { + "id": 1282, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "4854:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + "id": 1283, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4867:9:3", + "memberName": "leafIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "4854:22:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1284, + "name": "stateRoot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1234, + "src": "4890:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1277, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "4761:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4779:11:3", + "memberName": "verifyProof", + "nodeType": "MemberAccess", + "referencedDeclaration": 1865, + "src": "4761:29:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes memory[] memory,uint256,bytes32) pure returns (bool)" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4761:148:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4733:176:3" + }, + { + "assignments": [ + 1288 + ], + "declarations": [ + { + "constant": false, + "id": 1288, + "mutability": "mutable", + "name": "hAccountValue", + "nameLocation": "4928:13:3", + "nodeType": "VariableDeclaration", + "scope": 1308, + "src": "4920:21:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1287, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4920:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1295, + "initialValue": { + "arguments": [ + { + "expression": { + "expression": { + "id": 1291, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "4992:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + "id": 1292, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5005:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "4992:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_memory_ptr", + "typeString": "struct AccountProof memory" + } + }, + "id": 1293, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5011:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 807, + "src": "4992:24:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1289, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "4944:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4962:16:3", + "memberName": "hashAccountValue", + "nodeType": "MemberAccess", + "referencedDeclaration": 1951, + "src": "4944:34:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4944:82:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4920:106:3" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1297, + "name": "accountProofVerified", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1276, + "src": "5058:20:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1298, + "name": "accountLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1253, + "src": "5082:11:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "id": 1299, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5094:6:3", + "memberName": "hValue", + "nodeType": "MemberAccess", + "referencedDeclaration": 1783, + "src": "5082:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 1300, + "name": "hAccountValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1288, + "src": "5104:13:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "5082:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5058:59:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20696e76616c6964206163636f756e742070726f6f66", + "id": 1303, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5131:41:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3", + "typeString": "literal_string \"LineaProofHelper: invalid account proof\"" + }, + "value": "LineaProofHelper: invalid account proof" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3", + "typeString": "literal_string \"LineaProofHelper: invalid account proof\"" + } + ], + "id": 1296, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5037:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5037:145:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1305, + "nodeType": "ExpressionStatement", + "src": "5037:145:3" + }, + { + "expression": { + "hexValue": "74727565", + "id": 1306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5200:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1238, + "id": 1307, + "nodeType": "Return", + "src": "5193:11:3" + } + ] + }, + "id": 1309, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifyAccountProof", + "nameLocation": "4085:18:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1229, + "mutability": "mutable", + "name": "target", + "nameLocation": "4121:6:3", + "nodeType": "VariableDeclaration", + "scope": 1309, + "src": "4113:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4113:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1232, + "mutability": "mutable", + "name": "accountProof", + "nameLocation": "4163:12:3", + "nodeType": "VariableDeclaration", + "scope": 1309, + "src": "4137:38:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct" + }, + "typeName": { + "id": 1231, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1230, + "name": "AccountProofStruct", + "nameLocations": [ + "4137:18:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 825, + "src": "4137:18:3" + }, + "referencedDeclaration": 825, + "src": "4137:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_storage_ptr", + "typeString": "struct AccountProofStruct" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1234, + "mutability": "mutable", + "name": "stateRoot", + "nameLocation": "4193:9:3", + "nodeType": "VariableDeclaration", + "scope": 1309, + "src": "4185:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1233, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4185:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4103:105:3" + }, + "returnParameters": { + "id": 1238, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1237, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1309, + "src": "4231:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1236, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4231:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4230:6:3" + }, + "scope": 1559, + "src": "4076:1135:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1375, + "nodeType": "Block", + "src": "5415:689:3", + "statements": [ + { + "assignments": [ + 1325 + ], + "declarations": [ + { + "constant": false, + "id": 1325, + "mutability": "mutable", + "name": "storageProofVerified", + "nameLocation": "5430:20:3", + "nodeType": "VariableDeclaration", + "scope": 1375, + "src": "5425:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1324, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5425:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 1333, + "initialValue": { + "arguments": [ + { + "id": 1328, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1317, + "src": "5496:5:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 1329, + "name": "leafIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1314, + "src": "5515:9:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 1330, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1312, + "src": "5538:7:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1331, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5546:11:3", + "memberName": "storageRoot", + "nodeType": "MemberAccess", + "referencedDeclaration": 1767, + "src": "5538:19:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1326, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "5453:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5471:11:3", + "memberName": "verifyProof", + "nodeType": "MemberAccess", + "referencedDeclaration": 1865, + "src": "5453:29:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes memory[] memory,uint256,bytes32) pure returns (bool)" + } + }, + "id": 1332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5453:114:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5425:142:3" + }, + { + "assignments": [ + 1338 + ], + "declarations": [ + { + "constant": false, + "id": 1338, + "mutability": "mutable", + "name": "storageLeaf", + "nameLocation": "5608:11:3", + "nodeType": "VariableDeclaration", + "scope": 1375, + "src": "5578:41:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + }, + "typeName": { + "id": 1337, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1336, + "name": "SparseMerkleProof.Leaf", + "nameLocations": [ + "5578:17:3", + "5596:4:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1784, + "src": "5578:22:3" + }, + "referencedDeclaration": 1784, + "src": "5578:22:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_storage_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + } + }, + "visibility": "internal" + } + ], + "id": 1345, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 1341, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1317, + "src": "5661:5:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1343, + "indexExpression": { + "id": 1342, + "name": "LAST_LEAF_INDEX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 805, + "src": "5667:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5661:22:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1339, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "5622:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5640:7:3", + "memberName": "getLeaf", + "nodeType": "MemberAccess", + "referencedDeclaration": 1893, + "src": "5622:25:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_Leaf_$1784_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (struct SparseMerkleProof.Leaf memory)" + } + }, + "id": 1344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5622:71:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5578:115:3" + }, + { + "assignments": [ + 1347 + ], + "declarations": [ + { + "constant": false, + "id": 1347, + "mutability": "mutable", + "name": "hKey", + "nameLocation": "5738:4:3", + "nodeType": "VariableDeclaration", + "scope": 1375, + "src": "5730:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1346, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5730:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1352, + "initialValue": { + "arguments": [ + { + "id": 1350, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1321, + "src": "5780:3:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1348, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "5745:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5763:16:3", + "memberName": "hashStorageValue", + "nodeType": "MemberAccess", + "referencedDeclaration": 1977, + "src": "5745:34:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32) pure returns (bytes32)" + } + }, + "id": 1351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5745:39:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5730:54:3" + }, + { + "assignments": [ + 1354 + ], + "declarations": [ + { + "constant": false, + "id": 1354, + "mutability": "mutable", + "name": "hValue", + "nameLocation": "5839:6:3", + "nodeType": "VariableDeclaration", + "scope": 1375, + "src": "5831:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1353, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5831:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1359, + "initialValue": { + "arguments": [ + { + "id": 1357, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1319, + "src": "5883:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1355, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "5848:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5866:16:3", + "memberName": "hashStorageValue", + "nodeType": "MemberAccess", + "referencedDeclaration": 1977, + "src": "5848:34:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32) pure returns (bytes32)" + } + }, + "id": 1358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5848:41:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5831:58:3" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1361, + "name": "storageProofVerified", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1325, + "src": "5920:20:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1362, + "name": "storageLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1338, + "src": "5960:11:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "id": 1363, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5972:4:3", + "memberName": "hKey", + "nodeType": "MemberAccess", + "referencedDeclaration": 1781, + "src": "5960:16:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 1364, + "name": "hKey", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1347, + "src": "5980:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "5960:24:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5920:64:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1367, + "name": "storageLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1338, + "src": "6004:11:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "id": 1368, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6016:6:3", + "memberName": "hValue", + "nodeType": "MemberAccess", + "referencedDeclaration": 1783, + "src": "6004:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 1369, + "name": "hValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1354, + "src": "6026:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6004:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5920:112:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20696e76616c69642073746f726167652070726f6f66", + "id": 1372, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6046:41:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292", + "typeString": "literal_string \"LineaProofHelper: invalid storage proof\"" + }, + "value": "LineaProofHelper: invalid storage proof" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292", + "typeString": "literal_string \"LineaProofHelper: invalid storage proof\"" + } + ], + "id": 1360, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5899:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5899:198:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1374, + "nodeType": "ExpressionStatement", + "src": "5899:198:3" + } + ] + }, + "id": 1376, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifyStorageProof", + "nameLocation": "5226:18:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1322, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1312, + "mutability": "mutable", + "name": "account", + "nameLocation": "5287:7:3", + "nodeType": "VariableDeclaration", + "scope": 1376, + "src": "5254:40:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 1311, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1310, + "name": "SparseMerkleProof.Account", + "nameLocations": [ + "5254:17:3", + "5272:7:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "5254:25:3" + }, + "referencedDeclaration": 1774, + "src": "5254:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1314, + "mutability": "mutable", + "name": "leafIndex", + "nameLocation": "5312:9:3", + "nodeType": "VariableDeclaration", + "scope": 1376, + "src": "5304:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5304:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1317, + "mutability": "mutable", + "name": "proof", + "nameLocation": "5346:5:3", + "nodeType": "VariableDeclaration", + "scope": 1376, + "src": "5331:20:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1315, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5331:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1316, + "nodeType": "ArrayTypeName", + "src": "5331:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1319, + "mutability": "mutable", + "name": "value", + "nameLocation": "5369:5:3", + "nodeType": "VariableDeclaration", + "scope": 1376, + "src": "5361:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5361:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1321, + "mutability": "mutable", + "name": "key", + "nameLocation": "5392:3:3", + "nodeType": "VariableDeclaration", + "scope": 1376, + "src": "5384:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1320, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5384:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5244:157:3" + }, + "returnParameters": { + "id": 1323, + "nodeType": "ParameterList", + "parameters": [], + "src": "5415:0:3" + }, + "scope": 1559, + "src": "5217:887:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1557, + "nodeType": "Block", + "src": "6407:1726:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1400, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1381, + "src": "6438:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 1401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6447:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6438:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 1402, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "6457:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6471:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6457:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6438:39:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20636f6d6d616e6473206e756d626572203e2073746f726167652070726f6f6673206e756d626572", + "id": 1405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6491:59:3", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5", + "typeString": "literal_string \"LineaProofHelper: commands number > storage proofs number\"" + }, + "value": "LineaProofHelper: commands number > storage proofs number" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5", + "typeString": "literal_string \"LineaProofHelper: commands number > storage proofs number\"" + } + ], + "id": 1399, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6417:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6417:143:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1407, + "nodeType": "ExpressionStatement", + "src": "6417:143:3" + }, + { + "expression": { + "arguments": [ + { + "id": 1409, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1378, + "src": "6589:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1410, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6597:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + { + "id": 1411, + "name": "stateRoot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1386, + "src": "6611:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1408, + "name": "verifyAccountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "6570:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$_t_struct$_AccountProofStruct_$825_memory_ptr_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (address,struct AccountProofStruct memory,bytes32) pure returns (bool)" + } + }, + "id": 1412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6570:51:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1413, + "nodeType": "ExpressionStatement", + "src": "6570:51:3" + }, + { + "assignments": [ + 1418 + ], + "declarations": [ + { + "constant": false, + "id": 1418, + "mutability": "mutable", + "name": "account", + "nameLocation": "6664:7:3", + "nodeType": "VariableDeclaration", + "scope": 1557, + "src": "6631:40:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 1417, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1416, + "name": "SparseMerkleProof.Account", + "nameLocations": [ + "6631:17:3", + "6649:7:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "6631:25:3" + }, + "referencedDeclaration": 1774, + "src": "6631:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + } + ], + "id": 1425, + "initialValue": { + "arguments": [ + { + "expression": { + "expression": { + "id": 1421, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6716:12:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + "id": 1422, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6729:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "6716:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProof_$811_memory_ptr", + "typeString": "struct AccountProof memory" + } + }, + "id": 1423, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6735:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 807, + "src": "6716:24:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1419, + "name": "SparseMerkleProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "6674:17:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SparseMerkleProof_$2295_$", + "typeString": "type(library SparseMerkleProof)" + } + }, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6692:10:3", + "memberName": "getAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 1907, + "src": "6674:28:3", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_Account_$1774_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (struct SparseMerkleProof.Account memory)" + } + }, + "id": 1424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6674:76:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6631:119:3" + }, + { + "assignments": [ + 1427 + ], + "declarations": [ + { + "constant": false, + "id": 1427, + "mutability": "mutable", + "name": "proofIdx", + "nameLocation": "6768:8:3", + "nodeType": "VariableDeclaration", + "scope": 1557, + "src": "6760:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1426, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6760:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1429, + "initialValue": { + "hexValue": "30", + "id": 1428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6779:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6760:20:3" + }, + { + "expression": { + "id": 1437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1430, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "6790:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "expression": { + "id": 1434, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1381, + "src": "6811:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6820:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6811:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "6799:11:3", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 1431, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6803:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1432, + "nodeType": "ArrayTypeName", + "src": "6803:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + } + }, + "id": 1436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6799:28:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "src": "6790:37:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1438, + "nodeType": "ExpressionStatement", + "src": "6790:37:3" + }, + { + "body": { + "id": 1555, + "nodeType": "Block", + "src": "6883:1244:3", + "statements": [ + { + "assignments": [ + 1451 + ], + "declarations": [ + { + "constant": false, + "id": 1451, + "mutability": "mutable", + "name": "command", + "nameLocation": "6905:7:3", + "nodeType": "VariableDeclaration", + "scope": 1555, + "src": "6897:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1450, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6897:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1455, + "initialValue": { + "baseExpression": { + "id": 1452, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1381, + "src": "6915:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 1454, + "indexExpression": { + "id": 1453, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "6924:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6915:11:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6897:29:3" + }, + { + "assignments": [ + 1457, + 1459 + ], + "declarations": [ + { + "constant": false, + "id": 1457, + "mutability": "mutable", + "name": "isDynamic", + "nameLocation": "6946:9:3", + "nodeType": "VariableDeclaration", + "scope": 1555, + "src": "6941:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1456, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6941:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1459, + "mutability": "mutable", + "name": "slot", + "nameLocation": "6965:4:3", + "nodeType": "VariableDeclaration", + "scope": 1555, + "src": "6957:12:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1458, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6957:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1465, + "initialValue": { + "arguments": [ + { + "id": 1461, + "name": "command", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1451, + "src": "7007:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1462, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1384, + "src": "7032:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 1463, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7059:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + ], + "id": 1460, + "name": "computeFirstSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1010, + "src": "6973:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bool_$_t_uint256_$", + "typeString": "function (bytes32,bytes memory[] memory,bytes memory[] memory) pure returns (bool,uint256)" + } + }, + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6973:106:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6940:139:3" + }, + { + "condition": { + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7097:10:3", + "subExpression": { + "id": 1466, + "name": "isDynamic", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1457, + "src": "7098:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1553, + "nodeType": "Block", + "src": "7907:210:3", + "statements": [ + { + "expression": { + "id": 1551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "baseExpression": { + "id": 1540, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7926:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1542, + "indexExpression": { + "id": 1541, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "7933:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7926:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1543, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7937:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1544, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "7925:21:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bytes memory,uint256)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 1546, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1459, + "src": "7986:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1547, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "8012:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1548, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "8042:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + { + "id": 1549, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "8077:7:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + }, + { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + ], + "id": 1545, + "name": "getDynamicValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1174, + "src": "7949:15:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$_t_struct$_Account_$1774_memory_ptr_$returns$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "function (uint256,uint256,struct StorageProofStruct memory[] memory,struct SparseMerkleProof.Account memory) pure returns (bytes memory,uint256)" + } + }, + "id": 1550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7949:153:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bytes memory,uint256)" + } + }, + "src": "7925:177:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1552, + "nodeType": "ExpressionStatement", + "src": "7925:177:3" + } + ] + }, + "id": 1554, + "nodeType": "IfStatement", + "src": "7093:1024:3", + "trueBody": { + "id": 1539, + "nodeType": "Block", + "src": "7109:792:3", + "statements": [ + { + "condition": { + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7131:36:3", + "subExpression": { + "expression": { + "baseExpression": { + "id": 1468, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "7132:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1470, + "indexExpression": { + "id": 1469, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7146:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7132:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1471, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7156:11:3", + "memberName": "initialized", + "nodeType": "MemberAccess", + "referencedDeclaration": 834, + "src": "7132:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1537, + "nodeType": "Block", + "src": "7273:614:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1487, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "7339:7:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + { + "expression": { + "baseExpression": { + "id": 1488, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "7372:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1490, + "indexExpression": { + "id": 1489, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7386:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7372:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1491, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7396:9:3", + "memberName": "leafIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "7372:33:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1492, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "7431:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1494, + "indexExpression": { + "id": 1493, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7445:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7431:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1495, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7455:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "7431:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1496, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7461:17:3", + "memberName": "proofRelatedNodes", + "nodeType": "MemberAccess", + "referencedDeclaration": 816, + "src": "7431:47:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "expression": { + "expression": { + "baseExpression": { + "id": 1497, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "7504:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1499, + "indexExpression": { + "id": 1498, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7518:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7504:23:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1500, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7528:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "7504:29:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1501, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7534:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "7504:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 1504, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1459, + "src": "7573:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1503, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7565:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 1502, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7565:7:3", + "typeDescriptions": {} + } + }, + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7565:13:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1486, + "name": "verifyStorageProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1376, + "src": "7295:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_Account_$1774_memory_ptr_$_t_uint256_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (struct SparseMerkleProof.Account memory,uint256,bytes memory[] memory,bytes32,bytes32) pure" + } + }, + "id": 1506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7295:305:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1507, + "nodeType": "ExpressionStatement", + "src": "7295:305:3" + }, + { + "expression": { + "id": 1520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1508, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7623:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1510, + "indexExpression": { + "id": 1509, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "7630:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7623:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 1513, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1393, + "src": "7671:13:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + }, + "id": 1516, + "indexExpression": { + "id": 1515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "7685:10:3", + "subExpression": { + "id": 1514, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7685:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7671:25:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_memory_ptr", + "typeString": "struct StorageProofStruct memory" + } + }, + "id": 1517, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7697:5:3", + "memberName": "proof", + "nodeType": "MemberAccess", + "referencedDeclaration": 832, + "src": "7671:31:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProof_$817_memory_ptr", + "typeString": "struct StorageProof memory" + } + }, + "id": 1518, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7703:5:3", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 813, + "src": "7671:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1511, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7635:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1512, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7639:6:3", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7635:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7635:95:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "7623:107:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1521, + "nodeType": "ExpressionStatement", + "src": "7623:107:3" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1522, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7757:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1524, + "indexExpression": { + "id": 1523, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "7764:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7757:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7767:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7757:16:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3332", + "id": 1526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7776:2:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "7757:21:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1536, + "nodeType": "IfStatement", + "src": "7753:116:3", + "trueBody": { + "id": 1535, + "nodeType": "Block", + "src": "7780:89:3", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "expression": { + "baseExpression": { + "id": 1529, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7829:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1531, + "indexExpression": { + "id": 1530, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "7836:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7829:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7839:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7829:16:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1528, + "name": "InvalidSlotSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 852, + "src": "7813:15:3", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$returns$__$", + "typeString": "function (uint256) pure" + } + }, + "id": 1533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7813:33:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1534, + "nodeType": "RevertStatement", + "src": "7806:40:3" + } + ] + } + } + ] + }, + "id": 1538, + "nodeType": "IfStatement", + "src": "7127:760:3", + "trueBody": { + "id": 1485, + "nodeType": "Block", + "src": "7169:98:3", + "statements": [ + { + "expression": { + "id": 1480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1473, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "7191:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 1475, + "indexExpression": { + "id": 1474, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "7198:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7191:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "30", + "id": 1478, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7214:1:3", + "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" + } + ], + "expression": { + "id": 1476, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7203:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7207:6:3", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7203:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7203:13:3", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "7191:25:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1481, + "nodeType": "ExpressionStatement", + "src": "7191:25:3" + }, + { + "expression": { + "id": 1483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "7238:10:3", + "subExpression": { + "id": 1482, + "name": "proofIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "7238:8:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1484, + "nodeType": "ExpressionStatement", + "src": "7238:10:3" + } + ] + } + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1443, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "6857:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1444, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1381, + "src": "6861:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 1445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6870:6:3", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6861:15:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6857:19:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1556, + "initializationExpression": { + "assignments": [ + 1440 + ], + "declarations": [ + { + "constant": false, + "id": 1440, + "mutability": "mutable", + "name": "i", + "nameLocation": "6850:1:3", + "nodeType": "VariableDeclaration", + "scope": 1556, + "src": "6842:9:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1439, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6842:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1442, + "initialValue": { + "hexValue": "30", + "id": 1441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6854:1:3", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6842:13:3" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 1448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "6878:3:3", + "subExpression": { + "id": 1447, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1440, + "src": "6878:1:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1449, + "nodeType": "ExpressionStatement", + "src": "6878:3:3" + }, + "nodeType": "ForStatement", + "src": "6837:1290:3" + } + ] + }, + "id": 1558, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getStorageValues", + "nameLocation": "6119:16:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1394, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1378, + "mutability": "mutable", + "name": "target", + "nameLocation": "6153:6:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6145:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6145:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1381, + "mutability": "mutable", + "name": "commands", + "nameLocation": "6186:8:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6169:25:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 1379, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6169:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 1380, + "nodeType": "ArrayTypeName", + "src": "6169:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1384, + "mutability": "mutable", + "name": "constants", + "nameLocation": "6219:9:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6204:24:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1382, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6204:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1383, + "nodeType": "ArrayTypeName", + "src": "6204:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1386, + "mutability": "mutable", + "name": "stateRoot", + "nameLocation": "6246:9:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6238:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1385, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6238:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1389, + "mutability": "mutable", + "name": "accountProof", + "nameLocation": "6291:12:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6265:38:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct" + }, + "typeName": { + "id": 1388, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1387, + "name": "AccountProofStruct", + "nameLocations": [ + "6265:18:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 825, + "src": "6265:18:3" + }, + "referencedDeclaration": 825, + "src": "6265:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_storage_ptr", + "typeString": "struct AccountProofStruct" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1393, + "mutability": "mutable", + "name": "storageProofs", + "nameLocation": "6341:13:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6313:41:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct[]" + }, + "typeName": { + "baseType": { + "id": 1391, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1390, + "name": "StorageProofStruct", + "nameLocations": [ + "6313:18:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 835, + "src": "6313:18:3" + }, + "referencedDeclaration": 835, + "src": "6313:18:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_storage_ptr", + "typeString": "struct StorageProofStruct" + } + }, + "id": 1392, + "nodeType": "ArrayTypeName", + "src": "6313:20:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_storage_$dyn_storage_ptr", + "typeString": "struct StorageProofStruct[]" + } + }, + "visibility": "internal" + } + ], + "src": "6135:225:3" + }, + "returnParameters": { + "id": 1398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1397, + "mutability": "mutable", + "name": "values", + "nameLocation": "6399:6:3", + "nodeType": "VariableDeclaration", + "scope": 1558, + "src": "6384:21:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1395, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6384:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1396, + "nodeType": "ArrayTypeName", + "src": "6384:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "6383:23:3" + }, + "scope": 1559, + "src": "6110:2023:3", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 1560, + "src": "627:7508:3", + "usedErrors": [ + 848, + 852 + ], + "usedEvents": [] + } + ], + "src": "32:8104:3" + }, + "id": 3 + }, + "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol", + "exportedSymbols": { + "AccountProofStruct": [ + 825 + ], + "IEVMVerifier": [ + 798 + ], + "IRollup": [ + 1580 + ], + "LineaProofHelper": [ + 1559 + ], + "LineaSparseProofVerifier": [ + 1710 + ], + "StorageProofStruct": [ + 835 + ] + }, + "id": 1711, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1561, + "literals": [ + "solidity", + "^", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "32:24:4" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "file": "./IEVMVerifier.sol", + "id": 1563, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1711, + "sourceUnit": 799, + "src": "58:48:4", + "symbolAliases": [ + { + "foreign": { + "id": 1562, + "name": "IEVMVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 798, + "src": "66:12:4", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/LineaProofHelper.sol", + "file": "./LineaProofHelper.sol", + "id": 1567, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1711, + "sourceUnit": 1560, + "src": "107:96:4", + "symbolAliases": [ + { + "foreign": { + "id": 1564, + "name": "StorageProofStruct", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 835, + "src": "115:18:4", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 1565, + "name": "AccountProofStruct", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 825, + "src": "135:18:4", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 1566, + "name": "LineaProofHelper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1559, + "src": "155:16:4", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IRollup", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 1580, + "linearizedBaseContracts": [ + 1580 + ], + "name": "IRollup", + "nameLocation": "215:7:4", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "8be745d1", + "id": 1574, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "stateRootHashes", + "nameLocation": "238:15:4", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1569, + "mutability": "mutable", + "name": "l2blockNumber", + "nameLocation": "271:13:4", + "nodeType": "VariableDeclaration", + "scope": 1574, + "src": "263:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1568, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "263:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "253:37:4" + }, + "returnParameters": { + "id": 1573, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1572, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1574, + "src": "314:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1571, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "314:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "313:9:4" + }, + "scope": 1580, + "src": "229:94:4", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "695378f5", + "id": 1579, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "currentL2BlockNumber", + "nameLocation": "338:20:4", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1575, + "nodeType": "ParameterList", + "parameters": [], + "src": "358:2:4" + }, + "returnParameters": { + "id": 1578, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1577, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1579, + "src": "384:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1576, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "384:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "383:9:4" + }, + "scope": 1580, + "src": "329:64:4", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1711, + "src": "205:190:4", + "usedErrors": [], + "usedEvents": [] + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1581, + "name": "IEVMVerifier", + "nameLocations": [ + "434:12:4" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "434:12:4" + }, + "id": 1582, + "nodeType": "InheritanceSpecifier", + "src": "434:12:4" + } + ], + "canonicalName": "LineaSparseProofVerifier", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 1710, + "linearizedBaseContracts": [ + 1710, + 798 + ], + "name": "LineaSparseProofVerifier", + "nameLocation": "406:24:4", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "f36c452e", + "id": 1585, + "mutability": "mutable", + "name": "_gatewayURLs", + "nameLocation": "469:12:4", + "nodeType": "VariableDeclaration", + "scope": 1710, + "src": "453:28:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 1583, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "453:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 1584, + "nodeType": "ArrayTypeName", + "src": "453:8:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "a183bada", + "id": 1587, + "mutability": "mutable", + "name": "_rollup", + "nameLocation": "502:7:4", + "nodeType": "VariableDeclaration", + "scope": 1710, + "src": "487:22:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "487:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 1603, + "nodeType": "Block", + "src": "566:62:4", + "statements": [ + { + "expression": { + "id": 1597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1595, + "name": "_gatewayURLs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1585, + "src": "576:12:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string storage ref[] storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1596, + "name": "urls", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1590, + "src": "591:4:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "src": "576:19:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string storage ref[] storage ref" + } + }, + "id": 1598, + "nodeType": "ExpressionStatement", + "src": "576:19:4" + }, + { + "expression": { + "id": 1601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1599, + "name": "_rollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1587, + "src": "605:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1600, + "name": "rollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1592, + "src": "615:6:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "605:16:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1602, + "nodeType": "ExpressionStatement", + "src": "605:16:4" + } + ] + }, + "id": 1604, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1590, + "mutability": "mutable", + "name": "urls", + "nameLocation": "544:4:4", + "nodeType": "VariableDeclaration", + "scope": 1604, + "src": "528:20:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 1588, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "528:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 1589, + "nodeType": "ArrayTypeName", + "src": "528:8:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1592, + "mutability": "mutable", + "name": "rollup", + "nameLocation": "558:6:4", + "nodeType": "VariableDeclaration", + "scope": 1604, + "src": "550:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1591, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "550:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "527:38:4" + }, + "returnParameters": { + "id": 1594, + "nodeType": "ParameterList", + "parameters": [], + "src": "566:0:4" + }, + "scope": 1710, + "src": "516:112:4", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 797 + ], + "body": { + "id": 1698, + "nodeType": "Block", + "src": "877:1193:4", + "statements": [ + { + "assignments": [ + 1623, + 1626, + 1630 + ], + "declarations": [ + { + "constant": false, + "id": 1623, + "mutability": "mutable", + "name": "blockNo", + "nameLocation": "909:7:4", + "nodeType": "VariableDeclaration", + "scope": 1698, + "src": "901:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1622, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "901:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1626, + "mutability": "mutable", + "name": "accountProof", + "nameLocation": "956:12:4", + "nodeType": "VariableDeclaration", + "scope": 1698, + "src": "930:38:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct" + }, + "typeName": { + "id": 1625, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1624, + "name": "AccountProofStruct", + "nameLocations": [ + "930:18:4" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 825, + "src": "930:18:4" + }, + "referencedDeclaration": 825, + "src": "930:18:4", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_storage_ptr", + "typeString": "struct AccountProofStruct" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1630, + "mutability": "mutable", + "name": "storageProofs", + "nameLocation": "1010:13:4", + "nodeType": "VariableDeclaration", + "scope": 1698, + "src": "982:41:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct[]" + }, + "typeName": { + "baseType": { + "id": 1628, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1627, + "name": "StorageProofStruct", + "nameLocations": [ + "982:18:4" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 835, + "src": "982:18:4" + }, + "referencedDeclaration": 835, + "src": "982:18:4", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StorageProofStruct_$835_storage_ptr", + "typeString": "struct StorageProofStruct" + } + }, + "id": 1629, + "nodeType": "ArrayTypeName", + "src": "982:20:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_storage_$dyn_storage_ptr", + "typeString": "struct StorageProofStruct[]" + } + }, + "visibility": "internal" + } + ], + "id": 1641, + "initialValue": { + "arguments": [ + { + "id": 1633, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1614, + "src": "1064:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 1635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1088:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 1634, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1088:7:4", + "typeDescriptions": {} + } + }, + { + "id": 1636, + "name": "AccountProofStruct", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 825, + "src": "1097:18:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_AccountProofStruct_$825_storage_ptr_$", + "typeString": "type(struct AccountProofStruct storage pointer)" + } + }, + { + "baseExpression": { + "id": 1637, + "name": "StorageProofStruct", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 835, + "src": "1117:18:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_StorageProofStruct_$835_storage_ptr_$", + "typeString": "type(struct StorageProofStruct storage pointer)" + } + }, + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1117:20:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$", + "typeString": "type(struct StorageProofStruct memory[] memory)" + } + } + ], + "id": 1639, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1087:51:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_type$_t_uint256_$_$_t_type$_t_struct$_AccountProofStruct_$825_storage_ptr_$_$_t_type$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$_$", + "typeString": "tuple(type(uint256),type(struct AccountProofStruct storage pointer),type(struct StorageProofStruct memory[] memory))" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_tuple$_t_type$_t_uint256_$_$_t_type$_t_struct$_AccountProofStruct_$825_storage_ptr_$_$_t_type$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$_$", + "typeString": "tuple(type(uint256),type(struct AccountProofStruct storage pointer),type(struct StorageProofStruct memory[] memory))" + } + ], + "expression": { + "id": 1631, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1036:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1040:6:4", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "1036:10:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1036:116:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_struct$_AccountProofStruct_$825_memory_ptr_$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$", + "typeString": "tuple(uint256,struct AccountProofStruct memory,struct StorageProofStruct memory[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "887:265:4" + }, + { + "assignments": [ + 1643 + ], + "declarations": [ + { + "constant": false, + "id": 1643, + "mutability": "mutable", + "name": "currentL2BlockNumber", + "nameLocation": "1268:20:4", + "nodeType": "VariableDeclaration", + "scope": 1698, + "src": "1260:28:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1260:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1649, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 1645, + "name": "_rollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1587, + "src": "1299:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1644, + "name": "IRollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1580, + "src": "1291:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IRollup_$1580_$", + "typeString": "type(contract IRollup)" + } + }, + "id": 1646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1291:16:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IRollup_$1580", + "typeString": "contract IRollup" + } + }, + "id": 1647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1308:20:4", + "memberName": "currentL2BlockNumber", + "nodeType": "MemberAccess", + "referencedDeclaration": 1579, + "src": "1291:37:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" + } + }, + "id": 1648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1291:39:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1260:70:4" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1651, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1643, + "src": "1362:20:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1652, + "name": "acceptedL2BlockRangeLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1616, + "src": "1386:26:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1362:50:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1654, + "name": "blockNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1623, + "src": "1432:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 1655, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1643, + "src": "1443:20:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1432:31:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1362:101:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1658, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1361:103:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1659, + "name": "blockNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1623, + "src": "1485:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1660, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1643, + "src": "1496:20:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1661, + "name": "acceptedL2BlockRangeLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1616, + "src": "1519:26:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1496:49:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1485:60:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1664, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1484:62:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1361:185:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656153706172736550726f6f6656657269666965723a20626c6f636b206e6f7420696e2072616e6765206163636570746564", + "id": 1666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1560:55:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c", + "typeString": "literal_string \"LineaSparseProofVerifier: block not in range accepted\"" + }, + "value": "LineaSparseProofVerifier: block not in range accepted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c", + "typeString": "literal_string \"LineaSparseProofVerifier: block not in range accepted\"" + } + ], + "id": 1650, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1340:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1340:285:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1668, + "nodeType": "ExpressionStatement", + "src": "1340:285:4" + }, + { + "assignments": [ + 1670 + ], + "declarations": [ + { + "constant": false, + "id": 1670, + "mutability": "mutable", + "name": "stateRoot", + "nameLocation": "1644:9:4", + "nodeType": "VariableDeclaration", + "scope": 1698, + "src": "1636:17:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1669, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1636:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1677, + "initialValue": { + "arguments": [ + { + "id": 1675, + "name": "blockNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1623, + "src": "1689:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 1672, + "name": "_rollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1587, + "src": "1664:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1671, + "name": "IRollup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1580, + "src": "1656:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IRollup_$1580_$", + "typeString": "type(contract IRollup)" + } + }, + "id": 1673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1656:16:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IRollup_$1580", + "typeString": "contract IRollup" + } + }, + "id": 1674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1673:15:4", + "memberName": "stateRootHashes", + "nodeType": "MemberAccess", + "referencedDeclaration": 1574, + "src": "1656:32:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (uint256) view external returns (bytes32)" + } + }, + "id": 1676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1656:41:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1636:61:4" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1679, + "name": "stateRoot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1670, + "src": "1728:9:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1749:1:4", + "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": 1681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1741:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 1680, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1741:7:4", + "typeDescriptions": {} + } + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1741:10:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "1728:23:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c696e656153706172736550726f6f6656657269666965723a20696e76616c696420737461746520726f6f74", + "id": 1685, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1765:46:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697", + "typeString": "literal_string \"LineaSparseProofVerifier: invalid state root\"" + }, + "value": "LineaSparseProofVerifier: invalid state root" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697", + "typeString": "literal_string \"LineaSparseProofVerifier: invalid state root\"" + } + ], + "id": 1678, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1707:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1707:114:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1687, + "nodeType": "ExpressionStatement", + "src": "1707:114:4" + }, + { + "expression": { + "arguments": [ + { + "id": 1690, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "1902:6:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1691, + "name": "commands", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "1926:8:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 1692, + "name": "constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1612, + "src": "1952:9:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + { + "id": 1693, + "name": "stateRoot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1670, + "src": "1979:9:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1694, + "name": "accountProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1626, + "src": "2006:12:4", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + } + }, + { + "id": 1695, + "name": "storageProofs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1630, + "src": "2036:13:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_struct$_AccountProofStruct_$825_memory_ptr", + "typeString": "struct AccountProofStruct memory" + }, + { + "typeIdentifier": "t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "typeString": "struct StorageProofStruct memory[] memory" + } + ], + "expression": { + "id": 1688, + "name": "LineaProofHelper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1559, + "src": "1851:16:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_LineaProofHelper_$1559_$", + "typeString": "type(library LineaProofHelper)" + } + }, + "id": 1689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1868:16:4", + "memberName": "getStorageValues", + "nodeType": "MemberAccess", + "referencedDeclaration": 1558, + "src": "1851:33:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_struct$_AccountProofStruct_$825_memory_ptr_$_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (address,bytes32[] memory,bytes memory[] memory,bytes32,struct AccountProofStruct memory,struct StorageProofStruct memory[] memory) pure returns (bytes memory[] memory)" + } + }, + "id": 1696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1851:212:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "functionReturnParameters": 1621, + "id": 1697, + "nodeType": "Return", + "src": "1832:231:4" + } + ] + }, + "functionSelector": "c51ca02a", + "id": 1699, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getStorageValues", + "nameLocation": "643:16:4", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1617, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1606, + "mutability": "mutable", + "name": "target", + "nameLocation": "677:6:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "669:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1605, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "669:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1609, + "mutability": "mutable", + "name": "commands", + "nameLocation": "710:8:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "693:25:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 1607, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "693:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 1608, + "nodeType": "ArrayTypeName", + "src": "693:9:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1612, + "mutability": "mutable", + "name": "constants", + "nameLocation": "743:9:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "728:24:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1610, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "728:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1611, + "nodeType": "ArrayTypeName", + "src": "728:7:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1614, + "mutability": "mutable", + "name": "proof", + "nameLocation": "775:5:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "762:18:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1613, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "762:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1616, + "mutability": "mutable", + "name": "acceptedL2BlockRangeLength", + "nameLocation": "798:26:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "790:34:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1615, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "790:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "659:171:4" + }, + "returnParameters": { + "id": 1621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1620, + "mutability": "mutable", + "name": "values", + "nameLocation": "869:6:4", + "nodeType": "VariableDeclaration", + "scope": 1699, + "src": "854:21:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1618, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "854:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1619, + "nodeType": "ArrayTypeName", + "src": "854:7:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "853:23:4" + }, + "scope": 1710, + "src": "634:1436:4", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 779 + ], + "body": { + "id": 1708, + "nodeType": "Block", + "src": "2148:36:4", + "statements": [ + { + "expression": { + "id": 1706, + "name": "_gatewayURLs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1585, + "src": "2165:12:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string storage ref[] storage ref" + } + }, + "functionReturnParameters": 1705, + "id": 1707, + "nodeType": "Return", + "src": "2158:19:4" + } + ] + }, + "functionSelector": "b50f2fbc", + "id": 1709, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "gatewayURLs", + "nameLocation": "2085:11:4", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 1701, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2113:8:4" + }, + "parameters": { + "id": 1700, + "nodeType": "ParameterList", + "parameters": [], + "src": "2096:2:4" + }, + "returnParameters": { + "id": 1705, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1704, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1709, + "src": "2131:15:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 1702, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2131:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 1703, + "nodeType": "ArrayTypeName", + "src": "2131:8:4", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "src": "2130:17:4" + }, + "scope": 1710, + "src": "2076:108:4", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1711, + "src": "397:1789:4", + "usedErrors": [ + 848, + 852 + ], + "usedEvents": [] + } + ], + "src": "32:2155:4" + }, + "id": 4 + }, + "@consensys/linea-state-verifier/contracts/lib/Mimc.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/lib/Mimc.sol", + "exportedSymbols": { + "Mimc": [ + 1753 + ] + }, + "id": 1754, + "license": "Apache-2.0", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1712, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "680:23:5" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "Mimc", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 1713, + "nodeType": "StructuredDocumentation", + "src": "705:140:5", + "text": " @title Library to perform MiMC hashing\n @author ConsenSys Software Inc.\n @custom:security-contact security-report@linea.build" + }, + "fullyImplemented": true, + "id": 1753, + "linearizedBaseContracts": [ + 1753 + ], + "name": "Mimc", + "nameLocation": "854:4:5", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 1714, + "nodeType": "StructuredDocumentation", + "src": "865:55:5", + "text": " Thrown when the data is not provided" + }, + "errorSelector": "731eab57", + "id": 1716, + "name": "DataMissing", + "nameLocation": "931:11:5", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1715, + "nodeType": "ParameterList", + "parameters": [], + "src": "942:2:5" + }, + "src": "925:20:5" + }, + { + "documentation": { + "id": 1717, + "nodeType": "StructuredDocumentation", + "src": "951:71:5", + "text": " Thrown when the data is not purely in 32 byte chunks" + }, + "errorSelector": "c2cab26c", + "id": 1719, + "name": "DataIsNotMod32", + "nameLocation": "1033:14:5", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1718, + "nodeType": "ParameterList", + "parameters": [], + "src": "1047:2:5" + }, + "src": "1027:23:5" + }, + { + "constant": true, + "id": 1722, + "mutability": "constant", + "name": "FR_FIELD", + "nameLocation": "1073:8:5", + "nodeType": "VariableDeclaration", + "scope": 1753, + "src": "1056:112:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1720, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1056:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "38343434343631373439343238333730343234323438383234393338373831353436353331333735383939333335313534303633383237393335323333343535393137343039323339303431", + "id": 1721, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1092:76:5", + "typeDescriptions": { + "typeIdentifier": "t_rational_8444461749428370424248824938781546531375899335154063827935233455917409239041_by_1", + "typeString": "int_const 8444...(68 digits omitted)...9041" + }, + "value": "8444461749428370424248824938781546531375899335154063827935233455917409239041" + }, + "visibility": "internal" + }, + { + "body": { + "id": 1751, + "nodeType": "Block", + "src": "1503:35749:5", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1730, + "name": "_msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1725, + "src": "1517:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1522:6:5", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1517:11:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 1732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1532:1:5", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1517:16:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1738, + "nodeType": "IfStatement", + "src": "1513:67:5", + "trueBody": { + "id": 1737, + "nodeType": "Block", + "src": "1535:45:5", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1734, + "name": "DataMissing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1716, + "src": "1556:11:5", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1556:13:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1736, + "nodeType": "RevertStatement", + "src": "1549:20:5" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1739, + "name": "_msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1725, + "src": "1594:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1599:6:5", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1594:11:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "30783230", + "id": 1741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1608:4:5", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "0x20" + }, + "src": "1594:18:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 1743, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1616:1:5", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1594:23:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1749, + "nodeType": "IfStatement", + "src": "1590:77:5", + "trueBody": { + "id": 1748, + "nodeType": "Block", + "src": "1619:48:5", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1745, + "name": "DataIsNotMod32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1719, + "src": "1640:14:5", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1640:16:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1747, + "nodeType": "RevertStatement", + "src": "1633:23:5" + } + ] + } + }, + { + "AST": { + "nativeSrc": "1686:35560:5", + "nodeType": "YulBlock", + "src": "1686:35560:5", + "statements": [ + { + "nativeSrc": "1700:47:5", + "nodeType": "YulVariableDeclaration", + "src": "1700:47:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_msg.length", + "nativeSrc": "1722:11:5", + "nodeType": "YulIdentifier", + "src": "1722:11:5" + }, + { + "kind": "number", + "nativeSrc": "1735:4:5", + "nodeType": "YulLiteral", + "src": "1735:4:5", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1718:3:5", + "nodeType": "YulIdentifier", + "src": "1718:3:5" + }, + "nativeSrc": "1718:22:5", + "nodeType": "YulFunctionCall", + "src": "1718:22:5" + }, + { + "kind": "number", + "nativeSrc": "1742:4:5", + "nodeType": "YulLiteral", + "src": "1742:4:5", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "1714:3:5", + "nodeType": "YulIdentifier", + "src": "1714:3:5" + }, + "nativeSrc": "1714:33:5", + "nodeType": "YulFunctionCall", + "src": "1714:33:5" + }, + "variables": [ + { + "name": "chunks", + "nativeSrc": "1704:6:5", + "nodeType": "YulTypedName", + "src": "1704:6:5", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1869:338:5", + "nodeType": "YulBlock", + "src": "1869:338:5", + "statements": [ + { + "nativeSrc": "1887:44:5", + "nodeType": "YulVariableDeclaration", + "src": "1887:44:5", + "value": { + "arguments": [ + { + "name": "_msg.offset", + "nativeSrc": "1905:11:5", + "nodeType": "YulIdentifier", + "src": "1905:11:5" + }, + { + "arguments": [ + { + "name": "i", + "nativeSrc": "1922:1:5", + "nodeType": "YulIdentifier", + "src": "1922:1:5" + }, + { + "kind": "number", + "nativeSrc": "1925:4:5", + "nodeType": "YulLiteral", + "src": "1925:4:5", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "1918:3:5", + "nodeType": "YulIdentifier", + "src": "1918:3:5" + }, + "nativeSrc": "1918:12:5", + "nodeType": "YulFunctionCall", + "src": "1918:12:5" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1901:3:5", + "nodeType": "YulIdentifier", + "src": "1901:3:5" + }, + "nativeSrc": "1901:30:5", + "nodeType": "YulFunctionCall", + "src": "1901:30:5" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1891:6:5", + "nodeType": "YulTypedName", + "src": "1891:6:5", + "type": "" + } + ] + }, + { + "nativeSrc": "1948:33:5", + "nodeType": "YulVariableDeclaration", + "src": "1948:33:5", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1974:6:5", + "nodeType": "YulIdentifier", + "src": "1974:6:5" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1961:12:5", + "nodeType": "YulIdentifier", + "src": "1961:12:5" + }, + "nativeSrc": "1961:20:5", + "nodeType": "YulFunctionCall", + "src": "1961:20:5" + }, + "variables": [ + { + "name": "chunk", + "nativeSrc": "1952:5:5", + "nodeType": "YulTypedName", + "src": "1952:5:5", + "type": "" + } + ] + }, + { + "nativeSrc": "1999:33:5", + "nodeType": "YulVariableDeclaration", + "src": "1999:33:5", + "value": { + "arguments": [ + { + "name": "mimcHash", + "nativeSrc": "2016:8:5", + "nodeType": "YulIdentifier", + "src": "2016:8:5" + }, + { + "name": "chunk", + "nativeSrc": "2026:5:5", + "nodeType": "YulIdentifier", + "src": "2026:5:5" + } + ], + "functionName": { + "name": "encrypt", + "nativeSrc": "2008:7:5", + "nodeType": "YulIdentifier", + "src": "2008:7:5" + }, + "nativeSrc": "2008:24:5", + "nodeType": "YulFunctionCall", + "src": "2008:24:5" + }, + "variables": [ + { + "name": "r", + "nativeSrc": "2003:1:5", + "nodeType": "YulTypedName", + "src": "2003:1:5", + "type": "" + } + ] + }, + { + "nativeSrc": "2049:144:5", + "nodeType": "YulAssignment", + "src": "2049:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "mimcHash", + "nativeSrc": "2096:8:5", + "nodeType": "YulIdentifier", + "src": "2096:8:5" + }, + { + "name": "r", + "nativeSrc": "2106:1:5", + "nodeType": "YulIdentifier", + "src": "2106:1:5" + }, + { + "name": "FR_FIELD", + "nativeSrc": "2109:8:5", + "nodeType": "YulIdentifier", + "src": "2109:8:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2089:6:5", + "nodeType": "YulIdentifier", + "src": "2089:6:5" + }, + "nativeSrc": "2089:29:5", + "nodeType": "YulFunctionCall", + "src": "2089:29:5" + }, + { + "name": "chunk", + "nativeSrc": "2140:5:5", + "nodeType": "YulIdentifier", + "src": "2140:5:5" + }, + { + "name": "FR_FIELD", + "nativeSrc": "2167:8:5", + "nodeType": "YulIdentifier", + "src": "2167:8:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2061:6:5", + "nodeType": "YulIdentifier", + "src": "2061:6:5" + }, + "nativeSrc": "2061:132:5", + "nodeType": "YulFunctionCall", + "src": "2061:132:5" + }, + "variableNames": [ + { + "name": "mimcHash", + "nativeSrc": "2049:8:5", + "nodeType": "YulIdentifier", + "src": "2049:8:5" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1811:1:5", + "nodeType": "YulIdentifier", + "src": "1811:1:5" + }, + { + "name": "chunks", + "nativeSrc": "1814:6:5", + "nodeType": "YulIdentifier", + "src": "1814:6:5" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1808:2:5", + "nodeType": "YulIdentifier", + "src": "1808:2:5" + }, + "nativeSrc": "1808:13:5", + "nodeType": "YulFunctionCall", + "src": "1808:13:5" + }, + "nativeSrc": "1761:446:5", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1822:46:5", + "nodeType": "YulBlock", + "src": "1822:46:5", + "statements": [ + { + "nativeSrc": "1840:14:5", + "nodeType": "YulAssignment", + "src": "1840:14:5", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1849:1:5", + "nodeType": "YulIdentifier", + "src": "1849:1:5" + }, + { + "kind": "number", + "nativeSrc": "1852:1:5", + "nodeType": "YulLiteral", + "src": "1852:1:5", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1845:3:5", + "nodeType": "YulIdentifier", + "src": "1845:3:5" + }, + "nativeSrc": "1845:9:5", + "nodeType": "YulFunctionCall", + "src": "1845:9:5" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1840:1:5", + "nodeType": "YulIdentifier", + "src": "1840:1:5" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1765:42:5", + "nodeType": "YulBlock", + "src": "1765:42:5", + "statements": [ + { + "nativeSrc": "1783:10:5", + "nodeType": "YulVariableDeclaration", + "src": "1783:10:5", + "value": { + "kind": "number", + "nativeSrc": "1792:1:5", + "nodeType": "YulLiteral", + "src": "1792:1:5", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1787:1:5", + "nodeType": "YulTypedName", + "src": "1787:1:5", + "type": "" + } + ] + } + ] + }, + "src": "1761:446:5" + }, + { + "body": { + "nativeSrc": "2258:34978:5", + "nodeType": "YulBlock", + "src": "2258:34978:5", + "statements": [ + { + "nativeSrc": "2276:23:5", + "nodeType": "YulVariableDeclaration", + "src": "2276:23:5", + "value": { + "name": "FR_FIELD", + "nativeSrc": "2291:8:5", + "nodeType": "YulIdentifier", + "src": "2291:8:5" + }, + "variables": [ + { + "name": "frField", + "nativeSrc": "2280:7:5", + "nodeType": "YulTypedName", + "src": "2280:7:5", + "type": "" + } + ] + }, + { + "nativeSrc": "2316:15:5", + "nodeType": "YulVariableDeclaration", + "src": "2316:15:5", + "value": { + "kind": "number", + "nativeSrc": "2330:1:5", + "nodeType": "YulLiteral", + "src": "2330:1:5", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "tmpSum", + "nativeSrc": "2320:6:5", + "nodeType": "YulTypedName", + "src": "2320:6:5", + "type": "" + } + ] + }, + { + "nativeSrc": "2349:208:5", + "nodeType": "YulAssignment", + "src": "2349:208:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "chunk", + "nativeSrc": "2394:5:5", + "nodeType": "YulIdentifier", + "src": "2394:5:5" + }, + { + "name": "h", + "nativeSrc": "2401:1:5", + "nodeType": "YulIdentifier", + "src": "2401:1:5" + }, + { + "name": "frField", + "nativeSrc": "2404:7:5", + "nodeType": "YulIdentifier", + "src": "2404:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2387:6:5", + "nodeType": "YulIdentifier", + "src": "2387:6:5" + }, + "nativeSrc": "2387:25:5", + "nodeType": "YulFunctionCall", + "src": "2387:25:5" + }, + { + "kind": "number", + "nativeSrc": "2434:76:5", + "nodeType": "YulLiteral", + "src": "2434:76:5", + "type": "", + "value": "6780559962679281898511952483033644312910028090361101779689089025541625982996" + }, + { + "name": "frField", + "nativeSrc": "2532:7:5", + "nodeType": "YulIdentifier", + "src": "2532:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2359:6:5", + "nodeType": "YulIdentifier", + "src": "2359:6:5" + }, + "nativeSrc": "2359:198:5", + "nodeType": "YulFunctionCall", + "src": "2359:198:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "2349:6:5", + "nodeType": "YulIdentifier", + "src": "2349:6:5" + } + ] + }, + { + "nativeSrc": "2574:41:5", + "nodeType": "YulAssignment", + "src": "2574:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "2591:6:5", + "nodeType": "YulIdentifier", + "src": "2591:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "2599:6:5", + "nodeType": "YulIdentifier", + "src": "2599:6:5" + }, + { + "name": "frField", + "nativeSrc": "2607:7:5", + "nodeType": "YulIdentifier", + "src": "2607:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2584:6:5", + "nodeType": "YulIdentifier", + "src": "2584:6:5" + }, + "nativeSrc": "2584:31:5", + "nodeType": "YulFunctionCall", + "src": "2584:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "2574:6:5", + "nodeType": "YulIdentifier", + "src": "2574:6:5" + } + ] + }, + { + "nativeSrc": "2632:41:5", + "nodeType": "YulAssignment", + "src": "2632:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "2649:6:5", + "nodeType": "YulIdentifier", + "src": "2649:6:5" + }, + { + "name": "output", + "nativeSrc": "2657:6:5", + "nodeType": "YulIdentifier", + "src": "2657:6:5" + }, + { + "name": "frField", + "nativeSrc": "2665:7:5", + "nodeType": "YulIdentifier", + "src": "2665:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2642:6:5", + "nodeType": "YulIdentifier", + "src": "2642:6:5" + }, + "nativeSrc": "2642:31:5", + "nodeType": "YulFunctionCall", + "src": "2642:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "2632:6:5", + "nodeType": "YulIdentifier", + "src": "2632:6:5" + } + ] + }, + { + "nativeSrc": "2690:41:5", + "nodeType": "YulAssignment", + "src": "2690:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "2707:6:5", + "nodeType": "YulIdentifier", + "src": "2707:6:5" + }, + { + "name": "output", + "nativeSrc": "2715:6:5", + "nodeType": "YulIdentifier", + "src": "2715:6:5" + }, + { + "name": "frField", + "nativeSrc": "2723:7:5", + "nodeType": "YulIdentifier", + "src": "2723:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2700:6:5", + "nodeType": "YulIdentifier", + "src": "2700:6:5" + }, + "nativeSrc": "2700:31:5", + "nodeType": "YulFunctionCall", + "src": "2700:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "2690:6:5", + "nodeType": "YulIdentifier", + "src": "2690:6:5" + } + ] + }, + { + "nativeSrc": "2748:144:5", + "nodeType": "YulAssignment", + "src": "2748:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "2793:6:5", + "nodeType": "YulIdentifier", + "src": "2793:6:5" + }, + { + "name": "output", + "nativeSrc": "2801:6:5", + "nodeType": "YulIdentifier", + "src": "2801:6:5" + }, + { + "name": "frField", + "nativeSrc": "2809:7:5", + "nodeType": "YulIdentifier", + "src": "2809:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2786:6:5", + "nodeType": "YulIdentifier", + "src": "2786:6:5" + }, + "nativeSrc": "2786:31:5", + "nodeType": "YulFunctionCall", + "src": "2786:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "2839:6:5", + "nodeType": "YulIdentifier", + "src": "2839:6:5" + }, + { + "name": "frField", + "nativeSrc": "2867:7:5", + "nodeType": "YulIdentifier", + "src": "2867:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2758:6:5", + "nodeType": "YulIdentifier", + "src": "2758:6:5" + }, + "nativeSrc": "2758:134:5", + "nodeType": "YulFunctionCall", + "src": "2758:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "2748:6:5", + "nodeType": "YulIdentifier", + "src": "2748:6:5" + } + ] + }, + { + "nativeSrc": "2910:209:5", + "nodeType": "YulAssignment", + "src": "2910:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "2955:6:5", + "nodeType": "YulIdentifier", + "src": "2955:6:5" + }, + { + "name": "h", + "nativeSrc": "2963:1:5", + "nodeType": "YulIdentifier", + "src": "2963:1:5" + }, + { + "name": "frField", + "nativeSrc": "2966:7:5", + "nodeType": "YulIdentifier", + "src": "2966:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2948:6:5", + "nodeType": "YulIdentifier", + "src": "2948:6:5" + }, + "nativeSrc": "2948:26:5", + "nodeType": "YulFunctionCall", + "src": "2948:26:5" + }, + { + "kind": "number", + "nativeSrc": "2996:76:5", + "nodeType": "YulLiteral", + "src": "2996:76:5", + "type": "", + "value": "2327326745520207001136649348523057964841679868424949608370212081331899020358" + }, + { + "name": "frField", + "nativeSrc": "3094:7:5", + "nodeType": "YulIdentifier", + "src": "3094:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "2920:6:5", + "nodeType": "YulIdentifier", + "src": "2920:6:5" + }, + "nativeSrc": "2920:199:5", + "nodeType": "YulFunctionCall", + "src": "2920:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "2910:6:5", + "nodeType": "YulIdentifier", + "src": "2910:6:5" + } + ] + }, + { + "nativeSrc": "3136:41:5", + "nodeType": "YulAssignment", + "src": "3136:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "3153:6:5", + "nodeType": "YulIdentifier", + "src": "3153:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "3161:6:5", + "nodeType": "YulIdentifier", + "src": "3161:6:5" + }, + { + "name": "frField", + "nativeSrc": "3169:7:5", + "nodeType": "YulIdentifier", + "src": "3169:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3146:6:5", + "nodeType": "YulIdentifier", + "src": "3146:6:5" + }, + "nativeSrc": "3146:31:5", + "nodeType": "YulFunctionCall", + "src": "3146:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3136:6:5", + "nodeType": "YulIdentifier", + "src": "3136:6:5" + } + ] + }, + { + "nativeSrc": "3194:41:5", + "nodeType": "YulAssignment", + "src": "3194:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "3211:6:5", + "nodeType": "YulIdentifier", + "src": "3211:6:5" + }, + { + "name": "output", + "nativeSrc": "3219:6:5", + "nodeType": "YulIdentifier", + "src": "3219:6:5" + }, + { + "name": "frField", + "nativeSrc": "3227:7:5", + "nodeType": "YulIdentifier", + "src": "3227:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3204:6:5", + "nodeType": "YulIdentifier", + "src": "3204:6:5" + }, + "nativeSrc": "3204:31:5", + "nodeType": "YulFunctionCall", + "src": "3204:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3194:6:5", + "nodeType": "YulIdentifier", + "src": "3194:6:5" + } + ] + }, + { + "nativeSrc": "3252:41:5", + "nodeType": "YulAssignment", + "src": "3252:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "3269:6:5", + "nodeType": "YulIdentifier", + "src": "3269:6:5" + }, + { + "name": "output", + "nativeSrc": "3277:6:5", + "nodeType": "YulIdentifier", + "src": "3277:6:5" + }, + { + "name": "frField", + "nativeSrc": "3285:7:5", + "nodeType": "YulIdentifier", + "src": "3285:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3262:6:5", + "nodeType": "YulIdentifier", + "src": "3262:6:5" + }, + "nativeSrc": "3262:31:5", + "nodeType": "YulFunctionCall", + "src": "3262:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3252:6:5", + "nodeType": "YulIdentifier", + "src": "3252:6:5" + } + ] + }, + { + "nativeSrc": "3310:144:5", + "nodeType": "YulAssignment", + "src": "3310:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "3355:6:5", + "nodeType": "YulIdentifier", + "src": "3355:6:5" + }, + { + "name": "output", + "nativeSrc": "3363:6:5", + "nodeType": "YulIdentifier", + "src": "3363:6:5" + }, + { + "name": "frField", + "nativeSrc": "3371:7:5", + "nodeType": "YulIdentifier", + "src": "3371:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3348:6:5", + "nodeType": "YulIdentifier", + "src": "3348:6:5" + }, + "nativeSrc": "3348:31:5", + "nodeType": "YulFunctionCall", + "src": "3348:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "3401:6:5", + "nodeType": "YulIdentifier", + "src": "3401:6:5" + }, + { + "name": "frField", + "nativeSrc": "3429:7:5", + "nodeType": "YulIdentifier", + "src": "3429:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3320:6:5", + "nodeType": "YulIdentifier", + "src": "3320:6:5" + }, + "nativeSrc": "3320:134:5", + "nodeType": "YulFunctionCall", + "src": "3320:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3310:6:5", + "nodeType": "YulIdentifier", + "src": "3310:6:5" + } + ] + }, + { + "nativeSrc": "3472:209:5", + "nodeType": "YulAssignment", + "src": "3472:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "3517:6:5", + "nodeType": "YulIdentifier", + "src": "3517:6:5" + }, + { + "name": "h", + "nativeSrc": "3525:1:5", + "nodeType": "YulIdentifier", + "src": "3525:1:5" + }, + { + "name": "frField", + "nativeSrc": "3528:7:5", + "nodeType": "YulIdentifier", + "src": "3528:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "3510:6:5", + "nodeType": "YulIdentifier", + "src": "3510:6:5" + }, + "nativeSrc": "3510:26:5", + "nodeType": "YulFunctionCall", + "src": "3510:26:5" + }, + { + "kind": "number", + "nativeSrc": "3558:76:5", + "nodeType": "YulLiteral", + "src": "3558:76:5", + "type": "", + "value": "6201177823658417253260885485467023993767823924255470286063250782233002635405" + }, + { + "name": "frField", + "nativeSrc": "3656:7:5", + "nodeType": "YulIdentifier", + "src": "3656:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "3482:6:5", + "nodeType": "YulIdentifier", + "src": "3482:6:5" + }, + "nativeSrc": "3482:199:5", + "nodeType": "YulFunctionCall", + "src": "3482:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "3472:6:5", + "nodeType": "YulIdentifier", + "src": "3472:6:5" + } + ] + }, + { + "nativeSrc": "3698:41:5", + "nodeType": "YulAssignment", + "src": "3698:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "3715:6:5", + "nodeType": "YulIdentifier", + "src": "3715:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "3723:6:5", + "nodeType": "YulIdentifier", + "src": "3723:6:5" + }, + { + "name": "frField", + "nativeSrc": "3731:7:5", + "nodeType": "YulIdentifier", + "src": "3731:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3708:6:5", + "nodeType": "YulIdentifier", + "src": "3708:6:5" + }, + "nativeSrc": "3708:31:5", + "nodeType": "YulFunctionCall", + "src": "3708:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3698:6:5", + "nodeType": "YulIdentifier", + "src": "3698:6:5" + } + ] + }, + { + "nativeSrc": "3756:41:5", + "nodeType": "YulAssignment", + "src": "3756:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "3773:6:5", + "nodeType": "YulIdentifier", + "src": "3773:6:5" + }, + { + "name": "output", + "nativeSrc": "3781:6:5", + "nodeType": "YulIdentifier", + "src": "3781:6:5" + }, + { + "name": "frField", + "nativeSrc": "3789:7:5", + "nodeType": "YulIdentifier", + "src": "3789:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3766:6:5", + "nodeType": "YulIdentifier", + "src": "3766:6:5" + }, + "nativeSrc": "3766:31:5", + "nodeType": "YulFunctionCall", + "src": "3766:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3756:6:5", + "nodeType": "YulIdentifier", + "src": "3756:6:5" + } + ] + }, + { + "nativeSrc": "3814:41:5", + "nodeType": "YulAssignment", + "src": "3814:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "3831:6:5", + "nodeType": "YulIdentifier", + "src": "3831:6:5" + }, + { + "name": "output", + "nativeSrc": "3839:6:5", + "nodeType": "YulIdentifier", + "src": "3839:6:5" + }, + { + "name": "frField", + "nativeSrc": "3847:7:5", + "nodeType": "YulIdentifier", + "src": "3847:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3824:6:5", + "nodeType": "YulIdentifier", + "src": "3824:6:5" + }, + "nativeSrc": "3824:31:5", + "nodeType": "YulFunctionCall", + "src": "3824:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3814:6:5", + "nodeType": "YulIdentifier", + "src": "3814:6:5" + } + ] + }, + { + "nativeSrc": "3872:144:5", + "nodeType": "YulAssignment", + "src": "3872:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "3917:6:5", + "nodeType": "YulIdentifier", + "src": "3917:6:5" + }, + { + "name": "output", + "nativeSrc": "3925:6:5", + "nodeType": "YulIdentifier", + "src": "3925:6:5" + }, + { + "name": "frField", + "nativeSrc": "3933:7:5", + "nodeType": "YulIdentifier", + "src": "3933:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3910:6:5", + "nodeType": "YulIdentifier", + "src": "3910:6:5" + }, + "nativeSrc": "3910:31:5", + "nodeType": "YulFunctionCall", + "src": "3910:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "3963:6:5", + "nodeType": "YulIdentifier", + "src": "3963:6:5" + }, + { + "name": "frField", + "nativeSrc": "3991:7:5", + "nodeType": "YulIdentifier", + "src": "3991:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3882:6:5", + "nodeType": "YulIdentifier", + "src": "3882:6:5" + }, + "nativeSrc": "3882:134:5", + "nodeType": "YulFunctionCall", + "src": "3882:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "3872:6:5", + "nodeType": "YulIdentifier", + "src": "3872:6:5" + } + ] + }, + { + "nativeSrc": "4034:209:5", + "nodeType": "YulAssignment", + "src": "4034:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "4079:6:5", + "nodeType": "YulIdentifier", + "src": "4079:6:5" + }, + { + "name": "h", + "nativeSrc": "4087:1:5", + "nodeType": "YulIdentifier", + "src": "4087:1:5" + }, + { + "name": "frField", + "nativeSrc": "4090:7:5", + "nodeType": "YulIdentifier", + "src": "4090:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "4072:6:5", + "nodeType": "YulIdentifier", + "src": "4072:6:5" + }, + "nativeSrc": "4072:26:5", + "nodeType": "YulFunctionCall", + "src": "4072:26:5" + }, + { + "kind": "number", + "nativeSrc": "4120:76:5", + "nodeType": "YulLiteral", + "src": "4120:76:5", + "type": "", + "value": "3401276671970505639801802718275229999176446092725813928949571059366811327963" + }, + { + "name": "frField", + "nativeSrc": "4218:7:5", + "nodeType": "YulIdentifier", + "src": "4218:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "4044:6:5", + "nodeType": "YulIdentifier", + "src": "4044:6:5" + }, + "nativeSrc": "4044:199:5", + "nodeType": "YulFunctionCall", + "src": "4044:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "4034:6:5", + "nodeType": "YulIdentifier", + "src": "4034:6:5" + } + ] + }, + { + "nativeSrc": "4260:41:5", + "nodeType": "YulAssignment", + "src": "4260:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "4277:6:5", + "nodeType": "YulIdentifier", + "src": "4277:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "4285:6:5", + "nodeType": "YulIdentifier", + "src": "4285:6:5" + }, + { + "name": "frField", + "nativeSrc": "4293:7:5", + "nodeType": "YulIdentifier", + "src": "4293:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4270:6:5", + "nodeType": "YulIdentifier", + "src": "4270:6:5" + }, + "nativeSrc": "4270:31:5", + "nodeType": "YulFunctionCall", + "src": "4270:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4260:6:5", + "nodeType": "YulIdentifier", + "src": "4260:6:5" + } + ] + }, + { + "nativeSrc": "4318:41:5", + "nodeType": "YulAssignment", + "src": "4318:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "4335:6:5", + "nodeType": "YulIdentifier", + "src": "4335:6:5" + }, + { + "name": "output", + "nativeSrc": "4343:6:5", + "nodeType": "YulIdentifier", + "src": "4343:6:5" + }, + { + "name": "frField", + "nativeSrc": "4351:7:5", + "nodeType": "YulIdentifier", + "src": "4351:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4328:6:5", + "nodeType": "YulIdentifier", + "src": "4328:6:5" + }, + "nativeSrc": "4328:31:5", + "nodeType": "YulFunctionCall", + "src": "4328:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4318:6:5", + "nodeType": "YulIdentifier", + "src": "4318:6:5" + } + ] + }, + { + "nativeSrc": "4376:41:5", + "nodeType": "YulAssignment", + "src": "4376:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "4393:6:5", + "nodeType": "YulIdentifier", + "src": "4393:6:5" + }, + { + "name": "output", + "nativeSrc": "4401:6:5", + "nodeType": "YulIdentifier", + "src": "4401:6:5" + }, + { + "name": "frField", + "nativeSrc": "4409:7:5", + "nodeType": "YulIdentifier", + "src": "4409:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4386:6:5", + "nodeType": "YulIdentifier", + "src": "4386:6:5" + }, + "nativeSrc": "4386:31:5", + "nodeType": "YulFunctionCall", + "src": "4386:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4376:6:5", + "nodeType": "YulIdentifier", + "src": "4376:6:5" + } + ] + }, + { + "nativeSrc": "4434:144:5", + "nodeType": "YulAssignment", + "src": "4434:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "4479:6:5", + "nodeType": "YulIdentifier", + "src": "4479:6:5" + }, + { + "name": "output", + "nativeSrc": "4487:6:5", + "nodeType": "YulIdentifier", + "src": "4487:6:5" + }, + { + "name": "frField", + "nativeSrc": "4495:7:5", + "nodeType": "YulIdentifier", + "src": "4495:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4472:6:5", + "nodeType": "YulIdentifier", + "src": "4472:6:5" + }, + "nativeSrc": "4472:31:5", + "nodeType": "YulFunctionCall", + "src": "4472:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "4525:6:5", + "nodeType": "YulIdentifier", + "src": "4525:6:5" + }, + { + "name": "frField", + "nativeSrc": "4553:7:5", + "nodeType": "YulIdentifier", + "src": "4553:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4444:6:5", + "nodeType": "YulIdentifier", + "src": "4444:6:5" + }, + "nativeSrc": "4444:134:5", + "nodeType": "YulFunctionCall", + "src": "4444:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4434:6:5", + "nodeType": "YulIdentifier", + "src": "4434:6:5" + } + ] + }, + { + "nativeSrc": "4596:208:5", + "nodeType": "YulAssignment", + "src": "4596:208:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "4641:6:5", + "nodeType": "YulIdentifier", + "src": "4641:6:5" + }, + { + "name": "h", + "nativeSrc": "4649:1:5", + "nodeType": "YulIdentifier", + "src": "4649:1:5" + }, + { + "name": "frField", + "nativeSrc": "4652:7:5", + "nodeType": "YulIdentifier", + "src": "4652:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "4634:6:5", + "nodeType": "YulIdentifier", + "src": "4634:6:5" + }, + "nativeSrc": "4634:26:5", + "nodeType": "YulFunctionCall", + "src": "4634:26:5" + }, + { + "kind": "number", + "nativeSrc": "4682:75:5", + "nodeType": "YulLiteral", + "src": "4682:75:5", + "type": "", + "value": "796636033841689627732941016044857384234234277501564259311815186813195010627" + }, + { + "name": "frField", + "nativeSrc": "4779:7:5", + "nodeType": "YulIdentifier", + "src": "4779:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "4606:6:5", + "nodeType": "YulIdentifier", + "src": "4606:6:5" + }, + "nativeSrc": "4606:198:5", + "nodeType": "YulFunctionCall", + "src": "4606:198:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "4596:6:5", + "nodeType": "YulIdentifier", + "src": "4596:6:5" + } + ] + }, + { + "nativeSrc": "4821:41:5", + "nodeType": "YulAssignment", + "src": "4821:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "4838:6:5", + "nodeType": "YulIdentifier", + "src": "4838:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "4846:6:5", + "nodeType": "YulIdentifier", + "src": "4846:6:5" + }, + { + "name": "frField", + "nativeSrc": "4854:7:5", + "nodeType": "YulIdentifier", + "src": "4854:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4831:6:5", + "nodeType": "YulIdentifier", + "src": "4831:6:5" + }, + "nativeSrc": "4831:31:5", + "nodeType": "YulFunctionCall", + "src": "4831:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4821:6:5", + "nodeType": "YulIdentifier", + "src": "4821:6:5" + } + ] + }, + { + "nativeSrc": "4879:41:5", + "nodeType": "YulAssignment", + "src": "4879:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "4896:6:5", + "nodeType": "YulIdentifier", + "src": "4896:6:5" + }, + { + "name": "output", + "nativeSrc": "4904:6:5", + "nodeType": "YulIdentifier", + "src": "4904:6:5" + }, + { + "name": "frField", + "nativeSrc": "4912:7:5", + "nodeType": "YulIdentifier", + "src": "4912:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4889:6:5", + "nodeType": "YulIdentifier", + "src": "4889:6:5" + }, + "nativeSrc": "4889:31:5", + "nodeType": "YulFunctionCall", + "src": "4889:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4879:6:5", + "nodeType": "YulIdentifier", + "src": "4879:6:5" + } + ] + }, + { + "nativeSrc": "4937:41:5", + "nodeType": "YulAssignment", + "src": "4937:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "4954:6:5", + "nodeType": "YulIdentifier", + "src": "4954:6:5" + }, + { + "name": "output", + "nativeSrc": "4962:6:5", + "nodeType": "YulIdentifier", + "src": "4962:6:5" + }, + { + "name": "frField", + "nativeSrc": "4970:7:5", + "nodeType": "YulIdentifier", + "src": "4970:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "4947:6:5", + "nodeType": "YulIdentifier", + "src": "4947:6:5" + }, + "nativeSrc": "4947:31:5", + "nodeType": "YulFunctionCall", + "src": "4947:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4937:6:5", + "nodeType": "YulIdentifier", + "src": "4937:6:5" + } + ] + }, + { + "nativeSrc": "4995:144:5", + "nodeType": "YulAssignment", + "src": "4995:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "5040:6:5", + "nodeType": "YulIdentifier", + "src": "5040:6:5" + }, + { + "name": "output", + "nativeSrc": "5048:6:5", + "nodeType": "YulIdentifier", + "src": "5048:6:5" + }, + { + "name": "frField", + "nativeSrc": "5056:7:5", + "nodeType": "YulIdentifier", + "src": "5056:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5033:6:5", + "nodeType": "YulIdentifier", + "src": "5033:6:5" + }, + "nativeSrc": "5033:31:5", + "nodeType": "YulFunctionCall", + "src": "5033:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "5086:6:5", + "nodeType": "YulIdentifier", + "src": "5086:6:5" + }, + { + "name": "frField", + "nativeSrc": "5114:7:5", + "nodeType": "YulIdentifier", + "src": "5114:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5005:6:5", + "nodeType": "YulIdentifier", + "src": "5005:6:5" + }, + "nativeSrc": "5005:134:5", + "nodeType": "YulFunctionCall", + "src": "5005:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "4995:6:5", + "nodeType": "YulIdentifier", + "src": "4995:6:5" + } + ] + }, + { + "nativeSrc": "5157:208:5", + "nodeType": "YulAssignment", + "src": "5157:208:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "5202:6:5", + "nodeType": "YulIdentifier", + "src": "5202:6:5" + }, + { + "name": "h", + "nativeSrc": "5210:1:5", + "nodeType": "YulIdentifier", + "src": "5210:1:5" + }, + { + "name": "frField", + "nativeSrc": "5213:7:5", + "nodeType": "YulIdentifier", + "src": "5213:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "5195:6:5", + "nodeType": "YulIdentifier", + "src": "5195:6:5" + }, + "nativeSrc": "5195:26:5", + "nodeType": "YulFunctionCall", + "src": "5195:26:5" + }, + { + "kind": "number", + "nativeSrc": "5243:75:5", + "nodeType": "YulLiteral", + "src": "5243:75:5", + "type": "", + "value": "159507412325830262114089631199386481336725966652415909300570415682233424809" + }, + { + "name": "frField", + "nativeSrc": "5340:7:5", + "nodeType": "YulIdentifier", + "src": "5340:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "5167:6:5", + "nodeType": "YulIdentifier", + "src": "5167:6:5" + }, + "nativeSrc": "5167:198:5", + "nodeType": "YulFunctionCall", + "src": "5167:198:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "5157:6:5", + "nodeType": "YulIdentifier", + "src": "5157:6:5" + } + ] + }, + { + "nativeSrc": "5382:41:5", + "nodeType": "YulAssignment", + "src": "5382:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "5399:6:5", + "nodeType": "YulIdentifier", + "src": "5399:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "5407:6:5", + "nodeType": "YulIdentifier", + "src": "5407:6:5" + }, + { + "name": "frField", + "nativeSrc": "5415:7:5", + "nodeType": "YulIdentifier", + "src": "5415:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5392:6:5", + "nodeType": "YulIdentifier", + "src": "5392:6:5" + }, + "nativeSrc": "5392:31:5", + "nodeType": "YulFunctionCall", + "src": "5392:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "5382:6:5", + "nodeType": "YulIdentifier", + "src": "5382:6:5" + } + ] + }, + { + "nativeSrc": "5440:41:5", + "nodeType": "YulAssignment", + "src": "5440:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "5457:6:5", + "nodeType": "YulIdentifier", + "src": "5457:6:5" + }, + { + "name": "output", + "nativeSrc": "5465:6:5", + "nodeType": "YulIdentifier", + "src": "5465:6:5" + }, + { + "name": "frField", + "nativeSrc": "5473:7:5", + "nodeType": "YulIdentifier", + "src": "5473:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5450:6:5", + "nodeType": "YulIdentifier", + "src": "5450:6:5" + }, + "nativeSrc": "5450:31:5", + "nodeType": "YulFunctionCall", + "src": "5450:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "5440:6:5", + "nodeType": "YulIdentifier", + "src": "5440:6:5" + } + ] + }, + { + "nativeSrc": "5498:41:5", + "nodeType": "YulAssignment", + "src": "5498:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "5515:6:5", + "nodeType": "YulIdentifier", + "src": "5515:6:5" + }, + { + "name": "output", + "nativeSrc": "5523:6:5", + "nodeType": "YulIdentifier", + "src": "5523:6:5" + }, + { + "name": "frField", + "nativeSrc": "5531:7:5", + "nodeType": "YulIdentifier", + "src": "5531:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5508:6:5", + "nodeType": "YulIdentifier", + "src": "5508:6:5" + }, + "nativeSrc": "5508:31:5", + "nodeType": "YulFunctionCall", + "src": "5508:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "5498:6:5", + "nodeType": "YulIdentifier", + "src": "5498:6:5" + } + ] + }, + { + "nativeSrc": "5556:144:5", + "nodeType": "YulAssignment", + "src": "5556:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "5601:6:5", + "nodeType": "YulIdentifier", + "src": "5601:6:5" + }, + { + "name": "output", + "nativeSrc": "5609:6:5", + "nodeType": "YulIdentifier", + "src": "5609:6:5" + }, + { + "name": "frField", + "nativeSrc": "5617:7:5", + "nodeType": "YulIdentifier", + "src": "5617:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5594:6:5", + "nodeType": "YulIdentifier", + "src": "5594:6:5" + }, + "nativeSrc": "5594:31:5", + "nodeType": "YulFunctionCall", + "src": "5594:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "5647:6:5", + "nodeType": "YulIdentifier", + "src": "5647:6:5" + }, + { + "name": "frField", + "nativeSrc": "5675:7:5", + "nodeType": "YulIdentifier", + "src": "5675:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5566:6:5", + "nodeType": "YulIdentifier", + "src": "5566:6:5" + }, + "nativeSrc": "5566:134:5", + "nodeType": "YulFunctionCall", + "src": "5566:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "5556:6:5", + "nodeType": "YulIdentifier", + "src": "5556:6:5" + } + ] + }, + { + "nativeSrc": "5718:209:5", + "nodeType": "YulAssignment", + "src": "5718:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "5763:6:5", + "nodeType": "YulIdentifier", + "src": "5763:6:5" + }, + { + "name": "h", + "nativeSrc": "5771:1:5", + "nodeType": "YulIdentifier", + "src": "5771:1:5" + }, + { + "name": "frField", + "nativeSrc": "5774:7:5", + "nodeType": "YulIdentifier", + "src": "5774:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "5756:6:5", + "nodeType": "YulIdentifier", + "src": "5756:6:5" + }, + "nativeSrc": "5756:26:5", + "nodeType": "YulFunctionCall", + "src": "5756:26:5" + }, + { + "kind": "number", + "nativeSrc": "5804:76:5", + "nodeType": "YulLiteral", + "src": "5804:76:5", + "type": "", + "value": "1669348614406363339435491723584591316524711695667693315027811919444714635748" + }, + { + "name": "frField", + "nativeSrc": "5902:7:5", + "nodeType": "YulIdentifier", + "src": "5902:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "5728:6:5", + "nodeType": "YulIdentifier", + "src": "5728:6:5" + }, + "nativeSrc": "5728:199:5", + "nodeType": "YulFunctionCall", + "src": "5728:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "5718:6:5", + "nodeType": "YulIdentifier", + "src": "5718:6:5" + } + ] + }, + { + "nativeSrc": "5944:41:5", + "nodeType": "YulAssignment", + "src": "5944:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "5961:6:5", + "nodeType": "YulIdentifier", + "src": "5961:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "5969:6:5", + "nodeType": "YulIdentifier", + "src": "5969:6:5" + }, + { + "name": "frField", + "nativeSrc": "5977:7:5", + "nodeType": "YulIdentifier", + "src": "5977:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "5954:6:5", + "nodeType": "YulIdentifier", + "src": "5954:6:5" + }, + "nativeSrc": "5954:31:5", + "nodeType": "YulFunctionCall", + "src": "5954:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "5944:6:5", + "nodeType": "YulIdentifier", + "src": "5944:6:5" + } + ] + }, + { + "nativeSrc": "6002:41:5", + "nodeType": "YulAssignment", + "src": "6002:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "6019:6:5", + "nodeType": "YulIdentifier", + "src": "6019:6:5" + }, + { + "name": "output", + "nativeSrc": "6027:6:5", + "nodeType": "YulIdentifier", + "src": "6027:6:5" + }, + { + "name": "frField", + "nativeSrc": "6035:7:5", + "nodeType": "YulIdentifier", + "src": "6035:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6012:6:5", + "nodeType": "YulIdentifier", + "src": "6012:6:5" + }, + "nativeSrc": "6012:31:5", + "nodeType": "YulFunctionCall", + "src": "6012:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6002:6:5", + "nodeType": "YulIdentifier", + "src": "6002:6:5" + } + ] + }, + { + "nativeSrc": "6060:41:5", + "nodeType": "YulAssignment", + "src": "6060:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "6077:6:5", + "nodeType": "YulIdentifier", + "src": "6077:6:5" + }, + { + "name": "output", + "nativeSrc": "6085:6:5", + "nodeType": "YulIdentifier", + "src": "6085:6:5" + }, + { + "name": "frField", + "nativeSrc": "6093:7:5", + "nodeType": "YulIdentifier", + "src": "6093:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6070:6:5", + "nodeType": "YulIdentifier", + "src": "6070:6:5" + }, + "nativeSrc": "6070:31:5", + "nodeType": "YulFunctionCall", + "src": "6070:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6060:6:5", + "nodeType": "YulIdentifier", + "src": "6060:6:5" + } + ] + }, + { + "nativeSrc": "6118:144:5", + "nodeType": "YulAssignment", + "src": "6118:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "6163:6:5", + "nodeType": "YulIdentifier", + "src": "6163:6:5" + }, + { + "name": "output", + "nativeSrc": "6171:6:5", + "nodeType": "YulIdentifier", + "src": "6171:6:5" + }, + { + "name": "frField", + "nativeSrc": "6179:7:5", + "nodeType": "YulIdentifier", + "src": "6179:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6156:6:5", + "nodeType": "YulIdentifier", + "src": "6156:6:5" + }, + "nativeSrc": "6156:31:5", + "nodeType": "YulFunctionCall", + "src": "6156:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "6209:6:5", + "nodeType": "YulIdentifier", + "src": "6209:6:5" + }, + { + "name": "frField", + "nativeSrc": "6237:7:5", + "nodeType": "YulIdentifier", + "src": "6237:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6128:6:5", + "nodeType": "YulIdentifier", + "src": "6128:6:5" + }, + "nativeSrc": "6128:134:5", + "nodeType": "YulFunctionCall", + "src": "6128:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6118:6:5", + "nodeType": "YulIdentifier", + "src": "6118:6:5" + } + ] + }, + { + "nativeSrc": "6280:209:5", + "nodeType": "YulAssignment", + "src": "6280:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "6325:6:5", + "nodeType": "YulIdentifier", + "src": "6325:6:5" + }, + { + "name": "h", + "nativeSrc": "6333:1:5", + "nodeType": "YulIdentifier", + "src": "6333:1:5" + }, + { + "name": "frField", + "nativeSrc": "6336:7:5", + "nodeType": "YulIdentifier", + "src": "6336:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "6318:6:5", + "nodeType": "YulIdentifier", + "src": "6318:6:5" + }, + "nativeSrc": "6318:26:5", + "nodeType": "YulFunctionCall", + "src": "6318:26:5" + }, + { + "kind": "number", + "nativeSrc": "6366:76:5", + "nodeType": "YulLiteral", + "src": "6366:76:5", + "type": "", + "value": "2220664510675218580883672035712942523468288190837741520497926350441362544422" + }, + { + "name": "frField", + "nativeSrc": "6464:7:5", + "nodeType": "YulIdentifier", + "src": "6464:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "6290:6:5", + "nodeType": "YulIdentifier", + "src": "6290:6:5" + }, + "nativeSrc": "6290:199:5", + "nodeType": "YulFunctionCall", + "src": "6290:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "6280:6:5", + "nodeType": "YulIdentifier", + "src": "6280:6:5" + } + ] + }, + { + "nativeSrc": "6506:41:5", + "nodeType": "YulAssignment", + "src": "6506:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "6523:6:5", + "nodeType": "YulIdentifier", + "src": "6523:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "6531:6:5", + "nodeType": "YulIdentifier", + "src": "6531:6:5" + }, + { + "name": "frField", + "nativeSrc": "6539:7:5", + "nodeType": "YulIdentifier", + "src": "6539:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6516:6:5", + "nodeType": "YulIdentifier", + "src": "6516:6:5" + }, + "nativeSrc": "6516:31:5", + "nodeType": "YulFunctionCall", + "src": "6516:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6506:6:5", + "nodeType": "YulIdentifier", + "src": "6506:6:5" + } + ] + }, + { + "nativeSrc": "6564:41:5", + "nodeType": "YulAssignment", + "src": "6564:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "6581:6:5", + "nodeType": "YulIdentifier", + "src": "6581:6:5" + }, + { + "name": "output", + "nativeSrc": "6589:6:5", + "nodeType": "YulIdentifier", + "src": "6589:6:5" + }, + { + "name": "frField", + "nativeSrc": "6597:7:5", + "nodeType": "YulIdentifier", + "src": "6597:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6574:6:5", + "nodeType": "YulIdentifier", + "src": "6574:6:5" + }, + "nativeSrc": "6574:31:5", + "nodeType": "YulFunctionCall", + "src": "6574:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6564:6:5", + "nodeType": "YulIdentifier", + "src": "6564:6:5" + } + ] + }, + { + "nativeSrc": "6622:41:5", + "nodeType": "YulAssignment", + "src": "6622:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "6639:6:5", + "nodeType": "YulIdentifier", + "src": "6639:6:5" + }, + { + "name": "output", + "nativeSrc": "6647:6:5", + "nodeType": "YulIdentifier", + "src": "6647:6:5" + }, + { + "name": "frField", + "nativeSrc": "6655:7:5", + "nodeType": "YulIdentifier", + "src": "6655:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6632:6:5", + "nodeType": "YulIdentifier", + "src": "6632:6:5" + }, + "nativeSrc": "6632:31:5", + "nodeType": "YulFunctionCall", + "src": "6632:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6622:6:5", + "nodeType": "YulIdentifier", + "src": "6622:6:5" + } + ] + }, + { + "nativeSrc": "6680:144:5", + "nodeType": "YulAssignment", + "src": "6680:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "6725:6:5", + "nodeType": "YulIdentifier", + "src": "6725:6:5" + }, + { + "name": "output", + "nativeSrc": "6733:6:5", + "nodeType": "YulIdentifier", + "src": "6733:6:5" + }, + { + "name": "frField", + "nativeSrc": "6741:7:5", + "nodeType": "YulIdentifier", + "src": "6741:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6718:6:5", + "nodeType": "YulIdentifier", + "src": "6718:6:5" + }, + "nativeSrc": "6718:31:5", + "nodeType": "YulFunctionCall", + "src": "6718:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "6771:6:5", + "nodeType": "YulIdentifier", + "src": "6771:6:5" + }, + { + "name": "frField", + "nativeSrc": "6799:7:5", + "nodeType": "YulIdentifier", + "src": "6799:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "6690:6:5", + "nodeType": "YulIdentifier", + "src": "6690:6:5" + }, + "nativeSrc": "6690:134:5", + "nodeType": "YulFunctionCall", + "src": "6690:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "6680:6:5", + "nodeType": "YulIdentifier", + "src": "6680:6:5" + } + ] + }, + { + "nativeSrc": "6842:209:5", + "nodeType": "YulAssignment", + "src": "6842:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "6887:6:5", + "nodeType": "YulIdentifier", + "src": "6887:6:5" + }, + { + "name": "h", + "nativeSrc": "6895:1:5", + "nodeType": "YulIdentifier", + "src": "6895:1:5" + }, + { + "name": "frField", + "nativeSrc": "6898:7:5", + "nodeType": "YulIdentifier", + "src": "6898:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "6880:6:5", + "nodeType": "YulIdentifier", + "src": "6880:6:5" + }, + "nativeSrc": "6880:26:5", + "nodeType": "YulFunctionCall", + "src": "6880:26:5" + }, + { + "kind": "number", + "nativeSrc": "6928:76:5", + "nodeType": "YulLiteral", + "src": "6928:76:5", + "type": "", + "value": "1294712289478715410717626660893541311126892630747701030449280341780183665665" + }, + { + "name": "frField", + "nativeSrc": "7026:7:5", + "nodeType": "YulIdentifier", + "src": "7026:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "6852:6:5", + "nodeType": "YulIdentifier", + "src": "6852:6:5" + }, + "nativeSrc": "6852:199:5", + "nodeType": "YulFunctionCall", + "src": "6852:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "6842:6:5", + "nodeType": "YulIdentifier", + "src": "6842:6:5" + } + ] + }, + { + "nativeSrc": "7068:41:5", + "nodeType": "YulAssignment", + "src": "7068:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "7085:6:5", + "nodeType": "YulIdentifier", + "src": "7085:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "7093:6:5", + "nodeType": "YulIdentifier", + "src": "7093:6:5" + }, + { + "name": "frField", + "nativeSrc": "7101:7:5", + "nodeType": "YulIdentifier", + "src": "7101:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7078:6:5", + "nodeType": "YulIdentifier", + "src": "7078:6:5" + }, + "nativeSrc": "7078:31:5", + "nodeType": "YulFunctionCall", + "src": "7078:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7068:6:5", + "nodeType": "YulIdentifier", + "src": "7068:6:5" + } + ] + }, + { + "nativeSrc": "7126:41:5", + "nodeType": "YulAssignment", + "src": "7126:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "7143:6:5", + "nodeType": "YulIdentifier", + "src": "7143:6:5" + }, + { + "name": "output", + "nativeSrc": "7151:6:5", + "nodeType": "YulIdentifier", + "src": "7151:6:5" + }, + { + "name": "frField", + "nativeSrc": "7159:7:5", + "nodeType": "YulIdentifier", + "src": "7159:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7136:6:5", + "nodeType": "YulIdentifier", + "src": "7136:6:5" + }, + "nativeSrc": "7136:31:5", + "nodeType": "YulFunctionCall", + "src": "7136:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7126:6:5", + "nodeType": "YulIdentifier", + "src": "7126:6:5" + } + ] + }, + { + "nativeSrc": "7184:41:5", + "nodeType": "YulAssignment", + "src": "7184:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "7201:6:5", + "nodeType": "YulIdentifier", + "src": "7201:6:5" + }, + { + "name": "output", + "nativeSrc": "7209:6:5", + "nodeType": "YulIdentifier", + "src": "7209:6:5" + }, + { + "name": "frField", + "nativeSrc": "7217:7:5", + "nodeType": "YulIdentifier", + "src": "7217:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7194:6:5", + "nodeType": "YulIdentifier", + "src": "7194:6:5" + }, + "nativeSrc": "7194:31:5", + "nodeType": "YulFunctionCall", + "src": "7194:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7184:6:5", + "nodeType": "YulIdentifier", + "src": "7184:6:5" + } + ] + }, + { + "nativeSrc": "7242:144:5", + "nodeType": "YulAssignment", + "src": "7242:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "7287:6:5", + "nodeType": "YulIdentifier", + "src": "7287:6:5" + }, + { + "name": "output", + "nativeSrc": "7295:6:5", + "nodeType": "YulIdentifier", + "src": "7295:6:5" + }, + { + "name": "frField", + "nativeSrc": "7303:7:5", + "nodeType": "YulIdentifier", + "src": "7303:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7280:6:5", + "nodeType": "YulIdentifier", + "src": "7280:6:5" + }, + "nativeSrc": "7280:31:5", + "nodeType": "YulFunctionCall", + "src": "7280:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "7333:6:5", + "nodeType": "YulIdentifier", + "src": "7333:6:5" + }, + { + "name": "frField", + "nativeSrc": "7361:7:5", + "nodeType": "YulIdentifier", + "src": "7361:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7252:6:5", + "nodeType": "YulIdentifier", + "src": "7252:6:5" + }, + "nativeSrc": "7252:134:5", + "nodeType": "YulFunctionCall", + "src": "7252:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7242:6:5", + "nodeType": "YulIdentifier", + "src": "7242:6:5" + } + ] + }, + { + "nativeSrc": "7404:209:5", + "nodeType": "YulAssignment", + "src": "7404:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "7449:6:5", + "nodeType": "YulIdentifier", + "src": "7449:6:5" + }, + { + "name": "h", + "nativeSrc": "7457:1:5", + "nodeType": "YulIdentifier", + "src": "7457:1:5" + }, + { + "name": "frField", + "nativeSrc": "7460:7:5", + "nodeType": "YulIdentifier", + "src": "7460:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "7442:6:5", + "nodeType": "YulIdentifier", + "src": "7442:6:5" + }, + "nativeSrc": "7442:26:5", + "nodeType": "YulFunctionCall", + "src": "7442:26:5" + }, + { + "kind": "number", + "nativeSrc": "7490:76:5", + "nodeType": "YulLiteral", + "src": "7490:76:5", + "type": "", + "value": "6758843230175145783288330173723849603007070607311612566540600202723911987180" + }, + { + "name": "frField", + "nativeSrc": "7588:7:5", + "nodeType": "YulIdentifier", + "src": "7588:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "7414:6:5", + "nodeType": "YulIdentifier", + "src": "7414:6:5" + }, + "nativeSrc": "7414:199:5", + "nodeType": "YulFunctionCall", + "src": "7414:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "7404:6:5", + "nodeType": "YulIdentifier", + "src": "7404:6:5" + } + ] + }, + { + "nativeSrc": "7630:41:5", + "nodeType": "YulAssignment", + "src": "7630:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "7647:6:5", + "nodeType": "YulIdentifier", + "src": "7647:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "7655:6:5", + "nodeType": "YulIdentifier", + "src": "7655:6:5" + }, + { + "name": "frField", + "nativeSrc": "7663:7:5", + "nodeType": "YulIdentifier", + "src": "7663:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7640:6:5", + "nodeType": "YulIdentifier", + "src": "7640:6:5" + }, + "nativeSrc": "7640:31:5", + "nodeType": "YulFunctionCall", + "src": "7640:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7630:6:5", + "nodeType": "YulIdentifier", + "src": "7630:6:5" + } + ] + }, + { + "nativeSrc": "7688:41:5", + "nodeType": "YulAssignment", + "src": "7688:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "7705:6:5", + "nodeType": "YulIdentifier", + "src": "7705:6:5" + }, + { + "name": "output", + "nativeSrc": "7713:6:5", + "nodeType": "YulIdentifier", + "src": "7713:6:5" + }, + { + "name": "frField", + "nativeSrc": "7721:7:5", + "nodeType": "YulIdentifier", + "src": "7721:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7698:6:5", + "nodeType": "YulIdentifier", + "src": "7698:6:5" + }, + "nativeSrc": "7698:31:5", + "nodeType": "YulFunctionCall", + "src": "7698:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7688:6:5", + "nodeType": "YulIdentifier", + "src": "7688:6:5" + } + ] + }, + { + "nativeSrc": "7746:41:5", + "nodeType": "YulAssignment", + "src": "7746:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "7763:6:5", + "nodeType": "YulIdentifier", + "src": "7763:6:5" + }, + { + "name": "output", + "nativeSrc": "7771:6:5", + "nodeType": "YulIdentifier", + "src": "7771:6:5" + }, + { + "name": "frField", + "nativeSrc": "7779:7:5", + "nodeType": "YulIdentifier", + "src": "7779:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7756:6:5", + "nodeType": "YulIdentifier", + "src": "7756:6:5" + }, + "nativeSrc": "7756:31:5", + "nodeType": "YulFunctionCall", + "src": "7756:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7746:6:5", + "nodeType": "YulIdentifier", + "src": "7746:6:5" + } + ] + }, + { + "nativeSrc": "7804:144:5", + "nodeType": "YulAssignment", + "src": "7804:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "7849:6:5", + "nodeType": "YulIdentifier", + "src": "7849:6:5" + }, + { + "name": "output", + "nativeSrc": "7857:6:5", + "nodeType": "YulIdentifier", + "src": "7857:6:5" + }, + { + "name": "frField", + "nativeSrc": "7865:7:5", + "nodeType": "YulIdentifier", + "src": "7865:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7842:6:5", + "nodeType": "YulIdentifier", + "src": "7842:6:5" + }, + "nativeSrc": "7842:31:5", + "nodeType": "YulFunctionCall", + "src": "7842:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "7895:6:5", + "nodeType": "YulIdentifier", + "src": "7895:6:5" + }, + { + "name": "frField", + "nativeSrc": "7923:7:5", + "nodeType": "YulIdentifier", + "src": "7923:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "7814:6:5", + "nodeType": "YulIdentifier", + "src": "7814:6:5" + }, + "nativeSrc": "7814:134:5", + "nodeType": "YulFunctionCall", + "src": "7814:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "7804:6:5", + "nodeType": "YulIdentifier", + "src": "7804:6:5" + } + ] + }, + { + "nativeSrc": "7966:209:5", + "nodeType": "YulAssignment", + "src": "7966:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "8011:6:5", + "nodeType": "YulIdentifier", + "src": "8011:6:5" + }, + { + "name": "h", + "nativeSrc": "8019:1:5", + "nodeType": "YulIdentifier", + "src": "8019:1:5" + }, + { + "name": "frField", + "nativeSrc": "8022:7:5", + "nodeType": "YulIdentifier", + "src": "8022:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "8004:6:5", + "nodeType": "YulIdentifier", + "src": "8004:6:5" + }, + "nativeSrc": "8004:26:5", + "nodeType": "YulFunctionCall", + "src": "8004:26:5" + }, + { + "kind": "number", + "nativeSrc": "8052:76:5", + "nodeType": "YulLiteral", + "src": "8052:76:5", + "type": "", + "value": "6271650829101108787041306415787253036818921034903891854433479166754956001513" + }, + { + "name": "frField", + "nativeSrc": "8150:7:5", + "nodeType": "YulIdentifier", + "src": "8150:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "7976:6:5", + "nodeType": "YulIdentifier", + "src": "7976:6:5" + }, + "nativeSrc": "7976:199:5", + "nodeType": "YulFunctionCall", + "src": "7976:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "7966:6:5", + "nodeType": "YulIdentifier", + "src": "7966:6:5" + } + ] + }, + { + "nativeSrc": "8192:41:5", + "nodeType": "YulAssignment", + "src": "8192:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "8209:6:5", + "nodeType": "YulIdentifier", + "src": "8209:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "8217:6:5", + "nodeType": "YulIdentifier", + "src": "8217:6:5" + }, + { + "name": "frField", + "nativeSrc": "8225:7:5", + "nodeType": "YulIdentifier", + "src": "8225:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8202:6:5", + "nodeType": "YulIdentifier", + "src": "8202:6:5" + }, + "nativeSrc": "8202:31:5", + "nodeType": "YulFunctionCall", + "src": "8202:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8192:6:5", + "nodeType": "YulIdentifier", + "src": "8192:6:5" + } + ] + }, + { + "nativeSrc": "8250:41:5", + "nodeType": "YulAssignment", + "src": "8250:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "8267:6:5", + "nodeType": "YulIdentifier", + "src": "8267:6:5" + }, + { + "name": "output", + "nativeSrc": "8275:6:5", + "nodeType": "YulIdentifier", + "src": "8275:6:5" + }, + { + "name": "frField", + "nativeSrc": "8283:7:5", + "nodeType": "YulIdentifier", + "src": "8283:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8260:6:5", + "nodeType": "YulIdentifier", + "src": "8260:6:5" + }, + "nativeSrc": "8260:31:5", + "nodeType": "YulFunctionCall", + "src": "8260:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8250:6:5", + "nodeType": "YulIdentifier", + "src": "8250:6:5" + } + ] + }, + { + "nativeSrc": "8308:41:5", + "nodeType": "YulAssignment", + "src": "8308:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "8325:6:5", + "nodeType": "YulIdentifier", + "src": "8325:6:5" + }, + { + "name": "output", + "nativeSrc": "8333:6:5", + "nodeType": "YulIdentifier", + "src": "8333:6:5" + }, + { + "name": "frField", + "nativeSrc": "8341:7:5", + "nodeType": "YulIdentifier", + "src": "8341:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8318:6:5", + "nodeType": "YulIdentifier", + "src": "8318:6:5" + }, + "nativeSrc": "8318:31:5", + "nodeType": "YulFunctionCall", + "src": "8318:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8308:6:5", + "nodeType": "YulIdentifier", + "src": "8308:6:5" + } + ] + }, + { + "nativeSrc": "8366:144:5", + "nodeType": "YulAssignment", + "src": "8366:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "8411:6:5", + "nodeType": "YulIdentifier", + "src": "8411:6:5" + }, + { + "name": "output", + "nativeSrc": "8419:6:5", + "nodeType": "YulIdentifier", + "src": "8419:6:5" + }, + { + "name": "frField", + "nativeSrc": "8427:7:5", + "nodeType": "YulIdentifier", + "src": "8427:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8404:6:5", + "nodeType": "YulIdentifier", + "src": "8404:6:5" + }, + "nativeSrc": "8404:31:5", + "nodeType": "YulFunctionCall", + "src": "8404:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "8457:6:5", + "nodeType": "YulIdentifier", + "src": "8457:6:5" + }, + { + "name": "frField", + "nativeSrc": "8485:7:5", + "nodeType": "YulIdentifier", + "src": "8485:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8376:6:5", + "nodeType": "YulIdentifier", + "src": "8376:6:5" + }, + "nativeSrc": "8376:134:5", + "nodeType": "YulFunctionCall", + "src": "8376:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8366:6:5", + "nodeType": "YulIdentifier", + "src": "8366:6:5" + } + ] + }, + { + "nativeSrc": "8528:209:5", + "nodeType": "YulAssignment", + "src": "8528:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "8573:6:5", + "nodeType": "YulIdentifier", + "src": "8573:6:5" + }, + { + "name": "h", + "nativeSrc": "8581:1:5", + "nodeType": "YulIdentifier", + "src": "8581:1:5" + }, + { + "name": "frField", + "nativeSrc": "8584:7:5", + "nodeType": "YulIdentifier", + "src": "8584:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "8566:6:5", + "nodeType": "YulIdentifier", + "src": "8566:6:5" + }, + "nativeSrc": "8566:26:5", + "nodeType": "YulFunctionCall", + "src": "8566:26:5" + }, + { + "kind": "number", + "nativeSrc": "8614:76:5", + "nodeType": "YulLiteral", + "src": "8614:76:5", + "type": "", + "value": "8037654458661109859150348337922011363549131313762043865209663327750426111866" + }, + { + "name": "frField", + "nativeSrc": "8712:7:5", + "nodeType": "YulIdentifier", + "src": "8712:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "8538:6:5", + "nodeType": "YulIdentifier", + "src": "8538:6:5" + }, + "nativeSrc": "8538:199:5", + "nodeType": "YulFunctionCall", + "src": "8538:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "8528:6:5", + "nodeType": "YulIdentifier", + "src": "8528:6:5" + } + ] + }, + { + "nativeSrc": "8754:41:5", + "nodeType": "YulAssignment", + "src": "8754:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "8771:6:5", + "nodeType": "YulIdentifier", + "src": "8771:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "8779:6:5", + "nodeType": "YulIdentifier", + "src": "8779:6:5" + }, + { + "name": "frField", + "nativeSrc": "8787:7:5", + "nodeType": "YulIdentifier", + "src": "8787:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8764:6:5", + "nodeType": "YulIdentifier", + "src": "8764:6:5" + }, + "nativeSrc": "8764:31:5", + "nodeType": "YulFunctionCall", + "src": "8764:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8754:6:5", + "nodeType": "YulIdentifier", + "src": "8754:6:5" + } + ] + }, + { + "nativeSrc": "8812:41:5", + "nodeType": "YulAssignment", + "src": "8812:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "8829:6:5", + "nodeType": "YulIdentifier", + "src": "8829:6:5" + }, + { + "name": "output", + "nativeSrc": "8837:6:5", + "nodeType": "YulIdentifier", + "src": "8837:6:5" + }, + { + "name": "frField", + "nativeSrc": "8845:7:5", + "nodeType": "YulIdentifier", + "src": "8845:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8822:6:5", + "nodeType": "YulIdentifier", + "src": "8822:6:5" + }, + "nativeSrc": "8822:31:5", + "nodeType": "YulFunctionCall", + "src": "8822:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8812:6:5", + "nodeType": "YulIdentifier", + "src": "8812:6:5" + } + ] + }, + { + "nativeSrc": "8870:41:5", + "nodeType": "YulAssignment", + "src": "8870:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "8887:6:5", + "nodeType": "YulIdentifier", + "src": "8887:6:5" + }, + { + "name": "output", + "nativeSrc": "8895:6:5", + "nodeType": "YulIdentifier", + "src": "8895:6:5" + }, + { + "name": "frField", + "nativeSrc": "8903:7:5", + "nodeType": "YulIdentifier", + "src": "8903:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8880:6:5", + "nodeType": "YulIdentifier", + "src": "8880:6:5" + }, + "nativeSrc": "8880:31:5", + "nodeType": "YulFunctionCall", + "src": "8880:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8870:6:5", + "nodeType": "YulIdentifier", + "src": "8870:6:5" + } + ] + }, + { + "nativeSrc": "8928:144:5", + "nodeType": "YulAssignment", + "src": "8928:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "8973:6:5", + "nodeType": "YulIdentifier", + "src": "8973:6:5" + }, + { + "name": "output", + "nativeSrc": "8981:6:5", + "nodeType": "YulIdentifier", + "src": "8981:6:5" + }, + { + "name": "frField", + "nativeSrc": "8989:7:5", + "nodeType": "YulIdentifier", + "src": "8989:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8966:6:5", + "nodeType": "YulIdentifier", + "src": "8966:6:5" + }, + "nativeSrc": "8966:31:5", + "nodeType": "YulFunctionCall", + "src": "8966:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "9019:6:5", + "nodeType": "YulIdentifier", + "src": "9019:6:5" + }, + { + "name": "frField", + "nativeSrc": "9047:7:5", + "nodeType": "YulIdentifier", + "src": "9047:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "8938:6:5", + "nodeType": "YulIdentifier", + "src": "8938:6:5" + }, + "nativeSrc": "8938:134:5", + "nodeType": "YulFunctionCall", + "src": "8938:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "8928:6:5", + "nodeType": "YulIdentifier", + "src": "8928:6:5" + } + ] + }, + { + "nativeSrc": "9090:209:5", + "nodeType": "YulAssignment", + "src": "9090:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "9135:6:5", + "nodeType": "YulIdentifier", + "src": "9135:6:5" + }, + { + "name": "h", + "nativeSrc": "9143:1:5", + "nodeType": "YulIdentifier", + "src": "9143:1:5" + }, + { + "name": "frField", + "nativeSrc": "9146:7:5", + "nodeType": "YulIdentifier", + "src": "9146:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "9128:6:5", + "nodeType": "YulIdentifier", + "src": "9128:6:5" + }, + "nativeSrc": "9128:26:5", + "nodeType": "YulFunctionCall", + "src": "9128:26:5" + }, + { + "kind": "number", + "nativeSrc": "9176:76:5", + "nodeType": "YulLiteral", + "src": "9176:76:5", + "type": "", + "value": "2450972517788523786981910980516860147992539249204314270739451472218657823669" + }, + { + "name": "frField", + "nativeSrc": "9274:7:5", + "nodeType": "YulIdentifier", + "src": "9274:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "9100:6:5", + "nodeType": "YulIdentifier", + "src": "9100:6:5" + }, + "nativeSrc": "9100:199:5", + "nodeType": "YulFunctionCall", + "src": "9100:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "9090:6:5", + "nodeType": "YulIdentifier", + "src": "9090:6:5" + } + ] + }, + { + "nativeSrc": "9316:41:5", + "nodeType": "YulAssignment", + "src": "9316:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "9333:6:5", + "nodeType": "YulIdentifier", + "src": "9333:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "9341:6:5", + "nodeType": "YulIdentifier", + "src": "9341:6:5" + }, + { + "name": "frField", + "nativeSrc": "9349:7:5", + "nodeType": "YulIdentifier", + "src": "9349:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9326:6:5", + "nodeType": "YulIdentifier", + "src": "9326:6:5" + }, + "nativeSrc": "9326:31:5", + "nodeType": "YulFunctionCall", + "src": "9326:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9316:6:5", + "nodeType": "YulIdentifier", + "src": "9316:6:5" + } + ] + }, + { + "nativeSrc": "9374:41:5", + "nodeType": "YulAssignment", + "src": "9374:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "9391:6:5", + "nodeType": "YulIdentifier", + "src": "9391:6:5" + }, + { + "name": "output", + "nativeSrc": "9399:6:5", + "nodeType": "YulIdentifier", + "src": "9399:6:5" + }, + { + "name": "frField", + "nativeSrc": "9407:7:5", + "nodeType": "YulIdentifier", + "src": "9407:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9384:6:5", + "nodeType": "YulIdentifier", + "src": "9384:6:5" + }, + "nativeSrc": "9384:31:5", + "nodeType": "YulFunctionCall", + "src": "9384:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9374:6:5", + "nodeType": "YulIdentifier", + "src": "9374:6:5" + } + ] + }, + { + "nativeSrc": "9432:41:5", + "nodeType": "YulAssignment", + "src": "9432:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "9449:6:5", + "nodeType": "YulIdentifier", + "src": "9449:6:5" + }, + { + "name": "output", + "nativeSrc": "9457:6:5", + "nodeType": "YulIdentifier", + "src": "9457:6:5" + }, + { + "name": "frField", + "nativeSrc": "9465:7:5", + "nodeType": "YulIdentifier", + "src": "9465:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9442:6:5", + "nodeType": "YulIdentifier", + "src": "9442:6:5" + }, + "nativeSrc": "9442:31:5", + "nodeType": "YulFunctionCall", + "src": "9442:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9432:6:5", + "nodeType": "YulIdentifier", + "src": "9432:6:5" + } + ] + }, + { + "nativeSrc": "9490:144:5", + "nodeType": "YulAssignment", + "src": "9490:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "9535:6:5", + "nodeType": "YulIdentifier", + "src": "9535:6:5" + }, + { + "name": "output", + "nativeSrc": "9543:6:5", + "nodeType": "YulIdentifier", + "src": "9543:6:5" + }, + { + "name": "frField", + "nativeSrc": "9551:7:5", + "nodeType": "YulIdentifier", + "src": "9551:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9528:6:5", + "nodeType": "YulIdentifier", + "src": "9528:6:5" + }, + "nativeSrc": "9528:31:5", + "nodeType": "YulFunctionCall", + "src": "9528:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "9581:6:5", + "nodeType": "YulIdentifier", + "src": "9581:6:5" + }, + { + "name": "frField", + "nativeSrc": "9609:7:5", + "nodeType": "YulIdentifier", + "src": "9609:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9500:6:5", + "nodeType": "YulIdentifier", + "src": "9500:6:5" + }, + "nativeSrc": "9500:134:5", + "nodeType": "YulFunctionCall", + "src": "9500:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9490:6:5", + "nodeType": "YulIdentifier", + "src": "9490:6:5" + } + ] + }, + { + "nativeSrc": "9652:209:5", + "nodeType": "YulAssignment", + "src": "9652:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "9697:6:5", + "nodeType": "YulIdentifier", + "src": "9697:6:5" + }, + { + "name": "h", + "nativeSrc": "9705:1:5", + "nodeType": "YulIdentifier", + "src": "9705:1:5" + }, + { + "name": "frField", + "nativeSrc": "9708:7:5", + "nodeType": "YulIdentifier", + "src": "9708:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "9690:6:5", + "nodeType": "YulIdentifier", + "src": "9690:6:5" + }, + "nativeSrc": "9690:26:5", + "nodeType": "YulFunctionCall", + "src": "9690:26:5" + }, + { + "kind": "number", + "nativeSrc": "9738:76:5", + "nodeType": "YulLiteral", + "src": "9738:76:5", + "type": "", + "value": "2707650969937705465351357815756127556801434183777713569980595073268026256128" + }, + { + "name": "frField", + "nativeSrc": "9836:7:5", + "nodeType": "YulIdentifier", + "src": "9836:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "9662:6:5", + "nodeType": "YulIdentifier", + "src": "9662:6:5" + }, + "nativeSrc": "9662:199:5", + "nodeType": "YulFunctionCall", + "src": "9662:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "9652:6:5", + "nodeType": "YulIdentifier", + "src": "9652:6:5" + } + ] + }, + { + "nativeSrc": "9878:41:5", + "nodeType": "YulAssignment", + "src": "9878:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "9895:6:5", + "nodeType": "YulIdentifier", + "src": "9895:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "9903:6:5", + "nodeType": "YulIdentifier", + "src": "9903:6:5" + }, + { + "name": "frField", + "nativeSrc": "9911:7:5", + "nodeType": "YulIdentifier", + "src": "9911:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9888:6:5", + "nodeType": "YulIdentifier", + "src": "9888:6:5" + }, + "nativeSrc": "9888:31:5", + "nodeType": "YulFunctionCall", + "src": "9888:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9878:6:5", + "nodeType": "YulIdentifier", + "src": "9878:6:5" + } + ] + }, + { + "nativeSrc": "9936:41:5", + "nodeType": "YulAssignment", + "src": "9936:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "9953:6:5", + "nodeType": "YulIdentifier", + "src": "9953:6:5" + }, + { + "name": "output", + "nativeSrc": "9961:6:5", + "nodeType": "YulIdentifier", + "src": "9961:6:5" + }, + { + "name": "frField", + "nativeSrc": "9969:7:5", + "nodeType": "YulIdentifier", + "src": "9969:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "9946:6:5", + "nodeType": "YulIdentifier", + "src": "9946:6:5" + }, + "nativeSrc": "9946:31:5", + "nodeType": "YulFunctionCall", + "src": "9946:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9936:6:5", + "nodeType": "YulIdentifier", + "src": "9936:6:5" + } + ] + }, + { + "nativeSrc": "9994:41:5", + "nodeType": "YulAssignment", + "src": "9994:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "10011:6:5", + "nodeType": "YulIdentifier", + "src": "10011:6:5" + }, + { + "name": "output", + "nativeSrc": "10019:6:5", + "nodeType": "YulIdentifier", + "src": "10019:6:5" + }, + { + "name": "frField", + "nativeSrc": "10027:7:5", + "nodeType": "YulIdentifier", + "src": "10027:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10004:6:5", + "nodeType": "YulIdentifier", + "src": "10004:6:5" + }, + "nativeSrc": "10004:31:5", + "nodeType": "YulFunctionCall", + "src": "10004:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "9994:6:5", + "nodeType": "YulIdentifier", + "src": "9994:6:5" + } + ] + }, + { + "nativeSrc": "10052:144:5", + "nodeType": "YulAssignment", + "src": "10052:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "10097:6:5", + "nodeType": "YulIdentifier", + "src": "10097:6:5" + }, + { + "name": "output", + "nativeSrc": "10105:6:5", + "nodeType": "YulIdentifier", + "src": "10105:6:5" + }, + { + "name": "frField", + "nativeSrc": "10113:7:5", + "nodeType": "YulIdentifier", + "src": "10113:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10090:6:5", + "nodeType": "YulIdentifier", + "src": "10090:6:5" + }, + "nativeSrc": "10090:31:5", + "nodeType": "YulFunctionCall", + "src": "10090:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "10143:6:5", + "nodeType": "YulIdentifier", + "src": "10143:6:5" + }, + { + "name": "frField", + "nativeSrc": "10171:7:5", + "nodeType": "YulIdentifier", + "src": "10171:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10062:6:5", + "nodeType": "YulIdentifier", + "src": "10062:6:5" + }, + "nativeSrc": "10062:134:5", + "nodeType": "YulFunctionCall", + "src": "10062:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "10052:6:5", + "nodeType": "YulIdentifier", + "src": "10052:6:5" + } + ] + }, + { + "nativeSrc": "10214:209:5", + "nodeType": "YulAssignment", + "src": "10214:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "10259:6:5", + "nodeType": "YulIdentifier", + "src": "10259:6:5" + }, + { + "name": "h", + "nativeSrc": "10267:1:5", + "nodeType": "YulIdentifier", + "src": "10267:1:5" + }, + { + "name": "frField", + "nativeSrc": "10270:7:5", + "nodeType": "YulIdentifier", + "src": "10270:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "10252:6:5", + "nodeType": "YulIdentifier", + "src": "10252:6:5" + }, + "nativeSrc": "10252:26:5", + "nodeType": "YulFunctionCall", + "src": "10252:26:5" + }, + { + "kind": "number", + "nativeSrc": "10300:76:5", + "nodeType": "YulLiteral", + "src": "10300:76:5", + "type": "", + "value": "7874262417209200618473337039194351886630571503697269268624099887104149796259" + }, + { + "name": "frField", + "nativeSrc": "10398:7:5", + "nodeType": "YulIdentifier", + "src": "10398:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "10224:6:5", + "nodeType": "YulIdentifier", + "src": "10224:6:5" + }, + "nativeSrc": "10224:199:5", + "nodeType": "YulFunctionCall", + "src": "10224:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "10214:6:5", + "nodeType": "YulIdentifier", + "src": "10214:6:5" + } + ] + }, + { + "nativeSrc": "10440:41:5", + "nodeType": "YulAssignment", + "src": "10440:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "10457:6:5", + "nodeType": "YulIdentifier", + "src": "10457:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "10465:6:5", + "nodeType": "YulIdentifier", + "src": "10465:6:5" + }, + { + "name": "frField", + "nativeSrc": "10473:7:5", + "nodeType": "YulIdentifier", + "src": "10473:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10450:6:5", + "nodeType": "YulIdentifier", + "src": "10450:6:5" + }, + "nativeSrc": "10450:31:5", + "nodeType": "YulFunctionCall", + "src": "10450:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "10440:6:5", + "nodeType": "YulIdentifier", + "src": "10440:6:5" + } + ] + }, + { + "nativeSrc": "10498:41:5", + "nodeType": "YulAssignment", + "src": "10498:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "10515:6:5", + "nodeType": "YulIdentifier", + "src": "10515:6:5" + }, + { + "name": "output", + "nativeSrc": "10523:6:5", + "nodeType": "YulIdentifier", + "src": "10523:6:5" + }, + { + "name": "frField", + "nativeSrc": "10531:7:5", + "nodeType": "YulIdentifier", + "src": "10531:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10508:6:5", + "nodeType": "YulIdentifier", + "src": "10508:6:5" + }, + "nativeSrc": "10508:31:5", + "nodeType": "YulFunctionCall", + "src": "10508:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "10498:6:5", + "nodeType": "YulIdentifier", + "src": "10498:6:5" + } + ] + }, + { + "nativeSrc": "10556:41:5", + "nodeType": "YulAssignment", + "src": "10556:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "10573:6:5", + "nodeType": "YulIdentifier", + "src": "10573:6:5" + }, + { + "name": "output", + "nativeSrc": "10581:6:5", + "nodeType": "YulIdentifier", + "src": "10581:6:5" + }, + { + "name": "frField", + "nativeSrc": "10589:7:5", + "nodeType": "YulIdentifier", + "src": "10589:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10566:6:5", + "nodeType": "YulIdentifier", + "src": "10566:6:5" + }, + "nativeSrc": "10566:31:5", + "nodeType": "YulFunctionCall", + "src": "10566:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "10556:6:5", + "nodeType": "YulIdentifier", + "src": "10556:6:5" + } + ] + }, + { + "nativeSrc": "10614:144:5", + "nodeType": "YulAssignment", + "src": "10614:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "10659:6:5", + "nodeType": "YulIdentifier", + "src": "10659:6:5" + }, + { + "name": "output", + "nativeSrc": "10667:6:5", + "nodeType": "YulIdentifier", + "src": "10667:6:5" + }, + { + "name": "frField", + "nativeSrc": "10675:7:5", + "nodeType": "YulIdentifier", + "src": "10675:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10652:6:5", + "nodeType": "YulIdentifier", + "src": "10652:6:5" + }, + "nativeSrc": "10652:31:5", + "nodeType": "YulFunctionCall", + "src": "10652:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "10705:6:5", + "nodeType": "YulIdentifier", + "src": "10705:6:5" + }, + { + "name": "frField", + "nativeSrc": "10733:7:5", + "nodeType": "YulIdentifier", + "src": "10733:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "10624:6:5", + "nodeType": "YulIdentifier", + "src": "10624:6:5" + }, + "nativeSrc": "10624:134:5", + "nodeType": "YulFunctionCall", + "src": "10624:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "10614:6:5", + "nodeType": "YulIdentifier", + "src": "10614:6:5" + } + ] + }, + { + "nativeSrc": "10776:209:5", + "nodeType": "YulAssignment", + "src": "10776:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "10821:6:5", + "nodeType": "YulIdentifier", + "src": "10821:6:5" + }, + { + "name": "h", + "nativeSrc": "10829:1:5", + "nodeType": "YulIdentifier", + "src": "10829:1:5" + }, + { + "name": "frField", + "nativeSrc": "10832:7:5", + "nodeType": "YulIdentifier", + "src": "10832:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "10814:6:5", + "nodeType": "YulIdentifier", + "src": "10814:6:5" + }, + "nativeSrc": "10814:26:5", + "nodeType": "YulFunctionCall", + "src": "10814:26:5" + }, + { + "kind": "number", + "nativeSrc": "10862:76:5", + "nodeType": "YulLiteral", + "src": "10862:76:5", + "type": "", + "value": "3089899920017810079637556867207463807565125948241456751227734590626249857937" + }, + { + "name": "frField", + "nativeSrc": "10960:7:5", + "nodeType": "YulIdentifier", + "src": "10960:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "10786:6:5", + "nodeType": "YulIdentifier", + "src": "10786:6:5" + }, + "nativeSrc": "10786:199:5", + "nodeType": "YulFunctionCall", + "src": "10786:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "10776:6:5", + "nodeType": "YulIdentifier", + "src": "10776:6:5" + } + ] + }, + { + "nativeSrc": "11002:41:5", + "nodeType": "YulAssignment", + "src": "11002:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "11019:6:5", + "nodeType": "YulIdentifier", + "src": "11019:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "11027:6:5", + "nodeType": "YulIdentifier", + "src": "11027:6:5" + }, + { + "name": "frField", + "nativeSrc": "11035:7:5", + "nodeType": "YulIdentifier", + "src": "11035:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11012:6:5", + "nodeType": "YulIdentifier", + "src": "11012:6:5" + }, + "nativeSrc": "11012:31:5", + "nodeType": "YulFunctionCall", + "src": "11012:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11002:6:5", + "nodeType": "YulIdentifier", + "src": "11002:6:5" + } + ] + }, + { + "nativeSrc": "11060:41:5", + "nodeType": "YulAssignment", + "src": "11060:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "11077:6:5", + "nodeType": "YulIdentifier", + "src": "11077:6:5" + }, + { + "name": "output", + "nativeSrc": "11085:6:5", + "nodeType": "YulIdentifier", + "src": "11085:6:5" + }, + { + "name": "frField", + "nativeSrc": "11093:7:5", + "nodeType": "YulIdentifier", + "src": "11093:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11070:6:5", + "nodeType": "YulIdentifier", + "src": "11070:6:5" + }, + "nativeSrc": "11070:31:5", + "nodeType": "YulFunctionCall", + "src": "11070:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11060:6:5", + "nodeType": "YulIdentifier", + "src": "11060:6:5" + } + ] + }, + { + "nativeSrc": "11118:41:5", + "nodeType": "YulAssignment", + "src": "11118:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "11135:6:5", + "nodeType": "YulIdentifier", + "src": "11135:6:5" + }, + { + "name": "output", + "nativeSrc": "11143:6:5", + "nodeType": "YulIdentifier", + "src": "11143:6:5" + }, + { + "name": "frField", + "nativeSrc": "11151:7:5", + "nodeType": "YulIdentifier", + "src": "11151:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11128:6:5", + "nodeType": "YulIdentifier", + "src": "11128:6:5" + }, + "nativeSrc": "11128:31:5", + "nodeType": "YulFunctionCall", + "src": "11128:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11118:6:5", + "nodeType": "YulIdentifier", + "src": "11118:6:5" + } + ] + }, + { + "nativeSrc": "11176:144:5", + "nodeType": "YulAssignment", + "src": "11176:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "11221:6:5", + "nodeType": "YulIdentifier", + "src": "11221:6:5" + }, + { + "name": "output", + "nativeSrc": "11229:6:5", + "nodeType": "YulIdentifier", + "src": "11229:6:5" + }, + { + "name": "frField", + "nativeSrc": "11237:7:5", + "nodeType": "YulIdentifier", + "src": "11237:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11214:6:5", + "nodeType": "YulIdentifier", + "src": "11214:6:5" + }, + "nativeSrc": "11214:31:5", + "nodeType": "YulFunctionCall", + "src": "11214:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "11267:6:5", + "nodeType": "YulIdentifier", + "src": "11267:6:5" + }, + { + "name": "frField", + "nativeSrc": "11295:7:5", + "nodeType": "YulIdentifier", + "src": "11295:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11186:6:5", + "nodeType": "YulIdentifier", + "src": "11186:6:5" + }, + "nativeSrc": "11186:134:5", + "nodeType": "YulFunctionCall", + "src": "11186:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11176:6:5", + "nodeType": "YulIdentifier", + "src": "11176:6:5" + } + ] + }, + { + "nativeSrc": "11338:209:5", + "nodeType": "YulAssignment", + "src": "11338:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "11383:6:5", + "nodeType": "YulIdentifier", + "src": "11383:6:5" + }, + { + "name": "h", + "nativeSrc": "11391:1:5", + "nodeType": "YulIdentifier", + "src": "11391:1:5" + }, + { + "name": "frField", + "nativeSrc": "11394:7:5", + "nodeType": "YulIdentifier", + "src": "11394:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "11376:6:5", + "nodeType": "YulIdentifier", + "src": "11376:6:5" + }, + "nativeSrc": "11376:26:5", + "nodeType": "YulFunctionCall", + "src": "11376:26:5" + }, + { + "kind": "number", + "nativeSrc": "11424:76:5", + "nodeType": "YulLiteral", + "src": "11424:76:5", + "type": "", + "value": "8231877132811199596376758288825197494440517476607659739835166243301765860904" + }, + { + "name": "frField", + "nativeSrc": "11522:7:5", + "nodeType": "YulIdentifier", + "src": "11522:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "11348:6:5", + "nodeType": "YulIdentifier", + "src": "11348:6:5" + }, + "nativeSrc": "11348:199:5", + "nodeType": "YulFunctionCall", + "src": "11348:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "11338:6:5", + "nodeType": "YulIdentifier", + "src": "11338:6:5" + } + ] + }, + { + "nativeSrc": "11564:41:5", + "nodeType": "YulAssignment", + "src": "11564:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "11581:6:5", + "nodeType": "YulIdentifier", + "src": "11581:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "11589:6:5", + "nodeType": "YulIdentifier", + "src": "11589:6:5" + }, + { + "name": "frField", + "nativeSrc": "11597:7:5", + "nodeType": "YulIdentifier", + "src": "11597:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11574:6:5", + "nodeType": "YulIdentifier", + "src": "11574:6:5" + }, + "nativeSrc": "11574:31:5", + "nodeType": "YulFunctionCall", + "src": "11574:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11564:6:5", + "nodeType": "YulIdentifier", + "src": "11564:6:5" + } + ] + }, + { + "nativeSrc": "11622:41:5", + "nodeType": "YulAssignment", + "src": "11622:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "11639:6:5", + "nodeType": "YulIdentifier", + "src": "11639:6:5" + }, + { + "name": "output", + "nativeSrc": "11647:6:5", + "nodeType": "YulIdentifier", + "src": "11647:6:5" + }, + { + "name": "frField", + "nativeSrc": "11655:7:5", + "nodeType": "YulIdentifier", + "src": "11655:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11632:6:5", + "nodeType": "YulIdentifier", + "src": "11632:6:5" + }, + "nativeSrc": "11632:31:5", + "nodeType": "YulFunctionCall", + "src": "11632:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11622:6:5", + "nodeType": "YulIdentifier", + "src": "11622:6:5" + } + ] + }, + { + "nativeSrc": "11680:41:5", + "nodeType": "YulAssignment", + "src": "11680:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "11697:6:5", + "nodeType": "YulIdentifier", + "src": "11697:6:5" + }, + { + "name": "output", + "nativeSrc": "11705:6:5", + "nodeType": "YulIdentifier", + "src": "11705:6:5" + }, + { + "name": "frField", + "nativeSrc": "11713:7:5", + "nodeType": "YulIdentifier", + "src": "11713:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11690:6:5", + "nodeType": "YulIdentifier", + "src": "11690:6:5" + }, + "nativeSrc": "11690:31:5", + "nodeType": "YulFunctionCall", + "src": "11690:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11680:6:5", + "nodeType": "YulIdentifier", + "src": "11680:6:5" + } + ] + }, + { + "nativeSrc": "11738:144:5", + "nodeType": "YulAssignment", + "src": "11738:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "11783:6:5", + "nodeType": "YulIdentifier", + "src": "11783:6:5" + }, + { + "name": "output", + "nativeSrc": "11791:6:5", + "nodeType": "YulIdentifier", + "src": "11791:6:5" + }, + { + "name": "frField", + "nativeSrc": "11799:7:5", + "nodeType": "YulIdentifier", + "src": "11799:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11776:6:5", + "nodeType": "YulIdentifier", + "src": "11776:6:5" + }, + "nativeSrc": "11776:31:5", + "nodeType": "YulFunctionCall", + "src": "11776:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "11829:6:5", + "nodeType": "YulIdentifier", + "src": "11829:6:5" + }, + { + "name": "frField", + "nativeSrc": "11857:7:5", + "nodeType": "YulIdentifier", + "src": "11857:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "11748:6:5", + "nodeType": "YulIdentifier", + "src": "11748:6:5" + }, + "nativeSrc": "11748:134:5", + "nodeType": "YulFunctionCall", + "src": "11748:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "11738:6:5", + "nodeType": "YulIdentifier", + "src": "11738:6:5" + } + ] + }, + { + "nativeSrc": "11900:209:5", + "nodeType": "YulAssignment", + "src": "11900:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "11945:6:5", + "nodeType": "YulIdentifier", + "src": "11945:6:5" + }, + { + "name": "h", + "nativeSrc": "11953:1:5", + "nodeType": "YulIdentifier", + "src": "11953:1:5" + }, + { + "name": "frField", + "nativeSrc": "11956:7:5", + "nodeType": "YulIdentifier", + "src": "11956:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "11938:6:5", + "nodeType": "YulIdentifier", + "src": "11938:6:5" + }, + "nativeSrc": "11938:26:5", + "nodeType": "YulFunctionCall", + "src": "11938:26:5" + }, + { + "kind": "number", + "nativeSrc": "11986:76:5", + "nodeType": "YulLiteral", + "src": "11986:76:5", + "type": "", + "value": "4889925300033981791993403687473437637164964770774352761851347729331041993593" + }, + { + "name": "frField", + "nativeSrc": "12084:7:5", + "nodeType": "YulIdentifier", + "src": "12084:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "11910:6:5", + "nodeType": "YulIdentifier", + "src": "11910:6:5" + }, + "nativeSrc": "11910:199:5", + "nodeType": "YulFunctionCall", + "src": "11910:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "11900:6:5", + "nodeType": "YulIdentifier", + "src": "11900:6:5" + } + ] + }, + { + "nativeSrc": "12126:41:5", + "nodeType": "YulAssignment", + "src": "12126:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "12143:6:5", + "nodeType": "YulIdentifier", + "src": "12143:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "12151:6:5", + "nodeType": "YulIdentifier", + "src": "12151:6:5" + }, + { + "name": "frField", + "nativeSrc": "12159:7:5", + "nodeType": "YulIdentifier", + "src": "12159:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12136:6:5", + "nodeType": "YulIdentifier", + "src": "12136:6:5" + }, + "nativeSrc": "12136:31:5", + "nodeType": "YulFunctionCall", + "src": "12136:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12126:6:5", + "nodeType": "YulIdentifier", + "src": "12126:6:5" + } + ] + }, + { + "nativeSrc": "12184:41:5", + "nodeType": "YulAssignment", + "src": "12184:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "12201:6:5", + "nodeType": "YulIdentifier", + "src": "12201:6:5" + }, + { + "name": "output", + "nativeSrc": "12209:6:5", + "nodeType": "YulIdentifier", + "src": "12209:6:5" + }, + { + "name": "frField", + "nativeSrc": "12217:7:5", + "nodeType": "YulIdentifier", + "src": "12217:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12194:6:5", + "nodeType": "YulIdentifier", + "src": "12194:6:5" + }, + "nativeSrc": "12194:31:5", + "nodeType": "YulFunctionCall", + "src": "12194:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12184:6:5", + "nodeType": "YulIdentifier", + "src": "12184:6:5" + } + ] + }, + { + "nativeSrc": "12242:41:5", + "nodeType": "YulAssignment", + "src": "12242:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "12259:6:5", + "nodeType": "YulIdentifier", + "src": "12259:6:5" + }, + { + "name": "output", + "nativeSrc": "12267:6:5", + "nodeType": "YulIdentifier", + "src": "12267:6:5" + }, + { + "name": "frField", + "nativeSrc": "12275:7:5", + "nodeType": "YulIdentifier", + "src": "12275:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12252:6:5", + "nodeType": "YulIdentifier", + "src": "12252:6:5" + }, + "nativeSrc": "12252:31:5", + "nodeType": "YulFunctionCall", + "src": "12252:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12242:6:5", + "nodeType": "YulIdentifier", + "src": "12242:6:5" + } + ] + }, + { + "nativeSrc": "12300:144:5", + "nodeType": "YulAssignment", + "src": "12300:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "12345:6:5", + "nodeType": "YulIdentifier", + "src": "12345:6:5" + }, + { + "name": "output", + "nativeSrc": "12353:6:5", + "nodeType": "YulIdentifier", + "src": "12353:6:5" + }, + { + "name": "frField", + "nativeSrc": "12361:7:5", + "nodeType": "YulIdentifier", + "src": "12361:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12338:6:5", + "nodeType": "YulIdentifier", + "src": "12338:6:5" + }, + "nativeSrc": "12338:31:5", + "nodeType": "YulFunctionCall", + "src": "12338:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "12391:6:5", + "nodeType": "YulIdentifier", + "src": "12391:6:5" + }, + { + "name": "frField", + "nativeSrc": "12419:7:5", + "nodeType": "YulIdentifier", + "src": "12419:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12310:6:5", + "nodeType": "YulIdentifier", + "src": "12310:6:5" + }, + "nativeSrc": "12310:134:5", + "nodeType": "YulFunctionCall", + "src": "12310:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12300:6:5", + "nodeType": "YulIdentifier", + "src": "12300:6:5" + } + ] + }, + { + "nativeSrc": "12462:208:5", + "nodeType": "YulAssignment", + "src": "12462:208:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "12507:6:5", + "nodeType": "YulIdentifier", + "src": "12507:6:5" + }, + { + "name": "h", + "nativeSrc": "12515:1:5", + "nodeType": "YulIdentifier", + "src": "12515:1:5" + }, + { + "name": "frField", + "nativeSrc": "12518:7:5", + "nodeType": "YulIdentifier", + "src": "12518:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "12500:6:5", + "nodeType": "YulIdentifier", + "src": "12500:6:5" + }, + "nativeSrc": "12500:26:5", + "nodeType": "YulFunctionCall", + "src": "12500:26:5" + }, + { + "kind": "number", + "nativeSrc": "12548:75:5", + "nodeType": "YulLiteral", + "src": "12548:75:5", + "type": "", + "value": "506118690894045980182310960875885680782486421163823930266542078948815948062" + }, + { + "name": "frField", + "nativeSrc": "12645:7:5", + "nodeType": "YulIdentifier", + "src": "12645:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "12472:6:5", + "nodeType": "YulIdentifier", + "src": "12472:6:5" + }, + "nativeSrc": "12472:198:5", + "nodeType": "YulFunctionCall", + "src": "12472:198:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "12462:6:5", + "nodeType": "YulIdentifier", + "src": "12462:6:5" + } + ] + }, + { + "nativeSrc": "12687:41:5", + "nodeType": "YulAssignment", + "src": "12687:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "12704:6:5", + "nodeType": "YulIdentifier", + "src": "12704:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "12712:6:5", + "nodeType": "YulIdentifier", + "src": "12712:6:5" + }, + { + "name": "frField", + "nativeSrc": "12720:7:5", + "nodeType": "YulIdentifier", + "src": "12720:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12697:6:5", + "nodeType": "YulIdentifier", + "src": "12697:6:5" + }, + "nativeSrc": "12697:31:5", + "nodeType": "YulFunctionCall", + "src": "12697:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12687:6:5", + "nodeType": "YulIdentifier", + "src": "12687:6:5" + } + ] + }, + { + "nativeSrc": "12745:41:5", + "nodeType": "YulAssignment", + "src": "12745:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "12762:6:5", + "nodeType": "YulIdentifier", + "src": "12762:6:5" + }, + { + "name": "output", + "nativeSrc": "12770:6:5", + "nodeType": "YulIdentifier", + "src": "12770:6:5" + }, + { + "name": "frField", + "nativeSrc": "12778:7:5", + "nodeType": "YulIdentifier", + "src": "12778:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12755:6:5", + "nodeType": "YulIdentifier", + "src": "12755:6:5" + }, + "nativeSrc": "12755:31:5", + "nodeType": "YulFunctionCall", + "src": "12755:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12745:6:5", + "nodeType": "YulIdentifier", + "src": "12745:6:5" + } + ] + }, + { + "nativeSrc": "12803:41:5", + "nodeType": "YulAssignment", + "src": "12803:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "12820:6:5", + "nodeType": "YulIdentifier", + "src": "12820:6:5" + }, + { + "name": "output", + "nativeSrc": "12828:6:5", + "nodeType": "YulIdentifier", + "src": "12828:6:5" + }, + { + "name": "frField", + "nativeSrc": "12836:7:5", + "nodeType": "YulIdentifier", + "src": "12836:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12813:6:5", + "nodeType": "YulIdentifier", + "src": "12813:6:5" + }, + "nativeSrc": "12813:31:5", + "nodeType": "YulFunctionCall", + "src": "12813:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12803:6:5", + "nodeType": "YulIdentifier", + "src": "12803:6:5" + } + ] + }, + { + "nativeSrc": "12861:144:5", + "nodeType": "YulAssignment", + "src": "12861:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "12906:6:5", + "nodeType": "YulIdentifier", + "src": "12906:6:5" + }, + { + "name": "output", + "nativeSrc": "12914:6:5", + "nodeType": "YulIdentifier", + "src": "12914:6:5" + }, + { + "name": "frField", + "nativeSrc": "12922:7:5", + "nodeType": "YulIdentifier", + "src": "12922:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12899:6:5", + "nodeType": "YulIdentifier", + "src": "12899:6:5" + }, + "nativeSrc": "12899:31:5", + "nodeType": "YulFunctionCall", + "src": "12899:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "12952:6:5", + "nodeType": "YulIdentifier", + "src": "12952:6:5" + }, + { + "name": "frField", + "nativeSrc": "12980:7:5", + "nodeType": "YulIdentifier", + "src": "12980:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "12871:6:5", + "nodeType": "YulIdentifier", + "src": "12871:6:5" + }, + "nativeSrc": "12871:134:5", + "nodeType": "YulFunctionCall", + "src": "12871:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "12861:6:5", + "nodeType": "YulIdentifier", + "src": "12861:6:5" + } + ] + }, + { + "nativeSrc": "13023:209:5", + "nodeType": "YulAssignment", + "src": "13023:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "13068:6:5", + "nodeType": "YulIdentifier", + "src": "13068:6:5" + }, + { + "name": "h", + "nativeSrc": "13076:1:5", + "nodeType": "YulIdentifier", + "src": "13076:1:5" + }, + { + "name": "frField", + "nativeSrc": "13079:7:5", + "nodeType": "YulIdentifier", + "src": "13079:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "13061:6:5", + "nodeType": "YulIdentifier", + "src": "13061:6:5" + }, + "nativeSrc": "13061:26:5", + "nodeType": "YulFunctionCall", + "src": "13061:26:5" + }, + { + "kind": "number", + "nativeSrc": "13109:76:5", + "nodeType": "YulLiteral", + "src": "13109:76:5", + "type": "", + "value": "4773308728424659273056201947330432214661646691949138677097247858746575076542" + }, + { + "name": "frField", + "nativeSrc": "13207:7:5", + "nodeType": "YulIdentifier", + "src": "13207:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "13033:6:5", + "nodeType": "YulIdentifier", + "src": "13033:6:5" + }, + "nativeSrc": "13033:199:5", + "nodeType": "YulFunctionCall", + "src": "13033:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "13023:6:5", + "nodeType": "YulIdentifier", + "src": "13023:6:5" + } + ] + }, + { + "nativeSrc": "13249:41:5", + "nodeType": "YulAssignment", + "src": "13249:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "13266:6:5", + "nodeType": "YulIdentifier", + "src": "13266:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "13274:6:5", + "nodeType": "YulIdentifier", + "src": "13274:6:5" + }, + { + "name": "frField", + "nativeSrc": "13282:7:5", + "nodeType": "YulIdentifier", + "src": "13282:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13259:6:5", + "nodeType": "YulIdentifier", + "src": "13259:6:5" + }, + "nativeSrc": "13259:31:5", + "nodeType": "YulFunctionCall", + "src": "13259:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13249:6:5", + "nodeType": "YulIdentifier", + "src": "13249:6:5" + } + ] + }, + { + "nativeSrc": "13307:41:5", + "nodeType": "YulAssignment", + "src": "13307:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "13324:6:5", + "nodeType": "YulIdentifier", + "src": "13324:6:5" + }, + { + "name": "output", + "nativeSrc": "13332:6:5", + "nodeType": "YulIdentifier", + "src": "13332:6:5" + }, + { + "name": "frField", + "nativeSrc": "13340:7:5", + "nodeType": "YulIdentifier", + "src": "13340:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13317:6:5", + "nodeType": "YulIdentifier", + "src": "13317:6:5" + }, + "nativeSrc": "13317:31:5", + "nodeType": "YulFunctionCall", + "src": "13317:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13307:6:5", + "nodeType": "YulIdentifier", + "src": "13307:6:5" + } + ] + }, + { + "nativeSrc": "13365:41:5", + "nodeType": "YulAssignment", + "src": "13365:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "13382:6:5", + "nodeType": "YulIdentifier", + "src": "13382:6:5" + }, + { + "name": "output", + "nativeSrc": "13390:6:5", + "nodeType": "YulIdentifier", + "src": "13390:6:5" + }, + { + "name": "frField", + "nativeSrc": "13398:7:5", + "nodeType": "YulIdentifier", + "src": "13398:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13375:6:5", + "nodeType": "YulIdentifier", + "src": "13375:6:5" + }, + "nativeSrc": "13375:31:5", + "nodeType": "YulFunctionCall", + "src": "13375:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13365:6:5", + "nodeType": "YulIdentifier", + "src": "13365:6:5" + } + ] + }, + { + "nativeSrc": "13423:144:5", + "nodeType": "YulAssignment", + "src": "13423:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "13468:6:5", + "nodeType": "YulIdentifier", + "src": "13468:6:5" + }, + { + "name": "output", + "nativeSrc": "13476:6:5", + "nodeType": "YulIdentifier", + "src": "13476:6:5" + }, + { + "name": "frField", + "nativeSrc": "13484:7:5", + "nodeType": "YulIdentifier", + "src": "13484:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13461:6:5", + "nodeType": "YulIdentifier", + "src": "13461:6:5" + }, + "nativeSrc": "13461:31:5", + "nodeType": "YulFunctionCall", + "src": "13461:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "13514:6:5", + "nodeType": "YulIdentifier", + "src": "13514:6:5" + }, + { + "name": "frField", + "nativeSrc": "13542:7:5", + "nodeType": "YulIdentifier", + "src": "13542:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13433:6:5", + "nodeType": "YulIdentifier", + "src": "13433:6:5" + }, + "nativeSrc": "13433:134:5", + "nodeType": "YulFunctionCall", + "src": "13433:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13423:6:5", + "nodeType": "YulIdentifier", + "src": "13423:6:5" + } + ] + }, + { + "nativeSrc": "13585:209:5", + "nodeType": "YulAssignment", + "src": "13585:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "13630:6:5", + "nodeType": "YulIdentifier", + "src": "13630:6:5" + }, + { + "name": "h", + "nativeSrc": "13638:1:5", + "nodeType": "YulIdentifier", + "src": "13638:1:5" + }, + { + "name": "frField", + "nativeSrc": "13641:7:5", + "nodeType": "YulIdentifier", + "src": "13641:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "13623:6:5", + "nodeType": "YulIdentifier", + "src": "13623:6:5" + }, + "nativeSrc": "13623:26:5", + "nodeType": "YulFunctionCall", + "src": "13623:26:5" + }, + { + "kind": "number", + "nativeSrc": "13671:76:5", + "nodeType": "YulLiteral", + "src": "13671:76:5", + "type": "", + "value": "6610301125072219342086627276930551094394509958433369744427479834611436778066" + }, + { + "name": "frField", + "nativeSrc": "13769:7:5", + "nodeType": "YulIdentifier", + "src": "13769:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "13595:6:5", + "nodeType": "YulIdentifier", + "src": "13595:6:5" + }, + "nativeSrc": "13595:199:5", + "nodeType": "YulFunctionCall", + "src": "13595:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "13585:6:5", + "nodeType": "YulIdentifier", + "src": "13585:6:5" + } + ] + }, + { + "nativeSrc": "13811:41:5", + "nodeType": "YulAssignment", + "src": "13811:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "13828:6:5", + "nodeType": "YulIdentifier", + "src": "13828:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "13836:6:5", + "nodeType": "YulIdentifier", + "src": "13836:6:5" + }, + { + "name": "frField", + "nativeSrc": "13844:7:5", + "nodeType": "YulIdentifier", + "src": "13844:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13821:6:5", + "nodeType": "YulIdentifier", + "src": "13821:6:5" + }, + "nativeSrc": "13821:31:5", + "nodeType": "YulFunctionCall", + "src": "13821:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13811:6:5", + "nodeType": "YulIdentifier", + "src": "13811:6:5" + } + ] + }, + { + "nativeSrc": "13869:41:5", + "nodeType": "YulAssignment", + "src": "13869:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "13886:6:5", + "nodeType": "YulIdentifier", + "src": "13886:6:5" + }, + { + "name": "output", + "nativeSrc": "13894:6:5", + "nodeType": "YulIdentifier", + "src": "13894:6:5" + }, + { + "name": "frField", + "nativeSrc": "13902:7:5", + "nodeType": "YulIdentifier", + "src": "13902:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13879:6:5", + "nodeType": "YulIdentifier", + "src": "13879:6:5" + }, + "nativeSrc": "13879:31:5", + "nodeType": "YulFunctionCall", + "src": "13879:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13869:6:5", + "nodeType": "YulIdentifier", + "src": "13869:6:5" + } + ] + }, + { + "nativeSrc": "13927:41:5", + "nodeType": "YulAssignment", + "src": "13927:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "13944:6:5", + "nodeType": "YulIdentifier", + "src": "13944:6:5" + }, + { + "name": "output", + "nativeSrc": "13952:6:5", + "nodeType": "YulIdentifier", + "src": "13952:6:5" + }, + { + "name": "frField", + "nativeSrc": "13960:7:5", + "nodeType": "YulIdentifier", + "src": "13960:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13937:6:5", + "nodeType": "YulIdentifier", + "src": "13937:6:5" + }, + "nativeSrc": "13937:31:5", + "nodeType": "YulFunctionCall", + "src": "13937:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13927:6:5", + "nodeType": "YulIdentifier", + "src": "13927:6:5" + } + ] + }, + { + "nativeSrc": "13985:144:5", + "nodeType": "YulAssignment", + "src": "13985:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "14030:6:5", + "nodeType": "YulIdentifier", + "src": "14030:6:5" + }, + { + "name": "output", + "nativeSrc": "14038:6:5", + "nodeType": "YulIdentifier", + "src": "14038:6:5" + }, + { + "name": "frField", + "nativeSrc": "14046:7:5", + "nodeType": "YulIdentifier", + "src": "14046:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14023:6:5", + "nodeType": "YulIdentifier", + "src": "14023:6:5" + }, + "nativeSrc": "14023:31:5", + "nodeType": "YulFunctionCall", + "src": "14023:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "14076:6:5", + "nodeType": "YulIdentifier", + "src": "14076:6:5" + }, + { + "name": "frField", + "nativeSrc": "14104:7:5", + "nodeType": "YulIdentifier", + "src": "14104:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "13995:6:5", + "nodeType": "YulIdentifier", + "src": "13995:6:5" + }, + "nativeSrc": "13995:134:5", + "nodeType": "YulFunctionCall", + "src": "13995:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "13985:6:5", + "nodeType": "YulIdentifier", + "src": "13985:6:5" + } + ] + }, + { + "nativeSrc": "14147:209:5", + "nodeType": "YulAssignment", + "src": "14147:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "14192:6:5", + "nodeType": "YulIdentifier", + "src": "14192:6:5" + }, + { + "name": "h", + "nativeSrc": "14200:1:5", + "nodeType": "YulIdentifier", + "src": "14200:1:5" + }, + { + "name": "frField", + "nativeSrc": "14203:7:5", + "nodeType": "YulIdentifier", + "src": "14203:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "14185:6:5", + "nodeType": "YulIdentifier", + "src": "14185:6:5" + }, + "nativeSrc": "14185:26:5", + "nodeType": "YulFunctionCall", + "src": "14185:26:5" + }, + { + "kind": "number", + "nativeSrc": "14233:76:5", + "nodeType": "YulLiteral", + "src": "14233:76:5", + "type": "", + "value": "8062913614098409973923064402439991628739389434149534836396892159147794104642" + }, + { + "name": "frField", + "nativeSrc": "14331:7:5", + "nodeType": "YulIdentifier", + "src": "14331:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "14157:6:5", + "nodeType": "YulIdentifier", + "src": "14157:6:5" + }, + "nativeSrc": "14157:199:5", + "nodeType": "YulFunctionCall", + "src": "14157:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "14147:6:5", + "nodeType": "YulIdentifier", + "src": "14147:6:5" + } + ] + }, + { + "nativeSrc": "14373:41:5", + "nodeType": "YulAssignment", + "src": "14373:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "14390:6:5", + "nodeType": "YulIdentifier", + "src": "14390:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "14398:6:5", + "nodeType": "YulIdentifier", + "src": "14398:6:5" + }, + { + "name": "frField", + "nativeSrc": "14406:7:5", + "nodeType": "YulIdentifier", + "src": "14406:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14383:6:5", + "nodeType": "YulIdentifier", + "src": "14383:6:5" + }, + "nativeSrc": "14383:31:5", + "nodeType": "YulFunctionCall", + "src": "14383:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14373:6:5", + "nodeType": "YulIdentifier", + "src": "14373:6:5" + } + ] + }, + { + "nativeSrc": "14431:41:5", + "nodeType": "YulAssignment", + "src": "14431:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "14448:6:5", + "nodeType": "YulIdentifier", + "src": "14448:6:5" + }, + { + "name": "output", + "nativeSrc": "14456:6:5", + "nodeType": "YulIdentifier", + "src": "14456:6:5" + }, + { + "name": "frField", + "nativeSrc": "14464:7:5", + "nodeType": "YulIdentifier", + "src": "14464:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14441:6:5", + "nodeType": "YulIdentifier", + "src": "14441:6:5" + }, + "nativeSrc": "14441:31:5", + "nodeType": "YulFunctionCall", + "src": "14441:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14431:6:5", + "nodeType": "YulIdentifier", + "src": "14431:6:5" + } + ] + }, + { + "nativeSrc": "14489:41:5", + "nodeType": "YulAssignment", + "src": "14489:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "14506:6:5", + "nodeType": "YulIdentifier", + "src": "14506:6:5" + }, + { + "name": "output", + "nativeSrc": "14514:6:5", + "nodeType": "YulIdentifier", + "src": "14514:6:5" + }, + { + "name": "frField", + "nativeSrc": "14522:7:5", + "nodeType": "YulIdentifier", + "src": "14522:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14499:6:5", + "nodeType": "YulIdentifier", + "src": "14499:6:5" + }, + "nativeSrc": "14499:31:5", + "nodeType": "YulFunctionCall", + "src": "14499:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14489:6:5", + "nodeType": "YulIdentifier", + "src": "14489:6:5" + } + ] + }, + { + "nativeSrc": "14547:144:5", + "nodeType": "YulAssignment", + "src": "14547:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "14592:6:5", + "nodeType": "YulIdentifier", + "src": "14592:6:5" + }, + { + "name": "output", + "nativeSrc": "14600:6:5", + "nodeType": "YulIdentifier", + "src": "14600:6:5" + }, + { + "name": "frField", + "nativeSrc": "14608:7:5", + "nodeType": "YulIdentifier", + "src": "14608:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14585:6:5", + "nodeType": "YulIdentifier", + "src": "14585:6:5" + }, + "nativeSrc": "14585:31:5", + "nodeType": "YulFunctionCall", + "src": "14585:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "14638:6:5", + "nodeType": "YulIdentifier", + "src": "14638:6:5" + }, + { + "name": "frField", + "nativeSrc": "14666:7:5", + "nodeType": "YulIdentifier", + "src": "14666:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14557:6:5", + "nodeType": "YulIdentifier", + "src": "14557:6:5" + }, + "nativeSrc": "14557:134:5", + "nodeType": "YulFunctionCall", + "src": "14557:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14547:6:5", + "nodeType": "YulIdentifier", + "src": "14547:6:5" + } + ] + }, + { + "nativeSrc": "14709:209:5", + "nodeType": "YulAssignment", + "src": "14709:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "14754:6:5", + "nodeType": "YulIdentifier", + "src": "14754:6:5" + }, + { + "name": "h", + "nativeSrc": "14762:1:5", + "nodeType": "YulIdentifier", + "src": "14762:1:5" + }, + { + "name": "frField", + "nativeSrc": "14765:7:5", + "nodeType": "YulIdentifier", + "src": "14765:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "14747:6:5", + "nodeType": "YulIdentifier", + "src": "14747:6:5" + }, + "nativeSrc": "14747:26:5", + "nodeType": "YulFunctionCall", + "src": "14747:26:5" + }, + { + "kind": "number", + "nativeSrc": "14795:76:5", + "nodeType": "YulLiteral", + "src": "14795:76:5", + "type": "", + "value": "2576406140423312875091927795739341819101209176346955562285186911769083519728" + }, + { + "name": "frField", + "nativeSrc": "14893:7:5", + "nodeType": "YulIdentifier", + "src": "14893:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "14719:6:5", + "nodeType": "YulIdentifier", + "src": "14719:6:5" + }, + "nativeSrc": "14719:199:5", + "nodeType": "YulFunctionCall", + "src": "14719:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "14709:6:5", + "nodeType": "YulIdentifier", + "src": "14709:6:5" + } + ] + }, + { + "nativeSrc": "14935:41:5", + "nodeType": "YulAssignment", + "src": "14935:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "14952:6:5", + "nodeType": "YulIdentifier", + "src": "14952:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "14960:6:5", + "nodeType": "YulIdentifier", + "src": "14960:6:5" + }, + { + "name": "frField", + "nativeSrc": "14968:7:5", + "nodeType": "YulIdentifier", + "src": "14968:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "14945:6:5", + "nodeType": "YulIdentifier", + "src": "14945:6:5" + }, + "nativeSrc": "14945:31:5", + "nodeType": "YulFunctionCall", + "src": "14945:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14935:6:5", + "nodeType": "YulIdentifier", + "src": "14935:6:5" + } + ] + }, + { + "nativeSrc": "14993:41:5", + "nodeType": "YulAssignment", + "src": "14993:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "15010:6:5", + "nodeType": "YulIdentifier", + "src": "15010:6:5" + }, + { + "name": "output", + "nativeSrc": "15018:6:5", + "nodeType": "YulIdentifier", + "src": "15018:6:5" + }, + { + "name": "frField", + "nativeSrc": "15026:7:5", + "nodeType": "YulIdentifier", + "src": "15026:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15003:6:5", + "nodeType": "YulIdentifier", + "src": "15003:6:5" + }, + "nativeSrc": "15003:31:5", + "nodeType": "YulFunctionCall", + "src": "15003:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "14993:6:5", + "nodeType": "YulIdentifier", + "src": "14993:6:5" + } + ] + }, + { + "nativeSrc": "15051:41:5", + "nodeType": "YulAssignment", + "src": "15051:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "15068:6:5", + "nodeType": "YulIdentifier", + "src": "15068:6:5" + }, + { + "name": "output", + "nativeSrc": "15076:6:5", + "nodeType": "YulIdentifier", + "src": "15076:6:5" + }, + { + "name": "frField", + "nativeSrc": "15084:7:5", + "nodeType": "YulIdentifier", + "src": "15084:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15061:6:5", + "nodeType": "YulIdentifier", + "src": "15061:6:5" + }, + "nativeSrc": "15061:31:5", + "nodeType": "YulFunctionCall", + "src": "15061:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15051:6:5", + "nodeType": "YulIdentifier", + "src": "15051:6:5" + } + ] + }, + { + "nativeSrc": "15109:144:5", + "nodeType": "YulAssignment", + "src": "15109:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "15154:6:5", + "nodeType": "YulIdentifier", + "src": "15154:6:5" + }, + { + "name": "output", + "nativeSrc": "15162:6:5", + "nodeType": "YulIdentifier", + "src": "15162:6:5" + }, + { + "name": "frField", + "nativeSrc": "15170:7:5", + "nodeType": "YulIdentifier", + "src": "15170:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15147:6:5", + "nodeType": "YulIdentifier", + "src": "15147:6:5" + }, + "nativeSrc": "15147:31:5", + "nodeType": "YulFunctionCall", + "src": "15147:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "15200:6:5", + "nodeType": "YulIdentifier", + "src": "15200:6:5" + }, + { + "name": "frField", + "nativeSrc": "15228:7:5", + "nodeType": "YulIdentifier", + "src": "15228:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15119:6:5", + "nodeType": "YulIdentifier", + "src": "15119:6:5" + }, + "nativeSrc": "15119:134:5", + "nodeType": "YulFunctionCall", + "src": "15119:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15109:6:5", + "nodeType": "YulIdentifier", + "src": "15109:6:5" + } + ] + }, + { + "nativeSrc": "15271:209:5", + "nodeType": "YulAssignment", + "src": "15271:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "15316:6:5", + "nodeType": "YulIdentifier", + "src": "15316:6:5" + }, + { + "name": "h", + "nativeSrc": "15324:1:5", + "nodeType": "YulIdentifier", + "src": "15324:1:5" + }, + { + "name": "frField", + "nativeSrc": "15327:7:5", + "nodeType": "YulIdentifier", + "src": "15327:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "15309:6:5", + "nodeType": "YulIdentifier", + "src": "15309:6:5" + }, + "nativeSrc": "15309:26:5", + "nodeType": "YulFunctionCall", + "src": "15309:26:5" + }, + { + "kind": "number", + "nativeSrc": "15357:76:5", + "nodeType": "YulLiteral", + "src": "15357:76:5", + "type": "", + "value": "6247267546819369987508590432055536928557259658317014243676640822343115627202" + }, + { + "name": "frField", + "nativeSrc": "15455:7:5", + "nodeType": "YulIdentifier", + "src": "15455:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "15281:6:5", + "nodeType": "YulIdentifier", + "src": "15281:6:5" + }, + "nativeSrc": "15281:199:5", + "nodeType": "YulFunctionCall", + "src": "15281:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "15271:6:5", + "nodeType": "YulIdentifier", + "src": "15271:6:5" + } + ] + }, + { + "nativeSrc": "15497:41:5", + "nodeType": "YulAssignment", + "src": "15497:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "15514:6:5", + "nodeType": "YulIdentifier", + "src": "15514:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "15522:6:5", + "nodeType": "YulIdentifier", + "src": "15522:6:5" + }, + { + "name": "frField", + "nativeSrc": "15530:7:5", + "nodeType": "YulIdentifier", + "src": "15530:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15507:6:5", + "nodeType": "YulIdentifier", + "src": "15507:6:5" + }, + "nativeSrc": "15507:31:5", + "nodeType": "YulFunctionCall", + "src": "15507:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15497:6:5", + "nodeType": "YulIdentifier", + "src": "15497:6:5" + } + ] + }, + { + "nativeSrc": "15555:41:5", + "nodeType": "YulAssignment", + "src": "15555:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "15572:6:5", + "nodeType": "YulIdentifier", + "src": "15572:6:5" + }, + { + "name": "output", + "nativeSrc": "15580:6:5", + "nodeType": "YulIdentifier", + "src": "15580:6:5" + }, + { + "name": "frField", + "nativeSrc": "15588:7:5", + "nodeType": "YulIdentifier", + "src": "15588:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15565:6:5", + "nodeType": "YulIdentifier", + "src": "15565:6:5" + }, + "nativeSrc": "15565:31:5", + "nodeType": "YulFunctionCall", + "src": "15565:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15555:6:5", + "nodeType": "YulIdentifier", + "src": "15555:6:5" + } + ] + }, + { + "nativeSrc": "15613:41:5", + "nodeType": "YulAssignment", + "src": "15613:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "15630:6:5", + "nodeType": "YulIdentifier", + "src": "15630:6:5" + }, + { + "name": "output", + "nativeSrc": "15638:6:5", + "nodeType": "YulIdentifier", + "src": "15638:6:5" + }, + { + "name": "frField", + "nativeSrc": "15646:7:5", + "nodeType": "YulIdentifier", + "src": "15646:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15623:6:5", + "nodeType": "YulIdentifier", + "src": "15623:6:5" + }, + "nativeSrc": "15623:31:5", + "nodeType": "YulFunctionCall", + "src": "15623:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15613:6:5", + "nodeType": "YulIdentifier", + "src": "15613:6:5" + } + ] + }, + { + "nativeSrc": "15671:144:5", + "nodeType": "YulAssignment", + "src": "15671:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "15716:6:5", + "nodeType": "YulIdentifier", + "src": "15716:6:5" + }, + { + "name": "output", + "nativeSrc": "15724:6:5", + "nodeType": "YulIdentifier", + "src": "15724:6:5" + }, + { + "name": "frField", + "nativeSrc": "15732:7:5", + "nodeType": "YulIdentifier", + "src": "15732:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15709:6:5", + "nodeType": "YulIdentifier", + "src": "15709:6:5" + }, + "nativeSrc": "15709:31:5", + "nodeType": "YulFunctionCall", + "src": "15709:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "15762:6:5", + "nodeType": "YulIdentifier", + "src": "15762:6:5" + }, + { + "name": "frField", + "nativeSrc": "15790:7:5", + "nodeType": "YulIdentifier", + "src": "15790:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "15681:6:5", + "nodeType": "YulIdentifier", + "src": "15681:6:5" + }, + "nativeSrc": "15681:134:5", + "nodeType": "YulFunctionCall", + "src": "15681:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "15671:6:5", + "nodeType": "YulIdentifier", + "src": "15671:6:5" + } + ] + }, + { + "nativeSrc": "15833:209:5", + "nodeType": "YulAssignment", + "src": "15833:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "15878:6:5", + "nodeType": "YulIdentifier", + "src": "15878:6:5" + }, + { + "name": "h", + "nativeSrc": "15886:1:5", + "nodeType": "YulIdentifier", + "src": "15886:1:5" + }, + { + "name": "frField", + "nativeSrc": "15889:7:5", + "nodeType": "YulIdentifier", + "src": "15889:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "15871:6:5", + "nodeType": "YulIdentifier", + "src": "15871:6:5" + }, + "nativeSrc": "15871:26:5", + "nodeType": "YulFunctionCall", + "src": "15871:26:5" + }, + { + "kind": "number", + "nativeSrc": "15919:76:5", + "nodeType": "YulLiteral", + "src": "15919:76:5", + "type": "", + "value": "2354620213005699835215298236574714075068230025566107498090395819138978823906" + }, + { + "name": "frField", + "nativeSrc": "16017:7:5", + "nodeType": "YulIdentifier", + "src": "16017:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "15843:6:5", + "nodeType": "YulIdentifier", + "src": "15843:6:5" + }, + "nativeSrc": "15843:199:5", + "nodeType": "YulFunctionCall", + "src": "15843:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "15833:6:5", + "nodeType": "YulIdentifier", + "src": "15833:6:5" + } + ] + }, + { + "nativeSrc": "16059:41:5", + "nodeType": "YulAssignment", + "src": "16059:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "16076:6:5", + "nodeType": "YulIdentifier", + "src": "16076:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "16084:6:5", + "nodeType": "YulIdentifier", + "src": "16084:6:5" + }, + { + "name": "frField", + "nativeSrc": "16092:7:5", + "nodeType": "YulIdentifier", + "src": "16092:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16069:6:5", + "nodeType": "YulIdentifier", + "src": "16069:6:5" + }, + "nativeSrc": "16069:31:5", + "nodeType": "YulFunctionCall", + "src": "16069:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16059:6:5", + "nodeType": "YulIdentifier", + "src": "16059:6:5" + } + ] + }, + { + "nativeSrc": "16117:41:5", + "nodeType": "YulAssignment", + "src": "16117:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "16134:6:5", + "nodeType": "YulIdentifier", + "src": "16134:6:5" + }, + { + "name": "output", + "nativeSrc": "16142:6:5", + "nodeType": "YulIdentifier", + "src": "16142:6:5" + }, + { + "name": "frField", + "nativeSrc": "16150:7:5", + "nodeType": "YulIdentifier", + "src": "16150:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16127:6:5", + "nodeType": "YulIdentifier", + "src": "16127:6:5" + }, + "nativeSrc": "16127:31:5", + "nodeType": "YulFunctionCall", + "src": "16127:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16117:6:5", + "nodeType": "YulIdentifier", + "src": "16117:6:5" + } + ] + }, + { + "nativeSrc": "16175:41:5", + "nodeType": "YulAssignment", + "src": "16175:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "16192:6:5", + "nodeType": "YulIdentifier", + "src": "16192:6:5" + }, + { + "name": "output", + "nativeSrc": "16200:6:5", + "nodeType": "YulIdentifier", + "src": "16200:6:5" + }, + { + "name": "frField", + "nativeSrc": "16208:7:5", + "nodeType": "YulIdentifier", + "src": "16208:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16185:6:5", + "nodeType": "YulIdentifier", + "src": "16185:6:5" + }, + "nativeSrc": "16185:31:5", + "nodeType": "YulFunctionCall", + "src": "16185:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16175:6:5", + "nodeType": "YulIdentifier", + "src": "16175:6:5" + } + ] + }, + { + "nativeSrc": "16233:144:5", + "nodeType": "YulAssignment", + "src": "16233:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "16278:6:5", + "nodeType": "YulIdentifier", + "src": "16278:6:5" + }, + { + "name": "output", + "nativeSrc": "16286:6:5", + "nodeType": "YulIdentifier", + "src": "16286:6:5" + }, + { + "name": "frField", + "nativeSrc": "16294:7:5", + "nodeType": "YulIdentifier", + "src": "16294:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16271:6:5", + "nodeType": "YulIdentifier", + "src": "16271:6:5" + }, + "nativeSrc": "16271:31:5", + "nodeType": "YulFunctionCall", + "src": "16271:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "16324:6:5", + "nodeType": "YulIdentifier", + "src": "16324:6:5" + }, + { + "name": "frField", + "nativeSrc": "16352:7:5", + "nodeType": "YulIdentifier", + "src": "16352:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16243:6:5", + "nodeType": "YulIdentifier", + "src": "16243:6:5" + }, + "nativeSrc": "16243:134:5", + "nodeType": "YulFunctionCall", + "src": "16243:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16233:6:5", + "nodeType": "YulIdentifier", + "src": "16233:6:5" + } + ] + }, + { + "nativeSrc": "16395:209:5", + "nodeType": "YulAssignment", + "src": "16395:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "16440:6:5", + "nodeType": "YulIdentifier", + "src": "16440:6:5" + }, + { + "name": "h", + "nativeSrc": "16448:1:5", + "nodeType": "YulIdentifier", + "src": "16448:1:5" + }, + { + "name": "frField", + "nativeSrc": "16451:7:5", + "nodeType": "YulIdentifier", + "src": "16451:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "16433:6:5", + "nodeType": "YulIdentifier", + "src": "16433:6:5" + }, + "nativeSrc": "16433:26:5", + "nodeType": "YulFunctionCall", + "src": "16433:26:5" + }, + { + "kind": "number", + "nativeSrc": "16481:76:5", + "nodeType": "YulLiteral", + "src": "16481:76:5", + "type": "", + "value": "1012123997779098542887516673253442986051441272786218052382513879552027657616" + }, + { + "name": "frField", + "nativeSrc": "16579:7:5", + "nodeType": "YulIdentifier", + "src": "16579:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "16405:6:5", + "nodeType": "YulIdentifier", + "src": "16405:6:5" + }, + "nativeSrc": "16405:199:5", + "nodeType": "YulFunctionCall", + "src": "16405:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "16395:6:5", + "nodeType": "YulIdentifier", + "src": "16395:6:5" + } + ] + }, + { + "nativeSrc": "16621:41:5", + "nodeType": "YulAssignment", + "src": "16621:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "16638:6:5", + "nodeType": "YulIdentifier", + "src": "16638:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "16646:6:5", + "nodeType": "YulIdentifier", + "src": "16646:6:5" + }, + { + "name": "frField", + "nativeSrc": "16654:7:5", + "nodeType": "YulIdentifier", + "src": "16654:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16631:6:5", + "nodeType": "YulIdentifier", + "src": "16631:6:5" + }, + "nativeSrc": "16631:31:5", + "nodeType": "YulFunctionCall", + "src": "16631:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16621:6:5", + "nodeType": "YulIdentifier", + "src": "16621:6:5" + } + ] + }, + { + "nativeSrc": "16679:41:5", + "nodeType": "YulAssignment", + "src": "16679:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "16696:6:5", + "nodeType": "YulIdentifier", + "src": "16696:6:5" + }, + { + "name": "output", + "nativeSrc": "16704:6:5", + "nodeType": "YulIdentifier", + "src": "16704:6:5" + }, + { + "name": "frField", + "nativeSrc": "16712:7:5", + "nodeType": "YulIdentifier", + "src": "16712:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16689:6:5", + "nodeType": "YulIdentifier", + "src": "16689:6:5" + }, + "nativeSrc": "16689:31:5", + "nodeType": "YulFunctionCall", + "src": "16689:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16679:6:5", + "nodeType": "YulIdentifier", + "src": "16679:6:5" + } + ] + }, + { + "nativeSrc": "16737:41:5", + "nodeType": "YulAssignment", + "src": "16737:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "16754:6:5", + "nodeType": "YulIdentifier", + "src": "16754:6:5" + }, + { + "name": "output", + "nativeSrc": "16762:6:5", + "nodeType": "YulIdentifier", + "src": "16762:6:5" + }, + { + "name": "frField", + "nativeSrc": "16770:7:5", + "nodeType": "YulIdentifier", + "src": "16770:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16747:6:5", + "nodeType": "YulIdentifier", + "src": "16747:6:5" + }, + "nativeSrc": "16747:31:5", + "nodeType": "YulFunctionCall", + "src": "16747:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16737:6:5", + "nodeType": "YulIdentifier", + "src": "16737:6:5" + } + ] + }, + { + "nativeSrc": "16795:144:5", + "nodeType": "YulAssignment", + "src": "16795:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "16840:6:5", + "nodeType": "YulIdentifier", + "src": "16840:6:5" + }, + { + "name": "output", + "nativeSrc": "16848:6:5", + "nodeType": "YulIdentifier", + "src": "16848:6:5" + }, + { + "name": "frField", + "nativeSrc": "16856:7:5", + "nodeType": "YulIdentifier", + "src": "16856:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16833:6:5", + "nodeType": "YulIdentifier", + "src": "16833:6:5" + }, + "nativeSrc": "16833:31:5", + "nodeType": "YulFunctionCall", + "src": "16833:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "16886:6:5", + "nodeType": "YulIdentifier", + "src": "16886:6:5" + }, + { + "name": "frField", + "nativeSrc": "16914:7:5", + "nodeType": "YulIdentifier", + "src": "16914:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "16805:6:5", + "nodeType": "YulIdentifier", + "src": "16805:6:5" + }, + "nativeSrc": "16805:134:5", + "nodeType": "YulFunctionCall", + "src": "16805:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "16795:6:5", + "nodeType": "YulIdentifier", + "src": "16795:6:5" + } + ] + }, + { + "nativeSrc": "16957:208:5", + "nodeType": "YulAssignment", + "src": "16957:208:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "17002:6:5", + "nodeType": "YulIdentifier", + "src": "17002:6:5" + }, + { + "name": "h", + "nativeSrc": "17010:1:5", + "nodeType": "YulIdentifier", + "src": "17010:1:5" + }, + { + "name": "frField", + "nativeSrc": "17013:7:5", + "nodeType": "YulIdentifier", + "src": "17013:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "16995:6:5", + "nodeType": "YulIdentifier", + "src": "16995:6:5" + }, + "nativeSrc": "16995:26:5", + "nodeType": "YulFunctionCall", + "src": "16995:26:5" + }, + { + "kind": "number", + "nativeSrc": "17043:75:5", + "nodeType": "YulLiteral", + "src": "17043:75:5", + "type": "", + "value": "220252773286234814215172180118321537145064642853938490221604200051823270477" + }, + { + "name": "frField", + "nativeSrc": "17140:7:5", + "nodeType": "YulIdentifier", + "src": "17140:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "16967:6:5", + "nodeType": "YulIdentifier", + "src": "16967:6:5" + }, + "nativeSrc": "16967:198:5", + "nodeType": "YulFunctionCall", + "src": "16967:198:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "16957:6:5", + "nodeType": "YulIdentifier", + "src": "16957:6:5" + } + ] + }, + { + "nativeSrc": "17182:41:5", + "nodeType": "YulAssignment", + "src": "17182:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "17199:6:5", + "nodeType": "YulIdentifier", + "src": "17199:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "17207:6:5", + "nodeType": "YulIdentifier", + "src": "17207:6:5" + }, + { + "name": "frField", + "nativeSrc": "17215:7:5", + "nodeType": "YulIdentifier", + "src": "17215:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17192:6:5", + "nodeType": "YulIdentifier", + "src": "17192:6:5" + }, + "nativeSrc": "17192:31:5", + "nodeType": "YulFunctionCall", + "src": "17192:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17182:6:5", + "nodeType": "YulIdentifier", + "src": "17182:6:5" + } + ] + }, + { + "nativeSrc": "17240:41:5", + "nodeType": "YulAssignment", + "src": "17240:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "17257:6:5", + "nodeType": "YulIdentifier", + "src": "17257:6:5" + }, + { + "name": "output", + "nativeSrc": "17265:6:5", + "nodeType": "YulIdentifier", + "src": "17265:6:5" + }, + { + "name": "frField", + "nativeSrc": "17273:7:5", + "nodeType": "YulIdentifier", + "src": "17273:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17250:6:5", + "nodeType": "YulIdentifier", + "src": "17250:6:5" + }, + "nativeSrc": "17250:31:5", + "nodeType": "YulFunctionCall", + "src": "17250:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17240:6:5", + "nodeType": "YulIdentifier", + "src": "17240:6:5" + } + ] + }, + { + "nativeSrc": "17298:41:5", + "nodeType": "YulAssignment", + "src": "17298:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "17315:6:5", + "nodeType": "YulIdentifier", + "src": "17315:6:5" + }, + { + "name": "output", + "nativeSrc": "17323:6:5", + "nodeType": "YulIdentifier", + "src": "17323:6:5" + }, + { + "name": "frField", + "nativeSrc": "17331:7:5", + "nodeType": "YulIdentifier", + "src": "17331:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17308:6:5", + "nodeType": "YulIdentifier", + "src": "17308:6:5" + }, + "nativeSrc": "17308:31:5", + "nodeType": "YulFunctionCall", + "src": "17308:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17298:6:5", + "nodeType": "YulIdentifier", + "src": "17298:6:5" + } + ] + }, + { + "nativeSrc": "17356:144:5", + "nodeType": "YulAssignment", + "src": "17356:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "17401:6:5", + "nodeType": "YulIdentifier", + "src": "17401:6:5" + }, + { + "name": "output", + "nativeSrc": "17409:6:5", + "nodeType": "YulIdentifier", + "src": "17409:6:5" + }, + { + "name": "frField", + "nativeSrc": "17417:7:5", + "nodeType": "YulIdentifier", + "src": "17417:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17394:6:5", + "nodeType": "YulIdentifier", + "src": "17394:6:5" + }, + "nativeSrc": "17394:31:5", + "nodeType": "YulFunctionCall", + "src": "17394:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "17447:6:5", + "nodeType": "YulIdentifier", + "src": "17447:6:5" + }, + { + "name": "frField", + "nativeSrc": "17475:7:5", + "nodeType": "YulIdentifier", + "src": "17475:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17366:6:5", + "nodeType": "YulIdentifier", + "src": "17366:6:5" + }, + "nativeSrc": "17366:134:5", + "nodeType": "YulFunctionCall", + "src": "17366:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17356:6:5", + "nodeType": "YulIdentifier", + "src": "17356:6:5" + } + ] + }, + { + "nativeSrc": "17518:209:5", + "nodeType": "YulAssignment", + "src": "17518:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "17563:6:5", + "nodeType": "YulIdentifier", + "src": "17563:6:5" + }, + { + "name": "h", + "nativeSrc": "17571:1:5", + "nodeType": "YulIdentifier", + "src": "17571:1:5" + }, + { + "name": "frField", + "nativeSrc": "17574:7:5", + "nodeType": "YulIdentifier", + "src": "17574:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "17556:6:5", + "nodeType": "YulIdentifier", + "src": "17556:6:5" + }, + "nativeSrc": "17556:26:5", + "nodeType": "YulFunctionCall", + "src": "17556:26:5" + }, + { + "kind": "number", + "nativeSrc": "17604:76:5", + "nodeType": "YulLiteral", + "src": "17604:76:5", + "type": "", + "value": "2306037967476458159399202685728266972768173510335885477997450635969358782263" + }, + { + "name": "frField", + "nativeSrc": "17702:7:5", + "nodeType": "YulIdentifier", + "src": "17702:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "17528:6:5", + "nodeType": "YulIdentifier", + "src": "17528:6:5" + }, + "nativeSrc": "17528:199:5", + "nodeType": "YulFunctionCall", + "src": "17528:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "17518:6:5", + "nodeType": "YulIdentifier", + "src": "17518:6:5" + } + ] + }, + { + "nativeSrc": "17744:41:5", + "nodeType": "YulAssignment", + "src": "17744:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "17761:6:5", + "nodeType": "YulIdentifier", + "src": "17761:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "17769:6:5", + "nodeType": "YulIdentifier", + "src": "17769:6:5" + }, + { + "name": "frField", + "nativeSrc": "17777:7:5", + "nodeType": "YulIdentifier", + "src": "17777:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17754:6:5", + "nodeType": "YulIdentifier", + "src": "17754:6:5" + }, + "nativeSrc": "17754:31:5", + "nodeType": "YulFunctionCall", + "src": "17754:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17744:6:5", + "nodeType": "YulIdentifier", + "src": "17744:6:5" + } + ] + }, + { + "nativeSrc": "17802:41:5", + "nodeType": "YulAssignment", + "src": "17802:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "17819:6:5", + "nodeType": "YulIdentifier", + "src": "17819:6:5" + }, + { + "name": "output", + "nativeSrc": "17827:6:5", + "nodeType": "YulIdentifier", + "src": "17827:6:5" + }, + { + "name": "frField", + "nativeSrc": "17835:7:5", + "nodeType": "YulIdentifier", + "src": "17835:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17812:6:5", + "nodeType": "YulIdentifier", + "src": "17812:6:5" + }, + "nativeSrc": "17812:31:5", + "nodeType": "YulFunctionCall", + "src": "17812:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17802:6:5", + "nodeType": "YulIdentifier", + "src": "17802:6:5" + } + ] + }, + { + "nativeSrc": "17860:41:5", + "nodeType": "YulAssignment", + "src": "17860:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "17877:6:5", + "nodeType": "YulIdentifier", + "src": "17877:6:5" + }, + { + "name": "output", + "nativeSrc": "17885:6:5", + "nodeType": "YulIdentifier", + "src": "17885:6:5" + }, + { + "name": "frField", + "nativeSrc": "17893:7:5", + "nodeType": "YulIdentifier", + "src": "17893:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17870:6:5", + "nodeType": "YulIdentifier", + "src": "17870:6:5" + }, + "nativeSrc": "17870:31:5", + "nodeType": "YulFunctionCall", + "src": "17870:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17860:6:5", + "nodeType": "YulIdentifier", + "src": "17860:6:5" + } + ] + }, + { + "nativeSrc": "17918:144:5", + "nodeType": "YulAssignment", + "src": "17918:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "17963:6:5", + "nodeType": "YulIdentifier", + "src": "17963:6:5" + }, + { + "name": "output", + "nativeSrc": "17971:6:5", + "nodeType": "YulIdentifier", + "src": "17971:6:5" + }, + { + "name": "frField", + "nativeSrc": "17979:7:5", + "nodeType": "YulIdentifier", + "src": "17979:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17956:6:5", + "nodeType": "YulIdentifier", + "src": "17956:6:5" + }, + "nativeSrc": "17956:31:5", + "nodeType": "YulFunctionCall", + "src": "17956:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "18009:6:5", + "nodeType": "YulIdentifier", + "src": "18009:6:5" + }, + { + "name": "frField", + "nativeSrc": "18037:7:5", + "nodeType": "YulIdentifier", + "src": "18037:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "17928:6:5", + "nodeType": "YulIdentifier", + "src": "17928:6:5" + }, + "nativeSrc": "17928:134:5", + "nodeType": "YulFunctionCall", + "src": "17928:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "17918:6:5", + "nodeType": "YulIdentifier", + "src": "17918:6:5" + } + ] + }, + { + "nativeSrc": "18080:209:5", + "nodeType": "YulAssignment", + "src": "18080:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "18125:6:5", + "nodeType": "YulIdentifier", + "src": "18125:6:5" + }, + { + "name": "h", + "nativeSrc": "18133:1:5", + "nodeType": "YulIdentifier", + "src": "18133:1:5" + }, + { + "name": "frField", + "nativeSrc": "18136:7:5", + "nodeType": "YulIdentifier", + "src": "18136:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "18118:6:5", + "nodeType": "YulIdentifier", + "src": "18118:6:5" + }, + "nativeSrc": "18118:26:5", + "nodeType": "YulFunctionCall", + "src": "18118:26:5" + }, + { + "kind": "number", + "nativeSrc": "18166:76:5", + "nodeType": "YulLiteral", + "src": "18166:76:5", + "type": "", + "value": "5906000615460106310157278190403974694555979202144571560620360962365001056276" + }, + { + "name": "frField", + "nativeSrc": "18264:7:5", + "nodeType": "YulIdentifier", + "src": "18264:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "18090:6:5", + "nodeType": "YulIdentifier", + "src": "18090:6:5" + }, + "nativeSrc": "18090:199:5", + "nodeType": "YulFunctionCall", + "src": "18090:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "18080:6:5", + "nodeType": "YulIdentifier", + "src": "18080:6:5" + } + ] + }, + { + "nativeSrc": "18306:41:5", + "nodeType": "YulAssignment", + "src": "18306:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "18323:6:5", + "nodeType": "YulIdentifier", + "src": "18323:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "18331:6:5", + "nodeType": "YulIdentifier", + "src": "18331:6:5" + }, + { + "name": "frField", + "nativeSrc": "18339:7:5", + "nodeType": "YulIdentifier", + "src": "18339:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18316:6:5", + "nodeType": "YulIdentifier", + "src": "18316:6:5" + }, + "nativeSrc": "18316:31:5", + "nodeType": "YulFunctionCall", + "src": "18316:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18306:6:5", + "nodeType": "YulIdentifier", + "src": "18306:6:5" + } + ] + }, + { + "nativeSrc": "18364:41:5", + "nodeType": "YulAssignment", + "src": "18364:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "18381:6:5", + "nodeType": "YulIdentifier", + "src": "18381:6:5" + }, + { + "name": "output", + "nativeSrc": "18389:6:5", + "nodeType": "YulIdentifier", + "src": "18389:6:5" + }, + { + "name": "frField", + "nativeSrc": "18397:7:5", + "nodeType": "YulIdentifier", + "src": "18397:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18374:6:5", + "nodeType": "YulIdentifier", + "src": "18374:6:5" + }, + "nativeSrc": "18374:31:5", + "nodeType": "YulFunctionCall", + "src": "18374:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18364:6:5", + "nodeType": "YulIdentifier", + "src": "18364:6:5" + } + ] + }, + { + "nativeSrc": "18422:41:5", + "nodeType": "YulAssignment", + "src": "18422:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "18439:6:5", + "nodeType": "YulIdentifier", + "src": "18439:6:5" + }, + { + "name": "output", + "nativeSrc": "18447:6:5", + "nodeType": "YulIdentifier", + "src": "18447:6:5" + }, + { + "name": "frField", + "nativeSrc": "18455:7:5", + "nodeType": "YulIdentifier", + "src": "18455:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18432:6:5", + "nodeType": "YulIdentifier", + "src": "18432:6:5" + }, + "nativeSrc": "18432:31:5", + "nodeType": "YulFunctionCall", + "src": "18432:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18422:6:5", + "nodeType": "YulIdentifier", + "src": "18422:6:5" + } + ] + }, + { + "nativeSrc": "18480:144:5", + "nodeType": "YulAssignment", + "src": "18480:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "18525:6:5", + "nodeType": "YulIdentifier", + "src": "18525:6:5" + }, + { + "name": "output", + "nativeSrc": "18533:6:5", + "nodeType": "YulIdentifier", + "src": "18533:6:5" + }, + { + "name": "frField", + "nativeSrc": "18541:7:5", + "nodeType": "YulIdentifier", + "src": "18541:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18518:6:5", + "nodeType": "YulIdentifier", + "src": "18518:6:5" + }, + "nativeSrc": "18518:31:5", + "nodeType": "YulFunctionCall", + "src": "18518:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "18571:6:5", + "nodeType": "YulIdentifier", + "src": "18571:6:5" + }, + { + "name": "frField", + "nativeSrc": "18599:7:5", + "nodeType": "YulIdentifier", + "src": "18599:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18490:6:5", + "nodeType": "YulIdentifier", + "src": "18490:6:5" + }, + "nativeSrc": "18490:134:5", + "nodeType": "YulFunctionCall", + "src": "18490:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18480:6:5", + "nodeType": "YulIdentifier", + "src": "18480:6:5" + } + ] + }, + { + "nativeSrc": "18642:209:5", + "nodeType": "YulAssignment", + "src": "18642:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "18687:6:5", + "nodeType": "YulIdentifier", + "src": "18687:6:5" + }, + { + "name": "h", + "nativeSrc": "18695:1:5", + "nodeType": "YulIdentifier", + "src": "18695:1:5" + }, + { + "name": "frField", + "nativeSrc": "18698:7:5", + "nodeType": "YulIdentifier", + "src": "18698:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "18680:6:5", + "nodeType": "YulIdentifier", + "src": "18680:6:5" + }, + "nativeSrc": "18680:26:5", + "nodeType": "YulFunctionCall", + "src": "18680:26:5" + }, + { + "kind": "number", + "nativeSrc": "18728:76:5", + "nodeType": "YulLiteral", + "src": "18728:76:5", + "type": "", + "value": "8029952345415718287377564183334920026617762793749604843629313086537726648143" + }, + { + "name": "frField", + "nativeSrc": "18826:7:5", + "nodeType": "YulIdentifier", + "src": "18826:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "18652:6:5", + "nodeType": "YulIdentifier", + "src": "18652:6:5" + }, + "nativeSrc": "18652:199:5", + "nodeType": "YulFunctionCall", + "src": "18652:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "18642:6:5", + "nodeType": "YulIdentifier", + "src": "18642:6:5" + } + ] + }, + { + "nativeSrc": "18868:41:5", + "nodeType": "YulAssignment", + "src": "18868:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "18885:6:5", + "nodeType": "YulIdentifier", + "src": "18885:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "18893:6:5", + "nodeType": "YulIdentifier", + "src": "18893:6:5" + }, + { + "name": "frField", + "nativeSrc": "18901:7:5", + "nodeType": "YulIdentifier", + "src": "18901:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18878:6:5", + "nodeType": "YulIdentifier", + "src": "18878:6:5" + }, + "nativeSrc": "18878:31:5", + "nodeType": "YulFunctionCall", + "src": "18878:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18868:6:5", + "nodeType": "YulIdentifier", + "src": "18868:6:5" + } + ] + }, + { + "nativeSrc": "18926:41:5", + "nodeType": "YulAssignment", + "src": "18926:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "18943:6:5", + "nodeType": "YulIdentifier", + "src": "18943:6:5" + }, + { + "name": "output", + "nativeSrc": "18951:6:5", + "nodeType": "YulIdentifier", + "src": "18951:6:5" + }, + { + "name": "frField", + "nativeSrc": "18959:7:5", + "nodeType": "YulIdentifier", + "src": "18959:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18936:6:5", + "nodeType": "YulIdentifier", + "src": "18936:6:5" + }, + "nativeSrc": "18936:31:5", + "nodeType": "YulFunctionCall", + "src": "18936:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18926:6:5", + "nodeType": "YulIdentifier", + "src": "18926:6:5" + } + ] + }, + { + "nativeSrc": "18984:41:5", + "nodeType": "YulAssignment", + "src": "18984:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "19001:6:5", + "nodeType": "YulIdentifier", + "src": "19001:6:5" + }, + { + "name": "output", + "nativeSrc": "19009:6:5", + "nodeType": "YulIdentifier", + "src": "19009:6:5" + }, + { + "name": "frField", + "nativeSrc": "19017:7:5", + "nodeType": "YulIdentifier", + "src": "19017:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "18994:6:5", + "nodeType": "YulIdentifier", + "src": "18994:6:5" + }, + "nativeSrc": "18994:31:5", + "nodeType": "YulFunctionCall", + "src": "18994:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "18984:6:5", + "nodeType": "YulIdentifier", + "src": "18984:6:5" + } + ] + }, + { + "nativeSrc": "19042:144:5", + "nodeType": "YulAssignment", + "src": "19042:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "19087:6:5", + "nodeType": "YulIdentifier", + "src": "19087:6:5" + }, + { + "name": "output", + "nativeSrc": "19095:6:5", + "nodeType": "YulIdentifier", + "src": "19095:6:5" + }, + { + "name": "frField", + "nativeSrc": "19103:7:5", + "nodeType": "YulIdentifier", + "src": "19103:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19080:6:5", + "nodeType": "YulIdentifier", + "src": "19080:6:5" + }, + "nativeSrc": "19080:31:5", + "nodeType": "YulFunctionCall", + "src": "19080:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "19133:6:5", + "nodeType": "YulIdentifier", + "src": "19133:6:5" + }, + { + "name": "frField", + "nativeSrc": "19161:7:5", + "nodeType": "YulIdentifier", + "src": "19161:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19052:6:5", + "nodeType": "YulIdentifier", + "src": "19052:6:5" + }, + "nativeSrc": "19052:134:5", + "nodeType": "YulFunctionCall", + "src": "19052:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19042:6:5", + "nodeType": "YulIdentifier", + "src": "19042:6:5" + } + ] + }, + { + "nativeSrc": "19204:209:5", + "nodeType": "YulAssignment", + "src": "19204:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "19249:6:5", + "nodeType": "YulIdentifier", + "src": "19249:6:5" + }, + { + "name": "h", + "nativeSrc": "19257:1:5", + "nodeType": "YulIdentifier", + "src": "19257:1:5" + }, + { + "name": "frField", + "nativeSrc": "19260:7:5", + "nodeType": "YulIdentifier", + "src": "19260:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "19242:6:5", + "nodeType": "YulIdentifier", + "src": "19242:6:5" + }, + "nativeSrc": "19242:26:5", + "nodeType": "YulFunctionCall", + "src": "19242:26:5" + }, + { + "kind": "number", + "nativeSrc": "19290:76:5", + "nodeType": "YulLiteral", + "src": "19290:76:5", + "type": "", + "value": "6806091261750378774545720021859645013630360296898036304733359077422908323188" + }, + { + "name": "frField", + "nativeSrc": "19388:7:5", + "nodeType": "YulIdentifier", + "src": "19388:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "19214:6:5", + "nodeType": "YulIdentifier", + "src": "19214:6:5" + }, + "nativeSrc": "19214:199:5", + "nodeType": "YulFunctionCall", + "src": "19214:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "19204:6:5", + "nodeType": "YulIdentifier", + "src": "19204:6:5" + } + ] + }, + { + "nativeSrc": "19430:41:5", + "nodeType": "YulAssignment", + "src": "19430:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "19447:6:5", + "nodeType": "YulIdentifier", + "src": "19447:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "19455:6:5", + "nodeType": "YulIdentifier", + "src": "19455:6:5" + }, + { + "name": "frField", + "nativeSrc": "19463:7:5", + "nodeType": "YulIdentifier", + "src": "19463:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19440:6:5", + "nodeType": "YulIdentifier", + "src": "19440:6:5" + }, + "nativeSrc": "19440:31:5", + "nodeType": "YulFunctionCall", + "src": "19440:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19430:6:5", + "nodeType": "YulIdentifier", + "src": "19430:6:5" + } + ] + }, + { + "nativeSrc": "19488:41:5", + "nodeType": "YulAssignment", + "src": "19488:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "19505:6:5", + "nodeType": "YulIdentifier", + "src": "19505:6:5" + }, + { + "name": "output", + "nativeSrc": "19513:6:5", + "nodeType": "YulIdentifier", + "src": "19513:6:5" + }, + { + "name": "frField", + "nativeSrc": "19521:7:5", + "nodeType": "YulIdentifier", + "src": "19521:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19498:6:5", + "nodeType": "YulIdentifier", + "src": "19498:6:5" + }, + "nativeSrc": "19498:31:5", + "nodeType": "YulFunctionCall", + "src": "19498:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19488:6:5", + "nodeType": "YulIdentifier", + "src": "19488:6:5" + } + ] + }, + { + "nativeSrc": "19546:41:5", + "nodeType": "YulAssignment", + "src": "19546:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "19563:6:5", + "nodeType": "YulIdentifier", + "src": "19563:6:5" + }, + { + "name": "output", + "nativeSrc": "19571:6:5", + "nodeType": "YulIdentifier", + "src": "19571:6:5" + }, + { + "name": "frField", + "nativeSrc": "19579:7:5", + "nodeType": "YulIdentifier", + "src": "19579:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19556:6:5", + "nodeType": "YulIdentifier", + "src": "19556:6:5" + }, + "nativeSrc": "19556:31:5", + "nodeType": "YulFunctionCall", + "src": "19556:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19546:6:5", + "nodeType": "YulIdentifier", + "src": "19546:6:5" + } + ] + }, + { + "nativeSrc": "19604:144:5", + "nodeType": "YulAssignment", + "src": "19604:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "19649:6:5", + "nodeType": "YulIdentifier", + "src": "19649:6:5" + }, + { + "name": "output", + "nativeSrc": "19657:6:5", + "nodeType": "YulIdentifier", + "src": "19657:6:5" + }, + { + "name": "frField", + "nativeSrc": "19665:7:5", + "nodeType": "YulIdentifier", + "src": "19665:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19642:6:5", + "nodeType": "YulIdentifier", + "src": "19642:6:5" + }, + "nativeSrc": "19642:31:5", + "nodeType": "YulFunctionCall", + "src": "19642:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "19695:6:5", + "nodeType": "YulIdentifier", + "src": "19695:6:5" + }, + { + "name": "frField", + "nativeSrc": "19723:7:5", + "nodeType": "YulIdentifier", + "src": "19723:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "19614:6:5", + "nodeType": "YulIdentifier", + "src": "19614:6:5" + }, + "nativeSrc": "19614:134:5", + "nodeType": "YulFunctionCall", + "src": "19614:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19604:6:5", + "nodeType": "YulIdentifier", + "src": "19604:6:5" + } + ] + }, + { + "nativeSrc": "19766:209:5", + "nodeType": "YulAssignment", + "src": "19766:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "19811:6:5", + "nodeType": "YulIdentifier", + "src": "19811:6:5" + }, + { + "name": "h", + "nativeSrc": "19819:1:5", + "nodeType": "YulIdentifier", + "src": "19819:1:5" + }, + { + "name": "frField", + "nativeSrc": "19822:7:5", + "nodeType": "YulIdentifier", + "src": "19822:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "19804:6:5", + "nodeType": "YulIdentifier", + "src": "19804:6:5" + }, + "nativeSrc": "19804:26:5", + "nodeType": "YulFunctionCall", + "src": "19804:26:5" + }, + { + "kind": "number", + "nativeSrc": "19852:76:5", + "nodeType": "YulLiteral", + "src": "19852:76:5", + "type": "", + "value": "3791365032107216523624488143755156784159183778414385385850652127088602339940" + }, + { + "name": "frField", + "nativeSrc": "19950:7:5", + "nodeType": "YulIdentifier", + "src": "19950:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "19776:6:5", + "nodeType": "YulIdentifier", + "src": "19776:6:5" + }, + "nativeSrc": "19776:199:5", + "nodeType": "YulFunctionCall", + "src": "19776:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "19766:6:5", + "nodeType": "YulIdentifier", + "src": "19766:6:5" + } + ] + }, + { + "nativeSrc": "19992:41:5", + "nodeType": "YulAssignment", + "src": "19992:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "20009:6:5", + "nodeType": "YulIdentifier", + "src": "20009:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "20017:6:5", + "nodeType": "YulIdentifier", + "src": "20017:6:5" + }, + { + "name": "frField", + "nativeSrc": "20025:7:5", + "nodeType": "YulIdentifier", + "src": "20025:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20002:6:5", + "nodeType": "YulIdentifier", + "src": "20002:6:5" + }, + "nativeSrc": "20002:31:5", + "nodeType": "YulFunctionCall", + "src": "20002:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "19992:6:5", + "nodeType": "YulIdentifier", + "src": "19992:6:5" + } + ] + }, + { + "nativeSrc": "20050:41:5", + "nodeType": "YulAssignment", + "src": "20050:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "20067:6:5", + "nodeType": "YulIdentifier", + "src": "20067:6:5" + }, + { + "name": "output", + "nativeSrc": "20075:6:5", + "nodeType": "YulIdentifier", + "src": "20075:6:5" + }, + { + "name": "frField", + "nativeSrc": "20083:7:5", + "nodeType": "YulIdentifier", + "src": "20083:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20060:6:5", + "nodeType": "YulIdentifier", + "src": "20060:6:5" + }, + "nativeSrc": "20060:31:5", + "nodeType": "YulFunctionCall", + "src": "20060:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20050:6:5", + "nodeType": "YulIdentifier", + "src": "20050:6:5" + } + ] + }, + { + "nativeSrc": "20108:41:5", + "nodeType": "YulAssignment", + "src": "20108:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "20125:6:5", + "nodeType": "YulIdentifier", + "src": "20125:6:5" + }, + { + "name": "output", + "nativeSrc": "20133:6:5", + "nodeType": "YulIdentifier", + "src": "20133:6:5" + }, + { + "name": "frField", + "nativeSrc": "20141:7:5", + "nodeType": "YulIdentifier", + "src": "20141:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20118:6:5", + "nodeType": "YulIdentifier", + "src": "20118:6:5" + }, + "nativeSrc": "20118:31:5", + "nodeType": "YulFunctionCall", + "src": "20118:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20108:6:5", + "nodeType": "YulIdentifier", + "src": "20108:6:5" + } + ] + }, + { + "nativeSrc": "20166:144:5", + "nodeType": "YulAssignment", + "src": "20166:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "20211:6:5", + "nodeType": "YulIdentifier", + "src": "20211:6:5" + }, + { + "name": "output", + "nativeSrc": "20219:6:5", + "nodeType": "YulIdentifier", + "src": "20219:6:5" + }, + { + "name": "frField", + "nativeSrc": "20227:7:5", + "nodeType": "YulIdentifier", + "src": "20227:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20204:6:5", + "nodeType": "YulIdentifier", + "src": "20204:6:5" + }, + "nativeSrc": "20204:31:5", + "nodeType": "YulFunctionCall", + "src": "20204:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "20257:6:5", + "nodeType": "YulIdentifier", + "src": "20257:6:5" + }, + { + "name": "frField", + "nativeSrc": "20285:7:5", + "nodeType": "YulIdentifier", + "src": "20285:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20176:6:5", + "nodeType": "YulIdentifier", + "src": "20176:6:5" + }, + "nativeSrc": "20176:134:5", + "nodeType": "YulFunctionCall", + "src": "20176:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20166:6:5", + "nodeType": "YulIdentifier", + "src": "20166:6:5" + } + ] + }, + { + "nativeSrc": "20328:209:5", + "nodeType": "YulAssignment", + "src": "20328:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "20373:6:5", + "nodeType": "YulIdentifier", + "src": "20373:6:5" + }, + { + "name": "h", + "nativeSrc": "20381:1:5", + "nodeType": "YulIdentifier", + "src": "20381:1:5" + }, + { + "name": "frField", + "nativeSrc": "20384:7:5", + "nodeType": "YulIdentifier", + "src": "20384:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "20366:6:5", + "nodeType": "YulIdentifier", + "src": "20366:6:5" + }, + "nativeSrc": "20366:26:5", + "nodeType": "YulFunctionCall", + "src": "20366:26:5" + }, + { + "kind": "number", + "nativeSrc": "20414:76:5", + "nodeType": "YulLiteral", + "src": "20414:76:5", + "type": "", + "value": "7713951866326004273632564650741019619975760271948208739458822610304231437565" + }, + { + "name": "frField", + "nativeSrc": "20512:7:5", + "nodeType": "YulIdentifier", + "src": "20512:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "20338:6:5", + "nodeType": "YulIdentifier", + "src": "20338:6:5" + }, + "nativeSrc": "20338:199:5", + "nodeType": "YulFunctionCall", + "src": "20338:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "20328:6:5", + "nodeType": "YulIdentifier", + "src": "20328:6:5" + } + ] + }, + { + "nativeSrc": "20554:41:5", + "nodeType": "YulAssignment", + "src": "20554:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "20571:6:5", + "nodeType": "YulIdentifier", + "src": "20571:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "20579:6:5", + "nodeType": "YulIdentifier", + "src": "20579:6:5" + }, + { + "name": "frField", + "nativeSrc": "20587:7:5", + "nodeType": "YulIdentifier", + "src": "20587:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20564:6:5", + "nodeType": "YulIdentifier", + "src": "20564:6:5" + }, + "nativeSrc": "20564:31:5", + "nodeType": "YulFunctionCall", + "src": "20564:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20554:6:5", + "nodeType": "YulIdentifier", + "src": "20554:6:5" + } + ] + }, + { + "nativeSrc": "20612:41:5", + "nodeType": "YulAssignment", + "src": "20612:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "20629:6:5", + "nodeType": "YulIdentifier", + "src": "20629:6:5" + }, + { + "name": "output", + "nativeSrc": "20637:6:5", + "nodeType": "YulIdentifier", + "src": "20637:6:5" + }, + { + "name": "frField", + "nativeSrc": "20645:7:5", + "nodeType": "YulIdentifier", + "src": "20645:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20622:6:5", + "nodeType": "YulIdentifier", + "src": "20622:6:5" + }, + "nativeSrc": "20622:31:5", + "nodeType": "YulFunctionCall", + "src": "20622:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20612:6:5", + "nodeType": "YulIdentifier", + "src": "20612:6:5" + } + ] + }, + { + "nativeSrc": "20670:41:5", + "nodeType": "YulAssignment", + "src": "20670:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "20687:6:5", + "nodeType": "YulIdentifier", + "src": "20687:6:5" + }, + { + "name": "output", + "nativeSrc": "20695:6:5", + "nodeType": "YulIdentifier", + "src": "20695:6:5" + }, + { + "name": "frField", + "nativeSrc": "20703:7:5", + "nodeType": "YulIdentifier", + "src": "20703:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20680:6:5", + "nodeType": "YulIdentifier", + "src": "20680:6:5" + }, + "nativeSrc": "20680:31:5", + "nodeType": "YulFunctionCall", + "src": "20680:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20670:6:5", + "nodeType": "YulIdentifier", + "src": "20670:6:5" + } + ] + }, + { + "nativeSrc": "20728:144:5", + "nodeType": "YulAssignment", + "src": "20728:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "20773:6:5", + "nodeType": "YulIdentifier", + "src": "20773:6:5" + }, + { + "name": "output", + "nativeSrc": "20781:6:5", + "nodeType": "YulIdentifier", + "src": "20781:6:5" + }, + { + "name": "frField", + "nativeSrc": "20789:7:5", + "nodeType": "YulIdentifier", + "src": "20789:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20766:6:5", + "nodeType": "YulIdentifier", + "src": "20766:6:5" + }, + "nativeSrc": "20766:31:5", + "nodeType": "YulFunctionCall", + "src": "20766:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "20819:6:5", + "nodeType": "YulIdentifier", + "src": "20819:6:5" + }, + { + "name": "frField", + "nativeSrc": "20847:7:5", + "nodeType": "YulIdentifier", + "src": "20847:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "20738:6:5", + "nodeType": "YulIdentifier", + "src": "20738:6:5" + }, + "nativeSrc": "20738:134:5", + "nodeType": "YulFunctionCall", + "src": "20738:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "20728:6:5", + "nodeType": "YulIdentifier", + "src": "20728:6:5" + } + ] + }, + { + "nativeSrc": "20890:209:5", + "nodeType": "YulAssignment", + "src": "20890:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "20935:6:5", + "nodeType": "YulIdentifier", + "src": "20935:6:5" + }, + { + "name": "h", + "nativeSrc": "20943:1:5", + "nodeType": "YulIdentifier", + "src": "20943:1:5" + }, + { + "name": "frField", + "nativeSrc": "20946:7:5", + "nodeType": "YulIdentifier", + "src": "20946:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "20928:6:5", + "nodeType": "YulIdentifier", + "src": "20928:6:5" + }, + "nativeSrc": "20928:26:5", + "nodeType": "YulFunctionCall", + "src": "20928:26:5" + }, + { + "kind": "number", + "nativeSrc": "20976:76:5", + "nodeType": "YulLiteral", + "src": "20976:76:5", + "type": "", + "value": "2159153222189174173490067225063044363535871059524538695070191871847470955412" + }, + { + "name": "frField", + "nativeSrc": "21074:7:5", + "nodeType": "YulIdentifier", + "src": "21074:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "20900:6:5", + "nodeType": "YulIdentifier", + "src": "20900:6:5" + }, + "nativeSrc": "20900:199:5", + "nodeType": "YulFunctionCall", + "src": "20900:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "20890:6:5", + "nodeType": "YulIdentifier", + "src": "20890:6:5" + } + ] + }, + { + "nativeSrc": "21116:41:5", + "nodeType": "YulAssignment", + "src": "21116:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "21133:6:5", + "nodeType": "YulIdentifier", + "src": "21133:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "21141:6:5", + "nodeType": "YulIdentifier", + "src": "21141:6:5" + }, + { + "name": "frField", + "nativeSrc": "21149:7:5", + "nodeType": "YulIdentifier", + "src": "21149:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21126:6:5", + "nodeType": "YulIdentifier", + "src": "21126:6:5" + }, + "nativeSrc": "21126:31:5", + "nodeType": "YulFunctionCall", + "src": "21126:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21116:6:5", + "nodeType": "YulIdentifier", + "src": "21116:6:5" + } + ] + }, + { + "nativeSrc": "21174:41:5", + "nodeType": "YulAssignment", + "src": "21174:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "21191:6:5", + "nodeType": "YulIdentifier", + "src": "21191:6:5" + }, + { + "name": "output", + "nativeSrc": "21199:6:5", + "nodeType": "YulIdentifier", + "src": "21199:6:5" + }, + { + "name": "frField", + "nativeSrc": "21207:7:5", + "nodeType": "YulIdentifier", + "src": "21207:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21184:6:5", + "nodeType": "YulIdentifier", + "src": "21184:6:5" + }, + "nativeSrc": "21184:31:5", + "nodeType": "YulFunctionCall", + "src": "21184:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21174:6:5", + "nodeType": "YulIdentifier", + "src": "21174:6:5" + } + ] + }, + { + "nativeSrc": "21232:41:5", + "nodeType": "YulAssignment", + "src": "21232:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "21249:6:5", + "nodeType": "YulIdentifier", + "src": "21249:6:5" + }, + { + "name": "output", + "nativeSrc": "21257:6:5", + "nodeType": "YulIdentifier", + "src": "21257:6:5" + }, + { + "name": "frField", + "nativeSrc": "21265:7:5", + "nodeType": "YulIdentifier", + "src": "21265:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21242:6:5", + "nodeType": "YulIdentifier", + "src": "21242:6:5" + }, + "nativeSrc": "21242:31:5", + "nodeType": "YulFunctionCall", + "src": "21242:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21232:6:5", + "nodeType": "YulIdentifier", + "src": "21232:6:5" + } + ] + }, + { + "nativeSrc": "21290:144:5", + "nodeType": "YulAssignment", + "src": "21290:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "21335:6:5", + "nodeType": "YulIdentifier", + "src": "21335:6:5" + }, + { + "name": "output", + "nativeSrc": "21343:6:5", + "nodeType": "YulIdentifier", + "src": "21343:6:5" + }, + { + "name": "frField", + "nativeSrc": "21351:7:5", + "nodeType": "YulIdentifier", + "src": "21351:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21328:6:5", + "nodeType": "YulIdentifier", + "src": "21328:6:5" + }, + "nativeSrc": "21328:31:5", + "nodeType": "YulFunctionCall", + "src": "21328:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "21381:6:5", + "nodeType": "YulIdentifier", + "src": "21381:6:5" + }, + { + "name": "frField", + "nativeSrc": "21409:7:5", + "nodeType": "YulIdentifier", + "src": "21409:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21300:6:5", + "nodeType": "YulIdentifier", + "src": "21300:6:5" + }, + "nativeSrc": "21300:134:5", + "nodeType": "YulFunctionCall", + "src": "21300:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21290:6:5", + "nodeType": "YulIdentifier", + "src": "21290:6:5" + } + ] + }, + { + "nativeSrc": "21452:209:5", + "nodeType": "YulAssignment", + "src": "21452:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "21497:6:5", + "nodeType": "YulIdentifier", + "src": "21497:6:5" + }, + { + "name": "h", + "nativeSrc": "21505:1:5", + "nodeType": "YulIdentifier", + "src": "21505:1:5" + }, + { + "name": "frField", + "nativeSrc": "21508:7:5", + "nodeType": "YulIdentifier", + "src": "21508:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "21490:6:5", + "nodeType": "YulIdentifier", + "src": "21490:6:5" + }, + "nativeSrc": "21490:26:5", + "nodeType": "YulFunctionCall", + "src": "21490:26:5" + }, + { + "kind": "number", + "nativeSrc": "21538:76:5", + "nodeType": "YulLiteral", + "src": "21538:76:5", + "type": "", + "value": "3459892854150586819083449948613048924207735017129514254460829121652786324530" + }, + { + "name": "frField", + "nativeSrc": "21636:7:5", + "nodeType": "YulIdentifier", + "src": "21636:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "21462:6:5", + "nodeType": "YulIdentifier", + "src": "21462:6:5" + }, + "nativeSrc": "21462:199:5", + "nodeType": "YulFunctionCall", + "src": "21462:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "21452:6:5", + "nodeType": "YulIdentifier", + "src": "21452:6:5" + } + ] + }, + { + "nativeSrc": "21678:41:5", + "nodeType": "YulAssignment", + "src": "21678:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "21695:6:5", + "nodeType": "YulIdentifier", + "src": "21695:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "21703:6:5", + "nodeType": "YulIdentifier", + "src": "21703:6:5" + }, + { + "name": "frField", + "nativeSrc": "21711:7:5", + "nodeType": "YulIdentifier", + "src": "21711:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21688:6:5", + "nodeType": "YulIdentifier", + "src": "21688:6:5" + }, + "nativeSrc": "21688:31:5", + "nodeType": "YulFunctionCall", + "src": "21688:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21678:6:5", + "nodeType": "YulIdentifier", + "src": "21678:6:5" + } + ] + }, + { + "nativeSrc": "21736:41:5", + "nodeType": "YulAssignment", + "src": "21736:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "21753:6:5", + "nodeType": "YulIdentifier", + "src": "21753:6:5" + }, + { + "name": "output", + "nativeSrc": "21761:6:5", + "nodeType": "YulIdentifier", + "src": "21761:6:5" + }, + { + "name": "frField", + "nativeSrc": "21769:7:5", + "nodeType": "YulIdentifier", + "src": "21769:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21746:6:5", + "nodeType": "YulIdentifier", + "src": "21746:6:5" + }, + "nativeSrc": "21746:31:5", + "nodeType": "YulFunctionCall", + "src": "21746:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21736:6:5", + "nodeType": "YulIdentifier", + "src": "21736:6:5" + } + ] + }, + { + "nativeSrc": "21794:41:5", + "nodeType": "YulAssignment", + "src": "21794:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "21811:6:5", + "nodeType": "YulIdentifier", + "src": "21811:6:5" + }, + { + "name": "output", + "nativeSrc": "21819:6:5", + "nodeType": "YulIdentifier", + "src": "21819:6:5" + }, + { + "name": "frField", + "nativeSrc": "21827:7:5", + "nodeType": "YulIdentifier", + "src": "21827:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21804:6:5", + "nodeType": "YulIdentifier", + "src": "21804:6:5" + }, + "nativeSrc": "21804:31:5", + "nodeType": "YulFunctionCall", + "src": "21804:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21794:6:5", + "nodeType": "YulIdentifier", + "src": "21794:6:5" + } + ] + }, + { + "nativeSrc": "21852:144:5", + "nodeType": "YulAssignment", + "src": "21852:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "21897:6:5", + "nodeType": "YulIdentifier", + "src": "21897:6:5" + }, + { + "name": "output", + "nativeSrc": "21905:6:5", + "nodeType": "YulIdentifier", + "src": "21905:6:5" + }, + { + "name": "frField", + "nativeSrc": "21913:7:5", + "nodeType": "YulIdentifier", + "src": "21913:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21890:6:5", + "nodeType": "YulIdentifier", + "src": "21890:6:5" + }, + "nativeSrc": "21890:31:5", + "nodeType": "YulFunctionCall", + "src": "21890:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "21943:6:5", + "nodeType": "YulIdentifier", + "src": "21943:6:5" + }, + { + "name": "frField", + "nativeSrc": "21971:7:5", + "nodeType": "YulIdentifier", + "src": "21971:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "21862:6:5", + "nodeType": "YulIdentifier", + "src": "21862:6:5" + }, + "nativeSrc": "21862:134:5", + "nodeType": "YulFunctionCall", + "src": "21862:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "21852:6:5", + "nodeType": "YulIdentifier", + "src": "21852:6:5" + } + ] + }, + { + "nativeSrc": "22014:209:5", + "nodeType": "YulAssignment", + "src": "22014:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "22059:6:5", + "nodeType": "YulIdentifier", + "src": "22059:6:5" + }, + { + "name": "h", + "nativeSrc": "22067:1:5", + "nodeType": "YulIdentifier", + "src": "22067:1:5" + }, + { + "name": "frField", + "nativeSrc": "22070:7:5", + "nodeType": "YulIdentifier", + "src": "22070:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "22052:6:5", + "nodeType": "YulIdentifier", + "src": "22052:6:5" + }, + "nativeSrc": "22052:26:5", + "nodeType": "YulFunctionCall", + "src": "22052:26:5" + }, + { + "kind": "number", + "nativeSrc": "22100:76:5", + "nodeType": "YulLiteral", + "src": "22100:76:5", + "type": "", + "value": "8165919441562399076732808928206069494664474480220235797297111305840352207764" + }, + { + "name": "frField", + "nativeSrc": "22198:7:5", + "nodeType": "YulIdentifier", + "src": "22198:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "22024:6:5", + "nodeType": "YulIdentifier", + "src": "22024:6:5" + }, + "nativeSrc": "22024:199:5", + "nodeType": "YulFunctionCall", + "src": "22024:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "22014:6:5", + "nodeType": "YulIdentifier", + "src": "22014:6:5" + } + ] + }, + { + "nativeSrc": "22240:41:5", + "nodeType": "YulAssignment", + "src": "22240:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "22257:6:5", + "nodeType": "YulIdentifier", + "src": "22257:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "22265:6:5", + "nodeType": "YulIdentifier", + "src": "22265:6:5" + }, + { + "name": "frField", + "nativeSrc": "22273:7:5", + "nodeType": "YulIdentifier", + "src": "22273:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22250:6:5", + "nodeType": "YulIdentifier", + "src": "22250:6:5" + }, + "nativeSrc": "22250:31:5", + "nodeType": "YulFunctionCall", + "src": "22250:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22240:6:5", + "nodeType": "YulIdentifier", + "src": "22240:6:5" + } + ] + }, + { + "nativeSrc": "22298:41:5", + "nodeType": "YulAssignment", + "src": "22298:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "22315:6:5", + "nodeType": "YulIdentifier", + "src": "22315:6:5" + }, + { + "name": "output", + "nativeSrc": "22323:6:5", + "nodeType": "YulIdentifier", + "src": "22323:6:5" + }, + { + "name": "frField", + "nativeSrc": "22331:7:5", + "nodeType": "YulIdentifier", + "src": "22331:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22308:6:5", + "nodeType": "YulIdentifier", + "src": "22308:6:5" + }, + "nativeSrc": "22308:31:5", + "nodeType": "YulFunctionCall", + "src": "22308:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22298:6:5", + "nodeType": "YulIdentifier", + "src": "22298:6:5" + } + ] + }, + { + "nativeSrc": "22356:41:5", + "nodeType": "YulAssignment", + "src": "22356:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "22373:6:5", + "nodeType": "YulIdentifier", + "src": "22373:6:5" + }, + { + "name": "output", + "nativeSrc": "22381:6:5", + "nodeType": "YulIdentifier", + "src": "22381:6:5" + }, + { + "name": "frField", + "nativeSrc": "22389:7:5", + "nodeType": "YulIdentifier", + "src": "22389:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22366:6:5", + "nodeType": "YulIdentifier", + "src": "22366:6:5" + }, + "nativeSrc": "22366:31:5", + "nodeType": "YulFunctionCall", + "src": "22366:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22356:6:5", + "nodeType": "YulIdentifier", + "src": "22356:6:5" + } + ] + }, + { + "nativeSrc": "22414:144:5", + "nodeType": "YulAssignment", + "src": "22414:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "22459:6:5", + "nodeType": "YulIdentifier", + "src": "22459:6:5" + }, + { + "name": "output", + "nativeSrc": "22467:6:5", + "nodeType": "YulIdentifier", + "src": "22467:6:5" + }, + { + "name": "frField", + "nativeSrc": "22475:7:5", + "nodeType": "YulIdentifier", + "src": "22475:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22452:6:5", + "nodeType": "YulIdentifier", + "src": "22452:6:5" + }, + "nativeSrc": "22452:31:5", + "nodeType": "YulFunctionCall", + "src": "22452:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "22505:6:5", + "nodeType": "YulIdentifier", + "src": "22505:6:5" + }, + { + "name": "frField", + "nativeSrc": "22533:7:5", + "nodeType": "YulIdentifier", + "src": "22533:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22424:6:5", + "nodeType": "YulIdentifier", + "src": "22424:6:5" + }, + "nativeSrc": "22424:134:5", + "nodeType": "YulFunctionCall", + "src": "22424:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22414:6:5", + "nodeType": "YulIdentifier", + "src": "22414:6:5" + } + ] + }, + { + "nativeSrc": "22576:209:5", + "nodeType": "YulAssignment", + "src": "22576:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "22621:6:5", + "nodeType": "YulIdentifier", + "src": "22621:6:5" + }, + { + "name": "h", + "nativeSrc": "22629:1:5", + "nodeType": "YulIdentifier", + "src": "22629:1:5" + }, + { + "name": "frField", + "nativeSrc": "22632:7:5", + "nodeType": "YulIdentifier", + "src": "22632:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "22614:6:5", + "nodeType": "YulIdentifier", + "src": "22614:6:5" + }, + "nativeSrc": "22614:26:5", + "nodeType": "YulFunctionCall", + "src": "22614:26:5" + }, + { + "kind": "number", + "nativeSrc": "22662:76:5", + "nodeType": "YulLiteral", + "src": "22662:76:5", + "type": "", + "value": "5067127638759272574597184239140007718698192996511162583428330546781376830321" + }, + { + "name": "frField", + "nativeSrc": "22760:7:5", + "nodeType": "YulIdentifier", + "src": "22760:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "22586:6:5", + "nodeType": "YulIdentifier", + "src": "22586:6:5" + }, + "nativeSrc": "22586:199:5", + "nodeType": "YulFunctionCall", + "src": "22586:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "22576:6:5", + "nodeType": "YulIdentifier", + "src": "22576:6:5" + } + ] + }, + { + "nativeSrc": "22802:41:5", + "nodeType": "YulAssignment", + "src": "22802:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "22819:6:5", + "nodeType": "YulIdentifier", + "src": "22819:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "22827:6:5", + "nodeType": "YulIdentifier", + "src": "22827:6:5" + }, + { + "name": "frField", + "nativeSrc": "22835:7:5", + "nodeType": "YulIdentifier", + "src": "22835:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22812:6:5", + "nodeType": "YulIdentifier", + "src": "22812:6:5" + }, + "nativeSrc": "22812:31:5", + "nodeType": "YulFunctionCall", + "src": "22812:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22802:6:5", + "nodeType": "YulIdentifier", + "src": "22802:6:5" + } + ] + }, + { + "nativeSrc": "22860:41:5", + "nodeType": "YulAssignment", + "src": "22860:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "22877:6:5", + "nodeType": "YulIdentifier", + "src": "22877:6:5" + }, + { + "name": "output", + "nativeSrc": "22885:6:5", + "nodeType": "YulIdentifier", + "src": "22885:6:5" + }, + { + "name": "frField", + "nativeSrc": "22893:7:5", + "nodeType": "YulIdentifier", + "src": "22893:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22870:6:5", + "nodeType": "YulIdentifier", + "src": "22870:6:5" + }, + "nativeSrc": "22870:31:5", + "nodeType": "YulFunctionCall", + "src": "22870:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22860:6:5", + "nodeType": "YulIdentifier", + "src": "22860:6:5" + } + ] + }, + { + "nativeSrc": "22918:41:5", + "nodeType": "YulAssignment", + "src": "22918:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "22935:6:5", + "nodeType": "YulIdentifier", + "src": "22935:6:5" + }, + { + "name": "output", + "nativeSrc": "22943:6:5", + "nodeType": "YulIdentifier", + "src": "22943:6:5" + }, + { + "name": "frField", + "nativeSrc": "22951:7:5", + "nodeType": "YulIdentifier", + "src": "22951:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22928:6:5", + "nodeType": "YulIdentifier", + "src": "22928:6:5" + }, + "nativeSrc": "22928:31:5", + "nodeType": "YulFunctionCall", + "src": "22928:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22918:6:5", + "nodeType": "YulIdentifier", + "src": "22918:6:5" + } + ] + }, + { + "nativeSrc": "22976:144:5", + "nodeType": "YulAssignment", + "src": "22976:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "23021:6:5", + "nodeType": "YulIdentifier", + "src": "23021:6:5" + }, + { + "name": "output", + "nativeSrc": "23029:6:5", + "nodeType": "YulIdentifier", + "src": "23029:6:5" + }, + { + "name": "frField", + "nativeSrc": "23037:7:5", + "nodeType": "YulIdentifier", + "src": "23037:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23014:6:5", + "nodeType": "YulIdentifier", + "src": "23014:6:5" + }, + "nativeSrc": "23014:31:5", + "nodeType": "YulFunctionCall", + "src": "23014:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "23067:6:5", + "nodeType": "YulIdentifier", + "src": "23067:6:5" + }, + { + "name": "frField", + "nativeSrc": "23095:7:5", + "nodeType": "YulIdentifier", + "src": "23095:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "22986:6:5", + "nodeType": "YulIdentifier", + "src": "22986:6:5" + }, + "nativeSrc": "22986:134:5", + "nodeType": "YulFunctionCall", + "src": "22986:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "22976:6:5", + "nodeType": "YulIdentifier", + "src": "22976:6:5" + } + ] + }, + { + "nativeSrc": "23138:209:5", + "nodeType": "YulAssignment", + "src": "23138:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "23183:6:5", + "nodeType": "YulIdentifier", + "src": "23183:6:5" + }, + { + "name": "h", + "nativeSrc": "23191:1:5", + "nodeType": "YulIdentifier", + "src": "23191:1:5" + }, + { + "name": "frField", + "nativeSrc": "23194:7:5", + "nodeType": "YulIdentifier", + "src": "23194:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "23176:6:5", + "nodeType": "YulIdentifier", + "src": "23176:6:5" + }, + "nativeSrc": "23176:26:5", + "nodeType": "YulFunctionCall", + "src": "23176:26:5" + }, + { + "kind": "number", + "nativeSrc": "23224:76:5", + "nodeType": "YulLiteral", + "src": "23224:76:5", + "type": "", + "value": "7564926180046670501077982861476967417487855218354401587881011340975488196742" + }, + { + "name": "frField", + "nativeSrc": "23322:7:5", + "nodeType": "YulIdentifier", + "src": "23322:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "23148:6:5", + "nodeType": "YulIdentifier", + "src": "23148:6:5" + }, + "nativeSrc": "23148:199:5", + "nodeType": "YulFunctionCall", + "src": "23148:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "23138:6:5", + "nodeType": "YulIdentifier", + "src": "23138:6:5" + } + ] + }, + { + "nativeSrc": "23364:41:5", + "nodeType": "YulAssignment", + "src": "23364:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "23381:6:5", + "nodeType": "YulIdentifier", + "src": "23381:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "23389:6:5", + "nodeType": "YulIdentifier", + "src": "23389:6:5" + }, + { + "name": "frField", + "nativeSrc": "23397:7:5", + "nodeType": "YulIdentifier", + "src": "23397:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23374:6:5", + "nodeType": "YulIdentifier", + "src": "23374:6:5" + }, + "nativeSrc": "23374:31:5", + "nodeType": "YulFunctionCall", + "src": "23374:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23364:6:5", + "nodeType": "YulIdentifier", + "src": "23364:6:5" + } + ] + }, + { + "nativeSrc": "23422:41:5", + "nodeType": "YulAssignment", + "src": "23422:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "23439:6:5", + "nodeType": "YulIdentifier", + "src": "23439:6:5" + }, + { + "name": "output", + "nativeSrc": "23447:6:5", + "nodeType": "YulIdentifier", + "src": "23447:6:5" + }, + { + "name": "frField", + "nativeSrc": "23455:7:5", + "nodeType": "YulIdentifier", + "src": "23455:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23432:6:5", + "nodeType": "YulIdentifier", + "src": "23432:6:5" + }, + "nativeSrc": "23432:31:5", + "nodeType": "YulFunctionCall", + "src": "23432:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23422:6:5", + "nodeType": "YulIdentifier", + "src": "23422:6:5" + } + ] + }, + { + "nativeSrc": "23480:41:5", + "nodeType": "YulAssignment", + "src": "23480:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "23497:6:5", + "nodeType": "YulIdentifier", + "src": "23497:6:5" + }, + { + "name": "output", + "nativeSrc": "23505:6:5", + "nodeType": "YulIdentifier", + "src": "23505:6:5" + }, + { + "name": "frField", + "nativeSrc": "23513:7:5", + "nodeType": "YulIdentifier", + "src": "23513:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23490:6:5", + "nodeType": "YulIdentifier", + "src": "23490:6:5" + }, + "nativeSrc": "23490:31:5", + "nodeType": "YulFunctionCall", + "src": "23490:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23480:6:5", + "nodeType": "YulIdentifier", + "src": "23480:6:5" + } + ] + }, + { + "nativeSrc": "23538:144:5", + "nodeType": "YulAssignment", + "src": "23538:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "23583:6:5", + "nodeType": "YulIdentifier", + "src": "23583:6:5" + }, + { + "name": "output", + "nativeSrc": "23591:6:5", + "nodeType": "YulIdentifier", + "src": "23591:6:5" + }, + { + "name": "frField", + "nativeSrc": "23599:7:5", + "nodeType": "YulIdentifier", + "src": "23599:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23576:6:5", + "nodeType": "YulIdentifier", + "src": "23576:6:5" + }, + "nativeSrc": "23576:31:5", + "nodeType": "YulFunctionCall", + "src": "23576:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "23629:6:5", + "nodeType": "YulIdentifier", + "src": "23629:6:5" + }, + { + "name": "frField", + "nativeSrc": "23657:7:5", + "nodeType": "YulIdentifier", + "src": "23657:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23548:6:5", + "nodeType": "YulIdentifier", + "src": "23548:6:5" + }, + "nativeSrc": "23548:134:5", + "nodeType": "YulFunctionCall", + "src": "23548:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23538:6:5", + "nodeType": "YulIdentifier", + "src": "23538:6:5" + } + ] + }, + { + "nativeSrc": "23700:209:5", + "nodeType": "YulAssignment", + "src": "23700:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "23745:6:5", + "nodeType": "YulIdentifier", + "src": "23745:6:5" + }, + { + "name": "h", + "nativeSrc": "23753:1:5", + "nodeType": "YulIdentifier", + "src": "23753:1:5" + }, + { + "name": "frField", + "nativeSrc": "23756:7:5", + "nodeType": "YulIdentifier", + "src": "23756:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "23738:6:5", + "nodeType": "YulIdentifier", + "src": "23738:6:5" + }, + "nativeSrc": "23738:26:5", + "nodeType": "YulFunctionCall", + "src": "23738:26:5" + }, + { + "kind": "number", + "nativeSrc": "23786:76:5", + "nodeType": "YulLiteral", + "src": "23786:76:5", + "type": "", + "value": "4793316512087044382791577380686883286681140325373390439122763061600650301139" + }, + { + "name": "frField", + "nativeSrc": "23884:7:5", + "nodeType": "YulIdentifier", + "src": "23884:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "23710:6:5", + "nodeType": "YulIdentifier", + "src": "23710:6:5" + }, + "nativeSrc": "23710:199:5", + "nodeType": "YulFunctionCall", + "src": "23710:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "23700:6:5", + "nodeType": "YulIdentifier", + "src": "23700:6:5" + } + ] + }, + { + "nativeSrc": "23926:41:5", + "nodeType": "YulAssignment", + "src": "23926:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "23943:6:5", + "nodeType": "YulIdentifier", + "src": "23943:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "23951:6:5", + "nodeType": "YulIdentifier", + "src": "23951:6:5" + }, + { + "name": "frField", + "nativeSrc": "23959:7:5", + "nodeType": "YulIdentifier", + "src": "23959:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23936:6:5", + "nodeType": "YulIdentifier", + "src": "23936:6:5" + }, + "nativeSrc": "23936:31:5", + "nodeType": "YulFunctionCall", + "src": "23936:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23926:6:5", + "nodeType": "YulIdentifier", + "src": "23926:6:5" + } + ] + }, + { + "nativeSrc": "23984:41:5", + "nodeType": "YulAssignment", + "src": "23984:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "24001:6:5", + "nodeType": "YulIdentifier", + "src": "24001:6:5" + }, + { + "name": "output", + "nativeSrc": "24009:6:5", + "nodeType": "YulIdentifier", + "src": "24009:6:5" + }, + { + "name": "frField", + "nativeSrc": "24017:7:5", + "nodeType": "YulIdentifier", + "src": "24017:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "23994:6:5", + "nodeType": "YulIdentifier", + "src": "23994:6:5" + }, + "nativeSrc": "23994:31:5", + "nodeType": "YulFunctionCall", + "src": "23994:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "23984:6:5", + "nodeType": "YulIdentifier", + "src": "23984:6:5" + } + ] + }, + { + "nativeSrc": "24042:41:5", + "nodeType": "YulAssignment", + "src": "24042:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "24059:6:5", + "nodeType": "YulIdentifier", + "src": "24059:6:5" + }, + { + "name": "output", + "nativeSrc": "24067:6:5", + "nodeType": "YulIdentifier", + "src": "24067:6:5" + }, + { + "name": "frField", + "nativeSrc": "24075:7:5", + "nodeType": "YulIdentifier", + "src": "24075:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24052:6:5", + "nodeType": "YulIdentifier", + "src": "24052:6:5" + }, + "nativeSrc": "24052:31:5", + "nodeType": "YulFunctionCall", + "src": "24052:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24042:6:5", + "nodeType": "YulIdentifier", + "src": "24042:6:5" + } + ] + }, + { + "nativeSrc": "24100:144:5", + "nodeType": "YulAssignment", + "src": "24100:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "24145:6:5", + "nodeType": "YulIdentifier", + "src": "24145:6:5" + }, + { + "name": "output", + "nativeSrc": "24153:6:5", + "nodeType": "YulIdentifier", + "src": "24153:6:5" + }, + { + "name": "frField", + "nativeSrc": "24161:7:5", + "nodeType": "YulIdentifier", + "src": "24161:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24138:6:5", + "nodeType": "YulIdentifier", + "src": "24138:6:5" + }, + "nativeSrc": "24138:31:5", + "nodeType": "YulFunctionCall", + "src": "24138:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "24191:6:5", + "nodeType": "YulIdentifier", + "src": "24191:6:5" + }, + { + "name": "frField", + "nativeSrc": "24219:7:5", + "nodeType": "YulIdentifier", + "src": "24219:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24110:6:5", + "nodeType": "YulIdentifier", + "src": "24110:6:5" + }, + "nativeSrc": "24110:134:5", + "nodeType": "YulFunctionCall", + "src": "24110:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24100:6:5", + "nodeType": "YulIdentifier", + "src": "24100:6:5" + } + ] + }, + { + "nativeSrc": "24262:207:5", + "nodeType": "YulAssignment", + "src": "24262:207:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "24307:6:5", + "nodeType": "YulIdentifier", + "src": "24307:6:5" + }, + { + "name": "h", + "nativeSrc": "24315:1:5", + "nodeType": "YulIdentifier", + "src": "24315:1:5" + }, + { + "name": "frField", + "nativeSrc": "24318:7:5", + "nodeType": "YulIdentifier", + "src": "24318:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "24300:6:5", + "nodeType": "YulIdentifier", + "src": "24300:6:5" + }, + "nativeSrc": "24300:26:5", + "nodeType": "YulFunctionCall", + "src": "24300:26:5" + }, + { + "kind": "number", + "nativeSrc": "24348:74:5", + "nodeType": "YulLiteral", + "src": "24348:74:5", + "type": "", + "value": "12025027725022723723984202199185080936456585195449250668991990971241927925" + }, + { + "name": "frField", + "nativeSrc": "24444:7:5", + "nodeType": "YulIdentifier", + "src": "24444:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "24272:6:5", + "nodeType": "YulIdentifier", + "src": "24272:6:5" + }, + "nativeSrc": "24272:197:5", + "nodeType": "YulFunctionCall", + "src": "24272:197:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "24262:6:5", + "nodeType": "YulIdentifier", + "src": "24262:6:5" + } + ] + }, + { + "nativeSrc": "24486:41:5", + "nodeType": "YulAssignment", + "src": "24486:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "24503:6:5", + "nodeType": "YulIdentifier", + "src": "24503:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "24511:6:5", + "nodeType": "YulIdentifier", + "src": "24511:6:5" + }, + { + "name": "frField", + "nativeSrc": "24519:7:5", + "nodeType": "YulIdentifier", + "src": "24519:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24496:6:5", + "nodeType": "YulIdentifier", + "src": "24496:6:5" + }, + "nativeSrc": "24496:31:5", + "nodeType": "YulFunctionCall", + "src": "24496:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24486:6:5", + "nodeType": "YulIdentifier", + "src": "24486:6:5" + } + ] + }, + { + "nativeSrc": "24544:41:5", + "nodeType": "YulAssignment", + "src": "24544:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "24561:6:5", + "nodeType": "YulIdentifier", + "src": "24561:6:5" + }, + { + "name": "output", + "nativeSrc": "24569:6:5", + "nodeType": "YulIdentifier", + "src": "24569:6:5" + }, + { + "name": "frField", + "nativeSrc": "24577:7:5", + "nodeType": "YulIdentifier", + "src": "24577:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24554:6:5", + "nodeType": "YulIdentifier", + "src": "24554:6:5" + }, + "nativeSrc": "24554:31:5", + "nodeType": "YulFunctionCall", + "src": "24554:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24544:6:5", + "nodeType": "YulIdentifier", + "src": "24544:6:5" + } + ] + }, + { + "nativeSrc": "24602:41:5", + "nodeType": "YulAssignment", + "src": "24602:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "24619:6:5", + "nodeType": "YulIdentifier", + "src": "24619:6:5" + }, + { + "name": "output", + "nativeSrc": "24627:6:5", + "nodeType": "YulIdentifier", + "src": "24627:6:5" + }, + { + "name": "frField", + "nativeSrc": "24635:7:5", + "nodeType": "YulIdentifier", + "src": "24635:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24612:6:5", + "nodeType": "YulIdentifier", + "src": "24612:6:5" + }, + "nativeSrc": "24612:31:5", + "nodeType": "YulFunctionCall", + "src": "24612:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24602:6:5", + "nodeType": "YulIdentifier", + "src": "24602:6:5" + } + ] + }, + { + "nativeSrc": "24660:144:5", + "nodeType": "YulAssignment", + "src": "24660:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "24705:6:5", + "nodeType": "YulIdentifier", + "src": "24705:6:5" + }, + { + "name": "output", + "nativeSrc": "24713:6:5", + "nodeType": "YulIdentifier", + "src": "24713:6:5" + }, + { + "name": "frField", + "nativeSrc": "24721:7:5", + "nodeType": "YulIdentifier", + "src": "24721:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24698:6:5", + "nodeType": "YulIdentifier", + "src": "24698:6:5" + }, + "nativeSrc": "24698:31:5", + "nodeType": "YulFunctionCall", + "src": "24698:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "24751:6:5", + "nodeType": "YulIdentifier", + "src": "24751:6:5" + }, + { + "name": "frField", + "nativeSrc": "24779:7:5", + "nodeType": "YulIdentifier", + "src": "24779:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "24670:6:5", + "nodeType": "YulIdentifier", + "src": "24670:6:5" + }, + "nativeSrc": "24670:134:5", + "nodeType": "YulFunctionCall", + "src": "24670:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "24660:6:5", + "nodeType": "YulIdentifier", + "src": "24660:6:5" + } + ] + }, + { + "nativeSrc": "24822:209:5", + "nodeType": "YulAssignment", + "src": "24822:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "24867:6:5", + "nodeType": "YulIdentifier", + "src": "24867:6:5" + }, + { + "name": "h", + "nativeSrc": "24875:1:5", + "nodeType": "YulIdentifier", + "src": "24875:1:5" + }, + { + "name": "frField", + "nativeSrc": "24878:7:5", + "nodeType": "YulIdentifier", + "src": "24878:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "24860:6:5", + "nodeType": "YulIdentifier", + "src": "24860:6:5" + }, + "nativeSrc": "24860:26:5", + "nodeType": "YulFunctionCall", + "src": "24860:26:5" + }, + { + "kind": "number", + "nativeSrc": "24908:76:5", + "nodeType": "YulLiteral", + "src": "24908:76:5", + "type": "", + "value": "5056480146405086811789505170440731715530475328844870175949109998024731067467" + }, + { + "name": "frField", + "nativeSrc": "25006:7:5", + "nodeType": "YulIdentifier", + "src": "25006:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "24832:6:5", + "nodeType": "YulIdentifier", + "src": "24832:6:5" + }, + "nativeSrc": "24832:199:5", + "nodeType": "YulFunctionCall", + "src": "24832:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "24822:6:5", + "nodeType": "YulIdentifier", + "src": "24822:6:5" + } + ] + }, + { + "nativeSrc": "25048:41:5", + "nodeType": "YulAssignment", + "src": "25048:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "25065:6:5", + "nodeType": "YulIdentifier", + "src": "25065:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "25073:6:5", + "nodeType": "YulIdentifier", + "src": "25073:6:5" + }, + { + "name": "frField", + "nativeSrc": "25081:7:5", + "nodeType": "YulIdentifier", + "src": "25081:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25058:6:5", + "nodeType": "YulIdentifier", + "src": "25058:6:5" + }, + "nativeSrc": "25058:31:5", + "nodeType": "YulFunctionCall", + "src": "25058:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25048:6:5", + "nodeType": "YulIdentifier", + "src": "25048:6:5" + } + ] + }, + { + "nativeSrc": "25106:41:5", + "nodeType": "YulAssignment", + "src": "25106:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "25123:6:5", + "nodeType": "YulIdentifier", + "src": "25123:6:5" + }, + { + "name": "output", + "nativeSrc": "25131:6:5", + "nodeType": "YulIdentifier", + "src": "25131:6:5" + }, + { + "name": "frField", + "nativeSrc": "25139:7:5", + "nodeType": "YulIdentifier", + "src": "25139:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25116:6:5", + "nodeType": "YulIdentifier", + "src": "25116:6:5" + }, + "nativeSrc": "25116:31:5", + "nodeType": "YulFunctionCall", + "src": "25116:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25106:6:5", + "nodeType": "YulIdentifier", + "src": "25106:6:5" + } + ] + }, + { + "nativeSrc": "25164:41:5", + "nodeType": "YulAssignment", + "src": "25164:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "25181:6:5", + "nodeType": "YulIdentifier", + "src": "25181:6:5" + }, + { + "name": "output", + "nativeSrc": "25189:6:5", + "nodeType": "YulIdentifier", + "src": "25189:6:5" + }, + { + "name": "frField", + "nativeSrc": "25197:7:5", + "nodeType": "YulIdentifier", + "src": "25197:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25174:6:5", + "nodeType": "YulIdentifier", + "src": "25174:6:5" + }, + "nativeSrc": "25174:31:5", + "nodeType": "YulFunctionCall", + "src": "25174:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25164:6:5", + "nodeType": "YulIdentifier", + "src": "25164:6:5" + } + ] + }, + { + "nativeSrc": "25222:144:5", + "nodeType": "YulAssignment", + "src": "25222:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "25267:6:5", + "nodeType": "YulIdentifier", + "src": "25267:6:5" + }, + { + "name": "output", + "nativeSrc": "25275:6:5", + "nodeType": "YulIdentifier", + "src": "25275:6:5" + }, + { + "name": "frField", + "nativeSrc": "25283:7:5", + "nodeType": "YulIdentifier", + "src": "25283:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25260:6:5", + "nodeType": "YulIdentifier", + "src": "25260:6:5" + }, + "nativeSrc": "25260:31:5", + "nodeType": "YulFunctionCall", + "src": "25260:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "25313:6:5", + "nodeType": "YulIdentifier", + "src": "25313:6:5" + }, + { + "name": "frField", + "nativeSrc": "25341:7:5", + "nodeType": "YulIdentifier", + "src": "25341:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25232:6:5", + "nodeType": "YulIdentifier", + "src": "25232:6:5" + }, + "nativeSrc": "25232:134:5", + "nodeType": "YulFunctionCall", + "src": "25232:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25222:6:5", + "nodeType": "YulIdentifier", + "src": "25222:6:5" + } + ] + }, + { + "nativeSrc": "25384:209:5", + "nodeType": "YulAssignment", + "src": "25384:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "25429:6:5", + "nodeType": "YulIdentifier", + "src": "25429:6:5" + }, + { + "name": "h", + "nativeSrc": "25437:1:5", + "nodeType": "YulIdentifier", + "src": "25437:1:5" + }, + { + "name": "frField", + "nativeSrc": "25440:7:5", + "nodeType": "YulIdentifier", + "src": "25440:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "25422:6:5", + "nodeType": "YulIdentifier", + "src": "25422:6:5" + }, + "nativeSrc": "25422:26:5", + "nodeType": "YulFunctionCall", + "src": "25422:26:5" + }, + { + "kind": "number", + "nativeSrc": "25470:76:5", + "nodeType": "YulLiteral", + "src": "25470:76:5", + "type": "", + "value": "3850822128034659558863504800917443538100103152464488164345952697508772708155" + }, + { + "name": "frField", + "nativeSrc": "25568:7:5", + "nodeType": "YulIdentifier", + "src": "25568:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "25394:6:5", + "nodeType": "YulIdentifier", + "src": "25394:6:5" + }, + "nativeSrc": "25394:199:5", + "nodeType": "YulFunctionCall", + "src": "25394:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "25384:6:5", + "nodeType": "YulIdentifier", + "src": "25384:6:5" + } + ] + }, + { + "nativeSrc": "25610:41:5", + "nodeType": "YulAssignment", + "src": "25610:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "25627:6:5", + "nodeType": "YulIdentifier", + "src": "25627:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "25635:6:5", + "nodeType": "YulIdentifier", + "src": "25635:6:5" + }, + { + "name": "frField", + "nativeSrc": "25643:7:5", + "nodeType": "YulIdentifier", + "src": "25643:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25620:6:5", + "nodeType": "YulIdentifier", + "src": "25620:6:5" + }, + "nativeSrc": "25620:31:5", + "nodeType": "YulFunctionCall", + "src": "25620:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25610:6:5", + "nodeType": "YulIdentifier", + "src": "25610:6:5" + } + ] + }, + { + "nativeSrc": "25668:41:5", + "nodeType": "YulAssignment", + "src": "25668:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "25685:6:5", + "nodeType": "YulIdentifier", + "src": "25685:6:5" + }, + { + "name": "output", + "nativeSrc": "25693:6:5", + "nodeType": "YulIdentifier", + "src": "25693:6:5" + }, + { + "name": "frField", + "nativeSrc": "25701:7:5", + "nodeType": "YulIdentifier", + "src": "25701:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25678:6:5", + "nodeType": "YulIdentifier", + "src": "25678:6:5" + }, + "nativeSrc": "25678:31:5", + "nodeType": "YulFunctionCall", + "src": "25678:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25668:6:5", + "nodeType": "YulIdentifier", + "src": "25668:6:5" + } + ] + }, + { + "nativeSrc": "25726:41:5", + "nodeType": "YulAssignment", + "src": "25726:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "25743:6:5", + "nodeType": "YulIdentifier", + "src": "25743:6:5" + }, + { + "name": "output", + "nativeSrc": "25751:6:5", + "nodeType": "YulIdentifier", + "src": "25751:6:5" + }, + { + "name": "frField", + "nativeSrc": "25759:7:5", + "nodeType": "YulIdentifier", + "src": "25759:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25736:6:5", + "nodeType": "YulIdentifier", + "src": "25736:6:5" + }, + "nativeSrc": "25736:31:5", + "nodeType": "YulFunctionCall", + "src": "25736:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25726:6:5", + "nodeType": "YulIdentifier", + "src": "25726:6:5" + } + ] + }, + { + "nativeSrc": "25784:144:5", + "nodeType": "YulAssignment", + "src": "25784:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "25829:6:5", + "nodeType": "YulIdentifier", + "src": "25829:6:5" + }, + { + "name": "output", + "nativeSrc": "25837:6:5", + "nodeType": "YulIdentifier", + "src": "25837:6:5" + }, + { + "name": "frField", + "nativeSrc": "25845:7:5", + "nodeType": "YulIdentifier", + "src": "25845:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25822:6:5", + "nodeType": "YulIdentifier", + "src": "25822:6:5" + }, + "nativeSrc": "25822:31:5", + "nodeType": "YulFunctionCall", + "src": "25822:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "25875:6:5", + "nodeType": "YulIdentifier", + "src": "25875:6:5" + }, + { + "name": "frField", + "nativeSrc": "25903:7:5", + "nodeType": "YulIdentifier", + "src": "25903:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "25794:6:5", + "nodeType": "YulIdentifier", + "src": "25794:6:5" + }, + "nativeSrc": "25794:134:5", + "nodeType": "YulFunctionCall", + "src": "25794:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "25784:6:5", + "nodeType": "YulIdentifier", + "src": "25784:6:5" + } + ] + }, + { + "nativeSrc": "25946:209:5", + "nodeType": "YulAssignment", + "src": "25946:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "25991:6:5", + "nodeType": "YulIdentifier", + "src": "25991:6:5" + }, + { + "name": "h", + "nativeSrc": "25999:1:5", + "nodeType": "YulIdentifier", + "src": "25999:1:5" + }, + { + "name": "frField", + "nativeSrc": "26002:7:5", + "nodeType": "YulIdentifier", + "src": "26002:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "25984:6:5", + "nodeType": "YulIdentifier", + "src": "25984:6:5" + }, + "nativeSrc": "25984:26:5", + "nodeType": "YulFunctionCall", + "src": "25984:26:5" + }, + { + "kind": "number", + "nativeSrc": "26032:76:5", + "nodeType": "YulLiteral", + "src": "26032:76:5", + "type": "", + "value": "5490569542353168488797150359760203713598401616662275350850844170956899716180" + }, + { + "name": "frField", + "nativeSrc": "26130:7:5", + "nodeType": "YulIdentifier", + "src": "26130:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "25956:6:5", + "nodeType": "YulIdentifier", + "src": "25956:6:5" + }, + "nativeSrc": "25956:199:5", + "nodeType": "YulFunctionCall", + "src": "25956:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "25946:6:5", + "nodeType": "YulIdentifier", + "src": "25946:6:5" + } + ] + }, + { + "nativeSrc": "26172:41:5", + "nodeType": "YulAssignment", + "src": "26172:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "26189:6:5", + "nodeType": "YulIdentifier", + "src": "26189:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "26197:6:5", + "nodeType": "YulIdentifier", + "src": "26197:6:5" + }, + { + "name": "frField", + "nativeSrc": "26205:7:5", + "nodeType": "YulIdentifier", + "src": "26205:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26182:6:5", + "nodeType": "YulIdentifier", + "src": "26182:6:5" + }, + "nativeSrc": "26182:31:5", + "nodeType": "YulFunctionCall", + "src": "26182:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26172:6:5", + "nodeType": "YulIdentifier", + "src": "26172:6:5" + } + ] + }, + { + "nativeSrc": "26230:41:5", + "nodeType": "YulAssignment", + "src": "26230:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "26247:6:5", + "nodeType": "YulIdentifier", + "src": "26247:6:5" + }, + { + "name": "output", + "nativeSrc": "26255:6:5", + "nodeType": "YulIdentifier", + "src": "26255:6:5" + }, + { + "name": "frField", + "nativeSrc": "26263:7:5", + "nodeType": "YulIdentifier", + "src": "26263:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26240:6:5", + "nodeType": "YulIdentifier", + "src": "26240:6:5" + }, + "nativeSrc": "26240:31:5", + "nodeType": "YulFunctionCall", + "src": "26240:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26230:6:5", + "nodeType": "YulIdentifier", + "src": "26230:6:5" + } + ] + }, + { + "nativeSrc": "26288:41:5", + "nodeType": "YulAssignment", + "src": "26288:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "26305:6:5", + "nodeType": "YulIdentifier", + "src": "26305:6:5" + }, + { + "name": "output", + "nativeSrc": "26313:6:5", + "nodeType": "YulIdentifier", + "src": "26313:6:5" + }, + { + "name": "frField", + "nativeSrc": "26321:7:5", + "nodeType": "YulIdentifier", + "src": "26321:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26298:6:5", + "nodeType": "YulIdentifier", + "src": "26298:6:5" + }, + "nativeSrc": "26298:31:5", + "nodeType": "YulFunctionCall", + "src": "26298:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26288:6:5", + "nodeType": "YulIdentifier", + "src": "26288:6:5" + } + ] + }, + { + "nativeSrc": "26346:144:5", + "nodeType": "YulAssignment", + "src": "26346:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "26391:6:5", + "nodeType": "YulIdentifier", + "src": "26391:6:5" + }, + { + "name": "output", + "nativeSrc": "26399:6:5", + "nodeType": "YulIdentifier", + "src": "26399:6:5" + }, + { + "name": "frField", + "nativeSrc": "26407:7:5", + "nodeType": "YulIdentifier", + "src": "26407:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26384:6:5", + "nodeType": "YulIdentifier", + "src": "26384:6:5" + }, + "nativeSrc": "26384:31:5", + "nodeType": "YulFunctionCall", + "src": "26384:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "26437:6:5", + "nodeType": "YulIdentifier", + "src": "26437:6:5" + }, + { + "name": "frField", + "nativeSrc": "26465:7:5", + "nodeType": "YulIdentifier", + "src": "26465:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26356:6:5", + "nodeType": "YulIdentifier", + "src": "26356:6:5" + }, + "nativeSrc": "26356:134:5", + "nodeType": "YulFunctionCall", + "src": "26356:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26346:6:5", + "nodeType": "YulIdentifier", + "src": "26346:6:5" + } + ] + }, + { + "nativeSrc": "26508:209:5", + "nodeType": "YulAssignment", + "src": "26508:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "26553:6:5", + "nodeType": "YulIdentifier", + "src": "26553:6:5" + }, + { + "name": "h", + "nativeSrc": "26561:1:5", + "nodeType": "YulIdentifier", + "src": "26561:1:5" + }, + { + "name": "frField", + "nativeSrc": "26564:7:5", + "nodeType": "YulIdentifier", + "src": "26564:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "26546:6:5", + "nodeType": "YulIdentifier", + "src": "26546:6:5" + }, + "nativeSrc": "26546:26:5", + "nodeType": "YulFunctionCall", + "src": "26546:26:5" + }, + { + "kind": "number", + "nativeSrc": "26594:76:5", + "nodeType": "YulLiteral", + "src": "26594:76:5", + "type": "", + "value": "6809916892509991991280249336166027496157481609693382555884367500846199028644" + }, + { + "name": "frField", + "nativeSrc": "26692:7:5", + "nodeType": "YulIdentifier", + "src": "26692:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "26518:6:5", + "nodeType": "YulIdentifier", + "src": "26518:6:5" + }, + "nativeSrc": "26518:199:5", + "nodeType": "YulFunctionCall", + "src": "26518:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "26508:6:5", + "nodeType": "YulIdentifier", + "src": "26508:6:5" + } + ] + }, + { + "nativeSrc": "26734:41:5", + "nodeType": "YulAssignment", + "src": "26734:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "26751:6:5", + "nodeType": "YulIdentifier", + "src": "26751:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "26759:6:5", + "nodeType": "YulIdentifier", + "src": "26759:6:5" + }, + { + "name": "frField", + "nativeSrc": "26767:7:5", + "nodeType": "YulIdentifier", + "src": "26767:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26744:6:5", + "nodeType": "YulIdentifier", + "src": "26744:6:5" + }, + "nativeSrc": "26744:31:5", + "nodeType": "YulFunctionCall", + "src": "26744:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26734:6:5", + "nodeType": "YulIdentifier", + "src": "26734:6:5" + } + ] + }, + { + "nativeSrc": "26792:41:5", + "nodeType": "YulAssignment", + "src": "26792:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "26809:6:5", + "nodeType": "YulIdentifier", + "src": "26809:6:5" + }, + { + "name": "output", + "nativeSrc": "26817:6:5", + "nodeType": "YulIdentifier", + "src": "26817:6:5" + }, + { + "name": "frField", + "nativeSrc": "26825:7:5", + "nodeType": "YulIdentifier", + "src": "26825:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26802:6:5", + "nodeType": "YulIdentifier", + "src": "26802:6:5" + }, + "nativeSrc": "26802:31:5", + "nodeType": "YulFunctionCall", + "src": "26802:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26792:6:5", + "nodeType": "YulIdentifier", + "src": "26792:6:5" + } + ] + }, + { + "nativeSrc": "26850:41:5", + "nodeType": "YulAssignment", + "src": "26850:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "26867:6:5", + "nodeType": "YulIdentifier", + "src": "26867:6:5" + }, + { + "name": "output", + "nativeSrc": "26875:6:5", + "nodeType": "YulIdentifier", + "src": "26875:6:5" + }, + { + "name": "frField", + "nativeSrc": "26883:7:5", + "nodeType": "YulIdentifier", + "src": "26883:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26860:6:5", + "nodeType": "YulIdentifier", + "src": "26860:6:5" + }, + "nativeSrc": "26860:31:5", + "nodeType": "YulFunctionCall", + "src": "26860:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26850:6:5", + "nodeType": "YulIdentifier", + "src": "26850:6:5" + } + ] + }, + { + "nativeSrc": "26908:144:5", + "nodeType": "YulAssignment", + "src": "26908:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "26953:6:5", + "nodeType": "YulIdentifier", + "src": "26953:6:5" + }, + { + "name": "output", + "nativeSrc": "26961:6:5", + "nodeType": "YulIdentifier", + "src": "26961:6:5" + }, + { + "name": "frField", + "nativeSrc": "26969:7:5", + "nodeType": "YulIdentifier", + "src": "26969:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26946:6:5", + "nodeType": "YulIdentifier", + "src": "26946:6:5" + }, + "nativeSrc": "26946:31:5", + "nodeType": "YulFunctionCall", + "src": "26946:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "26999:6:5", + "nodeType": "YulIdentifier", + "src": "26999:6:5" + }, + { + "name": "frField", + "nativeSrc": "27027:7:5", + "nodeType": "YulIdentifier", + "src": "27027:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "26918:6:5", + "nodeType": "YulIdentifier", + "src": "26918:6:5" + }, + "nativeSrc": "26918:134:5", + "nodeType": "YulFunctionCall", + "src": "26918:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "26908:6:5", + "nodeType": "YulIdentifier", + "src": "26908:6:5" + } + ] + }, + { + "nativeSrc": "27070:209:5", + "nodeType": "YulAssignment", + "src": "27070:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "27115:6:5", + "nodeType": "YulIdentifier", + "src": "27115:6:5" + }, + { + "name": "h", + "nativeSrc": "27123:1:5", + "nodeType": "YulIdentifier", + "src": "27123:1:5" + }, + { + "name": "frField", + "nativeSrc": "27126:7:5", + "nodeType": "YulIdentifier", + "src": "27126:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "27108:6:5", + "nodeType": "YulIdentifier", + "src": "27108:6:5" + }, + "nativeSrc": "27108:26:5", + "nodeType": "YulFunctionCall", + "src": "27108:26:5" + }, + { + "kind": "number", + "nativeSrc": "27156:76:5", + "nodeType": "YulLiteral", + "src": "27156:76:5", + "type": "", + "value": "6102228360565846712478499570512196976845845959851353003471378423251561935785" + }, + { + "name": "frField", + "nativeSrc": "27254:7:5", + "nodeType": "YulIdentifier", + "src": "27254:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "27080:6:5", + "nodeType": "YulIdentifier", + "src": "27080:6:5" + }, + "nativeSrc": "27080:199:5", + "nodeType": "YulFunctionCall", + "src": "27080:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "27070:6:5", + "nodeType": "YulIdentifier", + "src": "27070:6:5" + } + ] + }, + { + "nativeSrc": "27296:41:5", + "nodeType": "YulAssignment", + "src": "27296:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "27313:6:5", + "nodeType": "YulIdentifier", + "src": "27313:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "27321:6:5", + "nodeType": "YulIdentifier", + "src": "27321:6:5" + }, + { + "name": "frField", + "nativeSrc": "27329:7:5", + "nodeType": "YulIdentifier", + "src": "27329:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27306:6:5", + "nodeType": "YulIdentifier", + "src": "27306:6:5" + }, + "nativeSrc": "27306:31:5", + "nodeType": "YulFunctionCall", + "src": "27306:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27296:6:5", + "nodeType": "YulIdentifier", + "src": "27296:6:5" + } + ] + }, + { + "nativeSrc": "27354:41:5", + "nodeType": "YulAssignment", + "src": "27354:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "27371:6:5", + "nodeType": "YulIdentifier", + "src": "27371:6:5" + }, + { + "name": "output", + "nativeSrc": "27379:6:5", + "nodeType": "YulIdentifier", + "src": "27379:6:5" + }, + { + "name": "frField", + "nativeSrc": "27387:7:5", + "nodeType": "YulIdentifier", + "src": "27387:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27364:6:5", + "nodeType": "YulIdentifier", + "src": "27364:6:5" + }, + "nativeSrc": "27364:31:5", + "nodeType": "YulFunctionCall", + "src": "27364:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27354:6:5", + "nodeType": "YulIdentifier", + "src": "27354:6:5" + } + ] + }, + { + "nativeSrc": "27412:41:5", + "nodeType": "YulAssignment", + "src": "27412:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "27429:6:5", + "nodeType": "YulIdentifier", + "src": "27429:6:5" + }, + { + "name": "output", + "nativeSrc": "27437:6:5", + "nodeType": "YulIdentifier", + "src": "27437:6:5" + }, + { + "name": "frField", + "nativeSrc": "27445:7:5", + "nodeType": "YulIdentifier", + "src": "27445:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27422:6:5", + "nodeType": "YulIdentifier", + "src": "27422:6:5" + }, + "nativeSrc": "27422:31:5", + "nodeType": "YulFunctionCall", + "src": "27422:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27412:6:5", + "nodeType": "YulIdentifier", + "src": "27412:6:5" + } + ] + }, + { + "nativeSrc": "27470:144:5", + "nodeType": "YulAssignment", + "src": "27470:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "27515:6:5", + "nodeType": "YulIdentifier", + "src": "27515:6:5" + }, + { + "name": "output", + "nativeSrc": "27523:6:5", + "nodeType": "YulIdentifier", + "src": "27523:6:5" + }, + { + "name": "frField", + "nativeSrc": "27531:7:5", + "nodeType": "YulIdentifier", + "src": "27531:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27508:6:5", + "nodeType": "YulIdentifier", + "src": "27508:6:5" + }, + "nativeSrc": "27508:31:5", + "nodeType": "YulFunctionCall", + "src": "27508:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "27561:6:5", + "nodeType": "YulIdentifier", + "src": "27561:6:5" + }, + { + "name": "frField", + "nativeSrc": "27589:7:5", + "nodeType": "YulIdentifier", + "src": "27589:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27480:6:5", + "nodeType": "YulIdentifier", + "src": "27480:6:5" + }, + "nativeSrc": "27480:134:5", + "nodeType": "YulFunctionCall", + "src": "27480:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27470:6:5", + "nodeType": "YulIdentifier", + "src": "27470:6:5" + } + ] + }, + { + "nativeSrc": "27632:209:5", + "nodeType": "YulAssignment", + "src": "27632:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "27677:6:5", + "nodeType": "YulIdentifier", + "src": "27677:6:5" + }, + { + "name": "h", + "nativeSrc": "27685:1:5", + "nodeType": "YulIdentifier", + "src": "27685:1:5" + }, + { + "name": "frField", + "nativeSrc": "27688:7:5", + "nodeType": "YulIdentifier", + "src": "27688:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "27670:6:5", + "nodeType": "YulIdentifier", + "src": "27670:6:5" + }, + "nativeSrc": "27670:26:5", + "nodeType": "YulFunctionCall", + "src": "27670:26:5" + }, + { + "kind": "number", + "nativeSrc": "27718:76:5", + "nodeType": "YulLiteral", + "src": "27718:76:5", + "type": "", + "value": "7957411254301481793006532646538815862020547208300835763521138686017052464640" + }, + { + "name": "frField", + "nativeSrc": "27816:7:5", + "nodeType": "YulIdentifier", + "src": "27816:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "27642:6:5", + "nodeType": "YulIdentifier", + "src": "27642:6:5" + }, + "nativeSrc": "27642:199:5", + "nodeType": "YulFunctionCall", + "src": "27642:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "27632:6:5", + "nodeType": "YulIdentifier", + "src": "27632:6:5" + } + ] + }, + { + "nativeSrc": "27858:41:5", + "nodeType": "YulAssignment", + "src": "27858:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "27875:6:5", + "nodeType": "YulIdentifier", + "src": "27875:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "27883:6:5", + "nodeType": "YulIdentifier", + "src": "27883:6:5" + }, + { + "name": "frField", + "nativeSrc": "27891:7:5", + "nodeType": "YulIdentifier", + "src": "27891:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27868:6:5", + "nodeType": "YulIdentifier", + "src": "27868:6:5" + }, + "nativeSrc": "27868:31:5", + "nodeType": "YulFunctionCall", + "src": "27868:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27858:6:5", + "nodeType": "YulIdentifier", + "src": "27858:6:5" + } + ] + }, + { + "nativeSrc": "27916:41:5", + "nodeType": "YulAssignment", + "src": "27916:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "27933:6:5", + "nodeType": "YulIdentifier", + "src": "27933:6:5" + }, + { + "name": "output", + "nativeSrc": "27941:6:5", + "nodeType": "YulIdentifier", + "src": "27941:6:5" + }, + { + "name": "frField", + "nativeSrc": "27949:7:5", + "nodeType": "YulIdentifier", + "src": "27949:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27926:6:5", + "nodeType": "YulIdentifier", + "src": "27926:6:5" + }, + "nativeSrc": "27926:31:5", + "nodeType": "YulFunctionCall", + "src": "27926:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27916:6:5", + "nodeType": "YulIdentifier", + "src": "27916:6:5" + } + ] + }, + { + "nativeSrc": "27974:41:5", + "nodeType": "YulAssignment", + "src": "27974:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "27991:6:5", + "nodeType": "YulIdentifier", + "src": "27991:6:5" + }, + { + "name": "output", + "nativeSrc": "27999:6:5", + "nodeType": "YulIdentifier", + "src": "27999:6:5" + }, + { + "name": "frField", + "nativeSrc": "28007:7:5", + "nodeType": "YulIdentifier", + "src": "28007:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "27984:6:5", + "nodeType": "YulIdentifier", + "src": "27984:6:5" + }, + "nativeSrc": "27984:31:5", + "nodeType": "YulFunctionCall", + "src": "27984:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "27974:6:5", + "nodeType": "YulIdentifier", + "src": "27974:6:5" + } + ] + }, + { + "nativeSrc": "28032:144:5", + "nodeType": "YulAssignment", + "src": "28032:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "28077:6:5", + "nodeType": "YulIdentifier", + "src": "28077:6:5" + }, + { + "name": "output", + "nativeSrc": "28085:6:5", + "nodeType": "YulIdentifier", + "src": "28085:6:5" + }, + { + "name": "frField", + "nativeSrc": "28093:7:5", + "nodeType": "YulIdentifier", + "src": "28093:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28070:6:5", + "nodeType": "YulIdentifier", + "src": "28070:6:5" + }, + "nativeSrc": "28070:31:5", + "nodeType": "YulFunctionCall", + "src": "28070:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "28123:6:5", + "nodeType": "YulIdentifier", + "src": "28123:6:5" + }, + { + "name": "frField", + "nativeSrc": "28151:7:5", + "nodeType": "YulIdentifier", + "src": "28151:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28042:6:5", + "nodeType": "YulIdentifier", + "src": "28042:6:5" + }, + "nativeSrc": "28042:134:5", + "nodeType": "YulFunctionCall", + "src": "28042:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28032:6:5", + "nodeType": "YulIdentifier", + "src": "28032:6:5" + } + ] + }, + { + "nativeSrc": "28194:209:5", + "nodeType": "YulAssignment", + "src": "28194:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "28239:6:5", + "nodeType": "YulIdentifier", + "src": "28239:6:5" + }, + { + "name": "h", + "nativeSrc": "28247:1:5", + "nodeType": "YulIdentifier", + "src": "28247:1:5" + }, + { + "name": "frField", + "nativeSrc": "28250:7:5", + "nodeType": "YulIdentifier", + "src": "28250:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "28232:6:5", + "nodeType": "YulIdentifier", + "src": "28232:6:5" + }, + "nativeSrc": "28232:26:5", + "nodeType": "YulFunctionCall", + "src": "28232:26:5" + }, + { + "kind": "number", + "nativeSrc": "28280:76:5", + "nodeType": "YulLiteral", + "src": "28280:76:5", + "type": "", + "value": "7577948604138385646013244290592520699579040577712519004775644201729392063846" + }, + { + "name": "frField", + "nativeSrc": "28378:7:5", + "nodeType": "YulIdentifier", + "src": "28378:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "28204:6:5", + "nodeType": "YulIdentifier", + "src": "28204:6:5" + }, + "nativeSrc": "28204:199:5", + "nodeType": "YulFunctionCall", + "src": "28204:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "28194:6:5", + "nodeType": "YulIdentifier", + "src": "28194:6:5" + } + ] + }, + { + "nativeSrc": "28420:41:5", + "nodeType": "YulAssignment", + "src": "28420:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "28437:6:5", + "nodeType": "YulIdentifier", + "src": "28437:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "28445:6:5", + "nodeType": "YulIdentifier", + "src": "28445:6:5" + }, + { + "name": "frField", + "nativeSrc": "28453:7:5", + "nodeType": "YulIdentifier", + "src": "28453:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28430:6:5", + "nodeType": "YulIdentifier", + "src": "28430:6:5" + }, + "nativeSrc": "28430:31:5", + "nodeType": "YulFunctionCall", + "src": "28430:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28420:6:5", + "nodeType": "YulIdentifier", + "src": "28420:6:5" + } + ] + }, + { + "nativeSrc": "28478:41:5", + "nodeType": "YulAssignment", + "src": "28478:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "28495:6:5", + "nodeType": "YulIdentifier", + "src": "28495:6:5" + }, + { + "name": "output", + "nativeSrc": "28503:6:5", + "nodeType": "YulIdentifier", + "src": "28503:6:5" + }, + { + "name": "frField", + "nativeSrc": "28511:7:5", + "nodeType": "YulIdentifier", + "src": "28511:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28488:6:5", + "nodeType": "YulIdentifier", + "src": "28488:6:5" + }, + "nativeSrc": "28488:31:5", + "nodeType": "YulFunctionCall", + "src": "28488:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28478:6:5", + "nodeType": "YulIdentifier", + "src": "28478:6:5" + } + ] + }, + { + "nativeSrc": "28536:41:5", + "nodeType": "YulAssignment", + "src": "28536:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "28553:6:5", + "nodeType": "YulIdentifier", + "src": "28553:6:5" + }, + { + "name": "output", + "nativeSrc": "28561:6:5", + "nodeType": "YulIdentifier", + "src": "28561:6:5" + }, + { + "name": "frField", + "nativeSrc": "28569:7:5", + "nodeType": "YulIdentifier", + "src": "28569:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28546:6:5", + "nodeType": "YulIdentifier", + "src": "28546:6:5" + }, + "nativeSrc": "28546:31:5", + "nodeType": "YulFunctionCall", + "src": "28546:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28536:6:5", + "nodeType": "YulIdentifier", + "src": "28536:6:5" + } + ] + }, + { + "nativeSrc": "28594:144:5", + "nodeType": "YulAssignment", + "src": "28594:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "28639:6:5", + "nodeType": "YulIdentifier", + "src": "28639:6:5" + }, + { + "name": "output", + "nativeSrc": "28647:6:5", + "nodeType": "YulIdentifier", + "src": "28647:6:5" + }, + { + "name": "frField", + "nativeSrc": "28655:7:5", + "nodeType": "YulIdentifier", + "src": "28655:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28632:6:5", + "nodeType": "YulIdentifier", + "src": "28632:6:5" + }, + "nativeSrc": "28632:31:5", + "nodeType": "YulFunctionCall", + "src": "28632:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "28685:6:5", + "nodeType": "YulIdentifier", + "src": "28685:6:5" + }, + { + "name": "frField", + "nativeSrc": "28713:7:5", + "nodeType": "YulIdentifier", + "src": "28713:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28604:6:5", + "nodeType": "YulIdentifier", + "src": "28604:6:5" + }, + "nativeSrc": "28604:134:5", + "nodeType": "YulFunctionCall", + "src": "28604:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28594:6:5", + "nodeType": "YulIdentifier", + "src": "28594:6:5" + } + ] + }, + { + "nativeSrc": "28756:209:5", + "nodeType": "YulAssignment", + "src": "28756:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "28801:6:5", + "nodeType": "YulIdentifier", + "src": "28801:6:5" + }, + { + "name": "h", + "nativeSrc": "28809:1:5", + "nodeType": "YulIdentifier", + "src": "28809:1:5" + }, + { + "name": "frField", + "nativeSrc": "28812:7:5", + "nodeType": "YulIdentifier", + "src": "28812:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "28794:6:5", + "nodeType": "YulIdentifier", + "src": "28794:6:5" + }, + "nativeSrc": "28794:26:5", + "nodeType": "YulFunctionCall", + "src": "28794:26:5" + }, + { + "kind": "number", + "nativeSrc": "28842:76:5", + "nodeType": "YulLiteral", + "src": "28842:76:5", + "type": "", + "value": "6025758357861563690691793181574484773095829890586160167641973490103511417496" + }, + { + "name": "frField", + "nativeSrc": "28940:7:5", + "nodeType": "YulIdentifier", + "src": "28940:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "28766:6:5", + "nodeType": "YulIdentifier", + "src": "28766:6:5" + }, + "nativeSrc": "28766:199:5", + "nodeType": "YulFunctionCall", + "src": "28766:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "28756:6:5", + "nodeType": "YulIdentifier", + "src": "28756:6:5" + } + ] + }, + { + "nativeSrc": "28982:41:5", + "nodeType": "YulAssignment", + "src": "28982:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "28999:6:5", + "nodeType": "YulIdentifier", + "src": "28999:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "29007:6:5", + "nodeType": "YulIdentifier", + "src": "29007:6:5" + }, + { + "name": "frField", + "nativeSrc": "29015:7:5", + "nodeType": "YulIdentifier", + "src": "29015:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "28992:6:5", + "nodeType": "YulIdentifier", + "src": "28992:6:5" + }, + "nativeSrc": "28992:31:5", + "nodeType": "YulFunctionCall", + "src": "28992:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "28982:6:5", + "nodeType": "YulIdentifier", + "src": "28982:6:5" + } + ] + }, + { + "nativeSrc": "29040:41:5", + "nodeType": "YulAssignment", + "src": "29040:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "29057:6:5", + "nodeType": "YulIdentifier", + "src": "29057:6:5" + }, + { + "name": "output", + "nativeSrc": "29065:6:5", + "nodeType": "YulIdentifier", + "src": "29065:6:5" + }, + { + "name": "frField", + "nativeSrc": "29073:7:5", + "nodeType": "YulIdentifier", + "src": "29073:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29050:6:5", + "nodeType": "YulIdentifier", + "src": "29050:6:5" + }, + "nativeSrc": "29050:31:5", + "nodeType": "YulFunctionCall", + "src": "29050:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29040:6:5", + "nodeType": "YulIdentifier", + "src": "29040:6:5" + } + ] + }, + { + "nativeSrc": "29098:41:5", + "nodeType": "YulAssignment", + "src": "29098:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "29115:6:5", + "nodeType": "YulIdentifier", + "src": "29115:6:5" + }, + { + "name": "output", + "nativeSrc": "29123:6:5", + "nodeType": "YulIdentifier", + "src": "29123:6:5" + }, + { + "name": "frField", + "nativeSrc": "29131:7:5", + "nodeType": "YulIdentifier", + "src": "29131:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29108:6:5", + "nodeType": "YulIdentifier", + "src": "29108:6:5" + }, + "nativeSrc": "29108:31:5", + "nodeType": "YulFunctionCall", + "src": "29108:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29098:6:5", + "nodeType": "YulIdentifier", + "src": "29098:6:5" + } + ] + }, + { + "nativeSrc": "29156:144:5", + "nodeType": "YulAssignment", + "src": "29156:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "29201:6:5", + "nodeType": "YulIdentifier", + "src": "29201:6:5" + }, + { + "name": "output", + "nativeSrc": "29209:6:5", + "nodeType": "YulIdentifier", + "src": "29209:6:5" + }, + { + "name": "frField", + "nativeSrc": "29217:7:5", + "nodeType": "YulIdentifier", + "src": "29217:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29194:6:5", + "nodeType": "YulIdentifier", + "src": "29194:6:5" + }, + "nativeSrc": "29194:31:5", + "nodeType": "YulFunctionCall", + "src": "29194:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "29247:6:5", + "nodeType": "YulIdentifier", + "src": "29247:6:5" + }, + { + "name": "frField", + "nativeSrc": "29275:7:5", + "nodeType": "YulIdentifier", + "src": "29275:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29166:6:5", + "nodeType": "YulIdentifier", + "src": "29166:6:5" + }, + "nativeSrc": "29166:134:5", + "nodeType": "YulFunctionCall", + "src": "29166:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29156:6:5", + "nodeType": "YulIdentifier", + "src": "29156:6:5" + } + ] + }, + { + "nativeSrc": "29318:209:5", + "nodeType": "YulAssignment", + "src": "29318:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "29363:6:5", + "nodeType": "YulIdentifier", + "src": "29363:6:5" + }, + { + "name": "h", + "nativeSrc": "29371:1:5", + "nodeType": "YulIdentifier", + "src": "29371:1:5" + }, + { + "name": "frField", + "nativeSrc": "29374:7:5", + "nodeType": "YulIdentifier", + "src": "29374:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "29356:6:5", + "nodeType": "YulIdentifier", + "src": "29356:6:5" + }, + "nativeSrc": "29356:26:5", + "nodeType": "YulFunctionCall", + "src": "29356:26:5" + }, + { + "kind": "number", + "nativeSrc": "29404:76:5", + "nodeType": "YulLiteral", + "src": "29404:76:5", + "type": "", + "value": "2004214547184552249779883547311284063339374005887218065319674453115808726850" + }, + { + "name": "frField", + "nativeSrc": "29502:7:5", + "nodeType": "YulIdentifier", + "src": "29502:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "29328:6:5", + "nodeType": "YulIdentifier", + "src": "29328:6:5" + }, + "nativeSrc": "29328:199:5", + "nodeType": "YulFunctionCall", + "src": "29328:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "29318:6:5", + "nodeType": "YulIdentifier", + "src": "29318:6:5" + } + ] + }, + { + "nativeSrc": "29544:41:5", + "nodeType": "YulAssignment", + "src": "29544:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "29561:6:5", + "nodeType": "YulIdentifier", + "src": "29561:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "29569:6:5", + "nodeType": "YulIdentifier", + "src": "29569:6:5" + }, + { + "name": "frField", + "nativeSrc": "29577:7:5", + "nodeType": "YulIdentifier", + "src": "29577:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29554:6:5", + "nodeType": "YulIdentifier", + "src": "29554:6:5" + }, + "nativeSrc": "29554:31:5", + "nodeType": "YulFunctionCall", + "src": "29554:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29544:6:5", + "nodeType": "YulIdentifier", + "src": "29544:6:5" + } + ] + }, + { + "nativeSrc": "29602:41:5", + "nodeType": "YulAssignment", + "src": "29602:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "29619:6:5", + "nodeType": "YulIdentifier", + "src": "29619:6:5" + }, + { + "name": "output", + "nativeSrc": "29627:6:5", + "nodeType": "YulIdentifier", + "src": "29627:6:5" + }, + { + "name": "frField", + "nativeSrc": "29635:7:5", + "nodeType": "YulIdentifier", + "src": "29635:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29612:6:5", + "nodeType": "YulIdentifier", + "src": "29612:6:5" + }, + "nativeSrc": "29612:31:5", + "nodeType": "YulFunctionCall", + "src": "29612:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29602:6:5", + "nodeType": "YulIdentifier", + "src": "29602:6:5" + } + ] + }, + { + "nativeSrc": "29660:41:5", + "nodeType": "YulAssignment", + "src": "29660:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "29677:6:5", + "nodeType": "YulIdentifier", + "src": "29677:6:5" + }, + { + "name": "output", + "nativeSrc": "29685:6:5", + "nodeType": "YulIdentifier", + "src": "29685:6:5" + }, + { + "name": "frField", + "nativeSrc": "29693:7:5", + "nodeType": "YulIdentifier", + "src": "29693:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29670:6:5", + "nodeType": "YulIdentifier", + "src": "29670:6:5" + }, + "nativeSrc": "29670:31:5", + "nodeType": "YulFunctionCall", + "src": "29670:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29660:6:5", + "nodeType": "YulIdentifier", + "src": "29660:6:5" + } + ] + }, + { + "nativeSrc": "29718:144:5", + "nodeType": "YulAssignment", + "src": "29718:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "29763:6:5", + "nodeType": "YulIdentifier", + "src": "29763:6:5" + }, + { + "name": "output", + "nativeSrc": "29771:6:5", + "nodeType": "YulIdentifier", + "src": "29771:6:5" + }, + { + "name": "frField", + "nativeSrc": "29779:7:5", + "nodeType": "YulIdentifier", + "src": "29779:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29756:6:5", + "nodeType": "YulIdentifier", + "src": "29756:6:5" + }, + "nativeSrc": "29756:31:5", + "nodeType": "YulFunctionCall", + "src": "29756:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "29809:6:5", + "nodeType": "YulIdentifier", + "src": "29809:6:5" + }, + { + "name": "frField", + "nativeSrc": "29837:7:5", + "nodeType": "YulIdentifier", + "src": "29837:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "29728:6:5", + "nodeType": "YulIdentifier", + "src": "29728:6:5" + }, + "nativeSrc": "29728:134:5", + "nodeType": "YulFunctionCall", + "src": "29728:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "29718:6:5", + "nodeType": "YulIdentifier", + "src": "29718:6:5" + } + ] + }, + { + "nativeSrc": "29880:209:5", + "nodeType": "YulAssignment", + "src": "29880:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "29925:6:5", + "nodeType": "YulIdentifier", + "src": "29925:6:5" + }, + { + "name": "h", + "nativeSrc": "29933:1:5", + "nodeType": "YulIdentifier", + "src": "29933:1:5" + }, + { + "name": "frField", + "nativeSrc": "29936:7:5", + "nodeType": "YulIdentifier", + "src": "29936:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "29918:6:5", + "nodeType": "YulIdentifier", + "src": "29918:6:5" + }, + "nativeSrc": "29918:26:5", + "nodeType": "YulFunctionCall", + "src": "29918:26:5" + }, + { + "kind": "number", + "nativeSrc": "29966:76:5", + "nodeType": "YulLiteral", + "src": "29966:76:5", + "type": "", + "value": "1316449090346410801845183915381769525990226349513436734911941391785200212382" + }, + { + "name": "frField", + "nativeSrc": "30064:7:5", + "nodeType": "YulIdentifier", + "src": "30064:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "29890:6:5", + "nodeType": "YulIdentifier", + "src": "29890:6:5" + }, + "nativeSrc": "29890:199:5", + "nodeType": "YulFunctionCall", + "src": "29890:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "29880:6:5", + "nodeType": "YulIdentifier", + "src": "29880:6:5" + } + ] + }, + { + "nativeSrc": "30106:41:5", + "nodeType": "YulAssignment", + "src": "30106:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "30123:6:5", + "nodeType": "YulIdentifier", + "src": "30123:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "30131:6:5", + "nodeType": "YulIdentifier", + "src": "30131:6:5" + }, + { + "name": "frField", + "nativeSrc": "30139:7:5", + "nodeType": "YulIdentifier", + "src": "30139:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30116:6:5", + "nodeType": "YulIdentifier", + "src": "30116:6:5" + }, + "nativeSrc": "30116:31:5", + "nodeType": "YulFunctionCall", + "src": "30116:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30106:6:5", + "nodeType": "YulIdentifier", + "src": "30106:6:5" + } + ] + }, + { + "nativeSrc": "30164:41:5", + "nodeType": "YulAssignment", + "src": "30164:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "30181:6:5", + "nodeType": "YulIdentifier", + "src": "30181:6:5" + }, + { + "name": "output", + "nativeSrc": "30189:6:5", + "nodeType": "YulIdentifier", + "src": "30189:6:5" + }, + { + "name": "frField", + "nativeSrc": "30197:7:5", + "nodeType": "YulIdentifier", + "src": "30197:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30174:6:5", + "nodeType": "YulIdentifier", + "src": "30174:6:5" + }, + "nativeSrc": "30174:31:5", + "nodeType": "YulFunctionCall", + "src": "30174:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30164:6:5", + "nodeType": "YulIdentifier", + "src": "30164:6:5" + } + ] + }, + { + "nativeSrc": "30222:41:5", + "nodeType": "YulAssignment", + "src": "30222:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "30239:6:5", + "nodeType": "YulIdentifier", + "src": "30239:6:5" + }, + { + "name": "output", + "nativeSrc": "30247:6:5", + "nodeType": "YulIdentifier", + "src": "30247:6:5" + }, + { + "name": "frField", + "nativeSrc": "30255:7:5", + "nodeType": "YulIdentifier", + "src": "30255:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30232:6:5", + "nodeType": "YulIdentifier", + "src": "30232:6:5" + }, + "nativeSrc": "30232:31:5", + "nodeType": "YulFunctionCall", + "src": "30232:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30222:6:5", + "nodeType": "YulIdentifier", + "src": "30222:6:5" + } + ] + }, + { + "nativeSrc": "30280:144:5", + "nodeType": "YulAssignment", + "src": "30280:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "30325:6:5", + "nodeType": "YulIdentifier", + "src": "30325:6:5" + }, + { + "name": "output", + "nativeSrc": "30333:6:5", + "nodeType": "YulIdentifier", + "src": "30333:6:5" + }, + { + "name": "frField", + "nativeSrc": "30341:7:5", + "nodeType": "YulIdentifier", + "src": "30341:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30318:6:5", + "nodeType": "YulIdentifier", + "src": "30318:6:5" + }, + "nativeSrc": "30318:31:5", + "nodeType": "YulFunctionCall", + "src": "30318:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "30371:6:5", + "nodeType": "YulIdentifier", + "src": "30371:6:5" + }, + { + "name": "frField", + "nativeSrc": "30399:7:5", + "nodeType": "YulIdentifier", + "src": "30399:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30290:6:5", + "nodeType": "YulIdentifier", + "src": "30290:6:5" + }, + "nativeSrc": "30290:134:5", + "nodeType": "YulFunctionCall", + "src": "30290:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30280:6:5", + "nodeType": "YulIdentifier", + "src": "30280:6:5" + } + ] + }, + { + "nativeSrc": "30442:209:5", + "nodeType": "YulAssignment", + "src": "30442:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "30487:6:5", + "nodeType": "YulIdentifier", + "src": "30487:6:5" + }, + { + "name": "h", + "nativeSrc": "30495:1:5", + "nodeType": "YulIdentifier", + "src": "30495:1:5" + }, + { + "name": "frField", + "nativeSrc": "30498:7:5", + "nodeType": "YulIdentifier", + "src": "30498:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "30480:6:5", + "nodeType": "YulIdentifier", + "src": "30480:6:5" + }, + "nativeSrc": "30480:26:5", + "nodeType": "YulFunctionCall", + "src": "30480:26:5" + }, + { + "kind": "number", + "nativeSrc": "30528:76:5", + "nodeType": "YulLiteral", + "src": "30528:76:5", + "type": "", + "value": "4556285572033080226119128815763547597118327635770271287655822355222839175285" + }, + { + "name": "frField", + "nativeSrc": "30626:7:5", + "nodeType": "YulIdentifier", + "src": "30626:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "30452:6:5", + "nodeType": "YulIdentifier", + "src": "30452:6:5" + }, + "nativeSrc": "30452:199:5", + "nodeType": "YulFunctionCall", + "src": "30452:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "30442:6:5", + "nodeType": "YulIdentifier", + "src": "30442:6:5" + } + ] + }, + { + "nativeSrc": "30668:41:5", + "nodeType": "YulAssignment", + "src": "30668:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "30685:6:5", + "nodeType": "YulIdentifier", + "src": "30685:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "30693:6:5", + "nodeType": "YulIdentifier", + "src": "30693:6:5" + }, + { + "name": "frField", + "nativeSrc": "30701:7:5", + "nodeType": "YulIdentifier", + "src": "30701:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30678:6:5", + "nodeType": "YulIdentifier", + "src": "30678:6:5" + }, + "nativeSrc": "30678:31:5", + "nodeType": "YulFunctionCall", + "src": "30678:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30668:6:5", + "nodeType": "YulIdentifier", + "src": "30668:6:5" + } + ] + }, + { + "nativeSrc": "30726:41:5", + "nodeType": "YulAssignment", + "src": "30726:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "30743:6:5", + "nodeType": "YulIdentifier", + "src": "30743:6:5" + }, + { + "name": "output", + "nativeSrc": "30751:6:5", + "nodeType": "YulIdentifier", + "src": "30751:6:5" + }, + { + "name": "frField", + "nativeSrc": "30759:7:5", + "nodeType": "YulIdentifier", + "src": "30759:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30736:6:5", + "nodeType": "YulIdentifier", + "src": "30736:6:5" + }, + "nativeSrc": "30736:31:5", + "nodeType": "YulFunctionCall", + "src": "30736:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30726:6:5", + "nodeType": "YulIdentifier", + "src": "30726:6:5" + } + ] + }, + { + "nativeSrc": "30784:41:5", + "nodeType": "YulAssignment", + "src": "30784:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "30801:6:5", + "nodeType": "YulIdentifier", + "src": "30801:6:5" + }, + { + "name": "output", + "nativeSrc": "30809:6:5", + "nodeType": "YulIdentifier", + "src": "30809:6:5" + }, + { + "name": "frField", + "nativeSrc": "30817:7:5", + "nodeType": "YulIdentifier", + "src": "30817:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30794:6:5", + "nodeType": "YulIdentifier", + "src": "30794:6:5" + }, + "nativeSrc": "30794:31:5", + "nodeType": "YulFunctionCall", + "src": "30794:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30784:6:5", + "nodeType": "YulIdentifier", + "src": "30784:6:5" + } + ] + }, + { + "nativeSrc": "30842:144:5", + "nodeType": "YulAssignment", + "src": "30842:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "30887:6:5", + "nodeType": "YulIdentifier", + "src": "30887:6:5" + }, + { + "name": "output", + "nativeSrc": "30895:6:5", + "nodeType": "YulIdentifier", + "src": "30895:6:5" + }, + { + "name": "frField", + "nativeSrc": "30903:7:5", + "nodeType": "YulIdentifier", + "src": "30903:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30880:6:5", + "nodeType": "YulIdentifier", + "src": "30880:6:5" + }, + "nativeSrc": "30880:31:5", + "nodeType": "YulFunctionCall", + "src": "30880:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "30933:6:5", + "nodeType": "YulIdentifier", + "src": "30933:6:5" + }, + { + "name": "frField", + "nativeSrc": "30961:7:5", + "nodeType": "YulIdentifier", + "src": "30961:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "30852:6:5", + "nodeType": "YulIdentifier", + "src": "30852:6:5" + }, + "nativeSrc": "30852:134:5", + "nodeType": "YulFunctionCall", + "src": "30852:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "30842:6:5", + "nodeType": "YulIdentifier", + "src": "30842:6:5" + } + ] + }, + { + "nativeSrc": "31004:209:5", + "nodeType": "YulAssignment", + "src": "31004:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "31049:6:5", + "nodeType": "YulIdentifier", + "src": "31049:6:5" + }, + { + "name": "h", + "nativeSrc": "31057:1:5", + "nodeType": "YulIdentifier", + "src": "31057:1:5" + }, + { + "name": "frField", + "nativeSrc": "31060:7:5", + "nodeType": "YulIdentifier", + "src": "31060:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "31042:6:5", + "nodeType": "YulIdentifier", + "src": "31042:6:5" + }, + "nativeSrc": "31042:26:5", + "nodeType": "YulFunctionCall", + "src": "31042:26:5" + }, + { + "kind": "number", + "nativeSrc": "31090:76:5", + "nodeType": "YulLiteral", + "src": "31090:76:5", + "type": "", + "value": "2369904002063218534853867482545647755243877244064168179905450676831047307618" + }, + { + "name": "frField", + "nativeSrc": "31188:7:5", + "nodeType": "YulIdentifier", + "src": "31188:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "31014:6:5", + "nodeType": "YulIdentifier", + "src": "31014:6:5" + }, + "nativeSrc": "31014:199:5", + "nodeType": "YulFunctionCall", + "src": "31014:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "31004:6:5", + "nodeType": "YulIdentifier", + "src": "31004:6:5" + } + ] + }, + { + "nativeSrc": "31230:41:5", + "nodeType": "YulAssignment", + "src": "31230:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "31247:6:5", + "nodeType": "YulIdentifier", + "src": "31247:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "31255:6:5", + "nodeType": "YulIdentifier", + "src": "31255:6:5" + }, + { + "name": "frField", + "nativeSrc": "31263:7:5", + "nodeType": "YulIdentifier", + "src": "31263:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31240:6:5", + "nodeType": "YulIdentifier", + "src": "31240:6:5" + }, + "nativeSrc": "31240:31:5", + "nodeType": "YulFunctionCall", + "src": "31240:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31230:6:5", + "nodeType": "YulIdentifier", + "src": "31230:6:5" + } + ] + }, + { + "nativeSrc": "31288:41:5", + "nodeType": "YulAssignment", + "src": "31288:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "31305:6:5", + "nodeType": "YulIdentifier", + "src": "31305:6:5" + }, + { + "name": "output", + "nativeSrc": "31313:6:5", + "nodeType": "YulIdentifier", + "src": "31313:6:5" + }, + { + "name": "frField", + "nativeSrc": "31321:7:5", + "nodeType": "YulIdentifier", + "src": "31321:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31298:6:5", + "nodeType": "YulIdentifier", + "src": "31298:6:5" + }, + "nativeSrc": "31298:31:5", + "nodeType": "YulFunctionCall", + "src": "31298:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31288:6:5", + "nodeType": "YulIdentifier", + "src": "31288:6:5" + } + ] + }, + { + "nativeSrc": "31346:41:5", + "nodeType": "YulAssignment", + "src": "31346:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "31363:6:5", + "nodeType": "YulIdentifier", + "src": "31363:6:5" + }, + { + "name": "output", + "nativeSrc": "31371:6:5", + "nodeType": "YulIdentifier", + "src": "31371:6:5" + }, + { + "name": "frField", + "nativeSrc": "31379:7:5", + "nodeType": "YulIdentifier", + "src": "31379:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31356:6:5", + "nodeType": "YulIdentifier", + "src": "31356:6:5" + }, + "nativeSrc": "31356:31:5", + "nodeType": "YulFunctionCall", + "src": "31356:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31346:6:5", + "nodeType": "YulIdentifier", + "src": "31346:6:5" + } + ] + }, + { + "nativeSrc": "31404:144:5", + "nodeType": "YulAssignment", + "src": "31404:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "31449:6:5", + "nodeType": "YulIdentifier", + "src": "31449:6:5" + }, + { + "name": "output", + "nativeSrc": "31457:6:5", + "nodeType": "YulIdentifier", + "src": "31457:6:5" + }, + { + "name": "frField", + "nativeSrc": "31465:7:5", + "nodeType": "YulIdentifier", + "src": "31465:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31442:6:5", + "nodeType": "YulIdentifier", + "src": "31442:6:5" + }, + "nativeSrc": "31442:31:5", + "nodeType": "YulFunctionCall", + "src": "31442:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "31495:6:5", + "nodeType": "YulIdentifier", + "src": "31495:6:5" + }, + { + "name": "frField", + "nativeSrc": "31523:7:5", + "nodeType": "YulIdentifier", + "src": "31523:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31414:6:5", + "nodeType": "YulIdentifier", + "src": "31414:6:5" + }, + "nativeSrc": "31414:134:5", + "nodeType": "YulFunctionCall", + "src": "31414:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31404:6:5", + "nodeType": "YulIdentifier", + "src": "31404:6:5" + } + ] + }, + { + "nativeSrc": "31566:209:5", + "nodeType": "YulAssignment", + "src": "31566:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "31611:6:5", + "nodeType": "YulIdentifier", + "src": "31611:6:5" + }, + { + "name": "h", + "nativeSrc": "31619:1:5", + "nodeType": "YulIdentifier", + "src": "31619:1:5" + }, + { + "name": "frField", + "nativeSrc": "31622:7:5", + "nodeType": "YulIdentifier", + "src": "31622:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "31604:6:5", + "nodeType": "YulIdentifier", + "src": "31604:6:5" + }, + "nativeSrc": "31604:26:5", + "nodeType": "YulFunctionCall", + "src": "31604:26:5" + }, + { + "kind": "number", + "nativeSrc": "31652:76:5", + "nodeType": "YulLiteral", + "src": "31652:76:5", + "type": "", + "value": "7451702566176584025980909730992154118931318734166468698682947787653334803016" + }, + { + "name": "frField", + "nativeSrc": "31750:7:5", + "nodeType": "YulIdentifier", + "src": "31750:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "31576:6:5", + "nodeType": "YulIdentifier", + "src": "31576:6:5" + }, + "nativeSrc": "31576:199:5", + "nodeType": "YulFunctionCall", + "src": "31576:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "31566:6:5", + "nodeType": "YulIdentifier", + "src": "31566:6:5" + } + ] + }, + { + "nativeSrc": "31792:41:5", + "nodeType": "YulAssignment", + "src": "31792:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "31809:6:5", + "nodeType": "YulIdentifier", + "src": "31809:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "31817:6:5", + "nodeType": "YulIdentifier", + "src": "31817:6:5" + }, + { + "name": "frField", + "nativeSrc": "31825:7:5", + "nodeType": "YulIdentifier", + "src": "31825:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31802:6:5", + "nodeType": "YulIdentifier", + "src": "31802:6:5" + }, + "nativeSrc": "31802:31:5", + "nodeType": "YulFunctionCall", + "src": "31802:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31792:6:5", + "nodeType": "YulIdentifier", + "src": "31792:6:5" + } + ] + }, + { + "nativeSrc": "31850:41:5", + "nodeType": "YulAssignment", + "src": "31850:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "31867:6:5", + "nodeType": "YulIdentifier", + "src": "31867:6:5" + }, + { + "name": "output", + "nativeSrc": "31875:6:5", + "nodeType": "YulIdentifier", + "src": "31875:6:5" + }, + { + "name": "frField", + "nativeSrc": "31883:7:5", + "nodeType": "YulIdentifier", + "src": "31883:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31860:6:5", + "nodeType": "YulIdentifier", + "src": "31860:6:5" + }, + "nativeSrc": "31860:31:5", + "nodeType": "YulFunctionCall", + "src": "31860:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31850:6:5", + "nodeType": "YulIdentifier", + "src": "31850:6:5" + } + ] + }, + { + "nativeSrc": "31908:41:5", + "nodeType": "YulAssignment", + "src": "31908:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "31925:6:5", + "nodeType": "YulIdentifier", + "src": "31925:6:5" + }, + { + "name": "output", + "nativeSrc": "31933:6:5", + "nodeType": "YulIdentifier", + "src": "31933:6:5" + }, + { + "name": "frField", + "nativeSrc": "31941:7:5", + "nodeType": "YulIdentifier", + "src": "31941:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31918:6:5", + "nodeType": "YulIdentifier", + "src": "31918:6:5" + }, + "nativeSrc": "31918:31:5", + "nodeType": "YulFunctionCall", + "src": "31918:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31908:6:5", + "nodeType": "YulIdentifier", + "src": "31908:6:5" + } + ] + }, + { + "nativeSrc": "31966:144:5", + "nodeType": "YulAssignment", + "src": "31966:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "32011:6:5", + "nodeType": "YulIdentifier", + "src": "32011:6:5" + }, + { + "name": "output", + "nativeSrc": "32019:6:5", + "nodeType": "YulIdentifier", + "src": "32019:6:5" + }, + { + "name": "frField", + "nativeSrc": "32027:7:5", + "nodeType": "YulIdentifier", + "src": "32027:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32004:6:5", + "nodeType": "YulIdentifier", + "src": "32004:6:5" + }, + "nativeSrc": "32004:31:5", + "nodeType": "YulFunctionCall", + "src": "32004:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "32057:6:5", + "nodeType": "YulIdentifier", + "src": "32057:6:5" + }, + { + "name": "frField", + "nativeSrc": "32085:7:5", + "nodeType": "YulIdentifier", + "src": "32085:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "31976:6:5", + "nodeType": "YulIdentifier", + "src": "31976:6:5" + }, + "nativeSrc": "31976:134:5", + "nodeType": "YulFunctionCall", + "src": "31976:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "31966:6:5", + "nodeType": "YulIdentifier", + "src": "31966:6:5" + } + ] + }, + { + "nativeSrc": "32128:209:5", + "nodeType": "YulAssignment", + "src": "32128:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "32173:6:5", + "nodeType": "YulIdentifier", + "src": "32173:6:5" + }, + { + "name": "h", + "nativeSrc": "32181:1:5", + "nodeType": "YulIdentifier", + "src": "32181:1:5" + }, + { + "name": "frField", + "nativeSrc": "32184:7:5", + "nodeType": "YulIdentifier", + "src": "32184:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "32166:6:5", + "nodeType": "YulIdentifier", + "src": "32166:6:5" + }, + "nativeSrc": "32166:26:5", + "nodeType": "YulFunctionCall", + "src": "32166:26:5" + }, + { + "kind": "number", + "nativeSrc": "32214:76:5", + "nodeType": "YulLiteral", + "src": "32214:76:5", + "type": "", + "value": "1329300832483899103910420486510886619321904846687482243968569167489052205690" + }, + { + "name": "frField", + "nativeSrc": "32312:7:5", + "nodeType": "YulIdentifier", + "src": "32312:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "32138:6:5", + "nodeType": "YulIdentifier", + "src": "32138:6:5" + }, + "nativeSrc": "32138:199:5", + "nodeType": "YulFunctionCall", + "src": "32138:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "32128:6:5", + "nodeType": "YulIdentifier", + "src": "32128:6:5" + } + ] + }, + { + "nativeSrc": "32354:41:5", + "nodeType": "YulAssignment", + "src": "32354:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "32371:6:5", + "nodeType": "YulIdentifier", + "src": "32371:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "32379:6:5", + "nodeType": "YulIdentifier", + "src": "32379:6:5" + }, + { + "name": "frField", + "nativeSrc": "32387:7:5", + "nodeType": "YulIdentifier", + "src": "32387:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32364:6:5", + "nodeType": "YulIdentifier", + "src": "32364:6:5" + }, + "nativeSrc": "32364:31:5", + "nodeType": "YulFunctionCall", + "src": "32364:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32354:6:5", + "nodeType": "YulIdentifier", + "src": "32354:6:5" + } + ] + }, + { + "nativeSrc": "32412:41:5", + "nodeType": "YulAssignment", + "src": "32412:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "32429:6:5", + "nodeType": "YulIdentifier", + "src": "32429:6:5" + }, + { + "name": "output", + "nativeSrc": "32437:6:5", + "nodeType": "YulIdentifier", + "src": "32437:6:5" + }, + { + "name": "frField", + "nativeSrc": "32445:7:5", + "nodeType": "YulIdentifier", + "src": "32445:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32422:6:5", + "nodeType": "YulIdentifier", + "src": "32422:6:5" + }, + "nativeSrc": "32422:31:5", + "nodeType": "YulFunctionCall", + "src": "32422:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32412:6:5", + "nodeType": "YulIdentifier", + "src": "32412:6:5" + } + ] + }, + { + "nativeSrc": "32470:41:5", + "nodeType": "YulAssignment", + "src": "32470:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "32487:6:5", + "nodeType": "YulIdentifier", + "src": "32487:6:5" + }, + { + "name": "output", + "nativeSrc": "32495:6:5", + "nodeType": "YulIdentifier", + "src": "32495:6:5" + }, + { + "name": "frField", + "nativeSrc": "32503:7:5", + "nodeType": "YulIdentifier", + "src": "32503:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32480:6:5", + "nodeType": "YulIdentifier", + "src": "32480:6:5" + }, + "nativeSrc": "32480:31:5", + "nodeType": "YulFunctionCall", + "src": "32480:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32470:6:5", + "nodeType": "YulIdentifier", + "src": "32470:6:5" + } + ] + }, + { + "nativeSrc": "32528:144:5", + "nodeType": "YulAssignment", + "src": "32528:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "32573:6:5", + "nodeType": "YulIdentifier", + "src": "32573:6:5" + }, + { + "name": "output", + "nativeSrc": "32581:6:5", + "nodeType": "YulIdentifier", + "src": "32581:6:5" + }, + { + "name": "frField", + "nativeSrc": "32589:7:5", + "nodeType": "YulIdentifier", + "src": "32589:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32566:6:5", + "nodeType": "YulIdentifier", + "src": "32566:6:5" + }, + "nativeSrc": "32566:31:5", + "nodeType": "YulFunctionCall", + "src": "32566:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "32619:6:5", + "nodeType": "YulIdentifier", + "src": "32619:6:5" + }, + { + "name": "frField", + "nativeSrc": "32647:7:5", + "nodeType": "YulIdentifier", + "src": "32647:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32538:6:5", + "nodeType": "YulIdentifier", + "src": "32538:6:5" + }, + "nativeSrc": "32538:134:5", + "nodeType": "YulFunctionCall", + "src": "32538:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32528:6:5", + "nodeType": "YulIdentifier", + "src": "32528:6:5" + } + ] + }, + { + "nativeSrc": "32690:209:5", + "nodeType": "YulAssignment", + "src": "32690:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "32735:6:5", + "nodeType": "YulIdentifier", + "src": "32735:6:5" + }, + { + "name": "h", + "nativeSrc": "32743:1:5", + "nodeType": "YulIdentifier", + "src": "32743:1:5" + }, + { + "name": "frField", + "nativeSrc": "32746:7:5", + "nodeType": "YulIdentifier", + "src": "32746:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "32728:6:5", + "nodeType": "YulIdentifier", + "src": "32728:6:5" + }, + "nativeSrc": "32728:26:5", + "nodeType": "YulFunctionCall", + "src": "32728:26:5" + }, + { + "kind": "number", + "nativeSrc": "32776:76:5", + "nodeType": "YulLiteral", + "src": "32776:76:5", + "type": "", + "value": "3238521361072472828313630322811653086792441312858682853521070248794222258735" + }, + { + "name": "frField", + "nativeSrc": "32874:7:5", + "nodeType": "YulIdentifier", + "src": "32874:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "32700:6:5", + "nodeType": "YulIdentifier", + "src": "32700:6:5" + }, + "nativeSrc": "32700:199:5", + "nodeType": "YulFunctionCall", + "src": "32700:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "32690:6:5", + "nodeType": "YulIdentifier", + "src": "32690:6:5" + } + ] + }, + { + "nativeSrc": "32916:41:5", + "nodeType": "YulAssignment", + "src": "32916:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "32933:6:5", + "nodeType": "YulIdentifier", + "src": "32933:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "32941:6:5", + "nodeType": "YulIdentifier", + "src": "32941:6:5" + }, + { + "name": "frField", + "nativeSrc": "32949:7:5", + "nodeType": "YulIdentifier", + "src": "32949:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32926:6:5", + "nodeType": "YulIdentifier", + "src": "32926:6:5" + }, + "nativeSrc": "32926:31:5", + "nodeType": "YulFunctionCall", + "src": "32926:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32916:6:5", + "nodeType": "YulIdentifier", + "src": "32916:6:5" + } + ] + }, + { + "nativeSrc": "32974:41:5", + "nodeType": "YulAssignment", + "src": "32974:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "32991:6:5", + "nodeType": "YulIdentifier", + "src": "32991:6:5" + }, + { + "name": "output", + "nativeSrc": "32999:6:5", + "nodeType": "YulIdentifier", + "src": "32999:6:5" + }, + { + "name": "frField", + "nativeSrc": "33007:7:5", + "nodeType": "YulIdentifier", + "src": "33007:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "32984:6:5", + "nodeType": "YulIdentifier", + "src": "32984:6:5" + }, + "nativeSrc": "32984:31:5", + "nodeType": "YulFunctionCall", + "src": "32984:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "32974:6:5", + "nodeType": "YulIdentifier", + "src": "32974:6:5" + } + ] + }, + { + "nativeSrc": "33032:41:5", + "nodeType": "YulAssignment", + "src": "33032:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "33049:6:5", + "nodeType": "YulIdentifier", + "src": "33049:6:5" + }, + { + "name": "output", + "nativeSrc": "33057:6:5", + "nodeType": "YulIdentifier", + "src": "33057:6:5" + }, + { + "name": "frField", + "nativeSrc": "33065:7:5", + "nodeType": "YulIdentifier", + "src": "33065:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33042:6:5", + "nodeType": "YulIdentifier", + "src": "33042:6:5" + }, + "nativeSrc": "33042:31:5", + "nodeType": "YulFunctionCall", + "src": "33042:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33032:6:5", + "nodeType": "YulIdentifier", + "src": "33032:6:5" + } + ] + }, + { + "nativeSrc": "33090:144:5", + "nodeType": "YulAssignment", + "src": "33090:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "33135:6:5", + "nodeType": "YulIdentifier", + "src": "33135:6:5" + }, + { + "name": "output", + "nativeSrc": "33143:6:5", + "nodeType": "YulIdentifier", + "src": "33143:6:5" + }, + { + "name": "frField", + "nativeSrc": "33151:7:5", + "nodeType": "YulIdentifier", + "src": "33151:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33128:6:5", + "nodeType": "YulIdentifier", + "src": "33128:6:5" + }, + "nativeSrc": "33128:31:5", + "nodeType": "YulFunctionCall", + "src": "33128:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "33181:6:5", + "nodeType": "YulIdentifier", + "src": "33181:6:5" + }, + { + "name": "frField", + "nativeSrc": "33209:7:5", + "nodeType": "YulIdentifier", + "src": "33209:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33100:6:5", + "nodeType": "YulIdentifier", + "src": "33100:6:5" + }, + "nativeSrc": "33100:134:5", + "nodeType": "YulFunctionCall", + "src": "33100:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33090:6:5", + "nodeType": "YulIdentifier", + "src": "33090:6:5" + } + ] + }, + { + "nativeSrc": "33252:209:5", + "nodeType": "YulAssignment", + "src": "33252:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "33297:6:5", + "nodeType": "YulIdentifier", + "src": "33297:6:5" + }, + { + "name": "h", + "nativeSrc": "33305:1:5", + "nodeType": "YulIdentifier", + "src": "33305:1:5" + }, + { + "name": "frField", + "nativeSrc": "33308:7:5", + "nodeType": "YulIdentifier", + "src": "33308:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "33290:6:5", + "nodeType": "YulIdentifier", + "src": "33290:6:5" + }, + "nativeSrc": "33290:26:5", + "nodeType": "YulFunctionCall", + "src": "33290:26:5" + }, + { + "kind": "number", + "nativeSrc": "33338:76:5", + "nodeType": "YulLiteral", + "src": "33338:76:5", + "type": "", + "value": "3475214489590830586915334473771293324307275731565327099797069845161869229357" + }, + { + "name": "frField", + "nativeSrc": "33436:7:5", + "nodeType": "YulIdentifier", + "src": "33436:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "33262:6:5", + "nodeType": "YulIdentifier", + "src": "33262:6:5" + }, + "nativeSrc": "33262:199:5", + "nodeType": "YulFunctionCall", + "src": "33262:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "33252:6:5", + "nodeType": "YulIdentifier", + "src": "33252:6:5" + } + ] + }, + { + "nativeSrc": "33478:41:5", + "nodeType": "YulAssignment", + "src": "33478:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "33495:6:5", + "nodeType": "YulIdentifier", + "src": "33495:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "33503:6:5", + "nodeType": "YulIdentifier", + "src": "33503:6:5" + }, + { + "name": "frField", + "nativeSrc": "33511:7:5", + "nodeType": "YulIdentifier", + "src": "33511:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33488:6:5", + "nodeType": "YulIdentifier", + "src": "33488:6:5" + }, + "nativeSrc": "33488:31:5", + "nodeType": "YulFunctionCall", + "src": "33488:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33478:6:5", + "nodeType": "YulIdentifier", + "src": "33478:6:5" + } + ] + }, + { + "nativeSrc": "33536:41:5", + "nodeType": "YulAssignment", + "src": "33536:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "33553:6:5", + "nodeType": "YulIdentifier", + "src": "33553:6:5" + }, + { + "name": "output", + "nativeSrc": "33561:6:5", + "nodeType": "YulIdentifier", + "src": "33561:6:5" + }, + { + "name": "frField", + "nativeSrc": "33569:7:5", + "nodeType": "YulIdentifier", + "src": "33569:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33546:6:5", + "nodeType": "YulIdentifier", + "src": "33546:6:5" + }, + "nativeSrc": "33546:31:5", + "nodeType": "YulFunctionCall", + "src": "33546:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33536:6:5", + "nodeType": "YulIdentifier", + "src": "33536:6:5" + } + ] + }, + { + "nativeSrc": "33594:41:5", + "nodeType": "YulAssignment", + "src": "33594:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "33611:6:5", + "nodeType": "YulIdentifier", + "src": "33611:6:5" + }, + { + "name": "output", + "nativeSrc": "33619:6:5", + "nodeType": "YulIdentifier", + "src": "33619:6:5" + }, + { + "name": "frField", + "nativeSrc": "33627:7:5", + "nodeType": "YulIdentifier", + "src": "33627:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33604:6:5", + "nodeType": "YulIdentifier", + "src": "33604:6:5" + }, + "nativeSrc": "33604:31:5", + "nodeType": "YulFunctionCall", + "src": "33604:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33594:6:5", + "nodeType": "YulIdentifier", + "src": "33594:6:5" + } + ] + }, + { + "nativeSrc": "33652:144:5", + "nodeType": "YulAssignment", + "src": "33652:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "33697:6:5", + "nodeType": "YulIdentifier", + "src": "33697:6:5" + }, + { + "name": "output", + "nativeSrc": "33705:6:5", + "nodeType": "YulIdentifier", + "src": "33705:6:5" + }, + { + "name": "frField", + "nativeSrc": "33713:7:5", + "nodeType": "YulIdentifier", + "src": "33713:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33690:6:5", + "nodeType": "YulIdentifier", + "src": "33690:6:5" + }, + "nativeSrc": "33690:31:5", + "nodeType": "YulFunctionCall", + "src": "33690:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "33743:6:5", + "nodeType": "YulIdentifier", + "src": "33743:6:5" + }, + { + "name": "frField", + "nativeSrc": "33771:7:5", + "nodeType": "YulIdentifier", + "src": "33771:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "33662:6:5", + "nodeType": "YulIdentifier", + "src": "33662:6:5" + }, + "nativeSrc": "33662:134:5", + "nodeType": "YulFunctionCall", + "src": "33662:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "33652:6:5", + "nodeType": "YulIdentifier", + "src": "33652:6:5" + } + ] + }, + { + "nativeSrc": "33814:209:5", + "nodeType": "YulAssignment", + "src": "33814:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "33859:6:5", + "nodeType": "YulIdentifier", + "src": "33859:6:5" + }, + { + "name": "h", + "nativeSrc": "33867:1:5", + "nodeType": "YulIdentifier", + "src": "33867:1:5" + }, + { + "name": "frField", + "nativeSrc": "33870:7:5", + "nodeType": "YulIdentifier", + "src": "33870:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "33852:6:5", + "nodeType": "YulIdentifier", + "src": "33852:6:5" + }, + "nativeSrc": "33852:26:5", + "nodeType": "YulFunctionCall", + "src": "33852:26:5" + }, + { + "kind": "number", + "nativeSrc": "33900:76:5", + "nodeType": "YulLiteral", + "src": "33900:76:5", + "type": "", + "value": "4274287601159036159363576568654710230919275259553081321690187920135177947814" + }, + { + "name": "frField", + "nativeSrc": "33998:7:5", + "nodeType": "YulIdentifier", + "src": "33998:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "33824:6:5", + "nodeType": "YulIdentifier", + "src": "33824:6:5" + }, + "nativeSrc": "33824:199:5", + "nodeType": "YulFunctionCall", + "src": "33824:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "33814:6:5", + "nodeType": "YulIdentifier", + "src": "33814:6:5" + } + ] + }, + { + "nativeSrc": "34040:41:5", + "nodeType": "YulAssignment", + "src": "34040:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "34057:6:5", + "nodeType": "YulIdentifier", + "src": "34057:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "34065:6:5", + "nodeType": "YulIdentifier", + "src": "34065:6:5" + }, + { + "name": "frField", + "nativeSrc": "34073:7:5", + "nodeType": "YulIdentifier", + "src": "34073:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34050:6:5", + "nodeType": "YulIdentifier", + "src": "34050:6:5" + }, + "nativeSrc": "34050:31:5", + "nodeType": "YulFunctionCall", + "src": "34050:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34040:6:5", + "nodeType": "YulIdentifier", + "src": "34040:6:5" + } + ] + }, + { + "nativeSrc": "34098:41:5", + "nodeType": "YulAssignment", + "src": "34098:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "34115:6:5", + "nodeType": "YulIdentifier", + "src": "34115:6:5" + }, + { + "name": "output", + "nativeSrc": "34123:6:5", + "nodeType": "YulIdentifier", + "src": "34123:6:5" + }, + { + "name": "frField", + "nativeSrc": "34131:7:5", + "nodeType": "YulIdentifier", + "src": "34131:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34108:6:5", + "nodeType": "YulIdentifier", + "src": "34108:6:5" + }, + "nativeSrc": "34108:31:5", + "nodeType": "YulFunctionCall", + "src": "34108:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34098:6:5", + "nodeType": "YulIdentifier", + "src": "34098:6:5" + } + ] + }, + { + "nativeSrc": "34156:41:5", + "nodeType": "YulAssignment", + "src": "34156:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "34173:6:5", + "nodeType": "YulIdentifier", + "src": "34173:6:5" + }, + { + "name": "output", + "nativeSrc": "34181:6:5", + "nodeType": "YulIdentifier", + "src": "34181:6:5" + }, + { + "name": "frField", + "nativeSrc": "34189:7:5", + "nodeType": "YulIdentifier", + "src": "34189:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34166:6:5", + "nodeType": "YulIdentifier", + "src": "34166:6:5" + }, + "nativeSrc": "34166:31:5", + "nodeType": "YulFunctionCall", + "src": "34166:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34156:6:5", + "nodeType": "YulIdentifier", + "src": "34156:6:5" + } + ] + }, + { + "nativeSrc": "34214:144:5", + "nodeType": "YulAssignment", + "src": "34214:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "34259:6:5", + "nodeType": "YulIdentifier", + "src": "34259:6:5" + }, + { + "name": "output", + "nativeSrc": "34267:6:5", + "nodeType": "YulIdentifier", + "src": "34267:6:5" + }, + { + "name": "frField", + "nativeSrc": "34275:7:5", + "nodeType": "YulIdentifier", + "src": "34275:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34252:6:5", + "nodeType": "YulIdentifier", + "src": "34252:6:5" + }, + "nativeSrc": "34252:31:5", + "nodeType": "YulFunctionCall", + "src": "34252:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "34305:6:5", + "nodeType": "YulIdentifier", + "src": "34305:6:5" + }, + { + "name": "frField", + "nativeSrc": "34333:7:5", + "nodeType": "YulIdentifier", + "src": "34333:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34224:6:5", + "nodeType": "YulIdentifier", + "src": "34224:6:5" + }, + "nativeSrc": "34224:134:5", + "nodeType": "YulFunctionCall", + "src": "34224:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34214:6:5", + "nodeType": "YulIdentifier", + "src": "34214:6:5" + } + ] + }, + { + "nativeSrc": "34376:209:5", + "nodeType": "YulAssignment", + "src": "34376:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "34421:6:5", + "nodeType": "YulIdentifier", + "src": "34421:6:5" + }, + { + "name": "h", + "nativeSrc": "34429:1:5", + "nodeType": "YulIdentifier", + "src": "34429:1:5" + }, + { + "name": "frField", + "nativeSrc": "34432:7:5", + "nodeType": "YulIdentifier", + "src": "34432:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "34414:6:5", + "nodeType": "YulIdentifier", + "src": "34414:6:5" + }, + "nativeSrc": "34414:26:5", + "nodeType": "YulFunctionCall", + "src": "34414:26:5" + }, + { + "kind": "number", + "nativeSrc": "34462:76:5", + "nodeType": "YulLiteral", + "src": "34462:76:5", + "type": "", + "value": "6938336600682072955973769075275160235517201022692151378695173193891386346405" + }, + { + "name": "frField", + "nativeSrc": "34560:7:5", + "nodeType": "YulIdentifier", + "src": "34560:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "34386:6:5", + "nodeType": "YulIdentifier", + "src": "34386:6:5" + }, + "nativeSrc": "34386:199:5", + "nodeType": "YulFunctionCall", + "src": "34386:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "34376:6:5", + "nodeType": "YulIdentifier", + "src": "34376:6:5" + } + ] + }, + { + "nativeSrc": "34602:41:5", + "nodeType": "YulAssignment", + "src": "34602:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "34619:6:5", + "nodeType": "YulIdentifier", + "src": "34619:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "34627:6:5", + "nodeType": "YulIdentifier", + "src": "34627:6:5" + }, + { + "name": "frField", + "nativeSrc": "34635:7:5", + "nodeType": "YulIdentifier", + "src": "34635:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34612:6:5", + "nodeType": "YulIdentifier", + "src": "34612:6:5" + }, + "nativeSrc": "34612:31:5", + "nodeType": "YulFunctionCall", + "src": "34612:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34602:6:5", + "nodeType": "YulIdentifier", + "src": "34602:6:5" + } + ] + }, + { + "nativeSrc": "34660:41:5", + "nodeType": "YulAssignment", + "src": "34660:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "34677:6:5", + "nodeType": "YulIdentifier", + "src": "34677:6:5" + }, + { + "name": "output", + "nativeSrc": "34685:6:5", + "nodeType": "YulIdentifier", + "src": "34685:6:5" + }, + { + "name": "frField", + "nativeSrc": "34693:7:5", + "nodeType": "YulIdentifier", + "src": "34693:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34670:6:5", + "nodeType": "YulIdentifier", + "src": "34670:6:5" + }, + "nativeSrc": "34670:31:5", + "nodeType": "YulFunctionCall", + "src": "34670:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34660:6:5", + "nodeType": "YulIdentifier", + "src": "34660:6:5" + } + ] + }, + { + "nativeSrc": "34718:41:5", + "nodeType": "YulAssignment", + "src": "34718:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "34735:6:5", + "nodeType": "YulIdentifier", + "src": "34735:6:5" + }, + { + "name": "output", + "nativeSrc": "34743:6:5", + "nodeType": "YulIdentifier", + "src": "34743:6:5" + }, + { + "name": "frField", + "nativeSrc": "34751:7:5", + "nodeType": "YulIdentifier", + "src": "34751:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34728:6:5", + "nodeType": "YulIdentifier", + "src": "34728:6:5" + }, + "nativeSrc": "34728:31:5", + "nodeType": "YulFunctionCall", + "src": "34728:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34718:6:5", + "nodeType": "YulIdentifier", + "src": "34718:6:5" + } + ] + }, + { + "nativeSrc": "34776:144:5", + "nodeType": "YulAssignment", + "src": "34776:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "34821:6:5", + "nodeType": "YulIdentifier", + "src": "34821:6:5" + }, + { + "name": "output", + "nativeSrc": "34829:6:5", + "nodeType": "YulIdentifier", + "src": "34829:6:5" + }, + { + "name": "frField", + "nativeSrc": "34837:7:5", + "nodeType": "YulIdentifier", + "src": "34837:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34814:6:5", + "nodeType": "YulIdentifier", + "src": "34814:6:5" + }, + "nativeSrc": "34814:31:5", + "nodeType": "YulFunctionCall", + "src": "34814:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "34867:6:5", + "nodeType": "YulIdentifier", + "src": "34867:6:5" + }, + { + "name": "frField", + "nativeSrc": "34895:7:5", + "nodeType": "YulIdentifier", + "src": "34895:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "34786:6:5", + "nodeType": "YulIdentifier", + "src": "34786:6:5" + }, + "nativeSrc": "34786:134:5", + "nodeType": "YulFunctionCall", + "src": "34786:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "34776:6:5", + "nodeType": "YulIdentifier", + "src": "34776:6:5" + } + ] + }, + { + "nativeSrc": "34938:209:5", + "nodeType": "YulAssignment", + "src": "34938:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "34983:6:5", + "nodeType": "YulIdentifier", + "src": "34983:6:5" + }, + { + "name": "h", + "nativeSrc": "34991:1:5", + "nodeType": "YulIdentifier", + "src": "34991:1:5" + }, + { + "name": "frField", + "nativeSrc": "34994:7:5", + "nodeType": "YulIdentifier", + "src": "34994:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "34976:6:5", + "nodeType": "YulIdentifier", + "src": "34976:6:5" + }, + "nativeSrc": "34976:26:5", + "nodeType": "YulFunctionCall", + "src": "34976:26:5" + }, + { + "kind": "number", + "nativeSrc": "35024:76:5", + "nodeType": "YulLiteral", + "src": "35024:76:5", + "type": "", + "value": "3998198747256139339077883878547228988120873864712400941893285440315291004215" + }, + { + "name": "frField", + "nativeSrc": "35122:7:5", + "nodeType": "YulIdentifier", + "src": "35122:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "34948:6:5", + "nodeType": "YulIdentifier", + "src": "34948:6:5" + }, + "nativeSrc": "34948:199:5", + "nodeType": "YulFunctionCall", + "src": "34948:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "34938:6:5", + "nodeType": "YulIdentifier", + "src": "34938:6:5" + } + ] + }, + { + "nativeSrc": "35164:41:5", + "nodeType": "YulAssignment", + "src": "35164:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "35181:6:5", + "nodeType": "YulIdentifier", + "src": "35181:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "35189:6:5", + "nodeType": "YulIdentifier", + "src": "35189:6:5" + }, + { + "name": "frField", + "nativeSrc": "35197:7:5", + "nodeType": "YulIdentifier", + "src": "35197:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35174:6:5", + "nodeType": "YulIdentifier", + "src": "35174:6:5" + }, + "nativeSrc": "35174:31:5", + "nodeType": "YulFunctionCall", + "src": "35174:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35164:6:5", + "nodeType": "YulIdentifier", + "src": "35164:6:5" + } + ] + }, + { + "nativeSrc": "35222:41:5", + "nodeType": "YulAssignment", + "src": "35222:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "35239:6:5", + "nodeType": "YulIdentifier", + "src": "35239:6:5" + }, + { + "name": "output", + "nativeSrc": "35247:6:5", + "nodeType": "YulIdentifier", + "src": "35247:6:5" + }, + { + "name": "frField", + "nativeSrc": "35255:7:5", + "nodeType": "YulIdentifier", + "src": "35255:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35232:6:5", + "nodeType": "YulIdentifier", + "src": "35232:6:5" + }, + "nativeSrc": "35232:31:5", + "nodeType": "YulFunctionCall", + "src": "35232:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35222:6:5", + "nodeType": "YulIdentifier", + "src": "35222:6:5" + } + ] + }, + { + "nativeSrc": "35280:41:5", + "nodeType": "YulAssignment", + "src": "35280:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "35297:6:5", + "nodeType": "YulIdentifier", + "src": "35297:6:5" + }, + { + "name": "output", + "nativeSrc": "35305:6:5", + "nodeType": "YulIdentifier", + "src": "35305:6:5" + }, + { + "name": "frField", + "nativeSrc": "35313:7:5", + "nodeType": "YulIdentifier", + "src": "35313:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35290:6:5", + "nodeType": "YulIdentifier", + "src": "35290:6:5" + }, + "nativeSrc": "35290:31:5", + "nodeType": "YulFunctionCall", + "src": "35290:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35280:6:5", + "nodeType": "YulIdentifier", + "src": "35280:6:5" + } + ] + }, + { + "nativeSrc": "35338:144:5", + "nodeType": "YulAssignment", + "src": "35338:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "35383:6:5", + "nodeType": "YulIdentifier", + "src": "35383:6:5" + }, + { + "name": "output", + "nativeSrc": "35391:6:5", + "nodeType": "YulIdentifier", + "src": "35391:6:5" + }, + { + "name": "frField", + "nativeSrc": "35399:7:5", + "nodeType": "YulIdentifier", + "src": "35399:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35376:6:5", + "nodeType": "YulIdentifier", + "src": "35376:6:5" + }, + "nativeSrc": "35376:31:5", + "nodeType": "YulFunctionCall", + "src": "35376:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "35429:6:5", + "nodeType": "YulIdentifier", + "src": "35429:6:5" + }, + { + "name": "frField", + "nativeSrc": "35457:7:5", + "nodeType": "YulIdentifier", + "src": "35457:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35348:6:5", + "nodeType": "YulIdentifier", + "src": "35348:6:5" + }, + "nativeSrc": "35348:134:5", + "nodeType": "YulFunctionCall", + "src": "35348:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35338:6:5", + "nodeType": "YulIdentifier", + "src": "35338:6:5" + } + ] + }, + { + "nativeSrc": "35500:209:5", + "nodeType": "YulAssignment", + "src": "35500:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "35545:6:5", + "nodeType": "YulIdentifier", + "src": "35545:6:5" + }, + { + "name": "h", + "nativeSrc": "35553:1:5", + "nodeType": "YulIdentifier", + "src": "35553:1:5" + }, + { + "name": "frField", + "nativeSrc": "35556:7:5", + "nodeType": "YulIdentifier", + "src": "35556:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "35538:6:5", + "nodeType": "YulIdentifier", + "src": "35538:6:5" + }, + "nativeSrc": "35538:26:5", + "nodeType": "YulFunctionCall", + "src": "35538:26:5" + }, + { + "kind": "number", + "nativeSrc": "35586:76:5", + "nodeType": "YulLiteral", + "src": "35586:76:5", + "type": "", + "value": "6699213631756936754252081929574788294275116402464654263316543921533804167968" + }, + { + "name": "frField", + "nativeSrc": "35684:7:5", + "nodeType": "YulIdentifier", + "src": "35684:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "35510:6:5", + "nodeType": "YulIdentifier", + "src": "35510:6:5" + }, + "nativeSrc": "35510:199:5", + "nodeType": "YulFunctionCall", + "src": "35510:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "35500:6:5", + "nodeType": "YulIdentifier", + "src": "35500:6:5" + } + ] + }, + { + "nativeSrc": "35726:41:5", + "nodeType": "YulAssignment", + "src": "35726:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "35743:6:5", + "nodeType": "YulIdentifier", + "src": "35743:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "35751:6:5", + "nodeType": "YulIdentifier", + "src": "35751:6:5" + }, + { + "name": "frField", + "nativeSrc": "35759:7:5", + "nodeType": "YulIdentifier", + "src": "35759:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35736:6:5", + "nodeType": "YulIdentifier", + "src": "35736:6:5" + }, + "nativeSrc": "35736:31:5", + "nodeType": "YulFunctionCall", + "src": "35736:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35726:6:5", + "nodeType": "YulIdentifier", + "src": "35726:6:5" + } + ] + }, + { + "nativeSrc": "35784:41:5", + "nodeType": "YulAssignment", + "src": "35784:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "35801:6:5", + "nodeType": "YulIdentifier", + "src": "35801:6:5" + }, + { + "name": "output", + "nativeSrc": "35809:6:5", + "nodeType": "YulIdentifier", + "src": "35809:6:5" + }, + { + "name": "frField", + "nativeSrc": "35817:7:5", + "nodeType": "YulIdentifier", + "src": "35817:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35794:6:5", + "nodeType": "YulIdentifier", + "src": "35794:6:5" + }, + "nativeSrc": "35794:31:5", + "nodeType": "YulFunctionCall", + "src": "35794:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35784:6:5", + "nodeType": "YulIdentifier", + "src": "35784:6:5" + } + ] + }, + { + "nativeSrc": "35842:41:5", + "nodeType": "YulAssignment", + "src": "35842:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "35859:6:5", + "nodeType": "YulIdentifier", + "src": "35859:6:5" + }, + { + "name": "output", + "nativeSrc": "35867:6:5", + "nodeType": "YulIdentifier", + "src": "35867:6:5" + }, + { + "name": "frField", + "nativeSrc": "35875:7:5", + "nodeType": "YulIdentifier", + "src": "35875:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35852:6:5", + "nodeType": "YulIdentifier", + "src": "35852:6:5" + }, + "nativeSrc": "35852:31:5", + "nodeType": "YulFunctionCall", + "src": "35852:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35842:6:5", + "nodeType": "YulIdentifier", + "src": "35842:6:5" + } + ] + }, + { + "nativeSrc": "35900:144:5", + "nodeType": "YulAssignment", + "src": "35900:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "35945:6:5", + "nodeType": "YulIdentifier", + "src": "35945:6:5" + }, + { + "name": "output", + "nativeSrc": "35953:6:5", + "nodeType": "YulIdentifier", + "src": "35953:6:5" + }, + { + "name": "frField", + "nativeSrc": "35961:7:5", + "nodeType": "YulIdentifier", + "src": "35961:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35938:6:5", + "nodeType": "YulIdentifier", + "src": "35938:6:5" + }, + "nativeSrc": "35938:31:5", + "nodeType": "YulFunctionCall", + "src": "35938:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "35991:6:5", + "nodeType": "YulIdentifier", + "src": "35991:6:5" + }, + { + "name": "frField", + "nativeSrc": "36019:7:5", + "nodeType": "YulIdentifier", + "src": "36019:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "35910:6:5", + "nodeType": "YulIdentifier", + "src": "35910:6:5" + }, + "nativeSrc": "35910:134:5", + "nodeType": "YulFunctionCall", + "src": "35910:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "35900:6:5", + "nodeType": "YulIdentifier", + "src": "35900:6:5" + } + ] + }, + { + "nativeSrc": "36062:209:5", + "nodeType": "YulAssignment", + "src": "36062:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "36107:6:5", + "nodeType": "YulIdentifier", + "src": "36107:6:5" + }, + { + "name": "h", + "nativeSrc": "36115:1:5", + "nodeType": "YulIdentifier", + "src": "36115:1:5" + }, + { + "name": "frField", + "nativeSrc": "36118:7:5", + "nodeType": "YulIdentifier", + "src": "36118:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "36100:6:5", + "nodeType": "YulIdentifier", + "src": "36100:6:5" + }, + "nativeSrc": "36100:26:5", + "nodeType": "YulFunctionCall", + "src": "36100:26:5" + }, + { + "kind": "number", + "nativeSrc": "36148:76:5", + "nodeType": "YulLiteral", + "src": "36148:76:5", + "type": "", + "value": "6962236729635042756258761323749531146700535903704299930132981735734543600942" + }, + { + "name": "frField", + "nativeSrc": "36246:7:5", + "nodeType": "YulIdentifier", + "src": "36246:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "36072:6:5", + "nodeType": "YulIdentifier", + "src": "36072:6:5" + }, + "nativeSrc": "36072:199:5", + "nodeType": "YulFunctionCall", + "src": "36072:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "36062:6:5", + "nodeType": "YulIdentifier", + "src": "36062:6:5" + } + ] + }, + { + "nativeSrc": "36288:41:5", + "nodeType": "YulAssignment", + "src": "36288:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "36305:6:5", + "nodeType": "YulIdentifier", + "src": "36305:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "36313:6:5", + "nodeType": "YulIdentifier", + "src": "36313:6:5" + }, + { + "name": "frField", + "nativeSrc": "36321:7:5", + "nodeType": "YulIdentifier", + "src": "36321:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36298:6:5", + "nodeType": "YulIdentifier", + "src": "36298:6:5" + }, + "nativeSrc": "36298:31:5", + "nodeType": "YulFunctionCall", + "src": "36298:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36288:6:5", + "nodeType": "YulIdentifier", + "src": "36288:6:5" + } + ] + }, + { + "nativeSrc": "36346:41:5", + "nodeType": "YulAssignment", + "src": "36346:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "36363:6:5", + "nodeType": "YulIdentifier", + "src": "36363:6:5" + }, + { + "name": "output", + "nativeSrc": "36371:6:5", + "nodeType": "YulIdentifier", + "src": "36371:6:5" + }, + { + "name": "frField", + "nativeSrc": "36379:7:5", + "nodeType": "YulIdentifier", + "src": "36379:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36356:6:5", + "nodeType": "YulIdentifier", + "src": "36356:6:5" + }, + "nativeSrc": "36356:31:5", + "nodeType": "YulFunctionCall", + "src": "36356:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36346:6:5", + "nodeType": "YulIdentifier", + "src": "36346:6:5" + } + ] + }, + { + "nativeSrc": "36404:41:5", + "nodeType": "YulAssignment", + "src": "36404:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "36421:6:5", + "nodeType": "YulIdentifier", + "src": "36421:6:5" + }, + { + "name": "output", + "nativeSrc": "36429:6:5", + "nodeType": "YulIdentifier", + "src": "36429:6:5" + }, + { + "name": "frField", + "nativeSrc": "36437:7:5", + "nodeType": "YulIdentifier", + "src": "36437:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36414:6:5", + "nodeType": "YulIdentifier", + "src": "36414:6:5" + }, + "nativeSrc": "36414:31:5", + "nodeType": "YulFunctionCall", + "src": "36414:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36404:6:5", + "nodeType": "YulIdentifier", + "src": "36404:6:5" + } + ] + }, + { + "nativeSrc": "36462:144:5", + "nodeType": "YulAssignment", + "src": "36462:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "36507:6:5", + "nodeType": "YulIdentifier", + "src": "36507:6:5" + }, + { + "name": "output", + "nativeSrc": "36515:6:5", + "nodeType": "YulIdentifier", + "src": "36515:6:5" + }, + { + "name": "frField", + "nativeSrc": "36523:7:5", + "nodeType": "YulIdentifier", + "src": "36523:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36500:6:5", + "nodeType": "YulIdentifier", + "src": "36500:6:5" + }, + "nativeSrc": "36500:31:5", + "nodeType": "YulFunctionCall", + "src": "36500:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "36553:6:5", + "nodeType": "YulIdentifier", + "src": "36553:6:5" + }, + { + "name": "frField", + "nativeSrc": "36581:7:5", + "nodeType": "YulIdentifier", + "src": "36581:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36472:6:5", + "nodeType": "YulIdentifier", + "src": "36472:6:5" + }, + "nativeSrc": "36472:134:5", + "nodeType": "YulFunctionCall", + "src": "36472:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36462:6:5", + "nodeType": "YulIdentifier", + "src": "36462:6:5" + } + ] + }, + { + "nativeSrc": "36624:209:5", + "nodeType": "YulAssignment", + "src": "36624:209:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "36669:6:5", + "nodeType": "YulIdentifier", + "src": "36669:6:5" + }, + { + "name": "h", + "nativeSrc": "36677:1:5", + "nodeType": "YulIdentifier", + "src": "36677:1:5" + }, + { + "name": "frField", + "nativeSrc": "36680:7:5", + "nodeType": "YulIdentifier", + "src": "36680:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "36662:6:5", + "nodeType": "YulIdentifier", + "src": "36662:6:5" + }, + "nativeSrc": "36662:26:5", + "nodeType": "YulFunctionCall", + "src": "36662:26:5" + }, + { + "kind": "number", + "nativeSrc": "36710:76:5", + "nodeType": "YulLiteral", + "src": "36710:76:5", + "type": "", + "value": "6961288456480688271133399693659146309378114560595485436408179085016705585674" + }, + { + "name": "frField", + "nativeSrc": "36808:7:5", + "nodeType": "YulIdentifier", + "src": "36808:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "36634:6:5", + "nodeType": "YulIdentifier", + "src": "36634:6:5" + }, + "nativeSrc": "36634:199:5", + "nodeType": "YulFunctionCall", + "src": "36634:199:5" + }, + "variableNames": [ + { + "name": "tmpSum", + "nativeSrc": "36624:6:5", + "nodeType": "YulIdentifier", + "src": "36624:6:5" + } + ] + }, + { + "nativeSrc": "36850:41:5", + "nodeType": "YulAssignment", + "src": "36850:41:5", + "value": { + "arguments": [ + { + "name": "tmpSum", + "nativeSrc": "36867:6:5", + "nodeType": "YulIdentifier", + "src": "36867:6:5" + }, + { + "name": "tmpSum", + "nativeSrc": "36875:6:5", + "nodeType": "YulIdentifier", + "src": "36875:6:5" + }, + { + "name": "frField", + "nativeSrc": "36883:7:5", + "nodeType": "YulIdentifier", + "src": "36883:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36860:6:5", + "nodeType": "YulIdentifier", + "src": "36860:6:5" + }, + "nativeSrc": "36860:31:5", + "nodeType": "YulFunctionCall", + "src": "36860:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36850:6:5", + "nodeType": "YulIdentifier", + "src": "36850:6:5" + } + ] + }, + { + "nativeSrc": "36908:41:5", + "nodeType": "YulAssignment", + "src": "36908:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "36925:6:5", + "nodeType": "YulIdentifier", + "src": "36925:6:5" + }, + { + "name": "output", + "nativeSrc": "36933:6:5", + "nodeType": "YulIdentifier", + "src": "36933:6:5" + }, + { + "name": "frField", + "nativeSrc": "36941:7:5", + "nodeType": "YulIdentifier", + "src": "36941:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36918:6:5", + "nodeType": "YulIdentifier", + "src": "36918:6:5" + }, + "nativeSrc": "36918:31:5", + "nodeType": "YulFunctionCall", + "src": "36918:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36908:6:5", + "nodeType": "YulIdentifier", + "src": "36908:6:5" + } + ] + }, + { + "nativeSrc": "36966:41:5", + "nodeType": "YulAssignment", + "src": "36966:41:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "36983:6:5", + "nodeType": "YulIdentifier", + "src": "36983:6:5" + }, + { + "name": "output", + "nativeSrc": "36991:6:5", + "nodeType": "YulIdentifier", + "src": "36991:6:5" + }, + { + "name": "frField", + "nativeSrc": "36999:7:5", + "nodeType": "YulIdentifier", + "src": "36999:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "36976:6:5", + "nodeType": "YulIdentifier", + "src": "36976:6:5" + }, + "nativeSrc": "36976:31:5", + "nodeType": "YulFunctionCall", + "src": "36976:31:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "36966:6:5", + "nodeType": "YulIdentifier", + "src": "36966:6:5" + } + ] + }, + { + "nativeSrc": "37024:144:5", + "nodeType": "YulAssignment", + "src": "37024:144:5", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "output", + "nativeSrc": "37069:6:5", + "nodeType": "YulIdentifier", + "src": "37069:6:5" + }, + { + "name": "output", + "nativeSrc": "37077:6:5", + "nodeType": "YulIdentifier", + "src": "37077:6:5" + }, + { + "name": "frField", + "nativeSrc": "37085:7:5", + "nodeType": "YulIdentifier", + "src": "37085:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "37062:6:5", + "nodeType": "YulIdentifier", + "src": "37062:6:5" + }, + "nativeSrc": "37062:31:5", + "nodeType": "YulFunctionCall", + "src": "37062:31:5" + }, + { + "name": "tmpSum", + "nativeSrc": "37115:6:5", + "nodeType": "YulIdentifier", + "src": "37115:6:5" + }, + { + "name": "frField", + "nativeSrc": "37143:7:5", + "nodeType": "YulIdentifier", + "src": "37143:7:5" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "37034:6:5", + "nodeType": "YulIdentifier", + "src": "37034:6:5" + }, + "nativeSrc": "37034:134:5", + "nodeType": "YulFunctionCall", + "src": "37034:134:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "37024:6:5", + "nodeType": "YulIdentifier", + "src": "37024:6:5" + } + ] + }, + { + "nativeSrc": "37186:36:5", + "nodeType": "YulAssignment", + "src": "37186:36:5", + "value": { + "arguments": [ + { + "name": "output", + "nativeSrc": "37203:6:5", + "nodeType": "YulIdentifier", + "src": "37203:6:5" + }, + { + "name": "h", + "nativeSrc": "37211:1:5", + "nodeType": "YulIdentifier", + "src": "37211:1:5" + }, + { + "name": "frField", + "nativeSrc": "37214:7:5", + "nodeType": "YulIdentifier", + "src": "37214:7:5" + } + ], + "functionName": { + "name": "addmod", + "nativeSrc": "37196:6:5", + "nodeType": "YulIdentifier", + "src": "37196:6:5" + }, + "nativeSrc": "37196:26:5", + "nodeType": "YulFunctionCall", + "src": "37196:26:5" + }, + "variableNames": [ + { + "name": "output", + "nativeSrc": "37186:6:5", + "nodeType": "YulIdentifier", + "src": "37186:6:5" + } + ] + } + ] + }, + "name": "encrypt", + "nativeSrc": "2221:35015:5", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "h", + "nativeSrc": "2238:1:5", + "nodeType": "YulTypedName", + "src": "2238:1:5", + "type": "" + }, + { + "name": "chunk", + "nativeSrc": "2241:5:5", + "nodeType": "YulTypedName", + "src": "2241:5:5", + "type": "" + } + ], + "returnVariables": [ + { + "name": "output", + "nativeSrc": "2251:6:5", + "nodeType": "YulTypedName", + "src": "2251:6:5", + "type": "" + } + ], + "src": "2221:35015:5" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 1722, + "isOffset": false, + "isSlot": false, + "src": "2109:8:5", + "valueSize": 1 + }, + { + "declaration": 1722, + "isOffset": false, + "isSlot": false, + "src": "2167:8:5", + "valueSize": 1 + }, + { + "declaration": 1722, + "isOffset": false, + "isSlot": false, + "src": "2291:8:5", + "valueSize": 1 + }, + { + "declaration": 1725, + "isOffset": false, + "isSlot": false, + "src": "1722:11:5", + "suffix": "length", + "valueSize": 1 + }, + { + "declaration": 1725, + "isOffset": true, + "isSlot": false, + "src": "1905:11:5", + "suffix": "offset", + "valueSize": 1 + }, + { + "declaration": 1728, + "isOffset": false, + "isSlot": false, + "src": "2016:8:5", + "valueSize": 1 + }, + { + "declaration": 1728, + "isOffset": false, + "isSlot": false, + "src": "2049:8:5", + "valueSize": 1 + }, + { + "declaration": 1728, + "isOffset": false, + "isSlot": false, + "src": "2096:8:5", + "valueSize": 1 + } + ], + "id": 1750, + "nodeType": "InlineAssembly", + "src": "1677:35569:5" + } + ] + }, + "documentation": { + "id": 1723, + "nodeType": "StructuredDocumentation", + "src": "1174:234:5", + "text": " @notice Performs a MiMC hash on the data provided\n @param _msg The data to be hashed\n @dev Only data that has length modulus 32 is hashed, reverts otherwise\n @return mimcHash The computed MiMC hash" + }, + "functionSelector": "aa1e84de", + "id": 1752, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hash", + "nameLocation": "1422:4:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1726, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1725, + "mutability": "mutable", + "name": "_msg", + "nameLocation": "1451:4:5", + "nodeType": "VariableDeclaration", + "scope": 1752, + "src": "1436:19:5", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1724, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1436:5:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1426:35:5" + }, + "returnParameters": { + "id": 1729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1728, + "mutability": "mutable", + "name": "mimcHash", + "nameLocation": "1493:8:5", + "nodeType": "VariableDeclaration", + "scope": 1752, + "src": "1485:16:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1727, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1485:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1484:18:5" + }, + "scope": 1753, + "src": "1413:35839:5", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1754, + "src": "846:36408:5", + "usedErrors": [ + 1716, + 1719 + ], + "usedEvents": [] + } + ], + "src": "680:36575:5" + }, + "id": 5 + }, + "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol": { + "ast": { + "absolutePath": "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol", + "exportedSymbols": { + "Mimc": [ + 1753 + ], + "SparseMerkleProof": [ + 2295 + ] + }, + "id": 2296, + "license": "AGPL-3.0", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1755, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "37:23:6" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/lib/Mimc.sol", + "file": "./Mimc.sol", + "id": 1757, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2296, + "sourceUnit": 1754, + "src": "62:32:6", + "symbolAliases": [ + { + "foreign": { + "id": 1756, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "70:4:6", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "SparseMerkleProof", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 1758, + "nodeType": "StructuredDocumentation", + "src": "96:186:6", + "text": " @title Library to perform SparseMerkleProof actions using the MiMC hashing algorithm\n @author ConsenSys Software Inc.\n @custom:security-contact security-report@linea.build" + }, + "fullyImplemented": true, + "id": 2295, + "linearizedBaseContracts": [ + 2295 + ], + "name": "SparseMerkleProof", + "nameLocation": "291:17:6", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 1760, + "libraryName": { + "id": 1759, + "name": "Mimc", + "nameLocations": [ + "321:4:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1753, + "src": "321:4:6" + }, + "nodeType": "UsingForDirective", + "src": "315:17:6" + }, + { + "canonicalName": "SparseMerkleProof.Account", + "documentation": { + "id": 1761, + "nodeType": "StructuredDocumentation", + "src": "338:200:6", + "text": " The Account struct represents the state of the account including the storage root, nonce, balance and codesize\n @dev This is mapped directly to the output of the storage proof" + }, + "id": 1774, + "members": [ + { + "constant": false, + "id": 1763, + "mutability": "mutable", + "name": "nonce", + "nameLocation": "575:5:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "568:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 1762, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "568:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1765, + "mutability": "mutable", + "name": "balance", + "nameLocation": "598:7:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "590:15:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1764, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "590:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1767, + "mutability": "mutable", + "name": "storageRoot", + "nameLocation": "623:11:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "615:19:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1766, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "615:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1769, + "mutability": "mutable", + "name": "mimcCodeHash", + "nameLocation": "652:12:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "644:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1768, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "644:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1771, + "mutability": "mutable", + "name": "keccakCodeHash", + "nameLocation": "682:14:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "674:22:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1770, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "674:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1773, + "mutability": "mutable", + "name": "codeSize", + "nameLocation": "713:8:6", + "nodeType": "VariableDeclaration", + "scope": 1774, + "src": "706:15:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 1772, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "706:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "name": "Account", + "nameLocation": "550:7:6", + "nodeType": "StructDefinition", + "scope": 2295, + "src": "543:185:6", + "visibility": "public" + }, + { + "canonicalName": "SparseMerkleProof.Leaf", + "documentation": { + "id": 1775, + "nodeType": "StructuredDocumentation", + "src": "734:153:6", + "text": " Represents the leaf structure in both account and storage tries\n @dev This is mapped directly to the output of the storage proof" + }, + "id": 1784, + "members": [ + { + "constant": false, + "id": 1777, + "mutability": "mutable", + "name": "prev", + "nameLocation": "922:4:6", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "914:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1776, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "914:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1779, + "mutability": "mutable", + "name": "next", + "nameLocation": "944:4:6", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "936:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1778, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "936:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1781, + "mutability": "mutable", + "name": "hKey", + "nameLocation": "966:4:6", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "958:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1780, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "958:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1783, + "mutability": "mutable", + "name": "hValue", + "nameLocation": "988:6:6", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "980:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1782, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "980:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "Leaf", + "nameLocation": "899:4:6", + "nodeType": "StructDefinition", + "scope": 2295, + "src": "892:109:6", + "visibility": "public" + }, + { + "documentation": { + "id": 1785, + "nodeType": "StructuredDocumentation", + "src": "1007:65:6", + "text": " Thrown when expected bytes length is incorrect" + }, + "errorSelector": "7b45159f", + "id": 1791, + "name": "WrongBytesLength", + "nameLocation": "1083:16:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1790, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1787, + "mutability": "mutable", + "name": "expectedLength", + "nameLocation": "1108:14:6", + "nodeType": "VariableDeclaration", + "scope": 1791, + "src": "1100:22:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1786, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1100:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1789, + "mutability": "mutable", + "name": "bytesLength", + "nameLocation": "1132:11:6", + "nodeType": "VariableDeclaration", + "scope": 1791, + "src": "1124:19:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1788, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1124:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1099:45:6" + }, + "src": "1077:68:6" + }, + { + "documentation": { + "id": 1792, + "nodeType": "StructuredDocumentation", + "src": "1151:83:6", + "text": " Thrown when the length of bytes is not in exactly 32 byte chunks" + }, + "errorSelector": "e61963f4", + "id": 1794, + "name": "LengthNotMod32", + "nameLocation": "1245:14:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1793, + "nodeType": "ParameterList", + "parameters": [], + "src": "1259:2:6" + }, + "src": "1239:23:6" + }, + { + "documentation": { + "id": 1795, + "nodeType": "StructuredDocumentation", + "src": "1268:75:6", + "text": " Thrown when the leaf index is higher than the tree depth" + }, + "errorSelector": "382f0930", + "id": 1797, + "name": "MaxTreeLeafIndexExceed", + "nameLocation": "1354:22:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1796, + "nodeType": "ParameterList", + "parameters": [], + "src": "1376:2:6" + }, + "src": "1348:31:6" + }, + { + "documentation": { + "id": 1798, + "nodeType": "StructuredDocumentation", + "src": "1385:129:6", + "text": " Thrown when the length of the unformatted proof is not provided exactly as expected (UNFORMATTED_PROOF_LENGTH)" + }, + "errorSelector": "e2d2ab0a", + "id": 1804, + "name": "WrongProofLength", + "nameLocation": "1525:16:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1803, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1800, + "mutability": "mutable", + "name": "expectedLength", + "nameLocation": "1550:14:6", + "nodeType": "VariableDeclaration", + "scope": 1804, + "src": "1542:22:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1799, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1542:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1802, + "mutability": "mutable", + "name": "actualLength", + "nameLocation": "1574:12:6", + "nodeType": "VariableDeclaration", + "scope": 1804, + "src": "1566:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1566:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1541:46:6" + }, + "src": "1519:69:6" + }, + { + "constant": true, + "id": 1807, + "mutability": "constant", + "name": "TREE_DEPTH", + "nameLocation": "1620:10:6", + "nodeType": "VariableDeclaration", + "scope": 2295, + "src": "1594:41:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1594:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3430", + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1633:2:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_40_by_1", + "typeString": "int_const 40" + }, + "value": "40" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 1810, + "mutability": "constant", + "name": "UNFORMATTED_PROOF_LENGTH", + "nameLocation": "1667:24:6", + "nodeType": "VariableDeclaration", + "scope": 2295, + "src": "1641:55:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1808, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1641:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3432", + "id": 1809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1694:2:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 1813, + "mutability": "constant", + "name": "ZERO_HASH", + "nameLocation": "1728:9:6", + "nodeType": "VariableDeclaration", + "scope": 2295, + "src": "1702:41:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1811, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1702:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307830", + "id": 1812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1740:3:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 1820, + "mutability": "constant", + "name": "MAX_TREE_LEAF_INDEX", + "nameLocation": "1775:19:6", + "nodeType": "VariableDeclaration", + "scope": 2295, + "src": "1749:67:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1814, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1749:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 1815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1797:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "id": 1816, + "name": "TREE_DEPTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1807, + "src": "1802:10:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1797:15:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 1818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1815:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1797:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 1864, + "nodeType": "Block", + "src": "2285:379:6", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1836, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1833, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1824, + "src": "2299:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2309:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2299:16:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 1835, + "name": "UNFORMATTED_PROOF_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1810, + "src": "2319:24:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2299:44:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1844, + "nodeType": "IfStatement", + "src": "2295:142:6", + "trueBody": { + "id": 1843, + "nodeType": "Block", + "src": "2345:92:6", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 1838, + "name": "UNFORMATTED_PROOF_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1810, + "src": "2383:24:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 1839, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1824, + "src": "2409:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2419:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2409:16:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1837, + "name": "WrongProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1804, + "src": "2366:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 1841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2366:60:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1842, + "nodeType": "RevertStatement", + "src": "2359:67:6" + } + ] + } + }, + { + "assignments": [ + 1846, + 1848, + 1851 + ], + "declarations": [ + { + "constant": false, + "id": 1846, + "mutability": "mutable", + "name": "nextFreeNode", + "nameLocation": "2469:12:6", + "nodeType": "VariableDeclaration", + "scope": 1864, + "src": "2461:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1845, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2461:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1848, + "mutability": "mutable", + "name": "leafHash", + "nameLocation": "2503:8:6", + "nodeType": "VariableDeclaration", + "scope": 1864, + "src": "2495:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1847, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2495:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1851, + "mutability": "mutable", + "name": "proof", + "nameLocation": "2542:5:6", + "nodeType": "VariableDeclaration", + "scope": 1864, + "src": "2525:22:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 1849, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2525:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 1850, + "nodeType": "ArrayTypeName", + "src": "2525:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 1855, + "initialValue": { + "arguments": [ + { + "id": 1853, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1824, + "src": "2573:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + ], + "id": 1852, + "name": "_formatProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2178, + "src": "2560:12:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr_$returns$_t_bytes32_$_t_bytes32_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (bytes calldata[] calldata) pure returns (bytes32,bytes32,bytes32[] memory)" + } + }, + "id": 1854, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2560:23:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_bytes32_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32,bytes32,bytes32[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2447:136:6" + }, + { + "expression": { + "arguments": [ + { + "id": 1857, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1851, + "src": "2608:5:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 1858, + "name": "leafHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1848, + "src": "2615:8:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1859, + "name": "_leafIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1826, + "src": "2625:10:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1860, + "name": "_root", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1828, + "src": "2637:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1861, + "name": "nextFreeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "2644:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1856, + "name": "_verify", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2294, + "src": "2600:7:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_bytes32_$_t_uint256_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32[] memory,bytes32,uint256,bytes32,bytes32) pure returns (bool)" + } + }, + "id": 1862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2600:57:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1832, + "id": 1863, + "nodeType": "Return", + "src": "2593:64:6" + } + ] + }, + "documentation": { + "id": 1821, + "nodeType": "StructuredDocumentation", + "src": "1823:314:6", + "text": " @notice Formats input, computes root and returns true if it matches the provided merkle root\n @param _rawProof Raw sparse merkle tree proof\n @param _leafIndex Index of the leaf\n @param _root Sparse merkle root\n @return If the computed merkle root matches the provided one" + }, + "functionSelector": "cc5c21ea", + "id": 1865, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifyProof", + "nameLocation": "2151:11:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1824, + "mutability": "mutable", + "name": "_rawProof", + "nameLocation": "2189:9:6", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "2172:26:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 1822, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2172:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 1823, + "nodeType": "ArrayTypeName", + "src": "2172:7:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1826, + "mutability": "mutable", + "name": "_leafIndex", + "nameLocation": "2216:10:6", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "2208:18:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1825, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2208:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1828, + "mutability": "mutable", + "name": "_root", + "nameLocation": "2244:5:6", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "2236:13:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1827, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2236:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2162:93:6" + }, + "returnParameters": { + "id": 1832, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1831, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "2279:4:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1830, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2279:4:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2278:6:6" + }, + "scope": 2295, + "src": "2142:522:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1878, + "nodeType": "Block", + "src": "2873:41:6", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1875, + "name": "_input", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1868, + "src": "2900:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 1873, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "2890:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 1874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2895:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "2890:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2890:17:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 1872, + "id": 1877, + "nodeType": "Return", + "src": "2883:24:6" + } + ] + }, + "documentation": { + "id": 1866, + "nodeType": "StructuredDocumentation", + "src": "2670:125:6", + "text": " @notice Hash a value using MIMC hash\n @param _input Value to hash\n @return {bytes32} Mimc hash" + }, + "functionSelector": "b893e579", + "id": 1879, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mimcHash", + "nameLocation": "2809:8:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1869, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1868, + "mutability": "mutable", + "name": "_input", + "nameLocation": "2833:6:6", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "2818:21:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1867, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2818:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2817:23:6" + }, + "returnParameters": { + "id": 1872, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1871, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "2864:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1870, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2864:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2863:9:6" + }, + "scope": 2295, + "src": "2800:114:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1892, + "nodeType": "Block", + "src": "3171:48:6", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1889, + "name": "_encodedLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1882, + "src": "3199:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1888, + "name": "_parseLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2006, + "src": "3188:10:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_struct$_Leaf_$1784_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (struct SparseMerkleProof.Leaf memory)" + } + }, + "id": 1890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3188:24:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "functionReturnParameters": 1887, + "id": 1891, + "nodeType": "Return", + "src": "3181:31:6" + } + ] + }, + "documentation": { + "id": 1880, + "nodeType": "StructuredDocumentation", + "src": "2920:150:6", + "text": " @notice Get leaf\n @param _encodedLeaf Encoded leaf bytes (prev, next, hKey, hValue)\n @return Leaf Formatted leaf struct" + }, + "functionSelector": "5ea5a98f", + "id": 1893, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getLeaf", + "nameLocation": "3084:7:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1882, + "mutability": "mutable", + "name": "_encodedLeaf", + "nameLocation": "3116:12:6", + "nodeType": "VariableDeclaration", + "scope": 1893, + "src": "3101:27:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1881, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3101:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3091:43:6" + }, + "returnParameters": { + "id": 1887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1893, + "src": "3158:11:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + }, + "typeName": { + "id": 1885, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1884, + "name": "Leaf", + "nameLocations": [ + "3158:4:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1784, + "src": "3158:4:6" + }, + "referencedDeclaration": 1784, + "src": "3158:4:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_storage_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + } + }, + "visibility": "internal" + } + ], + "src": "3157:13:6" + }, + "scope": 2295, + "src": "3075:144:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1906, + "nodeType": "Block", + "src": "3559:59:6", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1903, + "name": "_encodedAccountValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1896, + "src": "3590:20:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1902, + "name": "_parseAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "3576:13:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_struct$_Account_$1774_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (struct SparseMerkleProof.Account memory)" + } + }, + "id": 1904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3576:35:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "functionReturnParameters": 1901, + "id": 1905, + "nodeType": "Return", + "src": "3569:42:6" + } + ] + }, + "documentation": { + "id": 1894, + "nodeType": "StructuredDocumentation", + "src": "3225:219:6", + "text": " @notice Get account\n @param _encodedAccountValue Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n @return Account Formatted account struct" + }, + "functionSelector": "60f0f00f", + "id": 1907, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getAccount", + "nameLocation": "3458:10:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1896, + "mutability": "mutable", + "name": "_encodedAccountValue", + "nameLocation": "3493:20:6", + "nodeType": "VariableDeclaration", + "scope": 1907, + "src": "3478:35:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1895, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3478:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3468:51:6" + }, + "returnParameters": { + "id": 1901, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1900, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1907, + "src": "3543:14:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 1899, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1898, + "name": "Account", + "nameLocations": [ + "3543:7:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "3543:7:6" + }, + "referencedDeclaration": 1774, + "src": "3543:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + } + ], + "src": "3542:16:6" + }, + "scope": 2295, + "src": "3449:169:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1950, + "nodeType": "Block", + "src": "3932:480:6", + "statements": [ + { + "assignments": [ + 1917 + ], + "declarations": [ + { + "constant": false, + "id": 1917, + "mutability": "mutable", + "name": "account", + "nameLocation": "3957:7:6", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "3942:22:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 1916, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1915, + "name": "Account", + "nameLocations": [ + "3942:7:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "3942:7:6" + }, + "referencedDeclaration": 1774, + "src": "3942:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + } + ], + "id": 1921, + "initialValue": { + "arguments": [ + { + "id": 1919, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1910, + "src": "3981:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1918, + "name": "_parseAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "3967:13:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_struct$_Account_$1774_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (struct SparseMerkleProof.Account memory)" + } + }, + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3967:21:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3942:46:6" + }, + { + "assignments": [ + 1923, + 1925 + ], + "declarations": [ + { + "constant": false, + "id": 1923, + "mutability": "mutable", + "name": "msb", + "nameLocation": "4007:3:6", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "3999:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1922, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3999:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1925, + "mutability": "mutable", + "name": "lsb", + "nameLocation": "4020:3:6", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "4012:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1924, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4012:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1930, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 1927, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4041:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1928, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4049:14:6", + "memberName": "keccakCodeHash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1771, + "src": "4041:22:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1926, + "name": "_splitBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2047, + "src": "4027:13:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_bytes32_$_t_bytes32_$", + "typeString": "function (bytes32) pure returns (bytes32,bytes32)" + } + }, + "id": 1929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4027:37:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_bytes32_$", + "typeString": "tuple(bytes32,bytes32)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3998:66:6" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "id": 1935, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4152:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1936, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4160:5:6", + "memberName": "nonce", + "nodeType": "MemberAccess", + "referencedDeclaration": 1763, + "src": "4152:13:6", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "expression": { + "id": 1937, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4187:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1938, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4195:7:6", + "memberName": "balance", + "nodeType": "MemberAccess", + "referencedDeclaration": 1765, + "src": "4187:15:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 1939, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4224:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1940, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4232:11:6", + "memberName": "storageRoot", + "nodeType": "MemberAccess", + "referencedDeclaration": 1767, + "src": "4224:19:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 1941, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4265:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1942, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4273:12:6", + "memberName": "mimcCodeHash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1769, + "src": "4265:20:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1943, + "name": "lsb", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "4307:3:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1944, + "name": "msb", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1923, + "src": "4332:3:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 1945, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1917, + "src": "4357:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "id": 1946, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4365:8:6", + "memberName": "codeSize", + "nodeType": "MemberAccess", + "referencedDeclaration": 1773, + "src": "4357:16:6", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 1933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4120:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4124:6:6", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "4120:10:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4120:271:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1931, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "4093:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4098:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "4093:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4093:312:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 1914, + "id": 1949, + "nodeType": "Return", + "src": "4074:331:6" + } + ] + }, + "documentation": { + "id": 1908, + "nodeType": "StructuredDocumentation", + "src": "3624:208:6", + "text": " @notice Hash account value\n @param _value Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n @return {bytes32} Account value hash" + }, + "functionSelector": "8c628e40", + "id": 1951, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hashAccountValue", + "nameLocation": "3846:16:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1911, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1910, + "mutability": "mutable", + "name": "_value", + "nameLocation": "3887:6:6", + "nodeType": "VariableDeclaration", + "scope": 1951, + "src": "3872:21:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1909, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3872:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3862:37:6" + }, + "returnParameters": { + "id": 1914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1913, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1951, + "src": "3923:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1912, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3923:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3922:9:6" + }, + "scope": 2295, + "src": "3837:575:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1976, + "nodeType": "Block", + "src": "4635:121:6", + "statements": [ + { + "assignments": [ + 1960, + 1962 + ], + "declarations": [ + { + "constant": false, + "id": 1960, + "mutability": "mutable", + "name": "msb", + "nameLocation": "4654:3:6", + "nodeType": "VariableDeclaration", + "scope": 1976, + "src": "4646:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1959, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4646:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1962, + "mutability": "mutable", + "name": "lsb", + "nameLocation": "4667:3:6", + "nodeType": "VariableDeclaration", + "scope": 1976, + "src": "4659:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1961, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4659:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 1966, + "initialValue": { + "arguments": [ + { + "id": 1964, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1954, + "src": "4688:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1963, + "name": "_splitBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2047, + "src": "4674:13:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_bytes32_$_t_bytes32_$", + "typeString": "function (bytes32) pure returns (bytes32,bytes32)" + } + }, + "id": 1965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4674:21:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_bytes32_$", + "typeString": "tuple(bytes32,bytes32)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4645:50:6" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 1971, + "name": "lsb", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1962, + "src": "4739:3:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 1972, + "name": "msb", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1960, + "src": "4744:3:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 1969, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4722:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4726:12:6", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "4722:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4722:26:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1967, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "4712:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 1968, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4717:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "4712:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4712:37:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 1958, + "id": 1975, + "nodeType": "Return", + "src": "4705:44:6" + } + ] + }, + "documentation": { + "id": 1952, + "nodeType": "StructuredDocumentation", + "src": "4418:138:6", + "text": " @notice Hash storage value\n @param _value Encoded storage value bytes\n @return {bytes32} Storage value hash" + }, + "functionSelector": "ceeef504", + "id": 1977, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hashStorageValue", + "nameLocation": "4570:16:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1955, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1954, + "mutability": "mutable", + "name": "_value", + "nameLocation": "4595:6:6", + "nodeType": "VariableDeclaration", + "scope": 1977, + "src": "4587:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1953, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4587:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4586:16:6" + }, + "returnParameters": { + "id": 1958, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1957, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1977, + "src": "4626:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1956, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4626:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4625:9:6" + }, + "scope": 2295, + "src": "4561:195:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 2005, + "nodeType": "Block", + "src": "5025:171:6", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1986, + "name": "_encodedLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1980, + "src": "5039:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5052:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5039:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "313238", + "id": 1988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5062:3:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "5039:26:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1997, + "nodeType": "IfStatement", + "src": "5035:106:6", + "trueBody": { + "id": 1996, + "nodeType": "Block", + "src": "5067:74:6", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "hexValue": "313238", + "id": 1991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5105:3:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + { + "expression": { + "id": 1992, + "name": "_encodedLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1980, + "src": "5110:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 1993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5123:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5110:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1990, + "name": "WrongBytesLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1791, + "src": "5088:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 1994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5088:42:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1995, + "nodeType": "RevertStatement", + "src": "5081:49:6" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2000, + "name": "_encodedLeaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1980, + "src": "5168:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 2001, + "name": "Leaf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1784, + "src": "5183:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Leaf_$1784_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Leaf storage pointer)" + } + } + ], + "id": 2002, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5182:6:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Leaf_$1784_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Leaf storage pointer)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_type$_t_struct$_Leaf_$1784_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Leaf storage pointer)" + } + ], + "expression": { + "id": 1998, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5157:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5161:6:6", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "5157:10:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5157:32:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf memory" + } + }, + "functionReturnParameters": 1985, + "id": 2004, + "nodeType": "Return", + "src": "5150:39:6" + } + ] + }, + "documentation": { + "id": 1978, + "nodeType": "StructuredDocumentation", + "src": "4762:160:6", + "text": " @notice Parse leaf value\n @param _encodedLeaf Encoded leaf bytes (prev, next, hKey, hValue)\n @return {Leaf} Formatted leaf struct" + }, + "id": 2006, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_parseLeaf", + "nameLocation": "4936:10:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1981, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1980, + "mutability": "mutable", + "name": "_encodedLeaf", + "nameLocation": "4971:12:6", + "nodeType": "VariableDeclaration", + "scope": 2006, + "src": "4956:27:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1979, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4956:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4946:43:6" + }, + "returnParameters": { + "id": 1985, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1984, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2006, + "src": "5012:11:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_memory_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + }, + "typeName": { + "id": 1983, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1982, + "name": "Leaf", + "nameLocations": [ + "5012:4:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1784, + "src": "5012:4:6" + }, + "referencedDeclaration": 1784, + "src": "5012:4:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Leaf_$1784_storage_ptr", + "typeString": "struct SparseMerkleProof.Leaf" + } + }, + "visibility": "internal" + } + ], + "src": "5011:13:6" + }, + "scope": 2295, + "src": "4927:269:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2034, + "nodeType": "Block", + "src": "5520:156:6", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2015, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2009, + "src": "5534:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5541:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5534:13:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "313932", + "id": 2017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5551:3:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_192_by_1", + "typeString": "int_const 192" + }, + "value": "192" + }, + "src": "5534:20:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2026, + "nodeType": "IfStatement", + "src": "5530:94:6", + "trueBody": { + "id": 2025, + "nodeType": "Block", + "src": "5556:68:6", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "hexValue": "313932", + "id": 2020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5594:3:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_192_by_1", + "typeString": "int_const 192" + }, + "value": "192" + }, + { + "expression": { + "id": 2021, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2009, + "src": "5599:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5606:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5599:13:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_192_by_1", + "typeString": "int_const 192" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2019, + "name": "WrongBytesLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1791, + "src": "5577:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 2023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5577:36:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2024, + "nodeType": "RevertStatement", + "src": "5570:43:6" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2029, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2009, + "src": "5651:6:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 2030, + "name": "Account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1774, + "src": "5660:7:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Account_$1774_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Account storage pointer)" + } + } + ], + "id": 2031, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5659:9:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Account_$1774_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Account storage pointer)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_type$_t_struct$_Account_$1774_storage_ptr_$", + "typeString": "type(struct SparseMerkleProof.Account storage pointer)" + } + ], + "expression": { + "id": 2027, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5640:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5644:6:6", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "5640:10:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5640:29:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account memory" + } + }, + "functionReturnParameters": 2014, + "id": 2033, + "nodeType": "Return", + "src": "5633:36:6" + } + ] + }, + "documentation": { + "id": 2007, + "nodeType": "StructuredDocumentation", + "src": "5202:215:6", + "text": " @notice Parse account value\n @param _value Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\n @return {Account} Formatted account struct" + }, + "id": 2035, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_parseAccount", + "nameLocation": "5431:13:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2010, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2009, + "mutability": "mutable", + "name": "_value", + "nameLocation": "5469:6:6", + "nodeType": "VariableDeclaration", + "scope": 2035, + "src": "5454:21:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2008, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5454:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5444:37:6" + }, + "returnParameters": { + "id": 2014, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2013, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2035, + "src": "5504:14:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_memory_ptr", + "typeString": "struct SparseMerkleProof.Account" + }, + "typeName": { + "id": 2012, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2011, + "name": "Account", + "nameLocations": [ + "5504:7:6" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1774, + "src": "5504:7:6" + }, + "referencedDeclaration": 1774, + "src": "5504:7:6", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Account_$1774_storage_ptr", + "typeString": "struct SparseMerkleProof.Account" + } + }, + "visibility": "internal" + } + ], + "src": "5503:16:6" + }, + "scope": 2295, + "src": "5422:254:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2046, + "nodeType": "Block", + "src": "6012:131:6", + "statements": [ + { + "AST": { + "nativeSrc": "6031:106:6", + "nodeType": "YulBlock", + "src": "6031:106:6", + "statements": [ + { + "nativeSrc": "6045:19:6", + "nodeType": "YulAssignment", + "src": "6045:19:6", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6056:3:6", + "nodeType": "YulLiteral", + "src": "6056:3:6", + "type": "", + "value": "128" + }, + { + "name": "_b", + "nativeSrc": "6061:2:6", + "nodeType": "YulIdentifier", + "src": "6061:2:6" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "6052:3:6", + "nodeType": "YulIdentifier", + "src": "6052:3:6" + }, + "nativeSrc": "6052:12:6", + "nodeType": "YulFunctionCall", + "src": "6052:12:6" + }, + "variableNames": [ + { + "name": "msb", + "nativeSrc": "6045:3:6", + "nodeType": "YulIdentifier", + "src": "6045:3:6" + } + ] + }, + { + "nativeSrc": "6077:50:6", + "nodeType": "YulAssignment", + "src": "6077:50:6", + "value": { + "arguments": [ + { + "name": "_b", + "nativeSrc": "6088:2:6", + "nodeType": "YulIdentifier", + "src": "6088:2:6" + }, + { + "kind": "number", + "nativeSrc": "6092:34:6", + "nodeType": "YulLiteral", + "src": "6092:34:6", + "type": "", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6084:3:6", + "nodeType": "YulIdentifier", + "src": "6084:3:6" + }, + "nativeSrc": "6084:43:6", + "nodeType": "YulFunctionCall", + "src": "6084:43:6" + }, + "variableNames": [ + { + "name": "lsb", + "nativeSrc": "6077:3:6", + "nodeType": "YulIdentifier", + "src": "6077:3:6" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2038, + "isOffset": false, + "isSlot": false, + "src": "6061:2:6", + "valueSize": 1 + }, + { + "declaration": 2038, + "isOffset": false, + "isSlot": false, + "src": "6088:2:6", + "valueSize": 1 + }, + { + "declaration": 2043, + "isOffset": false, + "isSlot": false, + "src": "6077:3:6", + "valueSize": 1 + }, + { + "declaration": 2041, + "isOffset": false, + "isSlot": false, + "src": "6045:3:6", + "valueSize": 1 + } + ], + "id": 2045, + "nodeType": "InlineAssembly", + "src": "6022:115:6" + } + ] + }, + "documentation": { + "id": 2036, + "nodeType": "StructuredDocumentation", + "src": "5682:228:6", + "text": " @notice Split bytes32 into two bytes32 taking most significant bits and least significant bits\n @param _b bytes to split\n @return msb Most significant bits\n @return lsb Least significant bits" + }, + "id": 2047, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_splitBytes32", + "nameLocation": "5924:13:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2038, + "mutability": "mutable", + "name": "_b", + "nameLocation": "5955:2:6", + "nodeType": "VariableDeclaration", + "scope": 2047, + "src": "5947:10:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5947:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5937:26:6" + }, + "returnParameters": { + "id": 2044, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2041, + "mutability": "mutable", + "name": "msb", + "nameLocation": "5994:3:6", + "nodeType": "VariableDeclaration", + "scope": 2047, + "src": "5986:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2040, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5986:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2043, + "mutability": "mutable", + "name": "lsb", + "nameLocation": "6007:3:6", + "nodeType": "VariableDeclaration", + "scope": 2047, + "src": "5999:11:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2042, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5999:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5985:26:6" + }, + "scope": 2295, + "src": "5915:228:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2177, + "nodeType": "Block", + "src": "6459:978:6", + "statements": [ + { + "assignments": [ + 2062 + ], + "declarations": [ + { + "constant": false, + "id": 2062, + "mutability": "mutable", + "name": "rawProofLength", + "nameLocation": "6477:14:6", + "nodeType": "VariableDeclaration", + "scope": 2177, + "src": "6469:22:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2061, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6469:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2065, + "initialValue": { + "expression": { + "id": 2063, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "6494:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6504:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6494:16:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6469:41:6" + }, + { + "assignments": [ + 2067 + ], + "declarations": [ + { + "constant": false, + "id": 2067, + "mutability": "mutable", + "name": "formattedProofLength", + "nameLocation": "6528:20:6", + "nodeType": "VariableDeclaration", + "scope": 2177, + "src": "6520:28:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2066, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6520:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2071, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2068, + "name": "rawProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "6551:14:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "32", + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6568:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "6551:18:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6520:49:6" + }, + { + "assignments": [ + 2076 + ], + "declarations": [ + { + "constant": false, + "id": 2076, + "mutability": "mutable", + "name": "proof", + "nameLocation": "6597:5:6", + "nodeType": "VariableDeclaration", + "scope": 2177, + "src": "6580:22:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 2074, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6580:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2075, + "nodeType": "ArrayTypeName", + "src": "6580:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 2082, + "initialValue": { + "arguments": [ + { + "id": 2080, + "name": "formattedProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "6619:20:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2079, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "6605:13:6", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes32[] memory)" + }, + "typeName": { + "baseType": { + "id": 2077, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6609:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2078, + "nodeType": "ArrayTypeName", + "src": "6609:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + } + }, + "id": 2081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6605:35:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6580:60:6" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 2083, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "6655:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2085, + "indexExpression": { + "hexValue": "30", + "id": 2084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6665:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6655:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6668:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6655:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30783430", + "id": 2087, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6678:4:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "0x40" + }, + "src": "6655:27:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2098, + "nodeType": "IfStatement", + "src": "6651:108:6", + "trueBody": { + "id": 2097, + "nodeType": "Block", + "src": "6684:75:6", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "hexValue": "30783430", + "id": 2090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6722:4:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "0x40" + }, + { + "expression": { + "baseExpression": { + "id": 2091, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "6728:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2093, + "indexExpression": { + "hexValue": "30", + "id": 2092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6738:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6728:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6741:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6728:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2089, + "name": "WrongBytesLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1791, + "src": "6705:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 2095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6705:43:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2096, + "nodeType": "RevertStatement", + "src": "6698:50:6" + } + ] + } + }, + { + "assignments": [ + 2100 + ], + "declarations": [ + { + "constant": false, + "id": 2100, + "mutability": "mutable", + "name": "nextFreeNode", + "nameLocation": "6777:12:6", + "nodeType": "VariableDeclaration", + "scope": 2177, + "src": "6769:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2099, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6769:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 2109, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "id": 2103, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "6800:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2105, + "indexExpression": { + "hexValue": "30", + "id": 2104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6810:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6800:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "endExpression": { + "hexValue": "3332", + "id": 2106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6814:2:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "id": 2107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "6800:17:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + ], + "id": 2102, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6792:7:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 2101, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6792:7:6", + "typeDescriptions": {} + } + }, + "id": 2108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6792:26:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6769:49:6" + }, + { + "assignments": [ + 2111 + ], + "declarations": [ + { + "constant": false, + "id": 2111, + "mutability": "mutable", + "name": "leafHash", + "nameLocation": "6836:8:6", + "nodeType": "VariableDeclaration", + "scope": 2177, + "src": "6828:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2110, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6828:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 2120, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 2114, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "6857:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2118, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2115, + "name": "rawProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "6867:14:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 2116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6884:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6867:18:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6857:29:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 2112, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "6847:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6852:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "6847:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6847:40:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6828:59:6" + }, + { + "body": { + "id": 2145, + "nodeType": "Block", + "src": "6946:141:6", + "statements": [ + { + "expression": { + "id": 2139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2128, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2076, + "src": "6960:5:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 2132, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2129, + "name": "formattedProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "6966:20:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2130, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2122, + "src": "6989:1:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6966:24:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6960:31:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 2135, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "7004:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2137, + "indexExpression": { + "id": 2136, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2122, + "src": "7014:1:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7004:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 2133, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "6994:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6999:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "6994:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6994:23:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6960:57:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2140, + "nodeType": "ExpressionStatement", + "src": "6960:57:6" + }, + { + "id": 2144, + "nodeType": "UncheckedBlock", + "src": "7031:46:6", + "statements": [ + { + "expression": { + "id": 2142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "7059:3:6", + "subExpression": { + "id": 2141, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2122, + "src": "7061:1:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2143, + "nodeType": "ExpressionStatement", + "src": "7059:3:6" + } + ] + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2125, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2122, + "src": "6918:1:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2126, + "name": "formattedProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "6922:20:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6918:24:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2146, + "initializationExpression": { + "assignments": [ + 2122 + ], + "declarations": [ + { + "constant": false, + "id": 2122, + "mutability": "mutable", + "name": "i", + "nameLocation": "6911:1:6", + "nodeType": "VariableDeclaration", + "scope": 2146, + "src": "6903:9:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2121, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6903:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2124, + "initialValue": { + "hexValue": "31", + "id": 2123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6915:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6903:13:6" + }, + "isSimpleCounterLoop": false, + "nodeType": "ForStatement", + "src": "6898:189:6" + }, + { + "condition": { + "arguments": [ + { + "baseExpression": { + "id": 2148, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "7219:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2150, + "indexExpression": { + "id": 2149, + "name": "formattedProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "7229:20:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7219:31:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2147, + "name": "_isZeroBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2203, + "src": "7206:12:6", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bool_$", + "typeString": "function (bytes calldata) pure returns (bool)" + } + }, + "id": 2151, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7206:45:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2170, + "nodeType": "Block", + "src": "7304:78:6", + "statements": [ + { + "expression": { + "id": 2168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2159, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2076, + "src": "7318:5:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 2161, + "indexExpression": { + "hexValue": "30", + "id": 2160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7324:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7318:8:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 2164, + "name": "_rawProof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2051, + "src": "7339:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 2166, + "indexExpression": { + "id": 2165, + "name": "formattedProofLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "7349:20:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7339:31:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 2162, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "7329:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7334:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "7329:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7329:42:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7318:53:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2169, + "nodeType": "ExpressionStatement", + "src": "7318:53:6" + } + ] + }, + "id": 2171, + "nodeType": "IfStatement", + "src": "7202:180:6", + "trueBody": { + "id": 2158, + "nodeType": "Block", + "src": "7253:45:6", + "statements": [ + { + "expression": { + "id": 2156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2152, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2076, + "src": "7267:5:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 2154, + "indexExpression": { + "hexValue": "30", + "id": 2153, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7273:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7267:8:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2155, + "name": "ZERO_HASH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1813, + "src": "7278:9:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7267:20:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2157, + "nodeType": "ExpressionStatement", + "src": "7267:20:6" + } + ] + } + }, + { + "expression": { + "components": [ + { + "id": 2172, + "name": "nextFreeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2100, + "src": "7400:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 2173, + "name": "leafHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2111, + "src": "7414:8:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 2174, + "name": "proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2076, + "src": "7424:5:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "id": 2175, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7399:31:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_bytes32_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32,bytes32,bytes32[] memory)" + } + }, + "functionReturnParameters": 2060, + "id": 2176, + "nodeType": "Return", + "src": "7392:38:6" + } + ] + }, + "documentation": { + "id": 2048, + "nodeType": "StructuredDocumentation", + "src": "6149:183:6", + "text": " @notice Format proof\n @param _rawProof Non formatted proof array\n @return (bytes32, bytes32, bytes32[]) NextFreeNode, leafHash and formatted proof array" + }, + "id": 2178, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_formatProof", + "nameLocation": "6346:12:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2052, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2051, + "mutability": "mutable", + "name": "_rawProof", + "nameLocation": "6385:9:6", + "nodeType": "VariableDeclaration", + "scope": 2178, + "src": "6368:26:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 2049, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6368:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 2050, + "nodeType": "ArrayTypeName", + "src": "6368:7:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "6358:42:6" + }, + "returnParameters": { + "id": 2060, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2054, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2178, + "src": "6423:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2053, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6423:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2056, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2178, + "src": "6432:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2055, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6432:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2059, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2178, + "src": "6441:16:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 2057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6441:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2058, + "nodeType": "ArrayTypeName", + "src": "6441:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "6422:36:6" + }, + "scope": 2295, + "src": "6337:1100:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2202, + "nodeType": "Block", + "src": "7749:584:6", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2186, + "name": "_data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2181, + "src": "7763:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2187, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7769:6:6", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7763:12:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "30783230", + "id": 2188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7778:4:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "0x20" + }, + "src": "7763:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 2190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7786:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7763:24:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2196, + "nodeType": "IfStatement", + "src": "7759:78:6", + "trueBody": { + "id": 2195, + "nodeType": "Block", + "src": "7789:48:6", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2192, + "name": "LengthNotMod32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1794, + "src": "7810:14:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7810:16:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2194, + "nodeType": "RevertStatement", + "src": "7803:23:6" + } + ] + } + }, + { + "expression": { + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2197, + "name": "isZeroBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "7847:11:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 2198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7861:4:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "7847:18:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2200, + "nodeType": "ExpressionStatement", + "src": "7847:18:6" + }, + { + "AST": { + "nativeSrc": "7884:443:6", + "nodeType": "YulBlock", + "src": "7884:443:6", + "statements": [ + { + "nativeSrc": "7898:29:6", + "nodeType": "YulVariableDeclaration", + "src": "7898:29:6", + "value": { + "name": "_data.offset", + "nativeSrc": "7915:12:6", + "nodeType": "YulIdentifier", + "src": "7915:12:6" + }, + "variables": [ + { + "name": "dataStart", + "nativeSrc": "7902:9:6", + "nodeType": "YulTypedName", + "src": "7902:9:6", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8118:199:6", + "nodeType": "YulBlock", + "src": "8118:199:6", + "statements": [ + { + "nativeSrc": "8136:40:6", + "nodeType": "YulVariableDeclaration", + "src": "8136:40:6", + "value": { + "arguments": [ + { + "name": "currentPtr", + "nativeSrc": "8165:10:6", + "nodeType": "YulIdentifier", + "src": "8165:10:6" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8152:12:6", + "nodeType": "YulIdentifier", + "src": "8152:12:6" + }, + "nativeSrc": "8152:24:6", + "nodeType": "YulFunctionCall", + "src": "8152:24:6" + }, + "variables": [ + { + "name": "dataWord", + "nativeSrc": "8140:8:6", + "nodeType": "YulTypedName", + "src": "8140:8:6", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8221:82:6", + "nodeType": "YulBlock", + "src": "8221:82:6", + "statements": [ + { + "nativeSrc": "8243:16:6", + "nodeType": "YulAssignment", + "src": "8243:16:6", + "value": { + "kind": "number", + "nativeSrc": "8258:1:6", + "nodeType": "YulLiteral", + "src": "8258:1:6", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "isZeroBytes", + "nativeSrc": "8243:11:6", + "nodeType": "YulIdentifier", + "src": "8243:11:6" + } + ] + }, + { + "nativeSrc": "8280:5:6", + "nodeType": "YulBreak", + "src": "8280:5:6" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataWord", + "nativeSrc": "8207:8:6", + "nodeType": "YulIdentifier", + "src": "8207:8:6" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8200:6:6", + "nodeType": "YulIdentifier", + "src": "8200:6:6" + }, + "nativeSrc": "8200:16:6", + "nodeType": "YulFunctionCall", + "src": "8200:16:6" + }, + { + "kind": "number", + "nativeSrc": "8218:1:6", + "nodeType": "YulLiteral", + "src": "8218:1:6", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "8197:2:6", + "nodeType": "YulIdentifier", + "src": "8197:2:6" + }, + "nativeSrc": "8197:23:6", + "nodeType": "YulFunctionCall", + "src": "8197:23:6" + }, + "nativeSrc": "8194:109:6", + "nodeType": "YulIf", + "src": "8194:109:6" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "currentPtr", + "nativeSrc": "8008:10:6", + "nodeType": "YulIdentifier", + "src": "8008:10:6" + }, + { + "arguments": [ + { + "name": "dataStart", + "nativeSrc": "8024:9:6", + "nodeType": "YulIdentifier", + "src": "8024:9:6" + }, + { + "name": "_data.length", + "nativeSrc": "8035:12:6", + "nodeType": "YulIdentifier", + "src": "8035:12:6" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8020:3:6", + "nodeType": "YulIdentifier", + "src": "8020:3:6" + }, + "nativeSrc": "8020:28:6", + "nodeType": "YulFunctionCall", + "src": "8020:28:6" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "8005:2:6", + "nodeType": "YulIdentifier", + "src": "8005:2:6" + }, + "nativeSrc": "8005:44:6", + "nodeType": "YulFunctionCall", + "src": "8005:44:6" + }, + "nativeSrc": "7941:376:6", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "8050:67:6", + "nodeType": "YulBlock", + "src": "8050:67:6", + "statements": [ + { + "nativeSrc": "8068:35:6", + "nodeType": "YulAssignment", + "src": "8068:35:6", + "value": { + "arguments": [ + { + "name": "currentPtr", + "nativeSrc": "8086:10:6", + "nodeType": "YulIdentifier", + "src": "8086:10:6" + }, + { + "kind": "number", + "nativeSrc": "8098:4:6", + "nodeType": "YulLiteral", + "src": "8098:4:6", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8082:3:6", + "nodeType": "YulIdentifier", + "src": "8082:3:6" + }, + "nativeSrc": "8082:21:6", + "nodeType": "YulFunctionCall", + "src": "8082:21:6" + }, + "variableNames": [ + { + "name": "currentPtr", + "nativeSrc": "8068:10:6", + "nodeType": "YulIdentifier", + "src": "8068:10:6" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "7945:59:6", + "nodeType": "YulBlock", + "src": "7945:59:6", + "statements": [ + { + "nativeSrc": "7963:27:6", + "nodeType": "YulVariableDeclaration", + "src": "7963:27:6", + "value": { + "name": "dataStart", + "nativeSrc": "7981:9:6", + "nodeType": "YulIdentifier", + "src": "7981:9:6" + }, + "variables": [ + { + "name": "currentPtr", + "nativeSrc": "7967:10:6", + "nodeType": "YulTypedName", + "src": "7967:10:6", + "type": "" + } + ] + } + ] + }, + "src": "7941:376:6" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2181, + "isOffset": false, + "isSlot": false, + "src": "8035:12:6", + "suffix": "length", + "valueSize": 1 + }, + { + "declaration": 2181, + "isOffset": true, + "isSlot": false, + "src": "7915:12:6", + "suffix": "offset", + "valueSize": 1 + }, + { + "declaration": 2184, + "isOffset": false, + "isSlot": false, + "src": "8243:11:6", + "valueSize": 1 + } + ], + "id": 2201, + "nodeType": "InlineAssembly", + "src": "7875:452:6" + } + ] + }, + "documentation": { + "id": 2179, + "nodeType": "StructuredDocumentation", + "src": "7443:203:6", + "text": " @notice Check if bytes contain only zero byte elements\n @param _data Bytes to be checked\n @return isZeroBytes true if bytes contain only zero byte elements, false otherwise" + }, + "id": 2203, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_isZeroBytes", + "nameLocation": "7660:12:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2182, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2181, + "mutability": "mutable", + "name": "_data", + "nameLocation": "7697:5:6", + "nodeType": "VariableDeclaration", + "scope": 2203, + "src": "7682:20:6", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7682:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7672:36:6" + }, + "returnParameters": { + "id": 2185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2184, + "mutability": "mutable", + "name": "isZeroBytes", + "nameLocation": "7736:11:6", + "nodeType": "VariableDeclaration", + "scope": 2203, + "src": "7731:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2183, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7731:4:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7730:18:6" + }, + "scope": 2295, + "src": "7651:682:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2293, + "nodeType": "Block", + "src": "8905:688:6", + "statements": [ + { + "assignments": [ + 2221 + ], + "declarations": [ + { + "constant": false, + "id": 2221, + "mutability": "mutable", + "name": "computedHash", + "nameLocation": "8923:12:6", + "nodeType": "VariableDeclaration", + "scope": 2293, + "src": "8915:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2220, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8915:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 2223, + "initialValue": { + "id": 2222, + "name": "_leafHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2209, + "src": "8938:9:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8915:32:6" + }, + { + "assignments": [ + 2225 + ], + "declarations": [ + { + "constant": false, + "id": 2225, + "mutability": "mutable", + "name": "currentIndex", + "nameLocation": "8965:12:6", + "nodeType": "VariableDeclaration", + "scope": 2293, + "src": "8957:20:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8957:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2227, + "initialValue": { + "id": 2226, + "name": "_leafIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2211, + "src": "8980:10:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8957:33:6" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2230, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2228, + "name": "_leafIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2211, + "src": "9005:10:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2229, + "name": "MAX_TREE_LEAF_INDEX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1820, + "src": "9018:19:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9005:32:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2235, + "nodeType": "IfStatement", + "src": "9001:94:6", + "trueBody": { + "id": 2234, + "nodeType": "Block", + "src": "9039:56:6", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2231, + "name": "MaxTreeLeafIndexExceed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1797, + "src": "9060:22:6", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9060:24:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2233, + "nodeType": "RevertStatement", + "src": "9053:31:6" + } + ] + } + }, + { + "body": { + "id": 2280, + "nodeType": "Block", + "src": "9157:335:6", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2245, + "name": "currentIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2225, + "src": "9176:12:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "id": 2246, + "name": "height", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2237, + "src": "9192:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9176:22:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2248, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "9175:24:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "31", + "id": 2249, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9202:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9175:28:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 2251, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9207:1:6", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9175:33:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "expression": { + "id": 2277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2266, + "name": "computedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2221, + "src": "9371:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 2271, + "name": "computedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2221, + "src": "9434:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "baseExpression": { + "id": 2272, + "name": "_proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2207, + "src": "9448:6:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 2274, + "indexExpression": { + "id": 2273, + "name": "height", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2237, + "src": "9455:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9448:14:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 2269, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9417:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9421:12:6", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "9417:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9417:46:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2267, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "9386:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9391:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "9386:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9386:95:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "9371:110:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2278, + "nodeType": "ExpressionStatement", + "src": "9371:110:6" + }, + "id": 2279, + "nodeType": "IfStatement", + "src": "9171:310:6", + "trueBody": { + "expression": { + "id": 2264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2253, + "name": "computedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2221, + "src": "9226:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "baseExpression": { + "id": 2258, + "name": "_proof", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2207, + "src": "9289:6:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 2260, + "indexExpression": { + "id": 2259, + "name": "height", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2237, + "src": "9296:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9289:14:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 2261, + "name": "computedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2221, + "src": "9305:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 2256, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9272:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9276:12:6", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "9272:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9272:46:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2254, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "9241:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9246:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "9241:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9241:95:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "9226:110:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2265, + "nodeType": "ExpressionStatement", + "src": "9226:110:6" + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2239, + "name": "height", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2237, + "src": "9126:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2240, + "name": "TREE_DEPTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1807, + "src": "9135:10:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9126:19:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2281, + "initializationExpression": { + "assignments": [ + 2237 + ], + "declarations": [ + { + "constant": false, + "id": 2237, + "mutability": "mutable", + "name": "height", + "nameLocation": "9118:6:6", + "nodeType": "VariableDeclaration", + "scope": 2281, + "src": "9110:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2236, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9110:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2238, + "nodeType": "VariableDeclarationStatement", + "src": "9110:14:6" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 2243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "9147:8:6", + "subExpression": { + "id": 2242, + "name": "height", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2237, + "src": "9149:6:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2244, + "nodeType": "ExpressionStatement", + "src": "9147:8:6" + }, + "nodeType": "ForStatement", + "src": "9105:387:6" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2286, + "name": "_nextFreeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2215, + "src": "9548:13:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 2287, + "name": "computedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2221, + "src": "9563:12:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 2284, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9531:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9535:12:6", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "9531:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9531:45:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2282, + "name": "Mimc", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1753, + "src": "9521:4:6", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Mimc_$1753_$", + "typeString": "type(library Mimc)" + } + }, + "id": 2283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9526:4:6", + "memberName": "hash", + "nodeType": "MemberAccess", + "referencedDeclaration": 1752, + "src": "9521:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9521:56:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2290, + "name": "_root", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2213, + "src": "9581:5:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "9521:65:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 2219, + "id": 2292, + "nodeType": "Return", + "src": "9502:84:6" + } + ] + }, + "documentation": { + "id": 2204, + "nodeType": "StructuredDocumentation", + "src": "8339:368:6", + "text": " @notice Computes merkle root from proof and compares it to the provided root\n @param _proof Sparse merkle tree proof\n @param _leafHash Leaf hash\n @param _leafIndex Index of the leaf\n @param _root Sparse merkle root\n @param _nextFreeNode Next free node\n @return If the computed merkle root matches the provided one" + }, + "id": 2294, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_verify", + "nameLocation": "8721:7:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2207, + "mutability": "mutable", + "name": "_proof", + "nameLocation": "8755:6:6", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8738:23:6", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 2205, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8738:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2206, + "nodeType": "ArrayTypeName", + "src": "8738:9:6", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2209, + "mutability": "mutable", + "name": "_leafHash", + "nameLocation": "8779:9:6", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8771:17:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2208, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8771:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2211, + "mutability": "mutable", + "name": "_leafIndex", + "nameLocation": "8806:10:6", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8798:18:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2210, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8798:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2213, + "mutability": "mutable", + "name": "_root", + "nameLocation": "8834:5:6", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8826:13:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2212, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8826:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2215, + "mutability": "mutable", + "name": "_nextFreeNode", + "nameLocation": "8857:13:6", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8849:21:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2214, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8849:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "8728:148:6" + }, + "returnParameters": { + "id": 2219, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2218, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2294, + "src": "8899:4:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2217, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8899:4:6", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8898:6:6" + }, + "scope": 2295, + "src": "8712:881:6", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "scope": 2296, + "src": "283:9312:6", + "usedErrors": [ + 1791, + 1794, + 1797, + 1804 + ], + "usedEvents": [] + } + ], + "src": "37:9559:6" + }, + "id": 6 + }, + "@ensdomains/buffer/contracts/Buffer.sol": { + "ast": { + "absolutePath": "@ensdomains/buffer/contracts/Buffer.sol", + "exportedSymbols": { + "Buffer": [ + 2717 + ] + }, + "id": 2718, + "license": "BSD-2-Clause", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2297, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "41:23:7" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "Buffer", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 2298, + "nodeType": "StructuredDocumentation", + "src": "66:378:7", + "text": " @dev A library for working with mutable byte buffers in Solidity.\n Byte buffers are mutable and expandable, and provide a variety of primitives\n for appending to them. At any time you can fetch a bytes object containing the\n current contents of the buffer. The bytes object should not be stored between\n operations, as it may change due to resizing of the buffer." + }, + "fullyImplemented": true, + "id": 2717, + "linearizedBaseContracts": [ + 2717 + ], + "name": "Buffer", + "nameLocation": "453:6:7", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "Buffer.buffer", + "documentation": { + "id": 2299, + "nodeType": "StructuredDocumentation", + "src": "466:249:7", + "text": " @dev Represents a mutable buffer. Buffers have a current value (buf) and\n a capacity. The capacity may be longer than the current value, in\n which case it can be extended without the need to allocate more memory." + }, + "id": 2304, + "members": [ + { + "constant": false, + "id": 2301, + "mutability": "mutable", + "name": "buf", + "nameLocation": "750:3:7", + "nodeType": "VariableDeclaration", + "scope": 2304, + "src": "744:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2300, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "744:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2303, + "mutability": "mutable", + "name": "capacity", + "nameLocation": "768:8:7", + "nodeType": "VariableDeclaration", + "scope": 2304, + "src": "763:13:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2302, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "763:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "name": "buffer", + "nameLocation": "727:6:7", + "nodeType": "StructDefinition", + "scope": 2717, + "src": "720:63:7", + "visibility": "public" + }, + { + "body": { + "id": 2341, + "nodeType": "Block", + "src": "1105:470:7", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2316, + "name": "capacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2310, + "src": "1119:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "3332", + "id": 2317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1130:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "1119:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 2319, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1136:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1119:18:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2331, + "nodeType": "IfStatement", + "src": "1115:81:7", + "trueBody": { + "id": 2330, + "nodeType": "Block", + "src": "1139:57:7", + "statements": [ + { + "expression": { + "id": 2328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2321, + "name": "capacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2310, + "src": "1153:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 2322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1165:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2323, + "name": "capacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2310, + "src": "1171:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "3332", + "id": 2324, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1182:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "1171:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2326, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1170:15:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1165:20:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1153:32:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2329, + "nodeType": "ExpressionStatement", + "src": "1153:32:7" + } + ] + } + }, + { + "expression": { + "id": 2336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2332, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "1251:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2334, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1255:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "1251:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2335, + "name": "capacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2310, + "src": "1266:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1251:23:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2337, + "nodeType": "ExpressionStatement", + "src": "1251:23:7" + }, + { + "AST": { + "nativeSrc": "1293:256:7", + "nodeType": "YulBlock", + "src": "1293:256:7", + "statements": [ + { + "nativeSrc": "1307:22:7", + "nodeType": "YulVariableDeclaration", + "src": "1307:22:7", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1324:4:7", + "nodeType": "YulLiteral", + "src": "1324:4:7", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1318:5:7", + "nodeType": "YulIdentifier", + "src": "1318:5:7" + }, + "nativeSrc": "1318:11:7", + "nodeType": "YulFunctionCall", + "src": "1318:11:7" + }, + "variables": [ + { + "name": "ptr", + "nativeSrc": "1311:3:7", + "nodeType": "YulTypedName", + "src": "1311:3:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "1349:3:7", + "nodeType": "YulIdentifier", + "src": "1349:3:7" + }, + { + "name": "ptr", + "nativeSrc": "1354:3:7", + "nodeType": "YulIdentifier", + "src": "1354:3:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1342:6:7", + "nodeType": "YulIdentifier", + "src": "1342:6:7" + }, + "nativeSrc": "1342:16:7", + "nodeType": "YulFunctionCall", + "src": "1342:16:7" + }, + "nativeSrc": "1342:16:7", + "nodeType": "YulExpressionStatement", + "src": "1342:16:7" + }, + { + "expression": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "1378:3:7", + "nodeType": "YulIdentifier", + "src": "1378:3:7" + }, + { + "kind": "number", + "nativeSrc": "1383:1:7", + "nodeType": "YulLiteral", + "src": "1383:1:7", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1371:6:7", + "nodeType": "YulIdentifier", + "src": "1371:6:7" + }, + "nativeSrc": "1371:14:7", + "nodeType": "YulFunctionCall", + "src": "1371:14:7" + }, + "nativeSrc": "1371:14:7", + "nodeType": "YulExpressionStatement", + "src": "1371:14:7" + }, + { + "nativeSrc": "1398:38:7", + "nodeType": "YulVariableDeclaration", + "src": "1398:38:7", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1413:2:7", + "nodeType": "YulLiteral", + "src": "1413:2:7", + "type": "", + "value": "32" + }, + { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "1421:3:7", + "nodeType": "YulIdentifier", + "src": "1421:3:7" + }, + { + "name": "capacity", + "nativeSrc": "1426:8:7", + "nodeType": "YulIdentifier", + "src": "1426:8:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1417:3:7", + "nodeType": "YulIdentifier", + "src": "1417:3:7" + }, + "nativeSrc": "1417:18:7", + "nodeType": "YulFunctionCall", + "src": "1417:18:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1409:3:7", + "nodeType": "YulIdentifier", + "src": "1409:3:7" + }, + "nativeSrc": "1409:27:7", + "nodeType": "YulFunctionCall", + "src": "1409:27:7" + }, + "variables": [ + { + "name": "fpm", + "nativeSrc": "1402:3:7", + "nodeType": "YulTypedName", + "src": "1402:3:7", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1465:44:7", + "nodeType": "YulBlock", + "src": "1465:44:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1490:1:7", + "nodeType": "YulLiteral", + "src": "1490:1:7", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1493:1:7", + "nodeType": "YulLiteral", + "src": "1493:1:7", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1483:6:7", + "nodeType": "YulIdentifier", + "src": "1483:6:7" + }, + "nativeSrc": "1483:12:7", + "nodeType": "YulFunctionCall", + "src": "1483:12:7" + }, + "nativeSrc": "1483:12:7", + "nodeType": "YulExpressionStatement", + "src": "1483:12:7" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "fpm", + "nativeSrc": "1455:3:7", + "nodeType": "YulIdentifier", + "src": "1455:3:7" + }, + { + "name": "ptr", + "nativeSrc": "1460:3:7", + "nodeType": "YulIdentifier", + "src": "1460:3:7" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1452:2:7", + "nodeType": "YulIdentifier", + "src": "1452:2:7" + }, + "nativeSrc": "1452:12:7", + "nodeType": "YulFunctionCall", + "src": "1452:12:7" + }, + "nativeSrc": "1449:60:7", + "nodeType": "YulIf", + "src": "1449:60:7" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1529:4:7", + "nodeType": "YulLiteral", + "src": "1529:4:7", + "type": "", + "value": "0x40" + }, + { + "name": "fpm", + "nativeSrc": "1535:3:7", + "nodeType": "YulIdentifier", + "src": "1535:3:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1522:6:7", + "nodeType": "YulIdentifier", + "src": "1522:6:7" + }, + "nativeSrc": "1522:17:7", + "nodeType": "YulFunctionCall", + "src": "1522:17:7" + }, + "nativeSrc": "1522:17:7", + "nodeType": "YulExpressionStatement", + "src": "1522:17:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2308, + "isOffset": false, + "isSlot": false, + "src": "1349:3:7", + "valueSize": 1 + }, + { + "declaration": 2310, + "isOffset": false, + "isSlot": false, + "src": "1426:8:7", + "valueSize": 1 + } + ], + "id": 2338, + "nodeType": "InlineAssembly", + "src": "1284:265:7" + }, + { + "expression": { + "id": 2339, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "1565:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2315, + "id": 2340, + "nodeType": "Return", + "src": "1558:10:7" + } + ] + }, + "documentation": { + "id": 2305, + "nodeType": "StructuredDocumentation", + "src": "789:226:7", + "text": " @dev Initializes a buffer with an initial capacity.\n @param buf The buffer to initialize.\n @param capacity The number of bytes of space to allocate the buffer.\n @return The buffer, for chaining." + }, + "id": 2342, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "init", + "nameLocation": "1029:4:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2311, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2308, + "mutability": "mutable", + "name": "buf", + "nameLocation": "1048:3:7", + "nodeType": "VariableDeclaration", + "scope": 2342, + "src": "1034:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2307, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2306, + "name": "buffer", + "nameLocations": [ + "1034:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "1034:6:7" + }, + "referencedDeclaration": 2304, + "src": "1034:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2310, + "mutability": "mutable", + "name": "capacity", + "nameLocation": "1058:8:7", + "nodeType": "VariableDeclaration", + "scope": 2342, + "src": "1053:13:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2309, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1053:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1033:34:7" + }, + "returnParameters": { + "id": 2315, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2314, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2342, + "src": "1090:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2313, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2312, + "name": "buffer", + "nameLocations": [ + "1090:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "1090:6:7" + }, + "referencedDeclaration": 2304, + "src": "1090:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "1089:15:7" + }, + "scope": 2717, + "src": "1020:555:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2370, + "nodeType": "Block", + "src": "1890:108:7", + "statements": [ + { + "assignments": [ + 2353 + ], + "declarations": [ + { + "constant": false, + "id": 2353, + "mutability": "mutable", + "name": "buf", + "nameLocation": "1914:3:7", + "nodeType": "VariableDeclaration", + "scope": 2370, + "src": "1900:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2352, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2351, + "name": "buffer", + "nameLocations": [ + "1900:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "1900:6:7" + }, + "referencedDeclaration": 2304, + "src": "1900:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "id": 2354, + "nodeType": "VariableDeclarationStatement", + "src": "1900:17:7" + }, + { + "expression": { + "id": 2359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2355, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2353, + "src": "1927:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2357, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1931:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "1927:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2358, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2345, + "src": "1937:1:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "1927:11:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2360, + "nodeType": "ExpressionStatement", + "src": "1927:11:7" + }, + { + "expression": { + "id": 2366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2361, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2353, + "src": "1948:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2363, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1952:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "1948:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 2364, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2345, + "src": "1963:1:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1965:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1963:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1948:23:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2367, + "nodeType": "ExpressionStatement", + "src": "1948:23:7" + }, + { + "expression": { + "id": 2368, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2353, + "src": "1988:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2350, + "id": 2369, + "nodeType": "Return", + "src": "1981:10:7" + } + ] + }, + "documentation": { + "id": 2343, + "nodeType": "StructuredDocumentation", + "src": "1581:232:7", + "text": " @dev Initializes a new buffer from an existing bytes object.\n Changes to the buffer may mutate the original value.\n @param b The bytes object to initialize the buffer with.\n @return A new buffer." + }, + "id": 2371, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fromBytes", + "nameLocation": "1827:9:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2346, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2345, + "mutability": "mutable", + "name": "b", + "nameLocation": "1850:1:7", + "nodeType": "VariableDeclaration", + "scope": 2371, + "src": "1837:14:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2344, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1837:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1836:16:7" + }, + "returnParameters": { + "id": 2350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2349, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2371, + "src": "1875:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2348, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2347, + "name": "buffer", + "nameLocations": [ + "1875:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "1875:6:7" + }, + "referencedDeclaration": 2304, + "src": "1875:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "1874:15:7" + }, + "scope": 2717, + "src": "1818:180:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2394, + "nodeType": "Block", + "src": "2067:104:7", + "statements": [ + { + "assignments": [ + 2380 + ], + "declarations": [ + { + "constant": false, + "id": 2380, + "mutability": "mutable", + "name": "oldbuf", + "nameLocation": "2090:6:7", + "nodeType": "VariableDeclaration", + "scope": 2394, + "src": "2077:19:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2379, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2077:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2383, + "initialValue": { + "expression": { + "id": 2381, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2374, + "src": "2099:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2382, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2103:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "2099:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2077:29:7" + }, + { + "expression": { + "arguments": [ + { + "id": 2385, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2374, + "src": "2121:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "id": 2386, + "name": "capacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2376, + "src": "2126:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2384, + "name": "init", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2342, + "src": "2116:4:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_uint256_$returns$_t_struct$_buffer_$2304_memory_ptr_$", + "typeString": "function (struct Buffer.buffer memory,uint256) pure returns (struct Buffer.buffer memory)" + } + }, + "id": 2387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2116:19:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2388, + "nodeType": "ExpressionStatement", + "src": "2116:19:7" + }, + { + "expression": { + "arguments": [ + { + "id": 2390, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2374, + "src": "2152:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "id": 2391, + "name": "oldbuf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2380, + "src": "2157:6:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2389, + "name": "append", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2497, + 2517, + 2623 + ], + "referencedDeclaration": 2517, + "src": "2145:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_struct$_buffer_$2304_memory_ptr_$", + "typeString": "function (struct Buffer.buffer memory,bytes memory) pure returns (struct Buffer.buffer memory)" + } + }, + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2145:19:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2393, + "nodeType": "ExpressionStatement", + "src": "2145:19:7" + } + ] + }, + "id": 2395, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "resize", + "nameLocation": "2013:6:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2377, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2374, + "mutability": "mutable", + "name": "buf", + "nameLocation": "2034:3:7", + "nodeType": "VariableDeclaration", + "scope": 2395, + "src": "2020:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2373, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2372, + "name": "buffer", + "nameLocations": [ + "2020:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "2020:6:7" + }, + "referencedDeclaration": 2304, + "src": "2020:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2376, + "mutability": "mutable", + "name": "capacity", + "nameLocation": "2044:8:7", + "nodeType": "VariableDeclaration", + "scope": 2395, + "src": "2039:13:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2375, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2039:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2019:34:7" + }, + "returnParameters": { + "id": 2378, + "nodeType": "ParameterList", + "parameters": [], + "src": "2067:0:7" + }, + "scope": 2717, + "src": "2004:167:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2408, + "nodeType": "Block", + "src": "2394:123:7", + "statements": [ + { + "AST": { + "nativeSrc": "2413:78:7", + "nodeType": "YulBlock", + "src": "2413:78:7", + "statements": [ + { + "nativeSrc": "2427:24:7", + "nodeType": "YulVariableDeclaration", + "src": "2427:24:7", + "value": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "2447:3:7", + "nodeType": "YulIdentifier", + "src": "2447:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2441:5:7", + "nodeType": "YulIdentifier", + "src": "2441:5:7" + }, + "nativeSrc": "2441:10:7", + "nodeType": "YulFunctionCall", + "src": "2441:10:7" + }, + "variables": [ + { + "name": "bufptr", + "nativeSrc": "2431:6:7", + "nodeType": "YulTypedName", + "src": "2431:6:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "2471:6:7", + "nodeType": "YulIdentifier", + "src": "2471:6:7" + }, + { + "kind": "number", + "nativeSrc": "2479:1:7", + "nodeType": "YulLiteral", + "src": "2479:1:7", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2464:6:7", + "nodeType": "YulIdentifier", + "src": "2464:6:7" + }, + "nativeSrc": "2464:17:7", + "nodeType": "YulFunctionCall", + "src": "2464:17:7" + }, + "nativeSrc": "2464:17:7", + "nodeType": "YulExpressionStatement", + "src": "2464:17:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2399, + "isOffset": false, + "isSlot": false, + "src": "2447:3:7", + "valueSize": 1 + } + ], + "id": 2405, + "nodeType": "InlineAssembly", + "src": "2404:87:7" + }, + { + "expression": { + "id": 2406, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2399, + "src": "2507:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2404, + "id": 2407, + "nodeType": "Return", + "src": "2500:10:7" + } + ] + }, + "documentation": { + "id": 2396, + "nodeType": "StructuredDocumentation", + "src": "2177:137:7", + "text": " @dev Sets buffer length to 0.\n @param buf The buffer to truncate.\n @return The original buffer, for chaining.." + }, + "id": 2409, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "truncate", + "nameLocation": "2328:8:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2400, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2399, + "mutability": "mutable", + "name": "buf", + "nameLocation": "2351:3:7", + "nodeType": "VariableDeclaration", + "scope": 2409, + "src": "2337:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2398, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2397, + "name": "buffer", + "nameLocations": [ + "2337:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "2337:6:7" + }, + "referencedDeclaration": 2304, + "src": "2337:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "2336:19:7" + }, + "returnParameters": { + "id": 2404, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2403, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2409, + "src": "2379:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2402, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2401, + "name": "buffer", + "nameLocations": [ + "2379:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "2379:6:7" + }, + "referencedDeclaration": 2304, + "src": "2379:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "2378:15:7" + }, + "scope": 2717, + "src": "2319:198:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2496, + "nodeType": "Block", + "src": "2945:1326:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2424, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "2963:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 2425, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "2970:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2975:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2970:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2963:18:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2423, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2955:7:7", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2955:27:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2429, + "nodeType": "ExpressionStatement", + "src": "2955:27:7" + }, + { + "assignments": [ + 2431 + ], + "declarations": [ + { + "constant": false, + "id": 2431, + "mutability": "mutable", + "name": "off", + "nameLocation": "2998:3:7", + "nodeType": "VariableDeclaration", + "scope": 2496, + "src": "2993:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2430, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2993:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2435, + "initialValue": { + "expression": { + "expression": { + "id": 2432, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "3004:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2433, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3008:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "3004:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3012:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3004:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2993:25:7" + }, + { + "assignments": [ + 2437 + ], + "declarations": [ + { + "constant": false, + "id": 2437, + "mutability": "mutable", + "name": "newCapacity", + "nameLocation": "3033:11:7", + "nodeType": "VariableDeclaration", + "scope": 2496, + "src": "3028:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2436, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3028:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2441, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2438, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2431, + "src": "3047:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2439, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "3053:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3047:9:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3028:28:7" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2442, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2437, + "src": "3070:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 2443, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "3084:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2444, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3088:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "3084:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3070:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2454, + "nodeType": "IfStatement", + "src": "3066:85:7", + "trueBody": { + "id": 2453, + "nodeType": "Block", + "src": "3098:53:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2447, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "3119:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2448, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2437, + "src": "3124:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 2449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3138:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "3124:15:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2446, + "name": "resize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2395, + "src": "3112:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (struct Buffer.buffer memory,uint256) pure" + } + }, + "id": 2451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3112:28:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2452, + "nodeType": "ExpressionStatement", + "src": "3112:28:7" + } + ] + } + }, + { + "assignments": [ + 2456 + ], + "declarations": [ + { + "constant": false, + "id": 2456, + "mutability": "mutable", + "name": "dest", + "nameLocation": "3166:4:7", + "nodeType": "VariableDeclaration", + "scope": 2496, + "src": "3161:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2455, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3161:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2457, + "nodeType": "VariableDeclarationStatement", + "src": "3161:9:7" + }, + { + "assignments": [ + 2459 + ], + "declarations": [ + { + "constant": false, + "id": 2459, + "mutability": "mutable", + "name": "src", + "nameLocation": "3185:3:7", + "nodeType": "VariableDeclaration", + "scope": 2496, + "src": "3180:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2458, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3180:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2460, + "nodeType": "VariableDeclarationStatement", + "src": "3180:8:7" + }, + { + "AST": { + "nativeSrc": "3207:498:7", + "nodeType": "YulBlock", + "src": "3207:498:7", + "statements": [ + { + "nativeSrc": "3270:24:7", + "nodeType": "YulVariableDeclaration", + "src": "3270:24:7", + "value": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "3290:3:7", + "nodeType": "YulIdentifier", + "src": "3290:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3284:5:7", + "nodeType": "YulIdentifier", + "src": "3284:5:7" + }, + "nativeSrc": "3284:10:7", + "nodeType": "YulFunctionCall", + "src": "3284:10:7" + }, + "variables": [ + { + "name": "bufptr", + "nativeSrc": "3274:6:7", + "nodeType": "YulTypedName", + "src": "3274:6:7", + "type": "" + } + ] + }, + { + "nativeSrc": "3353:27:7", + "nodeType": "YulVariableDeclaration", + "src": "3353:27:7", + "value": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "3373:6:7", + "nodeType": "YulIdentifier", + "src": "3373:6:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3367:5:7", + "nodeType": "YulIdentifier", + "src": "3367:5:7" + }, + "nativeSrc": "3367:13:7", + "nodeType": "YulFunctionCall", + "src": "3367:13:7" + }, + "variables": [ + { + "name": "buflen", + "nativeSrc": "3357:6:7", + "nodeType": "YulTypedName", + "src": "3357:6:7", + "type": "" + } + ] + }, + { + "nativeSrc": "3472:33:7", + "nodeType": "YulAssignment", + "src": "3472:33:7", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "3488:6:7", + "nodeType": "YulIdentifier", + "src": "3488:6:7" + }, + { + "kind": "number", + "nativeSrc": "3496:2:7", + "nodeType": "YulLiteral", + "src": "3496:2:7", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3484:3:7", + "nodeType": "YulIdentifier", + "src": "3484:3:7" + }, + "nativeSrc": "3484:15:7", + "nodeType": "YulFunctionCall", + "src": "3484:15:7" + }, + { + "name": "off", + "nativeSrc": "3501:3:7", + "nodeType": "YulIdentifier", + "src": "3501:3:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3480:3:7", + "nodeType": "YulIdentifier", + "src": "3480:3:7" + }, + "nativeSrc": "3480:25:7", + "nodeType": "YulFunctionCall", + "src": "3480:25:7" + }, + "variableNames": [ + { + "name": "dest", + "nativeSrc": "3472:4:7", + "nodeType": "YulIdentifier", + "src": "3472:4:7" + } + ] + }, + { + "body": { + "nativeSrc": "3603:59:7", + "nodeType": "YulBlock", + "src": "3603:59:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "3628:6:7", + "nodeType": "YulIdentifier", + "src": "3628:6:7" + }, + { + "name": "newCapacity", + "nativeSrc": "3636:11:7", + "nodeType": "YulIdentifier", + "src": "3636:11:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3621:6:7", + "nodeType": "YulIdentifier", + "src": "3621:6:7" + }, + "nativeSrc": "3621:27:7", + "nodeType": "YulFunctionCall", + "src": "3621:27:7" + }, + "nativeSrc": "3621:27:7", + "nodeType": "YulExpressionStatement", + "src": "3621:27:7" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newCapacity", + "nativeSrc": "3582:11:7", + "nodeType": "YulIdentifier", + "src": "3582:11:7" + }, + { + "name": "buflen", + "nativeSrc": "3595:6:7", + "nodeType": "YulIdentifier", + "src": "3595:6:7" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3579:2:7", + "nodeType": "YulIdentifier", + "src": "3579:2:7" + }, + "nativeSrc": "3579:23:7", + "nodeType": "YulFunctionCall", + "src": "3579:23:7" + }, + "nativeSrc": "3576:86:7", + "nodeType": "YulIf", + "src": "3576:86:7" + }, + { + "nativeSrc": "3675:20:7", + "nodeType": "YulAssignment", + "src": "3675:20:7", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3686:4:7", + "nodeType": "YulIdentifier", + "src": "3686:4:7" + }, + { + "kind": "number", + "nativeSrc": "3692:2:7", + "nodeType": "YulLiteral", + "src": "3692:2:7", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3682:3:7", + "nodeType": "YulIdentifier", + "src": "3682:3:7" + }, + "nativeSrc": "3682:13:7", + "nodeType": "YulFunctionCall", + "src": "3682:13:7" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "3675:3:7", + "nodeType": "YulIdentifier", + "src": "3675:3:7" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2413, + "isOffset": false, + "isSlot": false, + "src": "3290:3:7", + "valueSize": 1 + }, + { + "declaration": 2415, + "isOffset": false, + "isSlot": false, + "src": "3686:4:7", + "valueSize": 1 + }, + { + "declaration": 2456, + "isOffset": false, + "isSlot": false, + "src": "3472:4:7", + "valueSize": 1 + }, + { + "declaration": 2437, + "isOffset": false, + "isSlot": false, + "src": "3582:11:7", + "valueSize": 1 + }, + { + "declaration": 2437, + "isOffset": false, + "isSlot": false, + "src": "3636:11:7", + "valueSize": 1 + }, + { + "declaration": 2431, + "isOffset": false, + "isSlot": false, + "src": "3501:3:7", + "valueSize": 1 + }, + { + "declaration": 2459, + "isOffset": false, + "isSlot": false, + "src": "3675:3:7", + "valueSize": 1 + } + ], + "id": 2461, + "nodeType": "InlineAssembly", + "src": "3198:507:7" + }, + { + "body": { + "id": 2478, + "nodeType": "Block", + "src": "3794:136:7", + "statements": [ + { + "AST": { + "nativeSrc": "3817:56:7", + "nodeType": "YulBlock", + "src": "3817:56:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "3842:4:7", + "nodeType": "YulIdentifier", + "src": "3842:4:7" + }, + { + "arguments": [ + { + "name": "src", + "nativeSrc": "3854:3:7", + "nodeType": "YulIdentifier", + "src": "3854:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3848:5:7", + "nodeType": "YulIdentifier", + "src": "3848:5:7" + }, + "nativeSrc": "3848:10:7", + "nodeType": "YulFunctionCall", + "src": "3848:10:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3835:6:7", + "nodeType": "YulIdentifier", + "src": "3835:6:7" + }, + "nativeSrc": "3835:24:7", + "nodeType": "YulFunctionCall", + "src": "3835:24:7" + }, + "nativeSrc": "3835:24:7", + "nodeType": "YulExpressionStatement", + "src": "3835:24:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2456, + "isOffset": false, + "isSlot": false, + "src": "3842:4:7", + "valueSize": 1 + }, + { + "declaration": 2459, + "isOffset": false, + "isSlot": false, + "src": "3854:3:7", + "valueSize": 1 + } + ], + "id": 2469, + "nodeType": "InlineAssembly", + "src": "3808:65:7" + }, + { + "expression": { + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2470, + "name": "dest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3886:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 2471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3894:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3886:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2473, + "nodeType": "ExpressionStatement", + "src": "3886:10:7" + }, + { + "expression": { + "id": 2476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2474, + "name": "src", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2459, + "src": "3910:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 2475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3917:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3910:9:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2477, + "nodeType": "ExpressionStatement", + "src": "3910:9:7" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2462, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "3772:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 2463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3779:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3772:9:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2479, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 2467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2465, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "3783:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "3332", + "id": 2466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3790:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "3783:9:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2468, + "nodeType": "ExpressionStatement", + "src": "3783:9:7" + }, + "nodeType": "ForStatement", + "src": "3765:165:7" + }, + { + "id": 2493, + "nodeType": "UncheckedBlock", + "src": "3972:272:7", + "statements": [ + { + "assignments": [ + 2481 + ], + "declarations": [ + { + "constant": false, + "id": 2481, + "mutability": "mutable", + "name": "mask", + "nameLocation": "4001:4:7", + "nodeType": "VariableDeclaration", + "scope": 2493, + "src": "3996:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2480, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3996:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2491, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 2482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4009:3:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 2483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4017:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2484, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "4022:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4017:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2486, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4016:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4009:17:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2488, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4008:19:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 2489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4030:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4008:23:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3996:35:7" + }, + { + "AST": { + "nativeSrc": "4054:180:7", + "nodeType": "YulBlock", + "src": "4054:180:7", + "statements": [ + { + "nativeSrc": "4072:41:7", + "nodeType": "YulVariableDeclaration", + "src": "4072:41:7", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "4097:3:7", + "nodeType": "YulIdentifier", + "src": "4097:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4091:5:7", + "nodeType": "YulIdentifier", + "src": "4091:5:7" + }, + "nativeSrc": "4091:10:7", + "nodeType": "YulFunctionCall", + "src": "4091:10:7" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "4107:4:7", + "nodeType": "YulIdentifier", + "src": "4107:4:7" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "4103:3:7", + "nodeType": "YulIdentifier", + "src": "4103:3:7" + }, + "nativeSrc": "4103:9:7", + "nodeType": "YulFunctionCall", + "src": "4103:9:7" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4087:3:7", + "nodeType": "YulIdentifier", + "src": "4087:3:7" + }, + "nativeSrc": "4087:26:7", + "nodeType": "YulFunctionCall", + "src": "4087:26:7" + }, + "variables": [ + { + "name": "srcpart", + "nativeSrc": "4076:7:7", + "nodeType": "YulTypedName", + "src": "4076:7:7", + "type": "" + } + ] + }, + { + "nativeSrc": "4130:38:7", + "nodeType": "YulVariableDeclaration", + "src": "4130:38:7", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "dest", + "nativeSrc": "4156:4:7", + "nodeType": "YulIdentifier", + "src": "4156:4:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4150:5:7", + "nodeType": "YulIdentifier", + "src": "4150:5:7" + }, + "nativeSrc": "4150:11:7", + "nodeType": "YulFunctionCall", + "src": "4150:11:7" + }, + { + "name": "mask", + "nativeSrc": "4163:4:7", + "nodeType": "YulIdentifier", + "src": "4163:4:7" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4146:3:7", + "nodeType": "YulIdentifier", + "src": "4146:3:7" + }, + "nativeSrc": "4146:22:7", + "nodeType": "YulFunctionCall", + "src": "4146:22:7" + }, + "variables": [ + { + "name": "destpart", + "nativeSrc": "4134:8:7", + "nodeType": "YulTypedName", + "src": "4134:8:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "4192:4:7", + "nodeType": "YulIdentifier", + "src": "4192:4:7" + }, + { + "arguments": [ + { + "name": "destpart", + "nativeSrc": "4201:8:7", + "nodeType": "YulIdentifier", + "src": "4201:8:7" + }, + { + "name": "srcpart", + "nativeSrc": "4211:7:7", + "nodeType": "YulIdentifier", + "src": "4211:7:7" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "4198:2:7", + "nodeType": "YulIdentifier", + "src": "4198:2:7" + }, + "nativeSrc": "4198:21:7", + "nodeType": "YulFunctionCall", + "src": "4198:21:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4185:6:7", + "nodeType": "YulIdentifier", + "src": "4185:6:7" + }, + "nativeSrc": "4185:35:7", + "nodeType": "YulFunctionCall", + "src": "4185:35:7" + }, + "nativeSrc": "4185:35:7", + "nodeType": "YulExpressionStatement", + "src": "4185:35:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2456, + "isOffset": false, + "isSlot": false, + "src": "4156:4:7", + "valueSize": 1 + }, + { + "declaration": 2456, + "isOffset": false, + "isSlot": false, + "src": "4192:4:7", + "valueSize": 1 + }, + { + "declaration": 2481, + "isOffset": false, + "isSlot": false, + "src": "4107:4:7", + "valueSize": 1 + }, + { + "declaration": 2481, + "isOffset": false, + "isSlot": false, + "src": "4163:4:7", + "valueSize": 1 + }, + { + "declaration": 2459, + "isOffset": false, + "isSlot": false, + "src": "4097:3:7", + "valueSize": 1 + } + ], + "id": 2492, + "nodeType": "InlineAssembly", + "src": "4045:189:7" + } + ] + }, + { + "expression": { + "id": 2494, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "4261:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2422, + "id": 2495, + "nodeType": "Return", + "src": "4254:10:7" + } + ] + }, + "documentation": { + "id": 2410, + "nodeType": "StructuredDocumentation", + "src": "2523:316:7", + "text": " @dev Appends len bytes of a byte string to a buffer. Resizes if doing so would exceed\n the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @param len The number of bytes to copy.\n @return The original buffer, for chaining." + }, + "id": 2497, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "append", + "nameLocation": "2853:6:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2418, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2413, + "mutability": "mutable", + "name": "buf", + "nameLocation": "2874:3:7", + "nodeType": "VariableDeclaration", + "scope": 2497, + "src": "2860:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2412, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2411, + "name": "buffer", + "nameLocations": [ + "2860:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "2860:6:7" + }, + "referencedDeclaration": 2304, + "src": "2860:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "data", + "nameLocation": "2892:4:7", + "nodeType": "VariableDeclaration", + "scope": 2497, + "src": "2879:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2414, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2879:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2417, + "mutability": "mutable", + "name": "len", + "nameLocation": "2903:3:7", + "nodeType": "VariableDeclaration", + "scope": 2497, + "src": "2898:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2416, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2898:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2859:48:7" + }, + "returnParameters": { + "id": 2422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2421, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2497, + "src": "2930:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2420, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2419, + "name": "buffer", + "nameLocations": [ + "2930:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "2930:6:7" + }, + "referencedDeclaration": 2304, + "src": "2930:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "2929:15:7" + }, + "scope": 2717, + "src": "2844:1427:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2516, + "nodeType": "Block", + "src": "4631:54:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2510, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2501, + "src": "4655:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "id": 2511, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "4660:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "id": 2512, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "4666:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4671:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4666:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2509, + "name": "append", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2497, + 2517, + 2623 + ], + "referencedDeclaration": 2497, + "src": "4648:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_struct$_buffer_$2304_memory_ptr_$", + "typeString": "function (struct Buffer.buffer memory,bytes memory,uint256) pure returns (struct Buffer.buffer memory)" + } + }, + "id": 2514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4648:30:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2508, + "id": 2515, + "nodeType": "Return", + "src": "4641:37:7" + } + ] + }, + "documentation": { + "id": 2498, + "nodeType": "StructuredDocumentation", + "src": "4277:257:7", + "text": " @dev Appends a byte string to a buffer. Resizes if doing so would exceed\n the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @return The original buffer, for chaining." + }, + "id": 2517, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "append", + "nameLocation": "4548:6:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2504, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2501, + "mutability": "mutable", + "name": "buf", + "nameLocation": "4569:3:7", + "nodeType": "VariableDeclaration", + "scope": 2517, + "src": "4555:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2500, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2499, + "name": "buffer", + "nameLocations": [ + "4555:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "4555:6:7" + }, + "referencedDeclaration": 2304, + "src": "4555:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2503, + "mutability": "mutable", + "name": "data", + "nameLocation": "4587:4:7", + "nodeType": "VariableDeclaration", + "scope": 2517, + "src": "4574:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4574:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4554:38:7" + }, + "returnParameters": { + "id": 2508, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2507, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2517, + "src": "4616:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2506, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2505, + "name": "buffer", + "nameLocations": [ + "4616:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "4616:6:7" + }, + "referencedDeclaration": 2304, + "src": "4616:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "4615:15:7" + }, + "scope": 2717, + "src": "4539:146:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2557, + "nodeType": "Block", + "src": "5037:610:7", + "statements": [ + { + "assignments": [ + 2530 + ], + "declarations": [ + { + "constant": false, + "id": 2530, + "mutability": "mutable", + "name": "off", + "nameLocation": "5052:3:7", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "5047:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2529, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5047:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2534, + "initialValue": { + "expression": { + "expression": { + "id": 2531, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "5058:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2532, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5062:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "5058:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5066:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5058:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5047:25:7" + }, + { + "assignments": [ + 2536 + ], + "declarations": [ + { + "constant": false, + "id": 2536, + "mutability": "mutable", + "name": "offPlusOne", + "nameLocation": "5087:10:7", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "5082:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2535, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5082:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2540, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2537, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2530, + "src": "5100:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5106:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5100:7:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5082:25:7" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2541, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2530, + "src": "5121:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "expression": { + "id": 2542, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "5128:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2543, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5132:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "5128:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5121:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2553, + "nodeType": "IfStatement", + "src": "5117:77:7", + "trueBody": { + "id": 2552, + "nodeType": "Block", + "src": "5142:52:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2546, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "5163:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2547, + "name": "offPlusOne", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2536, + "src": "5168:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 2548, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5181:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "5168:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2545, + "name": "resize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2395, + "src": "5156:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (struct Buffer.buffer memory,uint256) pure" + } + }, + "id": 2550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5156:27:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2551, + "nodeType": "ExpressionStatement", + "src": "5156:27:7" + } + ] + } + }, + { + "AST": { + "nativeSrc": "5213:407:7", + "nodeType": "YulBlock", + "src": "5213:407:7", + "statements": [ + { + "nativeSrc": "5276:24:7", + "nodeType": "YulVariableDeclaration", + "src": "5276:24:7", + "value": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "5296:3:7", + "nodeType": "YulIdentifier", + "src": "5296:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5290:5:7", + "nodeType": "YulIdentifier", + "src": "5290:5:7" + }, + "nativeSrc": "5290:10:7", + "nodeType": "YulFunctionCall", + "src": "5290:10:7" + }, + "variables": [ + { + "name": "bufptr", + "nativeSrc": "5280:6:7", + "nodeType": "YulTypedName", + "src": "5280:6:7", + "type": "" + } + ] + }, + { + "nativeSrc": "5383:37:7", + "nodeType": "YulVariableDeclaration", + "src": "5383:37:7", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "5403:6:7", + "nodeType": "YulIdentifier", + "src": "5403:6:7" + }, + { + "name": "off", + "nativeSrc": "5411:3:7", + "nodeType": "YulIdentifier", + "src": "5411:3:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5399:3:7", + "nodeType": "YulIdentifier", + "src": "5399:3:7" + }, + "nativeSrc": "5399:16:7", + "nodeType": "YulFunctionCall", + "src": "5399:16:7" + }, + { + "kind": "number", + "nativeSrc": "5417:2:7", + "nodeType": "YulLiteral", + "src": "5417:2:7", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5395:3:7", + "nodeType": "YulIdentifier", + "src": "5395:3:7" + }, + "nativeSrc": "5395:25:7", + "nodeType": "YulFunctionCall", + "src": "5395:25:7" + }, + "variables": [ + { + "name": "dest", + "nativeSrc": "5387:4:7", + "nodeType": "YulTypedName", + "src": "5387:4:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "5441:4:7", + "nodeType": "YulIdentifier", + "src": "5441:4:7" + }, + { + "name": "data", + "nativeSrc": "5447:4:7", + "nodeType": "YulIdentifier", + "src": "5447:4:7" + } + ], + "functionName": { + "name": "mstore8", + "nativeSrc": "5433:7:7", + "nodeType": "YulIdentifier", + "src": "5433:7:7" + }, + "nativeSrc": "5433:19:7", + "nodeType": "YulFunctionCall", + "src": "5433:19:7" + }, + "nativeSrc": "5433:19:7", + "nodeType": "YulExpressionStatement", + "src": "5433:19:7" + }, + { + "body": { + "nativeSrc": "5552:58:7", + "nodeType": "YulBlock", + "src": "5552:58:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "5577:6:7", + "nodeType": "YulIdentifier", + "src": "5577:6:7" + }, + { + "name": "offPlusOne", + "nativeSrc": "5585:10:7", + "nodeType": "YulIdentifier", + "src": "5585:10:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5570:6:7", + "nodeType": "YulIdentifier", + "src": "5570:6:7" + }, + "nativeSrc": "5570:26:7", + "nodeType": "YulFunctionCall", + "src": "5570:26:7" + }, + "nativeSrc": "5570:26:7", + "nodeType": "YulExpressionStatement", + "src": "5570:26:7" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offPlusOne", + "nativeSrc": "5525:10:7", + "nodeType": "YulIdentifier", + "src": "5525:10:7" + }, + { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "5543:6:7", + "nodeType": "YulIdentifier", + "src": "5543:6:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5537:5:7", + "nodeType": "YulIdentifier", + "src": "5537:5:7" + }, + "nativeSrc": "5537:13:7", + "nodeType": "YulFunctionCall", + "src": "5537:13:7" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5522:2:7", + "nodeType": "YulIdentifier", + "src": "5522:2:7" + }, + "nativeSrc": "5522:29:7", + "nodeType": "YulFunctionCall", + "src": "5522:29:7" + }, + "nativeSrc": "5519:91:7", + "nodeType": "YulIf", + "src": "5519:91:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2521, + "isOffset": false, + "isSlot": false, + "src": "5296:3:7", + "valueSize": 1 + }, + { + "declaration": 2523, + "isOffset": false, + "isSlot": false, + "src": "5447:4:7", + "valueSize": 1 + }, + { + "declaration": 2530, + "isOffset": false, + "isSlot": false, + "src": "5411:3:7", + "valueSize": 1 + }, + { + "declaration": 2536, + "isOffset": false, + "isSlot": false, + "src": "5525:10:7", + "valueSize": 1 + }, + { + "declaration": 2536, + "isOffset": false, + "isSlot": false, + "src": "5585:10:7", + "valueSize": 1 + } + ], + "id": 2554, + "nodeType": "InlineAssembly", + "src": "5204:416:7" + }, + { + "expression": { + "id": 2555, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "5637:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2528, + "id": 2556, + "nodeType": "Return", + "src": "5630:10:7" + } + ] + }, + "documentation": { + "id": 2518, + "nodeType": "StructuredDocumentation", + "src": "4691:252:7", + "text": " @dev Appends a byte to the buffer. Resizes if doing so would exceed the\n capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @return The original buffer, for chaining." + }, + "id": 2558, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "appendUint8", + "nameLocation": "4957:11:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2524, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2521, + "mutability": "mutable", + "name": "buf", + "nameLocation": "4983:3:7", + "nodeType": "VariableDeclaration", + "scope": 2558, + "src": "4969:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2520, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2519, + "name": "buffer", + "nameLocations": [ + "4969:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "4969:6:7" + }, + "referencedDeclaration": 2304, + "src": "4969:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2523, + "mutability": "mutable", + "name": "data", + "nameLocation": "4994:4:7", + "nodeType": "VariableDeclaration", + "scope": 2558, + "src": "4988:10:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2522, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "4988:5:7", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "4968:31:7" + }, + "returnParameters": { + "id": 2528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2527, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2558, + "src": "5022:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2526, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2525, + "name": "buffer", + "nameLocations": [ + "5022:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "5022:6:7" + }, + "referencedDeclaration": 2304, + "src": "5022:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "5021:15:7" + }, + "scope": 2717, + "src": "4948:699:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2622, + "nodeType": "Block", + "src": "6079:854:7", + "statements": [ + { + "assignments": [ + 2573 + ], + "declarations": [ + { + "constant": false, + "id": 2573, + "mutability": "mutable", + "name": "off", + "nameLocation": "6094:3:7", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "6089:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2572, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6089:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2577, + "initialValue": { + "expression": { + "expression": { + "id": 2574, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2562, + "src": "6100:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2575, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6104:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "6100:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6108:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6100:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6089:25:7" + }, + { + "assignments": [ + 2579 + ], + "declarations": [ + { + "constant": false, + "id": 2579, + "mutability": "mutable", + "name": "newCapacity", + "nameLocation": "6129:11:7", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "6124:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2578, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6124:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2583, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2580, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2566, + "src": "6143:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2581, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2573, + "src": "6149:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6143:9:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6124:28:7" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2587, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2584, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2579, + "src": "6166:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 2585, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2562, + "src": "6180:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2586, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6184:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "6180:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6166:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2596, + "nodeType": "IfStatement", + "src": "6162:85:7", + "trueBody": { + "id": 2595, + "nodeType": "Block", + "src": "6194:53:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2589, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2562, + "src": "6215:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2590, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2579, + "src": "6220:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 2591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6234:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "6220:15:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2588, + "name": "resize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2395, + "src": "6208:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (struct Buffer.buffer memory,uint256) pure" + } + }, + "id": 2593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6208:28:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2594, + "nodeType": "ExpressionStatement", + "src": "6208:28:7" + } + ] + } + }, + { + "id": 2619, + "nodeType": "UncheckedBlock", + "src": "6257:650:7", + "statements": [ + { + "assignments": [ + 2598 + ], + "declarations": [ + { + "constant": false, + "id": 2598, + "mutability": "mutable", + "name": "mask", + "nameLocation": "6286:4:7", + "nodeType": "VariableDeclaration", + "scope": 2619, + "src": "6281:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2597, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6281:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2605, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 2599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6294:3:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "id": 2600, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2566, + "src": "6301:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6294:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2602, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6293:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 2603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6308:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6293:16:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6281:28:7" + }, + { + "expression": { + "id": 2616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2606, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2564, + "src": "6355:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2607, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2564, + "src": "6362:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "38", + "id": 2608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6371:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 2609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6376:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2610, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2566, + "src": "6381:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6376:8:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2612, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6375:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6371:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2614, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6370:16:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6362:24:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6355:31:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 2617, + "nodeType": "ExpressionStatement", + "src": "6355:31:7" + }, + { + "AST": { + "nativeSrc": "6409:488:7", + "nodeType": "YulBlock", + "src": "6409:488:7", + "statements": [ + { + "nativeSrc": "6480:24:7", + "nodeType": "YulVariableDeclaration", + "src": "6480:24:7", + "value": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "6500:3:7", + "nodeType": "YulIdentifier", + "src": "6500:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6494:5:7", + "nodeType": "YulIdentifier", + "src": "6494:5:7" + }, + "nativeSrc": "6494:10:7", + "nodeType": "YulFunctionCall", + "src": "6494:10:7" + }, + "variables": [ + { + "name": "bufptr", + "nativeSrc": "6484:6:7", + "nodeType": "YulTypedName", + "src": "6484:6:7", + "type": "" + } + ] + }, + { + "nativeSrc": "6603:36:7", + "nodeType": "YulVariableDeclaration", + "src": "6603:36:7", + "value": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "6619:6:7", + "nodeType": "YulIdentifier", + "src": "6619:6:7" + }, + { + "name": "newCapacity", + "nativeSrc": "6627:11:7", + "nodeType": "YulIdentifier", + "src": "6627:11:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6615:3:7", + "nodeType": "YulIdentifier", + "src": "6615:3:7" + }, + "nativeSrc": "6615:24:7", + "nodeType": "YulFunctionCall", + "src": "6615:24:7" + }, + "variables": [ + { + "name": "dest", + "nativeSrc": "6607:4:7", + "nodeType": "YulTypedName", + "src": "6607:4:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "6663:4:7", + "nodeType": "YulIdentifier", + "src": "6663:4:7" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "dest", + "nativeSrc": "6682:4:7", + "nodeType": "YulIdentifier", + "src": "6682:4:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6676:5:7", + "nodeType": "YulIdentifier", + "src": "6676:5:7" + }, + "nativeSrc": "6676:11:7", + "nodeType": "YulFunctionCall", + "src": "6676:11:7" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "6693:4:7", + "nodeType": "YulIdentifier", + "src": "6693:4:7" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6689:3:7", + "nodeType": "YulIdentifier", + "src": "6689:3:7" + }, + "nativeSrc": "6689:9:7", + "nodeType": "YulFunctionCall", + "src": "6689:9:7" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6672:3:7", + "nodeType": "YulIdentifier", + "src": "6672:3:7" + }, + "nativeSrc": "6672:27:7", + "nodeType": "YulFunctionCall", + "src": "6672:27:7" + }, + { + "name": "data", + "nativeSrc": "6701:4:7", + "nodeType": "YulIdentifier", + "src": "6701:4:7" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "6669:2:7", + "nodeType": "YulIdentifier", + "src": "6669:2:7" + }, + "nativeSrc": "6669:37:7", + "nodeType": "YulFunctionCall", + "src": "6669:37:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6656:6:7", + "nodeType": "YulIdentifier", + "src": "6656:6:7" + }, + "nativeSrc": "6656:51:7", + "nodeType": "YulFunctionCall", + "src": "6656:51:7" + }, + "nativeSrc": "6656:51:7", + "nodeType": "YulExpressionStatement", + "src": "6656:51:7" + }, + { + "body": { + "nativeSrc": "6816:67:7", + "nodeType": "YulBlock", + "src": "6816:67:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "6845:6:7", + "nodeType": "YulIdentifier", + "src": "6845:6:7" + }, + { + "name": "newCapacity", + "nativeSrc": "6853:11:7", + "nodeType": "YulIdentifier", + "src": "6853:11:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6838:6:7", + "nodeType": "YulIdentifier", + "src": "6838:6:7" + }, + "nativeSrc": "6838:27:7", + "nodeType": "YulFunctionCall", + "src": "6838:27:7" + }, + "nativeSrc": "6838:27:7", + "nodeType": "YulExpressionStatement", + "src": "6838:27:7" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newCapacity", + "nativeSrc": "6788:11:7", + "nodeType": "YulIdentifier", + "src": "6788:11:7" + }, + { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "6807:6:7", + "nodeType": "YulIdentifier", + "src": "6807:6:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6801:5:7", + "nodeType": "YulIdentifier", + "src": "6801:5:7" + }, + "nativeSrc": "6801:13:7", + "nodeType": "YulFunctionCall", + "src": "6801:13:7" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6785:2:7", + "nodeType": "YulIdentifier", + "src": "6785:2:7" + }, + "nativeSrc": "6785:30:7", + "nodeType": "YulFunctionCall", + "src": "6785:30:7" + }, + "nativeSrc": "6782:101:7", + "nodeType": "YulIf", + "src": "6782:101:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2562, + "isOffset": false, + "isSlot": false, + "src": "6500:3:7", + "valueSize": 1 + }, + { + "declaration": 2564, + "isOffset": false, + "isSlot": false, + "src": "6701:4:7", + "valueSize": 1 + }, + { + "declaration": 2598, + "isOffset": false, + "isSlot": false, + "src": "6693:4:7", + "valueSize": 1 + }, + { + "declaration": 2579, + "isOffset": false, + "isSlot": false, + "src": "6627:11:7", + "valueSize": 1 + }, + { + "declaration": 2579, + "isOffset": false, + "isSlot": false, + "src": "6788:11:7", + "valueSize": 1 + }, + { + "declaration": 2579, + "isOffset": false, + "isSlot": false, + "src": "6853:11:7", + "valueSize": 1 + } + ], + "id": 2618, + "nodeType": "InlineAssembly", + "src": "6400:497:7" + } + ] + }, + { + "expression": { + "id": 2620, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2562, + "src": "6923:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2571, + "id": 2621, + "nodeType": "Return", + "src": "6916:10:7" + } + ] + }, + "documentation": { + "id": 2559, + "nodeType": "StructuredDocumentation", + "src": "5653:326:7", + "text": " @dev Appends len bytes of bytes32 to a buffer. Resizes if doing so would\n exceed the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @param len The number of bytes to write (left-aligned).\n @return The original buffer, for chaining." + }, + "id": 2623, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "append", + "nameLocation": "5993:6:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2567, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2562, + "mutability": "mutable", + "name": "buf", + "nameLocation": "6014:3:7", + "nodeType": "VariableDeclaration", + "scope": 2623, + "src": "6000:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2561, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2560, + "name": "buffer", + "nameLocations": [ + "6000:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "6000:6:7" + }, + "referencedDeclaration": 2304, + "src": "6000:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2564, + "mutability": "mutable", + "name": "data", + "nameLocation": "6027:4:7", + "nodeType": "VariableDeclaration", + "scope": 2623, + "src": "6019:12:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2563, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6019:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2566, + "mutability": "mutable", + "name": "len", + "nameLocation": "6038:3:7", + "nodeType": "VariableDeclaration", + "scope": 2623, + "src": "6033:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2565, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6033:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5999:43:7" + }, + "returnParameters": { + "id": 2571, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2570, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2623, + "src": "6064:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2569, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2568, + "name": "buffer", + "nameLocations": [ + "6064:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "6064:6:7" + }, + "referencedDeclaration": 2304, + "src": "6064:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "6063:15:7" + }, + "scope": 2717, + "src": "5984:949:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2644, + "nodeType": "Block", + "src": "7294:54:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2636, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2627, + "src": "7318:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "arguments": [ + { + "id": 2639, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2629, + "src": "7331:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "id": 2638, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7323:7:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 2637, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7323:7:7", + "typeDescriptions": {} + } + }, + "id": 2640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7323:13:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "hexValue": "3230", + "id": 2641, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7338:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + } + ], + "id": 2635, + "name": "append", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2497, + 2517, + 2623 + ], + "referencedDeclaration": 2623, + "src": "7311:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_bytes32_$_t_uint256_$returns$_t_struct$_buffer_$2304_memory_ptr_$", + "typeString": "function (struct Buffer.buffer memory,bytes32,uint256) pure returns (struct Buffer.buffer memory)" + } + }, + "id": 2642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7311:30:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2634, + "id": 2643, + "nodeType": "Return", + "src": "7304:37:7" + } + ] + }, + "documentation": { + "id": 2624, + "nodeType": "StructuredDocumentation", + "src": "6939:256:7", + "text": " @dev Appends a bytes20 to the buffer. Resizes if doing so would exceed\n the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @return The original buffer, for chhaining." + }, + "id": 2645, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "appendBytes20", + "nameLocation": "7209:13:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2630, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2627, + "mutability": "mutable", + "name": "buf", + "nameLocation": "7237:3:7", + "nodeType": "VariableDeclaration", + "scope": 2645, + "src": "7223:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2626, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2625, + "name": "buffer", + "nameLocations": [ + "7223:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "7223:6:7" + }, + "referencedDeclaration": 2304, + "src": "7223:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2629, + "mutability": "mutable", + "name": "data", + "nameLocation": "7250:4:7", + "nodeType": "VariableDeclaration", + "scope": 2645, + "src": "7242:12:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 2628, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "7242:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "src": "7222:33:7" + }, + "returnParameters": { + "id": 2634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2633, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2645, + "src": "7279:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2632, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2631, + "name": "buffer", + "nameLocations": [ + "7279:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "7279:6:7" + }, + "referencedDeclaration": 2304, + "src": "7279:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "7278:15:7" + }, + "scope": 2717, + "src": "7200:148:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2663, + "nodeType": "Block", + "src": "7708:45:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2658, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2649, + "src": "7732:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "id": 2659, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2651, + "src": "7737:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "hexValue": "3332", + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7743:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + } + ], + "id": 2657, + "name": "append", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2497, + 2517, + 2623 + ], + "referencedDeclaration": 2623, + "src": "7725:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_bytes32_$_t_uint256_$returns$_t_struct$_buffer_$2304_memory_ptr_$", + "typeString": "function (struct Buffer.buffer memory,bytes32,uint256) pure returns (struct Buffer.buffer memory)" + } + }, + "id": 2661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7725:21:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2656, + "id": 2662, + "nodeType": "Return", + "src": "7718:28:7" + } + ] + }, + "documentation": { + "id": 2646, + "nodeType": "StructuredDocumentation", + "src": "7354:255:7", + "text": " @dev Appends a bytes32 to the buffer. Resizes if doing so would exceed\n the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @return The original buffer, for chaining." + }, + "id": 2664, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "appendBytes32", + "nameLocation": "7623:13:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2652, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2649, + "mutability": "mutable", + "name": "buf", + "nameLocation": "7651:3:7", + "nodeType": "VariableDeclaration", + "scope": 2664, + "src": "7637:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2648, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2647, + "name": "buffer", + "nameLocations": [ + "7637:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "7637:6:7" + }, + "referencedDeclaration": 2304, + "src": "7637:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2651, + "mutability": "mutable", + "name": "data", + "nameLocation": "7664:4:7", + "nodeType": "VariableDeclaration", + "scope": 2664, + "src": "7656:12:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2650, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7656:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "7636:33:7" + }, + "returnParameters": { + "id": 2656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2655, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2664, + "src": "7693:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2654, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2653, + "name": "buffer", + "nameLocations": [ + "7693:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "7693:6:7" + }, + "referencedDeclaration": 2304, + "src": "7693:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "7692:15:7" + }, + "scope": 2717, + "src": "7614:139:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2715, + "nodeType": "Block", + "src": "8179:699:7", + "statements": [ + { + "assignments": [ + 2679 + ], + "declarations": [ + { + "constant": false, + "id": 2679, + "mutability": "mutable", + "name": "off", + "nameLocation": "8194:3:7", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8189:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2678, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8189:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2683, + "initialValue": { + "expression": { + "expression": { + "id": 2680, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2668, + "src": "8200:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2681, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8204:3:7", + "memberName": "buf", + "nodeType": "MemberAccess", + "referencedDeclaration": 2301, + "src": "8200:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8208:6:7", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8200:14:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8189:25:7" + }, + { + "assignments": [ + 2685 + ], + "declarations": [ + { + "constant": false, + "id": 2685, + "mutability": "mutable", + "name": "newCapacity", + "nameLocation": "8229:11:7", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8224:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2684, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8224:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2689, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2686, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2672, + "src": "8243:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2687, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2679, + "src": "8249:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8243:9:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8224:28:7" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2690, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2685, + "src": "8266:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 2691, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2668, + "src": "8280:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "id": 2692, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8284:8:7", + "memberName": "capacity", + "nodeType": "MemberAccess", + "referencedDeclaration": 2303, + "src": "8280:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8266:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2702, + "nodeType": "IfStatement", + "src": "8262:85:7", + "trueBody": { + "id": 2701, + "nodeType": "Block", + "src": "8294:53:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2695, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2668, + "src": "8315:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2696, + "name": "newCapacity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2685, + "src": "8320:11:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 2697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8334:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "8320:15:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2694, + "name": "resize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2395, + "src": "8308:6:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_buffer_$2304_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (struct Buffer.buffer memory,uint256) pure" + } + }, + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8308:28:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2700, + "nodeType": "ExpressionStatement", + "src": "8308:28:7" + } + ] + } + }, + { + "assignments": [ + 2704 + ], + "declarations": [ + { + "constant": false, + "id": 2704, + "mutability": "mutable", + "name": "mask", + "nameLocation": "8362:4:7", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8357:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2703, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8357:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2711, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8370:3:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "id": 2706, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2672, + "src": "8377:3:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8370:10:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2708, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8369:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 2709, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8384:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8369:16:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8357:28:7" + }, + { + "AST": { + "nativeSrc": "8404:448:7", + "nodeType": "YulBlock", + "src": "8404:448:7", + "statements": [ + { + "nativeSrc": "8467:24:7", + "nodeType": "YulVariableDeclaration", + "src": "8467:24:7", + "value": { + "arguments": [ + { + "name": "buf", + "nativeSrc": "8487:3:7", + "nodeType": "YulIdentifier", + "src": "8487:3:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8481:5:7", + "nodeType": "YulIdentifier", + "src": "8481:5:7" + }, + "nativeSrc": "8481:10:7", + "nodeType": "YulFunctionCall", + "src": "8481:10:7" + }, + "variables": [ + { + "name": "bufptr", + "nativeSrc": "8471:6:7", + "nodeType": "YulTypedName", + "src": "8471:6:7", + "type": "" + } + ] + }, + { + "nativeSrc": "8582:36:7", + "nodeType": "YulVariableDeclaration", + "src": "8582:36:7", + "value": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "8598:6:7", + "nodeType": "YulIdentifier", + "src": "8598:6:7" + }, + { + "name": "newCapacity", + "nativeSrc": "8606:11:7", + "nodeType": "YulIdentifier", + "src": "8606:11:7" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8594:3:7", + "nodeType": "YulIdentifier", + "src": "8594:3:7" + }, + "nativeSrc": "8594:24:7", + "nodeType": "YulFunctionCall", + "src": "8594:24:7" + }, + "variables": [ + { + "name": "dest", + "nativeSrc": "8586:4:7", + "nodeType": "YulTypedName", + "src": "8586:4:7", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "8638:4:7", + "nodeType": "YulIdentifier", + "src": "8638:4:7" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "dest", + "nativeSrc": "8657:4:7", + "nodeType": "YulIdentifier", + "src": "8657:4:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8651:5:7", + "nodeType": "YulIdentifier", + "src": "8651:5:7" + }, + "nativeSrc": "8651:11:7", + "nodeType": "YulFunctionCall", + "src": "8651:11:7" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "8668:4:7", + "nodeType": "YulIdentifier", + "src": "8668:4:7" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "8664:3:7", + "nodeType": "YulIdentifier", + "src": "8664:3:7" + }, + "nativeSrc": "8664:9:7", + "nodeType": "YulFunctionCall", + "src": "8664:9:7" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "8647:3:7", + "nodeType": "YulIdentifier", + "src": "8647:3:7" + }, + "nativeSrc": "8647:27:7", + "nodeType": "YulFunctionCall", + "src": "8647:27:7" + }, + { + "name": "data", + "nativeSrc": "8676:4:7", + "nodeType": "YulIdentifier", + "src": "8676:4:7" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "8644:2:7", + "nodeType": "YulIdentifier", + "src": "8644:2:7" + }, + "nativeSrc": "8644:37:7", + "nodeType": "YulFunctionCall", + "src": "8644:37:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8631:6:7", + "nodeType": "YulIdentifier", + "src": "8631:6:7" + }, + "nativeSrc": "8631:51:7", + "nodeType": "YulFunctionCall", + "src": "8631:51:7" + }, + "nativeSrc": "8631:51:7", + "nodeType": "YulExpressionStatement", + "src": "8631:51:7" + }, + { + "body": { + "nativeSrc": "8783:59:7", + "nodeType": "YulBlock", + "src": "8783:59:7", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "8808:6:7", + "nodeType": "YulIdentifier", + "src": "8808:6:7" + }, + { + "name": "newCapacity", + "nativeSrc": "8816:11:7", + "nodeType": "YulIdentifier", + "src": "8816:11:7" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8801:6:7", + "nodeType": "YulIdentifier", + "src": "8801:6:7" + }, + "nativeSrc": "8801:27:7", + "nodeType": "YulFunctionCall", + "src": "8801:27:7" + }, + "nativeSrc": "8801:27:7", + "nodeType": "YulExpressionStatement", + "src": "8801:27:7" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newCapacity", + "nativeSrc": "8755:11:7", + "nodeType": "YulIdentifier", + "src": "8755:11:7" + }, + { + "arguments": [ + { + "name": "bufptr", + "nativeSrc": "8774:6:7", + "nodeType": "YulIdentifier", + "src": "8774:6:7" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8768:5:7", + "nodeType": "YulIdentifier", + "src": "8768:5:7" + }, + "nativeSrc": "8768:13:7", + "nodeType": "YulFunctionCall", + "src": "8768:13:7" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8752:2:7", + "nodeType": "YulIdentifier", + "src": "8752:2:7" + }, + "nativeSrc": "8752:30:7", + "nodeType": "YulFunctionCall", + "src": "8752:30:7" + }, + "nativeSrc": "8749:93:7", + "nodeType": "YulIf", + "src": "8749:93:7" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 2668, + "isOffset": false, + "isSlot": false, + "src": "8487:3:7", + "valueSize": 1 + }, + { + "declaration": 2670, + "isOffset": false, + "isSlot": false, + "src": "8676:4:7", + "valueSize": 1 + }, + { + "declaration": 2704, + "isOffset": false, + "isSlot": false, + "src": "8668:4:7", + "valueSize": 1 + }, + { + "declaration": 2685, + "isOffset": false, + "isSlot": false, + "src": "8606:11:7", + "valueSize": 1 + }, + { + "declaration": 2685, + "isOffset": false, + "isSlot": false, + "src": "8755:11:7", + "valueSize": 1 + }, + { + "declaration": 2685, + "isOffset": false, + "isSlot": false, + "src": "8816:11:7", + "valueSize": 1 + } + ], + "id": 2712, + "nodeType": "InlineAssembly", + "src": "8395:457:7" + }, + { + "expression": { + "id": 2713, + "name": "buf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2668, + "src": "8868:3:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer memory" + } + }, + "functionReturnParameters": 2677, + "id": 2714, + "nodeType": "Return", + "src": "8861:10:7" + } + ] + }, + "documentation": { + "id": 2665, + "nodeType": "StructuredDocumentation", + "src": "7759:319:7", + "text": " @dev Appends a byte to the end of the buffer. Resizes if doing so would\n exceed the capacity of the buffer.\n @param buf The buffer to append to.\n @param data The data to append.\n @param len The number of bytes to write (right-aligned).\n @return The original buffer." + }, + "id": 2716, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "appendInt", + "nameLocation": "8092:9:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2673, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2668, + "mutability": "mutable", + "name": "buf", + "nameLocation": "8116:3:7", + "nodeType": "VariableDeclaration", + "scope": 2716, + "src": "8102:17:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2667, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2666, + "name": "buffer", + "nameLocations": [ + "8102:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "8102:6:7" + }, + "referencedDeclaration": 2304, + "src": "8102:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2670, + "mutability": "mutable", + "name": "data", + "nameLocation": "8126:4:7", + "nodeType": "VariableDeclaration", + "scope": 2716, + "src": "8121:9:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2669, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8121:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2672, + "mutability": "mutable", + "name": "len", + "nameLocation": "8137:3:7", + "nodeType": "VariableDeclaration", + "scope": 2716, + "src": "8132:8:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2671, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8132:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8101:40:7" + }, + "returnParameters": { + "id": 2677, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2676, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2716, + "src": "8164:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_memory_ptr", + "typeString": "struct Buffer.buffer" + }, + "typeName": { + "id": 2675, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2674, + "name": "buffer", + "nameLocations": [ + "8164:6:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2304, + "src": "8164:6:7" + }, + "referencedDeclaration": 2304, + "src": "8164:6:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_buffer_$2304_storage_ptr", + "typeString": "struct Buffer.buffer" + } + }, + "visibility": "internal" + } + ], + "src": "8163:15:7" + }, + "scope": 2717, + "src": "8083:795:7", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 2718, + "src": "445:8435:7", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "41:8840:7" + }, + "id": 7 + }, + "@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol", + "exportedSymbols": { + "Buffer": [ + 2717 + ], + "BytesUtils": [ + 8609 + ], + "RRUtils": [ + 3816 + ] + }, + "id": 3817, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2719, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "31:23:8" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol", + "file": "../utils/BytesUtils.sol", + "id": 2720, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 3817, + "sourceUnit": 8610, + "src": "56:33:8", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/buffer/contracts/Buffer.sol", + "file": "@ensdomains/buffer/contracts/Buffer.sol", + "id": 2721, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 3817, + "sourceUnit": 2718, + "src": "90:49:8", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "RRUtils", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 2722, + "nodeType": "StructuredDocumentation", + "src": "141:94:8", + "text": " @dev RRUtils is a library that provides utilities for parsing DNS resource records." + }, + "fullyImplemented": true, + "id": 3816, + "linearizedBaseContracts": [ + 3816 + ], + "name": "RRUtils", + "nameLocation": "244:7:8", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 2724, + "libraryName": { + "id": 2723, + "name": "BytesUtils", + "nameLocations": [ + "264:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8609, + "src": "264:10:8" + }, + "nodeType": "UsingForDirective", + "src": "258:23:8" + }, + { + "global": false, + "id": 2726, + "libraryName": { + "id": 2725, + "name": "Buffer", + "nameLocations": [ + "292:6:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2717, + "src": "292:6:8" + }, + "nodeType": "UsingForDirective", + "src": "286:19:8" + }, + { + "body": { + "id": 2773, + "nodeType": "Block", + "src": "688:293:8", + "statements": [ + { + "assignments": [ + 2737 + ], + "declarations": [ + { + "constant": false, + "id": 2737, + "mutability": "mutable", + "name": "idx", + "nameLocation": "706:3:8", + "nodeType": "VariableDeclaration", + "scope": 2773, + "src": "698:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2736, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "698:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2739, + "initialValue": { + "id": 2738, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2731, + "src": "712:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "698:20:8" + }, + { + "body": { + "id": 2767, + "nodeType": "Block", + "src": "741:205:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2742, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2737, + "src": "762:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 2743, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2729, + "src": "768:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "773:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "768:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "762:17:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2741, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "755:6:8", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "755:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2747, + "nodeType": "ExpressionStatement", + "src": "755:25:8" + }, + { + "assignments": [ + 2749 + ], + "declarations": [ + { + "constant": false, + "id": 2749, + "mutability": "mutable", + "name": "labelLen", + "nameLocation": "802:8:8", + "nodeType": "VariableDeclaration", + "scope": 2767, + "src": "794:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2748, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "794:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2754, + "initialValue": { + "arguments": [ + { + "id": 2752, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2737, + "src": "828:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2750, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2729, + "src": "813:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "818:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "813:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 2753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "813:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "794:38:8" + }, + { + "expression": { + "id": 2759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2755, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2737, + "src": "846:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2756, + "name": "labelLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2749, + "src": "853:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "864:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "853:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "846:19:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2760, + "nodeType": "ExpressionStatement", + "src": "846:19:8" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2761, + "name": "labelLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2749, + "src": "883:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2762, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "895:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "883:13:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2766, + "nodeType": "IfStatement", + "src": "879:57:8", + "trueBody": { + "id": 2765, + "nodeType": "Block", + "src": "898:38:8", + "statements": [ + { + "id": 2764, + "nodeType": "Break", + "src": "916:5:8" + } + ] + } + } + ] + }, + "condition": { + "hexValue": "74727565", + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "735:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "id": 2768, + "nodeType": "WhileStatement", + "src": "728:218:8" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2769, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2737, + "src": "962:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2770, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2731, + "src": "968:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "962:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2735, + "id": 2772, + "nodeType": "Return", + "src": "955:19:8" + } + ] + }, + "documentation": { + "id": 2727, + "nodeType": "StructuredDocumentation", + "src": "311:263:8", + "text": " @dev Returns the number of bytes in the DNS name at 'offset' in 'self'.\n @param self The byte array to read a name from.\n @param offset The offset to start reading at.\n @return The length of the DNS name at 'offset', in bytes." + }, + "id": 2774, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "nameLength", + "nameLocation": "588:10:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2729, + "mutability": "mutable", + "name": "self", + "nameLocation": "621:4:8", + "nodeType": "VariableDeclaration", + "scope": 2774, + "src": "608:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2728, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "608:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2731, + "mutability": "mutable", + "name": "offset", + "nameLocation": "643:6:8", + "nodeType": "VariableDeclaration", + "scope": 2774, + "src": "635:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2730, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "635:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "598:57:8" + }, + "returnParameters": { + "id": 2735, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2734, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2774, + "src": "679:7:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2733, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "679:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "678:9:8" + }, + "scope": 3816, + "src": "579:402:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2797, + "nodeType": "Block", + "src": "1327:99:8", + "statements": [ + { + "assignments": [ + 2785 + ], + "declarations": [ + { + "constant": false, + "id": 2785, + "mutability": "mutable", + "name": "len", + "nameLocation": "1345:3:8", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1337:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2784, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1337:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2790, + "initialValue": { + "arguments": [ + { + "id": 2787, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2777, + "src": "1362:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2788, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2779, + "src": "1368:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2786, + "name": "nameLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2774, + "src": "1351:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 2789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1351:24:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1337:38:8" + }, + { + "expression": { + "arguments": [ + { + "id": 2793, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2779, + "src": "1407:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2794, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2785, + "src": "1415:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2791, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2777, + "src": "1392:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2792, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1397:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "1392:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 2795, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1392:27:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2783, + "id": 2796, + "nodeType": "Return", + "src": "1385:34:8" + } + ] + }, + "documentation": { + "id": 2775, + "nodeType": "StructuredDocumentation", + "src": "987:219:8", + "text": " @dev Returns a DNS format name at the specified offset of self.\n @param self The byte array to read a name from.\n @param offset The offset to start reading at.\n @return ret The name." + }, + "id": 2798, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readName", + "nameLocation": "1220:8:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2780, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2777, + "mutability": "mutable", + "name": "self", + "nameLocation": "1251:4:8", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "1238:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2776, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1238:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2779, + "mutability": "mutable", + "name": "offset", + "nameLocation": "1273:6:8", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "1265:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2778, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1265:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1228:57:8" + }, + "returnParameters": { + "id": 2783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2782, + "mutability": "mutable", + "name": "ret", + "nameLocation": "1322:3:8", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "1309:16:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2781, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1309:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1308:18:8" + }, + "scope": 3816, + "src": "1211:215:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2847, + "nodeType": "Block", + "src": "1820:316:8", + "statements": [ + { + "assignments": [ + 2809 + ], + "declarations": [ + { + "constant": false, + "id": 2809, + "mutability": "mutable", + "name": "count", + "nameLocation": "1838:5:8", + "nodeType": "VariableDeclaration", + "scope": 2847, + "src": "1830:13:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2808, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1830:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2811, + "initialValue": { + "hexValue": "30", + "id": 2810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1846:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1830:17:8" + }, + { + "body": { + "id": 2843, + "nodeType": "Block", + "src": "1870:238:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2814, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2803, + "src": "1891:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 2815, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2801, + "src": "1900:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1905:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1900:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1891:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2813, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "1884:6:8", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1884:28:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2819, + "nodeType": "ExpressionStatement", + "src": "1884:28:8" + }, + { + "assignments": [ + 2821 + ], + "declarations": [ + { + "constant": false, + "id": 2821, + "mutability": "mutable", + "name": "labelLen", + "nameLocation": "1934:8:8", + "nodeType": "VariableDeclaration", + "scope": 2843, + "src": "1926:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2820, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1926:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2826, + "initialValue": { + "arguments": [ + { + "id": 2824, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2803, + "src": "1960:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2822, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2801, + "src": "1945:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1950:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "1945:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1945:22:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1926:41:8" + }, + { + "expression": { + "id": 2831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2827, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2803, + "src": "1981:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2830, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2828, + "name": "labelLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2821, + "src": "1991:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2002:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1991:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1981:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2832, + "nodeType": "ExpressionStatement", + "src": "1981:22:8" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2833, + "name": "labelLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2821, + "src": "2021:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2033:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2021:13:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2838, + "nodeType": "IfStatement", + "src": "2017:57:8", + "trueBody": { + "id": 2837, + "nodeType": "Block", + "src": "2036:38:8", + "statements": [ + { + "id": 2836, + "nodeType": "Break", + "src": "2054:5:8" + } + ] + } + }, + { + "expression": { + "id": 2841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2839, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2809, + "src": "2087:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 2840, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2096:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2087:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2842, + "nodeType": "ExpressionStatement", + "src": "2087:10:8" + } + ] + }, + "condition": { + "hexValue": "74727565", + "id": 2812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1864:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "id": 2844, + "nodeType": "WhileStatement", + "src": "1857:251:8" + }, + { + "expression": { + "id": 2845, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2809, + "src": "2124:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2807, + "id": 2846, + "nodeType": "Return", + "src": "2117:12:8" + } + ] + }, + "documentation": { + "id": 2799, + "nodeType": "StructuredDocumentation", + "src": "1432:274:8", + "text": " @dev Returns the number of labels in the DNS name at 'offset' in 'self'.\n @param self The byte array to read a name from.\n @param offset The offset to start reading at.\n @return The number of labels in the DNS name at 'offset', in bytes." + }, + "id": 2848, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "labelCount", + "nameLocation": "1720:10:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2801, + "mutability": "mutable", + "name": "self", + "nameLocation": "1753:4:8", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "1740:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2800, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1740:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2803, + "mutability": "mutable", + "name": "offset", + "nameLocation": "1775:6:8", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "1767:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2802, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1767:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1730:57:8" + }, + "returnParameters": { + "id": 2807, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2806, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "1811:7:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1811:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1810:9:8" + }, + "scope": 3816, + "src": "1711:425:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "constant": true, + "id": 2851, + "mutability": "constant", + "name": "RRSIG_TYPE", + "nameLocation": "2159:10:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2142:31:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2849, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2142:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "30", + "id": 2850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2172:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2854, + "mutability": "constant", + "name": "RRSIG_ALGORITHM", + "nameLocation": "2196:15:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2179:36:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2852, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2179:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "32", + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2214:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2857, + "mutability": "constant", + "name": "RRSIG_LABELS", + "nameLocation": "2238:12:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2221:33:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2855, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2221:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "33", + "id": 2856, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2253:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2860, + "mutability": "constant", + "name": "RRSIG_TTL", + "nameLocation": "2277:9:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2260:30:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2858, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2260:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "34", + "id": 2859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2289:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2863, + "mutability": "constant", + "name": "RRSIG_EXPIRATION", + "nameLocation": "2313:16:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2296:37:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2861, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2296:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "38", + "id": 2862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2332:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2866, + "mutability": "constant", + "name": "RRSIG_INCEPTION", + "nameLocation": "2356:15:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2339:37:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2864, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2339:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3132", + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2374:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2869, + "mutability": "constant", + "name": "RRSIG_KEY_TAG", + "nameLocation": "2399:13:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2382:35:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2867, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2382:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3136", + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2415:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 2872, + "mutability": "constant", + "name": "RRSIG_SIGNER_NAME", + "nameLocation": "2440:17:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "2423:39:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2870, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2423:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3138", + "id": 2871, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2460:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "visibility": "internal" + }, + { + "canonicalName": "RRUtils.SignedSet", + "id": 2893, + "members": [ + { + "constant": false, + "id": 2874, + "mutability": "mutable", + "name": "typeCovered", + "nameLocation": "2503:11:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2496:18:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2873, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2496:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2876, + "mutability": "mutable", + "name": "algorithm", + "nameLocation": "2530:9:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2524:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2875, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2524:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2878, + "mutability": "mutable", + "name": "labels", + "nameLocation": "2555:6:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2549:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2877, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2549:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2880, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "2578:3:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2571:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 2879, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2571:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2882, + "mutability": "mutable", + "name": "expiration", + "nameLocation": "2598:10:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2591:17:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 2881, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2591:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2884, + "mutability": "mutable", + "name": "inception", + "nameLocation": "2625:9:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2618:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 2883, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2618:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2886, + "mutability": "mutable", + "name": "keytag", + "nameLocation": "2651:6:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2644:13:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2885, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2644:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2888, + "mutability": "mutable", + "name": "signerName", + "nameLocation": "2673:10:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2667:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2887, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2667:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2890, + "mutability": "mutable", + "name": "data", + "nameLocation": "2699:4:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2693:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2889, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2693:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "name", + "nameLocation": "2719:4:8", + "nodeType": "VariableDeclaration", + "scope": 2893, + "src": "2713:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2891, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2713:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "SignedSet", + "nameLocation": "2476:9:8", + "nodeType": "StructDefinition", + "scope": 3816, + "src": "2469:261:8", + "visibility": "public" + }, + { + "body": { + "id": 2994, + "nodeType": "Block", + "src": "2838:627:8", + "statements": [ + { + "expression": { + "id": 2908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2901, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "2848:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2903, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2853:11:8", + "memberName": "typeCovered", + "nodeType": "MemberAccess", + "referencedDeclaration": 2874, + "src": "2848:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2906, + "name": "RRSIG_TYPE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2851, + "src": "2883:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2904, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "2867:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2872:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "2867:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 2907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2867:27:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2848:46:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 2909, + "nodeType": "ExpressionStatement", + "src": "2848:46:8" + }, + { + "expression": { + "id": 2917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2910, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "2904:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2912, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2909:9:8", + "memberName": "algorithm", + "nodeType": "MemberAccess", + "referencedDeclaration": 2876, + "src": "2904:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2915, + "name": "RRSIG_ALGORITHM", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2854, + "src": "2936:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2913, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "2921:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2926:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "2921:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 2916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2921:31:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "2904:48:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 2918, + "nodeType": "ExpressionStatement", + "src": "2904:48:8" + }, + { + "expression": { + "id": 2926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2919, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "2962:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2921, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2967:6:8", + "memberName": "labels", + "nodeType": "MemberAccess", + "referencedDeclaration": 2878, + "src": "2962:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2924, + "name": "RRSIG_LABELS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2857, + "src": "2991:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2922, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "2976:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2923, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2981:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "2976:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 2925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2976:28:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "2962:42:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 2927, + "nodeType": "ExpressionStatement", + "src": "2962:42:8" + }, + { + "expression": { + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2928, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3014:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2930, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3019:3:8", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 2880, + "src": "3014:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2933, + "name": "RRSIG_TTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2860, + "src": "3041:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2931, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3025:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3030:10:8", + "memberName": "readUint32", + "nodeType": "MemberAccess", + "referencedDeclaration": 8184, + "src": "3025:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint32)" + } + }, + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3025:26:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "3014:37:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 2936, + "nodeType": "ExpressionStatement", + "src": "3014:37:8" + }, + { + "expression": { + "id": 2944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2937, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3061:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2939, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3066:10:8", + "memberName": "expiration", + "nodeType": "MemberAccess", + "referencedDeclaration": 2882, + "src": "3061:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2942, + "name": "RRSIG_EXPIRATION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2863, + "src": "3095:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2940, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3079:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3084:10:8", + "memberName": "readUint32", + "nodeType": "MemberAccess", + "referencedDeclaration": 8184, + "src": "3079:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint32)" + } + }, + "id": 2943, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3079:33:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "3061:51:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 2945, + "nodeType": "ExpressionStatement", + "src": "3061:51:8" + }, + { + "expression": { + "id": 2953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2946, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3122:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2948, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3127:9:8", + "memberName": "inception", + "nodeType": "MemberAccess", + "referencedDeclaration": 2884, + "src": "3122:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2951, + "name": "RRSIG_INCEPTION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2866, + "src": "3155:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2949, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3139:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3144:10:8", + "memberName": "readUint32", + "nodeType": "MemberAccess", + "referencedDeclaration": 8184, + "src": "3139:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint32)" + } + }, + "id": 2952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3139:32:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "3122:49:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 2954, + "nodeType": "ExpressionStatement", + "src": "3122:49:8" + }, + { + "expression": { + "id": 2962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2955, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3181:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2957, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3186:6:8", + "memberName": "keytag", + "nodeType": "MemberAccess", + "referencedDeclaration": 2886, + "src": "3181:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2960, + "name": "RRSIG_KEY_TAG", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2869, + "src": "3211:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2958, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3195:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3200:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "3195:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 2961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3195:30:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "3181:44:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 2963, + "nodeType": "ExpressionStatement", + "src": "3181:44:8" + }, + { + "expression": { + "id": 2971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2964, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3235:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3240:10:8", + "memberName": "signerName", + "nodeType": "MemberAccess", + "referencedDeclaration": 2888, + "src": "3235:15:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2968, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3262:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2969, + "name": "RRSIG_SIGNER_NAME", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2872, + "src": "3268:17:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2967, + "name": "readName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2798, + "src": "3253:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes memory)" + } + }, + "id": 2970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3253:33:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3235:51:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2972, + "nodeType": "ExpressionStatement", + "src": "3235:51:8" + }, + { + "expression": { + "id": 2992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2973, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3296:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2975, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3301:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 2890, + "src": "3296:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2978, + "name": "RRSIG_SIGNER_NAME", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2872, + "src": "3336:17:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "expression": { + "id": 2979, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3356:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3361:10:8", + "memberName": "signerName", + "nodeType": "MemberAccess", + "referencedDeclaration": 2888, + "src": "3356:15:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3372:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3356:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3336:42:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2983, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3392:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3397:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3392:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2985, + "name": "RRSIG_SIGNER_NAME", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2872, + "src": "3406:17:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3392:31:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "expression": { + "expression": { + "id": 2987, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2899, + "src": "3426:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 2988, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3431:10:8", + "memberName": "signerName", + "nodeType": "MemberAccess", + "referencedDeclaration": 2888, + "src": "3426:15:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3442:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3426:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3392:56:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2976, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2895, + "src": "3308:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3313:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "3308:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 2991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3308:150:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3296:162:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2993, + "nodeType": "ExpressionStatement", + "src": "3296:162:8" + } + ] + }, + "id": 2995, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readSignedSet", + "nameLocation": "2745:13:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2896, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2895, + "mutability": "mutable", + "name": "data", + "nameLocation": "2781:4:8", + "nodeType": "VariableDeclaration", + "scope": 2995, + "src": "2768:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2894, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2768:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2758:33:8" + }, + "returnParameters": { + "id": 2900, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2899, + "mutability": "mutable", + "name": "self", + "nameLocation": "2832:4:8", + "nodeType": "VariableDeclaration", + "scope": 2995, + "src": "2815:21:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet" + }, + "typeName": { + "id": 2898, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2897, + "name": "SignedSet", + "nameLocations": [ + "2815:9:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2893, + "src": "2815:9:8" + }, + "referencedDeclaration": 2893, + "src": "2815:9:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_storage_ptr", + "typeString": "struct RRUtils.SignedSet" + } + }, + "visibility": "internal" + } + ], + "src": "2814:23:8" + }, + "scope": 3816, + "src": "2736:729:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3010, + "nodeType": "Block", + "src": "3564:49:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 3005, + "name": "rrset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2998, + "src": "3592:5:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet memory" + } + }, + "id": 3006, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3598:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 2890, + "src": "3592:10:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3007, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3604:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3004, + "name": "iterateRRs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3055, + "src": "3581:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (struct RRUtils.RRIterator memory)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3581:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "functionReturnParameters": 3003, + "id": 3009, + "nodeType": "Return", + "src": "3574:32:8" + } + ] + }, + "id": 3011, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rrs", + "nameLocation": "3480:3:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2999, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2998, + "mutability": "mutable", + "name": "rrset", + "nameLocation": "3510:5:8", + "nodeType": "VariableDeclaration", + "scope": 3011, + "src": "3493:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_memory_ptr", + "typeString": "struct RRUtils.SignedSet" + }, + "typeName": { + "id": 2997, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2996, + "name": "SignedSet", + "nameLocations": [ + "3493:9:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2893, + "src": "3493:9:8" + }, + "referencedDeclaration": 2893, + "src": "3493:9:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_SignedSet_$2893_storage_ptr", + "typeString": "struct RRUtils.SignedSet" + } + }, + "visibility": "internal" + } + ], + "src": "3483:38:8" + }, + "returnParameters": { + "id": 3003, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3002, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3011, + "src": "3545:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3001, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3000, + "name": "RRIterator", + "nameLocations": [ + "3545:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "3545:10:8" + }, + "referencedDeclaration": 3027, + "src": "3545:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "3544:19:8" + }, + "scope": 3816, + "src": "3471:142:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "canonicalName": "RRUtils.RRIterator", + "documentation": { + "id": 3012, + "nodeType": "StructuredDocumentation", + "src": "3619:58:8", + "text": " @dev An iterator over resource records." + }, + "id": 3027, + "members": [ + { + "constant": false, + "id": 3014, + "mutability": "mutable", + "name": "data", + "nameLocation": "3716:4:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3710:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3013, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3710:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3016, + "mutability": "mutable", + "name": "offset", + "nameLocation": "3738:6:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3730:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3015, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3730:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3018, + "mutability": "mutable", + "name": "dnstype", + "nameLocation": "3761:7:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3754:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 3017, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "3754:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3020, + "mutability": "mutable", + "name": "class", + "nameLocation": "3785:5:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3778:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 3019, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "3778:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3022, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "3807:3:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3800:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 3021, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "3800:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3024, + "mutability": "mutable", + "name": "rdataOffset", + "nameLocation": "3828:11:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3820:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3023, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3820:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3026, + "mutability": "mutable", + "name": "nextOffset", + "nameLocation": "3857:10:8", + "nodeType": "VariableDeclaration", + "scope": 3027, + "src": "3849:18:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3025, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3849:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "name": "RRIterator", + "nameLocation": "3689:10:8", + "nodeType": "StructDefinition", + "scope": 3816, + "src": "3682:192:8", + "visibility": "public" + }, + { + "body": { + "id": 3054, + "nodeType": "Block", + "src": "4212:84:8", + "statements": [ + { + "expression": { + "id": 3042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3038, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "4222:3:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3040, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4226:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "4222:8:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3041, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3030, + "src": "4233:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "4222:15:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3043, + "nodeType": "ExpressionStatement", + "src": "4222:15:8" + }, + { + "expression": { + "id": 3048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3044, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "4247:3:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3046, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4251:10:8", + "memberName": "nextOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3026, + "src": "4247:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3047, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "4264:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4247:23:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3049, + "nodeType": "ExpressionStatement", + "src": "4247:23:8" + }, + { + "expression": { + "arguments": [ + { + "id": 3051, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "4285:3:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + ], + "id": 3050, + "name": "next", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3176, + "src": "4280:4:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$__$", + "typeString": "function (struct RRUtils.RRIterator memory) pure" + } + }, + "id": 3052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4280:9:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3053, + "nodeType": "ExpressionStatement", + "src": "4280:9:8" + } + ] + }, + "documentation": { + "id": 3028, + "nodeType": "StructuredDocumentation", + "src": "3880:204:8", + "text": " @dev Begins iterating over resource records.\n @param self The byte string to read from.\n @param offset The offset to start reading at.\n @return ret An iterator object." + }, + "id": 3055, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "iterateRRs", + "nameLocation": "4098:10:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3033, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3030, + "mutability": "mutable", + "name": "self", + "nameLocation": "4131:4:8", + "nodeType": "VariableDeclaration", + "scope": 3055, + "src": "4118:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3029, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4118:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3032, + "mutability": "mutable", + "name": "offset", + "nameLocation": "4153:6:8", + "nodeType": "VariableDeclaration", + "scope": 3055, + "src": "4145:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3031, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4145:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4108:57:8" + }, + "returnParameters": { + "id": 3037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3036, + "mutability": "mutable", + "name": "ret", + "nameLocation": "4207:3:8", + "nodeType": "VariableDeclaration", + "scope": 3055, + "src": "4189:21:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3035, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3034, + "name": "RRIterator", + "nameLocations": [ + "4189:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "4189:10:8" + }, + "referencedDeclaration": 3027, + "src": "4189:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "4188:23:8" + }, + "scope": 3816, + "src": "4089:207:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3071, + "nodeType": "Block", + "src": "4538:55:8", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3064, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3059, + "src": "4555:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3065, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4560:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "4555:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "expression": { + "expression": { + "id": 3066, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3059, + "src": "4570:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3067, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4575:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "4570:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4580:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4570:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4555:31:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 3063, + "id": 3070, + "nodeType": "Return", + "src": "4548:38:8" + } + ] + }, + "documentation": { + "id": 3056, + "nodeType": "StructuredDocumentation", + "src": "4302:164:8", + "text": " @dev Returns true iff there are more RRs to iterate.\n @param iter The iterator to check.\n @return True iff the iterator has finished." + }, + "id": 3072, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "done", + "nameLocation": "4480:4:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3060, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3059, + "mutability": "mutable", + "name": "iter", + "nameLocation": "4503:4:8", + "nodeType": "VariableDeclaration", + "scope": 3072, + "src": "4485:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3058, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3057, + "name": "RRIterator", + "nameLocations": [ + "4485:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "4485:10:8" + }, + "referencedDeclaration": 3027, + "src": "4485:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "4484:24:8" + }, + "returnParameters": { + "id": 3063, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3062, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3072, + "src": "4532:4:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3061, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4532:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4531:6:8" + }, + "scope": 3816, + "src": "4471:122:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3175, + "nodeType": "Block", + "src": "4771:636:8", + "statements": [ + { + "expression": { + "id": 3084, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3079, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4781:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3081, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4786:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "4781:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 3082, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4795:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3083, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4800:10:8", + "memberName": "nextOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3026, + "src": "4795:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4781:29:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3085, + "nodeType": "ExpressionStatement", + "src": "4781:29:8" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3086, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4824:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3087, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4829:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "4824:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "expression": { + "expression": { + "id": 3088, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4839:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3089, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4844:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "4839:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4849:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4839:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4824:31:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3094, + "nodeType": "IfStatement", + "src": "4820:68:8", + "trueBody": { + "id": 3093, + "nodeType": "Block", + "src": "4857:31:8", + "statements": [ + { + "functionReturnParameters": 3078, + "id": 3092, + "nodeType": "Return", + "src": "4871:7:8" + } + ] + } + }, + { + "assignments": [ + 3096 + ], + "declarations": [ + { + "constant": false, + "id": 3096, + "mutability": "mutable", + "name": "off", + "nameLocation": "4931:3:8", + "nodeType": "VariableDeclaration", + "scope": 3175, + "src": "4923:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3095, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4923:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3106, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3097, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4937:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3098, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4942:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "4937:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "expression": { + "id": 3100, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4962:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3101, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4967:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "4962:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "id": 3102, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "4973:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3103, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4978:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "4973:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3099, + "name": "nameLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2774, + "src": "4951:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4951:34:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4937:48:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4923:62:8" + }, + { + "expression": { + "id": 3115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3107, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5033:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3109, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5038:7:8", + "memberName": "dnstype", + "nodeType": "MemberAccess", + "referencedDeclaration": 3018, + "src": "5033:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3113, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5069:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3110, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5048:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3111, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5053:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5048:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5058:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "5048:20:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 3114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5048:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "5033:40:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 3116, + "nodeType": "ExpressionStatement", + "src": "5033:40:8" + }, + { + "expression": { + "id": 3119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3117, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5083:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 3118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5090:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "5083:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3120, + "nodeType": "ExpressionStatement", + "src": "5083:8:8" + }, + { + "expression": { + "id": 3129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3121, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5101:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3123, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5106:5:8", + "memberName": "class", + "nodeType": "MemberAccess", + "referencedDeclaration": 3020, + "src": "5101:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3127, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5135:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3124, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5114:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3125, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5119:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5114:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5124:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "5114:20:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 3128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5114:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "5101:38:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 3130, + "nodeType": "ExpressionStatement", + "src": "5101:38:8" + }, + { + "expression": { + "id": 3133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3131, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5149:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 3132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5156:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "5149:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3134, + "nodeType": "ExpressionStatement", + "src": "5149:8:8" + }, + { + "expression": { + "id": 3143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3135, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5167:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3137, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5172:3:8", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 3022, + "src": "5167:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3141, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5199:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3138, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5178:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3139, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5183:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5178:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5188:10:8", + "memberName": "readUint32", + "nodeType": "MemberAccess", + "referencedDeclaration": 8184, + "src": "5178:20:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint32)" + } + }, + "id": 3142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5178:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "5167:36:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 3144, + "nodeType": "ExpressionStatement", + "src": "5167:36:8" + }, + { + "expression": { + "id": 3147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3145, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5213:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "34", + "id": 3146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5220:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "5213:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3148, + "nodeType": "ExpressionStatement", + "src": "5213:8:8" + }, + { + "assignments": [ + 3150 + ], + "declarations": [ + { + "constant": false, + "id": 3150, + "mutability": "mutable", + "name": "rdataLength", + "nameLocation": "5266:11:8", + "nodeType": "VariableDeclaration", + "scope": 3175, + "src": "5258:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3149, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5258:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3156, + "initialValue": { + "arguments": [ + { + "id": 3154, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5301:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3151, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5280:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3152, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5285:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5280:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5290:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "5280:20:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 3155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5280:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5258:47:8" + }, + { + "expression": { + "id": 3159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3157, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5315:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 3158, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5322:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "5315:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3160, + "nodeType": "ExpressionStatement", + "src": "5315:8:8" + }, + { + "expression": { + "id": 3165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3161, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5333:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3163, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5338:11:8", + "memberName": "rdataOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3024, + "src": "5333:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3164, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5352:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5333:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3166, + "nodeType": "ExpressionStatement", + "src": "5333:22:8" + }, + { + "expression": { + "id": 3173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3167, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3076, + "src": "5365:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3169, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5370:10:8", + "memberName": "nextOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3026, + "src": "5365:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3170, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3096, + "src": "5383:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3171, + "name": "rdataLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3150, + "src": "5389:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5383:17:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5365:35:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3174, + "nodeType": "ExpressionStatement", + "src": "5365:35:8" + } + ] + }, + "documentation": { + "id": 3073, + "nodeType": "StructuredDocumentation", + "src": "4599:115:8", + "text": " @dev Moves the iterator to the next resource record.\n @param iter The iterator to advance." + }, + "id": 3176, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "next", + "nameLocation": "4728:4:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3077, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3076, + "mutability": "mutable", + "name": "iter", + "nameLocation": "4751:4:8", + "nodeType": "VariableDeclaration", + "scope": 3176, + "src": "4733:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3075, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3074, + "name": "RRIterator", + "nameLocations": [ + "4733:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "4733:10:8" + }, + "referencedDeclaration": 3027, + "src": "4733:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "4732:24:8" + }, + "returnParameters": { + "id": 3078, + "nodeType": "ParameterList", + "parameters": [], + "src": "4771:0:8" + }, + "scope": 3816, + "src": "4719:688:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3198, + "nodeType": "Block", + "src": "5662:150:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 3188, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3180, + "src": "5728:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3189, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5733:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "5728:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "expression": { + "id": 3191, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3180, + "src": "5768:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3192, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5773:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5768:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "id": 3193, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3180, + "src": "5779:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3194, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5784:6:8", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "5779:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3190, + "name": "nameLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2774, + "src": "5757:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5757:34:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3185, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3180, + "src": "5691:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3186, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5696:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "5691:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3187, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5701:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "5691:19:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 3196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5691:114:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 3184, + "id": 3197, + "nodeType": "Return", + "src": "5672:133:8" + } + ] + }, + "documentation": { + "id": 3177, + "nodeType": "StructuredDocumentation", + "src": "5413:169:8", + "text": " @dev Returns the name of the current record.\n @param iter The iterator.\n @return A new bytes object containing the owner name from the RR." + }, + "id": 3199, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "5596:4:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3181, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3180, + "mutability": "mutable", + "name": "iter", + "nameLocation": "5619:4:8", + "nodeType": "VariableDeclaration", + "scope": 3199, + "src": "5601:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3179, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3178, + "name": "RRIterator", + "nameLocations": [ + "5601:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "5601:10:8" + }, + "referencedDeclaration": 3027, + "src": "5601:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "5600:24:8" + }, + "returnParameters": { + "id": 3184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3183, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3199, + "src": "5648:12:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3182, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5648:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5647:14:8" + }, + "scope": 3816, + "src": "5587:225:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3220, + "nodeType": "Block", + "src": "6079:155:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 3211, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3203, + "src": "6145:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3212, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6150:11:8", + "memberName": "rdataOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3024, + "src": "6145:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3213, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3203, + "src": "6179:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3214, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6184:10:8", + "memberName": "nextOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3026, + "src": "6179:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "expression": { + "id": 3215, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3203, + "src": "6197:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3216, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6202:11:8", + "memberName": "rdataOffset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3024, + "src": "6197:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6179:34:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "expression": { + "id": 3208, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3203, + "src": "6108:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 3209, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6113:4:8", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 3014, + "src": "6108:9:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6118:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "6108:19:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 3218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6108:119:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 3207, + "id": 3219, + "nodeType": "Return", + "src": "6089:138:8" + } + ] + }, + "documentation": { + "id": 3200, + "nodeType": "StructuredDocumentation", + "src": "5818:166:8", + "text": " @dev Returns the rdata portion of the current record.\n @param iter The iterator.\n @return A new bytes object containing the RR's RDATA." + }, + "id": 3221, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rdata", + "nameLocation": "5998:5:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3204, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3203, + "mutability": "mutable", + "name": "iter", + "nameLocation": "6031:4:8", + "nodeType": "VariableDeclaration", + "scope": 3221, + "src": "6013:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 3202, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3201, + "name": "RRIterator", + "nameLocations": [ + "6013:10:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "6013:10:8" + }, + "referencedDeclaration": 3027, + "src": "6013:10:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "src": "6003:38:8" + }, + "returnParameters": { + "id": 3207, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3206, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3221, + "src": "6065:12:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3205, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6065:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6064:14:8" + }, + "scope": 3816, + "src": "5989:245:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "constant": true, + "id": 3224, + "mutability": "constant", + "name": "DNSKEY_FLAGS", + "nameLocation": "6257:12:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "6240:33:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3222, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6240:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "30", + "id": 3223, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6272:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3227, + "mutability": "constant", + "name": "DNSKEY_PROTOCOL", + "nameLocation": "6296:15:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "6279:36:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3225, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6279:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "32", + "id": 3226, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6314:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3230, + "mutability": "constant", + "name": "DNSKEY_ALGORITHM", + "nameLocation": "6338:16:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "6321:37:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3228, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6321:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "33", + "id": 3229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6357:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3233, + "mutability": "constant", + "name": "DNSKEY_PUBKEY", + "nameLocation": "6381:13:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "6364:34:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3231, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6364:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "34", + "id": 3232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6397:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "visibility": "internal" + }, + { + "canonicalName": "RRUtils.DNSKEY", + "id": 3242, + "members": [ + { + "constant": false, + "id": 3235, + "mutability": "mutable", + "name": "flags", + "nameLocation": "6436:5:8", + "nodeType": "VariableDeclaration", + "scope": 3242, + "src": "6429:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 3234, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "6429:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3237, + "mutability": "mutable", + "name": "protocol", + "nameLocation": "6457:8:8", + "nodeType": "VariableDeclaration", + "scope": 3242, + "src": "6451:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 3236, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "6451:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3239, + "mutability": "mutable", + "name": "algorithm", + "nameLocation": "6481:9:8", + "nodeType": "VariableDeclaration", + "scope": 3242, + "src": "6475:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 3238, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "6475:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3241, + "mutability": "mutable", + "name": "publicKey", + "nameLocation": "6506:9:8", + "nodeType": "VariableDeclaration", + "scope": 3242, + "src": "6500:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3240, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6500:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "DNSKEY", + "nameLocation": "6412:6:8", + "nodeType": "StructDefinition", + "scope": 3816, + "src": "6405:117:8", + "visibility": "public" + }, + { + "body": { + "id": 3301, + "nodeType": "Block", + "src": "6672:325:8", + "statements": [ + { + "expression": { + "id": 3263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3254, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3252, + "src": "6682:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_memory_ptr", + "typeString": "struct RRUtils.DNSKEY memory" + } + }, + "id": 3256, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6687:5:8", + "memberName": "flags", + "nodeType": "MemberAccess", + "referencedDeclaration": 3235, + "src": "6682:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3259, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3246, + "src": "6711:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3260, + "name": "DNSKEY_FLAGS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3224, + "src": "6720:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6711:21:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3257, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3244, + "src": "6695:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6700:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "6695:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 3262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6695:38:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "6682:51:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 3264, + "nodeType": "ExpressionStatement", + "src": "6682:51:8" + }, + { + "expression": { + "id": 3274, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3265, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3252, + "src": "6743:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_memory_ptr", + "typeString": "struct RRUtils.DNSKEY memory" + } + }, + "id": 3267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6748:8:8", + "memberName": "protocol", + "nodeType": "MemberAccess", + "referencedDeclaration": 3237, + "src": "6743:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3270, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3246, + "src": "6774:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3271, + "name": "DNSKEY_PROTOCOL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3227, + "src": "6783:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6774:24:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3268, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3244, + "src": "6759:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6764:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "6759:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6759:40:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "6743:56:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 3275, + "nodeType": "ExpressionStatement", + "src": "6743:56:8" + }, + { + "expression": { + "id": 3285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3276, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3252, + "src": "6809:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_memory_ptr", + "typeString": "struct RRUtils.DNSKEY memory" + } + }, + "id": 3278, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6814:9:8", + "memberName": "algorithm", + "nodeType": "MemberAccess", + "referencedDeclaration": 3239, + "src": "6809:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3281, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3246, + "src": "6841:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3282, + "name": "DNSKEY_ALGORITHM", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3230, + "src": "6850:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6841:25:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3279, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3244, + "src": "6826:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6831:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "6826:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6826:41:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "6809:58:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 3286, + "nodeType": "ExpressionStatement", + "src": "6809:58:8" + }, + { + "expression": { + "id": 3299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3287, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3252, + "src": "6877:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_memory_ptr", + "typeString": "struct RRUtils.DNSKEY memory" + } + }, + "id": 3289, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6882:9:8", + "memberName": "publicKey", + "nodeType": "MemberAccess", + "referencedDeclaration": 3241, + "src": "6877:14:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3292, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3246, + "src": "6922:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3293, + "name": "DNSKEY_PUBKEY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3233, + "src": "6931:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6922:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3295, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3248, + "src": "6958:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 3296, + "name": "DNSKEY_PUBKEY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3233, + "src": "6967:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6958:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3290, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3244, + "src": "6894:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6899:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "6894:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 3298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6894:96:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "6877:113:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3300, + "nodeType": "ExpressionStatement", + "src": "6877:113:8" + } + ] + }, + "id": 3302, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readDNSKEY", + "nameLocation": "6537:10:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3249, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3244, + "mutability": "mutable", + "name": "data", + "nameLocation": "6570:4:8", + "nodeType": "VariableDeclaration", + "scope": 3302, + "src": "6557:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3243, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6557:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3246, + "mutability": "mutable", + "name": "offset", + "nameLocation": "6592:6:8", + "nodeType": "VariableDeclaration", + "scope": 3302, + "src": "6584:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3245, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6584:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3248, + "mutability": "mutable", + "name": "length", + "nameLocation": "6616:6:8", + "nodeType": "VariableDeclaration", + "scope": 3302, + "src": "6608:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3247, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6608:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6547:81:8" + }, + "returnParameters": { + "id": 3253, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3252, + "mutability": "mutable", + "name": "self", + "nameLocation": "6666:4:8", + "nodeType": "VariableDeclaration", + "scope": 3302, + "src": "6652:18:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_memory_ptr", + "typeString": "struct RRUtils.DNSKEY" + }, + "typeName": { + "id": 3251, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3250, + "name": "DNSKEY", + "nameLocations": [ + "6652:6:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3242, + "src": "6652:6:8" + }, + "referencedDeclaration": 3242, + "src": "6652:6:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DNSKEY_$3242_storage_ptr", + "typeString": "struct RRUtils.DNSKEY" + } + }, + "visibility": "internal" + } + ], + "src": "6651:20:8" + }, + "scope": 3816, + "src": "6528:469:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "constant": true, + "id": 3305, + "mutability": "constant", + "name": "DS_KEY_TAG", + "nameLocation": "7020:10:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "7003:31:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3303, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7003:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "30", + "id": 3304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7033:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3308, + "mutability": "constant", + "name": "DS_ALGORITHM", + "nameLocation": "7057:12:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "7040:33:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3306, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7040:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "32", + "id": 3307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7072:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3311, + "mutability": "constant", + "name": "DS_DIGEST_TYPE", + "nameLocation": "7096:14:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "7079:35:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3309, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7079:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "33", + "id": 3310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7113:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 3314, + "mutability": "constant", + "name": "DS_DIGEST", + "nameLocation": "7137:9:8", + "nodeType": "VariableDeclaration", + "scope": 3816, + "src": "7120:30:8", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3312, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7120:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "34", + "id": 3313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7149:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "visibility": "internal" + }, + { + "canonicalName": "RRUtils.DS", + "id": 3323, + "members": [ + { + "constant": false, + "id": 3316, + "mutability": "mutable", + "name": "keytag", + "nameLocation": "7184:6:8", + "nodeType": "VariableDeclaration", + "scope": 3323, + "src": "7177:13:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 3315, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "7177:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3318, + "mutability": "mutable", + "name": "algorithm", + "nameLocation": "7206:9:8", + "nodeType": "VariableDeclaration", + "scope": 3323, + "src": "7200:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 3317, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7200:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3320, + "mutability": "mutable", + "name": "digestType", + "nameLocation": "7231:10:8", + "nodeType": "VariableDeclaration", + "scope": 3323, + "src": "7225:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 3319, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7225:5:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3322, + "mutability": "mutable", + "name": "digest", + "nameLocation": "7257:6:8", + "nodeType": "VariableDeclaration", + "scope": 3323, + "src": "7251:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3321, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7251:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "DS", + "nameLocation": "7164:2:8", + "nodeType": "StructDefinition", + "scope": 3816, + "src": "7157:113:8", + "visibility": "public" + }, + { + "body": { + "id": 3382, + "nodeType": "Block", + "src": "7412:276:8", + "statements": [ + { + "expression": { + "id": 3344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3335, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "7422:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_memory_ptr", + "typeString": "struct RRUtils.DS memory" + } + }, + "id": 3337, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7427:6:8", + "memberName": "keytag", + "nodeType": "MemberAccess", + "referencedDeclaration": 3316, + "src": "7422:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3340, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3327, + "src": "7452:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3341, + "name": "DS_KEY_TAG", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3305, + "src": "7461:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7452:19:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3338, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3325, + "src": "7436:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7441:10:8", + "memberName": "readUint16", + "nodeType": "MemberAccess", + "referencedDeclaration": 8164, + "src": "7436:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint16_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint16)" + } + }, + "id": 3343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7436:36:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "7422:50:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 3345, + "nodeType": "ExpressionStatement", + "src": "7422:50:8" + }, + { + "expression": { + "id": 3355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3346, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "7482:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_memory_ptr", + "typeString": "struct RRUtils.DS memory" + } + }, + "id": 3348, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7487:9:8", + "memberName": "algorithm", + "nodeType": "MemberAccess", + "referencedDeclaration": 3318, + "src": "7482:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3351, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3327, + "src": "7514:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3352, + "name": "DS_ALGORITHM", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3308, + "src": "7523:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7514:21:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3349, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3325, + "src": "7499:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7504:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "7499:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3354, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7499:37:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "7482:54:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 3356, + "nodeType": "ExpressionStatement", + "src": "7482:54:8" + }, + { + "expression": { + "id": 3366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3357, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "7546:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_memory_ptr", + "typeString": "struct RRUtils.DS memory" + } + }, + "id": 3359, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7551:10:8", + "memberName": "digestType", + "nodeType": "MemberAccess", + "referencedDeclaration": 3320, + "src": "7546:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3362, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3327, + "src": "7579:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3363, + "name": "DS_DIGEST_TYPE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3311, + "src": "7588:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7579:23:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3360, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3325, + "src": "7564:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7569:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "7564:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7564:39:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "7546:57:8", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 3367, + "nodeType": "ExpressionStatement", + "src": "7546:57:8" + }, + { + "expression": { + "id": 3380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3368, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "7613:4:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_memory_ptr", + "typeString": "struct RRUtils.DS memory" + } + }, + "id": 3370, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7618:6:8", + "memberName": "digest", + "nodeType": "MemberAccess", + "referencedDeclaration": 3322, + "src": "7613:11:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3373, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3327, + "src": "7642:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3374, + "name": "DS_DIGEST", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3314, + "src": "7651:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7642:18:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3376, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3329, + "src": "7662:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 3377, + "name": "DS_DIGEST", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3314, + "src": "7671:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7662:18:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3371, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3325, + "src": "7627:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7632:9:8", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "7627:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 3379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7627:54:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "7613:68:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3381, + "nodeType": "ExpressionStatement", + "src": "7613:68:8" + } + ] + }, + "id": 3383, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readDS", + "nameLocation": "7285:6:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3325, + "mutability": "mutable", + "name": "data", + "nameLocation": "7314:4:8", + "nodeType": "VariableDeclaration", + "scope": 3383, + "src": "7301:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3324, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7301:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3327, + "mutability": "mutable", + "name": "offset", + "nameLocation": "7336:6:8", + "nodeType": "VariableDeclaration", + "scope": 3383, + "src": "7328:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3326, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7328:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3329, + "mutability": "mutable", + "name": "length", + "nameLocation": "7360:6:8", + "nodeType": "VariableDeclaration", + "scope": 3383, + "src": "7352:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7352:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7291:81:8" + }, + "returnParameters": { + "id": 3334, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3333, + "mutability": "mutable", + "name": "self", + "nameLocation": "7406:4:8", + "nodeType": "VariableDeclaration", + "scope": 3383, + "src": "7396:14:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_memory_ptr", + "typeString": "struct RRUtils.DS" + }, + "typeName": { + "id": 3332, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3331, + "name": "DS", + "nameLocations": [ + "7396:2:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3323, + "src": "7396:2:8" + }, + "referencedDeclaration": 3323, + "src": "7396:2:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_DS_$3323_storage_ptr", + "typeString": "struct RRUtils.DS" + } + }, + "visibility": "internal" + } + ], + "src": "7395:16:8" + }, + "scope": 3816, + "src": "7276:412:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3432, + "nodeType": "Block", + "src": "7807:285:8", + "statements": [ + { + "assignments": [ + 3393 + ], + "declarations": [ + { + "constant": false, + "id": 3393, + "mutability": "mutable", + "name": "off", + "nameLocation": "7825:3:8", + "nodeType": "VariableDeclaration", + "scope": 3432, + "src": "7817:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3392, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7817:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3395, + "initialValue": { + "hexValue": "30", + "id": 3394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7831:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "7817:15:8" + }, + { + "assignments": [ + 3397 + ], + "declarations": [ + { + "constant": false, + "id": 3397, + "mutability": "mutable", + "name": "counts", + "nameLocation": "7850:6:8", + "nodeType": "VariableDeclaration", + "scope": 3432, + "src": "7842:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7842:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3402, + "initialValue": { + "arguments": [ + { + "id": 3399, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3385, + "src": "7870:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7876:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3398, + "name": "labelCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "7859:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7859:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7842:36:8" + }, + { + "assignments": [ + 3404 + ], + "declarations": [ + { + "constant": false, + "id": 3404, + "mutability": "mutable", + "name": "othercounts", + "nameLocation": "7896:11:8", + "nodeType": "VariableDeclaration", + "scope": 3432, + "src": "7888:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3403, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7888:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3409, + "initialValue": { + "arguments": [ + { + "id": 3406, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3387, + "src": "7921:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7928:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3405, + "name": "labelCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "7910:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7910:20:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7888:42:8" + }, + { + "body": { + "id": 3423, + "nodeType": "Block", + "src": "7970:72:8", + "statements": [ + { + "expression": { + "id": 3418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3413, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3393, + "src": "7984:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3415, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3385, + "src": "7999:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3416, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3393, + "src": "8005:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3414, + "name": "progress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3631, + "src": "7990:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7990:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7984:25:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3419, + "nodeType": "ExpressionStatement", + "src": "7984:25:8" + }, + { + "expression": { + "id": 3421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "8023:8:8", + "subExpression": { + "id": 3420, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3397, + "src": "8023:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3422, + "nodeType": "ExpressionStatement", + "src": "8023:8:8" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3410, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3397, + "src": "7948:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3411, + "name": "othercounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3404, + "src": "7957:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7948:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3424, + "nodeType": "WhileStatement", + "src": "7941:101:8" + }, + { + "expression": { + "arguments": [ + { + "id": 3427, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3393, + "src": "8071:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3428, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3387, + "src": "8076:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8083:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "expression": { + "id": 3425, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3385, + "src": "8059:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8064:6:8", + "memberName": "equals", + "nodeType": "MemberAccess", + "referencedDeclaration": 8073, + "src": "8059:11:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bool_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,bytes memory,uint256) pure returns (bool)" + } + }, + "id": 3430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8059:26:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 3391, + "id": 3431, + "nodeType": "Return", + "src": "8052:33:8" + } + ] + }, + "id": 3433, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isSubdomainOf", + "nameLocation": "7703:13:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3388, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3385, + "mutability": "mutable", + "name": "self", + "nameLocation": "7739:4:8", + "nodeType": "VariableDeclaration", + "scope": 3433, + "src": "7726:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3384, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7726:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3387, + "mutability": "mutable", + "name": "other", + "nameLocation": "7766:5:8", + "nodeType": "VariableDeclaration", + "scope": 3433, + "src": "7753:18:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3386, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7753:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7716:61:8" + }, + "returnParameters": { + "id": 3391, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3390, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3433, + "src": "7801:4:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3389, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7801:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7800:6:8" + }, + "scope": 3816, + "src": "7694:398:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3587, + "nodeType": "Block", + "src": "8212:1332:8", + "statements": [ + { + "condition": { + "arguments": [ + { + "id": 3444, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "8238:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3442, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "8226:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8231:6:8", + "memberName": "equals", + "nodeType": "MemberAccess", + "referencedDeclaration": 8127, + "src": "8226:11:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,bytes memory) pure returns (bool)" + } + }, + "id": 3445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8226:18:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3449, + "nodeType": "IfStatement", + "src": "8222:57:8", + "trueBody": { + "id": 3448, + "nodeType": "Block", + "src": "8246:33:8", + "statements": [ + { + "expression": { + "hexValue": "30", + "id": 3446, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8267:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 3441, + "id": 3447, + "nodeType": "Return", + "src": "8260:8:8" + } + ] + } + }, + { + "assignments": [ + 3451 + ], + "declarations": [ + { + "constant": false, + "id": 3451, + "mutability": "mutable", + "name": "off", + "nameLocation": "8297:3:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8289:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3450, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8289:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3452, + "nodeType": "VariableDeclarationStatement", + "src": "8289:11:8" + }, + { + "assignments": [ + 3454 + ], + "declarations": [ + { + "constant": false, + "id": 3454, + "mutability": "mutable", + "name": "otheroff", + "nameLocation": "8318:8:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8310:16:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3453, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8310:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3455, + "nodeType": "VariableDeclarationStatement", + "src": "8310:16:8" + }, + { + "assignments": [ + 3457 + ], + "declarations": [ + { + "constant": false, + "id": 3457, + "mutability": "mutable", + "name": "prevoff", + "nameLocation": "8344:7:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8336:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3456, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8336:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3458, + "nodeType": "VariableDeclarationStatement", + "src": "8336:15:8" + }, + { + "assignments": [ + 3460 + ], + "declarations": [ + { + "constant": false, + "id": 3460, + "mutability": "mutable", + "name": "otherprevoff", + "nameLocation": "8369:12:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8361:20:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3459, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8361:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3461, + "nodeType": "VariableDeclarationStatement", + "src": "8361:20:8" + }, + { + "assignments": [ + 3463 + ], + "declarations": [ + { + "constant": false, + "id": 3463, + "mutability": "mutable", + "name": "counts", + "nameLocation": "8399:6:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8391:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3462, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8391:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3468, + "initialValue": { + "arguments": [ + { + "id": 3465, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "8419:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8425:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3464, + "name": "labelCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "8408:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8408:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8391:36:8" + }, + { + "assignments": [ + 3470 + ], + "declarations": [ + { + "constant": false, + "id": 3470, + "mutability": "mutable", + "name": "othercounts", + "nameLocation": "8445:11:8", + "nodeType": "VariableDeclaration", + "scope": 3587, + "src": "8437:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3469, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8437:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3475, + "initialValue": { + "arguments": [ + { + "id": 3472, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "8470:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 3473, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8477:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3471, + "name": "labelCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "8459:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8459:20:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8437:42:8" + }, + { + "body": { + "id": 3493, + "nodeType": "Block", + "src": "8612:99:8", + "statements": [ + { + "expression": { + "id": 3481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3479, + "name": "prevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3457, + "src": "8626:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3480, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "8636:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8626:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3482, + "nodeType": "ExpressionStatement", + "src": "8626:13:8" + }, + { + "expression": { + "id": 3488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3483, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "8653:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3485, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "8668:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3486, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "8674:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3484, + "name": "progress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3631, + "src": "8659:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8659:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8653:25:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3489, + "nodeType": "ExpressionStatement", + "src": "8653:25:8" + }, + { + "expression": { + "id": 3491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "8692:8:8", + "subExpression": { + "id": 3490, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3463, + "src": "8692:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3492, + "nodeType": "ExpressionStatement", + "src": "8692:8:8" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3476, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3463, + "src": "8590:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3477, + "name": "othercounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3470, + "src": "8599:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8590:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3494, + "nodeType": "WhileStatement", + "src": "8583:128:8" + }, + { + "body": { + "id": 3512, + "nodeType": "Block", + "src": "8750:125:8", + "statements": [ + { + "expression": { + "id": 3500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3498, + "name": "otherprevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3460, + "src": "8764:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3499, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "8779:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8764:23:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3501, + "nodeType": "ExpressionStatement", + "src": "8764:23:8" + }, + { + "expression": { + "id": 3507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3502, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "8801:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3504, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "8821:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3505, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "8828:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3503, + "name": "progress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3631, + "src": "8812:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8812:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8801:36:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3508, + "nodeType": "ExpressionStatement", + "src": "8801:36:8" + }, + { + "expression": { + "id": 3510, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "8851:13:8", + "subExpression": { + "id": 3509, + "name": "othercounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3470, + "src": "8851:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3511, + "nodeType": "ExpressionStatement", + "src": "8851:13:8" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3495, + "name": "othercounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3470, + "src": "8728:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3496, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3463, + "src": "8742:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8728:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3513, + "nodeType": "WhileStatement", + "src": "8721:154:8" + }, + { + "body": { + "id": 3551, + "nodeType": "Block", + "src": "9000:189:8", + "statements": [ + { + "expression": { + "id": 3527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3525, + "name": "prevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3457, + "src": "9014:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3526, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "9024:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9014:13:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3528, + "nodeType": "ExpressionStatement", + "src": "9014:13:8" + }, + { + "expression": { + "id": 3534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3529, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "9041:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3531, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "9056:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3532, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "9062:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3530, + "name": "progress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3631, + "src": "9047:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9047:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9041:25:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3535, + "nodeType": "ExpressionStatement", + "src": "9041:25:8" + }, + { + "expression": { + "id": 3538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3536, + "name": "otherprevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3460, + "src": "9080:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3537, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "9095:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9080:23:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3539, + "nodeType": "ExpressionStatement", + "src": "9080:23:8" + }, + { + "expression": { + "id": 3545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3540, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "9117:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3542, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "9137:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3543, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "9144:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3541, + "name": "progress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3631, + "src": "9128:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (uint256)" + } + }, + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9128:25:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9117:36:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3546, + "nodeType": "ExpressionStatement", + "src": "9117:36:8" + }, + { + "expression": { + "id": 3549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3547, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3463, + "src": "9167:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 3548, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9177:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9167:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3550, + "nodeType": "ExpressionStatement", + "src": "9167:11:8" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3514, + "name": "counts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3463, + "src": "8950:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8959:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8950:10:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 3523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "8964:34:8", + "subExpression": { + "arguments": [ + { + "id": 3519, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "8977:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3520, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "8982:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3521, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "8989:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3517, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "8965:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8970:6:8", + "memberName": "equals", + "nodeType": "MemberAccess", + "referencedDeclaration": 8073, + "src": "8965:11:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bool_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,bytes memory,uint256) pure returns (bool)" + } + }, + "id": 3522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8965:33:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8950:48:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3552, + "nodeType": "WhileStatement", + "src": "8943:246:8" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3553, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3451, + "src": "9203:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9210:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9203:8:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3560, + "nodeType": "IfStatement", + "src": "9199:48:8", + "trueBody": { + "id": 3559, + "nodeType": "Block", + "src": "9213:34:8", + "statements": [ + { + "expression": { + "id": 3557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "9234:2:8", + "subExpression": { + "hexValue": "31", + "id": 3556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9235:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "typeDescriptions": { + "typeIdentifier": "t_rational_minus_1_by_1", + "typeString": "int_const -1" + } + }, + "functionReturnParameters": 3441, + "id": 3558, + "nodeType": "Return", + "src": "9227:9:8" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3561, + "name": "otheroff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3454, + "src": "9260:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9272:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9260:13:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3567, + "nodeType": "IfStatement", + "src": "9256:52:8", + "trueBody": { + "id": 3566, + "nodeType": "Block", + "src": "9275:33:8", + "statements": [ + { + "expression": { + "hexValue": "31", + "id": 3564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9296:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "functionReturnParameters": 3441, + "id": 3565, + "nodeType": "Return", + "src": "9289:8:8" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3570, + "name": "prevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3457, + "src": "9367:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3571, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9377:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9367:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 3575, + "name": "prevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3457, + "src": "9411:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3573, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "9396:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9401:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "9396:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9396:23:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "id": 3577, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "9437:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3578, + "name": "otherprevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3460, + "src": "9460:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9475:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9460:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 3583, + "name": "otherprevoff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3460, + "src": "9510:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3581, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3437, + "src": "9494:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9500:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "9494:15:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9494:29:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "expression": { + "id": 3568, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3435, + "src": "9337:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9342:7:8", + "memberName": "compare", + "nodeType": "MemberAccess", + "referencedDeclaration": 8013, + "src": "9337:12:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_int256_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256,bytes memory,uint256,uint256) pure returns (int256)" + } + }, + "id": 3585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9337:200:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 3441, + "id": 3586, + "nodeType": "Return", + "src": "9318:219:8" + } + ] + }, + "id": 3588, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "compareNames", + "nameLocation": "8107:12:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3435, + "mutability": "mutable", + "name": "self", + "nameLocation": "8142:4:8", + "nodeType": "VariableDeclaration", + "scope": 3588, + "src": "8129:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3434, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8129:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3437, + "mutability": "mutable", + "name": "other", + "nameLocation": "8169:5:8", + "nodeType": "VariableDeclaration", + "scope": 3588, + "src": "8156:18:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3436, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8156:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8119:61:8" + }, + "returnParameters": { + "id": 3441, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3440, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3588, + "src": "8204:6:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3439, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8204:6:8", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "8203:8:8" + }, + "scope": 3816, + "src": "8098:1446:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3611, + "nodeType": "Block", + "src": "9738:84:8", + "statements": [ + { + "id": 3610, + "nodeType": "UncheckedBlock", + "src": "9748:68:8", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_int32", + "typeString": "int32" + }, + "id": 3608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int32", + "typeString": "int32" + }, + "id": 3606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 3600, + "name": "i1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3591, + "src": "9785:2:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 3599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9779:5:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int32_$", + "typeString": "type(int32)" + }, + "typeName": { + "id": 3598, + "name": "int32", + "nodeType": "ElementaryTypeName", + "src": "9779:5:8", + "typeDescriptions": {} + } + }, + "id": 3601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9779:9:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int32", + "typeString": "int32" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "arguments": [ + { + "id": 3604, + "name": "i2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3593, + "src": "9797:2:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 3603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9791:5:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int32_$", + "typeString": "type(int32)" + }, + "typeName": { + "id": 3602, + "name": "int32", + "nodeType": "ElementaryTypeName", + "src": "9791:5:8", + "typeDescriptions": {} + } + }, + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9791:9:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int32", + "typeString": "int32" + } + }, + "src": "9779:21:8", + "typeDescriptions": { + "typeIdentifier": "t_int32", + "typeString": "int32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 3607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9804:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9779:26:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 3597, + "id": 3609, + "nodeType": "Return", + "src": "9772:33:8" + } + ] + } + ] + }, + "documentation": { + "id": 3589, + "nodeType": "StructuredDocumentation", + "src": "9550:85:8", + "text": " @dev Compares two serial numbers using RFC1982 serial number math." + }, + "id": 3612, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "serialNumberGte", + "nameLocation": "9649:15:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3591, + "mutability": "mutable", + "name": "i1", + "nameLocation": "9681:2:8", + "nodeType": "VariableDeclaration", + "scope": 3612, + "src": "9674:9:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 3590, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "9674:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3593, + "mutability": "mutable", + "name": "i2", + "nameLocation": "9700:2:8", + "nodeType": "VariableDeclaration", + "scope": 3612, + "src": "9693:9:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 3592, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "9693:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "9664:44:8" + }, + "returnParameters": { + "id": 3597, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3596, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3612, + "src": "9732:4:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3595, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9732:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9731:6:8" + }, + "scope": 3816, + "src": "9640:182:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3630, + "nodeType": "Block", + "src": "9932:53:8", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3621, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3616, + "src": "9949:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9955:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9949:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 3626, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3616, + "src": "9974:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3624, + "name": "body", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3614, + "src": "9959:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9964:9:8", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "9959:14:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 3627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9959:19:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "9949:29:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3620, + "id": 3629, + "nodeType": "Return", + "src": "9942:36:8" + } + ] + }, + "id": 3631, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "progress", + "nameLocation": "9837:8:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3617, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3614, + "mutability": "mutable", + "name": "body", + "nameLocation": "9868:4:8", + "nodeType": "VariableDeclaration", + "scope": 3631, + "src": "9855:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3613, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9855:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3616, + "mutability": "mutable", + "name": "off", + "nameLocation": "9890:3:8", + "nodeType": "VariableDeclaration", + "scope": 3631, + "src": "9882:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3615, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9882:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9845:54:8" + }, + "returnParameters": { + "id": 3620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3619, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3631, + "src": "9923:7:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3618, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9923:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9922:9:8" + }, + "scope": 3816, + "src": "9828:157:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3814, + "nodeType": "Block", + "src": "10223:3919:8", + "statements": [ + { + "id": 3813, + "nodeType": "UncheckedBlock", + "src": "11959:2177:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3640, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3634, + "src": "11991:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11996:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11991:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "38313932", + "id": 3642, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12006:4:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_8192_by_1", + "typeString": "int_const 8192" + }, + "value": "8192" + }, + "src": "11991:19:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c6f6e67206b657973206e6f74207065726d6974746564", + "id": 3644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12012:25:8", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7e23270aecf7702fd4b1bd212912c277507361dc8248ebed5ad0286c9b051069", + "typeString": "literal_string \"Long keys not permitted\"" + }, + "value": "Long keys not permitted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_7e23270aecf7702fd4b1bd212912c277507361dc8248ebed5ad0286c9b051069", + "typeString": "literal_string \"Long keys not permitted\"" + } + ], + "id": 3639, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11983:7:8", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11983:55:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3646, + "nodeType": "ExpressionStatement", + "src": "11983:55:8" + }, + { + "assignments": [ + 3648 + ], + "declarations": [ + { + "constant": false, + "id": 3648, + "mutability": "mutable", + "name": "ac1", + "nameLocation": "12060:3:8", + "nodeType": "VariableDeclaration", + "scope": 3813, + "src": "12052:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3647, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12052:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3649, + "nodeType": "VariableDeclarationStatement", + "src": "12052:11:8" + }, + { + "assignments": [ + 3651 + ], + "declarations": [ + { + "constant": false, + "id": 3651, + "mutability": "mutable", + "name": "ac2", + "nameLocation": "12085:3:8", + "nodeType": "VariableDeclaration", + "scope": 3813, + "src": "12077:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3650, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12077:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3652, + "nodeType": "VariableDeclarationStatement", + "src": "12077:11:8" + }, + { + "body": { + "id": 3716, + "nodeType": "Block", + "src": "12153:619:8", + "statements": [ + { + "assignments": [ + 3668 + ], + "declarations": [ + { + "constant": false, + "id": 3668, + "mutability": "mutable", + "name": "word", + "nameLocation": "12179:4:8", + "nodeType": "VariableDeclaration", + "scope": 3716, + "src": "12171:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3667, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12171:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3669, + "nodeType": "VariableDeclarationStatement", + "src": "12171:12:8" + }, + { + "AST": { + "nativeSrc": "12210:76:8", + "nodeType": "YulBlock", + "src": "12210:76:8", + "statements": [ + { + "nativeSrc": "12232:36:8", + "nodeType": "YulAssignment", + "src": "12232:36:8", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nativeSrc": "12254:4:8", + "nodeType": "YulIdentifier", + "src": "12254:4:8" + }, + { + "kind": "number", + "nativeSrc": "12260:2:8", + "nodeType": "YulLiteral", + "src": "12260:2:8", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12250:3:8", + "nodeType": "YulIdentifier", + "src": "12250:3:8" + }, + "nativeSrc": "12250:13:8", + "nodeType": "YulFunctionCall", + "src": "12250:13:8" + }, + { + "name": "i", + "nativeSrc": "12265:1:8", + "nodeType": "YulIdentifier", + "src": "12265:1:8" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12246:3:8", + "nodeType": "YulIdentifier", + "src": "12246:3:8" + }, + "nativeSrc": "12246:21:8", + "nodeType": "YulFunctionCall", + "src": "12246:21:8" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "12240:5:8", + "nodeType": "YulIdentifier", + "src": "12240:5:8" + }, + "nativeSrc": "12240:28:8", + "nodeType": "YulFunctionCall", + "src": "12240:28:8" + }, + "variableNames": [ + { + "name": "word", + "nativeSrc": "12232:4:8", + "nodeType": "YulIdentifier", + "src": "12232:4:8" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 3634, + "isOffset": false, + "isSlot": false, + "src": "12254:4:8", + "valueSize": 1 + }, + { + "declaration": 3654, + "isOffset": false, + "isSlot": false, + "src": "12265:1:8", + "valueSize": 1 + }, + { + "declaration": 3668, + "isOffset": false, + "isSlot": false, + "src": "12232:4:8", + "valueSize": 1 + } + ], + "id": 3670, + "nodeType": "InlineAssembly", + "src": "12201:85:8" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3671, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3654, + "src": "12307:1:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3332", + "id": 3672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12311:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "12307:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 3674, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3634, + "src": "12316:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12321:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12316:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12307:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3699, + "nodeType": "IfStatement", + "src": "12303:166:8", + "trueBody": { + "id": 3698, + "nodeType": "Block", + "src": "12329:140:8", + "statements": [ + { + "assignments": [ + 3678 + ], + "declarations": [ + { + "constant": false, + "id": 3678, + "mutability": "mutable", + "name": "unused", + "nameLocation": "12359:6:8", + "nodeType": "VariableDeclaration", + "scope": 3698, + "src": "12351:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3677, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12351:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3688, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 3679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12368:3:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3680, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3634, + "src": "12375:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3681, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12380:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12375:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 3682, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3654, + "src": "12389:1:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12375:15:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3684, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12374:17:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "38", + "id": 3685, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12394:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "12374:21:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12368:27:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12351:44:8" + }, + { + "expression": { + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3689, + "name": "word", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3668, + "src": "12417:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3692, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3690, + "name": "word", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3668, + "src": "12425:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "id": 3691, + "name": "unused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3678, + "src": "12433:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12425:14:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3693, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12424:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "id": 3694, + "name": "unused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3678, + "src": "12444:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12424:26:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12417:33:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3697, + "nodeType": "ExpressionStatement", + "src": "12417:33:8" + } + ] + } + }, + { + "expression": { + "id": 3707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3700, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "12486:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3701, + "name": "word", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3668, + "src": "12514:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846463030464630304646303046463030464630304646303046463030464630304646303046463030464630304646303046463030464630304646303046463030", + "id": 3702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12545:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_115341536360906404779899502576747487978354537254490211650198994186870666100480_by_1", + "typeString": "int_const 1153...(70 digits omitted)...0480" + }, + "value": "0xFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00" + }, + "src": "12514:97:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3704, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12513:99:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "38", + "id": 3705, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12636:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "12513:124:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12486:151:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3708, + "nodeType": "ExpressionStatement", + "src": "12486:151:8" + }, + { + "expression": { + "id": 3714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3709, + "name": "ac2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3651, + "src": "12655:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3710, + "name": "word", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3668, + "src": "12663:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830304646303046463030464630304646303046463030464630304646303046463030464630304646303046463030464630304646303046463030464630304646", + "id": 3711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12690:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_450552876409790643671482431940419874915447411150352389258589821042463539455_by_1", + "typeString": "int_const 4505...(67 digits omitted)...9455" + }, + "value": "0x00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF" + }, + "src": "12663:93:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3713, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12662:95:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12655:102:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3715, + "nodeType": "ExpressionStatement", + "src": "12655:102:8" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3657, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3654, + "src": "12122:1:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3658, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3634, + "src": "12126:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12131:6:8", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12126:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3331", + "id": 3660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12140:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "31" + }, + "src": "12126:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12122:20:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3717, + "initializationExpression": { + "assignments": [ + 3654 + ], + "declarations": [ + { + "constant": false, + "id": 3654, + "mutability": "mutable", + "name": "i", + "nameLocation": "12115:1:8", + "nodeType": "VariableDeclaration", + "scope": 3717, + "src": "12107:9:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3653, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12107:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3656, + "initialValue": { + "hexValue": "30", + "id": 3655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12119:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12107:13:8" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 3665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3663, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3654, + "src": "12144:1:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 3664, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12149:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "12144:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3666, + "nodeType": "ExpressionStatement", + "src": "12144:7:8" + }, + "nodeType": "ForStatement", + "src": "12102:670:8" + }, + { + "expression": { + "id": 3731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3718, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "12785:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3719, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "12808:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830303030464646463030303046464646303030304646464630303030464646463030303046464646303030304646464630303030464646463030303046464646", + "id": 3720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12834:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1766820105243087041267848467410591083712559083657179364930612997358944255_by_1", + "typeString": "int_const 1766...(65 digits omitted)...4255" + }, + "value": "0x0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF" + }, + "src": "12808:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3722, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12807:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3723, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "12922:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846464646303030304646464630303030464646463030303046464646303030304646464630303030464646463030303046464646303030304646464630303030", + "id": 3724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12948:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_115790322417210952336529717160220497262186272106556906860092653394915770695680_by_1", + "typeString": "int_const 1157...(70 digits omitted)...5680" + }, + "value": "0xFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000" + }, + "src": "12922:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3726, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12921:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3136", + "id": 3727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13039:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "12921:120:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3729, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12920:122:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12807:235:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12785:257:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3732, + "nodeType": "ExpressionStatement", + "src": "12785:257:8" + }, + { + "expression": { + "id": 3746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3733, + "name": "ac2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3651, + "src": "13056:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3734, + "name": "ac2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3651, + "src": "13079:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830303030464646463030303046464646303030304646464630303030464646463030303046464646303030304646464630303030464646463030303046464646", + "id": 3735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13105:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_1766820105243087041267848467410591083712559083657179364930612997358944255_by_1", + "typeString": "int_const 1766...(65 digits omitted)...4255" + }, + "value": "0x0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF" + }, + "src": "13079:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3737, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13078:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3738, + "name": "ac2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3651, + "src": "13193:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846464646303030304646464630303030464646463030303046464646303030304646464630303030464646463030303046464646303030304646464630303030", + "id": 3739, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13219:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_115790322417210952336529717160220497262186272106556906860092653394915770695680_by_1", + "typeString": "int_const 1157...(70 digits omitted)...5680" + }, + "value": "0xFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000" + }, + "src": "13193:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3741, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13192:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3136", + "id": 3742, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13310:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "13192:120:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3744, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13191:122:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13078:235:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13056:257:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3747, + "nodeType": "ExpressionStatement", + "src": "13056:257:8" + }, + { + "expression": { + "id": 3755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3748, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13327:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3749, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13334:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "38", + "id": 3750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13341:1:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "13334:8:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3752, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13333:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3753, + "name": "ac2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3651, + "src": "13346:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13333:16:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13327:22:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3756, + "nodeType": "ExpressionStatement", + "src": "13327:22:8" + }, + { + "expression": { + "id": 3770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3757, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13363:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3758, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13386:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830303030303030304646464646464646303030303030303046464646464646463030303030303030464646464646464630303030303030304646464646464646", + "id": 3759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13412:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_26959946660873538060741835960174461801791452538186943042387869433855_by_1", + "typeString": "int_const 2695...(60 digits omitted)...3855" + }, + "value": "0x00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF" + }, + "src": "13386:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3761, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13385:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3762, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13500:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846464646464646463030303030303030464646464646464630303030303030304646464646464646303030303030303046464646464646463030303030303030", + "id": 3763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13526:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089210356248762697446947946071893095522863849111501270640965525260206080_by_1", + "typeString": "int_const 1157...(70 digits omitted)...6080" + }, + "value": "0xFFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000" + }, + "src": "13500:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3765, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13499:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3332", + "id": 3766, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13617:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "13499:120:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3768, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13498:122:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13385:235:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13363:257:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3771, + "nodeType": "ExpressionStatement", + "src": "13363:257:8" + }, + { + "expression": { + "id": 3785, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3772, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13634:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3773, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13657:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830303030303030303030303030303030464646464646464646464646464646463030303030303030303030303030303046464646464646464646464646464646", + "id": 3774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13683:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_6277101735386680763495507056286727952657427581105975853055_by_1", + "typeString": "int_const 6277...(50 digits omitted)...3055" + }, + "value": "0x0000000000000000FFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFF" + }, + "src": "13657:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3776, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13656:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3777, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13771:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846464646464646464646464646464646303030303030303030303030303030304646464646464646464646464646464630303030303030303030303030303030", + "id": 3778, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13797:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195417293883273301227089774477609353836086800156426807153786880_by_1", + "typeString": "int_const 1157...(70 digits omitted)...6880" + }, + "value": "0xFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFF0000000000000000" + }, + "src": "13771:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3780, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13770:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3634", + "id": 3781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13888:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "13770:120:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3783, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13769:122:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13656:235:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13634:257:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3786, + "nodeType": "ExpressionStatement", + "src": "13634:257:8" + }, + { + "expression": { + "id": 3797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3787, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13905:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3788, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "13928:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307830303030303030303030303030303030303030303030303030303030303030304646464646464646464646464646464646464646464646464646464646464646", + "id": 3789, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13954:66:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211455_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1455" + }, + "value": "0x00000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + }, + "src": "13928:92:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3791, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13927:94:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3792, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "14041:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "313238", + "id": 3793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14048:3:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "14041:10:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3795, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "14040:12:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13927:125:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13905:147:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3798, + "nodeType": "ExpressionStatement", + "src": "13905:147:8" + }, + { + "expression": { + "id": 3806, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3799, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "14066:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3805, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3800, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "14074:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3136", + "id": 3801, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14081:2:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "14074:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3803, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "14073:11:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307846464646", + "id": 3804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14087:6:8", + "typeDescriptions": { + "typeIdentifier": "t_rational_65535_by_1", + "typeString": "int_const 65535" + }, + "value": "0xFFFF" + }, + "src": "14073:20:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14066:27:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3807, + "nodeType": "ExpressionStatement", + "src": "14066:27:8" + }, + { + "expression": { + "arguments": [ + { + "id": 3810, + "name": "ac1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3648, + "src": "14121:3:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14114:6:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint16_$", + "typeString": "type(uint16)" + }, + "typeName": { + "id": 3808, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "14114:6:8", + "typeDescriptions": {} + } + }, + "id": 3811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14114:11:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "functionReturnParameters": 3638, + "id": 3812, + "nodeType": "Return", + "src": "14107:18:8" + } + ] + } + ] + }, + "documentation": { + "id": 3632, + "nodeType": "StructuredDocumentation", + "src": "9991:154:8", + "text": " @dev Computes the keytag for a chunk of data.\n @param data The data to compute a keytag for.\n @return The computed key tag." + }, + "id": 3815, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "computeKeytag", + "nameLocation": "10159:13:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3635, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3634, + "mutability": "mutable", + "name": "data", + "nameLocation": "10186:4:8", + "nodeType": "VariableDeclaration", + "scope": 3815, + "src": "10173:17:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3633, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10173:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "10172:19:8" + }, + "returnParameters": { + "id": 3638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3637, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3815, + "src": "10215:6:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 3636, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "10215:6:8", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "10214:8:8" + }, + "scope": 3816, + "src": "10150:3992:8", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 3817, + "src": "236:13908:8", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:14114:8" + }, + "id": 8 + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "BaseRegistrarImplementation": [ + 4335 + ], + "Context": [ + 14871 + ], + "ENS": [ + 4567 + ], + "ERC165": [ + 15124 + ], + "ERC721": [ + 14350 + ], + "IBaseRegistrar": [ + 4430 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IERC721Metadata": [ + 14511 + ], + "IERC721Receiver": [ + 14484 + ], + "Math": [ + 16002 + ], + "Ownable": [ + 13167 + ], + "SignedMath": [ + 16107 + ], + "Strings": [ + 15100 + ] + }, + "id": 4336, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3818, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:24:9" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 3819, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4336, + "sourceUnit": 4568, + "src": "26:29:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "file": "./IBaseRegistrar.sol", + "id": 3820, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4336, + "sourceUnit": 4431, + "src": "56:30:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", + "file": "@openzeppelin/contracts/token/ERC721/ERC721.sol", + "id": 3821, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4336, + "sourceUnit": 14351, + "src": "87:57:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 3822, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4336, + "sourceUnit": 13168, + "src": "145:52:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 3823, + "name": "ERC721", + "nameLocations": [ + "239:6:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "239:6:9" + }, + "id": 3824, + "nodeType": "InheritanceSpecifier", + "src": "239:6:9" + }, + { + "baseName": { + "id": 3825, + "name": "IBaseRegistrar", + "nameLocations": [ + "247:14:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4430, + "src": "247:14:9" + }, + "id": 3826, + "nodeType": "InheritanceSpecifier", + "src": "247:14:9" + }, + { + "baseName": { + "id": 3827, + "name": "Ownable", + "nameLocations": [ + "263:7:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "263:7:9" + }, + "id": 3828, + "nodeType": "InheritanceSpecifier", + "src": "263:7:9" + } + ], + "canonicalName": "BaseRegistrarImplementation", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 4335, + "linearizedBaseContracts": [ + 4335, + 13167, + 4430, + 14350, + 14511, + 14466, + 15124, + 15136, + 14871 + ], + "name": "BaseRegistrarImplementation", + "nameLocation": "208:27:9", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3832, + "mutability": "mutable", + "name": "expiries", + "nameLocation": "334:8:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "306:36:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "typeName": { + "id": 3831, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 3829, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "314:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "306:27:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 3830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "325:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "functionSelector": "3f15457f", + "id": 3835, + "mutability": "mutable", + "name": "ens", + "nameLocation": "383:3:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "372:14:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 3834, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3833, + "name": "ENS", + "nameLocations": [ + "372:3:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "372:3:9" + }, + "referencedDeclaration": 4567, + "src": "372:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "ddf7fcb0", + "id": 3837, + "mutability": "mutable", + "name": "baseNode", + "nameLocation": "469:8:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "454:23:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3836, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "454:7:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "da8c229e", + "id": 3841, + "mutability": "mutable", + "name": "controllers", + "nameLocation": "590:11:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "558:43:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 3840, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 3838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "566:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "558:24:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 3839, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "577:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "constant": true, + "functionSelector": "c1a287e2", + "id": 3844, + "mutability": "constant", + "name": "GRACE_PERIOD", + "nameLocation": "631:12:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "607:46:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3842, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "607:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3930", + "id": 3843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "646:7:9", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_7776000_by_1", + "typeString": "int_const 7776000" + }, + "value": "90" + }, + "visibility": "public" + }, + { + "constant": true, + "id": 3852, + "mutability": "constant", + "name": "INTERFACE_META_ID", + "nameLocation": "683:17:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "659:98:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3845, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "659:6:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "737570706f727473496e746572666163652862797465733429", + "id": 3849, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "728:27:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + }, + "value": "supportsInterface(bytes4)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + } + ], + "id": 3848, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "718:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "718:38:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "711:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3846, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "711:6:9", + "typeDescriptions": {} + } + }, + "id": 3851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "711:46:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "private" + }, + { + "constant": true, + "id": 3892, + "mutability": "constant", + "name": "ERC721_ID", + "nameLocation": "787:9:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "763:610:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3853, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "763:6:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "value": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3886, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3882, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3866, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "hexValue": "62616c616e63654f66286164647265737329", + "id": 3857, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "837:20:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_70a08231b98ef4ca268c9cc3f6b4590e4bfec28280db06bb5d45e689f2a360be", + "typeString": "literal_string \"balanceOf(address)\"" + }, + "value": "balanceOf(address)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_70a08231b98ef4ca268c9cc3f6b4590e4bfec28280db06bb5d45e689f2a360be", + "typeString": "literal_string \"balanceOf(address)\"" + } + ], + "id": 3856, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "827:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3858, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "827:31:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "6f776e65724f662875696e7432353629", + "id": 3860, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "887:18:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6352211e6566aa027e75ac9dbf2423197fbd9b82b9d981a3ab367d355866aa1c", + "typeString": "literal_string \"ownerOf(uint256)\"" + }, + "value": "ownerOf(uint256)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6352211e6566aa027e75ac9dbf2423197fbd9b82b9d981a3ab367d355866aa1c", + "typeString": "literal_string \"ownerOf(uint256)\"" + } + ], + "id": 3859, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "877:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "877:29:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:79:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "617070726f766528616464726573732c75696e7432353629", + "id": 3864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "935:26:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_095ea7b334ae44009aa867bfb386f5c3b4b443ac6f0ee573fa91c4608fbadfba", + "typeString": "literal_string \"approve(address,uint256)\"" + }, + "value": "approve(address,uint256)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_095ea7b334ae44009aa867bfb386f5c3b4b443ac6f0ee573fa91c4608fbadfba", + "typeString": "literal_string \"approve(address,uint256)\"" + } + ], + "id": 3863, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "925:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "925:37:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:135:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "676574417070726f7665642875696e7432353629", + "id": 3868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "991:22:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_081812fc55e34fdc7cf5d8b5cf4e3621fa6423fde952ec6ab24afdc0d85c0b2e", + "typeString": "literal_string \"getApproved(uint256)\"" + }, + "value": "getApproved(uint256)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_081812fc55e34fdc7cf5d8b5cf4e3621fa6423fde952ec6ab24afdc0d85c0b2e", + "typeString": "literal_string \"getApproved(uint256)\"" + } + ], + "id": 3867, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "981:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3869, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "981:33:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:187:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "736574417070726f76616c466f72416c6c28616464726573732c626f6f6c29", + "id": 3872, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1043:33:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a22cb4651ab9570f89bb516380c40ce76762284fb1f21337ceaf6adab99e7d4a", + "typeString": "literal_string \"setApprovalForAll(address,bool)\"" + }, + "value": "setApprovalForAll(address,bool)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a22cb4651ab9570f89bb516380c40ce76762284fb1f21337ceaf6adab99e7d4a", + "typeString": "literal_string \"setApprovalForAll(address,bool)\"" + } + ], + "id": 3871, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1033:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1033:44:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:250:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "6973417070726f766564466f72416c6c28616464726573732c6164647265737329", + "id": 3876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1106:35:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e985e9c5c6636c6879256001057b28ccac7718ef0ac56553ff9b926452cab8a3", + "typeString": "literal_string \"isApprovedForAll(address,address)\"" + }, + "value": "isApprovedForAll(address,address)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e985e9c5c6636c6879256001057b28ccac7718ef0ac56553ff9b926452cab8a3", + "typeString": "literal_string \"isApprovedForAll(address,address)\"" + } + ], + "id": 3875, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1096:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3877, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1096:46:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:315:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "7472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629", + "id": 3880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1171:39:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_23b872dd7302113369cda2901243429419bec145408fa8b352b3dd92b66c680b", + "typeString": "literal_string \"transferFrom(address,address,uint256)\"" + }, + "value": "transferFrom(address,address,uint256)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_23b872dd7302113369cda2901243429419bec145408fa8b352b3dd92b66c680b", + "typeString": "literal_string \"transferFrom(address,address,uint256)\"" + } + ], + "id": 3879, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1161:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3881, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1161:50:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:384:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629", + "id": 3884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1240:43:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42842e0eb38857a7775b4e7364b2775df7325074d088e7fb39590cd6281184ed", + "typeString": "literal_string \"safeTransferFrom(address,address,uint256)\"" + }, + "value": "safeTransferFrom(address,address,uint256)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42842e0eb38857a7775b4e7364b2775df7325074d088e7fb39590cd6281184ed", + "typeString": "literal_string \"safeTransferFrom(address,address,uint256)\"" + } + ], + "id": 3883, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1230:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1230:54:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:457:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "arguments": [ + { + "hexValue": "736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329", + "id": 3888, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1313:49:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b88d4fde60196325a28bb7f99a2582e0b46de55b18761e960c14ad7a32099465", + "typeString": "literal_string \"safeTransferFrom(address,address,uint256,bytes)\"" + }, + "value": "safeTransferFrom(address,address,uint256,bytes)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b88d4fde60196325a28bb7f99a2582e0b46de55b18761e960c14ad7a32099465", + "typeString": "literal_string \"safeTransferFrom(address,address,uint256,bytes)\"" + } + ], + "id": 3887, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1303:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3889, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1303:60:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "827:536:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3855, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "807:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3854, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "807:6:9", + "typeDescriptions": {} + } + }, + "id": 3891, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "807:566:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "private" + }, + { + "constant": true, + "id": 3900, + "mutability": "constant", + "name": "RECLAIM_ID", + "nameLocation": "1403:10:9", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "1379:90:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3893, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1379:6:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "7265636c61696d2875696e743235362c6164647265737329", + "id": 3897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1441:26:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_28ed4f6c74b219a5819055dfbcd2f1837c046c364cf01fabb6799e4f440d6f13", + "typeString": "literal_string \"reclaim(uint256,address)\"" + }, + "value": "reclaim(uint256,address)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_28ed4f6c74b219a5819055dfbcd2f1837c046c364cf01fabb6799e4f440d6f13", + "typeString": "literal_string \"reclaim(uint256,address)\"" + } + ], + "id": 3896, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1431:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1431:37:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1424:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3894, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1424:6:9", + "typeDescriptions": {} + } + }, + "id": 3899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1424:45:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "private" + }, + { + "baseFunctions": [ + 13903 + ], + "body": { + "id": 3933, + "nodeType": "Block", + "src": "2219:179:9", + "statements": [ + { + "assignments": [ + 3912 + ], + "declarations": [ + { + "constant": false, + "id": 3912, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2237:5:9", + "nodeType": "VariableDeclaration", + "scope": 3933, + "src": "2229:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3911, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2229:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3916, + "initialValue": { + "arguments": [ + { + "id": 3914, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3905, + "src": "2253:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3913, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4008 + ], + "referencedDeclaration": 4008, + "src": "2245:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2245:16:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2229:32:9" + }, + { + "expression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3917, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3903, + "src": "2279:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 3918, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3912, + "src": "2290:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2279:16:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 3921, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3905, + "src": "2323:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3920, + "name": "getApproved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13698, + "src": "2311:11:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 3922, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2311:20:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 3923, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3903, + "src": "2335:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2311:31:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2279:63:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 3927, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3912, + "src": "2375:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3928, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3903, + "src": "2382:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3926, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13733, + "src": "2358:16:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 3929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2358:32:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2279:111:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 3931, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2278:113:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 3910, + "id": 3932, + "nodeType": "Return", + "src": "2271:120:9" + } + ] + }, + "documentation": { + "id": 3901, + "nodeType": "StructuredDocumentation", + "src": "1476:616:9", + "text": " v2.1.3 version of _isApprovedOrOwner which calls ownerOf(tokenId) and takes grace period into consideration instead of ERC721.ownerOf(tokenId);\n https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v2.1.3/contracts/token/ERC721/ERC721.sol#L187\n @dev Returns whether the given spender can transfer a given token ID\n @param spender address of the spender to query\n @param tokenId uint256 ID of the token to be transferred\n @return bool whether the msg.sender is approved for the given token ID,\n is an operator of the owner, or is the owner of the token" + }, + "id": 3934, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_isApprovedOrOwner", + "nameLocation": "2106:18:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 3907, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2195:8:9" + }, + "parameters": { + "id": 3906, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3903, + "mutability": "mutable", + "name": "spender", + "nameLocation": "2142:7:9", + "nodeType": "VariableDeclaration", + "scope": 3934, + "src": "2134:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3902, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2134:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3905, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2167:7:9", + "nodeType": "VariableDeclaration", + "scope": 3934, + "src": "2159:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3904, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2159:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2124:56:9" + }, + "returnParameters": { + "id": 3910, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3909, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3934, + "src": "2213:4:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3908, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2213:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2212:6:9" + }, + "scope": 4335, + "src": "2097:301:9", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3954, + "nodeType": "Block", + "src": "2460:57:9", + "statements": [ + { + "expression": { + "id": 3948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3946, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "2470:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3947, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3937, + "src": "2476:4:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "src": "2470:10:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 3949, + "nodeType": "ExpressionStatement", + "src": "2470:10:9" + }, + { + "expression": { + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3950, + "name": "baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3837, + "src": "2490:8:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3951, + "name": "_baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3939, + "src": "2501:9:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2490:20:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3953, + "nodeType": "ExpressionStatement", + "src": "2490:20:9" + } + ] + }, + "id": 3955, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "hexValue": "", + "id": 3942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2452:2:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + { + "hexValue": "", + "id": 3943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2456:2:9", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "id": 3944, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 3941, + "name": "ERC721", + "nameLocations": [ + "2445:6:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "2445:6:9" + }, + "nodeType": "ModifierInvocation", + "src": "2445:14:9" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3937, + "mutability": "mutable", + "name": "_ens", + "nameLocation": "2420:4:9", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "2416:8:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 3936, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3935, + "name": "ENS", + "nameLocations": [ + "2416:3:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "2416:3:9" + }, + "referencedDeclaration": 4567, + "src": "2416:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3939, + "mutability": "mutable", + "name": "_baseNode", + "nameLocation": "2434:9:9", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "2426:17:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3938, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2426:7:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2415:29:9" + }, + "returnParameters": { + "id": 3945, + "nodeType": "ParameterList", + "parameters": [], + "src": "2460:0:9" + }, + "scope": 4335, + "src": "2404:113:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 3970, + "nodeType": "Block", + "src": "2539:73:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 3960, + "name": "baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3837, + "src": "2567:8:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3958, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "2557:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 3959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2561:5:9", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "2557:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 3961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2557:19:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 3964, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "2588:4:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BaseRegistrarImplementation_$4335", + "typeString": "contract BaseRegistrarImplementation" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_BaseRegistrarImplementation_$4335", + "typeString": "contract BaseRegistrarImplementation" + } + ], + "id": 3963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2580:7:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3962, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2580:7:9", + "typeDescriptions": {} + } + }, + "id": 3965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2580:13:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2557:36:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3957, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2549:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2549:45:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3968, + "nodeType": "ExpressionStatement", + "src": "2549:45:9" + }, + { + "id": 3969, + "nodeType": "PlaceholderStatement", + "src": "2604:1:9" + } + ] + }, + "id": 3971, + "name": "live", + "nameLocation": "2532:4:9", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 3956, + "nodeType": "ParameterList", + "parameters": [], + "src": "2536:2:9" + }, + "src": "2523:89:9", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 3981, + "nodeType": "Block", + "src": "2644:60:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 3974, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3841, + "src": "2662:11:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 3977, + "indexExpression": { + "expression": { + "id": 3975, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2674:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2678:6:9", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2674:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2662:23:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3973, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2654:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2654:32:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3979, + "nodeType": "ExpressionStatement", + "src": "2654:32:9" + }, + { + "id": 3980, + "nodeType": "PlaceholderStatement", + "src": "2696:1:9" + } + ] + }, + "id": 3982, + "name": "onlyController", + "nameLocation": "2627:14:9", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 3972, + "nodeType": "ParameterList", + "parameters": [], + "src": "2641:2:9" + }, + "src": "2618:86:9", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 13569, + 14399 + ], + "body": { + "id": 4007, + "nodeType": "Block", + "src": "3093:100:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 3994, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "3111:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 3996, + "indexExpression": { + "id": 3995, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3985, + "src": "3120:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3111:17:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 3997, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "3131:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 3998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3137:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "3131:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3111:35:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3993, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3103:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3103:44:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4001, + "nodeType": "ExpressionStatement", + "src": "3103:44:9" + }, + { + "expression": { + "arguments": [ + { + "id": 4004, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3985, + "src": "3178:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4002, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "3164:5:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_BaseRegistrarImplementation_$4335_$", + "typeString": "type(contract super BaseRegistrarImplementation)" + } + }, + "id": 4003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3170:7:9", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "3164:13:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 4005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3164:22:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 3992, + "id": 4006, + "nodeType": "Return", + "src": "3157:29:9" + } + ] + }, + "documentation": { + "id": 3983, + "nodeType": "StructuredDocumentation", + "src": "2710:274:9", + "text": " @dev Gets the owner of the specified token ID. Names become unowned\n when their registration expires.\n @param tokenId uint256 ID of the token to query the owner of\n @return address currently marked as the owner of the given token ID" + }, + "functionSelector": "6352211e", + "id": 4008, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "2998:7:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 3989, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 3987, + "name": "IERC721", + "nameLocations": [ + "3058:7:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14466, + "src": "3058:7:9" + }, + { + "id": 3988, + "name": "ERC721", + "nameLocations": [ + "3067:6:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "3067:6:9" + } + ], + "src": "3049:25:9" + }, + "parameters": { + "id": 3986, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3985, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "3023:7:9", + "nodeType": "VariableDeclaration", + "scope": 4008, + "src": "3015:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3984, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3015:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3005:31:9" + }, + "returnParameters": { + "id": 3992, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3991, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4008, + "src": "3084:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3990, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3084:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3083:9:9" + }, + "scope": 4335, + "src": "2989:204:9", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 4376 + ], + "body": { + "id": 4026, + "nodeType": "Block", + "src": "3338:89:9", + "statements": [ + { + "expression": { + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 4016, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3841, + "src": "3348:11:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4018, + "indexExpression": { + "id": 4017, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4010, + "src": "3360:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3348:23:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 4019, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3374:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "3348:30:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4021, + "nodeType": "ExpressionStatement", + "src": "3348:30:9" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4023, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4010, + "src": "3409:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4022, + "name": "ControllerAdded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4345, + "src": "3393:15:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 4024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3393:27:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4025, + "nodeType": "EmitStatement", + "src": "3388:32:9" + } + ] + }, + "functionSelector": "a7fc7a07", + "id": 4027, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4014, + "kind": "modifierInvocation", + "modifierName": { + "id": 4013, + "name": "onlyOwner", + "nameLocations": [ + "3328:9:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "3328:9:9" + }, + "nodeType": "ModifierInvocation", + "src": "3328:9:9" + } + ], + "name": "addController", + "nameLocation": "3276:13:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4012, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3319:8:9" + }, + "parameters": { + "id": 4011, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4010, + "mutability": "mutable", + "name": "controller", + "nameLocation": "3298:10:9", + "nodeType": "VariableDeclaration", + "scope": 4027, + "src": "3290:18:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4009, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3290:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3289:20:9" + }, + "returnParameters": { + "id": 4015, + "nodeType": "ParameterList", + "parameters": [], + "src": "3338:0:9" + }, + "scope": 4335, + "src": "3267:160:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 4381 + ], + "body": { + "id": 4045, + "nodeType": "Block", + "src": "3559:92:9", + "statements": [ + { + "expression": { + "id": 4039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 4035, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3841, + "src": "3569:11:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4037, + "indexExpression": { + "id": 4036, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4029, + "src": "3581:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3569:23:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 4038, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3595:5:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "3569:31:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4040, + "nodeType": "ExpressionStatement", + "src": "3569:31:9" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4042, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4029, + "src": "3633:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4041, + "name": "ControllerRemoved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4349, + "src": "3615:17:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3615:29:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4044, + "nodeType": "EmitStatement", + "src": "3610:34:9" + } + ] + }, + "functionSelector": "f6a74ed7", + "id": 4046, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4033, + "kind": "modifierInvocation", + "modifierName": { + "id": 4032, + "name": "onlyOwner", + "nameLocations": [ + "3549:9:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "3549:9:9" + }, + "nodeType": "ModifierInvocation", + "src": "3549:9:9" + } + ], + "name": "removeController", + "nameLocation": "3494:16:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4031, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3540:8:9" + }, + "parameters": { + "id": 4030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4029, + "mutability": "mutable", + "name": "controller", + "nameLocation": "3519:10:9", + "nodeType": "VariableDeclaration", + "scope": 4046, + "src": "3511:18:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4028, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3511:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3510:20:9" + }, + "returnParameters": { + "id": 4034, + "nodeType": "ParameterList", + "parameters": [], + "src": "3559:0:9" + }, + "scope": 4335, + "src": "3485:166:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 4386 + ], + "body": { + "id": 4061, + "nodeType": "Block", + "src": "3784:52:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4057, + "name": "baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3837, + "src": "3810:8:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4058, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4048, + "src": "3820:8:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4054, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "3794:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 4056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3798:11:9", + "memberName": "setResolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4508, + "src": "3794:15:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 4059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3794:35:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4060, + "nodeType": "ExpressionStatement", + "src": "3794:35:9" + } + ] + }, + "functionSelector": "4e543b26", + "id": 4062, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4052, + "kind": "modifierInvocation", + "modifierName": { + "id": 4051, + "name": "onlyOwner", + "nameLocations": [ + "3774:9:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "3774:9:9" + }, + "nodeType": "ModifierInvocation", + "src": "3774:9:9" + } + ], + "name": "setResolver", + "nameLocation": "3726:11:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4050, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3765:8:9" + }, + "parameters": { + "id": 4049, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4048, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3746:8:9", + "nodeType": "VariableDeclaration", + "scope": 4062, + "src": "3738:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4047, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3738:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3737:18:9" + }, + "returnParameters": { + "id": 4053, + "nodeType": "ParameterList", + "parameters": [], + "src": "3784:0:9" + }, + "scope": 4335, + "src": "3717:119:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 4393 + ], + "body": { + "id": 4074, + "nodeType": "Block", + "src": "3977:36:9", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 4070, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "3994:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4072, + "indexExpression": { + "id": 4071, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4064, + "src": "4003:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3994:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4069, + "id": 4073, + "nodeType": "Return", + "src": "3987:19:9" + } + ] + }, + "functionSelector": "d6e4fa86", + "id": 4075, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "nameExpires", + "nameLocation": "3912:11:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4066, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3950:8:9" + }, + "parameters": { + "id": 4065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4064, + "mutability": "mutable", + "name": "id", + "nameLocation": "3932:2:9", + "nodeType": "VariableDeclaration", + "scope": 4075, + "src": "3924:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3924:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3923:12:9" + }, + "returnParameters": { + "id": 4069, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4068, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4075, + "src": "3968:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4067, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3968:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3967:9:9" + }, + "scope": 4335, + "src": "3903:110:9", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 4400 + ], + "body": { + "id": 4092, + "nodeType": "Block", + "src": "4160:142:9", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4083, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "4250:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4085, + "indexExpression": { + "id": 4084, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4077, + "src": "4259:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4250:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4086, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "4265:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4250:27:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4088, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "4280:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4286:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "4280:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4250:45:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 4082, + "id": 4091, + "nodeType": "Return", + "src": "4243:52:9" + } + ] + }, + "functionSelector": "96e494e8", + "id": 4093, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "available", + "nameLocation": "4102:9:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4079, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4136:8:9" + }, + "parameters": { + "id": 4078, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4077, + "mutability": "mutable", + "name": "id", + "nameLocation": "4120:2:9", + "nodeType": "VariableDeclaration", + "scope": 4093, + "src": "4112:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4076, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4112:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4111:12:9" + }, + "returnParameters": { + "id": 4082, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4081, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4093, + "src": "4154:4:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4080, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4154:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4153:6:9" + }, + "scope": 4335, + "src": "4093:209:9", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 4412 + ], + "body": { + "id": 4113, + "nodeType": "Block", + "src": "4669:60:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4107, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4096, + "src": "4696:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4108, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4098, + "src": "4700:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4109, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4100, + "src": "4707:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "74727565", + "id": 4110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4717:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4106, + "name": "_register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "4686:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint256_$_t_bool_$returns$_t_uint256_$", + "typeString": "function (uint256,address,uint256,bool) returns (uint256)" + } + }, + "id": 4111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4686:36:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4105, + "id": 4112, + "nodeType": "Return", + "src": "4679:43:9" + } + ] + }, + "documentation": { + "id": 4094, + "nodeType": "StructuredDocumentation", + "src": "4308:227:9", + "text": " @dev Register a name.\n @param id The token ID (keccak256 of the label).\n @param owner The address that should own the registration.\n @param duration Duration in seconds for the registration." + }, + "functionSelector": "fca247ac", + "id": 4114, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "register", + "nameLocation": "4549:8:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4102, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4642:8:9" + }, + "parameters": { + "id": 4101, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4096, + "mutability": "mutable", + "name": "id", + "nameLocation": "4575:2:9", + "nodeType": "VariableDeclaration", + "scope": 4114, + "src": "4567:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4095, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4567:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4098, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4595:5:9", + "nodeType": "VariableDeclaration", + "scope": 4114, + "src": "4587:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4097, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4587:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4100, + "mutability": "mutable", + "name": "duration", + "nameLocation": "4618:8:9", + "nodeType": "VariableDeclaration", + "scope": 4114, + "src": "4610:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4099, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4610:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4557:75:9" + }, + "returnParameters": { + "id": 4105, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4104, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4114, + "src": "4660:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4103, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4660:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4659:9:9" + }, + "scope": 4335, + "src": "4540:189:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 4133, + "nodeType": "Block", + "src": "5123:61:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4127, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4117, + "src": "5150:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4128, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4119, + "src": "5154:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4129, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4121, + "src": "5161:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "66616c7365", + "id": 4130, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5171:5:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4126, + "name": "_register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "5140:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint256_$_t_bool_$returns$_t_uint256_$", + "typeString": "function (uint256,address,uint256,bool) returns (uint256)" + } + }, + "id": 4131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5140:37:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4125, + "id": 4132, + "nodeType": "Return", + "src": "5133:44:9" + } + ] + }, + "documentation": { + "id": 4115, + "nodeType": "StructuredDocumentation", + "src": "4735:259:9", + "text": " @dev Register a name, without modifying the registry.\n @param id The token ID (keccak256 of the label).\n @param owner The address that should own the registration.\n @param duration Duration in seconds for the registration." + }, + "functionSelector": "0e297b45", + "id": 4134, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerOnly", + "nameLocation": "5008:12:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4117, + "mutability": "mutable", + "name": "id", + "nameLocation": "5038:2:9", + "nodeType": "VariableDeclaration", + "scope": 4134, + "src": "5030:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4116, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5030:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4119, + "mutability": "mutable", + "name": "owner", + "nameLocation": "5058:5:9", + "nodeType": "VariableDeclaration", + "scope": 4134, + "src": "5050:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4118, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5050:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4121, + "mutability": "mutable", + "name": "duration", + "nameLocation": "5081:8:9", + "nodeType": "VariableDeclaration", + "scope": 4134, + "src": "5073:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4120, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5073:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5020:75:9" + }, + "returnParameters": { + "id": 4125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4124, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4134, + "src": "5114:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4123, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5114:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5113:9:9" + }, + "scope": 4335, + "src": "4999:185:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 4222, + "nodeType": "Block", + "src": "5360:605:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4153, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5388:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4152, + "name": "available", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4093, + "src": "5378:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 4154, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5378:13:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4151, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5370:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5370:22:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4156, + "nodeType": "ExpressionStatement", + "src": "5370:22:9" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4158, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5423:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5429:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5423:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4160, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4140, + "src": "5441:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5423:26:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4162, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "5452:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5423:41:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4164, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5483:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5489:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5483:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4166, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "5501:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5483:30:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5423:90:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4157, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5402:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5402:121:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4170, + "nodeType": "ExpressionStatement", + "src": "5402:121:9" + }, + { + "expression": { + "id": 4178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 4171, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "5561:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4173, + "indexExpression": { + "id": 4172, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5570:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5561:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4174, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5576:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5582:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5576:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4176, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4140, + "src": "5594:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5576:26:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5561:41:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4179, + "nodeType": "ExpressionStatement", + "src": "5561:41:9" + }, + { + "condition": { + "arguments": [ + { + "id": 4181, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5624:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4180, + "name": "_exists", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13869, + "src": "5616:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 4182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5616:11:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4188, + "nodeType": "IfStatement", + "src": "5612:105:9", + "trueBody": { + "id": 4187, + "nodeType": "Block", + "src": "5629:88:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4184, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5703:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4183, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14091, + "src": "5697:5:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 4185, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5697:9:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4186, + "nodeType": "ExpressionStatement", + "src": "5697:9:9" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4190, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4138, + "src": "5732:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4191, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5739:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4189, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14024, + "src": "5726:5:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 4192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5726:16:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4193, + "nodeType": "ExpressionStatement", + "src": "5726:16:9" + }, + { + "condition": { + "id": 4194, + "name": "updateRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4142, + "src": "5756:14:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4207, + "nodeType": "IfStatement", + "src": "5752:94:9", + "trueBody": { + "id": 4206, + "nodeType": "Block", + "src": "5772:74:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4198, + "name": "baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3837, + "src": "5806:8:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 4201, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5824:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5816:7:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4199, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5816:7:9", + "typeDescriptions": {} + } + }, + "id": 4202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5816:11:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4203, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4138, + "src": "5829:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4195, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "5786:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 4197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5790:15:9", + "memberName": "setSubnodeOwner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4501, + "src": "5786:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32,address) external returns (bytes32)" + } + }, + "id": 4204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5786:49:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4205, + "nodeType": "ExpressionStatement", + "src": "5786:49:9" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "id": 4209, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4136, + "src": "5876:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4210, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4138, + "src": "5880:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4211, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5887:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5893:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5887:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4213, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4140, + "src": "5905:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5887:26:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4208, + "name": "NameRegistered", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4365, + "src": "5861:14:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (uint256,address,uint256)" + } + }, + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5861:53:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4216, + "nodeType": "EmitStatement", + "src": "5856:58:9" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4217, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5932:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5938:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5932:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4219, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4140, + "src": "5950:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5932:26:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4150, + "id": 4221, + "nodeType": "Return", + "src": "5925:33:9" + } + ] + }, + "id": 4223, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4145, + "kind": "modifierInvocation", + "modifierName": { + "id": 4144, + "name": "live", + "nameLocations": [ + "5322:4:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3971, + "src": "5322:4:9" + }, + "nodeType": "ModifierInvocation", + "src": "5322:4:9" + }, + { + "id": 4147, + "kind": "modifierInvocation", + "modifierName": { + "id": 4146, + "name": "onlyController", + "nameLocations": [ + "5327:14:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3982, + "src": "5327:14:9" + }, + "nodeType": "ModifierInvocation", + "src": "5327:14:9" + } + ], + "name": "_register", + "nameLocation": "5199:9:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4143, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4136, + "mutability": "mutable", + "name": "id", + "nameLocation": "5226:2:9", + "nodeType": "VariableDeclaration", + "scope": 4223, + "src": "5218:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4135, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5218:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4138, + "mutability": "mutable", + "name": "owner", + "nameLocation": "5246:5:9", + "nodeType": "VariableDeclaration", + "scope": 4223, + "src": "5238:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4137, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5238:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4140, + "mutability": "mutable", + "name": "duration", + "nameLocation": "5269:8:9", + "nodeType": "VariableDeclaration", + "scope": 4223, + "src": "5261:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4139, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5261:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4142, + "mutability": "mutable", + "name": "updateRegistry", + "nameLocation": "5292:14:9", + "nodeType": "VariableDeclaration", + "scope": 4223, + "src": "5287:19:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4141, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5287:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5208:104:9" + }, + "returnParameters": { + "id": 4150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4149, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4223, + "src": "5351:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4148, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5351:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5350:9:9" + }, + "scope": 4335, + "src": "5190:775:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 4421 + ], + "body": { + "id": 4279, + "nodeType": "Block", + "src": "6094:363:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4238, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "6112:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4240, + "indexExpression": { + "id": 4239, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6121:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6112:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4241, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "6127:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6112:27:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "expression": { + "id": 4243, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "6143:5:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 4244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6149:9:9", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "6143:15:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6112:46:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4237, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6104:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6104:55:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4247, + "nodeType": "ExpressionStatement", + "src": "6104:55:9" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4249, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "6241:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4251, + "indexExpression": { + "id": 4250, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6250:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6241:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4252, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4227, + "src": "6256:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6241:23:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4254, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "6267:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6241:38:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4256, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4227, + "src": "6282:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4257, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "6293:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6282:23:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6241:64:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4248, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6220:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6220:95:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4261, + "nodeType": "ExpressionStatement", + "src": "6220:95:9" + }, + { + "expression": { + "id": 4266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 4262, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "6353:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4264, + "indexExpression": { + "id": 4263, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6362:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6353:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 4265, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4227, + "src": "6369:8:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6353:24:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4267, + "nodeType": "ExpressionStatement", + "src": "6353:24:9" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4269, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6404:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "baseExpression": { + "id": 4270, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "6408:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4272, + "indexExpression": { + "id": 4271, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6417:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6408:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4268, + "name": "NameRenewed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4371, + "src": "6392:11:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 4273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6392:29:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4274, + "nodeType": "EmitStatement", + "src": "6387:34:9" + }, + { + "expression": { + "baseExpression": { + "id": 4275, + "name": "expiries", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3832, + "src": "6438:8:9", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 4277, + "indexExpression": { + "id": 4276, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4225, + "src": "6447:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6438:12:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4236, + "id": 4278, + "nodeType": "Return", + "src": "6431:19:9" + } + ] + }, + "functionSelector": "c475abff", + "id": 4280, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4231, + "kind": "modifierInvocation", + "modifierName": { + "id": 4230, + "name": "live", + "nameLocations": [ + "6056:4:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3971, + "src": "6056:4:9" + }, + "nodeType": "ModifierInvocation", + "src": "6056:4:9" + }, + { + "id": 4233, + "kind": "modifierInvocation", + "modifierName": { + "id": 4232, + "name": "onlyController", + "nameLocations": [ + "6061:14:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3982, + "src": "6061:14:9" + }, + "nodeType": "ModifierInvocation", + "src": "6061:14:9" + } + ], + "name": "renew", + "nameLocation": "5980:5:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4229, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "6047:8:9" + }, + "parameters": { + "id": 4228, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4225, + "mutability": "mutable", + "name": "id", + "nameLocation": "6003:2:9", + "nodeType": "VariableDeclaration", + "scope": 4280, + "src": "5995:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5995:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4227, + "mutability": "mutable", + "name": "duration", + "nameLocation": "6023:8:9", + "nodeType": "VariableDeclaration", + "scope": 4280, + "src": "6015:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4226, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6015:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5985:52:9" + }, + "returnParameters": { + "id": 4236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4235, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4280, + "src": "6085:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6085:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6084:9:9" + }, + "scope": 4335, + "src": "5971:486:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 4429 + ], + "body": { + "id": 4310, + "nodeType": "Block", + "src": "6626:119:9", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "id": 4293, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6663:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6667:6:9", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6663:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4295, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4283, + "src": "6675:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4292, + "name": "_isApprovedOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3934 + ], + "referencedDeclaration": 3934, + "src": "6644:18:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) view returns (bool)" + } + }, + "id": 4296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6644:34:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4291, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6636:7:9", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6636:43:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4298, + "nodeType": "ExpressionStatement", + "src": "6636:43:9" + }, + { + "expression": { + "arguments": [ + { + "id": 4302, + "name": "baseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3837, + "src": "6709:8:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 4305, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4283, + "src": "6727:2:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6719:7:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4303, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6719:7:9", + "typeDescriptions": {} + } + }, + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6719:11:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4307, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4285, + "src": "6732:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4299, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "6689:3:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 4301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6693:15:9", + "memberName": "setSubnodeOwner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4501, + "src": "6689:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32,address) external returns (bytes32)" + } + }, + "id": 4308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6689:49:9", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4309, + "nodeType": "ExpressionStatement", + "src": "6689:49:9" + } + ] + }, + "documentation": { + "id": 4281, + "nodeType": "StructuredDocumentation", + "src": "6463:91:9", + "text": " @dev Reclaim ownership of a name in ENS, if you own it in the registrar." + }, + "functionSelector": "28ed4f6c", + "id": 4311, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 4289, + "kind": "modifierInvocation", + "modifierName": { + "id": 4288, + "name": "live", + "nameLocations": [ + "6621:4:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3971, + "src": "6621:4:9" + }, + "nodeType": "ModifierInvocation", + "src": "6621:4:9" + } + ], + "name": "reclaim", + "nameLocation": "6568:7:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4287, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "6612:8:9" + }, + "parameters": { + "id": 4286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4283, + "mutability": "mutable", + "name": "id", + "nameLocation": "6584:2:9", + "nodeType": "VariableDeclaration", + "scope": 4311, + "src": "6576:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4282, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6576:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4285, + "mutability": "mutable", + "name": "owner", + "nameLocation": "6596:5:9", + "nodeType": "VariableDeclaration", + "scope": 4311, + "src": "6588:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4284, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6588:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6575:27:9" + }, + "returnParameters": { + "id": 4290, + "nodeType": "ParameterList", + "parameters": [], + "src": "6626:0:9" + }, + "scope": 4335, + "src": "6559:186:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 13517, + 15135 + ], + "body": { + "id": 4333, + "nodeType": "Block", + "src": "6865:149:9", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 4323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4321, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4313, + "src": "6894:11:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4322, + "name": "INTERFACE_META_ID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3852, + "src": "6909:17:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6894:32:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 4326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4324, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4313, + "src": "6942:11:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4325, + "name": "ERC721_ID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3892, + "src": "6957:9:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6942:24:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6894:72:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 4330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4328, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4313, + "src": "6982:11:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4329, + "name": "RECLAIM_ID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3900, + "src": "6997:10:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6982:25:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6894:113:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 4320, + "id": 4332, + "nodeType": "Return", + "src": "6875:132:9" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 4334, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "6760:17:9", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4317, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 4315, + "name": "ERC721", + "nameLocations": [ + "6833:6:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "6833:6:9" + }, + { + "id": 4316, + "name": "IERC165", + "nameLocations": [ + "6841:7:9" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "6841:7:9" + } + ], + "src": "6824:25:9" + }, + "parameters": { + "id": 4314, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4313, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "6794:11:9", + "nodeType": "VariableDeclaration", + "scope": 4334, + "src": "6787:18:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 4312, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "6787:6:9", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "6777:34:9" + }, + "returnParameters": { + "id": 4320, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4319, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4334, + "src": "6859:4:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4318, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6859:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6858:6:9" + }, + "scope": 4335, + "src": "6751:263:9", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + } + ], + "scope": 4336, + "src": "199:6817:9", + "usedErrors": [], + "usedEvents": [ + 4345, + 4349, + 4357, + 4365, + 4371, + 13068, + 14365, + 14374, + 14383 + ] + } + ], + "src": "0:7017:9" + }, + "id": 9 + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "exportedSymbols": { + "ENS": [ + 4567 + ], + "IBaseRegistrar": [ + 4430 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ] + }, + "id": 4431, + "nodeType": "SourceUnit", + "nodes": [ + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 4337, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4431, + "sourceUnit": 4568, + "src": "0:29:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "file": "./IBaseRegistrar.sol", + "id": 4338, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4431, + "sourceUnit": 4431, + "src": "30:30:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", + "file": "@openzeppelin/contracts/token/ERC721/IERC721.sol", + "id": 4339, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4431, + "sourceUnit": 14467, + "src": "61:58:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 4340, + "name": "IERC721", + "nameLocations": [ + "149:7:10" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14466, + "src": "149:7:10" + }, + "id": 4341, + "nodeType": "InheritanceSpecifier", + "src": "149:7:10" + } + ], + "canonicalName": "IBaseRegistrar", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 4430, + "linearizedBaseContracts": [ + 4430, + 14466, + 15136 + ], + "name": "IBaseRegistrar", + "nameLocation": "131:14:10", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d7474", + "id": 4345, + "name": "ControllerAdded", + "nameLocation": "169:15:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 4344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4343, + "indexed": true, + "mutability": "mutable", + "name": "controller", + "nameLocation": "201:10:10", + "nodeType": "VariableDeclaration", + "scope": 4345, + "src": "185:26:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4342, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "185:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "184:28:10" + }, + "src": "163:50:10" + }, + { + "anonymous": false, + "eventSelector": "33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e81113", + "id": 4349, + "name": "ControllerRemoved", + "nameLocation": "224:17:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 4348, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4347, + "indexed": true, + "mutability": "mutable", + "name": "controller", + "nameLocation": "258:10:10", + "nodeType": "VariableDeclaration", + "scope": 4349, + "src": "242:26:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4346, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "242:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "241:28:10" + }, + "src": "218:52:10" + }, + { + "anonymous": false, + "eventSelector": "ea3d7e1195a15d2ddcd859b01abd4c6b960fa9f9264e499a70a90c7f0c64b717", + "id": 4357, + "name": "NameMigrated", + "nameLocation": "281:12:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 4356, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4351, + "indexed": true, + "mutability": "mutable", + "name": "id", + "nameLocation": "319:2:10", + "nodeType": "VariableDeclaration", + "scope": 4357, + "src": "303:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4350, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "303:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4353, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "347:5:10", + "nodeType": "VariableDeclaration", + "scope": 4357, + "src": "331:21:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "331:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4355, + "indexed": false, + "mutability": "mutable", + "name": "expires", + "nameLocation": "370:7:10", + "nodeType": "VariableDeclaration", + "scope": 4357, + "src": "362:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "362:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "293:90:10" + }, + "src": "275:109:10" + }, + { + "anonymous": false, + "eventSelector": "b3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9", + "id": 4365, + "name": "NameRegistered", + "nameLocation": "395:14:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 4364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4359, + "indexed": true, + "mutability": "mutable", + "name": "id", + "nameLocation": "435:2:10", + "nodeType": "VariableDeclaration", + "scope": 4365, + "src": "419:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "419:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4361, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "463:5:10", + "nodeType": "VariableDeclaration", + "scope": 4365, + "src": "447:21:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4360, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "447:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4363, + "indexed": false, + "mutability": "mutable", + "name": "expires", + "nameLocation": "486:7:10", + "nodeType": "VariableDeclaration", + "scope": 4365, + "src": "478:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4362, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "478:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "409:90:10" + }, + "src": "389:111:10" + }, + { + "anonymous": false, + "eventSelector": "9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd6", + "id": 4371, + "name": "NameRenewed", + "nameLocation": "511:11:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 4370, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4367, + "indexed": true, + "mutability": "mutable", + "name": "id", + "nameLocation": "539:2:10", + "nodeType": "VariableDeclaration", + "scope": 4371, + "src": "523:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4366, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "523:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4369, + "indexed": false, + "mutability": "mutable", + "name": "expires", + "nameLocation": "551:7:10", + "nodeType": "VariableDeclaration", + "scope": 4371, + "src": "543:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4368, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "543:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "522:37:10" + }, + "src": "505:55:10" + }, + { + "functionSelector": "a7fc7a07", + "id": 4376, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addController", + "nameLocation": "643:13:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4373, + "mutability": "mutable", + "name": "controller", + "nameLocation": "665:10:10", + "nodeType": "VariableDeclaration", + "scope": 4376, + "src": "657:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4372, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "657:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "656:20:10" + }, + "returnParameters": { + "id": 4375, + "nodeType": "ParameterList", + "parameters": [], + "src": "685:0:10" + }, + "scope": 4430, + "src": "634:52:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "f6a74ed7", + "id": 4381, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeController", + "nameLocation": "753:16:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4379, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4378, + "mutability": "mutable", + "name": "controller", + "nameLocation": "778:10:10", + "nodeType": "VariableDeclaration", + "scope": 4381, + "src": "770:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "770:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "769:20:10" + }, + "returnParameters": { + "id": 4380, + "nodeType": "ParameterList", + "parameters": [], + "src": "798:0:10" + }, + "scope": 4430, + "src": "744:55:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4e543b26", + "id": 4386, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setResolver", + "nameLocation": "874:11:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4384, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4383, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "894:8:10", + "nodeType": "VariableDeclaration", + "scope": 4386, + "src": "886:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4382, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "886:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "885:18:10" + }, + "returnParameters": { + "id": 4385, + "nodeType": "ParameterList", + "parameters": [], + "src": "912:0:10" + }, + "scope": 4430, + "src": "865:48:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "d6e4fa86", + "id": 4393, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "nameExpires", + "nameLocation": "997:11:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4388, + "mutability": "mutable", + "name": "id", + "nameLocation": "1017:2:10", + "nodeType": "VariableDeclaration", + "scope": 4393, + "src": "1009:10:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4387, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1009:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1008:12:10" + }, + "returnParameters": { + "id": 4392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4391, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4393, + "src": "1044:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4390, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1044:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1043:9:10" + }, + "scope": 4430, + "src": "988:65:10", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "96e494e8", + "id": 4400, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "available", + "nameLocation": "1141:9:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4396, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4395, + "mutability": "mutable", + "name": "id", + "nameLocation": "1159:2:10", + "nodeType": "VariableDeclaration", + "scope": 4400, + "src": "1151:10:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4394, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1151:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1150:12:10" + }, + "returnParameters": { + "id": 4399, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4398, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4400, + "src": "1186:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4397, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1186:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1185:6:10" + }, + "scope": 4430, + "src": "1132:60:10", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 4401, + "nodeType": "StructuredDocumentation", + "src": "1198:40:10", + "text": " @dev Register a name." + }, + "functionSelector": "fca247ac", + "id": 4412, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "register", + "nameLocation": "1252:8:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4408, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4403, + "mutability": "mutable", + "name": "id", + "nameLocation": "1278:2:10", + "nodeType": "VariableDeclaration", + "scope": 4412, + "src": "1270:10:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4402, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1270:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4405, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1298:5:10", + "nodeType": "VariableDeclaration", + "scope": 4412, + "src": "1290:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4404, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1290:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4407, + "mutability": "mutable", + "name": "duration", + "nameLocation": "1321:8:10", + "nodeType": "VariableDeclaration", + "scope": 4412, + "src": "1313:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4406, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1313:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1260:75:10" + }, + "returnParameters": { + "id": 4411, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4410, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4412, + "src": "1354:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4409, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1354:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1353:9:10" + }, + "scope": 4430, + "src": "1243:120:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c475abff", + "id": 4421, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "renew", + "nameLocation": "1378:5:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4417, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4414, + "mutability": "mutable", + "name": "id", + "nameLocation": "1392:2:10", + "nodeType": "VariableDeclaration", + "scope": 4421, + "src": "1384:10:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4413, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1384:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4416, + "mutability": "mutable", + "name": "duration", + "nameLocation": "1404:8:10", + "nodeType": "VariableDeclaration", + "scope": 4421, + "src": "1396:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4415, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1396:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1383:30:10" + }, + "returnParameters": { + "id": 4420, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4419, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4421, + "src": "1432:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4418, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1432:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1431:9:10" + }, + "scope": 4430, + "src": "1369:72:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 4422, + "nodeType": "StructuredDocumentation", + "src": "1447:91:10", + "text": " @dev Reclaim ownership of a name in ENS, if you own it in the registrar." + }, + "functionSelector": "28ed4f6c", + "id": 4429, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "reclaim", + "nameLocation": "1552:7:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4427, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4424, + "mutability": "mutable", + "name": "id", + "nameLocation": "1568:2:10", + "nodeType": "VariableDeclaration", + "scope": 4429, + "src": "1560:10:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4423, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1560:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4426, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1580:5:10", + "nodeType": "VariableDeclaration", + "scope": 4429, + "src": "1572:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4425, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1572:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1559:27:10" + }, + "returnParameters": { + "id": 4428, + "nodeType": "ParameterList", + "parameters": [], + "src": "1595:0:10" + }, + "scope": 4430, + "src": "1543:53:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 4431, + "src": "121:1477:10", + "usedErrors": [], + "usedEvents": [ + 4345, + 4349, + 4357, + 4365, + 4371, + 14365, + 14374, + 14383 + ] + } + ], + "src": "0:1599:10" + }, + "id": 10 + }, + "@ensdomains/ens-contracts/contracts/registry/ENS.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "exportedSymbols": { + "ENS": [ + 4567 + ] + }, + "id": 4568, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 4432, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "31:24:11" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "ENS", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 4567, + "linearizedBaseContracts": [ + 4567 + ], + "name": "ENS", + "nameLocation": "67:3:11", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "ce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82", + "id": 4440, + "name": "NewOwner", + "nameLocation": "156:8:11", + "nodeType": "EventDefinition", + "parameters": { + "id": 4439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4434, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "181:4:11", + "nodeType": "VariableDeclaration", + "scope": 4440, + "src": "165:20:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4433, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "165:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4436, + "indexed": true, + "mutability": "mutable", + "name": "label", + "nameLocation": "203:5:11", + "nodeType": "VariableDeclaration", + "scope": 4440, + "src": "187:21:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4435, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "187:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4438, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "218:5:11", + "nodeType": "VariableDeclaration", + "scope": 4440, + "src": "210:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4437, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "210:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "164:60:11" + }, + "src": "150:75:11" + }, + { + "anonymous": false, + "eventSelector": "d4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266", + "id": 4446, + "name": "Transfer", + "nameLocation": "314:8:11", + "nodeType": "EventDefinition", + "parameters": { + "id": 4445, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4442, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "339:4:11", + "nodeType": "VariableDeclaration", + "scope": 4446, + "src": "323:20:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4441, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "323:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4444, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "353:5:11", + "nodeType": "VariableDeclaration", + "scope": 4446, + "src": "345:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "345:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "322:37:11" + }, + "src": "308:52:11" + }, + { + "anonymous": false, + "eventSelector": "335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0", + "id": 4452, + "name": "NewResolver", + "nameLocation": "424:11:11", + "nodeType": "EventDefinition", + "parameters": { + "id": 4451, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4448, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "452:4:11", + "nodeType": "VariableDeclaration", + "scope": 4452, + "src": "436:20:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4447, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "436:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4450, + "indexed": false, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "466:8:11", + "nodeType": "VariableDeclaration", + "scope": 4452, + "src": "458:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "458:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "435:40:11" + }, + "src": "418:58:11" + }, + { + "anonymous": false, + "eventSelector": "1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68", + "id": 4458, + "name": "NewTTL", + "nameLocation": "533:6:11", + "nodeType": "EventDefinition", + "parameters": { + "id": 4457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4454, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "556:4:11", + "nodeType": "VariableDeclaration", + "scope": 4458, + "src": "540:20:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4453, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "540:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4456, + "indexed": false, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "569:3:11", + "nodeType": "VariableDeclaration", + "scope": 4458, + "src": "562:10:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4455, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "562:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "539:34:11" + }, + "src": "527:47:11" + }, + { + "anonymous": false, + "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", + "id": 4466, + "name": "ApprovalForAll", + "nameLocation": "638:14:11", + "nodeType": "EventDefinition", + "parameters": { + "id": 4465, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4460, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "678:5:11", + "nodeType": "VariableDeclaration", + "scope": 4466, + "src": "662:21:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4459, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "662:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4462, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "709:8:11", + "nodeType": "VariableDeclaration", + "scope": 4466, + "src": "693:24:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "693:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4464, + "indexed": false, + "mutability": "mutable", + "name": "approved", + "nameLocation": "732:8:11", + "nodeType": "VariableDeclaration", + "scope": 4466, + "src": "727:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4463, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "727:4:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "652:94:11" + }, + "src": "632:115:11" + }, + { + "functionSelector": "cf408823", + "id": 4477, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setRecord", + "nameLocation": "762:9:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4475, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4468, + "mutability": "mutable", + "name": "node", + "nameLocation": "789:4:11", + "nodeType": "VariableDeclaration", + "scope": 4477, + "src": "781:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4467, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "781:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4470, + "mutability": "mutable", + "name": "owner", + "nameLocation": "811:5:11", + "nodeType": "VariableDeclaration", + "scope": 4477, + "src": "803:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4469, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "803:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4472, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "834:8:11", + "nodeType": "VariableDeclaration", + "scope": 4477, + "src": "826:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "826:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4474, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "859:3:11", + "nodeType": "VariableDeclaration", + "scope": 4477, + "src": "852:10:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4473, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "852:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "771:97:11" + }, + "returnParameters": { + "id": 4476, + "nodeType": "ParameterList", + "parameters": [], + "src": "877:0:11" + }, + "scope": 4567, + "src": "753:125:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5ef2c7f0", + "id": 4490, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setSubnodeRecord", + "nameLocation": "893:16:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4488, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4479, + "mutability": "mutable", + "name": "node", + "nameLocation": "927:4:11", + "nodeType": "VariableDeclaration", + "scope": 4490, + "src": "919:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4478, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "919:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4481, + "mutability": "mutable", + "name": "label", + "nameLocation": "949:5:11", + "nodeType": "VariableDeclaration", + "scope": 4490, + "src": "941:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4480, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "941:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4483, + "mutability": "mutable", + "name": "owner", + "nameLocation": "972:5:11", + "nodeType": "VariableDeclaration", + "scope": 4490, + "src": "964:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4482, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "964:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4485, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "995:8:11", + "nodeType": "VariableDeclaration", + "scope": 4490, + "src": "987:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4484, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "987:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4487, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "1020:3:11", + "nodeType": "VariableDeclaration", + "scope": 4490, + "src": "1013:10:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4486, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1013:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "909:120:11" + }, + "returnParameters": { + "id": 4489, + "nodeType": "ParameterList", + "parameters": [], + "src": "1038:0:11" + }, + "scope": 4567, + "src": "884:155:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "06ab5923", + "id": 4501, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setSubnodeOwner", + "nameLocation": "1054:15:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4497, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4492, + "mutability": "mutable", + "name": "node", + "nameLocation": "1087:4:11", + "nodeType": "VariableDeclaration", + "scope": 4501, + "src": "1079:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4491, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1079:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4494, + "mutability": "mutable", + "name": "label", + "nameLocation": "1109:5:11", + "nodeType": "VariableDeclaration", + "scope": 4501, + "src": "1101:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4493, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1101:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4496, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1132:5:11", + "nodeType": "VariableDeclaration", + "scope": 4501, + "src": "1124:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4495, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1124:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1069:74:11" + }, + "returnParameters": { + "id": 4500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4499, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4501, + "src": "1162:7:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4498, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1162:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1161:9:11" + }, + "scope": 4567, + "src": "1045:126:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1896f70a", + "id": 4508, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setResolver", + "nameLocation": "1186:11:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4503, + "mutability": "mutable", + "name": "node", + "nameLocation": "1206:4:11", + "nodeType": "VariableDeclaration", + "scope": 4508, + "src": "1198:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4502, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1198:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4505, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "1220:8:11", + "nodeType": "VariableDeclaration", + "scope": 4508, + "src": "1212:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4504, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1212:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1197:32:11" + }, + "returnParameters": { + "id": 4507, + "nodeType": "ParameterList", + "parameters": [], + "src": "1238:0:11" + }, + "scope": 4567, + "src": "1177:62:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5b0fc9c3", + "id": 4515, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setOwner", + "nameLocation": "1254:8:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4510, + "mutability": "mutable", + "name": "node", + "nameLocation": "1271:4:11", + "nodeType": "VariableDeclaration", + "scope": 4515, + "src": "1263:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4509, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1263:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4512, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1285:5:11", + "nodeType": "VariableDeclaration", + "scope": 4515, + "src": "1277:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4511, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1277:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1262:29:11" + }, + "returnParameters": { + "id": 4514, + "nodeType": "ParameterList", + "parameters": [], + "src": "1300:0:11" + }, + "scope": 4567, + "src": "1245:56:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "14ab9038", + "id": 4522, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setTTL", + "nameLocation": "1316:6:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4520, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4517, + "mutability": "mutable", + "name": "node", + "nameLocation": "1331:4:11", + "nodeType": "VariableDeclaration", + "scope": 4522, + "src": "1323:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4516, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1323:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4519, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "1344:3:11", + "nodeType": "VariableDeclaration", + "scope": 4522, + "src": "1337:10:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4518, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1337:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1322:26:11" + }, + "returnParameters": { + "id": 4521, + "nodeType": "ParameterList", + "parameters": [], + "src": "1357:0:11" + }, + "scope": 4567, + "src": "1307:51:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a22cb465", + "id": 4529, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "1373:17:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4527, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4524, + "mutability": "mutable", + "name": "operator", + "nameLocation": "1399:8:11", + "nodeType": "VariableDeclaration", + "scope": 4529, + "src": "1391:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4523, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1391:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4526, + "mutability": "mutable", + "name": "approved", + "nameLocation": "1414:8:11", + "nodeType": "VariableDeclaration", + "scope": 4529, + "src": "1409:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4525, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1409:4:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1390:33:11" + }, + "returnParameters": { + "id": 4528, + "nodeType": "ParameterList", + "parameters": [], + "src": "1432:0:11" + }, + "scope": 4567, + "src": "1364:69:11", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "02571be3", + "id": 4536, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "owner", + "nameLocation": "1448:5:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4532, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4531, + "mutability": "mutable", + "name": "node", + "nameLocation": "1462:4:11", + "nodeType": "VariableDeclaration", + "scope": 4536, + "src": "1454:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4530, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1454:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1453:14:11" + }, + "returnParameters": { + "id": 4535, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4534, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4536, + "src": "1491:7:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1491:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1490:9:11" + }, + "scope": 4567, + "src": "1439:61:11", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0178b8bf", + "id": 4543, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "resolver", + "nameLocation": "1515:8:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4539, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4538, + "mutability": "mutable", + "name": "node", + "nameLocation": "1532:4:11", + "nodeType": "VariableDeclaration", + "scope": 4543, + "src": "1524:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4537, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1524:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1523:14:11" + }, + "returnParameters": { + "id": 4542, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4541, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4543, + "src": "1561:7:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4540, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1561:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1560:9:11" + }, + "scope": 4567, + "src": "1506:64:11", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "16a25cbd", + "id": 4550, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ttl", + "nameLocation": "1585:3:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4546, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4545, + "mutability": "mutable", + "name": "node", + "nameLocation": "1597:4:11", + "nodeType": "VariableDeclaration", + "scope": 4550, + "src": "1589:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4544, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1589:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1588:14:11" + }, + "returnParameters": { + "id": 4549, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4548, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4550, + "src": "1626:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4547, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1626:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1625:8:11" + }, + "scope": 4567, + "src": "1576:58:11", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "f79fe538", + "id": 4557, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "recordExists", + "nameLocation": "1649:12:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4552, + "mutability": "mutable", + "name": "node", + "nameLocation": "1670:4:11", + "nodeType": "VariableDeclaration", + "scope": 4557, + "src": "1662:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4551, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1662:7:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1661:14:11" + }, + "returnParameters": { + "id": 4556, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4555, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4557, + "src": "1699:4:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4554, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1699:4:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1698:6:11" + }, + "scope": 4567, + "src": "1640:65:11", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e985e9c5", + "id": 4566, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "1720:16:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4562, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4559, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1754:5:11", + "nodeType": "VariableDeclaration", + "scope": 4566, + "src": "1746:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4558, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1746:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4561, + "mutability": "mutable", + "name": "operator", + "nameLocation": "1777:8:11", + "nodeType": "VariableDeclaration", + "scope": 4566, + "src": "1769:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4560, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1769:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1736:55:11" + }, + "returnParameters": { + "id": 4565, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4564, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4566, + "src": "1815:4:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4563, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1815:4:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1814:6:11" + }, + "scope": 4567, + "src": "1711:110:11", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 4568, + "src": "57:1766:11", + "usedErrors": [], + "usedEvents": [ + 4440, + 4446, + 4452, + 4458, + 4466 + ] + } + ], + "src": "31:1793:11" + }, + "id": 11 + }, + "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "exportedSymbols": { + "ENS": [ + 4567 + ], + "ENSRegistry": [ + 4991 + ] + }, + "id": 4992, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 4569, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:24:12" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "./ENS.sol", + "id": 4570, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 4992, + "sourceUnit": 4568, + "src": "26:19:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 4572, + "name": "ENS", + "nameLocations": [ + "109:3:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "109:3:12" + }, + "id": 4573, + "nodeType": "InheritanceSpecifier", + "src": "109:3:12" + } + ], + "canonicalName": "ENSRegistry", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 4571, + "nodeType": "StructuredDocumentation", + "src": "47:37:12", + "text": " The ENS registry contract." + }, + "fullyImplemented": true, + "id": 4991, + "linearizedBaseContracts": [ + 4991, + 4567 + ], + "name": "ENSRegistry", + "nameLocation": "94:11:12", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "ENSRegistry.Record", + "id": 4580, + "members": [ + { + "constant": false, + "id": 4575, + "mutability": "mutable", + "name": "owner", + "nameLocation": "151:5:12", + "nodeType": "VariableDeclaration", + "scope": 4580, + "src": "143:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4574, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "143:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4577, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "174:8:12", + "nodeType": "VariableDeclaration", + "scope": 4580, + "src": "166:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4576, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "166:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4579, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "199:3:12", + "nodeType": "VariableDeclaration", + "scope": 4580, + "src": "192:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4578, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "192:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "name": "Record", + "nameLocation": "126:6:12", + "nodeType": "StructDefinition", + "scope": 4991, + "src": "119:90:12", + "visibility": "public" + }, + { + "constant": false, + "id": 4585, + "mutability": "mutable", + "name": "records", + "nameLocation": "242:7:12", + "nodeType": "VariableDeclaration", + "scope": 4991, + "src": "215:34:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record)" + }, + "typeName": { + "id": 4584, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 4581, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "223:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "215:26:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 4583, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4582, + "name": "Record", + "nameLocations": [ + "234:6:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4580, + "src": "234:6:12" + }, + "referencedDeclaration": 4580, + "src": "234:6:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage_ptr", + "typeString": "struct ENSRegistry.Record" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4591, + "mutability": "mutable", + "name": "operators", + "nameLocation": "300:9:12", + "nodeType": "VariableDeclaration", + "scope": 4991, + "src": "255:54:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "typeName": { + "id": 4590, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 4586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "263:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "255:44:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 4589, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 4587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "282:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "274:24:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 4588, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "293:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 4617, + "nodeType": "Block", + "src": "420:133:12", + "statements": [ + { + "assignments": [ + 4596 + ], + "declarations": [ + { + "constant": false, + "id": 4596, + "mutability": "mutable", + "name": "owner", + "nameLocation": "438:5:12", + "nodeType": "VariableDeclaration", + "scope": 4617, + "src": "430:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4595, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "430:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4601, + "initialValue": { + "expression": { + "baseExpression": { + "id": 4597, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "446:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4599, + "indexExpression": { + "id": 4598, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4593, + "src": "454:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "446:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4600, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "460:5:12", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4575, + "src": "446:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "430:35:12" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 4606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4603, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4596, + "src": "483:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4604, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "492:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "496:6:12", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "492:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "483:19:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "baseExpression": { + "id": 4607, + "name": "operators", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4591, + "src": "506:9:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 4609, + "indexExpression": { + "id": 4608, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4596, + "src": "516:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "506:16:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4612, + "indexExpression": { + "expression": { + "id": 4610, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "523:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "527:6:12", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "523:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "506:28:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "483:51:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4602, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "475:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "475:60:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4615, + "nodeType": "ExpressionStatement", + "src": "475:60:12" + }, + { + "id": 4616, + "nodeType": "PlaceholderStatement", + "src": "545:1:12" + } + ] + }, + "id": 4618, + "name": "authorised", + "nameLocation": "395:10:12", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 4594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4593, + "mutability": "mutable", + "name": "node", + "nameLocation": "414:4:12", + "nodeType": "VariableDeclaration", + "scope": 4618, + "src": "406:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4592, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "406:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "405:14:12" + }, + "src": "386:167:12", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 4630, + "nodeType": "Block", + "src": "639:48:12", + "statements": [ + { + "expression": { + "id": 4628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4622, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "649:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4624, + "indexExpression": { + "hexValue": "307830", + "id": 4623, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "657:3:12", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "649:12:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4625, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "662:5:12", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4575, + "src": "649:18:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 4626, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "670:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "674:6:12", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "670:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "649:31:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4629, + "nodeType": "ExpressionStatement", + "src": "649:31:12" + } + ] + }, + "documentation": { + "id": 4619, + "nodeType": "StructuredDocumentation", + "src": "559:54:12", + "text": " @dev Constructs a new ENS registry." + }, + "id": 4631, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4620, + "nodeType": "ParameterList", + "parameters": [], + "src": "629:2:12" + }, + "returnParameters": { + "id": 4621, + "nodeType": "ParameterList", + "parameters": [], + "src": "639:0:12" + }, + "scope": 4991, + "src": "618:69:12", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 4477 + ], + "body": { + "id": 4655, + "nodeType": "Block", + "src": "1070:87:12", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4645, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4634, + "src": "1089:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4646, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4636, + "src": "1095:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4644, + "name": "setOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4709, + "src": "1080:8:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1080:21:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4648, + "nodeType": "ExpressionStatement", + "src": "1080:21:12" + }, + { + "expression": { + "arguments": [ + { + "id": 4650, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4634, + "src": "1130:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4651, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4638, + "src": "1136:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4652, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4640, + "src": "1146:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 4649, + "name": "_setResolverAndTTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4990, + "src": "1111:18:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint64)" + } + }, + "id": 4653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1111:39:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4654, + "nodeType": "ExpressionStatement", + "src": "1111:39:12" + } + ] + }, + "documentation": { + "id": 4632, + "nodeType": "StructuredDocumentation", + "src": "693:230:12", + "text": " @dev Sets the record for a node.\n @param node The node to update.\n @param owner The address of the new owner.\n @param resolver The address of the resolver.\n @param ttl The TTL in seconds." + }, + "functionSelector": "cf408823", + "id": 4656, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setRecord", + "nameLocation": "937:9:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4642, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1061:8:12" + }, + "parameters": { + "id": 4641, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4634, + "mutability": "mutable", + "name": "node", + "nameLocation": "964:4:12", + "nodeType": "VariableDeclaration", + "scope": 4656, + "src": "956:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4633, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "956:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4636, + "mutability": "mutable", + "name": "owner", + "nameLocation": "986:5:12", + "nodeType": "VariableDeclaration", + "scope": 4656, + "src": "978:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4635, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "978:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4638, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "1009:8:12", + "nodeType": "VariableDeclaration", + "scope": 4656, + "src": "1001:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4637, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1001:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4640, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "1034:3:12", + "nodeType": "VariableDeclaration", + "scope": 4656, + "src": "1027:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4639, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1027:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "946:97:12" + }, + "returnParameters": { + "id": 4643, + "nodeType": "ParameterList", + "parameters": [], + "src": "1070:0:12" + }, + "scope": 4991, + "src": "928:229:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 4490 + ], + "body": { + "id": 4685, + "nodeType": "Block", + "src": "1636:122:12", + "statements": [ + { + "assignments": [ + 4672 + ], + "declarations": [ + { + "constant": false, + "id": 4672, + "mutability": "mutable", + "name": "subnode", + "nameLocation": "1654:7:12", + "nodeType": "VariableDeclaration", + "scope": 4685, + "src": "1646:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4671, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1646:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4678, + "initialValue": { + "arguments": [ + { + "id": 4674, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4659, + "src": "1680:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4675, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4661, + "src": "1686:5:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4676, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4663, + "src": "1693:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4673, + "name": "setSubnodeOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4749, + "src": "1664:15:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32,address) returns (bytes32)" + } + }, + "id": 4677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1664:35:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1646:53:12" + }, + { + "expression": { + "arguments": [ + { + "id": 4680, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "1728:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4681, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4665, + "src": "1737:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4682, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4667, + "src": "1747:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 4679, + "name": "_setResolverAndTTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4990, + "src": "1709:18:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint64)" + } + }, + "id": 4683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1709:42:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4684, + "nodeType": "ExpressionStatement", + "src": "1709:42:12" + } + ] + }, + "documentation": { + "id": 4657, + "nodeType": "StructuredDocumentation", + "src": "1163:296:12", + "text": " @dev Sets the record for a subnode.\n @param node The parent node.\n @param label The hash of the label specifying the subnode.\n @param owner The address of the new owner.\n @param resolver The address of the resolver.\n @param ttl The TTL in seconds." + }, + "functionSelector": "5ef2c7f0", + "id": 4686, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setSubnodeRecord", + "nameLocation": "1473:16:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4669, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1627:8:12" + }, + "parameters": { + "id": 4668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4659, + "mutability": "mutable", + "name": "node", + "nameLocation": "1507:4:12", + "nodeType": "VariableDeclaration", + "scope": 4686, + "src": "1499:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4658, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1499:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4661, + "mutability": "mutable", + "name": "label", + "nameLocation": "1529:5:12", + "nodeType": "VariableDeclaration", + "scope": 4686, + "src": "1521:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4660, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1521:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4663, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1552:5:12", + "nodeType": "VariableDeclaration", + "scope": 4686, + "src": "1544:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4662, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1544:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4665, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "1575:8:12", + "nodeType": "VariableDeclaration", + "scope": 4686, + "src": "1567:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4664, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1567:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4667, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "1600:3:12", + "nodeType": "VariableDeclaration", + "scope": 4686, + "src": "1593:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4666, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1593:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1489:120:12" + }, + "returnParameters": { + "id": 4670, + "nodeType": "ParameterList", + "parameters": [], + "src": "1636:0:12" + }, + "scope": 4991, + "src": "1464:294:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 4515 + ], + "body": { + "id": 4708, + "nodeType": "Block", + "src": "2107:75:12", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4699, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4689, + "src": "2127:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4700, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4691, + "src": "2133:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4698, + "name": "_setOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4940, + "src": "2117:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2117:22:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4702, + "nodeType": "ExpressionStatement", + "src": "2117:22:12" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4704, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4689, + "src": "2163:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4705, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4691, + "src": "2169:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4703, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4446, + "src": "2154:8:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2154:21:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4707, + "nodeType": "EmitStatement", + "src": "2149:26:12" + } + ] + }, + "documentation": { + "id": 4687, + "nodeType": "StructuredDocumentation", + "src": "1764:228:12", + "text": " @dev Transfers ownership of a node to a new address. May only be called by the current owner of the node.\n @param node The node to transfer ownership of.\n @param owner The address of the new owner." + }, + "functionSelector": "5b0fc9c3", + "id": 4709, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 4695, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4689, + "src": "2101:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 4696, + "kind": "modifierInvocation", + "modifierName": { + "id": 4694, + "name": "authorised", + "nameLocations": [ + "2090:10:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4618, + "src": "2090:10:12" + }, + "nodeType": "ModifierInvocation", + "src": "2090:16:12" + } + ], + "name": "setOwner", + "nameLocation": "2006:8:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4693, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2081:8:12" + }, + "parameters": { + "id": 4692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4689, + "mutability": "mutable", + "name": "node", + "nameLocation": "2032:4:12", + "nodeType": "VariableDeclaration", + "scope": 4709, + "src": "2024:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4688, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2024:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4691, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2054:5:12", + "nodeType": "VariableDeclaration", + "scope": 4709, + "src": "2046:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4690, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2046:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2014:51:12" + }, + "returnParameters": { + "id": 4697, + "nodeType": "ParameterList", + "parameters": [], + "src": "2107:0:12" + }, + "scope": 4991, + "src": "1997:185:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4501 + ], + "body": { + "id": 4748, + "nodeType": "Block", + "src": "2652:177:12", + "statements": [ + { + "assignments": [ + 4726 + ], + "declarations": [ + { + "constant": false, + "id": 4726, + "mutability": "mutable", + "name": "subnode", + "nameLocation": "2670:7:12", + "nodeType": "VariableDeclaration", + "scope": 4748, + "src": "2662:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4725, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2662:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4734, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 4730, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4712, + "src": "2707:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4731, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4714, + "src": "2713:5:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2690:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2694:12:12", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2690:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2690:29:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4727, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2680:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2680:40:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2662:58:12" + }, + { + "expression": { + "arguments": [ + { + "id": 4736, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4726, + "src": "2740:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4737, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4716, + "src": "2749:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4735, + "name": "_setOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4940, + "src": "2730:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2730:25:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4739, + "nodeType": "ExpressionStatement", + "src": "2730:25:12" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4741, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4712, + "src": "2779:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4742, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4714, + "src": "2785:5:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4743, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4716, + "src": "2792:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4740, + "name": "NewOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4440, + "src": "2770:8:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,bytes32,address)" + } + }, + "id": 4744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2770:28:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4745, + "nodeType": "EmitStatement", + "src": "2765:33:12" + }, + { + "expression": { + "id": 4746, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4726, + "src": "2815:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4724, + "id": 4747, + "nodeType": "Return", + "src": "2808:14:12" + } + ] + }, + "documentation": { + "id": 4710, + "nodeType": "StructuredDocumentation", + "src": "2188:301:12", + "text": " @dev Transfers ownership of a subnode keccak256(node, label) to a new address. May only be called by the owner of the parent node.\n @param node The parent node.\n @param label The hash of the label specifying the subnode.\n @param owner The address of the new owner." + }, + "functionSelector": "06ab5923", + "id": 4749, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 4720, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4712, + "src": "2628:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 4721, + "kind": "modifierInvocation", + "modifierName": { + "id": 4719, + "name": "authorised", + "nameLocations": [ + "2617:10:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4618, + "src": "2617:10:12" + }, + "nodeType": "ModifierInvocation", + "src": "2617:16:12" + } + ], + "name": "setSubnodeOwner", + "nameLocation": "2503:15:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4718, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2608:8:12" + }, + "parameters": { + "id": 4717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4712, + "mutability": "mutable", + "name": "node", + "nameLocation": "2536:4:12", + "nodeType": "VariableDeclaration", + "scope": 4749, + "src": "2528:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4711, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2528:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4714, + "mutability": "mutable", + "name": "label", + "nameLocation": "2558:5:12", + "nodeType": "VariableDeclaration", + "scope": 4749, + "src": "2550:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4713, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2550:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4716, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2581:5:12", + "nodeType": "VariableDeclaration", + "scope": 4749, + "src": "2573:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4715, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2573:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2518:74:12" + }, + "returnParameters": { + "id": 4724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4723, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4749, + "src": "2643:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4722, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2643:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2642:9:12" + }, + "scope": 4991, + "src": "2494:335:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4508 + ], + "body": { + "id": 4773, + "nodeType": "Block", + "src": "3120:92:12", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 4762, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4752, + "src": "3147:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4763, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4754, + "src": "3153:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4761, + "name": "NewResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4452, + "src": "3135:11:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3135:27:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4765, + "nodeType": "EmitStatement", + "src": "3130:32:12" + }, + { + "expression": { + "id": 4771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4766, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "3172:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4768, + "indexExpression": { + "id": 4767, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4752, + "src": "3180:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3172:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4769, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3186:8:12", + "memberName": "resolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4577, + "src": "3172:22:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4770, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4754, + "src": "3197:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3172:33:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4772, + "nodeType": "ExpressionStatement", + "src": "3172:33:12" + } + ] + }, + "documentation": { + "id": 4750, + "nodeType": "StructuredDocumentation", + "src": "2835:164:12", + "text": " @dev Sets the resolver address for the specified node.\n @param node The node to update.\n @param resolver The address of the resolver." + }, + "functionSelector": "1896f70a", + "id": 4774, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 4758, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4752, + "src": "3114:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 4759, + "kind": "modifierInvocation", + "modifierName": { + "id": 4757, + "name": "authorised", + "nameLocations": [ + "3103:10:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4618, + "src": "3103:10:12" + }, + "nodeType": "ModifierInvocation", + "src": "3103:16:12" + } + ], + "name": "setResolver", + "nameLocation": "3013:11:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4756, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3094:8:12" + }, + "parameters": { + "id": 4755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4752, + "mutability": "mutable", + "name": "node", + "nameLocation": "3042:4:12", + "nodeType": "VariableDeclaration", + "scope": 4774, + "src": "3034:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4751, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3034:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4754, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3064:8:12", + "nodeType": "VariableDeclaration", + "scope": 4774, + "src": "3056:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4753, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3056:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3024:54:12" + }, + "returnParameters": { + "id": 4760, + "nodeType": "ParameterList", + "parameters": [], + "src": "3120:0:12" + }, + "scope": 4991, + "src": "3004:208:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4522 + ], + "body": { + "id": 4798, + "nodeType": "Block", + "src": "3465:72:12", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 4787, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4777, + "src": "3487:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4788, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4779, + "src": "3493:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 4786, + "name": "NewTTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "3480:6:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64)" + } + }, + "id": 4789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3480:17:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4790, + "nodeType": "EmitStatement", + "src": "3475:22:12" + }, + { + "expression": { + "id": 4796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4791, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "3507:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4793, + "indexExpression": { + "id": 4792, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4777, + "src": "3515:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3507:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4794, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3521:3:12", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 4579, + "src": "3507:17:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4795, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4779, + "src": "3527:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3507:23:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 4797, + "nodeType": "ExpressionStatement", + "src": "3507:23:12" + } + ] + }, + "documentation": { + "id": 4775, + "nodeType": "StructuredDocumentation", + "src": "3218:137:12", + "text": " @dev Sets the TTL for the specified node.\n @param node The node to update.\n @param ttl The TTL in seconds." + }, + "functionSelector": "14ab9038", + "id": 4799, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 4783, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4777, + "src": "3459:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 4784, + "kind": "modifierInvocation", + "modifierName": { + "id": 4782, + "name": "authorised", + "nameLocations": [ + "3448:10:12" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4618, + "src": "3448:10:12" + }, + "nodeType": "ModifierInvocation", + "src": "3448:16:12" + } + ], + "name": "setTTL", + "nameLocation": "3369:6:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4781, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3439:8:12" + }, + "parameters": { + "id": 4780, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4777, + "mutability": "mutable", + "name": "node", + "nameLocation": "3393:4:12", + "nodeType": "VariableDeclaration", + "scope": 4799, + "src": "3385:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4776, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3385:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4779, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "3414:3:12", + "nodeType": "VariableDeclaration", + "scope": 4799, + "src": "3407:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4778, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3407:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3375:48:12" + }, + "returnParameters": { + "id": 4785, + "nodeType": "ParameterList", + "parameters": [], + "src": "3465:0:12" + }, + "scope": 4991, + "src": "3360:177:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4529 + ], + "body": { + "id": 4824, + "nodeType": "Block", + "src": "3979:120:12", + "statements": [ + { + "expression": { + "id": 4815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 4808, + "name": "operators", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4591, + "src": "3989:9:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 4812, + "indexExpression": { + "expression": { + "id": 4809, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3999:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4003:6:12", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3999:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3989:21:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4813, + "indexExpression": { + "id": 4811, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4802, + "src": "4011:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3989:31:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4814, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4804, + "src": "4023:8:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3989:42:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4816, + "nodeType": "ExpressionStatement", + "src": "3989:42:12" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 4818, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4061:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4065:6:12", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4061:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4820, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4802, + "src": "4073:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4821, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4804, + "src": "4083:8:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4817, + "name": "ApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4466, + "src": "4046:14:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 4822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4046:46:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4823, + "nodeType": "EmitStatement", + "src": "4041:51:12" + } + ] + }, + "documentation": { + "id": 4800, + "nodeType": "StructuredDocumentation", + "src": "3543:323:12", + "text": " @dev Enable or disable approval for a third party (\"operator\") to manage\n all of `msg.sender`'s ENS records. Emits the ApprovalForAll event.\n @param operator Address to add to the set of authorized operators.\n @param approved True if the operator is approved, false to revoke approval." + }, + "functionSelector": "a22cb465", + "id": 4825, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "3880:17:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4806, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3970:8:12" + }, + "parameters": { + "id": 4805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4802, + "mutability": "mutable", + "name": "operator", + "nameLocation": "3915:8:12", + "nodeType": "VariableDeclaration", + "scope": 4825, + "src": "3907:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4801, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3907:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4804, + "mutability": "mutable", + "name": "approved", + "nameLocation": "3938:8:12", + "nodeType": "VariableDeclaration", + "scope": 4825, + "src": "3933:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4803, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3933:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3897:55:12" + }, + "returnParameters": { + "id": 4807, + "nodeType": "ParameterList", + "parameters": [], + "src": "3979:0:12" + }, + "scope": 4991, + "src": "3871:228:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 4536 + ], + "body": { + "id": 4856, + "nodeType": "Block", + "src": "4349:153:12", + "statements": [ + { + "assignments": [ + 4835 + ], + "declarations": [ + { + "constant": false, + "id": 4835, + "mutability": "mutable", + "name": "addr", + "nameLocation": "4367:4:12", + "nodeType": "VariableDeclaration", + "scope": 4856, + "src": "4359:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4834, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4359:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4840, + "initialValue": { + "expression": { + "baseExpression": { + "id": 4836, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "4374:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4838, + "indexExpression": { + "id": 4837, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4828, + "src": "4382:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4374:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4839, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4388:5:12", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4575, + "src": "4374:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4359:34:12" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 4846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4841, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4835, + "src": "4407:4:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 4844, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4423:4:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENSRegistry_$4991", + "typeString": "contract ENSRegistry" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ENSRegistry_$4991", + "typeString": "contract ENSRegistry" + } + ], + "id": 4843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4415:7:12", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4415:7:12", + "typeDescriptions": {} + } + }, + "id": 4845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4415:13:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4407:21:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4853, + "nodeType": "IfStatement", + "src": "4403:71:12", + "trueBody": { + "id": 4852, + "nodeType": "Block", + "src": "4430:44:12", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "307830", + "id": 4849, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4459:3:12", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 4848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4451:7:12", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4451:7:12", + "typeDescriptions": {} + } + }, + "id": 4850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4451:12:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 4833, + "id": 4851, + "nodeType": "Return", + "src": "4444:19:12" + } + ] + } + }, + { + "expression": { + "id": 4854, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4835, + "src": "4491:4:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 4833, + "id": 4855, + "nodeType": "Return", + "src": "4484:11:12" + } + ] + }, + "documentation": { + "id": 4826, + "nodeType": "StructuredDocumentation", + "src": "4105:149:12", + "text": " @dev Returns the address that owns the specified node.\n @param node The specified node.\n @return address of the owner." + }, + "functionSelector": "02571be3", + "id": 4857, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nameLocation": "4268:5:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4830, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4322:8:12" + }, + "parameters": { + "id": 4829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4828, + "mutability": "mutable", + "name": "node", + "nameLocation": "4291:4:12", + "nodeType": "VariableDeclaration", + "scope": 4857, + "src": "4283:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4827, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4283:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4273:28:12" + }, + "returnParameters": { + "id": 4833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4832, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4857, + "src": "4340:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4831, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4340:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4339:9:12" + }, + "scope": 4991, + "src": "4259:243:12", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4543 + ], + "body": { + "id": 4871, + "nodeType": "Block", + "src": "4768:46:12", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 4866, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "4785:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4868, + "indexExpression": { + "id": 4867, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4860, + "src": "4793:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4785:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4869, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4799:8:12", + "memberName": "resolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4577, + "src": "4785:22:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 4865, + "id": 4870, + "nodeType": "Return", + "src": "4778:29:12" + } + ] + }, + "documentation": { + "id": 4858, + "nodeType": "StructuredDocumentation", + "src": "4508:162:12", + "text": " @dev Returns the address of the resolver for the specified node.\n @param node The specified node.\n @return address of the resolver." + }, + "functionSelector": "0178b8bf", + "id": 4872, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "resolver", + "nameLocation": "4684:8:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4862, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4741:8:12" + }, + "parameters": { + "id": 4861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4860, + "mutability": "mutable", + "name": "node", + "nameLocation": "4710:4:12", + "nodeType": "VariableDeclaration", + "scope": 4872, + "src": "4702:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4859, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4702:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4692:28:12" + }, + "returnParameters": { + "id": 4865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4872, + "src": "4759:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4863, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4759:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4758:9:12" + }, + "scope": 4991, + "src": "4675:139:12", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4550 + ], + "body": { + "id": 4886, + "nodeType": "Block", + "src": "5055:41:12", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 4881, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "5072:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4883, + "indexExpression": { + "id": 4882, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4875, + "src": "5080:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5072:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4884, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5086:3:12", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 4579, + "src": "5072:17:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "functionReturnParameters": 4880, + "id": 4885, + "nodeType": "Return", + "src": "5065:24:12" + } + ] + }, + "documentation": { + "id": 4873, + "nodeType": "StructuredDocumentation", + "src": "4820:157:12", + "text": " @dev Returns the TTL of a node, and any records associated with it.\n @param node The specified node.\n @return ttl of the node." + }, + "functionSelector": "16a25cbd", + "id": 4887, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ttl", + "nameLocation": "4991:3:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4877, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5029:8:12" + }, + "parameters": { + "id": 4876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4875, + "mutability": "mutable", + "name": "node", + "nameLocation": "5003:4:12", + "nodeType": "VariableDeclaration", + "scope": 4887, + "src": "4995:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4874, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4995:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4994:14:12" + }, + "returnParameters": { + "id": 4880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4879, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4887, + "src": "5047:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4878, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "5047:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "5046:8:12" + }, + "scope": 4991, + "src": "4982:114:12", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4557 + ], + "body": { + "id": 4906, + "nodeType": "Block", + "src": "5360:59:12", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 4904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 4896, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "5377:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4898, + "indexExpression": { + "id": 4897, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4890, + "src": "5385:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5377:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4899, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5391:5:12", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4575, + "src": "5377:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "307830", + "id": 4902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5408:3:12", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 4901, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5400:7:12", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5400:7:12", + "typeDescriptions": {} + } + }, + "id": 4903, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5400:12:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5377:35:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 4895, + "id": 4905, + "nodeType": "Return", + "src": "5370:42:12" + } + ] + }, + "documentation": { + "id": 4888, + "nodeType": "StructuredDocumentation", + "src": "5102:159:12", + "text": " @dev Returns whether a record has been imported to the registry.\n @param node The specified node.\n @return Bool if record exists" + }, + "functionSelector": "f79fe538", + "id": 4907, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "recordExists", + "nameLocation": "5275:12:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4892, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5336:8:12" + }, + "parameters": { + "id": 4891, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4890, + "mutability": "mutable", + "name": "node", + "nameLocation": "5305:4:12", + "nodeType": "VariableDeclaration", + "scope": 4907, + "src": "5297:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4889, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5297:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5287:28:12" + }, + "returnParameters": { + "id": 4895, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4894, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4907, + "src": "5354:4:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4893, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5354:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5353:6:12" + }, + "scope": 4991, + "src": "5266:153:12", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 4566 + ], + "body": { + "id": 4924, + "nodeType": "Block", + "src": "5859:50:12", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 4918, + "name": "operators", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4591, + "src": "5876:9:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 4920, + "indexExpression": { + "id": 4919, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4910, + "src": "5886:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5876:16:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4922, + "indexExpression": { + "id": 4921, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4912, + "src": "5893:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5876:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 4917, + "id": 4923, + "nodeType": "Return", + "src": "5869:33:12" + } + ] + }, + "documentation": { + "id": 4908, + "nodeType": "StructuredDocumentation", + "src": "5425:302:12", + "text": " @dev Query if an address is an authorized operator for another address.\n @param owner The address that owns the records.\n @param operator The address that acts on behalf of the owner.\n @return True if `operator` is an approved operator for `owner`, false otherwise." + }, + "functionSelector": "e985e9c5", + "id": 4925, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "5741:16:12", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4914, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5835:8:12" + }, + "parameters": { + "id": 4913, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4910, + "mutability": "mutable", + "name": "owner", + "nameLocation": "5775:5:12", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "5767:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4909, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5767:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4912, + "mutability": "mutable", + "name": "operator", + "nameLocation": "5798:8:12", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "5790:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4911, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5790:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5757:55:12" + }, + "returnParameters": { + "id": 4917, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4916, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "5853:4:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4915, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5853:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5852:6:12" + }, + "scope": 4991, + "src": "5732:177:12", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "body": { + "id": 4939, + "nodeType": "Block", + "src": "5980:44:12", + "statements": [ + { + "expression": { + "id": 4937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4932, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "5990:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4934, + "indexExpression": { + "id": 4933, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4927, + "src": "5998:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5990:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4935, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6004:5:12", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4575, + "src": "5990:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4936, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4929, + "src": "6012:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5990:27:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4938, + "nodeType": "ExpressionStatement", + "src": "5990:27:12" + } + ] + }, + "id": 4940, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setOwner", + "nameLocation": "5924:9:12", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4927, + "mutability": "mutable", + "name": "node", + "nameLocation": "5942:4:12", + "nodeType": "VariableDeclaration", + "scope": 4940, + "src": "5934:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4926, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5934:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4929, + "mutability": "mutable", + "name": "owner", + "nameLocation": "5956:5:12", + "nodeType": "VariableDeclaration", + "scope": 4940, + "src": "5948:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4928, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5948:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5933:29:12" + }, + "returnParameters": { + "id": 4931, + "nodeType": "ParameterList", + "parameters": [], + "src": "5980:0:12" + }, + "scope": 4991, + "src": "5915:109:12", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 4989, + "nodeType": "Block", + "src": "6141:284:12", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 4954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4949, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4944, + "src": "6155:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 4950, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "6167:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4952, + "indexExpression": { + "id": 4951, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6175:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6167:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4953, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6181:8:12", + "memberName": "resolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4577, + "src": "6167:22:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6155:34:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4968, + "nodeType": "IfStatement", + "src": "6151:144:12", + "trueBody": { + "id": 4967, + "nodeType": "Block", + "src": "6191:104:12", + "statements": [ + { + "expression": { + "id": 4960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4955, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "6205:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4957, + "indexExpression": { + "id": 4956, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6213:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6205:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4958, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6219:8:12", + "memberName": "resolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4577, + "src": "6205:22:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4959, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4944, + "src": "6230:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6205:33:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4961, + "nodeType": "ExpressionStatement", + "src": "6205:33:12" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4963, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6269:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4964, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4944, + "src": "6275:8:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4962, + "name": "NewResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4452, + "src": "6257:11:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 4965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6257:27:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4966, + "nodeType": "EmitStatement", + "src": "6252:32:12" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 4974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4969, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4946, + "src": "6309:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 4970, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "6316:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4972, + "indexExpression": { + "id": 4971, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6324:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6316:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4973, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6330:3:12", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 4579, + "src": "6316:17:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "6309:24:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4988, + "nodeType": "IfStatement", + "src": "6305:114:12", + "trueBody": { + "id": 4987, + "nodeType": "Block", + "src": "6335:84:12", + "statements": [ + { + "expression": { + "id": 4980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 4975, + "name": "records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4585, + "src": "6349:7:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Record_$4580_storage_$", + "typeString": "mapping(bytes32 => struct ENSRegistry.Record storage ref)" + } + }, + "id": 4977, + "indexExpression": { + "id": 4976, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6357:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6349:13:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Record_$4580_storage", + "typeString": "struct ENSRegistry.Record storage ref" + } + }, + "id": 4978, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6363:3:12", + "memberName": "ttl", + "nodeType": "MemberAccess", + "referencedDeclaration": 4579, + "src": "6349:17:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4979, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4946, + "src": "6369:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "6349:23:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 4981, + "nodeType": "ExpressionStatement", + "src": "6349:23:12" + }, + { + "eventCall": { + "arguments": [ + { + "id": 4983, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4942, + "src": "6398:4:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4984, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4946, + "src": "6404:3:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 4982, + "name": "NewTTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "6391:6:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64)" + } + }, + "id": 4985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6391:17:12", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4986, + "nodeType": "EmitStatement", + "src": "6386:22:12" + } + ] + } + } + ] + }, + "id": 4990, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setResolverAndTTL", + "nameLocation": "6039:18:12", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4947, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4942, + "mutability": "mutable", + "name": "node", + "nameLocation": "6075:4:12", + "nodeType": "VariableDeclaration", + "scope": 4990, + "src": "6067:12:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4941, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6067:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4944, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "6097:8:12", + "nodeType": "VariableDeclaration", + "scope": 4990, + "src": "6089:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4943, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6089:7:12", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4946, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "6122:3:12", + "nodeType": "VariableDeclaration", + "scope": 4990, + "src": "6115:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4945, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "6115:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "6057:74:12" + }, + "returnParameters": { + "id": 4948, + "nodeType": "ParameterList", + "parameters": [], + "src": "6141:0:12" + }, + "scope": 4991, + "src": "6030:395:12", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 4992, + "src": "85:6342:12", + "usedErrors": [], + "usedEvents": [ + 4440, + 4446, + 4452, + 4458, + 4466 + ] + } + ], + "src": "0:6428:12" + }, + "id": 12 + }, + "@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol", + "exportedSymbols": { + "IMulticallable": [ + 5014 + ] + }, + "id": 5015, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 4993, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:23:13" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IMulticallable", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 5014, + "linearizedBaseContracts": [ + 5014 + ], + "name": "IMulticallable", + "nameLocation": "67:14:13", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "ac9650d8", + "id": 5002, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "multicall", + "nameLocation": "97:9:13", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4997, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4996, + "mutability": "mutable", + "name": "data", + "nameLocation": "133:4:13", + "nodeType": "VariableDeclaration", + "scope": 5002, + "src": "116:21:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 4994, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "116:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 4995, + "nodeType": "ArrayTypeName", + "src": "116:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "106:37:13" + }, + "returnParameters": { + "id": 5001, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5000, + "mutability": "mutable", + "name": "results", + "nameLocation": "177:7:13", + "nodeType": "VariableDeclaration", + "scope": 5002, + "src": "162:22:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 4998, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "162:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 4999, + "nodeType": "ArrayTypeName", + "src": "162:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "161:24:13" + }, + "scope": 5014, + "src": "88:98:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e32954eb", + "id": 5013, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "multicallWithNodeCheck", + "nameLocation": "201:22:13", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5004, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5013, + "src": "233:7:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5003, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "233:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5007, + "mutability": "mutable", + "name": "data", + "nameLocation": "267:4:13", + "nodeType": "VariableDeclaration", + "scope": 5013, + "src": "250:21:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5005, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "250:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5006, + "nodeType": "ArrayTypeName", + "src": "250:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "223:54:13" + }, + "returnParameters": { + "id": 5012, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5011, + "mutability": "mutable", + "name": "results", + "nameLocation": "311:7:13", + "nodeType": "VariableDeclaration", + "scope": 5013, + "src": "296:22:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5009, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "296:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5010, + "nodeType": "ArrayTypeName", + "src": "296:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "295:24:13" + }, + "scope": 5014, + "src": "192:128:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 5015, + "src": "57:265:13", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:291:13" + }, + "id": 13 + }, + "@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ], + "IMulticallable": [ + 5014 + ], + "Multicallable": [ + 5167 + ] + }, + "id": 5168, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5016, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:23:14" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol", + "file": "./IMulticallable.sol", + "id": 5017, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5168, + "sourceUnit": 5015, + "src": "57:30:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "file": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "id": 5018, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5168, + "sourceUnit": 15125, + "src": "88:64:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5019, + "name": "IMulticallable", + "nameLocations": [ + "189:14:14" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5014, + "src": "189:14:14" + }, + "id": 5020, + "nodeType": "InheritanceSpecifier", + "src": "189:14:14" + }, + { + "baseName": { + "id": 5021, + "name": "ERC165", + "nameLocations": [ + "205:6:14" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "205:6:14" + }, + "id": 5022, + "nodeType": "InheritanceSpecifier", + "src": "205:6:14" + } + ], + "canonicalName": "Multicallable", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 5167, + "linearizedBaseContracts": [ + 5167, + 15124, + 15136, + 5014 + ], + "name": "Multicallable", + "nameLocation": "172:13:14", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 5108, + "nodeType": "Block", + "src": "343:597:14", + "statements": [ + { + "expression": { + "id": 5040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5033, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5031, + "src": "353:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "expression": { + "id": 5037, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5027, + "src": "375:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 5038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "380:6:14", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "375:11:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "363:11:14", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 5034, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "367:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5035, + "nodeType": "ArrayTypeName", + "src": "367:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + } + }, + "id": 5039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "363:24:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "src": "353:34:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 5041, + "nodeType": "ExpressionStatement", + "src": "353:34:14" + }, + { + "body": { + "id": 5104, + "nodeType": "Block", + "src": "439:471:14", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 5058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5053, + "name": "nodehash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5024, + "src": "457:8:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 5056, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "477:1:14", + "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": 5055, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "469:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 5054, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "469:7:14", + "typeDescriptions": {} + } + }, + "id": 5057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "469:10:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "457:22:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5079, + "nodeType": "IfStatement", + "src": "453:267:14", + "trueBody": { + "id": 5078, + "nodeType": "Block", + "src": "481:239:14", + "statements": [ + { + "assignments": [ + 5060 + ], + "declarations": [ + { + "constant": false, + "id": 5060, + "mutability": "mutable", + "name": "txNamehash", + "nameLocation": "507:10:14", + "nodeType": "VariableDeclaration", + "scope": 5078, + "src": "499:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5059, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "499:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 5070, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "id": 5063, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5027, + "src": "528:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 5065, + "indexExpression": { + "id": 5064, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "533:1:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "528:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "endExpression": { + "hexValue": "3336", + "id": 5067, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "538:2:14", + "typeDescriptions": { + "typeIdentifier": "t_rational_36_by_1", + "typeString": "int_const 36" + }, + "value": "36" + }, + "id": 5068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "528:13:14", + "startExpression": { + "hexValue": "34", + "id": 5066, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "536:1:14", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + ], + "id": 5062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "520:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 5061, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "520:7:14", + "typeDescriptions": {} + } + }, + "id": 5069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "520:22:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "499:43:14" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 5074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5072, + "name": "txNamehash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5060, + "src": "589:10:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5073, + "name": "nodehash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5024, + "src": "603:8:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "589:22:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6d756c746963616c6c3a20416c6c207265636f726473206d75737420686176652061206d61746368696e67206e616d6568617368", + "id": 5075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "633:54:14", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30", + "typeString": "literal_string \"multicall: All records must have a matching namehash\"" + }, + "value": "multicall: All records must have a matching namehash" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30", + "typeString": "literal_string \"multicall: All records must have a matching namehash\"" + } + ], + "id": 5071, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "560:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "560:145:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5077, + "nodeType": "ExpressionStatement", + "src": "560:145:14" + } + ] + } + }, + { + "assignments": [ + 5081, + 5083 + ], + "declarations": [ + { + "constant": false, + "id": 5081, + "mutability": "mutable", + "name": "success", + "nameLocation": "739:7:14", + "nodeType": "VariableDeclaration", + "scope": 5104, + "src": "734:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5080, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "734:4:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5083, + "mutability": "mutable", + "name": "result", + "nameLocation": "761:6:14", + "nodeType": "VariableDeclaration", + "scope": 5104, + "src": "748:19:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5082, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "748:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 5093, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 5089, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5027, + "src": "815:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 5091, + "indexExpression": { + "id": 5090, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "820:1:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "815:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "arguments": [ + { + "id": 5086, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "779:4:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Multicallable_$5167", + "typeString": "contract Multicallable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Multicallable_$5167", + "typeString": "contract Multicallable" + } + ], + "id": 5085, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "771:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "771:7:14", + "typeDescriptions": {} + } + }, + "id": 5087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "771:13:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "785:12:14", + "memberName": "delegatecall", + "nodeType": "MemberAccess", + "src": "771:26:14", + "typeDescriptions": { + "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) returns (bool,bytes memory)" + } + }, + "id": 5092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "771:65:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "733:103:14" + }, + { + "expression": { + "arguments": [ + { + "id": 5095, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5081, + "src": "858:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5094, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "850:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "850:16:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5097, + "nodeType": "ExpressionStatement", + "src": "850:16:14" + }, + { + "expression": { + "id": 5102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 5098, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5031, + "src": "880:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 5100, + "indexExpression": { + "id": 5099, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "888:1:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "880:10:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5101, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5083, + "src": "893:6:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "880:19:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 5103, + "nodeType": "ExpressionStatement", + "src": "880:19:14" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5046, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "417:1:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 5047, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5027, + "src": "421:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + }, + "id": 5048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "426:6:14", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "421:11:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "417:15:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5105, + "initializationExpression": { + "assignments": [ + 5043 + ], + "declarations": [ + { + "constant": false, + "id": 5043, + "mutability": "mutable", + "name": "i", + "nameLocation": "410:1:14", + "nodeType": "VariableDeclaration", + "scope": 5105, + "src": "402:9:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5042, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "402:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5045, + "initialValue": { + "hexValue": "30", + "id": 5044, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "414:1:14", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "402:13:14" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 5051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "434:3:14", + "subExpression": { + "id": 5050, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "434:1:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5052, + "nodeType": "ExpressionStatement", + "src": "434:3:14" + }, + "nodeType": "ForStatement", + "src": "397:513:14" + }, + { + "expression": { + "id": 5106, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5031, + "src": "926:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "functionReturnParameters": 5032, + "id": 5107, + "nodeType": "Return", + "src": "919:14:14" + } + ] + }, + "id": 5109, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_multicall", + "nameLocation": "227:10:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5024, + "mutability": "mutable", + "name": "nodehash", + "nameLocation": "255:8:14", + "nodeType": "VariableDeclaration", + "scope": 5109, + "src": "247:16:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5023, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "247:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5027, + "mutability": "mutable", + "name": "data", + "nameLocation": "290:4:14", + "nodeType": "VariableDeclaration", + "scope": 5109, + "src": "273:21:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5025, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "273:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5026, + "nodeType": "ArrayTypeName", + "src": "273:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "237:63:14" + }, + "returnParameters": { + "id": 5032, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5031, + "mutability": "mutable", + "name": "results", + "nameLocation": "334:7:14", + "nodeType": "VariableDeclaration", + "scope": 5109, + "src": "319:22:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5029, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "319:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5030, + "nodeType": "ArrayTypeName", + "src": "319:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "318:24:14" + }, + "scope": 5167, + "src": "218:722:14", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 5013 + ], + "body": { + "id": 5125, + "nodeType": "Block", + "src": "1273:50:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5121, + "name": "nodehash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5111, + "src": "1301:8:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5122, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5114, + "src": "1311:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + ], + "id": 5120, + "name": "_multicall", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5109, + "src": "1290:10:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (bytes32,bytes calldata[] calldata) returns (bytes memory[] memory)" + } + }, + "id": 5123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1290:26:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "functionReturnParameters": 5119, + "id": 5124, + "nodeType": "Return", + "src": "1283:33:14" + } + ] + }, + "functionSelector": "e32954eb", + "id": 5126, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "multicallWithNodeCheck", + "nameLocation": "1145:22:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5115, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5111, + "mutability": "mutable", + "name": "nodehash", + "nameLocation": "1185:8:14", + "nodeType": "VariableDeclaration", + "scope": 5126, + "src": "1177:16:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5110, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1177:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5114, + "mutability": "mutable", + "name": "data", + "nameLocation": "1220:4:14", + "nodeType": "VariableDeclaration", + "scope": 5126, + "src": "1203:21:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5112, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1203:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5113, + "nodeType": "ArrayTypeName", + "src": "1203:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "1167:63:14" + }, + "returnParameters": { + "id": 5119, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5118, + "mutability": "mutable", + "name": "results", + "nameLocation": "1264:7:14", + "nodeType": "VariableDeclaration", + "scope": 5126, + "src": "1249:22:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5116, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1249:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5117, + "nodeType": "ArrayTypeName", + "src": "1249:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "1248:24:14" + }, + "scope": 5167, + "src": "1136:187:14", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 5002 + ], + "body": { + "id": 5144, + "nodeType": "Block", + "src": "1434:52:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 5139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1470:1:14", + "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": 5138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1462:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 5137, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1462:7:14", + "typeDescriptions": {} + } + }, + "id": 5140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1462:10:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5141, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5129, + "src": "1474:4:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes calldata[] calldata" + } + ], + "id": 5136, + "name": "_multicall", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5109, + "src": "1451:10:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (bytes32,bytes calldata[] calldata) returns (bytes memory[] memory)" + } + }, + "id": 5142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1451:28:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "functionReturnParameters": 5135, + "id": 5143, + "nodeType": "Return", + "src": "1444:35:14" + } + ] + }, + "functionSelector": "ac9650d8", + "id": 5145, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "multicall", + "nameLocation": "1338:9:14", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5131, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1392:8:14" + }, + "parameters": { + "id": 5130, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5129, + "mutability": "mutable", + "name": "data", + "nameLocation": "1374:4:14", + "nodeType": "VariableDeclaration", + "scope": 5145, + "src": "1357:21:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5127, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1357:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5128, + "nodeType": "ArrayTypeName", + "src": "1357:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "1347:37:14" + }, + "returnParameters": { + "id": 5135, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5134, + "mutability": "mutable", + "name": "results", + "nameLocation": "1425:7:14", + "nodeType": "VariableDeclaration", + "scope": 5145, + "src": "1410:22:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 5132, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1410:5:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 5133, + "nodeType": "ArrayTypeName", + "src": "1410:7:14", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "1409:24:14" + }, + "scope": 5167, + "src": "1329:157:14", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 15123 + ], + "body": { + "id": 5165, + "nodeType": "Block", + "src": "1597:135:14", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5153, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5147, + "src": "1626:11:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5155, + "name": "IMulticallable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5014, + "src": "1646:14:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IMulticallable_$5014_$", + "typeString": "type(contract IMulticallable)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IMulticallable_$5014_$", + "typeString": "type(contract IMulticallable)" + } + ], + "id": 5154, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1641:4:14", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5156, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1641:20:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IMulticallable_$5014", + "typeString": "type(contract IMulticallable)" + } + }, + "id": 5157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1662:11:14", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1641:32:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1626:47:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5161, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5147, + "src": "1713:11:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5159, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1689:5:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_Multicallable_$5167_$", + "typeString": "type(contract super Multicallable)" + } + }, + "id": 5160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1695:17:14", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 15123, + "src": "1689:23:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1689:36:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1626:99:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5152, + "id": 5164, + "nodeType": "Return", + "src": "1607:118:14" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5166, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1501:17:14", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5149, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1573:8:14" + }, + "parameters": { + "id": 5148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5147, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1535:11:14", + "nodeType": "VariableDeclaration", + "scope": 5166, + "src": "1528:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5146, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1528:6:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1518:34:14" + }, + "returnParameters": { + "id": 5152, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5151, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5166, + "src": "1591:4:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5150, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1591:4:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1590:6:14" + }, + "scope": 5167, + "src": "1492:240:14", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 5168, + "src": "154:1580:14", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:1703:14" + }, + "id": 14 + }, + "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol", + "exportedSymbols": { + "ABIResolver": [ + 5704 + ], + "AddrResolver": [ + 5903 + ], + "Buffer": [ + 2717 + ], + "BytesUtils": [ + 8609 + ], + "ContentHashResolver": [ + 5984 + ], + "DNSResolver": [ + 6460 + ], + "ENS": [ + 4567 + ], + "ERC165": [ + 15124 + ], + "IABIResolver": [ + 6481 + ], + "IAddrResolver": [ + 6499 + ], + "IAddressResolver": [ + 6520 + ], + "IContentHashResolver": [ + 6537 + ], + "IDNSRecordResolver": [ + 6570 + ], + "IDNSZoneResolver": [ + 6589 + ], + "IERC165": [ + 15136 + ], + "IInterfaceResolver": [ + 6622 + ], + "IMulticallable": [ + 5014 + ], + "INameResolver": [ + 6639 + ], + "INameWrapper": [ + 10064 + ], + "IPubkeyResolver": [ + 6660 + ], + "ITextResolver": [ + 6683 + ], + "IVersionableResolver": [ + 6699 + ], + "InterfaceResolver": [ + 6895 + ], + "Multicallable": [ + 5167 + ], + "NameResolver": [ + 6976 + ], + "PubkeyResolver": [ + 7083 + ], + "PublicResolver": [ + 5481 + ], + "RRUtils": [ + 3816 + ], + "ResolverBase": [ + 5556 + ], + "ReverseClaimer": [ + 7273 + ], + "TextResolver": [ + 7176 + ] + }, + "id": 5482, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5169, + "literals": [ + "solidity", + ">=", + "0.8", + ".17", + "<", + "0.9", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "31:32:15" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 5170, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 4568, + "src": "65:29:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol", + "file": "./profiles/ABIResolver.sol", + "id": 5171, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 5705, + "src": "95:36:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol", + "file": "./profiles/AddrResolver.sol", + "id": 5172, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 5904, + "src": "132:37:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol", + "file": "./profiles/ContentHashResolver.sol", + "id": 5173, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 5985, + "src": "170:44:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol", + "file": "./profiles/DNSResolver.sol", + "id": 5174, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 6461, + "src": "215:36:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol", + "file": "./profiles/InterfaceResolver.sol", + "id": 5175, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 6896, + "src": "252:42:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol", + "file": "./profiles/NameResolver.sol", + "id": 5176, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 6977, + "src": "295:37:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol", + "file": "./profiles/PubkeyResolver.sol", + "id": 5177, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 7084, + "src": "333:39:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol", + "file": "./profiles/TextResolver.sol", + "id": 5178, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 7177, + "src": "373:37:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol", + "file": "./Multicallable.sol", + "id": 5179, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 5168, + "src": "411:29:15", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol", + "file": "../reverseRegistrar/ReverseClaimer.sol", + "id": 5181, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 7274, + "src": "441:70:15", + "symbolAliases": [ + { + "foreign": { + "id": 5180, + "name": "ReverseClaimer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7273, + "src": "449:14:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol", + "file": "../wrapper/INameWrapper.sol", + "id": 5183, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5482, + "sourceUnit": 10065, + "src": "512:57:15", + "symbolAliases": [ + { + "foreign": { + "id": 5182, + "name": "INameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10064, + "src": "520:12:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 5185, + "name": "Multicallable", + "nameLocations": [ + "702:13:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5167, + "src": "702:13:15" + }, + "id": 5186, + "nodeType": "InheritanceSpecifier", + "src": "702:13:15" + }, + { + "baseName": { + "id": 5187, + "name": "ABIResolver", + "nameLocations": [ + "721:11:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5704, + "src": "721:11:15" + }, + "id": 5188, + "nodeType": "InheritanceSpecifier", + "src": "721:11:15" + }, + { + "baseName": { + "id": 5189, + "name": "AddrResolver", + "nameLocations": [ + "738:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5903, + "src": "738:12:15" + }, + "id": 5190, + "nodeType": "InheritanceSpecifier", + "src": "738:12:15" + }, + { + "baseName": { + "id": 5191, + "name": "ContentHashResolver", + "nameLocations": [ + "756:19:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5984, + "src": "756:19:15" + }, + "id": 5192, + "nodeType": "InheritanceSpecifier", + "src": "756:19:15" + }, + { + "baseName": { + "id": 5193, + "name": "DNSResolver", + "nameLocations": [ + "781:11:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6460, + "src": "781:11:15" + }, + "id": 5194, + "nodeType": "InheritanceSpecifier", + "src": "781:11:15" + }, + { + "baseName": { + "id": 5195, + "name": "InterfaceResolver", + "nameLocations": [ + "798:17:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6895, + "src": "798:17:15" + }, + "id": 5196, + "nodeType": "InheritanceSpecifier", + "src": "798:17:15" + }, + { + "baseName": { + "id": 5197, + "name": "NameResolver", + "nameLocations": [ + "821:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6976, + "src": "821:12:15" + }, + "id": 5198, + "nodeType": "InheritanceSpecifier", + "src": "821:12:15" + }, + { + "baseName": { + "id": 5199, + "name": "PubkeyResolver", + "nameLocations": [ + "839:14:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7083, + "src": "839:14:15" + }, + "id": 5200, + "nodeType": "InheritanceSpecifier", + "src": "839:14:15" + }, + { + "baseName": { + "id": 5201, + "name": "TextResolver", + "nameLocations": [ + "859:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7176, + "src": "859:12:15" + }, + "id": 5202, + "nodeType": "InheritanceSpecifier", + "src": "859:12:15" + }, + { + "baseName": { + "id": 5203, + "name": "ReverseClaimer", + "nameLocations": [ + "877:14:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7273, + "src": "877:14:15" + }, + "id": 5204, + "nodeType": "InheritanceSpecifier", + "src": "877:14:15" + } + ], + "canonicalName": "PublicResolver", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 5184, + "nodeType": "StructuredDocumentation", + "src": "571:99:15", + "text": " A simple resolver anyone can use; only allows the owner of a node to set its\n address." + }, + "fullyImplemented": true, + "id": 5481, + "linearizedBaseContracts": [ + 5481, + 7273, + 7176, + 7083, + 6976, + 6895, + 6460, + 5984, + 5903, + 5704, + 5556, + 6699, + 5167, + 15124, + 15136, + 6683, + 6660, + 6639, + 6520, + 6499, + 6622, + 6589, + 6570, + 6537, + 6481, + 5014 + ], + "name": "PublicResolver", + "nameLocation": "680:14:15", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 5207, + "mutability": "immutable", + "name": "ens", + "nameLocation": "912:3:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "898:17:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 5206, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 5205, + "name": "ENS", + "nameLocations": [ + "898:3:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "898:3:15" + }, + "referencedDeclaration": 4567, + "src": "898:3:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5210, + "mutability": "immutable", + "name": "nameWrapper", + "nameLocation": "944:11:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "921:34:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + }, + "typeName": { + "id": 5209, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 5208, + "name": "INameWrapper", + "nameLocations": [ + "921:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "921:12:15" + }, + "referencedDeclaration": 10064, + "src": "921:12:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5212, + "mutability": "immutable", + "name": "trustedETHController", + "nameLocation": "979:20:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "961:38:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5211, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "961:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5214, + "mutability": "immutable", + "name": "trustedReverseRegistrar", + "nameLocation": "1023:23:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "1005:41:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5213, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1005:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "documentation": { + "id": 5215, + "nodeType": "StructuredDocumentation", + "src": "1053:239:15", + "text": " A mapping of operators. An address that is authorised for an address\n may make any changes to the name that the owner could, but may not update\n the set of authorisations.\n (owner, operator) => approved" + }, + "id": 5221, + "mutability": "mutable", + "name": "_operatorApprovals", + "nameLocation": "1350:18:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "1297:71:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "typeName": { + "id": 5220, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1305:7:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1297:44:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5219, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5217, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1324:7:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1316:24:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5218, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1335:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "documentation": { + "id": 5222, + "nodeType": "StructuredDocumentation", + "src": "1375:240:15", + "text": " A mapping of delegates. A delegate that is authorised by an owner\n for a name may make changes to the name's resolver, but may not update\n the set of token approvals.\n (owner, name, delegate) => approved" + }, + "id": 5230, + "mutability": "mutable", + "name": "_tokenApprovals", + "nameLocation": "1701:15:15", + "nodeType": "VariableDeclaration", + "scope": 5481, + "src": "1620:96:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes32 => mapping(address => bool)))" + }, + "typeName": { + "id": 5229, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5223, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1628:7:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1620:64:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes32 => mapping(address => bool)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5228, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5224, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1647:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "1639:44:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(bytes32 => mapping(address => bool))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5227, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1666:7:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1658:24:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5226, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1677:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + } + }, + "visibility": "private" + }, + { + "anonymous": false, + "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", + "id": 5238, + "name": "ApprovalForAll", + "nameLocation": "1781:14:15", + "nodeType": "EventDefinition", + "parameters": { + "id": 5237, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5232, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1821:5:15", + "nodeType": "VariableDeclaration", + "scope": 5238, + "src": "1805:21:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1805:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5234, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "1852:8:15", + "nodeType": "VariableDeclaration", + "scope": 5238, + "src": "1836:24:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5233, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1836:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5236, + "indexed": false, + "mutability": "mutable", + "name": "approved", + "nameLocation": "1875:8:15", + "nodeType": "VariableDeclaration", + "scope": 5238, + "src": "1870:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5235, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1870:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1795:94:15" + }, + "src": "1775:115:15" + }, + { + "anonymous": false, + "eventSelector": "f0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0", + "id": 5248, + "name": "Approved", + "nameLocation": "1972:8:15", + "nodeType": "EventDefinition", + "parameters": { + "id": 5247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5240, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1998:5:15", + "nodeType": "VariableDeclaration", + "scope": 5248, + "src": "1990:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5239, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1990:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5242, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "2029:4:15", + "nodeType": "VariableDeclaration", + "scope": 5248, + "src": "2013:20:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5241, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2013:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5244, + "indexed": true, + "mutability": "mutable", + "name": "delegate", + "nameLocation": "2059:8:15", + "nodeType": "VariableDeclaration", + "scope": 5248, + "src": "2043:24:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5243, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2043:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5246, + "indexed": true, + "mutability": "mutable", + "name": "approved", + "nameLocation": "2090:8:15", + "nodeType": "VariableDeclaration", + "scope": 5248, + "src": "2077:21:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5245, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2077:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1980:124:15" + }, + "src": "1966:139:15" + }, + { + "body": { + "id": 5282, + "nodeType": "Block", + "src": "2298:179:15", + "statements": [ + { + "expression": { + "id": 5268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5266, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "2308:3:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5267, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5251, + "src": "2314:4:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "src": "2308:10:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 5269, + "nodeType": "ExpressionStatement", + "src": "2308:10:15" + }, + { + "expression": { + "id": 5272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5270, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5210, + "src": "2328:11:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5271, + "name": "wrapperAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5254, + "src": "2342:14:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "src": "2328:28:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "id": 5273, + "nodeType": "ExpressionStatement", + "src": "2328:28:15" + }, + { + "expression": { + "id": 5276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5274, + "name": "trustedETHController", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5212, + "src": "2366:20:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5275, + "name": "_trustedETHController", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5256, + "src": "2389:21:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2366:44:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5277, + "nodeType": "ExpressionStatement", + "src": "2366:44:15" + }, + { + "expression": { + "id": 5280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5278, + "name": "trustedReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5214, + "src": "2420:23:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5279, + "name": "_trustedReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5258, + "src": "2446:24:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2420:50:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5281, + "nodeType": "ExpressionStatement", + "src": "2420:50:15" + } + ] + }, + "id": 5283, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 5261, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5251, + "src": "2280:4:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + { + "expression": { + "id": 5262, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2286:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2290:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2286:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 5264, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 5260, + "name": "ReverseClaimer", + "nameLocations": [ + "2265:14:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7273, + "src": "2265:14:15" + }, + "nodeType": "ModifierInvocation", + "src": "2265:32:15" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5259, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5251, + "mutability": "mutable", + "name": "_ens", + "nameLocation": "2136:4:15", + "nodeType": "VariableDeclaration", + "scope": 5283, + "src": "2132:8:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 5250, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 5249, + "name": "ENS", + "nameLocations": [ + "2132:3:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "2132:3:15" + }, + "referencedDeclaration": 4567, + "src": "2132:3:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5254, + "mutability": "mutable", + "name": "wrapperAddress", + "nameLocation": "2163:14:15", + "nodeType": "VariableDeclaration", + "scope": 5283, + "src": "2150:27:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + }, + "typeName": { + "id": 5253, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 5252, + "name": "INameWrapper", + "nameLocations": [ + "2150:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "2150:12:15" + }, + "referencedDeclaration": 10064, + "src": "2150:12:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5256, + "mutability": "mutable", + "name": "_trustedETHController", + "nameLocation": "2195:21:15", + "nodeType": "VariableDeclaration", + "scope": 5283, + "src": "2187:29:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2187:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5258, + "mutability": "mutable", + "name": "_trustedReverseRegistrar", + "nameLocation": "2234:24:15", + "nodeType": "VariableDeclaration", + "scope": 5283, + "src": "2226:32:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5257, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2226:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2122:142:15" + }, + "returnParameters": { + "id": 5265, + "nodeType": "ParameterList", + "parameters": [], + "src": "2298:0:15" + }, + "scope": 5481, + "src": "2111:366:15", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 5315, + "nodeType": "Block", + "src": "2614:250:15", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5295, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5292, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2645:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2649:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2645:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5294, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5286, + "src": "2659:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2645:22:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a2073657474696e6720617070726f76616c2073746174757320666f722073656c66", + "id": 5296, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2681:43:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "typeString": "literal_string \"ERC1155: setting approval status for self\"" + }, + "value": "ERC1155: setting approval status for self" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "typeString": "literal_string \"ERC1155: setting approval status for self\"" + } + ], + "id": 5291, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2624:7:15", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2624:110:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5298, + "nodeType": "ExpressionStatement", + "src": "2624:110:15" + }, + { + "expression": { + "id": 5306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 5299, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5221, + "src": "2745:18:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 5303, + "indexExpression": { + "expression": { + "id": 5300, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2764:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2768:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2764:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2745:30:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5304, + "indexExpression": { + "id": 5302, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5286, + "src": "2776:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2745:40:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5305, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5288, + "src": "2788:8:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2745:51:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5307, + "nodeType": "ExpressionStatement", + "src": "2745:51:15" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 5309, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2826:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2830:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2826:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5311, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5286, + "src": "2838:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5312, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5288, + "src": "2848:8:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5308, + "name": "ApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5238, + "src": "2811:14:15", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 5313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2811:46:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5314, + "nodeType": "EmitStatement", + "src": "2806:51:15" + } + ] + }, + "documentation": { + "id": 5284, + "nodeType": "StructuredDocumentation", + "src": "2483:57:15", + "text": " @dev See {IERC1155-setApprovalForAll}." + }, + "functionSelector": "a22cb465", + "id": 5316, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "2554:17:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5289, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5286, + "mutability": "mutable", + "name": "operator", + "nameLocation": "2580:8:15", + "nodeType": "VariableDeclaration", + "scope": 5316, + "src": "2572:16:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5285, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2572:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5288, + "mutability": "mutable", + "name": "approved", + "nameLocation": "2595:8:15", + "nodeType": "VariableDeclaration", + "scope": 5316, + "src": "2590:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5287, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2590:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2571:33:15" + }, + "returnParameters": { + "id": 5290, + "nodeType": "ParameterList", + "parameters": [], + "src": "2614:0:15" + }, + "scope": 5481, + "src": "2545:319:15", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5332, + "nodeType": "Block", + "src": "3041:61:15", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 5326, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5221, + "src": "3058:18:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 5328, + "indexExpression": { + "id": 5327, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5319, + "src": "3077:7:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3058:27:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5330, + "indexExpression": { + "id": 5329, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5321, + "src": "3086:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3058:37:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5325, + "id": 5331, + "nodeType": "Return", + "src": "3051:44:15" + } + ] + }, + "documentation": { + "id": 5317, + "nodeType": "StructuredDocumentation", + "src": "2870:56:15", + "text": " @dev See {IERC1155-isApprovedForAll}." + }, + "functionSelector": "e985e9c5", + "id": 5333, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "2940:16:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5322, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5319, + "mutability": "mutable", + "name": "account", + "nameLocation": "2974:7:15", + "nodeType": "VariableDeclaration", + "scope": 5333, + "src": "2966:15:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5318, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2966:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5321, + "mutability": "mutable", + "name": "operator", + "nameLocation": "2999:8:15", + "nodeType": "VariableDeclaration", + "scope": 5333, + "src": "2991:16:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5320, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2991:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2956:57:15" + }, + "returnParameters": { + "id": 5325, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5324, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5333, + "src": "3035:4:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5323, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3035:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3034:6:15" + }, + "scope": 5481, + "src": "2931:171:15", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 5370, + "nodeType": "Block", + "src": "3269:210:15", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5344, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3287:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3291:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3287:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5346, + "name": "delegate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5338, + "src": "3301:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3287:22:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "53657474696e672064656c65676174652073746174757320666f722073656c66", + "id": 5348, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3311:34:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a", + "typeString": "literal_string \"Setting delegate status for self\"" + }, + "value": "Setting delegate status for self" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a", + "typeString": "literal_string \"Setting delegate status for self\"" + } + ], + "id": 5343, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3279:7:15", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3279:67:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5350, + "nodeType": "ExpressionStatement", + "src": "3279:67:15" + }, + { + "expression": { + "id": 5360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 5351, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5230, + "src": "3357:15:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes32 => mapping(address => bool)))" + } + }, + "id": 5356, + "indexExpression": { + "expression": { + "id": 5352, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3373:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3377:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3373:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3357:27:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(bytes32 => mapping(address => bool))" + } + }, + "id": 5357, + "indexExpression": { + "id": 5354, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5336, + "src": "3385:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3357:33:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5358, + "indexExpression": { + "id": 5355, + "name": "delegate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5338, + "src": "3391:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3357:43:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5359, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5340, + "src": "3403:8:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3357:54:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5361, + "nodeType": "ExpressionStatement", + "src": "3357:54:15" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 5363, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3435:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3439:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3435:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5365, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5336, + "src": "3447:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5366, + "name": "delegate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5338, + "src": "3453:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5367, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5340, + "src": "3463:8:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5362, + "name": "Approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5248, + "src": "3426:8:15", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bytes32,address,bool)" + } + }, + "id": 5368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3426:46:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5369, + "nodeType": "EmitStatement", + "src": "3421:51:15" + } + ] + }, + "documentation": { + "id": 5334, + "nodeType": "StructuredDocumentation", + "src": "3108:83:15", + "text": " @dev Approve a delegate to be able to updated records on a node." + }, + "functionSelector": "a4b91a01", + "id": 5371, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "3205:7:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5341, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5336, + "mutability": "mutable", + "name": "node", + "nameLocation": "3221:4:15", + "nodeType": "VariableDeclaration", + "scope": 5371, + "src": "3213:12:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5335, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3213:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5338, + "mutability": "mutable", + "name": "delegate", + "nameLocation": "3235:8:15", + "nodeType": "VariableDeclaration", + "scope": 5371, + "src": "3227:16:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5337, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3227:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5340, + "mutability": "mutable", + "name": "approved", + "nameLocation": "3250:8:15", + "nodeType": "VariableDeclaration", + "scope": 5371, + "src": "3245:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5339, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3245:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3212:47:15" + }, + "returnParameters": { + "id": 5342, + "nodeType": "ParameterList", + "parameters": [], + "src": "3269:0:15" + }, + "scope": 5481, + "src": "3196:283:15", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5391, + "nodeType": "Block", + "src": "3714:62:15", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 5383, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5230, + "src": "3731:15:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes32 => mapping(address => bool)))" + } + }, + "id": 5385, + "indexExpression": { + "id": 5384, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5374, + "src": "3747:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3731:22:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(bytes32 => mapping(address => bool))" + } + }, + "id": 5387, + "indexExpression": { + "id": 5386, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5376, + "src": "3754:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3731:28:15", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5389, + "indexExpression": { + "id": 5388, + "name": "delegate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5378, + "src": "3760:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3731:38:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5382, + "id": 5390, + "nodeType": "Return", + "src": "3724:45:15" + } + ] + }, + "documentation": { + "id": 5372, + "nodeType": "StructuredDocumentation", + "src": "3485:97:15", + "text": " @dev Check to see if the delegate has been approved by the owner for the node." + }, + "functionSelector": "a9784b3e", + "id": 5392, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedFor", + "nameLocation": "3596:13:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5379, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5374, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3627:5:15", + "nodeType": "VariableDeclaration", + "scope": 5392, + "src": "3619:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5373, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3619:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5376, + "mutability": "mutable", + "name": "node", + "nameLocation": "3650:4:15", + "nodeType": "VariableDeclaration", + "scope": 5392, + "src": "3642:12:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5375, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3642:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5378, + "mutability": "mutable", + "name": "delegate", + "nameLocation": "3672:8:15", + "nodeType": "VariableDeclaration", + "scope": 5392, + "src": "3664:16:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3664:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3609:77:15" + }, + "returnParameters": { + "id": 5382, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5381, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5392, + "src": "3708:4:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5380, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3708:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3707:6:15" + }, + "scope": 5481, + "src": "3587:189:15", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 5500 + ], + "body": { + "id": 5456, + "nodeType": "Block", + "src": "3856:472:15", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5400, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3883:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3887:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3883:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5402, + "name": "trustedETHController", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5212, + "src": "3897:20:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3883:34:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5404, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3933:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3937:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3933:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5406, + "name": "trustedReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5214, + "src": "3947:23:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3933:37:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3883:87:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5412, + "nodeType": "IfStatement", + "src": "3866:151:15", + "trueBody": { + "id": 5411, + "nodeType": "Block", + "src": "3981:36:15", + "statements": [ + { + "expression": { + "hexValue": "74727565", + "id": 5409, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4002:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 5399, + "id": 5410, + "nodeType": "Return", + "src": "3995:11:15" + } + ] + } + }, + { + "assignments": [ + 5414 + ], + "declarations": [ + { + "constant": false, + "id": 5414, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4034:5:15", + "nodeType": "VariableDeclaration", + "scope": 5456, + "src": "4026:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5413, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4026:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 5419, + "initialValue": { + "arguments": [ + { + "id": 5417, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5394, + "src": "4052:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 5415, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "4042:3:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 5416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4046:5:15", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "4042:9:15", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 5418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4042:15:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4026:31:15" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5420, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5414, + "src": "4071:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 5423, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5210, + "src": "4088:11:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + ], + "id": 5422, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4080:7:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4080:7:15", + "typeDescriptions": {} + } + }, + "id": 5424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4080:20:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4071:29:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5437, + "nodeType": "IfStatement", + "src": "4067:102:15", + "trueBody": { + "id": 5436, + "nodeType": "Block", + "src": "4102:67:15", + "statements": [ + { + "expression": { + "id": 5434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5426, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5414, + "src": "4116:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 5431, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5394, + "src": "4152:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 5430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4144:7:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 5429, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4144:7:15", + "typeDescriptions": {} + } + }, + "id": 5432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4144:13:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5427, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5210, + "src": "4124:11:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "id": 5428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4136:7:15", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 9994, + "src": "4124:19:15", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view external returns (address)" + } + }, + "id": 5433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4124:34:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4116:42:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5435, + "nodeType": "ExpressionStatement", + "src": "4116:42:15" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5438, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5414, + "src": "4197:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 5439, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4206:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4210:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4206:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4197:19:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5443, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5414, + "src": "4249:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 5444, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4256:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4260:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4256:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5442, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5333, + "src": "4232:16:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 5446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4232:35:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4197:70:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5449, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5414, + "src": "4297:5:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5450, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5394, + "src": "4304:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 5451, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4310:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4314:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4310:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5448, + "name": "isApprovedFor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5392, + "src": "4283:13:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,bytes32,address) view returns (bool)" + } + }, + "id": 5453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4283:38:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4197:124:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5399, + "id": 5455, + "nodeType": "Return", + "src": "4178:143:15" + } + ] + }, + "id": 5457, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isAuthorised", + "nameLocation": "3791:12:15", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5396, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3832:8:15" + }, + "parameters": { + "id": 5395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5394, + "mutability": "mutable", + "name": "node", + "nameLocation": "3812:4:15", + "nodeType": "VariableDeclaration", + "scope": 5457, + "src": "3804:12:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5393, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3804:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3803:14:15" + }, + "returnParameters": { + "id": 5399, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5398, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5457, + "src": "3850:4:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5397, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3850:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3849:6:15" + }, + "scope": 5481, + "src": "3782:546:15", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 5166, + 5703, + 5870, + 5983, + 6338, + 6894, + 6975, + 7082, + 7175 + ], + "body": { + "id": 5479, + "nodeType": "Block", + "src": "4724:60:15", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5476, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5459, + "src": "4765:11:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5474, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "4741:5:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_PublicResolver_$5481_$", + "typeString": "type(contract super PublicResolver)" + } + }, + "id": 5475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4747:17:15", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 7175, + "src": "4741:23:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4741:36:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5473, + "id": 5478, + "nodeType": "Return", + "src": "4734:43:15" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5480, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "4343:17:15", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5470, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 5461, + "name": "Multicallable", + "nameLocations": [ + "4453:13:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5167, + "src": "4453:13:15" + }, + { + "id": 5462, + "name": "ABIResolver", + "nameLocations": [ + "4480:11:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5704, + "src": "4480:11:15" + }, + { + "id": 5463, + "name": "AddrResolver", + "nameLocations": [ + "4505:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5903, + "src": "4505:12:15" + }, + { + "id": 5464, + "name": "ContentHashResolver", + "nameLocations": [ + "4531:19:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5984, + "src": "4531:19:15" + }, + { + "id": 5465, + "name": "DNSResolver", + "nameLocations": [ + "4564:11:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6460, + "src": "4564:11:15" + }, + { + "id": 5466, + "name": "InterfaceResolver", + "nameLocations": [ + "4589:17:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6895, + "src": "4589:17:15" + }, + { + "id": 5467, + "name": "NameResolver", + "nameLocations": [ + "4620:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6976, + "src": "4620:12:15" + }, + { + "id": 5468, + "name": "PubkeyResolver", + "nameLocations": [ + "4646:14:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7083, + "src": "4646:14:15" + }, + { + "id": 5469, + "name": "TextResolver", + "nameLocations": [ + "4674:12:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7176, + "src": "4674:12:15" + } + ], + "src": "4431:265:15" + }, + "parameters": { + "id": 5460, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5459, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "4377:11:15", + "nodeType": "VariableDeclaration", + "scope": 5480, + "src": "4370:18:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5458, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "4370:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "4360:34:15" + }, + "returnParameters": { + "id": 5473, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5472, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5480, + "src": "4714:4:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5471, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4714:4:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4713:6:15" + }, + "scope": 5481, + "src": "4334:450:15", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + } + ], + "scope": 5482, + "src": "671:4115:15", + "usedErrors": [], + "usedEvents": [ + 5238, + 5248, + 6468, + 6490, + 6510, + 6528, + 6549, + 6557, + 6580, + 6611, + 6630, + 6649, + 6672, + 6691 + ] + } + ], + "src": "31:4756:15" + }, + "id": 15 + }, + "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ], + "IVersionableResolver": [ + 6699 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 5557, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5483, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:16" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "file": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "id": 5484, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5557, + "sourceUnit": 15125, + "src": "58:64:16", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol", + "file": "./profiles/IVersionableResolver.sol", + "id": 5485, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5557, + "sourceUnit": 6700, + "src": "123:45:16", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5486, + "name": "ERC165", + "nameLocations": [ + "204:6:16" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "204:6:16" + }, + "id": 5487, + "nodeType": "InheritanceSpecifier", + "src": "204:6:16" + }, + { + "baseName": { + "id": 5488, + "name": "IVersionableResolver", + "nameLocations": [ + "212:20:16" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6699, + "src": "212:20:16" + }, + "id": 5489, + "nodeType": "InheritanceSpecifier", + "src": "212:20:16" + } + ], + "canonicalName": "ResolverBase", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 5556, + "linearizedBaseContracts": [ + 5556, + 6699, + 15124, + 15136 + ], + "name": "ResolverBase", + "nameLocation": "188:12:16", + "nodeType": "ContractDefinition", + "nodes": [ + { + "baseFunctions": [ + 6698 + ], + "constant": false, + "functionSelector": "d700ff33", + "id": 5493, + "mutability": "mutable", + "name": "recordVersions", + "nameLocation": "273:14:16", + "nodeType": "VariableDeclaration", + "scope": 5556, + "src": "239:48:16", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + }, + "typeName": { + "id": 5492, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5490, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "247:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "239:26:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5491, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "258:6:16", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + }, + "visibility": "public" + }, + { + "id": 5500, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isAuthorised", + "nameLocation": "303:12:16", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5496, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5495, + "mutability": "mutable", + "name": "node", + "nameLocation": "324:4:16", + "nodeType": "VariableDeclaration", + "scope": 5500, + "src": "316:12:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5494, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "316:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "315:14:16" + }, + "returnParameters": { + "id": 5499, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5498, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5500, + "src": "361:4:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5497, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "361:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "360:6:16" + }, + "scope": 5556, + "src": "294:73:16", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 5511, + "nodeType": "Block", + "src": "407:55:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 5506, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5502, + "src": "438:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 5505, + "name": "isAuthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5500, + "src": "425:12:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 5507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "425:18:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5504, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "417:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "417:27:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5509, + "nodeType": "ExpressionStatement", + "src": "417:27:16" + }, + { + "id": 5510, + "nodeType": "PlaceholderStatement", + "src": "454:1:16" + } + ] + }, + "id": 5512, + "name": "authorised", + "nameLocation": "382:10:16", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 5503, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5502, + "mutability": "mutable", + "name": "node", + "nameLocation": "401:4:16", + "nodeType": "VariableDeclaration", + "scope": 5512, + "src": "393:12:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5501, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "393:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "392:14:16" + }, + "src": "373:89:16", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 5533, + "nodeType": "Block", + "src": "730:96:16", + "statements": [ + { + "expression": { + "id": 5524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "740:22:16", + "subExpression": { + "baseExpression": { + "id": 5521, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "740:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5523, + "indexExpression": { + "id": 5522, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5515, + "src": "755:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "740:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 5525, + "nodeType": "ExpressionStatement", + "src": "740:22:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 5527, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5515, + "src": "792:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "baseExpression": { + "id": 5528, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "798:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5530, + "indexExpression": { + "id": 5529, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5515, + "src": "813:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "798:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 5526, + "name": "VersionChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6691, + "src": "777:14:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64)" + } + }, + "id": 5531, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "777:42:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5532, + "nodeType": "EmitStatement", + "src": "772:47:16" + } + ] + }, + "documentation": { + "id": 5513, + "nodeType": "StructuredDocumentation", + "src": "468:189:16", + "text": " Increments the record version associated with an ENS node.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update." + }, + "functionSelector": "3603d758", + "id": 5534, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 5518, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5515, + "src": "724:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 5519, + "kind": "modifierInvocation", + "modifierName": { + "id": 5517, + "name": "authorised", + "nameLocations": [ + "713:10:16" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "713:10:16" + }, + "nodeType": "ModifierInvocation", + "src": "713:16:16" + } + ], + "name": "clearRecords", + "nameLocation": "671:12:16", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5516, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5515, + "mutability": "mutable", + "name": "node", + "nameLocation": "692:4:16", + "nodeType": "VariableDeclaration", + "scope": 5534, + "src": "684:12:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5514, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "684:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "683:14:16" + }, + "returnParameters": { + "id": 5520, + "nodeType": "ParameterList", + "parameters": [], + "src": "730:0:16" + }, + "scope": 5556, + "src": "662:164:16", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 15123 + ], + "body": { + "id": 5554, + "nodeType": "Block", + "src": "937:141:16", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5542, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5536, + "src": "966:11:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5544, + "name": "IVersionableResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6699, + "src": "986:20:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IVersionableResolver_$6699_$", + "typeString": "type(contract IVersionableResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IVersionableResolver_$6699_$", + "typeString": "type(contract IVersionableResolver)" + } + ], + "id": 5543, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "981:4:16", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "981:26:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IVersionableResolver_$6699", + "typeString": "type(contract IVersionableResolver)" + } + }, + "id": 5546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1008:11:16", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "981:38:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "966:53:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5550, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5536, + "src": "1059:11:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5548, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1035:5:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_ResolverBase_$5556_$", + "typeString": "type(contract super ResolverBase)" + } + }, + "id": 5549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1041:17:16", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 15123, + "src": "1035:23:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1035:36:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "966:105:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5541, + "id": 5553, + "nodeType": "Return", + "src": "947:124:16" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5555, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "841:17:16", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5538, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "913:8:16" + }, + "parameters": { + "id": 5537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5536, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "875:11:16", + "nodeType": "VariableDeclaration", + "scope": 5555, + "src": "868:18:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5535, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "868:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "858:34:16" + }, + "returnParameters": { + "id": 5541, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5540, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5555, + "src": "931:4:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5539, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "931:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "930:6:16" + }, + "scope": 5556, + "src": "832:246:16", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 5557, + "src": "170:910:16", + "usedErrors": [], + "usedEvents": [ + 6691 + ] + } + ], + "src": "32:1049:16" + }, + "id": 16 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol", + "exportedSymbols": { + "ABIResolver": [ + 5704 + ], + "ERC165": [ + 15124 + ], + "IABIResolver": [ + 6481 + ], + "IERC165": [ + 15136 + ], + "IVersionableResolver": [ + 6699 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 5705, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5558, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:17" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol", + "file": "./IABIResolver.sol", + "id": 5559, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5705, + "sourceUnit": 6482, + "src": "58:28:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 5560, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5705, + "sourceUnit": 5557, + "src": "87:29:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5561, + "name": "IABIResolver", + "nameLocations": [ + "151:12:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6481, + "src": "151:12:17" + }, + "id": 5562, + "nodeType": "InheritanceSpecifier", + "src": "151:12:17" + }, + { + "baseName": { + "id": 5563, + "name": "ResolverBase", + "nameLocations": [ + "165:12:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "165:12:17" + }, + "id": 5564, + "nodeType": "InheritanceSpecifier", + "src": "165:12:17" + } + ], + "canonicalName": "ABIResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 5704, + "linearizedBaseContracts": [ + 5704, + 5556, + 6699, + 15124, + 15136, + 6481 + ], + "name": "ABIResolver", + "nameLocation": "136:11:17", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 5572, + "mutability": "mutable", + "name": "versionable_abis", + "nameLocation": "249:16:17", + "nodeType": "VariableDeclaration", + "scope": 5704, + "src": "184:81:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes)))" + }, + "typeName": { + "id": 5571, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5565, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "192:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "184:64:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5570, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5566, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "210:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "202:45:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5569, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5567, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "229:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "221:25:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5568, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "240:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 5614, + "nodeType": "Block", + "src": "704:228:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5586, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5577, + "src": "769:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 5587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "783:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "769:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 5589, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "768:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 5590, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5577, + "src": "788:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "768:31:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 5592, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "767:33:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 5593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "804:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "767:38:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5585, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "759:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "759:47:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5596, + "nodeType": "ExpressionStatement", + "src": "759:47:17" + }, + { + "expression": { + "id": 5607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 5597, + "name": "versionable_abis", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5572, + "src": "817:16:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes storage ref)))" + } + }, + "id": 5603, + "indexExpression": { + "baseExpression": { + "id": 5598, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "834:14:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5600, + "indexExpression": { + "id": 5599, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5575, + "src": "849:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "834:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "817:38:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" + } + }, + "id": 5604, + "indexExpression": { + "id": 5601, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5575, + "src": "856:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "817:44:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "id": 5605, + "indexExpression": { + "id": 5602, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5577, + "src": "862:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "817:57:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5606, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5579, + "src": "877:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "817:64:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 5608, + "nodeType": "ExpressionStatement", + "src": "817:64:17" + }, + { + "eventCall": { + "arguments": [ + { + "id": 5610, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5575, + "src": "907:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5611, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5577, + "src": "913:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5609, + "name": "ABIChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6468, + "src": "896:10:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (bytes32,uint256)" + } + }, + "id": 5612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "896:29:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5613, + "nodeType": "EmitStatement", + "src": "891:34:17" + } + ] + }, + "documentation": { + "id": 5573, + "nodeType": "StructuredDocumentation", + "src": "272:291:17", + "text": " Sets the ABI associated with an ENS node.\n Nodes may have one ABI of each content type. To remove an ABI, set it to\n the empty string.\n @param node The node to update.\n @param contentType The content type of the ABI\n @param data The ABI data." + }, + "functionSelector": "623195b0", + "id": 5615, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 5582, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5575, + "src": "698:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 5583, + "kind": "modifierInvocation", + "modifierName": { + "id": 5581, + "name": "authorised", + "nameLocations": [ + "687:10:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "687:10:17" + }, + "nodeType": "ModifierInvocation", + "src": "687:16:17" + } + ], + "name": "setABI", + "nameLocation": "577:6:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5580, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5575, + "mutability": "mutable", + "name": "node", + "nameLocation": "601:4:17", + "nodeType": "VariableDeclaration", + "scope": 5615, + "src": "593:12:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5574, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "593:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5577, + "mutability": "mutable", + "name": "contentType", + "nameLocation": "623:11:17", + "nodeType": "VariableDeclaration", + "scope": 5615, + "src": "615:19:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5576, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "615:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5579, + "mutability": "mutable", + "name": "data", + "nameLocation": "659:4:17", + "nodeType": "VariableDeclaration", + "scope": 5615, + "src": "644:19:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5578, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "644:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "583:86:17" + }, + "returnParameters": { + "id": 5584, + "nodeType": "ParameterList", + "parameters": [], + "src": "704:0:17" + }, + "scope": 5704, + "src": "568:364:17", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6480 + ], + "body": { + "id": 5681, + "nodeType": "Block", + "src": "1387:509:17", + "statements": [ + { + "assignments": [ + 5631 + ], + "declarations": [ + { + "constant": false, + "id": 5631, + "mutability": "mutable", + "name": "abiset", + "nameLocation": "1431:6:17", + "nodeType": "VariableDeclaration", + "scope": 5681, + "src": "1397:40:17", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes)" + }, + "typeName": { + "id": 5630, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5628, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1405:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1397:25:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5629, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1416:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "visibility": "internal" + } + ], + "id": 5639, + "initialValue": { + "baseExpression": { + "baseExpression": { + "id": 5632, + "name": "versionable_abis", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5572, + "src": "1440:16:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes storage ref)))" + } + }, + "id": 5636, + "indexExpression": { + "baseExpression": { + "id": 5633, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1470:14:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5635, + "indexExpression": { + "id": 5634, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5618, + "src": "1485:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1470:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1440:60:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" + } + }, + "id": 5638, + "indexExpression": { + "id": 5637, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5618, + "src": "1501:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1440:66:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1397:109:17" + }, + { + "body": { + "id": 5672, + "nodeType": "Block", + "src": "1641:217:17", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5651, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1677:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 5652, + "name": "contentTypes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5620, + "src": "1691:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1677:26:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 5654, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1676:28:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 5655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1708:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1676:33:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 5657, + "name": "abiset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5631, + "src": "1729:6:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "id": 5659, + "indexExpression": { + "id": 5658, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1736:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1729:19:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 5660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1749:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1729:26:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 5661, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1758:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1729:30:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1676:83:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5671, + "nodeType": "IfStatement", + "src": "1655:193:17", + "trueBody": { + "id": 5670, + "nodeType": "Block", + "src": "1774:74:17", + "statements": [ + { + "expression": { + "components": [ + { + "id": 5664, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1800:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "baseExpression": { + "id": 5665, + "name": "abiset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5631, + "src": "1813:6:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "id": 5667, + "indexExpression": { + "id": 5666, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1820:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1813:19:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + } + ], + "id": 5668, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1799:34:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_bytes_storage_$", + "typeString": "tuple(uint256,bytes storage ref)" + } + }, + "functionReturnParameters": 5627, + "id": 5669, + "nodeType": "Return", + "src": "1792:41:17" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5644, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1572:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 5645, + "name": "contentTypes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5620, + "src": "1587:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1572:27:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5673, + "initializationExpression": { + "assignments": [ + 5641 + ], + "declarations": [ + { + "constant": false, + "id": 5641, + "mutability": "mutable", + "name": "contentType", + "nameLocation": "1543:11:17", + "nodeType": "VariableDeclaration", + "scope": 5673, + "src": "1535:19:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5640, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1535:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5643, + "initialValue": { + "hexValue": "31", + "id": 5642, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1557:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1535:23:17" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 5649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5647, + "name": "contentType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5641, + "src": "1613:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "<<=", + "rightHandSide": { + "hexValue": "31", + "id": 5648, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1629:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1613:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5650, + "nodeType": "ExpressionStatement", + "src": "1613:17:17" + }, + "nodeType": "ForStatement", + "src": "1517:341:17" + }, + { + "expression": { + "components": [ + { + "hexValue": "30", + "id": 5674, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1876:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "arguments": [ + { + "hexValue": "", + "id": 5677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1885:2:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 5676, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1879:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 5675, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1879:5:17", + "typeDescriptions": {} + } + }, + "id": 5678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1879:9:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 5679, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1875:14:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_bytes_memory_ptr_$", + "typeString": "tuple(int_const 0,bytes memory)" + } + }, + "functionReturnParameters": 5627, + "id": 5680, + "nodeType": "Return", + "src": "1868:21:17" + } + ] + }, + "documentation": { + "id": 5616, + "nodeType": "StructuredDocumentation", + "src": "938:310:17", + "text": " Returns the ABI associated with an ENS node.\n Defined in EIP205.\n @param node The ENS node to query\n @param contentTypes A bitwise OR of the ABI formats accepted by the caller.\n @return contentType The content type of the return value\n @return data The ABI data" + }, + "functionSelector": "2203ab56", + "id": 5682, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ABI", + "nameLocation": "1262:3:17", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5622, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1346:8:17" + }, + "parameters": { + "id": 5621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5618, + "mutability": "mutable", + "name": "node", + "nameLocation": "1283:4:17", + "nodeType": "VariableDeclaration", + "scope": 5682, + "src": "1275:12:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5617, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1275:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5620, + "mutability": "mutable", + "name": "contentTypes", + "nameLocation": "1305:12:17", + "nodeType": "VariableDeclaration", + "scope": 5682, + "src": "1297:20:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5619, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1297:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1265:58:17" + }, + "returnParameters": { + "id": 5627, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5624, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5682, + "src": "1364:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5623, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1364:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5626, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5682, + "src": "1373:12:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5625, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1373:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1363:23:17" + }, + "scope": 5704, + "src": "1253:643:17", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 5702, + "nodeType": "Block", + "src": "2007:133:17", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5690, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5684, + "src": "2036:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5692, + "name": "IABIResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6481, + "src": "2056:12:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IABIResolver_$6481_$", + "typeString": "type(contract IABIResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IABIResolver_$6481_$", + "typeString": "type(contract IABIResolver)" + } + ], + "id": 5691, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "2051:4:17", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5693, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2051:18:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IABIResolver_$6481", + "typeString": "type(contract IABIResolver)" + } + }, + "id": 5694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2070:11:17", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "2051:30:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "2036:45:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5698, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5684, + "src": "2121:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5696, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "2097:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_ABIResolver_$5704_$", + "typeString": "type(contract super ABIResolver)" + } + }, + "id": 5697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2103:17:17", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "2097:23:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2097:36:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2036:97:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5689, + "id": 5701, + "nodeType": "Return", + "src": "2017:116:17" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5703, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1911:17:17", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5686, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1983:8:17" + }, + "parameters": { + "id": 5685, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5684, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1945:11:17", + "nodeType": "VariableDeclaration", + "scope": 5703, + "src": "1938:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5683, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1938:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1928:34:17" + }, + "returnParameters": { + "id": 5689, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5688, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5703, + "src": "2001:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5687, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2001:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2000:6:17" + }, + "scope": 5704, + "src": "1902:238:17", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 5705, + "src": "118:2024:17", + "usedErrors": [], + "usedEvents": [ + 6468, + 6691 + ] + } + ], + "src": "32:2111:17" + }, + "id": 17 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol", + "exportedSymbols": { + "AddrResolver": [ + 5903 + ], + "ERC165": [ + 15124 + ], + "IAddrResolver": [ + 6499 + ], + "IAddressResolver": [ + 6520 + ], + "IERC165": [ + 15136 + ], + "IVersionableResolver": [ + 6699 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 5904, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5706, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:18" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 5707, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5904, + "sourceUnit": 5557, + "src": "58:29:18", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol", + "file": "./IAddrResolver.sol", + "id": 5708, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5904, + "sourceUnit": 6500, + "src": "88:29:18", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol", + "file": "./IAddressResolver.sol", + "id": 5709, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5904, + "sourceUnit": 6521, + "src": "118:32:18", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5710, + "name": "IAddrResolver", + "nameLocations": [ + "190:13:18" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6499, + "src": "190:13:18" + }, + "id": 5711, + "nodeType": "InheritanceSpecifier", + "src": "190:13:18" + }, + { + "baseName": { + "id": 5712, + "name": "IAddressResolver", + "nameLocations": [ + "209:16:18" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6520, + "src": "209:16:18" + }, + "id": 5713, + "nodeType": "InheritanceSpecifier", + "src": "209:16:18" + }, + { + "baseName": { + "id": 5714, + "name": "ResolverBase", + "nameLocations": [ + "231:12:18" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "231:12:18" + }, + "id": 5715, + "nodeType": "InheritanceSpecifier", + "src": "231:12:18" + } + ], + "canonicalName": "AddrResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 5903, + "linearizedBaseContracts": [ + 5903, + 5556, + 6699, + 15124, + 15136, + 6520, + 6499 + ], + "name": "AddrResolver", + "nameLocation": "170:12:18", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 5718, + "mutability": "constant", + "name": "COIN_TYPE_ETH", + "nameLocation": "275:13:18", + "nodeType": "VariableDeclaration", + "scope": 5903, + "src": "250:43:18", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5716, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "250:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3630", + "id": 5717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "291:2:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_60_by_1", + "typeString": "int_const 60" + }, + "value": "60" + }, + "visibility": "private" + }, + { + "constant": false, + "id": 5726, + "mutability": "mutable", + "name": "versionable_addresses", + "nameLocation": "365:21:18", + "nodeType": "VariableDeclaration", + "scope": 5903, + "src": "300:86:18", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes)))" + }, + "typeName": { + "id": 5725, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5719, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "308:6:18", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "300:64:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5724, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5720, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "326:7:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "318:45:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5723, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5721, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "345:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "337:25:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5722, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "356:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 5745, + "nodeType": "Block", + "src": "708:64:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5738, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5729, + "src": "726:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5739, + "name": "COIN_TYPE_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5718, + "src": "732:13:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 5741, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5731, + "src": "762:1:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5740, + "name": "addressToBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5902, + "src": "747:14:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address) pure returns (bytes memory)" + } + }, + "id": 5742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "747:17:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5737, + "name": "setAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5821, + "src": "718:7:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint256,bytes memory)" + } + }, + "id": 5743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "718:47:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5744, + "nodeType": "ExpressionStatement", + "src": "718:47:18" + } + ] + }, + "documentation": { + "id": 5727, + "nodeType": "StructuredDocumentation", + "src": "393:212:18", + "text": " Sets the address associated with an ENS node.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update.\n @param a The address to set." + }, + "functionSelector": "d5fa2b00", + "id": 5746, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 5734, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5729, + "src": "702:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 5735, + "kind": "modifierInvocation", + "modifierName": { + "id": 5733, + "name": "authorised", + "nameLocations": [ + "691:10:18" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "691:10:18" + }, + "nodeType": "ModifierInvocation", + "src": "691:16:18" + } + ], + "name": "setAddr", + "nameLocation": "619:7:18", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5729, + "mutability": "mutable", + "name": "node", + "nameLocation": "644:4:18", + "nodeType": "VariableDeclaration", + "scope": 5746, + "src": "636:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5728, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "636:7:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5731, + "mutability": "mutable", + "name": "a", + "nameLocation": "666:1:18", + "nodeType": "VariableDeclaration", + "scope": 5746, + "src": "658:9:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5730, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "658:7:18", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "626:47:18" + }, + "returnParameters": { + "id": 5736, + "nodeType": "ParameterList", + "parameters": [], + "src": "708:0:18" + }, + "scope": 5903, + "src": "610:162:18", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6498 + ], + "body": { + "id": 5777, + "nodeType": "Block", + "src": "1028:163:18", + "statements": [ + { + "assignments": [ + 5756 + ], + "declarations": [ + { + "constant": false, + "id": 5756, + "mutability": "mutable", + "name": "a", + "nameLocation": "1051:1:18", + "nodeType": "VariableDeclaration", + "scope": 5777, + "src": "1038:14:18", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5755, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1038:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 5761, + "initialValue": { + "arguments": [ + { + "id": 5758, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5749, + "src": "1060:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5759, + "name": "COIN_TYPE_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5718, + "src": "1066:13:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5757, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 5778, + 5842 + ], + "referencedDeclaration": 5842, + "src": "1055:4:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,uint256) view returns (bytes memory)" + } + }, + "id": 5760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1055:25:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1038:42:18" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5762, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5756, + "src": "1094:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 5763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1096:6:18", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1094:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 5764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1106:1:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1094:13:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5772, + "nodeType": "IfStatement", + "src": "1090:61:18", + "trueBody": { + "id": 5771, + "nodeType": "Block", + "src": "1109:42:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 5768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1138:1:18", + "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": 5767, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1130:8:18", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_payable_$", + "typeString": "type(address payable)" + }, + "typeName": { + "id": 5766, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1130:8:18", + "stateMutability": "payable", + "typeDescriptions": {} + } + }, + "id": 5769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1130:10:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 5754, + "id": 5770, + "nodeType": "Return", + "src": "1123:17:18" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 5774, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5756, + "src": "1182:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5773, + "name": "bytesToAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5886, + "src": "1167:14:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_address_payable_$", + "typeString": "function (bytes memory) pure returns (address payable)" + } + }, + "id": 5775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1167:17:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 5754, + "id": 5776, + "nodeType": "Return", + "src": "1160:24:18" + } + ] + }, + "documentation": { + "id": 5747, + "nodeType": "StructuredDocumentation", + "src": "778:148:18", + "text": " Returns the address associated with an ENS node.\n @param node The ENS node to query.\n @return The associated address." + }, + "functionSelector": "3b3b57de", + "id": 5778, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "addr", + "nameLocation": "940:4:18", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5751, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "993:8:18" + }, + "parameters": { + "id": 5750, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5749, + "mutability": "mutable", + "name": "node", + "nameLocation": "962:4:18", + "nodeType": "VariableDeclaration", + "scope": 5778, + "src": "954:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5748, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "954:7:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "944:28:18" + }, + "returnParameters": { + "id": 5754, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5753, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5778, + "src": "1011:15:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 5752, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1011:15:18", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + } + ], + "src": "1010:17:18" + }, + "scope": 5903, + "src": "931:260:18", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 5820, + "nodeType": "Block", + "src": "1324:234:18", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 5791, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "1354:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5792, + "name": "coinType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5782, + "src": "1360:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5793, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5784, + "src": "1370:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5790, + "name": "AddressChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6510, + "src": "1339:14:18", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,uint256,bytes memory)" + } + }, + "id": 5794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1339:33:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5795, + "nodeType": "EmitStatement", + "src": "1334:38:18" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5796, + "name": "coinType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5782, + "src": "1386:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5797, + "name": "COIN_TYPE_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5718, + "src": "1398:13:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1386:25:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5807, + "nodeType": "IfStatement", + "src": "1382:97:18", + "trueBody": { + "id": 5806, + "nodeType": "Block", + "src": "1413:66:18", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 5800, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "1444:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 5802, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5784, + "src": "1465:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5801, + "name": "bytesToAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5886, + "src": "1450:14:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_address_payable_$", + "typeString": "function (bytes memory) pure returns (address payable)" + } + }, + "id": 5803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1450:17:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 5799, + "name": "AddrChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6490, + "src": "1432:11:18", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 5804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1432:36:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5805, + "nodeType": "EmitStatement", + "src": "1427:41:18" + } + ] + } + }, + { + "expression": { + "id": 5818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 5808, + "name": "versionable_addresses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5726, + "src": "1488:21:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes storage ref)))" + } + }, + "id": 5814, + "indexExpression": { + "baseExpression": { + "id": 5809, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1510:14:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5811, + "indexExpression": { + "id": 5810, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "1525:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1510:20:18", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1488:43:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" + } + }, + "id": 5815, + "indexExpression": { + "id": 5812, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "1532:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1488:49:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "id": 5816, + "indexExpression": { + "id": 5813, + "name": "coinType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5782, + "src": "1538:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1488:59:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5817, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5784, + "src": "1550:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "1488:63:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 5819, + "nodeType": "ExpressionStatement", + "src": "1488:63:18" + } + ] + }, + "functionSelector": "8b95dd71", + "id": 5821, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 5787, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "1318:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 5788, + "kind": "modifierInvocation", + "modifierName": { + "id": 5786, + "name": "authorised", + "nameLocations": [ + "1307:10:18" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "1307:10:18" + }, + "nodeType": "ModifierInvocation", + "src": "1307:16:18" + } + ], + "name": "setAddr", + "nameLocation": "1206:7:18", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5785, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5780, + "mutability": "mutable", + "name": "node", + "nameLocation": "1231:4:18", + "nodeType": "VariableDeclaration", + "scope": 5821, + "src": "1223:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5779, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1223:7:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5782, + "mutability": "mutable", + "name": "coinType", + "nameLocation": "1253:8:18", + "nodeType": "VariableDeclaration", + "scope": 5821, + "src": "1245:16:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5781, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1245:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5784, + "mutability": "mutable", + "name": "a", + "nameLocation": "1284:1:18", + "nodeType": "VariableDeclaration", + "scope": 5821, + "src": "1271:14:18", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5783, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1271:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1213:78:18" + }, + "returnParameters": { + "id": 5789, + "nodeType": "ParameterList", + "parameters": [], + "src": "1324:0:18" + }, + "scope": 5903, + "src": "1197:361:18", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 6519 + ], + "body": { + "id": 5841, + "nodeType": "Block", + "src": "1684:83:18", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 5831, + "name": "versionable_addresses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5726, + "src": "1701:21:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(uint256 => bytes storage ref)))" + } + }, + "id": 5835, + "indexExpression": { + "baseExpression": { + "id": 5832, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1723:14:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5834, + "indexExpression": { + "id": 5833, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5823, + "src": "1738:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1723:20:18", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1701:43:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" + } + }, + "id": 5837, + "indexExpression": { + "id": 5836, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5823, + "src": "1745:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1701:49:18", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", + "typeString": "mapping(uint256 => bytes storage ref)" + } + }, + "id": 5839, + "indexExpression": { + "id": 5838, + "name": "coinType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5825, + "src": "1751:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1701:59:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "functionReturnParameters": 5830, + "id": 5840, + "nodeType": "Return", + "src": "1694:66:18" + } + ] + }, + "functionSelector": "f1cb7e06", + "id": 5842, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "addr", + "nameLocation": "1573:4:18", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5827, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1652:8:18" + }, + "parameters": { + "id": 5826, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5823, + "mutability": "mutable", + "name": "node", + "nameLocation": "1595:4:18", + "nodeType": "VariableDeclaration", + "scope": 5842, + "src": "1587:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5822, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1587:7:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5825, + "mutability": "mutable", + "name": "coinType", + "nameLocation": "1617:8:18", + "nodeType": "VariableDeclaration", + "scope": 5842, + "src": "1609:16:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5824, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1609:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1577:54:18" + }, + "returnParameters": { + "id": 5830, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5829, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5842, + "src": "1670:12:18", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5828, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1670:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1669:14:18" + }, + "scope": 5903, + "src": "1564:203:18", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 5869, + "nodeType": "Block", + "src": "1878:199:18", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5850, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5844, + "src": "1907:11:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5852, + "name": "IAddrResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6499, + "src": "1927:13:18", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAddrResolver_$6499_$", + "typeString": "type(contract IAddrResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IAddrResolver_$6499_$", + "typeString": "type(contract IAddrResolver)" + } + ], + "id": 5851, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1922:4:18", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1922:19:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IAddrResolver_$6499", + "typeString": "type(contract IAddrResolver)" + } + }, + "id": 5854, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1942:11:18", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1922:31:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1907:46:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5856, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5844, + "src": "1969:11:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5858, + "name": "IAddressResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6520, + "src": "1989:16:18", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAddressResolver_$6520_$", + "typeString": "type(contract IAddressResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IAddressResolver_$6520_$", + "typeString": "type(contract IAddressResolver)" + } + ], + "id": 5857, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1984:4:18", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1984:22:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IAddressResolver_$6520", + "typeString": "type(contract IAddressResolver)" + } + }, + "id": 5860, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2007:11:18", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1984:34:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1969:49:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1907:111:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5865, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5844, + "src": "2058:11:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5863, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "2034:5:18", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_AddrResolver_$5903_$", + "typeString": "type(contract super AddrResolver)" + } + }, + "id": 5864, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2040:17:18", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "2034:23:18", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2034:36:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1907:163:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5849, + "id": 5868, + "nodeType": "Return", + "src": "1888:182:18" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5870, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1782:17:18", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5846, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1854:8:18" + }, + "parameters": { + "id": 5845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5844, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1816:11:18", + "nodeType": "VariableDeclaration", + "scope": 5870, + "src": "1809:18:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5843, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1809:6:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1799:34:18" + }, + "returnParameters": { + "id": 5849, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5848, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5870, + "src": "1872:4:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5847, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1872:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1871:6:18" + }, + "scope": 5903, + "src": "1773:304:18", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 5885, + "nodeType": "Block", + "src": "2179:123:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5878, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5872, + "src": "2197:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 5879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2199:6:18", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2197:8:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3230", + "id": 5880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2209:2:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "2197:14:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5877, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2189:7:18", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2189:23:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5883, + "nodeType": "ExpressionStatement", + "src": "2189:23:18" + }, + { + "AST": { + "nativeSrc": "2231:65:18", + "nodeType": "YulBlock", + "src": "2231:65:18", + "statements": [ + { + "nativeSrc": "2245:41:18", + "nodeType": "YulAssignment", + "src": "2245:41:18", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "b", + "nativeSrc": "2264:1:18", + "nodeType": "YulIdentifier", + "src": "2264:1:18" + }, + { + "kind": "number", + "nativeSrc": "2267:2:18", + "nodeType": "YulLiteral", + "src": "2267:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2260:3:18", + "nodeType": "YulIdentifier", + "src": "2260:3:18" + }, + "nativeSrc": "2260:10:18", + "nodeType": "YulFunctionCall", + "src": "2260:10:18" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2254:5:18", + "nodeType": "YulIdentifier", + "src": "2254:5:18" + }, + "nativeSrc": "2254:17:18", + "nodeType": "YulFunctionCall", + "src": "2254:17:18" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2277:3:18", + "nodeType": "YulLiteral", + "src": "2277:3:18", + "type": "", + "value": "256" + }, + { + "kind": "number", + "nativeSrc": "2282:2:18", + "nodeType": "YulLiteral", + "src": "2282:2:18", + "type": "", + "value": "12" + } + ], + "functionName": { + "name": "exp", + "nativeSrc": "2273:3:18", + "nodeType": "YulIdentifier", + "src": "2273:3:18" + }, + "nativeSrc": "2273:12:18", + "nodeType": "YulFunctionCall", + "src": "2273:12:18" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "2250:3:18", + "nodeType": "YulIdentifier", + "src": "2250:3:18" + }, + "nativeSrc": "2250:36:18", + "nodeType": "YulFunctionCall", + "src": "2250:36:18" + }, + "variableNames": [ + { + "name": "a", + "nativeSrc": "2245:1:18", + "nodeType": "YulIdentifier", + "src": "2245:1:18" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 5875, + "isOffset": false, + "isSlot": false, + "src": "2245:1:18", + "valueSize": 1 + }, + { + "declaration": 5872, + "isOffset": false, + "isSlot": false, + "src": "2264:1:18", + "valueSize": 1 + } + ], + "id": 5884, + "nodeType": "InlineAssembly", + "src": "2222:74:18" + } + ] + }, + "id": 5886, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bytesToAddress", + "nameLocation": "2092:14:18", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5873, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5872, + "mutability": "mutable", + "name": "b", + "nameLocation": "2129:1:18", + "nodeType": "VariableDeclaration", + "scope": 5886, + "src": "2116:14:18", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5871, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2116:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2106:30:18" + }, + "returnParameters": { + "id": 5876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5875, + "mutability": "mutable", + "name": "a", + "nameLocation": "2176:1:18", + "nodeType": "VariableDeclaration", + "scope": 5886, + "src": "2160:17:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 5874, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2160:15:18", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + } + ], + "src": "2159:19:18" + }, + "scope": 5903, + "src": "2083:219:18", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 5901, + "nodeType": "Block", + "src": "2382:116:18", + "statements": [ + { + "expression": { + "id": 5898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5893, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5891, + "src": "2392:1:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "3230", + "id": 5896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2406:2:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + } + ], + "id": 5895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2396:9:18", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 5894, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2400:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 5897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2396:13:18", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "2392:17:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 5899, + "nodeType": "ExpressionStatement", + "src": "2392:17:18" + }, + { + "AST": { + "nativeSrc": "2428:64:18", + "nodeType": "YulBlock", + "src": "2428:64:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "b", + "nativeSrc": "2453:1:18", + "nodeType": "YulIdentifier", + "src": "2453:1:18" + }, + { + "kind": "number", + "nativeSrc": "2456:2:18", + "nodeType": "YulLiteral", + "src": "2456:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2449:3:18", + "nodeType": "YulIdentifier", + "src": "2449:3:18" + }, + "nativeSrc": "2449:10:18", + "nodeType": "YulFunctionCall", + "src": "2449:10:18" + }, + { + "arguments": [ + { + "name": "a", + "nativeSrc": "2465:1:18", + "nodeType": "YulIdentifier", + "src": "2465:1:18" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2472:3:18", + "nodeType": "YulLiteral", + "src": "2472:3:18", + "type": "", + "value": "256" + }, + { + "kind": "number", + "nativeSrc": "2477:2:18", + "nodeType": "YulLiteral", + "src": "2477:2:18", + "type": "", + "value": "12" + } + ], + "functionName": { + "name": "exp", + "nativeSrc": "2468:3:18", + "nodeType": "YulIdentifier", + "src": "2468:3:18" + }, + "nativeSrc": "2468:12:18", + "nodeType": "YulFunctionCall", + "src": "2468:12:18" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "2461:3:18", + "nodeType": "YulIdentifier", + "src": "2461:3:18" + }, + "nativeSrc": "2461:20:18", + "nodeType": "YulFunctionCall", + "src": "2461:20:18" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2442:6:18", + "nodeType": "YulIdentifier", + "src": "2442:6:18" + }, + "nativeSrc": "2442:40:18", + "nodeType": "YulFunctionCall", + "src": "2442:40:18" + }, + "nativeSrc": "2442:40:18", + "nodeType": "YulExpressionStatement", + "src": "2442:40:18" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 5888, + "isOffset": false, + "isSlot": false, + "src": "2465:1:18", + "valueSize": 1 + }, + { + "declaration": 5891, + "isOffset": false, + "isSlot": false, + "src": "2453:1:18", + "valueSize": 1 + } + ], + "id": 5900, + "nodeType": "InlineAssembly", + "src": "2419:73:18" + } + ] + }, + "id": 5902, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "addressToBytes", + "nameLocation": "2317:14:18", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5889, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5888, + "mutability": "mutable", + "name": "a", + "nameLocation": "2340:1:18", + "nodeType": "VariableDeclaration", + "scope": 5902, + "src": "2332:9:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5887, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2332:7:18", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2331:11:18" + }, + "returnParameters": { + "id": 5892, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5891, + "mutability": "mutable", + "name": "b", + "nameLocation": "2379:1:18", + "nodeType": "VariableDeclaration", + "scope": 5902, + "src": "2366:14:18", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5890, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2366:5:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2365:16:18" + }, + "scope": 5903, + "src": "2308:190:18", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 5904, + "src": "152:2348:18", + "usedErrors": [], + "usedEvents": [ + 6490, + 6510, + 6691 + ] + } + ], + "src": "32:2469:18" + }, + "id": 18 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol", + "exportedSymbols": { + "ContentHashResolver": [ + 5984 + ], + "ERC165": [ + 15124 + ], + "IContentHashResolver": [ + 6537 + ], + "IERC165": [ + 15136 + ], + "IVersionableResolver": [ + 6699 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 5985, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5905, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:19" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 5906, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5985, + "sourceUnit": 5557, + "src": "58:29:19", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol", + "file": "./IContentHashResolver.sol", + "id": 5907, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 5985, + "sourceUnit": 6538, + "src": "88:36:19", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5908, + "name": "IContentHashResolver", + "nameLocations": [ + "167:20:19" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6537, + "src": "167:20:19" + }, + "id": 5909, + "nodeType": "InheritanceSpecifier", + "src": "167:20:19" + }, + { + "baseName": { + "id": 5910, + "name": "ResolverBase", + "nameLocations": [ + "189:12:19" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "189:12:19" + }, + "id": 5911, + "nodeType": "InheritanceSpecifier", + "src": "189:12:19" + } + ], + "canonicalName": "ContentHashResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 5984, + "linearizedBaseContracts": [ + 5984, + 5556, + 6699, + 15124, + 15136, + 6537 + ], + "name": "ContentHashResolver", + "nameLocation": "144:19:19", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 5917, + "mutability": "mutable", + "name": "versionable_hashes", + "nameLocation": "253:18:19", + "nodeType": "VariableDeclaration", + "scope": 5984, + "src": "208:63:19", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes))" + }, + "typeName": { + "id": 5916, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5912, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "216:6:19", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "208:44:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5915, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 5913, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "234:7:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "226:25:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 5914, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "245:5:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 5943, + "nodeType": "Block", + "src": "620:115:19", + "statements": [ + { + "expression": { + "id": 5936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 5928, + "name": "versionable_hashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5917, + "src": "630:18:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes storage ref))" + } + }, + "id": 5933, + "indexExpression": { + "baseExpression": { + "id": 5929, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "649:14:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5931, + "indexExpression": { + "id": 5930, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5920, + "src": "664:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "649:20:19", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "630:40:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 5934, + "indexExpression": { + "id": 5932, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5920, + "src": "671:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "630:46:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5935, + "name": "hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5922, + "src": "679:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "630:53:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 5937, + "nodeType": "ExpressionStatement", + "src": "630:53:19" + }, + { + "eventCall": { + "arguments": [ + { + "id": 5939, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5920, + "src": "717:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 5940, + "name": "hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5922, + "src": "723:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 5938, + "name": "ContenthashChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6528, + "src": "698:18:19", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,bytes memory)" + } + }, + "id": 5941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "698:30:19", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5942, + "nodeType": "EmitStatement", + "src": "693:35:19" + } + ] + }, + "documentation": { + "id": 5918, + "nodeType": "StructuredDocumentation", + "src": "278:222:19", + "text": " Sets the contenthash associated with an ENS node.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update.\n @param hash The contenthash to set" + }, + "functionSelector": "304e6ade", + "id": 5944, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 5925, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5920, + "src": "614:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 5926, + "kind": "modifierInvocation", + "modifierName": { + "id": 5924, + "name": "authorised", + "nameLocations": [ + "603:10:19" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "603:10:19" + }, + "nodeType": "ModifierInvocation", + "src": "603:16:19" + } + ], + "name": "setContenthash", + "nameLocation": "514:14:19", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5920, + "mutability": "mutable", + "name": "node", + "nameLocation": "546:4:19", + "nodeType": "VariableDeclaration", + "scope": 5944, + "src": "538:12:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5919, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "538:7:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5922, + "mutability": "mutable", + "name": "hash", + "nameLocation": "575:4:19", + "nodeType": "VariableDeclaration", + "scope": 5944, + "src": "560:19:19", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5921, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "560:5:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "528:57:19" + }, + "returnParameters": { + "id": 5927, + "nodeType": "ParameterList", + "parameters": [], + "src": "620:0:19" + }, + "scope": 5984, + "src": "505:230:19", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6536 + ], + "body": { + "id": 5961, + "nodeType": "Block", + "src": "1005:70:19", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 5953, + "name": "versionable_hashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5917, + "src": "1022:18:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes storage ref))" + } + }, + "id": 5957, + "indexExpression": { + "baseExpression": { + "id": 5954, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1041:14:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 5956, + "indexExpression": { + "id": 5955, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5947, + "src": "1056:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1041:20:19", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1022:40:19", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 5959, + "indexExpression": { + "id": 5958, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5947, + "src": "1063:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1022:46:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "functionReturnParameters": 5952, + "id": 5960, + "nodeType": "Return", + "src": "1015:53:19" + } + ] + }, + "documentation": { + "id": 5945, + "nodeType": "StructuredDocumentation", + "src": "741:156:19", + "text": " Returns the contenthash associated with an ENS node.\n @param node The ENS node to query.\n @return The associated contenthash." + }, + "functionSelector": "bc1c58d1", + "id": 5962, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "contenthash", + "nameLocation": "911:11:19", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5949, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "973:8:19" + }, + "parameters": { + "id": 5948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5947, + "mutability": "mutable", + "name": "node", + "nameLocation": "940:4:19", + "nodeType": "VariableDeclaration", + "scope": 5962, + "src": "932:12:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5946, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "932:7:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "922:28:19" + }, + "returnParameters": { + "id": 5952, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5951, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5962, + "src": "991:12:19", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5950, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "991:5:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "990:14:19" + }, + "scope": 5984, + "src": "902:173:19", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 5982, + "nodeType": "Block", + "src": "1186:141:19", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5970, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5964, + "src": "1215:11:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 5972, + "name": "IContentHashResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6537, + "src": "1235:20:19", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IContentHashResolver_$6537_$", + "typeString": "type(contract IContentHashResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IContentHashResolver_$6537_$", + "typeString": "type(contract IContentHashResolver)" + } + ], + "id": 5971, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1230:4:19", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1230:26:19", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IContentHashResolver_$6537", + "typeString": "type(contract IContentHashResolver)" + } + }, + "id": 5974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1257:11:19", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1230:38:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1215:53:19", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5978, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5964, + "src": "1308:11:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5976, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1284:5:19", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_ContentHashResolver_$5984_$", + "typeString": "type(contract super ContentHashResolver)" + } + }, + "id": 5977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1290:17:19", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "1284:23:19", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 5979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1284:36:19", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1215:105:19", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5969, + "id": 5981, + "nodeType": "Return", + "src": "1196:124:19" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 5983, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1090:17:19", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5966, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1162:8:19" + }, + "parameters": { + "id": 5965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5964, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1124:11:19", + "nodeType": "VariableDeclaration", + "scope": 5983, + "src": "1117:18:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5963, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1117:6:19", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1107:34:19" + }, + "returnParameters": { + "id": 5969, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5968, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5983, + "src": "1180:4:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5967, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1180:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1179:6:19" + }, + "scope": 5984, + "src": "1081:246:19", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 5985, + "src": "126:1203:19", + "usedErrors": [], + "usedEvents": [ + 6528, + 6691 + ] + } + ], + "src": "32:1298:19" + }, + "id": 19 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol", + "exportedSymbols": { + "Buffer": [ + 2717 + ], + "BytesUtils": [ + 8609 + ], + "DNSResolver": [ + 6460 + ], + "ERC165": [ + 15124 + ], + "IDNSRecordResolver": [ + 6570 + ], + "IDNSZoneResolver": [ + 6589 + ], + "IERC165": [ + 15136 + ], + "IVersionableResolver": [ + 6699 + ], + "RRUtils": [ + 3816 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 6461, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 5986, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:20" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 5987, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6461, + "sourceUnit": 5557, + "src": "58:29:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol", + "file": "../../dnssec-oracle/RRUtils.sol", + "id": 5988, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6461, + "sourceUnit": 3817, + "src": "88:41:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol", + "file": "./IDNSRecordResolver.sol", + "id": 5989, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6461, + "sourceUnit": 6571, + "src": "130:34:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol", + "file": "./IDNSZoneResolver.sol", + "id": 5990, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6461, + "sourceUnit": 6590, + "src": "165:32:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 5991, + "name": "IDNSRecordResolver", + "nameLocations": [ + "236:18:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6570, + "src": "236:18:20" + }, + "id": 5992, + "nodeType": "InheritanceSpecifier", + "src": "236:18:20" + }, + { + "baseName": { + "id": 5993, + "name": "IDNSZoneResolver", + "nameLocations": [ + "260:16:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6589, + "src": "260:16:20" + }, + "id": 5994, + "nodeType": "InheritanceSpecifier", + "src": "260:16:20" + }, + { + "baseName": { + "id": 5995, + "name": "ResolverBase", + "nameLocations": [ + "282:12:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "282:12:20" + }, + "id": 5996, + "nodeType": "InheritanceSpecifier", + "src": "282:12:20" + } + ], + "canonicalName": "DNSResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 6460, + "linearizedBaseContracts": [ + 6460, + 5556, + 6699, + 15124, + 15136, + 6589, + 6570 + ], + "name": "DNSResolver", + "nameLocation": "217:11:20", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 5998, + "libraryName": { + "id": 5997, + "name": "RRUtils", + "nameLocations": [ + "307:7:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3816, + "src": "307:7:20" + }, + "nodeType": "UsingForDirective", + "src": "301:20:20" + }, + { + "global": false, + "id": 6001, + "libraryName": { + "id": 5999, + "name": "BytesUtils", + "nameLocations": [ + "332:10:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8609, + "src": "332:10:20" + }, + "nodeType": "UsingForDirective", + "src": "326:27:20", + "typeName": { + "id": 6000, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "347:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + { + "constant": false, + "id": 6007, + "mutability": "mutable", + "name": "versionable_zonehashes", + "nameLocation": "608:22:20", + "nodeType": "VariableDeclaration", + "scope": 6460, + "src": "555:75:20", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes))" + }, + "typeName": { + "id": 6006, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6002, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "563:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "555:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6005, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6003, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "581:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "573:25:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6004, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "592:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 6017, + "mutability": "mutable", + "name": "versionable_records", + "nameLocation": "844:19:20", + "nodeType": "VariableDeclaration", + "scope": 6460, + "src": "744:119:20", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes))))" + }, + "typeName": { + "id": 6016, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6008, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "752:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "744:83:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes))))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6015, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6009, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "770:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "762:64:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6014, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6010, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "789:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "781:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6013, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6011, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "808:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Mapping", + "src": "800:24:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6012, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "818:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + } + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 6025, + "mutability": "mutable", + "name": "versionable_nameEntriesCount", + "nameLocation": "1117:28:20", + "nodeType": "VariableDeclaration", + "scope": 6460, + "src": "1035:110:20", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))" + }, + "typeName": { + "id": 6024, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6018, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1043:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "1035:65:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6023, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6019, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1061:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "1053:46:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => uint16))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6022, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6020, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1080:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "1072:26:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint16_$", + "typeString": "mapping(bytes32 => uint16)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6021, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "1091:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + } + } + }, + "visibility": "private" + }, + { + "body": { + "id": 6201, + "nodeType": "Block", + "src": "2183:1646:20", + "statements": [ + { + "assignments": [ + 6037 + ], + "declarations": [ + { + "constant": false, + "id": 6037, + "mutability": "mutable", + "name": "resource", + "nameLocation": "2200:8:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2193:15:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6036, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2193:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "id": 6039, + "initialValue": { + "hexValue": "30", + "id": 6038, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2211:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2193:19:20" + }, + { + "assignments": [ + 6041 + ], + "declarations": [ + { + "constant": false, + "id": 6041, + "mutability": "mutable", + "name": "offset", + "nameLocation": "2230:6:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2222:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6040, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2222:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 6043, + "initialValue": { + "hexValue": "30", + "id": 6042, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2239:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2222:18:20" + }, + { + "assignments": [ + 6045 + ], + "declarations": [ + { + "constant": false, + "id": 6045, + "mutability": "mutable", + "name": "name", + "nameLocation": "2263:4:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2250:17:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6044, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2250:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6046, + "nodeType": "VariableDeclarationStatement", + "src": "2250:17:20" + }, + { + "assignments": [ + 6048 + ], + "declarations": [ + { + "constant": false, + "id": 6048, + "mutability": "mutable", + "name": "value", + "nameLocation": "2290:5:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2277:18:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6047, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2277:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6049, + "nodeType": "VariableDeclarationStatement", + "src": "2277:18:20" + }, + { + "assignments": [ + 6051 + ], + "declarations": [ + { + "constant": false, + "id": 6051, + "mutability": "mutable", + "name": "nameHash", + "nameLocation": "2313:8:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2305:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6050, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2305:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 6052, + "nodeType": "VariableDeclarationStatement", + "src": "2305:16:20" + }, + { + "assignments": [ + 6054 + ], + "declarations": [ + { + "constant": false, + "id": 6054, + "mutability": "mutable", + "name": "version", + "nameLocation": "2338:7:20", + "nodeType": "VariableDeclaration", + "scope": 6201, + "src": "2331:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 6053, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2331:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 6058, + "initialValue": { + "baseExpression": { + "id": 6055, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "2348:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6057, + "indexExpression": { + "id": 6056, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6028, + "src": "2363:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2348:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2331:37:20" + }, + { + "body": { + "id": 6176, + "nodeType": "Block", + "src": "2570:959:20", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 6079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6077, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "2588:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6078, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2600:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2588:13:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 6174, + "nodeType": "Block", + "src": "2808:711:20", + "statements": [ + { + "assignments": [ + 6111 + ], + "declarations": [ + { + "constant": false, + "id": 6111, + "mutability": "mutable", + "name": "newName", + "nameLocation": "2839:7:20", + "nodeType": "VariableDeclaration", + "scope": 6174, + "src": "2826:20:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6110, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2826:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6115, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6112, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2849:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6113, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2854:4:20", + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 3199, + "src": "2849:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure returns (bytes memory)" + } + }, + "id": 6114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2849:11:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2826:34:20" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 6119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6116, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "2882:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "id": 6117, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2894:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6118, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2899:7:20", + "memberName": "dnstype", + "nodeType": "MemberAccess", + "referencedDeclaration": 3018, + "src": "2894:12:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2882:24:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "id": 6124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2910:21:20", + "subExpression": { + "arguments": [ + { + "id": 6122, + "name": "newName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6111, + "src": "2923:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 6120, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "2911:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2916:6:20", + "memberName": "equals", + "nodeType": "MemberAccess", + "referencedDeclaration": 8127, + "src": "2911:11:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,bytes memory) pure returns (bool)" + } + }, + "id": 6123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2911:20:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2882:49:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6173, + "nodeType": "IfStatement", + "src": "2878:627:20", + "trueBody": { + "id": 6172, + "nodeType": "Block", + "src": "2933:572:20", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 6127, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6028, + "src": "2992:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6128, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "3022:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 6129, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "3052:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 6130, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6030, + "src": "3086:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 6131, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "3116:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6132, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "3148:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6133, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3153:6:20", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "3148:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 6134, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "3162:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3148:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6136, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6048, + "src": "3194:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3200:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3194:12:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3210:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3194:17:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6140, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6054, + "src": "3237:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 6126, + "name": "setDNSRRSet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6459, + "src": "2955:11:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint16_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bool_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,uint16,bytes memory,uint256,uint256,bool,uint64)" + } + }, + "id": 6141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2955:311:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6142, + "nodeType": "ExpressionStatement", + "src": "2955:311:20" + }, + { + "expression": { + "id": 6146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6143, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "3288:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 6144, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "3299:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6145, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3304:7:20", + "memberName": "dnstype", + "nodeType": "MemberAccess", + "referencedDeclaration": 3018, + "src": "3299:12:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "3288:23:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 6147, + "nodeType": "ExpressionStatement", + "src": "3288:23:20" + }, + { + "expression": { + "id": 6151, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6148, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "3333:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 6149, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "3342:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6150, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3347:6:20", + "memberName": "offset", + "nodeType": "MemberAccess", + "referencedDeclaration": 3016, + "src": "3342:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3333:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 6152, + "nodeType": "ExpressionStatement", + "src": "3333:20:20" + }, + { + "expression": { + "id": 6155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6153, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "3375:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 6154, + "name": "newName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6111, + "src": "3382:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3375:14:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6156, + "nodeType": "ExpressionStatement", + "src": "3375:14:20" + }, + { + "expression": { + "id": 6161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6157, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6051, + "src": "3411:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 6159, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "3432:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6158, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "3422:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 6160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3422:15:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "3411:26:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 6162, + "nodeType": "ExpressionStatement", + "src": "3411:26:20" + }, + { + "expression": { + "id": 6170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6163, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6048, + "src": "3459:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6166, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "3473:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6167, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3478:5:20", + "memberName": "rdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 3221, + "src": "3473:10:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure returns (bytes memory)" + } + }, + "id": 6168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3473:12:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3467:5:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 6164, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3467:5:20", + "typeDescriptions": {} + } + }, + "id": 6169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3467:19:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3459:27:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6171, + "nodeType": "ExpressionStatement", + "src": "3459:27:20" + } + ] + } + } + ] + }, + "id": 6175, + "nodeType": "IfStatement", + "src": "2584:935:20", + "trueBody": { + "id": 6109, + "nodeType": "Block", + "src": "2603:199:20", + "statements": [ + { + "expression": { + "id": 6083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6080, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "2621:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 6081, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2632:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6082, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2637:7:20", + "memberName": "dnstype", + "nodeType": "MemberAccess", + "referencedDeclaration": 3018, + "src": "2632:12:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2621:23:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 6084, + "nodeType": "ExpressionStatement", + "src": "2621:23:20" + }, + { + "expression": { + "id": 6089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6085, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "2662:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6086, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2669:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6087, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2674:4:20", + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 3199, + "src": "2669:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure returns (bytes memory)" + } + }, + "id": 6088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2669:11:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "2662:18:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6090, + "nodeType": "ExpressionStatement", + "src": "2662:18:20" + }, + { + "expression": { + "id": 6098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6091, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6051, + "src": "2698:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 6095, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "2736:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 6093, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2719:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6094, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2723:12:20", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2719:16:20", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 6096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2719:22:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6092, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2709:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 6097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2709:33:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2698:44:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 6099, + "nodeType": "ExpressionStatement", + "src": "2698:44:20" + }, + { + "expression": { + "id": 6107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 6100, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6048, + "src": "2760:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6103, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2774:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6104, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2779:5:20", + "memberName": "rdata", + "nodeType": "MemberAccess", + "referencedDeclaration": 3221, + "src": "2774:10:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure returns (bytes memory)" + } + }, + "id": 6105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2774:12:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6102, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2768:5:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 6101, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2768:5:20", + "typeDescriptions": {} + } + }, + "id": 6106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2768:19:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "2760:27:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6108, + "nodeType": "ExpressionStatement", + "src": "2760:27:20" + } + ] + } + } + ] + }, + "condition": { + "id": 6072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2522:12:20", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6069, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2523:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6070, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2528:4:20", + "memberName": "done", + "nodeType": "MemberAccess", + "referencedDeclaration": 3072, + "src": "2523:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$_t_bool_$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure returns (bool)" + } + }, + "id": 6071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2523:11:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6177, + "initializationExpression": { + "assignments": [ + 6063 + ], + "declarations": [ + { + "constant": false, + "id": 6063, + "mutability": "mutable", + "name": "iter", + "nameLocation": "2483:4:20", + "nodeType": "VariableDeclaration", + "scope": 6177, + "src": "2457:30:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator" + }, + "typeName": { + "id": 6062, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 6061, + "name": "RRUtils.RRIterator", + "nameLocations": [ + "2457:7:20", + "2465:10:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 3027, + "src": "2457:18:20" + }, + "referencedDeclaration": 3027, + "src": "2457:18:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_storage_ptr", + "typeString": "struct RRUtils.RRIterator" + } + }, + "visibility": "internal" + } + ], + "id": 6068, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 6066, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2506:1:20", + "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" + } + ], + "expression": { + "id": 6064, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6030, + "src": "2490:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 6065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2495:10:20", + "memberName": "iterateRRs", + "nodeType": "MemberAccess", + "referencedDeclaration": 3055, + "src": "2490:15:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_struct$_RRIterator_$3027_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (struct RRUtils.RRIterator memory)" + } + }, + "id": 6067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2490:18:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2457:51:20" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 6073, + "name": "iter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "2548:4:20", + "typeDescriptions": { + "typeIdentifier": "t_struct$_RRIterator_$3027_memory_ptr", + "typeString": "struct RRUtils.RRIterator memory" + } + }, + "id": 6074, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2553:4:20", + "memberName": "next", + "nodeType": "MemberAccess", + "referencedDeclaration": 3176, + "src": "2548:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_RRIterator_$3027_memory_ptr_$returns$__$attached_to$_t_struct$_RRIterator_$3027_memory_ptr_$", + "typeString": "function (struct RRUtils.RRIterator memory) pure" + } + }, + "id": 6075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2548:11:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6076, + "nodeType": "ExpressionStatement", + "src": "2548:11:20" + }, + "nodeType": "ForStatement", + "src": "2439:1090:20" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6178, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "3542:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3547:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3542:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 6180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3556:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3542:15:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6200, + "nodeType": "IfStatement", + "src": "3538:285:20", + "trueBody": { + "id": 6199, + "nodeType": "Block", + "src": "3559:264:20", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 6183, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6028, + "src": "3602:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6184, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "3624:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 6185, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6037, + "src": "3646:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 6186, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6030, + "src": "3672:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 6187, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "3694:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6188, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6030, + "src": "3718:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 6189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3723:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3718:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 6190, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "3732:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3718:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6192, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6048, + "src": "3756:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3762:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3756:12:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3772:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3756:17:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6196, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6054, + "src": "3791:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 6182, + "name": "setDNSRRSet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6459, + "src": "3573:11:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint16_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bool_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,uint16,bytes memory,uint256,uint256,bool,uint64)" + } + }, + "id": 6197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3573:239:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6198, + "nodeType": "ExpressionStatement", + "src": "3573:239:20" + } + ] + } + } + ] + }, + "documentation": { + "id": 6026, + "nodeType": "StructuredDocumentation", + "src": "1152:912:20", + "text": " Set one or more DNS records. Records are supplied in wire-format.\n Records with the same node/name/resource must be supplied one after the\n other to ensure the data is updated correctly. For example, if the data\n was supplied:\n a.example.com IN A 1.2.3.4\n a.example.com IN A 5.6.7.8\n www.example.com IN CNAME a.example.com.\n then this would store the two A records for a.example.com correctly as a\n single RRSET, however if the data was supplied:\n a.example.com IN A 1.2.3.4\n www.example.com IN CNAME a.example.com.\n a.example.com IN A 5.6.7.8\n then this would store the first A record, the CNAME, then the second A\n record which would overwrite the first.\n @param node the namehash of the node for which to set the records\n @param data the DNS wire format records to set" + }, + "functionSelector": "0af179d7", + "id": 6202, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 6033, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6028, + "src": "2177:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 6034, + "kind": "modifierInvocation", + "modifierName": { + "id": 6032, + "name": "authorised", + "nameLocations": [ + "2166:10:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "2166:10:20" + }, + "nodeType": "ModifierInvocation", + "src": "2166:16:20" + } + ], + "name": "setDNSRecords", + "nameLocation": "2078:13:20", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6031, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6028, + "mutability": "mutable", + "name": "node", + "nameLocation": "2109:4:20", + "nodeType": "VariableDeclaration", + "scope": 6202, + "src": "2101:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6027, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2101:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6030, + "mutability": "mutable", + "name": "data", + "nameLocation": "2138:4:20", + "nodeType": "VariableDeclaration", + "scope": 6202, + "src": "2123:19:20", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6029, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2123:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2091:57:20" + }, + "returnParameters": { + "id": 6035, + "nodeType": "ParameterList", + "parameters": [], + "src": "2183:0:20" + }, + "scope": 6460, + "src": "2069:1760:20", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6569 + ], + "body": { + "id": 6227, + "nodeType": "Block", + "src": "4377:87:20", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6215, + "name": "versionable_records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6017, + "src": "4394:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref))))" + } + }, + "id": 6219, + "indexExpression": { + "baseExpression": { + "id": 6216, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "4414:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6218, + "indexExpression": { + "id": 6217, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6205, + "src": "4429:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4414:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:41:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref)))" + } + }, + "id": 6221, + "indexExpression": { + "id": 6220, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6205, + "src": "4436:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:47:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes storage ref))" + } + }, + "id": 6223, + "indexExpression": { + "id": 6222, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6207, + "src": "4442:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:53:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes storage ref)" + } + }, + "id": 6225, + "indexExpression": { + "id": 6224, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6209, + "src": "4448:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:63:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "functionReturnParameters": 6214, + "id": 6226, + "nodeType": "Return", + "src": "4387:70:20" + } + ] + }, + "documentation": { + "id": 6203, + "nodeType": "StructuredDocumentation", + "src": "3835:391:20", + "text": " Obtain a DNS record.\n @param node the namehash of the node for which to fetch the record\n @param name the keccak-256 hash of the fully-qualified name for which to fetch the record\n @param resource the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\n @return the DNS record in wire format if present, otherwise empty" + }, + "functionSelector": "a8fa5682", + "id": 6228, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "dnsRecord", + "nameLocation": "4240:9:20", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6211, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4345:8:20" + }, + "parameters": { + "id": 6210, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6205, + "mutability": "mutable", + "name": "node", + "nameLocation": "4267:4:20", + "nodeType": "VariableDeclaration", + "scope": 6228, + "src": "4259:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6204, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4259:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6207, + "mutability": "mutable", + "name": "name", + "nameLocation": "4289:4:20", + "nodeType": "VariableDeclaration", + "scope": 6228, + "src": "4281:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6206, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4281:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6209, + "mutability": "mutable", + "name": "resource", + "nameLocation": "4310:8:20", + "nodeType": "VariableDeclaration", + "scope": 6228, + "src": "4303:15:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6208, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "4303:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "4249:75:20" + }, + "returnParameters": { + "id": 6214, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6213, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6228, + "src": "4363:12:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6212, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4363:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4362:14:20" + }, + "scope": 6460, + "src": "4231:233:20", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 6251, + "nodeType": "Block", + "src": "4786:115:20", + "statements": [ + { + "expression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 6248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6238, + "name": "versionable_nameEntriesCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6025, + "src": "4804:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))" + } + }, + "id": 6242, + "indexExpression": { + "baseExpression": { + "id": 6239, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "4833:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6241, + "indexExpression": { + "id": 6240, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6231, + "src": "4848:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4833:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4804:50:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => uint16))" + } + }, + "id": 6244, + "indexExpression": { + "id": 6243, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6231, + "src": "4855:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4804:56:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint16_$", + "typeString": "mapping(bytes32 => uint16)" + } + }, + "id": 6246, + "indexExpression": { + "id": 6245, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6233, + "src": "4874:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4804:84:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 6247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4892:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4804:89:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 6249, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4803:91:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 6237, + "id": 6250, + "nodeType": "Return", + "src": "4796:98:20" + } + ] + }, + "documentation": { + "id": 6229, + "nodeType": "StructuredDocumentation", + "src": "4470:203:20", + "text": " Check if a given node has records.\n @param node the namehash of the node for which to check the records\n @param name the namehash of the node for which to check the records" + }, + "functionSelector": "4cbf6ba4", + "id": 6252, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hasDNSRecords", + "nameLocation": "4687:13:20", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6234, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6231, + "mutability": "mutable", + "name": "node", + "nameLocation": "4718:4:20", + "nodeType": "VariableDeclaration", + "scope": 6252, + "src": "4710:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6230, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4710:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6233, + "mutability": "mutable", + "name": "name", + "nameLocation": "4740:4:20", + "nodeType": "VariableDeclaration", + "scope": 6252, + "src": "4732:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6232, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4732:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4700:50:20" + }, + "returnParameters": { + "id": 6237, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6236, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6252, + "src": "4780:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6235, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4780:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4779:6:20" + }, + "scope": 6460, + "src": "4678:223:20", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 6291, + "nodeType": "Block", + "src": "5233:293:20", + "statements": [ + { + "assignments": [ + 6264 + ], + "declarations": [ + { + "constant": false, + "id": 6264, + "mutability": "mutable", + "name": "currentRecordVersion", + "nameLocation": "5250:20:20", + "nodeType": "VariableDeclaration", + "scope": 6291, + "src": "5243:27:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 6263, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "5243:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 6268, + "initialValue": { + "baseExpression": { + "id": 6265, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "5273:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6267, + "indexExpression": { + "id": 6266, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6255, + "src": "5288:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5273:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5243:50:20" + }, + { + "assignments": [ + 6270 + ], + "declarations": [ + { + "constant": false, + "id": 6270, + "mutability": "mutable", + "name": "oldhash", + "nameLocation": "5316:7:20", + "nodeType": "VariableDeclaration", + "scope": 6291, + "src": "5303:20:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6269, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5303:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6276, + "initialValue": { + "baseExpression": { + "baseExpression": { + "id": 6271, + "name": "versionable_zonehashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6007, + "src": "5326:22:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes storage ref))" + } + }, + "id": 6273, + "indexExpression": { + "id": 6272, + "name": "currentRecordVersion", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6264, + "src": "5349:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5326:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 6275, + "indexExpression": { + "id": 6274, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6255, + "src": "5384:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5326:72:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5303:95:20" + }, + { + "expression": { + "id": 6283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 6277, + "name": "versionable_zonehashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6007, + "src": "5408:22:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes storage ref))" + } + }, + "id": 6280, + "indexExpression": { + "id": 6278, + "name": "currentRecordVersion", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6264, + "src": "5431:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5408:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 6281, + "indexExpression": { + "id": 6279, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6255, + "src": "5453:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5408:50:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 6282, + "name": "hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6257, + "src": "5461:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "5408:57:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 6284, + "nodeType": "ExpressionStatement", + "src": "5408:57:20" + }, + { + "eventCall": { + "arguments": [ + { + "id": 6286, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6255, + "src": "5499:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6287, + "name": "oldhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6270, + "src": "5505:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 6288, + "name": "hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6257, + "src": "5514:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 6285, + "name": "DNSZonehashChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6580, + "src": "5480:18:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,bytes memory,bytes memory)" + } + }, + "id": 6289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5480:39:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6290, + "nodeType": "EmitStatement", + "src": "5475:44:20" + } + ] + }, + "documentation": { + "id": 6253, + "nodeType": "StructuredDocumentation", + "src": "4907:209:20", + "text": " setZonehash sets the hash for the zone.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update.\n @param hash The zonehash to set" + }, + "functionSelector": "ce3decdc", + "id": 6292, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 6260, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6255, + "src": "5227:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 6261, + "kind": "modifierInvocation", + "modifierName": { + "id": 6259, + "name": "authorised", + "nameLocations": [ + "5216:10:20" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "5216:10:20" + }, + "nodeType": "ModifierInvocation", + "src": "5216:16:20" + } + ], + "name": "setZonehash", + "nameLocation": "5130:11:20", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6258, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6255, + "mutability": "mutable", + "name": "node", + "nameLocation": "5159:4:20", + "nodeType": "VariableDeclaration", + "scope": 6292, + "src": "5151:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6254, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5151:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6257, + "mutability": "mutable", + "name": "hash", + "nameLocation": "5188:4:20", + "nodeType": "VariableDeclaration", + "scope": 6292, + "src": "5173:19:20", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6256, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5173:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5141:57:20" + }, + "returnParameters": { + "id": 6262, + "nodeType": "ParameterList", + "parameters": [], + "src": "5233:0:20" + }, + "scope": 6460, + "src": "5121:405:20", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6588 + ], + "body": { + "id": 6309, + "nodeType": "Block", + "src": "5780:74:20", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 6301, + "name": "versionable_zonehashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6007, + "src": "5797:22:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_bytes_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => bytes storage ref))" + } + }, + "id": 6305, + "indexExpression": { + "baseExpression": { + "id": 6302, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "5820:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6304, + "indexExpression": { + "id": 6303, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6295, + "src": "5835:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5820:20:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5797:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 6307, + "indexExpression": { + "id": 6306, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6295, + "src": "5842:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5797:50:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "functionReturnParameters": 6300, + "id": 6308, + "nodeType": "Return", + "src": "5790:57:20" + } + ] + }, + "documentation": { + "id": 6293, + "nodeType": "StructuredDocumentation", + "src": "5532:143:20", + "text": " zonehash obtains the hash for the zone.\n @param node The ENS node to query.\n @return The associated contenthash." + }, + "functionSelector": "5c98042b", + "id": 6310, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "zonehash", + "nameLocation": "5689:8:20", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6297, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5748:8:20" + }, + "parameters": { + "id": 6296, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6295, + "mutability": "mutable", + "name": "node", + "nameLocation": "5715:4:20", + "nodeType": "VariableDeclaration", + "scope": 6310, + "src": "5707:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6294, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5707:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5697:28:20" + }, + "returnParameters": { + "id": 6300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6310, + "src": "5766:12:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6298, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5766:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5765:14:20" + }, + "scope": 6460, + "src": "5680:174:20", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 6337, + "nodeType": "Block", + "src": "5965:204:20", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 6323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6318, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6312, + "src": "5994:11:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 6320, + "name": "IDNSRecordResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6570, + "src": "6014:18:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IDNSRecordResolver_$6570_$", + "typeString": "type(contract IDNSRecordResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IDNSRecordResolver_$6570_$", + "typeString": "type(contract IDNSRecordResolver)" + } + ], + "id": 6319, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "6009:4:20", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 6321, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6009:24:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IDNSRecordResolver_$6570", + "typeString": "type(contract IDNSRecordResolver)" + } + }, + "id": 6322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6034:11:20", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "6009:36:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5994:51:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 6329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6324, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6312, + "src": "6061:11:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 6326, + "name": "IDNSZoneResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6589, + "src": "6081:16:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IDNSZoneResolver_$6589_$", + "typeString": "type(contract IDNSZoneResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IDNSZoneResolver_$6589_$", + "typeString": "type(contract IDNSZoneResolver)" + } + ], + "id": 6325, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "6076:4:20", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 6327, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6076:22:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IDNSZoneResolver_$6589", + "typeString": "type(contract IDNSZoneResolver)" + } + }, + "id": 6328, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6099:11:20", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "6076:34:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6061:49:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5994:116:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 6333, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6312, + "src": "6150:11:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 6331, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "6126:5:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_DNSResolver_$6460_$", + "typeString": "type(contract super DNSResolver)" + } + }, + "id": 6332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6132:17:20", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "6126:23:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 6334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6126:36:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5994:168:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 6317, + "id": 6336, + "nodeType": "Return", + "src": "5975:187:20" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 6338, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "5869:17:20", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6314, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5941:8:20" + }, + "parameters": { + "id": 6313, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6312, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "5903:11:20", + "nodeType": "VariableDeclaration", + "scope": 6338, + "src": "5896:18:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6311, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "5896:6:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "5886:34:20" + }, + "returnParameters": { + "id": 6317, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6316, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6338, + "src": "5959:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6315, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5959:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5958:6:20" + }, + "scope": 6460, + "src": "5860:309:20", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 6458, + "nodeType": "Block", + "src": "6408:880:20", + "statements": [ + { + "assignments": [ + 6358 + ], + "declarations": [ + { + "constant": false, + "id": 6358, + "mutability": "mutable", + "name": "nameHash", + "nameLocation": "6426:8:20", + "nodeType": "VariableDeclaration", + "scope": 6458, + "src": "6418:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6357, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6418:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 6362, + "initialValue": { + "arguments": [ + { + "id": 6360, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6342, + "src": "6447:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6359, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "6437:9:20", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 6361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6437:15:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6418:34:20" + }, + { + "assignments": [ + 6364 + ], + "declarations": [ + { + "constant": false, + "id": 6364, + "mutability": "mutable", + "name": "rrData", + "nameLocation": "6475:6:20", + "nodeType": "VariableDeclaration", + "scope": 6458, + "src": "6462:19:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6363, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6462:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6370, + "initialValue": { + "arguments": [ + { + "id": 6367, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6348, + "src": "6499:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6368, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6350, + "src": "6507:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6365, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6346, + "src": "6484:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6489:9:20", + "memberName": "substring", + "nodeType": "MemberAccess", + "referencedDeclaration": 8337, + "src": "6484:14:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes memory)" + } + }, + "id": 6369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6484:28:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6462:50:20" + }, + { + "condition": { + "id": 6371, + "name": "deleteRecord", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6352, + "src": "6526:12:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 6456, + "nodeType": "Block", + "src": "6910:372:20", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6414, + "name": "versionable_records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6017, + "src": "6945:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref))))" + } + }, + "id": 6416, + "indexExpression": { + "id": 6415, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "6965:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6945:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref)))" + } + }, + "id": 6418, + "indexExpression": { + "id": 6417, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "6974:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6945:34:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes storage ref))" + } + }, + "id": 6420, + "indexExpression": { + "id": 6419, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "6980:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6945:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes storage ref)" + } + }, + "id": 6422, + "indexExpression": { + "id": 6421, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "6990:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6945:54:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 6423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7000:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6945:61:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7026:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6945:82:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6436, + "nodeType": "IfStatement", + "src": "6924:206:20", + "trueBody": { + "id": 6435, + "nodeType": "Block", + "src": "7042:88:20", + "statements": [ + { + "expression": { + "id": 6433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "7060:55:20", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6426, + "name": "versionable_nameEntriesCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6025, + "src": "7060:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))" + } + }, + "id": 6430, + "indexExpression": { + "id": 6427, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "7089:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7060:37:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => uint16))" + } + }, + "id": 6431, + "indexExpression": { + "id": 6428, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "7098:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7060:43:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint16_$", + "typeString": "mapping(bytes32 => uint16)" + } + }, + "id": 6432, + "indexExpression": { + "id": 6429, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "7104:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7060:53:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 6434, + "nodeType": "ExpressionStatement", + "src": "7060:55:20" + } + ] + } + }, + { + "expression": { + "id": 6447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6437, + "name": "versionable_records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6017, + "src": "7143:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref))))" + } + }, + "id": 6442, + "indexExpression": { + "id": 6438, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "7163:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7143:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref)))" + } + }, + "id": 6443, + "indexExpression": { + "id": 6439, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "7172:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7143:34:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes storage ref))" + } + }, + "id": 6444, + "indexExpression": { + "id": 6440, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "7178:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7143:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes storage ref)" + } + }, + "id": 6445, + "indexExpression": { + "id": 6441, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "7188:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7143:54:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 6446, + "name": "rrData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6364, + "src": "7200:6:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "7143:63:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 6448, + "nodeType": "ExpressionStatement", + "src": "7143:63:20" + }, + { + "eventCall": { + "arguments": [ + { + "id": 6450, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "7242:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6451, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6342, + "src": "7248:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 6452, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "7254:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 6453, + "name": "rrData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6364, + "src": "7264:6:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6449, + "name": "DNSRecordChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6549, + "src": "7225:16:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint16_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes32,bytes memory,uint16,bytes memory)" + } + }, + "id": 6454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7225:46:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6455, + "nodeType": "EmitStatement", + "src": "7220:51:20" + } + ] + }, + "id": 6457, + "nodeType": "IfStatement", + "src": "6522:760:20", + "trueBody": { + "id": 6413, + "nodeType": "Block", + "src": "6540:364:20", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6372, + "name": "versionable_records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6017, + "src": "6575:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref))))" + } + }, + "id": 6374, + "indexExpression": { + "id": 6373, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "6595:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6575:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref)))" + } + }, + "id": 6376, + "indexExpression": { + "id": 6375, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "6604:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6575:34:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes storage ref))" + } + }, + "id": 6378, + "indexExpression": { + "id": 6377, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "6610:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6575:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes storage ref)" + } + }, + "id": 6380, + "indexExpression": { + "id": 6379, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "6620:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6575:54:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 6381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6630:6:20", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6575:61:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 6382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6656:1:20", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6575:82:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6394, + "nodeType": "IfStatement", + "src": "6554:206:20", + "trueBody": { + "id": 6393, + "nodeType": "Block", + "src": "6672:88:20", + "statements": [ + { + "expression": { + "id": 6391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "6690:55:20", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6384, + "name": "versionable_nameEntriesCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6025, + "src": "6690:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => uint16)))" + } + }, + "id": 6388, + "indexExpression": { + "id": 6385, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "6719:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6690:37:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_uint16_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => uint16))" + } + }, + "id": 6389, + "indexExpression": { + "id": 6386, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "6728:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6690:43:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint16_$", + "typeString": "mapping(bytes32 => uint16)" + } + }, + "id": 6390, + "indexExpression": { + "id": 6387, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "6734:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6690:53:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "id": 6392, + "nodeType": "ExpressionStatement", + "src": "6690:55:20" + } + ] + } + }, + { + "expression": { + "id": 6405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "6773:63:20", + "subExpression": { + "components": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6395, + "name": "versionable_records", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6017, + "src": "6781:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref))))" + } + }, + "id": 6397, + "indexExpression": { + "id": 6396, + "name": "version", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6354, + "src": "6801:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6781:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$_$", + "typeString": "mapping(bytes32 => mapping(bytes32 => mapping(uint16 => bytes storage ref)))" + } + }, + "id": 6399, + "indexExpression": { + "id": 6398, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "6810:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6781:34:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint16_$_t_bytes_storage_$_$", + "typeString": "mapping(bytes32 => mapping(uint16 => bytes storage ref))" + } + }, + "id": 6401, + "indexExpression": { + "id": 6400, + "name": "nameHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6358, + "src": "6816:8:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6781:44:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint16_$_t_bytes_storage_$", + "typeString": "mapping(uint16 => bytes storage ref)" + } + }, + "id": 6403, + "indexExpression": { + "id": 6402, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "6826:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6781:54:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + } + ], + "id": 6404, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "6780:56:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6406, + "nodeType": "ExpressionStatement", + "src": "6773:63:20" + }, + { + "eventCall": { + "arguments": [ + { + "id": 6408, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6340, + "src": "6872:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6409, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6342, + "src": "6878:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 6410, + "name": "resource", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6344, + "src": "6884:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + ], + "id": 6407, + "name": "DNSRecordDeleted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6557, + "src": "6855:16:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint16_$returns$__$", + "typeString": "function (bytes32,bytes memory,uint16)" + } + }, + "id": 6411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6855:38:20", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6412, + "nodeType": "EmitStatement", + "src": "6850:43:20" + } + ] + } + } + ] + }, + "id": 6459, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setDNSRRSet", + "nameLocation": "6184:11:20", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6355, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6340, + "mutability": "mutable", + "name": "node", + "nameLocation": "6213:4:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6205:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6339, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6205:7:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6342, + "mutability": "mutable", + "name": "name", + "nameLocation": "6240:4:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6227:17:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6341, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6227:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6344, + "mutability": "mutable", + "name": "resource", + "nameLocation": "6261:8:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6254:15:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6343, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "6254:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6346, + "mutability": "mutable", + "name": "data", + "nameLocation": "6292:4:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6279:17:20", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6345, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6279:5:20", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6348, + "mutability": "mutable", + "name": "offset", + "nameLocation": "6314:6:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6306:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6347, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6306:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6350, + "mutability": "mutable", + "name": "size", + "nameLocation": "6338:4:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6330:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6349, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6330:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6352, + "mutability": "mutable", + "name": "deleteRecord", + "nameLocation": "6357:12:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6352:17:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6351, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6352:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6354, + "mutability": "mutable", + "name": "version", + "nameLocation": "6386:7:20", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "6379:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 6353, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "6379:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "6195:204:20" + }, + "returnParameters": { + "id": 6356, + "nodeType": "ParameterList", + "parameters": [], + "src": "6408:0:20" + }, + "scope": 6460, + "src": "6175:1113:20", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + } + ], + "scope": 6461, + "src": "199:7091:20", + "usedErrors": [], + "usedEvents": [ + 6549, + 6557, + 6580, + 6691 + ] + } + ], + "src": "32:7259:20" + }, + "id": 20 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol", + "exportedSymbols": { + "IABIResolver": [ + 6481 + ] + }, + "id": 6482, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6462, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:21" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IABIResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6481, + "linearizedBaseContracts": [ + 6481 + ], + "name": "IABIResolver", + "nameLocation": "68:12:21", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "aa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3", + "id": 6468, + "name": "ABIChanged", + "nameLocation": "93:10:21", + "nodeType": "EventDefinition", + "parameters": { + "id": 6467, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6464, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "120:4:21", + "nodeType": "VariableDeclaration", + "scope": 6468, + "src": "104:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6463, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "104:7:21", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6466, + "indexed": true, + "mutability": "mutable", + "name": "contentType", + "nameLocation": "142:11:21", + "nodeType": "VariableDeclaration", + "scope": 6468, + "src": "126:27:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6465, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "126:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "103:51:21" + }, + "src": "87:68:21" + }, + { + "documentation": { + "id": 6469, + "nodeType": "StructuredDocumentation", + "src": "161:310:21", + "text": " Returns the ABI associated with an ENS node.\n Defined in EIP205.\n @param node The ENS node to query\n @param contentTypes A bitwise OR of the ABI formats accepted by the caller.\n @return contentType The content type of the return value\n @return data The ABI data" + }, + "functionSelector": "2203ab56", + "id": 6480, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ABI", + "nameLocation": "485:3:21", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6474, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6471, + "mutability": "mutable", + "name": "node", + "nameLocation": "506:4:21", + "nodeType": "VariableDeclaration", + "scope": 6480, + "src": "498:12:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6470, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "498:7:21", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6473, + "mutability": "mutable", + "name": "contentTypes", + "nameLocation": "528:12:21", + "nodeType": "VariableDeclaration", + "scope": 6480, + "src": "520:20:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6472, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "520:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "488:58:21" + }, + "returnParameters": { + "id": 6479, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6476, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6480, + "src": "570:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6475, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "570:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6478, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6480, + "src": "579:12:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6477, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "579:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "569:23:21" + }, + "scope": 6481, + "src": "476:117:21", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6482, + "src": "58:537:21", + "usedErrors": [], + "usedEvents": [ + 6468 + ] + } + ], + "src": "32:564:21" + }, + "id": 21 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol", + "exportedSymbols": { + "IAddrResolver": [ + 6499 + ] + }, + "id": 6500, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6483, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:22" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IAddrResolver", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 6484, + "nodeType": "StructuredDocumentation", + "src": "58:61:22", + "text": " Interface for the legacy (ETH-only) addr function." + }, + "fullyImplemented": false, + "id": 6499, + "linearizedBaseContracts": [ + 6499 + ], + "name": "IAddrResolver", + "nameLocation": "130:13:22", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2", + "id": 6490, + "name": "AddrChanged", + "nameLocation": "156:11:22", + "nodeType": "EventDefinition", + "parameters": { + "id": 6489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6486, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "184:4:22", + "nodeType": "VariableDeclaration", + "scope": 6490, + "src": "168:20:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6485, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "168:7:22", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6488, + "indexed": false, + "mutability": "mutable", + "name": "a", + "nameLocation": "198:1:22", + "nodeType": "VariableDeclaration", + "scope": 6490, + "src": "190:9:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6487, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "190:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "167:33:22" + }, + "src": "150:51:22" + }, + { + "documentation": { + "id": 6491, + "nodeType": "StructuredDocumentation", + "src": "207:148:22", + "text": " Returns the address associated with an ENS node.\n @param node The ENS node to query.\n @return The associated address." + }, + "functionSelector": "3b3b57de", + "id": 6498, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addr", + "nameLocation": "369:4:22", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6494, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6493, + "mutability": "mutable", + "name": "node", + "nameLocation": "382:4:22", + "nodeType": "VariableDeclaration", + "scope": 6498, + "src": "374:12:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6492, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "374:7:22", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "373:14:22" + }, + "returnParameters": { + "id": 6497, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6496, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6498, + "src": "411:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 6495, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "411:15:22", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + } + ], + "src": "410:17:22" + }, + "scope": 6499, + "src": "360:68:22", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6500, + "src": "120:310:22", + "usedErrors": [], + "usedEvents": [ + 6490 + ] + } + ], + "src": "32:399:22" + }, + "id": 22 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol", + "exportedSymbols": { + "IAddressResolver": [ + 6520 + ] + }, + "id": 6521, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6501, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:23" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IAddressResolver", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 6502, + "nodeType": "StructuredDocumentation", + "src": "58:59:23", + "text": " Interface for the new (multicoin) addr function." + }, + "fullyImplemented": false, + "id": 6520, + "linearizedBaseContracts": [ + 6520 + ], + "name": "IAddressResolver", + "nameLocation": "128:16:23", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752", + "id": 6510, + "name": "AddressChanged", + "nameLocation": "157:14:23", + "nodeType": "EventDefinition", + "parameters": { + "id": 6509, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6504, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "197:4:23", + "nodeType": "VariableDeclaration", + "scope": 6510, + "src": "181:20:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6503, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "181:7:23", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6506, + "indexed": false, + "mutability": "mutable", + "name": "coinType", + "nameLocation": "219:8:23", + "nodeType": "VariableDeclaration", + "scope": 6510, + "src": "211:16:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6505, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "211:7:23", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6508, + "indexed": false, + "mutability": "mutable", + "name": "newAddress", + "nameLocation": "243:10:23", + "nodeType": "VariableDeclaration", + "scope": 6510, + "src": "237:16:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6507, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "237:5:23", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "171:88:23" + }, + "src": "151:109:23" + }, + { + "functionSelector": "f1cb7e06", + "id": 6519, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addr", + "nameLocation": "275:4:23", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6515, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6512, + "mutability": "mutable", + "name": "node", + "nameLocation": "297:4:23", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "289:12:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6511, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "289:7:23", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6514, + "mutability": "mutable", + "name": "coinType", + "nameLocation": "319:8:23", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "311:16:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6513, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "311:7:23", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "279:54:23" + }, + "returnParameters": { + "id": 6518, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6517, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "357:12:23", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6516, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "357:5:23", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "356:14:23" + }, + "scope": 6520, + "src": "266:105:23", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6521, + "src": "118:255:23", + "usedErrors": [], + "usedEvents": [ + 6510 + ] + } + ], + "src": "32:342:23" + }, + "id": 23 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol", + "exportedSymbols": { + "IContentHashResolver": [ + 6537 + ] + }, + "id": 6538, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6522, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:24" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IContentHashResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6537, + "linearizedBaseContracts": [ + 6537 + ], + "name": "IContentHashResolver", + "nameLocation": "68:20:24", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "e379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578", + "id": 6528, + "name": "ContenthashChanged", + "nameLocation": "101:18:24", + "nodeType": "EventDefinition", + "parameters": { + "id": 6527, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6524, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "136:4:24", + "nodeType": "VariableDeclaration", + "scope": 6528, + "src": "120:20:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6523, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "120:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6526, + "indexed": false, + "mutability": "mutable", + "name": "hash", + "nameLocation": "148:4:24", + "nodeType": "VariableDeclaration", + "scope": 6528, + "src": "142:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6525, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "142:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "119:34:24" + }, + "src": "95:59:24" + }, + { + "documentation": { + "id": 6529, + "nodeType": "StructuredDocumentation", + "src": "160:156:24", + "text": " Returns the contenthash associated with an ENS node.\n @param node The ENS node to query.\n @return The associated contenthash." + }, + "functionSelector": "bc1c58d1", + "id": 6536, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "contenthash", + "nameLocation": "330:11:24", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6532, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6531, + "mutability": "mutable", + "name": "node", + "nameLocation": "350:4:24", + "nodeType": "VariableDeclaration", + "scope": 6536, + "src": "342:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6530, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "342:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "341:14:24" + }, + "returnParameters": { + "id": 6535, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6534, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6536, + "src": "379:12:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6533, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "379:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "378:14:24" + }, + "scope": 6537, + "src": "321:72:24", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6538, + "src": "58:337:24", + "usedErrors": [], + "usedEvents": [ + 6528 + ] + } + ], + "src": "32:364:24" + }, + "id": 24 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol", + "exportedSymbols": { + "IDNSRecordResolver": [ + 6570 + ] + }, + "id": 6571, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6539, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:25" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IDNSRecordResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6570, + "linearizedBaseContracts": [ + 6570 + ], + "name": "IDNSRecordResolver", + "nameLocation": "68:18:25", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b", + "id": 6549, + "name": "DNSRecordChanged", + "nameLocation": "190:16:25", + "nodeType": "EventDefinition", + "parameters": { + "id": 6548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6541, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "232:4:25", + "nodeType": "VariableDeclaration", + "scope": 6549, + "src": "216:20:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6540, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "216:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6543, + "indexed": false, + "mutability": "mutable", + "name": "name", + "nameLocation": "252:4:25", + "nodeType": "VariableDeclaration", + "scope": 6549, + "src": "246:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6542, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "246:5:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6545, + "indexed": false, + "mutability": "mutable", + "name": "resource", + "nameLocation": "273:8:25", + "nodeType": "VariableDeclaration", + "scope": 6549, + "src": "266:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6544, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "266:6:25", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6547, + "indexed": false, + "mutability": "mutable", + "name": "record", + "nameLocation": "297:6:25", + "nodeType": "VariableDeclaration", + "scope": 6549, + "src": "291:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6546, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "291:5:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "206:103:25" + }, + "src": "184:126:25" + }, + { + "anonymous": false, + "eventSelector": "03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207", + "id": 6557, + "name": "DNSRecordDeleted", + "nameLocation": "412:16:25", + "nodeType": "EventDefinition", + "parameters": { + "id": 6556, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6551, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "445:4:25", + "nodeType": "VariableDeclaration", + "scope": 6557, + "src": "429:20:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6550, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "429:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6553, + "indexed": false, + "mutability": "mutable", + "name": "name", + "nameLocation": "457:4:25", + "nodeType": "VariableDeclaration", + "scope": 6557, + "src": "451:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6552, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "451:5:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6555, + "indexed": false, + "mutability": "mutable", + "name": "resource", + "nameLocation": "470:8:25", + "nodeType": "VariableDeclaration", + "scope": 6557, + "src": "463:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6554, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "463:6:25", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "428:51:25" + }, + "src": "406:74:25" + }, + { + "documentation": { + "id": 6558, + "nodeType": "StructuredDocumentation", + "src": "486:391:25", + "text": " Obtain a DNS record.\n @param node the namehash of the node for which to fetch the record\n @param name the keccak-256 hash of the fully-qualified name for which to fetch the record\n @param resource the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\n @return the DNS record in wire format if present, otherwise empty" + }, + "functionSelector": "a8fa5682", + "id": 6569, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "dnsRecord", + "nameLocation": "891:9:25", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6565, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6560, + "mutability": "mutable", + "name": "node", + "nameLocation": "918:4:25", + "nodeType": "VariableDeclaration", + "scope": 6569, + "src": "910:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6559, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "910:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6562, + "mutability": "mutable", + "name": "name", + "nameLocation": "940:4:25", + "nodeType": "VariableDeclaration", + "scope": 6569, + "src": "932:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6561, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "932:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6564, + "mutability": "mutable", + "name": "resource", + "nameLocation": "961:8:25", + "nodeType": "VariableDeclaration", + "scope": 6569, + "src": "954:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 6563, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "954:6:25", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "900:75:25" + }, + "returnParameters": { + "id": 6568, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6567, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6569, + "src": "999:12:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6566, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "999:5:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "998:14:25" + }, + "scope": 6570, + "src": "882:131:25", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6571, + "src": "58:957:25", + "usedErrors": [], + "usedEvents": [ + 6549, + 6557 + ] + } + ], + "src": "32:984:25" + }, + "id": 25 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol", + "exportedSymbols": { + "IDNSZoneResolver": [ + 6589 + ] + }, + "id": 6590, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6572, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:26" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IDNSZoneResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6589, + "linearizedBaseContracts": [ + 6589 + ], + "name": "IDNSZoneResolver", + "nameLocation": "68:16:26", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f85", + "id": 6580, + "name": "DNSZonehashChanged", + "nameLocation": "180:18:26", + "nodeType": "EventDefinition", + "parameters": { + "id": 6579, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6574, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "224:4:26", + "nodeType": "VariableDeclaration", + "scope": 6580, + "src": "208:20:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6573, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "208:7:26", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6576, + "indexed": false, + "mutability": "mutable", + "name": "lastzonehash", + "nameLocation": "244:12:26", + "nodeType": "VariableDeclaration", + "scope": 6580, + "src": "238:18:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6575, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "238:5:26", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6578, + "indexed": false, + "mutability": "mutable", + "name": "zonehash", + "nameLocation": "272:8:26", + "nodeType": "VariableDeclaration", + "scope": 6580, + "src": "266:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6577, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "266:5:26", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "198:88:26" + }, + "src": "174:113:26" + }, + { + "documentation": { + "id": 6581, + "nodeType": "StructuredDocumentation", + "src": "293:143:26", + "text": " zonehash obtains the hash for the zone.\n @param node The ENS node to query.\n @return The associated contenthash." + }, + "functionSelector": "5c98042b", + "id": 6588, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "zonehash", + "nameLocation": "450:8:26", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6584, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6583, + "mutability": "mutable", + "name": "node", + "nameLocation": "467:4:26", + "nodeType": "VariableDeclaration", + "scope": 6588, + "src": "459:12:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6582, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "459:7:26", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "458:14:26" + }, + "returnParameters": { + "id": 6587, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6586, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6588, + "src": "496:12:26", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6585, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "496:5:26", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "495:14:26" + }, + "scope": 6589, + "src": "441:69:26", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6590, + "src": "58:454:26", + "usedErrors": [], + "usedEvents": [ + 6580 + ] + } + ], + "src": "32:481:26" + }, + "id": 26 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol", + "exportedSymbols": { + "IExtendedResolver": [ + 6601 + ] + }, + "id": 6602, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6591, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:23:27" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IExtendedResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6601, + "linearizedBaseContracts": [ + 6601 + ], + "name": "IExtendedResolver", + "nameLocation": "67:17:27", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "9061b923", + "id": 6600, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "resolve", + "nameLocation": "100:7:27", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6596, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6593, + "mutability": "mutable", + "name": "name", + "nameLocation": "130:4:27", + "nodeType": "VariableDeclaration", + "scope": 6600, + "src": "117:17:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6592, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "117:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6595, + "mutability": "mutable", + "name": "data", + "nameLocation": "157:4:27", + "nodeType": "VariableDeclaration", + "scope": 6600, + "src": "144:17:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6594, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "144:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "107:60:27" + }, + "returnParameters": { + "id": 6599, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6598, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6600, + "src": "191:12:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6597, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "191:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "190:14:27" + }, + "scope": 6601, + "src": "91:114:27", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6602, + "src": "57:150:27", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:176:27" + }, + "id": 27 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol", + "exportedSymbols": { + "IInterfaceResolver": [ + 6622 + ] + }, + "id": 6623, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6603, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:28" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IInterfaceResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6622, + "linearizedBaseContracts": [ + 6622 + ], + "name": "IInterfaceResolver", + "nameLocation": "68:18:28", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa", + "id": 6611, + "name": "InterfaceChanged", + "nameLocation": "99:16:28", + "nodeType": "EventDefinition", + "parameters": { + "id": 6610, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6605, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "141:4:28", + "nodeType": "VariableDeclaration", + "scope": 6611, + "src": "125:20:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6604, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "125:7:28", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6607, + "indexed": true, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "170:11:28", + "nodeType": "VariableDeclaration", + "scope": 6611, + "src": "155:26:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6606, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "155:6:28", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6609, + "indexed": false, + "mutability": "mutable", + "name": "implementer", + "nameLocation": "199:11:28", + "nodeType": "VariableDeclaration", + "scope": 6611, + "src": "191:19:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6608, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "191:7:28", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "115:101:28" + }, + "src": "93:124:28" + }, + { + "documentation": { + "id": 6612, + "nodeType": "StructuredDocumentation", + "src": "223:626:28", + "text": " Returns the address of a contract that implements the specified interface for this name.\n If an implementer has not been set for this interfaceID and name, the resolver will query\n the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that\n contract implements EIP165 and returns `true` for the specified interfaceID, its address\n will be returned.\n @param node The ENS node to query.\n @param interfaceID The EIP 165 interface ID to check for.\n @return The address that implements this interface, or 0 if the interface is unsupported." + }, + "functionSelector": "124a319c", + "id": 6621, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "interfaceImplementer", + "nameLocation": "863:20:28", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6617, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6614, + "mutability": "mutable", + "name": "node", + "nameLocation": "901:4:28", + "nodeType": "VariableDeclaration", + "scope": 6621, + "src": "893:12:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6613, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "893:7:28", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6616, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "922:11:28", + "nodeType": "VariableDeclaration", + "scope": 6621, + "src": "915:18:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6615, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "915:6:28", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "883:56:28" + }, + "returnParameters": { + "id": 6620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6619, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6621, + "src": "963:7:28", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "963:7:28", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "962:9:28" + }, + "scope": 6622, + "src": "854:118:28", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6623, + "src": "58:916:28", + "usedErrors": [], + "usedEvents": [ + 6611 + ] + } + ], + "src": "32:943:28" + }, + "id": 28 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol", + "exportedSymbols": { + "INameResolver": [ + 6639 + ] + }, + "id": 6640, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6624, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:29" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "INameResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6639, + "linearizedBaseContracts": [ + 6639 + ], + "name": "INameResolver", + "nameLocation": "68:13:29", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "b7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7", + "id": 6630, + "name": "NameChanged", + "nameLocation": "94:11:29", + "nodeType": "EventDefinition", + "parameters": { + "id": 6629, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6626, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "122:4:29", + "nodeType": "VariableDeclaration", + "scope": 6630, + "src": "106:20:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6625, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "106:7:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6628, + "indexed": false, + "mutability": "mutable", + "name": "name", + "nameLocation": "135:4:29", + "nodeType": "VariableDeclaration", + "scope": 6630, + "src": "128:11:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6627, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "128:6:29", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "105:35:29" + }, + "src": "88:53:29" + }, + { + "documentation": { + "id": 6631, + "nodeType": "StructuredDocumentation", + "src": "147:189:29", + "text": " Returns the name associated with an ENS node, for reverse records.\n Defined in EIP181.\n @param node The ENS node to query.\n @return The associated name." + }, + "functionSelector": "691f3431", + "id": 6638, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "350:4:29", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6633, + "mutability": "mutable", + "name": "node", + "nameLocation": "363:4:29", + "nodeType": "VariableDeclaration", + "scope": 6638, + "src": "355:12:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6632, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "355:7:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "354:14:29" + }, + "returnParameters": { + "id": 6637, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6636, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6638, + "src": "392:13:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6635, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "392:6:29", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "391:15:29" + }, + "scope": 6639, + "src": "341:66:29", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6640, + "src": "58:351:29", + "usedErrors": [], + "usedEvents": [ + 6630 + ] + } + ], + "src": "32:378:29" + }, + "id": 29 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol", + "exportedSymbols": { + "IPubkeyResolver": [ + 6660 + ] + }, + "id": 6661, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6641, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:30" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IPubkeyResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6660, + "linearizedBaseContracts": [ + 6660 + ], + "name": "IPubkeyResolver", + "nameLocation": "68:15:30", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46", + "id": 6649, + "name": "PubkeyChanged", + "nameLocation": "96:13:30", + "nodeType": "EventDefinition", + "parameters": { + "id": 6648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6643, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "126:4:30", + "nodeType": "VariableDeclaration", + "scope": 6649, + "src": "110:20:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6642, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "110:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6645, + "indexed": false, + "mutability": "mutable", + "name": "x", + "nameLocation": "140:1:30", + "nodeType": "VariableDeclaration", + "scope": 6649, + "src": "132:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6644, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "132:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6647, + "indexed": false, + "mutability": "mutable", + "name": "y", + "nameLocation": "151:1:30", + "nodeType": "VariableDeclaration", + "scope": 6649, + "src": "143:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6646, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "143:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "109:44:30" + }, + "src": "90:64:30" + }, + { + "documentation": { + "id": 6650, + "nodeType": "StructuredDocumentation", + "src": "160:294:30", + "text": " Returns the SECP256k1 public key associated with an ENS node.\n Defined in EIP 619.\n @param node The ENS node to query\n @return x The X coordinate of the curve point for the public key.\n @return y The Y coordinate of the curve point for the public key." + }, + "functionSelector": "c8690233", + "id": 6659, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "pubkey", + "nameLocation": "468:6:30", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6653, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6652, + "mutability": "mutable", + "name": "node", + "nameLocation": "483:4:30", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "475:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6651, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "475:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "474:14:30" + }, + "returnParameters": { + "id": 6658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6655, + "mutability": "mutable", + "name": "x", + "nameLocation": "520:1:30", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "512:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6654, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "512:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6657, + "mutability": "mutable", + "name": "y", + "nameLocation": "531:1:30", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "523:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6656, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "523:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "511:22:30" + }, + "scope": 6660, + "src": "459:75:30", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6661, + "src": "58:478:30", + "usedErrors": [], + "usedEvents": [ + 6649 + ] + } + ], + "src": "32:505:30" + }, + "id": 30 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol", + "exportedSymbols": { + "ITextResolver": [ + 6683 + ] + }, + "id": 6684, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6662, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:31" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "ITextResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6683, + "linearizedBaseContracts": [ + 6683 + ], + "name": "ITextResolver", + "nameLocation": "68:13:31", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a1", + "id": 6672, + "name": "TextChanged", + "nameLocation": "94:11:31", + "nodeType": "EventDefinition", + "parameters": { + "id": 6671, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6664, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "131:4:31", + "nodeType": "VariableDeclaration", + "scope": 6672, + "src": "115:20:31", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6663, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "115:7:31", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6666, + "indexed": true, + "mutability": "mutable", + "name": "indexedKey", + "nameLocation": "160:10:31", + "nodeType": "VariableDeclaration", + "scope": 6672, + "src": "145:25:31", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6665, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "145:6:31", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6668, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "187:3:31", + "nodeType": "VariableDeclaration", + "scope": 6672, + "src": "180:10:31", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6667, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "180:6:31", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6670, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "207:5:31", + "nodeType": "VariableDeclaration", + "scope": 6672, + "src": "200:12:31", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6669, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "200:6:31", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "105:113:31" + }, + "src": "88:131:31" + }, + { + "documentation": { + "id": 6673, + "nodeType": "StructuredDocumentation", + "src": "225:206:31", + "text": " Returns the text data associated with an ENS node and key.\n @param node The ENS node to query.\n @param key The text data key to query.\n @return The associated text data." + }, + "functionSelector": "59d1d43c", + "id": 6682, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "text", + "nameLocation": "445:4:31", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6678, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6675, + "mutability": "mutable", + "name": "node", + "nameLocation": "467:4:31", + "nodeType": "VariableDeclaration", + "scope": 6682, + "src": "459:12:31", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6674, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "459:7:31", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6677, + "mutability": "mutable", + "name": "key", + "nameLocation": "497:3:31", + "nodeType": "VariableDeclaration", + "scope": 6682, + "src": "481:19:31", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6676, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "481:6:31", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "449:57:31" + }, + "returnParameters": { + "id": 6681, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6680, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6682, + "src": "530:13:31", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6679, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "530:6:31", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "529:15:31" + }, + "scope": 6683, + "src": "436:109:31", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6684, + "src": "58:489:31", + "usedErrors": [], + "usedEvents": [ + 6672 + ] + } + ], + "src": "32:516:31" + }, + "id": 31 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol", + "exportedSymbols": { + "IVersionableResolver": [ + 6699 + ] + }, + "id": 6700, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6685, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:32" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IVersionableResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 6699, + "linearizedBaseContracts": [ + 6699 + ], + "name": "IVersionableResolver", + "nameLocation": "68:20:32", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "c6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444", + "id": 6691, + "name": "VersionChanged", + "nameLocation": "101:14:32", + "nodeType": "EventDefinition", + "parameters": { + "id": 6690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6687, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "132:4:32", + "nodeType": "VariableDeclaration", + "scope": 6691, + "src": "116:20:32", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6686, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "116:7:32", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6689, + "indexed": false, + "mutability": "mutable", + "name": "newVersion", + "nameLocation": "145:10:32", + "nodeType": "VariableDeclaration", + "scope": 6691, + "src": "138:17:32", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 6688, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "138:6:32", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "115:41:32" + }, + "src": "95:62:32" + }, + { + "functionSelector": "d700ff33", + "id": 6698, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "recordVersions", + "nameLocation": "172:14:32", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6694, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6693, + "mutability": "mutable", + "name": "node", + "nameLocation": "195:4:32", + "nodeType": "VariableDeclaration", + "scope": 6698, + "src": "187:12:32", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6692, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "187:7:32", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "186:14:32" + }, + "returnParameters": { + "id": 6697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6696, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6698, + "src": "224:6:32", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 6695, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "224:6:32", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "223:8:32" + }, + "scope": 6699, + "src": "163:69:32", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6700, + "src": "58:176:32", + "usedErrors": [], + "usedEvents": [ + 6691 + ] + } + ], + "src": "32:203:32" + }, + "id": 32 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol", + "exportedSymbols": { + "AddrResolver": [ + 5903 + ], + "ERC165": [ + 15124 + ], + "IAddrResolver": [ + 6499 + ], + "IAddressResolver": [ + 6520 + ], + "IERC165": [ + 15136 + ], + "IInterfaceResolver": [ + 6622 + ], + "IVersionableResolver": [ + 6699 + ], + "InterfaceResolver": [ + 6895 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 6896, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6701, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:33" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "file": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "id": 6702, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6896, + "sourceUnit": 15137, + "src": "58:65:33", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 6703, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6896, + "sourceUnit": 5557, + "src": "124:29:33", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol", + "file": "./AddrResolver.sol", + "id": 6704, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6896, + "sourceUnit": 5904, + "src": "154:28:33", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol", + "file": "./IInterfaceResolver.sol", + "id": 6705, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6896, + "sourceUnit": 6623, + "src": "183:34:33", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 6706, + "name": "IInterfaceResolver", + "nameLocations": [ + "258:18:33" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6622, + "src": "258:18:33" + }, + "id": 6707, + "nodeType": "InheritanceSpecifier", + "src": "258:18:33" + }, + { + "baseName": { + "id": 6708, + "name": "AddrResolver", + "nameLocations": [ + "278:12:33" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5903, + "src": "278:12:33" + }, + "id": 6709, + "nodeType": "InheritanceSpecifier", + "src": "278:12:33" + } + ], + "canonicalName": "InterfaceResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 6895, + "linearizedBaseContracts": [ + 6895, + 5903, + 5556, + 6699, + 15124, + 15136, + 6520, + 6499, + 6622 + ], + "name": "InterfaceResolver", + "nameLocation": "237:17:33", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 6717, + "mutability": "mutable", + "name": "versionable_interfaces", + "nameLocation": "363:22:33", + "nodeType": "VariableDeclaration", + "scope": 6895, + "src": "297:88:33", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes4 => address)))" + }, + "typeName": { + "id": 6716, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6710, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "305:6:33", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "297:65:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes4 => address)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6715, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6711, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "323:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "315:46:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$", + "typeString": "mapping(bytes32 => mapping(bytes4 => address))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6714, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6712, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "342:6:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "334:26:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_address_$", + "typeString": "mapping(bytes4 => address)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6713, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "352:7:33", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 6748, + "nodeType": "Block", + "src": "910:179:33", + "statements": [ + { + "expression": { + "id": 6740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6730, + "name": "versionable_interfaces", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6717, + "src": "920:22:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes4 => address)))" + } + }, + "id": 6736, + "indexExpression": { + "baseExpression": { + "id": 6731, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "943:14:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6733, + "indexExpression": { + "id": 6732, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6720, + "src": "958:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "943:20:33", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "920:44:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$", + "typeString": "mapping(bytes32 => mapping(bytes4 => address))" + } + }, + "id": 6737, + "indexExpression": { + "id": 6734, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6720, + "src": "965:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "920:50:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_address_$", + "typeString": "mapping(bytes4 => address)" + } + }, + "id": 6738, + "indexExpression": { + "id": 6735, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6722, + "src": "984:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "920:85:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 6739, + "name": "implementer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6724, + "src": "1008:11:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "920:99:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 6741, + "nodeType": "ExpressionStatement", + "src": "920:99:33" + }, + { + "eventCall": { + "arguments": [ + { + "id": 6743, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6720, + "src": "1051:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6744, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6722, + "src": "1057:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "id": 6745, + "name": "implementer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6724, + "src": "1070:11:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 6742, + "name": "InterfaceChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6611, + "src": "1034:16:33", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes4_$_t_address_$returns$__$", + "typeString": "function (bytes32,bytes4,address)" + } + }, + "id": 6746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1034:48:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6747, + "nodeType": "EmitStatement", + "src": "1029:53:33" + } + ] + }, + "documentation": { + "id": 6718, + "nodeType": "StructuredDocumentation", + "src": "392:372:33", + "text": " Sets an interface associated with a name.\n Setting the address to 0 restores the default behaviour of querying the contract at `addr()` for interface support.\n @param node The node to update.\n @param interfaceID The EIP 165 interface ID.\n @param implementer The address of a contract that implements this interface for this node." + }, + "functionSelector": "e59d895d", + "id": 6749, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 6727, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6720, + "src": "904:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 6728, + "kind": "modifierInvocation", + "modifierName": { + "id": 6726, + "name": "authorised", + "nameLocations": [ + "893:10:33" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "893:10:33" + }, + "nodeType": "ModifierInvocation", + "src": "893:16:33" + } + ], + "name": "setInterface", + "nameLocation": "778:12:33", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6725, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6720, + "mutability": "mutable", + "name": "node", + "nameLocation": "808:4:33", + "nodeType": "VariableDeclaration", + "scope": 6749, + "src": "800:12:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6719, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "800:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6722, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "829:11:33", + "nodeType": "VariableDeclaration", + "scope": 6749, + "src": "822:18:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6721, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "822:6:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6724, + "mutability": "mutable", + "name": "implementer", + "nameLocation": "858:11:33", + "nodeType": "VariableDeclaration", + "scope": 6749, + "src": "850:19:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6723, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "850:7:33", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "790:85:33" + }, + "returnParameters": { + "id": 6729, + "nodeType": "ParameterList", + "parameters": [], + "src": "910:0:33" + }, + "scope": 6895, + "src": "769:320:33", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6621 + ], + "body": { + "id": 6872, + "nodeType": "Block", + "src": "1861:1015:33", + "statements": [ + { + "assignments": [ + 6761 + ], + "declarations": [ + { + "constant": false, + "id": 6761, + "mutability": "mutable", + "name": "implementer", + "nameLocation": "1879:11:33", + "nodeType": "VariableDeclaration", + "scope": 6872, + "src": "1871:19:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6760, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1871:7:33", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 6771, + "initialValue": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 6762, + "name": "versionable_interfaces", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6717, + "src": "1893:22:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(bytes4 => address)))" + } + }, + "id": 6766, + "indexExpression": { + "baseExpression": { + "id": 6763, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1916:14:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6765, + "indexExpression": { + "id": 6764, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6752, + "src": "1931:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1916:20:33", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1893:44:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_bytes4_$_t_address_$_$", + "typeString": "mapping(bytes32 => mapping(bytes4 => address))" + } + }, + "id": 6768, + "indexExpression": { + "id": 6767, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6752, + "src": "1951:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1893:72:33", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_address_$", + "typeString": "mapping(bytes4 => address)" + } + }, + "id": 6770, + "indexExpression": { + "id": 6769, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6754, + "src": "1966:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1893:85:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1871:107:33" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 6777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6772, + "name": "implementer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6761, + "src": "1992:11:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 6775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2015:1:33", + "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": 6774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2007:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6773, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2007:7:33", + "typeDescriptions": {} + } + }, + "id": 6776, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2007:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1992:25:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6781, + "nodeType": "IfStatement", + "src": "1988:74:33", + "trueBody": { + "id": 6780, + "nodeType": "Block", + "src": "2019:43:33", + "statements": [ + { + "expression": { + "id": 6778, + "name": "implementer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6761, + "src": "2040:11:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 6759, + "id": 6779, + "nodeType": "Return", + "src": "2033:18:33" + } + ] + } + }, + { + "assignments": [ + 6783 + ], + "declarations": [ + { + "constant": false, + "id": 6783, + "mutability": "mutable", + "name": "a", + "nameLocation": "2080:1:33", + "nodeType": "VariableDeclaration", + "scope": 6872, + "src": "2072:9:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6782, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2072:7:33", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 6787, + "initialValue": { + "arguments": [ + { + "id": 6785, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6752, + "src": "2089:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 6784, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 5778, + 5842 + ], + "referencedDeclaration": 5778, + "src": "2084:4:33", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_address_payable_$", + "typeString": "function (bytes32) view returns (address payable)" + } + }, + "id": 6786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2084:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2072:22:33" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 6793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6788, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6783, + "src": "2108:1:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 6791, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2121:1:33", + "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": 6790, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2113:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6789, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2113:7:33", + "typeDescriptions": {} + } + }, + "id": 6792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2113:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2108:15:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6800, + "nodeType": "IfStatement", + "src": "2104:63:33", + "trueBody": { + "id": 6799, + "nodeType": "Block", + "src": "2125:42:33", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 6796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2154:1:33", + "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": 6795, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2146:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6794, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2146:7:33", + "typeDescriptions": {} + } + }, + "id": 6797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2146:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 6759, + "id": 6798, + "nodeType": "Return", + "src": "2139:17:33" + } + ] + } + }, + { + "assignments": [ + 6802, + 6804 + ], + "declarations": [ + { + "constant": false, + "id": 6802, + "mutability": "mutable", + "name": "success", + "nameLocation": "2183:7:33", + "nodeType": "VariableDeclaration", + "scope": 6872, + "src": "2178:12:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6801, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2178:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6804, + "mutability": "mutable", + "name": "returnData", + "nameLocation": "2205:10:33", + "nodeType": "VariableDeclaration", + "scope": 6872, + "src": "2192:23:33", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6803, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2192:5:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 6816, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "737570706f727473496e746572666163652862797465733429", + "id": 6809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2286:27:33", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + }, + "value": "supportsInterface(bytes4)" + }, + { + "expression": { + "arguments": [ + { + "id": 6811, + "name": "IERC165", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15136, + "src": "2336:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC165_$15136_$", + "typeString": "type(contract IERC165)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC165_$15136_$", + "typeString": "type(contract IERC165)" + } + ], + "id": 6810, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "2331:4:33", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 6812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2331:13:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC165_$15136", + "typeString": "type(contract IERC165)" + } + }, + "id": 6813, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2345:11:33", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "2331:25:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 6807, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2245:3:33", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2249:19:33", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2245:23:33", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2245:125:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 6805, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6783, + "src": "2219:1:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 6806, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2221:10:33", + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "2219:12:33", + "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": 6815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2219:161:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2177:203:33" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2394:8:33", + "subExpression": { + "id": 6817, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6802, + "src": "2395:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6819, + "name": "returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6804, + "src": "2406:10:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2417:6:33", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2406:17:33", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 6821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2426:2:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "2406:22:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2394:34:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 6828, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 6824, + "name": "returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6804, + "src": "2432:10:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6826, + "indexExpression": { + "hexValue": "3331", + "id": 6825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2443:2:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "31" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2432:14:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2450:1:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2432:19:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2394:57:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6836, + "nodeType": "IfStatement", + "src": "2390:152:33", + "trueBody": { + "id": 6835, + "nodeType": "Block", + "src": "2453:89:33", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 6832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2529:1:33", + "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": 6831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2521:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6830, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2521:7:33", + "typeDescriptions": {} + } + }, + "id": 6833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2521:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 6759, + "id": 6834, + "nodeType": "Return", + "src": "2514:17:33" + } + ] + } + }, + { + "expression": { + "id": 6848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 6837, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6802, + "src": "2553:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6838, + "name": "returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6804, + "src": "2562:10:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 6839, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "2552:21:33", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "737570706f727473496e746572666163652862797465733429", + "id": 6844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2626:27:33", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + }, + "value": "supportsInterface(bytes4)" + }, + { + "id": 6845, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6754, + "src": "2655:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e2", + "typeString": "literal_string \"supportsInterface(bytes4)\"" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 6842, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2602:3:33", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2606:19:33", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2602:23:33", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2602:65:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 6840, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6783, + "src": "2576:1:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 6841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2578:10:33", + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "2576:12:33", + "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": 6847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2576:101:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "src": "2552:125:33", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6849, + "nodeType": "ExpressionStatement", + "src": "2552:125:33" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2691:8:33", + "subExpression": { + "id": 6850, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6802, + "src": "2692:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 6855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 6852, + "name": "returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6804, + "src": "2703:10:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2714:6:33", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2703:17:33", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3332", + "id": 6854, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2723:2:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "2703:22:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2691:34:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 6861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 6857, + "name": "returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6804, + "src": "2729:10:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 6859, + "indexExpression": { + "hexValue": "3331", + "id": 6858, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2740:2:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "31" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2729:14:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 6860, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2747:1:33", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2729:19:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2691:57:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 6869, + "nodeType": "IfStatement", + "src": "2687:164:33", + "trueBody": { + "id": 6868, + "nodeType": "Block", + "src": "2750:101:33", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 6865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2838:1:33", + "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": 6864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2830:7:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6863, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2830:7:33", + "typeDescriptions": {} + } + }, + "id": 6866, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2830:10:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 6759, + "id": 6867, + "nodeType": "Return", + "src": "2823:17:33" + } + ] + } + }, + { + "expression": { + "id": 6870, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6783, + "src": "2868:1:33", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 6759, + "id": 6871, + "nodeType": "Return", + "src": "2861:8:33" + } + ] + }, + "documentation": { + "id": 6750, + "nodeType": "StructuredDocumentation", + "src": "1095:626:33", + "text": " Returns the address of a contract that implements the specified interface for this name.\n If an implementer has not been set for this interfaceID and name, the resolver will query\n the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that\n contract implements EIP165 and returns `true` for the specified interfaceID, its address\n will be returned.\n @param node The ENS node to query.\n @param interfaceID The EIP 165 interface ID to check for.\n @return The address that implements this interface, or 0 if the interface is unsupported." + }, + "functionSelector": "124a319c", + "id": 6873, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "interfaceImplementer", + "nameLocation": "1735:20:33", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6756, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1834:8:33" + }, + "parameters": { + "id": 6755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6752, + "mutability": "mutable", + "name": "node", + "nameLocation": "1773:4:33", + "nodeType": "VariableDeclaration", + "scope": 6873, + "src": "1765:12:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6751, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1765:7:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6754, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1794:11:33", + "nodeType": "VariableDeclaration", + "scope": 6873, + "src": "1787:18:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6753, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1787:6:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1755:56:33" + }, + "returnParameters": { + "id": 6759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6758, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6873, + "src": "1852:7:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6757, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1852:7:33", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1851:9:33" + }, + "scope": 6895, + "src": "1726:1150:33", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5870 + ], + "body": { + "id": 6893, + "nodeType": "Block", + "src": "2987:139:33", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 6886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6881, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6875, + "src": "3016:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 6883, + "name": "IInterfaceResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6622, + "src": "3036:18:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IInterfaceResolver_$6622_$", + "typeString": "type(contract IInterfaceResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IInterfaceResolver_$6622_$", + "typeString": "type(contract IInterfaceResolver)" + } + ], + "id": 6882, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "3031:4:33", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 6884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3031:24:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IInterfaceResolver_$6622", + "typeString": "type(contract IInterfaceResolver)" + } + }, + "id": 6885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3056:11:33", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "3031:36:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "3016:51:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 6889, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6875, + "src": "3107:11:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 6887, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "3083:5:33", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_InterfaceResolver_$6895_$", + "typeString": "type(contract super InterfaceResolver)" + } + }, + "id": 6888, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3089:17:33", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5870, + "src": "3083:23:33", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 6890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3083:36:33", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3016:103:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 6880, + "id": 6892, + "nodeType": "Return", + "src": "2997:122:33" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 6894, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "2891:17:33", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6877, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2963:8:33" + }, + "parameters": { + "id": 6876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6875, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "2925:11:33", + "nodeType": "VariableDeclaration", + "scope": 6894, + "src": "2918:18:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6874, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2918:6:33", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "2908:34:33" + }, + "returnParameters": { + "id": 6880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6879, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6894, + "src": "2981:4:33", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6878, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2981:4:33", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2980:6:33" + }, + "scope": 6895, + "src": "2882:244:33", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 6896, + "src": "219:2909:33", + "usedErrors": [], + "usedEvents": [ + 6490, + 6510, + 6611, + 6691 + ] + } + ], + "src": "32:3097:33" + }, + "id": 33 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ], + "INameResolver": [ + 6639 + ], + "IVersionableResolver": [ + 6699 + ], + "NameResolver": [ + 6976 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 6977, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6897, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:34" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 6898, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6977, + "sourceUnit": 5557, + "src": "58:29:34", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol", + "file": "./INameResolver.sol", + "id": 6899, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 6977, + "sourceUnit": 6640, + "src": "88:29:34", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 6900, + "name": "INameResolver", + "nameLocations": [ + "153:13:34" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6639, + "src": "153:13:34" + }, + "id": 6901, + "nodeType": "InheritanceSpecifier", + "src": "153:13:34" + }, + { + "baseName": { + "id": 6902, + "name": "ResolverBase", + "nameLocations": [ + "168:12:34" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "168:12:34" + }, + "id": 6903, + "nodeType": "InheritanceSpecifier", + "src": "168:12:34" + } + ], + "canonicalName": "NameResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 6976, + "linearizedBaseContracts": [ + 6976, + 5556, + 6699, + 15124, + 15136, + 6639 + ], + "name": "NameResolver", + "nameLocation": "137:12:34", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 6909, + "mutability": "mutable", + "name": "versionable_names", + "nameLocation": "233:17:34", + "nodeType": "VariableDeclaration", + "scope": 6976, + "src": "187:63:34", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_string_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => string))" + }, + "typeName": { + "id": 6908, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6904, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "195:6:34", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "187:45:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_string_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => string))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6907, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6905, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "213:7:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "205:26:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6906, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "224:6:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 6935, + "nodeType": "Block", + "src": "568:113:34", + "statements": [ + { + "expression": { + "id": 6928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 6920, + "name": "versionable_names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6909, + "src": "578:17:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_string_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => string storage ref))" + } + }, + "id": 6925, + "indexExpression": { + "baseExpression": { + "id": 6921, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "596:14:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6923, + "indexExpression": { + "id": 6922, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6912, + "src": "611:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "596:20:34", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "578:39:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 6926, + "indexExpression": { + "id": 6924, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6912, + "src": "618:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "578:45:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 6927, + "name": "newName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6914, + "src": "626:7:34", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + "src": "578:55:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 6929, + "nodeType": "ExpressionStatement", + "src": "578:55:34" + }, + { + "eventCall": { + "arguments": [ + { + "id": 6931, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6912, + "src": "660:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 6932, + "name": "newName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6914, + "src": "666:7:34", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 6930, + "name": "NameChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6630, + "src": "648:11:34", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes32,string memory)" + } + }, + "id": 6933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "648:26:34", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6934, + "nodeType": "EmitStatement", + "src": "643:31:34" + } + ] + }, + "documentation": { + "id": 6910, + "nodeType": "StructuredDocumentation", + "src": "257:194:34", + "text": " Sets the name associated with an ENS node, for reverse records.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update." + }, + "functionSelector": "77372213", + "id": 6936, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 6917, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6912, + "src": "562:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 6918, + "kind": "modifierInvocation", + "modifierName": { + "id": 6916, + "name": "authorised", + "nameLocations": [ + "551:10:34" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "551:10:34" + }, + "nodeType": "ModifierInvocation", + "src": "551:16:34" + } + ], + "name": "setName", + "nameLocation": "465:7:34", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6915, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6912, + "mutability": "mutable", + "name": "node", + "nameLocation": "490:4:34", + "nodeType": "VariableDeclaration", + "scope": 6936, + "src": "482:12:34", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6911, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "482:7:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6914, + "mutability": "mutable", + "name": "newName", + "nameLocation": "520:7:34", + "nodeType": "VariableDeclaration", + "scope": 6936, + "src": "504:23:34", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6913, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "504:6:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "472:61:34" + }, + "returnParameters": { + "id": 6919, + "nodeType": "ParameterList", + "parameters": [], + "src": "568:0:34" + }, + "scope": 6976, + "src": "456:225:34", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6638 + ], + "body": { + "id": 6953, + "nodeType": "Block", + "src": "978:69:34", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 6945, + "name": "versionable_names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6909, + "src": "995:17:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_string_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => string storage ref))" + } + }, + "id": 6949, + "indexExpression": { + "baseExpression": { + "id": 6946, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1013:14:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 6948, + "indexExpression": { + "id": 6947, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6939, + "src": "1028:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1013:20:34", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "995:39:34", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 6951, + "indexExpression": { + "id": 6950, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6939, + "src": "1035:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "995:45:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 6944, + "id": 6952, + "nodeType": "Return", + "src": "988:52:34" + } + ] + }, + "documentation": { + "id": 6937, + "nodeType": "StructuredDocumentation", + "src": "687:189:34", + "text": " Returns the name associated with an ENS node, for reverse records.\n Defined in EIP181.\n @param node The ENS node to query.\n @return The associated name." + }, + "functionSelector": "691f3431", + "id": 6954, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "890:4:34", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6941, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "945:8:34" + }, + "parameters": { + "id": 6940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6939, + "mutability": "mutable", + "name": "node", + "nameLocation": "912:4:34", + "nodeType": "VariableDeclaration", + "scope": 6954, + "src": "904:12:34", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6938, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "904:7:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "894:28:34" + }, + "returnParameters": { + "id": 6944, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6943, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6954, + "src": "963:13:34", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "963:6:34", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "962:15:34" + }, + "scope": 6976, + "src": "881:166:34", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 6974, + "nodeType": "Block", + "src": "1158:134:34", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 6972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 6967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 6962, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6956, + "src": "1187:11:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 6964, + "name": "INameResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6639, + "src": "1207:13:34", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_INameResolver_$6639_$", + "typeString": "type(contract INameResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_INameResolver_$6639_$", + "typeString": "type(contract INameResolver)" + } + ], + "id": 6963, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1202:4:34", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 6965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1202:19:34", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_INameResolver_$6639", + "typeString": "type(contract INameResolver)" + } + }, + "id": 6966, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1222:11:34", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1202:31:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1187:46:34", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 6970, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6956, + "src": "1273:11:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 6968, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1249:5:34", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameResolver_$6976_$", + "typeString": "type(contract super NameResolver)" + } + }, + "id": 6969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1255:17:34", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "1249:23:34", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 6971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1249:36:34", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1187:98:34", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 6961, + "id": 6973, + "nodeType": "Return", + "src": "1168:117:34" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 6975, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1062:17:34", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 6958, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1134:8:34" + }, + "parameters": { + "id": 6957, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6956, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1096:11:34", + "nodeType": "VariableDeclaration", + "scope": 6975, + "src": "1089:18:34", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 6955, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1089:6:34", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1079:34:34" + }, + "returnParameters": { + "id": 6961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6960, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 6975, + "src": "1152:4:34", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6959, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1152:4:34", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1151:6:34" + }, + "scope": 6976, + "src": "1053:239:34", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 6977, + "src": "119:1175:34", + "usedErrors": [], + "usedEvents": [ + 6630, + 6691 + ] + } + ], + "src": "32:1263:34" + }, + "id": 34 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ], + "IPubkeyResolver": [ + 6660 + ], + "IVersionableResolver": [ + 6699 + ], + "PubkeyResolver": [ + 7083 + ], + "ResolverBase": [ + 5556 + ] + }, + "id": 7084, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 6978, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:35" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 6979, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7084, + "sourceUnit": 5557, + "src": "58:29:35", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol", + "file": "./IPubkeyResolver.sol", + "id": 6980, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7084, + "sourceUnit": 6661, + "src": "88:31:35", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 6981, + "name": "IPubkeyResolver", + "nameLocations": [ + "157:15:35" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6660, + "src": "157:15:35" + }, + "id": 6982, + "nodeType": "InheritanceSpecifier", + "src": "157:15:35" + }, + { + "baseName": { + "id": 6983, + "name": "ResolverBase", + "nameLocations": [ + "174:12:35" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "174:12:35" + }, + "id": 6984, + "nodeType": "InheritanceSpecifier", + "src": "174:12:35" + } + ], + "canonicalName": "PubkeyResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 7083, + "linearizedBaseContracts": [ + 7083, + 5556, + 6699, + 15124, + 15136, + 6660 + ], + "name": "PubkeyResolver", + "nameLocation": "139:14:35", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "PubkeyResolver.PublicKey", + "id": 6989, + "members": [ + { + "constant": false, + "id": 6986, + "mutability": "mutable", + "name": "x", + "nameLocation": "228:1:35", + "nodeType": "VariableDeclaration", + "scope": 6989, + "src": "220:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6985, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "220:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6988, + "mutability": "mutable", + "name": "y", + "nameLocation": "247:1:35", + "nodeType": "VariableDeclaration", + "scope": 6989, + "src": "239:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6987, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "239:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "PublicKey", + "nameLocation": "200:9:35", + "nodeType": "StructDefinition", + "scope": 7083, + "src": "193:62:35", + "visibility": "public" + }, + { + "constant": false, + "id": 6996, + "mutability": "mutable", + "name": "versionable_pubkeys", + "nameLocation": "310:19:35", + "nodeType": "VariableDeclaration", + "scope": 7083, + "src": "261:68:35", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => struct PubkeyResolver.PublicKey))" + }, + "typeName": { + "id": 6995, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6990, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "269:6:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "261:48:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => struct PubkeyResolver.PublicKey))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6994, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 6991, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "287:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "279:29:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$", + "typeString": "mapping(bytes32 => struct PubkeyResolver.PublicKey)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 6993, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 6992, + "name": "PublicKey", + "nameLocations": [ + "298:9:35" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6989, + "src": "298:9:35" + }, + "referencedDeclaration": 6989, + "src": "298:9:35", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_storage_ptr", + "typeString": "struct PubkeyResolver.PublicKey" + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 7028, + "nodeType": "Block", + "src": "722:122:35", + "statements": [ + { + "expression": { + "id": 7020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 7009, + "name": "versionable_pubkeys", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6996, + "src": "732:19:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref))" + } + }, + "id": 7014, + "indexExpression": { + "baseExpression": { + "id": 7010, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "752:14:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 7012, + "indexExpression": { + "id": 7011, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6999, + "src": "767:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "752:20:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "732:41:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$", + "typeString": "mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref)" + } + }, + "id": 7015, + "indexExpression": { + "id": 7013, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6999, + "src": "774:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "732:47:35", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_storage", + "typeString": "struct PubkeyResolver.PublicKey storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 7017, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7001, + "src": "792:1:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7018, + "name": "y", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7003, + "src": "795:1:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 7016, + "name": "PublicKey", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6989, + "src": "782:9:35", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_PublicKey_$6989_storage_ptr_$", + "typeString": "type(struct PubkeyResolver.PublicKey storage pointer)" + } + }, + "id": 7019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "782:15:35", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_memory_ptr", + "typeString": "struct PubkeyResolver.PublicKey memory" + } + }, + "src": "732:65:35", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_storage", + "typeString": "struct PubkeyResolver.PublicKey storage ref" + } + }, + "id": 7021, + "nodeType": "ExpressionStatement", + "src": "732:65:35" + }, + { + "eventCall": { + "arguments": [ + { + "id": 7023, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6999, + "src": "826:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7024, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7001, + "src": "832:1:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7025, + "name": "y", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7003, + "src": "835:1:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 7022, + "name": "PubkeyChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6649, + "src": "812:13:35", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32,bytes32)" + } + }, + "id": 7026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "812:25:35", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7027, + "nodeType": "EmitStatement", + "src": "807:30:35" + } + ] + }, + "documentation": { + "id": 6997, + "nodeType": "StructuredDocumentation", + "src": "336:262:35", + "text": " Sets the SECP256k1 public key associated with an ENS node.\n @param node The ENS node to query\n @param x the X coordinate of the curve point for the public key.\n @param y the Y coordinate of the curve point for the public key." + }, + "functionSelector": "29cd62ea", + "id": 7029, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 7006, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6999, + "src": "716:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 7007, + "kind": "modifierInvocation", + "modifierName": { + "id": 7005, + "name": "authorised", + "nameLocations": [ + "705:10:35" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "705:10:35" + }, + "nodeType": "ModifierInvocation", + "src": "705:16:35" + } + ], + "name": "setPubkey", + "nameLocation": "612:9:35", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7004, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6999, + "mutability": "mutable", + "name": "node", + "nameLocation": "639:4:35", + "nodeType": "VariableDeclaration", + "scope": 7029, + "src": "631:12:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 6998, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "631:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7001, + "mutability": "mutable", + "name": "x", + "nameLocation": "661:1:35", + "nodeType": "VariableDeclaration", + "scope": 7029, + "src": "653:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7000, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "653:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7003, + "mutability": "mutable", + "name": "y", + "nameLocation": "680:1:35", + "nodeType": "VariableDeclaration", + "scope": 7029, + "src": "672:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7002, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "672:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "621:66:35" + }, + "returnParameters": { + "id": 7008, + "nodeType": "ParameterList", + "parameters": [], + "src": "722:0:35" + }, + "scope": 7083, + "src": "603:241:35", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6659 + ], + "body": { + "id": 7060, + "nodeType": "Block", + "src": "1255:220:35", + "statements": [ + { + "assignments": [ + 7041 + ], + "declarations": [ + { + "constant": false, + "id": 7041, + "mutability": "mutable", + "name": "currentRecordVersion", + "nameLocation": "1272:20:35", + "nodeType": "VariableDeclaration", + "scope": 7060, + "src": "1265:27:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 7040, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1265:6:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 7045, + "initialValue": { + "baseExpression": { + "id": 7042, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1295:14:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 7044, + "indexExpression": { + "id": 7043, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7032, + "src": "1310:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1295:20:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1265:50:35" + }, + { + "expression": { + "components": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 7046, + "name": "versionable_pubkeys", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6996, + "src": "1346:19:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref))" + } + }, + "id": 7048, + "indexExpression": { + "id": 7047, + "name": "currentRecordVersion", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7041, + "src": "1366:20:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1346:41:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$", + "typeString": "mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref)" + } + }, + "id": 7050, + "indexExpression": { + "id": 7049, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7032, + "src": "1388:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1346:47:35", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_storage", + "typeString": "struct PubkeyResolver.PublicKey storage ref" + } + }, + "id": 7051, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1394:1:35", + "memberName": "x", + "nodeType": "MemberAccess", + "referencedDeclaration": 6986, + "src": "1346:49:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 7052, + "name": "versionable_pubkeys", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6996, + "src": "1409:19:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref))" + } + }, + "id": 7054, + "indexExpression": { + "id": 7053, + "name": "currentRecordVersion", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7041, + "src": "1429:20:35", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1409:41:35", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PublicKey_$6989_storage_$", + "typeString": "mapping(bytes32 => struct PubkeyResolver.PublicKey storage ref)" + } + }, + "id": 7056, + "indexExpression": { + "id": 7055, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7032, + "src": "1451:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1409:47:35", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PublicKey_$6989_storage", + "typeString": "struct PubkeyResolver.PublicKey storage ref" + } + }, + "id": 7057, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1457:1:35", + "memberName": "y", + "nodeType": "MemberAccess", + "referencedDeclaration": 6988, + "src": "1409:49:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 7058, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1332:136:35", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_bytes32_$", + "typeString": "tuple(bytes32,bytes32)" + } + }, + "functionReturnParameters": 7039, + "id": 7059, + "nodeType": "Return", + "src": "1325:143:35" + } + ] + }, + "documentation": { + "id": 7030, + "nodeType": "StructuredDocumentation", + "src": "850:294:35", + "text": " Returns the SECP256k1 public key associated with an ENS node.\n Defined in EIP 619.\n @param node The ENS node to query\n @return x The X coordinate of the curve point for the public key.\n @return y The Y coordinate of the curve point for the public key." + }, + "functionSelector": "c8690233", + "id": 7061, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "pubkey", + "nameLocation": "1158:6:35", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7034, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1215:8:35" + }, + "parameters": { + "id": 7033, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7032, + "mutability": "mutable", + "name": "node", + "nameLocation": "1182:4:35", + "nodeType": "VariableDeclaration", + "scope": 7061, + "src": "1174:12:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7031, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1174:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1164:28:35" + }, + "returnParameters": { + "id": 7039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7036, + "mutability": "mutable", + "name": "x", + "nameLocation": "1241:1:35", + "nodeType": "VariableDeclaration", + "scope": 7061, + "src": "1233:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7035, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1233:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7038, + "mutability": "mutable", + "name": "y", + "nameLocation": "1252:1:35", + "nodeType": "VariableDeclaration", + "scope": 7061, + "src": "1244:9:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1244:7:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1232:22:35" + }, + "scope": 7083, + "src": "1149:326:35", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 7081, + "nodeType": "Block", + "src": "1586:136:35", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 7079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 7074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7069, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7063, + "src": "1615:11:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 7071, + "name": "IPubkeyResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6660, + "src": "1635:15:35", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IPubkeyResolver_$6660_$", + "typeString": "type(contract IPubkeyResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IPubkeyResolver_$6660_$", + "typeString": "type(contract IPubkeyResolver)" + } + ], + "id": 7070, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1630:4:35", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 7072, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1630:21:35", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IPubkeyResolver_$6660", + "typeString": "type(contract IPubkeyResolver)" + } + }, + "id": 7073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1652:11:35", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1630:33:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1615:48:35", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 7077, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7063, + "src": "1703:11:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 7075, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1679:5:35", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_PubkeyResolver_$7083_$", + "typeString": "type(contract super PubkeyResolver)" + } + }, + "id": 7076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1685:17:35", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "1679:23:35", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 7078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1679:36:35", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1615:100:35", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 7068, + "id": 7080, + "nodeType": "Return", + "src": "1596:119:35" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 7082, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1490:17:35", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7065, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1562:8:35" + }, + "parameters": { + "id": 7064, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7063, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1524:11:35", + "nodeType": "VariableDeclaration", + "scope": 7082, + "src": "1517:18:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 7062, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1517:6:35", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1507:34:35" + }, + "returnParameters": { + "id": 7068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7067, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7082, + "src": "1580:4:35", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7066, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1580:4:35", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1579:6:35" + }, + "scope": 7083, + "src": "1481:241:35", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 7084, + "src": "121:1603:35", + "usedErrors": [], + "usedEvents": [ + 6649, + 6691 + ] + } + ], + "src": "32:1693:35" + }, + "id": 35 + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ], + "ITextResolver": [ + 6683 + ], + "IVersionableResolver": [ + 6699 + ], + "ResolverBase": [ + 5556 + ], + "TextResolver": [ + 7176 + ] + }, + "id": 7177, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7085, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "32:24:36" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol", + "file": "../ResolverBase.sol", + "id": 7086, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7177, + "sourceUnit": 5557, + "src": "58:29:36", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol", + "file": "./ITextResolver.sol", + "id": 7087, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7177, + "sourceUnit": 6684, + "src": "88:29:36", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 7088, + "name": "ITextResolver", + "nameLocations": [ + "153:13:36" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6683, + "src": "153:13:36" + }, + "id": 7089, + "nodeType": "InheritanceSpecifier", + "src": "153:13:36" + }, + { + "baseName": { + "id": 7090, + "name": "ResolverBase", + "nameLocations": [ + "168:12:36" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5556, + "src": "168:12:36" + }, + "id": 7091, + "nodeType": "InheritanceSpecifier", + "src": "168:12:36" + } + ], + "canonicalName": "TextResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 7176, + "linearizedBaseContracts": [ + 7176, + 5556, + 6699, + 15124, + 15136, + 6683 + ], + "name": "TextResolver", + "nameLocation": "137:12:36", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 7099, + "mutability": "mutable", + "name": "versionable_texts", + "nameLocation": "252:17:36", + "nodeType": "VariableDeclaration", + "scope": 7176, + "src": "187:82:36", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(string => string)))" + }, + "typeName": { + "id": 7098, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 7092, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "195:6:36", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Mapping", + "src": "187:64:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(string => string)))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 7097, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 7093, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "213:7:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "205:45:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$", + "typeString": "mapping(bytes32 => mapping(string => string))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 7096, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 7094, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "232:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "nodeType": "Mapping", + "src": "224:25:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_string_storage_$", + "typeString": "mapping(string => string)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 7095, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "242:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 7131, + "nodeType": "Block", + "src": "688:124:36", + "statements": [ + { + "expression": { + "id": 7122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 7112, + "name": "versionable_texts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7099, + "src": "698:17:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(string memory => string storage ref)))" + } + }, + "id": 7118, + "indexExpression": { + "baseExpression": { + "id": 7113, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "716:14:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 7115, + "indexExpression": { + "id": 7114, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7102, + "src": "731:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "716:20:36", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "698:39:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$", + "typeString": "mapping(bytes32 => mapping(string memory => string storage ref))" + } + }, + "id": 7119, + "indexExpression": { + "id": 7116, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7102, + "src": "738:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "698:45:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_string_storage_$", + "typeString": "mapping(string memory => string storage ref)" + } + }, + "id": 7120, + "indexExpression": { + "id": 7117, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7104, + "src": "744:3:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "698:50:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 7121, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7106, + "src": "751:5:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + "src": "698:58:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 7123, + "nodeType": "ExpressionStatement", + "src": "698:58:36" + }, + { + "eventCall": { + "arguments": [ + { + "id": 7125, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7102, + "src": "783:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7126, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7104, + "src": "789:3:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 7127, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7104, + "src": "794:3:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 7128, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7106, + "src": "799:5:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 7124, + "name": "TextChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6672, + "src": "771:11:36", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes32,string memory,string memory,string memory)" + } + }, + "id": 7129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "771:34:36", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7130, + "nodeType": "EmitStatement", + "src": "766:39:36" + } + ] + }, + "documentation": { + "id": 7100, + "nodeType": "StructuredDocumentation", + "src": "276:268:36", + "text": " Sets the text data associated with an ENS node and key.\n May only be called by the owner of that node in the ENS registry.\n @param node The node to update.\n @param key The key to set.\n @param value The text data value to set." + }, + "functionSelector": "10f13a8c", + "id": 7132, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 7109, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7102, + "src": "682:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 7110, + "kind": "modifierInvocation", + "modifierName": { + "id": 7108, + "name": "authorised", + "nameLocations": [ + "671:10:36" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 5512, + "src": "671:10:36" + }, + "nodeType": "ModifierInvocation", + "src": "671:16:36" + } + ], + "name": "setText", + "nameLocation": "558:7:36", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7102, + "mutability": "mutable", + "name": "node", + "nameLocation": "583:4:36", + "nodeType": "VariableDeclaration", + "scope": 7132, + "src": "575:12:36", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7101, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "575:7:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7104, + "mutability": "mutable", + "name": "key", + "nameLocation": "613:3:36", + "nodeType": "VariableDeclaration", + "scope": 7132, + "src": "597:19:36", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7103, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "597:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7106, + "mutability": "mutable", + "name": "value", + "nameLocation": "642:5:36", + "nodeType": "VariableDeclaration", + "scope": 7132, + "src": "626:21:36", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7105, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "626:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "565:88:36" + }, + "returnParameters": { + "id": 7111, + "nodeType": "ParameterList", + "parameters": [], + "src": "688:0:36" + }, + "scope": 7176, + "src": "549:263:36", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 6682 + ], + "body": { + "id": 7153, + "nodeType": "Block", + "src": "1155:74:36", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "id": 7143, + "name": "versionable_texts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7099, + "src": "1172:17:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint64_$_t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$_$", + "typeString": "mapping(uint64 => mapping(bytes32 => mapping(string memory => string storage ref)))" + } + }, + "id": 7147, + "indexExpression": { + "baseExpression": { + "id": 7144, + "name": "recordVersions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5493, + "src": "1190:14:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint64_$", + "typeString": "mapping(bytes32 => uint64)" + } + }, + "id": 7146, + "indexExpression": { + "id": 7145, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7135, + "src": "1205:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1190:20:36", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1172:39:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_string_memory_ptr_$_t_string_storage_$_$", + "typeString": "mapping(bytes32 => mapping(string memory => string storage ref))" + } + }, + "id": 7149, + "indexExpression": { + "id": 7148, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7135, + "src": "1212:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1172:45:36", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_string_storage_$", + "typeString": "mapping(string memory => string storage ref)" + } + }, + "id": 7151, + "indexExpression": { + "id": 7150, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7137, + "src": "1218:3:36", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1172:50:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 7142, + "id": 7152, + "nodeType": "Return", + "src": "1165:57:36" + } + ] + }, + "documentation": { + "id": 7133, + "nodeType": "StructuredDocumentation", + "src": "818:206:36", + "text": " Returns the text data associated with an ENS node and key.\n @param node The ENS node to query.\n @param key The text data key to query.\n @return The associated text data." + }, + "functionSelector": "59d1d43c", + "id": 7154, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "text", + "nameLocation": "1038:4:36", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7139, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1122:8:36" + }, + "parameters": { + "id": 7138, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7135, + "mutability": "mutable", + "name": "node", + "nameLocation": "1060:4:36", + "nodeType": "VariableDeclaration", + "scope": 7154, + "src": "1052:12:36", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7134, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1052:7:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7137, + "mutability": "mutable", + "name": "key", + "nameLocation": "1090:3:36", + "nodeType": "VariableDeclaration", + "scope": 7154, + "src": "1074:19:36", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7136, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1074:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1042:57:36" + }, + "returnParameters": { + "id": 7142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7141, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7154, + "src": "1140:13:36", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7140, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1140:6:36", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1139:15:36" + }, + "scope": 7176, + "src": "1029:200:36", + "stateMutability": "view", + "virtual": true, + "visibility": "external" + }, + { + "baseFunctions": [ + 5555 + ], + "body": { + "id": 7174, + "nodeType": "Block", + "src": "1340:134:36", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 7172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 7167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7162, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7156, + "src": "1369:11:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 7164, + "name": "ITextResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6683, + "src": "1389:13:36", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITextResolver_$6683_$", + "typeString": "type(contract ITextResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_ITextResolver_$6683_$", + "typeString": "type(contract ITextResolver)" + } + ], + "id": 7163, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1384:4:36", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 7165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1384:19:36", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_ITextResolver_$6683", + "typeString": "type(contract ITextResolver)" + } + }, + "id": 7166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1404:11:36", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1384:31:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1369:46:36", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 7170, + "name": "interfaceID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7156, + "src": "1455:11:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 7168, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1431:5:36", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_TextResolver_$7176_$", + "typeString": "type(contract super TextResolver)" + } + }, + "id": 7169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1437:17:36", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 5555, + "src": "1431:23:36", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 7171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1431:36:36", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1369:98:36", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 7161, + "id": 7173, + "nodeType": "Return", + "src": "1350:117:36" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 7175, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1244:17:36", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7158, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1316:8:36" + }, + "parameters": { + "id": 7157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7156, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1278:11:36", + "nodeType": "VariableDeclaration", + "scope": 7175, + "src": "1271:18:36", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 7155, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1271:6:36", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1261:34:36" + }, + "returnParameters": { + "id": 7161, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7160, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7175, + "src": "1334:4:36", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7159, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1334:4:36", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1333:6:36" + }, + "scope": 7176, + "src": "1235:239:36", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 7177, + "src": "119:1357:36", + "usedErrors": [], + "usedEvents": [ + 6672, + 6691 + ] + } + ], + "src": "32:1445:36" + }, + "id": 36 + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol", + "exportedSymbols": { + "IReverseRegistrar": [ + 7238 + ] + }, + "id": 7239, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7178, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:24:37" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IReverseRegistrar", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 7238, + "linearizedBaseContracts": [ + 7238 + ], + "name": "IReverseRegistrar", + "nameLocation": "36:17:37", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "c66485b2", + "id": 7183, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setDefaultResolver", + "nameLocation": "69:18:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7181, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7180, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "96:8:37", + "nodeType": "VariableDeclaration", + "scope": 7183, + "src": "88:16:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "88:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "87:18:37" + }, + "returnParameters": { + "id": 7182, + "nodeType": "ParameterList", + "parameters": [], + "src": "114:0:37" + }, + "scope": 7238, + "src": "60:55:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1e83409a", + "id": 7190, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "claim", + "nameLocation": "130:5:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7185, + "mutability": "mutable", + "name": "owner", + "nameLocation": "144:5:37", + "nodeType": "VariableDeclaration", + "scope": 7190, + "src": "136:13:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "136:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "135:15:37" + }, + "returnParameters": { + "id": 7189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7188, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7190, + "src": "169:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7187, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "169:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "168:9:37" + }, + "scope": 7238, + "src": "121:57:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "65669631", + "id": 7201, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "claimForAddr", + "nameLocation": "193:12:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7197, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7192, + "mutability": "mutable", + "name": "addr", + "nameLocation": "223:4:37", + "nodeType": "VariableDeclaration", + "scope": 7201, + "src": "215:12:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7191, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "215:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7194, + "mutability": "mutable", + "name": "owner", + "nameLocation": "245:5:37", + "nodeType": "VariableDeclaration", + "scope": 7201, + "src": "237:13:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7193, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "237:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7196, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "268:8:37", + "nodeType": "VariableDeclaration", + "scope": 7201, + "src": "260:16:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "260:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "205:77:37" + }, + "returnParameters": { + "id": 7200, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7199, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7201, + "src": "301:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7198, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "301:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "300:9:37" + }, + "scope": 7238, + "src": "184:126:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0f5a5466", + "id": 7210, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "claimWithResolver", + "nameLocation": "325:17:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7203, + "mutability": "mutable", + "name": "owner", + "nameLocation": "360:5:37", + "nodeType": "VariableDeclaration", + "scope": 7210, + "src": "352:13:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7202, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "352:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7205, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "383:8:37", + "nodeType": "VariableDeclaration", + "scope": 7210, + "src": "375:16:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7204, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "375:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "342:55:37" + }, + "returnParameters": { + "id": 7209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7208, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7210, + "src": "416:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7207, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "416:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "415:9:37" + }, + "scope": 7238, + "src": "316:109:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c47f0027", + "id": 7217, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setName", + "nameLocation": "440:7:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7213, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7212, + "mutability": "mutable", + "name": "name", + "nameLocation": "462:4:37", + "nodeType": "VariableDeclaration", + "scope": 7217, + "src": "448:18:37", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7211, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "448:6:37", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "447:20:37" + }, + "returnParameters": { + "id": 7216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7215, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7217, + "src": "486:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7214, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "486:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "485:9:37" + }, + "scope": 7238, + "src": "431:64:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "7a806d6b", + "id": 7230, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setNameForAddr", + "nameLocation": "510:14:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7219, + "mutability": "mutable", + "name": "addr", + "nameLocation": "542:4:37", + "nodeType": "VariableDeclaration", + "scope": 7230, + "src": "534:12:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7218, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "534:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7221, + "mutability": "mutable", + "name": "owner", + "nameLocation": "564:5:37", + "nodeType": "VariableDeclaration", + "scope": 7230, + "src": "556:13:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7220, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "556:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7223, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "587:8:37", + "nodeType": "VariableDeclaration", + "scope": 7230, + "src": "579:16:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7222, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "579:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7225, + "mutability": "mutable", + "name": "name", + "nameLocation": "619:4:37", + "nodeType": "VariableDeclaration", + "scope": 7230, + "src": "605:18:37", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7224, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "605:6:37", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "524:105:37" + }, + "returnParameters": { + "id": 7229, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7228, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7230, + "src": "648:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7227, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "648:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "647:9:37" + }, + "scope": 7238, + "src": "501:156:37", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "bffbe61c", + "id": 7237, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "node", + "nameLocation": "672:4:37", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7233, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7232, + "mutability": "mutable", + "name": "addr", + "nameLocation": "685:4:37", + "nodeType": "VariableDeclaration", + "scope": 7237, + "src": "677:12:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "677:7:37", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "676:14:37" + }, + "returnParameters": { + "id": 7236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7235, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7237, + "src": "714:7:37", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7234, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "714:7:37", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "713:9:37" + }, + "scope": 7238, + "src": "663:60:37", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + } + ], + "scope": 7239, + "src": "26:699:37", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "0:726:37" + }, + "id": 37 + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol", + "exportedSymbols": { + "ENS": [ + 4567 + ], + "IReverseRegistrar": [ + 7238 + ], + "ReverseClaimer": [ + 7273 + ] + }, + "id": 7274, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7240, + "literals": [ + "solidity", + ">=", + "0.8", + ".17", + "<", + "0.9", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "31:32:38" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 7242, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7274, + "sourceUnit": 4568, + "src": "65:40:38", + "symbolAliases": [ + { + "foreign": { + "id": 7241, + "name": "ENS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4567, + "src": "73:3:38", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol", + "file": "../reverseRegistrar/IReverseRegistrar.sol", + "id": 7244, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7274, + "sourceUnit": 7239, + "src": "106:76:38", + "symbolAliases": [ + { + "foreign": { + "id": 7243, + "name": "IReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7238, + "src": "114:17:38", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "ReverseClaimer", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 7273, + "linearizedBaseContracts": [ + 7273 + ], + "name": "ReverseClaimer", + "nameLocation": "193:14:38", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 7247, + "mutability": "constant", + "name": "ADDR_REVERSE_NODE", + "nameLocation": "231:17:38", + "nodeType": "VariableDeclaration", + "scope": 7273, + "src": "214:111:38", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7245, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "214:7:38", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307839316431373737373831383834643033613637353761383033393936653338646532613432393637666233376565616361373237323932373130323561396532", + "id": 7246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "259:66:38", + "typeDescriptions": { + "typeIdentifier": "t_rational_65955458610802586644366824307633271870356699036341805474246458084352783133154_by_1", + "typeString": "int_const 6595...(69 digits omitted)...3154" + }, + "value": "0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2" + }, + "visibility": "internal" + }, + { + "body": { + "id": 7271, + "nodeType": "Block", + "src": "371:165:38", + "statements": [ + { + "assignments": [ + 7257 + ], + "declarations": [ + { + "constant": false, + "id": 7257, + "mutability": "mutable", + "name": "reverseRegistrar", + "nameLocation": "399:16:38", + "nodeType": "VariableDeclaration", + "scope": 7271, + "src": "381:34:38", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IReverseRegistrar_$7238", + "typeString": "contract IReverseRegistrar" + }, + "typeName": { + "id": 7256, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7255, + "name": "IReverseRegistrar", + "nameLocations": [ + "381:17:38" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7238, + "src": "381:17:38" + }, + "referencedDeclaration": 7238, + "src": "381:17:38", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IReverseRegistrar_$7238", + "typeString": "contract IReverseRegistrar" + } + }, + "visibility": "internal" + } + ], + "id": 7264, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 7261, + "name": "ADDR_REVERSE_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7247, + "src": "459:17:38", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 7259, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7250, + "src": "449:3:38", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 7260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "453:5:38", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "449:9:38", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 7262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "449:28:38", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7258, + "name": "IReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7238, + "src": "418:17:38", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IReverseRegistrar_$7238_$", + "typeString": "type(contract IReverseRegistrar)" + } + }, + "id": 7263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "418:69:38", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IReverseRegistrar_$7238", + "typeString": "contract IReverseRegistrar" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "381:106:38" + }, + { + "expression": { + "arguments": [ + { + "id": 7268, + "name": "claimant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7252, + "src": "520:8:38", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7265, + "name": "reverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7257, + "src": "497:16:38", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IReverseRegistrar_$7238", + "typeString": "contract IReverseRegistrar" + } + }, + "id": 7267, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "514:5:38", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 7190, + "src": "497:22:38", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address) external returns (bytes32)" + } + }, + "id": 7269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "497:32:38", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 7270, + "nodeType": "ExpressionStatement", + "src": "497:32:38" + } + ] + }, + "id": 7272, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7253, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7250, + "mutability": "mutable", + "name": "ens", + "nameLocation": "348:3:38", + "nodeType": "VariableDeclaration", + "scope": 7272, + "src": "344:7:38", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 7249, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7248, + "name": "ENS", + "nameLocations": [ + "344:3:38" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "344:3:38" + }, + "referencedDeclaration": 4567, + "src": "344:3:38", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7252, + "mutability": "mutable", + "name": "claimant", + "nameLocation": "361:8:38", + "nodeType": "VariableDeclaration", + "scope": 7272, + "src": "353:16:38", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7251, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "353:7:38", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "343:27:38" + }, + "returnParameters": { + "id": 7254, + "nodeType": "ParameterList", + "parameters": [], + "src": "371:0:38" + }, + "scope": 7273, + "src": "332:204:38", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "scope": 7274, + "src": "184:354:38", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:508:38" + }, + "id": 38 + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "exportedSymbols": { + "ADDR_REVERSE_NODE": [ + 7293 + ], + "Context": [ + 14871 + ], + "Controllable": [ + 7673 + ], + "ENS": [ + 4567 + ], + "IReverseRegistrar": [ + 7238 + ], + "NameResolver": [ + 7287 + ], + "Ownable": [ + 13167 + ], + "ReverseRegistrar": [ + 7624 + ], + "lookup": [ + 7290 + ] + }, + "id": 7625, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7275, + "literals": [ + "solidity", + ">=", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:24:39" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 7276, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7625, + "sourceUnit": 4568, + "src": "26:29:39", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol", + "file": "./IReverseRegistrar.sol", + "id": 7277, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7625, + "sourceUnit": 7239, + "src": "56:33:39", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 7278, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7625, + "sourceUnit": 13168, + "src": "90:52:39", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/root/Controllable.sol", + "file": "../root/Controllable.sol", + "id": 7279, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7625, + "sourceUnit": 7674, + "src": "143:34:39", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [], + "canonicalName": "NameResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 7287, + "linearizedBaseContracts": [ + 7287 + ], + "name": "NameResolver", + "nameLocation": "197:12:39", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "77372213", + "id": 7286, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setName", + "nameLocation": "225:7:39", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7284, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7281, + "mutability": "mutable", + "name": "node", + "nameLocation": "241:4:39", + "nodeType": "VariableDeclaration", + "scope": 7286, + "src": "233:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7280, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "233:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7283, + "mutability": "mutable", + "name": "name", + "nameLocation": "261:4:39", + "nodeType": "VariableDeclaration", + "scope": 7286, + "src": "247:18:39", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "247:6:39", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "232:34:39" + }, + "returnParameters": { + "id": 7285, + "nodeType": "ParameterList", + "parameters": [], + "src": "281:0:39" + }, + "scope": 7287, + "src": "216:66:39", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + } + ], + "scope": 7625, + "src": "179:105:39", + "usedErrors": [], + "usedEvents": [] + }, + { + "constant": true, + "id": 7290, + "mutability": "constant", + "name": "lookup", + "nameLocation": "303:6:39", + "nodeType": "VariableDeclaration", + "scope": 7625, + "src": "286:92:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7288, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "286:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307833303331333233333334333533363337333833393631363236333634363536363030303030303030303030303030303030303030303030303030303030303030", + "id": 7289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "312:66:39", + "typeDescriptions": { + "typeIdentifier": "t_rational_21797938705943676250364219608352299876616432895080889470814659460585888940032_by_1", + "typeString": "int_const 2179...(69 digits omitted)...0032" + }, + "value": "0x3031323334353637383961626364656600000000000000000000000000000000" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 7293, + "mutability": "constant", + "name": "ADDR_REVERSE_NODE", + "nameLocation": "398:17:39", + "nodeType": "VariableDeclaration", + "scope": 7625, + "src": "381:103:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7291, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "381:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307839316431373737373831383834643033613637353761383033393936653338646532613432393637666233376565616361373237323932373130323561396532", + "id": 7292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "418:66:39", + "typeDescriptions": { + "typeIdentifier": "t_rational_65955458610802586644366824307633271870356699036341805474246458084352783133154_by_1", + "typeString": "int_const 6595...(69 digits omitted)...3154" + }, + "value": "0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2" + }, + "visibility": "internal" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 7294, + "name": "Ownable", + "nameLocations": [ + "545:7:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "545:7:39" + }, + "id": 7295, + "nodeType": "InheritanceSpecifier", + "src": "545:7:39" + }, + { + "baseName": { + "id": 7296, + "name": "Controllable", + "nameLocations": [ + "554:12:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7673, + "src": "554:12:39" + }, + "id": 7297, + "nodeType": "InheritanceSpecifier", + "src": "554:12:39" + }, + { + "baseName": { + "id": 7298, + "name": "IReverseRegistrar", + "nameLocations": [ + "568:17:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7238, + "src": "568:17:39" + }, + "id": 7299, + "nodeType": "InheritanceSpecifier", + "src": "568:17:39" + } + ], + "canonicalName": "ReverseRegistrar", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 7624, + "linearizedBaseContracts": [ + 7624, + 7238, + 7673, + 13167, + 14871 + ], + "name": "ReverseRegistrar", + "nameLocation": "525:16:39", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "3f15457f", + "id": 7302, + "mutability": "immutable", + "name": "ens", + "nameLocation": "613:3:39", + "nodeType": "VariableDeclaration", + "scope": 7624, + "src": "592:24:39", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 7301, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7300, + "name": "ENS", + "nameLocations": [ + "592:3:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "592:3:39" + }, + "referencedDeclaration": 4567, + "src": "592:3:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "828eab0e", + "id": 7305, + "mutability": "mutable", + "name": "defaultResolver", + "nameLocation": "642:15:39", + "nodeType": "VariableDeclaration", + "scope": 7624, + "src": "622:35:39", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + }, + "typeName": { + "id": 7304, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7303, + "name": "NameResolver", + "nameLocations": [ + "622:12:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7287, + "src": "622:12:39" + }, + "referencedDeclaration": 7287, + "src": "622:12:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "visibility": "public" + }, + { + "anonymous": false, + "eventSelector": "6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92", + "id": 7311, + "name": "ReverseClaimed", + "nameLocation": "670:14:39", + "nodeType": "EventDefinition", + "parameters": { + "id": 7310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7307, + "indexed": true, + "mutability": "mutable", + "name": "addr", + "nameLocation": "701:4:39", + "nodeType": "VariableDeclaration", + "scope": 7311, + "src": "685:20:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7306, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "685:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7309, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "723:4:39", + "nodeType": "VariableDeclaration", + "scope": 7311, + "src": "707:20:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7308, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "707:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "684:44:39" + }, + "src": "664:65:39" + }, + { + "anonymous": false, + "eventSelector": "eae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf", + "id": 7316, + "name": "DefaultResolverChanged", + "nameLocation": "740:22:39", + "nodeType": "EventDefinition", + "parameters": { + "id": 7315, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7314, + "indexed": true, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "784:8:39", + "nodeType": "VariableDeclaration", + "scope": 7316, + "src": "763:29:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + }, + "typeName": { + "id": 7313, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7312, + "name": "NameResolver", + "nameLocations": [ + "763:12:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7287, + "src": "763:12:39" + }, + "referencedDeclaration": 7287, + "src": "763:12:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "visibility": "internal" + } + ], + "src": "762:31:39" + }, + "src": "734:60:39" + }, + { + "body": { + "id": 7355, + "nodeType": "Block", + "src": "920:318:39", + "statements": [ + { + "expression": { + "id": 7325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7323, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7302, + "src": "930:3:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 7324, + "name": "ensAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7320, + "src": "936:7:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "src": "930:13:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 7326, + "nodeType": "ExpressionStatement", + "src": "930:13:39" + }, + { + "assignments": [ + 7329 + ], + "declarations": [ + { + "constant": false, + "id": 7329, + "mutability": "mutable", + "name": "oldRegistrar", + "nameLocation": "1037:12:39", + "nodeType": "VariableDeclaration", + "scope": 7355, + "src": "1020:29:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + }, + "typeName": { + "id": 7328, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7327, + "name": "ReverseRegistrar", + "nameLocations": [ + "1020:16:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7624, + "src": "1020:16:39" + }, + "referencedDeclaration": 7624, + "src": "1020:16:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + } + }, + "visibility": "internal" + } + ], + "id": 7336, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 7333, + "name": "ADDR_REVERSE_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7293, + "src": "1096:17:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 7331, + "name": "ensAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7320, + "src": "1082:7:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 7332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1090:5:39", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "1082:13:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 7334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1082:32:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7330, + "name": "ReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7624, + "src": "1052:16:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ReverseRegistrar_$7624_$", + "typeString": "type(contract ReverseRegistrar)" + } + }, + "id": 7335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1052:72:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1020:104:39" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 7345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 7339, + "name": "oldRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7329, + "src": "1146:12:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + } + ], + "id": 7338, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1138:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7337, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1138:7:39", + "typeDescriptions": {} + } + }, + "id": 7340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1138:21:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "307830", + "id": 7343, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1171:3:39", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 7342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1163:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7341, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1163:7:39", + "typeDescriptions": {} + } + }, + "id": 7344, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1163:12:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1138:37:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7354, + "nodeType": "IfStatement", + "src": "1134:98:39", + "trueBody": { + "id": 7353, + "nodeType": "Block", + "src": "1177:55:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 7349, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1210:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1214:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1210:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7346, + "name": "oldRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7329, + "src": "1191:12:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ReverseRegistrar_$7624", + "typeString": "contract ReverseRegistrar" + } + }, + "id": 7348, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1204:5:39", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 7440, + "src": "1191:18:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address) external returns (bytes32)" + } + }, + "id": 7351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1191:30:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 7352, + "nodeType": "ExpressionStatement", + "src": "1191:30:39" + } + ] + } + } + ] + }, + "documentation": { + "id": 7317, + "nodeType": "StructuredDocumentation", + "src": "800:90:39", + "text": " @dev Constructor\n @param ensAddr The address of the ENS registry." + }, + "id": 7356, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7321, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7320, + "mutability": "mutable", + "name": "ensAddr", + "nameLocation": "911:7:39", + "nodeType": "VariableDeclaration", + "scope": 7356, + "src": "907:11:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 7319, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 7318, + "name": "ENS", + "nameLocations": [ + "907:3:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "907:3:39" + }, + "referencedDeclaration": 4567, + "src": "907:3:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + } + ], + "src": "906:13:39" + }, + "returnParameters": { + "id": 7322, + "nodeType": "ParameterList", + "parameters": [], + "src": "920:0:39" + }, + "scope": 7624, + "src": "895:343:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 7385, + "nodeType": "Block", + "src": "1278:323:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 7380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 7376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 7369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 7364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7361, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7358, + "src": "1309:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 7362, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1317:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1321:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1317:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1309:18:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 7365, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7633, + "src": "1347:11:39", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 7368, + "indexExpression": { + "expression": { + "id": 7366, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1359:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1363:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1359:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1347:23:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1309:61:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 7372, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7358, + "src": "1411:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 7373, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1417:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1421:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1417:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7370, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7302, + "src": "1390:3:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 7371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1394:16:39", + "memberName": "isApprovedForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 4566, + "src": "1390:20:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view external returns (bool)" + } + }, + "id": 7375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1390:38:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1309:119:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 7378, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7358, + "src": "1461:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7377, + "name": "ownsContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7623, + "src": "1448:12:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 7379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1448:18:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1309:157:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "526576657273655265676973747261723a2043616c6c6572206973206e6f74206120636f6e74726f6c6c6572206f7220617574686f72697365642062792061646472657373206f7220746865206164647265737320697473656c66", + "id": 7381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1480:93:39", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d", + "typeString": "literal_string \"ReverseRegistrar: Caller is not a controller or authorised by address or the address itself\"" + }, + "value": "ReverseRegistrar: Caller is not a controller or authorised by address or the address itself" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d", + "typeString": "literal_string \"ReverseRegistrar: Caller is not a controller or authorised by address or the address itself\"" + } + ], + "id": 7360, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1288:7:39", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1288:295:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7383, + "nodeType": "ExpressionStatement", + "src": "1288:295:39" + }, + { + "id": 7384, + "nodeType": "PlaceholderStatement", + "src": "1593:1:39" + } + ] + }, + "id": 7386, + "name": "authorised", + "nameLocation": "1253:10:39", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 7359, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7358, + "mutability": "mutable", + "name": "addr", + "nameLocation": "1272:4:39", + "nodeType": "VariableDeclaration", + "scope": 7386, + "src": "1264:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7357, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1264:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1263:14:39" + }, + "src": "1244:357:39", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 7183 + ], + "body": { + "id": 7419, + "nodeType": "Block", + "src": "1679:254:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 7403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 7397, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7388, + "src": "1718:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7396, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1710:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7395, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1710:7:39", + "typeDescriptions": {} + } + }, + "id": 7398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1710:17:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 7401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1739:1:39", + "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": 7400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1731:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7399, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1731:7:39", + "typeDescriptions": {} + } + }, + "id": 7402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1731:10:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1710:31:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "526576657273655265676973747261723a205265736f6c7665722061646472657373206d757374206e6f742062652030", + "id": 7404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1755:50:39", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa", + "typeString": "literal_string \"ReverseRegistrar: Resolver address must not be 0\"" + }, + "value": "ReverseRegistrar: Resolver address must not be 0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa", + "typeString": "literal_string \"ReverseRegistrar: Resolver address must not be 0\"" + } + ], + "id": 7394, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1689:7:39", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1689:126:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7406, + "nodeType": "ExpressionStatement", + "src": "1689:126:39" + }, + { + "expression": { + "id": 7411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7407, + "name": "defaultResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7305, + "src": "1825:15:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 7409, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7388, + "src": "1856:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7408, + "name": "NameResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7287, + "src": "1843:12:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NameResolver_$7287_$", + "typeString": "type(contract NameResolver)" + } + }, + "id": 7410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1843:22:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "src": "1825:40:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "id": 7412, + "nodeType": "ExpressionStatement", + "src": "1825:40:39" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "id": 7415, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7388, + "src": "1916:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7414, + "name": "NameResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7287, + "src": "1903:12:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NameResolver_$7287_$", + "typeString": "type(contract NameResolver)" + } + }, + "id": 7416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1903:22:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + ], + "id": 7413, + "name": "DefaultResolverChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7316, + "src": "1880:22:39", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_contract$_NameResolver_$7287_$returns$__$", + "typeString": "function (contract NameResolver)" + } + }, + "id": 7417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1880:46:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7418, + "nodeType": "EmitStatement", + "src": "1875:51:39" + } + ] + }, + "functionSelector": "c66485b2", + "id": 7420, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 7392, + "kind": "modifierInvocation", + "modifierName": { + "id": 7391, + "name": "onlyOwner", + "nameLocations": [ + "1669:9:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "1669:9:39" + }, + "nodeType": "ModifierInvocation", + "src": "1669:9:39" + } + ], + "name": "setDefaultResolver", + "nameLocation": "1616:18:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7390, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1660:8:39" + }, + "parameters": { + "id": 7389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7388, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "1643:8:39", + "nodeType": "VariableDeclaration", + "scope": 7420, + "src": "1635:16:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7387, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1635:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1634:18:39" + }, + "returnParameters": { + "id": 7393, + "nodeType": "ParameterList", + "parameters": [], + "src": "1679:0:39" + }, + "scope": 7624, + "src": "1607:326:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7190 + ], + "body": { + "id": 7439, + "nodeType": "Block", + "src": "2264:81:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 7430, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2294:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2298:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2294:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7432, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7423, + "src": "2306:5:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 7435, + "name": "defaultResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7305, + "src": "2321:15:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + ], + "id": 7434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2313:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7433, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2313:7:39", + "typeDescriptions": {} + } + }, + "id": 7436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2313:24:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7429, + "name": "claimForAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7490, + "src": "2281:12:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address,address,address) returns (bytes32)" + } + }, + "id": 7437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2281:57:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7428, + "id": 7438, + "nodeType": "Return", + "src": "2274:64:39" + } + ] + }, + "documentation": { + "id": 7421, + "nodeType": "StructuredDocumentation", + "src": "1939:256:39", + "text": " @dev Transfers ownership of the reverse ENS record associated with the\n calling account.\n @param owner The address to set as the owner of the reverse record in ENS.\n @return The ENS node hash of the reverse record." + }, + "functionSelector": "1e83409a", + "id": 7440, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "claim", + "nameLocation": "2209:5:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7425, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2237:8:39" + }, + "parameters": { + "id": 7424, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7423, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2223:5:39", + "nodeType": "VariableDeclaration", + "scope": 7440, + "src": "2215:13:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7422, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2215:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2214:15:39" + }, + "returnParameters": { + "id": 7428, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7427, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7440, + "src": "2255:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7426, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2255:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2254:9:39" + }, + "scope": 7624, + "src": "2200:145:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7201 + ], + "body": { + "id": 7489, + "nodeType": "Block", + "src": "2863:324:39", + "statements": [ + { + "assignments": [ + 7457 + ], + "declarations": [ + { + "constant": false, + "id": 7457, + "mutability": "mutable", + "name": "labelHash", + "nameLocation": "2881:9:39", + "nodeType": "VariableDeclaration", + "scope": 7489, + "src": "2873:17:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7456, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2873:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 7461, + "initialValue": { + "arguments": [ + { + "id": 7459, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7443, + "src": "2908:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7458, + "name": "sha3HexAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7595, + "src": "2893:14:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address) pure returns (bytes32)" + } + }, + "id": 7460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2893:20:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2873:40:39" + }, + { + "assignments": [ + 7463 + ], + "declarations": [ + { + "constant": false, + "id": 7463, + "mutability": "mutable", + "name": "reverseNode", + "nameLocation": "2931:11:39", + "nodeType": "VariableDeclaration", + "scope": 7489, + "src": "2923:19:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7462, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2923:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 7471, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 7467, + "name": "ADDR_REVERSE_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7293, + "src": "2985:17:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7468, + "name": "labelHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7457, + "src": "3004:9:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 7465, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2968:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2972:12:39", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2968:16:39", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 7469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2968:46:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7464, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2945:9:39", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 7470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2945:79:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2923:101:39" + }, + { + "eventCall": { + "arguments": [ + { + "id": 7473, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7443, + "src": "3054:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7474, + "name": "reverseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7463, + "src": "3060:11:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 7472, + "name": "ReverseClaimed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7311, + "src": "3039:14:39", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32)" + } + }, + "id": 7475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3039:33:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7476, + "nodeType": "EmitStatement", + "src": "3034:38:39" + }, + { + "expression": { + "arguments": [ + { + "id": 7480, + "name": "ADDR_REVERSE_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7293, + "src": "3103:17:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7481, + "name": "labelHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7457, + "src": "3122:9:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7482, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7445, + "src": "3133:5:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7483, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7447, + "src": "3140:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "30", + "id": 7484, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3150:1:39", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "expression": { + "id": 7477, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7302, + "src": "3082:3:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 7479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3086:16:39", + "memberName": "setSubnodeRecord", + "nodeType": "MemberAccess", + "referencedDeclaration": 4490, + "src": "3082:20:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,address,address,uint64) external" + } + }, + "id": 7485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3082:70:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7486, + "nodeType": "ExpressionStatement", + "src": "3082:70:39" + }, + { + "expression": { + "id": 7487, + "name": "reverseNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7463, + "src": "3169:11:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7455, + "id": 7488, + "nodeType": "Return", + "src": "3162:18:39" + } + ] + }, + "documentation": { + "id": 7441, + "nodeType": "StructuredDocumentation", + "src": "2351:357:39", + "text": " @dev Transfers ownership of the reverse ENS record associated with the\n calling account.\n @param addr The reverse record to set\n @param owner The address to set as the owner of the reverse record in ENS.\n @param resolver The resolver of the reverse node\n @return The ENS node hash of the reverse record." + }, + "functionSelector": "65669631", + "id": 7490, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 7451, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7443, + "src": "2839:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 7452, + "kind": "modifierInvocation", + "modifierName": { + "id": 7450, + "name": "authorised", + "nameLocations": [ + "2828:10:39" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7386, + "src": "2828:10:39" + }, + "nodeType": "ModifierInvocation", + "src": "2828:16:39" + } + ], + "name": "claimForAddr", + "nameLocation": "2722:12:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7449, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2819:8:39" + }, + "parameters": { + "id": 7448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7443, + "mutability": "mutable", + "name": "addr", + "nameLocation": "2752:4:39", + "nodeType": "VariableDeclaration", + "scope": 7490, + "src": "2744:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7442, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2744:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7445, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2774:5:39", + "nodeType": "VariableDeclaration", + "scope": 7490, + "src": "2766:13:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7444, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2766:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7447, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "2797:8:39", + "nodeType": "VariableDeclaration", + "scope": 7490, + "src": "2789:16:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7446, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2789:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2734:77:39" + }, + "returnParameters": { + "id": 7455, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7454, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7490, + "src": "2854:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7453, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2854:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2853:9:39" + }, + "scope": 7624, + "src": "2713:474:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7210 + ], + "body": { + "id": 7508, + "nodeType": "Block", + "src": "3651:65:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 7502, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3681:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3685:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3681:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7504, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7493, + "src": "3693:5:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7505, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7495, + "src": "3700:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7501, + "name": "claimForAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7490, + "src": "3668:12:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address,address,address) returns (bytes32)" + } + }, + "id": 7506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3668:41:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7500, + "id": 7507, + "nodeType": "Return", + "src": "3661:48:39" + } + ] + }, + "documentation": { + "id": 7491, + "nodeType": "StructuredDocumentation", + "src": "3193:337:39", + "text": " @dev Transfers ownership of the reverse ENS record associated with the\n calling account.\n @param owner The address to set as the owner of the reverse record in ENS.\n @param resolver The address of the resolver to set; 0 to leave unchanged.\n @return The ENS node hash of the reverse record." + }, + "functionSelector": "0f5a5466", + "id": 7509, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "claimWithResolver", + "nameLocation": "3544:17:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7497, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3624:8:39" + }, + "parameters": { + "id": 7496, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7493, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3579:5:39", + "nodeType": "VariableDeclaration", + "scope": 7509, + "src": "3571:13:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7492, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3571:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7495, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3602:8:39", + "nodeType": "VariableDeclaration", + "scope": 7509, + "src": "3594:16:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3594:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3561:55:39" + }, + "returnParameters": { + "id": 7500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7499, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7509, + "src": "3642:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7498, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3642:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3641:9:39" + }, + "scope": 7624, + "src": "3535:181:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7217 + ], + "body": { + "id": 7530, + "nodeType": "Block", + "src": "4106:184:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 7519, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4167:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4171:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4167:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 7521, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4195:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4199:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4195:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 7525, + "name": "defaultResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7305, + "src": "4231:15:39", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + ], + "id": 7524, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4223:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 7523, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4223:7:39", + "typeDescriptions": {} + } + }, + "id": 7526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4223:24:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7527, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7512, + "src": "4265:4:39", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 7518, + "name": "setNameForAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7565, + "src": "4135:14:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$_t_string_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (address,address,address,string memory) returns (bytes32)" + } + }, + "id": 7528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4135:148:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7517, + "id": 7529, + "nodeType": "Return", + "src": "4116:167:39" + } + ] + }, + "documentation": { + "id": 7510, + "nodeType": "StructuredDocumentation", + "src": "3722:308:39", + "text": " @dev Sets the `name()` record for the reverse ENS record associated with\n the calling account. First updates the resolver to the default reverse\n resolver if necessary.\n @param name The name to set for this address.\n @return The ENS node hash of the reverse record." + }, + "functionSelector": "c47f0027", + "id": 7531, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setName", + "nameLocation": "4044:7:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7514, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4079:8:39" + }, + "parameters": { + "id": 7513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7512, + "mutability": "mutable", + "name": "name", + "nameLocation": "4066:4:39", + "nodeType": "VariableDeclaration", + "scope": 7531, + "src": "4052:18:39", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7511, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4052:6:39", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4051:20:39" + }, + "returnParameters": { + "id": 7517, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7516, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7531, + "src": "4097:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7515, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4097:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4096:9:39" + }, + "scope": 7624, + "src": "4035:255:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7230 + ], + "body": { + "id": 7564, + "nodeType": "Block", + "src": "4947:140:39", + "statements": [ + { + "assignments": [ + 7547 + ], + "declarations": [ + { + "constant": false, + "id": 7547, + "mutability": "mutable", + "name": "node", + "nameLocation": "4965:4:39", + "nodeType": "VariableDeclaration", + "scope": 7564, + "src": "4957:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7546, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4957:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 7553, + "initialValue": { + "arguments": [ + { + "id": 7549, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7534, + "src": "4985:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7550, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7536, + "src": "4991:5:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7551, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7538, + "src": "4998:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7548, + "name": "claimForAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7490, + "src": "4972:12:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address,address,address) returns (bytes32)" + } + }, + "id": 7552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4972:35:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4957:50:39" + }, + { + "expression": { + "arguments": [ + { + "id": 7558, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7547, + "src": "5048:4:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7559, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7540, + "src": "5054:4:39", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "arguments": [ + { + "id": 7555, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7538, + "src": "5030:8:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7554, + "name": "NameResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7287, + "src": "5017:12:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NameResolver_$7287_$", + "typeString": "type(contract NameResolver)" + } + }, + "id": 7556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5017:22:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameResolver_$7287", + "typeString": "contract NameResolver" + } + }, + "id": 7557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5040:7:39", + "memberName": "setName", + "nodeType": "MemberAccess", + "referencedDeclaration": 7286, + "src": "5017:30:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes32,string memory) external" + } + }, + "id": 7560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5017:42:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7561, + "nodeType": "ExpressionStatement", + "src": "5017:42:39" + }, + { + "expression": { + "id": 7562, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7547, + "src": "5076:4:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7545, + "id": 7563, + "nodeType": "Return", + "src": "5069:11:39" + } + ] + }, + "documentation": { + "id": 7532, + "nodeType": "StructuredDocumentation", + "src": "4296:483:39", + "text": " @dev Sets the `name()` record for the reverse ENS record associated with\n the account provided. Updates the resolver to a designated resolver\n Only callable by controllers and authorised users\n @param addr The reverse record to set\n @param owner The owner of the reverse node\n @param resolver The resolver of the reverse node\n @param name The name to set for this address.\n @return The ENS node hash of the reverse record." + }, + "functionSelector": "7a806d6b", + "id": 7565, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setNameForAddr", + "nameLocation": "4793:14:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7542, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4920:8:39" + }, + "parameters": { + "id": 7541, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7534, + "mutability": "mutable", + "name": "addr", + "nameLocation": "4825:4:39", + "nodeType": "VariableDeclaration", + "scope": 7565, + "src": "4817:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4817:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7536, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4847:5:39", + "nodeType": "VariableDeclaration", + "scope": 7565, + "src": "4839:13:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7535, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4839:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7538, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "4870:8:39", + "nodeType": "VariableDeclaration", + "scope": 7565, + "src": "4862:16:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7537, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4862:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7540, + "mutability": "mutable", + "name": "name", + "nameLocation": "4902:4:39", + "nodeType": "VariableDeclaration", + "scope": 7565, + "src": "4888:18:39", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7539, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4888:6:39", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4807:105:39" + }, + "returnParameters": { + "id": 7545, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7544, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7565, + "src": "4938:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7543, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4938:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4937:9:39" + }, + "scope": 7624, + "src": "4784:303:39", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 7237 + ], + "body": { + "id": 7584, + "nodeType": "Block", + "src": "5322:134:39", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 7577, + "name": "ADDR_REVERSE_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7293, + "src": "5395:17:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 7579, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7568, + "src": "5429:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7578, + "name": "sha3HexAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7595, + "src": "5414:14:39", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes32_$", + "typeString": "function (address) pure returns (bytes32)" + } + }, + "id": 7580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5414:20:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 7575, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5378:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5382:12:39", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "5378:16:39", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 7581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5378:57:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7574, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "5351:9:39", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 7582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5351:98:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7573, + "id": 7583, + "nodeType": "Return", + "src": "5332:117:39" + } + ] + }, + "documentation": { + "id": 7566, + "nodeType": "StructuredDocumentation", + "src": "5093:157:39", + "text": " @dev Returns the node hash for a given account's reverse records.\n @param addr The address to hash\n @return The ENS node hash." + }, + "functionSelector": "bffbe61c", + "id": 7585, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "node", + "nameLocation": "5264:4:39", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 7570, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5295:8:39" + }, + "parameters": { + "id": 7569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7568, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5277:4:39", + "nodeType": "VariableDeclaration", + "scope": 7585, + "src": "5269:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7567, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5269:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5268:14:39" + }, + "returnParameters": { + "id": 7573, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7572, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7585, + "src": "5313:7:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7571, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5313:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5312:9:39" + }, + "scope": 7624, + "src": "5255:201:39", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 7594, + "nodeType": "Block", + "src": "5834:431:39", + "statements": [ + { + "AST": { + "nativeSrc": "5853:406:39", + "nodeType": "YulBlock", + "src": "5853:406:39", + "statements": [ + { + "body": { + "nativeSrc": "5941:271:39", + "nodeType": "YulBlock", + "src": "5941:271:39", + "statements": [ + { + "nativeSrc": "5959:14:39", + "nodeType": "YulAssignment", + "src": "5959:14:39", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "5968:1:39", + "nodeType": "YulIdentifier", + "src": "5968:1:39" + }, + { + "kind": "number", + "nativeSrc": "5971:1:39", + "nodeType": "YulLiteral", + "src": "5971:1:39", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5964:3:39", + "nodeType": "YulIdentifier", + "src": "5964:3:39" + }, + "nativeSrc": "5964:9:39", + "nodeType": "YulFunctionCall", + "src": "5964:9:39" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "5959:1:39", + "nodeType": "YulIdentifier", + "src": "5959:1:39" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "i", + "nativeSrc": "5998:1:39", + "nodeType": "YulIdentifier", + "src": "5998:1:39" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "addr", + "nativeSrc": "6010:4:39", + "nodeType": "YulIdentifier", + "src": "6010:4:39" + }, + { + "kind": "number", + "nativeSrc": "6016:3:39", + "nodeType": "YulLiteral", + "src": "6016:3:39", + "type": "", + "value": "0xf" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6006:3:39", + "nodeType": "YulIdentifier", + "src": "6006:3:39" + }, + "nativeSrc": "6006:14:39", + "nodeType": "YulFunctionCall", + "src": "6006:14:39" + }, + { + "name": "lookup", + "nativeSrc": "6022:6:39", + "nodeType": "YulIdentifier", + "src": "6022:6:39" + } + ], + "functionName": { + "name": "byte", + "nativeSrc": "6001:4:39", + "nodeType": "YulIdentifier", + "src": "6001:4:39" + }, + "nativeSrc": "6001:28:39", + "nodeType": "YulFunctionCall", + "src": "6001:28:39" + } + ], + "functionName": { + "name": "mstore8", + "nativeSrc": "5990:7:39", + "nodeType": "YulIdentifier", + "src": "5990:7:39" + }, + "nativeSrc": "5990:40:39", + "nodeType": "YulFunctionCall", + "src": "5990:40:39" + }, + "nativeSrc": "5990:40:39", + "nodeType": "YulExpressionStatement", + "src": "5990:40:39" + }, + { + "nativeSrc": "6047:23:39", + "nodeType": "YulAssignment", + "src": "6047:23:39", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "6059:4:39", + "nodeType": "YulIdentifier", + "src": "6059:4:39" + }, + { + "kind": "number", + "nativeSrc": "6065:4:39", + "nodeType": "YulLiteral", + "src": "6065:4:39", + "type": "", + "value": "0x10" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "6055:3:39", + "nodeType": "YulIdentifier", + "src": "6055:3:39" + }, + "nativeSrc": "6055:15:39", + "nodeType": "YulFunctionCall", + "src": "6055:15:39" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "6047:4:39", + "nodeType": "YulIdentifier", + "src": "6047:4:39" + } + ] + }, + { + "nativeSrc": "6087:14:39", + "nodeType": "YulAssignment", + "src": "6087:14:39", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "6096:1:39", + "nodeType": "YulIdentifier", + "src": "6096:1:39" + }, + { + "kind": "number", + "nativeSrc": "6099:1:39", + "nodeType": "YulLiteral", + "src": "6099:1:39", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6092:3:39", + "nodeType": "YulIdentifier", + "src": "6092:3:39" + }, + "nativeSrc": "6092:9:39", + "nodeType": "YulFunctionCall", + "src": "6092:9:39" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "6087:1:39", + "nodeType": "YulIdentifier", + "src": "6087:1:39" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "i", + "nativeSrc": "6126:1:39", + "nodeType": "YulIdentifier", + "src": "6126:1:39" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "addr", + "nativeSrc": "6138:4:39", + "nodeType": "YulIdentifier", + "src": "6138:4:39" + }, + { + "kind": "number", + "nativeSrc": "6144:3:39", + "nodeType": "YulLiteral", + "src": "6144:3:39", + "type": "", + "value": "0xf" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6134:3:39", + "nodeType": "YulIdentifier", + "src": "6134:3:39" + }, + "nativeSrc": "6134:14:39", + "nodeType": "YulFunctionCall", + "src": "6134:14:39" + }, + { + "name": "lookup", + "nativeSrc": "6150:6:39", + "nodeType": "YulIdentifier", + "src": "6150:6:39" + } + ], + "functionName": { + "name": "byte", + "nativeSrc": "6129:4:39", + "nodeType": "YulIdentifier", + "src": "6129:4:39" + }, + "nativeSrc": "6129:28:39", + "nodeType": "YulFunctionCall", + "src": "6129:28:39" + } + ], + "functionName": { + "name": "mstore8", + "nativeSrc": "6118:7:39", + "nodeType": "YulIdentifier", + "src": "6118:7:39" + }, + "nativeSrc": "6118:40:39", + "nodeType": "YulFunctionCall", + "src": "6118:40:39" + }, + "nativeSrc": "6118:40:39", + "nodeType": "YulExpressionStatement", + "src": "6118:40:39" + }, + { + "nativeSrc": "6175:23:39", + "nodeType": "YulAssignment", + "src": "6175:23:39", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "6187:4:39", + "nodeType": "YulIdentifier", + "src": "6187:4:39" + }, + { + "kind": "number", + "nativeSrc": "6193:4:39", + "nodeType": "YulLiteral", + "src": "6193:4:39", + "type": "", + "value": "0x10" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "6183:3:39", + "nodeType": "YulIdentifier", + "src": "6183:3:39" + }, + "nativeSrc": "6183:15:39", + "nodeType": "YulFunctionCall", + "src": "6183:15:39" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "6175:4:39", + "nodeType": "YulIdentifier", + "src": "6175:4:39" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "5918:1:39", + "nodeType": "YulIdentifier", + "src": "5918:1:39" + }, + { + "kind": "number", + "nativeSrc": "5921:1:39", + "nodeType": "YulLiteral", + "src": "5921:1:39", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5915:2:39", + "nodeType": "YulIdentifier", + "src": "5915:2:39" + }, + "nativeSrc": "5915:8:39", + "nodeType": "YulFunctionCall", + "src": "5915:8:39" + }, + "nativeSrc": "5867:345:39", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "5924:16:39", + "nodeType": "YulBlock", + "src": "5924:16:39", + "statements": [] + }, + "pre": { + "nativeSrc": "5871:43:39", + "nodeType": "YulBlock", + "src": "5871:43:39", + "statements": [ + { + "nativeSrc": "5889:11:39", + "nodeType": "YulVariableDeclaration", + "src": "5889:11:39", + "value": { + "kind": "number", + "nativeSrc": "5898:2:39", + "nodeType": "YulLiteral", + "src": "5898:2:39", + "type": "", + "value": "40" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "5893:1:39", + "nodeType": "YulTypedName", + "src": "5893:1:39", + "type": "" + } + ] + } + ] + }, + "src": "5867:345:39" + }, + { + "nativeSrc": "6226:23:39", + "nodeType": "YulAssignment", + "src": "6226:23:39", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6243:1:39", + "nodeType": "YulLiteral", + "src": "6243:1:39", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6246:2:39", + "nodeType": "YulLiteral", + "src": "6246:2:39", + "type": "", + "value": "40" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "6233:9:39", + "nodeType": "YulIdentifier", + "src": "6233:9:39" + }, + "nativeSrc": "6233:16:39", + "nodeType": "YulFunctionCall", + "src": "6233:16:39" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "6226:3:39", + "nodeType": "YulIdentifier", + "src": "6226:3:39" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6010:4:39", + "valueSize": 1 + }, + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6047:4:39", + "valueSize": 1 + }, + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6059:4:39", + "valueSize": 1 + }, + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6138:4:39", + "valueSize": 1 + }, + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6175:4:39", + "valueSize": 1 + }, + { + "declaration": 7588, + "isOffset": false, + "isSlot": false, + "src": "6187:4:39", + "valueSize": 1 + }, + { + "declaration": 7290, + "isOffset": false, + "isSlot": false, + "src": "6022:6:39", + "valueSize": 1 + }, + { + "declaration": 7290, + "isOffset": false, + "isSlot": false, + "src": "6150:6:39", + "valueSize": 1 + }, + { + "declaration": 7591, + "isOffset": false, + "isSlot": false, + "src": "6226:3:39", + "valueSize": 1 + } + ], + "id": 7593, + "nodeType": "InlineAssembly", + "src": "5844:415:39" + } + ] + }, + "documentation": { + "id": 7586, + "nodeType": "StructuredDocumentation", + "src": "5462:294:39", + "text": " @dev An optimised function to compute the sha3 of the lower-case\n hexadecimal representation of an Ethereum address.\n @param addr The address to hash\n @return ret The SHA3 hash of the lower-case hexadecimal encoding of the\n input address." + }, + "id": 7595, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sha3HexAddress", + "nameLocation": "5770:14:39", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7589, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7588, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5793:4:39", + "nodeType": "VariableDeclaration", + "scope": 7595, + "src": "5785:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5785:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5784:14:39" + }, + "returnParameters": { + "id": 7592, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7591, + "mutability": "mutable", + "name": "ret", + "nameLocation": "5829:3:39", + "nodeType": "VariableDeclaration", + "scope": 7595, + "src": "5821:11:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7590, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5821:7:39", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5820:13:39" + }, + "scope": 7624, + "src": "5761:504:39", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 7622, + "nodeType": "Block", + "src": "6336:161:39", + "statements": [ + { + "clauses": [ + { + "block": { + "id": 7615, + "nodeType": "Block", + "src": "6396:51:39", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 7613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7610, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7608, + "src": "6417:5:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 7611, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6426:3:39", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6430:6:39", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6426:10:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6417:19:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 7601, + "id": 7614, + "nodeType": "Return", + "src": "6410:26:39" + } + ] + }, + "errorName": "", + "id": 7616, + "nodeType": "TryCatchClause", + "parameters": { + "id": 7609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7608, + "mutability": "mutable", + "name": "owner", + "nameLocation": "6389:5:39", + "nodeType": "VariableDeclaration", + "scope": 7616, + "src": "6381:13:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7607, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6381:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6380:15:39" + }, + "src": "6372:75:39" + }, + { + "block": { + "id": 7619, + "nodeType": "Block", + "src": "6454:37:39", + "statements": [ + { + "expression": { + "hexValue": "66616c7365", + "id": 7617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6475:5:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 7601, + "id": 7618, + "nodeType": "Return", + "src": "6468:12:39" + } + ] + }, + "errorName": "", + "id": 7620, + "nodeType": "TryCatchClause", + "src": "6448:43:39" + } + ], + "externalCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 7603, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7597, + "src": "6358:4:39", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 7602, + "name": "Ownable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13167, + "src": "6350:7:39", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Ownable_$13167_$", + "typeString": "type(contract Ownable)" + } + }, + "id": 7604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6350:13:39", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$13167", + "typeString": "contract Ownable" + } + }, + "id": 7605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6364:5:39", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 13095, + "src": "6350:19:39", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 7606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6350:21:39", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 7621, + "nodeType": "TryStatement", + "src": "6346:145:39" + } + ] + }, + "id": 7623, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ownsContract", + "nameLocation": "6280:12:39", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7598, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7597, + "mutability": "mutable", + "name": "addr", + "nameLocation": "6301:4:39", + "nodeType": "VariableDeclaration", + "scope": 7623, + "src": "6293:12:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7596, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6293:7:39", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6292:14:39" + }, + "returnParameters": { + "id": 7601, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7600, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7623, + "src": "6330:4:39", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7599, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6330:4:39", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6329:6:39" + }, + "scope": 7624, + "src": "6271:226:39", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 7625, + "src": "516:5983:39", + "usedErrors": [], + "usedEvents": [ + 7311, + 7316, + 7639, + 13068 + ] + } + ], + "src": "0:6500:39" + }, + "id": 39 + }, + "@ensdomains/ens-contracts/contracts/root/Controllable.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/root/Controllable.sol", + "exportedSymbols": { + "Context": [ + 14871 + ], + "Controllable": [ + 7673 + ], + "Ownable": [ + 13167 + ] + }, + "id": 7674, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7626, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:23:40" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 7627, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 7674, + "sourceUnit": 13168, + "src": "25:52:40", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 7628, + "name": "Ownable", + "nameLocations": [ + "104:7:40" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "104:7:40" + }, + "id": 7629, + "nodeType": "InheritanceSpecifier", + "src": "104:7:40" + } + ], + "canonicalName": "Controllable", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 7673, + "linearizedBaseContracts": [ + 7673, + 13167, + 14871 + ], + "name": "Controllable", + "nameLocation": "88:12:40", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "da8c229e", + "id": 7633, + "mutability": "mutable", + "name": "controllers", + "nameLocation": "150:11:40", + "nodeType": "VariableDeclaration", + "scope": 7673, + "src": "118:43:40", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 7632, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 7630, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "126:7:40", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "118:24:40", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 7631, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "137:4:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "anonymous": false, + "eventSelector": "4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87", + "id": 7639, + "name": "ControllerChanged", + "nameLocation": "174:17:40", + "nodeType": "EventDefinition", + "parameters": { + "id": 7638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7635, + "indexed": true, + "mutability": "mutable", + "name": "controller", + "nameLocation": "208:10:40", + "nodeType": "VariableDeclaration", + "scope": 7639, + "src": "192:26:40", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7634, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "192:7:40", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7637, + "indexed": false, + "mutability": "mutable", + "name": "enabled", + "nameLocation": "225:7:40", + "nodeType": "VariableDeclaration", + "scope": 7639, + "src": "220:12:40", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7636, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "220:4:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "191:42:40" + }, + "src": "168:66:40" + }, + { + "body": { + "id": 7650, + "nodeType": "Block", + "src": "266:138:40", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 7642, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7633, + "src": "297:11:40", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 7645, + "indexExpression": { + "expression": { + "id": 7643, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "309:3:40", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 7644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "313:6:40", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "309:10:40", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "297:23:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f6e74726f6c6c6572", + "id": 7646, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "334:42:40", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "typeString": "literal_string \"Controllable: Caller is not a controller\"" + }, + "value": "Controllable: Caller is not a controller" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "typeString": "literal_string \"Controllable: Caller is not a controller\"" + } + ], + "id": 7641, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "276:7:40", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "276:110:40", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7648, + "nodeType": "ExpressionStatement", + "src": "276:110:40" + }, + { + "id": 7649, + "nodeType": "PlaceholderStatement", + "src": "396:1:40" + } + ] + }, + "id": 7651, + "name": "onlyController", + "nameLocation": "249:14:40", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 7640, + "nodeType": "ParameterList", + "parameters": [], + "src": "263:2:40" + }, + "src": "240:164:40", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 7671, + "nodeType": "Block", + "src": "484:103:40", + "statements": [ + { + "expression": { + "id": 7664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 7660, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7633, + "src": "494:11:40", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 7662, + "indexExpression": { + "id": 7661, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7653, + "src": "506:10:40", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "494:23:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 7663, + "name": "enabled", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7655, + "src": "520:7:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "494:33:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7665, + "nodeType": "ExpressionStatement", + "src": "494:33:40" + }, + { + "eventCall": { + "arguments": [ + { + "id": 7667, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7653, + "src": "560:10:40", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7668, + "name": "enabled", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7655, + "src": "572:7:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 7666, + "name": "ControllerChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7639, + "src": "542:17:40", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 7669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "542:38:40", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7670, + "nodeType": "EmitStatement", + "src": "537:43:40" + } + ] + }, + "functionSelector": "e0dba60f", + "id": 7672, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 7658, + "kind": "modifierInvocation", + "modifierName": { + "id": 7657, + "name": "onlyOwner", + "nameLocations": [ + "474:9:40" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "474:9:40" + }, + "nodeType": "ModifierInvocation", + "src": "474:9:40" + } + ], + "name": "setController", + "nameLocation": "419:13:40", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7653, + "mutability": "mutable", + "name": "controller", + "nameLocation": "441:10:40", + "nodeType": "VariableDeclaration", + "scope": 7672, + "src": "433:18:40", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7652, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "433:7:40", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7655, + "mutability": "mutable", + "name": "enabled", + "nameLocation": "458:7:40", + "nodeType": "VariableDeclaration", + "scope": 7672, + "src": "453:12:40", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7654, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "453:4:40", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "432:34:40" + }, + "returnParameters": { + "id": 7659, + "nodeType": "ParameterList", + "parameters": [], + "src": "484:0:40" + }, + "scope": 7673, + "src": "410:177:40", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "scope": 7674, + "src": "79:510:40", + "usedErrors": [], + "usedEvents": [ + 7639, + 13068 + ] + } + ], + "src": "0:590:40" + }, + "id": 40 + }, + "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol", + "exportedSymbols": { + "BytesUtils": [ + 8609 + ] + }, + "id": 8610, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 7675, + "literals": [ + "solidity", + "^", + "0.8", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "31:23:41" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "BytesUtils", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "id": 8609, + "linearizedBaseContracts": [ + 8609 + ], + "name": "BytesUtils", + "nameLocation": "64:10:41", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "8a3c1cfb", + "id": 7681, + "name": "OffsetOutOfBoundsError", + "nameLocation": "87:22:41", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 7680, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7677, + "mutability": "mutable", + "name": "offset", + "nameLocation": "118:6:41", + "nodeType": "VariableDeclaration", + "scope": 7681, + "src": "110:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7676, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "110:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7679, + "mutability": "mutable", + "name": "length", + "nameLocation": "134:6:41", + "nodeType": "VariableDeclaration", + "scope": 7681, + "src": "126:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7678, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "126:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "109:32:41" + }, + "src": "81:61:41" + }, + { + "body": { + "id": 7702, + "nodeType": "Block", + "src": "539:144:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7693, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7685, + "src": "557:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7694, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7687, + "src": "566:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "557:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 7696, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7683, + "src": "573:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "578:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "573:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "557:27:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 7692, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "549:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 7699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "549:36:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7700, + "nodeType": "ExpressionStatement", + "src": "549:36:41" + }, + { + "AST": { + "nativeSrc": "604:73:41", + "nodeType": "YulBlock", + "src": "604:73:41", + "statements": [ + { + "nativeSrc": "618:49:41", + "nodeType": "YulAssignment", + "src": "618:49:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "643:4:41", + "nodeType": "YulIdentifier", + "src": "643:4:41" + }, + { + "kind": "number", + "nativeSrc": "649:2:41", + "nodeType": "YulLiteral", + "src": "649:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "639:3:41", + "nodeType": "YulIdentifier", + "src": "639:3:41" + }, + "nativeSrc": "639:13:41", + "nodeType": "YulFunctionCall", + "src": "639:13:41" + }, + { + "name": "offset", + "nativeSrc": "654:6:41", + "nodeType": "YulIdentifier", + "src": "654:6:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "635:3:41", + "nodeType": "YulIdentifier", + "src": "635:3:41" + }, + "nativeSrc": "635:26:41", + "nodeType": "YulFunctionCall", + "src": "635:26:41" + }, + { + "name": "len", + "nativeSrc": "663:3:41", + "nodeType": "YulIdentifier", + "src": "663:3:41" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "625:9:41", + "nodeType": "YulIdentifier", + "src": "625:9:41" + }, + "nativeSrc": "625:42:41", + "nodeType": "YulFunctionCall", + "src": "625:42:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "618:3:41", + "nodeType": "YulIdentifier", + "src": "618:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 7687, + "isOffset": false, + "isSlot": false, + "src": "663:3:41", + "valueSize": 1 + }, + { + "declaration": 7685, + "isOffset": false, + "isSlot": false, + "src": "654:6:41", + "valueSize": 1 + }, + { + "declaration": 7690, + "isOffset": false, + "isSlot": false, + "src": "618:3:41", + "valueSize": 1 + }, + { + "declaration": 7683, + "isOffset": false, + "isSlot": false, + "src": "643:4:41", + "valueSize": 1 + } + ], + "id": 7701, + "nodeType": "InlineAssembly", + "src": "595:82:41" + } + ] + }, + "id": 7703, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "keccak", + "nameLocation": "418:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7683, + "mutability": "mutable", + "name": "self", + "nameLocation": "447:4:41", + "nodeType": "VariableDeclaration", + "scope": 7703, + "src": "434:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7682, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "434:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7685, + "mutability": "mutable", + "name": "offset", + "nameLocation": "469:6:41", + "nodeType": "VariableDeclaration", + "scope": 7703, + "src": "461:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7684, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "461:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7687, + "mutability": "mutable", + "name": "len", + "nameLocation": "493:3:41", + "nodeType": "VariableDeclaration", + "scope": 7703, + "src": "485:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7686, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "485:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "424:78:41" + }, + "returnParameters": { + "id": 7691, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7690, + "mutability": "mutable", + "name": "ret", + "nameLocation": "534:3:41", + "nodeType": "VariableDeclaration", + "scope": 7703, + "src": "526:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7689, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "526:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "525:13:41" + }, + "scope": 8609, + "src": "409:274:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 7756, + "nodeType": "Block", + "src": "1021:336:41", + "statements": [ + { + "assignments": [ + 7714, + 7716 + ], + "declarations": [ + { + "constant": false, + "id": 7714, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "1040:9:41", + "nodeType": "VariableDeclaration", + "scope": 7756, + "src": "1032:17:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7713, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1032:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7716, + "mutability": "mutable", + "name": "newOffset", + "nameLocation": "1059:9:41", + "nodeType": "VariableDeclaration", + "scope": 7756, + "src": "1051:17:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7715, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1051:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7721, + "initialValue": { + "arguments": [ + { + "id": 7718, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7706, + "src": "1082:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 7719, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7708, + "src": "1088:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7717, + "name": "readLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7821, + "src": "1072:9:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_uint256_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32,uint256)" + } + }, + "id": 7720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1072:23:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_uint256_$", + "typeString": "tuple(bytes32,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1031:64:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 7727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7722, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7714, + "src": "1109:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 7725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1130:1:41", + "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": 7724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1122:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 7723, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1122:7:41", + "typeDescriptions": {} + } + }, + "id": 7726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1122:10:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "1109:23:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7744, + "nodeType": "IfStatement", + "src": "1105:152:41", + "trueBody": { + "id": 7743, + "nodeType": "Block", + "src": "1134:123:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7729, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7708, + "src": "1156:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 7730, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7706, + "src": "1166:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1171:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1166:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 7732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1180:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1166:15:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1156:25:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "6e616d65686173683a204a756e6b20617420656e64206f66206e616d65", + "id": 7735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1183:31:41", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142", + "typeString": "literal_string \"namehash: Junk at end of name\"" + }, + "value": "namehash: Junk at end of name" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142", + "typeString": "literal_string \"namehash: Junk at end of name\"" + } + ], + "id": 7728, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1148:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1148:67:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7737, + "nodeType": "ExpressionStatement", + "src": "1148:67:41" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 7740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1244:1:41", + "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": 7739, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1236:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 7738, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1236:7:41", + "typeDescriptions": {} + } + }, + "id": 7741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1236:10:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7712, + "id": 7742, + "nodeType": "Return", + "src": "1229:17:41" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 7749, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7706, + "src": "1321:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 7750, + "name": "newOffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7716, + "src": "1327:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7748, + "name": "namehash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7757, + "src": "1312:8:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 7751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1312:25:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 7752, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7714, + "src": "1339:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 7746, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1295:3:41", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1299:12:41", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "1295:16:41", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 7753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1295:54:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7745, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1285:9:41", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 7754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1285:65:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 7712, + "id": 7755, + "nodeType": "Return", + "src": "1266:84:41" + } + ] + }, + "documentation": { + "id": 7704, + "nodeType": "StructuredDocumentation", + "src": "689:220:41", + "text": " @dev Returns the ENS namehash of a DNS-encoded name.\n @param self The DNS-encoded name to hash.\n @param offset The offset at which to start hashing.\n @return The namehash of the name." + }, + "id": 7757, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "namehash", + "nameLocation": "923:8:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7709, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7706, + "mutability": "mutable", + "name": "self", + "nameLocation": "954:4:41", + "nodeType": "VariableDeclaration", + "scope": 7757, + "src": "941:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7705, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "941:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7708, + "mutability": "mutable", + "name": "offset", + "nameLocation": "976:6:41", + "nodeType": "VariableDeclaration", + "scope": 7757, + "src": "968:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7707, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "968:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "931:57:41" + }, + "returnParameters": { + "id": 7712, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7711, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7757, + "src": "1012:7:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7710, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1012:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1011:9:41" + }, + "scope": 8609, + "src": "914:443:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 7820, + "nodeType": "Block", + "src": "1891:296:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7770, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7762, + "src": "1909:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 7771, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7760, + "src": "1915:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1920:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1915:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1909:17:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "726561644c6162656c3a20496e646578206f7574206f6620626f756e6473", + "id": 7774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1928:32:41", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535", + "typeString": "literal_string \"readLabel: Index out of bounds\"" + }, + "value": "readLabel: Index out of bounds" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535", + "typeString": "literal_string \"readLabel: Index out of bounds\"" + } + ], + "id": 7769, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1901:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 7775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1901:60:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7776, + "nodeType": "ExpressionStatement", + "src": "1901:60:41" + }, + { + "assignments": [ + 7778 + ], + "declarations": [ + { + "constant": false, + "id": 7778, + "mutability": "mutable", + "name": "len", + "nameLocation": "1979:3:41", + "nodeType": "VariableDeclaration", + "scope": 7820, + "src": "1971:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7777, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1971:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7788, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "baseExpression": { + "id": 7783, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7760, + "src": "1999:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7785, + "indexExpression": { + "id": 7784, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7762, + "src": "2004:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1999:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 7782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1993:5:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 7781, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1993:5:41", + "typeDescriptions": {} + } + }, + "id": 7786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1993:16:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 7780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1985:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 7779, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1985:7:41", + "typeDescriptions": {} + } + }, + "id": 7787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1985:25:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1971:39:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7789, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7778, + "src": "2024:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 7790, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2030:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2024:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 7810, + "nodeType": "Block", + "src": "2102:47:41", + "statements": [ + { + "expression": { + "id": 7808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7803, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7765, + "src": "2116:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "30", + "id": 7806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2136:1:41", + "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": 7805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2128:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 7804, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2128:7:41", + "typeDescriptions": {} + } + }, + "id": 7807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2128:10:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2116:22:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 7809, + "nodeType": "ExpressionStatement", + "src": "2116:22:41" + } + ] + }, + "id": 7811, + "nodeType": "IfStatement", + "src": "2020:129:41", + "trueBody": { + "id": 7802, + "nodeType": "Block", + "src": "2033:63:41", + "statements": [ + { + "expression": { + "id": 7800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7792, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7765, + "src": "2047:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 7794, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7760, + "src": "2066:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7795, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7762, + "src": "2072:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 7796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2078:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2072:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7798, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7778, + "src": "2081:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7793, + "name": "keccak", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7703, + "src": "2059:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 7799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2059:26:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2047:38:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 7801, + "nodeType": "ExpressionStatement", + "src": "2047:38:41" + } + ] + } + }, + { + "expression": { + "id": 7818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7812, + "name": "newIdx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7767, + "src": "2158:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7813, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7762, + "src": "2167:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7814, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7778, + "src": "2173:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2167:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 7816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2179:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2167:13:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2158:22:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7819, + "nodeType": "ExpressionStatement", + "src": "2158:22:41" + } + ] + }, + "documentation": { + "id": 7758, + "nodeType": "StructuredDocumentation", + "src": "1363:392:41", + "text": " @dev Returns the keccak-256 hash of a DNS-encoded label, and the offset to the start of the next label.\n @param self The byte string to read a label from.\n @param idx The index to read a label at.\n @return labelhash The hash of the label at the specified index, or 0 if it is the last label.\n @return newIdx The index of the start of the next label." + }, + "id": 7821, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readLabel", + "nameLocation": "1769:9:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7760, + "mutability": "mutable", + "name": "self", + "nameLocation": "1801:4:41", + "nodeType": "VariableDeclaration", + "scope": 7821, + "src": "1788:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7759, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1788:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7762, + "mutability": "mutable", + "name": "idx", + "nameLocation": "1823:3:41", + "nodeType": "VariableDeclaration", + "scope": 7821, + "src": "1815:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1815:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1778:54:41" + }, + "returnParameters": { + "id": 7768, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7765, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "1864:9:41", + "nodeType": "VariableDeclaration", + "scope": 7821, + "src": "1856:17:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 7764, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1856:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7767, + "mutability": "mutable", + "name": "newIdx", + "nameLocation": "1883:6:41", + "nodeType": "VariableDeclaration", + "scope": 7821, + "src": "1875:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7766, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1875:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1855:35:41" + }, + "scope": 8609, + "src": "1760:427:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 7841, + "nodeType": "Block", + "src": "2659:77:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 7831, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7823, + "src": "2684:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 7832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2690:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "expression": { + "id": 7833, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7823, + "src": "2693:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2698:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2693:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7835, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7825, + "src": "2706:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 7836, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2713:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "expression": { + "id": 7837, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7825, + "src": "2716:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7838, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2722:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2716:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7830, + "name": "compare", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 7842, + 8013 + ], + "referencedDeclaration": 8013, + "src": "2676:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (bytes memory,uint256,uint256,bytes memory,uint256,uint256) pure returns (int256)" + } + }, + "id": 7839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2676:53:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 7829, + "id": 7840, + "nodeType": "Return", + "src": "2669:60:41" + } + ] + }, + "id": 7842, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "compare", + "nameLocation": "2559:7:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7826, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7823, + "mutability": "mutable", + "name": "self", + "nameLocation": "2589:4:41", + "nodeType": "VariableDeclaration", + "scope": 7842, + "src": "2576:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7822, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2576:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7825, + "mutability": "mutable", + "name": "other", + "nameLocation": "2616:5:41", + "nodeType": "VariableDeclaration", + "scope": 7842, + "src": "2603:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7824, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2603:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2566:61:41" + }, + "returnParameters": { + "id": 7829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7828, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 7842, + "src": "2651:6:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 7827, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "2651:6:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "2650:8:41" + }, + "scope": 8609, + "src": "2550:186:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8012, + "nodeType": "Block", + "src": "3570:1315:41", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7864, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7859, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7846, + "src": "3584:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7860, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7848, + "src": "3593:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3584:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 7862, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7844, + "src": "3599:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3604:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3599:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3584:26:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7874, + "nodeType": "IfStatement", + "src": "3580:113:41", + "trueBody": { + "id": 7873, + "nodeType": "Block", + "src": "3612:81:41", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7866, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7846, + "src": "3656:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7867, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7848, + "src": "3665:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3656:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 7869, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7844, + "src": "3670:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3675:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3670:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7865, + "name": "OffsetOutOfBoundsError", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7681, + "src": "3633:22:41", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 7871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3633:49:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7872, + "nodeType": "RevertStatement", + "src": "3626:56:41" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7875, + "name": "otheroffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7852, + "src": "3706:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7876, + "name": "otherlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "3720:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3706:22:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "id": 7878, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7850, + "src": "3731:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3737:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3731:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3706:37:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7890, + "nodeType": "IfStatement", + "src": "3702:135:41", + "trueBody": { + "id": 7889, + "nodeType": "Block", + "src": "3745:92:41", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7882, + "name": "otheroffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7852, + "src": "3789:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 7883, + "name": "otherlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "3803:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3789:22:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 7885, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7850, + "src": "3813:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 7886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3819:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3813:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7881, + "name": "OffsetOutOfBoundsError", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7681, + "src": "3766:22:41", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256) pure" + } + }, + "id": 7887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3766:60:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7888, + "nodeType": "RevertStatement", + "src": "3759:67:41" + } + ] + } + }, + { + "assignments": [ + 7892 + ], + "declarations": [ + { + "constant": false, + "id": 7892, + "mutability": "mutable", + "name": "shortest", + "nameLocation": "3855:8:41", + "nodeType": "VariableDeclaration", + "scope": 8012, + "src": "3847:16:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7891, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3847:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7894, + "initialValue": { + "id": 7893, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7848, + "src": "3866:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3847:22:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7895, + "name": "otherlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "3883:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 7896, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7848, + "src": "3894:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3883:14:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7902, + "nodeType": "IfStatement", + "src": "3879:39:41", + "trueBody": { + "expression": { + "id": 7900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7898, + "name": "shortest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7892, + "src": "3899:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 7899, + "name": "otherlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "3910:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3899:19:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7901, + "nodeType": "ExpressionStatement", + "src": "3899:19:41" + } + }, + { + "assignments": [ + 7904 + ], + "declarations": [ + { + "constant": false, + "id": 7904, + "mutability": "mutable", + "name": "selfptr", + "nameLocation": "3937:7:41", + "nodeType": "VariableDeclaration", + "scope": 8012, + "src": "3929:15:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7903, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3929:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7905, + "nodeType": "VariableDeclarationStatement", + "src": "3929:15:41" + }, + { + "assignments": [ + 7907 + ], + "declarations": [ + { + "constant": false, + "id": 7907, + "mutability": "mutable", + "name": "otherptr", + "nameLocation": "3962:8:41", + "nodeType": "VariableDeclaration", + "scope": 8012, + "src": "3954:16:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3954:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7908, + "nodeType": "VariableDeclarationStatement", + "src": "3954:16:41" + }, + { + "AST": { + "nativeSrc": "3990:118:41", + "nodeType": "YulBlock", + "src": "3990:118:41", + "statements": [ + { + "nativeSrc": "4004:37:41", + "nodeType": "YulAssignment", + "src": "4004:37:41", + "value": { + "arguments": [ + { + "name": "self", + "nativeSrc": "4019:4:41", + "nodeType": "YulIdentifier", + "src": "4019:4:41" + }, + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4029:6:41", + "nodeType": "YulIdentifier", + "src": "4029:6:41" + }, + { + "kind": "number", + "nativeSrc": "4037:2:41", + "nodeType": "YulLiteral", + "src": "4037:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4025:3:41", + "nodeType": "YulIdentifier", + "src": "4025:3:41" + }, + "nativeSrc": "4025:15:41", + "nodeType": "YulFunctionCall", + "src": "4025:15:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4015:3:41", + "nodeType": "YulIdentifier", + "src": "4015:3:41" + }, + "nativeSrc": "4015:26:41", + "nodeType": "YulFunctionCall", + "src": "4015:26:41" + }, + "variableNames": [ + { + "name": "selfptr", + "nativeSrc": "4004:7:41", + "nodeType": "YulIdentifier", + "src": "4004:7:41" + } + ] + }, + { + "nativeSrc": "4054:44:41", + "nodeType": "YulAssignment", + "src": "4054:44:41", + "value": { + "arguments": [ + { + "name": "other", + "nativeSrc": "4070:5:41", + "nodeType": "YulIdentifier", + "src": "4070:5:41" + }, + { + "arguments": [ + { + "name": "otheroffset", + "nativeSrc": "4081:11:41", + "nodeType": "YulIdentifier", + "src": "4081:11:41" + }, + { + "kind": "number", + "nativeSrc": "4094:2:41", + "nodeType": "YulLiteral", + "src": "4094:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4077:3:41", + "nodeType": "YulIdentifier", + "src": "4077:3:41" + }, + "nativeSrc": "4077:20:41", + "nodeType": "YulFunctionCall", + "src": "4077:20:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4066:3:41", + "nodeType": "YulIdentifier", + "src": "4066:3:41" + }, + "nativeSrc": "4066:32:41", + "nodeType": "YulFunctionCall", + "src": "4066:32:41" + }, + "variableNames": [ + { + "name": "otherptr", + "nativeSrc": "4054:8:41", + "nodeType": "YulIdentifier", + "src": "4054:8:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 7846, + "isOffset": false, + "isSlot": false, + "src": "4029:6:41", + "valueSize": 1 + }, + { + "declaration": 7850, + "isOffset": false, + "isSlot": false, + "src": "4070:5:41", + "valueSize": 1 + }, + { + "declaration": 7852, + "isOffset": false, + "isSlot": false, + "src": "4081:11:41", + "valueSize": 1 + }, + { + "declaration": 7907, + "isOffset": false, + "isSlot": false, + "src": "4054:8:41", + "valueSize": 1 + }, + { + "declaration": 7844, + "isOffset": false, + "isSlot": false, + "src": "4019:4:41", + "valueSize": 1 + }, + { + "declaration": 7904, + "isOffset": false, + "isSlot": false, + "src": "4004:7:41", + "valueSize": 1 + } + ], + "id": 7909, + "nodeType": "InlineAssembly", + "src": "3981:127:41" + }, + { + "body": { + "id": 8000, + "nodeType": "Block", + "src": "4166:665:41", + "statements": [ + { + "assignments": [ + 7922 + ], + "declarations": [ + { + "constant": false, + "id": 7922, + "mutability": "mutable", + "name": "a", + "nameLocation": "4188:1:41", + "nodeType": "VariableDeclaration", + "scope": 8000, + "src": "4180:9:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7921, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4180:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7923, + "nodeType": "VariableDeclarationStatement", + "src": "4180:9:41" + }, + { + "assignments": [ + 7925 + ], + "declarations": [ + { + "constant": false, + "id": 7925, + "mutability": "mutable", + "name": "b", + "nameLocation": "4211:1:41", + "nodeType": "VariableDeclaration", + "scope": 8000, + "src": "4203:9:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4203:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7926, + "nodeType": "VariableDeclarationStatement", + "src": "4203:9:41" + }, + { + "AST": { + "nativeSrc": "4235:88:41", + "nodeType": "YulBlock", + "src": "4235:88:41", + "statements": [ + { + "nativeSrc": "4253:19:41", + "nodeType": "YulAssignment", + "src": "4253:19:41", + "value": { + "arguments": [ + { + "name": "selfptr", + "nativeSrc": "4264:7:41", + "nodeType": "YulIdentifier", + "src": "4264:7:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4258:5:41", + "nodeType": "YulIdentifier", + "src": "4258:5:41" + }, + "nativeSrc": "4258:14:41", + "nodeType": "YulFunctionCall", + "src": "4258:14:41" + }, + "variableNames": [ + { + "name": "a", + "nativeSrc": "4253:1:41", + "nodeType": "YulIdentifier", + "src": "4253:1:41" + } + ] + }, + { + "nativeSrc": "4289:20:41", + "nodeType": "YulAssignment", + "src": "4289:20:41", + "value": { + "arguments": [ + { + "name": "otherptr", + "nativeSrc": "4300:8:41", + "nodeType": "YulIdentifier", + "src": "4300:8:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4294:5:41", + "nodeType": "YulIdentifier", + "src": "4294:5:41" + }, + "nativeSrc": "4294:15:41", + "nodeType": "YulFunctionCall", + "src": "4294:15:41" + }, + "variableNames": [ + { + "name": "b", + "nativeSrc": "4289:1:41", + "nodeType": "YulIdentifier", + "src": "4289:1:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 7922, + "isOffset": false, + "isSlot": false, + "src": "4253:1:41", + "valueSize": 1 + }, + { + "declaration": 7925, + "isOffset": false, + "isSlot": false, + "src": "4289:1:41", + "valueSize": 1 + }, + { + "declaration": 7907, + "isOffset": false, + "isSlot": false, + "src": "4300:8:41", + "valueSize": 1 + }, + { + "declaration": 7904, + "isOffset": false, + "isSlot": false, + "src": "4264:7:41", + "valueSize": 1 + } + ], + "id": 7927, + "nodeType": "InlineAssembly", + "src": "4226:97:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7928, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7922, + "src": "4340:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 7929, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7925, + "src": "4345:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4340:6:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7991, + "nodeType": "IfStatement", + "src": "4336:430:41", + "trueBody": { + "id": 7990, + "nodeType": "Block", + "src": "4348:418:41", + "statements": [ + { + "assignments": [ + 7932 + ], + "declarations": [ + { + "constant": false, + "id": 7932, + "mutability": "mutable", + "name": "mask", + "nameLocation": "4435:4:41", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "4427:12:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7931, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4427:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7933, + "nodeType": "VariableDeclarationStatement", + "src": "4427:12:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7934, + "name": "shortest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7892, + "src": "4461:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 7935, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7911, + "src": "4472:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4461:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 7937, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4479:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4461:20:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 7966, + "nodeType": "Block", + "src": "4554:87:41", + "statements": [ + { + "expression": { + "id": 7964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7948, + "name": "mask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7932, + "src": "4576:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 7963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "~", + "prefix": true, + "src": "4583:39:41", + "subExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 7949, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4585:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "38", + "id": 7950, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4591:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7951, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7911, + "src": "4596:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3332", + "id": 7952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4602:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4596:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 7954, + "name": "shortest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7892, + "src": "4607:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4596:19:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 7956, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4595:21:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4591:25:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 7958, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4590:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4585:32:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 7960, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4620:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4585:36:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 7962, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4584:38:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4576:46:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7965, + "nodeType": "ExpressionStatement", + "src": "4576:46:41" + } + ] + }, + "id": 7967, + "nodeType": "IfStatement", + "src": "4457:184:41", + "trueBody": { + "id": 7947, + "nodeType": "Block", + "src": "4483:65:41", + "statements": [ + { + "expression": { + "id": 7945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7939, + "name": "mask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7932, + "src": "4505:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "arguments": [ + { + "id": 7942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4517:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 7941, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4517:7:41", + "typeDescriptions": {} + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "id": 7940, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "4512:4:41", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 7943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4512:13:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_uint256", + "typeString": "type(uint256)" + } + }, + "id": 7944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4526:3:41", + "memberName": "max", + "nodeType": "MemberAccess", + "src": "4512:17:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4505:24:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7946, + "nodeType": "ExpressionStatement", + "src": "4505:24:41" + } + ] + } + }, + { + "assignments": [ + 7969 + ], + "declarations": [ + { + "constant": false, + "id": 7969, + "mutability": "mutable", + "name": "diff", + "nameLocation": "4665:4:41", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "4658:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 7968, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4658:6:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 7983, + "initialValue": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 7982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7972, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7922, + "src": "4679:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 7973, + "name": "mask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7932, + "src": "4683:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4679:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4672:6:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 7970, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4672:6:41", + "typeDescriptions": {} + } + }, + "id": 7975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4672:16:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7978, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7925, + "src": "4698:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 7979, + "name": "mask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7932, + "src": "4702:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4698:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 7977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4691:6:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 7976, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4691:6:41", + "typeDescriptions": {} + } + }, + "id": 7981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4691:16:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "4672:35:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4658:49:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 7986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7984, + "name": "diff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7969, + "src": "4729:4:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 7985, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4737:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4729:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 7989, + "nodeType": "IfStatement", + "src": "4725:26:41", + "trueBody": { + "expression": { + "id": 7987, + "name": "diff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7969, + "src": "4747:4:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 7858, + "id": 7988, + "nodeType": "Return", + "src": "4740:11:41" + } + } + ] + } + }, + { + "expression": { + "id": 7994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7992, + "name": "selfptr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7904, + "src": "4779:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 7993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4790:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4779:13:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7995, + "nodeType": "ExpressionStatement", + "src": "4779:13:41" + }, + { + "expression": { + "id": 7998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7996, + "name": "otherptr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7907, + "src": "4806:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 7997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4818:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4806:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7999, + "nodeType": "ExpressionStatement", + "src": "4806:14:41" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 7916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 7914, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7911, + "src": "4139:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 7915, + "name": "shortest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7892, + "src": "4145:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4139:14:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8001, + "initializationExpression": { + "assignments": [ + 7911 + ], + "declarations": [ + { + "constant": false, + "id": 7911, + "mutability": "mutable", + "name": "idx", + "nameLocation": "4130:3:41", + "nodeType": "VariableDeclaration", + "scope": 8001, + "src": "4122:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7910, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4122:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 7913, + "initialValue": { + "hexValue": "30", + "id": 7912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4136:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4122:15:41" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 7919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 7917, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7911, + "src": "4155:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 7918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4162:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "4155:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 7920, + "nodeType": "ExpressionStatement", + "src": "4155:9:41" + }, + "nodeType": "ForStatement", + "src": "4117:714:41" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 8010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 8004, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7848, + "src": "4855:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4848:6:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 8002, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4848:6:41", + "typeDescriptions": {} + } + }, + "id": 8005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4848:11:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "arguments": [ + { + "id": 8008, + "name": "otherlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "4869:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8007, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4862:6:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 8006, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4862:6:41", + "typeDescriptions": {} + } + }, + "id": 8009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4862:16:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "4848:30:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 7858, + "id": 8011, + "nodeType": "Return", + "src": "4841:37:41" + } + ] + }, + "id": 8013, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "compare", + "nameLocation": "3370:7:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 7855, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7844, + "mutability": "mutable", + "name": "self", + "nameLocation": "3400:4:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3387:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7843, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3387:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7846, + "mutability": "mutable", + "name": "offset", + "nameLocation": "3422:6:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3414:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7845, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3414:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7848, + "mutability": "mutable", + "name": "len", + "nameLocation": "3446:3:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3438:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3438:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7850, + "mutability": "mutable", + "name": "other", + "nameLocation": "3472:5:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3459:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7849, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3459:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7852, + "mutability": "mutable", + "name": "otheroffset", + "nameLocation": "3495:11:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3487:19:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7851, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3487:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7854, + "mutability": "mutable", + "name": "otherlen", + "nameLocation": "3524:8:41", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3516:16:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7853, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3516:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3377:161:41" + }, + "returnParameters": { + "id": 7858, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7857, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "3562:6:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 7856, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "3562:6:41", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "3561:8:41" + }, + "scope": 8609, + "src": "3361:1524:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8040, + "nodeType": "Block", + "src": "5491:84:41", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 8038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 8029, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8015, + "src": "5515:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 8030, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8017, + "src": "5521:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8031, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8023, + "src": "5529:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8028, + "name": "keccak", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7703, + "src": "5508:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 8032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5508:25:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 8034, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8019, + "src": "5544:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 8035, + "name": "otherOffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8021, + "src": "5551:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8036, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8023, + "src": "5564:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8033, + "name": "keccak", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7703, + "src": "5537:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 8037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5537:31:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "5508:60:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8027, + "id": 8039, + "nodeType": "Return", + "src": "5501:67:41" + } + ] + }, + "id": 8041, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "equals", + "nameLocation": "5320:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8024, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8015, + "mutability": "mutable", + "name": "self", + "nameLocation": "5349:4:41", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5336:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8014, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5336:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8017, + "mutability": "mutable", + "name": "offset", + "nameLocation": "5371:6:41", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5363:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5363:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8019, + "mutability": "mutable", + "name": "other", + "nameLocation": "5400:5:41", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5387:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8018, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5387:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8021, + "mutability": "mutable", + "name": "otherOffset", + "nameLocation": "5423:11:41", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5415:19:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8020, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5415:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8023, + "mutability": "mutable", + "name": "len", + "nameLocation": "5452:3:41", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5444:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8022, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5444:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5326:135:41" + }, + "returnParameters": { + "id": 8027, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8026, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8041, + "src": "5485:4:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8025, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5485:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5484:6:41" + }, + "scope": 8609, + "src": "5311:264:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8072, + "nodeType": "Block", + "src": "6124:148:41", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 8070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 8055, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8043, + "src": "6160:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 8056, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8045, + "src": "6166:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8057, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8043, + "src": "6174:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6179:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6174:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 8059, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8045, + "src": "6188:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6174:20:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8054, + "name": "keccak", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7703, + "src": "6153:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 8061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6153:42:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 8063, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8047, + "src": "6218:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 8064, + "name": "otherOffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8049, + "src": "6225:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8065, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8047, + "src": "6238:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6244:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6238:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 8067, + "name": "otherOffset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8049, + "src": "6253:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6238:26:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8062, + "name": "keccak", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7703, + "src": "6211:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 8069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6211:54:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6153:112:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8053, + "id": 8071, + "nodeType": "Return", + "src": "6134:131:41" + } + ] + }, + "id": 8073, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "equals", + "nameLocation": "5974:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8043, + "mutability": "mutable", + "name": "self", + "nameLocation": "6003:4:41", + "nodeType": "VariableDeclaration", + "scope": 8073, + "src": "5990:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8042, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5990:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8045, + "mutability": "mutable", + "name": "offset", + "nameLocation": "6025:6:41", + "nodeType": "VariableDeclaration", + "scope": 8073, + "src": "6017:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8044, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6017:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8047, + "mutability": "mutable", + "name": "other", + "nameLocation": "6054:5:41", + "nodeType": "VariableDeclaration", + "scope": 8073, + "src": "6041:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8046, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6041:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8049, + "mutability": "mutable", + "name": "otherOffset", + "nameLocation": "6077:11:41", + "nodeType": "VariableDeclaration", + "scope": 8073, + "src": "6069:19:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6069:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5980:114:41" + }, + "returnParameters": { + "id": 8053, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8052, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8073, + "src": "6118:4:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8051, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6118:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6117:6:41" + }, + "scope": 8609, + "src": "5965:307:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8101, + "nodeType": "Block", + "src": "6761:132:41", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8084, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8075, + "src": "6790:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6795:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6790:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8086, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8077, + "src": "6805:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "id": 8087, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "6814:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6820:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6814:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6805:21:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6790:36:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "arguments": [ + { + "id": 8092, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8075, + "src": "6849:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 8093, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8077, + "src": "6855:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8094, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "6863:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 8095, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6870:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "expression": { + "id": 8096, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8079, + "src": "6873:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6879:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6873:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8091, + "name": "equals", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 8041, + 8073, + 8102, + 8127 + ], + "referencedDeclaration": 8041, + "src": "6842:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (bytes memory,uint256,bytes memory,uint256,uint256) pure returns (bool)" + } + }, + "id": 8098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6842:44:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6790:96:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8083, + "id": 8100, + "nodeType": "Return", + "src": "6771:115:41" + } + ] + }, + "id": 8102, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "equals", + "nameLocation": "6640:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8075, + "mutability": "mutable", + "name": "self", + "nameLocation": "6669:4:41", + "nodeType": "VariableDeclaration", + "scope": 8102, + "src": "6656:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8074, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6656:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8077, + "mutability": "mutable", + "name": "offset", + "nameLocation": "6691:6:41", + "nodeType": "VariableDeclaration", + "scope": 8102, + "src": "6683:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8076, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6683:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8079, + "mutability": "mutable", + "name": "other", + "nameLocation": "6720:5:41", + "nodeType": "VariableDeclaration", + "scope": 8102, + "src": "6707:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8078, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6707:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6646:85:41" + }, + "returnParameters": { + "id": 8083, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8082, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8102, + "src": "6755:4:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8081, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6755:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6754:6:41" + }, + "scope": 8609, + "src": "6631:262:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8126, + "nodeType": "Block", + "src": "7252:117:41", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8111, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8104, + "src": "7281:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7286:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7281:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 8113, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8106, + "src": "7296:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7302:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7296:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7281:27:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "arguments": [ + { + "id": 8117, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8104, + "src": "7331:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 8118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7337:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 8119, + "name": "other", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8106, + "src": "7340:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 8120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7347:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "expression": { + "id": 8121, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8104, + "src": "7350:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7355:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7350:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8116, + "name": "equals", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 8041, + 8073, + 8102, + 8127 + ], + "referencedDeclaration": 8041, + "src": "7324:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (bytes memory,uint256,bytes memory,uint256,uint256) pure returns (bool)" + } + }, + "id": 8123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7324:38:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7281:81:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8110, + "id": 8125, + "nodeType": "Return", + "src": "7262:100:41" + } + ] + }, + "id": 8127, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "equals", + "nameLocation": "7155:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8104, + "mutability": "mutable", + "name": "self", + "nameLocation": "7184:4:41", + "nodeType": "VariableDeclaration", + "scope": 8127, + "src": "7171:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8103, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7171:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8106, + "mutability": "mutable", + "name": "other", + "nameLocation": "7211:5:41", + "nodeType": "VariableDeclaration", + "scope": 8127, + "src": "7198:18:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8105, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7198:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7161:61:41" + }, + "returnParameters": { + "id": 8110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8109, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8127, + "src": "7246:4:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8108, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7246:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7245:6:41" + }, + "scope": 8609, + "src": "7146:223:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8143, + "nodeType": "Block", + "src": "7723:40:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 8138, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8129, + "src": "7746:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8140, + "indexExpression": { + "id": 8139, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8131, + "src": "7751:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7746:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 8137, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7740:5:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 8136, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7740:5:41", + "typeDescriptions": {} + } + }, + "id": 8141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7740:16:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "functionReturnParameters": 8135, + "id": 8142, + "nodeType": "Return", + "src": "7733:23:41" + } + ] + }, + "id": 8144, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readUint8", + "nameLocation": "7625:9:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8129, + "mutability": "mutable", + "name": "self", + "nameLocation": "7657:4:41", + "nodeType": "VariableDeclaration", + "scope": 8144, + "src": "7644:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8128, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7644:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8131, + "mutability": "mutable", + "name": "idx", + "nameLocation": "7679:3:41", + "nodeType": "VariableDeclaration", + "scope": 8144, + "src": "7671:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7671:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7634:54:41" + }, + "returnParameters": { + "id": 8135, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8134, + "mutability": "mutable", + "name": "ret", + "nameLocation": "7718:3:41", + "nodeType": "VariableDeclaration", + "scope": 8144, + "src": "7712:9:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 8133, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7712:5:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "7711:11:41" + }, + "scope": 8609, + "src": "7616:147:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8163, + "nodeType": "Block", + "src": "8121:139:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8154, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8148, + "src": "8139:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "32", + "id": 8155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8145:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "8139:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8157, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8146, + "src": "8150:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8155:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8150:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8139:22:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8153, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8131:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8131:31:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8161, + "nodeType": "ExpressionStatement", + "src": "8131:31:41" + }, + { + "AST": { + "nativeSrc": "8181:73:41", + "nodeType": "YulBlock", + "src": "8181:73:41", + "statements": [ + { + "nativeSrc": "8195:49:41", + "nodeType": "YulAssignment", + "src": "8195:49:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "8220:4:41", + "nodeType": "YulIdentifier", + "src": "8220:4:41" + }, + { + "kind": "number", + "nativeSrc": "8226:1:41", + "nodeType": "YulLiteral", + "src": "8226:1:41", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8216:3:41", + "nodeType": "YulIdentifier", + "src": "8216:3:41" + }, + "nativeSrc": "8216:12:41", + "nodeType": "YulFunctionCall", + "src": "8216:12:41" + }, + { + "name": "idx", + "nativeSrc": "8230:3:41", + "nodeType": "YulIdentifier", + "src": "8230:3:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8212:3:41", + "nodeType": "YulIdentifier", + "src": "8212:3:41" + }, + "nativeSrc": "8212:22:41", + "nodeType": "YulFunctionCall", + "src": "8212:22:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8206:5:41", + "nodeType": "YulIdentifier", + "src": "8206:5:41" + }, + "nativeSrc": "8206:29:41", + "nodeType": "YulFunctionCall", + "src": "8206:29:41" + }, + { + "kind": "number", + "nativeSrc": "8237:6:41", + "nodeType": "YulLiteral", + "src": "8237:6:41", + "type": "", + "value": "0xFFFF" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "8202:3:41", + "nodeType": "YulIdentifier", + "src": "8202:3:41" + }, + "nativeSrc": "8202:42:41", + "nodeType": "YulFunctionCall", + "src": "8202:42:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "8195:3:41", + "nodeType": "YulIdentifier", + "src": "8195:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8148, + "isOffset": false, + "isSlot": false, + "src": "8230:3:41", + "valueSize": 1 + }, + { + "declaration": 8151, + "isOffset": false, + "isSlot": false, + "src": "8195:3:41", + "valueSize": 1 + }, + { + "declaration": 8146, + "isOffset": false, + "isSlot": false, + "src": "8220:4:41", + "valueSize": 1 + } + ], + "id": 8162, + "nodeType": "InlineAssembly", + "src": "8172:82:41" + } + ] + }, + "id": 8164, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readUint16", + "nameLocation": "8021:10:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8146, + "mutability": "mutable", + "name": "self", + "nameLocation": "8054:4:41", + "nodeType": "VariableDeclaration", + "scope": 8164, + "src": "8041:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8145, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8041:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8148, + "mutability": "mutable", + "name": "idx", + "nameLocation": "8076:3:41", + "nodeType": "VariableDeclaration", + "scope": 8164, + "src": "8068:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8147, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8068:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8031:54:41" + }, + "returnParameters": { + "id": 8152, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8151, + "mutability": "mutable", + "name": "ret", + "nameLocation": "8116:3:41", + "nodeType": "VariableDeclaration", + "scope": 8164, + "src": "8109:10:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 8150, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "8109:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "8108:12:41" + }, + "scope": 8609, + "src": "8012:248:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8183, + "nodeType": "Block", + "src": "8618:143:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8174, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8168, + "src": "8636:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "34", + "id": 8175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8642:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "8636:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8177, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8166, + "src": "8647:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8652:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8647:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8636:22:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8173, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8628:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8628:31:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8181, + "nodeType": "ExpressionStatement", + "src": "8628:31:41" + }, + { + "AST": { + "nativeSrc": "8678:77:41", + "nodeType": "YulBlock", + "src": "8678:77:41", + "statements": [ + { + "nativeSrc": "8692:53:41", + "nodeType": "YulAssignment", + "src": "8692:53:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "8717:4:41", + "nodeType": "YulIdentifier", + "src": "8717:4:41" + }, + { + "kind": "number", + "nativeSrc": "8723:1:41", + "nodeType": "YulLiteral", + "src": "8723:1:41", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8713:3:41", + "nodeType": "YulIdentifier", + "src": "8713:3:41" + }, + "nativeSrc": "8713:12:41", + "nodeType": "YulFunctionCall", + "src": "8713:12:41" + }, + { + "name": "idx", + "nativeSrc": "8727:3:41", + "nodeType": "YulIdentifier", + "src": "8727:3:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8709:3:41", + "nodeType": "YulIdentifier", + "src": "8709:3:41" + }, + "nativeSrc": "8709:22:41", + "nodeType": "YulFunctionCall", + "src": "8709:22:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8703:5:41", + "nodeType": "YulIdentifier", + "src": "8703:5:41" + }, + "nativeSrc": "8703:29:41", + "nodeType": "YulFunctionCall", + "src": "8703:29:41" + }, + { + "kind": "number", + "nativeSrc": "8734:10:41", + "nodeType": "YulLiteral", + "src": "8734:10:41", + "type": "", + "value": "0xFFFFFFFF" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "8699:3:41", + "nodeType": "YulIdentifier", + "src": "8699:3:41" + }, + "nativeSrc": "8699:46:41", + "nodeType": "YulFunctionCall", + "src": "8699:46:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "8692:3:41", + "nodeType": "YulIdentifier", + "src": "8692:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8168, + "isOffset": false, + "isSlot": false, + "src": "8727:3:41", + "valueSize": 1 + }, + { + "declaration": 8171, + "isOffset": false, + "isSlot": false, + "src": "8692:3:41", + "valueSize": 1 + }, + { + "declaration": 8166, + "isOffset": false, + "isSlot": false, + "src": "8717:4:41", + "valueSize": 1 + } + ], + "id": 8182, + "nodeType": "InlineAssembly", + "src": "8669:86:41" + } + ] + }, + "id": 8184, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readUint32", + "nameLocation": "8518:10:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8169, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8166, + "mutability": "mutable", + "name": "self", + "nameLocation": "8551:4:41", + "nodeType": "VariableDeclaration", + "scope": 8184, + "src": "8538:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8165, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8538:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8168, + "mutability": "mutable", + "name": "idx", + "nameLocation": "8573:3:41", + "nodeType": "VariableDeclaration", + "scope": 8184, + "src": "8565:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8167, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8565:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8528:54:41" + }, + "returnParameters": { + "id": 8172, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8171, + "mutability": "mutable", + "name": "ret", + "nameLocation": "8613:3:41", + "nodeType": "VariableDeclaration", + "scope": 8184, + "src": "8606:10:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 8170, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "8606:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "8605:12:41" + }, + "scope": 8609, + "src": "8509:252:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8203, + "nodeType": "Block", + "src": "9095:128:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8194, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8188, + "src": "9113:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3332", + "id": 8195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9119:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "9113:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8197, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8186, + "src": "9125:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9130:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9125:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9113:23:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8193, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9105:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9105:32:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8201, + "nodeType": "ExpressionStatement", + "src": "9105:32:41" + }, + { + "AST": { + "nativeSrc": "9156:61:41", + "nodeType": "YulBlock", + "src": "9156:61:41", + "statements": [ + { + "nativeSrc": "9170:37:41", + "nodeType": "YulAssignment", + "src": "9170:37:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "9191:4:41", + "nodeType": "YulIdentifier", + "src": "9191:4:41" + }, + { + "kind": "number", + "nativeSrc": "9197:2:41", + "nodeType": "YulLiteral", + "src": "9197:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9187:3:41", + "nodeType": "YulIdentifier", + "src": "9187:3:41" + }, + "nativeSrc": "9187:13:41", + "nodeType": "YulFunctionCall", + "src": "9187:13:41" + }, + { + "name": "idx", + "nativeSrc": "9202:3:41", + "nodeType": "YulIdentifier", + "src": "9202:3:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9183:3:41", + "nodeType": "YulIdentifier", + "src": "9183:3:41" + }, + "nativeSrc": "9183:23:41", + "nodeType": "YulFunctionCall", + "src": "9183:23:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9177:5:41", + "nodeType": "YulIdentifier", + "src": "9177:5:41" + }, + "nativeSrc": "9177:30:41", + "nodeType": "YulFunctionCall", + "src": "9177:30:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "9170:3:41", + "nodeType": "YulIdentifier", + "src": "9170:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8188, + "isOffset": false, + "isSlot": false, + "src": "9202:3:41", + "valueSize": 1 + }, + { + "declaration": 8191, + "isOffset": false, + "isSlot": false, + "src": "9170:3:41", + "valueSize": 1 + }, + { + "declaration": 8186, + "isOffset": false, + "isSlot": false, + "src": "9191:4:41", + "valueSize": 1 + } + ], + "id": 8202, + "nodeType": "InlineAssembly", + "src": "9147:70:41" + } + ] + }, + "id": 8204, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readBytes32", + "nameLocation": "8993:11:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8186, + "mutability": "mutable", + "name": "self", + "nameLocation": "9027:4:41", + "nodeType": "VariableDeclaration", + "scope": 8204, + "src": "9014:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8185, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9014:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8188, + "mutability": "mutable", + "name": "idx", + "nameLocation": "9049:3:41", + "nodeType": "VariableDeclaration", + "scope": 8204, + "src": "9041:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8187, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9041:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9004:54:41" + }, + "returnParameters": { + "id": 8192, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8191, + "mutability": "mutable", + "name": "ret", + "nameLocation": "9090:3:41", + "nodeType": "VariableDeclaration", + "scope": 8204, + "src": "9082:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 8190, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "9082:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "9081:13:41" + }, + "scope": 8609, + "src": "8984:239:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8223, + "nodeType": "Block", + "src": "9557:247:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8216, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8214, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8208, + "src": "9575:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3230", + "id": 8215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9581:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "9575:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8217, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8206, + "src": "9587:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9592:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9587:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9575:23:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8213, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9567:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9567:32:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8221, + "nodeType": "ExpressionStatement", + "src": "9567:32:41" + }, + { + "AST": { + "nativeSrc": "9618:180:41", + "nodeType": "YulBlock", + "src": "9618:180:41", + "statements": [ + { + "nativeSrc": "9632:156:41", + "nodeType": "YulAssignment", + "src": "9632:156:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "9674:4:41", + "nodeType": "YulIdentifier", + "src": "9674:4:41" + }, + { + "kind": "number", + "nativeSrc": "9680:2:41", + "nodeType": "YulLiteral", + "src": "9680:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9670:3:41", + "nodeType": "YulIdentifier", + "src": "9670:3:41" + }, + "nativeSrc": "9670:13:41", + "nodeType": "YulFunctionCall", + "src": "9670:13:41" + }, + { + "name": "idx", + "nativeSrc": "9685:3:41", + "nodeType": "YulIdentifier", + "src": "9685:3:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9666:3:41", + "nodeType": "YulIdentifier", + "src": "9666:3:41" + }, + "nativeSrc": "9666:23:41", + "nodeType": "YulFunctionCall", + "src": "9666:23:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9660:5:41", + "nodeType": "YulIdentifier", + "src": "9660:5:41" + }, + "nativeSrc": "9660:30:41", + "nodeType": "YulFunctionCall", + "src": "9660:30:41" + }, + { + "kind": "number", + "nativeSrc": "9708:66:41", + "nodeType": "YulLiteral", + "src": "9708:66:41", + "type": "", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "9639:3:41", + "nodeType": "YulIdentifier", + "src": "9639:3:41" + }, + "nativeSrc": "9639:149:41", + "nodeType": "YulFunctionCall", + "src": "9639:149:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "9632:3:41", + "nodeType": "YulIdentifier", + "src": "9632:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8208, + "isOffset": false, + "isSlot": false, + "src": "9685:3:41", + "valueSize": 1 + }, + { + "declaration": 8211, + "isOffset": false, + "isSlot": false, + "src": "9632:3:41", + "valueSize": 1 + }, + { + "declaration": 8206, + "isOffset": false, + "isSlot": false, + "src": "9674:4:41", + "valueSize": 1 + } + ], + "id": 8222, + "nodeType": "InlineAssembly", + "src": "9609:189:41" + } + ] + }, + "id": 8224, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readBytes20", + "nameLocation": "9455:11:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8206, + "mutability": "mutable", + "name": "self", + "nameLocation": "9489:4:41", + "nodeType": "VariableDeclaration", + "scope": 8224, + "src": "9476:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8205, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9476:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8208, + "mutability": "mutable", + "name": "idx", + "nameLocation": "9511:3:41", + "nodeType": "VariableDeclaration", + "scope": 8224, + "src": "9503:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8207, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9503:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9466:54:41" + }, + "returnParameters": { + "id": 8212, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8211, + "mutability": "mutable", + "name": "ret", + "nameLocation": "9552:3:41", + "nodeType": "VariableDeclaration", + "scope": 8224, + "src": "9544:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 8210, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "9544:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "src": "9543:13:41" + }, + "scope": 8609, + "src": "9446:358:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8251, + "nodeType": "Block", + "src": "10197:228:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8236, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8230, + "src": "10215:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "3332", + "id": 8237, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10222:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10215:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8235, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "10207:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10207:18:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8240, + "nodeType": "ExpressionStatement", + "src": "10207:18:41" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8242, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8228, + "src": "10243:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 8243, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8230, + "src": "10249:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10243:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8245, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8226, + "src": "10256:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10261:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "10256:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10243:24:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8241, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "10235:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10235:33:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8249, + "nodeType": "ExpressionStatement", + "src": "10235:33:41" + }, + { + "AST": { + "nativeSrc": "10287:132:41", + "nodeType": "YulBlock", + "src": "10287:132:41", + "statements": [ + { + "nativeSrc": "10301:47:41", + "nodeType": "YulVariableDeclaration", + "src": "10301:47:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10325:3:41", + "nodeType": "YulLiteral", + "src": "10325:3:41", + "type": "", + "value": "256" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10334:2:41", + "nodeType": "YulLiteral", + "src": "10334:2:41", + "type": "", + "value": "32" + }, + { + "name": "len", + "nativeSrc": "10338:3:41", + "nodeType": "YulIdentifier", + "src": "10338:3:41" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10330:3:41", + "nodeType": "YulIdentifier", + "src": "10330:3:41" + }, + "nativeSrc": "10330:12:41", + "nodeType": "YulFunctionCall", + "src": "10330:12:41" + } + ], + "functionName": { + "name": "exp", + "nativeSrc": "10321:3:41", + "nodeType": "YulIdentifier", + "src": "10321:3:41" + }, + "nativeSrc": "10321:22:41", + "nodeType": "YulFunctionCall", + "src": "10321:22:41" + }, + { + "kind": "number", + "nativeSrc": "10345:1:41", + "nodeType": "YulLiteral", + "src": "10345:1:41", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10317:3:41", + "nodeType": "YulIdentifier", + "src": "10317:3:41" + }, + "nativeSrc": "10317:30:41", + "nodeType": "YulFunctionCall", + "src": "10317:30:41" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "10313:3:41", + "nodeType": "YulIdentifier", + "src": "10313:3:41" + }, + "nativeSrc": "10313:35:41", + "nodeType": "YulFunctionCall", + "src": "10313:35:41" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "10305:4:41", + "nodeType": "YulTypedName", + "src": "10305:4:41", + "type": "" + } + ] + }, + { + "nativeSrc": "10361:48:41", + "nodeType": "YulAssignment", + "src": "10361:48:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "10386:4:41", + "nodeType": "YulIdentifier", + "src": "10386:4:41" + }, + { + "kind": "number", + "nativeSrc": "10392:2:41", + "nodeType": "YulLiteral", + "src": "10392:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10382:3:41", + "nodeType": "YulIdentifier", + "src": "10382:3:41" + }, + "nativeSrc": "10382:13:41", + "nodeType": "YulFunctionCall", + "src": "10382:13:41" + }, + { + "name": "idx", + "nativeSrc": "10397:3:41", + "nodeType": "YulIdentifier", + "src": "10397:3:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10378:3:41", + "nodeType": "YulIdentifier", + "src": "10378:3:41" + }, + "nativeSrc": "10378:23:41", + "nodeType": "YulFunctionCall", + "src": "10378:23:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10372:5:41", + "nodeType": "YulIdentifier", + "src": "10372:5:41" + }, + "nativeSrc": "10372:30:41", + "nodeType": "YulFunctionCall", + "src": "10372:30:41" + }, + { + "name": "mask", + "nativeSrc": "10404:4:41", + "nodeType": "YulIdentifier", + "src": "10404:4:41" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10368:3:41", + "nodeType": "YulIdentifier", + "src": "10368:3:41" + }, + "nativeSrc": "10368:41:41", + "nodeType": "YulFunctionCall", + "src": "10368:41:41" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "10361:3:41", + "nodeType": "YulIdentifier", + "src": "10361:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8228, + "isOffset": false, + "isSlot": false, + "src": "10397:3:41", + "valueSize": 1 + }, + { + "declaration": 8230, + "isOffset": false, + "isSlot": false, + "src": "10338:3:41", + "valueSize": 1 + }, + { + "declaration": 8233, + "isOffset": false, + "isSlot": false, + "src": "10361:3:41", + "valueSize": 1 + }, + { + "declaration": 8226, + "isOffset": false, + "isSlot": false, + "src": "10386:4:41", + "valueSize": 1 + } + ], + "id": 8250, + "nodeType": "InlineAssembly", + "src": "10278:141:41" + } + ] + }, + "id": 8252, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "readBytesN", + "nameLocation": "10075:10:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8226, + "mutability": "mutable", + "name": "self", + "nameLocation": "10108:4:41", + "nodeType": "VariableDeclaration", + "scope": 8252, + "src": "10095:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8225, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10095:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8228, + "mutability": "mutable", + "name": "idx", + "nameLocation": "10130:3:41", + "nodeType": "VariableDeclaration", + "scope": 8252, + "src": "10122:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8227, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10122:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8230, + "mutability": "mutable", + "name": "len", + "nameLocation": "10151:3:41", + "nodeType": "VariableDeclaration", + "scope": 8252, + "src": "10143:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10143:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10085:75:41" + }, + "returnParameters": { + "id": 8234, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8233, + "mutability": "mutable", + "name": "ret", + "nameLocation": "10192:3:41", + "nodeType": "VariableDeclaration", + "scope": 8252, + "src": "10184:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 8232, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "10184:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "10183:13:41" + }, + "scope": 8609, + "src": "10066:359:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8293, + "nodeType": "Block", + "src": "10500:548:41", + "statements": [ + { + "body": { + "id": 8277, + "nodeType": "Block", + "src": "10589:136:41", + "statements": [ + { + "AST": { + "nativeSrc": "10612:56:41", + "nodeType": "YulBlock", + "src": "10612:56:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "10637:4:41", + "nodeType": "YulIdentifier", + "src": "10637:4:41" + }, + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10649:3:41", + "nodeType": "YulIdentifier", + "src": "10649:3:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10643:5:41", + "nodeType": "YulIdentifier", + "src": "10643:5:41" + }, + "nativeSrc": "10643:10:41", + "nodeType": "YulFunctionCall", + "src": "10643:10:41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10630:6:41", + "nodeType": "YulIdentifier", + "src": "10630:6:41" + }, + "nativeSrc": "10630:24:41", + "nodeType": "YulFunctionCall", + "src": "10630:24:41" + }, + "nativeSrc": "10630:24:41", + "nodeType": "YulExpressionStatement", + "src": "10630:24:41" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8254, + "isOffset": false, + "isSlot": false, + "src": "10637:4:41", + "valueSize": 1 + }, + { + "declaration": 8256, + "isOffset": false, + "isSlot": false, + "src": "10649:3:41", + "valueSize": 1 + } + ], + "id": 8268, + "nodeType": "InlineAssembly", + "src": "10603:65:41" + }, + { + "expression": { + "id": 8271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8269, + "name": "dest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8254, + "src": "10681:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 8270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10689:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10681:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8272, + "nodeType": "ExpressionStatement", + "src": "10681:10:41" + }, + { + "expression": { + "id": 8275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8273, + "name": "src", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8256, + "src": "10705:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 8274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10712:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10705:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8276, + "nodeType": "ExpressionStatement", + "src": "10705:9:41" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8261, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8258, + "src": "10567:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 8262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10574:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10567:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8278, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 8266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8264, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8258, + "src": "10578:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "3332", + "id": 8265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10585:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10578:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8267, + "nodeType": "ExpressionStatement", + "src": "10578:9:41" + }, + "nodeType": "ForStatement", + "src": "10560:165:41" + }, + { + "id": 8292, + "nodeType": "UncheckedBlock", + "src": "10767:275:41", + "statements": [ + { + "assignments": [ + 8280 + ], + "declarations": [ + { + "constant": false, + "id": 8280, + "mutability": "mutable", + "name": "mask", + "nameLocation": "10799:4:41", + "nodeType": "VariableDeclaration", + "scope": 8292, + "src": "10791:12:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8279, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10791:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8290, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 8281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10807:3:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 8282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10815:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 8283, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8258, + "src": "10820:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10815:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8285, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10814:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10807:17:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8287, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10806:19:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 8288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10828:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "10806:23:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10791:38:41" + }, + { + "AST": { + "nativeSrc": "10852:180:41", + "nodeType": "YulBlock", + "src": "10852:180:41", + "statements": [ + { + "nativeSrc": "10870:41:41", + "nodeType": "YulVariableDeclaration", + "src": "10870:41:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10895:3:41", + "nodeType": "YulIdentifier", + "src": "10895:3:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10889:5:41", + "nodeType": "YulIdentifier", + "src": "10889:5:41" + }, + "nativeSrc": "10889:10:41", + "nodeType": "YulFunctionCall", + "src": "10889:10:41" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "10905:4:41", + "nodeType": "YulIdentifier", + "src": "10905:4:41" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "10901:3:41", + "nodeType": "YulIdentifier", + "src": "10901:3:41" + }, + "nativeSrc": "10901:9:41", + "nodeType": "YulFunctionCall", + "src": "10901:9:41" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10885:3:41", + "nodeType": "YulIdentifier", + "src": "10885:3:41" + }, + "nativeSrc": "10885:26:41", + "nodeType": "YulFunctionCall", + "src": "10885:26:41" + }, + "variables": [ + { + "name": "srcpart", + "nativeSrc": "10874:7:41", + "nodeType": "YulTypedName", + "src": "10874:7:41", + "type": "" + } + ] + }, + { + "nativeSrc": "10928:38:41", + "nodeType": "YulVariableDeclaration", + "src": "10928:38:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "dest", + "nativeSrc": "10954:4:41", + "nodeType": "YulIdentifier", + "src": "10954:4:41" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10948:5:41", + "nodeType": "YulIdentifier", + "src": "10948:5:41" + }, + "nativeSrc": "10948:11:41", + "nodeType": "YulFunctionCall", + "src": "10948:11:41" + }, + { + "name": "mask", + "nativeSrc": "10961:4:41", + "nodeType": "YulIdentifier", + "src": "10961:4:41" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10944:3:41", + "nodeType": "YulIdentifier", + "src": "10944:3:41" + }, + "nativeSrc": "10944:22:41", + "nodeType": "YulFunctionCall", + "src": "10944:22:41" + }, + "variables": [ + { + "name": "destpart", + "nativeSrc": "10932:8:41", + "nodeType": "YulTypedName", + "src": "10932:8:41", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dest", + "nativeSrc": "10990:4:41", + "nodeType": "YulIdentifier", + "src": "10990:4:41" + }, + { + "arguments": [ + { + "name": "destpart", + "nativeSrc": "10999:8:41", + "nodeType": "YulIdentifier", + "src": "10999:8:41" + }, + { + "name": "srcpart", + "nativeSrc": "11009:7:41", + "nodeType": "YulIdentifier", + "src": "11009:7:41" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "10996:2:41", + "nodeType": "YulIdentifier", + "src": "10996:2:41" + }, + "nativeSrc": "10996:21:41", + "nodeType": "YulFunctionCall", + "src": "10996:21:41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10983:6:41", + "nodeType": "YulIdentifier", + "src": "10983:6:41" + }, + "nativeSrc": "10983:35:41", + "nodeType": "YulFunctionCall", + "src": "10983:35:41" + }, + "nativeSrc": "10983:35:41", + "nodeType": "YulExpressionStatement", + "src": "10983:35:41" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8254, + "isOffset": false, + "isSlot": false, + "src": "10954:4:41", + "valueSize": 1 + }, + { + "declaration": 8254, + "isOffset": false, + "isSlot": false, + "src": "10990:4:41", + "valueSize": 1 + }, + { + "declaration": 8280, + "isOffset": false, + "isSlot": false, + "src": "10905:4:41", + "valueSize": 1 + }, + { + "declaration": 8280, + "isOffset": false, + "isSlot": false, + "src": "10961:4:41", + "valueSize": 1 + }, + { + "declaration": 8256, + "isOffset": false, + "isSlot": false, + "src": "10895:3:41", + "valueSize": 1 + } + ], + "id": 8291, + "nodeType": "InlineAssembly", + "src": "10843:189:41" + } + ] + } + ] + }, + "id": 8294, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "memcpy", + "nameLocation": "10440:6:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8259, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8254, + "mutability": "mutable", + "name": "dest", + "nameLocation": "10455:4:41", + "nodeType": "VariableDeclaration", + "scope": 8294, + "src": "10447:12:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8253, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10447:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8256, + "mutability": "mutable", + "name": "src", + "nameLocation": "10469:3:41", + "nodeType": "VariableDeclaration", + "scope": 8294, + "src": "10461:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8255, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10461:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8258, + "mutability": "mutable", + "name": "len", + "nameLocation": "10482:3:41", + "nodeType": "VariableDeclaration", + "scope": 8294, + "src": "10474:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8257, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10474:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10446:40:41" + }, + "returnParameters": { + "id": 8260, + "nodeType": "ParameterList", + "parameters": [], + "src": "10500:0:41" + }, + "scope": 8609, + "src": "10431:617:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 8336, + "nodeType": "Block", + "src": "11407:302:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8306, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8298, + "src": "11425:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 8307, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8300, + "src": "11434:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11425:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "expression": { + "id": 8309, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8296, + "src": "11441:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11446:6:41", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11441:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11425:27:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8305, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11417:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11417:36:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8313, + "nodeType": "ExpressionStatement", + "src": "11417:36:41" + }, + { + "assignments": [ + 8315 + ], + "declarations": [ + { + "constant": false, + "id": 8315, + "mutability": "mutable", + "name": "ret", + "nameLocation": "11477:3:41", + "nodeType": "VariableDeclaration", + "scope": 8336, + "src": "11464:16:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8314, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11464:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 8320, + "initialValue": { + "arguments": [ + { + "id": 8318, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8300, + "src": "11493:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "11483:9:41", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 8316, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11487:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 8319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11483:14:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11464:33:41" + }, + { + "assignments": [ + 8322 + ], + "declarations": [ + { + "constant": false, + "id": 8322, + "mutability": "mutable", + "name": "dest", + "nameLocation": "11515:4:41", + "nodeType": "VariableDeclaration", + "scope": 8336, + "src": "11507:12:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8321, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11507:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8323, + "nodeType": "VariableDeclarationStatement", + "src": "11507:12:41" + }, + { + "assignments": [ + 8325 + ], + "declarations": [ + { + "constant": false, + "id": 8325, + "mutability": "mutable", + "name": "src", + "nameLocation": "11537:3:41", + "nodeType": "VariableDeclaration", + "scope": 8336, + "src": "11529:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8324, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11529:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8326, + "nodeType": "VariableDeclarationStatement", + "src": "11529:11:41" + }, + { + "AST": { + "nativeSrc": "11560:90:41", + "nodeType": "YulBlock", + "src": "11560:90:41", + "statements": [ + { + "nativeSrc": "11574:20:41", + "nodeType": "YulAssignment", + "src": "11574:20:41", + "value": { + "arguments": [ + { + "name": "ret", + "nativeSrc": "11586:3:41", + "nodeType": "YulIdentifier", + "src": "11586:3:41" + }, + { + "kind": "number", + "nativeSrc": "11591:2:41", + "nodeType": "YulLiteral", + "src": "11591:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11582:3:41", + "nodeType": "YulIdentifier", + "src": "11582:3:41" + }, + "nativeSrc": "11582:12:41", + "nodeType": "YulFunctionCall", + "src": "11582:12:41" + }, + "variableNames": [ + { + "name": "dest", + "nativeSrc": "11574:4:41", + "nodeType": "YulIdentifier", + "src": "11574:4:41" + } + ] + }, + { + "nativeSrc": "11607:33:41", + "nodeType": "YulAssignment", + "src": "11607:33:41", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "self", + "nativeSrc": "11622:4:41", + "nodeType": "YulIdentifier", + "src": "11622:4:41" + }, + { + "kind": "number", + "nativeSrc": "11628:2:41", + "nodeType": "YulLiteral", + "src": "11628:2:41", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11618:3:41", + "nodeType": "YulIdentifier", + "src": "11618:3:41" + }, + "nativeSrc": "11618:13:41", + "nodeType": "YulFunctionCall", + "src": "11618:13:41" + }, + { + "name": "offset", + "nativeSrc": "11633:6:41", + "nodeType": "YulIdentifier", + "src": "11633:6:41" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11614:3:41", + "nodeType": "YulIdentifier", + "src": "11614:3:41" + }, + "nativeSrc": "11614:26:41", + "nodeType": "YulFunctionCall", + "src": "11614:26:41" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "11607:3:41", + "nodeType": "YulIdentifier", + "src": "11607:3:41" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 8322, + "isOffset": false, + "isSlot": false, + "src": "11574:4:41", + "valueSize": 1 + }, + { + "declaration": 8298, + "isOffset": false, + "isSlot": false, + "src": "11633:6:41", + "valueSize": 1 + }, + { + "declaration": 8315, + "isOffset": false, + "isSlot": false, + "src": "11586:3:41", + "valueSize": 1 + }, + { + "declaration": 8296, + "isOffset": false, + "isSlot": false, + "src": "11622:4:41", + "valueSize": 1 + }, + { + "declaration": 8325, + "isOffset": false, + "isSlot": false, + "src": "11607:3:41", + "valueSize": 1 + } + ], + "id": 8327, + "nodeType": "InlineAssembly", + "src": "11551:99:41" + }, + { + "expression": { + "arguments": [ + { + "id": 8329, + "name": "dest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8322, + "src": "11666:4:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8330, + "name": "src", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8325, + "src": "11672:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8331, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8300, + "src": "11677:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8328, + "name": "memcpy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8294, + "src": "11659:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256) pure" + } + }, + "id": 8332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11659:22:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8333, + "nodeType": "ExpressionStatement", + "src": "11659:22:41" + }, + { + "expression": { + "id": 8334, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8315, + "src": "11699:3:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 8304, + "id": 8335, + "nodeType": "Return", + "src": "11692:10:41" + } + ] + }, + "id": 8337, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "substring", + "nameLocation": "11282:9:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8301, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8296, + "mutability": "mutable", + "name": "self", + "nameLocation": "11314:4:41", + "nodeType": "VariableDeclaration", + "scope": 8337, + "src": "11301:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8295, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11301:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8298, + "mutability": "mutable", + "name": "offset", + "nameLocation": "11336:6:41", + "nodeType": "VariableDeclaration", + "scope": 8337, + "src": "11328:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8297, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11328:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8300, + "mutability": "mutable", + "name": "len", + "nameLocation": "11360:3:41", + "nodeType": "VariableDeclaration", + "scope": 8337, + "src": "11352:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8299, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11352:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11291:78:41" + }, + "returnParameters": { + "id": 8304, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8303, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8337, + "src": "11393:12:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8302, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11393:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "11392:14:41" + }, + "scope": 8609, + "src": "11273:436:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "constant": true, + "id": 8340, + "mutability": "constant", + "name": "base32HexTable", + "nameLocation": "11852:14:41", + "nodeType": "VariableDeclaration", + "scope": 8609, + "src": "11837:187:41", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8338, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11837:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "hexValue": "00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f", + "id": 8339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11877:147:41", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e82410dbf01e63aa72c1e18aee3deb28d15751fdce22e55714ad62f7fde606a", + "typeString": "literal_string hex\"00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f\"" + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 8563, + "nodeType": "Block", + "src": "12443:1318:41", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8353, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "12461:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "3532", + "id": 8354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12468:2:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_52_by_1", + "typeString": "int_const 52" + }, + "value": "52" + }, + "src": "12461:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8352, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12453:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12453:18:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8357, + "nodeType": "ExpressionStatement", + "src": "12453:18:41" + }, + { + "assignments": [ + 8359 + ], + "declarations": [ + { + "constant": false, + "id": 8359, + "mutability": "mutable", + "name": "ret", + "nameLocation": "12490:3:41", + "nodeType": "VariableDeclaration", + "scope": 8563, + "src": "12482:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12482:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8361, + "initialValue": { + "hexValue": "30", + "id": 8360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12496:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12482:15:41" + }, + { + "assignments": [ + 8363 + ], + "declarations": [ + { + "constant": false, + "id": 8363, + "mutability": "mutable", + "name": "decoded", + "nameLocation": "12513:7:41", + "nodeType": "VariableDeclaration", + "scope": 8563, + "src": "12507:13:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 8362, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "12507:5:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 8364, + "nodeType": "VariableDeclarationStatement", + "src": "12507:13:41" + }, + { + "body": { + "id": 8433, + "nodeType": "Block", + "src": "12564:324:41", + "statements": [ + { + "assignments": [ + 8376 + ], + "declarations": [ + { + "constant": false, + "id": 8376, + "mutability": "mutable", + "name": "char", + "nameLocation": "12585:4:41", + "nodeType": "VariableDeclaration", + "scope": 8433, + "src": "12578:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 8375, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "12578:6:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + } + ], + "id": 8382, + "initialValue": { + "baseExpression": { + "id": 8377, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8343, + "src": "12592:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8381, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8378, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8345, + "src": "12597:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 8379, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8366, + "src": "12603:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12597:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12592:13:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12578:27:41" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 8386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8384, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8376, + "src": "12627:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30783330", + "id": 8385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12635:4:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "0x30" + }, + "src": "12627:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 8389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8387, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8376, + "src": "12643:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "30783741", + "id": 8388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12651:4:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_122_by_1", + "typeString": "int_const 122" + }, + "value": "0x7A" + }, + "src": "12643:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "12627:28:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8383, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12619:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12619:37:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8392, + "nodeType": "ExpressionStatement", + "src": "12619:37:41" + }, + { + "expression": { + "id": 8408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8393, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "12670:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 8396, + "name": "base32HexTable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8340, + "src": "12686:14:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8406, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 8401, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8376, + "src": "12715:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 8400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12709:5:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 8399, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "12709:5:41", + "typeDescriptions": {} + } + }, + "id": 8402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12709:11:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 8398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12701:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 8397, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12701:7:41", + "typeDescriptions": {} + } + }, + "id": 8403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12701:20:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "30783330", + "id": 8404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12724:4:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "0x30" + }, + "src": "12701:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12686:43:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 8395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12680:5:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 8394, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "12680:5:41", + "typeDescriptions": {} + } + }, + "id": 8407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12680:50:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "12670:60:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 8409, + "nodeType": "ExpressionStatement", + "src": "12670:60:41" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 8413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8411, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "12752:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "30783230", + "id": 8412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:4:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "0x20" + }, + "src": "12752:15:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8410, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12744:7:41", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 8414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12744:24:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8415, + "nodeType": "ExpressionStatement", + "src": "12744:24:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8416, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8366, + "src": "12786:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8417, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "12791:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 8418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12797:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "12791:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12786:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8423, + "nodeType": "IfStatement", + "src": "12782:56:41", + "trueBody": { + "id": 8422, + "nodeType": "Block", + "src": "12800:38:41", + "statements": [ + { + "id": 8421, + "nodeType": "Break", + "src": "12818:5:41" + } + ] + } + }, + { + "expression": { + "id": 8431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8424, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "12851:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8425, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "12858:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "35", + "id": 8426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12865:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "src": "12858:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8428, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12857:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 8429, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "12870:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "12857:20:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12851:26:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8432, + "nodeType": "ExpressionStatement", + "src": "12851:26:41" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8369, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8366, + "src": "12550:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 8370, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "12554:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12550:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8434, + "initializationExpression": { + "assignments": [ + 8366 + ], + "declarations": [ + { + "constant": false, + "id": 8366, + "mutability": "mutable", + "name": "i", + "nameLocation": "12543:1:41", + "nodeType": "VariableDeclaration", + "scope": 8434, + "src": "12535:9:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8365, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12535:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8368, + "initialValue": { + "hexValue": "30", + "id": 8367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12547:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12535:13:41" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 8373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "12559:3:41", + "subExpression": { + "id": 8372, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8366, + "src": "12559:1:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8374, + "nodeType": "ExpressionStatement", + "src": "12559:3:41" + }, + "nodeType": "ForStatement", + "src": "12530:358:41" + }, + { + "assignments": [ + 8436 + ], + "declarations": [ + { + "constant": false, + "id": 8436, + "mutability": "mutable", + "name": "bitlen", + "nameLocation": "12906:6:41", + "nodeType": "VariableDeclaration", + "scope": 8563, + "src": "12898:14:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8435, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12898:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8440, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8437, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "12915:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "35", + "id": 8438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12921:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "src": "12915:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12898:24:41" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8441, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "12936:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "38", + "id": 8442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12942:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "12936:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 8444, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12947:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12936:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8456, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "13063:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "38", + "id": 8457, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13069:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "13063:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "32", + "id": 8459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13074:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "13063:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8478, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "13215:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "38", + "id": 8479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13221:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "13215:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "34", + "id": 8481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13226:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "13215:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8500, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "13369:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "38", + "id": 8501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13375:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "13369:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "35", + "id": 8503, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13380:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "src": "13369:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8522, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8347, + "src": "13523:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "hexValue": "38", + "id": 8523, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13529:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "13523:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "37", + "id": 8525, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13534:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_7_by_1", + "typeString": "int_const 7" + }, + "value": "7" + }, + "src": "13523:12:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 8547, + "nodeType": "Block", + "src": "13674:33:41", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 8544, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "13688:6:41", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 8545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13688:8:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8546, + "nodeType": "ExpressionStatement", + "src": "13688:8:41" + } + ] + }, + "id": 8548, + "nodeType": "IfStatement", + "src": "13519:188:41", + "trueBody": { + "id": 8543, + "nodeType": "Block", + "src": "13537:131:41", + "statements": [ + { + "expression": { + "id": 8537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8527, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13599:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8528, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13606:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "32", + "id": 8529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13613:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "13606:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8531, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13605:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 8534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8532, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "13619:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "33", + "id": 8533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13630:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "13619:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 8535, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13618:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13605:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13599:33:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8538, + "nodeType": "ExpressionStatement", + "src": "13599:33:41" + }, + { + "expression": { + "id": 8541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8539, + "name": "bitlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8436, + "src": "13646:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "33", + "id": 8540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13656:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "13646:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8542, + "nodeType": "ExpressionStatement", + "src": "13646:11:41" + } + ] + } + }, + "id": 8549, + "nodeType": "IfStatement", + "src": "13365:342:41", + "trueBody": { + "id": 8521, + "nodeType": "Block", + "src": "13383:130:41", + "statements": [ + { + "expression": { + "id": 8515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8505, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13444:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8506, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13451:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "34", + "id": 8507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13458:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "13451:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8509, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13450:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 8512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8510, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "13464:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 8511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13475:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13464:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 8513, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13463:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13450:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13444:33:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8516, + "nodeType": "ExpressionStatement", + "src": "13444:33:41" + }, + { + "expression": { + "id": 8519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8517, + "name": "bitlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8436, + "src": "13491:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 8518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13501:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13491:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8520, + "nodeType": "ExpressionStatement", + "src": "13491:11:41" + } + ] + } + }, + "id": 8550, + "nodeType": "IfStatement", + "src": "13211:496:41", + "trueBody": { + "id": 8499, + "nodeType": "Block", + "src": "13229:130:41", + "statements": [ + { + "expression": { + "id": 8493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8483, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13290:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8484, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13297:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "31", + "id": 8485, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13304:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13297:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8487, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13296:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 8490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8488, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "13310:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "34", + "id": 8489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13321:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "13310:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 8491, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13309:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13296:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13290:33:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8494, + "nodeType": "ExpressionStatement", + "src": "13290:33:41" + }, + { + "expression": { + "id": 8497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8495, + "name": "bitlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8436, + "src": "13337:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "34", + "id": 8496, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13347:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "13337:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8498, + "nodeType": "ExpressionStatement", + "src": "13337:11:41" + } + ] + } + }, + "id": 8551, + "nodeType": "IfStatement", + "src": "13059:648:41", + "trueBody": { + "id": 8477, + "nodeType": "Block", + "src": "13077:128:41", + "statements": [ + { + "expression": { + "id": 8471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8461, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13136:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8462, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13143:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "33", + "id": 8463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13150:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "13143:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8465, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13142:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 8468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8466, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "13156:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "32", + "id": 8467, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13167:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "13156:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 8469, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13155:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13142:27:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13136:33:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8472, + "nodeType": "ExpressionStatement", + "src": "13136:33:41" + }, + { + "expression": { + "id": 8475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8473, + "name": "bitlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8436, + "src": "13183:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "32", + "id": 8474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13193:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "13183:11:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8476, + "nodeType": "ExpressionStatement", + "src": "13183:11:41" + } + ] + } + }, + "id": 8552, + "nodeType": "IfStatement", + "src": "12932:775:41", + "trueBody": { + "id": 8455, + "nodeType": "Block", + "src": "12950:103:41", + "statements": [ + { + "expression": { + "id": 8453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8446, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13016:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8447, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13023:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "35", + "id": 8448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13030:1:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "src": "13023:8:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8450, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13022:10:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 8451, + "name": "decoded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8363, + "src": "13035:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13022:20:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13016:26:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8454, + "nodeType": "ExpressionStatement", + "src": "13016:26:41" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8555, + "name": "ret", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8359, + "src": "13732:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "323536", + "id": 8556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13740:3:41", + "typeDescriptions": { + "typeIdentifier": "t_rational_256_by_1", + "typeString": "int_const 256" + }, + "value": "256" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 8557, + "name": "bitlen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8436, + "src": "13746:6:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13740:12:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8559, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13739:14:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13732:21:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13724:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 8553, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "13724:7:41", + "typeDescriptions": {} + } + }, + "id": 8561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13724:30:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 8351, + "id": 8562, + "nodeType": "Return", + "src": "13717:37:41" + } + ] + }, + "documentation": { + "id": 8341, + "nodeType": "StructuredDocumentation", + "src": "12031:271:41", + "text": " @dev Decodes unpadded base32 data of up to one word in length.\n @param self The data to decode.\n @param off Offset into the string to start at.\n @param len Number of characters to decode.\n @return The decoded data, left aligned." + }, + "id": 8564, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "base32HexDecodeWord", + "nameLocation": "12316:19:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8348, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8343, + "mutability": "mutable", + "name": "self", + "nameLocation": "12358:4:41", + "nodeType": "VariableDeclaration", + "scope": 8564, + "src": "12345:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8342, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "12345:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8345, + "mutability": "mutable", + "name": "off", + "nameLocation": "12380:3:41", + "nodeType": "VariableDeclaration", + "scope": 8564, + "src": "12372:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8344, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12372:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8347, + "mutability": "mutable", + "name": "len", + "nameLocation": "12401:3:41", + "nodeType": "VariableDeclaration", + "scope": 8564, + "src": "12393:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8346, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12393:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12335:75:41" + }, + "returnParameters": { + "id": 8351, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8350, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8564, + "src": "12434:7:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 8349, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "12434:7:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "12433:9:41" + }, + "scope": 8609, + "src": "12307:1454:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 8607, + "nodeType": "Block", + "src": "14263:190:41", + "statements": [ + { + "body": { + "id": 8599, + "nodeType": "Block", + "src": "14321:92:41", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 8594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 8590, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8567, + "src": "14339:4:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 8592, + "indexExpression": { + "id": 8591, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8579, + "src": "14344:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14339:9:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 8593, + "name": "needle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8573, + "src": "14352:6:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "14339:19:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8598, + "nodeType": "IfStatement", + "src": "14335:68:41", + "trueBody": { + "id": 8597, + "nodeType": "Block", + "src": "14360:43:41", + "statements": [ + { + "expression": { + "id": 8595, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8579, + "src": "14385:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 8577, + "id": 8596, + "nodeType": "Return", + "src": "14378:10:41" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8582, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8579, + "src": "14297:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8583, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8569, + "src": "14303:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 8584, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8571, + "src": "14309:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14303:9:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14297:15:41", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8600, + "initializationExpression": { + "assignments": [ + 8579 + ], + "declarations": [ + { + "constant": false, + "id": 8579, + "mutability": "mutable", + "name": "idx", + "nameLocation": "14286:3:41", + "nodeType": "VariableDeclaration", + "scope": 8600, + "src": "14278:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8578, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14278:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8581, + "initialValue": { + "id": 8580, + "name": "off", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8569, + "src": "14292:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "14278:17:41" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 8588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "14314:5:41", + "subExpression": { + "id": 8587, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8579, + "src": "14314:3:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8589, + "nodeType": "ExpressionStatement", + "src": "14314:5:41" + }, + "nodeType": "ForStatement", + "src": "14273:140:41" + }, + { + "expression": { + "expression": { + "arguments": [ + { + "id": 8603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14434:7:41", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 8602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14434:7:41", + "typeDescriptions": {} + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "id": 8601, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "14429:4:41", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 8604, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14429:13:41", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_uint256", + "typeString": "type(uint256)" + } + }, + "id": 8605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14443:3:41", + "memberName": "max", + "nodeType": "MemberAccess", + "src": "14429:17:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 8577, + "id": 8606, + "nodeType": "Return", + "src": "14422:24:41" + } + ] + }, + "documentation": { + "id": 8565, + "nodeType": "StructuredDocumentation", + "src": "13767:347:41", + "text": " @dev Finds the first occurrence of the byte `needle` in `self`.\n @param self The string to search\n @param off The offset to start searching at\n @param len The number of bytes to search\n @param needle The byte to search for\n @return The offset of `needle` in `self`, or 2**256-1 if it was not found." + }, + "id": 8608, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "find", + "nameLocation": "14128:4:41", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8574, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8567, + "mutability": "mutable", + "name": "self", + "nameLocation": "14155:4:41", + "nodeType": "VariableDeclaration", + "scope": 8608, + "src": "14142:17:41", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 8566, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14142:5:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8569, + "mutability": "mutable", + "name": "off", + "nameLocation": "14177:3:41", + "nodeType": "VariableDeclaration", + "scope": 8608, + "src": "14169:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8568, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14169:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8571, + "mutability": "mutable", + "name": "len", + "nameLocation": "14198:3:41", + "nodeType": "VariableDeclaration", + "scope": 8608, + "src": "14190:11:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8570, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14190:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8573, + "mutability": "mutable", + "name": "needle", + "nameLocation": "14218:6:41", + "nodeType": "VariableDeclaration", + "scope": 8608, + "src": "14211:13:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 8572, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "14211:6:41", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + } + ], + "src": "14132:98:41" + }, + "returnParameters": { + "id": 8577, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8576, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8608, + "src": "14254:7:41", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8575, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14254:7:41", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14253:9:41" + }, + "scope": 8609, + "src": "14119:334:41", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 8610, + "src": "56:14399:41", + "usedErrors": [ + 7681 + ], + "usedEvents": [] + } + ], + "src": "31:14425:41" + }, + "id": 41 + }, + "@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol", + "exportedSymbols": { + "Context": [ + 14871 + ], + "ERC20Recoverable": [ + 8638 + ], + "IERC20": [ + 13423 + ], + "Ownable": [ + 13167 + ] + }, + "id": 8639, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 8611, + "literals": [ + "solidity", + ">=", + "0.8", + ".17", + "<", + "0.9", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "31:32:42" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 8612, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 8639, + "sourceUnit": 13168, + "src": "65:52:42", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", + "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", + "id": 8613, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 8639, + "sourceUnit": 13424, + "src": "118:56:42", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 8615, + "name": "Ownable", + "nameLocations": [ + "300:7:42" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "300:7:42" + }, + "id": 8616, + "nodeType": "InheritanceSpecifier", + "src": "300:7:42" + } + ], + "canonicalName": "ERC20Recoverable", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 8614, + "nodeType": "StructuredDocumentation", + "src": "176:93:42", + "text": "@notice Contract is used to recover ERC20 tokens sent to the contract by mistake." + }, + "fullyImplemented": true, + "id": 8638, + "linearizedBaseContracts": [ + 8638, + 13167, + 14871 + ], + "name": "ERC20Recoverable", + "nameLocation": "280:16:42", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 8636, + "nodeType": "Block", + "src": "750:54:42", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 8632, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8621, + "src": "784:3:42", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8633, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8623, + "src": "789:7:42", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 8629, + "name": "_token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8619, + "src": "767:6:42", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8628, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13423, + "src": "760:6:42", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$13423_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 8630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "760:14:42", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$13423", + "typeString": "contract IERC20" + } + }, + "id": 8631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "775:8:42", + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 13390, + "src": "760:23:42", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 8634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "760:37:42", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8635, + "nodeType": "ExpressionStatement", + "src": "760:37:42" + } + ] + }, + "documentation": { + "id": 8617, + "nodeType": "StructuredDocumentation", + "src": "314:314:42", + "text": "@notice Recover ERC20 tokens sent to the contract by mistake.\n@dev The contract is Ownable and only the owner can call the recover function.\n@param _to The address to send the tokens to.\n@param _token The address of the ERC20 token to recover\n@param _amount The amount of tokens to recover." + }, + "functionSelector": "5d3590d5", + "id": 8637, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 8626, + "kind": "modifierInvocation", + "modifierName": { + "id": 8625, + "name": "onlyOwner", + "nameLocations": [ + "740:9:42" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "740:9:42" + }, + "nodeType": "ModifierInvocation", + "src": "740:9:42" + } + ], + "name": "recoverFunds", + "nameLocation": "642:12:42", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8624, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8619, + "mutability": "mutable", + "name": "_token", + "nameLocation": "672:6:42", + "nodeType": "VariableDeclaration", + "scope": 8637, + "src": "664:14:42", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "664:7:42", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8621, + "mutability": "mutable", + "name": "_to", + "nameLocation": "696:3:42", + "nodeType": "VariableDeclaration", + "scope": 8637, + "src": "688:11:42", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8620, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "688:7:42", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8623, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "717:7:42", + "nodeType": "VariableDeclaration", + "scope": 8637, + "src": "709:15:42", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8622, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "709:7:42", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "654:76:42" + }, + "returnParameters": { + "id": 8627, + "nodeType": "ParameterList", + "parameters": [], + "src": "750:0:42" + }, + "scope": 8638, + "src": "633:171:42", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 8639, + "src": "271:535:42", + "usedErrors": [], + "usedEvents": [ + 13068 + ] + } + ], + "src": "31:776:42" + }, + "id": 42 + }, + "@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol", + "exportedSymbols": { + "Context": [ + 14871 + ], + "Controllable": [ + 8687 + ], + "Ownable": [ + 13167 + ] + }, + "id": 8688, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 8640, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:43" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 8641, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 8688, + "sourceUnit": 13168, + "src": "57:52:43", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 8642, + "name": "Ownable", + "nameLocations": [ + "136:7:43" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "136:7:43" + }, + "id": 8643, + "nodeType": "InheritanceSpecifier", + "src": "136:7:43" + } + ], + "canonicalName": "Controllable", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 8687, + "linearizedBaseContracts": [ + 8687, + 13167, + 14871 + ], + "name": "Controllable", + "nameLocation": "120:12:43", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "da8c229e", + "id": 8647, + "mutability": "mutable", + "name": "controllers", + "nameLocation": "182:11:43", + "nodeType": "VariableDeclaration", + "scope": 8687, + "src": "150:43:43", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 8646, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 8644, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "158:7:43", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "150:24:43", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 8645, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "169:4:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "anonymous": false, + "eventSelector": "4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87", + "id": 8653, + "name": "ControllerChanged", + "nameLocation": "206:17:43", + "nodeType": "EventDefinition", + "parameters": { + "id": 8652, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8649, + "indexed": true, + "mutability": "mutable", + "name": "controller", + "nameLocation": "240:10:43", + "nodeType": "VariableDeclaration", + "scope": 8653, + "src": "224:26:43", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8648, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "224:7:43", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8651, + "indexed": false, + "mutability": "mutable", + "name": "active", + "nameLocation": "257:6:43", + "nodeType": "VariableDeclaration", + "scope": 8653, + "src": "252:11:43", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8650, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "252:4:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "223:41:43" + }, + "src": "200:65:43" + }, + { + "body": { + "id": 8673, + "nodeType": "Block", + "src": "344:101:43", + "statements": [ + { + "expression": { + "id": 8666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 8662, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8647, + "src": "354:11:43", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 8664, + "indexExpression": { + "id": 8663, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8655, + "src": "366:10:43", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "354:23:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 8665, + "name": "active", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8657, + "src": "380:6:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "354:32:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8667, + "nodeType": "ExpressionStatement", + "src": "354:32:43" + }, + { + "eventCall": { + "arguments": [ + { + "id": 8669, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8655, + "src": "419:10:43", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8670, + "name": "active", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8657, + "src": "431:6:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8668, + "name": "ControllerChanged", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8653, + "src": "401:17:43", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 8671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "401:37:43", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8672, + "nodeType": "EmitStatement", + "src": "396:42:43" + } + ] + }, + "functionSelector": "e0dba60f", + "id": 8674, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 8660, + "kind": "modifierInvocation", + "modifierName": { + "id": 8659, + "name": "onlyOwner", + "nameLocations": [ + "334:9:43" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "334:9:43" + }, + "nodeType": "ModifierInvocation", + "src": "334:9:43" + } + ], + "name": "setController", + "nameLocation": "280:13:43", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8655, + "mutability": "mutable", + "name": "controller", + "nameLocation": "302:10:43", + "nodeType": "VariableDeclaration", + "scope": 8674, + "src": "294:18:43", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8654, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "294:7:43", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8657, + "mutability": "mutable", + "name": "active", + "nameLocation": "319:6:43", + "nodeType": "VariableDeclaration", + "scope": 8674, + "src": "314:11:43", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8656, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "314:4:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "293:33:43" + }, + "returnParameters": { + "id": 8661, + "nodeType": "ParameterList", + "parameters": [], + "src": "344:0:43" + }, + "scope": 8687, + "src": "271:174:43", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 8685, + "nodeType": "Block", + "src": "477:138:43", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 8677, + "name": "controllers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8647, + "src": "508:11:43", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 8680, + "indexExpression": { + "expression": { + "id": 8678, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "520:3:43", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "524:6:43", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "520:10:43", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "508:23:43", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f6e74726f6c6c6572", + "id": 8681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "545:42:43", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "typeString": "literal_string \"Controllable: Caller is not a controller\"" + }, + "value": "Controllable: Caller is not a controller" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "typeString": "literal_string \"Controllable: Caller is not a controller\"" + } + ], + "id": 8676, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "487:7:43", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "487:110:43", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8683, + "nodeType": "ExpressionStatement", + "src": "487:110:43" + }, + { + "id": 8684, + "nodeType": "PlaceholderStatement", + "src": "607:1:43" + } + ] + }, + "id": 8686, + "name": "onlyController", + "nameLocation": "460:14:43", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 8675, + "nodeType": "ParameterList", + "parameters": [], + "src": "474:2:43" + }, + "src": "451:164:43", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 8688, + "src": "111:506:43", + "usedErrors": [], + "usedEvents": [ + 8653, + 13068 + ] + } + ], + "src": "31:587:43" + }, + "id": 43 + }, + "@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "ERC1155Fuse": [ + 9680 + ], + "ERC165": [ + 15124 + ], + "IERC1155": [ + 13289 + ], + "IERC1155MetadataURI": [ + 13345 + ], + "IERC1155Receiver": [ + 13330 + ], + "IERC165": [ + 15136 + ] + }, + "id": 9681, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 8689, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:44" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "file": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "id": 8690, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 9681, + "sourceUnit": 15125, + "src": "57:64:44", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol", + "file": "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol", + "id": 8691, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 9681, + "sourceUnit": 13331, + "src": "122:68:44", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "id": 8692, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 9681, + "sourceUnit": 13290, + "src": "191:60:44", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", + "file": "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", + "id": 8693, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 9681, + "sourceUnit": 13346, + "src": "252:82:44", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Address.sol", + "file": "@openzeppelin/contracts/utils/Address.sol", + "id": 8694, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 9681, + "sourceUnit": 14842, + "src": "335:51:44", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 8695, + "name": "ERC165", + "nameLocations": [ + "871:6:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "871:6:44" + }, + "id": 8696, + "nodeType": "InheritanceSpecifier", + "src": "871:6:44" + }, + { + "baseName": { + "id": 8697, + "name": "IERC1155", + "nameLocations": [ + "879:8:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13289, + "src": "879:8:44" + }, + "id": 8698, + "nodeType": "InheritanceSpecifier", + "src": "879:8:44" + }, + { + "baseName": { + "id": 8699, + "name": "IERC1155MetadataURI", + "nameLocations": [ + "889:19:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13345, + "src": "889:19:44" + }, + "id": 8700, + "nodeType": "InheritanceSpecifier", + "src": "889:19:44" + } + ], + "canonicalName": "ERC1155Fuse", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "id": 9680, + "linearizedBaseContracts": [ + 9680, + 13345, + 13289, + 15124, + 15136 + ], + "name": "ERC1155Fuse", + "nameLocation": "856:11:44", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 8703, + "libraryName": { + "id": 8701, + "name": "Address", + "nameLocations": [ + "921:7:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14841, + "src": "921:7:44" + }, + "nodeType": "UsingForDirective", + "src": "915:26:44", + "typeName": { + "id": 8702, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "933:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "anonymous": false, + "documentation": { + "id": 8704, + "nodeType": "StructuredDocumentation", + "src": "946:94:44", + "text": " @dev Emitted when `owner` enables `approved` to manage the `tokenId` token." + }, + "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "id": 8712, + "name": "Approval", + "nameLocation": "1051:8:44", + "nodeType": "EventDefinition", + "parameters": { + "id": 8711, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8706, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1085:5:44", + "nodeType": "VariableDeclaration", + "scope": 8712, + "src": "1069:21:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8705, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1069:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8708, + "indexed": true, + "mutability": "mutable", + "name": "approved", + "nameLocation": "1116:8:44", + "nodeType": "VariableDeclaration", + "scope": 8712, + "src": "1100:24:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8707, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1100:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8710, + "indexed": true, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "1150:7:44", + "nodeType": "VariableDeclaration", + "scope": 8712, + "src": "1134:23:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8709, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1134:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1059:104:44" + }, + "src": "1045:119:44" + }, + { + "constant": false, + "functionSelector": "ed70554d", + "id": 8716, + "mutability": "mutable", + "name": "_tokens", + "nameLocation": "1204:7:44", + "nodeType": "VariableDeclaration", + "scope": 9680, + "src": "1169:42:44", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "typeName": { + "id": 8715, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 8713, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1177:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1169:27:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 8714, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1188:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "constant": false, + "id": 8722, + "mutability": "mutable", + "name": "_operatorApprovals", + "nameLocation": "1319:18:44", + "nodeType": "VariableDeclaration", + "scope": 9680, + "src": "1266:71:44", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "typeName": { + "id": 8721, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 8717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1274:7:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1266:44:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 8720, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 8718, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1293:7:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1285:24:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 8719, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1304:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 8726, + "mutability": "mutable", + "name": "_tokenApprovals", + "nameLocation": "1429:15:44", + "nodeType": "VariableDeclaration", + "scope": 9680, + "src": "1392:52:44", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "typeName": { + "id": 8725, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 8723, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1400:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1392:27:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 8724, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1411:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 8741, + "nodeType": "Block", + "src": "1701:72:44", + "statements": [ + { + "assignments": [ + 8734, + null, + null + ], + "declarations": [ + { + "constant": false, + "id": 8734, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1720:5:44", + "nodeType": "VariableDeclaration", + "scope": 8741, + "src": "1712:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8733, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1712:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + null, + null + ], + "id": 8738, + "initialValue": { + "arguments": [ + { + "id": 8736, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8728, + "src": "1741:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8735, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9027, + "src": "1733:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 8737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1733:11:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1711:33:44" + }, + { + "expression": { + "id": 8739, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8734, + "src": "1761:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 8732, + "id": 8740, + "nodeType": "Return", + "src": "1754:12:44" + } + ] + }, + "functionSelector": "6352211e", + "id": 8742, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "1643:7:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8728, + "mutability": "mutable", + "name": "id", + "nameLocation": "1659:2:44", + "nodeType": "VariableDeclaration", + "scope": 8742, + "src": "1651:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8727, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1651:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1650:12:44" + }, + "returnParameters": { + "id": 8732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8731, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8742, + "src": "1692:7:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8730, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1692:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1691:9:44" + }, + "scope": 9680, + "src": "1634:139:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 8782, + "nodeType": "Block", + "src": "1891:325:44", + "statements": [ + { + "assignments": [ + 8751 + ], + "declarations": [ + { + "constant": false, + "id": 8751, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1909:5:44", + "nodeType": "VariableDeclaration", + "scope": 8782, + "src": "1901:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8750, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1901:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 8755, + "initialValue": { + "arguments": [ + { + "id": 8753, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8747, + "src": "1925:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8752, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8742, + "src": "1917:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 8754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1917:16:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1901:32:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 8759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8757, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8745, + "src": "1951:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 8758, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8751, + "src": "1957:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1951:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e6572", + "id": 8760, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1964:35:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "typeString": "literal_string \"ERC721: approval to current owner\"" + }, + "value": "ERC721: approval to current owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "typeString": "literal_string \"ERC721: approval to current owner\"" + } + ], + "id": 8756, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1943:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1943:57:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8762, + "nodeType": "ExpressionStatement", + "src": "1943:57:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 8767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8764, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2032:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2036:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2032:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 8766, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8751, + "src": "2046:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2032:19:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 8769, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8751, + "src": "2072:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 8770, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2079:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2083:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2079:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8768, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8980, + "src": "2055:16:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 8772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2055:35:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2032:58:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "id": 8774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2104:63:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "typeString": "literal_string \"ERC721: approve caller is not token owner or approved for all\"" + }, + "value": "ERC721: approve caller is not token owner or approved for all" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "typeString": "literal_string \"ERC721: approve caller is not token owner or approved for all\"" + } + ], + "id": 8763, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2011:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2011:166:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8776, + "nodeType": "ExpressionStatement", + "src": "2011:166:44" + }, + { + "expression": { + "arguments": [ + { + "id": 8778, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8745, + "src": "2197:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8779, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8747, + "src": "2201:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8777, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9679, + "src": "2188:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 8780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2188:21:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8781, + "nodeType": "ExpressionStatement", + "src": "2188:21:44" + } + ] + }, + "documentation": { + "id": 8743, + "nodeType": "StructuredDocumentation", + "src": "1779:46:44", + "text": " @dev See {IERC721-approve}." + }, + "functionSelector": "095ea7b3", + "id": 8783, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "1839:7:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8748, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8745, + "mutability": "mutable", + "name": "to", + "nameLocation": "1855:2:44", + "nodeType": "VariableDeclaration", + "scope": 8783, + "src": "1847:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8744, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1847:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8747, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "1867:7:44", + "nodeType": "VariableDeclaration", + "scope": 8783, + "src": "1859:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8746, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1859:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1846:29:44" + }, + "returnParameters": { + "id": 8749, + "nodeType": "ParameterList", + "parameters": [], + "src": "1891:0:44" + }, + "scope": 9680, + "src": "1830:386:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 8795, + "nodeType": "Block", + "src": "2367:48:44", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 8791, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8726, + "src": "2384:15:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 8793, + "indexExpression": { + "id": 8792, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8786, + "src": "2400:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2384:24:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 8790, + "id": 8794, + "nodeType": "Return", + "src": "2377:31:44" + } + ] + }, + "documentation": { + "id": 8784, + "nodeType": "StructuredDocumentation", + "src": "2222:50:44", + "text": " @dev See {IERC721-getApproved}." + }, + "functionSelector": "081812fc", + "id": 8796, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getApproved", + "nameLocation": "2286:11:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8786, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2315:7:44", + "nodeType": "VariableDeclaration", + "scope": 8796, + "src": "2307:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8785, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2307:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2297:31:44" + }, + "returnParameters": { + "id": 8790, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8789, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8796, + "src": "2358:7:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8788, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2358:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2357:9:44" + }, + "scope": 9680, + "src": "2277:138:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 15123, + 15135 + ], + "body": { + "id": 8826, + "nodeType": "Block", + "src": "2604:197:44", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 8812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8807, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8799, + "src": "2633:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 8809, + "name": "IERC1155", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13289, + "src": "2653:8:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155_$13289_$", + "typeString": "type(contract IERC1155)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC1155_$13289_$", + "typeString": "type(contract IERC1155)" + } + ], + "id": 8808, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "2648:4:44", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 8810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2648:14:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC1155_$13289", + "typeString": "type(contract IERC1155)" + } + }, + "id": 8811, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2663:11:44", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "2648:26:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "2633:41:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 8818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8813, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8799, + "src": "2690:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 8815, + "name": "IERC1155MetadataURI", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13345, + "src": "2710:19:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155MetadataURI_$13345_$", + "typeString": "type(contract IERC1155MetadataURI)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC1155MetadataURI_$13345_$", + "typeString": "type(contract IERC1155MetadataURI)" + } + ], + "id": 8814, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "2705:4:44", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 8816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2705:25:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC1155MetadataURI_$13345", + "typeString": "type(contract IERC1155MetadataURI)" + } + }, + "id": 8817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2731:11:44", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "2705:37:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "2690:52:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2633:109:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 8822, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8799, + "src": "2782:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 8820, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "2758:5:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_ERC1155Fuse_$9680_$", + "typeString": "type(contract super ERC1155Fuse)" + } + }, + "id": 8821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2764:17:44", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 15123, + "src": "2758:23:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 8823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2758:36:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2633:161:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8806, + "id": 8825, + "nodeType": "Return", + "src": "2614:180:44" + } + ] + }, + "documentation": { + "id": 8797, + "nodeType": "StructuredDocumentation", + "src": "2421:56:44", + "text": " @dev See {IERC165-supportsInterface}." + }, + "functionSelector": "01ffc9a7", + "id": 8827, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "2491:17:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 8803, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 8801, + "name": "ERC165", + "nameLocations": [ + "2572:6:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "2572:6:44" + }, + { + "id": 8802, + "name": "IERC165", + "nameLocations": [ + "2580:7:44" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "2580:7:44" + } + ], + "src": "2563:25:44" + }, + "parameters": { + "id": 8800, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8799, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "2525:11:44", + "nodeType": "VariableDeclaration", + "scope": 8827, + "src": "2518:18:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 8798, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2518:6:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "2508:34:44" + }, + "returnParameters": { + "id": 8806, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8805, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8827, + "src": "2598:4:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8804, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2598:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2597:6:44" + }, + "scope": 9680, + "src": "2482:319:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13227 + ], + "body": { + "id": 8863, + "nodeType": "Block", + "src": "3060:247:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 8844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8839, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8830, + "src": "3091:7:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 8842, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3110:1:44", + "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": 8841, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3102:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 8840, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3102:7:44", + "typeDescriptions": {} + } + }, + "id": 8843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3102:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3091:21:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a2062616c616e636520717565727920666f7220746865207a65726f2061646472657373", + "id": 8845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3126:45:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9", + "typeString": "literal_string \"ERC1155: balance query for the zero address\"" + }, + "value": "ERC1155: balance query for the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9", + "typeString": "literal_string \"ERC1155: balance query for the zero address\"" + } + ], + "id": 8838, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3070:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3070:111:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8847, + "nodeType": "ExpressionStatement", + "src": "3070:111:44" + }, + { + "assignments": [ + 8849 + ], + "declarations": [ + { + "constant": false, + "id": 8849, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3199:5:44", + "nodeType": "VariableDeclaration", + "scope": 8863, + "src": "3191:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8848, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3191:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 8853, + "initialValue": { + "arguments": [ + { + "id": 8851, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8832, + "src": "3215:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8850, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8742, + "src": "3207:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 8852, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3207:11:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3191:27:44" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 8856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8854, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8849, + "src": "3232:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 8855, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8830, + "src": "3241:7:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3232:16:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8860, + "nodeType": "IfStatement", + "src": "3228:55:44", + "trueBody": { + "id": 8859, + "nodeType": "Block", + "src": "3250:33:44", + "statements": [ + { + "expression": { + "hexValue": "31", + "id": 8857, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3271:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "functionReturnParameters": 8837, + "id": 8858, + "nodeType": "Return", + "src": "3264:8:44" + } + ] + } + }, + { + "expression": { + "hexValue": "30", + "id": 8861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3299:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 8837, + "id": 8862, + "nodeType": "Return", + "src": "3292:8:44" + } + ] + }, + "documentation": { + "id": 8828, + "nodeType": "StructuredDocumentation", + "src": "2807:131:44", + "text": " @dev See {IERC1155-balanceOf}.\n Requirements:\n - `account` cannot be the zero address." + }, + "functionSelector": "00fdd58e", + "id": 8864, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "2952:9:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 8834, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3033:8:44" + }, + "parameters": { + "id": 8833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8830, + "mutability": "mutable", + "name": "account", + "nameLocation": "2979:7:44", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "2971:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8829, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2971:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8832, + "mutability": "mutable", + "name": "id", + "nameLocation": "3004:2:44", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "2996:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2996:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2961:51:44" + }, + "returnParameters": { + "id": 8837, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8836, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "3051:7:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8835, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3051:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3050:9:44" + }, + "scope": 9680, + "src": "2943:364:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13240 + ], + "body": { + "id": 8927, + "nodeType": "Block", + "src": "3615:369:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8879, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8868, + "src": "3646:8:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 8880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3655:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3646:15:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 8881, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8871, + "src": "3665:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 8882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3669:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3665:10:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3646:29:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a206163636f756e747320616e6420696473206c656e677468206d69736d61746368", + "id": 8884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3689:43:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5", + "typeString": "literal_string \"ERC1155: accounts and ids length mismatch\"" + }, + "value": "ERC1155: accounts and ids length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5", + "typeString": "literal_string \"ERC1155: accounts and ids length mismatch\"" + } + ], + "id": 8878, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3625:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3625:117:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8886, + "nodeType": "ExpressionStatement", + "src": "3625:117:44" + }, + { + "assignments": [ + 8891 + ], + "declarations": [ + { + "constant": false, + "id": 8891, + "mutability": "mutable", + "name": "batchBalances", + "nameLocation": "3770:13:44", + "nodeType": "VariableDeclaration", + "scope": 8927, + "src": "3753:30:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 8889, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3753:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8890, + "nodeType": "ArrayTypeName", + "src": "3753:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "id": 8898, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 8895, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8868, + "src": "3800:8:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 8896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3809:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3800:15:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "3786:13:44", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (uint256[] memory)" + }, + "typeName": { + "baseType": { + "id": 8892, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3790:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8893, + "nodeType": "ArrayTypeName", + "src": "3790:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + } + }, + "id": 8897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3786:30:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3753:63:44" + }, + { + "body": { + "id": 8923, + "nodeType": "Block", + "src": "3873:74:44", + "statements": [ + { + "expression": { + "id": 8921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 8910, + "name": "batchBalances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8891, + "src": "3887:13:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 8912, + "indexExpression": { + "id": 8911, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8900, + "src": "3901:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3887:16:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 8914, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8868, + "src": "3916:8:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 8916, + "indexExpression": { + "id": 8915, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8900, + "src": "3925:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3916:11:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 8917, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8871, + "src": "3929:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 8919, + "indexExpression": { + "id": 8918, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8900, + "src": "3933:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3929:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8913, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8864, + "src": "3906:9:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (address,uint256) view returns (uint256)" + } + }, + "id": 8920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3906:30:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3887:49:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8922, + "nodeType": "ExpressionStatement", + "src": "3887:49:44" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8906, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8903, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8900, + "src": "3847:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 8904, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8868, + "src": "3851:8:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 8905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3860:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3851:15:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3847:19:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8924, + "initializationExpression": { + "assignments": [ + 8900 + ], + "declarations": [ + { + "constant": false, + "id": 8900, + "mutability": "mutable", + "name": "i", + "nameLocation": "3840:1:44", + "nodeType": "VariableDeclaration", + "scope": 8924, + "src": "3832:9:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3832:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8902, + "initialValue": { + "hexValue": "30", + "id": 8901, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3844:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3832:13:44" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 8908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "3868:3:44", + "subExpression": { + "id": 8907, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8900, + "src": "3870:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8909, + "nodeType": "ExpressionStatement", + "src": "3868:3:44" + }, + "nodeType": "ForStatement", + "src": "3827:120:44" + }, + { + "expression": { + "id": 8925, + "name": "batchBalances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8891, + "src": "3964:13:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "functionReturnParameters": 8877, + "id": 8926, + "nodeType": "Return", + "src": "3957:20:44" + } + ] + }, + "documentation": { + "id": 8865, + "nodeType": "StructuredDocumentation", + "src": "3313:146:44", + "text": " @dev See {IERC1155-balanceOfBatch}.\n Requirements:\n - `accounts` and `ids` must have the same length." + }, + "functionSelector": "4e1273f4", + "id": 8928, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOfBatch", + "nameLocation": "3473:14:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 8873, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3579:8:44" + }, + "parameters": { + "id": 8872, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8868, + "mutability": "mutable", + "name": "accounts", + "nameLocation": "3514:8:44", + "nodeType": "VariableDeclaration", + "scope": 8928, + "src": "3497:25:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 8866, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3497:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 8867, + "nodeType": "ArrayTypeName", + "src": "3497:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8871, + "mutability": "mutable", + "name": "ids", + "nameLocation": "3549:3:44", + "nodeType": "VariableDeclaration", + "scope": 8928, + "src": "3532:20:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 8869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3532:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8870, + "nodeType": "ArrayTypeName", + "src": "3532:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3487:71:44" + }, + "returnParameters": { + "id": 8877, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8876, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8928, + "src": "3597:16:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 8874, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3597:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8875, + "nodeType": "ArrayTypeName", + "src": "3597:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3596:18:44" + }, + "scope": 9680, + "src": "3464:520:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13248 + ], + "body": { + "id": 8961, + "nodeType": "Block", + "src": "4158:250:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 8941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8938, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4189:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4193:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4189:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 8940, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8931, + "src": "4203:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4189:22:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a2073657474696e6720617070726f76616c2073746174757320666f722073656c66", + "id": 8942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4225:43:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "typeString": "literal_string \"ERC1155: setting approval status for self\"" + }, + "value": "ERC1155: setting approval status for self" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "typeString": "literal_string \"ERC1155: setting approval status for self\"" + } + ], + "id": 8937, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4168:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8943, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4168:110:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8944, + "nodeType": "ExpressionStatement", + "src": "4168:110:44" + }, + { + "expression": { + "id": 8952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 8945, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8722, + "src": "4289:18:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 8949, + "indexExpression": { + "expression": { + "id": 8946, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4308:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4312:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4308:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4289:30:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 8950, + "indexExpression": { + "id": 8948, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8931, + "src": "4320:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4289:40:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 8951, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8933, + "src": "4332:8:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4289:51:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8953, + "nodeType": "ExpressionStatement", + "src": "4289:51:44" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 8955, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4370:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4374:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4370:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8957, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8931, + "src": "4382:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8958, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8933, + "src": "4392:8:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 8954, + "name": "ApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13210, + "src": "4355:14:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 8959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4355:46:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8960, + "nodeType": "EmitStatement", + "src": "4350:51:44" + } + ] + }, + "documentation": { + "id": 8929, + "nodeType": "StructuredDocumentation", + "src": "3990:57:44", + "text": " @dev See {IERC1155-setApprovalForAll}." + }, + "functionSelector": "a22cb465", + "id": 8962, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "4061:17:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 8935, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4149:8:44" + }, + "parameters": { + "id": 8934, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8931, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4096:8:44", + "nodeType": "VariableDeclaration", + "scope": 8962, + "src": "4088:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8930, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4088:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8933, + "mutability": "mutable", + "name": "approved", + "nameLocation": "4119:8:44", + "nodeType": "VariableDeclaration", + "scope": 8962, + "src": "4114:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8932, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4114:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4078:55:44" + }, + "returnParameters": { + "id": 8936, + "nodeType": "ParameterList", + "parameters": [], + "src": "4158:0:44" + }, + "scope": 9680, + "src": "4052:356:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13258 + ], + "body": { + "id": 8979, + "nodeType": "Block", + "src": "4602:61:44", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 8973, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8722, + "src": "4619:18:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 8975, + "indexExpression": { + "id": 8974, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8965, + "src": "4638:7:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4619:27:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 8977, + "indexExpression": { + "id": 8976, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8967, + "src": "4647:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4619:37:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8972, + "id": 8978, + "nodeType": "Return", + "src": "4612:44:44" + } + ] + }, + "documentation": { + "id": 8963, + "nodeType": "StructuredDocumentation", + "src": "4414:56:44", + "text": " @dev See {IERC1155-isApprovedForAll}." + }, + "functionSelector": "e985e9c5", + "id": 8980, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "4484:16:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 8969, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4578:8:44" + }, + "parameters": { + "id": 8968, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8965, + "mutability": "mutable", + "name": "account", + "nameLocation": "4518:7:44", + "nodeType": "VariableDeclaration", + "scope": 8980, + "src": "4510:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8964, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4510:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8967, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4543:8:44", + "nodeType": "VariableDeclaration", + "scope": 8980, + "src": "4535:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8966, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4535:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4500:57:44" + }, + "returnParameters": { + "id": 8972, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8971, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8980, + "src": "4596:4:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8970, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4596:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4595:6:44" + }, + "scope": 9680, + "src": "4475:188:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 9026, + "nodeType": "Block", + "src": "4861:151:44", + "statements": [ + { + "assignments": [ + 8993 + ], + "declarations": [ + { + "constant": false, + "id": 8993, + "mutability": "mutable", + "name": "t", + "nameLocation": "4879:1:44", + "nodeType": "VariableDeclaration", + "scope": 9026, + "src": "4871:9:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8992, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4871:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8997, + "initialValue": { + "baseExpression": { + "id": 8994, + "name": "_tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8716, + "src": "4883:7:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 8996, + "indexExpression": { + "id": 8995, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8983, + "src": "4891:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4883:16:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4871:28:44" + }, + { + "expression": { + "id": 9006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8998, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8986, + "src": "4909:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 9003, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8993, + "src": "4933:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4925:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 9001, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "4925:7:44", + "typeDescriptions": {} + } + }, + "id": 9004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4925:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 9000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4917:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 8999, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4917:7:44", + "typeDescriptions": {} + } + }, + "id": 9005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4917:19:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4909:27:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 9007, + "nodeType": "ExpressionStatement", + "src": "4909:27:44" + }, + { + "expression": { + "id": 9015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 9008, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8990, + "src": "4946:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9011, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8993, + "src": "4962:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "313932", + "id": 9012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4967:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_192_by_1", + "typeString": "int_const 192" + }, + "value": "192" + }, + "src": "4962:8:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4955:6:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 9009, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "4955:6:44", + "typeDescriptions": {} + } + }, + "id": 9014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4955:16:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "4946:25:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 9016, + "nodeType": "ExpressionStatement", + "src": "4946:25:44" + }, + { + "expression": { + "id": 9024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 9017, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8988, + "src": "4981:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9020, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8993, + "src": "4996:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "313630", + "id": 9021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5001:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_160_by_1", + "typeString": "int_const 160" + }, + "value": "160" + }, + "src": "4996:8:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9019, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4989:6:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" + }, + "typeName": { + "id": 9018, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "4989:6:44", + "typeDescriptions": {} + } + }, + "id": 9023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4989:16:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "4981:24:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 9025, + "nodeType": "ExpressionStatement", + "src": "4981:24:44" + } + ] + }, + "documentation": { + "id": 8981, + "nodeType": "StructuredDocumentation", + "src": "4669:66:44", + "text": " @dev Returns the Name's owner address and fuses" + }, + "functionSelector": "0178fe3f", + "id": 9027, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getData", + "nameLocation": "4749:7:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8983, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4774:7:44", + "nodeType": "VariableDeclaration", + "scope": 9027, + "src": "4766:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4766:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4756:31:44" + }, + "returnParameters": { + "id": 8991, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8986, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4825:5:44", + "nodeType": "VariableDeclaration", + "scope": 9027, + "src": "4817:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8985, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4817:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8988, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "4839:5:44", + "nodeType": "VariableDeclaration", + "scope": 9027, + "src": "4832:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 8987, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "4832:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8990, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "4853:6:44", + "nodeType": "VariableDeclaration", + "scope": 9027, + "src": "4846:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 8989, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "4846:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "4816:44:44" + }, + "scope": 9680, + "src": "4740:272:44", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13272 + ], + "body": { + "id": 9074, + "nodeType": "Block", + "src": "5248:285:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9043, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9032, + "src": "5266:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 9046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5280:1:44", + "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": 9045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5272:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9044, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5272:7:44", + "typeDescriptions": {} + } + }, + "id": 9047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5272:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5266:16:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a207472616e7366657220746f20746865207a65726f2061646472657373", + "id": 9049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5284:39:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "typeString": "literal_string \"ERC1155: transfer to the zero address\"" + }, + "value": "ERC1155: transfer to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "typeString": "literal_string \"ERC1155: transfer to the zero address\"" + } + ], + "id": 9042, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5258:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9050, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5258:66:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9051, + "nodeType": "ExpressionStatement", + "src": "5258:66:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 9062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9053, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9030, + "src": "5355:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 9054, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "5363:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5367:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5363:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5355:18:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 9058, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9030, + "src": "5394:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 9059, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "5400:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5404:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5400:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9057, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8980, + "src": "5377:16:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 9061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5377:34:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5355:56:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", + "id": 9063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5425:43:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a", + "typeString": "literal_string \"ERC1155: caller is not owner nor approved\"" + }, + "value": "ERC1155: caller is not owner nor approved" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a", + "typeString": "literal_string \"ERC1155: caller is not owner nor approved\"" + } + ], + "id": 9052, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5334:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5334:144:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9065, + "nodeType": "ExpressionStatement", + "src": "5334:144:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9067, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9030, + "src": "5499:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9068, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9032, + "src": "5505:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9069, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9034, + "src": "5509:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9070, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9036, + "src": "5513:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9071, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9038, + "src": "5521:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9066, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9524, + "src": "5489:9:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,uint256,bytes memory)" + } + }, + "id": 9072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5489:37:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9073, + "nodeType": "ExpressionStatement", + "src": "5489:37:44" + } + ] + }, + "documentation": { + "id": 9028, + "nodeType": "StructuredDocumentation", + "src": "5018:56:44", + "text": " @dev See {IERC1155-safeTransferFrom}." + }, + "functionSelector": "f242432a", + "id": 9075, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "5088:16:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 9040, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5239:8:44" + }, + "parameters": { + "id": 9039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9030, + "mutability": "mutable", + "name": "from", + "nameLocation": "5122:4:44", + "nodeType": "VariableDeclaration", + "scope": 9075, + "src": "5114:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9029, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5114:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9032, + "mutability": "mutable", + "name": "to", + "nameLocation": "5144:2:44", + "nodeType": "VariableDeclaration", + "scope": 9075, + "src": "5136:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9031, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5136:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9034, + "mutability": "mutable", + "name": "id", + "nameLocation": "5164:2:44", + "nodeType": "VariableDeclaration", + "scope": 9075, + "src": "5156:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9033, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5156:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9036, + "mutability": "mutable", + "name": "amount", + "nameLocation": "5184:6:44", + "nodeType": "VariableDeclaration", + "scope": 9075, + "src": "5176:14:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9035, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5176:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9038, + "mutability": "mutable", + "name": "data", + "nameLocation": "5213:4:44", + "nodeType": "VariableDeclaration", + "scope": 9075, + "src": "5200:17:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9037, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5200:5:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5104:119:44" + }, + "returnParameters": { + "id": 9041, + "nodeType": "ParameterList", + "parameters": [], + "src": "5248:0:44" + }, + "scope": 9680, + "src": "5079:454:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 13288 + ], + "body": { + "id": 9203, + "nodeType": "Block", + "src": "5799:1059:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 9093, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9083, + "src": "5830:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 9094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5834:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5830:10:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 9095, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9086, + "src": "5844:7:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 9096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5852:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5844:14:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5830:28:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a2069647320616e6420616d6f756e7473206c656e677468206d69736d61746368", + "id": 9098, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5872:42:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807", + "typeString": "literal_string \"ERC1155: ids and amounts length mismatch\"" + }, + "value": "ERC1155: ids and amounts length mismatch" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807", + "typeString": "literal_string \"ERC1155: ids and amounts length mismatch\"" + } + ], + "id": 9092, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5809:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5809:115:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9100, + "nodeType": "ExpressionStatement", + "src": "5809:115:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9102, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9080, + "src": "5942:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 9105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5956:1:44", + "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": 9104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5948:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9103, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5948:7:44", + "typeDescriptions": {} + } + }, + "id": 9106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5948:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5942:16:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a207472616e7366657220746f20746865207a65726f2061646472657373", + "id": 9108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5960:39:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "typeString": "literal_string \"ERC1155: transfer to the zero address\"" + }, + "value": "ERC1155: transfer to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "typeString": "literal_string \"ERC1155: transfer to the zero address\"" + } + ], + "id": 9101, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5934:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5934:66:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9110, + "nodeType": "ExpressionStatement", + "src": "5934:66:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 9121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9112, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9078, + "src": "6031:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 9113, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6039:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6043:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6039:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6031:18:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 9117, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9078, + "src": "6070:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 9118, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6076:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6080:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6076:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9116, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8980, + "src": "6053:16:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 9120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6053:34:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6031:56:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", + "id": 9122, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6101:52:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686", + "typeString": "literal_string \"ERC1155: transfer caller is not owner nor approved\"" + }, + "value": "ERC1155: transfer caller is not owner nor approved" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686", + "typeString": "literal_string \"ERC1155: transfer caller is not owner nor approved\"" + } + ], + "id": 9111, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6010:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6010:153:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9124, + "nodeType": "ExpressionStatement", + "src": "6010:153:44" + }, + { + "body": { + "id": 9182, + "nodeType": "Block", + "src": "6215:402:44", + "statements": [ + { + "assignments": [ + 9137 + ], + "declarations": [ + { + "constant": false, + "id": 9137, + "mutability": "mutable", + "name": "id", + "nameLocation": "6237:2:44", + "nodeType": "VariableDeclaration", + "scope": 9182, + "src": "6229:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9136, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6229:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 9141, + "initialValue": { + "baseExpression": { + "id": 9138, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9083, + "src": "6242:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 9140, + "indexExpression": { + "id": 9139, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9126, + "src": "6246:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6242:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6229:19:44" + }, + { + "assignments": [ + 9143 + ], + "declarations": [ + { + "constant": false, + "id": 9143, + "mutability": "mutable", + "name": "amount", + "nameLocation": "6270:6:44", + "nodeType": "VariableDeclaration", + "scope": 9182, + "src": "6262:14:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9142, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6262:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 9147, + "initialValue": { + "baseExpression": { + "id": 9144, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9086, + "src": "6279:7:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 9146, + "indexExpression": { + "id": 9145, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9126, + "src": "6287:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6279:10:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6262:27:44" + }, + { + "assignments": [ + 9149, + 9151, + 9153 + ], + "declarations": [ + { + "constant": false, + "id": 9149, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "6313:8:44", + "nodeType": "VariableDeclaration", + "scope": 9182, + "src": "6305:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9148, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6305:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9151, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "6330:5:44", + "nodeType": "VariableDeclaration", + "scope": 9182, + "src": "6323:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9150, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "6323:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9153, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "6344:6:44", + "nodeType": "VariableDeclaration", + "scope": 9182, + "src": "6337:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9152, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "6337:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 9157, + "initialValue": { + "arguments": [ + { + "id": 9155, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9137, + "src": "6362:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9154, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9027, + "src": "6354:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 9156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6354:11:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6304:61:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9159, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9137, + "src": "6396:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9160, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9151, + "src": "6400:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9161, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9153, + "src": "6407:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9158, + "name": "_beforeTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9254, + "src": "6380:15:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,uint32,uint64)" + } + }, + "id": 9162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6380:34:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9163, + "nodeType": "ExpressionStatement", + "src": "6380:34:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 9171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9165, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9143, + "src": "6454:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 9166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6464:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6454:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9168, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9149, + "src": "6469:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 9169, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9078, + "src": "6481:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6469:16:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6454:31:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a20696e73756666696369656e742062616c616e636520666f72207472616e73666572", + "id": 9172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6503:44:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + }, + "value": "ERC1155: insufficient balance for transfer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + } + ], + "id": 9164, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6429:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6429:132:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9174, + "nodeType": "ExpressionStatement", + "src": "6429:132:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9176, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9137, + "src": "6584:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9177, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9080, + "src": "6588:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9178, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9151, + "src": "6592:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9179, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9153, + "src": "6599:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9175, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9245, + "src": "6575:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 9180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6575:31:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9181, + "nodeType": "ExpressionStatement", + "src": "6575:31:44" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9129, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9126, + "src": "6194:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 9130, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9083, + "src": "6198:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 9131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6202:6:44", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6198:10:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6194:14:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9183, + "initializationExpression": { + "assignments": [ + 9126 + ], + "declarations": [ + { + "constant": false, + "id": 9126, + "mutability": "mutable", + "name": "i", + "nameLocation": "6187:1:44", + "nodeType": "VariableDeclaration", + "scope": 9183, + "src": "6179:9:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9125, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6179:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 9128, + "initialValue": { + "hexValue": "30", + "id": 9127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6191:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6179:13:44" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 9134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "6210:3:44", + "subExpression": { + "id": 9133, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9126, + "src": "6212:1:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9135, + "nodeType": "ExpressionStatement", + "src": "6210:3:44" + }, + "nodeType": "ForStatement", + "src": "6174:443:44" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 9185, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6646:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9186, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6650:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6646:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9187, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9078, + "src": "6658:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9188, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9080, + "src": "6664:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9189, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9083, + "src": "6668:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 9190, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9086, + "src": "6673:7:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 9184, + "name": "TransferBatch", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13201, + "src": "6632:13:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address,address,address,uint256[] memory,uint256[] memory)" + } + }, + "id": 9191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6632:49:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9192, + "nodeType": "EmitStatement", + "src": "6627:54:44" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 9194, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6741:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6745:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6741:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9196, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9078, + "src": "6765:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9197, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9080, + "src": "6783:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9198, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9083, + "src": "6799:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 9199, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9086, + "src": "6816:7:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 9200, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9088, + "src": "6837:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9193, + "name": "_doSafeBatchTransferAcceptanceCheck", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9656, + "src": "6692:35:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,address,uint256[] memory,uint256[] memory,bytes memory)" + } + }, + "id": 9201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6692:159:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9202, + "nodeType": "ExpressionStatement", + "src": "6692:159:44" + } + ] + }, + "documentation": { + "id": 9076, + "nodeType": "StructuredDocumentation", + "src": "5539:61:44", + "text": " @dev See {IERC1155-safeBatchTransferFrom}." + }, + "functionSelector": "2eb2c2d6", + "id": 9204, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeBatchTransferFrom", + "nameLocation": "5614:21:44", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 9090, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5790:8:44" + }, + "parameters": { + "id": 9089, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9078, + "mutability": "mutable", + "name": "from", + "nameLocation": "5653:4:44", + "nodeType": "VariableDeclaration", + "scope": 9204, + "src": "5645:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9077, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5645:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9080, + "mutability": "mutable", + "name": "to", + "nameLocation": "5675:2:44", + "nodeType": "VariableDeclaration", + "scope": 9204, + "src": "5667:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9079, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5667:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9083, + "mutability": "mutable", + "name": "ids", + "nameLocation": "5704:3:44", + "nodeType": "VariableDeclaration", + "scope": 9204, + "src": "5687:20:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 9081, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5687:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9082, + "nodeType": "ArrayTypeName", + "src": "5687:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9086, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "5734:7:44", + "nodeType": "VariableDeclaration", + "scope": 9204, + "src": "5717:24:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 9084, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5717:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9085, + "nodeType": "ArrayTypeName", + "src": "5717:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9088, + "mutability": "mutable", + "name": "data", + "nameLocation": "5764:4:44", + "nodeType": "VariableDeclaration", + "scope": 9204, + "src": "5751:17:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9087, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5751:5:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5635:139:44" + }, + "returnParameters": { + "id": 9091, + "nodeType": "ParameterList", + "parameters": [], + "src": "5799:0:44" + }, + "scope": 9680, + "src": "5605:1253:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 9244, + "nodeType": "Block", + "src": "7259:148:44", + "statements": [ + { + "expression": { + "id": 9242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 9216, + "name": "_tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8716, + "src": "7269:7:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 9218, + "indexExpression": { + "id": 9217, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9207, + "src": "7277:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "7269:16:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 9223, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9209, + "src": "7316:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7308:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 9221, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "7308:7:44", + "typeDescriptions": {} + } + }, + "id": 9224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7308:14:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 9220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7300:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 9219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7300:7:44", + "typeDescriptions": {} + } + }, + "id": 9225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7300:23:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 9228, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9211, + "src": "7347:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 9227, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7339:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 9226, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7339:7:44", + "typeDescriptions": {} + } + }, + "id": 9229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7339:14:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313630", + "id": 9230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7357:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_160_by_1", + "typeString": "int_const 160" + }, + "value": "160" + }, + "src": "7339:21:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 9232, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7338:23:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7300:61:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 9236, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9213, + "src": "7385:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7377:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 9234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7377:7:44", + "typeDescriptions": {} + } + }, + "id": 9237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7377:15:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313932", + "id": 9238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7396:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_192_by_1", + "typeString": "int_const 192" + }, + "value": "192" + }, + "src": "7377:22:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 9240, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7376:24:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7300:100:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7269:131:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9243, + "nodeType": "ExpressionStatement", + "src": "7269:131:44" + } + ] + }, + "documentation": { + "id": 9205, + "nodeType": "StructuredDocumentation", + "src": "7057:63:44", + "text": " @dev Sets the Name's owner address and fuses" + }, + "id": 9245, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setData", + "nameLocation": "7134:8:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9214, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9207, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "7160:7:44", + "nodeType": "VariableDeclaration", + "scope": 9245, + "src": "7152:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7152:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9209, + "mutability": "mutable", + "name": "owner", + "nameLocation": "7185:5:44", + "nodeType": "VariableDeclaration", + "scope": 9245, + "src": "7177:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7177:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9211, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "7207:5:44", + "nodeType": "VariableDeclaration", + "scope": 9245, + "src": "7200:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9210, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7200:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9213, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "7229:6:44", + "nodeType": "VariableDeclaration", + "scope": 9245, + "src": "7222:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9212, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7222:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "7142:99:44" + }, + "returnParameters": { + "id": 9215, + "nodeType": "ParameterList", + "parameters": [], + "src": "7259:0:44" + }, + "scope": 9680, + "src": "7125:282:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 9254, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "_beforeTransfer", + "nameLocation": "7422:15:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9252, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9247, + "mutability": "mutable", + "name": "id", + "nameLocation": "7455:2:44", + "nodeType": "VariableDeclaration", + "scope": 9254, + "src": "7447:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9246, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7447:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9249, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "7474:5:44", + "nodeType": "VariableDeclaration", + "scope": 9254, + "src": "7467:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9248, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7467:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9251, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "7496:6:44", + "nodeType": "VariableDeclaration", + "scope": 9254, + "src": "7489:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9250, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7489:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "7437:71:44" + }, + "returnParameters": { + "id": 9253, + "nodeType": "ParameterList", + "parameters": [], + "src": "7525:0:44" + }, + "scope": 9680, + "src": "7413:113:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 9267, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "_clearOwnerAndFuses", + "nameLocation": "7541:19:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9261, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9256, + "mutability": "mutable", + "name": "owner", + "nameLocation": "7578:5:44", + "nodeType": "VariableDeclaration", + "scope": 9267, + "src": "7570:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7570:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9258, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "7600:5:44", + "nodeType": "VariableDeclaration", + "scope": 9267, + "src": "7593:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9257, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7593:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9260, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "7622:6:44", + "nodeType": "VariableDeclaration", + "scope": 9267, + "src": "7615:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9259, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7615:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "7560:74:44" + }, + "returnParameters": { + "id": 9266, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9263, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9267, + "src": "7661:7:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9262, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7661:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9265, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9267, + "src": "7670:6:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9264, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7670:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "7660:17:44" + }, + "scope": 9680, + "src": "7532:146:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 9397, + "nodeType": "Block", + "src": "7812:1014:44", + "statements": [ + { + "assignments": [ + 9279 + ], + "declarations": [ + { + "constant": false, + "id": 9279, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "7830:7:44", + "nodeType": "VariableDeclaration", + "scope": 9397, + "src": "7822:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9278, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7822:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 9284, + "initialValue": { + "arguments": [ + { + "id": 9282, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9269, + "src": "7848:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 9281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7840:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 9280, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7840:7:44", + "typeDescriptions": {} + } + }, + "id": 9283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7840:13:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7822:31:44" + }, + { + "assignments": [ + 9286, + 9288, + 9290 + ], + "declarations": [ + { + "constant": false, + "id": 9286, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "7872:8:44", + "nodeType": "VariableDeclaration", + "scope": 9397, + "src": "7864:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9285, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7864:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9288, + "mutability": "mutable", + "name": "oldFuses", + "nameLocation": "7889:8:44", + "nodeType": "VariableDeclaration", + "scope": 9397, + "src": "7882:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9287, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7882:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9290, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "7906:9:44", + "nodeType": "VariableDeclaration", + "scope": 9397, + "src": "7899:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9289, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7899:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 9297, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 9294, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9269, + "src": "7948:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 9293, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7940:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 9292, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7940:7:44", + "typeDescriptions": {} + } + }, + "id": 9295, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7940:13:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9291, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9027, + "src": "7919:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 9296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7919:44:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7863:100:44" + }, + { + "assignments": [ + 9299 + ], + "declarations": [ + { + "constant": false, + "id": 9299, + "mutability": "mutable", + "name": "parentControlledFuses", + "nameLocation": "7981:21:44", + "nodeType": "VariableDeclaration", + "scope": 9397, + "src": "7974:28:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9298, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7974:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "id": 9313, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 9312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 9309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "arguments": [ + { + "id": 9304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8018:6:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint16_$", + "typeString": "type(uint16)" + }, + "typeName": { + "id": 9303, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "8018:6:44", + "typeDescriptions": {} + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_uint16_$", + "typeString": "type(uint16)" + } + ], + "id": 9302, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "8013:4:44", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 9305, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8013:12:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_uint16", + "typeString": "type(uint16)" + } + }, + "id": 9306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8026:3:44", + "memberName": "max", + "nodeType": "MemberAccess", + "src": "8013:16:44", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + ], + "id": 9301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8006:6:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" + }, + "typeName": { + "id": 9300, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "8006:6:44", + "typeDescriptions": {} + } + }, + "id": 9307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8006:24:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3136", + "id": 9308, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8034:2:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "8006:30:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 9310, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8005:32:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 9311, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9288, + "src": "8052:8:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "8005:55:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7974:86:44" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 9316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9314, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9290, + "src": "8075:9:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 9315, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9275, + "src": "8087:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "8075:18:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9322, + "nodeType": "IfStatement", + "src": "8071:67:44", + "trueBody": { + "id": 9321, + "nodeType": "Block", + "src": "8095:43:44", + "statements": [ + { + "expression": { + "id": 9319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 9317, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9275, + "src": "8109:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 9318, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9290, + "src": "8118:9:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "8109:18:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 9320, + "nodeType": "ExpressionStatement", + "src": "8109:18:44" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9323, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9290, + "src": "8152:9:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "expression": { + "id": 9324, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "8165:5:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 9325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8171:9:44", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "8165:15:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8152:28:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9334, + "nodeType": "IfStatement", + "src": "8148:96:44", + "trueBody": { + "id": 9333, + "nodeType": "Block", + "src": "8182:62:44", + "statements": [ + { + "expression": { + "id": 9331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 9327, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9273, + "src": "8196:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 9330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9328, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9273, + "src": "8204:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 9329, + "name": "parentControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9299, + "src": "8212:21:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "8204:29:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "8196:37:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 9332, + "nodeType": "ExpressionStatement", + "src": "8196:37:44" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9336, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9286, + "src": "8262:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 9339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8282:1:44", + "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": 9338, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8274:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9337, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8274:7:44", + "typeDescriptions": {} + } + }, + "id": 9340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8274:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8262:22:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a206d696e74206f66206578697374696e6720746f6b656e", + "id": 9342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8286:33:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac", + "typeString": "literal_string \"ERC1155: mint of existing token\"" + }, + "value": "ERC1155: mint of existing token" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac", + "typeString": "literal_string \"ERC1155: mint of existing token\"" + } + ], + "id": 9335, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8254:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8254:66:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9344, + "nodeType": "ExpressionStatement", + "src": "8254:66:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9346, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9271, + "src": "8338:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 9349, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8355:1:44", + "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": 9348, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8347:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9347, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8347:7:44", + "typeDescriptions": {} + } + }, + "id": 9350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8347:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8338:19:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a206d696e7420746f20746865207a65726f2061646472657373", + "id": 9352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8359:35:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2", + "typeString": "literal_string \"ERC1155: mint to the zero address\"" + }, + "value": "ERC1155: mint to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2", + "typeString": "literal_string \"ERC1155: mint to the zero address\"" + } + ], + "id": 9345, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8330:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8330:65:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9354, + "nodeType": "ExpressionStatement", + "src": "8330:65:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9356, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9271, + "src": "8426:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 9359, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "8443:4:44", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC1155Fuse_$9680", + "typeString": "contract ERC1155Fuse" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ERC1155Fuse_$9680", + "typeString": "contract ERC1155Fuse" + } + ], + "id": 9358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8435:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9357, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8435:7:44", + "typeDescriptions": {} + } + }, + "id": 9360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8435:13:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8426:22:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a206e65774f776e65722063616e6e6f7420626520746865204e616d655772617070657220636f6e7472616374", + "id": 9362, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8462:54:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b", + "typeString": "literal_string \"ERC1155: newOwner cannot be the NameWrapper contract\"" + }, + "value": "ERC1155: newOwner cannot be the NameWrapper contract" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b", + "typeString": "literal_string \"ERC1155: newOwner cannot be the NameWrapper contract\"" + } + ], + "id": 9355, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8405:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8405:121:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9364, + "nodeType": "ExpressionStatement", + "src": "8405:121:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9366, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9279, + "src": "8546:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9367, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9271, + "src": "8555:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9368, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9273, + "src": "8562:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9369, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9275, + "src": "8569:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9365, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9245, + "src": "8537:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 9370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8537:39:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9371, + "nodeType": "ExpressionStatement", + "src": "8537:39:44" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 9373, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "8606:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8610:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8606:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "307830", + "id": 9377, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8626:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 9376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8618:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9375, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8618:7:44", + "typeDescriptions": {} + } + }, + "id": 9378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8618:12:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9379, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9271, + "src": "8632:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9380, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9279, + "src": "8639:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 9381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8648:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 9372, + "name": "TransferSingle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13186, + "src": "8591:14:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256)" + } + }, + "id": 9382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8591:59:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9383, + "nodeType": "EmitStatement", + "src": "8586:64:44" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 9385, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "8704:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8708:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8704:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 9389, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8736:1:44", + "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": 9388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8728:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9387, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8728:7:44", + "typeDescriptions": {} + } + }, + "id": 9390, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8728:10:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9391, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9271, + "src": "8752:5:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9392, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9279, + "src": "8771:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 9393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8792:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + { + "hexValue": "", + "id": 9394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8807:2:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 9384, + "name": "_doSafeTransferAcceptanceCheck", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9589, + "src": "8660:30:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256,bytes memory)" + } + }, + "id": 9395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8660:159:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9396, + "nodeType": "ExpressionStatement", + "src": "8660:159:44" + } + ] + }, + "id": 9398, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_mint", + "nameLocation": "7693:5:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9269, + "mutability": "mutable", + "name": "node", + "nameLocation": "7716:4:44", + "nodeType": "VariableDeclaration", + "scope": 9398, + "src": "7708:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9268, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7708:7:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9271, + "mutability": "mutable", + "name": "owner", + "nameLocation": "7738:5:44", + "nodeType": "VariableDeclaration", + "scope": 9398, + "src": "7730:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9270, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7730:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9273, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "7760:5:44", + "nodeType": "VariableDeclaration", + "scope": 9398, + "src": "7753:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9272, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7753:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9275, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "7782:6:44", + "nodeType": "VariableDeclaration", + "scope": 9398, + "src": "7775:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9274, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7775:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "7698:96:44" + }, + "returnParameters": { + "id": 9277, + "nodeType": "ParameterList", + "parameters": [], + "src": "7812:0:44" + }, + "scope": 9680, + "src": "7684:1142:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 9450, + "nodeType": "Block", + "src": "8881:429:44", + "statements": [ + { + "assignments": [ + 9404, + 9406, + 9408 + ], + "declarations": [ + { + "constant": false, + "id": 9404, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "8900:8:44", + "nodeType": "VariableDeclaration", + "scope": 9450, + "src": "8892:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9403, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8892:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9406, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "8917:5:44", + "nodeType": "VariableDeclaration", + "scope": 9450, + "src": "8910:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9405, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "8910:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9408, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "8931:6:44", + "nodeType": "VariableDeclaration", + "scope": 9450, + "src": "8924:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9407, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "8924:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 9413, + "initialValue": { + "arguments": [ + { + "id": 9411, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9400, + "src": "8974:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9409, + "name": "ERC1155Fuse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9680, + "src": "8941:11:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC1155Fuse_$9680_$", + "typeString": "type(contract ERC1155Fuse)" + } + }, + "id": 9410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8953:7:44", + "memberName": "getData", + "nodeType": "MemberAccess", + "referencedDeclaration": 9027, + "src": "8941:19:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 9412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8941:50:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8891:100:44" + }, + { + "expression": { + "id": 9421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + null, + { + "id": 9414, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9406, + "src": "9004:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 9415, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "9001:9:44", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$_t_uint32_$", + "typeString": "tuple(,uint32)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 9417, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9404, + "src": "9033:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9418, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9406, + "src": "9043:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9419, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9408, + "src": "9050:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9416, + "name": "_clearOwnerAndFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9267, + "src": "9013:19:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint32_$_t_uint64_$returns$_t_address_$_t_uint32_$", + "typeString": "function (address,uint32,uint64) returns (address,uint32)" + } + }, + "id": 9420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9013:44:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$", + "typeString": "tuple(address,uint32)" + } + }, + "src": "9001:56:44", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9422, + "nodeType": "ExpressionStatement", + "src": "9001:56:44" + }, + { + "expression": { + "id": 9426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "9094:31:44", + "subExpression": { + "baseExpression": { + "id": 9423, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8726, + "src": "9101:15:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 9425, + "indexExpression": { + "id": 9424, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9400, + "src": "9117:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9101:24:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9427, + "nodeType": "ExpressionStatement", + "src": "9094:31:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9429, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9400, + "src": "9189:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "hexValue": "307830", + "id": 9432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9206:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 9431, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9198:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9430, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9198:7:44", + "typeDescriptions": {} + } + }, + "id": 9433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9198:12:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9434, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9406, + "src": "9212:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9435, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9408, + "src": "9219:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9428, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9245, + "src": "9180:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 9436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9180:46:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9437, + "nodeType": "ExpressionStatement", + "src": "9180:46:44" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 9439, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9256:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9260:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9256:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9441, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9404, + "src": "9268:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "307830", + "id": 9444, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9286:3:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 9443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9278:7:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 9442, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9278:7:44", + "typeDescriptions": {} + } + }, + "id": 9445, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9278:12:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9446, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9400, + "src": "9292:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 9447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9301:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 9438, + "name": "TransferSingle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13186, + "src": "9241:14:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256)" + } + }, + "id": 9448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9241:62:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9449, + "nodeType": "EmitStatement", + "src": "9236:67:44" + } + ] + }, + "id": 9451, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_burn", + "nameLocation": "8841:5:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9401, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9400, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "8855:7:44", + "nodeType": "VariableDeclaration", + "scope": 9451, + "src": "8847:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9399, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8847:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8846:17:44" + }, + "returnParameters": { + "id": 9402, + "nodeType": "ParameterList", + "parameters": [], + "src": "8881:0:44" + }, + "scope": 9680, + "src": "8832:478:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 9523, + "nodeType": "Block", + "src": "9463:502:44", + "statements": [ + { + "assignments": [ + 9465, + 9467, + 9469 + ], + "declarations": [ + { + "constant": false, + "id": 9465, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "9482:8:44", + "nodeType": "VariableDeclaration", + "scope": 9523, + "src": "9474:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9464, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9474:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9467, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "9499:5:44", + "nodeType": "VariableDeclaration", + "scope": 9523, + "src": "9492:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9466, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "9492:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9469, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "9513:6:44", + "nodeType": "VariableDeclaration", + "scope": 9523, + "src": "9506:13:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9468, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "9506:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 9473, + "initialValue": { + "arguments": [ + { + "id": 9471, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9457, + "src": "9531:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9470, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9027, + "src": "9523:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 9472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9523:11:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9473:61:44" + }, + { + "expression": { + "arguments": [ + { + "id": 9475, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9457, + "src": "9561:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9476, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9467, + "src": "9565:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9477, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9469, + "src": "9572:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9474, + "name": "_beforeTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9254, + "src": "9545:15:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,uint32,uint64)" + } + }, + "id": 9478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9545:34:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9479, + "nodeType": "ExpressionStatement", + "src": "9545:34:44" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 9487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 9483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9481, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9459, + "src": "9611:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 9482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9621:1:44", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9611:11:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9484, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9465, + "src": "9626:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 9485, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9453, + "src": "9638:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9626:16:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9611:31:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "455243313135353a20696e73756666696369656e742062616c616e636520666f72207472616e73666572", + "id": 9488, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9656:44:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + }, + "value": "ERC1155: insufficient balance for transfer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + } + ], + "id": 9480, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9590:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 9489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9590:120:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9490, + "nodeType": "ExpressionStatement", + "src": "9590:120:44" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 9493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9491, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9465, + "src": "9725:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 9492, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9455, + "src": "9737:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9725:14:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9496, + "nodeType": "IfStatement", + "src": "9721:51:44", + "trueBody": { + "id": 9495, + "nodeType": "Block", + "src": "9741:31:44", + "statements": [ + { + "functionReturnParameters": 9463, + "id": 9494, + "nodeType": "Return", + "src": "9755:7:44" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 9498, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9457, + "src": "9791:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9499, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9455, + "src": "9795:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9500, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9467, + "src": "9799:5:44", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 9501, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9469, + "src": "9806:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 9497, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9245, + "src": "9782:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 9502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9782:31:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9503, + "nodeType": "ExpressionStatement", + "src": "9782:31:44" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 9505, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9844:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9848:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9844:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9507, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9453, + "src": "9856:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9508, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9455, + "src": "9862:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9509, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9457, + "src": "9866:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9510, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9459, + "src": "9870:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9504, + "name": "TransferSingle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13186, + "src": "9829:14:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256)" + } + }, + "id": 9511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9829:48:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9512, + "nodeType": "EmitStatement", + "src": "9824:53:44" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 9514, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9919:3:44", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 9515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9923:6:44", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9919:10:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9516, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9453, + "src": "9931:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9517, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9455, + "src": "9937:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9518, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9457, + "src": "9941:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9519, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9459, + "src": "9945:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9520, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9461, + "src": "9953:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9513, + "name": "_doSafeTransferAcceptanceCheck", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9589, + "src": "9888:30:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256,bytes memory)" + } + }, + "id": 9521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9888:70:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9522, + "nodeType": "ExpressionStatement", + "src": "9888:70:44" + } + ] + }, + "id": 9524, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nameLocation": "9325:9:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9453, + "mutability": "mutable", + "name": "from", + "nameLocation": "9352:4:44", + "nodeType": "VariableDeclaration", + "scope": 9524, + "src": "9344:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9452, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9344:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9455, + "mutability": "mutable", + "name": "to", + "nameLocation": "9374:2:44", + "nodeType": "VariableDeclaration", + "scope": 9524, + "src": "9366:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9454, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9366:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9457, + "mutability": "mutable", + "name": "id", + "nameLocation": "9394:2:44", + "nodeType": "VariableDeclaration", + "scope": 9524, + "src": "9386:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9456, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9386:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9459, + "mutability": "mutable", + "name": "amount", + "nameLocation": "9414:6:44", + "nodeType": "VariableDeclaration", + "scope": 9524, + "src": "9406:14:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9458, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9406:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9461, + "mutability": "mutable", + "name": "data", + "nameLocation": "9443:4:44", + "nodeType": "VariableDeclaration", + "scope": 9524, + "src": "9430:17:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9460, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9430:5:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "9334:119:44" + }, + "returnParameters": { + "id": 9463, + "nodeType": "ParameterList", + "parameters": [], + "src": "9463:0:44" + }, + "scope": 9680, + "src": "9316:649:44", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 9588, + "nodeType": "Block", + "src": "10164:720:44", + "statements": [ + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 9539, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9530, + "src": "10178:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 9540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10181:10:44", + "memberName": "isContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 14529, + "src": "10178:13:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$attached_to$_t_address_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 9541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10178:15:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9587, + "nodeType": "IfStatement", + "src": "10174:704:44", + "trueBody": { + "id": 9586, + "nodeType": "Block", + "src": "10195:683:44", + "statements": [ + { + "clauses": [ + { + "block": { + "id": 9568, + "nodeType": "Block", + "src": "10458:226:44", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 9561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9555, + "name": "response", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9553, + "src": "10501:8:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "expression": { + "arguments": [ + { + "id": 9557, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9530, + "src": "10530:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9556, + "name": "IERC1155Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13330, + "src": "10513:16:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155Receiver_$13330_$", + "typeString": "type(contract IERC1155Receiver)" + } + }, + "id": 9558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10513:20:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155Receiver_$13330", + "typeString": "contract IERC1155Receiver" + } + }, + "id": 9559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10534:17:44", + "memberName": "onERC1155Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 13311, + "src": "10513:38:44", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" + } + }, + "id": 9560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10552:8:44", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "10513:47:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "10501:59:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9567, + "nodeType": "IfStatement", + "src": "10476:194:44", + "trueBody": { + "id": 9566, + "nodeType": "Block", + "src": "10579:91:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "455243313135353a204552433131353552656365697665722072656a656374656420746f6b656e73", + "id": 9563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10608:42:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "typeString": "literal_string \"ERC1155: ERC1155Receiver rejected tokens\"" + }, + "value": "ERC1155: ERC1155Receiver rejected tokens" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "typeString": "literal_string \"ERC1155: ERC1155Receiver rejected tokens\"" + } + ], + "id": 9562, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "10601:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10601:50:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9565, + "nodeType": "ExpressionStatement", + "src": "10601:50:44" + } + ] + } + } + ] + }, + "errorName": "", + "id": 9569, + "nodeType": "TryCatchClause", + "parameters": { + "id": 9554, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9553, + "mutability": "mutable", + "name": "response", + "nameLocation": "10448:8:44", + "nodeType": "VariableDeclaration", + "scope": 9569, + "src": "10441:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 9552, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "10441:6:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "10440:17:44" + }, + "src": "10432:252:44" + }, + { + "block": { + "id": 9577, + "nodeType": "Block", + "src": "10719:47:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 9574, + "name": "reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9571, + "src": "10744:6:44", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 9573, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "10737:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10737:14:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9576, + "nodeType": "ExpressionStatement", + "src": "10737:14:44" + } + ] + }, + "errorName": "Error", + "id": 9578, + "nodeType": "TryCatchClause", + "parameters": { + "id": 9572, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9571, + "mutability": "mutable", + "name": "reason", + "nameLocation": "10711:6:44", + "nodeType": "VariableDeclaration", + "scope": 9578, + "src": "10697:20:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9570, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10697:6:44", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10696:22:44" + }, + "src": "10685:81:44" + }, + { + "block": { + "id": 9583, + "nodeType": "Block", + "src": "10773:95:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "455243313135353a207472616e7366657220746f206e6f6e2045524331313535526563656976657220696d706c656d656e746572", + "id": 9580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10798:54:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "typeString": "literal_string \"ERC1155: transfer to non ERC1155Receiver implementer\"" + }, + "value": "ERC1155: transfer to non ERC1155Receiver implementer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "typeString": "literal_string \"ERC1155: transfer to non ERC1155Receiver implementer\"" + } + ], + "id": 9579, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "10791:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10791:62:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9582, + "nodeType": "ExpressionStatement", + "src": "10791:62:44" + } + ] + }, + "errorName": "", + "id": 9584, + "nodeType": "TryCatchClause", + "src": "10767:101:44" + } + ], + "externalCall": { + "arguments": [ + { + "id": 9546, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9526, + "src": "10289:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9547, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9528, + "src": "10319:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9548, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9532, + "src": "10345:2:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9549, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9534, + "src": "10369:6:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9550, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9536, + "src": "10397:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "arguments": [ + { + "id": 9543, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9530, + "src": "10246:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9542, + "name": "IERC1155Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13330, + "src": "10229:16:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155Receiver_$13330_$", + "typeString": "type(contract IERC1155Receiver)" + } + }, + "id": 9544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10229:20:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155Receiver_$13330", + "typeString": "contract IERC1155Receiver" + } + }, + "id": 9545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10250:17:44", + "memberName": "onERC1155Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 13311, + "src": "10229:38:44", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" + } + }, + "id": 9551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10229:190:44", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 9585, + "nodeType": "TryStatement", + "src": "10209:659:44" + } + ] + } + } + ] + }, + "id": 9589, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_doSafeTransferAcceptanceCheck", + "nameLocation": "9980:30:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9526, + "mutability": "mutable", + "name": "operator", + "nameLocation": "10028:8:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10020:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9525, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10020:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9528, + "mutability": "mutable", + "name": "from", + "nameLocation": "10054:4:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10046:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9527, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10046:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9530, + "mutability": "mutable", + "name": "to", + "nameLocation": "10076:2:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10068:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9529, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10068:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9532, + "mutability": "mutable", + "name": "id", + "nameLocation": "10096:2:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10088:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9531, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10088:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9534, + "mutability": "mutable", + "name": "amount", + "nameLocation": "10116:6:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10108:14:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9533, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10108:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9536, + "mutability": "mutable", + "name": "data", + "nameLocation": "10145:4:44", + "nodeType": "VariableDeclaration", + "scope": 9589, + "src": "10132:17:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9535, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10132:5:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "10010:145:44" + }, + "returnParameters": { + "id": 9538, + "nodeType": "ParameterList", + "parameters": [], + "src": "10164:0:44" + }, + "scope": 9680, + "src": "9971:913:44", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 9655, + "nodeType": "Block", + "src": "11108:752:44", + "statements": [ + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 9606, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9595, + "src": "11122:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 9607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11125:10:44", + "memberName": "isContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 14529, + "src": "11122:13:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$attached_to$_t_address_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 9608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11122:15:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9654, + "nodeType": "IfStatement", + "src": "11118:736:44", + "trueBody": { + "id": 9653, + "nodeType": "Block", + "src": "11139:715:44", + "statements": [ + { + "clauses": [ + { + "block": { + "id": 9635, + "nodeType": "Block", + "src": "11409:251:44", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 9628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 9622, + "name": "response", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9620, + "src": "11452:8:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "expression": { + "arguments": [ + { + "id": 9624, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9595, + "src": "11501:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9623, + "name": "IERC1155Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13330, + "src": "11484:16:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155Receiver_$13330_$", + "typeString": "type(contract IERC1155Receiver)" + } + }, + "id": 9625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11484:20:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155Receiver_$13330", + "typeString": "contract IERC1155Receiver" + } + }, + "id": 9626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11505:22:44", + "memberName": "onERC1155BatchReceived", + "nodeType": "MemberAccess", + "referencedDeclaration": 13329, + "src": "11484:43:44", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" + } + }, + "id": 9627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11528:8:44", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "11484:52:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "11452:84:44", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 9634, + "nodeType": "IfStatement", + "src": "11427:219:44", + "trueBody": { + "id": 9633, + "nodeType": "Block", + "src": "11555:91:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "455243313135353a204552433131353552656365697665722072656a656374656420746f6b656e73", + "id": 9630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11584:42:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "typeString": "literal_string \"ERC1155: ERC1155Receiver rejected tokens\"" + }, + "value": "ERC1155: ERC1155Receiver rejected tokens" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "typeString": "literal_string \"ERC1155: ERC1155Receiver rejected tokens\"" + } + ], + "id": 9629, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "11577:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11577:50:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9632, + "nodeType": "ExpressionStatement", + "src": "11577:50:44" + } + ] + } + } + ] + }, + "errorName": "", + "id": 9636, + "nodeType": "TryCatchClause", + "parameters": { + "id": 9621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9620, + "mutability": "mutable", + "name": "response", + "nameLocation": "11399:8:44", + "nodeType": "VariableDeclaration", + "scope": 9636, + "src": "11392:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 9619, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "11392:6:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "11391:17:44" + }, + "src": "11383:277:44" + }, + { + "block": { + "id": 9644, + "nodeType": "Block", + "src": "11695:47:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 9641, + "name": "reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9638, + "src": "11720:6:44", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 9640, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "11713:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11713:14:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9643, + "nodeType": "ExpressionStatement", + "src": "11713:14:44" + } + ] + }, + "errorName": "Error", + "id": 9645, + "nodeType": "TryCatchClause", + "parameters": { + "id": 9639, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9638, + "mutability": "mutable", + "name": "reason", + "nameLocation": "11687:6:44", + "nodeType": "VariableDeclaration", + "scope": 9645, + "src": "11673:20:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9637, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11673:6:44", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11672:22:44" + }, + "src": "11661:81:44" + }, + { + "block": { + "id": 9650, + "nodeType": "Block", + "src": "11749:95:44", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "455243313135353a207472616e7366657220746f206e6f6e2045524331313535526563656976657220696d706c656d656e746572", + "id": 9647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11774:54:44", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "typeString": "literal_string \"ERC1155: transfer to non ERC1155Receiver implementer\"" + }, + "value": "ERC1155: transfer to non ERC1155Receiver implementer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "typeString": "literal_string \"ERC1155: transfer to non ERC1155Receiver implementer\"" + } + ], + "id": 9646, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "11767:6:44", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 9648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11767:62:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9649, + "nodeType": "ExpressionStatement", + "src": "11767:62:44" + } + ] + }, + "errorName": "", + "id": 9651, + "nodeType": "TryCatchClause", + "src": "11743:101:44" + } + ], + "externalCall": { + "arguments": [ + { + "id": 9613, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9591, + "src": "11238:8:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9614, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9593, + "src": "11268:4:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9615, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9598, + "src": "11294:3:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 9616, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9601, + "src": "11319:7:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 9617, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9603, + "src": "11348:4:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "arguments": [ + { + "id": 9610, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9595, + "src": "11190:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 9609, + "name": "IERC1155Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13330, + "src": "11173:16:44", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155Receiver_$13330_$", + "typeString": "type(contract IERC1155Receiver)" + } + }, + "id": 9611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11173:20:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155Receiver_$13330", + "typeString": "contract IERC1155Receiver" + } + }, + "id": 9612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11194:22:44", + "memberName": "onERC1155BatchReceived", + "nodeType": "MemberAccess", + "referencedDeclaration": 13329, + "src": "11173:43:44", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" + } + }, + "id": 9618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11173:197:44", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 9652, + "nodeType": "TryStatement", + "src": "11153:691:44" + } + ] + } + } + ] + }, + "id": 9656, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_doSafeBatchTransferAcceptanceCheck", + "nameLocation": "10899:35:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9591, + "mutability": "mutable", + "name": "operator", + "nameLocation": "10952:8:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "10944:16:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9590, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10944:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9593, + "mutability": "mutable", + "name": "from", + "nameLocation": "10978:4:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "10970:12:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9592, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10970:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9595, + "mutability": "mutable", + "name": "to", + "nameLocation": "11000:2:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "10992:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9594, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10992:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9598, + "mutability": "mutable", + "name": "ids", + "nameLocation": "11029:3:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "11012:20:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 9596, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11012:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9597, + "nodeType": "ArrayTypeName", + "src": "11012:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9601, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "11059:7:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "11042:24:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 9599, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11042:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 9600, + "nodeType": "ArrayTypeName", + "src": "11042:9:44", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9603, + "mutability": "mutable", + "name": "data", + "nameLocation": "11089:4:44", + "nodeType": "VariableDeclaration", + "scope": 9656, + "src": "11076:17:44", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9602, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11076:5:44", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "10934:165:44" + }, + "returnParameters": { + "id": 9605, + "nodeType": "ParameterList", + "parameters": [], + "src": "11108:0:44" + }, + "scope": 9680, + "src": "10890:970:44", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 9678, + "nodeType": "Block", + "src": "12073:100:44", + "statements": [ + { + "expression": { + "id": 9668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 9664, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8726, + "src": "12083:15:44", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 9666, + "indexExpression": { + "id": 9665, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9661, + "src": "12099:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12083:24:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 9667, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9659, + "src": "12110:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12083:29:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 9669, + "nodeType": "ExpressionStatement", + "src": "12083:29:44" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "id": 9672, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9661, + "src": "12144:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9671, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8742, + "src": "12136:7:44", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 9673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12136:16:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9674, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9659, + "src": "12154:2:44", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9675, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9661, + "src": "12158:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 9670, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8712, + "src": "12127:8:44", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 9676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12127:39:44", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9677, + "nodeType": "EmitStatement", + "src": "12122:44:44" + } + ] + }, + "documentation": { + "id": 9657, + "nodeType": "StructuredDocumentation", + "src": "11903:101:44", + "text": " @dev Approve `to` to operate on `tokenId`\n Emits an {Approval} event." + }, + "id": 9679, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_approve", + "nameLocation": "12018:8:44", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9662, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9659, + "mutability": "mutable", + "name": "to", + "nameLocation": "12035:2:44", + "nodeType": "VariableDeclaration", + "scope": 9679, + "src": "12027:10:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9658, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12027:7:44", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9661, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "12047:7:44", + "nodeType": "VariableDeclaration", + "scope": 9679, + "src": "12039:15:44", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9660, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12039:7:44", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12026:29:44" + }, + "returnParameters": { + "id": 9663, + "nodeType": "ParameterList", + "parameters": [], + "src": "12073:0:44" + }, + "scope": 9680, + "src": "12009:164:44", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "scope": 9681, + "src": "838:11337:44", + "usedErrors": [], + "usedEvents": [ + 8712, + 13186, + 13201, + 13210, + 13217 + ] + } + ], + "src": "31:12145:44" + }, + "id": 44 + }, + "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol", + "exportedSymbols": { + "IMetadataService": [ + 9690 + ] + }, + "id": 9691, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 9682, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:45" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IMetadataService", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 9690, + "linearizedBaseContracts": [ + 9690 + ], + "name": "IMetadataService", + "nameLocation": "67:16:45", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "0e89341c", + "id": 9689, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "uri", + "nameLocation": "99:3:45", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9685, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9684, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9689, + "src": "103:7:45", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9683, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "103:7:45", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "102:9:45" + }, + "returnParameters": { + "id": 9688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9687, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9689, + "src": "135:13:45", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9686, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "135:6:45", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "134:15:45" + }, + "scope": 9690, + "src": "90:60:45", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 9691, + "src": "57:95:45", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:122:45" + }, + "id": 45 + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol", + "exportedSymbols": { + "CANNOT_APPROVE": [ + 9718 + ], + "CANNOT_BURN_FUSES": [ + 9703 + ], + "CANNOT_CREATE_SUBDOMAIN": [ + 9715 + ], + "CANNOT_SET_RESOLVER": [ + 9709 + ], + "CANNOT_SET_TTL": [ + 9712 + ], + "CANNOT_TRANSFER": [ + 9706 + ], + "CANNOT_UNWRAP": [ + 9700 + ], + "CAN_DO_EVERYTHING": [ + 9736 + ], + "CAN_EXTEND_EXPIRY": [ + 9733 + ], + "ENS": [ + 4567 + ], + "IBaseRegistrar": [ + 4430 + ], + "IERC1155": [ + 13289 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IMetadataService": [ + 9690 + ], + "INameWrapper": [ + 10064 + ], + "INameWrapperUpgrade": [ + 10082 + ], + "IS_DOT_ETH": [ + 9728 + ], + "PARENT_CANNOT_CONTROL": [ + 9723 + ], + "PARENT_CONTROLLED_FUSES": [ + 9739 + ], + "USER_SETTABLE_FUSES": [ + 9742 + ] + }, + "id": 10065, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 9692, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:46" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 9693, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 10065, + "sourceUnit": 4568, + "src": "57:29:46", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "file": "../ethregistrar/IBaseRegistrar.sol", + "id": 9694, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 10065, + "sourceUnit": 4431, + "src": "87:44:46", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "id": 9695, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 10065, + "sourceUnit": 13290, + "src": "132:60:46", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol", + "file": "./IMetadataService.sol", + "id": 9696, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 10065, + "sourceUnit": 9691, + "src": "193:32:46", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol", + "file": "./INameWrapperUpgrade.sol", + "id": 9697, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 10065, + "sourceUnit": 10083, + "src": "226:35:46", + "symbolAliases": [], + "unitAlias": "" + }, + { + "constant": true, + "id": 9700, + "mutability": "constant", + "name": "CANNOT_UNWRAP", + "nameLocation": "279:13:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "263:33:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9698, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "263:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "31", + "id": 9699, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "295:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9703, + "mutability": "constant", + "name": "CANNOT_BURN_FUSES", + "nameLocation": "314:17:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "298:37:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9701, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "298:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "32", + "id": 9702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "334:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9706, + "mutability": "constant", + "name": "CANNOT_TRANSFER", + "nameLocation": "353:15:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "337:35:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9704, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "337:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "34", + "id": 9705, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "371:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9709, + "mutability": "constant", + "name": "CANNOT_SET_RESOLVER", + "nameLocation": "390:19:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "374:39:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9707, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "374:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "38", + "id": 9708, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "412:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9712, + "mutability": "constant", + "name": "CANNOT_SET_TTL", + "nameLocation": "431:14:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "415:35:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9710, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "415:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "3136", + "id": 9711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "448:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9715, + "mutability": "constant", + "name": "CANNOT_CREATE_SUBDOMAIN", + "nameLocation": "468:23:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "452:44:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9713, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "452:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "3332", + "id": 9714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "494:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9718, + "mutability": "constant", + "name": "CANNOT_APPROVE", + "nameLocation": "514:14:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "498:35:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9716, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "498:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "3634", + "id": 9717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "531:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9723, + "mutability": "constant", + "name": "PARENT_CANNOT_CONTROL", + "nameLocation": "619:21:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "603:47:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9719, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "603:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "commonType": { + "typeIdentifier": "t_rational_65536_by_1", + "typeString": "int_const 65536" + }, + "id": 9722, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 9720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "643:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3136", + "id": 9721, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "648:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "643:7:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_65536_by_1", + "typeString": "int_const 65536" + } + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9728, + "mutability": "constant", + "name": "IS_DOT_ETH", + "nameLocation": "668:10:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "652:36:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9724, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "652:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "commonType": { + "typeIdentifier": "t_rational_131072_by_1", + "typeString": "int_const 131072" + }, + "id": 9727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 9725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "681:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3137", + "id": 9726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "686:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "17" + }, + "src": "681:7:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_131072_by_1", + "typeString": "int_const 131072" + } + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9733, + "mutability": "constant", + "name": "CAN_EXTEND_EXPIRY", + "nameLocation": "706:17:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "690:43:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9729, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "690:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "commonType": { + "typeIdentifier": "t_rational_262144_by_1", + "typeString": "int_const 262144" + }, + "id": 9732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 9730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "726:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3138", + "id": 9731, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "731:2:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "src": "726:7:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_262144_by_1", + "typeString": "int_const 262144" + } + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9736, + "mutability": "constant", + "name": "CAN_DO_EVERYTHING", + "nameLocation": "751:17:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "735:37:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9734, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "735:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "30", + "id": 9735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "771:1:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9739, + "mutability": "constant", + "name": "PARENT_CONTROLLED_FUSES", + "nameLocation": "790:23:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "774:52:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9737, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "774:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "30784646464630303030", + "id": 9738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "816:10:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_4294901760_by_1", + "typeString": "int_const 4294901760" + }, + "value": "0xFFFF0000" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 9742, + "mutability": "constant", + "name": "USER_SETTABLE_FUSES", + "nameLocation": "879:19:46", + "nodeType": "VariableDeclaration", + "scope": 10065, + "src": "863:48:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9740, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "863:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "value": { + "hexValue": "30784646464446464646", + "id": 9741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "901:10:46", + "typeDescriptions": { + "typeIdentifier": "t_rational_4294836223_by_1", + "typeString": "int_const 4294836223" + }, + "value": "0xFFFDFFFF" + }, + "visibility": "internal" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 9743, + "name": "IERC1155", + "nameLocations": [ + "940:8:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13289, + "src": "940:8:46" + }, + "id": 9744, + "nodeType": "InheritanceSpecifier", + "src": "940:8:46" + } + ], + "canonicalName": "INameWrapper", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 10064, + "linearizedBaseContracts": [ + 10064, + 13289, + 15136 + ], + "name": "INameWrapper", + "nameLocation": "924:12:46", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd340", + "id": 9756, + "name": "NameWrapped", + "nameLocation": "961:11:46", + "nodeType": "EventDefinition", + "parameters": { + "id": 9755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9746, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "998:4:46", + "nodeType": "VariableDeclaration", + "scope": 9756, + "src": "982:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9745, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "982:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9748, + "indexed": false, + "mutability": "mutable", + "name": "name", + "nameLocation": "1018:4:46", + "nodeType": "VariableDeclaration", + "scope": 9756, + "src": "1012:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9747, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1012:5:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9750, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1040:5:46", + "nodeType": "VariableDeclaration", + "scope": 9756, + "src": "1032:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9749, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1032:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9752, + "indexed": false, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "1062:5:46", + "nodeType": "VariableDeclaration", + "scope": 9756, + "src": "1055:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9751, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "1055:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9754, + "indexed": false, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "1084:6:46", + "nodeType": "VariableDeclaration", + "scope": 9756, + "src": "1077:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9753, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1077:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "972:124:46" + }, + "src": "955:142:46" + }, + { + "anonymous": false, + "eventSelector": "ee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c4", + "id": 9762, + "name": "NameUnwrapped", + "nameLocation": "1109:13:46", + "nodeType": "EventDefinition", + "parameters": { + "id": 9761, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9758, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "1139:4:46", + "nodeType": "VariableDeclaration", + "scope": 9762, + "src": "1123:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9757, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1123:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9760, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1153:5:46", + "nodeType": "VariableDeclaration", + "scope": 9762, + "src": "1145:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9759, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1145:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1122:37:46" + }, + "src": "1103:57:46" + }, + { + "anonymous": false, + "eventSelector": "39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b", + "id": 9768, + "name": "FusesSet", + "nameLocation": "1172:8:46", + "nodeType": "EventDefinition", + "parameters": { + "id": 9767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9764, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "1197:4:46", + "nodeType": "VariableDeclaration", + "scope": 9768, + "src": "1181:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9763, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1181:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9766, + "indexed": false, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "1210:5:46", + "nodeType": "VariableDeclaration", + "scope": 9768, + "src": "1203:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9765, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "1203:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "1180:36:46" + }, + "src": "1166:51:46" + }, + { + "anonymous": false, + "eventSelector": "f675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132", + "id": 9774, + "name": "ExpiryExtended", + "nameLocation": "1228:14:46", + "nodeType": "EventDefinition", + "parameters": { + "id": 9773, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9770, + "indexed": true, + "mutability": "mutable", + "name": "node", + "nameLocation": "1259:4:46", + "nodeType": "VariableDeclaration", + "scope": 9774, + "src": "1243:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9769, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1243:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9772, + "indexed": false, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "1272:6:46", + "nodeType": "VariableDeclaration", + "scope": 9774, + "src": "1265:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9771, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1265:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1242:37:46" + }, + "src": "1222:58:46" + }, + { + "functionSelector": "3f15457f", + "id": 9780, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ens", + "nameLocation": "1295:3:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9775, + "nodeType": "ParameterList", + "parameters": [], + "src": "1298:2:46" + }, + "returnParameters": { + "id": 9779, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9778, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9780, + "src": "1324:3:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 9777, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 9776, + "name": "ENS", + "nameLocations": [ + "1324:3:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "1324:3:46" + }, + "referencedDeclaration": 4567, + "src": "1324:3:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + } + ], + "src": "1323:5:46" + }, + "scope": 10064, + "src": "1286:43:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "2b20e397", + "id": 9786, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "registrar", + "nameLocation": "1344:9:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9781, + "nodeType": "ParameterList", + "parameters": [], + "src": "1353:2:46" + }, + "returnParameters": { + "id": 9785, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9784, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9786, + "src": "1379:14:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + }, + "typeName": { + "id": 9783, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 9782, + "name": "IBaseRegistrar", + "nameLocations": [ + "1379:14:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4430, + "src": "1379:14:46" + }, + "referencedDeclaration": 4430, + "src": "1379:14:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "visibility": "internal" + } + ], + "src": "1378:16:46" + }, + "scope": 10064, + "src": "1335:60:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "53095467", + "id": 9792, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "metadataService", + "nameLocation": "1410:15:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9787, + "nodeType": "ParameterList", + "parameters": [], + "src": "1425:2:46" + }, + "returnParameters": { + "id": 9791, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9790, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9792, + "src": "1451:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + }, + "typeName": { + "id": 9789, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 9788, + "name": "IMetadataService", + "nameLocations": [ + "1451:16:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9690, + "src": "1451:16:46" + }, + "referencedDeclaration": 9690, + "src": "1451:16:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "visibility": "internal" + } + ], + "src": "1450:18:46" + }, + "scope": 10064, + "src": "1401:68:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "20c38e2b", + "id": 9799, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "names", + "nameLocation": "1484:5:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9795, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9794, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9799, + "src": "1490:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9793, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1490:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1489:9:46" + }, + "returnParameters": { + "id": 9798, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9797, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9799, + "src": "1522:12:46", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9796, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1522:5:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1521:14:46" + }, + "scope": 10064, + "src": "1475:61:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "06fdde03", + "id": 9804, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "1551:4:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9800, + "nodeType": "ParameterList", + "parameters": [], + "src": "1555:2:46" + }, + "returnParameters": { + "id": 9803, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9802, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9804, + "src": "1581:13:46", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9801, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1581:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1580:15:46" + }, + "scope": 10064, + "src": "1542:54:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1f4e1504", + "id": 9810, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "upgradeContract", + "nameLocation": "1611:15:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9805, + "nodeType": "ParameterList", + "parameters": [], + "src": "1626:2:46" + }, + "returnParameters": { + "id": 9809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9810, + "src": "1652:19:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + }, + "typeName": { + "id": 9807, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 9806, + "name": "INameWrapperUpgrade", + "nameLocations": [ + "1652:19:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10082, + "src": "1652:19:46" + }, + "referencedDeclaration": 10082, + "src": "1652:19:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "visibility": "internal" + } + ], + "src": "1651:21:46" + }, + "scope": 10064, + "src": "1602:71:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 15135 + ], + "functionSelector": "01ffc9a7", + "id": 9817, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1688:17:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9813, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9812, + "mutability": "mutable", + "name": "interfaceID", + "nameLocation": "1713:11:46", + "nodeType": "VariableDeclaration", + "scope": 9817, + "src": "1706:18:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 9811, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1706:6:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1705:20:46" + }, + "returnParameters": { + "id": 9816, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9815, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9817, + "src": "1749:4:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9814, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1749:4:46", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1748:6:46" + }, + "scope": 10064, + "src": "1679:76:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "eb8ae530", + "id": 9826, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "wrap", + "nameLocation": "1770:4:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9824, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9819, + "mutability": "mutable", + "name": "name", + "nameLocation": "1799:4:46", + "nodeType": "VariableDeclaration", + "scope": 9826, + "src": "1784:19:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9818, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1784:5:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9821, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "1821:12:46", + "nodeType": "VariableDeclaration", + "scope": 9826, + "src": "1813:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9820, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1813:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9823, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "1851:8:46", + "nodeType": "VariableDeclaration", + "scope": 9826, + "src": "1843:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1843:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1774:91:46" + }, + "returnParameters": { + "id": 9825, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:0:46" + }, + "scope": 10064, + "src": "1761:114:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "8cf8b41e", + "id": 9839, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "wrapETH2LD", + "nameLocation": "1890:10:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9835, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9828, + "mutability": "mutable", + "name": "label", + "nameLocation": "1926:5:46", + "nodeType": "VariableDeclaration", + "scope": 9839, + "src": "1910:21:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9827, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1910:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9830, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "1949:12:46", + "nodeType": "VariableDeclaration", + "scope": 9839, + "src": "1941:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9829, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1941:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9832, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "1978:20:46", + "nodeType": "VariableDeclaration", + "scope": 9839, + "src": "1971:27:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 9831, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "1971:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9834, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "2016:8:46", + "nodeType": "VariableDeclaration", + "scope": 9839, + "src": "2008:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9833, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2008:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1900:130:46" + }, + "returnParameters": { + "id": 9838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9837, + "mutability": "mutable", + "name": "expires", + "nameLocation": "2056:7:46", + "nodeType": "VariableDeclaration", + "scope": 9839, + "src": "2049:14:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9836, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2049:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "2048:16:46" + }, + "scope": 10064, + "src": "1881:184:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a4014982", + "id": 9854, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "registerAndWrapETH2LD", + "nameLocation": "2080:21:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9841, + "mutability": "mutable", + "name": "label", + "nameLocation": "2127:5:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2111:21:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9840, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2111:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9843, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "2150:12:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2142:20:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2142:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9845, + "mutability": "mutable", + "name": "duration", + "nameLocation": "2180:8:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2172:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9844, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2172:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9847, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "2206:8:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2198:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9846, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2198:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9849, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "2231:20:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2224:27:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 9848, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2224:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "2101:156:46" + }, + "returnParameters": { + "id": 9853, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9852, + "mutability": "mutable", + "name": "registrarExpiry", + "nameLocation": "2284:15:46", + "nodeType": "VariableDeclaration", + "scope": 9854, + "src": "2276:23:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9851, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2276:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2275:25:46" + }, + "scope": 10064, + "src": "2071:230:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c475abff", + "id": 9863, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "renew", + "nameLocation": "2316:5:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9856, + "mutability": "mutable", + "name": "labelHash", + "nameLocation": "2339:9:46", + "nodeType": "VariableDeclaration", + "scope": 9863, + "src": "2331:17:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9855, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2331:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9858, + "mutability": "mutable", + "name": "duration", + "nameLocation": "2366:8:46", + "nodeType": "VariableDeclaration", + "scope": 9863, + "src": "2358:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9857, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2358:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2321:59:46" + }, + "returnParameters": { + "id": 9862, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9861, + "mutability": "mutable", + "name": "expires", + "nameLocation": "2407:7:46", + "nodeType": "VariableDeclaration", + "scope": 9863, + "src": "2399:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9860, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2399:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2398:17:46" + }, + "scope": 10064, + "src": "2307:109:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "d8c9921a", + "id": 9872, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "unwrap", + "nameLocation": "2431:6:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9870, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9865, + "mutability": "mutable", + "name": "node", + "nameLocation": "2446:4:46", + "nodeType": "VariableDeclaration", + "scope": 9872, + "src": "2438:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9864, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2438:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9867, + "mutability": "mutable", + "name": "label", + "nameLocation": "2460:5:46", + "nodeType": "VariableDeclaration", + "scope": 9872, + "src": "2452:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9866, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2452:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9869, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2475:5:46", + "nodeType": "VariableDeclaration", + "scope": 9872, + "src": "2467:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2467:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2437:44:46" + }, + "returnParameters": { + "id": 9871, + "nodeType": "ParameterList", + "parameters": [], + "src": "2490:0:46" + }, + "scope": 10064, + "src": "2422:69:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "8b4dfa75", + "id": 9881, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "unwrapETH2LD", + "nameLocation": "2506:12:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9874, + "mutability": "mutable", + "name": "label", + "nameLocation": "2536:5:46", + "nodeType": "VariableDeclaration", + "scope": 9881, + "src": "2528:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9873, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2528:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9876, + "mutability": "mutable", + "name": "newRegistrant", + "nameLocation": "2559:13:46", + "nodeType": "VariableDeclaration", + "scope": 9881, + "src": "2551:21:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9875, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2551:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9878, + "mutability": "mutable", + "name": "newController", + "nameLocation": "2590:13:46", + "nodeType": "VariableDeclaration", + "scope": 9881, + "src": "2582:21:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9877, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2582:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2518:91:46" + }, + "returnParameters": { + "id": 9880, + "nodeType": "ParameterList", + "parameters": [], + "src": "2618:0:46" + }, + "scope": 10064, + "src": "2497:122:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c93ab3fd", + "id": 9888, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "upgrade", + "nameLocation": "2634:7:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9883, + "mutability": "mutable", + "name": "name", + "nameLocation": "2657:4:46", + "nodeType": "VariableDeclaration", + "scope": 9888, + "src": "2642:19:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9882, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2642:5:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9885, + "mutability": "mutable", + "name": "extraData", + "nameLocation": "2678:9:46", + "nodeType": "VariableDeclaration", + "scope": 9888, + "src": "2663:24:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 9884, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2663:5:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2641:47:46" + }, + "returnParameters": { + "id": 9887, + "nodeType": "ParameterList", + "parameters": [], + "src": "2697:0:46" + }, + "scope": 10064, + "src": "2625:73:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "402906fc", + "id": 9897, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setFuses", + "nameLocation": "2713:8:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9890, + "mutability": "mutable", + "name": "node", + "nameLocation": "2739:4:46", + "nodeType": "VariableDeclaration", + "scope": 9897, + "src": "2731:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9889, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2731:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9892, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "2760:20:46", + "nodeType": "VariableDeclaration", + "scope": 9897, + "src": "2753:27:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 9891, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2753:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "2721:65:46" + }, + "returnParameters": { + "id": 9896, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9895, + "mutability": "mutable", + "name": "newFuses", + "nameLocation": "2812:8:46", + "nodeType": "VariableDeclaration", + "scope": 9897, + "src": "2805:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9894, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2805:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "2804:17:46" + }, + "scope": 10064, + "src": "2704:118:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "33c69ea9", + "id": 9908, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setChildFuses", + "nameLocation": "2837:13:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9906, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9899, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "2868:10:46", + "nodeType": "VariableDeclaration", + "scope": 9908, + "src": "2860:18:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9898, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2860:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9901, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "2896:9:46", + "nodeType": "VariableDeclaration", + "scope": 9908, + "src": "2888:17:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9900, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2888:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9903, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "2922:5:46", + "nodeType": "VariableDeclaration", + "scope": 9908, + "src": "2915:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9902, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2915:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9905, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "2944:6:46", + "nodeType": "VariableDeclaration", + "scope": 9908, + "src": "2937:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9904, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2937:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "2850:106:46" + }, + "returnParameters": { + "id": 9907, + "nodeType": "ParameterList", + "parameters": [], + "src": "2965:0:46" + }, + "scope": 10064, + "src": "2828:138:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "24c1af44", + "id": 9927, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setSubnodeRecord", + "nameLocation": "2981:16:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9910, + "mutability": "mutable", + "name": "node", + "nameLocation": "3015:4:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3007:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9909, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3007:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9912, + "mutability": "mutable", + "name": "label", + "nameLocation": "3045:5:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3029:21:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9911, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3029:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9914, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3068:5:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3060:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9913, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3060:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9916, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3091:8:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3083:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9915, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3083:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9918, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "3116:3:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3109:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9917, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3109:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9920, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "3136:5:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3129:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9919, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "3129:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9922, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "3158:6:46", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3151:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9921, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3151:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "2997:173:46" + }, + "returnParameters": { + "id": 9926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9925, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9927, + "src": "3189:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9924, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3189:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3188:9:46" + }, + "scope": 10064, + "src": "2972:226:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "cf408823", + "id": 9938, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setRecord", + "nameLocation": "3213:9:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9936, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9929, + "mutability": "mutable", + "name": "node", + "nameLocation": "3240:4:46", + "nodeType": "VariableDeclaration", + "scope": 9938, + "src": "3232:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9928, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3232:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9931, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3262:5:46", + "nodeType": "VariableDeclaration", + "scope": 9938, + "src": "3254:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9930, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3254:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9933, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3285:8:46", + "nodeType": "VariableDeclaration", + "scope": 9938, + "src": "3277:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9932, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3277:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9935, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "3310:3:46", + "nodeType": "VariableDeclaration", + "scope": 9938, + "src": "3303:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9934, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3303:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3222:97:46" + }, + "returnParameters": { + "id": 9937, + "nodeType": "ParameterList", + "parameters": [], + "src": "3328:0:46" + }, + "scope": 10064, + "src": "3204:125:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c658e086", + "id": 9953, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setSubnodeOwner", + "nameLocation": "3344:15:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9940, + "mutability": "mutable", + "name": "node", + "nameLocation": "3377:4:46", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3369:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9939, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3369:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9942, + "mutability": "mutable", + "name": "label", + "nameLocation": "3407:5:46", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3391:21:46", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9941, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3391:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9944, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "3430:8:46", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3422:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9943, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3422:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9946, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "3455:5:46", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3448:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 9945, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "3448:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9948, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "3477:6:46", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3470:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9947, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3470:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3359:130:46" + }, + "returnParameters": { + "id": 9952, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9951, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9953, + "src": "3508:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9950, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3508:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3507:9:46" + }, + "scope": 10064, + "src": "3335:182:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6e5d6ad2", + "id": 9964, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "extendExpiry", + "nameLocation": "3532:12:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9960, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9955, + "mutability": "mutable", + "name": "node", + "nameLocation": "3562:4:46", + "nodeType": "VariableDeclaration", + "scope": 9964, + "src": "3554:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9954, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3554:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9957, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "3584:9:46", + "nodeType": "VariableDeclaration", + "scope": 9964, + "src": "3576:17:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9956, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3576:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9959, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "3610:6:46", + "nodeType": "VariableDeclaration", + "scope": 9964, + "src": "3603:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9958, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3603:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3544:78:46" + }, + "returnParameters": { + "id": 9963, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9962, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9964, + "src": "3641:6:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9961, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3641:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3640:8:46" + }, + "scope": 10064, + "src": "3523:126:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "41415eab", + "id": 9973, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "canModifyName", + "nameLocation": "3664:13:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9969, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9966, + "mutability": "mutable", + "name": "node", + "nameLocation": "3695:4:46", + "nodeType": "VariableDeclaration", + "scope": 9973, + "src": "3687:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9965, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3687:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9968, + "mutability": "mutable", + "name": "addr", + "nameLocation": "3717:4:46", + "nodeType": "VariableDeclaration", + "scope": 9973, + "src": "3709:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9967, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3709:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3677:50:46" + }, + "returnParameters": { + "id": 9972, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9971, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9973, + "src": "3751:4:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9970, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3751:4:46", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3750:6:46" + }, + "scope": 10064, + "src": "3655:102:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1896f70a", + "id": 9980, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setResolver", + "nameLocation": "3772:11:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9978, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9975, + "mutability": "mutable", + "name": "node", + "nameLocation": "3792:4:46", + "nodeType": "VariableDeclaration", + "scope": 9980, + "src": "3784:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9974, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3784:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9977, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "3806:8:46", + "nodeType": "VariableDeclaration", + "scope": 9980, + "src": "3798:16:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9976, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3798:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3783:32:46" + }, + "returnParameters": { + "id": 9979, + "nodeType": "ParameterList", + "parameters": [], + "src": "3824:0:46" + }, + "scope": 10064, + "src": "3763:62:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "14ab9038", + "id": 9987, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setTTL", + "nameLocation": "3840:6:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9985, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9982, + "mutability": "mutable", + "name": "node", + "nameLocation": "3855:4:46", + "nodeType": "VariableDeclaration", + "scope": 9987, + "src": "3847:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 9981, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3847:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9984, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "3868:3:46", + "nodeType": "VariableDeclaration", + "scope": 9987, + "src": "3861:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 9983, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3861:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "3846:26:46" + }, + "returnParameters": { + "id": 9986, + "nodeType": "ParameterList", + "parameters": [], + "src": "3881:0:46" + }, + "scope": 10064, + "src": "3831:51:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6352211e", + "id": 9994, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "3897:7:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9989, + "mutability": "mutable", + "name": "id", + "nameLocation": "3913:2:46", + "nodeType": "VariableDeclaration", + "scope": 9994, + "src": "3905:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9988, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3905:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3904:12:46" + }, + "returnParameters": { + "id": 9993, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9992, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3948:5:46", + "nodeType": "VariableDeclaration", + "scope": 9994, + "src": "3940:13:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9991, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3940:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3939:15:46" + }, + "scope": 10064, + "src": "3888:67:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "095ea7b3", + "id": 10001, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "3970:7:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 9999, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9996, + "mutability": "mutable", + "name": "to", + "nameLocation": "3986:2:46", + "nodeType": "VariableDeclaration", + "scope": 10001, + "src": "3978:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9995, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3978:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9998, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "3998:7:46", + "nodeType": "VariableDeclaration", + "scope": 10001, + "src": "3990:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9997, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3990:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3977:29:46" + }, + "returnParameters": { + "id": 10000, + "nodeType": "ParameterList", + "parameters": [], + "src": "4015:0:46" + }, + "scope": 10064, + "src": "3961:55:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "081812fc", + "id": 10008, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getApproved", + "nameLocation": "4031:11:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10004, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10003, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4051:7:46", + "nodeType": "VariableDeclaration", + "scope": 10008, + "src": "4043:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10002, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4043:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4042:17:46" + }, + "returnParameters": { + "id": 10007, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10006, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10008, + "src": "4083:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10005, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4083:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4082:9:46" + }, + "scope": 10064, + "src": "4022:70:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0178fe3f", + "id": 10019, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getData", + "nameLocation": "4107:7:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10011, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10010, + "mutability": "mutable", + "name": "id", + "nameLocation": "4132:2:46", + "nodeType": "VariableDeclaration", + "scope": 10019, + "src": "4124:10:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10009, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4124:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4114:26:46" + }, + "returnParameters": { + "id": 10018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10013, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10019, + "src": "4164:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10012, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4164:7:46", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10015, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10019, + "src": "4173:6:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10014, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "4173:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10017, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10019, + "src": "4181:6:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10016, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "4181:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "4163:25:46" + }, + "scope": 10064, + "src": "4098:91:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1534e177", + "id": 10025, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setMetadataService", + "nameLocation": "4204:18:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10023, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10022, + "mutability": "mutable", + "name": "_metadataService", + "nameLocation": "4240:16:46", + "nodeType": "VariableDeclaration", + "scope": 10025, + "src": "4223:33:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + }, + "typeName": { + "id": 10021, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10020, + "name": "IMetadataService", + "nameLocations": [ + "4223:16:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9690, + "src": "4223:16:46" + }, + "referencedDeclaration": 9690, + "src": "4223:16:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "visibility": "internal" + } + ], + "src": "4222:35:46" + }, + "returnParameters": { + "id": 10024, + "nodeType": "ParameterList", + "parameters": [], + "src": "4266:0:46" + }, + "scope": 10064, + "src": "4195:72:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0e89341c", + "id": 10032, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "uri", + "nameLocation": "4282:3:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10027, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4294:7:46", + "nodeType": "VariableDeclaration", + "scope": 10032, + "src": "4286:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10026, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4286:7:46", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4285:17:46" + }, + "returnParameters": { + "id": 10031, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10030, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10032, + "src": "4326:13:46", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10029, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4326:6:46", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4325:15:46" + }, + "scope": 10064, + "src": "4273:68:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "b6bcad26", + "id": 10038, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setUpgradeContract", + "nameLocation": "4356:18:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10036, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10035, + "mutability": "mutable", + "name": "_upgradeAddress", + "nameLocation": "4395:15:46", + "nodeType": "VariableDeclaration", + "scope": 10038, + "src": "4375:35:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + }, + "typeName": { + "id": 10034, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10033, + "name": "INameWrapperUpgrade", + "nameLocations": [ + "4375:19:46" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10082, + "src": "4375:19:46" + }, + "referencedDeclaration": 10082, + "src": "4375:19:46", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "visibility": "internal" + } + ], + "src": "4374:37:46" + }, + "returnParameters": { + "id": 10037, + "nodeType": "ParameterList", + "parameters": [], + "src": "4420:0:46" + }, + "scope": 10064, + "src": "4347:74:46", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "adf4960a", + "id": 10047, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allFusesBurned", + "nameLocation": "4436:14:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10043, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10040, + "mutability": "mutable", + "name": "node", + "nameLocation": "4468:4:46", + "nodeType": "VariableDeclaration", + "scope": 10047, + "src": "4460:12:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10039, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4460:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10042, + "mutability": "mutable", + "name": "fuseMask", + "nameLocation": "4489:8:46", + "nodeType": "VariableDeclaration", + "scope": 10047, + "src": "4482:15:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10041, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "4482:6:46", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "4450:53:46" + }, + "returnParameters": { + "id": 10046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10045, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10047, + "src": "4527:4:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10044, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4527:4:46", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4526:6:46" + }, + "scope": 10064, + "src": "4427:106:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "fd0cd0d9", + "id": 10054, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isWrapped", + "nameLocation": "4548:9:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10049, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10054, + "src": "4558:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10048, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4558:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4557:9:46" + }, + "returnParameters": { + "id": 10053, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10052, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10054, + "src": "4590:4:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10051, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4590:4:46", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4589:6:46" + }, + "scope": 10064, + "src": "4539:57:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "d9a50c12", + "id": 10063, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isWrapped", + "nameLocation": "4611:9:46", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10059, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10056, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10063, + "src": "4621:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10055, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4621:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10058, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10063, + "src": "4630:7:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4630:7:46", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4620:18:46" + }, + "returnParameters": { + "id": 10062, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10061, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10063, + "src": "4662:4:46", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10060, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4662:4:46", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4661:6:46" + }, + "scope": 10064, + "src": "4602:66:46", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 10065, + "src": "914:3756:46", + "usedErrors": [], + "usedEvents": [ + 9756, + 9762, + 9768, + 9774, + 13186, + 13201, + 13210, + 13217 + ] + } + ], + "src": "31:4640:46" + }, + "id": 46 + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol", + "exportedSymbols": { + "INameWrapperUpgrade": [ + 10082 + ] + }, + "id": 10083, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 10066, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:47" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "INameWrapperUpgrade", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 10082, + "linearizedBaseContracts": [ + 10082 + ], + "name": "INameWrapperUpgrade", + "nameLocation": "67:19:47", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "9198c276", + "id": 10081, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "wrapFromUpgrade", + "nameLocation": "102:15:47", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10079, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10068, + "mutability": "mutable", + "name": "name", + "nameLocation": "142:4:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "127:19:47", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 10067, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "127:5:47", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10070, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "164:12:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "156:20:47", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10069, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "156:7:47", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10072, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "193:5:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "186:12:47", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10071, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "186:6:47", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10074, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "215:6:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "208:13:47", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10073, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "208:6:47", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10076, + "mutability": "mutable", + "name": "approved", + "nameLocation": "239:8:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "231:16:47", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10075, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "231:7:47", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10078, + "mutability": "mutable", + "name": "extraData", + "nameLocation": "272:9:47", + "nodeType": "VariableDeclaration", + "scope": 10081, + "src": "257:24:47", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 10077, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "257:5:47", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "117:170:47" + }, + "returnParameters": { + "id": 10080, + "nodeType": "ParameterList", + "parameters": [], + "src": "296:0:47" + }, + "scope": 10082, + "src": "93:204:47", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 10083, + "src": "57:242:47", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:269:47" + }, + "id": 47 + }, + "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "exportedSymbols": { + "BytesUtils": [ + 8609 + ], + "CANNOT_APPROVE": [ + 9718 + ], + "CANNOT_BURN_FUSES": [ + 9703 + ], + "CANNOT_CREATE_SUBDOMAIN": [ + 9715 + ], + "CANNOT_SET_RESOLVER": [ + 9709 + ], + "CANNOT_SET_TTL": [ + 9712 + ], + "CANNOT_TRANSFER": [ + 9706 + ], + "CANNOT_UNWRAP": [ + 9700 + ], + "CAN_DO_EVERYTHING": [ + 9736 + ], + "CAN_EXTEND_EXPIRY": [ + 9733 + ], + "CannotUpgrade": [ + 10155 + ], + "Controllable": [ + 8687 + ], + "ENS": [ + 4567 + ], + "ERC1155Fuse": [ + 9680 + ], + "ERC20Recoverable": [ + 8638 + ], + "IBaseRegistrar": [ + 4430 + ], + "IERC1155": [ + 13289 + ], + "IERC1155MetadataURI": [ + 13345 + ], + "IERC165": [ + 15136 + ], + "IERC721Receiver": [ + 14484 + ], + "IMetadataService": [ + 9690 + ], + "INameWrapper": [ + 10064 + ], + "INameWrapperUpgrade": [ + 10082 + ], + "IReverseRegistrar": [ + 7238 + ], + "IS_DOT_ETH": [ + 9728 + ], + "IncompatibleParent": [ + 10135 + ], + "IncorrectTargetOwner": [ + 10153 + ], + "IncorrectTokenType": [ + 10137 + ], + "LabelMismatch": [ + 10143 + ], + "LabelTooLong": [ + 10149 + ], + "LabelTooShort": [ + 10145 + ], + "NameIsNotWrapped": [ + 10161 + ], + "NameIsStillExpired": [ + 10163 + ], + "NameWrapper": [ + 13029 + ], + "OperationProhibited": [ + 10159 + ], + "Ownable": [ + 13167 + ], + "PARENT_CANNOT_CONTROL": [ + 9723 + ], + "PARENT_CONTROLLED_FUSES": [ + 9739 + ], + "ReverseClaimer": [ + 7273 + ], + "USER_SETTABLE_FUSES": [ + 9742 + ], + "Unauthorised": [ + 10133 + ], + "console": [ + 25070 + ] + }, + "id": 13030, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 10084, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:48" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol", + "file": "./ERC1155Fuse.sol", + "id": 10088, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 9681, + "src": "57:76:48", + "symbolAliases": [ + { + "foreign": { + "id": 10085, + "name": "ERC1155Fuse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9680, + "src": "65:11:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10086, + "name": "IERC165", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15136, + "src": "78:7:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10087, + "name": "IERC1155MetadataURI", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13345, + "src": "87:19:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol", + "file": "./Controllable.sol", + "id": 10090, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 8688, + "src": "134:48:48", + "symbolAliases": [ + { + "foreign": { + "id": 10089, + "name": "Controllable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8687, + "src": "142:12:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol", + "file": "./INameWrapper.sol", + "id": 10105, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 10065, + "src": "183:296:48", + "symbolAliases": [ + { + "foreign": { + "id": 10091, + "name": "INameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10064, + "src": "191:12:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10092, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "205:13:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10093, + "name": "CANNOT_BURN_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9703, + "src": "220:17:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10094, + "name": "CANNOT_TRANSFER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9706, + "src": "239:15:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10095, + "name": "CANNOT_SET_RESOLVER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9709, + "src": "256:19:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10096, + "name": "CANNOT_SET_TTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9712, + "src": "277:14:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10097, + "name": "CANNOT_CREATE_SUBDOMAIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9715, + "src": "293:23:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10098, + "name": "CANNOT_APPROVE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9718, + "src": "318:14:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10099, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "334:21:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10100, + "name": "CAN_DO_EVERYTHING", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9736, + "src": "357:17:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10101, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "376:10:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10102, + "name": "CAN_EXTEND_EXPIRY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9733, + "src": "388:17:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10103, + "name": "PARENT_CONTROLLED_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9739, + "src": "407:23:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 10104, + "name": "USER_SETTABLE_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9742, + "src": "432:19:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol", + "file": "./INameWrapperUpgrade.sol", + "id": 10107, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 10083, + "src": "480:62:48", + "symbolAliases": [ + { + "foreign": { + "id": 10106, + "name": "INameWrapperUpgrade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10082, + "src": "488:19:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol", + "file": "./IMetadataService.sol", + "id": 10109, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 9691, + "src": "543:56:48", + "symbolAliases": [ + { + "foreign": { + "id": 10108, + "name": "IMetadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9690, + "src": "551:16:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "../registry/ENS.sol", + "id": 10111, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 4568, + "src": "600:40:48", + "symbolAliases": [ + { + "foreign": { + "id": 10110, + "name": "ENS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4567, + "src": "608:3:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol", + "file": "../reverseRegistrar/IReverseRegistrar.sol", + "id": 10113, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 7239, + "src": "641:76:48", + "symbolAliases": [ + { + "foreign": { + "id": 10112, + "name": "IReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7238, + "src": "649:17:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol", + "file": "../reverseRegistrar/ReverseClaimer.sol", + "id": 10115, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 7274, + "src": "718:70:48", + "symbolAliases": [ + { + "foreign": { + "id": 10114, + "name": "ReverseClaimer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7273, + "src": "726:14:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol", + "file": "../ethregistrar/IBaseRegistrar.sol", + "id": 10117, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 4431, + "src": "789:66:48", + "symbolAliases": [ + { + "foreign": { + "id": 10116, + "name": "IBaseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4430, + "src": "797:14:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", + "file": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", + "id": 10119, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 14485, + "src": "856:89:48", + "symbolAliases": [ + { + "foreign": { + "id": 10118, + "name": "IERC721Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14484, + "src": "864:15:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "id": 10120, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 13290, + "src": "946:60:48", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "file": "@openzeppelin/contracts/access/Ownable.sol", + "id": 10122, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 13168, + "src": "1007:67:48", + "symbolAliases": [ + { + "foreign": { + "id": 10121, + "name": "Ownable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13167, + "src": "1015:7:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol", + "file": "../utils/BytesUtils.sol", + "id": 10124, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 8610, + "src": "1075:51:48", + "symbolAliases": [ + { + "foreign": { + "id": 10123, + "name": "BytesUtils", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8609, + "src": "1083:10:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol", + "file": "../utils/ERC20Recoverable.sol", + "id": 10126, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 8639, + "src": "1127:63:48", + "symbolAliases": [ + { + "foreign": { + "id": 10125, + "name": "ERC20Recoverable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8638, + "src": "1135:16:48", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "hardhat/console.sol", + "file": "hardhat/console.sol", + "id": 10127, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13030, + "sourceUnit": 25071, + "src": "1192:29:48", + "symbolAliases": [], + "unitAlias": "" + }, + { + "errorSelector": "b455aae8", + "id": 10133, + "name": "Unauthorised", + "nameLocation": "1229:12:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10129, + "mutability": "mutable", + "name": "node", + "nameLocation": "1250:4:48", + "nodeType": "VariableDeclaration", + "scope": 10133, + "src": "1242:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10128, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1242:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10131, + "mutability": "mutable", + "name": "addr", + "nameLocation": "1264:4:48", + "nodeType": "VariableDeclaration", + "scope": 10133, + "src": "1256:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1256:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1241:28:48" + }, + "src": "1223:47:48" + }, + { + "errorSelector": "615a4703", + "id": 10135, + "name": "IncompatibleParent", + "nameLocation": "1277:18:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10134, + "nodeType": "ParameterList", + "parameters": [], + "src": "1295:2:48" + }, + "src": "1271:27:48" + }, + { + "errorSelector": "1931a538", + "id": 10137, + "name": "IncorrectTokenType", + "nameLocation": "1305:18:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10136, + "nodeType": "ParameterList", + "parameters": [], + "src": "1323:2:48" + }, + "src": "1299:27:48" + }, + { + "errorSelector": "c65c3ccc", + "id": 10143, + "name": "LabelMismatch", + "nameLocation": "1333:13:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10139, + "mutability": "mutable", + "name": "labelHash", + "nameLocation": "1355:9:48", + "nodeType": "VariableDeclaration", + "scope": 10143, + "src": "1347:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10138, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1347:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10141, + "mutability": "mutable", + "name": "expectedLabelhash", + "nameLocation": "1374:17:48", + "nodeType": "VariableDeclaration", + "scope": 10143, + "src": "1366:25:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10140, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1366:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1346:46:48" + }, + "src": "1327:66:48" + }, + { + "errorSelector": "280dacb6", + "id": 10145, + "name": "LabelTooShort", + "nameLocation": "1400:13:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10144, + "nodeType": "ParameterList", + "parameters": [], + "src": "1413:2:48" + }, + "src": "1394:22:48" + }, + { + "errorSelector": "e3ba295f", + "id": 10149, + "name": "LabelTooLong", + "nameLocation": "1423:12:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10147, + "mutability": "mutable", + "name": "label", + "nameLocation": "1443:5:48", + "nodeType": "VariableDeclaration", + "scope": 10149, + "src": "1436:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10146, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1436:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1435:14:48" + }, + "src": "1417:33:48" + }, + { + "errorSelector": "5949361a", + "id": 10153, + "name": "IncorrectTargetOwner", + "nameLocation": "1457:20:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10152, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10151, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1486:5:48", + "nodeType": "VariableDeclaration", + "scope": 10153, + "src": "1478:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10150, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1478:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1477:15:48" + }, + "src": "1451:42:48" + }, + { + "errorSelector": "24c1d6d4", + "id": 10155, + "name": "CannotUpgrade", + "nameLocation": "1500:13:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10154, + "nodeType": "ParameterList", + "parameters": [], + "src": "1513:2:48" + }, + "src": "1494:22:48" + }, + { + "errorSelector": "a2a72013", + "id": 10159, + "name": "OperationProhibited", + "nameLocation": "1523:19:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10157, + "mutability": "mutable", + "name": "node", + "nameLocation": "1551:4:48", + "nodeType": "VariableDeclaration", + "scope": 10159, + "src": "1543:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10156, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1543:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1542:14:48" + }, + "src": "1517:40:48" + }, + { + "errorSelector": "5374b599", + "id": 10161, + "name": "NameIsNotWrapped", + "nameLocation": "1564:16:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10160, + "nodeType": "ParameterList", + "parameters": [], + "src": "1580:2:48" + }, + "src": "1558:25:48" + }, + { + "errorSelector": "785fd672", + "id": 10163, + "name": "NameIsStillExpired", + "nameLocation": "1590:18:48", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 10162, + "nodeType": "ParameterList", + "parameters": [], + "src": "1608:2:48" + }, + "src": "1584:27:48" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 10164, + "name": "Ownable", + "nameLocations": [ + "1641:7:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13167, + "src": "1641:7:48" + }, + "id": 10165, + "nodeType": "InheritanceSpecifier", + "src": "1641:7:48" + }, + { + "baseName": { + "id": 10166, + "name": "ERC1155Fuse", + "nameLocations": [ + "1654:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "1654:11:48" + }, + "id": 10167, + "nodeType": "InheritanceSpecifier", + "src": "1654:11:48" + }, + { + "baseName": { + "id": 10168, + "name": "INameWrapper", + "nameLocations": [ + "1671:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "1671:12:48" + }, + "id": 10169, + "nodeType": "InheritanceSpecifier", + "src": "1671:12:48" + }, + { + "baseName": { + "id": 10170, + "name": "Controllable", + "nameLocations": [ + "1689:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8687, + "src": "1689:12:48" + }, + "id": 10171, + "nodeType": "InheritanceSpecifier", + "src": "1689:12:48" + }, + { + "baseName": { + "id": 10172, + "name": "IERC721Receiver", + "nameLocations": [ + "1707:15:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14484, + "src": "1707:15:48" + }, + "id": 10173, + "nodeType": "InheritanceSpecifier", + "src": "1707:15:48" + }, + { + "baseName": { + "id": 10174, + "name": "ERC20Recoverable", + "nameLocations": [ + "1728:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8638, + "src": "1728:16:48" + }, + "id": 10175, + "nodeType": "InheritanceSpecifier", + "src": "1728:16:48" + }, + { + "baseName": { + "id": 10176, + "name": "ReverseClaimer", + "nameLocations": [ + "1750:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7273, + "src": "1750:14:48" + }, + "id": 10177, + "nodeType": "InheritanceSpecifier", + "src": "1750:14:48" + } + ], + "canonicalName": "NameWrapper", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 13029, + "linearizedBaseContracts": [ + 13029, + 7273, + 8638, + 14484, + 8687, + 10064, + 9680, + 13167, + 14871, + 13345, + 13289, + 15124, + 15136 + ], + "name": "NameWrapper", + "nameLocation": "1622:11:48", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 10180, + "libraryName": { + "id": 10178, + "name": "BytesUtils", + "nameLocations": [ + "1777:10:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8609, + "src": "1777:10:48" + }, + "nodeType": "UsingForDirective", + "src": "1771:27:48", + "typeName": { + "id": 10179, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1792:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + { + "baseFunctions": [ + 9780 + ], + "constant": false, + "functionSelector": "3f15457f", + "id": 10183, + "mutability": "immutable", + "name": "ens", + "nameLocation": "1825:3:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "1804:24:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 10182, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10181, + "name": "ENS", + "nameLocations": [ + "1804:3:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "1804:3:48" + }, + "referencedDeclaration": 4567, + "src": "1804:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "public" + }, + { + "baseFunctions": [ + 9786 + ], + "constant": false, + "functionSelector": "2b20e397", + "id": 10186, + "mutability": "immutable", + "name": "registrar", + "nameLocation": "1866:9:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "1834:41:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + }, + "typeName": { + "id": 10185, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10184, + "name": "IBaseRegistrar", + "nameLocations": [ + "1834:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4430, + "src": "1834:14:48" + }, + "referencedDeclaration": 4430, + "src": "1834:14:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "visibility": "public" + }, + { + "baseFunctions": [ + 9792 + ], + "constant": false, + "functionSelector": "53095467", + "id": 10189, + "mutability": "mutable", + "name": "metadataService", + "nameLocation": "1905:15:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "1881:39:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + }, + "typeName": { + "id": 10188, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10187, + "name": "IMetadataService", + "nameLocations": [ + "1881:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9690, + "src": "1881:16:48" + }, + "referencedDeclaration": 9690, + "src": "1881:16:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "visibility": "public" + }, + { + "baseFunctions": [ + 9799 + ], + "constant": false, + "functionSelector": "20c38e2b", + "id": 10193, + "mutability": "mutable", + "name": "names", + "nameLocation": "1959:5:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "1926:38:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes)" + }, + "typeName": { + "id": 10192, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 10190, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1934:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "1926:25:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 10191, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1945:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "visibility": "public" + }, + { + "baseFunctions": [ + 9804 + ], + "constant": true, + "functionSelector": "06fdde03", + "id": 10196, + "mutability": "constant", + "name": "name", + "nameLocation": "1993:4:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "1970:43:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10194, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1970:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": { + "hexValue": "4e616d6557726170706572", + "id": 10195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2000:13:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e5fb40623baecd82eb99e188b55cad44919cef59b84840d0442d334650f7781", + "typeString": "literal_string \"NameWrapper\"" + }, + "value": "NameWrapper" + }, + "visibility": "public" + }, + { + "constant": true, + "id": 10199, + "mutability": "constant", + "name": "GRACE_PERIOD", + "nameLocation": "2044:12:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2020:46:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10197, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2020:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "value": { + "hexValue": "3930", + "id": 10198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2059:7:48", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_7776000_by_1", + "typeString": "int_const 7776000" + }, + "value": "90" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 10202, + "mutability": "constant", + "name": "ETH_NODE", + "nameLocation": "2097:8:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2072:110:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10200, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2072:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307839336364656237303862373534356463363638656239323830313736313639643163333363666438656436663034363930613062636338386139336663346165", + "id": 10201, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2116:66:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_66853817334611902194238164484889819180315942402426128563245745834960013477038_by_1", + "typeString": "int_const 6685...(69 digits omitted)...7038" + }, + "value": "0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 10205, + "mutability": "constant", + "name": "ETH_LABELHASH", + "nameLocation": "2213:13:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2188:115:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10203, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2188:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307834663562383132373839666336303662653162336231363930386462313366633761396164663763613732363431663834643735623437303639643364376630", + "id": 10204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2237:66:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_35894389512221139346028120028875095598761990588366713962827482865185691260912_by_1", + "typeString": "int_const 3589...(69 digits omitted)...0912" + }, + "value": "0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 10208, + "mutability": "constant", + "name": "ROOT_NODE", + "nameLocation": "2334:9:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2309:111:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10206, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2309:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": { + "hexValue": "307830303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030", + "id": 10207, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2354:66:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0000000000000000000000000000000000000000000000000000000000000000" + }, + "visibility": "private" + }, + { + "baseFunctions": [ + 9810 + ], + "constant": false, + "functionSelector": "1f4e1504", + "id": 10211, + "mutability": "mutable", + "name": "upgradeContract", + "nameLocation": "2454:15:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2427:42:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + }, + "typeName": { + "id": 10210, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10209, + "name": "INameWrapperUpgrade", + "nameLocations": [ + "2427:19:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10082, + "src": "2427:19:48" + }, + "referencedDeclaration": 10082, + "src": "2427:19:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "visibility": "public" + }, + { + "constant": true, + "id": 10218, + "mutability": "constant", + "name": "MAX_EXPIRY", + "nameLocation": "2499:10:48", + "nodeType": "VariableDeclaration", + "scope": 13029, + "src": "2475:53:48", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10212, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2475:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "value": { + "expression": { + "arguments": [ + { + "id": 10215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2517:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 10214, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2517:6:48", + "typeDescriptions": {} + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + } + ], + "id": 10213, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "2512:4:48", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 10216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2512:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_uint64", + "typeString": "type(uint64)" + } + }, + "id": 10217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2525:3:48", + "memberName": "max", + "nodeType": "MemberAccess", + "src": "2512:16:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "private" + }, + { + "body": { + "id": 10295, + "nodeType": "Block", + "src": "2682:628:48", + "statements": [ + { + "expression": { + "id": 10237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10235, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "2692:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10236, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10221, + "src": "2698:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "src": "2692:10:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10238, + "nodeType": "ExpressionStatement", + "src": "2692:10:48" + }, + { + "expression": { + "id": 10241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10239, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "2712:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10240, + "name": "_registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10224, + "src": "2724:10:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "src": "2712:22:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10242, + "nodeType": "ExpressionStatement", + "src": "2712:22:48" + }, + { + "expression": { + "id": 10245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10243, + "name": "metadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10189, + "src": "2744:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10244, + "name": "_metadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10227, + "src": "2762:16:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "src": "2744:34:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "id": 10246, + "nodeType": "ExpressionStatement", + "src": "2744:34:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10250, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "2934:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10249, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2926:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10248, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2926:7:48", + "typeDescriptions": {} + } + }, + "id": 10251, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2926:17:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 10254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2965:1:48", + "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": 10253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2957:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10252, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2957:7:48", + "typeDescriptions": {} + } + }, + "id": 10255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2957:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 10260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 10258, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "2988:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 10259, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "3012:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "2988:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 10257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2981:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" + }, + "typeName": { + "id": 10256, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "2981:6:48", + "typeDescriptions": {} + } + }, + "id": 10261, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2981:45:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10262, + "name": "MAX_EXPIRY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10218, + "src": "3040:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10247, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12924, + 9245 + ], + "referencedDeclaration": 9245, + "src": "2904:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 10263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2904:156:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10264, + "nodeType": "ExpressionStatement", + "src": "2904:156:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10268, + "name": "ROOT_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10208, + "src": "3100:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10267, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3092:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10266, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3092:7:48", + "typeDescriptions": {} + } + }, + "id": 10269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3092:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 10272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3132:1:48", + "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": 10271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3124:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10270, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3124:7:48", + "typeDescriptions": {} + } + }, + "id": 10273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3124:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 10278, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 10276, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "3155:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 10277, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "3179:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "3155:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 10275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3148:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" + }, + "typeName": { + "id": 10274, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "3148:6:48", + "typeDescriptions": {} + } + }, + "id": 10279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3148:45:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10280, + "name": "MAX_EXPIRY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10218, + "src": "3207:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10265, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12924, + 9245 + ], + "referencedDeclaration": 9245, + "src": "3070:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 10281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3070:157:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10282, + "nodeType": "ExpressionStatement", + "src": "3070:157:48" + }, + { + "expression": { + "id": 10287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 10283, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "3237:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 10285, + "indexExpression": { + "id": 10284, + "name": "ROOT_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10208, + "src": "3243:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3237:16:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "00", + "id": 10286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3256:6:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a", + "typeString": "literal_string hex\"00\"" + }, + "value": "\u0000" + }, + "src": "3237:25:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 10288, + "nodeType": "ExpressionStatement", + "src": "3237:25:48" + }, + { + "expression": { + "id": 10293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 10289, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "3272:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 10291, + "indexExpression": { + "id": 10290, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "3278:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3272:15:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "0365746800", + "id": 10292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3290:13:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c65934a88d283a635602ca15e14e8b9a9a3d150eacacca3b07f4a85f5fdbface", + "typeString": "literal_string hex\"0365746800\"" + }, + "value": "\u0003eth\u0000" + }, + "src": "3272:31:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 10294, + "nodeType": "ExpressionStatement", + "src": "3272:31:48" + } + ] + }, + "id": 10296, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 10230, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10221, + "src": "2664:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + { + "expression": { + "id": 10231, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2670:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2674:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2670:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 10233, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 10229, + "name": "ReverseClaimer", + "nameLocations": [ + "2649:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 7273, + "src": "2649:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "2649:32:48" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10228, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10221, + "mutability": "mutable", + "name": "_ens", + "nameLocation": "2560:4:48", + "nodeType": "VariableDeclaration", + "scope": 10296, + "src": "2556:8:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 10220, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10219, + "name": "ENS", + "nameLocations": [ + "2556:3:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "2556:3:48" + }, + "referencedDeclaration": 4567, + "src": "2556:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10224, + "mutability": "mutable", + "name": "_registrar", + "nameLocation": "2589:10:48", + "nodeType": "VariableDeclaration", + "scope": 10296, + "src": "2574:25:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + }, + "typeName": { + "id": 10223, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10222, + "name": "IBaseRegistrar", + "nameLocations": [ + "2574:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4430, + "src": "2574:14:48" + }, + "referencedDeclaration": 4430, + "src": "2574:14:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10227, + "mutability": "mutable", + "name": "_metadataService", + "nameLocation": "2626:16:48", + "nodeType": "VariableDeclaration", + "scope": 10296, + "src": "2609:33:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + }, + "typeName": { + "id": 10226, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10225, + "name": "IMetadataService", + "nameLocations": [ + "2609:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9690, + "src": "2609:16:48" + }, + "referencedDeclaration": 9690, + "src": "2609:16:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "visibility": "internal" + } + ], + "src": "2546:102:48" + }, + "returnParameters": { + "id": 10234, + "nodeType": "ParameterList", + "parameters": [], + "src": "2682:0:48" + }, + "scope": 13029, + "src": "2535:775:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 8827, + 9817 + ], + "body": { + "id": 10325, + "nodeType": "Block", + "src": "3448:197:48", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 10311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10306, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10298, + "src": "3477:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 10308, + "name": "INameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10064, + "src": "3497:12:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_INameWrapper_$10064_$", + "typeString": "type(contract INameWrapper)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_INameWrapper_$10064_$", + "typeString": "type(contract INameWrapper)" + } + ], + "id": 10307, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "3492:4:48", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 10309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3492:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_INameWrapper_$10064", + "typeString": "type(contract INameWrapper)" + } + }, + "id": 10310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3511:11:48", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "3492:30:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "3477:45:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 10317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10312, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10298, + "src": "3538:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 10314, + "name": "IERC721Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14484, + "src": "3558:15:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$14484_$", + "typeString": "type(contract IERC721Receiver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$14484_$", + "typeString": "type(contract IERC721Receiver)" + } + ], + "id": 10313, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "3553:4:48", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 10315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3553:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721Receiver_$14484", + "typeString": "type(contract IERC721Receiver)" + } + }, + "id": 10316, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3575:11:48", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "3553:33:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "3538:48:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3477:109:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 10321, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10298, + "src": "3626:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 10319, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "3602:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3608:17:48", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 8827, + "src": "3602:23:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 10322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3602:36:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3477:161:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 10305, + "id": 10324, + "nodeType": "Return", + "src": "3458:180:48" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 10326, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "3325:17:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10302, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10300, + "name": "ERC1155Fuse", + "nameLocations": [ + "3406:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "3406:11:48" + }, + { + "id": 10301, + "name": "INameWrapper", + "nameLocations": [ + "3419:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "3419:12:48" + } + ], + "src": "3397:35:48" + }, + "parameters": { + "id": 10299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10298, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "3359:11:48", + "nodeType": "VariableDeclaration", + "scope": 10326, + "src": "3352:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 10297, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "3352:6:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "3342:34:48" + }, + "returnParameters": { + "id": 10305, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10304, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10326, + "src": "3442:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10303, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3442:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3441:6:48" + }, + "scope": 13029, + "src": "3316:329:48", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 8742, + 9994 + ], + "body": { + "id": 10342, + "nodeType": "Block", + "src": "3952:41:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 10339, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10329, + "src": "3983:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10337, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "3969:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3975:7:48", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 8742, + "src": "3969:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 10340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3969:17:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 10336, + "id": 10341, + "nodeType": "Return", + "src": "3962:24:48" + } + ] + }, + "documentation": { + "id": 10327, + "nodeType": "StructuredDocumentation", + "src": "3675:156:48", + "text": " @notice Gets the owner of a name\n @param id Label as a string of the .eth domain to wrap\n @return owner The owner of the name" + }, + "functionSelector": "6352211e", + "id": 10343, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "3846:7:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10333, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10331, + "name": "ERC1155Fuse", + "nameLocations": [ + "3901:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "3901:11:48" + }, + { + "id": 10332, + "name": "INameWrapper", + "nameLocations": [ + "3914:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "3914:12:48" + } + ], + "src": "3892:35:48" + }, + "parameters": { + "id": 10330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10329, + "mutability": "mutable", + "name": "id", + "nameLocation": "3871:2:48", + "nodeType": "VariableDeclaration", + "scope": 10343, + "src": "3863:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3863:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3853:26:48" + }, + "returnParameters": { + "id": 10336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10335, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3945:5:48", + "nodeType": "VariableDeclaration", + "scope": 10343, + "src": "3937:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3937:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3936:15:48" + }, + "scope": 13029, + "src": "3837:156:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 8796, + 10008 + ], + "body": { + "id": 10378, + "nodeType": "Block", + "src": "4304:158:48", + "statements": [ + { + "assignments": [ + 10355 + ], + "declarations": [ + { + "constant": false, + "id": 10355, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4322:5:48", + "nodeType": "VariableDeclaration", + "scope": 10378, + "src": "4314:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10354, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4314:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 10359, + "initialValue": { + "arguments": [ + { + "id": 10357, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10346, + "src": "4338:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10356, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10343 + ], + "referencedDeclaration": 10343, + "src": "4330:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 10358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4330:11:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4314:27:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10360, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10355, + "src": "4355:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 10363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4372:1:48", + "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": 10362, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4364:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4364:7:48", + "typeDescriptions": {} + } + }, + "id": 10364, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4364:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4355:19:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10372, + "nodeType": "IfStatement", + "src": "4351:67:48", + "trueBody": { + "id": 10371, + "nodeType": "Block", + "src": "4376:42:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 10368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4405:1:48", + "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": 10367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4397:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10366, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4397:7:48", + "typeDescriptions": {} + } + }, + "id": 10369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4397:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 10353, + "id": 10370, + "nodeType": "Return", + "src": "4390:17:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 10375, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10346, + "src": "4452:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10373, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "4434:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4440:11:48", + "memberName": "getApproved", + "nodeType": "MemberAccess", + "referencedDeclaration": 8796, + "src": "4434:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 10376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4434:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 10353, + "id": 10377, + "nodeType": "Return", + "src": "4427:28:48" + } + ] + }, + "documentation": { + "id": 10344, + "nodeType": "StructuredDocumentation", + "src": "3999:141:48", + "text": " @notice Gets the owner of a name\n @param id Namehash of the name\n @return operator Approved operator of a name" + }, + "functionSelector": "081812fc", + "id": 10379, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getApproved", + "nameLocation": "4155:11:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10350, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10348, + "name": "ERC1155Fuse", + "nameLocations": [ + "4238:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "4238:11:48" + }, + { + "id": 10349, + "name": "INameWrapper", + "nameLocations": [ + "4251:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "4251:12:48" + } + ], + "src": "4229:35:48" + }, + "parameters": { + "id": 10347, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10346, + "mutability": "mutable", + "name": "id", + "nameLocation": "4184:2:48", + "nodeType": "VariableDeclaration", + "scope": 10379, + "src": "4176:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4176:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4166:26:48" + }, + "returnParameters": { + "id": 10353, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10352, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4290:8:48", + "nodeType": "VariableDeclaration", + "scope": 10379, + "src": "4282:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4282:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4281:18:48" + }, + "scope": 13029, + "src": "4146:316:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 8783, + 10001 + ], + "body": { + "id": 10417, + "nodeType": "Block", + "src": "4716:214:48", + "statements": [ + { + "assignments": [ + null, + 10391, + null + ], + "declarations": [ + null, + { + "constant": false, + "id": 10391, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "4736:5:48", + "nodeType": "VariableDeclaration", + "scope": 10417, + "src": "4729:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10390, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "4729:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 10395, + "initialValue": { + "arguments": [ + { + "id": 10393, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10384, + "src": "4755:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10392, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "4747:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 10394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4747:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4726:37:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 10400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 10398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10396, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10391, + "src": "4777:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 10397, + "name": "CANNOT_APPROVE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9718, + "src": "4785:14:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "4777:22:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 10399, + "name": "CANNOT_APPROVE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9718, + "src": "4803:14:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "4777:40:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10409, + "nodeType": "IfStatement", + "src": "4773:115:48", + "trueBody": { + "id": 10408, + "nodeType": "Block", + "src": "4819:69:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "arguments": [ + { + "id": 10404, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10384, + "src": "4868:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10403, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4860:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 10402, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4860:7:48", + "typeDescriptions": {} + } + }, + "id": 10405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4860:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10401, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "4840:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 10406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4840:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10407, + "nodeType": "RevertStatement", + "src": "4833:44:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 10413, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10382, + "src": "4911:2:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10414, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10384, + "src": "4915:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10410, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "4897:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4903:7:48", + "memberName": "approve", + "nodeType": "MemberAccess", + "referencedDeclaration": 8783, + "src": "4897:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 10415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4897:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10416, + "nodeType": "ExpressionStatement", + "src": "4897:26:48" + } + ] + }, + "documentation": { + "id": 10380, + "nodeType": "StructuredDocumentation", + "src": "4468:131:48", + "text": " @notice Approves an address for a name\n @param to address to approve\n @param tokenId name to approve" + }, + "functionSelector": "095ea7b3", + "id": 10418, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "4614:7:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10388, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10386, + "name": "ERC1155Fuse", + "nameLocations": [ + "4689:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "4689:11:48" + }, + { + "id": 10387, + "name": "INameWrapper", + "nameLocations": [ + "4702:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "4702:12:48" + } + ], + "src": "4680:35:48" + }, + "parameters": { + "id": 10385, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10382, + "mutability": "mutable", + "name": "to", + "nameLocation": "4639:2:48", + "nodeType": "VariableDeclaration", + "scope": 10418, + "src": "4631:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10381, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4631:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10384, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4659:7:48", + "nodeType": "VariableDeclaration", + "scope": 10418, + "src": "4651:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10383, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4651:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4621:51:48" + }, + "returnParameters": { + "id": 10389, + "nodeType": "ParameterList", + "parameters": [], + "src": "4716:0:48" + }, + "scope": 13029, + "src": "4605:325:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9027, + 10019 + ], + "body": { + "id": 10453, + "nodeType": "Block", + "src": "5330:128:48", + "statements": [ + { + "expression": { + "id": 10441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 10433, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10427, + "src": "5341:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10434, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10429, + "src": "5348:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10435, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10431, + "src": "5355:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "id": 10436, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "5340:22:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 10439, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10421, + "src": "5379:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10437, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "5365:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5371:7:48", + "memberName": "getData", + "nodeType": "MemberAccess", + "referencedDeclaration": 9027, + "src": "5365:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 10440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5365:17:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "src": "5340:42:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10442, + "nodeType": "ExpressionStatement", + "src": "5340:42:48" + }, + { + "expression": { + "id": 10451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 10443, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10427, + "src": "5394:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10444, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10429, + "src": "5401:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 10445, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "5393:14:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$", + "typeString": "tuple(address,uint32)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 10447, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10427, + "src": "5430:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10448, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10429, + "src": "5437:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10449, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10431, + "src": "5444:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10446, + "name": "_clearOwnerAndFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12331 + ], + "referencedDeclaration": 12331, + "src": "5410:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint32_$_t_uint64_$returns$_t_address_$_t_uint32_$", + "typeString": "function (address,uint32,uint64) view returns (address,uint32)" + } + }, + "id": 10450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5410:41:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$", + "typeString": "tuple(address,uint32)" + } + }, + "src": "5393:58:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10452, + "nodeType": "ExpressionStatement", + "src": "5393:58:48" + } + ] + }, + "documentation": { + "id": 10419, + "nodeType": "StructuredDocumentation", + "src": "4936:208:48", + "text": " @notice Gets the data for a name\n @param id Namehash of the name\n @return owner Owner of the name\n @return fuses Fuses of the name\n @return expiry Expiry of the name" + }, + "functionSelector": "0178fe3f", + "id": 10454, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getData", + "nameLocation": "5159:7:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10425, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10423, + "name": "ERC1155Fuse", + "nameLocations": [ + "5238:11:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9680, + "src": "5238:11:48" + }, + { + "id": 10424, + "name": "INameWrapper", + "nameLocations": [ + "5251:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "5251:12:48" + } + ], + "src": "5229:35:48" + }, + "parameters": { + "id": 10422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10421, + "mutability": "mutable", + "name": "id", + "nameLocation": "5184:2:48", + "nodeType": "VariableDeclaration", + "scope": 10454, + "src": "5176:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10420, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5176:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5166:26:48" + }, + "returnParameters": { + "id": 10432, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10427, + "mutability": "mutable", + "name": "owner", + "nameLocation": "5290:5:48", + "nodeType": "VariableDeclaration", + "scope": 10454, + "src": "5282:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5282:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10429, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "5304:5:48", + "nodeType": "VariableDeclaration", + "scope": 10454, + "src": "5297:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10428, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "5297:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10431, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "5318:6:48", + "nodeType": "VariableDeclaration", + "scope": 10454, + "src": "5311:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10430, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "5311:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "5281:44:48" + }, + "scope": 13029, + "src": "5150:308:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 10025 + ], + "body": { + "id": 10467, + "nodeType": "Block", + "src": "5727:51:48", + "statements": [ + { + "expression": { + "id": 10465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10463, + "name": "metadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10189, + "src": "5737:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10464, + "name": "_metadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10458, + "src": "5755:16:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "src": "5737:34:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "id": 10466, + "nodeType": "ExpressionStatement", + "src": "5737:34:48" + } + ] + }, + "documentation": { + "id": 10455, + "nodeType": "StructuredDocumentation", + "src": "5492:135:48", + "text": " @notice Set the metadata service. Only the owner can do this\n @param _metadataService The new metadata service" + }, + "functionSelector": "1534e177", + "id": 10468, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 10461, + "kind": "modifierInvocation", + "modifierName": { + "id": 10460, + "name": "onlyOwner", + "nameLocations": [ + "5717:9:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "5717:9:48" + }, + "nodeType": "ModifierInvocation", + "src": "5717:9:48" + } + ], + "name": "setMetadataService", + "nameLocation": "5642:18:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10458, + "mutability": "mutable", + "name": "_metadataService", + "nameLocation": "5687:16:48", + "nodeType": "VariableDeclaration", + "scope": 10468, + "src": "5670:33:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + }, + "typeName": { + "id": 10457, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10456, + "name": "IMetadataService", + "nameLocations": [ + "5670:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 9690, + "src": "5670:16:48" + }, + "referencedDeclaration": 9690, + "src": "5670:16:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "visibility": "internal" + } + ], + "src": "5660:49:48" + }, + "returnParameters": { + "id": 10462, + "nodeType": "ParameterList", + "parameters": [], + "src": "5727:0:48" + }, + "scope": 13029, + "src": "5633:145:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 10032, + 13344 + ], + "body": { + "id": 10484, + "nodeType": "Block", + "src": "6089:52:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 10481, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10471, + "src": "6126:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10479, + "name": "metadataService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10189, + "src": "6106:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IMetadataService_$9690", + "typeString": "contract IMetadataService" + } + }, + "id": 10480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6122:3:48", + "memberName": "uri", + "nodeType": "MemberAccess", + "referencedDeclaration": 9689, + "src": "6106:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_string_memory_ptr_$", + "typeString": "function (uint256) view external returns (string memory)" + } + }, + "id": 10482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6106:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 10478, + "id": 10483, + "nodeType": "Return", + "src": "6099:35:48" + } + ] + }, + "documentation": { + "id": 10469, + "nodeType": "StructuredDocumentation", + "src": "5784:139:48", + "text": " @notice Get the metadata uri\n @param tokenId The id of the token\n @return string uri of the metadata service" + }, + "functionSelector": "0e89341c", + "id": 10485, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "uri", + "nameLocation": "5938:3:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 10475, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 10473, + "name": "INameWrapper", + "nameLocations": [ + "6018:12:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "6018:12:48" + }, + { + "id": 10474, + "name": "IERC1155MetadataURI", + "nameLocations": [ + "6032:19:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13345, + "src": "6032:19:48" + } + ], + "src": "6009:43:48" + }, + "parameters": { + "id": 10472, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10471, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "5959:7:48", + "nodeType": "VariableDeclaration", + "scope": 10485, + "src": "5951:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5951:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5941:31:48" + }, + "returnParameters": { + "id": 10478, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10477, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10485, + "src": "6070:13:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10476, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6070:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6069:15:48" + }, + "scope": 13029, + "src": "5929:212:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 10038 + ], + "body": { + "id": 10560, + "nodeType": "Block", + "src": "6557:462:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 10496, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6579:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6571:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6571:7:48", + "typeDescriptions": {} + } + }, + "id": 10497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6571:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 10500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6607:1:48", + "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": 10499, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6599:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10498, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6599:7:48", + "typeDescriptions": {} + } + }, + "id": 10501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6599:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6571:38:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10524, + "nodeType": "IfStatement", + "src": "6567:197:48", + "trueBody": { + "id": 10523, + "nodeType": "Block", + "src": "6611:153:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10508, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6661:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6653:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10506, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6653:7:48", + "typeDescriptions": {} + } + }, + "id": 10509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6653:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "66616c7365", + "id": 10510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6679:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10503, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "6625:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6635:17:48", + "memberName": "setApprovalForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 14447, + "src": "6625:27:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool) external" + } + }, + "id": 10511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6625:60:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10512, + "nodeType": "ExpressionStatement", + "src": "6625:60:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10518, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6729:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6721:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10516, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6721:7:48", + "typeDescriptions": {} + } + }, + "id": 10519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6721:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "66616c7365", + "id": 10520, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6747:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10513, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "6699:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6703:17:48", + "memberName": "setApprovalForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 4529, + "src": "6699:21:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool) external" + } + }, + "id": 10521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6699:54:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10522, + "nodeType": "ExpressionStatement", + "src": "6699:54:48" + } + ] + } + }, + { + "expression": { + "id": 10527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10525, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6774:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10526, + "name": "_upgradeAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10489, + "src": "6792:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "src": "6774:33:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "id": 10528, + "nodeType": "ExpressionStatement", + "src": "6774:33:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 10531, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6830:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6822:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10529, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6822:7:48", + "typeDescriptions": {} + } + }, + "id": 10532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6822:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 10535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6858:1:48", + "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": 10534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6850:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6850:7:48", + "typeDescriptions": {} + } + }, + "id": 10536, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6850:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6822:38:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10559, + "nodeType": "IfStatement", + "src": "6818:195:48", + "trueBody": { + "id": 10558, + "nodeType": "Block", + "src": "6862:151:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10543, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6912:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6904:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10541, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6904:7:48", + "typeDescriptions": {} + } + }, + "id": 10544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6904:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "74727565", + "id": 10545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6930:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10538, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "6876:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6886:17:48", + "memberName": "setApprovalForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 14447, + "src": "6876:27:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool) external" + } + }, + "id": 10546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6876:59:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10547, + "nodeType": "ExpressionStatement", + "src": "6876:59:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 10553, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "6979:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 10552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6971:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10551, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6971:7:48", + "typeDescriptions": {} + } + }, + "id": 10554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6971:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "74727565", + "id": 10555, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6997:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10548, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "6949:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6953:17:48", + "memberName": "setApprovalForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 4529, + "src": "6949:21:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool) external" + } + }, + "id": 10556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6949:53:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10557, + "nodeType": "ExpressionStatement", + "src": "6949:53:48" + } + ] + } + } + ] + }, + "documentation": { + "id": 10486, + "nodeType": "StructuredDocumentation", + "src": "6147:308:48", + "text": " @notice Set the address of the upgradeContract of the contract. only admin can do this\n @dev The default value of upgradeContract is the 0 address. Use the 0 address at any time\n to make the contract not upgradable.\n @param _upgradeAddress address of an upgraded contract" + }, + "functionSelector": "b6bcad26", + "id": 10561, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 10492, + "kind": "modifierInvocation", + "modifierName": { + "id": 10491, + "name": "onlyOwner", + "nameLocations": [ + "6547:9:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "6547:9:48" + }, + "nodeType": "ModifierInvocation", + "src": "6547:9:48" + } + ], + "name": "setUpgradeContract", + "nameLocation": "6470:18:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10490, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10489, + "mutability": "mutable", + "name": "_upgradeAddress", + "nameLocation": "6518:15:48", + "nodeType": "VariableDeclaration", + "scope": 10561, + "src": "6498:35:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + }, + "typeName": { + "id": 10488, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 10487, + "name": "INameWrapperUpgrade", + "nameLocations": [ + "6498:19:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10082, + "src": "6498:19:48" + }, + "referencedDeclaration": 10082, + "src": "6498:19:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "visibility": "internal" + } + ], + "src": "6488:51:48" + }, + "returnParameters": { + "id": 10493, + "nodeType": "ParameterList", + "parameters": [], + "src": "6557:0:48" + }, + "scope": 13029, + "src": "6461:558:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 10581, + "nodeType": "Block", + "src": "7213:128:48", + "statements": [ + { + "condition": { + "id": 10571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7227:32:48", + "subExpression": { + "arguments": [ + { + "id": 10567, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10564, + "src": "7242:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 10568, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7248:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7252:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7248:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10566, + "name": "canModifyName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10622, + "src": "7228:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 10570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7228:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10579, + "nodeType": "IfStatement", + "src": "7223:100:48", + "trueBody": { + "id": 10578, + "nodeType": "Block", + "src": "7261:62:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 10573, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10564, + "src": "7295:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 10574, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7301:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7305:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7301:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10572, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "7282:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 10576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7282:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10577, + "nodeType": "RevertStatement", + "src": "7275:37:48" + } + ] + } + }, + { + "id": 10580, + "nodeType": "PlaceholderStatement", + "src": "7333:1:48" + } + ] + }, + "documentation": { + "id": 10562, + "nodeType": "StructuredDocumentation", + "src": "7025:144:48", + "text": " @notice Checks if msg.sender is the owner or operator of the owner of a name\n @param node namehash of the name to check" + }, + "id": 10582, + "name": "onlyTokenOwner", + "nameLocation": "7184:14:48", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 10565, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10564, + "mutability": "mutable", + "name": "node", + "nameLocation": "7207:4:48", + "nodeType": "VariableDeclaration", + "scope": 10582, + "src": "7199:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10563, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7199:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "7198:14:48" + }, + "src": "7175:166:48", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 9973 + ], + "body": { + "id": 10621, + "nodeType": "Block", + "src": "7678:217:48", + "statements": [ + { + "assignments": [ + 10593, + 10595, + 10597 + ], + "declarations": [ + { + "constant": false, + "id": 10593, + "mutability": "mutable", + "name": "owner", + "nameLocation": "7697:5:48", + "nodeType": "VariableDeclaration", + "scope": 10621, + "src": "7689:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10592, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7689:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10595, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "7711:5:48", + "nodeType": "VariableDeclaration", + "scope": 10621, + "src": "7704:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10594, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "7704:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10597, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "7725:6:48", + "nodeType": "VariableDeclaration", + "scope": 10621, + "src": "7718:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10596, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "7718:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 10604, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 10601, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10585, + "src": "7751:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7743:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10599, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7743:7:48", + "typeDescriptions": {} + } + }, + "id": 10602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7743:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10598, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "7735:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 10603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7735:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7688:69:48" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10605, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10593, + "src": "7787:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 10606, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10587, + "src": "7796:4:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7787:13:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 10609, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10593, + "src": "7821:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10610, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10587, + "src": "7828:4:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10608, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8980, + "src": "7804:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 10611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7804:29:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7787:46:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 10613, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7786:48:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 10618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7850:38:48", + "subExpression": { + "arguments": [ + { + "id": 10615, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10595, + "src": "7874:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10616, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10597, + "src": "7881:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10614, + "name": "_isETH2LDInGracePeriod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13028, + "src": "7851:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint32_$_t_uint64_$returns$_t_bool_$", + "typeString": "function (uint32,uint64) view returns (bool)" + } + }, + "id": 10617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7851:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7786:102:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 10591, + "id": 10620, + "nodeType": "Return", + "src": "7767:121:48" + } + ] + }, + "documentation": { + "id": 10583, + "nodeType": "StructuredDocumentation", + "src": "7347:225:48", + "text": " @notice Checks if owner or operator of the owner\n @param node namehash of the name to check\n @param addr which address to check permissions for\n @return whether or not is owner or operator" + }, + "functionSelector": "41415eab", + "id": 10622, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "canModifyName", + "nameLocation": "7587:13:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10588, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10585, + "mutability": "mutable", + "name": "node", + "nameLocation": "7618:4:48", + "nodeType": "VariableDeclaration", + "scope": 10622, + "src": "7610:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10584, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7610:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10587, + "mutability": "mutable", + "name": "addr", + "nameLocation": "7640:4:48", + "nodeType": "VariableDeclaration", + "scope": 10622, + "src": "7632:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7632:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7600:50:48" + }, + "returnParameters": { + "id": 10591, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10590, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10622, + "src": "7672:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10589, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7672:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7671:6:48" + }, + "scope": 13029, + "src": "7578:317:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 10670, + "nodeType": "Block", + "src": "8250:287:48", + "statements": [ + { + "assignments": [ + 10633, + 10635, + 10637 + ], + "declarations": [ + { + "constant": false, + "id": 10633, + "mutability": "mutable", + "name": "owner", + "nameLocation": "8269:5:48", + "nodeType": "VariableDeclaration", + "scope": 10670, + "src": "8261:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8261:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10635, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "8283:5:48", + "nodeType": "VariableDeclaration", + "scope": 10670, + "src": "8276:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10634, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "8276:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10637, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "8297:6:48", + "nodeType": "VariableDeclaration", + "scope": 10670, + "src": "8290:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10636, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "8290:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 10644, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 10641, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10625, + "src": "8323:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10640, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8315:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10639, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8315:7:48", + "typeDescriptions": {} + } + }, + "id": 10642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8315:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10638, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "8307:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 10643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8307:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8260:69:48" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10645, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10633, + "src": "8359:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 10646, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10627, + "src": "8368:4:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8359:13:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 10649, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10633, + "src": "8409:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10650, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10627, + "src": "8416:4:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10648, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8980, + "src": "8392:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 10651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8392:29:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8359:62:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 10656, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10625, + "src": "8461:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8453:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10654, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8453:7:48", + "typeDescriptions": {} + } + }, + "id": 10657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8453:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10653, + "name": "getApproved", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10379 + ], + "referencedDeclaration": 10379, + "src": "8441:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 10658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8441:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 10659, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10627, + "src": "8471:4:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8441:34:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8359:116:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 10662, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8358:118:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 10667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "8492:38:48", + "subExpression": { + "arguments": [ + { + "id": 10664, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10635, + "src": "8516:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10665, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10637, + "src": "8523:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10663, + "name": "_isETH2LDInGracePeriod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13028, + "src": "8493:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint32_$_t_uint64_$returns$_t_bool_$", + "typeString": "function (uint32,uint64) view returns (bool)" + } + }, + "id": 10666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8493:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8358:172:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 10631, + "id": 10669, + "nodeType": "Return", + "src": "8339:191:48" + } + ] + }, + "documentation": { + "id": 10623, + "nodeType": "StructuredDocumentation", + "src": "7901:239:48", + "text": " @notice Checks if owner/operator or approved by owner\n @param node namehash of the name to check\n @param addr which address to check permissions for\n @return whether or not is owner/operator or approved" + }, + "functionSelector": "0e4cd725", + "id": 10671, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "canExtendSubnames", + "nameLocation": "8155:17:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10628, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10625, + "mutability": "mutable", + "name": "node", + "nameLocation": "8190:4:48", + "nodeType": "VariableDeclaration", + "scope": 10671, + "src": "8182:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10624, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8182:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10627, + "mutability": "mutable", + "name": "addr", + "nameLocation": "8212:4:48", + "nodeType": "VariableDeclaration", + "scope": 10671, + "src": "8204:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8204:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8172:50:48" + }, + "returnParameters": { + "id": 10631, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10630, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 10671, + "src": "8244:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10629, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8244:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8243:6:48" + }, + "scope": 13029, + "src": "8146:391:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9839 + ], + "body": { + "id": 10771, + "nodeType": "Block", + "src": "9216:874:48", + "statements": [ + { + "assignments": [ + 10686 + ], + "declarations": [ + { + "constant": false, + "id": 10686, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "9234:7:48", + "nodeType": "VariableDeclaration", + "scope": 10771, + "src": "9226:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10685, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9226:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 10696, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 10692, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10674, + "src": "9268:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 10691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9262:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 10690, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9262:5:48", + "typeDescriptions": {} + } + }, + "id": 10693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9262:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 10689, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "9252:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 10694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9252:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10688, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9244:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10687, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9244:7:48", + "typeDescriptions": {} + } + }, + "id": 10695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9244:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9226:50:48" + }, + { + "assignments": [ + 10698 + ], + "declarations": [ + { + "constant": false, + "id": 10698, + "mutability": "mutable", + "name": "registrant", + "nameLocation": "9294:10:48", + "nodeType": "VariableDeclaration", + "scope": 10771, + "src": "9286:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10697, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9286:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 10703, + "initialValue": { + "arguments": [ + { + "id": 10701, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10686, + "src": "9325:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10699, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "9307:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9317:7:48", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 14399, + "src": "9307:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view external returns (address)" + } + }, + "id": 10702, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9307:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9286:47:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10704, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10698, + "src": "9360:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "id": 10705, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9374:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9378:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9374:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9360:24:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 10714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "9400:51:48", + "subExpression": { + "arguments": [ + { + "id": 10710, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10698, + "src": "9428:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 10711, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9440:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9444:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9440:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10708, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "9401:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9411:16:48", + "memberName": "isApprovedForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 14465, + "src": "9401:26:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view external returns (bool)" + } + }, + "id": 10713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9401:50:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9360:91:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10729, + "nodeType": "IfStatement", + "src": "9343:260:48", + "trueBody": { + "id": 10728, + "nodeType": "Block", + "src": "9462:141:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "arguments": [ + { + "id": 10718, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "9523:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 10721, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10686, + "src": "9541:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9533:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 10719, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "9533:7:48", + "typeDescriptions": {} + } + }, + "id": 10722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9533:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10717, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "9513:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 10723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9513:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 10724, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9568:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9572:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9568:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10716, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "9483:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 10726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9483:109:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10727, + "nodeType": "RevertStatement", + "src": "9476:116:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 10733, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10698, + "src": "9697:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 10736, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "9717:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 10735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9709:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10734, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9709:7:48", + "typeDescriptions": {} + } + }, + "id": 10737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9709:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10738, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10686, + "src": "9724:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10730, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "9674:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9684:12:48", + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 14431, + "src": "9674:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256) external" + } + }, + "id": 10739, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9674:58:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10740, + "nodeType": "ExpressionStatement", + "src": "9674:58:48" + }, + { + "expression": { + "arguments": [ + { + "id": 10744, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10686, + "src": "9834:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 10747, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "9851:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 10746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9843:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10745, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9843:7:48", + "typeDescriptions": {} + } + }, + "id": 10748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9843:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10741, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "9816:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9826:7:48", + "memberName": "reclaim", + "nodeType": "MemberAccess", + "referencedDeclaration": 4429, + "src": "9816:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (uint256,address) external" + } + }, + "id": 10749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9816:41:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10750, + "nodeType": "ExpressionStatement", + "src": "9816:41:48" + }, + { + "expression": { + "id": 10761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10751, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10683, + "src": "9868:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 10760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 10756, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10686, + "src": "9906:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10754, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "9884:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9894:11:48", + "memberName": "nameExpires", + "nodeType": "MemberAccess", + "referencedDeclaration": 4393, + "src": "9884:21:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) view external returns (uint256)" + } + }, + "id": 10757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9884:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10753, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9877:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 10752, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "9877:6:48", + "typeDescriptions": {} + } + }, + "id": 10758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9877:38:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 10759, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "9918:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "9877:53:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "9868:62:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 10762, + "nodeType": "ExpressionStatement", + "src": "9868:62:48" + }, + { + "expression": { + "arguments": [ + { + "id": 10764, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10674, + "src": "9966:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 10765, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10676, + "src": "9985:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10766, + "name": "ownerControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10678, + "src": "10011:20:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 10767, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10683, + "src": "10045:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 10768, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10680, + "src": "10065:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10763, + "name": "_wrapETH2LD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12822, + "src": "9941:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$_t_address_$returns$__$", + "typeString": "function (string memory,address,uint32,uint64,address)" + } + }, + "id": 10769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9941:142:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10770, + "nodeType": "ExpressionStatement", + "src": "9941:142:48" + } + ] + }, + "documentation": { + "id": 10672, + "nodeType": "StructuredDocumentation", + "src": "8543:486:48", + "text": " @notice Wraps a .eth domain, creating a new token and sending the original ERC721 token to this contract\n @dev Can be called by the owner of the name on the .eth registrar or an authorised caller on the registrar\n @param label Label as a string of the .eth domain to wrap\n @param wrappedOwner Owner of the name in this contract\n @param ownerControlledFuses Initial owner-controlled fuses to set\n @param resolver Resolver contract address" + }, + "functionSelector": "8cf8b41e", + "id": 10772, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "wrapETH2LD", + "nameLocation": "9044:10:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10681, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10674, + "mutability": "mutable", + "name": "label", + "nameLocation": "9080:5:48", + "nodeType": "VariableDeclaration", + "scope": 10772, + "src": "9064:21:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10673, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9064:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10676, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "9103:12:48", + "nodeType": "VariableDeclaration", + "scope": 10772, + "src": "9095:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10675, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9095:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10678, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "9132:20:48", + "nodeType": "VariableDeclaration", + "scope": 10772, + "src": "9125:27:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 10677, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "9125:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10680, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "9170:8:48", + "nodeType": "VariableDeclaration", + "scope": 10772, + "src": "9162:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10679, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9162:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9054:130:48" + }, + "returnParameters": { + "id": 10684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10683, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "9208:6:48", + "nodeType": "VariableDeclaration", + "scope": 10772, + "src": "9201:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10682, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "9201:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "9200:15:48" + }, + "scope": 13029, + "src": "9035:1055:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9854 + ], + "body": { + "id": 10827, + "nodeType": "Block", + "src": "10955:331:48", + "statements": [ + { + "assignments": [ + 10791 + ], + "declarations": [ + { + "constant": false, + "id": 10791, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "10973:7:48", + "nodeType": "VariableDeclaration", + "scope": 10827, + "src": "10965:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10965:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 10801, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 10797, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10775, + "src": "11007:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 10796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11001:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 10795, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11001:5:48", + "typeDescriptions": {} + } + }, + "id": 10798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11001:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 10794, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "10991:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 10799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10991:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10983:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10792, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10983:7:48", + "typeDescriptions": {} + } + }, + "id": 10800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10983:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10965:50:48" + }, + { + "expression": { + "id": 10812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 10802, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10788, + "src": "11025:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 10805, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10791, + "src": "11062:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 10808, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "11079:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 10807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11071:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10806, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11071:7:48", + "typeDescriptions": {} + } + }, + "id": 10809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11071:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10810, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10779, + "src": "11086:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10803, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "11043:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11053:8:48", + "memberName": "register", + "nodeType": "MemberAccess", + "referencedDeclaration": 4412, + "src": "11043:18:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,address,uint256) external returns (uint256)" + } + }, + "id": 10811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11043:52:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11025:70:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 10813, + "nodeType": "ExpressionStatement", + "src": "11025:70:48" + }, + { + "expression": { + "arguments": [ + { + "id": 10815, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10775, + "src": "11130:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 10816, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10777, + "src": "11149:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10817, + "name": "ownerControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10783, + "src": "11175:20:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 10823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 10820, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10788, + "src": "11216:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11209:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 10818, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "11209:6:48", + "typeDescriptions": {} + } + }, + "id": 10821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11209:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 10822, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "11235:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "11209:38:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 10824, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10781, + "src": "11261:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10814, + "name": "_wrapETH2LD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12822, + "src": "11105:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$_t_address_$returns$__$", + "typeString": "function (string memory,address,uint32,uint64,address)" + } + }, + "id": 10825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11105:174:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10826, + "nodeType": "ExpressionStatement", + "src": "11105:174:48" + } + ] + }, + "documentation": { + "id": 10773, + "nodeType": "StructuredDocumentation", + "src": "10096:608:48", + "text": " @dev Registers a new .eth second-level domain and wraps it.\n Only callable by authorised controllers.\n @param label The label to register (Eg, 'foo' for 'foo.eth').\n @param wrappedOwner The owner of the wrapped name.\n @param duration The duration, in seconds, to register the name for.\n @param resolver The resolver address to set on the ENS registry (optional).\n @param ownerControlledFuses Initial owner-controlled fuses to set\n @return registrarExpiry The expiry date of the new name on the .eth registrar, in seconds since the Unix epoch." + }, + "functionSelector": "a4014982", + "id": 10828, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 10786, + "kind": "modifierInvocation", + "modifierName": { + "id": 10785, + "name": "onlyController", + "nameLocations": [ + "10906:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8686, + "src": "10906:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "10906:14:48" + } + ], + "name": "registerAndWrapETH2LD", + "nameLocation": "10719:21:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10784, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10775, + "mutability": "mutable", + "name": "label", + "nameLocation": "10766:5:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10750:21:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10774, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10750:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10777, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "10789:12:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10781:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10776, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10781:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10779, + "mutability": "mutable", + "name": "duration", + "nameLocation": "10819:8:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10811:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10778, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10811:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10781, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "10845:8:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10837:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10780, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10837:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10783, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "10870:20:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10863:27:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 10782, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "10863:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "10740:156:48" + }, + "returnParameters": { + "id": 10789, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10788, + "mutability": "mutable", + "name": "registrarExpiry", + "nameLocation": "10938:15:48", + "nodeType": "VariableDeclaration", + "scope": 10828, + "src": "10930:23:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10787, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10930:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10929:25:48" + }, + "scope": 13029, + "src": "10710:576:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 9863 + ], + "body": { + "id": 10922, + "nodeType": "Block", + "src": "11806:885:48", + "statements": [ + { + "assignments": [ + 10841 + ], + "declarations": [ + { + "constant": false, + "id": 10841, + "mutability": "mutable", + "name": "node", + "nameLocation": "11824:4:48", + "nodeType": "VariableDeclaration", + "scope": 10922, + "src": "11816:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10840, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "11816:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 10849, + "initialValue": { + "arguments": [ + { + "id": 10843, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "11841:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 10846, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10831, + "src": "11859:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11851:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 10844, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "11851:7:48", + "typeDescriptions": {} + } + }, + "id": 10847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11851:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10842, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "11831:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 10848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11831:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11816:52:48" + }, + { + "assignments": [ + 10851 + ], + "declarations": [ + { + "constant": false, + "id": 10851, + "mutability": "mutable", + "name": "registrarExpiry", + "nameLocation": "11887:15:48", + "nodeType": "VariableDeclaration", + "scope": 10922, + "src": "11879:23:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10850, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11879:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 10857, + "initialValue": { + "arguments": [ + { + "id": 10854, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10831, + "src": "11921:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10855, + "name": "duration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10833, + "src": "11930:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10852, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "11905:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11915:5:48", + "memberName": "renew", + "nodeType": "MemberAccess", + "referencedDeclaration": 4421, + "src": "11905:15:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) external returns (uint256)" + } + }, + "id": 10856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11905:34:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11879:60:48" + }, + { + "clauses": [ + { + "block": { + "id": 10885, + "nodeType": "Block", + "src": "12079:198:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10865, + "name": "registrarOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10863, + "src": "12114:14:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 10868, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "12140:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 10867, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12132:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10866, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12132:7:48", + "typeDescriptions": {} + } + }, + "id": 10869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12132:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12114:31:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 10873, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10841, + "src": "12175:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 10871, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "12165:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12169:5:48", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "12165:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 10874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12165:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 10877, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "12192:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 10876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12184:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10875, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12184:7:48", + "typeDescriptions": {} + } + }, + "id": 10878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12184:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12165:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "12114:83:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10884, + "nodeType": "IfStatement", + "src": "12093:174:48", + "trueBody": { + "id": 10883, + "nodeType": "Block", + "src": "12212:55:48", + "statements": [ + { + "expression": { + "id": 10881, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10851, + "src": "12237:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 10839, + "id": 10882, + "nodeType": "Return", + "src": "12230:22:48" + } + ] + } + } + ] + }, + "errorName": "", + "id": 10886, + "nodeType": "TryCatchClause", + "parameters": { + "id": 10864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10863, + "mutability": "mutable", + "name": "registrarOwner", + "nameLocation": "12063:14:48", + "nodeType": "VariableDeclaration", + "scope": 10886, + "src": "12055:22:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10862, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12055:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12054:24:48" + }, + "src": "12046:231:48" + }, + { + "block": { + "id": 10889, + "nodeType": "Block", + "src": "12284:47:48", + "statements": [ + { + "expression": { + "id": 10887, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10851, + "src": "12305:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 10839, + "id": 10888, + "nodeType": "Return", + "src": "12298:22:48" + } + ] + }, + "errorName": "", + "id": 10890, + "nodeType": "TryCatchClause", + "src": "12278:53:48" + } + ], + "externalCall": { + "arguments": [ + { + "id": 10860, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10831, + "src": "12037:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10858, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "12019:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 10859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12029:7:48", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 14399, + "src": "12019:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view external returns (address)" + } + }, + "id": 10861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12019:26:48", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 10891, + "nodeType": "TryStatement", + "src": "12015:316:48" + }, + { + "assignments": [ + 10893 + ], + "declarations": [ + { + "constant": false, + "id": 10893, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "12381:6:48", + "nodeType": "VariableDeclaration", + "scope": 10922, + "src": "12374:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 10892, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "12374:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 10900, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 10899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 10896, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10851, + "src": "12397:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 10895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12390:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 10894, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "12390:6:48", + "typeDescriptions": {} + } + }, + "id": 10897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12390:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 10898, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "12416:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "12390:38:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12374:54:48" + }, + { + "assignments": [ + 10902, + 10904, + null + ], + "declarations": [ + { + "constant": false, + "id": 10902, + "mutability": "mutable", + "name": "owner", + "nameLocation": "12552:5:48", + "nodeType": "VariableDeclaration", + "scope": 10922, + "src": "12544:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12544:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10904, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "12566:5:48", + "nodeType": "VariableDeclaration", + "scope": 10922, + "src": "12559:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 10903, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "12559:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 10912, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 10909, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10841, + "src": "12599:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12591:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 10907, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12591:7:48", + "typeDescriptions": {} + } + }, + "id": 10910, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12591:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10905, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "12577:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 10906, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12583:7:48", + "memberName": "getData", + "nodeType": "MemberAccess", + "referencedDeclaration": 9027, + "src": "12577:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 10911, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12577:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12543:62:48" + }, + { + "expression": { + "arguments": [ + { + "id": 10914, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10841, + "src": "12624:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 10915, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10902, + "src": "12630:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10916, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10904, + "src": "12637:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 10917, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10893, + "src": "12644:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 10913, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12924, + 9245 + ], + "referencedDeclaration": 12924, + "src": "12615:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64)" + } + }, + "id": 10918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12615:36:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10919, + "nodeType": "ExpressionStatement", + "src": "12615:36:48" + }, + { + "expression": { + "id": 10920, + "name": "registrarExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10851, + "src": "12669:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 10839, + "id": 10921, + "nodeType": "Return", + "src": "12662:22:48" + } + ] + }, + "documentation": { + "id": 10829, + "nodeType": "StructuredDocumentation", + "src": "11292:386:48", + "text": " @notice Renews a .eth second-level domain.\n @dev Only callable by authorised controllers.\n @param tokenId The hash of the label to register (eg, `keccak256('foo')`, for 'foo.eth').\n @param duration The number of seconds to renew the name for.\n @return expires The expiry date of the name on the .eth registrar, in seconds since the Unix epoch." + }, + "functionSelector": "c475abff", + "id": 10923, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 10836, + "kind": "modifierInvocation", + "modifierName": { + "id": 10835, + "name": "onlyController", + "nameLocations": [ + "11765:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8686, + "src": "11765:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "11765:14:48" + } + ], + "name": "renew", + "nameLocation": "11693:5:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10834, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10831, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "11716:7:48", + "nodeType": "VariableDeclaration", + "scope": 10923, + "src": "11708:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11708:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10833, + "mutability": "mutable", + "name": "duration", + "nameLocation": "11741:8:48", + "nodeType": "VariableDeclaration", + "scope": 10923, + "src": "11733:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10832, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11733:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11698:57:48" + }, + "returnParameters": { + "id": 10839, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10838, + "mutability": "mutable", + "name": "expires", + "nameLocation": "11797:7:48", + "nodeType": "VariableDeclaration", + "scope": 10923, + "src": "11789:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10837, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11789:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11788:17:48" + }, + "scope": 13029, + "src": "11684:1007:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 9826 + ], + "body": { + "id": 11030, + "nodeType": "Block", + "src": "13178:669:48", + "statements": [ + { + "assignments": [ + 10934, + 10936 + ], + "declarations": [ + { + "constant": false, + "id": 10934, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "13197:9:48", + "nodeType": "VariableDeclaration", + "scope": 11030, + "src": "13189:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10933, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "13189:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10936, + "mutability": "mutable", + "name": "offset", + "nameLocation": "13216:6:48", + "nodeType": "VariableDeclaration", + "scope": 11030, + "src": "13208:14:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10935, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13208:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 10941, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 10939, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13241:1:48", + "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" + } + ], + "expression": { + "id": 10937, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10926, + "src": "13226:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 10938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13231:9:48", + "memberName": "readLabel", + "nodeType": "MemberAccess", + "referencedDeclaration": 7821, + "src": "13226:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_uint256_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32,uint256)" + } + }, + "id": 10940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13226:17:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_uint256_$", + "typeString": "tuple(bytes32,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13188:55:48" + }, + { + "assignments": [ + 10943 + ], + "declarations": [ + { + "constant": false, + "id": 10943, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "13261:10:48", + "nodeType": "VariableDeclaration", + "scope": 11030, + "src": "13253:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10942, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "13253:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 10948, + "initialValue": { + "arguments": [ + { + "id": 10946, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10936, + "src": "13288:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10944, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10926, + "src": "13274:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 10945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13279:8:48", + "memberName": "namehash", + "nodeType": "MemberAccess", + "referencedDeclaration": 7757, + "src": "13274:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 10947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13274:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13253:42:48" + }, + { + "assignments": [ + 10950 + ], + "declarations": [ + { + "constant": false, + "id": 10950, + "mutability": "mutable", + "name": "node", + "nameLocation": "13313:4:48", + "nodeType": "VariableDeclaration", + "scope": 11030, + "src": "13305:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 10949, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "13305:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 10955, + "initialValue": { + "arguments": [ + { + "id": 10952, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10943, + "src": "13330:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 10953, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10934, + "src": "13342:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 10951, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "13320:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 10954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13320:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13305:47:48" + }, + { + "expression": { + "id": 10960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 10956, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "13363:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 10958, + "indexExpression": { + "id": 10957, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13369:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13363:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 10959, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10926, + "src": "13377:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "src": "13363:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 10961, + "nodeType": "ExpressionStatement", + "src": "13363:18:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 10964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10962, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10943, + "src": "13396:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 10963, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "13410:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "13396:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10969, + "nodeType": "IfStatement", + "src": "13392:80:48", + "trueBody": { + "id": 10968, + "nodeType": "Block", + "src": "13420:52:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 10965, + "name": "IncompatibleParent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10135, + "src": "13441:18:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 10966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13441:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10967, + "nodeType": "RevertStatement", + "src": "13434:27:48" + } + ] + } + }, + { + "assignments": [ + 10971 + ], + "declarations": [ + { + "constant": false, + "id": 10971, + "mutability": "mutable", + "name": "owner", + "nameLocation": "13490:5:48", + "nodeType": "VariableDeclaration", + "scope": 11030, + "src": "13482:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10970, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13482:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 10976, + "initialValue": { + "arguments": [ + { + "id": 10974, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13508:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 10972, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "13498:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13502:5:48", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "13498:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 10975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13498:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13482:31:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 10988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10977, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10971, + "src": "13528:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "id": 10978, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "13537:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13541:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "13537:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13528:19:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 10987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "13551:40:48", + "subExpression": { + "arguments": [ + { + "id": 10983, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10971, + "src": "13573:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 10984, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "13580:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13584:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "13580:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10981, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "13552:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 10982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13556:16:48", + "memberName": "isApprovedForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 4566, + "src": "13552:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view external returns (bool)" + } + }, + "id": 10986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13552:39:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "13528:63:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 10996, + "nodeType": "IfStatement", + "src": "13524:131:48", + "trueBody": { + "id": 10995, + "nodeType": "Block", + "src": "13593:62:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 10990, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13627:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 10991, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "13633:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 10992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13637:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "13633:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 10989, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "13614:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 10993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13614:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10994, + "nodeType": "RevertStatement", + "src": "13607:37:48" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 10997, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10930, + "src": "13669:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13689:1:48", + "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": 10999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13681:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 10998, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13681:7:48", + "typeDescriptions": {} + } + }, + "id": 11001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13681:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13669:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11011, + "nodeType": "IfStatement", + "src": "13665:84:48", + "trueBody": { + "id": 11010, + "nodeType": "Block", + "src": "13693:56:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11006, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13723:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11007, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10930, + "src": "13729:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11003, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "13707:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13711:11:48", + "memberName": "setResolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4508, + "src": "13707:15:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 11008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13707:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11009, + "nodeType": "ExpressionStatement", + "src": "13707:31:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 11015, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13772:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 11018, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "13786:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13778:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11016, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13778:7:48", + "typeDescriptions": {} + } + }, + "id": 11019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13778:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11012, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "13759:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13763:8:48", + "memberName": "setOwner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4515, + "src": "13759:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 11020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13759:33:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11021, + "nodeType": "ExpressionStatement", + "src": "13759:33:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11023, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10950, + "src": "13809:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11024, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10926, + "src": "13815:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 11025, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10928, + "src": "13821:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "30", + "id": 11026, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13835:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "hexValue": "30", + "id": 11027, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13838:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 11022, + "name": "_wrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12487, + "src": "13803:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,address,uint32,uint64)" + } + }, + "id": 11028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13803:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11029, + "nodeType": "ExpressionStatement", + "src": "13803:37:48" + } + ] + }, + "documentation": { + "id": 10924, + "nodeType": "StructuredDocumentation", + "src": "12697:363:48", + "text": " @notice Wraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\n @dev Can be called by the owner in the registry or an authorised caller in the registry\n @param name The name to wrap, in DNS format\n @param wrappedOwner Owner of the name in this contract\n @param resolver Resolver contract" + }, + "functionSelector": "eb8ae530", + "id": 11031, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "wrap", + "nameLocation": "13075:4:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10926, + "mutability": "mutable", + "name": "name", + "nameLocation": "13104:4:48", + "nodeType": "VariableDeclaration", + "scope": 11031, + "src": "13089:19:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 10925, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13089:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10928, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "13126:12:48", + "nodeType": "VariableDeclaration", + "scope": 11031, + "src": "13118:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10927, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13118:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10930, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "13156:8:48", + "nodeType": "VariableDeclaration", + "scope": 11031, + "src": "13148:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10929, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13148:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13079:91:48" + }, + "returnParameters": { + "id": 10932, + "nodeType": "ParameterList", + "parameters": [], + "src": "13178:0:48" + }, + "scope": 13029, + "src": "13066:781:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9881 + ], + "body": { + "id": 11081, + "nodeType": "Block", + "src": "14386:303:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11047, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11036, + "src": "14400:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 11050, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "14422:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14414:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11048, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14414:7:48", + "typeDescriptions": {} + } + }, + "id": 11051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14414:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "14400:27:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11058, + "nodeType": "IfStatement", + "src": "14396:97:48", + "trueBody": { + "id": 11057, + "nodeType": "Block", + "src": "14429:64:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11054, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11036, + "src": "14471:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11053, + "name": "IncorrectTargetOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10153, + "src": "14450:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_address_$returns$__$", + "typeString": "function (address) pure" + } + }, + "id": 11055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14450:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11056, + "nodeType": "RevertStatement", + "src": "14443:39:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 11061, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "14520:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11062, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11034, + "src": "14530:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11060, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "14510:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14510:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11064, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11038, + "src": "14542:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11059, + "name": "_unwrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12859, + "src": "14502:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 11065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14502:51:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11066, + "nodeType": "ExpressionStatement", + "src": "14502:51:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 11072, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "14611:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14603:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11070, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14603:7:48", + "typeDescriptions": {} + } + }, + "id": 11073, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14603:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11074, + "name": "registrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11036, + "src": "14630:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 11077, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11034, + "src": "14662:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14654:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11075, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14654:7:48", + "typeDescriptions": {} + } + }, + "id": 11078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14654:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11067, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "14563:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 11069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14573:16:48", + "memberName": "safeTransferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 14421, + "src": "14563:26:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256) external" + } + }, + "id": 11079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14563:119:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11080, + "nodeType": "ExpressionStatement", + "src": "14563:119:48" + } + ] + }, + "documentation": { + "id": 11032, + "nodeType": "StructuredDocumentation", + "src": "13853:362:48", + "text": " @notice Unwraps a .eth domain. e.g. vitalik.eth\n @dev Can be called by the owner in the wrapper or an authorised caller in the wrapper\n @param labelhash Labelhash of the .eth domain\n @param registrant Sets the owner in the .eth registrar to this address\n @param controller Sets the owner in the registry to this address" + }, + "functionSelector": "8b4dfa75", + "id": 11082, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 11042, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "14364:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11043, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11034, + "src": "14374:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11041, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "14354:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14354:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11045, + "kind": "modifierInvocation", + "modifierName": { + "id": 11040, + "name": "onlyTokenOwner", + "nameLocations": [ + "14339:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "14339:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "14339:46:48" + } + ], + "name": "unwrapETH2LD", + "nameLocation": "14230:12:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11034, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "14260:9:48", + "nodeType": "VariableDeclaration", + "scope": 11082, + "src": "14252:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11033, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14252:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11036, + "mutability": "mutable", + "name": "registrant", + "nameLocation": "14287:10:48", + "nodeType": "VariableDeclaration", + "scope": 11082, + "src": "14279:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14279:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11038, + "mutability": "mutable", + "name": "controller", + "nameLocation": "14315:10:48", + "nodeType": "VariableDeclaration", + "scope": 11082, + "src": "14307:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11037, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14307:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14242:89:48" + }, + "returnParameters": { + "id": 11046, + "nodeType": "ParameterList", + "parameters": [], + "src": "14386:0:48" + }, + "scope": 13029, + "src": "14221:468:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9872 + ], + "body": { + "id": 11133, + "nodeType": "Block", + "src": "15332:295:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 11100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11098, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "15346:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 11099, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "15360:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "15346:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11105, + "nodeType": "IfStatement", + "src": "15342:80:48", + "trueBody": { + "id": 11104, + "nodeType": "Block", + "src": "15370:52:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 11101, + "name": "IncompatibleParent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10135, + "src": "15391:18:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 11102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15391:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11103, + "nodeType": "RevertStatement", + "src": "15384:27:48" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11106, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11089, + "src": "15435:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307830", + "id": 11109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15457:3:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 11108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15449:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15449:7:48", + "typeDescriptions": {} + } + }, + "id": 11110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15449:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "15435:26:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11112, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11089, + "src": "15465:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 11115, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "15487:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15479:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15479:7:48", + "typeDescriptions": {} + } + }, + "id": 11116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15479:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "15465:27:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "15435:57:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11124, + "nodeType": "IfStatement", + "src": "15431:127:48", + "trueBody": { + "id": 11123, + "nodeType": "Block", + "src": "15494:64:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11120, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11089, + "src": "15536:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11119, + "name": "IncorrectTargetOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10153, + "src": "15515:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_address_$returns$__$", + "typeString": "function (address) pure" + } + }, + "id": 11121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15515:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11122, + "nodeType": "RevertStatement", + "src": "15508:39:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 11127, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "15585:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11128, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11087, + "src": "15597:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11126, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "15575:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15575:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11130, + "name": "controller", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11089, + "src": "15609:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11125, + "name": "_unwrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12859, + "src": "15567:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 11131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15567:53:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11132, + "nodeType": "ExpressionStatement", + "src": "15567:53:48" + } + ] + }, + "documentation": { + "id": 11083, + "nodeType": "StructuredDocumentation", + "src": "14695:470:48", + "text": " @notice Unwraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\n @dev Can be called by the owner in the wrapper or an authorised caller in the wrapper\n @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n @param controller Sets the owner in the registry to this address" + }, + "functionSelector": "d8c9921a", + "id": 11134, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 11093, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "15308:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11094, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11087, + "src": "15320:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11092, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "15298:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15298:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11096, + "kind": "modifierInvocation", + "modifierName": { + "id": 11091, + "name": "onlyTokenOwner", + "nameLocations": [ + "15283:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "15283:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "15283:48:48" + } + ], + "name": "unwrap", + "nameLocation": "15180:6:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11090, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11085, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "15204:10:48", + "nodeType": "VariableDeclaration", + "scope": 11134, + "src": "15196:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11084, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15196:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11087, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "15232:9:48", + "nodeType": "VariableDeclaration", + "scope": 11134, + "src": "15224:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11086, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15224:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11089, + "mutability": "mutable", + "name": "controller", + "nameLocation": "15259:10:48", + "nodeType": "VariableDeclaration", + "scope": 11134, + "src": "15251:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11088, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15251:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15186:89:48" + }, + "returnParameters": { + "id": 11097, + "nodeType": "ParameterList", + "parameters": [], + "src": "15332:0:48" + }, + "scope": 13029, + "src": "15171:456:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9897 + ], + "body": { + "id": 11176, + "nodeType": "Block", + "src": "16023:262:48", + "statements": [ + { + "assignments": [ + 11152, + 11154, + 11156 + ], + "declarations": [ + { + "constant": false, + "id": 11152, + "mutability": "mutable", + "name": "owner", + "nameLocation": "16087:5:48", + "nodeType": "VariableDeclaration", + "scope": 11176, + "src": "16079:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16079:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11154, + "mutability": "mutable", + "name": "oldFuses", + "nameLocation": "16101:8:48", + "nodeType": "VariableDeclaration", + "scope": 11176, + "src": "16094:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11153, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "16094:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11156, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "16118:6:48", + "nodeType": "VariableDeclaration", + "scope": 11176, + "src": "16111:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11155, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "16111:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11163, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11160, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11137, + "src": "16157:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16149:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11158, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16149:7:48", + "typeDescriptions": {} + } + }, + "id": 11161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16149:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11157, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "16128:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16128:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16078:94:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11165, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11137, + "src": "16192:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11166, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11152, + "src": "16198:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11167, + "name": "ownerControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11139, + "src": "16205:20:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 11168, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11154, + "src": "16228:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "16205:31:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11170, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11156, + "src": "16238:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11171, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11156, + "src": "16246:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11164, + "name": "_setFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12895, + "src": "16182:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64,uint64)" + } + }, + "id": 11172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16182:71:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11173, + "nodeType": "ExpressionStatement", + "src": "16182:71:48" + }, + { + "expression": { + "id": 11174, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11154, + "src": "16270:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "functionReturnParameters": 11150, + "id": 11175, + "nodeType": "Return", + "src": "16263:15:48" + } + ] + }, + "documentation": { + "id": 11135, + "nodeType": "StructuredDocumentation", + "src": "15633:178:48", + "text": " @notice Sets fuses of a name\n @param node Namehash of the name\n @param ownerControlledFuses Owner-controlled fuses to burn\n @return Old fuses" + }, + "functionSelector": "402906fc", + "id": 11177, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11142, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11137, + "src": "15938:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11143, + "kind": "modifierInvocation", + "modifierName": { + "id": 11141, + "name": "onlyTokenOwner", + "nameLocations": [ + "15923:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "15923:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "15923:20:48" + }, + { + "arguments": [ + { + "id": 11145, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11137, + "src": "15969:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11146, + "name": "CANNOT_BURN_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9703, + "src": "15975:17:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 11147, + "kind": "modifierInvocation", + "modifierName": { + "id": 11144, + "name": "operationAllowed", + "nameLocations": [ + "15952:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 11902, + "src": "15952:16:48" + }, + "nodeType": "ModifierInvocation", + "src": "15952:41:48" + } + ], + "name": "setFuses", + "nameLocation": "15826:8:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11140, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11137, + "mutability": "mutable", + "name": "node", + "nameLocation": "15852:4:48", + "nodeType": "VariableDeclaration", + "scope": 11177, + "src": "15844:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11136, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15844:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11139, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "15873:20:48", + "nodeType": "VariableDeclaration", + "scope": 11177, + "src": "15866:27:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 11138, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "15866:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "15834:65:48" + }, + "returnParameters": { + "id": 11150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11149, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 11177, + "src": "16011:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11148, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "16011:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "16010:8:48" + }, + "scope": 13029, + "src": "15817:468:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9964 + ], + "body": { + "id": 11288, + "nodeType": "Block", + "src": "16773:1119:48", + "statements": [ + { + "assignments": [ + 11190 + ], + "declarations": [ + { + "constant": false, + "id": 11190, + "mutability": "mutable", + "name": "node", + "nameLocation": "16791:4:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "16783:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11189, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16783:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 11195, + "initialValue": { + "arguments": [ + { + "id": 11192, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11180, + "src": "16808:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11193, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11182, + "src": "16820:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11191, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "16798:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16798:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16783:47:48" + }, + { + "condition": { + "id": 11199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "16845:17:48", + "subExpression": { + "arguments": [ + { + "id": 11197, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "16857:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11196, + "name": "_isWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13005, + "src": "16846:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 11198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16846:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11204, + "nodeType": "IfStatement", + "src": "16841:73:48", + "trueBody": { + "id": 11203, + "nodeType": "Block", + "src": "16864:50:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 11200, + "name": "NameIsNotWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10161, + "src": "16885:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 11201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16885:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11202, + "nodeType": "RevertStatement", + "src": "16878:25:48" + } + ] + } + }, + { + "assignments": [ + 11206 + ], + "declarations": [ + { + "constant": false, + "id": 11206, + "mutability": "mutable", + "name": "canExtendSubname", + "nameLocation": "16985:16:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "16980:21:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11205, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16980:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 11212, + "initialValue": { + "arguments": [ + { + "id": 11208, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11180, + "src": "17022:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11209, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "17034:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "17038:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17034:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11207, + "name": "canExtendSubnames", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10671, + "src": "17004:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 11211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17004:41:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16980:65:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11221, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "17131:17:48", + "subExpression": { + "id": 11213, + "name": "canExtendSubname", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11206, + "src": "17132:16:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 11220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "17152:32:48", + "subExpression": { + "arguments": [ + { + "id": 11216, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17167:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11217, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "17173:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "17177:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17173:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11215, + "name": "canModifyName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10622, + "src": "17153:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 11219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17153:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17131:53:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11229, + "nodeType": "IfStatement", + "src": "17127:121:48", + "trueBody": { + "id": 11228, + "nodeType": "Block", + "src": "17186:62:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11223, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17220:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11224, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "17226:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "17230:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17226:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11222, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "17207:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 11226, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17207:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11227, + "nodeType": "RevertStatement", + "src": "17200:37:48" + } + ] + } + }, + { + "assignments": [ + 11231, + 11233, + 11235 + ], + "declarations": [ + { + "constant": false, + "id": 11231, + "mutability": "mutable", + "name": "owner", + "nameLocation": "17267:5:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "17259:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11230, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17259:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11233, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "17281:5:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "17274:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11232, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "17274:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11235, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "17295:9:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "17288:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11234, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "17288:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11242, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11239, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17337:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17329:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11237, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17329:7:48", + "typeDescriptions": {} + } + }, + "id": 11240, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17329:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11236, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "17308:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17308:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17258:94:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "17477:17:48", + "subExpression": { + "id": 11243, + "name": "canExtendSubname", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11206, + "src": "17478:16:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11245, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11233, + "src": "17498:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11246, + "name": "CAN_EXTEND_EXPIRY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9733, + "src": "17506:17:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "17498:25:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 11248, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17527:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "17498:30:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17477:51:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11256, + "nodeType": "IfStatement", + "src": "17473:114:48", + "trueBody": { + "id": 11255, + "nodeType": "Block", + "src": "17530:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11252, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17571:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11251, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "17551:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 11253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17551:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11254, + "nodeType": "RevertStatement", + "src": "17544:32:48" + } + ] + } + }, + { + "assignments": [ + null, + null, + 11258 + ], + "declarations": [ + null, + null, + { + "constant": false, + "id": 11258, + "mutability": "mutable", + "name": "maxExpiry", + "nameLocation": "17666:9:48", + "nodeType": "VariableDeclaration", + "scope": 11288, + "src": "17659:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11257, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "17659:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11265, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11262, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11180, + "src": "17695:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11261, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17687:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11260, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17687:7:48", + "typeDescriptions": {} + } + }, + "id": 11263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17687:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11259, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "17679:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17679:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17654:53:48" + }, + { + "expression": { + "id": 11272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11266, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11184, + "src": "17717:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11268, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11184, + "src": "17743:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11269, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11235, + "src": "17751:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11270, + "name": "maxExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11258, + "src": "17762:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11267, + "name": "_normaliseExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12752, + "src": "17726:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_uint64_$_t_uint64_$returns$_t_uint64_$", + "typeString": "function (uint64,uint64,uint64) pure returns (uint64)" + } + }, + "id": 11271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17726:46:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "17717:55:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 11273, + "nodeType": "ExpressionStatement", + "src": "17717:55:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11275, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17792:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11276, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11231, + "src": "17798:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11277, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11233, + "src": "17805:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11278, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11184, + "src": "17812:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11274, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12924, + 9245 + ], + "referencedDeclaration": 12924, + "src": "17783:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64)" + } + }, + "id": 11279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17783:36:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11280, + "nodeType": "ExpressionStatement", + "src": "17783:36:48" + }, + { + "eventCall": { + "arguments": [ + { + "id": 11282, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11190, + "src": "17849:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11283, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11184, + "src": "17855:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11281, + "name": "ExpiryExtended", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9774, + "src": "17834:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64)" + } + }, + "id": 11284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17834:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11285, + "nodeType": "EmitStatement", + "src": "17829:33:48" + }, + { + "expression": { + "id": 11286, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11184, + "src": "17879:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "functionReturnParameters": 11188, + "id": 11287, + "nodeType": "Return", + "src": "17872:13:48" + } + ] + }, + "documentation": { + "id": 11178, + "nodeType": "StructuredDocumentation", + "src": "16291:346:48", + "text": " @notice Extends expiry for a name\n @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n @param expiry When the name will expire in seconds since the Unix epoch\n @return New expiry" + }, + "functionSelector": "6e5d6ad2", + "id": 11289, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "extendExpiry", + "nameLocation": "16652:12:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11180, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "16682:10:48", + "nodeType": "VariableDeclaration", + "scope": 11289, + "src": "16674:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11179, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16674:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11182, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "16710:9:48", + "nodeType": "VariableDeclaration", + "scope": 11289, + "src": "16702:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11181, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16702:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11184, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "16736:6:48", + "nodeType": "VariableDeclaration", + "scope": 11289, + "src": "16729:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11183, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "16729:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "16664:84:48" + }, + "returnParameters": { + "id": 11188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11187, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 11289, + "src": "16765:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11186, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "16765:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "16764:8:48" + }, + "scope": 13029, + "src": "16643:1249:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9888 + ], + "body": { + "id": 11372, + "nodeType": "Block", + "src": "18292:635:48", + "statements": [ + { + "assignments": [ + 11298 + ], + "declarations": [ + { + "constant": false, + "id": 11298, + "mutability": "mutable", + "name": "node", + "nameLocation": "18310:4:48", + "nodeType": "VariableDeclaration", + "scope": 11372, + "src": "18302:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11297, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "18302:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 11303, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 11301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18331:1:48", + "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" + } + ], + "expression": { + "id": 11299, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11292, + "src": "18317:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 11300, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "18322:8:48", + "memberName": "namehash", + "nodeType": "MemberAccess", + "referencedDeclaration": 7757, + "src": "18317:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 11302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18317:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "18302:31:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 11306, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "18356:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + ], + "id": 11305, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18348:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11304, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18348:7:48", + "typeDescriptions": {} + } + }, + "id": 11307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18348:24:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18384:1:48", + "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": 11309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18376:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11308, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18376:7:48", + "typeDescriptions": {} + } + }, + "id": 11311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18376:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "18348:38:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11317, + "nodeType": "IfStatement", + "src": "18344:91:48", + "trueBody": { + "id": 11316, + "nodeType": "Block", + "src": "18388:47:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 11313, + "name": "CannotUpgrade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10155, + "src": "18409:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 11314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18409:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11315, + "nodeType": "RevertStatement", + "src": "18402:22:48" + } + ] + } + }, + { + "condition": { + "id": 11323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "18449:32:48", + "subExpression": { + "arguments": [ + { + "id": 11319, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11298, + "src": "18464:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11320, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "18470:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "18474:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "18470:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11318, + "name": "canModifyName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10622, + "src": "18450:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 11322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18450:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11331, + "nodeType": "IfStatement", + "src": "18445:100:48", + "trueBody": { + "id": 11330, + "nodeType": "Block", + "src": "18483:62:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11325, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11298, + "src": "18517:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11326, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "18523:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "18527:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "18523:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11324, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "18504:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 11328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18504:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11329, + "nodeType": "RevertStatement", + "src": "18497:37:48" + } + ] + } + }, + { + "assignments": [ + 11333, + 11335, + 11337 + ], + "declarations": [ + { + "constant": false, + "id": 11333, + "mutability": "mutable", + "name": "currentOwner", + "nameLocation": "18564:12:48", + "nodeType": "VariableDeclaration", + "scope": 11372, + "src": "18556:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11332, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18556:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11335, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "18585:5:48", + "nodeType": "VariableDeclaration", + "scope": 11372, + "src": "18578:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11334, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "18578:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11337, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "18599:6:48", + "nodeType": "VariableDeclaration", + "scope": 11372, + "src": "18592:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11336, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "18592:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11344, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11341, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11298, + "src": "18638:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18630:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11339, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18630:7:48", + "typeDescriptions": {} + } + }, + "id": 11342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18630:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11338, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "18609:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18609:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "18555:98:48" + }, + { + "assignments": [ + 11346 + ], + "declarations": [ + { + "constant": false, + "id": 11346, + "mutability": "mutable", + "name": "approved", + "nameLocation": "18672:8:48", + "nodeType": "VariableDeclaration", + "scope": 11372, + "src": "18664:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11345, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18664:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 11353, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11350, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11298, + "src": "18703:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11349, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18695:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11348, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18695:7:48", + "typeDescriptions": {} + } + }, + "id": 11351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18695:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11347, + "name": "getApproved", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10379 + ], + "referencedDeclaration": 10379, + "src": "18683:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 11352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18683:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "18664:45:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 11357, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11298, + "src": "18734:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18726:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11355, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18726:7:48", + "typeDescriptions": {} + } + }, + "id": 11358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18726:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11354, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9451, + "src": "18720:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 11359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18720:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11360, + "nodeType": "ExpressionStatement", + "src": "18720:20:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11364, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11292, + "src": "18796:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 11365, + "name": "currentOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11333, + "src": "18814:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11366, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11335, + "src": "18840:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11367, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11337, + "src": "18859:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11368, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11346, + "src": "18879:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11369, + "name": "extraData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11294, + "src": "18901:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 11361, + "name": "upgradeContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10211, + "src": "18751:15:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapperUpgrade_$10082", + "typeString": "contract INameWrapperUpgrade" + } + }, + "id": 11363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "18767:15:48", + "memberName": "wrapFromUpgrade", + "nodeType": "MemberAccess", + "referencedDeclaration": 10081, + "src": "18751:31:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$_t_address_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,address,uint32,uint64,address,bytes memory) external" + } + }, + "id": 11370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18751:169:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11371, + "nodeType": "ExpressionStatement", + "src": "18751:169:48" + } + ] + }, + "documentation": { + "id": 11290, + "nodeType": "StructuredDocumentation", + "src": "17898:317:48", + "text": " @notice Upgrades a domain of any kind. Could be a .eth name vitalik.eth, a DNSSEC name vitalik.xyz, or a subdomain\n @dev Can be called by the owner or an authorised caller\n @param name The name to upgrade, in DNS format\n @param extraData Extra data to pass to the upgrade contract" + }, + "functionSelector": "c93ab3fd", + "id": 11373, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "upgrade", + "nameLocation": "18230:7:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11295, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11292, + "mutability": "mutable", + "name": "name", + "nameLocation": "18253:4:48", + "nodeType": "VariableDeclaration", + "scope": 11373, + "src": "18238:19:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 11291, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18238:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11294, + "mutability": "mutable", + "name": "extraData", + "nameLocation": "18274:9:48", + "nodeType": "VariableDeclaration", + "scope": 11373, + "src": "18259:24:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 11293, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18259:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "18237:47:48" + }, + "returnParameters": { + "id": 11296, + "nodeType": "ParameterList", + "parameters": [], + "src": "18292:0:48" + }, + "scope": 13029, + "src": "18221:706:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9908 + ], + "body": { + "id": 11519, + "nodeType": "Block", + "src": "19452:1250:48", + "statements": [ + { + "assignments": [ + 11386 + ], + "declarations": [ + { + "constant": false, + "id": 11386, + "mutability": "mutable", + "name": "node", + "nameLocation": "19470:4:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19462:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11385, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19462:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 11391, + "initialValue": { + "arguments": [ + { + "id": 11388, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11376, + "src": "19487:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11389, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11378, + "src": "19499:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11387, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "19477:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19477:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "19462:47:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11393, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "19542:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11394, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11380, + "src": "19548:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 11392, + "name": "_checkFusesAreSettable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12975, + "src": "19519:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32) pure" + } + }, + "id": 11395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19519:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11396, + "nodeType": "ExpressionStatement", + "src": "19519:35:48" + }, + { + "assignments": [ + 11398, + 11400, + 11402 + ], + "declarations": [ + { + "constant": false, + "id": 11398, + "mutability": "mutable", + "name": "owner", + "nameLocation": "19573:5:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19565:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19565:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11400, + "mutability": "mutable", + "name": "oldFuses", + "nameLocation": "19587:8:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19580:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11399, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "19580:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11402, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "19604:9:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19597:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11401, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "19597:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11409, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11406, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "19646:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19638:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11404, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19638:7:48", + "typeDescriptions": {} + } + }, + "id": 11407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19638:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11403, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "19617:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19617:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "19564:97:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11410, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11398, + "src": "19675:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19692:1:48", + "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": 11412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19684:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11411, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19684:7:48", + "typeDescriptions": {} + } + }, + "id": 11414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19684:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19675:19:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 11418, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "19708:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 11416, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "19698:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "19702:5:48", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "19698:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 11419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19698:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 11422, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "19725:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19717:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11420, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19717:7:48", + "typeDescriptions": {} + } + }, + "id": 11423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19717:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19698:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "19675:55:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11430, + "nodeType": "IfStatement", + "src": "19671:111:48", + "trueBody": { + "id": 11429, + "nodeType": "Block", + "src": "19732:50:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 11426, + "name": "NameIsNotWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10161, + "src": "19753:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 11427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19753:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11428, + "nodeType": "RevertStatement", + "src": "19746:25:48" + } + ] + } + }, + { + "assignments": [ + null, + 11432, + 11434 + ], + "declarations": [ + null, + { + "constant": false, + "id": 11432, + "mutability": "mutable", + "name": "parentFuses", + "nameLocation": "19858:11:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19851:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11431, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "19851:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11434, + "mutability": "mutable", + "name": "maxExpiry", + "nameLocation": "19878:9:48", + "nodeType": "VariableDeclaration", + "scope": 11519, + "src": "19871:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11433, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "19871:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11441, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11438, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11376, + "src": "19907:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19899:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19899:7:48", + "typeDescriptions": {} + } + }, + "id": 11439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19899:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11435, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "19891:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19891:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "19848:71:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 11444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11442, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11376, + "src": "19933:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 11443, + "name": "ROOT_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10208, + "src": "19947:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "19933:23:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 11474, + "nodeType": "Block", + "src": "20096:144:48", + "statements": [ + { + "condition": { + "id": 11465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "20114:38:48", + "subExpression": { + "arguments": [ + { + "id": 11461, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11376, + "src": "20129:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11462, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "20141:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "20145:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "20141:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11460, + "name": "canModifyName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10622, + "src": "20115:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 11464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20115:37:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11473, + "nodeType": "IfStatement", + "src": "20110:120:48", + "trueBody": { + "id": 11472, + "nodeType": "Block", + "src": "20154:76:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11467, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11376, + "src": "20192:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11468, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "20204:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "20208:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "20204:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11466, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "20179:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 11470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20179:36:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11471, + "nodeType": "RevertStatement", + "src": "20172:43:48" + } + ] + } + } + ] + }, + "id": 11475, + "nodeType": "IfStatement", + "src": "19929:311:48", + "trueBody": { + "id": 11459, + "nodeType": "Block", + "src": "19958:132:48", + "statements": [ + { + "condition": { + "id": 11450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "19976:32:48", + "subExpression": { + "arguments": [ + { + "id": 11446, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "19991:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11447, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "19997:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "20001:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19997:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11445, + "name": "canModifyName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10622, + "src": "19977:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$", + "typeString": "function (bytes32,address) view returns (bool)" + } + }, + "id": 11449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19977:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11458, + "nodeType": "IfStatement", + "src": "19972:108:48", + "trueBody": { + "id": 11457, + "nodeType": "Block", + "src": "20010:70:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11452, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "20048:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "expression": { + "id": 11453, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "20054:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 11454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "20058:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "20054:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11451, + "name": "Unauthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "20035:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) pure" + } + }, + "id": 11455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20035:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11456, + "nodeType": "RevertStatement", + "src": "20028:37:48" + } + ] + } + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 11477, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "20268:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11478, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11380, + "src": "20274:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11479, + "name": "parentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11432, + "src": "20281:11:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 11476, + "name": "_checkParentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12720, + "src": "20250:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32,uint32) pure" + } + }, + "id": 11480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20250:43:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11481, + "nodeType": "ExpressionStatement", + "src": "20250:43:48" + }, + { + "expression": { + "id": 11488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11482, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11382, + "src": "20304:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11484, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11382, + "src": "20330:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11485, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11402, + "src": "20338:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11486, + "name": "maxExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11434, + "src": "20349:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11483, + "name": "_normaliseExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12752, + "src": "20313:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_uint64_$_t_uint64_$returns$_t_uint64_$", + "typeString": "function (uint64,uint64,uint64) pure returns (uint64)" + } + }, + "id": 11487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20313:46:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "20304:55:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 11489, + "nodeType": "ExpressionStatement", + "src": "20304:55:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11490, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11400, + "src": "20462:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11491, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "20473:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "20462:32:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 11493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20498:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20462:37:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11495, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11400, + "src": "20515:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 11496, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11380, + "src": "20526:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "20515:16:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 11498, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11400, + "src": "20535:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "20515:28:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "20462:81:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11506, + "nodeType": "IfStatement", + "src": "20445:166:48", + "trueBody": { + "id": 11505, + "nodeType": "Block", + "src": "20554:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11502, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "20595:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11501, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "20575:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 11503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20575:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11504, + "nodeType": "RevertStatement", + "src": "20568:32:48" + } + ] + } + }, + { + "expression": { + "id": 11509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11507, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11380, + "src": "20620:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "id": 11508, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11400, + "src": "20629:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "20620:17:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 11510, + "nodeType": "ExpressionStatement", + "src": "20620:17:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11512, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11386, + "src": "20657:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11513, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11398, + "src": "20663:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11514, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11380, + "src": "20670:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11515, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11402, + "src": "20677:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 11516, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11382, + "src": "20688:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11511, + "name": "_setFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12895, + "src": "20647:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64,uint64)" + } + }, + "id": 11517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20647:48:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11518, + "nodeType": "ExpressionStatement", + "src": "20647:48:48" + } + ] + }, + "documentation": { + "id": 11374, + "nodeType": "StructuredDocumentation", + "src": "18933:377:48", + "text": "/* @notice Sets fuses of a name that you own the parent of\n @param parentNode Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\n @param labelhash Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\n @param fuses Fuses to burn\n @param expiry When the name will expire in seconds since the Unix epoch" + }, + "functionSelector": "33c69ea9", + "id": 11520, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setChildFuses", + "nameLocation": "19325:13:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11383, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11376, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "19356:10:48", + "nodeType": "VariableDeclaration", + "scope": 11520, + "src": "19348:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11375, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19348:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11378, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "19384:9:48", + "nodeType": "VariableDeclaration", + "scope": 11520, + "src": "19376:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11377, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19376:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11380, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "19410:5:48", + "nodeType": "VariableDeclaration", + "scope": 11520, + "src": "19403:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11379, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "19403:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11382, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "19432:6:48", + "nodeType": "VariableDeclaration", + "scope": 11520, + "src": "19425:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11381, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "19425:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "19338:106:48" + }, + "returnParameters": { + "id": 11384, + "nodeType": "ParameterList", + "parameters": [], + "src": "19452:0:48" + }, + "scope": 13029, + "src": "19316:1386:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9953 + ], + "body": { + "id": 11617, + "nodeType": "Block", + "src": "21368:610:48", + "statements": [ + { + "assignments": [ + 11540 + ], + "declarations": [ + { + "constant": false, + "id": 11540, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "21386:9:48", + "nodeType": "VariableDeclaration", + "scope": 11617, + "src": "21378:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11539, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21378:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 11547, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11544, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11525, + "src": "21414:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 11543, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21408:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 11542, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21408:5:48", + "typeDescriptions": {} + } + }, + "id": 11545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21408:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 11541, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21398:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 11546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21398:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21378:43:48" + }, + { + "expression": { + "id": 11553, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11548, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21431:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11550, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21448:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11551, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11540, + "src": "21460:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11549, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "21438:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21438:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21431:39:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 11554, + "nodeType": "ExpressionStatement", + "src": "21431:39:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11556, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21509:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11557, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21521:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11555, + "name": "_checkCanCallSetSubnodeOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11984, + "src": "21480:28:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32) view" + } + }, + "id": 11558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21480:46:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11559, + "nodeType": "ExpressionStatement", + "src": "21480:46:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11561, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21559:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11562, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11529, + "src": "21565:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 11560, + "name": "_checkFusesAreSettable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12975, + "src": "21536:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32) pure" + } + }, + "id": 11563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21536:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11564, + "nodeType": "ExpressionStatement", + "src": "21536:35:48" + }, + { + "assignments": [ + 11566 + ], + "declarations": [ + { + "constant": false, + "id": 11566, + "mutability": "mutable", + "name": "name", + "nameLocation": "21594:4:48", + "nodeType": "VariableDeclaration", + "scope": 11617, + "src": "21581:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 11565, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21581:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 11572, + "initialValue": { + "arguments": [ + { + "id": 11568, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21612:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11569, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21624:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11570, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11525, + "src": "21630:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 11567, + "name": "_saveLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12549, + "src": "21601:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,bytes32,string memory) returns (bytes memory)" + } + }, + "id": 11571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21601:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21581:55:48" + }, + { + "expression": { + "id": 11580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11573, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11531, + "src": "21646:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11575, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21682:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11576, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21694:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11577, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11529, + "src": "21700:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11578, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11531, + "src": "21707:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11574, + "name": "_checkParentFusesAndExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12685, + "src": "21655:26:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_bytes32_$_t_uint32_$_t_uint64_$returns$_t_uint64_$", + "typeString": "function (bytes32,bytes32,uint32,uint64) view returns (uint64)" + } + }, + "id": 11579, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21655:59:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "21646:68:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 11581, + "nodeType": "ExpressionStatement", + "src": "21646:68:48" + }, + { + "condition": { + "id": 11585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "21729:17:48", + "subExpression": { + "arguments": [ + { + "id": 11583, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21741:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11582, + "name": "_isWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13005, + "src": "21730:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 11584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21730:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 11615, + "nodeType": "Block", + "src": "21889:83:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11607, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21915:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11608, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21927:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11609, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11525, + "src": "21933:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 11610, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11527, + "src": "21940:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11611, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11529, + "src": "21947:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11612, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11531, + "src": "21954:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11606, + "name": "_updateName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12639, + "src": "21903:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,string memory,address,uint32,uint64)" + } + }, + "id": 11613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21903:58:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11614, + "nodeType": "ExpressionStatement", + "src": "21903:58:48" + } + ] + }, + "id": 11616, + "nodeType": "IfStatement", + "src": "21725:247:48", + "trueBody": { + "id": 11605, + "nodeType": "Block", + "src": "21748:135:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11589, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21782:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11590, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11540, + "src": "21794:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 11593, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "21813:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11592, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21805:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11591, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21805:7:48", + "typeDescriptions": {} + } + }, + "id": 11594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21805:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11586, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "21762:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "21766:15:48", + "memberName": "setSubnodeOwner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4501, + "src": "21762:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32,address) external returns (bytes32)" + } + }, + "id": 11595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21762:57:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 11596, + "nodeType": "ExpressionStatement", + "src": "21762:57:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11598, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11537, + "src": "21839:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11599, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11566, + "src": "21845:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 11600, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11527, + "src": "21851:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11601, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11529, + "src": "21858:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11602, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11531, + "src": "21865:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11597, + "name": "_wrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12487, + "src": "21833:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,address,uint32,uint64)" + } + }, + "id": 11603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21833:39:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11604, + "nodeType": "ExpressionStatement", + "src": "21833:39:48" + } + ] + } + } + ] + }, + "documentation": { + "id": 11521, + "nodeType": "StructuredDocumentation", + "src": "20708:439:48", + "text": " @notice Sets the subdomain owner in the registry and then wraps the subdomain\n @param parentNode Parent namehash of the subdomain\n @param label Label of the subdomain as a string\n @param owner New owner in the wrapper\n @param fuses Initial fuses for the wrapped subdomain\n @param expiry When the name will expire in seconds since the Unix epoch\n @return node Namehash of the subdomain" + }, + "functionSelector": "c658e086", + "id": 11618, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11534, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11523, + "src": "21333:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11535, + "kind": "modifierInvocation", + "modifierName": { + "id": 11533, + "name": "onlyTokenOwner", + "nameLocations": [ + "21318:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "21318:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "21318:26:48" + } + ], + "name": "setSubnodeOwner", + "nameLocation": "21162:15:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11532, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11523, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "21195:10:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21187:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11522, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21187:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11525, + "mutability": "mutable", + "name": "label", + "nameLocation": "21231:5:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21215:21:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11524, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21215:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11527, + "mutability": "mutable", + "name": "owner", + "nameLocation": "21254:5:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21246:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11526, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21246:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11529, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "21276:5:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21269:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11528, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "21269:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11531, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "21298:6:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21291:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11530, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "21291:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "21177:133:48" + }, + "returnParameters": { + "id": 11538, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11537, + "mutability": "mutable", + "name": "node", + "nameLocation": "21362:4:48", + "nodeType": "VariableDeclaration", + "scope": 11618, + "src": "21354:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11536, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21354:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "21353:14:48" + }, + "scope": 13029, + "src": "21153:825:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9927 + ], + "body": { + "id": 11733, + "nodeType": "Block", + "src": "22797:905:48", + "statements": [ + { + "assignments": [ + 11642 + ], + "declarations": [ + { + "constant": false, + "id": 11642, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "22815:9:48", + "nodeType": "VariableDeclaration", + "scope": 11733, + "src": "22807:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11641, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22807:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 11649, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11646, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11623, + "src": "22843:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 11645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22837:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 11644, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "22837:5:48", + "typeDescriptions": {} + } + }, + "id": 11647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22837:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11643, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "22827:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 11648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22827:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22807:43:48" + }, + { + "expression": { + "id": 11655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11650, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "22860:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11652, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "22877:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11653, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11642, + "src": "22889:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11651, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "22867:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 11654, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22867:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "22860:39:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 11656, + "nodeType": "ExpressionStatement", + "src": "22860:39:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11658, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "22938:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11659, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "22950:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11657, + "name": "_checkCanCallSetSubnodeOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11984, + "src": "22909:28:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32) view" + } + }, + "id": 11660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22909:46:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11661, + "nodeType": "ExpressionStatement", + "src": "22909:46:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11663, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "22988:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11664, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11631, + "src": "22994:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 11662, + "name": "_checkFusesAreSettable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12975, + "src": "22965:22:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32) pure" + } + }, + "id": 11665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22965:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11666, + "nodeType": "ExpressionStatement", + "src": "22965:35:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11668, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23021:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11669, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "23033:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11670, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11623, + "src": "23039:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 11667, + "name": "_saveLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12549, + "src": "23010:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,bytes32,string memory) returns (bytes memory)" + } + }, + "id": 11671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23010:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 11672, + "nodeType": "ExpressionStatement", + "src": "23010:35:48" + }, + { + "expression": { + "id": 11680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 11673, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11633, + "src": "23055:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 11675, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23091:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11676, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "23103:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11677, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11631, + "src": "23109:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11678, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11633, + "src": "23116:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11674, + "name": "_checkParentFusesAndExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12685, + "src": "23064:26:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_bytes32_$_t_uint32_$_t_uint64_$returns$_t_uint64_$", + "typeString": "function (bytes32,bytes32,uint32,uint64) view returns (uint64)" + } + }, + "id": 11679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23064:59:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "23055:68:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 11681, + "nodeType": "ExpressionStatement", + "src": "23055:68:48" + }, + { + "condition": { + "id": 11685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "23137:17:48", + "subExpression": { + "arguments": [ + { + "id": 11683, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "23149:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11682, + "name": "_isWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13005, + "src": "23138:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 11684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23138:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 11731, + "nodeType": "Block", + "src": "23432:264:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11712, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23484:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11713, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11642, + "src": "23512:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 11716, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "23547:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11715, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23539:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11714, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23539:7:48", + "typeDescriptions": {} + } + }, + "id": 11717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23539:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11718, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11627, + "src": "23570:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11719, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11629, + "src": "23596:3:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 11709, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "23446:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "23450:16:48", + "memberName": "setSubnodeRecord", + "nodeType": "MemberAccess", + "referencedDeclaration": 4490, + "src": "23446:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,address,address,uint64) external" + } + }, + "id": 11720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23446:167:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11721, + "nodeType": "ExpressionStatement", + "src": "23446:167:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11723, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23639:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11724, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "23651:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11725, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11623, + "src": "23657:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11726, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11625, + "src": "23664:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11727, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11631, + "src": "23671:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11728, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11633, + "src": "23678:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11722, + "name": "_updateName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12639, + "src": "23627:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,string memory,address,uint32,uint64)" + } + }, + "id": 11729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23627:58:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11730, + "nodeType": "ExpressionStatement", + "src": "23627:58:48" + } + ] + }, + "id": 11732, + "nodeType": "IfStatement", + "src": "23133:563:48", + "trueBody": { + "id": 11708, + "nodeType": "Block", + "src": "23156:270:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11689, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23208:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11690, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11642, + "src": "23236:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 11693, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "23271:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23263:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11691, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23263:7:48", + "typeDescriptions": {} + } + }, + "id": 11694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23263:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11695, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11627, + "src": "23294:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11696, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11629, + "src": "23320:3:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 11686, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "23170:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "23174:16:48", + "memberName": "setSubnodeRecord", + "nodeType": "MemberAccess", + "referencedDeclaration": 4490, + "src": "23170:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,address,address,uint64) external" + } + }, + "id": 11697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23170:167:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11698, + "nodeType": "ExpressionStatement", + "src": "23170:167:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11700, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "23369:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11701, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11639, + "src": "23381:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11702, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11623, + "src": "23387:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11703, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11625, + "src": "23394:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11704, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11631, + "src": "23401:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 11705, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11633, + "src": "23408:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 11699, + "name": "_storeNameAndWrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12520, + "src": "23351:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes32,string memory,address,uint32,uint64)" + } + }, + "id": 11706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23351:64:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11707, + "nodeType": "ExpressionStatement", + "src": "23351:64:48" + } + ] + } + } + ] + }, + "documentation": { + "id": 11619, + "nodeType": "StructuredDocumentation", + "src": "21984:547:48", + "text": " @notice Sets the subdomain owner in the registry with records and then wraps the subdomain\n @param parentNode parent namehash of the subdomain\n @param label label of the subdomain as a string\n @param owner new owner in the wrapper\n @param resolver resolver contract in the registry\n @param ttl ttl in the registry\n @param fuses initial fuses for the wrapped subdomain\n @param expiry When the name will expire in seconds since the Unix epoch\n @return node Namehash of the subdomain" + }, + "functionSelector": "24c1af44", + "id": 11734, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11636, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11621, + "src": "22762:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11637, + "kind": "modifierInvocation", + "modifierName": { + "id": 11635, + "name": "onlyTokenOwner", + "nameLocations": [ + "22747:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "22747:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "22747:26:48" + } + ], + "name": "setSubnodeRecord", + "nameLocation": "22546:16:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11621, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "22580:10:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22572:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11620, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22572:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11623, + "mutability": "mutable", + "name": "label", + "nameLocation": "22614:5:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22600:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11622, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22600:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11625, + "mutability": "mutable", + "name": "owner", + "nameLocation": "22637:5:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22629:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11624, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22629:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11627, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "22660:8:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22652:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22652:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11629, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "22685:3:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22678:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11628, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "22678:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11631, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "22705:5:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22698:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11630, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "22698:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11633, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "22727:6:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22720:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11632, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "22720:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "22562:177:48" + }, + "returnParameters": { + "id": 11640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11639, + "mutability": "mutable", + "name": "node", + "nameLocation": "22791:4:48", + "nodeType": "VariableDeclaration", + "scope": 11734, + "src": "22783:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11638, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22783:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "22782:14:48" + }, + "scope": 13029, + "src": "22537:1165:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9938 + ], + "body": { + "id": 11826, + "nodeType": "Block", + "src": "24265:459:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11760, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24289:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "id": 11763, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "24303:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 11762, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24295:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11761, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24295:7:48", + "typeDescriptions": {} + } + }, + "id": 11764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24295:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11765, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11741, + "src": "24310:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11766, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11743, + "src": "24320:3:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 11757, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "24275:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "24279:9:48", + "memberName": "setRecord", + "nodeType": "MemberAccess", + "referencedDeclaration": 4477, + "src": "24275:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$_t_address_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,address,uint64) external" + } + }, + "id": 11767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24275:49:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11768, + "nodeType": "ExpressionStatement", + "src": "24275:49:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11769, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11739, + "src": "24338:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11772, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24355:1:48", + "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": 11771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24347:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11770, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24347:7:48", + "typeDescriptions": {} + } + }, + "id": 11773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24347:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "24338:19:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 11824, + "nodeType": "Block", + "src": "24590:128:48", + "statements": [ + { + "assignments": [ + 11805 + ], + "declarations": [ + { + "constant": false, + "id": 11805, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "24612:8:48", + "nodeType": "VariableDeclaration", + "scope": 11824, + "src": "24604:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11804, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24604:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 11812, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11809, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24639:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24631:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24631:7:48", + "typeDescriptions": {} + } + }, + "id": 11810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24631:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11806, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10343 + ], + "referencedDeclaration": 10343, + "src": "24623:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 11811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24623:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24604:41:48" + }, + { + "expression": { + "arguments": [ + { + "id": 11814, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11805, + "src": "24669:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11815, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11739, + "src": "24679:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 11818, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24694:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24686:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11816, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24686:7:48", + "typeDescriptions": {} + } + }, + "id": 11819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24686:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 11820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24701:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + { + "hexValue": "", + "id": 11821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24704:2:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 11813, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9524, + "src": "24659:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,uint256,bytes memory)" + } + }, + "id": 11822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24659:48:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11823, + "nodeType": "ExpressionStatement", + "src": "24659:48:48" + } + ] + }, + "id": 11825, + "nodeType": "IfStatement", + "src": "24334:384:48", + "trueBody": { + "id": 11803, + "nodeType": "Block", + "src": "24359:225:48", + "statements": [ + { + "assignments": [ + null, + 11776, + null + ], + "declarations": [ + null, + { + "constant": false, + "id": 11776, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "24383:5:48", + "nodeType": "VariableDeclaration", + "scope": 11803, + "src": "24376:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11775, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "24376:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 11783, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11780, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24410:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11779, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24402:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11778, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24402:7:48", + "typeDescriptions": {} + } + }, + "id": 11781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24402:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11777, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "24394:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24394:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24373:43:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11784, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11776, + "src": "24434:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11785, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "24442:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "24434:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 11787, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "24456:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "24434:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11794, + "nodeType": "IfStatement", + "src": "24430:105:48", + "trueBody": { + "id": 11793, + "nodeType": "Block", + "src": "24468:67:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11790, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11739, + "src": "24514:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11789, + "name": "IncorrectTargetOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10153, + "src": "24493:20:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_address_$returns$__$", + "typeString": "function (address) pure" + } + }, + "id": 11791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24493:27:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11792, + "nodeType": "RevertStatement", + "src": "24486:34:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 11796, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24556:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 11799, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24570:1:48", + "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": 11798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24562:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11797, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24562:7:48", + "typeDescriptions": {} + } + }, + "id": 11800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24562:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 11795, + "name": "_unwrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12859, + "src": "24548:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 11801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24548:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11802, + "nodeType": "ExpressionStatement", + "src": "24548:25:48" + } + ] + } + } + ] + }, + "documentation": { + "id": 11735, + "nodeType": "StructuredDocumentation", + "src": "23708:266:48", + "text": " @notice Sets records for the name in the ENS Registry\n @param node Namehash of the name to set a record for\n @param owner New owner in the registry\n @param resolver Resolver contract\n @param ttl Time to live in the registry" + }, + "functionSelector": "cf408823", + "id": 11827, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11746, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24134:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11747, + "kind": "modifierInvocation", + "modifierName": { + "id": 11745, + "name": "onlyTokenOwner", + "nameLocations": [ + "24119:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "24119:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "24119:20:48" + }, + { + "arguments": [ + { + "id": 11749, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11737, + "src": "24178:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11754, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11752, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 11750, + "name": "CANNOT_TRANSFER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9706, + "src": "24196:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 11751, + "name": "CANNOT_SET_RESOLVER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9709, + "src": "24214:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "24196:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 11753, + "name": "CANNOT_SET_TTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9712, + "src": "24236:14:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "24196:54:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 11755, + "kind": "modifierInvocation", + "modifierName": { + "id": 11748, + "name": "operationAllowed", + "nameLocations": [ + "24148:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 11902, + "src": "24148:16:48" + }, + "nodeType": "ModifierInvocation", + "src": "24148:112:48" + } + ], + "name": "setRecord", + "nameLocation": "23989:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11744, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11737, + "mutability": "mutable", + "name": "node", + "nameLocation": "24016:4:48", + "nodeType": "VariableDeclaration", + "scope": 11827, + "src": "24008:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11736, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "24008:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11739, + "mutability": "mutable", + "name": "owner", + "nameLocation": "24038:5:48", + "nodeType": "VariableDeclaration", + "scope": 11827, + "src": "24030:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11738, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24030:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11741, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "24061:8:48", + "nodeType": "VariableDeclaration", + "scope": 11827, + "src": "24053:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11740, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24053:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11743, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "24086:3:48", + "nodeType": "VariableDeclaration", + "scope": 11827, + "src": "24079:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11742, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "24079:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "23998:97:48" + }, + "returnParameters": { + "id": 11756, + "nodeType": "ParameterList", + "parameters": [], + "src": "24265:0:48" + }, + "scope": 13029, + "src": "23980:744:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9980 + ], + "body": { + "id": 11849, + "nodeType": "Block", + "src": "25033:48:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11845, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11830, + "src": "25059:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11846, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11832, + "src": "25065:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11842, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "25043:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "25047:11:48", + "memberName": "setResolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4508, + "src": "25043:15:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 11847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25043:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11848, + "nodeType": "ExpressionStatement", + "src": "25043:31:48" + } + ] + }, + "documentation": { + "id": 11828, + "nodeType": "StructuredDocumentation", + "src": "24730:150:48", + "text": " @notice Sets resolver contract in the registry\n @param node namehash of the name\n @param resolver the resolver contract" + }, + "functionSelector": "1896f70a", + "id": 11850, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11835, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11830, + "src": "24983:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11836, + "kind": "modifierInvocation", + "modifierName": { + "id": 11834, + "name": "onlyTokenOwner", + "nameLocations": [ + "24968:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "24968:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "24968:20:48" + }, + { + "arguments": [ + { + "id": 11838, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11830, + "src": "25006:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11839, + "name": "CANNOT_SET_RESOLVER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9709, + "src": "25012:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 11840, + "kind": "modifierInvocation", + "modifierName": { + "id": 11837, + "name": "operationAllowed", + "nameLocations": [ + "24989:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 11902, + "src": "24989:16:48" + }, + "nodeType": "ModifierInvocation", + "src": "24989:43:48" + } + ], + "name": "setResolver", + "nameLocation": "24895:11:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11830, + "mutability": "mutable", + "name": "node", + "nameLocation": "24924:4:48", + "nodeType": "VariableDeclaration", + "scope": 11850, + "src": "24916:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11829, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "24916:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11832, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "24946:8:48", + "nodeType": "VariableDeclaration", + "scope": 11850, + "src": "24938:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11831, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24938:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24906:54:48" + }, + "returnParameters": { + "id": 11841, + "nodeType": "ParameterList", + "parameters": [], + "src": "25033:0:48" + }, + "scope": 13029, + "src": "24886:195:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9987 + ], + "body": { + "id": 11872, + "nodeType": "Block", + "src": "25353:38:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 11868, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11853, + "src": "25374:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11869, + "name": "ttl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11855, + "src": "25380:3:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 11865, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "25363:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "25367:6:48", + "memberName": "setTTL", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "25363:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64) external" + } + }, + "id": 11870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25363:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11871, + "nodeType": "ExpressionStatement", + "src": "25363:21:48" + } + ] + }, + "documentation": { + "id": 11851, + "nodeType": "StructuredDocumentation", + "src": "25087:129:48", + "text": " @notice Sets TTL in the registry\n @param node Namehash of the name\n @param ttl TTL in the registry" + }, + "functionSelector": "14ab9038", + "id": 11873, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 11858, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11853, + "src": "25308:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 11859, + "kind": "modifierInvocation", + "modifierName": { + "id": 11857, + "name": "onlyTokenOwner", + "nameLocations": [ + "25293:14:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10582, + "src": "25293:14:48" + }, + "nodeType": "ModifierInvocation", + "src": "25293:20:48" + }, + { + "arguments": [ + { + "id": 11861, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11853, + "src": "25331:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 11862, + "name": "CANNOT_SET_TTL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9712, + "src": "25337:14:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 11863, + "kind": "modifierInvocation", + "modifierName": { + "id": 11860, + "name": "operationAllowed", + "nameLocations": [ + "25314:16:48" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 11902, + "src": "25314:16:48" + }, + "nodeType": "ModifierInvocation", + "src": "25314:38:48" + } + ], + "name": "setTTL", + "nameLocation": "25231:6:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11853, + "mutability": "mutable", + "name": "node", + "nameLocation": "25255:4:48", + "nodeType": "VariableDeclaration", + "scope": 11873, + "src": "25247:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11852, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "25247:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11855, + "mutability": "mutable", + "name": "ttl", + "nameLocation": "25276:3:48", + "nodeType": "VariableDeclaration", + "scope": 11873, + "src": "25269:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11854, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "25269:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "25237:48:48" + }, + "returnParameters": { + "id": 11864, + "nodeType": "ParameterList", + "parameters": [], + "src": "25353:0:48" + }, + "scope": 13029, + "src": "25222:169:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 11901, + "nodeType": "Block", + "src": "25681:164:48", + "statements": [ + { + "assignments": [ + null, + 11881, + null + ], + "declarations": [ + null, + { + "constant": false, + "id": 11881, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "25701:5:48", + "nodeType": "VariableDeclaration", + "scope": 11901, + "src": "25694:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11880, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "25694:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 11888, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11885, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11876, + "src": "25728:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "25720:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11883, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25720:7:48", + "typeDescriptions": {} + } + }, + "id": 11886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25720:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11882, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "25712:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25712:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25691:43:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11889, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11881, + "src": "25748:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11890, + "name": "fuseMask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11878, + "src": "25756:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "25748:16:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 11892, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25768:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "25748:21:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11899, + "nodeType": "IfStatement", + "src": "25744:84:48", + "trueBody": { + "id": 11898, + "nodeType": "Block", + "src": "25771:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11895, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11876, + "src": "25812:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11894, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "25792:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 11896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25792:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11897, + "nodeType": "RevertStatement", + "src": "25785:32:48" + } + ] + } + }, + { + "id": 11900, + "nodeType": "PlaceholderStatement", + "src": "25837:1:48" + } + ] + }, + "documentation": { + "id": 11874, + "nodeType": "StructuredDocumentation", + "src": "25397:221:48", + "text": " @dev Allows an operation only if none of the specified fuses are burned.\n @param node The namehash of the name to check fuses on.\n @param fuseMask A bitmask of fuses that must not be burned." + }, + "id": 11902, + "name": "operationAllowed", + "nameLocation": "25633:16:48", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 11879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11876, + "mutability": "mutable", + "name": "node", + "nameLocation": "25658:4:48", + "nodeType": "VariableDeclaration", + "scope": 11902, + "src": "25650:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11875, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "25650:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11878, + "mutability": "mutable", + "name": "fuseMask", + "nameLocation": "25671:8:48", + "nodeType": "VariableDeclaration", + "scope": 11902, + "src": "25664:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11877, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "25664:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "25649:31:48" + }, + "src": "25624:221:48", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 11983, + "nodeType": "Block", + "src": "26507:1161:48", + "statements": [ + { + "assignments": [ + 11911, + 11913, + 11915 + ], + "declarations": [ + { + "constant": false, + "id": 11911, + "mutability": "mutable", + "name": "subnodeOwner", + "nameLocation": "26539:12:48", + "nodeType": "VariableDeclaration", + "scope": 11983, + "src": "26531:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11910, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26531:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11913, + "mutability": "mutable", + "name": "subnodeFuses", + "nameLocation": "26572:12:48", + "nodeType": "VariableDeclaration", + "scope": 11983, + "src": "26565:19:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11912, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "26565:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11915, + "mutability": "mutable", + "name": "subnodeExpiry", + "nameLocation": "26605:13:48", + "nodeType": "VariableDeclaration", + "scope": 11983, + "src": "26598:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 11914, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "26598:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 11922, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11919, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11907, + "src": "26647:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "26639:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11917, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26639:7:48", + "typeDescriptions": {} + } + }, + "id": 11920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26639:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11916, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "26631:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26631:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "26517:139:48" + }, + { + "assignments": [ + 11924 + ], + "declarations": [ + { + "constant": false, + "id": 11924, + "mutability": "mutable", + "name": "expired", + "nameLocation": "26857:7:48", + "nodeType": "VariableDeclaration", + "scope": 11983, + "src": "26852:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11923, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26852:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 11929, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 11928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11925, + "name": "subnodeExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11915, + "src": "26867:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 11926, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "26883:5:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 11927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "26889:9:48", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "26883:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "26867:31:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "26852:46:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11930, + "name": "expired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11924, + "src": "26925:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 11946, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11931, + "name": "subnodeOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11911, + "src": "27088:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27112:1:48", + "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": 11933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "27104:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11932, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27104:7:48", + "typeDescriptions": {} + } + }, + "id": 11935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27104:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "27088:26:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 11945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 11939, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11907, + "src": "27274:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 11937, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "27264:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 11938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "27268:5:48", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "27264:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 11940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27264:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 11943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27294:1:48", + "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": 11942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "27286:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 11941, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27286:7:48", + "typeDescriptions": {} + } + }, + "id": 11944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27286:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "27264:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "27088:208:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 11947, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "27087:210:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "26925:372:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 11981, + "nodeType": "Block", + "src": "27523:139:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11970, + "name": "subnodeFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11913, + "src": "27541:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11971, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "27556:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "27541:36:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 11973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27581:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "27541:41:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11980, + "nodeType": "IfStatement", + "src": "27537:115:48", + "trueBody": { + "id": 11979, + "nodeType": "Block", + "src": "27584:68:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11976, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11907, + "src": "27629:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11975, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "27609:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 11977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27609:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11978, + "nodeType": "RevertStatement", + "src": "27602:35:48" + } + ] + } + } + ] + }, + "id": 11982, + "nodeType": "IfStatement", + "src": "26908:754:48", + "trueBody": { + "id": 11969, + "nodeType": "Block", + "src": "27308:209:48", + "statements": [ + { + "assignments": [ + null, + 11950, + null + ], + "declarations": [ + null, + { + "constant": false, + "id": 11950, + "mutability": "mutable", + "name": "parentFuses", + "nameLocation": "27332:11:48", + "nodeType": "VariableDeclaration", + "scope": 11969, + "src": "27325:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11949, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "27325:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 11957, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11954, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11905, + "src": "27365:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "27357:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11952, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27357:7:48", + "typeDescriptions": {} + } + }, + "id": 11955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27357:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11951, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "27349:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 11956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27349:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "27322:55:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 11960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 11958, + "name": "parentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11950, + "src": "27395:11:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 11959, + "name": "CANNOT_CREATE_SUBDOMAIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9715, + "src": "27409:23:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "27395:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 11961, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27436:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "27395:42:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 11968, + "nodeType": "IfStatement", + "src": "27391:116:48", + "trueBody": { + "id": 11967, + "nodeType": "Block", + "src": "27439:68:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 11964, + "name": "subnode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11907, + "src": "27484:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11963, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "27464:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 11965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27464:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11966, + "nodeType": "RevertStatement", + "src": "27457:35:48" + } + ] + } + } + ] + } + } + ] + }, + "documentation": { + "id": 11903, + "nodeType": "StructuredDocumentation", + "src": "25851:539:48", + "text": " @notice Check whether a name can call setSubnodeOwner/setSubnodeRecord\n @dev Checks both CANNOT_CREATE_SUBDOMAIN and PARENT_CANNOT_CONTROL and whether not they have been burnt\n and checks whether the owner of the subdomain is 0x0 for creating or already exists for\n replacing a subdomain. If either conditions are true, then it is possible to call\n setSubnodeOwner\n @param parentNode Namehash of the parent name to check\n @param subnode Namehash of the subname to check" + }, + "id": 11984, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkCanCallSetSubnodeOwner", + "nameLocation": "26405:28:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11905, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "26451:10:48", + "nodeType": "VariableDeclaration", + "scope": 11984, + "src": "26443:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11904, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "26443:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11907, + "mutability": "mutable", + "name": "subnode", + "nameLocation": "26479:7:48", + "nodeType": "VariableDeclaration", + "scope": 11984, + "src": "26471:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11906, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "26471:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "26433:59:48" + }, + "returnParameters": { + "id": 11909, + "nodeType": "ParameterList", + "parameters": [], + "src": "26507:0:48" + }, + "scope": 13029, + "src": "26396:1272:48", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 10047 + ], + "body": { + "id": 12009, + "nodeType": "Block", + "src": "28029:105:48", + "statements": [ + { + "assignments": [ + null, + 11995, + null + ], + "declarations": [ + null, + { + "constant": false, + "id": 11995, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "28049:5:48", + "nodeType": "VariableDeclaration", + "scope": 12009, + "src": "28042:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11994, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "28042:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 12002, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 11999, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11987, + "src": "28076:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 11998, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "28068:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 11997, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28068:7:48", + "typeDescriptions": {} + } + }, + "id": 12000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28068:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 11996, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "28060:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 12001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28060:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "28039:43:48" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12003, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11995, + "src": "28099:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12004, + "name": "fuseMask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11989, + "src": "28107:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "28099:16:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 12006, + "name": "fuseMask", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11989, + "src": "28119:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "28099:28:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 11993, + "id": 12008, + "nodeType": "Return", + "src": "28092:35:48" + } + ] + }, + "documentation": { + "id": 11985, + "nodeType": "StructuredDocumentation", + "src": "27674:245:48", + "text": " @notice Checks all Fuses in the mask are burned for the node\n @param node Namehash of the name\n @param fuseMask The fuses you want to check\n @return Boolean of whether or not all the selected fuses are burned" + }, + "functionSelector": "adf4960a", + "id": 12010, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "allFusesBurned", + "nameLocation": "27934:14:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 11990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11987, + "mutability": "mutable", + "name": "node", + "nameLocation": "27966:4:48", + "nodeType": "VariableDeclaration", + "scope": 12010, + "src": "27958:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 11986, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "27958:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11989, + "mutability": "mutable", + "name": "fuseMask", + "nameLocation": "27987:8:48", + "nodeType": "VariableDeclaration", + "scope": 12010, + "src": "27980:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 11988, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "27980:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "27948:53:48" + }, + "returnParameters": { + "id": 11993, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11992, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12010, + "src": "28023:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11991, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28023:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28022:6:48" + }, + "scope": 13029, + "src": "27925:209:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 10054 + ], + "body": { + "id": 12053, + "nodeType": "Block", + "src": "28361:282:48", + "statements": [ + { + "assignments": [ + 12019 + ], + "declarations": [ + { + "constant": false, + "id": 12019, + "mutability": "mutable", + "name": "name", + "nameLocation": "28384:4:48", + "nodeType": "VariableDeclaration", + "scope": 12053, + "src": "28371:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12018, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "28371:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 12023, + "initialValue": { + "baseExpression": { + "id": 12020, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "28391:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12022, + "indexExpression": { + "id": 12021, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12013, + "src": "28397:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "28391:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "28371:31:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 12024, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12019, + "src": "28416:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "28421:6:48", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "28416:11:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 12026, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28431:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "28416:16:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12031, + "nodeType": "IfStatement", + "src": "28412:59:48", + "trueBody": { + "id": 12030, + "nodeType": "Block", + "src": "28434:37:48", + "statements": [ + { + "expression": { + "hexValue": "66616c7365", + "id": 12028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28455:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 12017, + "id": 12029, + "nodeType": "Return", + "src": "28448:12:48" + } + ] + } + }, + { + "assignments": [ + 12033, + 12035 + ], + "declarations": [ + { + "constant": false, + "id": 12033, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "28489:9:48", + "nodeType": "VariableDeclaration", + "scope": 12053, + "src": "28481:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12032, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "28481:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12035, + "mutability": "mutable", + "name": "offset", + "nameLocation": "28508:6:48", + "nodeType": "VariableDeclaration", + "scope": 12053, + "src": "28500:14:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12034, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28500:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 12040, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 12038, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28533:1:48", + "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" + } + ], + "expression": { + "id": 12036, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12019, + "src": "28518:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "28523:9:48", + "memberName": "readLabel", + "nodeType": "MemberAccess", + "referencedDeclaration": 7821, + "src": "28518:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_uint256_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32,uint256)" + } + }, + "id": 12039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28518:17:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_uint256_$", + "typeString": "tuple(bytes32,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "28480:55:48" + }, + { + "assignments": [ + 12042 + ], + "declarations": [ + { + "constant": false, + "id": 12042, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "28553:10:48", + "nodeType": "VariableDeclaration", + "scope": 12053, + "src": "28545:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12041, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "28545:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12047, + "initialValue": { + "arguments": [ + { + "id": 12045, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12035, + "src": "28580:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12043, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12019, + "src": "28566:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "28571:8:48", + "memberName": "namehash", + "nodeType": "MemberAccess", + "referencedDeclaration": 7757, + "src": "28566:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 12046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28566:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "28545:42:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12049, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12042, + "src": "28614:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12050, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12033, + "src": "28626:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12048, + "name": "isWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12054, + 12109 + ], + "referencedDeclaration": 12109, + "src": "28604:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32,bytes32) view returns (bool)" + } + }, + "id": 12051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28604:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 12017, + "id": 12052, + "nodeType": "Return", + "src": "28597:39:48" + } + ] + }, + "documentation": { + "id": 12011, + "nodeType": "StructuredDocumentation", + "src": "28140:155:48", + "text": " @notice Checks if a name is wrapped\n @param node Namehash of the name\n @return Boolean of whether or not the name is wrapped" + }, + "functionSelector": "fd0cd0d9", + "id": 12054, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isWrapped", + "nameLocation": "28310:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12014, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12013, + "mutability": "mutable", + "name": "node", + "nameLocation": "28328:4:48", + "nodeType": "VariableDeclaration", + "scope": 12054, + "src": "28320:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12012, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "28320:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "28319:14:48" + }, + "returnParameters": { + "id": 12017, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12016, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12054, + "src": "28355:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12015, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28355:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28354:6:48" + }, + "scope": 13029, + "src": "28301:342:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 10063 + ], + "body": { + "id": 12108, + "nodeType": "Block", + "src": "28996:354:48", + "statements": [ + { + "assignments": [ + 12065 + ], + "declarations": [ + { + "constant": false, + "id": 12065, + "mutability": "mutable", + "name": "node", + "nameLocation": "29014:4:48", + "nodeType": "VariableDeclaration", + "scope": 12108, + "src": "29006:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12064, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "29006:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12070, + "initialValue": { + "arguments": [ + { + "id": 12067, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12057, + "src": "29031:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12068, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12059, + "src": "29043:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12066, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "29021:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 12069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29021:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "29006:47:48" + }, + { + "assignments": [ + 12072 + ], + "declarations": [ + { + "constant": false, + "id": 12072, + "mutability": "mutable", + "name": "wrapped", + "nameLocation": "29068:7:48", + "nodeType": "VariableDeclaration", + "scope": 12108, + "src": "29063:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12071, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29063:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 12076, + "initialValue": { + "arguments": [ + { + "id": 12074, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12065, + "src": "29089:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12073, + "name": "_isWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13005, + "src": "29078:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 12075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29078:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "29063:31:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 12079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12077, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12057, + "src": "29108:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 12078, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "29122:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "29108:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12083, + "nodeType": "IfStatement", + "src": "29104:67:48", + "trueBody": { + "id": 12082, + "nodeType": "Block", + "src": "29132:39:48", + "statements": [ + { + "expression": { + "id": 12080, + "name": "wrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12072, + "src": "29153:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 12063, + "id": 12081, + "nodeType": "Return", + "src": "29146:14:48" + } + ] + } + }, + { + "clauses": [ + { + "block": { + "id": 12101, + "nodeType": "Block", + "src": "29246:54:48", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12094, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12092, + "src": "29267:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 12097, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "29284:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 12096, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29276:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12095, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29276:7:48", + "typeDescriptions": {} + } + }, + "id": 12098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29276:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "29267:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 12063, + "id": 12100, + "nodeType": "Return", + "src": "29260:29:48" + } + ] + }, + "errorName": "", + "id": 12102, + "nodeType": "TryCatchClause", + "parameters": { + "id": 12093, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12092, + "mutability": "mutable", + "name": "owner", + "nameLocation": "29239:5:48", + "nodeType": "VariableDeclaration", + "scope": 12102, + "src": "29231:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12091, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29231:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "29230:15:48" + }, + "src": "29222:78:48" + }, + { + "block": { + "id": 12105, + "nodeType": "Block", + "src": "29307:37:48", + "statements": [ + { + "expression": { + "hexValue": "66616c7365", + "id": 12103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29328:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 12063, + "id": 12104, + "nodeType": "Return", + "src": "29321:12:48" + } + ] + }, + "errorName": "", + "id": 12106, + "nodeType": "TryCatchClause", + "src": "29301:43:48" + } + ], + "externalCall": { + "arguments": [ + { + "arguments": [ + { + "id": 12088, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12059, + "src": "29210:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12087, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29202:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12086, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29202:7:48", + "typeDescriptions": {} + } + }, + "id": 12089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29202:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12084, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "29184:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 12085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "29194:7:48", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 14399, + "src": "29184:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view external returns (address)" + } + }, + "id": 12090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29184:37:48", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 12107, + "nodeType": "TryStatement", + "src": "29180:164:48" + } + ] + }, + "documentation": { + "id": 12055, + "nodeType": "StructuredDocumentation", + "src": "28649:234:48", + "text": " @notice Checks if a name is wrapped in a more gas efficient way\n @param parentNode Namehash of the name\n @param labelhash Namehash of the name\n @return Boolean of whether or not the name is wrapped" + }, + "functionSelector": "d9a50c12", + "id": 12109, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isWrapped", + "nameLocation": "28898:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12060, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12057, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "28925:10:48", + "nodeType": "VariableDeclaration", + "scope": 12109, + "src": "28917:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12056, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "28917:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12059, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "28953:9:48", + "nodeType": "VariableDeclaration", + "scope": 12109, + "src": "28945:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12058, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "28945:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "28907:61:48" + }, + "returnParameters": { + "id": 12063, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12062, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12109, + "src": "28990:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12061, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28990:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28989:6:48" + }, + "scope": 13029, + "src": "28889:461:48", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 14483 + ], + "body": { + "id": 12221, + "nodeType": "Block", + "src": "29503:946:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 12122, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "29566:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 12123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "29570:6:48", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "29566:10:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 12126, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "29588:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + ], + "id": 12125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29580:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12124, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29580:7:48", + "typeDescriptions": {} + } + }, + "id": 12127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29580:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "29566:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12133, + "nodeType": "IfStatement", + "src": "29562:90:48", + "trueBody": { + "id": 12132, + "nodeType": "Block", + "src": "29600:52:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 12129, + "name": "IncorrectTokenType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10137, + "src": "29621:18:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 12130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29621:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12131, + "nodeType": "RevertStatement", + "src": "29614:27:48" + } + ] + } + }, + { + "assignments": [ + 12135, + 12137, + 12139, + 12141 + ], + "declarations": [ + { + "constant": false, + "id": 12135, + "mutability": "mutable", + "name": "label", + "nameLocation": "29690:5:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29676:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12134, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29676:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12137, + "mutability": "mutable", + "name": "owner", + "nameLocation": "29717:5:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29709:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12136, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29709:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12139, + "mutability": "mutable", + "name": "ownerControlledFuses", + "nameLocation": "29743:20:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29736:27:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 12138, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "29736:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12141, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "29785:8:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29777:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12140, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29777:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 12155, + "initialValue": { + "arguments": [ + { + "id": 12144, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12117, + "src": "29817:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 12146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29824:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 12145, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29824:6:48", + "typeDescriptions": {} + } + }, + { + "id": 12148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29832:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29832:7:48", + "typeDescriptions": {} + } + }, + { + "id": 12150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29841:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint16_$", + "typeString": "type(uint16)" + }, + "typeName": { + "id": 12149, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "29841:6:48", + "typeDescriptions": {} + } + }, + { + "id": 12152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29849:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29849:7:48", + "typeDescriptions": {} + } + } + ], + "id": 12153, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "29823:34:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_address_$_$_t_type$_t_uint16_$_$_t_type$_t_address_$_$", + "typeString": "tuple(type(string storage pointer),type(address),type(uint16),type(address))" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_address_$_$_t_type$_t_uint16_$_$_t_type$_t_address_$_$", + "typeString": "tuple(type(string storage pointer),type(address),type(uint16),type(address))" + } + ], + "expression": { + "id": 12142, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29806:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29810:6:48", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "29806:10:48", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 12154, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29806:52:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_string_memory_ptr_$_t_address_payable_$_t_uint16_$_t_address_payable_$", + "typeString": "tuple(string memory,address payable,uint16,address payable)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "29662:196:48" + }, + { + "assignments": [ + 12157 + ], + "declarations": [ + { + "constant": false, + "id": 12157, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "29877:9:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29869:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12156, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "29869:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12162, + "initialValue": { + "arguments": [ + { + "id": 12160, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12115, + "src": "29897:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29889:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 12158, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "29889:7:48", + "typeDescriptions": {} + } + }, + "id": 12161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29889:16:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "29869:36:48" + }, + { + "assignments": [ + 12164 + ], + "declarations": [ + { + "constant": false, + "id": 12164, + "mutability": "mutable", + "name": "labelhashFromData", + "nameLocation": "29923:17:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "29915:25:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12163, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "29915:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12171, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12168, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12135, + "src": "29959:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12167, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "29953:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 12166, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "29953:5:48", + "typeDescriptions": {} + } + }, + "id": 12169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29953:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12165, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "29943:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 12170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29943:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "29915:51:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 12174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12172, + "name": "labelhashFromData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12164, + "src": "29981:17:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 12173, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12157, + "src": "30002:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "29981:30:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12181, + "nodeType": "IfStatement", + "src": "29977:111:48", + "trueBody": { + "id": 12180, + "nodeType": "Block", + "src": "30013:75:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12176, + "name": "labelhashFromData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12164, + "src": "30048:17:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12177, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12157, + "src": "30067:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12175, + "name": "LabelMismatch", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10143, + "src": "30034:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32) pure" + } + }, + "id": 12178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30034:43:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12179, + "nodeType": "RevertStatement", + "src": "30027:50:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 12187, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12157, + "src": "30197:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "30189:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12185, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30189:7:48", + "typeDescriptions": {} + } + }, + "id": 12188, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30189:18:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 12191, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "30217:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 12190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "30209:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12189, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30209:7:48", + "typeDescriptions": {} + } + }, + "id": 12192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30209:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12182, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "30171:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 12184, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "30181:7:48", + "memberName": "reclaim", + "nodeType": "MemberAccess", + "referencedDeclaration": 4429, + "src": "30171:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (uint256,address) external" + } + }, + "id": 12193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30171:52:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12194, + "nodeType": "ExpressionStatement", + "src": "30171:52:48" + }, + { + "assignments": [ + 12196 + ], + "declarations": [ + { + "constant": false, + "id": 12196, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "30241:6:48", + "nodeType": "VariableDeclaration", + "scope": 12221, + "src": "30234:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12195, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "30234:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 12206, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 12205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 12201, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12115, + "src": "30279:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12199, + "name": "registrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10186, + "src": "30257:9:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IBaseRegistrar_$4430", + "typeString": "contract IBaseRegistrar" + } + }, + "id": 12200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "30267:11:48", + "memberName": "nameExpires", + "nodeType": "MemberAccess", + "referencedDeclaration": 4393, + "src": "30257:21:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) view external returns (uint256)" + } + }, + "id": 12202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30257:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "30250:6:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 12197, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "30250:6:48", + "typeDescriptions": {} + } + }, + "id": 12203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30250:38:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 12204, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "30291:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "30250:53:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "30234:69:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12208, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12135, + "src": "30326:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12209, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12137, + "src": "30333:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12210, + "name": "ownerControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12139, + "src": "30340:20:48", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 12211, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12196, + "src": "30362:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 12212, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12141, + "src": "30370:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 12207, + "name": "_wrapETH2LD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12822, + "src": "30314:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$_t_address_$returns$__$", + "typeString": "function (string memory,address,uint32,uint64,address)" + } + }, + "id": 12213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30314:65:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12214, + "nodeType": "ExpressionStatement", + "src": "30314:65:48" + }, + { + "expression": { + "expression": { + "expression": { + "arguments": [ + { + "id": 12216, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12111, + "src": "30413:2:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 12215, + "name": "IERC721Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14484, + "src": "30397:15:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$14484_$", + "typeString": "type(contract IERC721Receiver)" + } + }, + "id": 12217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30397:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC721Receiver_$14484", + "typeString": "contract IERC721Receiver" + } + }, + "id": 12218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "30417:16:48", + "memberName": "onERC721Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 14483, + "src": "30397:36:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256,bytes memory) external returns (bytes4)" + } + }, + "id": 12219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "30434:8:48", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "30397:45:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "functionReturnParameters": 12121, + "id": 12220, + "nodeType": "Return", + "src": "30390:52:48" + } + ] + }, + "functionSelector": "150b7a02", + "id": 12222, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "onERC721Received", + "nameLocation": "29365:16:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12118, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12111, + "mutability": "mutable", + "name": "to", + "nameLocation": "29399:2:48", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "29391:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12110, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29391:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12113, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "29411:7:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12112, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29411:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12115, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "29436:7:48", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "29428:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12114, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29428:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12117, + "mutability": "mutable", + "name": "data", + "nameLocation": "29468:4:48", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "29453:19:48", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12116, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "29453:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "29381:97:48" + }, + "returnParameters": { + "id": 12121, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12120, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "29495:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 12119, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "29495:6:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "29494:8:48" + }, + "scope": 13029, + "src": "29356:1093:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 9254 + ], + "body": { + "id": 12287, + "nodeType": "Block", + "src": "30603:798:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12232, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12226, + "src": "30706:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12233, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "30714:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "30706:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 12235, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "30728:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "30706:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12242, + "nodeType": "IfStatement", + "src": "30702:85:48", + "trueBody": { + "id": 12241, + "nodeType": "Block", + "src": "30740:47:48", + "statements": [ + { + "expression": { + "id": 12239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12237, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12228, + "src": "30754:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 12238, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "30764:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "30754:22:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 12240, + "nodeType": "ExpressionStatement", + "src": "30754:22:48" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12243, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12228, + "src": "30801:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 12244, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "30810:5:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 12245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "30816:9:48", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "30810:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "30801:24:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 12273, + "nodeType": "Block", + "src": "31042:189:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12259, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12226, + "src": "31119:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12260, + "name": "CANNOT_TRANSFER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9706, + "src": "31127:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "31119:23:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 12262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31146:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "31119:28:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12272, + "nodeType": "IfStatement", + "src": "31115:106:48", + "trueBody": { + "id": 12271, + "nodeType": "Block", + "src": "31149:72:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "arguments": [ + { + "id": 12267, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12224, + "src": "31202:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "31194:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 12265, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "31194:7:48", + "typeDescriptions": {} + } + }, + "id": 12268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31194:11:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12264, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "31174:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 12269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31174:32:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12270, + "nodeType": "RevertStatement", + "src": "31167:39:48" + } + ] + } + } + ] + }, + "id": 12274, + "nodeType": "IfStatement", + "src": "30797:434:48", + "trueBody": { + "id": 12258, + "nodeType": "Block", + "src": "30827:209:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12247, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12226, + "src": "30905:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12248, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "30913:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "30905:29:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 12250, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30938:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "30905:34:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12257, + "nodeType": "IfStatement", + "src": "30901:125:48", + "trueBody": { + "id": 12256, + "nodeType": "Block", + "src": "30941:85:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "455243313135353a20696e73756666696369656e742062616c616e636520666f72207472616e73666572", + "id": 12253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30966:44:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + }, + "value": "ERC1155: insufficient balance for transfer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "typeString": "literal_string \"ERC1155: insufficient balance for transfer\"" + } + ], + "id": 12252, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "30959:6:48", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 12254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30959:52:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12255, + "nodeType": "ExpressionStatement", + "src": "30959:52:48" + } + ] + } + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12275, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12226, + "src": "31315:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12276, + "name": "CANNOT_APPROVE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9718, + "src": "31323:14:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "31315:22:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 12278, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31341:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "31315:27:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12286, + "nodeType": "IfStatement", + "src": "31311:84:48", + "trueBody": { + "id": 12285, + "nodeType": "Block", + "src": "31344:51:48", + "statements": [ + { + "expression": { + "id": 12283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "31358:26:48", + "subExpression": { + "baseExpression": { + "id": 12280, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8726, + "src": "31365:15:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 12282, + "indexExpression": { + "id": 12281, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12224, + "src": "31381:2:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "31365:19:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12284, + "nodeType": "ExpressionStatement", + "src": "31358:26:48" + } + ] + } + } + ] + }, + "id": 12288, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_beforeTransfer", + "nameLocation": "30498:15:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 12230, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "30594:8:48" + }, + "parameters": { + "id": 12229, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12224, + "mutability": "mutable", + "name": "id", + "nameLocation": "30531:2:48", + "nodeType": "VariableDeclaration", + "scope": 12288, + "src": "30523:10:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12223, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30523:7:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12226, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "30550:5:48", + "nodeType": "VariableDeclaration", + "scope": 12288, + "src": "30543:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12225, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "30543:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12228, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "30572:6:48", + "nodeType": "VariableDeclaration", + "scope": 12288, + "src": "30565:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12227, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "30565:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "30513:71:48" + }, + "returnParameters": { + "id": 12231, + "nodeType": "ParameterList", + "parameters": [], + "src": "30603:0:48" + }, + "scope": 13029, + "src": "30489:912:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 9267 + ], + "body": { + "id": 12330, + "nodeType": "Block", + "src": "31559:236:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12302, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12294, + "src": "31573:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 12303, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "31582:5:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 12304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "31588:9:48", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "31582:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "31573:24:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12325, + "nodeType": "IfStatement", + "src": "31569:188:48", + "trueBody": { + "id": 12324, + "nodeType": "Block", + "src": "31599:158:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12306, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12292, + "src": "31617:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12307, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "31625:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "31617:29:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 12309, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "31650:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "31617:54:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12319, + "nodeType": "IfStatement", + "src": "31613:111:48", + "trueBody": { + "id": 12318, + "nodeType": "Block", + "src": "31673:51:48", + "statements": [ + { + "expression": { + "id": 12316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12311, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12290, + "src": "31691:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "30", + "id": 12314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31707:1:48", + "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": 12313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "31699:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12312, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31699:7:48", + "typeDescriptions": {} + } + }, + "id": 12315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31699:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "31691:18:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 12317, + "nodeType": "ExpressionStatement", + "src": "31691:18:48" + } + ] + } + }, + { + "expression": { + "id": 12322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12320, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12292, + "src": "31737:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 12321, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31745:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "31737:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "id": 12323, + "nodeType": "ExpressionStatement", + "src": "31737:9:48" + } + ] + } + }, + { + "expression": { + "components": [ + { + "id": 12326, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12290, + "src": "31775:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12327, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12292, + "src": "31782:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 12328, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "31774:14:48", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$", + "typeString": "tuple(address,uint32)" + } + }, + "functionReturnParameters": 12301, + "id": 12329, + "nodeType": "Return", + "src": "31767:21:48" + } + ] + }, + "id": 12331, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_clearOwnerAndFuses", + "nameLocation": "31416:19:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 12296, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "31524:8:48" + }, + "parameters": { + "id": 12295, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12290, + "mutability": "mutable", + "name": "owner", + "nameLocation": "31453:5:48", + "nodeType": "VariableDeclaration", + "scope": 12331, + "src": "31445:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12289, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31445:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12292, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "31475:5:48", + "nodeType": "VariableDeclaration", + "scope": 12331, + "src": "31468:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12291, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "31468:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12294, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "31497:6:48", + "nodeType": "VariableDeclaration", + "scope": 12331, + "src": "31490:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12293, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "31490:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "31435:74:48" + }, + "returnParameters": { + "id": 12301, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12298, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12331, + "src": "31542:7:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12297, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31542:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12300, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12331, + "src": "31551:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12299, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "31551:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "31541:17:48" + }, + "scope": 13029, + "src": "31407:388:48", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12348, + "nodeType": "Block", + "src": "31906:68:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 12343, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12333, + "src": "31950:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12344, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12335, + "src": "31956:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 12341, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31933:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31937:12:48", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "31933:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 12345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31933:33:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12340, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "31923:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 12346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31923:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 12339, + "id": 12347, + "nodeType": "Return", + "src": "31916:51:48" + } + ] + }, + "id": 12349, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_makeNode", + "nameLocation": "31810:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12333, + "mutability": "mutable", + "name": "node", + "nameLocation": "31837:4:48", + "nodeType": "VariableDeclaration", + "scope": 12349, + "src": "31829:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12332, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "31829:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12335, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "31859:9:48", + "nodeType": "VariableDeclaration", + "scope": 12349, + "src": "31851:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12334, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "31851:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "31819:55:48" + }, + "returnParameters": { + "id": 12339, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12338, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12349, + "src": "31897:7:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12337, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "31897:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "31896:9:48" + }, + "scope": 13029, + "src": "31801:173:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 12397, + "nodeType": "Block", + "src": "32102:257:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "id": 12360, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12351, + "src": "32122:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32116:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 12358, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32116:5:48", + "typeDescriptions": {} + } + }, + "id": 12361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32116:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "32129:6:48", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "32116:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "31", + "id": 12363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32138:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "32116:23:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12369, + "nodeType": "IfStatement", + "src": "32112:76:48", + "trueBody": { + "id": 12368, + "nodeType": "Block", + "src": "32141:47:48", + "statements": [ + { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 12365, + "name": "LabelTooShort", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10145, + "src": "32162:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 12366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32162:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12367, + "nodeType": "RevertStatement", + "src": "32155:22:48" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "id": 12372, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12351, + "src": "32207:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12371, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32201:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 12370, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32201:5:48", + "typeDescriptions": {} + } + }, + "id": 12373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32201:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "32214:6:48", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "32201:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "323535", + "id": 12375, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32223:3:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "255" + }, + "src": "32201:25:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12382, + "nodeType": "IfStatement", + "src": "32197:82:48", + "trueBody": { + "id": 12381, + "nodeType": "Block", + "src": "32228:51:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12378, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12351, + "src": "32262:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12377, + "name": "LabelTooLong", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10149, + "src": "32249:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 12379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32249:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12380, + "nodeType": "RevertStatement", + "src": "32242:26:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "arguments": [ + { + "id": 12389, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12351, + "src": "32324:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32318:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 12387, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32318:5:48", + "typeDescriptions": {} + } + }, + "id": 12390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32318:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 12391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "32331:6:48", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "32318:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12386, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32312:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 12385, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "32312:5:48", + "typeDescriptions": {} + } + }, + "id": 12392, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32312:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "id": 12393, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12351, + "src": "32340:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12394, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12353, + "src": "32347:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 12383, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32295:3:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32299:12:48", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "32295:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 12395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32295:57:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 12357, + "id": 12396, + "nodeType": "Return", + "src": "32288:64:48" + } + ] + }, + "id": 12398, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_addLabel", + "nameLocation": "31989:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12354, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12351, + "mutability": "mutable", + "name": "label", + "nameLocation": "32022:5:48", + "nodeType": "VariableDeclaration", + "scope": 12398, + "src": "32008:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12350, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32008:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12353, + "mutability": "mutable", + "name": "name", + "nameLocation": "32050:4:48", + "nodeType": "VariableDeclaration", + "scope": 12398, + "src": "32037:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12352, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32037:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "31998:62:48" + }, + "returnParameters": { + "id": 12357, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12356, + "mutability": "mutable", + "name": "ret", + "nameLocation": "32097:3:48", + "nodeType": "VariableDeclaration", + "scope": 12398, + "src": "32084:16:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12355, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32084:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "32083:18:48" + }, + "scope": 13029, + "src": "31980:379:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 9398 + ], + "body": { + "id": 12457, + "nodeType": "Block", + "src": "32494:345:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12411, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12400, + "src": "32522:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12412, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12404, + "src": "32528:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 12410, + "name": "_canFusesBeBurned", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12956, + "src": "32504:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32) pure" + } + }, + "id": 12413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32504:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12414, + "nodeType": "ExpressionStatement", + "src": "32504:30:48" + }, + { + "assignments": [ + 12416, + null, + null + ], + "declarations": [ + { + "constant": false, + "id": 12416, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "32553:8:48", + "nodeType": "VariableDeclaration", + "scope": 12457, + "src": "32545:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12415, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32545:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + null, + null + ], + "id": 12424, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12421, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12400, + "src": "32591:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32583:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12419, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32583:7:48", + "typeDescriptions": {} + } + }, + "id": 12422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32583:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12417, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "32569:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 12418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "32575:7:48", + "memberName": "getData", + "nodeType": "MemberAccess", + "referencedDeclaration": 9027, + "src": "32569:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 12423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32569:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "32544:53:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12425, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12416, + "src": "32611:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 12428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32631:1:48", + "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": 12427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32623:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32623:7:48", + "typeDescriptions": {} + } + }, + "id": 12429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32623:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "32611:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12447, + "nodeType": "IfStatement", + "src": "32607:177:48", + "trueBody": { + "id": 12446, + "nodeType": "Block", + "src": "32635:149:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 12434, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12400, + "src": "32717:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32709:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32709:7:48", + "typeDescriptions": {} + } + }, + "id": 12435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32709:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12431, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9451, + "src": "32703:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 12436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32703:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12437, + "nodeType": "ExpressionStatement", + "src": "32703:20:48" + }, + { + "eventCall": { + "arguments": [ + { + "id": 12439, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12400, + "src": "32756:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 12442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32770:1:48", + "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": 12441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "32762:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12440, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32762:7:48", + "typeDescriptions": {} + } + }, + "id": 12443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32762:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 12438, + "name": "NameUnwrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9762, + "src": "32742:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 12444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32742:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12445, + "nodeType": "EmitStatement", + "src": "32737:36:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 12451, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12400, + "src": "32805:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12452, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12402, + "src": "32811:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12453, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12404, + "src": "32818:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12454, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12406, + "src": "32825:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 12448, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "32793:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 12450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "32799:5:48", + "memberName": "_mint", + "nodeType": "MemberAccess", + "referencedDeclaration": 9398, + "src": "32793:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64)" + } + }, + "id": 12455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32793:39:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12456, + "nodeType": "ExpressionStatement", + "src": "32793:39:48" + } + ] + }, + "id": 12458, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_mint", + "nameLocation": "32374:5:48", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 12408, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "32485:8:48" + }, + "parameters": { + "id": 12407, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12400, + "mutability": "mutable", + "name": "node", + "nameLocation": "32397:4:48", + "nodeType": "VariableDeclaration", + "scope": 12458, + "src": "32389:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12399, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "32389:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12402, + "mutability": "mutable", + "name": "owner", + "nameLocation": "32419:5:48", + "nodeType": "VariableDeclaration", + "scope": 12458, + "src": "32411:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12401, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32411:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12404, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "32441:5:48", + "nodeType": "VariableDeclaration", + "scope": 12458, + "src": "32434:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12403, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "32434:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12406, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "32463:6:48", + "nodeType": "VariableDeclaration", + "scope": 12458, + "src": "32456:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12405, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "32456:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "32379:96:48" + }, + "returnParameters": { + "id": 12409, + "nodeType": "ParameterList", + "parameters": [], + "src": "32494:0:48" + }, + "scope": 13029, + "src": "32365:474:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12486, + "nodeType": "Block", + "src": "32999:124:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12472, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12460, + "src": "33015:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12473, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12464, + "src": "33021:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12474, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12466, + "src": "33035:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12475, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12468, + "src": "33042:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12471, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12458 + ], + "referencedDeclaration": 12458, + "src": "33009:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64)" + } + }, + "id": 12476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33009:40:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12477, + "nodeType": "ExpressionStatement", + "src": "33009:40:48" + }, + { + "eventCall": { + "arguments": [ + { + "id": 12479, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12460, + "src": "33076:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12480, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12462, + "src": "33082:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 12481, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12464, + "src": "33088:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12482, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12466, + "src": "33102:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12483, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12468, + "src": "33109:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12478, + "name": "NameWrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9756, + "src": "33064:11:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,address,uint32,uint64)" + } + }, + "id": 12484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33064:52:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12485, + "nodeType": "EmitStatement", + "src": "33059:57:48" + } + ] + }, + "id": 12487, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_wrap", + "nameLocation": "32854:5:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12469, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12460, + "mutability": "mutable", + "name": "node", + "nameLocation": "32877:4:48", + "nodeType": "VariableDeclaration", + "scope": 12487, + "src": "32869:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12459, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "32869:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12462, + "mutability": "mutable", + "name": "name", + "nameLocation": "32904:4:48", + "nodeType": "VariableDeclaration", + "scope": 12487, + "src": "32891:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12461, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "32891:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12464, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "32926:12:48", + "nodeType": "VariableDeclaration", + "scope": 12487, + "src": "32918:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12463, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32918:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12466, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "32955:5:48", + "nodeType": "VariableDeclaration", + "scope": 12487, + "src": "32948:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12465, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "32948:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12468, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "32977:6:48", + "nodeType": "VariableDeclaration", + "scope": 12487, + "src": "32970:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12467, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "32970:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "32859:130:48" + }, + "returnParameters": { + "id": 12470, + "nodeType": "ParameterList", + "parameters": [], + "src": "32999:0:48" + }, + "scope": 13029, + "src": "32845:278:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12519, + "nodeType": "Block", + "src": "33318:121:48", + "statements": [ + { + "assignments": [ + 12503 + ], + "declarations": [ + { + "constant": false, + "id": 12503, + "mutability": "mutable", + "name": "name", + "nameLocation": "33341:4:48", + "nodeType": "VariableDeclaration", + "scope": 12519, + "src": "33328:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "33328:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 12510, + "initialValue": { + "arguments": [ + { + "id": 12505, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12493, + "src": "33358:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "baseExpression": { + "id": 12506, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "33365:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12508, + "indexExpression": { + "id": 12507, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12489, + "src": "33371:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "33365:17:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + ], + "id": 12504, + "name": "_addLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12398, + "src": "33348:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory,bytes memory) pure returns (bytes memory)" + } + }, + "id": 12509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33348:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "33328:55:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12512, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12491, + "src": "33399:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12513, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12503, + "src": "33405:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 12514, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12495, + "src": "33411:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12515, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12497, + "src": "33418:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12516, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12499, + "src": "33425:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12511, + "name": "_wrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12487, + "src": "33393:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,address,uint32,uint64)" + } + }, + "id": 12517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33393:39:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12518, + "nodeType": "ExpressionStatement", + "src": "33393:39:48" + } + ] + }, + "id": 12520, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_storeNameAndWrap", + "nameLocation": "33138:17:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12489, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "33173:10:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33165:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12488, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33165:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12491, + "mutability": "mutable", + "name": "node", + "nameLocation": "33201:4:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33193:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12490, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33193:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12493, + "mutability": "mutable", + "name": "label", + "nameLocation": "33229:5:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33215:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12492, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33215:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12495, + "mutability": "mutable", + "name": "owner", + "nameLocation": "33252:5:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33244:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33244:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12497, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "33274:5:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33267:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12496, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "33267:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12499, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "33296:6:48", + "nodeType": "VariableDeclaration", + "scope": 12520, + "src": "33289:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12498, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "33289:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "33155:153:48" + }, + "returnParameters": { + "id": 12501, + "nodeType": "ParameterList", + "parameters": [], + "src": "33318:0:48" + }, + "scope": 13029, + "src": "33129:310:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12548, + "nodeType": "Block", + "src": "33582:121:48", + "statements": [ + { + "assignments": [ + 12532 + ], + "declarations": [ + { + "constant": false, + "id": 12532, + "mutability": "mutable", + "name": "name", + "nameLocation": "33605:4:48", + "nodeType": "VariableDeclaration", + "scope": 12548, + "src": "33592:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12531, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "33592:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 12539, + "initialValue": { + "arguments": [ + { + "id": 12534, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12526, + "src": "33622:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "baseExpression": { + "id": 12535, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "33629:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12537, + "indexExpression": { + "id": 12536, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12522, + "src": "33635:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "33629:17:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + ], + "id": 12533, + "name": "_addLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12398, + "src": "33612:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory,bytes memory) pure returns (bytes memory)" + } + }, + "id": 12538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33612:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "33592:55:48" + }, + { + "expression": { + "id": 12544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 12540, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "33657:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12542, + "indexExpression": { + "id": 12541, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12524, + "src": "33663:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "33657:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 12543, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12532, + "src": "33671:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "33657:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 12545, + "nodeType": "ExpressionStatement", + "src": "33657:18:48" + }, + { + "expression": { + "id": 12546, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12532, + "src": "33692:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 12530, + "id": 12547, + "nodeType": "Return", + "src": "33685:11:48" + } + ] + }, + "id": 12549, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_saveLabel", + "nameLocation": "33454:10:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12527, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12522, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "33482:10:48", + "nodeType": "VariableDeclaration", + "scope": 12549, + "src": "33474:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12521, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33474:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12524, + "mutability": "mutable", + "name": "node", + "nameLocation": "33510:4:48", + "nodeType": "VariableDeclaration", + "scope": 12549, + "src": "33502:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12523, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33502:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12526, + "mutability": "mutable", + "name": "label", + "nameLocation": "33538:5:48", + "nodeType": "VariableDeclaration", + "scope": 12549, + "src": "33524:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12525, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33524:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "33464:85:48" + }, + "returnParameters": { + "id": 12530, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12529, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12549, + "src": "33568:12:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12528, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "33568:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "33567:14:48" + }, + "scope": 13029, + "src": "33445:258:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12638, + "nodeType": "Block", + "src": "33892:498:48", + "statements": [ + { + "assignments": [ + 12565, + 12567, + 12569 + ], + "declarations": [ + { + "constant": false, + "id": 12565, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "33911:8:48", + "nodeType": "VariableDeclaration", + "scope": 12638, + "src": "33903:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33903:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12567, + "mutability": "mutable", + "name": "oldFuses", + "nameLocation": "33928:8:48", + "nodeType": "VariableDeclaration", + "scope": 12638, + "src": "33921:15:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12566, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "33921:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12569, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "33945:9:48", + "nodeType": "VariableDeclaration", + "scope": 12638, + "src": "33938:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12568, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "33938:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 12576, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12573, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "33987:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12572, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "33979:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12571, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33979:7:48", + "typeDescriptions": {} + } + }, + "id": 12574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33979:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12570, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "33958:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 12575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33958:44:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "33902:100:48" + }, + { + "assignments": [ + 12578 + ], + "declarations": [ + { + "constant": false, + "id": 12578, + "mutability": "mutable", + "name": "name", + "nameLocation": "34025:4:48", + "nodeType": "VariableDeclaration", + "scope": 12638, + "src": "34012:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12577, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "34012:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 12585, + "initialValue": { + "arguments": [ + { + "id": 12580, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12555, + "src": "34042:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "baseExpression": { + "id": 12581, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "34049:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12583, + "indexExpression": { + "id": 12582, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12551, + "src": "34055:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "34049:17:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + ], + "id": 12579, + "name": "_addLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12398, + "src": "34032:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory,bytes memory) pure returns (bytes memory)" + } + }, + "id": 12584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34032:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "34012:55:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 12591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 12586, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "34081:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12588, + "indexExpression": { + "id": 12587, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "34087:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "34081:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 12589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "34093:6:48", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "34081:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 12590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34103:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "34081:23:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12599, + "nodeType": "IfStatement", + "src": "34077:72:48", + "trueBody": { + "id": 12598, + "nodeType": "Block", + "src": "34106:43:48", + "statements": [ + { + "expression": { + "id": 12596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 12592, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "34120:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12594, + "indexExpression": { + "id": 12593, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "34126:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "34120:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 12595, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12578, + "src": "34134:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "34120:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 12597, + "nodeType": "ExpressionStatement", + "src": "34120:18:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 12601, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "34168:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12602, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12565, + "src": "34174:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12603, + "name": "oldFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12567, + "src": "34184:8:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12604, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12559, + "src": "34195:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "34184:16:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12606, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12569, + "src": "34202:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 12607, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12561, + "src": "34213:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12600, + "name": "_setFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12895, + "src": "34158:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64,uint64)" + } + }, + "id": 12608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34158:62:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12609, + "nodeType": "ExpressionStatement", + "src": "34158:62:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12610, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12557, + "src": "34234:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 12613, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34251:1:48", + "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": 12612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "34243:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12611, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34243:7:48", + "typeDescriptions": {} + } + }, + "id": 12614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34243:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "34234:19:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 12636, + "nodeType": "Block", + "src": "34311:73:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12626, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12565, + "src": "34335:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12627, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12557, + "src": "34345:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 12630, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "34360:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12629, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "34352:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12628, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34352:7:48", + "typeDescriptions": {} + } + }, + "id": 12631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34352:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 12632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34367:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + { + "hexValue": "", + "id": 12633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34370:2:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 12625, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9524, + "src": "34325:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,uint256,bytes memory)" + } + }, + "id": 12634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34325:48:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12635, + "nodeType": "ExpressionStatement", + "src": "34325:48:48" + } + ] + }, + "id": 12637, + "nodeType": "IfStatement", + "src": "34230:154:48", + "trueBody": { + "id": 12624, + "nodeType": "Block", + "src": "34255:50:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12617, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12553, + "src": "34277:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 12620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34291:1:48", + "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": 12619, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "34283:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34283:7:48", + "typeDescriptions": {} + } + }, + "id": 12621, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34283:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 12616, + "name": "_unwrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12859, + "src": "34269:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 12622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34269:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12623, + "nodeType": "ExpressionStatement", + "src": "34269:25:48" + } + ] + } + } + ] + }, + "id": 12639, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_updateName", + "nameLocation": "33718:11:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12562, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12551, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "33747:10:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33739:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12550, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33739:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12553, + "mutability": "mutable", + "name": "node", + "nameLocation": "33775:4:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33767:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12552, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "33767:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12555, + "mutability": "mutable", + "name": "label", + "nameLocation": "33803:5:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33789:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12554, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33789:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12557, + "mutability": "mutable", + "name": "owner", + "nameLocation": "33826:5:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33818:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12556, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33818:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12559, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "33848:5:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33841:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12558, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "33841:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12561, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "33870:6:48", + "nodeType": "VariableDeclaration", + "scope": 12639, + "src": "33863:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12560, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "33863:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "33729:153:48" + }, + "returnParameters": { + "id": 12563, + "nodeType": "ParameterList", + "parameters": [], + "src": "33892:0:48" + }, + "scope": 13029, + "src": "33709:681:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12684, + "nodeType": "Block", + "src": "34604:261:48", + "statements": [ + { + "assignments": [ + null, + null, + 12653 + ], + "declarations": [ + null, + null, + { + "constant": false, + "id": 12653, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "34626:9:48", + "nodeType": "VariableDeclaration", + "scope": 12684, + "src": "34619:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12652, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "34619:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 12660, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12657, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12643, + "src": "34655:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "34647:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12655, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34647:7:48", + "typeDescriptions": {} + } + }, + "id": 12658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34647:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12654, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "34639:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 12659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34639:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "34614:47:48" + }, + { + "assignments": [ + null, + 12662, + 12664 + ], + "declarations": [ + null, + { + "constant": false, + "id": 12662, + "mutability": "mutable", + "name": "parentFuses", + "nameLocation": "34681:11:48", + "nodeType": "VariableDeclaration", + "scope": 12684, + "src": "34674:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12661, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "34674:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12664, + "mutability": "mutable", + "name": "maxExpiry", + "nameLocation": "34701:9:48", + "nodeType": "VariableDeclaration", + "scope": 12684, + "src": "34694:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12663, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "34694:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 12671, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12668, + "name": "parentNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12641, + "src": "34730:10:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "34722:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12666, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34722:7:48", + "typeDescriptions": {} + } + }, + "id": 12669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34722:19:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12665, + "name": "getData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10454 + ], + "referencedDeclaration": 10454, + "src": "34714:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "function (uint256) view returns (address,uint32,uint64)" + } + }, + "id": 12670, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34714:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint32_$_t_uint64_$", + "typeString": "tuple(address,uint32,uint64)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "34671:71:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12673, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12643, + "src": "34770:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12674, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12645, + "src": "34776:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12675, + "name": "parentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12662, + "src": "34783:11:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 12672, + "name": "_checkParentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12720, + "src": "34752:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32,uint32) pure" + } + }, + "id": 12676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34752:43:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12677, + "nodeType": "ExpressionStatement", + "src": "34752:43:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12679, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12647, + "src": "34829:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 12680, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12653, + "src": "34837:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 12681, + "name": "maxExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12664, + "src": "34848:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12678, + "name": "_normaliseExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12752, + "src": "34812:16:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_uint64_$_t_uint64_$returns$_t_uint64_$", + "typeString": "function (uint64,uint64,uint64) pure returns (uint64)" + } + }, + "id": 12682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34812:46:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "functionReturnParameters": 12651, + "id": 12683, + "nodeType": "Return", + "src": "34805:53:48" + } + ] + }, + "id": 12685, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkParentFusesAndExpiry", + "nameLocation": "34445:26:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12641, + "mutability": "mutable", + "name": "parentNode", + "nameLocation": "34489:10:48", + "nodeType": "VariableDeclaration", + "scope": 12685, + "src": "34481:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12640, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "34481:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12643, + "mutability": "mutable", + "name": "node", + "nameLocation": "34517:4:48", + "nodeType": "VariableDeclaration", + "scope": 12685, + "src": "34509:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12642, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "34509:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12645, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "34538:5:48", + "nodeType": "VariableDeclaration", + "scope": 12685, + "src": "34531:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12644, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "34531:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12647, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "34560:6:48", + "nodeType": "VariableDeclaration", + "scope": 12685, + "src": "34553:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12646, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "34553:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "34471:101:48" + }, + "returnParameters": { + "id": 12651, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12650, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12685, + "src": "34596:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12649, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "34596:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "34595:8:48" + }, + "scope": 13029, + "src": "34436:429:48", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12719, + "nodeType": "Block", + "src": "34990:301:48", + "statements": [ + { + "assignments": [ + 12695 + ], + "declarations": [ + { + "constant": false, + "id": 12695, + "mutability": "mutable", + "name": "isBurningParentControlledFuses", + "nameLocation": "35005:30:48", + "nodeType": "VariableDeclaration", + "scope": 12719, + "src": "35000:35:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12694, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35000:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 12701, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12696, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12689, + "src": "35038:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12697, + "name": "PARENT_CONTROLLED_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9739, + "src": "35046:23:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "35038:31:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 12699, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35085:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "35038:48:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "35000:86:48" + }, + { + "assignments": [ + 12703 + ], + "declarations": [ + { + "constant": false, + "id": 12703, + "mutability": "mutable", + "name": "parentHasNotBurnedCU", + "nameLocation": "35102:20:48", + "nodeType": "VariableDeclaration", + "scope": 12719, + "src": "35097:25:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12702, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35097:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 12709, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12704, + "name": "parentFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12691, + "src": "35125:11:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12705, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "35139:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "35125:27:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 12707, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35156:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "35125:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "35097:60:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 12712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12710, + "name": "isBurningParentControlledFuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12695, + "src": "35172:30:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 12711, + "name": "parentHasNotBurnedCU", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12703, + "src": "35206:20:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "35172:54:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12718, + "nodeType": "IfStatement", + "src": "35168:117:48", + "trueBody": { + "id": 12717, + "nodeType": "Block", + "src": "35228:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12714, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12687, + "src": "35269:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12713, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "35249:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 12715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35249:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12716, + "nodeType": "RevertStatement", + "src": "35242:32:48" + } + ] + } + } + ] + }, + "id": 12720, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkParentFuses", + "nameLocation": "34880:17:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12687, + "mutability": "mutable", + "name": "node", + "nameLocation": "34915:4:48", + "nodeType": "VariableDeclaration", + "scope": 12720, + "src": "34907:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12686, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "34907:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12689, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "34936:5:48", + "nodeType": "VariableDeclaration", + "scope": 12720, + "src": "34929:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12688, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "34929:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12691, + "mutability": "mutable", + "name": "parentFuses", + "nameLocation": "34958:11:48", + "nodeType": "VariableDeclaration", + "scope": 12720, + "src": "34951:18:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12690, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "34951:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "34897:78:48" + }, + "returnParameters": { + "id": 12693, + "nodeType": "ParameterList", + "parameters": [], + "src": "34990:0:48" + }, + "scope": 13029, + "src": "34871:420:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12751, + "nodeType": "Block", + "src": "35434:352:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 12733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12731, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12722, + "src": "35568:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 12732, + "name": "maxExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12726, + "src": "35577:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "35568:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12739, + "nodeType": "IfStatement", + "src": "35564:67:48", + "trueBody": { + "id": 12738, + "nodeType": "Block", + "src": "35588:43:48", + "statements": [ + { + "expression": { + "id": 12736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12734, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12722, + "src": "35602:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 12735, + "name": "maxExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12726, + "src": "35611:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "35602:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 12737, + "nodeType": "ExpressionStatement", + "src": "35602:18:48" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 12742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12740, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12722, + "src": "35693:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 12741, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12724, + "src": "35702:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "35693:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12748, + "nodeType": "IfStatement", + "src": "35689:67:48", + "trueBody": { + "id": 12747, + "nodeType": "Block", + "src": "35713:43:48", + "statements": [ + { + "expression": { + "id": 12745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12743, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12722, + "src": "35727:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 12744, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12724, + "src": "35736:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "35727:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 12746, + "nodeType": "ExpressionStatement", + "src": "35727:18:48" + } + ] + } + }, + { + "expression": { + "id": 12749, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12722, + "src": "35773:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "functionReturnParameters": 12730, + "id": 12750, + "nodeType": "Return", + "src": "35766:13:48" + } + ] + }, + "id": 12752, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_normaliseExpiry", + "nameLocation": "35306:16:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12727, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12722, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "35339:6:48", + "nodeType": "VariableDeclaration", + "scope": 12752, + "src": "35332:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12721, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "35332:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12724, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "35362:9:48", + "nodeType": "VariableDeclaration", + "scope": 12752, + "src": "35355:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12723, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "35355:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12726, + "mutability": "mutable", + "name": "maxExpiry", + "nameLocation": "35388:9:48", + "nodeType": "VariableDeclaration", + "scope": 12752, + "src": "35381:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12725, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "35381:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "35322:81:48" + }, + "returnParameters": { + "id": 12730, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12729, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 12752, + "src": "35426:6:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12728, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "35426:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "35425:8:48" + }, + "scope": 13029, + "src": "35297:489:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 12821, + "nodeType": "Block", + "src": "35957:521:48", + "statements": [ + { + "assignments": [ + 12766 + ], + "declarations": [ + { + "constant": false, + "id": 12766, + "mutability": "mutable", + "name": "labelhash", + "nameLocation": "35975:9:48", + "nodeType": "VariableDeclaration", + "scope": 12821, + "src": "35967:17:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12765, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "35967:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12773, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 12770, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12754, + "src": "36003:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 12769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "35997:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 12768, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "35997:5:48", + "typeDescriptions": {} + } + }, + "id": 12771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35997:12:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12767, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "35987:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 12772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35987:23:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "35967:43:48" + }, + { + "assignments": [ + 12775 + ], + "declarations": [ + { + "constant": false, + "id": 12775, + "mutability": "mutable", + "name": "node", + "nameLocation": "36028:4:48", + "nodeType": "VariableDeclaration", + "scope": 12821, + "src": "36020:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12774, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "36020:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 12780, + "initialValue": { + "arguments": [ + { + "id": 12777, + "name": "ETH_NODE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "36045:8:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12778, + "name": "labelhash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12766, + "src": "36055:9:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12776, + "name": "_makeNode", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12349, + "src": "36035:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (bytes32,bytes32) pure returns (bytes32)" + } + }, + "id": 12779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36035:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "36020:45:48" + }, + { + "assignments": [ + 12782 + ], + "declarations": [ + { + "constant": false, + "id": 12782, + "mutability": "mutable", + "name": "name", + "nameLocation": "36147:4:48", + "nodeType": "VariableDeclaration", + "scope": 12821, + "src": "36134:17:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 12781, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "36134:5:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 12787, + "initialValue": { + "arguments": [ + { + "id": 12784, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12754, + "src": "36164:5:48", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "hexValue": "0365746800", + "id": 12785, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36171:13:48", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c65934a88d283a635602ca15e14e8b9a9a3d150eacacca3b07f4a85f5fdbface", + "typeString": "literal_string hex\"0365746800\"" + }, + "value": "\u0003eth\u0000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_stringliteral_c65934a88d283a635602ca15e14e8b9a9a3d150eacacca3b07f4a85f5fdbface", + "typeString": "literal_string hex\"0365746800\"" + } + ], + "id": 12783, + "name": "_addLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12398, + "src": "36154:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory,bytes memory) pure returns (bytes memory)" + } + }, + "id": 12786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36154:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "36134:51:48" + }, + { + "expression": { + "id": 12792, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 12788, + "name": "names", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10193, + "src": "36195:5:48", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", + "typeString": "mapping(bytes32 => bytes storage ref)" + } + }, + "id": 12790, + "indexExpression": { + "id": 12789, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12775, + "src": "36201:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "36195:11:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 12791, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12782, + "src": "36209:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "36195:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage", + "typeString": "bytes storage ref" + } + }, + "id": 12793, + "nodeType": "ExpressionStatement", + "src": "36195:18:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12795, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12775, + "src": "36243:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12796, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12782, + "src": "36261:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 12797, + "name": "wrappedOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12756, + "src": "36279:12:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12798, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12758, + "src": "36305:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12799, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "36313:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "36305:29:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12801, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "36337:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "36305:42:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12803, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12760, + "src": "36361:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12794, + "name": "_wrap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12487, + "src": "36224:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,bytes memory,address,uint32,uint64)" + } + }, + "id": 12804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36224:153:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12805, + "nodeType": "ExpressionStatement", + "src": "36224:153:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12806, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12762, + "src": "36392:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 12809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36412:1:48", + "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": 12808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "36404:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12807, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36404:7:48", + "typeDescriptions": {} + } + }, + "id": 12810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36404:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "36392:22:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12820, + "nodeType": "IfStatement", + "src": "36388:84:48", + "trueBody": { + "id": 12819, + "nodeType": "Block", + "src": "36416:56:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12815, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12775, + "src": "36446:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12816, + "name": "resolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12762, + "src": "36452:8:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12812, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "36430:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 12814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "36434:11:48", + "memberName": "setResolver", + "nodeType": "MemberAccess", + "referencedDeclaration": 4508, + "src": "36430:15:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 12817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36430:31:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12818, + "nodeType": "ExpressionStatement", + "src": "36430:31:48" + } + ] + } + } + ] + }, + "id": 12822, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_wrapETH2LD", + "nameLocation": "35801:11:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12754, + "mutability": "mutable", + "name": "label", + "nameLocation": "35836:5:48", + "nodeType": "VariableDeclaration", + "scope": 12822, + "src": "35822:19:48", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12753, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35822:6:48", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12756, + "mutability": "mutable", + "name": "wrappedOwner", + "nameLocation": "35859:12:48", + "nodeType": "VariableDeclaration", + "scope": 12822, + "src": "35851:20:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12755, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35851:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12758, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "35888:5:48", + "nodeType": "VariableDeclaration", + "scope": 12822, + "src": "35881:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12757, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "35881:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12760, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "35910:6:48", + "nodeType": "VariableDeclaration", + "scope": 12822, + "src": "35903:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12759, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "35903:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12762, + "mutability": "mutable", + "name": "resolver", + "nameLocation": "35934:8:48", + "nodeType": "VariableDeclaration", + "scope": 12822, + "src": "35926:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12761, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35926:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "35812:136:48" + }, + "returnParameters": { + "id": 12764, + "nodeType": "ParameterList", + "parameters": [], + "src": "35957:0:48" + }, + "scope": 13029, + "src": "35792:686:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 12858, + "nodeType": "Block", + "src": "36538:258:48", + "statements": [ + { + "condition": { + "arguments": [ + { + "id": 12830, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "36567:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12831, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "36573:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 12829, + "name": "allFusesBurned", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12010, + "src": "36552:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint32_$returns$_t_bool_$", + "typeString": "function (bytes32,uint32) view returns (bool)" + } + }, + "id": 12832, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36552:35:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12838, + "nodeType": "IfStatement", + "src": "36548:98:48", + "trueBody": { + "id": 12837, + "nodeType": "Block", + "src": "36589:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12834, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "36630:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12833, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "36610:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 12835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36610:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12836, + "nodeType": "RevertStatement", + "src": "36603:32:48" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 12842, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "36706:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12841, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "36698:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12840, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "36698:7:48", + "typeDescriptions": {} + } + }, + "id": 12843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36698:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12839, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9451, + "src": "36692:5:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 12844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36692:20:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12845, + "nodeType": "ExpressionStatement", + "src": "36692:20:48" + }, + { + "expression": { + "arguments": [ + { + "id": 12849, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "36735:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12850, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12826, + "src": "36741:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12846, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "36722:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 12848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "36726:8:48", + "memberName": "setOwner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4515, + "src": "36722:12:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address) external" + } + }, + "id": 12851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36722:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12852, + "nodeType": "ExpressionStatement", + "src": "36722:25:48" + }, + { + "eventCall": { + "arguments": [ + { + "id": 12854, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "36777:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12855, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12826, + "src": "36783:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 12853, + "name": "NameUnwrapped", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9762, + "src": "36763:13:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", + "typeString": "function (bytes32,address)" + } + }, + "id": 12856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36763:26:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12857, + "nodeType": "EmitStatement", + "src": "36758:31:48" + } + ] + }, + "id": 12859, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_unwrap", + "nameLocation": "36493:7:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12827, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12824, + "mutability": "mutable", + "name": "node", + "nameLocation": "36509:4:48", + "nodeType": "VariableDeclaration", + "scope": 12859, + "src": "36501:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12823, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "36501:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12826, + "mutability": "mutable", + "name": "owner", + "nameLocation": "36523:5:48", + "nodeType": "VariableDeclaration", + "scope": 12859, + "src": "36515:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36515:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "36500:29:48" + }, + "returnParameters": { + "id": 12828, + "nodeType": "ParameterList", + "parameters": [], + "src": "36538:0:48" + }, + "scope": 13029, + "src": "36484:312:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 12894, + "nodeType": "Block", + "src": "36952:180:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12873, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12861, + "src": "36971:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12874, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12863, + "src": "36977:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12875, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12865, + "src": "36984:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12876, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12869, + "src": "36991:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12872, + "name": "_setData", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 12924, + 9245 + ], + "referencedDeclaration": 12924, + "src": "36962:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,address,uint32,uint64)" + } + }, + "id": 12877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36962:36:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12878, + "nodeType": "ExpressionStatement", + "src": "36962:36:48" + }, + { + "eventCall": { + "arguments": [ + { + "id": 12880, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12861, + "src": "37022:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12881, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12865, + "src": "37028:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 12879, + "name": "FusesSet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9768, + "src": "37013:8:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32)" + } + }, + "id": 12882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37013:21:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12883, + "nodeType": "EmitStatement", + "src": "37008:26:48" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 12886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12884, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12869, + "src": "37048:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 12885, + "name": "oldExpiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12867, + "src": "37057:9:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "37048:18:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12893, + "nodeType": "IfStatement", + "src": "37044:82:48", + "trueBody": { + "id": 12892, + "nodeType": "Block", + "src": "37068:58:48", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 12888, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12861, + "src": "37102:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12889, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12869, + "src": "37108:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 12887, + "name": "ExpiryExtended", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9774, + "src": "37087:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint64_$returns$__$", + "typeString": "function (bytes32,uint64)" + } + }, + "id": 12890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37087:28:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12891, + "nodeType": "EmitStatement", + "src": "37082:33:48" + } + ] + } + } + ] + }, + "id": 12895, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setFuses", + "nameLocation": "36811:9:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12870, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12861, + "mutability": "mutable", + "name": "node", + "nameLocation": "36838:4:48", + "nodeType": "VariableDeclaration", + "scope": 12895, + "src": "36830:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12860, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "36830:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12863, + "mutability": "mutable", + "name": "owner", + "nameLocation": "36860:5:48", + "nodeType": "VariableDeclaration", + "scope": 12895, + "src": "36852:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12862, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36852:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12865, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "36882:5:48", + "nodeType": "VariableDeclaration", + "scope": 12895, + "src": "36875:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12864, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "36875:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12867, + "mutability": "mutable", + "name": "oldExpiry", + "nameLocation": "36904:9:48", + "nodeType": "VariableDeclaration", + "scope": 12895, + "src": "36897:16:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12866, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "36897:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12869, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "36930:6:48", + "nodeType": "VariableDeclaration", + "scope": 12895, + "src": "36923:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12868, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "36923:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "36820:122:48" + }, + "returnParameters": { + "id": 12871, + "nodeType": "ParameterList", + "parameters": [], + "src": "36952:0:48" + }, + "scope": 13029, + "src": "36802:330:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12923, + "nodeType": "Block", + "src": "37261:108:48", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 12907, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12897, + "src": "37289:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 12908, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12901, + "src": "37295:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + ], + "id": 12906, + "name": "_canFusesBeBurned", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12956, + "src": "37271:17:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_uint32_$returns$__$", + "typeString": "function (bytes32,uint32) pure" + } + }, + "id": 12909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37271:30:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12910, + "nodeType": "ExpressionStatement", + "src": "37271:30:48" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 12916, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12897, + "src": "37334:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12915, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "37326:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12914, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "37326:7:48", + "typeDescriptions": {} + } + }, + "id": 12917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37326:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12918, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12899, + "src": "37341:5:48", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12919, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12901, + "src": "37348:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + { + "id": 12920, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12903, + "src": "37355:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "expression": { + "id": 12911, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "37311:5:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NameWrapper_$13029_$", + "typeString": "type(contract super NameWrapper)" + } + }, + "id": 12913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "37317:8:48", + "memberName": "_setData", + "nodeType": "MemberAccess", + "referencedDeclaration": 9245, + "src": "37311:14:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_address_$_t_uint32_$_t_uint64_$returns$__$", + "typeString": "function (uint256,address,uint32,uint64)" + } + }, + "id": 12921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37311:51:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12922, + "nodeType": "ExpressionStatement", + "src": "37311:51:48" + } + ] + }, + "id": 12924, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setData", + "nameLocation": "37147:8:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12897, + "mutability": "mutable", + "name": "node", + "nameLocation": "37173:4:48", + "nodeType": "VariableDeclaration", + "scope": 12924, + "src": "37165:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12896, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "37165:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12899, + "mutability": "mutable", + "name": "owner", + "nameLocation": "37195:5:48", + "nodeType": "VariableDeclaration", + "scope": 12924, + "src": "37187:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37187:7:48", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12901, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "37217:5:48", + "nodeType": "VariableDeclaration", + "scope": 12924, + "src": "37210:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12900, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "37210:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12903, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "37239:6:48", + "nodeType": "VariableDeclaration", + "scope": 12924, + "src": "37232:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 12902, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "37232:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "37155:96:48" + }, + "returnParameters": { + "id": 12905, + "nodeType": "ParameterList", + "parameters": [], + "src": "37261:0:48" + }, + "scope": 13029, + "src": "37138:231:48", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12955, + "nodeType": "Block", + "src": "37444:343:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 12948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12931, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12928, + "src": "37558:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 12933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "~", + "prefix": true, + "src": "37566:24:48", + "subExpression": { + "id": 12932, + "name": "PARENT_CONTROLLED_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9739, + "src": "37567:23:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37558:32:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 12935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37594:1:48", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "37558:37:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12937, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12928, + "src": "37611:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12940, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 12938, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "37620:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12939, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "37644:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37620:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 12941, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "37619:39:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37611:47:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12945, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 12943, + "name": "PARENT_CANNOT_CONTROL", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "37675:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12944, + "name": "CANNOT_UNWRAP", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "37699:13:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37675:37:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 12946, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "37674:39:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37611:102:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "37558:155:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12954, + "nodeType": "IfStatement", + "src": "37541:240:48", + "trueBody": { + "id": 12953, + "nodeType": "Block", + "src": "37724:57:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12950, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12926, + "src": "37765:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12949, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "37745:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 12951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37745:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12952, + "nodeType": "RevertStatement", + "src": "37738:32:48" + } + ] + } + } + ] + }, + "id": 12956, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_canFusesBeBurned", + "nameLocation": "37384:17:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12929, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12926, + "mutability": "mutable", + "name": "node", + "nameLocation": "37410:4:48", + "nodeType": "VariableDeclaration", + "scope": 12956, + "src": "37402:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12925, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "37402:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12928, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "37423:5:48", + "nodeType": "VariableDeclaration", + "scope": 12956, + "src": "37416:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12927, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "37416:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "37401:28:48" + }, + "returnParameters": { + "id": 12930, + "nodeType": "ParameterList", + "parameters": [], + "src": "37444:0:48" + }, + "scope": 13029, + "src": "37375:412:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 12974, + "nodeType": "Block", + "src": "37867:195:48", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 12965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 12963, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12960, + "src": "37881:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "id": 12964, + "name": "USER_SETTABLE_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9742, + "src": "37889:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37881:27:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 12966, + "name": "USER_SETTABLE_FUSES", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9742, + "src": "37912:19:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "37881:50:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 12973, + "nodeType": "IfStatement", + "src": "37877:179:48", + "trueBody": { + "id": 12972, + "nodeType": "Block", + "src": "37933:123:48", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 12969, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12958, + "src": "38040:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12968, + "name": "OperationProhibited", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10159, + "src": "38020:19:48", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_bytes32_$returns$__$", + "typeString": "function (bytes32) pure" + } + }, + "id": 12970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38020:25:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12971, + "nodeType": "RevertStatement", + "src": "38013:32:48" + } + ] + } + } + ] + }, + "id": 12975, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkFusesAreSettable", + "nameLocation": "37802:22:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12958, + "mutability": "mutable", + "name": "node", + "nameLocation": "37833:4:48", + "nodeType": "VariableDeclaration", + "scope": 12975, + "src": "37825:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12957, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "37825:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12960, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "37846:5:48", + "nodeType": "VariableDeclaration", + "scope": 12975, + "src": "37839:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 12959, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "37839:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "37824:28:48" + }, + "returnParameters": { + "id": 12962, + "nodeType": "ParameterList", + "parameters": [], + "src": "37867:0:48" + }, + "scope": 13029, + "src": "37793:269:48", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 13004, + "nodeType": "Block", + "src": "38131:120:48", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 12992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 12985, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12977, + "src": "38176:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 12984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "38168:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 12983, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38168:7:48", + "typeDescriptions": {} + } + }, + "id": 12986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38168:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 12982, + "name": "ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 10343 + ], + "referencedDeclaration": 10343, + "src": "38160:7:48", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 12987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38160:22:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 12990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38194:1:48", + "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": 12989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "38186:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12988, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38186:7:48", + "typeDescriptions": {} + } + }, + "id": 12991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38186:10:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "38160:36:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 12995, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12977, + "src": "38222:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 12993, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "38212:3:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 12994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "38216:5:48", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "38212:9:48", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 12996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38212:15:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 12999, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "38239:4:48", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_NameWrapper_$13029", + "typeString": "contract NameWrapper" + } + ], + "id": 12998, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "38231:7:48", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 12997, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38231:7:48", + "typeDescriptions": {} + } + }, + "id": 13000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38231:13:48", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "38212:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "38160:84:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 12981, + "id": 13003, + "nodeType": "Return", + "src": "38141:103:48" + } + ] + }, + "id": 13005, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_isWrapped", + "nameLocation": "38077:10:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 12978, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12977, + "mutability": "mutable", + "name": "node", + "nameLocation": "38096:4:48", + "nodeType": "VariableDeclaration", + "scope": 13005, + "src": "38088:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 12976, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "38088:7:48", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "38087:14:48" + }, + "returnParameters": { + "id": 12981, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12980, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13005, + "src": "38125:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12979, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38125:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38124:6:48" + }, + "scope": 13029, + "src": "38068:183:48", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 13027, + "nodeType": "Block", + "src": "38369:123:48", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 13018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 13016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13014, + "name": "fuses", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13007, + "src": "38398:5:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 13015, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "38406:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "38398:18:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 13017, + "name": "IS_DOT_ETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9728, + "src": "38420:10:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "38398:32:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 13024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 13021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13019, + "name": "expiry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13009, + "src": "38446:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 13020, + "name": "GRACE_PERIOD", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10199, + "src": "38455:12:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "38446:21:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 13022, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "38470:5:48", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 13023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "38476:9:48", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "38470:15:48", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "38446:39:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "38398:87:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 13013, + "id": 13026, + "nodeType": "Return", + "src": "38379:106:48" + } + ] + }, + "id": 13028, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_isETH2LDInGracePeriod", + "nameLocation": "38266:22:48", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13010, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13007, + "mutability": "mutable", + "name": "fuses", + "nameLocation": "38305:5:48", + "nodeType": "VariableDeclaration", + "scope": 13028, + "src": "38298:12:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 13006, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "38298:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13009, + "mutability": "mutable", + "name": "expiry", + "nameLocation": "38327:6:48", + "nodeType": "VariableDeclaration", + "scope": 13028, + "src": "38320:13:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 13008, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "38320:6:48", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "38288:51:48" + }, + "returnParameters": { + "id": 13013, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13012, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13028, + "src": "38363:4:48", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13011, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38363:4:48", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38362:6:48" + }, + "scope": 13029, + "src": "38257:235:48", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 13030, + "src": "1613:36881:48", + "usedErrors": [ + 10133, + 10135, + 10137, + 10143, + 10145, + 10149, + 10153, + 10155, + 10159, + 10161 + ], + "usedEvents": [ + 8653, + 8712, + 9756, + 9762, + 9768, + 9774, + 13068, + 13186, + 13201, + 13210, + 13217 + ] + } + ], + "src": "31:38464:48" + }, + "id": 48 + }, + "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol": { + "ast": { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol", + "exportedSymbols": { + "StaticMetadataService": [ + 13054 + ] + }, + "id": 13055, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13031, + "literals": [ + "solidity", + "~", + "0.8", + ".17" + ], + "nodeType": "PragmaDirective", + "src": "31:24:49" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "StaticMetadataService", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 13054, + "linearizedBaseContracts": [ + 13054 + ], + "name": "StaticMetadataService", + "nameLocation": "66:21:49", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 13033, + "mutability": "mutable", + "name": "_uri", + "nameLocation": "109:4:49", + "nodeType": "VariableDeclaration", + "scope": 13054, + "src": "94:19:49", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 13032, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "94:6:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "body": { + "id": 13042, + "nodeType": "Block", + "src": "160:36:49", + "statements": [ + { + "expression": { + "id": 13040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 13038, + "name": "_uri", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13033, + "src": "170:4:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 13039, + "name": "_metaDataUri", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13035, + "src": "177:12:49", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "170:19:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 13041, + "nodeType": "ExpressionStatement", + "src": "170:19:49" + } + ] + }, + "id": 13043, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13036, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13035, + "mutability": "mutable", + "name": "_metaDataUri", + "nameLocation": "146:12:49", + "nodeType": "VariableDeclaration", + "scope": 13043, + "src": "132:26:49", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13034, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "132:6:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "131:28:49" + }, + "returnParameters": { + "id": 13037, + "nodeType": "ParameterList", + "parameters": [], + "src": "160:0:49" + }, + "scope": 13054, + "src": "120:76:49", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 13052, + "nodeType": "Block", + "src": "260:28:49", + "statements": [ + { + "expression": { + "id": 13050, + "name": "_uri", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13033, + "src": "277:4:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 13049, + "id": 13051, + "nodeType": "Return", + "src": "270:11:49" + } + ] + }, + "functionSelector": "0e89341c", + "id": 13053, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "uri", + "nameLocation": "211:3:49", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13045, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13053, + "src": "215:7:49", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13044, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "215:7:49", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "214:9:49" + }, + "returnParameters": { + "id": 13049, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13048, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13053, + "src": "245:13:49", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13047, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "245:6:49", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "244:15:49" + }, + "scope": 13054, + "src": "202:86:49", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + } + ], + "scope": 13055, + "src": "57:233:49", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "31:260:49" + }, + "id": 49 + }, + "@openzeppelin/contracts/access/Ownable.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", + "exportedSymbols": { + "Context": [ + 14871 + ], + "Ownable": [ + 13167 + ] + }, + "id": 13168, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13056, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "102:23:50" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Context.sol", + "file": "../utils/Context.sol", + "id": 13057, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13168, + "sourceUnit": 14872, + "src": "127:30:50", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 13059, + "name": "Context", + "nameLocations": [ + "683:7:50" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14871, + "src": "683:7:50" + }, + "id": 13060, + "nodeType": "InheritanceSpecifier", + "src": "683:7:50" + } + ], + "canonicalName": "Ownable", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 13058, + "nodeType": "StructuredDocumentation", + "src": "159:494:50", + "text": " @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner." + }, + "fullyImplemented": true, + "id": 13167, + "linearizedBaseContracts": [ + 13167, + 14871 + ], + "name": "Ownable", + "nameLocation": "672:7:50", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 13062, + "mutability": "mutable", + "name": "_owner", + "nameLocation": "713:6:50", + "nodeType": "VariableDeclaration", + "scope": 13167, + "src": "697:22:50", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "697:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "private" + }, + { + "anonymous": false, + "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "id": 13068, + "name": "OwnershipTransferred", + "nameLocation": "732:20:50", + "nodeType": "EventDefinition", + "parameters": { + "id": 13067, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13064, + "indexed": true, + "mutability": "mutable", + "name": "previousOwner", + "nameLocation": "769:13:50", + "nodeType": "VariableDeclaration", + "scope": 13068, + "src": "753:29:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "753:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13066, + "indexed": true, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "800:8:50", + "nodeType": "VariableDeclaration", + "scope": 13068, + "src": "784:24:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13065, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "784:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "752:57:50" + }, + "src": "726:84:50" + }, + { + "body": { + "id": 13077, + "nodeType": "Block", + "src": "926:49:50", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13073, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "955:10:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "955:12:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13072, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13166, + "src": "936:18:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 13075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "936:32:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13076, + "nodeType": "ExpressionStatement", + "src": "936:32:50" + } + ] + }, + "documentation": { + "id": 13069, + "nodeType": "StructuredDocumentation", + "src": "816:91:50", + "text": " @dev Initializes the contract setting the deployer as the initial owner." + }, + "id": 13078, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13070, + "nodeType": "ParameterList", + "parameters": [], + "src": "923:2:50" + }, + "returnParameters": { + "id": 13071, + "nodeType": "ParameterList", + "parameters": [], + "src": "926:0:50" + }, + "scope": 13167, + "src": "912:63:50", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 13085, + "nodeType": "Block", + "src": "1084:41:50", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13081, + "name": "_checkOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13109, + "src": "1094:11:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$__$", + "typeString": "function () view" + } + }, + "id": 13082, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1094:13:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13083, + "nodeType": "ExpressionStatement", + "src": "1094:13:50" + }, + { + "id": 13084, + "nodeType": "PlaceholderStatement", + "src": "1117:1:50" + } + ] + }, + "documentation": { + "id": 13079, + "nodeType": "StructuredDocumentation", + "src": "981:77:50", + "text": " @dev Throws if called by any account other than the owner." + }, + "id": 13086, + "name": "onlyOwner", + "nameLocation": "1072:9:50", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 13080, + "nodeType": "ParameterList", + "parameters": [], + "src": "1081:2:50" + }, + "src": "1063:62:50", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 13094, + "nodeType": "Block", + "src": "1256:30:50", + "statements": [ + { + "expression": { + "id": 13092, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13062, + "src": "1273:6:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 13091, + "id": 13093, + "nodeType": "Return", + "src": "1266:13:50" + } + ] + }, + "documentation": { + "id": 13087, + "nodeType": "StructuredDocumentation", + "src": "1131:65:50", + "text": " @dev Returns the address of the current owner." + }, + "functionSelector": "8da5cb5b", + "id": 13095, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nameLocation": "1210:5:50", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13088, + "nodeType": "ParameterList", + "parameters": [], + "src": "1215:2:50" + }, + "returnParameters": { + "id": 13091, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13090, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13095, + "src": "1247:7:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13089, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1247:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1246:9:50" + }, + "scope": 13167, + "src": "1201:85:50", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 13108, + "nodeType": "Block", + "src": "1404:85:50", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13100, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13095, + "src": "1422:5:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1422:7:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13102, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "1433:10:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1433:12:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1422:23:50", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "id": 13105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1447:34:50", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + }, + "value": "Ownable: caller is not the owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + } + ], + "id": 13099, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1414:7:50", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1414:68:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13107, + "nodeType": "ExpressionStatement", + "src": "1414:68:50" + } + ] + }, + "documentation": { + "id": 13096, + "nodeType": "StructuredDocumentation", + "src": "1292:62:50", + "text": " @dev Throws if the sender is not the owner." + }, + "id": 13109, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkOwner", + "nameLocation": "1368:11:50", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13097, + "nodeType": "ParameterList", + "parameters": [], + "src": "1379:2:50" + }, + "returnParameters": { + "id": 13098, + "nodeType": "ParameterList", + "parameters": [], + "src": "1404:0:50" + }, + "scope": 13167, + "src": "1359:130:50", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13122, + "nodeType": "Block", + "src": "1878:47:50", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 13118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1915:1:50", + "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": 13117, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1907:7:50", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13116, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1907:7:50", + "typeDescriptions": {} + } + }, + "id": 13119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1907:10:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13115, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13166, + "src": "1888:18:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 13120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1888:30:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13121, + "nodeType": "ExpressionStatement", + "src": "1888:30:50" + } + ] + }, + "documentation": { + "id": 13110, + "nodeType": "StructuredDocumentation", + "src": "1495:324:50", + "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner." + }, + "functionSelector": "715018a6", + "id": 13123, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 13113, + "kind": "modifierInvocation", + "modifierName": { + "id": 13112, + "name": "onlyOwner", + "nameLocations": [ + "1868:9:50" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "1868:9:50" + }, + "nodeType": "ModifierInvocation", + "src": "1868:9:50" + } + ], + "name": "renounceOwnership", + "nameLocation": "1833:17:50", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13111, + "nodeType": "ParameterList", + "parameters": [], + "src": "1850:2:50" + }, + "returnParameters": { + "id": 13114, + "nodeType": "ParameterList", + "parameters": [], + "src": "1878:0:50" + }, + "scope": 13167, + "src": "1824:101:50", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 13145, + "nodeType": "Block", + "src": "2144:128:50", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13132, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13126, + "src": "2162:8:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 13135, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2182:1:50", + "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": 13134, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2174:7:50", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13133, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2174:7:50", + "typeDescriptions": {} + } + }, + "id": 13136, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2174:10:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2162:22:50", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", + "id": 13138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2186:40:50", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + }, + "value": "Ownable: new owner is the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + } + ], + "id": 13131, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2154:7:50", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2154:73:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13140, + "nodeType": "ExpressionStatement", + "src": "2154:73:50" + }, + { + "expression": { + "arguments": [ + { + "id": 13142, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13126, + "src": "2256:8:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13141, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13166, + "src": "2237:18:50", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 13143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2237:28:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13144, + "nodeType": "ExpressionStatement", + "src": "2237:28:50" + } + ] + }, + "documentation": { + "id": 13124, + "nodeType": "StructuredDocumentation", + "src": "1931:138:50", + "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." + }, + "functionSelector": "f2fde38b", + "id": 13146, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 13129, + "kind": "modifierInvocation", + "modifierName": { + "id": 13128, + "name": "onlyOwner", + "nameLocations": [ + "2134:9:50" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13086, + "src": "2134:9:50" + }, + "nodeType": "ModifierInvocation", + "src": "2134:9:50" + } + ], + "name": "transferOwnership", + "nameLocation": "2083:17:50", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13127, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13126, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "2109:8:50", + "nodeType": "VariableDeclaration", + "scope": 13146, + "src": "2101:16:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13125, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2101:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2100:18:50" + }, + "returnParameters": { + "id": 13130, + "nodeType": "ParameterList", + "parameters": [], + "src": "2144:0:50" + }, + "scope": 13167, + "src": "2074:198:50", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 13165, + "nodeType": "Block", + "src": "2489:124:50", + "statements": [ + { + "assignments": [ + 13153 + ], + "declarations": [ + { + "constant": false, + "id": 13153, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "2507:8:50", + "nodeType": "VariableDeclaration", + "scope": 13165, + "src": "2499:16:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13152, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2499:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 13155, + "initialValue": { + "id": 13154, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13062, + "src": "2518:6:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2499:25:50" + }, + { + "expression": { + "id": 13158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 13156, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13062, + "src": "2534:6:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 13157, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13149, + "src": "2543:8:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2534:17:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 13159, + "nodeType": "ExpressionStatement", + "src": "2534:17:50" + }, + { + "eventCall": { + "arguments": [ + { + "id": 13161, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13153, + "src": "2587:8:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13162, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13149, + "src": "2597:8:50", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13160, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13068, + "src": "2566:20:50", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 13163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2566:40:50", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13164, + "nodeType": "EmitStatement", + "src": "2561:45:50" + } + ] + }, + "documentation": { + "id": 13147, + "nodeType": "StructuredDocumentation", + "src": "2278:143:50", + "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." + }, + "id": 13166, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nameLocation": "2435:18:50", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13149, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "2462:8:50", + "nodeType": "VariableDeclaration", + "scope": 13166, + "src": "2454:16:50", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13148, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2454:7:50", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2453:18:50" + }, + "returnParameters": { + "id": 13151, + "nodeType": "ParameterList", + "parameters": [], + "src": "2489:0:50" + }, + "scope": 13167, + "src": "2426:187:50", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "scope": 13168, + "src": "654:1961:50", + "usedErrors": [], + "usedEvents": [ + 13068 + ] + } + ], + "src": "102:2514:50" + }, + "id": 50 + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "exportedSymbols": { + "IERC1155": [ + 13289 + ], + "IERC165": [ + 15136 + ] + }, + "id": 13290, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13169, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "110:23:51" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "file": "../../utils/introspection/IERC165.sol", + "id": 13170, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13290, + "sourceUnit": 15137, + "src": "135:47:51", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 13172, + "name": "IERC165", + "nameLocations": [ + "372:7:51" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "372:7:51" + }, + "id": 13173, + "nodeType": "InheritanceSpecifier", + "src": "372:7:51" + } + ], + "canonicalName": "IERC1155", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 13171, + "nodeType": "StructuredDocumentation", + "src": "184:165:51", + "text": " @dev Required interface of an ERC1155 compliant contract, as defined in the\n https://eips.ethereum.org/EIPS/eip-1155[EIP].\n _Available since v3.1._" + }, + "fullyImplemented": false, + "id": 13289, + "linearizedBaseContracts": [ + 13289, + 15136 + ], + "name": "IERC1155", + "nameLocation": "360:8:51", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": { + "id": 13174, + "nodeType": "StructuredDocumentation", + "src": "386:121:51", + "text": " @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`." + }, + "eventSelector": "c3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62", + "id": 13186, + "name": "TransferSingle", + "nameLocation": "518:14:51", + "nodeType": "EventDefinition", + "parameters": { + "id": 13185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13176, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "549:8:51", + "nodeType": "VariableDeclaration", + "scope": 13186, + "src": "533:24:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13175, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "533:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13178, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "575:4:51", + "nodeType": "VariableDeclaration", + "scope": 13186, + "src": "559:20:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13177, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "559:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13180, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "597:2:51", + "nodeType": "VariableDeclaration", + "scope": 13186, + "src": "581:18:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "581:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13182, + "indexed": false, + "mutability": "mutable", + "name": "id", + "nameLocation": "609:2:51", + "nodeType": "VariableDeclaration", + "scope": 13186, + "src": "601:10:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13181, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "601:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13184, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "621:5:51", + "nodeType": "VariableDeclaration", + "scope": 13186, + "src": "613:13:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "613:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "532:95:51" + }, + "src": "512:116:51" + }, + { + "anonymous": false, + "documentation": { + "id": 13187, + "nodeType": "StructuredDocumentation", + "src": "634:144:51", + "text": " @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all\n transfers." + }, + "eventSelector": "4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb", + "id": 13201, + "name": "TransferBatch", + "nameLocation": "789:13:51", + "nodeType": "EventDefinition", + "parameters": { + "id": 13200, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13189, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "828:8:51", + "nodeType": "VariableDeclaration", + "scope": 13201, + "src": "812:24:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13188, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "812:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13191, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "862:4:51", + "nodeType": "VariableDeclaration", + "scope": 13201, + "src": "846:20:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13190, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "846:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13193, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "892:2:51", + "nodeType": "VariableDeclaration", + "scope": 13201, + "src": "876:18:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13192, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "876:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13196, + "indexed": false, + "mutability": "mutable", + "name": "ids", + "nameLocation": "914:3:51", + "nodeType": "VariableDeclaration", + "scope": 13201, + "src": "904:13:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13194, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "904:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13195, + "nodeType": "ArrayTypeName", + "src": "904:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13199, + "indexed": false, + "mutability": "mutable", + "name": "values", + "nameLocation": "937:6:51", + "nodeType": "VariableDeclaration", + "scope": 13201, + "src": "927:16:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13197, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "927:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13198, + "nodeType": "ArrayTypeName", + "src": "927:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "802:147:51" + }, + "src": "783:167:51" + }, + { + "anonymous": false, + "documentation": { + "id": 13202, + "nodeType": "StructuredDocumentation", + "src": "956:147:51", + "text": " @dev Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to\n `approved`." + }, + "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", + "id": 13210, + "name": "ApprovalForAll", + "nameLocation": "1114:14:51", + "nodeType": "EventDefinition", + "parameters": { + "id": 13209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13204, + "indexed": true, + "mutability": "mutable", + "name": "account", + "nameLocation": "1145:7:51", + "nodeType": "VariableDeclaration", + "scope": 13210, + "src": "1129:23:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13203, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1129:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13206, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "1170:8:51", + "nodeType": "VariableDeclaration", + "scope": 13210, + "src": "1154:24:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13205, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1154:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13208, + "indexed": false, + "mutability": "mutable", + "name": "approved", + "nameLocation": "1185:8:51", + "nodeType": "VariableDeclaration", + "scope": 13210, + "src": "1180:13:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13207, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1180:4:51", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1128:66:51" + }, + "src": "1108:87:51" + }, + { + "anonymous": false, + "documentation": { + "id": 13211, + "nodeType": "StructuredDocumentation", + "src": "1201:343:51", + "text": " @dev Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI.\n If an {URI} event was emitted for `id`, the standard\n https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value\n returned by {IERC1155MetadataURI-uri}." + }, + "eventSelector": "6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b", + "id": 13217, + "name": "URI", + "nameLocation": "1555:3:51", + "nodeType": "EventDefinition", + "parameters": { + "id": 13216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13213, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "1566:5:51", + "nodeType": "VariableDeclaration", + "scope": 13217, + "src": "1559:12:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13212, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1559:6:51", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13215, + "indexed": true, + "mutability": "mutable", + "name": "id", + "nameLocation": "1589:2:51", + "nodeType": "VariableDeclaration", + "scope": 13217, + "src": "1573:18:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1573:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1558:34:51" + }, + "src": "1549:44:51" + }, + { + "documentation": { + "id": 13218, + "nodeType": "StructuredDocumentation", + "src": "1599:173:51", + "text": " @dev Returns the amount of tokens of token type `id` owned by `account`.\n Requirements:\n - `account` cannot be the zero address." + }, + "functionSelector": "00fdd58e", + "id": 13227, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "1786:9:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13220, + "mutability": "mutable", + "name": "account", + "nameLocation": "1804:7:51", + "nodeType": "VariableDeclaration", + "scope": 13227, + "src": "1796:15:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13219, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1796:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13222, + "mutability": "mutable", + "name": "id", + "nameLocation": "1821:2:51", + "nodeType": "VariableDeclaration", + "scope": 13227, + "src": "1813:10:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13221, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1813:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1795:29:51" + }, + "returnParameters": { + "id": 13226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13225, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13227, + "src": "1848:7:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1848:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1847:9:51" + }, + "scope": 13289, + "src": "1777:80:51", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13228, + "nodeType": "StructuredDocumentation", + "src": "1863:188:51", + "text": " @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}.\n Requirements:\n - `accounts` and `ids` must have the same length." + }, + "functionSelector": "4e1273f4", + "id": 13240, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOfBatch", + "nameLocation": "2065:14:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13231, + "mutability": "mutable", + "name": "accounts", + "nameLocation": "2108:8:51", + "nodeType": "VariableDeclaration", + "scope": 13240, + "src": "2089:27:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 13229, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2089:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 13230, + "nodeType": "ArrayTypeName", + "src": "2089:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13234, + "mutability": "mutable", + "name": "ids", + "nameLocation": "2145:3:51", + "nodeType": "VariableDeclaration", + "scope": 13240, + "src": "2126:22:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13232, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2126:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13233, + "nodeType": "ArrayTypeName", + "src": "2126:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2079:75:51" + }, + "returnParameters": { + "id": 13239, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13238, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13240, + "src": "2178:16:51", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13236, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2178:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13237, + "nodeType": "ArrayTypeName", + "src": "2178:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2177:18:51" + }, + "scope": 13289, + "src": "2056:140:51", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13241, + "nodeType": "StructuredDocumentation", + "src": "2202:248:51", + "text": " @dev Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`,\n Emits an {ApprovalForAll} event.\n Requirements:\n - `operator` cannot be the caller." + }, + "functionSelector": "a22cb465", + "id": 13248, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "2464:17:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13246, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13243, + "mutability": "mutable", + "name": "operator", + "nameLocation": "2490:8:51", + "nodeType": "VariableDeclaration", + "scope": 13248, + "src": "2482:16:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13242, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2482:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13245, + "mutability": "mutable", + "name": "approved", + "nameLocation": "2505:8:51", + "nodeType": "VariableDeclaration", + "scope": 13248, + "src": "2500:13:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13244, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2500:4:51", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2481:33:51" + }, + "returnParameters": { + "id": 13247, + "nodeType": "ParameterList", + "parameters": [], + "src": "2523:0:51" + }, + "scope": 13289, + "src": "2455:69:51", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13249, + "nodeType": "StructuredDocumentation", + "src": "2530:135:51", + "text": " @dev Returns true if `operator` is approved to transfer ``account``'s tokens.\n See {setApprovalForAll}." + }, + "functionSelector": "e985e9c5", + "id": 13258, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "2679:16:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13254, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13251, + "mutability": "mutable", + "name": "account", + "nameLocation": "2704:7:51", + "nodeType": "VariableDeclaration", + "scope": 13258, + "src": "2696:15:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13250, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2696:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13253, + "mutability": "mutable", + "name": "operator", + "nameLocation": "2721:8:51", + "nodeType": "VariableDeclaration", + "scope": 13258, + "src": "2713:16:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13252, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2713:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2695:35:51" + }, + "returnParameters": { + "id": 13257, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13256, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13258, + "src": "2754:4:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13255, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2754:4:51", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2753:6:51" + }, + "scope": 13289, + "src": "2670:90:51", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13259, + "nodeType": "StructuredDocumentation", + "src": "2766:556:51", + "text": " @dev Transfers `amount` tokens of token type `id` from `from` to `to`.\n Emits a {TransferSingle} event.\n Requirements:\n - `to` cannot be the zero address.\n - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}.\n - `from` must have a balance of tokens of type `id` of at least `amount`.\n - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the\n acceptance magic value." + }, + "functionSelector": "f242432a", + "id": 13272, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "3336:16:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13270, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13261, + "mutability": "mutable", + "name": "from", + "nameLocation": "3361:4:51", + "nodeType": "VariableDeclaration", + "scope": 13272, + "src": "3353:12:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13260, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3353:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13263, + "mutability": "mutable", + "name": "to", + "nameLocation": "3375:2:51", + "nodeType": "VariableDeclaration", + "scope": 13272, + "src": "3367:10:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13262, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3367:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13265, + "mutability": "mutable", + "name": "id", + "nameLocation": "3387:2:51", + "nodeType": "VariableDeclaration", + "scope": 13272, + "src": "3379:10:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13264, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3379:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13267, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3399:6:51", + "nodeType": "VariableDeclaration", + "scope": 13272, + "src": "3391:14:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13266, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3391:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13269, + "mutability": "mutable", + "name": "data", + "nameLocation": "3422:4:51", + "nodeType": "VariableDeclaration", + "scope": 13272, + "src": "3407:19:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13268, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3407:5:51", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3352:75:51" + }, + "returnParameters": { + "id": 13271, + "nodeType": "ParameterList", + "parameters": [], + "src": "3436:0:51" + }, + "scope": 13289, + "src": "3327:110:51", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13273, + "nodeType": "StructuredDocumentation", + "src": "3443:390:51", + "text": " @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}.\n Emits a {TransferBatch} event.\n Requirements:\n - `ids` and `amounts` must have the same length.\n - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the\n acceptance magic value." + }, + "functionSelector": "2eb2c2d6", + "id": 13288, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "safeBatchTransferFrom", + "nameLocation": "3847:21:51", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13275, + "mutability": "mutable", + "name": "from", + "nameLocation": "3886:4:51", + "nodeType": "VariableDeclaration", + "scope": 13288, + "src": "3878:12:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13274, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3878:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13277, + "mutability": "mutable", + "name": "to", + "nameLocation": "3908:2:51", + "nodeType": "VariableDeclaration", + "scope": 13288, + "src": "3900:10:51", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13276, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3900:7:51", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13280, + "mutability": "mutable", + "name": "ids", + "nameLocation": "3939:3:51", + "nodeType": "VariableDeclaration", + "scope": 13288, + "src": "3920:22:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13278, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3920:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13279, + "nodeType": "ArrayTypeName", + "src": "3920:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13283, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3971:7:51", + "nodeType": "VariableDeclaration", + "scope": 13288, + "src": "3952:26:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13281, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3952:7:51", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13282, + "nodeType": "ArrayTypeName", + "src": "3952:9:51", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13285, + "mutability": "mutable", + "name": "data", + "nameLocation": "4003:4:51", + "nodeType": "VariableDeclaration", + "scope": 13288, + "src": "3988:19:51", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3988:5:51", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3868:145:51" + }, + "returnParameters": { + "id": 13287, + "nodeType": "ParameterList", + "parameters": [], + "src": "4022:0:51" + }, + "scope": 13289, + "src": "3838:185:51", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 13290, + "src": "350:3675:51", + "usedErrors": [], + "usedEvents": [ + 13186, + 13201, + 13210, + 13217 + ] + } + ], + "src": "110:3916:51" + }, + "id": 51 + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol", + "exportedSymbols": { + "IERC1155Receiver": [ + 13330 + ], + "IERC165": [ + 15136 + ] + }, + "id": 13331, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13291, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "118:23:52" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "file": "../../utils/introspection/IERC165.sol", + "id": 13292, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13331, + "sourceUnit": 15137, + "src": "143:47:52", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 13294, + "name": "IERC165", + "nameLocations": [ + "262:7:52" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "262:7:52" + }, + "id": 13295, + "nodeType": "InheritanceSpecifier", + "src": "262:7:52" + } + ], + "canonicalName": "IERC1155Receiver", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 13293, + "nodeType": "StructuredDocumentation", + "src": "192:39:52", + "text": " @dev _Available since v3.1._" + }, + "fullyImplemented": false, + "id": 13330, + "linearizedBaseContracts": [ + 13330, + 15136 + ], + "name": "IERC1155Receiver", + "nameLocation": "242:16:52", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 13296, + "nodeType": "StructuredDocumentation", + "src": "276:826:52", + "text": " @dev Handles the receipt of a single ERC1155 token type. This function is\n called at the end of a `safeTransferFrom` after the balance has been updated.\n NOTE: To accept the transfer, this must return\n `bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"))`\n (i.e. 0xf23a6e61, or its own function selector).\n @param operator The address which initiated the transfer (i.e. msg.sender)\n @param from The address which previously owned the token\n @param id The ID of the token being transferred\n @param value The amount of tokens being transferred\n @param data Additional data with no specified format\n @return `bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"))` if transfer is allowed" + }, + "functionSelector": "f23a6e61", + "id": 13311, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "onERC1155Received", + "nameLocation": "1116:17:52", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13307, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13298, + "mutability": "mutable", + "name": "operator", + "nameLocation": "1151:8:52", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1143:16:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13297, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1143:7:52", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13300, + "mutability": "mutable", + "name": "from", + "nameLocation": "1177:4:52", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1169:12:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13299, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1169:7:52", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13302, + "mutability": "mutable", + "name": "id", + "nameLocation": "1199:2:52", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1191:10:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13301, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1191:7:52", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13304, + "mutability": "mutable", + "name": "value", + "nameLocation": "1219:5:52", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1211:13:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13303, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1211:7:52", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13306, + "mutability": "mutable", + "name": "data", + "nameLocation": "1249:4:52", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1234:19:52", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13305, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1234:5:52", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1133:126:52" + }, + "returnParameters": { + "id": 13310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13309, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13311, + "src": "1278:6:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 13308, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1278:6:52", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1277:8:52" + }, + "scope": 13330, + "src": "1107:179:52", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13312, + "nodeType": "StructuredDocumentation", + "src": "1292:994:52", + "text": " @dev Handles the receipt of a multiple ERC1155 token types. This function\n is called at the end of a `safeBatchTransferFrom` after the balances have\n been updated.\n NOTE: To accept the transfer(s), this must return\n `bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"))`\n (i.e. 0xbc197c81, or its own function selector).\n @param operator The address which initiated the batch transfer (i.e. msg.sender)\n @param from The address which previously owned the token\n @param ids An array containing ids of each token being transferred (order and length must match values array)\n @param values An array containing amounts of each token being transferred (order and length must match ids array)\n @param data Additional data with no specified format\n @return `bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"))` if transfer is allowed" + }, + "functionSelector": "bc197c81", + "id": 13329, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "onERC1155BatchReceived", + "nameLocation": "2300:22:52", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13325, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13314, + "mutability": "mutable", + "name": "operator", + "nameLocation": "2340:8:52", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2332:16:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13313, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2332:7:52", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13316, + "mutability": "mutable", + "name": "from", + "nameLocation": "2366:4:52", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2358:12:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2358:7:52", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13319, + "mutability": "mutable", + "name": "ids", + "nameLocation": "2399:3:52", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2380:22:52", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13317, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2380:7:52", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13318, + "nodeType": "ArrayTypeName", + "src": "2380:9:52", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13322, + "mutability": "mutable", + "name": "values", + "nameLocation": "2431:6:52", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2412:25:52", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 13320, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2412:7:52", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13321, + "nodeType": "ArrayTypeName", + "src": "2412:9:52", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13324, + "mutability": "mutable", + "name": "data", + "nameLocation": "2462:4:52", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2447:19:52", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13323, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2447:5:52", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2322:150:52" + }, + "returnParameters": { + "id": 13328, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13327, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "2491:6:52", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 13326, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2491:6:52", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "2490:8:52" + }, + "scope": 13330, + "src": "2291:208:52", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 13331, + "src": "232:2269:52", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "118:2384:52" + }, + "id": 52 + }, + "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", + "exportedSymbols": { + "IERC1155": [ + 13289 + ], + "IERC1155MetadataURI": [ + 13345 + ], + "IERC165": [ + 15136 + ] + }, + "id": 13346, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13332, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "117:23:53" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "file": "../IERC1155.sol", + "id": 13333, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 13346, + "sourceUnit": 13290, + "src": "142:25:53", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 13335, + "name": "IERC1155", + "nameLocations": [ + "397:8:53" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 13289, + "src": "397:8:53" + }, + "id": 13336, + "nodeType": "InheritanceSpecifier", + "src": "397:8:53" + } + ], + "canonicalName": "IERC1155MetadataURI", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 13334, + "nodeType": "StructuredDocumentation", + "src": "169:194:53", + "text": " @dev Interface of the optional ERC1155MetadataExtension interface, as defined\n in the https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[EIP].\n _Available since v3.1._" + }, + "fullyImplemented": false, + "id": 13345, + "linearizedBaseContracts": [ + 13345, + 13289, + 15136 + ], + "name": "IERC1155MetadataURI", + "nameLocation": "374:19:53", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 13337, + "nodeType": "StructuredDocumentation", + "src": "412:192:53", + "text": " @dev Returns the URI for token type `id`.\n If the `\\{id\\}` substring is present in the URI, it must be replaced by\n clients with the actual token type ID." + }, + "functionSelector": "0e89341c", + "id": 13344, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "uri", + "nameLocation": "618:3:53", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13340, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13339, + "mutability": "mutable", + "name": "id", + "nameLocation": "630:2:53", + "nodeType": "VariableDeclaration", + "scope": 13344, + "src": "622:10:53", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13338, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "622:7:53", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "621:12:53" + }, + "returnParameters": { + "id": 13343, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13342, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13344, + "src": "657:13:53", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13341, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "657:6:53", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "656:15:53" + }, + "scope": 13345, + "src": "609:63:53", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 13346, + "src": "364:310:53", + "usedErrors": [], + "usedEvents": [ + 13186, + 13201, + 13210, + 13217 + ] + } + ], + "src": "117:558:53" + }, + "id": 53 + }, + "@openzeppelin/contracts/token/ERC20/IERC20.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", + "exportedSymbols": { + "IERC20": [ + 13423 + ] + }, + "id": 13424, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13347, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "106:23:54" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC20", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 13348, + "nodeType": "StructuredDocumentation", + "src": "131:70:54", + "text": " @dev Interface of the ERC20 standard as defined in the EIP." + }, + "fullyImplemented": false, + "id": 13423, + "linearizedBaseContracts": [ + 13423 + ], + "name": "IERC20", + "nameLocation": "212:6:54", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": { + "id": 13349, + "nodeType": "StructuredDocumentation", + "src": "225:158:54", + "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." + }, + "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", + "id": 13357, + "name": "Transfer", + "nameLocation": "394:8:54", + "nodeType": "EventDefinition", + "parameters": { + "id": 13356, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13351, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "419:4:54", + "nodeType": "VariableDeclaration", + "scope": 13357, + "src": "403:20:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13350, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "403:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13353, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "441:2:54", + "nodeType": "VariableDeclaration", + "scope": 13357, + "src": "425:18:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "425:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13355, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "453:5:54", + "nodeType": "VariableDeclaration", + "scope": 13357, + "src": "445:13:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "445:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "402:57:54" + }, + "src": "388:72:54" + }, + { + "anonymous": false, + "documentation": { + "id": 13358, + "nodeType": "StructuredDocumentation", + "src": "466:148:54", + "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." + }, + "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "id": 13366, + "name": "Approval", + "nameLocation": "625:8:54", + "nodeType": "EventDefinition", + "parameters": { + "id": 13365, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13360, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "650:5:54", + "nodeType": "VariableDeclaration", + "scope": 13366, + "src": "634:21:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13359, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "634:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13362, + "indexed": true, + "mutability": "mutable", + "name": "spender", + "nameLocation": "673:7:54", + "nodeType": "VariableDeclaration", + "scope": 13366, + "src": "657:23:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "657:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13364, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "690:5:54", + "nodeType": "VariableDeclaration", + "scope": 13366, + "src": "682:13:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13363, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "682:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "633:63:54" + }, + "src": "619:78:54" + }, + { + "documentation": { + "id": 13367, + "nodeType": "StructuredDocumentation", + "src": "703:66:54", + "text": " @dev Returns the amount of tokens in existence." + }, + "functionSelector": "18160ddd", + "id": 13372, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "783:11:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13368, + "nodeType": "ParameterList", + "parameters": [], + "src": "794:2:54" + }, + "returnParameters": { + "id": 13371, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13370, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13372, + "src": "820:7:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13369, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "820:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "819:9:54" + }, + "scope": 13423, + "src": "774:55:54", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13373, + "nodeType": "StructuredDocumentation", + "src": "835:72:54", + "text": " @dev Returns the amount of tokens owned by `account`." + }, + "functionSelector": "70a08231", + "id": 13380, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "921:9:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13376, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13375, + "mutability": "mutable", + "name": "account", + "nameLocation": "939:7:54", + "nodeType": "VariableDeclaration", + "scope": 13380, + "src": "931:15:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13374, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "931:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "930:17:54" + }, + "returnParameters": { + "id": 13379, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13378, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13380, + "src": "971:7:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13377, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "971:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "970:9:54" + }, + "scope": 13423, + "src": "912:68:54", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13381, + "nodeType": "StructuredDocumentation", + "src": "986:202:54", + "text": " @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "a9059cbb", + "id": 13390, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "1202:8:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13383, + "mutability": "mutable", + "name": "to", + "nameLocation": "1219:2:54", + "nodeType": "VariableDeclaration", + "scope": 13390, + "src": "1211:10:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13382, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1211:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13385, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1231:6:54", + "nodeType": "VariableDeclaration", + "scope": 13390, + "src": "1223:14:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13384, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1223:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1210:28:54" + }, + "returnParameters": { + "id": 13389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13388, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13390, + "src": "1257:4:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13387, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1257:4:54", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1256:6:54" + }, + "scope": 13423, + "src": "1193:70:54", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13391, + "nodeType": "StructuredDocumentation", + "src": "1269:264:54", + "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." + }, + "functionSelector": "dd62ed3e", + "id": 13400, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "1547:9:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13396, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13393, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1565:5:54", + "nodeType": "VariableDeclaration", + "scope": 13400, + "src": "1557:13:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13392, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1557:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13395, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1580:7:54", + "nodeType": "VariableDeclaration", + "scope": 13400, + "src": "1572:15:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13394, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1572:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1556:32:54" + }, + "returnParameters": { + "id": 13399, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13398, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13400, + "src": "1612:7:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13397, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1612:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1611:9:54" + }, + "scope": 13423, + "src": "1538:83:54", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13401, + "nodeType": "StructuredDocumentation", + "src": "1627:642:54", + "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." + }, + "functionSelector": "095ea7b3", + "id": 13410, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "2283:7:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13406, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13403, + "mutability": "mutable", + "name": "spender", + "nameLocation": "2299:7:54", + "nodeType": "VariableDeclaration", + "scope": 13410, + "src": "2291:15:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13402, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2291:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13405, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2316:6:54", + "nodeType": "VariableDeclaration", + "scope": 13410, + "src": "2308:14:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13404, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2308:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2290:33:54" + }, + "returnParameters": { + "id": 13409, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13408, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13410, + "src": "2342:4:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13407, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2342:4:54", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2341:6:54" + }, + "scope": 13423, + "src": "2274:74:54", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 13411, + "nodeType": "StructuredDocumentation", + "src": "2354:287:54", + "text": " @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "23b872dd", + "id": 13422, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "2655:12:54", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13418, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13413, + "mutability": "mutable", + "name": "from", + "nameLocation": "2676:4:54", + "nodeType": "VariableDeclaration", + "scope": 13422, + "src": "2668:12:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13412, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2668:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13415, + "mutability": "mutable", + "name": "to", + "nameLocation": "2690:2:54", + "nodeType": "VariableDeclaration", + "scope": 13422, + "src": "2682:10:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13414, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2682:7:54", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13417, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2702:6:54", + "nodeType": "VariableDeclaration", + "scope": 13422, + "src": "2694:14:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13416, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2694:7:54", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2667:42:54" + }, + "returnParameters": { + "id": 13421, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13420, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13422, + "src": "2728:4:54", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13419, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2728:4:54", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2727:6:54" + }, + "scope": 13423, + "src": "2646:88:54", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 13424, + "src": "202:2534:54", + "usedErrors": [], + "usedEvents": [ + 13357, + 13366 + ] + } + ], + "src": "106:2631:54" + }, + "id": 54 + }, + "@openzeppelin/contracts/token/ERC721/ERC721.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "Context": [ + 14871 + ], + "ERC165": [ + 15124 + ], + "ERC721": [ + 14350 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IERC721Metadata": [ + 14511 + ], + "IERC721Receiver": [ + 14484 + ], + "Math": [ + 16002 + ], + "SignedMath": [ + 16107 + ], + "Strings": [ + 15100 + ] + }, + "id": 14351, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 13425, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "107:23:55" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", + "file": "./IERC721.sol", + "id": 13426, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 14467, + "src": "132:23:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", + "file": "./IERC721Receiver.sol", + "id": 13427, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 14485, + "src": "156:31:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", + "file": "./extensions/IERC721Metadata.sol", + "id": 13428, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 14512, + "src": "188:42:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Address.sol", + "file": "../../utils/Address.sol", + "id": 13429, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 14842, + "src": "231:33:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Context.sol", + "file": "../../utils/Context.sol", + "id": 13430, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 14872, + "src": "265:33:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", + "file": "../../utils/Strings.sol", + "id": 13431, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 15101, + "src": "299:33:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "file": "../../utils/introspection/ERC165.sol", + "id": 13432, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14351, + "sourceUnit": 15125, + "src": "333:46:55", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 13434, + "name": "Context", + "nameLocations": [ + "647:7:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14871, + "src": "647:7:55" + }, + "id": 13435, + "nodeType": "InheritanceSpecifier", + "src": "647:7:55" + }, + { + "baseName": { + "id": 13436, + "name": "ERC165", + "nameLocations": [ + "656:6:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "656:6:55" + }, + "id": 13437, + "nodeType": "InheritanceSpecifier", + "src": "656:6:55" + }, + { + "baseName": { + "id": 13438, + "name": "IERC721", + "nameLocations": [ + "664:7:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14466, + "src": "664:7:55" + }, + "id": 13439, + "nodeType": "InheritanceSpecifier", + "src": "664:7:55" + }, + { + "baseName": { + "id": 13440, + "name": "IERC721Metadata", + "nameLocations": [ + "673:15:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14511, + "src": "673:15:55" + }, + "id": 13441, + "nodeType": "InheritanceSpecifier", + "src": "673:15:55" + } + ], + "canonicalName": "ERC721", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 13433, + "nodeType": "StructuredDocumentation", + "src": "381:246:55", + "text": " @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including\n the Metadata extension, but not including the Enumerable extension, which is available separately as\n {ERC721Enumerable}." + }, + "fullyImplemented": true, + "id": 14350, + "linearizedBaseContracts": [ + 14350, + 14511, + 14466, + 15124, + 15136, + 14871 + ], + "name": "ERC721", + "nameLocation": "637:6:55", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 13444, + "libraryName": { + "id": 13442, + "name": "Address", + "nameLocations": [ + "701:7:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14841, + "src": "701:7:55" + }, + "nodeType": "UsingForDirective", + "src": "695:26:55", + "typeName": { + "id": 13443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "713:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "global": false, + "id": 13447, + "libraryName": { + "id": 13445, + "name": "Strings", + "nameLocations": [ + "732:7:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15100, + "src": "732:7:55" + }, + "nodeType": "UsingForDirective", + "src": "726:26:55", + "typeName": { + "id": 13446, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "744:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 13449, + "mutability": "mutable", + "name": "_name", + "nameLocation": "791:5:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "776:20:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 13448, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "776:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 13451, + "mutability": "mutable", + "name": "_symbol", + "nameLocation": "838:7:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "823:22:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 13450, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "823:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 13455, + "mutability": "mutable", + "name": "_owners", + "nameLocation": "934:7:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "898:43:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "typeName": { + "id": 13454, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 13452, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "906:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "898:27:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 13453, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "917:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 13459, + "mutability": "mutable", + "name": "_balances", + "nameLocation": "1028:9:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "992:45:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 13458, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 13456, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1000:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "992:27:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 13457, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1011:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 13463, + "mutability": "mutable", + "name": "_tokenApprovals", + "nameLocation": "1129:15:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "1093:51:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "typeName": { + "id": 13462, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 13460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1101:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1093:27:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 13461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1112:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "visibility": "private" + }, + { + "constant": false, + "id": 13469, + "mutability": "mutable", + "name": "_operatorApprovals", + "nameLocation": "1252:18:55", + "nodeType": "VariableDeclaration", + "scope": 14350, + "src": "1199:71:55", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "typeName": { + "id": 13468, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 13464, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1207:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1199:44:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 13467, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 13465, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1226:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1218:24:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 13466, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1237:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "visibility": "private" + }, + { + "body": { + "id": 13485, + "nodeType": "Block", + "src": "1446:57:55", + "statements": [ + { + "expression": { + "id": 13479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 13477, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13449, + "src": "1456:5:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 13478, + "name": "name_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13472, + "src": "1464:5:55", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1456:13:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 13480, + "nodeType": "ExpressionStatement", + "src": "1456:13:55" + }, + { + "expression": { + "id": 13483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 13481, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13451, + "src": "1479:7:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 13482, + "name": "symbol_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13474, + "src": "1489:7:55", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1479:17:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 13484, + "nodeType": "ExpressionStatement", + "src": "1479:17:55" + } + ] + }, + "documentation": { + "id": 13470, + "nodeType": "StructuredDocumentation", + "src": "1277:108:55", + "text": " @dev Initializes the contract by setting a `name` and a `symbol` to the token collection." + }, + "id": 13486, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13475, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13472, + "mutability": "mutable", + "name": "name_", + "nameLocation": "1416:5:55", + "nodeType": "VariableDeclaration", + "scope": 13486, + "src": "1402:19:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13471, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1402:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13474, + "mutability": "mutable", + "name": "symbol_", + "nameLocation": "1437:7:55", + "nodeType": "VariableDeclaration", + "scope": 13486, + "src": "1423:21:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13473, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1423:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1401:44:55" + }, + "returnParameters": { + "id": 13476, + "nodeType": "ParameterList", + "parameters": [], + "src": "1446:0:55" + }, + "scope": 14350, + "src": "1390:113:55", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 15123, + 15135 + ], + "body": { + "id": 13516, + "nodeType": "Block", + "src": "1678:192:55", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 13502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13497, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13489, + "src": "1707:11:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 13499, + "name": "IERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14466, + "src": "1727:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721_$14466_$", + "typeString": "type(contract IERC721)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC721_$14466_$", + "typeString": "type(contract IERC721)" + } + ], + "id": 13498, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1722:4:55", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 13500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1722:13:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721_$14466", + "typeString": "type(contract IERC721)" + } + }, + "id": 13501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1736:11:55", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1722:25:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1707:40:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 13508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13503, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13489, + "src": "1763:11:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 13505, + "name": "IERC721Metadata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14511, + "src": "1783:15:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$14511_$", + "typeString": "type(contract IERC721Metadata)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$14511_$", + "typeString": "type(contract IERC721Metadata)" + } + ], + "id": 13504, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1778:4:55", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 13506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1778:21:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721Metadata_$14511", + "typeString": "type(contract IERC721Metadata)" + } + }, + "id": 13507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1800:11:55", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1778:33:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1763:48:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1707:104:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 13512, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13489, + "src": "1851:11:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 13510, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "1827:5:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_ERC721_$14350_$", + "typeString": "type(contract super ERC721)" + } + }, + "id": 13511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1833:17:55", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 15123, + "src": "1827:23:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 13513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1827:36:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1707:156:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 13496, + "id": 13515, + "nodeType": "Return", + "src": "1688:175:55" + } + ] + }, + "documentation": { + "id": 13487, + "nodeType": "StructuredDocumentation", + "src": "1509:56:55", + "text": " @dev See {IERC165-supportsInterface}." + }, + "functionSelector": "01ffc9a7", + "id": 13517, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "1579:17:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13493, + "nodeType": "OverrideSpecifier", + "overrides": [ + { + "id": 13491, + "name": "ERC165", + "nameLocations": [ + "1646:6:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "1646:6:55" + }, + { + "id": 13492, + "name": "IERC165", + "nameLocations": [ + "1654:7:55" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "1654:7:55" + } + ], + "src": "1637:25:55" + }, + "parameters": { + "id": 13490, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13489, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "1604:11:55", + "nodeType": "VariableDeclaration", + "scope": 13517, + "src": "1597:18:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 13488, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1597:6:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1596:20:55" + }, + "returnParameters": { + "id": 13496, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13495, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13517, + "src": "1672:4:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13494, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1672:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1671:6:55" + }, + "scope": 14350, + "src": "1570:300:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14391 + ], + "body": { + "id": 13540, + "nodeType": "Block", + "src": "2010:123:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13527, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13520, + "src": "2028:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 13530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2045:1:55", + "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": 13529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2037:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13528, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2037:7:55", + "typeDescriptions": {} + } + }, + "id": 13531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2037:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2028:19:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f7420612076616c6964206f776e6572", + "id": 13533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2049:43:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "typeString": "literal_string \"ERC721: address zero is not a valid owner\"" + }, + "value": "ERC721: address zero is not a valid owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "typeString": "literal_string \"ERC721: address zero is not a valid owner\"" + } + ], + "id": 13526, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2020:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2020:73:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13535, + "nodeType": "ExpressionStatement", + "src": "2020:73:55" + }, + { + "expression": { + "baseExpression": { + "id": 13536, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "2110:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 13538, + "indexExpression": { + "id": 13537, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13520, + "src": "2120:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2110:16:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 13525, + "id": 13539, + "nodeType": "Return", + "src": "2103:23:55" + } + ] + }, + "documentation": { + "id": 13518, + "nodeType": "StructuredDocumentation", + "src": "1876:48:55", + "text": " @dev See {IERC721-balanceOf}." + }, + "functionSelector": "70a08231", + "id": 13541, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "1938:9:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13522, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1983:8:55" + }, + "parameters": { + "id": 13521, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13520, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1956:5:55", + "nodeType": "VariableDeclaration", + "scope": 13541, + "src": "1948:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13519, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1948:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1947:15:55" + }, + "returnParameters": { + "id": 13525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13524, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13541, + "src": "2001:7:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13523, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2001:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2000:9:55" + }, + "scope": 14350, + "src": "1929:204:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14399 + ], + "body": { + "id": 13568, + "nodeType": "Block", + "src": "2271:138:55", + "statements": [ + { + "assignments": [ + 13551 + ], + "declarations": [ + { + "constant": false, + "id": 13551, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2289:5:55", + "nodeType": "VariableDeclaration", + "scope": 13568, + "src": "2281:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13550, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2281:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 13555, + "initialValue": { + "arguments": [ + { + "id": 13553, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13544, + "src": "2306:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13552, + "name": "_ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13851, + "src": "2297:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 13554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2297:17:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2281:33:55" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13562, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13557, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13551, + "src": "2332:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 13560, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2349:1:55", + "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": 13559, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2341:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13558, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2341:7:55", + "typeDescriptions": {} + } + }, + "id": 13561, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2341:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2332:19:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "id": 13563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2353:26:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "typeString": "literal_string \"ERC721: invalid token ID\"" + }, + "value": "ERC721: invalid token ID" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "typeString": "literal_string \"ERC721: invalid token ID\"" + } + ], + "id": 13556, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2324:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2324:56:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13565, + "nodeType": "ExpressionStatement", + "src": "2324:56:55" + }, + { + "expression": { + "id": 13566, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13551, + "src": "2397:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 13549, + "id": 13567, + "nodeType": "Return", + "src": "2390:12:55" + } + ] + }, + "documentation": { + "id": 13542, + "nodeType": "StructuredDocumentation", + "src": "2139:46:55", + "text": " @dev See {IERC721-ownerOf}." + }, + "functionSelector": "6352211e", + "id": 13569, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "2199:7:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13546, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2244:8:55" + }, + "parameters": { + "id": 13545, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13544, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2215:7:55", + "nodeType": "VariableDeclaration", + "scope": 13569, + "src": "2207:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13543, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2207:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2206:17:55" + }, + "returnParameters": { + "id": 13549, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13548, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13569, + "src": "2262:7:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13547, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2262:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2261:9:55" + }, + "scope": 14350, + "src": "2190:219:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14496 + ], + "body": { + "id": 13578, + "nodeType": "Block", + "src": "2540:29:55", + "statements": [ + { + "expression": { + "id": 13576, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13449, + "src": "2557:5:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 13575, + "id": 13577, + "nodeType": "Return", + "src": "2550:12:55" + } + ] + }, + "documentation": { + "id": 13570, + "nodeType": "StructuredDocumentation", + "src": "2415:51:55", + "text": " @dev See {IERC721Metadata-name}." + }, + "functionSelector": "06fdde03", + "id": 13579, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "2480:4:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13572, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2507:8:55" + }, + "parameters": { + "id": 13571, + "nodeType": "ParameterList", + "parameters": [], + "src": "2484:2:55" + }, + "returnParameters": { + "id": 13575, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13574, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13579, + "src": "2525:13:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13573, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2525:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2524:15:55" + }, + "scope": 14350, + "src": "2471:98:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14502 + ], + "body": { + "id": 13588, + "nodeType": "Block", + "src": "2704:31:55", + "statements": [ + { + "expression": { + "id": 13586, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13451, + "src": "2721:7:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 13585, + "id": 13587, + "nodeType": "Return", + "src": "2714:14:55" + } + ] + }, + "documentation": { + "id": 13580, + "nodeType": "StructuredDocumentation", + "src": "2575:53:55", + "text": " @dev See {IERC721Metadata-symbol}." + }, + "functionSelector": "95d89b41", + "id": 13589, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "2642:6:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13582, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2671:8:55" + }, + "parameters": { + "id": 13581, + "nodeType": "ParameterList", + "parameters": [], + "src": "2648:2:55" + }, + "returnParameters": { + "id": 13585, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13584, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13589, + "src": "2689:13:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13583, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2689:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2688:15:55" + }, + "scope": 14350, + "src": "2633:102:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14510 + ], + "body": { + "id": 13627, + "nodeType": "Block", + "src": "2889:188:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13599, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13592, + "src": "2914:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13598, + "name": "_requireMinted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14246, + "src": "2899:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$__$", + "typeString": "function (uint256) view" + } + }, + "id": 13600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2899:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13601, + "nodeType": "ExpressionStatement", + "src": "2899:23:55" + }, + { + "assignments": [ + 13603 + ], + "declarations": [ + { + "constant": false, + "id": 13603, + "mutability": "mutable", + "name": "baseURI", + "nameLocation": "2947:7:55", + "nodeType": "VariableDeclaration", + "scope": 13627, + "src": "2933:21:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13602, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2933:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 13606, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13604, + "name": "_baseURI", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13637, + "src": "2957:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", + "typeString": "function () view returns (string memory)" + } + }, + "id": 13605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2957:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2933:34:55" + }, + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 13613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "id": 13609, + "name": "baseURI", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13603, + "src": "2990:7:55", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 13608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2984:5:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 13607, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2984:5:55", + "typeDescriptions": {} + } + }, + "id": 13610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2984:14:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 13611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2999:6:55", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "2984:21:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 13612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3008:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2984:25:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "", + "id": 13624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3068:2:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + "id": 13625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "2984:86:55", + "trueExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 13618, + "name": "baseURI", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13603, + "src": "3036:7:55", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 13619, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13592, + "src": "3045:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3053:8:55", + "memberName": "toString", + "nodeType": "MemberAccess", + "referencedDeclaration": 14930, + "src": "3045:16:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$attached_to$_t_uint256_$", + "typeString": "function (uint256) pure returns (string memory)" + } + }, + "id": 13621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3045:18:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13616, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3019:3:55", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3023:12:55", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "3019:16:55", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 13622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3019:45:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13615, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3012:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 13614, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3012:6:55", + "typeDescriptions": {} + } + }, + "id": 13623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3012:53:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 13597, + "id": 13626, + "nodeType": "Return", + "src": "2977:93:55" + } + ] + }, + "documentation": { + "id": 13590, + "nodeType": "StructuredDocumentation", + "src": "2741:55:55", + "text": " @dev See {IERC721Metadata-tokenURI}." + }, + "functionSelector": "c87b56dd", + "id": 13628, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tokenURI", + "nameLocation": "2810:8:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13594, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2856:8:55" + }, + "parameters": { + "id": 13593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13592, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2827:7:55", + "nodeType": "VariableDeclaration", + "scope": 13628, + "src": "2819:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13591, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2819:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2818:17:55" + }, + "returnParameters": { + "id": 13597, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13596, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13628, + "src": "2874:13:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13595, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2874:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2873:15:55" + }, + "scope": 14350, + "src": "2801:276:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 13636, + "nodeType": "Block", + "src": "3385:26:55", + "statements": [ + { + "expression": { + "hexValue": "", + "id": 13634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3402:2:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + "functionReturnParameters": 13633, + "id": 13635, + "nodeType": "Return", + "src": "3395:9:55" + } + ] + }, + "documentation": { + "id": 13629, + "nodeType": "StructuredDocumentation", + "src": "3083:231:55", + "text": " @dev Base URI for computing {tokenURI}. If set, the resulting URI for each\n token will be the concatenation of the `baseURI` and the `tokenId`. Empty\n by default, can be overridden in child contracts." + }, + "id": 13637, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_baseURI", + "nameLocation": "3328:8:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13630, + "nodeType": "ParameterList", + "parameters": [], + "src": "3336:2:55" + }, + "returnParameters": { + "id": 13633, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13632, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13637, + "src": "3370:13:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13631, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3370:6:55", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3369:15:55" + }, + "scope": 14350, + "src": "3319:92:55", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "baseFunctions": [ + 14439 + ], + "body": { + "id": 13679, + "nodeType": "Block", + "src": "3538:336:55", + "statements": [ + { + "assignments": [ + 13647 + ], + "declarations": [ + { + "constant": false, + "id": 13647, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3556:5:55", + "nodeType": "VariableDeclaration", + "scope": 13679, + "src": "3548:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13646, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3548:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 13652, + "initialValue": { + "arguments": [ + { + "id": 13650, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13642, + "src": "3579:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13648, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "3564:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 13649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3571:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "3564:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 13651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3564:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3548:39:55" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13654, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13640, + "src": "3605:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 13655, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13647, + "src": "3611:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3605:11:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e6572", + "id": 13657, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3618:35:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "typeString": "literal_string \"ERC721: approval to current owner\"" + }, + "value": "ERC721: approval to current owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "typeString": "literal_string \"ERC721: approval to current owner\"" + } + ], + "id": 13653, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3597:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3597:57:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13659, + "nodeType": "ExpressionStatement", + "src": "3597:57:55" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13670, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13661, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "3686:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3686:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 13663, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13647, + "src": "3702:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3686:21:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 13666, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13647, + "src": "3728:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13667, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "3735:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3735:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13665, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13733, + "src": "3711:16:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 13669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3711:37:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3686:62:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "id": 13671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3762:63:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "typeString": "literal_string \"ERC721: approve caller is not token owner or approved for all\"" + }, + "value": "ERC721: approve caller is not token owner or approved for all" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "typeString": "literal_string \"ERC721: approve caller is not token owner or approved for all\"" + } + ], + "id": 13660, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3665:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3665:170:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13673, + "nodeType": "ExpressionStatement", + "src": "3665:170:55" + }, + { + "expression": { + "arguments": [ + { + "id": 13675, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13640, + "src": "3855:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13676, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13642, + "src": "3859:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13674, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14200, + "src": "3846:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 13677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3846:21:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13678, + "nodeType": "ExpressionStatement", + "src": "3846:21:55" + } + ] + }, + "documentation": { + "id": 13638, + "nodeType": "StructuredDocumentation", + "src": "3417:46:55", + "text": " @dev See {IERC721-approve}." + }, + "functionSelector": "095ea7b3", + "id": 13680, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "3477:7:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13644, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3529:8:55" + }, + "parameters": { + "id": 13643, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13640, + "mutability": "mutable", + "name": "to", + "nameLocation": "3493:2:55", + "nodeType": "VariableDeclaration", + "scope": 13680, + "src": "3485:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13639, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3485:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13642, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "3505:7:55", + "nodeType": "VariableDeclaration", + "scope": 13680, + "src": "3497:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13641, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3497:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3484:29:55" + }, + "returnParameters": { + "id": 13645, + "nodeType": "ParameterList", + "parameters": [], + "src": "3538:0:55" + }, + "scope": 14350, + "src": "3468:406:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14455 + ], + "body": { + "id": 13697, + "nodeType": "Block", + "src": "4020:82:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13690, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13683, + "src": "4045:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13689, + "name": "_requireMinted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14246, + "src": "4030:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$__$", + "typeString": "function (uint256) view" + } + }, + "id": 13691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4030:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13692, + "nodeType": "ExpressionStatement", + "src": "4030:23:55" + }, + { + "expression": { + "baseExpression": { + "id": 13693, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13463, + "src": "4071:15:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 13695, + "indexExpression": { + "id": 13694, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13683, + "src": "4087:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4071:24:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 13688, + "id": 13696, + "nodeType": "Return", + "src": "4064:31:55" + } + ] + }, + "documentation": { + "id": 13681, + "nodeType": "StructuredDocumentation", + "src": "3880:50:55", + "text": " @dev See {IERC721-getApproved}." + }, + "functionSelector": "081812fc", + "id": 13698, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getApproved", + "nameLocation": "3944:11:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13685, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3993:8:55" + }, + "parameters": { + "id": 13684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13683, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "3964:7:55", + "nodeType": "VariableDeclaration", + "scope": 13698, + "src": "3956:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13682, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3956:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3955:17:55" + }, + "returnParameters": { + "id": 13688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13687, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13698, + "src": "4011:7:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13686, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4011:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4010:9:55" + }, + "scope": 14350, + "src": "3935:167:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14447 + ], + "body": { + "id": 13714, + "nodeType": "Block", + "src": "4253:69:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13708, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "4282:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4282:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13710, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13701, + "src": "4296:8:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13711, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13703, + "src": "4306:8:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 13707, + "name": "_setApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14232, + "src": "4263:18:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 13712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4263:52:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13713, + "nodeType": "ExpressionStatement", + "src": "4263:52:55" + } + ] + }, + "documentation": { + "id": 13699, + "nodeType": "StructuredDocumentation", + "src": "4108:56:55", + "text": " @dev See {IERC721-setApprovalForAll}." + }, + "functionSelector": "a22cb465", + "id": 13715, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "4178:17:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13705, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4244:8:55" + }, + "parameters": { + "id": 13704, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13701, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4204:8:55", + "nodeType": "VariableDeclaration", + "scope": 13715, + "src": "4196:16:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13700, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4196:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13703, + "mutability": "mutable", + "name": "approved", + "nameLocation": "4219:8:55", + "nodeType": "VariableDeclaration", + "scope": 13715, + "src": "4214:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13702, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4214:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4195:33:55" + }, + "returnParameters": { + "id": 13706, + "nodeType": "ParameterList", + "parameters": [], + "src": "4253:0:55" + }, + "scope": 14350, + "src": "4169:153:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14465 + ], + "body": { + "id": 13732, + "nodeType": "Block", + "src": "4491:59:55", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 13726, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13469, + "src": "4508:18:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 13728, + "indexExpression": { + "id": 13727, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13718, + "src": "4527:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4508:25:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 13730, + "indexExpression": { + "id": 13729, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13720, + "src": "4534:8:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4508:35:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 13725, + "id": 13731, + "nodeType": "Return", + "src": "4501:42:55" + } + ] + }, + "documentation": { + "id": 13716, + "nodeType": "StructuredDocumentation", + "src": "4328:55:55", + "text": " @dev See {IERC721-isApprovedForAll}." + }, + "functionSelector": "e985e9c5", + "id": 13733, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "4397:16:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13722, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4467:8:55" + }, + "parameters": { + "id": 13721, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13718, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4422:5:55", + "nodeType": "VariableDeclaration", + "scope": 13733, + "src": "4414:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4414:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13720, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4437:8:55", + "nodeType": "VariableDeclaration", + "scope": 13733, + "src": "4429:16:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4429:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4413:33:55" + }, + "returnParameters": { + "id": 13725, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13724, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13733, + "src": "4485:4:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13723, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4485:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4484:6:55" + }, + "scope": 14350, + "src": "4388:162:55", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14431 + ], + "body": { + "id": 13759, + "nodeType": "Block", + "src": "4701:207:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13746, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "4790:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4790:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13748, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13740, + "src": "4804:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13745, + "name": "_isApprovedOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13903, + "src": "4771:18:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) view returns (bool)" + } + }, + "id": 13749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4771:41:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6572206f7220617070726f766564", + "id": 13750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4814:47:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "typeString": "literal_string \"ERC721: caller is not token owner or approved\"" + }, + "value": "ERC721: caller is not token owner or approved" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "typeString": "literal_string \"ERC721: caller is not token owner or approved\"" + } + ], + "id": 13744, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4763:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4763:99:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13752, + "nodeType": "ExpressionStatement", + "src": "4763:99:55" + }, + { + "expression": { + "arguments": [ + { + "id": 13754, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13736, + "src": "4883:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13755, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13738, + "src": "4889:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13756, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13740, + "src": "4893:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13753, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14176, + "src": "4873:9:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 13757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4873:28:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13758, + "nodeType": "ExpressionStatement", + "src": "4873:28:55" + } + ] + }, + "documentation": { + "id": 13734, + "nodeType": "StructuredDocumentation", + "src": "4556:51:55", + "text": " @dev See {IERC721-transferFrom}." + }, + "functionSelector": "23b872dd", + "id": 13760, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "4621:12:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13742, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "4692:8:55" + }, + "parameters": { + "id": 13741, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13736, + "mutability": "mutable", + "name": "from", + "nameLocation": "4642:4:55", + "nodeType": "VariableDeclaration", + "scope": 13760, + "src": "4634:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13735, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4634:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13738, + "mutability": "mutable", + "name": "to", + "nameLocation": "4656:2:55", + "nodeType": "VariableDeclaration", + "scope": 13760, + "src": "4648:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13737, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4648:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13740, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4668:7:55", + "nodeType": "VariableDeclaration", + "scope": 13760, + "src": "4660:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13739, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4660:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4633:43:55" + }, + "returnParameters": { + "id": 13743, + "nodeType": "ParameterList", + "parameters": [], + "src": "4701:0:55" + }, + "scope": 14350, + "src": "4612:296:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14421 + ], + "body": { + "id": 13778, + "nodeType": "Block", + "src": "5067:56:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13772, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13763, + "src": "5094:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13773, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13765, + "src": "5100:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13774, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13767, + "src": "5104:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "", + "id": 13775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5113:2:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 13771, + "name": "safeTransferFrom", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 13779, + 13809 + ], + "referencedDeclaration": 13809, + "src": "5077:16:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,bytes memory)" + } + }, + "id": 13776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5077:39:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13777, + "nodeType": "ExpressionStatement", + "src": "5077:39:55" + } + ] + }, + "documentation": { + "id": 13761, + "nodeType": "StructuredDocumentation", + "src": "4914:55:55", + "text": " @dev See {IERC721-safeTransferFrom}." + }, + "functionSelector": "42842e0e", + "id": 13779, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "4983:16:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13769, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5058:8:55" + }, + "parameters": { + "id": 13768, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13763, + "mutability": "mutable", + "name": "from", + "nameLocation": "5008:4:55", + "nodeType": "VariableDeclaration", + "scope": 13779, + "src": "5000:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13762, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5000:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13765, + "mutability": "mutable", + "name": "to", + "nameLocation": "5022:2:55", + "nodeType": "VariableDeclaration", + "scope": 13779, + "src": "5014:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13764, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5014:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13767, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "5034:7:55", + "nodeType": "VariableDeclaration", + "scope": 13779, + "src": "5026:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13766, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5026:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4999:43:55" + }, + "returnParameters": { + "id": 13770, + "nodeType": "ParameterList", + "parameters": [], + "src": "5067:0:55" + }, + "scope": 14350, + "src": "4974:149:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "baseFunctions": [ + 14411 + ], + "body": { + "id": 13808, + "nodeType": "Block", + "src": "5301:164:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 13794, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "5338:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 13795, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5338:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13796, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13786, + "src": "5352:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13793, + "name": "_isApprovedOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13903, + "src": "5319:18:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) view returns (bool)" + } + }, + "id": 13797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5319:41:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6572206f7220617070726f766564", + "id": 13798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5362:47:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "typeString": "literal_string \"ERC721: caller is not token owner or approved\"" + }, + "value": "ERC721: caller is not token owner or approved" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "typeString": "literal_string \"ERC721: caller is not token owner or approved\"" + } + ], + "id": 13792, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5311:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5311:99:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13800, + "nodeType": "ExpressionStatement", + "src": "5311:99:55" + }, + { + "expression": { + "arguments": [ + { + "id": 13802, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13782, + "src": "5434:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13803, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13784, + "src": "5440:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13804, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13786, + "src": "5444:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13805, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13788, + "src": "5453:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13801, + "name": "_safeTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13838, + "src": "5420:13:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,bytes memory)" + } + }, + "id": 13806, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5420:38:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13807, + "nodeType": "ExpressionStatement", + "src": "5420:38:55" + } + ] + }, + "documentation": { + "id": 13780, + "nodeType": "StructuredDocumentation", + "src": "5129:55:55", + "text": " @dev See {IERC721-safeTransferFrom}." + }, + "functionSelector": "b88d4fde", + "id": 13809, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "5198:16:55", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 13790, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "5292:8:55" + }, + "parameters": { + "id": 13789, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13782, + "mutability": "mutable", + "name": "from", + "nameLocation": "5223:4:55", + "nodeType": "VariableDeclaration", + "scope": 13809, + "src": "5215:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13781, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5215:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13784, + "mutability": "mutable", + "name": "to", + "nameLocation": "5237:2:55", + "nodeType": "VariableDeclaration", + "scope": 13809, + "src": "5229:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13783, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5229:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13786, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "5249:7:55", + "nodeType": "VariableDeclaration", + "scope": 13809, + "src": "5241:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13785, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5241:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13788, + "mutability": "mutable", + "name": "data", + "nameLocation": "5271:4:55", + "nodeType": "VariableDeclaration", + "scope": 13809, + "src": "5258:17:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13787, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5258:5:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5214:62:55" + }, + "returnParameters": { + "id": 13791, + "nodeType": "ParameterList", + "parameters": [], + "src": "5301:0:55" + }, + "scope": 14350, + "src": "5189:276:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 13837, + "nodeType": "Block", + "src": "6428:165:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13822, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13812, + "src": "6448:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13823, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13814, + "src": "6454:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13824, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13816, + "src": "6458:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13821, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14176, + "src": "6438:9:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 13825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6438:28:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13826, + "nodeType": "ExpressionStatement", + "src": "6438:28:55" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 13829, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13812, + "src": "6507:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13830, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13814, + "src": "6513:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13831, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13816, + "src": "6517:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13832, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13818, + "src": "6526:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13828, + "name": "_checkOnERC721Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14308, + "src": "6484:22:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,address,uint256,bytes memory) returns (bool)" + } + }, + "id": 13833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6484:47:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", + "id": 13834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6533:52:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + }, + "value": "ERC721: transfer to non ERC721Receiver implementer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + } + ], + "id": 13827, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6476:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6476:110:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13836, + "nodeType": "ExpressionStatement", + "src": "6476:110:55" + } + ] + }, + "documentation": { + "id": 13810, + "nodeType": "StructuredDocumentation", + "src": "5471:850:55", + "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n `data` is additional data, it has no specified format and it is sent in call to `to`.\n This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.\n implement alternative mechanisms to perform token transfer, such as signature-based.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." + }, + "id": 13838, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_safeTransfer", + "nameLocation": "6335:13:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13819, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13812, + "mutability": "mutable", + "name": "from", + "nameLocation": "6357:4:55", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "6349:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13811, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6349:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13814, + "mutability": "mutable", + "name": "to", + "nameLocation": "6371:2:55", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "6363:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13813, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6363:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13816, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "6383:7:55", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "6375:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13815, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6375:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13818, + "mutability": "mutable", + "name": "data", + "nameLocation": "6405:4:55", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "6392:17:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13817, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6392:5:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6348:62:55" + }, + "returnParameters": { + "id": 13820, + "nodeType": "ParameterList", + "parameters": [], + "src": "6428:0:55" + }, + "scope": 14350, + "src": "6326:267:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13850, + "nodeType": "Block", + "src": "6777:40:55", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 13846, + "name": "_owners", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13455, + "src": "6794:7:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 13848, + "indexExpression": { + "id": 13847, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13841, + "src": "6802:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6794:16:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 13845, + "id": 13849, + "nodeType": "Return", + "src": "6787:23:55" + } + ] + }, + "documentation": { + "id": 13839, + "nodeType": "StructuredDocumentation", + "src": "6599:98:55", + "text": " @dev Returns the owner of the `tokenId`. Does NOT revert if token doesn't exist" + }, + "id": 13851, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_ownerOf", + "nameLocation": "6711:8:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13842, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13841, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "6728:7:55", + "nodeType": "VariableDeclaration", + "scope": 13851, + "src": "6720:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13840, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6720:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6719:17:55" + }, + "returnParameters": { + "id": 13845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13844, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13851, + "src": "6768:7:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6768:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6767:9:55" + }, + "scope": 14350, + "src": "6702:115:55", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13868, + "nodeType": "Block", + "src": "7191:55:55", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 13860, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13854, + "src": "7217:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13859, + "name": "_ownerOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13851, + "src": "7208:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 13861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7208:17:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 13864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7237:1:55", + "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": 13863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7229:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13862, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7229:7:55", + "typeDescriptions": {} + } + }, + "id": 13865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7229:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7208:31:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 13858, + "id": 13867, + "nodeType": "Return", + "src": "7201:38:55" + } + ] + }, + "documentation": { + "id": 13852, + "nodeType": "StructuredDocumentation", + "src": "6823:292:55", + "text": " @dev Returns whether `tokenId` exists.\n Tokens can be managed by their owner or approved accounts via {approve} or {setApprovalForAll}.\n Tokens start existing when they are minted (`_mint`),\n and stop existing when they are burned (`_burn`)." + }, + "id": 13869, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_exists", + "nameLocation": "7129:7:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13855, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13854, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "7145:7:55", + "nodeType": "VariableDeclaration", + "scope": 13869, + "src": "7137:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13853, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7137:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7136:17:55" + }, + "returnParameters": { + "id": 13858, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13857, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13869, + "src": "7185:4:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13856, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7185:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7184:6:55" + }, + "scope": 14350, + "src": "7120:126:55", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13902, + "nodeType": "Block", + "src": "7503:162:55", + "statements": [ + { + "assignments": [ + 13880 + ], + "declarations": [ + { + "constant": false, + "id": 13880, + "mutability": "mutable", + "name": "owner", + "nameLocation": "7521:5:55", + "nodeType": "VariableDeclaration", + "scope": 13902, + "src": "7513:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13879, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7513:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 13885, + "initialValue": { + "arguments": [ + { + "id": 13883, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13874, + "src": "7544:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13881, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "7529:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 13882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7536:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "7529:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 13884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7529:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7513:39:55" + }, + { + "expression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 13893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13888, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13886, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13872, + "src": "7570:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 13887, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13880, + "src": "7581:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7570:16:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 13890, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13880, + "src": "7607:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13891, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13872, + "src": "7614:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13889, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13733, + "src": "7590:16:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 13892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7590:32:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7570:52:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 13895, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13874, + "src": "7638:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13894, + "name": "getApproved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13698, + "src": "7626:11:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 13896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7626:20:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 13897, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13872, + "src": "7650:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7626:31:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7570:87:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 13900, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7569:89:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 13878, + "id": 13901, + "nodeType": "Return", + "src": "7562:96:55" + } + ] + }, + "documentation": { + "id": 13870, + "nodeType": "StructuredDocumentation", + "src": "7252:147:55", + "text": " @dev Returns whether `spender` is allowed to manage `tokenId`.\n Requirements:\n - `tokenId` must exist." + }, + "id": 13903, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_isApprovedOrOwner", + "nameLocation": "7413:18:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13872, + "mutability": "mutable", + "name": "spender", + "nameLocation": "7440:7:55", + "nodeType": "VariableDeclaration", + "scope": 13903, + "src": "7432:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13871, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7432:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13874, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "7457:7:55", + "nodeType": "VariableDeclaration", + "scope": 13903, + "src": "7449:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7449:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7431:34:55" + }, + "returnParameters": { + "id": 13878, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13877, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13903, + "src": "7497:4:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13876, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7497:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7496:6:55" + }, + "scope": 14350, + "src": "7404:261:55", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13917, + "nodeType": "Block", + "src": "8060:43:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13912, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13906, + "src": "8080:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13913, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13908, + "src": "8084:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "", + "id": 13914, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8093:2:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 13911, + "name": "_safeMint", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 13918, + 13947 + ], + "referencedDeclaration": 13947, + "src": "8070:9:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,uint256,bytes memory)" + } + }, + "id": 13915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8070:26:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13916, + "nodeType": "ExpressionStatement", + "src": "8070:26:55" + } + ] + }, + "documentation": { + "id": 13904, + "nodeType": "StructuredDocumentation", + "src": "7671:319:55", + "text": " @dev Safely mints `tokenId` and transfers it to `to`.\n Requirements:\n - `tokenId` must not exist.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." + }, + "id": 13918, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_safeMint", + "nameLocation": "8004:9:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13909, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13906, + "mutability": "mutable", + "name": "to", + "nameLocation": "8022:2:55", + "nodeType": "VariableDeclaration", + "scope": 13918, + "src": "8014:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13905, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8014:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13908, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "8034:7:55", + "nodeType": "VariableDeclaration", + "scope": 13918, + "src": "8026:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13907, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8026:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8013:29:55" + }, + "returnParameters": { + "id": 13910, + "nodeType": "ParameterList", + "parameters": [], + "src": "8060:0:55" + }, + "scope": 14350, + "src": "7995:108:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 13946, + "nodeType": "Block", + "src": "8408:195:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 13929, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13921, + "src": "8424:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13930, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13923, + "src": "8428:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13928, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14024, + "src": "8418:5:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 13931, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8418:18:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13932, + "nodeType": "ExpressionStatement", + "src": "8418:18:55" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 13937, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8498:1:55", + "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": 13936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8490:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13935, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8490:7:55", + "typeDescriptions": {} + } + }, + "id": 13938, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8490:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13939, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13921, + "src": "8502:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13940, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13923, + "src": "8506:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13941, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13925, + "src": "8515:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13934, + "name": "_checkOnERC721Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14308, + "src": "8467:22:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,address,uint256,bytes memory) returns (bool)" + } + }, + "id": 13942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8467:53:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", + "id": 13943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8534:52:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + }, + "value": "ERC721: transfer to non ERC721Receiver implementer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + } + ], + "id": 13933, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8446:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8446:150:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13945, + "nodeType": "ExpressionStatement", + "src": "8446:150:55" + } + ] + }, + "documentation": { + "id": 13919, + "nodeType": "StructuredDocumentation", + "src": "8109:210:55", + "text": " @dev Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is\n forwarded in {IERC721Receiver-onERC721Received} to contract recipients." + }, + "id": 13947, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_safeMint", + "nameLocation": "8333:9:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13921, + "mutability": "mutable", + "name": "to", + "nameLocation": "8351:2:55", + "nodeType": "VariableDeclaration", + "scope": 13947, + "src": "8343:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8343:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13923, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "8363:7:55", + "nodeType": "VariableDeclaration", + "scope": 13947, + "src": "8355:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13922, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8355:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13925, + "mutability": "mutable", + "name": "data", + "nameLocation": "8385:4:55", + "nodeType": "VariableDeclaration", + "scope": 13947, + "src": "8372:17:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13924, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8372:5:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8342:48:55" + }, + "returnParameters": { + "id": 13927, + "nodeType": "ParameterList", + "parameters": [], + "src": "8408:0:55" + }, + "scope": 14350, + "src": "8324:279:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14023, + "nodeType": "Block", + "src": "8986:859:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 13961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 13956, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9004:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 13959, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9018:1:55", + "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": 13958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9010:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13957, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9010:7:55", + "typeDescriptions": {} + } + }, + "id": 13960, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9010:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9004:16:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", + "id": 13962, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9022:34:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "typeString": "literal_string \"ERC721: mint to the zero address\"" + }, + "value": "ERC721: mint to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "typeString": "literal_string \"ERC721: mint to the zero address\"" + } + ], + "id": 13955, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8996:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8996:61:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13964, + "nodeType": "ExpressionStatement", + "src": "8996:61:55" + }, + { + "expression": { + "arguments": [ + { + "id": 13969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "9075:17:55", + "subExpression": { + "arguments": [ + { + "id": 13967, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9084:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13966, + "name": "_exists", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13869, + "src": "9076:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 13968, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9076:16:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", + "id": 13970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9094:30:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "typeString": "literal_string \"ERC721: token already minted\"" + }, + "value": "ERC721: token already minted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "typeString": "literal_string \"ERC721: token already minted\"" + } + ], + "id": 13965, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9067:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9067:58:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13972, + "nodeType": "ExpressionStatement", + "src": "9067:58:55" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 13976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9165:1:55", + "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": 13975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9157:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13974, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9157:7:55", + "typeDescriptions": {} + } + }, + "id": 13977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9157:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13978, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9169:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13979, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9173:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 13980, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9182:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 13973, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14321, + "src": "9136:20:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 13981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9136:48:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13982, + "nodeType": "ExpressionStatement", + "src": "9136:48:55" + }, + { + "expression": { + "arguments": [ + { + "id": 13987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "9279:17:55", + "subExpression": { + "arguments": [ + { + "id": 13985, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9288:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 13984, + "name": "_exists", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13869, + "src": "9280:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 13986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9280:16:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", + "id": 13988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9298:30:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "typeString": "literal_string \"ERC721: token already minted\"" + }, + "value": "ERC721: token already minted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "typeString": "literal_string \"ERC721: token already minted\"" + } + ], + "id": 13983, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9271:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 13989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9271:58:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13990, + "nodeType": "ExpressionStatement", + "src": "9271:58:55" + }, + { + "id": 13997, + "nodeType": "UncheckedBlock", + "src": "9340:360:55", + "statements": [ + { + "expression": { + "id": 13995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 13991, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "9671:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 13993, + "indexExpression": { + "id": 13992, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9681:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9671:13:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 13994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9688:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9671:18:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 13996, + "nodeType": "ExpressionStatement", + "src": "9671:18:55" + } + ] + }, + { + "expression": { + "id": 14002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 13998, + "name": "_owners", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13455, + "src": "9710:7:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14000, + "indexExpression": { + "id": 13999, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9718:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9710:16:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 14001, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9729:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9710:21:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14003, + "nodeType": "ExpressionStatement", + "src": "9710:21:55" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 14007, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9764:1:55", + "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": 14006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9756:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14005, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9756:7:55", + "typeDescriptions": {} + } + }, + "id": 14008, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9756:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14009, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9768:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14010, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9772:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14004, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14365, + "src": "9747:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 14011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9747:33:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14012, + "nodeType": "EmitStatement", + "src": "9742:38:55" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 14016, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9819:1:55", + "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": 14015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9811:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9811:7:55", + "typeDescriptions": {} + } + }, + "id": 14017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9811:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14018, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13950, + "src": "9823:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14019, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13952, + "src": "9827:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 14020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9836:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 14013, + "name": "_afterTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14334, + "src": "9791:19:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 14021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9791:47:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14022, + "nodeType": "ExpressionStatement", + "src": "9791:47:55" + } + ] + }, + "documentation": { + "id": 13948, + "nodeType": "StructuredDocumentation", + "src": "8609:311:55", + "text": " @dev Mints `tokenId` and transfers it to `to`.\n WARNING: Usage of this method is discouraged, use {_safeMint} whenever possible\n Requirements:\n - `tokenId` must not exist.\n - `to` cannot be the zero address.\n Emits a {Transfer} event." + }, + "id": 14024, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_mint", + "nameLocation": "8934:5:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13953, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13950, + "mutability": "mutable", + "name": "to", + "nameLocation": "8948:2:55", + "nodeType": "VariableDeclaration", + "scope": 14024, + "src": "8940:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13949, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8940:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13952, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "8960:7:55", + "nodeType": "VariableDeclaration", + "scope": 14024, + "src": "8952:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13951, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8952:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8939:29:55" + }, + "returnParameters": { + "id": 13954, + "nodeType": "ParameterList", + "parameters": [], + "src": "8986:0:55" + }, + "scope": 14350, + "src": "8925:920:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14090, + "nodeType": "Block", + "src": "10220:713:55", + "statements": [ + { + "assignments": [ + 14031 + ], + "declarations": [ + { + "constant": false, + "id": 14031, + "mutability": "mutable", + "name": "owner", + "nameLocation": "10238:5:55", + "nodeType": "VariableDeclaration", + "scope": 14090, + "src": "10230:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14030, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10230:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 14036, + "initialValue": { + "arguments": [ + { + "id": 14034, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10261:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14032, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "10246:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 14033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10253:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "10246:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 14035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10246:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10230:39:55" + }, + { + "expression": { + "arguments": [ + { + "id": 14038, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14031, + "src": "10301:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 14041, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10316:1:55", + "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": 14040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10308:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14039, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10308:7:55", + "typeDescriptions": {} + } + }, + "id": 14042, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10308:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14043, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10320:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 14044, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10329:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 14037, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14321, + "src": "10280:20:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 14045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10280:51:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14046, + "nodeType": "ExpressionStatement", + "src": "10280:51:55" + }, + { + "expression": { + "id": 14052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 14047, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14031, + "src": "10433:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 14050, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10456:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14048, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "10441:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 14049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10448:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "10441:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 14051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10441:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10433:31:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14053, + "nodeType": "ExpressionStatement", + "src": "10433:31:55" + }, + { + "expression": { + "id": 14057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "10502:31:55", + "subExpression": { + "baseExpression": { + "id": 14054, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13463, + "src": "10509:15:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14056, + "indexExpression": { + "id": 14055, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10525:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10509:24:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14058, + "nodeType": "ExpressionStatement", + "src": "10502:31:55" + }, + { + "id": 14065, + "nodeType": "UncheckedBlock", + "src": "10544:237:55", + "statements": [ + { + "expression": { + "id": 14063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14059, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "10749:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 14061, + "indexExpression": { + "id": 14060, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14031, + "src": "10759:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10749:16:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 14062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10769:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "10749:21:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14064, + "nodeType": "ExpressionStatement", + "src": "10749:21:55" + } + ] + }, + { + "expression": { + "id": 14069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "10790:23:55", + "subExpression": { + "baseExpression": { + "id": 14066, + "name": "_owners", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13455, + "src": "10797:7:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14068, + "indexExpression": { + "id": 14067, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10805:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10797:16:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14070, + "nodeType": "ExpressionStatement", + "src": "10790:23:55" + }, + { + "eventCall": { + "arguments": [ + { + "id": 14072, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14031, + "src": "10838:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 14075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10853:1:55", + "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": 14074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10845:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14073, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10845:7:55", + "typeDescriptions": {} + } + }, + "id": 14076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10845:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14077, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10857:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14071, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14365, + "src": "10829:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 14078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10829:36:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14079, + "nodeType": "EmitStatement", + "src": "10824:41:55" + }, + { + "expression": { + "arguments": [ + { + "id": 14081, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14031, + "src": "10896:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 14084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10911:1:55", + "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": 14083, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10903:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14082, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10903:7:55", + "typeDescriptions": {} + } + }, + "id": 14085, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10903:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14086, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "10915:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 14087, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10924:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 14080, + "name": "_afterTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14334, + "src": "10876:19:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 14088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10876:50:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14089, + "nodeType": "ExpressionStatement", + "src": "10876:50:55" + } + ] + }, + "documentation": { + "id": 14025, + "nodeType": "StructuredDocumentation", + "src": "9851:315:55", + "text": " @dev Destroys `tokenId`.\n The approval is cleared when the token is burned.\n This is an internal function that does not check if the sender is authorized to operate on the token.\n Requirements:\n - `tokenId` must exist.\n Emits a {Transfer} event." + }, + "id": 14091, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_burn", + "nameLocation": "10180:5:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14027, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "10194:7:55", + "nodeType": "VariableDeclaration", + "scope": 14091, + "src": "10186:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14026, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10186:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10185:17:55" + }, + "returnParameters": { + "id": 14029, + "nodeType": "ParameterList", + "parameters": [], + "src": "10220:0:55" + }, + "scope": 14350, + "src": "10171:762:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14175, + "nodeType": "Block", + "src": "11336:1124:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 14107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 14104, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "11369:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14102, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "11354:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 14103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11361:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "11354:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 14105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11354:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 14106, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "11381:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "11354:31:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f7272656374206f776e6572", + "id": 14108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11387:39:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" + }, + "value": "ERC721: transfer from incorrect owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" + } + ], + "id": 14101, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11346:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11346:81:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14110, + "nodeType": "ExpressionStatement", + "src": "11346:81:55" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 14117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 14112, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "11445:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 14115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11459:1:55", + "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": 14114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11451:7:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11451:7:55", + "typeDescriptions": {} + } + }, + "id": 14116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11451:10:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "11445:16:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f2061646472657373", + "id": 14118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11463:38:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "typeString": "literal_string \"ERC721: transfer to the zero address\"" + }, + "value": "ERC721: transfer to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "typeString": "literal_string \"ERC721: transfer to the zero address\"" + } + ], + "id": 14111, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11437:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11437:65:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14120, + "nodeType": "ExpressionStatement", + "src": "11437:65:55" + }, + { + "expression": { + "arguments": [ + { + "id": 14122, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "11534:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14123, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "11540:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14124, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "11544:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 14125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11553:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 14121, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14321, + "src": "11513:20:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 14126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11513:42:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14127, + "nodeType": "ExpressionStatement", + "src": "11513:42:55" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 14134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 14131, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "11670:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14129, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "11655:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 14130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11662:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "11655:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 14132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11655:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 14133, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "11682:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "11655:31:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f7272656374206f776e6572", + "id": 14135, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11688:39:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" + }, + "value": "ERC721: transfer from incorrect owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" + } + ], + "id": 14128, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11647:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11647:81:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14137, + "nodeType": "ExpressionStatement", + "src": "11647:81:55" + }, + { + "expression": { + "id": 14141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "11790:31:55", + "subExpression": { + "baseExpression": { + "id": 14138, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13463, + "src": "11797:15:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14140, + "indexExpression": { + "id": 14139, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "11813:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "11797:24:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14142, + "nodeType": "ExpressionStatement", + "src": "11790:31:55" + }, + { + "id": 14155, + "nodeType": "UncheckedBlock", + "src": "11832:496:55", + "statements": [ + { + "expression": { + "id": 14147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14143, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "12265:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 14145, + "indexExpression": { + "id": 14144, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "12275:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12265:15:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 14146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12284:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "12265:20:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14148, + "nodeType": "ExpressionStatement", + "src": "12265:20:55" + }, + { + "expression": { + "id": 14153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14149, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "12299:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 14151, + "indexExpression": { + "id": 14150, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "12309:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12299:13:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 14152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12316:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "12299:18:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14154, + "nodeType": "ExpressionStatement", + "src": "12299:18:55" + } + ] + }, + { + "expression": { + "id": 14160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14156, + "name": "_owners", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13455, + "src": "12337:7:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14158, + "indexExpression": { + "id": 14157, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "12345:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12337:16:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 14159, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "12356:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12337:21:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14161, + "nodeType": "ExpressionStatement", + "src": "12337:21:55" + }, + { + "eventCall": { + "arguments": [ + { + "id": 14163, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "12383:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14164, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "12389:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14165, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "12393:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14162, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14365, + "src": "12374:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 14166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12374:27:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14167, + "nodeType": "EmitStatement", + "src": "12369:32:55" + }, + { + "expression": { + "arguments": [ + { + "id": 14169, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14094, + "src": "12432:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14170, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14096, + "src": "12438:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14171, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14098, + "src": "12442:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 14172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12451:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 14168, + "name": "_afterTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14334, + "src": "12412:19:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256,uint256)" + } + }, + "id": 14173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12412:41:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14174, + "nodeType": "ExpressionStatement", + "src": "12412:41:55" + } + ] + }, + "documentation": { + "id": 14092, + "nodeType": "StructuredDocumentation", + "src": "10939:313:55", + "text": " @dev Transfers `tokenId` from `from` to `to`.\n As opposed to {transferFrom}, this imposes no restrictions on msg.sender.\n Requirements:\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n Emits a {Transfer} event." + }, + "id": 14176, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nameLocation": "11266:9:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14099, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14094, + "mutability": "mutable", + "name": "from", + "nameLocation": "11284:4:55", + "nodeType": "VariableDeclaration", + "scope": 14176, + "src": "11276:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14093, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11276:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14096, + "mutability": "mutable", + "name": "to", + "nameLocation": "11298:2:55", + "nodeType": "VariableDeclaration", + "scope": 14176, + "src": "11290:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14095, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11290:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14098, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "11310:7:55", + "nodeType": "VariableDeclaration", + "scope": 14176, + "src": "11302:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14097, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11302:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11275:43:55" + }, + "returnParameters": { + "id": 14100, + "nodeType": "ParameterList", + "parameters": [], + "src": "11336:0:55" + }, + "scope": 14350, + "src": "11257:1203:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14199, + "nodeType": "Block", + "src": "12636:107:55", + "statements": [ + { + "expression": { + "id": 14188, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14184, + "name": "_tokenApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13463, + "src": "12646:15:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" + } + }, + "id": 14186, + "indexExpression": { + "id": 14185, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14181, + "src": "12662:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12646:24:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 14187, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14179, + "src": "12673:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12646:29:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14189, + "nodeType": "ExpressionStatement", + "src": "12646:29:55" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "id": 14193, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14181, + "src": "12714:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14191, + "name": "ERC721", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14350, + "src": "12699:6:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ERC721_$14350_$", + "typeString": "type(contract ERC721)" + } + }, + "id": 14192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12706:7:55", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 13569, + "src": "12699:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view returns (address)" + } + }, + "id": 14194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12699:23:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14195, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14179, + "src": "12724:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14196, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14181, + "src": "12728:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14190, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14374, + "src": "12690:8:55", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 14197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12690:46:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14198, + "nodeType": "EmitStatement", + "src": "12685:51:55" + } + ] + }, + "documentation": { + "id": 14177, + "nodeType": "StructuredDocumentation", + "src": "12466:101:55", + "text": " @dev Approve `to` to operate on `tokenId`\n Emits an {Approval} event." + }, + "id": 14200, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_approve", + "nameLocation": "12581:8:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14182, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14179, + "mutability": "mutable", + "name": "to", + "nameLocation": "12598:2:55", + "nodeType": "VariableDeclaration", + "scope": 14200, + "src": "12590:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14178, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12590:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14181, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "12610:7:55", + "nodeType": "VariableDeclaration", + "scope": 14200, + "src": "12602:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14180, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12602:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12589:29:55" + }, + "returnParameters": { + "id": 14183, + "nodeType": "ParameterList", + "parameters": [], + "src": "12636:0:55" + }, + "scope": 14350, + "src": "12572:171:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14231, + "nodeType": "Block", + "src": "12972:184:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 14213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 14211, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14203, + "src": "12990:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 14212, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14205, + "src": "12999:8:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "12990:17:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", + "id": 14214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13009:27:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "typeString": "literal_string \"ERC721: approve to caller\"" + }, + "value": "ERC721: approve to caller" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "typeString": "literal_string \"ERC721: approve to caller\"" + } + ], + "id": 14210, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12982:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12982:55:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14216, + "nodeType": "ExpressionStatement", + "src": "12982:55:55" + }, + { + "expression": { + "id": 14223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 14217, + "name": "_operatorApprovals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13469, + "src": "13047:18:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 14220, + "indexExpression": { + "id": 14218, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14203, + "src": "13066:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13047:25:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 14221, + "indexExpression": { + "id": 14219, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14205, + "src": "13073:8:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13047:35:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 14222, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14207, + "src": "13085:8:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "13047:46:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 14224, + "nodeType": "ExpressionStatement", + "src": "13047:46:55" + }, + { + "eventCall": { + "arguments": [ + { + "id": 14226, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14203, + "src": "13123:5:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14227, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14205, + "src": "13130:8:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14228, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14207, + "src": "13140:8:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 14225, + "name": "ApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14383, + "src": "13108:14:55", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 14229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13108:41:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14230, + "nodeType": "EmitStatement", + "src": "13103:46:55" + } + ] + }, + "documentation": { + "id": 14201, + "nodeType": "StructuredDocumentation", + "src": "12749:125:55", + "text": " @dev Approve `operator` to operate on all of `owner` tokens\n Emits an {ApprovalForAll} event." + }, + "id": 14232, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setApprovalForAll", + "nameLocation": "12888:18:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14203, + "mutability": "mutable", + "name": "owner", + "nameLocation": "12915:5:55", + "nodeType": "VariableDeclaration", + "scope": 14232, + "src": "12907:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14202, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12907:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14205, + "mutability": "mutable", + "name": "operator", + "nameLocation": "12930:8:55", + "nodeType": "VariableDeclaration", + "scope": 14232, + "src": "12922:16:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14204, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12922:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14207, + "mutability": "mutable", + "name": "approved", + "nameLocation": "12945:8:55", + "nodeType": "VariableDeclaration", + "scope": 14232, + "src": "12940:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14206, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12940:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12906:48:55" + }, + "returnParameters": { + "id": 14209, + "nodeType": "ParameterList", + "parameters": [], + "src": "12972:0:55" + }, + "scope": 14350, + "src": "12879:277:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14245, + "nodeType": "Block", + "src": "13303:70:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 14240, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14235, + "src": "13329:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14239, + "name": "_exists", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13869, + "src": "13321:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 14241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13321:16:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "id": 14242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13339:26:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "typeString": "literal_string \"ERC721: invalid token ID\"" + }, + "value": "ERC721: invalid token ID" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "typeString": "literal_string \"ERC721: invalid token ID\"" + } + ], + "id": 14238, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13313:7:55", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13313:53:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14244, + "nodeType": "ExpressionStatement", + "src": "13313:53:55" + } + ] + }, + "documentation": { + "id": 14233, + "nodeType": "StructuredDocumentation", + "src": "13162:73:55", + "text": " @dev Reverts if the `tokenId` has not been minted yet." + }, + "id": 14246, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_requireMinted", + "nameLocation": "13249:14:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14235, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "13272:7:55", + "nodeType": "VariableDeclaration", + "scope": 14246, + "src": "13264:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13264:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13263:17:55" + }, + "returnParameters": { + "id": 14237, + "nodeType": "ParameterList", + "parameters": [], + "src": "13303:0:55" + }, + "scope": 14350, + "src": "13240:133:55", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14307, + "nodeType": "Block", + "src": "14080:676:55", + "statements": [ + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 14260, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14251, + "src": "14094:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14097:10:55", + "memberName": "isContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 14529, + "src": "14094:13:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$attached_to$_t_address_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 14262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14094:15:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 14305, + "nodeType": "Block", + "src": "14714:36:55", + "statements": [ + { + "expression": { + "hexValue": "74727565", + "id": 14303, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14735:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 14259, + "id": 14304, + "nodeType": "Return", + "src": "14728:11:55" + } + ] + }, + "id": 14306, + "nodeType": "IfStatement", + "src": "14090:660:55", + "trueBody": { + "id": 14302, + "nodeType": "Block", + "src": "14111:597:55", + "statements": [ + { + "clauses": [ + { + "block": { + "id": 14282, + "nodeType": "Block", + "src": "14225:91:55", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 14280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 14276, + "name": "retval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14274, + "src": "14250:6:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 14277, + "name": "IERC721Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14484, + "src": "14260:15:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$14484_$", + "typeString": "type(contract IERC721Receiver)" + } + }, + "id": 14278, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14276:16:55", + "memberName": "onERC721Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 14483, + "src": "14260:32:55", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_calldata_ptr_$returns$_t_bytes4_$", + "typeString": "function IERC721Receiver.onERC721Received(address,address,uint256,bytes calldata) returns (bytes4)" + } + }, + "id": 14279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14293:8:55", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "14260:41:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "14250:51:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 14259, + "id": 14281, + "nodeType": "Return", + "src": "14243:58:55" + } + ] + }, + "errorName": "", + "id": 14283, + "nodeType": "TryCatchClause", + "parameters": { + "id": 14275, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14274, + "mutability": "mutable", + "name": "retval", + "nameLocation": "14217:6:55", + "nodeType": "VariableDeclaration", + "scope": 14283, + "src": "14210:13:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 14273, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14210:6:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "14209:15:55" + }, + "src": "14201:115:55" + }, + { + "block": { + "id": 14299, + "nodeType": "Block", + "src": "14345:353:55", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 14287, + "name": "reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14285, + "src": "14367:6:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 14288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14374:6:55", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14367:13:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 14289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14384:1:55", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14367:18:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 14297, + "nodeType": "Block", + "src": "14494:190:55", + "statements": [ + { + "AST": { + "nativeSrc": "14580:86:55", + "nodeType": "YulBlock", + "src": "14580:86:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "14617:2:55", + "nodeType": "YulLiteral", + "src": "14617:2:55", + "type": "", + "value": "32" + }, + { + "name": "reason", + "nativeSrc": "14621:6:55", + "nodeType": "YulIdentifier", + "src": "14621:6:55" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14613:3:55", + "nodeType": "YulIdentifier", + "src": "14613:3:55" + }, + "nativeSrc": "14613:15:55", + "nodeType": "YulFunctionCall", + "src": "14613:15:55" + }, + { + "arguments": [ + { + "name": "reason", + "nativeSrc": "14636:6:55", + "nodeType": "YulIdentifier", + "src": "14636:6:55" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "14630:5:55", + "nodeType": "YulIdentifier", + "src": "14630:5:55" + }, + "nativeSrc": "14630:13:55", + "nodeType": "YulFunctionCall", + "src": "14630:13:55" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "14606:6:55", + "nodeType": "YulIdentifier", + "src": "14606:6:55" + }, + "nativeSrc": "14606:38:55", + "nodeType": "YulFunctionCall", + "src": "14606:38:55" + }, + "nativeSrc": "14606:38:55", + "nodeType": "YulExpressionStatement", + "src": "14606:38:55" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 14285, + "isOffset": false, + "isSlot": false, + "src": "14621:6:55", + "valueSize": 1 + }, + { + "declaration": 14285, + "isOffset": false, + "isSlot": false, + "src": "14636:6:55", + "valueSize": 1 + } + ], + "id": 14296, + "nodeType": "InlineAssembly", + "src": "14571:95:55" + } + ] + }, + "id": 14298, + "nodeType": "IfStatement", + "src": "14363:321:55", + "trueBody": { + "id": 14295, + "nodeType": "Block", + "src": "14387:101:55", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", + "id": 14292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14416:52:55", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + }, + "value": "ERC721: transfer to non ERC721Receiver implementer" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" + } + ], + "id": 14291, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "14409:6:55", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 14293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14409:60:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14294, + "nodeType": "ExpressionStatement", + "src": "14409:60:55" + } + ] + } + } + ] + }, + "errorName": "", + "id": 14300, + "nodeType": "TryCatchClause", + "parameters": { + "id": 14286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14285, + "mutability": "mutable", + "name": "reason", + "nameLocation": "14337:6:55", + "nodeType": "VariableDeclaration", + "scope": 14300, + "src": "14324:19:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14324:5:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "14323:21:55" + }, + "src": "14317:381:55" + } + ], + "externalCall": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 14267, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14853, + "src": "14166:10:55", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 14268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14166:12:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14269, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14249, + "src": "14180:4:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14270, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14253, + "src": "14186:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14271, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14255, + "src": "14195:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "arguments": [ + { + "id": 14264, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14251, + "src": "14145:2:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 14263, + "name": "IERC721Receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14484, + "src": "14129:15:55", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$14484_$", + "typeString": "type(contract IERC721Receiver)" + } + }, + "id": 14265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14129:19:55", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC721Receiver_$14484", + "typeString": "contract IERC721Receiver" + } + }, + "id": 14266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14149:16:55", + "memberName": "onERC721Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 14483, + "src": "14129:36:55", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256,bytes memory) external returns (bytes4)" + } + }, + "id": 14272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14129:71:55", + "tryCall": true, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 14301, + "nodeType": "TryStatement", + "src": "14125:573:55" + } + ] + } + } + ] + }, + "documentation": { + "id": 14247, + "nodeType": "StructuredDocumentation", + "src": "13379:541:55", + "text": " @dev Internal function to invoke {IERC721Receiver-onERC721Received} on a target address.\n The call is not executed if the target address is not a contract.\n @param from address representing the previous owner of the given token ID\n @param to target address that will receive the tokens\n @param tokenId uint256 ID of the token to be transferred\n @param data bytes optional data to send along with the call\n @return bool whether the call correctly returned the expected magic value" + }, + "id": 14308, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkOnERC721Received", + "nameLocation": "13934:22:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14249, + "mutability": "mutable", + "name": "from", + "nameLocation": "13974:4:55", + "nodeType": "VariableDeclaration", + "scope": 14308, + "src": "13966:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14248, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13966:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14251, + "mutability": "mutable", + "name": "to", + "nameLocation": "13996:2:55", + "nodeType": "VariableDeclaration", + "scope": 14308, + "src": "13988:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14250, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13988:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14253, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "14016:7:55", + "nodeType": "VariableDeclaration", + "scope": 14308, + "src": "14008:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14008:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14255, + "mutability": "mutable", + "name": "data", + "nameLocation": "14046:4:55", + "nodeType": "VariableDeclaration", + "scope": 14308, + "src": "14033:17:55", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14254, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14033:5:55", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "13956:100:55" + }, + "returnParameters": { + "id": 14259, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14258, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14308, + "src": "14074:4:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14257, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14074:4:55", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "14073:6:55" + }, + "scope": 14350, + "src": "13925:831:55", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 14320, + "nodeType": "Block", + "src": "15586:2:55", + "statements": [] + }, + "documentation": { + "id": 14309, + "nodeType": "StructuredDocumentation", + "src": "14762:705:55", + "text": " @dev Hook that is called before any token transfer. This includes minting and burning. If {ERC721Consecutive} is\n used, the hook may be called as part of a consecutive (batch) mint, as indicated by `batchSize` greater than 1.\n Calling conditions:\n - When `from` and `to` are both non-zero, ``from``'s tokens will be transferred to `to`.\n - When `from` is zero, the tokens will be minted for `to`.\n - When `to` is zero, ``from``'s tokens will be burned.\n - `from` and `to` are never both zero.\n - `batchSize` is non-zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." + }, + "id": 14321, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_beforeTokenTransfer", + "nameLocation": "15481:20:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14318, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14311, + "mutability": "mutable", + "name": "from", + "nameLocation": "15510:4:55", + "nodeType": "VariableDeclaration", + "scope": 14321, + "src": "15502:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14310, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15502:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14313, + "mutability": "mutable", + "name": "to", + "nameLocation": "15524:2:55", + "nodeType": "VariableDeclaration", + "scope": 14321, + "src": "15516:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14312, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15516:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14315, + "mutability": "mutable", + "name": "firstTokenId", + "nameLocation": "15536:12:55", + "nodeType": "VariableDeclaration", + "scope": 14321, + "src": "15528:20:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14314, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15528:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14317, + "mutability": "mutable", + "name": "batchSize", + "nameLocation": "15558:9:55", + "nodeType": "VariableDeclaration", + "scope": 14321, + "src": "15550:17:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14316, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15550:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15501:67:55" + }, + "returnParameters": { + "id": 14319, + "nodeType": "ParameterList", + "parameters": [], + "src": "15586:0:55" + }, + "scope": 14350, + "src": "15472:116:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14333, + "nodeType": "Block", + "src": "16407:2:55", + "statements": [] + }, + "documentation": { + "id": 14322, + "nodeType": "StructuredDocumentation", + "src": "15594:695:55", + "text": " @dev Hook that is called after any token transfer. This includes minting and burning. If {ERC721Consecutive} is\n used, the hook may be called as part of a consecutive (batch) mint, as indicated by `batchSize` greater than 1.\n Calling conditions:\n - When `from` and `to` are both non-zero, ``from``'s tokens were transferred to `to`.\n - When `from` is zero, the tokens were minted for `to`.\n - When `to` is zero, ``from``'s tokens were burned.\n - `from` and `to` are never both zero.\n - `batchSize` is non-zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." + }, + "id": 14334, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_afterTokenTransfer", + "nameLocation": "16303:19:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14331, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14324, + "mutability": "mutable", + "name": "from", + "nameLocation": "16331:4:55", + "nodeType": "VariableDeclaration", + "scope": 14334, + "src": "16323:12:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14323, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16323:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14326, + "mutability": "mutable", + "name": "to", + "nameLocation": "16345:2:55", + "nodeType": "VariableDeclaration", + "scope": 14334, + "src": "16337:10:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14325, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16337:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14328, + "mutability": "mutable", + "name": "firstTokenId", + "nameLocation": "16357:12:55", + "nodeType": "VariableDeclaration", + "scope": 14334, + "src": "16349:20:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14327, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16349:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14330, + "mutability": "mutable", + "name": "batchSize", + "nameLocation": "16379:9:55", + "nodeType": "VariableDeclaration", + "scope": 14334, + "src": "16371:17:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14329, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16371:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16322:67:55" + }, + "returnParameters": { + "id": 14332, + "nodeType": "ParameterList", + "parameters": [], + "src": "16407:0:55" + }, + "scope": 14350, + "src": "16294:115:55", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14348, + "nodeType": "Block", + "src": "16958:45:55", + "statements": [ + { + "expression": { + "id": 14346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14342, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13459, + "src": "16968:9:55", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 14344, + "indexExpression": { + "id": 14343, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14337, + "src": "16978:7:55", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "16968:18:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 14345, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14339, + "src": "16990:6:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16968:28:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14347, + "nodeType": "ExpressionStatement", + "src": "16968:28:55" + } + ] + }, + "documentation": { + "id": 14335, + "nodeType": "StructuredDocumentation", + "src": "16415:409:55", + "text": " @dev Unsafe write access to the balances, used by extensions that \"mint\" tokens using an {ownerOf} override.\n WARNING: Anyone calling this MUST ensure that the balances remain consistent with the ownership. The invariant\n being that for any address `a` the value returned by `balanceOf(a)` must be equal to the number of tokens such\n that `ownerOf(tokenId)` is `a`." + }, + "id": 14349, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "__unsafe_increaseBalance", + "nameLocation": "16891:24:55", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14340, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14337, + "mutability": "mutable", + "name": "account", + "nameLocation": "16924:7:55", + "nodeType": "VariableDeclaration", + "scope": 14349, + "src": "16916:15:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14336, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16916:7:55", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14339, + "mutability": "mutable", + "name": "amount", + "nameLocation": "16941:6:55", + "nodeType": "VariableDeclaration", + "scope": 14349, + "src": "16933:14:55", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14338, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16933:7:55", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16915:33:55" + }, + "returnParameters": { + "id": 14341, + "nodeType": "ParameterList", + "parameters": [], + "src": "16958:0:55" + }, + "scope": 14350, + "src": "16882:121:55", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 14351, + "src": "628:16377:55", + "usedErrors": [], + "usedEvents": [ + 14365, + 14374, + 14383 + ] + } + ], + "src": "107:16899:55" + }, + "id": 55 + }, + "@openzeppelin/contracts/token/ERC721/IERC721.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", + "exportedSymbols": { + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ] + }, + "id": 14467, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14352, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "108:23:56" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "file": "../../utils/introspection/IERC165.sol", + "id": 14353, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14467, + "sourceUnit": 15137, + "src": "133:47:56", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 14355, + "name": "IERC165", + "nameLocations": [ + "271:7:56" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "271:7:56" + }, + "id": 14356, + "nodeType": "InheritanceSpecifier", + "src": "271:7:56" + } + ], + "canonicalName": "IERC721", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 14354, + "nodeType": "StructuredDocumentation", + "src": "182:67:56", + "text": " @dev Required interface of an ERC721 compliant contract." + }, + "fullyImplemented": false, + "id": 14466, + "linearizedBaseContracts": [ + 14466, + 15136 + ], + "name": "IERC721", + "nameLocation": "260:7:56", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": { + "id": 14357, + "nodeType": "StructuredDocumentation", + "src": "285:88:56", + "text": " @dev Emitted when `tokenId` token is transferred from `from` to `to`." + }, + "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", + "id": 14365, + "name": "Transfer", + "nameLocation": "384:8:56", + "nodeType": "EventDefinition", + "parameters": { + "id": 14364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14359, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "409:4:56", + "nodeType": "VariableDeclaration", + "scope": 14365, + "src": "393:20:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14358, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "393:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14361, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "431:2:56", + "nodeType": "VariableDeclaration", + "scope": 14365, + "src": "415:18:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14360, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "415:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14363, + "indexed": true, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "451:7:56", + "nodeType": "VariableDeclaration", + "scope": 14365, + "src": "435:23:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14362, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "435:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "392:67:56" + }, + "src": "378:82:56" + }, + { + "anonymous": false, + "documentation": { + "id": 14366, + "nodeType": "StructuredDocumentation", + "src": "466:94:56", + "text": " @dev Emitted when `owner` enables `approved` to manage the `tokenId` token." + }, + "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "id": 14374, + "name": "Approval", + "nameLocation": "571:8:56", + "nodeType": "EventDefinition", + "parameters": { + "id": 14373, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14368, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "596:5:56", + "nodeType": "VariableDeclaration", + "scope": 14374, + "src": "580:21:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14367, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "580:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14370, + "indexed": true, + "mutability": "mutable", + "name": "approved", + "nameLocation": "619:8:56", + "nodeType": "VariableDeclaration", + "scope": 14374, + "src": "603:24:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14369, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "603:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14372, + "indexed": true, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "645:7:56", + "nodeType": "VariableDeclaration", + "scope": 14374, + "src": "629:23:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14371, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "629:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "579:74:56" + }, + "src": "565:89:56" + }, + { + "anonymous": false, + "documentation": { + "id": 14375, + "nodeType": "StructuredDocumentation", + "src": "660:117:56", + "text": " @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets." + }, + "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", + "id": 14383, + "name": "ApprovalForAll", + "nameLocation": "788:14:56", + "nodeType": "EventDefinition", + "parameters": { + "id": 14382, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14377, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "819:5:56", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "803:21:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14376, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "803:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14379, + "indexed": true, + "mutability": "mutable", + "name": "operator", + "nameLocation": "842:8:56", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "826:24:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14378, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "826:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14381, + "indexed": false, + "mutability": "mutable", + "name": "approved", + "nameLocation": "857:8:56", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "852:13:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14380, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "852:4:56", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "802:64:56" + }, + "src": "782:85:56" + }, + { + "documentation": { + "id": 14384, + "nodeType": "StructuredDocumentation", + "src": "873:76:56", + "text": " @dev Returns the number of tokens in ``owner``'s account." + }, + "functionSelector": "70a08231", + "id": 14391, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "963:9:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14387, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14386, + "mutability": "mutable", + "name": "owner", + "nameLocation": "981:5:56", + "nodeType": "VariableDeclaration", + "scope": 14391, + "src": "973:13:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14385, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "973:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "972:15:56" + }, + "returnParameters": { + "id": 14390, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14389, + "mutability": "mutable", + "name": "balance", + "nameLocation": "1019:7:56", + "nodeType": "VariableDeclaration", + "scope": 14391, + "src": "1011:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14388, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1011:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1010:17:56" + }, + "scope": 14466, + "src": "954:74:56", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14392, + "nodeType": "StructuredDocumentation", + "src": "1034:131:56", + "text": " @dev Returns the owner of the `tokenId` token.\n Requirements:\n - `tokenId` must exist." + }, + "functionSelector": "6352211e", + "id": 14399, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ownerOf", + "nameLocation": "1179:7:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14394, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "1195:7:56", + "nodeType": "VariableDeclaration", + "scope": 14399, + "src": "1187:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1187:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1186:17:56" + }, + "returnParameters": { + "id": 14398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14397, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1235:5:56", + "nodeType": "VariableDeclaration", + "scope": 14399, + "src": "1227:13:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14396, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1227:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1226:15:56" + }, + "scope": 14466, + "src": "1170:72:56", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14400, + "nodeType": "StructuredDocumentation", + "src": "1248:556:56", + "text": " @dev Safely transfers `tokenId` token from `from` to `to`.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." + }, + "functionSelector": "b88d4fde", + "id": 14411, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "1818:16:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14409, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14402, + "mutability": "mutable", + "name": "from", + "nameLocation": "1843:4:56", + "nodeType": "VariableDeclaration", + "scope": 14411, + "src": "1835:12:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14401, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1835:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14404, + "mutability": "mutable", + "name": "to", + "nameLocation": "1857:2:56", + "nodeType": "VariableDeclaration", + "scope": 14411, + "src": "1849:10:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14403, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1849:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14406, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "1869:7:56", + "nodeType": "VariableDeclaration", + "scope": 14411, + "src": "1861:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14405, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1861:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14408, + "mutability": "mutable", + "name": "data", + "nameLocation": "1893:4:56", + "nodeType": "VariableDeclaration", + "scope": 14411, + "src": "1878:19:56", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14407, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1878:5:56", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1834:64:56" + }, + "returnParameters": { + "id": 14410, + "nodeType": "ParameterList", + "parameters": [], + "src": "1907:0:56" + }, + "scope": 14466, + "src": "1809:99:56", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14412, + "nodeType": "StructuredDocumentation", + "src": "1914:687:56", + "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." + }, + "functionSelector": "42842e0e", + "id": 14421, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nameLocation": "2615:16:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14419, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14414, + "mutability": "mutable", + "name": "from", + "nameLocation": "2640:4:56", + "nodeType": "VariableDeclaration", + "scope": 14421, + "src": "2632:12:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14413, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2632:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14416, + "mutability": "mutable", + "name": "to", + "nameLocation": "2654:2:56", + "nodeType": "VariableDeclaration", + "scope": 14421, + "src": "2646:10:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14415, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2646:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14418, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2666:7:56", + "nodeType": "VariableDeclaration", + "scope": 14421, + "src": "2658:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14417, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2658:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2631:43:56" + }, + "returnParameters": { + "id": 14420, + "nodeType": "ParameterList", + "parameters": [], + "src": "2683:0:56" + }, + "scope": 14466, + "src": "2606:78:56", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14422, + "nodeType": "StructuredDocumentation", + "src": "2690:732:56", + "text": " @dev Transfers `tokenId` token from `from` to `to`.\n WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721\n or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must\n understand this adds an external call which potentially creates a reentrancy vulnerability.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n Emits a {Transfer} event." + }, + "functionSelector": "23b872dd", + "id": 14431, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "3436:12:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14429, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14424, + "mutability": "mutable", + "name": "from", + "nameLocation": "3457:4:56", + "nodeType": "VariableDeclaration", + "scope": 14431, + "src": "3449:12:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14423, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3449:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14426, + "mutability": "mutable", + "name": "to", + "nameLocation": "3471:2:56", + "nodeType": "VariableDeclaration", + "scope": 14431, + "src": "3463:10:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14425, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3463:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14428, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "3483:7:56", + "nodeType": "VariableDeclaration", + "scope": 14431, + "src": "3475:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14427, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3475:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3448:43:56" + }, + "returnParameters": { + "id": 14430, + "nodeType": "ParameterList", + "parameters": [], + "src": "3500:0:56" + }, + "scope": 14466, + "src": "3427:74:56", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14432, + "nodeType": "StructuredDocumentation", + "src": "3507:452:56", + "text": " @dev Gives permission to `to` to transfer `tokenId` token to another account.\n The approval is cleared when the token is transferred.\n Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n Requirements:\n - The caller must own the token or be an approved operator.\n - `tokenId` must exist.\n Emits an {Approval} event." + }, + "functionSelector": "095ea7b3", + "id": 14439, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "3973:7:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14437, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14434, + "mutability": "mutable", + "name": "to", + "nameLocation": "3989:2:56", + "nodeType": "VariableDeclaration", + "scope": 14439, + "src": "3981:10:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14433, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3981:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14436, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4001:7:56", + "nodeType": "VariableDeclaration", + "scope": 14439, + "src": "3993:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14435, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3993:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3980:29:56" + }, + "returnParameters": { + "id": 14438, + "nodeType": "ParameterList", + "parameters": [], + "src": "4018:0:56" + }, + "scope": 14466, + "src": "3964:55:56", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14440, + "nodeType": "StructuredDocumentation", + "src": "4025:309:56", + "text": " @dev Approve or remove `operator` as an operator for the caller.\n Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n Requirements:\n - The `operator` cannot be the caller.\n Emits an {ApprovalForAll} event." + }, + "functionSelector": "a22cb465", + "id": 14447, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nameLocation": "4348:17:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14445, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14442, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4374:8:56", + "nodeType": "VariableDeclaration", + "scope": 14447, + "src": "4366:16:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14441, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4366:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14444, + "mutability": "mutable", + "name": "approved", + "nameLocation": "4389:8:56", + "nodeType": "VariableDeclaration", + "scope": 14447, + "src": "4384:13:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14443, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4384:4:56", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4365:33:56" + }, + "returnParameters": { + "id": 14446, + "nodeType": "ParameterList", + "parameters": [], + "src": "4407:0:56" + }, + "scope": 14466, + "src": "4339:69:56", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14448, + "nodeType": "StructuredDocumentation", + "src": "4414:139:56", + "text": " @dev Returns the account approved for `tokenId` token.\n Requirements:\n - `tokenId` must exist." + }, + "functionSelector": "081812fc", + "id": 14455, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getApproved", + "nameLocation": "4567:11:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14451, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14450, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "4587:7:56", + "nodeType": "VariableDeclaration", + "scope": 14455, + "src": "4579:15:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14449, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4579:7:56", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4578:17:56" + }, + "returnParameters": { + "id": 14454, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14453, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4627:8:56", + "nodeType": "VariableDeclaration", + "scope": 14455, + "src": "4619:16:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14452, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4619:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4618:18:56" + }, + "scope": 14466, + "src": "4558:79:56", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14456, + "nodeType": "StructuredDocumentation", + "src": "4643:138:56", + "text": " @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n See {setApprovalForAll}" + }, + "functionSelector": "e985e9c5", + "id": 14465, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nameLocation": "4795:16:56", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14461, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14458, + "mutability": "mutable", + "name": "owner", + "nameLocation": "4820:5:56", + "nodeType": "VariableDeclaration", + "scope": 14465, + "src": "4812:13:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14457, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4812:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14460, + "mutability": "mutable", + "name": "operator", + "nameLocation": "4835:8:56", + "nodeType": "VariableDeclaration", + "scope": 14465, + "src": "4827:16:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14459, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4827:7:56", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4811:33:56" + }, + "returnParameters": { + "id": 14464, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14463, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14465, + "src": "4868:4:56", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14462, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4868:4:56", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4867:6:56" + }, + "scope": 14466, + "src": "4786:88:56", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 14467, + "src": "250:4626:56", + "usedErrors": [], + "usedEvents": [ + 14365, + 14374, + 14383 + ] + } + ], + "src": "108:4769:56" + }, + "id": 56 + }, + "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", + "exportedSymbols": { + "IERC721Receiver": [ + 14484 + ] + }, + "id": 14485, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14468, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "116:23:57" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC721Receiver", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 14469, + "nodeType": "StructuredDocumentation", + "src": "141:152:57", + "text": " @title ERC721 token receiver interface\n @dev Interface for any contract that wants to support safeTransfers\n from ERC721 asset contracts." + }, + "fullyImplemented": false, + "id": 14484, + "linearizedBaseContracts": [ + 14484 + ], + "name": "IERC721Receiver", + "nameLocation": "304:15:57", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 14470, + "nodeType": "StructuredDocumentation", + "src": "326:493:57", + "text": " @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n by `operator` from `from`, this function is called.\n It must return its Solidity selector to confirm the token transfer.\n If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`." + }, + "functionSelector": "150b7a02", + "id": 14483, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "onERC721Received", + "nameLocation": "833:16:57", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14479, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14472, + "mutability": "mutable", + "name": "operator", + "nameLocation": "867:8:57", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "859:16:57", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "859:7:57", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14474, + "mutability": "mutable", + "name": "from", + "nameLocation": "893:4:57", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "885:12:57", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14473, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "885:7:57", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14476, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "915:7:57", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "907:15:57", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14475, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "907:7:57", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14478, + "mutability": "mutable", + "name": "data", + "nameLocation": "947:4:57", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "932:19:57", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14477, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "932:5:57", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "849:108:57" + }, + "returnParameters": { + "id": 14482, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14481, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "976:6:57", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 14480, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "976:6:57", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "975:8:57" + }, + "scope": 14484, + "src": "824:160:57", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 14485, + "src": "294:692:57", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "116:871:57" + }, + "id": 57 + }, + "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", + "exportedSymbols": { + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IERC721Metadata": [ + 14511 + ] + }, + "id": 14512, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14486, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "112:23:58" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", + "file": "../IERC721.sol", + "id": 14487, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 14512, + "sourceUnit": 14467, + "src": "137:24:58", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 14489, + "name": "IERC721", + "nameLocations": [ + "326:7:58" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14466, + "src": "326:7:58" + }, + "id": 14490, + "nodeType": "InheritanceSpecifier", + "src": "326:7:58" + } + ], + "canonicalName": "IERC721Metadata", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 14488, + "nodeType": "StructuredDocumentation", + "src": "163:133:58", + "text": " @title ERC-721 Non-Fungible Token Standard, optional metadata extension\n @dev See https://eips.ethereum.org/EIPS/eip-721" + }, + "fullyImplemented": false, + "id": 14511, + "linearizedBaseContracts": [ + 14511, + 14466, + 15136 + ], + "name": "IERC721Metadata", + "nameLocation": "307:15:58", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 14491, + "nodeType": "StructuredDocumentation", + "src": "340:58:58", + "text": " @dev Returns the token collection name." + }, + "functionSelector": "06fdde03", + "id": 14496, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "412:4:58", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14492, + "nodeType": "ParameterList", + "parameters": [], + "src": "416:2:58" + }, + "returnParameters": { + "id": 14495, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14494, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14496, + "src": "442:13:58", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14493, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "442:6:58", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "441:15:58" + }, + "scope": 14511, + "src": "403:54:58", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14497, + "nodeType": "StructuredDocumentation", + "src": "463:60:58", + "text": " @dev Returns the token collection symbol." + }, + "functionSelector": "95d89b41", + "id": 14502, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "537:6:58", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14498, + "nodeType": "ParameterList", + "parameters": [], + "src": "543:2:58" + }, + "returnParameters": { + "id": 14501, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14500, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14502, + "src": "569:13:58", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14499, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "569:6:58", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "568:15:58" + }, + "scope": 14511, + "src": "528:56:58", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 14503, + "nodeType": "StructuredDocumentation", + "src": "590:90:58", + "text": " @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token." + }, + "functionSelector": "c87b56dd", + "id": 14510, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenURI", + "nameLocation": "694:8:58", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14505, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "711:7:58", + "nodeType": "VariableDeclaration", + "scope": 14510, + "src": "703:15:58", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14504, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "703:7:58", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "702:17:58" + }, + "returnParameters": { + "id": 14509, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14508, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14510, + "src": "743:13:58", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14507, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "743:6:58", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "742:15:58" + }, + "scope": 14511, + "src": "685:73:58", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 14512, + "src": "297:463:58", + "usedErrors": [], + "usedEvents": [ + 14365, + 14374, + 14383 + ] + } + ], + "src": "112:649:58" + }, + "id": 58 + }, + "@openzeppelin/contracts/utils/Address.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/Address.sol", + "exportedSymbols": { + "Address": [ + 14841 + ] + }, + "id": 14842, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14513, + "literals": [ + "solidity", + "^", + "0.8", + ".1" + ], + "nodeType": "PragmaDirective", + "src": "101:23:59" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "Address", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 14514, + "nodeType": "StructuredDocumentation", + "src": "126:67:59", + "text": " @dev Collection of functions related to the address type" + }, + "fullyImplemented": true, + "id": 14841, + "linearizedBaseContracts": [ + 14841 + ], + "name": "Address", + "nameLocation": "202:7:59", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 14528, + "nodeType": "Block", + "src": "1478:254:59", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 14522, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14517, + "src": "1702:7:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1710:4:59", + "memberName": "code", + "nodeType": "MemberAccess", + "src": "1702:12:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 14524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1715:6:59", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1702:19:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 14525, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1724:1:59", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1702:23:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 14521, + "id": 14527, + "nodeType": "Return", + "src": "1695:30:59" + } + ] + }, + "documentation": { + "id": 14515, + "nodeType": "StructuredDocumentation", + "src": "216:1191:59", + "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n Furthermore, `isContract` will also return true if the target contract within\n the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n which only has an effect at the end of a transaction.\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" + }, + "id": 14529, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isContract", + "nameLocation": "1421:10:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14518, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14517, + "mutability": "mutable", + "name": "account", + "nameLocation": "1440:7:59", + "nodeType": "VariableDeclaration", + "scope": 14529, + "src": "1432:15:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14516, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1432:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1431:17:59" + }, + "returnParameters": { + "id": 14521, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14520, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14529, + "src": "1472:4:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14519, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1472:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1471:6:59" + }, + "scope": 14841, + "src": "1412:320:59", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14562, + "nodeType": "Block", + "src": "2718:241:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "id": 14540, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "2744:4:59", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Address_$14841", + "typeString": "library Address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Address_$14841", + "typeString": "library Address" + } + ], + "id": 14539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2736:7:59", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14538, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2736:7:59", + "typeDescriptions": {} + } + }, + "id": 14541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2736:13:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2750:7:59", + "memberName": "balance", + "nodeType": "MemberAccess", + "src": "2736:21:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 14543, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14534, + "src": "2761:6:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2736:31:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", + "id": 14545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2769:31:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", + "typeString": "literal_string \"Address: insufficient balance\"" + }, + "value": "Address: insufficient balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", + "typeString": "literal_string \"Address: insufficient balance\"" + } + ], + "id": 14537, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2728:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2728:73:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14547, + "nodeType": "ExpressionStatement", + "src": "2728:73:59" + }, + { + "assignments": [ + 14549, + null + ], + "declarations": [ + { + "constant": false, + "id": 14549, + "mutability": "mutable", + "name": "success", + "nameLocation": "2818:7:59", + "nodeType": "VariableDeclaration", + "scope": 14562, + "src": "2813:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14548, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2813:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + null + ], + "id": 14556, + "initialValue": { + "arguments": [ + { + "hexValue": "", + "id": 14554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2861:2:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "expression": { + "id": 14550, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14532, + "src": "2831:9:59", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "id": 14551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2841:4:59", + "memberName": "call", + "nodeType": "MemberAccess", + "src": "2831:14:59", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 14553, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "names": [ + "value" + ], + "nodeType": "FunctionCallOptions", + "options": [ + { + "id": 14552, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14534, + "src": "2853:6:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "src": "2831:29:59", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 14555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2831:33:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2812:52:59" + }, + { + "expression": { + "arguments": [ + { + "id": 14558, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14549, + "src": "2882:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", + "id": 14559, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2891:60:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", + "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" + }, + "value": "Address: unable to send value, recipient may have reverted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", + "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" + } + ], + "id": 14557, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2874:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2874:78:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14561, + "nodeType": "ExpressionStatement", + "src": "2874:78:59" + } + ] + }, + "documentation": { + "id": 14530, + "nodeType": "StructuredDocumentation", + "src": "1738:904:59", + "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." + }, + "id": 14563, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sendValue", + "nameLocation": "2656:9:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14535, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14532, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "2682:9:59", + "nodeType": "VariableDeclaration", + "scope": 14563, + "src": "2666:25:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 14531, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2666:15:59", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14534, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2701:6:59", + "nodeType": "VariableDeclaration", + "scope": 14563, + "src": "2693:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14533, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2693:7:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2665:43:59" + }, + "returnParameters": { + "id": 14536, + "nodeType": "ParameterList", + "parameters": [], + "src": "2718:0:59" + }, + "scope": 14841, + "src": "2647:312:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14580, + "nodeType": "Block", + "src": "3790:96:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14574, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14566, + "src": "3829:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14575, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14568, + "src": "3837:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 14576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3843:1:59", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", + "id": 14577, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3846:32:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", + "typeString": "literal_string \"Address: low-level call failed\"" + }, + "value": "Address: low-level call failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", + "typeString": "literal_string \"Address: low-level call failed\"" + } + ], + "id": 14573, + "name": "functionCallWithValue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14621, + 14665 + ], + "referencedDeclaration": 14665, + "src": "3807:21:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" + } + }, + "id": 14578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3807:72:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14572, + "id": 14579, + "nodeType": "Return", + "src": "3800:79:59" + } + ] + }, + "documentation": { + "id": 14564, + "nodeType": "StructuredDocumentation", + "src": "2965:731:59", + "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" + }, + "id": 14581, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionCall", + "nameLocation": "3710:12:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14566, + "mutability": "mutable", + "name": "target", + "nameLocation": "3731:6:59", + "nodeType": "VariableDeclaration", + "scope": 14581, + "src": "3723:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14565, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3723:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14568, + "mutability": "mutable", + "name": "data", + "nameLocation": "3752:4:59", + "nodeType": "VariableDeclaration", + "scope": 14581, + "src": "3739:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14567, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3739:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3722:35:59" + }, + "returnParameters": { + "id": 14572, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14571, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14581, + "src": "3776:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14570, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3776:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3775:14:59" + }, + "scope": 14841, + "src": "3701:185:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14600, + "nodeType": "Block", + "src": "4255:76:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14594, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14584, + "src": "4294:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14595, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14586, + "src": "4302:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 14596, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4308:1:59", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 14597, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14588, + "src": "4311:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14593, + "name": "functionCallWithValue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14621, + 14665 + ], + "referencedDeclaration": 14665, + "src": "4272:21:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" + } + }, + "id": 14598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4272:52:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14592, + "id": 14599, + "nodeType": "Return", + "src": "4265:59:59" + } + ] + }, + "documentation": { + "id": 14582, + "nodeType": "StructuredDocumentation", + "src": "3892:211:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" + }, + "id": 14601, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionCall", + "nameLocation": "4117:12:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14589, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14584, + "mutability": "mutable", + "name": "target", + "nameLocation": "4147:6:59", + "nodeType": "VariableDeclaration", + "scope": 14601, + "src": "4139:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14583, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4139:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14586, + "mutability": "mutable", + "name": "data", + "nameLocation": "4176:4:59", + "nodeType": "VariableDeclaration", + "scope": 14601, + "src": "4163:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14585, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4163:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14588, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "4204:12:59", + "nodeType": "VariableDeclaration", + "scope": 14601, + "src": "4190:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14587, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4190:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4129:93:59" + }, + "returnParameters": { + "id": 14592, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14591, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14601, + "src": "4241:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14590, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4241:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4240:14:59" + }, + "scope": 14841, + "src": "4108:223:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14620, + "nodeType": "Block", + "src": "4806:111:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14614, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14604, + "src": "4845:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14615, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14606, + "src": "4853:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14616, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14608, + "src": "4859:5:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", + "id": 14617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4866:43:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", + "typeString": "literal_string \"Address: low-level call with value failed\"" + }, + "value": "Address: low-level call with value failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", + "typeString": "literal_string \"Address: low-level call with value failed\"" + } + ], + "id": 14613, + "name": "functionCallWithValue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14621, + 14665 + ], + "referencedDeclaration": 14665, + "src": "4823:21:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" + } + }, + "id": 14618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4823:87:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14612, + "id": 14619, + "nodeType": "Return", + "src": "4816:94:59" + } + ] + }, + "documentation": { + "id": 14602, + "nodeType": "StructuredDocumentation", + "src": "4337:351:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" + }, + "id": 14621, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionCallWithValue", + "nameLocation": "4702:21:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14604, + "mutability": "mutable", + "name": "target", + "nameLocation": "4732:6:59", + "nodeType": "VariableDeclaration", + "scope": 14621, + "src": "4724:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4724:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14606, + "mutability": "mutable", + "name": "data", + "nameLocation": "4753:4:59", + "nodeType": "VariableDeclaration", + "scope": 14621, + "src": "4740:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14605, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4740:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14608, + "mutability": "mutable", + "name": "value", + "nameLocation": "4767:5:59", + "nodeType": "VariableDeclaration", + "scope": 14621, + "src": "4759:13:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14607, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4759:7:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4723:50:59" + }, + "returnParameters": { + "id": 14612, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14611, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14621, + "src": "4792:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14610, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4792:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4791:14:59" + }, + "scope": 14841, + "src": "4693:224:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14664, + "nodeType": "Block", + "src": "5344:267:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "id": 14638, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "5370:4:59", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Address_$14841", + "typeString": "library Address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Address_$14841", + "typeString": "library Address" + } + ], + "id": 14637, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5362:7:59", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 14636, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5362:7:59", + "typeDescriptions": {} + } + }, + "id": 14639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5362:13:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5376:7:59", + "memberName": "balance", + "nodeType": "MemberAccess", + "src": "5362:21:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 14641, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14628, + "src": "5387:5:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5362:30:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", + "id": 14643, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5394:40:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", + "typeString": "literal_string \"Address: insufficient balance for call\"" + }, + "value": "Address: insufficient balance for call" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", + "typeString": "literal_string \"Address: insufficient balance for call\"" + } + ], + "id": 14635, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5354:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5354:81:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14645, + "nodeType": "ExpressionStatement", + "src": "5354:81:59" + }, + { + "assignments": [ + 14647, + 14649 + ], + "declarations": [ + { + "constant": false, + "id": 14647, + "mutability": "mutable", + "name": "success", + "nameLocation": "5451:7:59", + "nodeType": "VariableDeclaration", + "scope": 14664, + "src": "5446:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14646, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5446:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14649, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "5473:10:59", + "nodeType": "VariableDeclaration", + "scope": 14664, + "src": "5460:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14648, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5460:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 14656, + "initialValue": { + "arguments": [ + { + "id": 14654, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14626, + "src": "5513:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 14650, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14624, + "src": "5487:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5494:4:59", + "memberName": "call", + "nodeType": "MemberAccess", + "src": "5487:11:59", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 14653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "names": [ + "value" + ], + "nodeType": "FunctionCallOptions", + "options": [ + { + "id": 14652, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14628, + "src": "5506:5:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "src": "5487:25:59", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 14655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5487:31:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5445:73:59" + }, + { + "expression": { + "arguments": [ + { + "id": 14658, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14624, + "src": "5562:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14659, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14647, + "src": "5570:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14660, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14649, + "src": "5579:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14661, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14630, + "src": "5591:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14657, + "name": "verifyCallResultFromTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14796, + "src": "5535:26:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" + } + }, + "id": 14662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5535:69:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14634, + "id": 14663, + "nodeType": "Return", + "src": "5528:76:59" + } + ] + }, + "documentation": { + "id": 14622, + "nodeType": "StructuredDocumentation", + "src": "4923:237:59", + "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" + }, + "id": 14665, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionCallWithValue", + "nameLocation": "5174:21:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14631, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14624, + "mutability": "mutable", + "name": "target", + "nameLocation": "5213:6:59", + "nodeType": "VariableDeclaration", + "scope": 14665, + "src": "5205:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14623, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5205:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14626, + "mutability": "mutable", + "name": "data", + "nameLocation": "5242:4:59", + "nodeType": "VariableDeclaration", + "scope": 14665, + "src": "5229:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14625, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5229:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14628, + "mutability": "mutable", + "name": "value", + "nameLocation": "5264:5:59", + "nodeType": "VariableDeclaration", + "scope": 14665, + "src": "5256:13:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14627, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5256:7:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14630, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "5293:12:59", + "nodeType": "VariableDeclaration", + "scope": 14665, + "src": "5279:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14629, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5279:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5195:116:59" + }, + "returnParameters": { + "id": 14634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14633, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14665, + "src": "5330:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14632, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5330:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5329:14:59" + }, + "scope": 14841, + "src": "5165:446:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14681, + "nodeType": "Block", + "src": "5888:97:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14676, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14668, + "src": "5924:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14677, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14670, + "src": "5932:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", + "id": 14678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5938:39:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", + "typeString": "literal_string \"Address: low-level static call failed\"" + }, + "value": "Address: low-level static call failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", + "typeString": "literal_string \"Address: low-level static call failed\"" + } + ], + "id": 14675, + "name": "functionStaticCall", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14682, + 14711 + ], + "referencedDeclaration": 14711, + "src": "5905:18:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" + } + }, + "id": 14679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5905:73:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14674, + "id": 14680, + "nodeType": "Return", + "src": "5898:80:59" + } + ] + }, + "documentation": { + "id": 14666, + "nodeType": "StructuredDocumentation", + "src": "5617:166:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" + }, + "id": 14682, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionStaticCall", + "nameLocation": "5797:18:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14671, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14668, + "mutability": "mutable", + "name": "target", + "nameLocation": "5824:6:59", + "nodeType": "VariableDeclaration", + "scope": 14682, + "src": "5816:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14667, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5816:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14670, + "mutability": "mutable", + "name": "data", + "nameLocation": "5845:4:59", + "nodeType": "VariableDeclaration", + "scope": 14682, + "src": "5832:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14669, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5832:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5815:35:59" + }, + "returnParameters": { + "id": 14674, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14673, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14682, + "src": "5874:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14672, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5874:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5873:14:59" + }, + "scope": 14841, + "src": "5788:197:59", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14710, + "nodeType": "Block", + "src": "6327:168:59", + "statements": [ + { + "assignments": [ + 14695, + 14697 + ], + "declarations": [ + { + "constant": false, + "id": 14695, + "mutability": "mutable", + "name": "success", + "nameLocation": "6343:7:59", + "nodeType": "VariableDeclaration", + "scope": 14710, + "src": "6338:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14694, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6338:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14697, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "6365:10:59", + "nodeType": "VariableDeclaration", + "scope": 14710, + "src": "6352:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14696, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6352:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 14702, + "initialValue": { + "arguments": [ + { + "id": 14700, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14687, + "src": "6397:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 14698, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14685, + "src": "6379:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6386:10:59", + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "6379:17:59", + "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": 14701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6379:23:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6337:65:59" + }, + { + "expression": { + "arguments": [ + { + "id": 14704, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14685, + "src": "6446:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14705, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14695, + "src": "6454:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14706, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14697, + "src": "6463:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14707, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14689, + "src": "6475:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14703, + "name": "verifyCallResultFromTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14796, + "src": "6419:26:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" + } + }, + "id": 14708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6419:69:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14693, + "id": 14709, + "nodeType": "Return", + "src": "6412:76:59" + } + ] + }, + "documentation": { + "id": 14683, + "nodeType": "StructuredDocumentation", + "src": "5991:173:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" + }, + "id": 14711, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionStaticCall", + "nameLocation": "6178:18:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14685, + "mutability": "mutable", + "name": "target", + "nameLocation": "6214:6:59", + "nodeType": "VariableDeclaration", + "scope": 14711, + "src": "6206:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14684, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6206:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14687, + "mutability": "mutable", + "name": "data", + "nameLocation": "6243:4:59", + "nodeType": "VariableDeclaration", + "scope": 14711, + "src": "6230:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14686, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6230:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14689, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "6271:12:59", + "nodeType": "VariableDeclaration", + "scope": 14711, + "src": "6257:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14688, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6257:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6196:93:59" + }, + "returnParameters": { + "id": 14693, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14692, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14711, + "src": "6313:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14691, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6313:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6312:14:59" + }, + "scope": 14841, + "src": "6169:326:59", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14727, + "nodeType": "Block", + "src": "6771:101:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14722, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14714, + "src": "6809:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14723, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14716, + "src": "6817:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", + "id": 14724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6823:41:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", + "typeString": "literal_string \"Address: low-level delegate call failed\"" + }, + "value": "Address: low-level delegate call failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", + "typeString": "literal_string \"Address: low-level delegate call failed\"" + } + ], + "id": 14721, + "name": "functionDelegateCall", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14728, + 14757 + ], + "referencedDeclaration": 14757, + "src": "6788:20:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" + } + }, + "id": 14725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6788:77:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14720, + "id": 14726, + "nodeType": "Return", + "src": "6781:84:59" + } + ] + }, + "documentation": { + "id": 14712, + "nodeType": "StructuredDocumentation", + "src": "6501:168:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" + }, + "id": 14728, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionDelegateCall", + "nameLocation": "6683:20:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14714, + "mutability": "mutable", + "name": "target", + "nameLocation": "6712:6:59", + "nodeType": "VariableDeclaration", + "scope": 14728, + "src": "6704:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14713, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6704:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14716, + "mutability": "mutable", + "name": "data", + "nameLocation": "6733:4:59", + "nodeType": "VariableDeclaration", + "scope": 14728, + "src": "6720:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14715, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6720:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6703:35:59" + }, + "returnParameters": { + "id": 14720, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14719, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14728, + "src": "6757:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14718, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6757:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6756:14:59" + }, + "scope": 14841, + "src": "6674:198:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14756, + "nodeType": "Block", + "src": "7213:170:59", + "statements": [ + { + "assignments": [ + 14741, + 14743 + ], + "declarations": [ + { + "constant": false, + "id": 14741, + "mutability": "mutable", + "name": "success", + "nameLocation": "7229:7:59", + "nodeType": "VariableDeclaration", + "scope": 14756, + "src": "7224:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14740, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7224:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14743, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "7251:10:59", + "nodeType": "VariableDeclaration", + "scope": 14756, + "src": "7238:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14742, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7238:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 14748, + "initialValue": { + "arguments": [ + { + "id": 14746, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14733, + "src": "7285:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 14744, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14731, + "src": "7265:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 14745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7272:12:59", + "memberName": "delegatecall", + "nodeType": "MemberAccess", + "src": "7265:19:59", + "typeDescriptions": { + "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) returns (bool,bytes memory)" + } + }, + "id": 14747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7265:25:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7223:67:59" + }, + { + "expression": { + "arguments": [ + { + "id": 14750, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14731, + "src": "7334:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14751, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14741, + "src": "7342:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14752, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14743, + "src": "7351:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14753, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14735, + "src": "7363:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14749, + "name": "verifyCallResultFromTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14796, + "src": "7307:26:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" + } + }, + "id": 14754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7307:69:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14739, + "id": 14755, + "nodeType": "Return", + "src": "7300:76:59" + } + ] + }, + "documentation": { + "id": 14729, + "nodeType": "StructuredDocumentation", + "src": "6878:175:59", + "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" + }, + "id": 14757, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "functionDelegateCall", + "nameLocation": "7067:20:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14736, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14731, + "mutability": "mutable", + "name": "target", + "nameLocation": "7105:6:59", + "nodeType": "VariableDeclaration", + "scope": 14757, + "src": "7097:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14730, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7097:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14733, + "mutability": "mutable", + "name": "data", + "nameLocation": "7134:4:59", + "nodeType": "VariableDeclaration", + "scope": 14757, + "src": "7121:17:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14732, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7121:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14735, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "7162:12:59", + "nodeType": "VariableDeclaration", + "scope": 14757, + "src": "7148:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14734, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7148:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7087:93:59" + }, + "returnParameters": { + "id": 14739, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14738, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14757, + "src": "7199:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14737, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7199:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7198:14:59" + }, + "scope": 14841, + "src": "7058:325:59", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14795, + "nodeType": "Block", + "src": "7865:434:59", + "statements": [ + { + "condition": { + "id": 14771, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14762, + "src": "7879:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 14793, + "nodeType": "Block", + "src": "8235:58:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14789, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14764, + "src": "8257:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14790, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14766, + "src": "8269:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14788, + "name": "_revert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14840, + "src": "8249:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,string memory) pure" + } + }, + "id": 14791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8249:33:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14792, + "nodeType": "ExpressionStatement", + "src": "8249:33:59" + } + ] + }, + "id": 14794, + "nodeType": "IfStatement", + "src": "7875:418:59", + "trueBody": { + "id": 14787, + "nodeType": "Block", + "src": "7888:341:59", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 14772, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14764, + "src": "7906:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 14773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7917:6:59", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7906:17:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 14774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7927:1:59", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7906:22:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 14784, + "nodeType": "IfStatement", + "src": "7902:286:59", + "trueBody": { + "id": 14783, + "nodeType": "Block", + "src": "7930:258:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 14778, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14760, + "src": "8132:6:59", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 14777, + "name": "isContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14529, + "src": "8121:10:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 14779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8121:18:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", + "id": 14780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8141:31:59", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", + "typeString": "literal_string \"Address: call to non-contract\"" + }, + "value": "Address: call to non-contract" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", + "typeString": "literal_string \"Address: call to non-contract\"" + } + ], + "id": 14776, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8113:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 14781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8113:60:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14782, + "nodeType": "ExpressionStatement", + "src": "8113:60:59" + } + ] + } + }, + { + "expression": { + "id": 14785, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14764, + "src": "8208:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14770, + "id": 14786, + "nodeType": "Return", + "src": "8201:17:59" + } + ] + } + } + ] + }, + "documentation": { + "id": 14758, + "nodeType": "StructuredDocumentation", + "src": "7389:277:59", + "text": " @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n _Available since v4.8._" + }, + "id": 14796, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifyCallResultFromTarget", + "nameLocation": "7680:26:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14760, + "mutability": "mutable", + "name": "target", + "nameLocation": "7724:6:59", + "nodeType": "VariableDeclaration", + "scope": 14796, + "src": "7716:14:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14759, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7716:7:59", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14762, + "mutability": "mutable", + "name": "success", + "nameLocation": "7745:7:59", + "nodeType": "VariableDeclaration", + "scope": 14796, + "src": "7740:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14761, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7740:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14764, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "7775:10:59", + "nodeType": "VariableDeclaration", + "scope": 14796, + "src": "7762:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14763, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7762:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14766, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "7809:12:59", + "nodeType": "VariableDeclaration", + "scope": 14796, + "src": "7795:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14765, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7795:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7706:121:59" + }, + "returnParameters": { + "id": 14770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14769, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14796, + "src": "7851:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14768, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7851:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7850:14:59" + }, + "scope": 14841, + "src": "7671:628:59", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14819, + "nodeType": "Block", + "src": "8680:135:59", + "statements": [ + { + "condition": { + "id": 14808, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14799, + "src": "8694:7:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 14817, + "nodeType": "Block", + "src": "8751:58:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14813, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14801, + "src": "8773:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 14814, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14803, + "src": "8785:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14812, + "name": "_revert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14840, + "src": "8765:7:59", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,string memory) pure" + } + }, + "id": 14815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8765:33:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14816, + "nodeType": "ExpressionStatement", + "src": "8765:33:59" + } + ] + }, + "id": 14818, + "nodeType": "IfStatement", + "src": "8690:119:59", + "trueBody": { + "id": 14811, + "nodeType": "Block", + "src": "8703:42:59", + "statements": [ + { + "expression": { + "id": 14809, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14801, + "src": "8724:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 14807, + "id": 14810, + "nodeType": "Return", + "src": "8717:17:59" + } + ] + } + } + ] + }, + "documentation": { + "id": 14797, + "nodeType": "StructuredDocumentation", + "src": "8305:210:59", + "text": " @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason or using the provided one.\n _Available since v4.3._" + }, + "id": 14820, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifyCallResult", + "nameLocation": "8529:16:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14799, + "mutability": "mutable", + "name": "success", + "nameLocation": "8560:7:59", + "nodeType": "VariableDeclaration", + "scope": 14820, + "src": "8555:12:59", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14798, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8555:4:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14801, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "8590:10:59", + "nodeType": "VariableDeclaration", + "scope": 14820, + "src": "8577:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14800, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8577:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14803, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "8624:12:59", + "nodeType": "VariableDeclaration", + "scope": 14820, + "src": "8610:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14802, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8610:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8545:97:59" + }, + "returnParameters": { + "id": 14807, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14806, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14820, + "src": "8666:12:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14805, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8666:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8665:14:59" + }, + "scope": 14841, + "src": "8520:295:59", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14839, + "nodeType": "Block", + "src": "8904:457:59", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14830, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 14827, + "name": "returndata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14822, + "src": "8980:10:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 14828, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8991:6:59", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8980:17:59", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 14829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9000:1:59", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8980:21:59", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 14837, + "nodeType": "Block", + "src": "9310:45:59", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14834, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14824, + "src": "9331:12:59", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 14833, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "9324:6:59", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 14835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9324:20:59", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14836, + "nodeType": "ExpressionStatement", + "src": "9324:20:59" + } + ] + }, + "id": 14838, + "nodeType": "IfStatement", + "src": "8976:379:59", + "trueBody": { + "id": 14832, + "nodeType": "Block", + "src": "9003:301:59", + "statements": [ + { + "AST": { + "nativeSrc": "9161:133:59", + "nodeType": "YulBlock", + "src": "9161:133:59", + "statements": [ + { + "nativeSrc": "9179:40:59", + "nodeType": "YulVariableDeclaration", + "src": "9179:40:59", + "value": { + "arguments": [ + { + "name": "returndata", + "nativeSrc": "9208:10:59", + "nodeType": "YulIdentifier", + "src": "9208:10:59" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9202:5:59", + "nodeType": "YulIdentifier", + "src": "9202:5:59" + }, + "nativeSrc": "9202:17:59", + "nodeType": "YulFunctionCall", + "src": "9202:17:59" + }, + "variables": [ + { + "name": "returndata_size", + "nativeSrc": "9183:15:59", + "nodeType": "YulTypedName", + "src": "9183:15:59", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9247:2:59", + "nodeType": "YulLiteral", + "src": "9247:2:59", + "type": "", + "value": "32" + }, + { + "name": "returndata", + "nativeSrc": "9251:10:59", + "nodeType": "YulIdentifier", + "src": "9251:10:59" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9243:3:59", + "nodeType": "YulIdentifier", + "src": "9243:3:59" + }, + "nativeSrc": "9243:19:59", + "nodeType": "YulFunctionCall", + "src": "9243:19:59" + }, + { + "name": "returndata_size", + "nativeSrc": "9264:15:59", + "nodeType": "YulIdentifier", + "src": "9264:15:59" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "9236:6:59", + "nodeType": "YulIdentifier", + "src": "9236:6:59" + }, + "nativeSrc": "9236:44:59", + "nodeType": "YulFunctionCall", + "src": "9236:44:59" + }, + "nativeSrc": "9236:44:59", + "nodeType": "YulExpressionStatement", + "src": "9236:44:59" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 14822, + "isOffset": false, + "isSlot": false, + "src": "9208:10:59", + "valueSize": 1 + }, + { + "declaration": 14822, + "isOffset": false, + "isSlot": false, + "src": "9251:10:59", + "valueSize": 1 + } + ], + "id": 14831, + "nodeType": "InlineAssembly", + "src": "9152:142:59" + } + ] + } + } + ] + }, + "id": 14840, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_revert", + "nameLocation": "8830:7:59", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14825, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14822, + "mutability": "mutable", + "name": "returndata", + "nameLocation": "8851:10:59", + "nodeType": "VariableDeclaration", + "scope": 14840, + "src": "8838:23:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14821, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8838:5:59", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14824, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "8877:12:59", + "nodeType": "VariableDeclaration", + "scope": 14840, + "src": "8863:26:59", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14823, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8863:6:59", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8837:53:59" + }, + "returnParameters": { + "id": 14826, + "nodeType": "ParameterList", + "parameters": [], + "src": "8904:0:59" + }, + "scope": 14841, + "src": "8821:540:59", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "scope": 14842, + "src": "194:9169:59", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "101:9263:59" + }, + "id": 59 + }, + "@openzeppelin/contracts/utils/Context.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/Context.sol", + "exportedSymbols": { + "Context": [ + 14871 + ] + }, + "id": 14872, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14843, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "101:23:60" + }, + { + "abstract": true, + "baseContracts": [], + "canonicalName": "Context", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 14844, + "nodeType": "StructuredDocumentation", + "src": "126:496:60", + "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." + }, + "fullyImplemented": true, + "id": 14871, + "linearizedBaseContracts": [ + 14871 + ], + "name": "Context", + "nameLocation": "641:7:60", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 14852, + "nodeType": "Block", + "src": "717:34:60", + "statements": [ + { + "expression": { + "expression": { + "id": 14849, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "734:3:60", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 14850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "738:6:60", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "734:10:60", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 14848, + "id": 14851, + "nodeType": "Return", + "src": "727:17:60" + } + ] + }, + "id": 14853, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgSender", + "nameLocation": "664:10:60", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14845, + "nodeType": "ParameterList", + "parameters": [], + "src": "674:2:60" + }, + "returnParameters": { + "id": 14848, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14847, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14853, + "src": "708:7:60", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14846, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "708:7:60", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "707:9:60" + }, + "scope": 14871, + "src": "655:96:60", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14861, + "nodeType": "Block", + "src": "824:32:60", + "statements": [ + { + "expression": { + "expression": { + "id": 14858, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "841:3:60", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 14859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "845:4:60", + "memberName": "data", + "nodeType": "MemberAccess", + "src": "841:8:60", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "functionReturnParameters": 14857, + "id": 14860, + "nodeType": "Return", + "src": "834:15:60" + } + ] + }, + "id": 14862, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgData", + "nameLocation": "766:8:60", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14854, + "nodeType": "ParameterList", + "parameters": [], + "src": "774:2:60" + }, + "returnParameters": { + "id": 14857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14856, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14862, + "src": "808:14:60", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14855, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "808:5:60", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "807:16:60" + }, + "scope": 14871, + "src": "757:99:60", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 14869, + "nodeType": "Block", + "src": "934:25:60", + "statements": [ + { + "expression": { + "hexValue": "30", + "id": 14867, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "951:1:60", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 14866, + "id": 14868, + "nodeType": "Return", + "src": "944:8:60" + } + ] + }, + "id": 14870, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_contextSuffixLength", + "nameLocation": "871:20:60", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14863, + "nodeType": "ParameterList", + "parameters": [], + "src": "891:2:60" + }, + "returnParameters": { + "id": 14866, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14865, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14870, + "src": "925:7:60", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14864, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "925:7:60", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "924:9:60" + }, + "scope": 14871, + "src": "862:97:60", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + } + ], + "scope": 14872, + "src": "623:338:60", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "101:861:60" + }, + "id": 60 + }, + "@openzeppelin/contracts/utils/Strings.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", + "exportedSymbols": { + "Math": [ + 16002 + ], + "SignedMath": [ + 16107 + ], + "Strings": [ + 15100 + ] + }, + "id": 15101, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 14873, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "101:23:61" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/math/Math.sol", + "file": "./math/Math.sol", + "id": 14874, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 15101, + "sourceUnit": 16003, + "src": "126:25:61", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/math/SignedMath.sol", + "file": "./math/SignedMath.sol", + "id": 14875, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 15101, + "sourceUnit": 16108, + "src": "152:31:61", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "Strings", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 14876, + "nodeType": "StructuredDocumentation", + "src": "185:34:61", + "text": " @dev String operations." + }, + "fullyImplemented": true, + "id": 15100, + "linearizedBaseContracts": [ + 15100 + ], + "name": "Strings", + "nameLocation": "228:7:61", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 14879, + "mutability": "constant", + "name": "_SYMBOLS", + "nameLocation": "267:8:61", + "nodeType": "VariableDeclaration", + "scope": 15100, + "src": "242:54:61", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + }, + "typeName": { + "id": 14877, + "name": "bytes16", + "nodeType": "ElementaryTypeName", + "src": "242:7:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + }, + "value": { + "hexValue": "30313233343536373839616263646566", + "id": 14878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "278:18:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", + "typeString": "literal_string \"0123456789abcdef\"" + }, + "value": "0123456789abcdef" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 14882, + "mutability": "constant", + "name": "_ADDRESS_LENGTH", + "nameLocation": "325:15:61", + "nodeType": "VariableDeclaration", + "scope": 15100, + "src": "302:43:61", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 14880, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "302:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "3230", + "id": 14881, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "343:2:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "visibility": "private" + }, + { + "body": { + "id": 14929, + "nodeType": "Block", + "src": "518:625:61", + "statements": [ + { + "id": 14928, + "nodeType": "UncheckedBlock", + "src": "528:609:61", + "statements": [ + { + "assignments": [ + 14891 + ], + "declarations": [ + { + "constant": false, + "id": 14891, + "mutability": "mutable", + "name": "length", + "nameLocation": "560:6:61", + "nodeType": "VariableDeclaration", + "scope": 14928, + "src": "552:14:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14890, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "552:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 14898, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 14894, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14885, + "src": "580:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14892, + "name": "Math", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16002, + "src": "569:4:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Math_$16002_$", + "typeString": "type(library Math)" + } + }, + "id": 14893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "574:5:61", + "memberName": "log10", + "nodeType": "MemberAccess", + "referencedDeclaration": 15839, + "src": "569:10:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 14895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "569:17:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 14896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "589:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "569:21:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "552:38:61" + }, + { + "assignments": [ + 14900 + ], + "declarations": [ + { + "constant": false, + "id": 14900, + "mutability": "mutable", + "name": "buffer", + "nameLocation": "618:6:61", + "nodeType": "VariableDeclaration", + "scope": 14928, + "src": "604:20:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14899, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "604:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 14905, + "initialValue": { + "arguments": [ + { + "id": 14903, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14891, + "src": "638:6:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "627:10:61", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_string_memory_ptr_$", + "typeString": "function (uint256) pure returns (string memory)" + }, + "typeName": { + "id": 14901, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "631:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + }, + "id": 14904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "627:18:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "604:41:61" + }, + { + "assignments": [ + 14907 + ], + "declarations": [ + { + "constant": false, + "id": 14907, + "mutability": "mutable", + "name": "ptr", + "nameLocation": "667:3:61", + "nodeType": "VariableDeclaration", + "scope": 14928, + "src": "659:11:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "659:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 14908, + "nodeType": "VariableDeclarationStatement", + "src": "659:11:61" + }, + { + "AST": { + "nativeSrc": "740:67:61", + "nodeType": "YulBlock", + "src": "740:67:61", + "statements": [ + { + "nativeSrc": "758:35:61", + "nodeType": "YulAssignment", + "src": "758:35:61", + "value": { + "arguments": [ + { + "name": "buffer", + "nativeSrc": "769:6:61", + "nodeType": "YulIdentifier", + "src": "769:6:61" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "781:2:61", + "nodeType": "YulLiteral", + "src": "781:2:61", + "type": "", + "value": "32" + }, + { + "name": "length", + "nativeSrc": "785:6:61", + "nodeType": "YulIdentifier", + "src": "785:6:61" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "777:3:61", + "nodeType": "YulIdentifier", + "src": "777:3:61" + }, + "nativeSrc": "777:15:61", + "nodeType": "YulFunctionCall", + "src": "777:15:61" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "765:3:61", + "nodeType": "YulIdentifier", + "src": "765:3:61" + }, + "nativeSrc": "765:28:61", + "nodeType": "YulFunctionCall", + "src": "765:28:61" + }, + "variableNames": [ + { + "name": "ptr", + "nativeSrc": "758:3:61", + "nodeType": "YulIdentifier", + "src": "758:3:61" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 14900, + "isOffset": false, + "isSlot": false, + "src": "769:6:61", + "valueSize": 1 + }, + { + "declaration": 14891, + "isOffset": false, + "isSlot": false, + "src": "785:6:61", + "valueSize": 1 + }, + { + "declaration": 14907, + "isOffset": false, + "isSlot": false, + "src": "758:3:61", + "valueSize": 1 + } + ], + "id": 14909, + "nodeType": "InlineAssembly", + "src": "731:76:61" + }, + { + "body": { + "id": 14924, + "nodeType": "Block", + "src": "833:267:61", + "statements": [ + { + "expression": { + "id": 14912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "851:5:61", + "subExpression": { + "id": 14911, + "name": "ptr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14907, + "src": "851:3:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14913, + "nodeType": "ExpressionStatement", + "src": "851:5:61" + }, + { + "AST": { + "nativeSrc": "934:84:61", + "nodeType": "YulBlock", + "src": "934:84:61", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "964:3:61", + "nodeType": "YulIdentifier", + "src": "964:3:61" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "978:5:61", + "nodeType": "YulIdentifier", + "src": "978:5:61" + }, + { + "kind": "number", + "nativeSrc": "985:2:61", + "nodeType": "YulLiteral", + "src": "985:2:61", + "type": "", + "value": "10" + } + ], + "functionName": { + "name": "mod", + "nativeSrc": "974:3:61", + "nodeType": "YulIdentifier", + "src": "974:3:61" + }, + "nativeSrc": "974:14:61", + "nodeType": "YulFunctionCall", + "src": "974:14:61" + }, + { + "name": "_SYMBOLS", + "nativeSrc": "990:8:61", + "nodeType": "YulIdentifier", + "src": "990:8:61" + } + ], + "functionName": { + "name": "byte", + "nativeSrc": "969:4:61", + "nodeType": "YulIdentifier", + "src": "969:4:61" + }, + "nativeSrc": "969:30:61", + "nodeType": "YulFunctionCall", + "src": "969:30:61" + } + ], + "functionName": { + "name": "mstore8", + "nativeSrc": "956:7:61", + "nodeType": "YulIdentifier", + "src": "956:7:61" + }, + "nativeSrc": "956:44:61", + "nodeType": "YulFunctionCall", + "src": "956:44:61" + }, + "nativeSrc": "956:44:61", + "nodeType": "YulExpressionStatement", + "src": "956:44:61" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 14879, + "isOffset": false, + "isSlot": false, + "src": "990:8:61", + "valueSize": 1 + }, + { + "declaration": 14907, + "isOffset": false, + "isSlot": false, + "src": "964:3:61", + "valueSize": 1 + }, + { + "declaration": 14885, + "isOffset": false, + "isSlot": false, + "src": "978:5:61", + "valueSize": 1 + } + ], + "id": 14914, + "nodeType": "InlineAssembly", + "src": "925:93:61" + }, + { + "expression": { + "id": 14917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 14915, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14885, + "src": "1035:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "hexValue": "3130", + "id": 14916, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1044:2:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "src": "1035:11:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 14918, + "nodeType": "ExpressionStatement", + "src": "1035:11:61" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 14919, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14885, + "src": "1068:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 14920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1077:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1068:10:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 14923, + "nodeType": "IfStatement", + "src": "1064:21:61", + "trueBody": { + "id": 14922, + "nodeType": "Break", + "src": "1080:5:61" + } + } + ] + }, + "condition": { + "hexValue": "74727565", + "id": 14910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "827:4:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "id": 14925, + "nodeType": "WhileStatement", + "src": "820:280:61" + }, + { + "expression": { + "id": 14926, + "name": "buffer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14900, + "src": "1120:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 14889, + "id": 14927, + "nodeType": "Return", + "src": "1113:13:61" + } + ] + } + ] + }, + "documentation": { + "id": 14883, + "nodeType": "StructuredDocumentation", + "src": "352:90:61", + "text": " @dev Converts a `uint256` to its ASCII `string` decimal representation." + }, + "id": 14930, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "456:8:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14885, + "mutability": "mutable", + "name": "value", + "nameLocation": "473:5:61", + "nodeType": "VariableDeclaration", + "scope": 14930, + "src": "465:13:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14884, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "465:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "464:15:61" + }, + "returnParameters": { + "id": 14889, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14888, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14930, + "src": "503:13:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14887, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "503:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "502:15:61" + }, + "scope": 15100, + "src": "447:696:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14957, + "nodeType": "Block", + "src": "1313:103:61", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 14944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 14942, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14933, + "src": "1354:5:61", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 14943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1362:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1354:9:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "", + "id": 14946, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1372:2:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + "id": 14947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "1354:20:61", + "trueExpression": { + "hexValue": "2d", + "id": 14945, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1366:3:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d3b8281179950f98149eefdb158d0e1acb56f56e8e343aa9fefafa7e36959561", + "typeString": "literal_string \"-\"" + }, + "value": "-" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 14951, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14933, + "src": "1400:5:61", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 14949, + "name": "SignedMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16107, + "src": "1385:10:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SignedMath_$16107_$", + "typeString": "type(library SignedMath)" + } + }, + "id": 14950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1396:3:61", + "memberName": "abs", + "nodeType": "MemberAccess", + "referencedDeclaration": 16106, + "src": "1385:14:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 14952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1385:21:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14948, + "name": "toString", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14930, + 14958 + ], + "referencedDeclaration": 14930, + "src": "1376:8:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$", + "typeString": "function (uint256) pure returns (string memory)" + } + }, + "id": 14953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1376:31:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14940, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1337:3:61", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14941, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1341:12:61", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "1337:16:61", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 14954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1337:71:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14939, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1330:6:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 14938, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1330:6:61", + "typeDescriptions": {} + } + }, + "id": 14955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1330:79:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 14937, + "id": 14956, + "nodeType": "Return", + "src": "1323:86:61" + } + ] + }, + "documentation": { + "id": 14931, + "nodeType": "StructuredDocumentation", + "src": "1149:89:61", + "text": " @dev Converts a `int256` to its ASCII `string` decimal representation." + }, + "id": 14958, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "1252:8:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14934, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14933, + "mutability": "mutable", + "name": "value", + "nameLocation": "1268:5:61", + "nodeType": "VariableDeclaration", + "scope": 14958, + "src": "1261:12:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 14932, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1261:6:61", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1260:14:61" + }, + "returnParameters": { + "id": 14937, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14936, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14958, + "src": "1298:13:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14935, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1298:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1297:15:61" + }, + "scope": 15100, + "src": "1243:173:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 14977, + "nodeType": "Block", + "src": "1595:100:61", + "statements": [ + { + "id": 14976, + "nodeType": "UncheckedBlock", + "src": "1605:84:61", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 14967, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14961, + "src": "1648:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 14970, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14961, + "src": "1667:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14968, + "name": "Math", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16002, + "src": "1655:4:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Math_$16002_$", + "typeString": "type(library Math)" + } + }, + "id": 14969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1660:6:61", + "memberName": "log256", + "nodeType": "MemberAccess", + "referencedDeclaration": 15962, + "src": "1655:11:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 14971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1655:18:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 14972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1676:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1655:22:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14966, + "name": "toHexString", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14978, + 15054, + 15074 + ], + "referencedDeclaration": 15054, + "src": "1636:11:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$", + "typeString": "function (uint256,uint256) pure returns (string memory)" + } + }, + "id": 14974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1636:42:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 14965, + "id": 14975, + "nodeType": "Return", + "src": "1629:49:61" + } + ] + } + ] + }, + "documentation": { + "id": 14959, + "nodeType": "StructuredDocumentation", + "src": "1422:94:61", + "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation." + }, + "id": 14978, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toHexString", + "nameLocation": "1530:11:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14961, + "mutability": "mutable", + "name": "value", + "nameLocation": "1550:5:61", + "nodeType": "VariableDeclaration", + "scope": 14978, + "src": "1542:13:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1542:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1541:15:61" + }, + "returnParameters": { + "id": 14965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14964, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 14978, + "src": "1580:13:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14963, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1580:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1579:15:61" + }, + "scope": 15100, + "src": "1521:174:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15053, + "nodeType": "Block", + "src": "1908:347:61", + "statements": [ + { + "assignments": [ + 14989 + ], + "declarations": [ + { + "constant": false, + "id": 14989, + "mutability": "mutable", + "name": "buffer", + "nameLocation": "1931:6:61", + "nodeType": "VariableDeclaration", + "scope": 15053, + "src": "1918:19:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 14988, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1918:5:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 14998, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 14994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 14992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1950:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 14993, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14983, + "src": "1954:6:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1950:10:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "32", + "id": 14995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1963:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "1950:14:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 14991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "1940:9:61", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 14990, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1944:5:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 14997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1940:25:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1918:47:61" + }, + { + "expression": { + "id": 15003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 14999, + "name": "buffer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14989, + "src": "1975:6:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 15001, + "indexExpression": { + "hexValue": "30", + "id": 15000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1982:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1975:9:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 15002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1987:3:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "typeString": "literal_string \"0\"" + }, + "value": "0" + }, + "src": "1975:15:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 15004, + "nodeType": "ExpressionStatement", + "src": "1975:15:61" + }, + { + "expression": { + "id": 15009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 15005, + "name": "buffer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14989, + "src": "2000:6:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 15007, + "indexExpression": { + "hexValue": "31", + "id": 15006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2007:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2000:9:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "78", + "id": 15008, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2012:3:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", + "typeString": "literal_string \"x\"" + }, + "value": "x" + }, + "src": "2000:15:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 15010, + "nodeType": "ExpressionStatement", + "src": "2000:15:61" + }, + { + "body": { + "id": 15039, + "nodeType": "Block", + "src": "2070:83:61", + "statements": [ + { + "expression": { + "id": 15033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 15025, + "name": "buffer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14989, + "src": "2084:6:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 15027, + "indexExpression": { + "id": 15026, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15012, + "src": "2091:1:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2084:9:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 15028, + "name": "_SYMBOLS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14879, + "src": "2096:8:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + }, + "id": 15032, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15029, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14981, + "src": "2105:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "307866", + "id": 15030, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2113:3:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_15_by_1", + "typeString": "int_const 15" + }, + "value": "0xf" + }, + "src": "2105:11:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2096:21:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "2084:33:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 15034, + "nodeType": "ExpressionStatement", + "src": "2084:33:61" + }, + { + "expression": { + "id": 15037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15035, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14981, + "src": "2131:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "34", + "id": 15036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2141:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "2131:11:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15038, + "nodeType": "ExpressionStatement", + "src": "2131:11:61" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15019, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15012, + "src": "2058:1:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "31", + "id": 15020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2062:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2058:5:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15040, + "initializationExpression": { + "assignments": [ + 15012 + ], + "declarations": [ + { + "constant": false, + "id": 15012, + "mutability": "mutable", + "name": "i", + "nameLocation": "2038:1:61", + "nodeType": "VariableDeclaration", + "scope": 15040, + "src": "2030:9:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15011, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2030:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15018, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2042:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15014, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14983, + "src": "2046:6:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2042:10:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 15016, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2055:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2042:14:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2030:26:61" + }, + "isSimpleCounterLoop": false, + "loopExpression": { + "expression": { + "id": 15023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": true, + "src": "2065:3:61", + "subExpression": { + "id": 15022, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15012, + "src": "2067:1:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15024, + "nodeType": "ExpressionStatement", + "src": "2065:3:61" + }, + "nodeType": "ForStatement", + "src": "2025:128:61" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15042, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14981, + "src": "2170:5:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 15043, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2179:1:61", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2170:10:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "537472696e67733a20686578206c656e67746820696e73756666696369656e74", + "id": 15045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2182:34:61", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", + "typeString": "literal_string \"Strings: hex length insufficient\"" + }, + "value": "Strings: hex length insufficient" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", + "typeString": "literal_string \"Strings: hex length insufficient\"" + } + ], + "id": 15041, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2162:7:61", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 15046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2162:55:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15047, + "nodeType": "ExpressionStatement", + "src": "2162:55:61" + }, + { + "expression": { + "arguments": [ + { + "id": 15050, + "name": "buffer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14989, + "src": "2241:6:61", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2234:6:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 15048, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2234:6:61", + "typeDescriptions": {} + } + }, + "id": 15051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2234:14:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 14987, + "id": 15052, + "nodeType": "Return", + "src": "2227:21:61" + } + ] + }, + "documentation": { + "id": 14979, + "nodeType": "StructuredDocumentation", + "src": "1701:112:61", + "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length." + }, + "id": 15054, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toHexString", + "nameLocation": "1827:11:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 14984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14981, + "mutability": "mutable", + "name": "value", + "nameLocation": "1847:5:61", + "nodeType": "VariableDeclaration", + "scope": 15054, + "src": "1839:13:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14980, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1839:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14983, + "mutability": "mutable", + "name": "length", + "nameLocation": "1862:6:61", + "nodeType": "VariableDeclaration", + "scope": 15054, + "src": "1854:14:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1854:7:61", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1838:31:61" + }, + "returnParameters": { + "id": 14987, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14986, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15054, + "src": "1893:13:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14985, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1893:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1892:15:61" + }, + "scope": 15100, + "src": "1818:437:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15073, + "nodeType": "Block", + "src": "2480:76:61", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 15067, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15057, + "src": "2525:4:61", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 15066, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2517:7:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 15065, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "2517:7:61", + "typeDescriptions": {} + } + }, + "id": 15068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2517:13:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 15064, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2509:7:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 15063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2509:7:61", + "typeDescriptions": {} + } + }, + "id": 15069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2509:22:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15070, + "name": "_ADDRESS_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14882, + "src": "2533:15:61", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 15062, + "name": "toHexString", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 14978, + 15054, + 15074 + ], + "referencedDeclaration": 15054, + "src": "2497:11:61", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$", + "typeString": "function (uint256,uint256) pure returns (string memory)" + } + }, + "id": 15071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2497:52:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 15061, + "id": 15072, + "nodeType": "Return", + "src": "2490:59:61" + } + ] + }, + "documentation": { + "id": 15055, + "nodeType": "StructuredDocumentation", + "src": "2261:141:61", + "text": " @dev Converts an `address` with fixed length of 20 bytes to its not checksummed ASCII `string` hexadecimal representation." + }, + "id": 15074, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toHexString", + "nameLocation": "2416:11:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15057, + "mutability": "mutable", + "name": "addr", + "nameLocation": "2436:4:61", + "nodeType": "VariableDeclaration", + "scope": 15074, + "src": "2428:12:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15056, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2428:7:61", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2427:14:61" + }, + "returnParameters": { + "id": 15061, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15060, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15074, + "src": "2465:13:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15059, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2465:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2464:15:61" + }, + "scope": 15100, + "src": "2407:149:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15098, + "nodeType": "Block", + "src": "2711:66:61", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 15096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 15087, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15077, + "src": "2744:1:61", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 15086, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2738:5:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 15085, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2738:5:61", + "typeDescriptions": {} + } + }, + "id": 15088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2738:8:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15084, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2728:9:61", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 15089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2728:19:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 15093, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15079, + "src": "2767:1:61", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 15092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2761:5:61", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 15091, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2761:5:61", + "typeDescriptions": {} + } + }, + "id": 15094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2761:8:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15090, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2751:9:61", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 15095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2751:19:61", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2728:42:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 15083, + "id": 15097, + "nodeType": "Return", + "src": "2721:49:61" + } + ] + }, + "documentation": { + "id": 15075, + "nodeType": "StructuredDocumentation", + "src": "2562:66:61", + "text": " @dev Returns true if the two strings are equal." + }, + "id": 15099, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "equal", + "nameLocation": "2642:5:61", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15077, + "mutability": "mutable", + "name": "a", + "nameLocation": "2662:1:61", + "nodeType": "VariableDeclaration", + "scope": 15099, + "src": "2648:15:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15076, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2648:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15079, + "mutability": "mutable", + "name": "b", + "nameLocation": "2679:1:61", + "nodeType": "VariableDeclaration", + "scope": 15099, + "src": "2665:15:61", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15078, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2665:6:61", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2647:34:61" + }, + "returnParameters": { + "id": 15083, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15082, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15099, + "src": "2705:4:61", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15081, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2705:4:61", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2704:6:61" + }, + "scope": 15100, + "src": "2633:144:61", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 15101, + "src": "220:2559:61", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "101:2679:61" + }, + "id": 61 + }, + "@openzeppelin/contracts/utils/introspection/ERC165.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "exportedSymbols": { + "ERC165": [ + 15124 + ], + "IERC165": [ + 15136 + ] + }, + "id": 15125, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 15102, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "99:23:62" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "file": "./IERC165.sol", + "id": 15103, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 15125, + "sourceUnit": 15137, + "src": "124:23:62", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 15105, + "name": "IERC165", + "nameLocations": [ + "754:7:62" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15136, + "src": "754:7:62" + }, + "id": 15106, + "nodeType": "InheritanceSpecifier", + "src": "754:7:62" + } + ], + "canonicalName": "ERC165", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 15104, + "nodeType": "StructuredDocumentation", + "src": "149:576:62", + "text": " @dev Implementation of the {IERC165} interface.\n Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n for the additional interface id that will be supported. For example:\n ```solidity\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n }\n ```\n Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation." + }, + "fullyImplemented": true, + "id": 15124, + "linearizedBaseContracts": [ + 15124, + 15136 + ], + "name": "ERC165", + "nameLocation": "744:6:62", + "nodeType": "ContractDefinition", + "nodes": [ + { + "baseFunctions": [ + 15135 + ], + "body": { + "id": 15122, + "nodeType": "Block", + "src": "920:64:62", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 15120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15115, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15109, + "src": "937:11:62", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 15117, + "name": "IERC165", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15136, + "src": "957:7:62", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC165_$15136_$", + "typeString": "type(contract IERC165)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC165_$15136_$", + "typeString": "type(contract IERC165)" + } + ], + "id": 15116, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "952:4:62", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 15118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "952:13:62", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC165_$15136", + "typeString": "type(contract IERC165)" + } + }, + "id": 15119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "966:11:62", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "952:25:62", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "937:40:62", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 15114, + "id": 15121, + "nodeType": "Return", + "src": "930:47:62" + } + ] + }, + "documentation": { + "id": 15107, + "nodeType": "StructuredDocumentation", + "src": "768:56:62", + "text": " @dev See {IERC165-supportsInterface}." + }, + "functionSelector": "01ffc9a7", + "id": 15123, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "838:17:62", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 15111, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "896:8:62" + }, + "parameters": { + "id": 15110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15109, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "863:11:62", + "nodeType": "VariableDeclaration", + "scope": 15123, + "src": "856:18:62", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 15108, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "856:6:62", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "855:20:62" + }, + "returnParameters": { + "id": 15114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15113, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15123, + "src": "914:4:62", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15112, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "914:4:62", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "913:6:62" + }, + "scope": 15124, + "src": "829:155:62", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + } + ], + "scope": 15125, + "src": "726:260:62", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "99:888:62" + }, + "id": 62 + }, + "@openzeppelin/contracts/utils/introspection/IERC165.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", + "exportedSymbols": { + "IERC165": [ + 15136 + ] + }, + "id": 15137, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 15126, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "100:23:63" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC165", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 15127, + "nodeType": "StructuredDocumentation", + "src": "125:279:63", + "text": " @dev Interface of the ERC165 standard, as defined in the\n https://eips.ethereum.org/EIPS/eip-165[EIP].\n Implementers can declare support of contract interfaces, which can then be\n queried by others ({ERC165Checker}).\n For an implementation, see {ERC165}." + }, + "fullyImplemented": false, + "id": 15136, + "linearizedBaseContracts": [ + 15136 + ], + "name": "IERC165", + "nameLocation": "415:7:63", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 15128, + "nodeType": "StructuredDocumentation", + "src": "429:340:63", + "text": " @dev Returns true if this contract implements the interface defined by\n `interfaceId`. See the corresponding\n https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n to learn more about how these ids are created.\n This function call must use less than 30 000 gas." + }, + "functionSelector": "01ffc9a7", + "id": 15135, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "783:17:63", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15131, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15130, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "808:11:63", + "nodeType": "VariableDeclaration", + "scope": 15135, + "src": "801:18:63", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 15129, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "801:6:63", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "800:20:63" + }, + "returnParameters": { + "id": 15134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15133, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15135, + "src": "844:4:63", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15132, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "844:4:63", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "843:6:63" + }, + "scope": 15136, + "src": "774:76:63", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 15137, + "src": "405:447:63", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "100:753:63" + }, + "id": 63 + }, + "@openzeppelin/contracts/utils/math/Math.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/math/Math.sol", + "exportedSymbols": { + "Math": [ + 16002 + ] + }, + "id": 16003, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 15138, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "103:23:64" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "Math", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 15139, + "nodeType": "StructuredDocumentation", + "src": "128:73:64", + "text": " @dev Standard math utilities missing in the Solidity language." + }, + "fullyImplemented": true, + "id": 16002, + "linearizedBaseContracts": [ + 16002 + ], + "name": "Math", + "nameLocation": "210:4:64", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "Math.Rounding", + "id": 15143, + "members": [ + { + "id": 15140, + "name": "Down", + "nameLocation": "245:4:64", + "nodeType": "EnumValue", + "src": "245:4:64" + }, + { + "id": 15141, + "name": "Up", + "nameLocation": "287:2:64", + "nodeType": "EnumValue", + "src": "287:2:64" + }, + { + "id": 15142, + "name": "Zero", + "nameLocation": "318:4:64", + "nodeType": "EnumValue", + "src": "318:4:64" + } + ], + "name": "Rounding", + "nameLocation": "226:8:64", + "nodeType": "EnumDefinition", + "src": "221:122:64" + }, + { + "body": { + "id": 15160, + "nodeType": "Block", + "src": "480:37:64", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15153, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15146, + "src": "497:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 15154, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15148, + "src": "501:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "497:5:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 15157, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15148, + "src": "509:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "497:13:64", + "trueExpression": { + "id": 15156, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15146, + "src": "505:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15152, + "id": 15159, + "nodeType": "Return", + "src": "490:20:64" + } + ] + }, + "documentation": { + "id": 15144, + "nodeType": "StructuredDocumentation", + "src": "349:59:64", + "text": " @dev Returns the largest of two numbers." + }, + "id": 15161, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "max", + "nameLocation": "422:3:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15146, + "mutability": "mutable", + "name": "a", + "nameLocation": "434:1:64", + "nodeType": "VariableDeclaration", + "scope": 15161, + "src": "426:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15145, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "426:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15148, + "mutability": "mutable", + "name": "b", + "nameLocation": "445:1:64", + "nodeType": "VariableDeclaration", + "scope": 15161, + "src": "437:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15147, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "437:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "425:22:64" + }, + "returnParameters": { + "id": 15152, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15151, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15161, + "src": "471:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15150, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "471:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "470:9:64" + }, + "scope": 16002, + "src": "413:104:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15178, + "nodeType": "Block", + "src": "655:37:64", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15171, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15164, + "src": "672:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 15172, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15166, + "src": "676:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "672:5:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 15175, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15166, + "src": "684:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "672:13:64", + "trueExpression": { + "id": 15174, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15164, + "src": "680:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15170, + "id": 15177, + "nodeType": "Return", + "src": "665:20:64" + } + ] + }, + "documentation": { + "id": 15162, + "nodeType": "StructuredDocumentation", + "src": "523:60:64", + "text": " @dev Returns the smallest of two numbers." + }, + "id": 15179, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "min", + "nameLocation": "597:3:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15167, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15164, + "mutability": "mutable", + "name": "a", + "nameLocation": "609:1:64", + "nodeType": "VariableDeclaration", + "scope": 15179, + "src": "601:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15163, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "601:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15166, + "mutability": "mutable", + "name": "b", + "nameLocation": "620:1:64", + "nodeType": "VariableDeclaration", + "scope": 15179, + "src": "612:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15165, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "612:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "600:22:64" + }, + "returnParameters": { + "id": 15170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15169, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15179, + "src": "646:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15168, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "646:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "645:9:64" + }, + "scope": 16002, + "src": "588:104:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15201, + "nodeType": "Block", + "src": "876:82:64", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15189, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15182, + "src": "931:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 15190, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15184, + "src": "935:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "931:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15192, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "930:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15193, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15182, + "src": "941:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "id": 15194, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15184, + "src": "945:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "941:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15196, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "940:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "32", + "id": 15197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "950:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "940:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "930:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15188, + "id": 15200, + "nodeType": "Return", + "src": "923:28:64" + } + ] + }, + "documentation": { + "id": 15180, + "nodeType": "StructuredDocumentation", + "src": "698:102:64", + "text": " @dev Returns the average of two numbers. The result is rounded towards\n zero." + }, + "id": 15202, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "average", + "nameLocation": "814:7:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15182, + "mutability": "mutable", + "name": "a", + "nameLocation": "830:1:64", + "nodeType": "VariableDeclaration", + "scope": 15202, + "src": "822:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15181, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "822:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15184, + "mutability": "mutable", + "name": "b", + "nameLocation": "841:1:64", + "nodeType": "VariableDeclaration", + "scope": 15202, + "src": "833:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "833:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "821:22:64" + }, + "returnParameters": { + "id": 15188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15187, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15202, + "src": "867:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15186, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "867:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "866:9:64" + }, + "scope": 16002, + "src": "805:153:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15226, + "nodeType": "Block", + "src": "1228:123:64", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15212, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15205, + "src": "1316:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 15213, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1321:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1316:6:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15221, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15216, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15205, + "src": "1330:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 15217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1334:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1330:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15219, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1329:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15220, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15207, + "src": "1339:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1329:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 15222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1343:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1329:15:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "1316:28:64", + "trueExpression": { + "hexValue": "30", + "id": 15215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1325:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15211, + "id": 15225, + "nodeType": "Return", + "src": "1309:35:64" + } + ] + }, + "documentation": { + "id": 15203, + "nodeType": "StructuredDocumentation", + "src": "964:188:64", + "text": " @dev Returns the ceiling of the division of two numbers.\n This differs from standard division with `/` in that it rounds up instead\n of rounding down." + }, + "id": 15227, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "ceilDiv", + "nameLocation": "1166:7:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15205, + "mutability": "mutable", + "name": "a", + "nameLocation": "1182:1:64", + "nodeType": "VariableDeclaration", + "scope": 15227, + "src": "1174:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15204, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1174:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15207, + "mutability": "mutable", + "name": "b", + "nameLocation": "1193:1:64", + "nodeType": "VariableDeclaration", + "scope": 15227, + "src": "1185:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1185:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1173:22:64" + }, + "returnParameters": { + "id": 15211, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15210, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15227, + "src": "1219:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15209, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1219:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1218:9:64" + }, + "scope": 16002, + "src": "1157:194:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15349, + "nodeType": "Block", + "src": "1765:4115:64", + "statements": [ + { + "id": 15348, + "nodeType": "UncheckedBlock", + "src": "1775:4099:64", + "statements": [ + { + "assignments": [ + 15240 + ], + "declarations": [ + { + "constant": false, + "id": 15240, + "mutability": "mutable", + "name": "prod0", + "nameLocation": "2104:5:64", + "nodeType": "VariableDeclaration", + "scope": 15348, + "src": "2096:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15239, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2096:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15241, + "nodeType": "VariableDeclarationStatement", + "src": "2096:13:64" + }, + { + "assignments": [ + 15243 + ], + "declarations": [ + { + "constant": false, + "id": 15243, + "mutability": "mutable", + "name": "prod1", + "nameLocation": "2176:5:64", + "nodeType": "VariableDeclaration", + "scope": 15348, + "src": "2168:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15242, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2168:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15244, + "nodeType": "VariableDeclarationStatement", + "src": "2168:13:64" + }, + { + "AST": { + "nativeSrc": "2248:157:64", + "nodeType": "YulBlock", + "src": "2248:157:64", + "statements": [ + { + "nativeSrc": "2266:30:64", + "nodeType": "YulVariableDeclaration", + "src": "2266:30:64", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "2283:1:64", + "nodeType": "YulIdentifier", + "src": "2283:1:64" + }, + { + "name": "y", + "nativeSrc": "2286:1:64", + "nodeType": "YulIdentifier", + "src": "2286:1:64" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2293:1:64", + "nodeType": "YulLiteral", + "src": "2293:1:64", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "2289:3:64", + "nodeType": "YulIdentifier", + "src": "2289:3:64" + }, + "nativeSrc": "2289:6:64", + "nodeType": "YulFunctionCall", + "src": "2289:6:64" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "2276:6:64", + "nodeType": "YulIdentifier", + "src": "2276:6:64" + }, + "nativeSrc": "2276:20:64", + "nodeType": "YulFunctionCall", + "src": "2276:20:64" + }, + "variables": [ + { + "name": "mm", + "nativeSrc": "2270:2:64", + "nodeType": "YulTypedName", + "src": "2270:2:64", + "type": "" + } + ] + }, + { + "nativeSrc": "2313:18:64", + "nodeType": "YulAssignment", + "src": "2313:18:64", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "2326:1:64", + "nodeType": "YulIdentifier", + "src": "2326:1:64" + }, + { + "name": "y", + "nativeSrc": "2329:1:64", + "nodeType": "YulIdentifier", + "src": "2329:1:64" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "2322:3:64", + "nodeType": "YulIdentifier", + "src": "2322:3:64" + }, + "nativeSrc": "2322:9:64", + "nodeType": "YulFunctionCall", + "src": "2322:9:64" + }, + "variableNames": [ + { + "name": "prod0", + "nativeSrc": "2313:5:64", + "nodeType": "YulIdentifier", + "src": "2313:5:64" + } + ] + }, + { + "nativeSrc": "2348:43:64", + "nodeType": "YulAssignment", + "src": "2348:43:64", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "mm", + "nativeSrc": "2365:2:64", + "nodeType": "YulIdentifier", + "src": "2365:2:64" + }, + { + "name": "prod0", + "nativeSrc": "2369:5:64", + "nodeType": "YulIdentifier", + "src": "2369:5:64" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2361:3:64", + "nodeType": "YulIdentifier", + "src": "2361:3:64" + }, + "nativeSrc": "2361:14:64", + "nodeType": "YulFunctionCall", + "src": "2361:14:64" + }, + { + "arguments": [ + { + "name": "mm", + "nativeSrc": "2380:2:64", + "nodeType": "YulIdentifier", + "src": "2380:2:64" + }, + { + "name": "prod0", + "nativeSrc": "2384:5:64", + "nodeType": "YulIdentifier", + "src": "2384:5:64" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2377:2:64", + "nodeType": "YulIdentifier", + "src": "2377:2:64" + }, + "nativeSrc": "2377:13:64", + "nodeType": "YulFunctionCall", + "src": "2377:13:64" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2357:3:64", + "nodeType": "YulIdentifier", + "src": "2357:3:64" + }, + "nativeSrc": "2357:34:64", + "nodeType": "YulFunctionCall", + "src": "2357:34:64" + }, + "variableNames": [ + { + "name": "prod1", + "nativeSrc": "2348:5:64", + "nodeType": "YulIdentifier", + "src": "2348:5:64" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "2313:5:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "2369:5:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "2384:5:64", + "valueSize": 1 + }, + { + "declaration": 15243, + "isOffset": false, + "isSlot": false, + "src": "2348:5:64", + "valueSize": 1 + }, + { + "declaration": 15230, + "isOffset": false, + "isSlot": false, + "src": "2283:1:64", + "valueSize": 1 + }, + { + "declaration": 15230, + "isOffset": false, + "isSlot": false, + "src": "2326:1:64", + "valueSize": 1 + }, + { + "declaration": 15232, + "isOffset": false, + "isSlot": false, + "src": "2286:1:64", + "valueSize": 1 + }, + { + "declaration": 15232, + "isOffset": false, + "isSlot": false, + "src": "2329:1:64", + "valueSize": 1 + } + ], + "id": 15245, + "nodeType": "InlineAssembly", + "src": "2239:166:64" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15246, + "name": "prod1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15243, + "src": "2486:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 15247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2495:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2486:10:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15254, + "nodeType": "IfStatement", + "src": "2482:368:64", + "trueBody": { + "id": 15253, + "nodeType": "Block", + "src": "2498:352:64", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15249, + "name": "prod0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15240, + "src": "2816:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15250, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "2824:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2816:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15238, + "id": 15252, + "nodeType": "Return", + "src": "2809:26:64" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15256, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "2960:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 15257, + "name": "prod1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15243, + "src": "2974:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2960:19:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4d6174683a206d756c446976206f766572666c6f77", + "id": 15259, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2981:23:64", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d87093691d63b122ac2c14d1b11554b287e2431cf2b03550b3be7cffb0f86851", + "typeString": "literal_string \"Math: mulDiv overflow\"" + }, + "value": "Math: mulDiv overflow" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d87093691d63b122ac2c14d1b11554b287e2431cf2b03550b3be7cffb0f86851", + "typeString": "literal_string \"Math: mulDiv overflow\"" + } + ], + "id": 15255, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2952:7:64", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 15260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2952:53:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15261, + "nodeType": "ExpressionStatement", + "src": "2952:53:64" + }, + { + "assignments": [ + 15263 + ], + "declarations": [ + { + "constant": false, + "id": 15263, + "mutability": "mutable", + "name": "remainder", + "nameLocation": "3269:9:64", + "nodeType": "VariableDeclaration", + "scope": 15348, + "src": "3261:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15262, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3261:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15264, + "nodeType": "VariableDeclarationStatement", + "src": "3261:17:64" + }, + { + "AST": { + "nativeSrc": "3301:291:64", + "nodeType": "YulBlock", + "src": "3301:291:64", + "statements": [ + { + "nativeSrc": "3370:38:64", + "nodeType": "YulAssignment", + "src": "3370:38:64", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "3390:1:64", + "nodeType": "YulIdentifier", + "src": "3390:1:64" + }, + { + "name": "y", + "nativeSrc": "3393:1:64", + "nodeType": "YulIdentifier", + "src": "3393:1:64" + }, + { + "name": "denominator", + "nativeSrc": "3396:11:64", + "nodeType": "YulIdentifier", + "src": "3396:11:64" + } + ], + "functionName": { + "name": "mulmod", + "nativeSrc": "3383:6:64", + "nodeType": "YulIdentifier", + "src": "3383:6:64" + }, + "nativeSrc": "3383:25:64", + "nodeType": "YulFunctionCall", + "src": "3383:25:64" + }, + "variableNames": [ + { + "name": "remainder", + "nativeSrc": "3370:9:64", + "nodeType": "YulIdentifier", + "src": "3370:9:64" + } + ] + }, + { + "nativeSrc": "3490:41:64", + "nodeType": "YulAssignment", + "src": "3490:41:64", + "value": { + "arguments": [ + { + "name": "prod1", + "nativeSrc": "3503:5:64", + "nodeType": "YulIdentifier", + "src": "3503:5:64" + }, + { + "arguments": [ + { + "name": "remainder", + "nativeSrc": "3513:9:64", + "nodeType": "YulIdentifier", + "src": "3513:9:64" + }, + { + "name": "prod0", + "nativeSrc": "3524:5:64", + "nodeType": "YulIdentifier", + "src": "3524:5:64" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3510:2:64", + "nodeType": "YulIdentifier", + "src": "3510:2:64" + }, + "nativeSrc": "3510:20:64", + "nodeType": "YulFunctionCall", + "src": "3510:20:64" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3499:3:64", + "nodeType": "YulIdentifier", + "src": "3499:3:64" + }, + "nativeSrc": "3499:32:64", + "nodeType": "YulFunctionCall", + "src": "3499:32:64" + }, + "variableNames": [ + { + "name": "prod1", + "nativeSrc": "3490:5:64", + "nodeType": "YulIdentifier", + "src": "3490:5:64" + } + ] + }, + { + "nativeSrc": "3548:30:64", + "nodeType": "YulAssignment", + "src": "3548:30:64", + "value": { + "arguments": [ + { + "name": "prod0", + "nativeSrc": "3561:5:64", + "nodeType": "YulIdentifier", + "src": "3561:5:64" + }, + { + "name": "remainder", + "nativeSrc": "3568:9:64", + "nodeType": "YulIdentifier", + "src": "3568:9:64" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3557:3:64", + "nodeType": "YulIdentifier", + "src": "3557:3:64" + }, + "nativeSrc": "3557:21:64", + "nodeType": "YulFunctionCall", + "src": "3557:21:64" + }, + "variableNames": [ + { + "name": "prod0", + "nativeSrc": "3548:5:64", + "nodeType": "YulIdentifier", + "src": "3548:5:64" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 15234, + "isOffset": false, + "isSlot": false, + "src": "3396:11:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "3524:5:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "3548:5:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "3561:5:64", + "valueSize": 1 + }, + { + "declaration": 15243, + "isOffset": false, + "isSlot": false, + "src": "3490:5:64", + "valueSize": 1 + }, + { + "declaration": 15243, + "isOffset": false, + "isSlot": false, + "src": "3503:5:64", + "valueSize": 1 + }, + { + "declaration": 15263, + "isOffset": false, + "isSlot": false, + "src": "3370:9:64", + "valueSize": 1 + }, + { + "declaration": 15263, + "isOffset": false, + "isSlot": false, + "src": "3513:9:64", + "valueSize": 1 + }, + { + "declaration": 15263, + "isOffset": false, + "isSlot": false, + "src": "3568:9:64", + "valueSize": 1 + }, + { + "declaration": 15230, + "isOffset": false, + "isSlot": false, + "src": "3390:1:64", + "valueSize": 1 + }, + { + "declaration": 15232, + "isOffset": false, + "isSlot": false, + "src": "3393:1:64", + "valueSize": 1 + } + ], + "id": 15265, + "nodeType": "InlineAssembly", + "src": "3292:300:64" + }, + { + "assignments": [ + 15267 + ], + "declarations": [ + { + "constant": false, + "id": 15267, + "mutability": "mutable", + "name": "twos", + "nameLocation": "3907:4:64", + "nodeType": "VariableDeclaration", + "scope": 15348, + "src": "3899:12:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15266, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3899:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15275, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15274, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15268, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "3914:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "~", + "prefix": true, + "src": "3929:12:64", + "subExpression": { + "id": 15269, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "3930:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 15271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3944:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3929:16:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15273, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3928:18:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3914:32:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3899:47:64" + }, + { + "AST": { + "nativeSrc": "3969:362:64", + "nodeType": "YulBlock", + "src": "3969:362:64", + "statements": [ + { + "nativeSrc": "4034:37:64", + "nodeType": "YulAssignment", + "src": "4034:37:64", + "value": { + "arguments": [ + { + "name": "denominator", + "nativeSrc": "4053:11:64", + "nodeType": "YulIdentifier", + "src": "4053:11:64" + }, + { + "name": "twos", + "nativeSrc": "4066:4:64", + "nodeType": "YulIdentifier", + "src": "4066:4:64" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "4049:3:64", + "nodeType": "YulIdentifier", + "src": "4049:3:64" + }, + "nativeSrc": "4049:22:64", + "nodeType": "YulFunctionCall", + "src": "4049:22:64" + }, + "variableNames": [ + { + "name": "denominator", + "nativeSrc": "4034:11:64", + "nodeType": "YulIdentifier", + "src": "4034:11:64" + } + ] + }, + { + "nativeSrc": "4138:25:64", + "nodeType": "YulAssignment", + "src": "4138:25:64", + "value": { + "arguments": [ + { + "name": "prod0", + "nativeSrc": "4151:5:64", + "nodeType": "YulIdentifier", + "src": "4151:5:64" + }, + { + "name": "twos", + "nativeSrc": "4158:4:64", + "nodeType": "YulIdentifier", + "src": "4158:4:64" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "4147:3:64", + "nodeType": "YulIdentifier", + "src": "4147:3:64" + }, + "nativeSrc": "4147:16:64", + "nodeType": "YulFunctionCall", + "src": "4147:16:64" + }, + "variableNames": [ + { + "name": "prod0", + "nativeSrc": "4138:5:64", + "nodeType": "YulIdentifier", + "src": "4138:5:64" + } + ] + }, + { + "nativeSrc": "4278:39:64", + "nodeType": "YulAssignment", + "src": "4278:39:64", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4298:1:64", + "nodeType": "YulLiteral", + "src": "4298:1:64", + "type": "", + "value": "0" + }, + { + "name": "twos", + "nativeSrc": "4301:4:64", + "nodeType": "YulIdentifier", + "src": "4301:4:64" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4294:3:64", + "nodeType": "YulIdentifier", + "src": "4294:3:64" + }, + "nativeSrc": "4294:12:64", + "nodeType": "YulFunctionCall", + "src": "4294:12:64" + }, + { + "name": "twos", + "nativeSrc": "4308:4:64", + "nodeType": "YulIdentifier", + "src": "4308:4:64" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "4290:3:64", + "nodeType": "YulIdentifier", + "src": "4290:3:64" + }, + "nativeSrc": "4290:23:64", + "nodeType": "YulFunctionCall", + "src": "4290:23:64" + }, + { + "kind": "number", + "nativeSrc": "4315:1:64", + "nodeType": "YulLiteral", + "src": "4315:1:64", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4286:3:64", + "nodeType": "YulIdentifier", + "src": "4286:3:64" + }, + "nativeSrc": "4286:31:64", + "nodeType": "YulFunctionCall", + "src": "4286:31:64" + }, + "variableNames": [ + { + "name": "twos", + "nativeSrc": "4278:4:64", + "nodeType": "YulIdentifier", + "src": "4278:4:64" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 15234, + "isOffset": false, + "isSlot": false, + "src": "4034:11:64", + "valueSize": 1 + }, + { + "declaration": 15234, + "isOffset": false, + "isSlot": false, + "src": "4053:11:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "4138:5:64", + "valueSize": 1 + }, + { + "declaration": 15240, + "isOffset": false, + "isSlot": false, + "src": "4151:5:64", + "valueSize": 1 + }, + { + "declaration": 15267, + "isOffset": false, + "isSlot": false, + "src": "4066:4:64", + "valueSize": 1 + }, + { + "declaration": 15267, + "isOffset": false, + "isSlot": false, + "src": "4158:4:64", + "valueSize": 1 + }, + { + "declaration": 15267, + "isOffset": false, + "isSlot": false, + "src": "4278:4:64", + "valueSize": 1 + }, + { + "declaration": 15267, + "isOffset": false, + "isSlot": false, + "src": "4301:4:64", + "valueSize": 1 + }, + { + "declaration": 15267, + "isOffset": false, + "isSlot": false, + "src": "4308:4:64", + "valueSize": 1 + } + ], + "id": 15276, + "nodeType": "InlineAssembly", + "src": "3960:371:64" + }, + { + "expression": { + "id": 15281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15277, + "name": "prod0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15240, + "src": "4397:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15278, + "name": "prod1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15243, + "src": "4406:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15279, + "name": "twos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15267, + "src": "4414:4:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4406:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4397:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15282, + "nodeType": "ExpressionStatement", + "src": "4397:21:64" + }, + { + "assignments": [ + 15284 + ], + "declarations": [ + { + "constant": false, + "id": 15284, + "mutability": "mutable", + "name": "inverse", + "nameLocation": "4744:7:64", + "nodeType": "VariableDeclaration", + "scope": 15348, + "src": "4736:15:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15283, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4736:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15291, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "33", + "id": 15285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4755:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15286, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "4759:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4755:15:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15288, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4754:17:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "hexValue": "32", + "id": 15289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4774:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "4754:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4736:39:64" + }, + { + "expression": { + "id": 15298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15292, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "4992:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15293, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5003:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15294, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5007:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15295, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5021:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5007:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5003:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4992:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15299, + "nodeType": "ExpressionStatement", + "src": "4992:36:64" + }, + { + "expression": { + "id": 15306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15300, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5061:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5072:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15302, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5076:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15303, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5090:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5076:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5072:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5061:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15307, + "nodeType": "ExpressionStatement", + "src": "5061:36:64" + }, + { + "expression": { + "id": 15314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15308, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5131:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5142:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15310, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5146:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15311, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5160:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5146:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5142:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5131:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15315, + "nodeType": "ExpressionStatement", + "src": "5131:36:64" + }, + { + "expression": { + "id": 15322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15316, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5201:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5212:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15318, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5216:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15319, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5230:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5216:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5212:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5201:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15323, + "nodeType": "ExpressionStatement", + "src": "5201:36:64" + }, + { + "expression": { + "id": 15330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15324, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5271:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5282:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15326, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5286:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15327, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5300:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5286:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5282:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5271:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15331, + "nodeType": "ExpressionStatement", + "src": "5271:36:64" + }, + { + "expression": { + "id": 15338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15332, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5342:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "*=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 15333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5353:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15334, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "5357:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15335, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5371:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5357:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5353:25:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5342:36:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15339, + "nodeType": "ExpressionStatement", + "src": "5342:36:64" + }, + { + "expression": { + "id": 15344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15340, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15237, + "src": "5812:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15341, + "name": "prod0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15240, + "src": "5821:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15342, + "name": "inverse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15284, + "src": "5829:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5821:15:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5812:24:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15345, + "nodeType": "ExpressionStatement", + "src": "5812:24:64" + }, + { + "expression": { + "id": 15346, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15237, + "src": "5857:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15238, + "id": 15347, + "nodeType": "Return", + "src": "5850:13:64" + } + ] + } + ] + }, + "documentation": { + "id": 15228, + "nodeType": "StructuredDocumentation", + "src": "1357:305:64", + "text": " @notice Calculates floor(x * y / denominator) with full precision. Throws if result overflows a uint256 or denominator == 0\n @dev Original credit to Remco Bloemen under MIT license (https://xn--2-umb.com/21/muldiv)\n with further edits by Uniswap Labs also under MIT license." + }, + "id": 15350, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mulDiv", + "nameLocation": "1676:6:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15230, + "mutability": "mutable", + "name": "x", + "nameLocation": "1691:1:64", + "nodeType": "VariableDeclaration", + "scope": 15350, + "src": "1683:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1683:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15232, + "mutability": "mutable", + "name": "y", + "nameLocation": "1702:1:64", + "nodeType": "VariableDeclaration", + "scope": 15350, + "src": "1694:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15231, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1694:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15234, + "mutability": "mutable", + "name": "denominator", + "nameLocation": "1713:11:64", + "nodeType": "VariableDeclaration", + "scope": 15350, + "src": "1705:19:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15233, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1705:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1682:43:64" + }, + "returnParameters": { + "id": 15238, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15237, + "mutability": "mutable", + "name": "result", + "nameLocation": "1757:6:64", + "nodeType": "VariableDeclaration", + "scope": 15350, + "src": "1749:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15236, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1749:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1748:16:64" + }, + "scope": 16002, + "src": "1667:4213:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15393, + "nodeType": "Block", + "src": "6122:189:64", + "statements": [ + { + "assignments": [ + 15366 + ], + "declarations": [ + { + "constant": false, + "id": 15366, + "mutability": "mutable", + "name": "result", + "nameLocation": "6140:6:64", + "nodeType": "VariableDeclaration", + "scope": 15393, + "src": "6132:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15365, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6132:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15372, + "initialValue": { + "arguments": [ + { + "id": 15368, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15353, + "src": "6156:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15369, + "name": "y", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15355, + "src": "6159:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15370, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15357, + "src": "6162:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15367, + "name": "mulDiv", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15350, + 15394 + ], + "referencedDeclaration": 15350, + "src": "6149:6:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,uint256) pure returns (uint256)" + } + }, + "id": 15371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6149:25:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6132:42:64" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 15384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "id": 15376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15373, + "name": "rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15360, + "src": "6188:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 15374, + "name": "Rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15143, + "src": "6200:8:64", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_Rounding_$15143_$", + "typeString": "type(enum Math.Rounding)" + } + }, + "id": 15375, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6209:2:64", + "memberName": "Up", + "nodeType": "MemberAccess", + "referencedDeclaration": 15141, + "src": "6200:11:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "src": "6188:23:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 15378, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15353, + "src": "6222:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15379, + "name": "y", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15355, + "src": "6225:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15380, + "name": "denominator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15357, + "src": "6228:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15377, + "name": "mulmod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -16, + "src": "6215:6:64", + "typeDescriptions": { + "typeIdentifier": "t_function_mulmod_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,uint256) pure returns (uint256)" + } + }, + "id": 15381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6215:25:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6243:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6215:29:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6188:56:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15390, + "nodeType": "IfStatement", + "src": "6184:98:64", + "trueBody": { + "id": 15389, + "nodeType": "Block", + "src": "6246:36:64", + "statements": [ + { + "expression": { + "id": 15387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15385, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15366, + "src": "6260:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 15386, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6270:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6260:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15388, + "nodeType": "ExpressionStatement", + "src": "6260:11:64" + } + ] + } + }, + { + "expression": { + "id": 15391, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15366, + "src": "6298:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15364, + "id": 15392, + "nodeType": "Return", + "src": "6291:13:64" + } + ] + }, + "documentation": { + "id": 15351, + "nodeType": "StructuredDocumentation", + "src": "5886:121:64", + "text": " @notice Calculates x * y / denominator with full precision, following the selected rounding direction." + }, + "id": 15394, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mulDiv", + "nameLocation": "6021:6:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15361, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15353, + "mutability": "mutable", + "name": "x", + "nameLocation": "6036:1:64", + "nodeType": "VariableDeclaration", + "scope": 15394, + "src": "6028:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15352, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6028:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15355, + "mutability": "mutable", + "name": "y", + "nameLocation": "6047:1:64", + "nodeType": "VariableDeclaration", + "scope": 15394, + "src": "6039:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6039:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15357, + "mutability": "mutable", + "name": "denominator", + "nameLocation": "6058:11:64", + "nodeType": "VariableDeclaration", + "scope": 15394, + "src": "6050:19:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15356, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6050:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15360, + "mutability": "mutable", + "name": "rounding", + "nameLocation": "6080:8:64", + "nodeType": "VariableDeclaration", + "scope": 15394, + "src": "6071:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "typeName": { + "id": 15359, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 15358, + "name": "Rounding", + "nameLocations": [ + "6071:8:64" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15143, + "src": "6071:8:64" + }, + "referencedDeclaration": 15143, + "src": "6071:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "visibility": "internal" + } + ], + "src": "6027:62:64" + }, + "returnParameters": { + "id": 15364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15363, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15394, + "src": "6113:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15362, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6113:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6112:9:64" + }, + "scope": 16002, + "src": "6012:299:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15505, + "nodeType": "Block", + "src": "6587:1585:64", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15402, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "6601:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 15403, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6606:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6601:6:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15408, + "nodeType": "IfStatement", + "src": "6597:45:64", + "trueBody": { + "id": 15407, + "nodeType": "Block", + "src": "6609:33:64", + "statements": [ + { + "expression": { + "hexValue": "30", + "id": 15405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6630:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 15401, + "id": 15406, + "nodeType": "Return", + "src": "6623:8:64" + } + ] + } + }, + { + "assignments": [ + 15410 + ], + "declarations": [ + { + "constant": false, + "id": 15410, + "mutability": "mutable", + "name": "result", + "nameLocation": "7329:6:64", + "nodeType": "VariableDeclaration", + "scope": 15505, + "src": "7321:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15409, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7321:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15419, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 15411, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7338:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 15413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7349:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15412, + "name": "log2", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15674, + 15710 + ], + "referencedDeclaration": 15674, + "src": "7344:4:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 15414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7344:7:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15415, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7355:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7344:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15417, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7343:14:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7338:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7321:36:64" + }, + { + "id": 15504, + "nodeType": "UncheckedBlock", + "src": "7758:408:64", + "statements": [ + { + "expression": { + "id": 15429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15420, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7782:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15421, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7792:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15422, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7801:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15423, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7805:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7801:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7792:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15426, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7791:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7816:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7791:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7782:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15430, + "nodeType": "ExpressionStatement", + "src": "7782:35:64" + }, + { + "expression": { + "id": 15440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15431, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7831:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15432, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7841:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15433, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7850:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15434, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7854:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7850:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7841:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15437, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7840:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7865:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7840:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7831:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15441, + "nodeType": "ExpressionStatement", + "src": "7831:35:64" + }, + { + "expression": { + "id": 15451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15442, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7880:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15443, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7890:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15444, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7899:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15445, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7903:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7899:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7890:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15448, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7889:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7914:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7889:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7880:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15452, + "nodeType": "ExpressionStatement", + "src": "7880:35:64" + }, + { + "expression": { + "id": 15462, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15453, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7929:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15454, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7939:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15455, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7948:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15456, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7952:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7948:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7939:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15459, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7938:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7963:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7938:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7929:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15463, + "nodeType": "ExpressionStatement", + "src": "7929:35:64" + }, + { + "expression": { + "id": 15473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15464, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7978:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15465, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "7988:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15466, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "7997:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15467, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8001:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7997:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7988:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15470, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7987:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8012:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7987:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7978:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15474, + "nodeType": "ExpressionStatement", + "src": "7978:35:64" + }, + { + "expression": { + "id": 15484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15475, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8027:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15476, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8037:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15477, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "8046:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15478, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8050:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8046:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8037:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15481, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8036:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8061:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8036:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8027:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15485, + "nodeType": "ExpressionStatement", + "src": "8027:35:64" + }, + { + "expression": { + "id": 15495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15486, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8076:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15487, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8086:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15488, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "8095:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15489, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8099:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8095:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8086:19:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15492, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8085:21:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8110:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8085:26:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8076:35:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15496, + "nodeType": "ExpressionStatement", + "src": "8076:35:64" + }, + { + "expression": { + "arguments": [ + { + "id": 15498, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8136:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15499, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15397, + "src": "8144:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 15500, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15410, + "src": "8148:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8144:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15497, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15179, + "src": "8132:3:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 15502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8132:23:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15401, + "id": 15503, + "nodeType": "Return", + "src": "8125:30:64" + } + ] + } + ] + }, + "documentation": { + "id": 15395, + "nodeType": "StructuredDocumentation", + "src": "6317:208:64", + "text": " @dev Returns the square root of a number. If the number is not a perfect square, the value is rounded down.\n Inspired by Henry S. Warren, Jr.'s \"Hacker's Delight\" (Chapter 11)." + }, + "id": 15506, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sqrt", + "nameLocation": "6539:4:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15397, + "mutability": "mutable", + "name": "a", + "nameLocation": "6552:1:64", + "nodeType": "VariableDeclaration", + "scope": 15506, + "src": "6544:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6544:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6543:11:64" + }, + "returnParameters": { + "id": 15401, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15400, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15506, + "src": "6578:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15399, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6578:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6577:9:64" + }, + "scope": 16002, + "src": "6530:1642:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15541, + "nodeType": "Block", + "src": "8348:161:64", + "statements": [ + { + "id": 15540, + "nodeType": "UncheckedBlock", + "src": "8358:145:64", + "statements": [ + { + "assignments": [ + 15518 + ], + "declarations": [ + { + "constant": false, + "id": 15518, + "mutability": "mutable", + "name": "result", + "nameLocation": "8390:6:64", + "nodeType": "VariableDeclaration", + "scope": 15540, + "src": "8382:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15517, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8382:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15522, + "initialValue": { + "arguments": [ + { + "id": 15520, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15509, + "src": "8404:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15519, + "name": "sqrt", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15506, + 15542 + ], + "referencedDeclaration": 15506, + "src": "8399:4:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 15521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8399:7:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8382:24:64" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15523, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15518, + "src": "8427:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 15533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "id": 15527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15524, + "name": "rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15512, + "src": "8437:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 15525, + "name": "Rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15143, + "src": "8449:8:64", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_Rounding_$15143_$", + "typeString": "type(enum Math.Rounding)" + } + }, + "id": 15526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8458:2:64", + "memberName": "Up", + "nodeType": "MemberAccess", + "referencedDeclaration": 15141, + "src": "8449:11:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "src": "8437:23:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15528, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15518, + "src": "8464:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 15529, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15518, + "src": "8473:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8464:15:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 15531, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15509, + "src": "8482:1:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8464:19:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8437:46:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "30", + "id": 15535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8490:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "id": 15536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "8437:54:64", + "trueExpression": { + "hexValue": "31", + "id": 15534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8486:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 15537, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8436:56:64", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "8427:65:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15516, + "id": 15539, + "nodeType": "Return", + "src": "8420:72:64" + } + ] + } + ] + }, + "documentation": { + "id": 15507, + "nodeType": "StructuredDocumentation", + "src": "8178:89:64", + "text": " @notice Calculates sqrt(a), following the selected rounding direction." + }, + "id": 15542, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sqrt", + "nameLocation": "8281:4:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15509, + "mutability": "mutable", + "name": "a", + "nameLocation": "8294:1:64", + "nodeType": "VariableDeclaration", + "scope": 15542, + "src": "8286:9:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15508, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8286:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15512, + "mutability": "mutable", + "name": "rounding", + "nameLocation": "8306:8:64", + "nodeType": "VariableDeclaration", + "scope": 15542, + "src": "8297:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "typeName": { + "id": 15511, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 15510, + "name": "Rounding", + "nameLocations": [ + "8297:8:64" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15143, + "src": "8297:8:64" + }, + "referencedDeclaration": 15143, + "src": "8297:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "visibility": "internal" + } + ], + "src": "8285:30:64" + }, + "returnParameters": { + "id": 15516, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15515, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15542, + "src": "8339:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15514, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8339:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8338:9:64" + }, + "scope": 16002, + "src": "8272:237:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15673, + "nodeType": "Block", + "src": "8694:922:64", + "statements": [ + { + "assignments": [ + 15551 + ], + "declarations": [ + { + "constant": false, + "id": 15551, + "mutability": "mutable", + "name": "result", + "nameLocation": "8712:6:64", + "nodeType": "VariableDeclaration", + "scope": 15673, + "src": "8704:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15550, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8704:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15553, + "initialValue": { + "hexValue": "30", + "id": 15552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8721:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8704:18:64" + }, + { + "id": 15670, + "nodeType": "UncheckedBlock", + "src": "8732:855:64", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15554, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "8760:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "313238", + "id": 15555, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8769:3:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "8760:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8775:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8760:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15568, + "nodeType": "IfStatement", + "src": "8756:99:64", + "trueBody": { + "id": 15567, + "nodeType": "Block", + "src": "8778:77:64", + "statements": [ + { + "expression": { + "id": 15561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15559, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "8796:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "313238", + "id": 15560, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8806:3:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "8796:13:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15562, + "nodeType": "ExpressionStatement", + "src": "8796:13:64" + }, + { + "expression": { + "id": 15565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15563, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "8827:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "313238", + "id": 15564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8837:3:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "8827:13:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15566, + "nodeType": "ExpressionStatement", + "src": "8827:13:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15569, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "8872:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3634", + "id": 15570, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8881:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "8872:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15572, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8886:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8872:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15583, + "nodeType": "IfStatement", + "src": "8868:96:64", + "trueBody": { + "id": 15582, + "nodeType": "Block", + "src": "8889:75:64", + "statements": [ + { + "expression": { + "id": 15576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15574, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "8907:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3634", + "id": 15575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8917:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "8907:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15577, + "nodeType": "ExpressionStatement", + "src": "8907:12:64" + }, + { + "expression": { + "id": 15580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15578, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "8937:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3634", + "id": 15579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8947:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "8937:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15581, + "nodeType": "ExpressionStatement", + "src": "8937:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15584, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "8981:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3332", + "id": 15585, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8990:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "8981:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8995:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8981:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15598, + "nodeType": "IfStatement", + "src": "8977:96:64", + "trueBody": { + "id": 15597, + "nodeType": "Block", + "src": "8998:75:64", + "statements": [ + { + "expression": { + "id": 15591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15589, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9016:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3332", + "id": 15590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9026:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "9016:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15592, + "nodeType": "ExpressionStatement", + "src": "9016:12:64" + }, + { + "expression": { + "id": 15595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15593, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9046:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 15594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9056:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "9046:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15596, + "nodeType": "ExpressionStatement", + "src": "9046:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15599, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9090:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3136", + "id": 15600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9099:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "9090:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9104:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9090:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15613, + "nodeType": "IfStatement", + "src": "9086:96:64", + "trueBody": { + "id": 15612, + "nodeType": "Block", + "src": "9107:75:64", + "statements": [ + { + "expression": { + "id": 15606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15604, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9125:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3136", + "id": 15605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9135:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "9125:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15607, + "nodeType": "ExpressionStatement", + "src": "9125:12:64" + }, + { + "expression": { + "id": 15610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15608, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9155:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3136", + "id": 15609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9165:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "9155:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15611, + "nodeType": "ExpressionStatement", + "src": "9155:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15614, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9199:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "38", + "id": 15615, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9208:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "9199:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9212:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9199:14:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15628, + "nodeType": "IfStatement", + "src": "9195:93:64", + "trueBody": { + "id": 15627, + "nodeType": "Block", + "src": "9215:73:64", + "statements": [ + { + "expression": { + "id": 15621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15619, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9233:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "38", + "id": 15620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9243:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "9233:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15622, + "nodeType": "ExpressionStatement", + "src": "9233:11:64" + }, + { + "expression": { + "id": 15625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15623, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9262:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "38", + "id": 15624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9272:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "9262:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15626, + "nodeType": "ExpressionStatement", + "src": "9262:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15629, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9305:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "34", + "id": 15630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9314:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "9305:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9318:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9305:14:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15643, + "nodeType": "IfStatement", + "src": "9301:93:64", + "trueBody": { + "id": 15642, + "nodeType": "Block", + "src": "9321:73:64", + "statements": [ + { + "expression": { + "id": 15636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15634, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9339:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "34", + "id": 15635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9349:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "9339:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15637, + "nodeType": "ExpressionStatement", + "src": "9339:11:64" + }, + { + "expression": { + "id": 15640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15638, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9368:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "34", + "id": 15639, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9378:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "9368:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15641, + "nodeType": "ExpressionStatement", + "src": "9368:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15644, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9411:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "32", + "id": 15645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9420:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "9411:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9424:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9411:14:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15658, + "nodeType": "IfStatement", + "src": "9407:93:64", + "trueBody": { + "id": 15657, + "nodeType": "Block", + "src": "9427:73:64", + "statements": [ + { + "expression": { + "id": 15651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15649, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9445:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "32", + "id": 15650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9455:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "9445:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15652, + "nodeType": "ExpressionStatement", + "src": "9445:11:64" + }, + { + "expression": { + "id": 15655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15653, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9474:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 15654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9484:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "9474:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15656, + "nodeType": "ExpressionStatement", + "src": "9474:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15659, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15545, + "src": "9517:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 15660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9526:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9517:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15662, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9530:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9517:14:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15669, + "nodeType": "IfStatement", + "src": "9513:64:64", + "trueBody": { + "id": 15668, + "nodeType": "Block", + "src": "9533:44:64", + "statements": [ + { + "expression": { + "id": 15666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15664, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9551:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 15665, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9561:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9551:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15667, + "nodeType": "ExpressionStatement", + "src": "9551:11:64" + } + ] + } + } + ] + }, + { + "expression": { + "id": 15671, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15551, + "src": "9603:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15549, + "id": 15672, + "nodeType": "Return", + "src": "9596:13:64" + } + ] + }, + "documentation": { + "id": 15543, + "nodeType": "StructuredDocumentation", + "src": "8515:113:64", + "text": " @dev Return the log in base 2, rounded down, of a positive value.\n Returns 0 if given 0." + }, + "id": 15674, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log2", + "nameLocation": "8642:4:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15546, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15545, + "mutability": "mutable", + "name": "value", + "nameLocation": "8655:5:64", + "nodeType": "VariableDeclaration", + "scope": 15674, + "src": "8647:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15544, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8647:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8646:15:64" + }, + "returnParameters": { + "id": 15549, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15548, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15674, + "src": "8685:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15547, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8685:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8684:9:64" + }, + "scope": 16002, + "src": "8633:983:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15709, + "nodeType": "Block", + "src": "9849:165:64", + "statements": [ + { + "id": 15708, + "nodeType": "UncheckedBlock", + "src": "9859:149:64", + "statements": [ + { + "assignments": [ + 15686 + ], + "declarations": [ + { + "constant": false, + "id": 15686, + "mutability": "mutable", + "name": "result", + "nameLocation": "9891:6:64", + "nodeType": "VariableDeclaration", + "scope": 15708, + "src": "9883:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15685, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9883:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15690, + "initialValue": { + "arguments": [ + { + "id": 15688, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15677, + "src": "9905:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15687, + "name": "log2", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15674, + 15710 + ], + "referencedDeclaration": 15674, + "src": "9900:4:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 15689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9900:11:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9883:28:64" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15691, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15686, + "src": "9932:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 15701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "id": 15695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15692, + "name": "rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15680, + "src": "9942:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 15693, + "name": "Rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15143, + "src": "9954:8:64", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_Rounding_$15143_$", + "typeString": "type(enum Math.Rounding)" + } + }, + "id": 15694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9963:2:64", + "memberName": "Up", + "nodeType": "MemberAccess", + "referencedDeclaration": 15141, + "src": "9954:11:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "src": "9942:23:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 15696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9969:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "id": 15697, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15686, + "src": "9974:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9969:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 15699, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15677, + "src": "9983:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9969:19:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9942:46:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "30", + "id": 15703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9995:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "id": 15704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "9942:54:64", + "trueExpression": { + "hexValue": "31", + "id": 15702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9991:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 15705, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "9941:56:64", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "9932:65:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15684, + "id": 15707, + "nodeType": "Return", + "src": "9925:72:64" + } + ] + } + ] + }, + "documentation": { + "id": 15675, + "nodeType": "StructuredDocumentation", + "src": "9622:142:64", + "text": " @dev Return the log in base 2, following the selected rounding direction, of a positive value.\n Returns 0 if given 0." + }, + "id": 15710, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log2", + "nameLocation": "9778:4:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15681, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15677, + "mutability": "mutable", + "name": "value", + "nameLocation": "9791:5:64", + "nodeType": "VariableDeclaration", + "scope": 15710, + "src": "9783:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15676, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9783:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15680, + "mutability": "mutable", + "name": "rounding", + "nameLocation": "9807:8:64", + "nodeType": "VariableDeclaration", + "scope": 15710, + "src": "9798:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "typeName": { + "id": 15679, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 15678, + "name": "Rounding", + "nameLocations": [ + "9798:8:64" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15143, + "src": "9798:8:64" + }, + "referencedDeclaration": 15143, + "src": "9798:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "visibility": "internal" + } + ], + "src": "9782:34:64" + }, + "returnParameters": { + "id": 15684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15683, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15710, + "src": "9840:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15682, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9840:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9839:9:64" + }, + "scope": 16002, + "src": "9769:245:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15838, + "nodeType": "Block", + "src": "10201:854:64", + "statements": [ + { + "assignments": [ + 15719 + ], + "declarations": [ + { + "constant": false, + "id": 15719, + "mutability": "mutable", + "name": "result", + "nameLocation": "10219:6:64", + "nodeType": "VariableDeclaration", + "scope": 15838, + "src": "10211:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15718, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10211:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15721, + "initialValue": { + "hexValue": "30", + "id": 15720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10228:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "10211:18:64" + }, + { + "id": 15835, + "nodeType": "UncheckedBlock", + "src": "10239:787:64", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15722, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10267:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_10000000000000000000000000000000000000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(57 digits omitted)...0000" + }, + "id": 15725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10276:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3634", + "id": 15724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10282:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "10276:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000000000000000000000000000000000000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(57 digits omitted)...0000" + } + }, + "src": "10267:17:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15738, + "nodeType": "IfStatement", + "src": "10263:103:64", + "trueBody": { + "id": 15737, + "nodeType": "Block", + "src": "10286:80:64", + "statements": [ + { + "expression": { + "id": 15731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15727, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10304:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_10000000000000000000000000000000000000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(57 digits omitted)...0000" + }, + "id": 15730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10313:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3634", + "id": 15729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10319:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "10313:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000000000000000000000000000000000000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(57 digits omitted)...0000" + } + }, + "src": "10304:17:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15732, + "nodeType": "ExpressionStatement", + "src": "10304:17:64" + }, + { + "expression": { + "id": 15735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15733, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10339:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3634", + "id": 15734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10349:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "10339:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15736, + "nodeType": "ExpressionStatement", + "src": "10339:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15739, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10383:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_100000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(25 digits omitted)...0000" + }, + "id": 15742, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10392:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3332", + "id": 15741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10398:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10392:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(25 digits omitted)...0000" + } + }, + "src": "10383:17:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15755, + "nodeType": "IfStatement", + "src": "10379:103:64", + "trueBody": { + "id": 15754, + "nodeType": "Block", + "src": "10402:80:64", + "statements": [ + { + "expression": { + "id": 15748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15744, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10420:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_100000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(25 digits omitted)...0000" + }, + "id": 15747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15745, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10429:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3332", + "id": 15746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10435:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10429:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000000000000_by_1", + "typeString": "int_const 1000...(25 digits omitted)...0000" + } + }, + "src": "10420:17:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15749, + "nodeType": "ExpressionStatement", + "src": "10420:17:64" + }, + { + "expression": { + "id": 15752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15750, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10455:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3332", + "id": 15751, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10465:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "10455:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15753, + "nodeType": "ExpressionStatement", + "src": "10455:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15756, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10499:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_10000000000000000_by_1", + "typeString": "int_const 10000000000000000" + }, + "id": 15759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10508:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3136", + "id": 15758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10514:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "10508:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000000000000000_by_1", + "typeString": "int_const 10000000000000000" + } + }, + "src": "10499:17:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15772, + "nodeType": "IfStatement", + "src": "10495:103:64", + "trueBody": { + "id": 15771, + "nodeType": "Block", + "src": "10518:80:64", + "statements": [ + { + "expression": { + "id": 15765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15761, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10536:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_10000000000000000_by_1", + "typeString": "int_const 10000000000000000" + }, + "id": 15764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15762, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10545:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3136", + "id": 15763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10551:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "10545:8:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000000000000000_by_1", + "typeString": "int_const 10000000000000000" + } + }, + "src": "10536:17:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15766, + "nodeType": "ExpressionStatement", + "src": "10536:17:64" + }, + { + "expression": { + "id": 15769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15767, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10571:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3136", + "id": 15768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10581:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "10571:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15770, + "nodeType": "ExpressionStatement", + "src": "10571:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15773, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10615:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_100000000_by_1", + "typeString": "int_const 100000000" + }, + "id": 15776, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10624:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "38", + "id": 15775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10630:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "10624:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000_by_1", + "typeString": "int_const 100000000" + } + }, + "src": "10615:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15789, + "nodeType": "IfStatement", + "src": "10611:100:64", + "trueBody": { + "id": 15788, + "nodeType": "Block", + "src": "10633:78:64", + "statements": [ + { + "expression": { + "id": 15782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15778, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10651:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_100000000_by_1", + "typeString": "int_const 100000000" + }, + "id": 15781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15779, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10660:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "38", + "id": 15780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10666:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "10660:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000_by_1", + "typeString": "int_const 100000000" + } + }, + "src": "10651:16:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15783, + "nodeType": "ExpressionStatement", + "src": "10651:16:64" + }, + { + "expression": { + "id": 15786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15784, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10685:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "38", + "id": 15785, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10695:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "10685:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15787, + "nodeType": "ExpressionStatement", + "src": "10685:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15790, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10728:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_10000_by_1", + "typeString": "int_const 10000" + }, + "id": 15793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15791, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10737:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "34", + "id": 15792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10743:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "10737:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000_by_1", + "typeString": "int_const 10000" + } + }, + "src": "10728:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15806, + "nodeType": "IfStatement", + "src": "10724:100:64", + "trueBody": { + "id": 15805, + "nodeType": "Block", + "src": "10746:78:64", + "statements": [ + { + "expression": { + "id": 15799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15795, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10764:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_10000_by_1", + "typeString": "int_const 10000" + }, + "id": 15798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10773:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "34", + "id": 15797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10779:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "10773:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000_by_1", + "typeString": "int_const 10000" + } + }, + "src": "10764:16:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15800, + "nodeType": "ExpressionStatement", + "src": "10764:16:64" + }, + { + "expression": { + "id": 15803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15801, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10798:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "34", + "id": 15802, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10808:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "10798:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15804, + "nodeType": "ExpressionStatement", + "src": "10798:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15807, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10841:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "id": 15810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10850:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "32", + "id": 15809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10856:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "10850:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + } + }, + "src": "10841:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15823, + "nodeType": "IfStatement", + "src": "10837:100:64", + "trueBody": { + "id": 15822, + "nodeType": "Block", + "src": "10859:78:64", + "statements": [ + { + "expression": { + "id": 15816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15812, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10877:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "/=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "id": 15815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15813, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10886:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "32", + "id": 15814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10892:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "10886:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + } + }, + "src": "10877:16:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15817, + "nodeType": "ExpressionStatement", + "src": "10877:16:64" + }, + { + "expression": { + "id": 15820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15818, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10911:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 15819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10921:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "10911:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15821, + "nodeType": "ExpressionStatement", + "src": "10911:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15828, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15824, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "10954:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "id": 15827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10963:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "31", + "id": 15826, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10969:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "10963:7:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + } + }, + "src": "10954:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15834, + "nodeType": "IfStatement", + "src": "10950:66:64", + "trueBody": { + "id": 15833, + "nodeType": "Block", + "src": "10972:44:64", + "statements": [ + { + "expression": { + "id": 15831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15829, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "10990:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 15830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11000:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "10990:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15832, + "nodeType": "ExpressionStatement", + "src": "10990:11:64" + } + ] + } + } + ] + }, + { + "expression": { + "id": 15836, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15719, + "src": "11042:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15717, + "id": 15837, + "nodeType": "Return", + "src": "11035:13:64" + } + ] + }, + "documentation": { + "id": 15711, + "nodeType": "StructuredDocumentation", + "src": "10020:114:64", + "text": " @dev Return the log in base 10, rounded down, of a positive value.\n Returns 0 if given 0." + }, + "id": 15839, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log10", + "nameLocation": "10148:5:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15713, + "mutability": "mutable", + "name": "value", + "nameLocation": "10162:5:64", + "nodeType": "VariableDeclaration", + "scope": 15839, + "src": "10154:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15712, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10154:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10153:15:64" + }, + "returnParameters": { + "id": 15717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15716, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15839, + "src": "10192:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15715, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10192:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10191:9:64" + }, + "scope": 16002, + "src": "10139:916:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15874, + "nodeType": "Block", + "src": "11290:167:64", + "statements": [ + { + "id": 15873, + "nodeType": "UncheckedBlock", + "src": "11300:151:64", + "statements": [ + { + "assignments": [ + 15851 + ], + "declarations": [ + { + "constant": false, + "id": 15851, + "mutability": "mutable", + "name": "result", + "nameLocation": "11332:6:64", + "nodeType": "VariableDeclaration", + "scope": 15873, + "src": "11324:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15850, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11324:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15855, + "initialValue": { + "arguments": [ + { + "id": 15853, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15842, + "src": "11347:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15852, + "name": "log10", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15839, + 15875 + ], + "referencedDeclaration": 15839, + "src": "11341:5:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 15854, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11341:12:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11324:29:64" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15856, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15851, + "src": "11374:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 15866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "id": 15860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15857, + "name": "rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15845, + "src": "11384:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 15858, + "name": "Rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15143, + "src": "11396:8:64", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_Rounding_$15143_$", + "typeString": "type(enum Math.Rounding)" + } + }, + "id": 15859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11405:2:64", + "memberName": "Up", + "nodeType": "MemberAccess", + "referencedDeclaration": 15141, + "src": "11396:11:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "src": "11384:23:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 15861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11411:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "id": 15862, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15851, + "src": "11417:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11411:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 15864, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15842, + "src": "11426:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11411:20:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "11384:47:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "30", + "id": 15868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11438:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "id": 15869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "11384:55:64", + "trueExpression": { + "hexValue": "31", + "id": 15867, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11434:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 15870, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "11383:57:64", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "11374:66:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15849, + "id": 15872, + "nodeType": "Return", + "src": "11367:73:64" + } + ] + } + ] + }, + "documentation": { + "id": 15840, + "nodeType": "StructuredDocumentation", + "src": "11061:143:64", + "text": " @dev Return the log in base 10, following the selected rounding direction, of a positive value.\n Returns 0 if given 0." + }, + "id": 15875, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log10", + "nameLocation": "11218:5:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15842, + "mutability": "mutable", + "name": "value", + "nameLocation": "11232:5:64", + "nodeType": "VariableDeclaration", + "scope": 15875, + "src": "11224:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15841, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11224:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15845, + "mutability": "mutable", + "name": "rounding", + "nameLocation": "11248:8:64", + "nodeType": "VariableDeclaration", + "scope": 15875, + "src": "11239:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "typeName": { + "id": 15844, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 15843, + "name": "Rounding", + "nameLocations": [ + "11239:8:64" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15143, + "src": "11239:8:64" + }, + "referencedDeclaration": 15143, + "src": "11239:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "visibility": "internal" + } + ], + "src": "11223:34:64" + }, + "returnParameters": { + "id": 15849, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15848, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15875, + "src": "11281:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11281:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11280:9:64" + }, + "scope": 16002, + "src": "11209:248:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 15961, + "nodeType": "Block", + "src": "11771:600:64", + "statements": [ + { + "assignments": [ + 15884 + ], + "declarations": [ + { + "constant": false, + "id": 15884, + "mutability": "mutable", + "name": "result", + "nameLocation": "11789:6:64", + "nodeType": "VariableDeclaration", + "scope": 15961, + "src": "11781:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15883, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11781:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15886, + "initialValue": { + "hexValue": "30", + "id": 15885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11798:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "11781:18:64" + }, + { + "id": 15958, + "nodeType": "UncheckedBlock", + "src": "11809:533:64", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15887, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "11837:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "313238", + "id": 15888, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11846:3:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "11837:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11852:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11837:16:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15901, + "nodeType": "IfStatement", + "src": "11833:98:64", + "trueBody": { + "id": 15900, + "nodeType": "Block", + "src": "11855:76:64", + "statements": [ + { + "expression": { + "id": 15894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15892, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "11873:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "313238", + "id": 15893, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11883:3:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "11873:13:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15895, + "nodeType": "ExpressionStatement", + "src": "11873:13:64" + }, + { + "expression": { + "id": 15898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15896, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "11904:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "3136", + "id": 15897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11914:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "11904:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15899, + "nodeType": "ExpressionStatement", + "src": "11904:12:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15906, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15902, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "11948:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3634", + "id": 15903, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11957:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "11948:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11962:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11948:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15916, + "nodeType": "IfStatement", + "src": "11944:95:64", + "trueBody": { + "id": 15915, + "nodeType": "Block", + "src": "11965:74:64", + "statements": [ + { + "expression": { + "id": 15909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15907, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "11983:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3634", + "id": 15908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11993:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_64_by_1", + "typeString": "int_const 64" + }, + "value": "64" + }, + "src": "11983:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15910, + "nodeType": "ExpressionStatement", + "src": "11983:12:64" + }, + { + "expression": { + "id": 15913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15911, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "12013:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "38", + "id": 15912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12023:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "12013:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15914, + "nodeType": "ExpressionStatement", + "src": "12013:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15917, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "12056:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3332", + "id": 15918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12065:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "12056:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12070:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12056:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15931, + "nodeType": "IfStatement", + "src": "12052:95:64", + "trueBody": { + "id": 15930, + "nodeType": "Block", + "src": "12073:74:64", + "statements": [ + { + "expression": { + "id": 15924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15922, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "12091:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3332", + "id": 15923, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12101:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "12091:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15925, + "nodeType": "ExpressionStatement", + "src": "12091:12:64" + }, + { + "expression": { + "id": 15928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15926, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "12121:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "34", + "id": 15927, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12131:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "12121:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15929, + "nodeType": "ExpressionStatement", + "src": "12121:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15932, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "12164:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "3136", + "id": 15933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12173:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "12164:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12178:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12164:15:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15946, + "nodeType": "IfStatement", + "src": "12160:95:64", + "trueBody": { + "id": 15945, + "nodeType": "Block", + "src": "12181:74:64", + "statements": [ + { + "expression": { + "id": 15939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15937, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "12199:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": ">>=", + "rightHandSide": { + "hexValue": "3136", + "id": 15938, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12209:2:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "12199:12:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15940, + "nodeType": "ExpressionStatement", + "src": "12199:12:64" + }, + { + "expression": { + "id": 15943, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15941, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "12229:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "32", + "id": 15942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12239:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "12229:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15944, + "nodeType": "ExpressionStatement", + "src": "12229:11:64" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15947, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "12272:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "38", + "id": 15948, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12281:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "12272:10:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 15950, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12285:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12272:14:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 15957, + "nodeType": "IfStatement", + "src": "12268:64:64", + "trueBody": { + "id": 15956, + "nodeType": "Block", + "src": "12288:44:64", + "statements": [ + { + "expression": { + "id": 15954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 15952, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "12306:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 15953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12316:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "12306:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 15955, + "nodeType": "ExpressionStatement", + "src": "12306:11:64" + } + ] + } + } + ] + }, + { + "expression": { + "id": 15959, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15884, + "src": "12358:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15882, + "id": 15960, + "nodeType": "Return", + "src": "12351:13:64" + } + ] + }, + "documentation": { + "id": 15876, + "nodeType": "StructuredDocumentation", + "src": "11463:240:64", + "text": " @dev Return the log in base 256, rounded down, of a positive value.\n Returns 0 if given 0.\n Adding one to the result gives the number of pairs of hex symbols needed to represent `value` as a hex string." + }, + "id": 15962, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log256", + "nameLocation": "11717:6:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15878, + "mutability": "mutable", + "name": "value", + "nameLocation": "11732:5:64", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "11724:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15877, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11724:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11723:15:64" + }, + "returnParameters": { + "id": 15882, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15881, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "11762:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15880, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11762:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11761:9:64" + }, + "scope": 16002, + "src": "11708:663:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 16000, + "nodeType": "Block", + "src": "12608:174:64", + "statements": [ + { + "id": 15999, + "nodeType": "UncheckedBlock", + "src": "12618:158:64", + "statements": [ + { + "assignments": [ + 15974 + ], + "declarations": [ + { + "constant": false, + "id": 15974, + "mutability": "mutable", + "name": "result", + "nameLocation": "12650:6:64", + "nodeType": "VariableDeclaration", + "scope": 15999, + "src": "12642:14:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12642:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 15978, + "initialValue": { + "arguments": [ + { + "id": 15976, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15965, + "src": "12666:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 15975, + "name": "log256", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 15962, + 16001 + ], + "referencedDeclaration": 15962, + "src": "12659:6:64", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 15977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12659:13:64", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12642:30:64" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15979, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15974, + "src": "12693:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 15992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "id": 15983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15980, + "name": "rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15968, + "src": "12703:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 15981, + "name": "Rounding", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15143, + "src": "12715:8:64", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_Rounding_$15143_$", + "typeString": "type(enum Math.Rounding)" + } + }, + "id": 15982, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12724:2:64", + "memberName": "Up", + "nodeType": "MemberAccess", + "referencedDeclaration": 15141, + "src": "12715:11:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "src": "12703:23:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 15984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12730:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 15987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15985, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15974, + "src": "12736:6:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "33", + "id": 15986, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12746:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "12736:11:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 15988, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12735:13:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12730:18:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 15990, + "name": "value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15965, + "src": "12751:5:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12730:26:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "12703:53:64", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "30", + "id": 15994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "id": 15995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "12703:61:64", + "trueExpression": { + "hexValue": "31", + "id": 15993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12759:1:64", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 15996, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "12702:63:64", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "12693:72:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 15972, + "id": 15998, + "nodeType": "Return", + "src": "12686:79:64" + } + ] + } + ] + }, + "documentation": { + "id": 15963, + "nodeType": "StructuredDocumentation", + "src": "12377:144:64", + "text": " @dev Return the log in base 256, following the selected rounding direction, of a positive value.\n Returns 0 if given 0." + }, + "id": 16001, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log256", + "nameLocation": "12535:6:64", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15969, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15965, + "mutability": "mutable", + "name": "value", + "nameLocation": "12550:5:64", + "nodeType": "VariableDeclaration", + "scope": 16001, + "src": "12542:13:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15964, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12542:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15968, + "mutability": "mutable", + "name": "rounding", + "nameLocation": "12566:8:64", + "nodeType": "VariableDeclaration", + "scope": 16001, + "src": "12557:17:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + }, + "typeName": { + "id": 15967, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 15966, + "name": "Rounding", + "nameLocations": [ + "12557:8:64" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15143, + "src": "12557:8:64" + }, + "referencedDeclaration": 15143, + "src": "12557:8:64", + "typeDescriptions": { + "typeIdentifier": "t_enum$_Rounding_$15143", + "typeString": "enum Math.Rounding" + } + }, + "visibility": "internal" + } + ], + "src": "12541:34:64" + }, + "returnParameters": { + "id": 15972, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15971, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16001, + "src": "12599:7:64", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15970, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12599:7:64", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12598:9:64" + }, + "scope": 16002, + "src": "12526:256:64", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 16003, + "src": "202:12582:64", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "103:12682:64" + }, + "id": 64 + }, + "@openzeppelin/contracts/utils/math/SignedMath.sol": { + "ast": { + "absolutePath": "@openzeppelin/contracts/utils/math/SignedMath.sol", + "exportedSymbols": { + "SignedMath": [ + 16107 + ] + }, + "id": 16108, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16004, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "109:23:65" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "SignedMath", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 16005, + "nodeType": "StructuredDocumentation", + "src": "134:80:65", + "text": " @dev Standard signed math utilities missing in the Solidity language." + }, + "fullyImplemented": true, + "id": 16107, + "linearizedBaseContracts": [ + 16107 + ], + "name": "SignedMath", + "nameLocation": "223:10:65", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 16022, + "nodeType": "Block", + "src": "375:37:65", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16015, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16008, + "src": "392:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 16016, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16010, + "src": "396:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "392:5:65", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 16019, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16010, + "src": "404:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 16020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "392:13:65", + "trueExpression": { + "id": 16018, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16008, + "src": "400:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 16014, + "id": 16021, + "nodeType": "Return", + "src": "385:20:65" + } + ] + }, + "documentation": { + "id": 16006, + "nodeType": "StructuredDocumentation", + "src": "240:66:65", + "text": " @dev Returns the largest of two signed numbers." + }, + "id": 16023, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "max", + "nameLocation": "320:3:65", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16011, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16008, + "mutability": "mutable", + "name": "a", + "nameLocation": "331:1:65", + "nodeType": "VariableDeclaration", + "scope": 16023, + "src": "324:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16007, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "324:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16010, + "mutability": "mutable", + "name": "b", + "nameLocation": "341:1:65", + "nodeType": "VariableDeclaration", + "scope": 16023, + "src": "334:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16009, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "334:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "323:20:65" + }, + "returnParameters": { + "id": 16014, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16013, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16023, + "src": "367:6:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16012, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "367:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "366:8:65" + }, + "scope": 16107, + "src": "311:101:65", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 16040, + "nodeType": "Block", + "src": "554:37:65", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16033, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16026, + "src": "571:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 16034, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16028, + "src": "575:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "571:5:65", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 16037, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16028, + "src": "583:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 16038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "571:13:65", + "trueExpression": { + "id": 16036, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16026, + "src": "579:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 16032, + "id": 16039, + "nodeType": "Return", + "src": "564:20:65" + } + ] + }, + "documentation": { + "id": 16024, + "nodeType": "StructuredDocumentation", + "src": "418:67:65", + "text": " @dev Returns the smallest of two signed numbers." + }, + "id": 16041, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "min", + "nameLocation": "499:3:65", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16029, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16026, + "mutability": "mutable", + "name": "a", + "nameLocation": "510:1:65", + "nodeType": "VariableDeclaration", + "scope": 16041, + "src": "503:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16025, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "503:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16028, + "mutability": "mutable", + "name": "b", + "nameLocation": "520:1:65", + "nodeType": "VariableDeclaration", + "scope": 16041, + "src": "513:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16027, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "513:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "502:20:65" + }, + "returnParameters": { + "id": 16032, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16031, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16041, + "src": "546:6:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16030, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "546:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "545:8:65" + }, + "scope": 16107, + "src": "490:101:65", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 16084, + "nodeType": "Block", + "src": "796:162:65", + "statements": [ + { + "assignments": [ + 16052 + ], + "declarations": [ + { + "constant": false, + "id": 16052, + "mutability": "mutable", + "name": "x", + "nameLocation": "865:1:65", + "nodeType": "VariableDeclaration", + "scope": 16084, + "src": "858:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16051, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "858:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 16065, + "initialValue": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16053, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16044, + "src": "870:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 16054, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16046, + "src": "874:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "870:5:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 16056, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "869:7:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16057, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16044, + "src": "881:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "id": 16058, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16046, + "src": "885:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "881:5:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 16060, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "880:7:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "31", + "id": 16061, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "891:1:65", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "880:12:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 16063, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "879:14:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "869:24:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "858:35:65" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16082, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16066, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16052, + "src": "910:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 16071, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16052, + "src": "930:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 16070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "922:7:65", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 16069, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "922:7:65", + "typeDescriptions": {} + } + }, + "id": 16072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "922:10:65", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "323535", + "id": 16073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "936:3:65", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "255" + }, + "src": "922:17:65", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 16068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "915:6:65", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 16067, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "915:6:65", + "typeDescriptions": {} + } + }, + "id": 16075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "915:25:65", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16076, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16044, + "src": "944:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "^", + "rightExpression": { + "id": 16077, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16046, + "src": "948:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "944:5:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 16079, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "943:7:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "915:35:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 16081, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "914:37:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "910:41:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 16050, + "id": 16083, + "nodeType": "Return", + "src": "903:48:65" + } + ] + }, + "documentation": { + "id": 16042, + "nodeType": "StructuredDocumentation", + "src": "597:126:65", + "text": " @dev Returns the average of two signed numbers without overflow.\n The result is rounded towards zero." + }, + "id": 16085, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "average", + "nameLocation": "737:7:65", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16044, + "mutability": "mutable", + "name": "a", + "nameLocation": "752:1:65", + "nodeType": "VariableDeclaration", + "scope": 16085, + "src": "745:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16043, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "745:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16046, + "mutability": "mutable", + "name": "b", + "nameLocation": "762:1:65", + "nodeType": "VariableDeclaration", + "scope": 16085, + "src": "755:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16045, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "755:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "744:20:65" + }, + "returnParameters": { + "id": 16050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16049, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16085, + "src": "788:6:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16048, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "788:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "787:8:65" + }, + "scope": 16107, + "src": "728:230:65", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 16105, + "nodeType": "Block", + "src": "1102:158:65", + "statements": [ + { + "id": 16104, + "nodeType": "UncheckedBlock", + "src": "1112:142:65", + "statements": [ + { + "expression": { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 16097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16095, + "name": "n", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16088, + "src": "1227:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 16096, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1232:1:65", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1227:6:65", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 16100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "1240:2:65", + "subExpression": { + "id": 16099, + "name": "n", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16088, + "src": "1241:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 16101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "1227:15:65", + "trueExpression": { + "id": 16098, + "name": "n", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16088, + "src": "1236:1:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 16094, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1219:7:65", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 16093, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1219:7:65", + "typeDescriptions": {} + } + }, + "id": 16102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1219:24:65", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 16092, + "id": 16103, + "nodeType": "Return", + "src": "1212:31:65" + } + ] + } + ] + }, + "documentation": { + "id": 16086, + "nodeType": "StructuredDocumentation", + "src": "964:78:65", + "text": " @dev Returns the absolute unsigned value of a signed value." + }, + "id": 16106, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "abs", + "nameLocation": "1056:3:65", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16089, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16088, + "mutability": "mutable", + "name": "n", + "nameLocation": "1067:1:65", + "nodeType": "VariableDeclaration", + "scope": 16106, + "src": "1060:8:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 16087, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1060:6:65", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1059:10:65" + }, + "returnParameters": { + "id": 16092, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16091, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16106, + "src": "1093:7:65", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16090, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1093:7:65", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1092:9:65" + }, + "scope": 16107, + "src": "1047:213:65", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 16108, + "src": "215:1047:65", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "109:1154:65" + }, + "id": 65 + }, + "contracts/IAddrSetter.sol": { + "ast": { + "absolutePath": "contracts/IAddrSetter.sol", + "exportedSymbols": { + "IAddrSetter": [ + 16119 + ] + }, + "id": 16120, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16109, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "32:23:66" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IAddrSetter", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 16119, + "linearizedBaseContracts": [ + 16119 + ], + "name": "IAddrSetter", + "nameLocation": "67:11:66", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "f00eebf4", + "id": 16118, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setAddr", + "nameLocation": "94:7:66", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16111, + "mutability": "mutable", + "name": "name", + "nameLocation": "126:4:66", + "nodeType": "VariableDeclaration", + "scope": 16118, + "src": "111:19:66", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16110, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "111:5:66", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16113, + "mutability": "mutable", + "name": "_addr", + "nameLocation": "148:5:66", + "nodeType": "VariableDeclaration", + "scope": 16118, + "src": "140:13:66", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16112, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "140:7:66", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "101:58:66" + }, + "returnParameters": { + "id": 16117, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16116, + "mutability": "mutable", + "name": "result", + "nameLocation": "196:6:66", + "nodeType": "VariableDeclaration", + "scope": 16118, + "src": "183:19:66", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16115, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "183:5:66", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "182:21:66" + }, + "scope": 16119, + "src": "85:119:66", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 16120, + "src": "57:149:66", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:175:66" + }, + "id": 66 + }, + "contracts/ITargetResolver.sol": { + "ast": { + "absolutePath": "contracts/ITargetResolver.sol", + "exportedSymbols": { + "ITargetResolver": [ + 16131 + ] + }, + "id": 16132, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16121, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "32:23:67" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "ITargetResolver", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 16131, + "linearizedBaseContracts": [ + 16131 + ], + "name": "ITargetResolver", + "nameLocation": "67:15:67", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "15f64386", + "id": 16130, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTarget", + "nameLocation": "98:9:67", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16124, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16123, + "mutability": "mutable", + "name": "name", + "nameLocation": "130:4:67", + "nodeType": "VariableDeclaration", + "scope": 16130, + "src": "117:17:67", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16122, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "117:5:67", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "107:33:67" + }, + "returnParameters": { + "id": 16129, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16126, + "mutability": "mutable", + "name": "node", + "nameLocation": "172:4:67", + "nodeType": "VariableDeclaration", + "scope": 16130, + "src": "164:12:67", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16125, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "164:7:67", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16128, + "mutability": "mutable", + "name": "target", + "nameLocation": "186:6:67", + "nodeType": "VariableDeclaration", + "scope": 16130, + "src": "178:14:67", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16127, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "178:7:67", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "163:30:67" + }, + "scope": 16131, + "src": "89:105:67", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 16132, + "src": "57:139:67", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:165:67" + }, + "id": 67 + }, + "contracts/LabelUtils.sol": { + "ast": { + "absolutePath": "contracts/LabelUtils.sol", + "exportedSymbols": { + "LabelUtils": [ + 16265 + ] + }, + "id": 16266, + "license": "Apache-2.0", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16133, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "39:23:68" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "LabelUtils", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 16134, + "nodeType": "StructuredDocumentation", + "src": "64:94:68", + "text": " @title Library to perform ENS label manipulation\n @author ConsenSys Software Inc." + }, + "fullyImplemented": true, + "id": 16265, + "linearizedBaseContracts": [ + 16265 + ], + "name": "LabelUtils", + "nameLocation": "167:10:68", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 16189, + "nodeType": "Block", + "src": "439:268:68", + "statements": [ + { + "assignments": [ + 16143 + ], + "declarations": [ + { + "constant": false, + "id": 16143, + "mutability": "mutable", + "name": "idx", + "nameLocation": "457:3:68", + "nodeType": "VariableDeclaration", + "scope": 16189, + "src": "449:11:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16142, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "449:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16145, + "initialValue": { + "hexValue": "30", + "id": 16144, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "463:1:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "449:15:68" + }, + { + "assignments": [ + 16147 + ], + "declarations": [ + { + "constant": false, + "id": 16147, + "mutability": "mutable", + "name": "labelLength", + "nameLocation": "480:11:68", + "nodeType": "VariableDeclaration", + "scope": 16189, + "src": "474:17:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 16146, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "474:5:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 16154, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 16150, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16137, + "src": "500:4:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16152, + "indexExpression": { + "id": 16151, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16143, + "src": "505:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "500:9:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 16149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "494:5:68", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 16148, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "494:5:68", + "typeDescriptions": {} + } + }, + "id": 16153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "494:16:68", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "474:36:68" + }, + { + "expression": { + "id": 16156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "520:5:68", + "subExpression": { + "id": 16155, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16143, + "src": "520:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16157, + "nodeType": "ExpressionStatement", + "src": "520:5:68" + }, + { + "assignments": [ + 16159 + ], + "declarations": [ + { + "constant": false, + "id": 16159, + "mutability": "mutable", + "name": "label", + "nameLocation": "548:5:68", + "nodeType": "VariableDeclaration", + "scope": 16189, + "src": "535:18:68", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16158, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "535:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 16164, + "initialValue": { + "arguments": [ + { + "id": 16162, + "name": "labelLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16147, + "src": "566:11:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 16161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "556:9:68", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 16160, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "560:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 16163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "556:22:68", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "535:43:68" + }, + { + "body": { + "id": 16185, + "nodeType": "Block", + "src": "630:49:68", + "statements": [ + { + "expression": { + "id": 16183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 16175, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16159, + "src": "644:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16177, + "indexExpression": { + "id": 16176, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16166, + "src": "650:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "644:8:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 16178, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16137, + "src": "655:4:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16182, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16179, + "name": "idx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16143, + "src": "660:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 16180, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16166, + "src": "666:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "660:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "655:13:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "644:24:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 16184, + "nodeType": "ExpressionStatement", + "src": "644:24:68" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16169, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16166, + "src": "608:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 16170, + "name": "labelLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16147, + "src": "612:11:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "608:15:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16186, + "initializationExpression": { + "assignments": [ + 16166 + ], + "declarations": [ + { + "constant": false, + "id": 16166, + "mutability": "mutable", + "name": "i", + "nameLocation": "601:1:68", + "nodeType": "VariableDeclaration", + "scope": 16186, + "src": "593:9:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16165, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "593:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16168, + "initialValue": { + "hexValue": "30", + "id": 16167, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "605:1:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "593:13:68" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 16173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "625:3:68", + "subExpression": { + "id": 16172, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16166, + "src": "625:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16174, + "nodeType": "ExpressionStatement", + "src": "625:3:68" + }, + "nodeType": "ForStatement", + "src": "588:91:68" + }, + { + "expression": { + "id": 16187, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16159, + "src": "695:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 16141, + "id": 16188, + "nodeType": "Return", + "src": "688:12:68" + } + ] + }, + "documentation": { + "id": 16135, + "nodeType": "StructuredDocumentation", + "src": "184:153:68", + "text": " Extract the first label name from a dns encoded ens domain\n @param name the dns encoded ENS domain\n @return label as bytes" + }, + "functionSelector": "94bc2db6", + "id": 16190, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "extractFirstLabel", + "nameLocation": "351:17:68", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16138, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16137, + "mutability": "mutable", + "name": "name", + "nameLocation": "391:4:68", + "nodeType": "VariableDeclaration", + "scope": 16190, + "src": "378:17:68", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16136, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "378:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "368:33:68" + }, + "returnParameters": { + "id": 16141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16140, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16190, + "src": "425:12:68", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16139, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "425:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "424:14:68" + }, + "scope": 16265, + "src": "342:365:68", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 16263, + "nodeType": "Block", + "src": "969:571:68", + "statements": [ + { + "assignments": [ + 16199 + ], + "declarations": [ + { + "constant": false, + "id": 16199, + "mutability": "mutable", + "name": "num", + "nameLocation": "987:3:68", + "nodeType": "VariableDeclaration", + "scope": 16263, + "src": "979:11:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16198, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "979:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16201, + "initialValue": { + "hexValue": "30", + "id": 16200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "993:1:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "979:15:68" + }, + { + "assignments": [ + 16203 + ], + "declarations": [ + { + "constant": false, + "id": 16203, + "mutability": "mutable", + "name": "hasNumber", + "nameLocation": "1009:9:68", + "nodeType": "VariableDeclaration", + "scope": 16263, + "src": "1004:14:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16202, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1004:4:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 16205, + "initialValue": { + "hexValue": "66616c7365", + "id": 16204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1021:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1004:22:68" + }, + { + "body": { + "id": 16254, + "nodeType": "Block", + "src": "1080:378:68", + "statements": [ + { + "assignments": [ + 16218 + ], + "declarations": [ + { + "constant": false, + "id": 16218, + "mutability": "mutable", + "name": "char", + "nameLocation": "1100:4:68", + "nodeType": "VariableDeclaration", + "scope": 16254, + "src": "1094:10:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 16217, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1094:5:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 16225, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 16221, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16193, + "src": "1113:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16223, + "indexExpression": { + "id": 16222, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16207, + "src": "1119:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1113:8:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 16220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1107:5:68", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 16219, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1107:5:68", + "typeDescriptions": {} + } + }, + "id": 16224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1107:15:68", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1094:28:68" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 16232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 16228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16226, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16218, + "src": "1140:4:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3438", + "id": 16227, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1148:2:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "48" + }, + "src": "1140:10:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 16231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16229, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16218, + "src": "1154:4:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "3537", + "id": 16230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1162:2:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_57_by_1", + "typeString": "int_const 57" + }, + "value": "57" + }, + "src": "1154:10:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1140:24:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "id": 16249, + "name": "hasNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16203, + "src": "1324:9:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16252, + "nodeType": "IfStatement", + "src": "1320:128:68", + "trueBody": { + "id": 16251, + "nodeType": "Block", + "src": "1335:113:68", + "statements": [ + { + "id": 16250, + "nodeType": "Break", + "src": "1428:5:68" + } + ] + } + }, + "id": 16253, + "nodeType": "IfStatement", + "src": "1136:312:68", + "trueBody": { + "id": 16248, + "nodeType": "Block", + "src": "1166:148:68", + "statements": [ + { + "expression": { + "id": 16242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16233, + "name": "num", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16199, + "src": "1237:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16234, + "name": "num", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16199, + "src": "1243:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3130", + "id": 16235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1249:2:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "src": "1243:8:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 16239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16237, + "name": "char", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16218, + "src": "1255:4:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "3438", + "id": 16238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1262:2:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "48" + }, + "src": "1255:9:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 16240, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1254:11:68", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "1243:22:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1237:28:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16243, + "nodeType": "ExpressionStatement", + "src": "1237:28:68" + }, + { + "expression": { + "id": 16246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16244, + "name": "hasNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16203, + "src": "1283:9:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 16245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1295:4:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1283:16:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16247, + "nodeType": "ExpressionStatement", + "src": "1283:16:68" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16210, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16207, + "src": "1057:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 16211, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16193, + "src": "1061:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1067:6:68", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1061:12:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1057:16:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16255, + "initializationExpression": { + "assignments": [ + 16207 + ], + "declarations": [ + { + "constant": false, + "id": 16207, + "mutability": "mutable", + "name": "i", + "nameLocation": "1050:1:68", + "nodeType": "VariableDeclaration", + "scope": 16255, + "src": "1042:9:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1042:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16209, + "initialValue": { + "hexValue": "30", + "id": 16208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1054:1:68", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1042:13:68" + }, + "isSimpleCounterLoop": true, + "loopExpression": { + "expression": { + "id": 16215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1075:3:68", + "subExpression": { + "id": 16214, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16207, + "src": "1075:1:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16216, + "nodeType": "ExpressionStatement", + "src": "1075:3:68" + }, + "nodeType": "ForStatement", + "src": "1037:421:68" + }, + { + "expression": { + "arguments": [ + { + "id": 16257, + "name": "hasNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16203, + "src": "1476:9:68", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4e6f206e756d657269632073756666697820666f756e64", + "id": 16258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1487:25:68", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46", + "typeString": "literal_string \"No numeric suffix found\"" + }, + "value": "No numeric suffix found" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46", + "typeString": "literal_string \"No numeric suffix found\"" + } + ], + "id": 16256, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1468:7:68", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1468:45:68", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16260, + "nodeType": "ExpressionStatement", + "src": "1468:45:68" + }, + { + "expression": { + "id": 16261, + "name": "num", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16199, + "src": "1530:3:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 16197, + "id": 16262, + "nodeType": "Return", + "src": "1523:10:68" + } + ] + }, + "documentation": { + "id": 16191, + "nodeType": "StructuredDocumentation", + "src": "713:155:68", + "text": " Extract the numeric suffix from the dns encoded label\n @param label the dns encoded label\n @return number the numeric suffix" + }, + "functionSelector": "08dea91d", + "id": 16264, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "extractNumericSuffix", + "nameLocation": "882:20:68", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16194, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16193, + "mutability": "mutable", + "name": "label", + "nameLocation": "925:5:68", + "nodeType": "VariableDeclaration", + "scope": 16264, + "src": "912:18:68", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16192, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "912:5:68", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "902:34:68" + }, + "returnParameters": { + "id": 16197, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16196, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16264, + "src": "960:7:68", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16195, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "960:7:68", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "959:9:68" + }, + "scope": 16265, + "src": "873:667:68", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + } + ], + "scope": 16266, + "src": "159:1383:68", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "39:1504:68" + }, + "id": 68 + }, + "contracts/NFTMock.sol": { + "ast": { + "absolutePath": "contracts/NFTMock.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "Context": [ + 14871 + ], + "ERC165": [ + 15124 + ], + "ERC721": [ + 14350 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IERC721Metadata": [ + 14511 + ], + "IERC721Receiver": [ + 14484 + ], + "Math": [ + 16002 + ], + "NFTMock": [ + 16298 + ], + "SignedMath": [ + 16107 + ], + "Strings": [ + 15100 + ] + }, + "id": 16299, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16267, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "0:23:69" + }, + { + "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", + "file": "@openzeppelin/contracts/token/ERC721/ERC721.sol", + "id": 16268, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16299, + "sourceUnit": 14351, + "src": "25:57:69", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 16269, + "name": "ERC721", + "nameLocations": [ + "104:6:69" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "104:6:69" + }, + "id": 16270, + "nodeType": "InheritanceSpecifier", + "src": "104:6:69" + } + ], + "canonicalName": "NFTMock", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 16298, + "linearizedBaseContracts": [ + 16298, + 14350, + 14511, + 14466, + 15124, + 15136, + 14871 + ], + "name": "NFTMock", + "nameLocation": "93:7:69", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "009a9b7b", + "id": 16272, + "mutability": "mutable", + "name": "currentTokenId", + "nameLocation": "132:14:69", + "nodeType": "VariableDeclaration", + "scope": 16298, + "src": "117:29:69", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16271, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "117:7:69", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 16283, + "nodeType": "Block", + "src": "189:35:69", + "statements": [ + { + "expression": { + "id": 16281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16279, + "name": "currentTokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16272, + "src": "199:14:69", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "31", + "id": 16280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "216:1:69", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "199:18:69", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16282, + "nodeType": "ExpressionStatement", + "src": "199:18:69" + } + ] + }, + "id": 16284, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "hexValue": "54657374", + "id": 16275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "174:6:69", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_85cc825a98ec217d960f113f5f80a95d7fd18e3725d37df428eb14f880bdfc12", + "typeString": "literal_string \"Test\"" + }, + "value": "Test" + }, + { + "hexValue": "545354", + "id": 16276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "182:5:69", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_20a94e575762ae205efd2d939940bb203cefdf1c455cc39ef343e287f43b70f4", + "typeString": "literal_string \"TST\"" + }, + "value": "TST" + } + ], + "id": 16277, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 16274, + "name": "ERC721", + "nameLocations": [ + "167:6:69" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 14350, + "src": "167:6:69" + }, + "nodeType": "ModifierInvocation", + "src": "167:21:69" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16273, + "nodeType": "ParameterList", + "parameters": [], + "src": "164:2:69" + }, + "returnParameters": { + "id": 16278, + "nodeType": "ParameterList", + "parameters": [], + "src": "189:0:69" + }, + "scope": 16298, + "src": "153:71:69", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 16296, + "nodeType": "Block", + "src": "255:80:69", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "id": 16288, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "275:3:69", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 16289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "279:6:69", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "275:10:69", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16290, + "name": "currentTokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16272, + "src": "287:14:69", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 16287, + "name": "_safeMint", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 13918, + 13947 + ], + "referencedDeclaration": 13918, + "src": "265:9:69", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 16291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "265:37:69", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16292, + "nodeType": "ExpressionStatement", + "src": "265:37:69" + }, + { + "expression": { + "id": 16294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "312:16:69", + "subExpression": { + "id": 16293, + "name": "currentTokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16272, + "src": "312:14:69", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16295, + "nodeType": "ExpressionStatement", + "src": "312:16:69" + } + ] + }, + "functionSelector": "1249c58b", + "id": 16297, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mint", + "nameLocation": "239:4:69", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16285, + "nodeType": "ParameterList", + "parameters": [], + "src": "243:2:69" + }, + "returnParameters": { + "id": 16286, + "nodeType": "ParameterList", + "parameters": [], + "src": "255:0:69" + }, + "scope": 16298, + "src": "230:105:69", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 16299, + "src": "84:253:69", + "usedErrors": [], + "usedEvents": [ + 14365, + 14374, + 14383 + ] + } + ], + "src": "0:338:69" + }, + "id": 69 + }, + "contracts/NFTResolver.sol": { + "ast": { + "absolutePath": "contracts/NFTResolver.sol", + "exportedSymbols": { + "BytesUtils": [ + 8609 + ], + "ENS": [ + 4567 + ], + "ERC165": [ + 15124 + ], + "EVMFetchTarget": [ + 122 + ], + "EVMFetcher": [ + 771 + ], + "IAddrResolver": [ + 6499 + ], + "IAddrSetter": [ + 16119 + ], + "IAddressResolver": [ + 6520 + ], + "IERC165": [ + 15136 + ], + "IEVMVerifier": [ + 798 + ], + "IExtendedResolver": [ + 6601 + ], + "INameWrapper": [ + 10064 + ], + "ITargetResolver": [ + 16131 + ], + "LabelUtils": [ + 16265 + ], + "NFTResolver": [ + 16905 + ] + }, + "id": 16906, + "license": "Apache-2.0", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16300, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "39:23:70" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/EVMFetcher.sol", + "file": "@consensys/linea-state-verifier/contracts/EVMFetcher.sol", + "id": 16302, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 772, + "src": "64:84:70", + "symbolAliases": [ + { + "foreign": { + "id": 16301, + "name": "EVMFetcher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 771, + "src": "72:10:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol", + "file": "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol", + "id": 16304, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 123, + "src": "149:92:70", + "symbolAliases": [ + { + "foreign": { + "id": 16303, + "name": "EVMFetchTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "157:14:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "file": "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol", + "id": 16306, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 799, + "src": "242:88:70", + "symbolAliases": [ + { + "foreign": { + "id": 16305, + "name": "IEVMVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 798, + "src": "250:12:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "file": "@ensdomains/ens-contracts/contracts/registry/ENS.sol", + "id": 16307, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 4568, + "src": "331:62:70", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol", + "file": "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol", + "id": 16309, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 10065, + "src": "394:90:70", + "symbolAliases": [ + { + "foreign": { + "id": 16308, + "name": "INameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10064, + "src": "402:12:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol", + "file": "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol", + "id": 16311, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 8610, + "src": "485:84:70", + "symbolAliases": [ + { + "foreign": { + "id": 16310, + "name": "BytesUtils", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8609, + "src": "493:10:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol", + "file": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol", + "id": 16313, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 6500, + "src": "570:103:70", + "symbolAliases": [ + { + "foreign": { + "id": 16312, + "name": "IAddrResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6499, + "src": "578:13:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol", + "file": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol", + "id": 16315, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 6521, + "src": "674:109:70", + "symbolAliases": [ + { + "foreign": { + "id": 16314, + "name": "IAddressResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6520, + "src": "682:16:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol", + "file": "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol", + "id": 16316, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 6602, + "src": "784:86:70", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/ITargetResolver.sol", + "file": "./ITargetResolver.sol", + "id": 16318, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 16132, + "src": "871:54:70", + "symbolAliases": [ + { + "foreign": { + "id": 16317, + "name": "ITargetResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16131, + "src": "879:15:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "contracts/IAddrSetter.sol", + "file": "./IAddrSetter.sol", + "id": 16320, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 16120, + "src": "926:46:70", + "symbolAliases": [ + { + "foreign": { + "id": 16319, + "name": "IAddrSetter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16119, + "src": "934:11:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "file": "@openzeppelin/contracts/utils/introspection/ERC165.sol", + "id": 16321, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 15125, + "src": "973:64:70", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/LabelUtils.sol", + "file": "./LabelUtils.sol", + "id": 16323, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16906, + "sourceUnit": 16266, + "src": "1038:44:70", + "symbolAliases": [ + { + "foreign": { + "id": 16322, + "name": "LabelUtils", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16265, + "src": "1046:10:70", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 16324, + "name": "EVMFetchTarget", + "nameLocations": [ + "1112:14:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 122, + "src": "1112:14:70" + }, + "id": 16325, + "nodeType": "InheritanceSpecifier", + "src": "1112:14:70" + }, + { + "baseName": { + "id": 16326, + "name": "ITargetResolver", + "nameLocations": [ + "1132:15:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 16131, + "src": "1132:15:70" + }, + "id": 16327, + "nodeType": "InheritanceSpecifier", + "src": "1132:15:70" + }, + { + "baseName": { + "id": 16328, + "name": "IExtendedResolver", + "nameLocations": [ + "1153:17:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 6601, + "src": "1153:17:70" + }, + "id": 16329, + "nodeType": "InheritanceSpecifier", + "src": "1153:17:70" + }, + { + "baseName": { + "id": 16330, + "name": "IAddrSetter", + "nameLocations": [ + "1176:11:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 16119, + "src": "1176:11:70" + }, + "id": 16331, + "nodeType": "InheritanceSpecifier", + "src": "1176:11:70" + }, + { + "baseName": { + "id": 16332, + "name": "ERC165", + "nameLocations": [ + "1193:6:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 15124, + "src": "1193:6:70" + }, + "id": 16333, + "nodeType": "InheritanceSpecifier", + "src": "1193:6:70" + } + ], + "canonicalName": "NFTResolver", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 16905, + "linearizedBaseContracts": [ + 16905, + 15124, + 15136, + 16119, + 6601, + 16131, + 122 + ], + "name": "NFTResolver", + "nameLocation": "1093:11:70", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 16337, + "libraryName": { + "id": 16334, + "name": "EVMFetcher", + "nameLocations": [ + "1212:10:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 771, + "src": "1212:10:70" + }, + "nodeType": "UsingForDirective", + "src": "1206:48:70", + "typeName": { + "id": 16336, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16335, + "name": "EVMFetcher.EVMFetchRequest", + "nameLocations": [ + "1227:10:70", + "1238:15:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 205, + "src": "1227:26:70" + }, + "referencedDeclaration": 205, + "src": "1227:26:70", + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_storage_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest" + } + } + }, + { + "global": false, + "id": 16340, + "libraryName": { + "id": 16338, + "name": "BytesUtils", + "nameLocations": [ + "1265:10:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8609, + "src": "1265:10:70" + }, + "nodeType": "UsingForDirective", + "src": "1259:27:70", + "typeName": { + "id": 16339, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1280:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + { + "constant": false, + "functionSelector": "2b7ac3f3", + "id": 16343, + "mutability": "immutable", + "name": "verifier", + "nameLocation": "1321:8:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1291:38:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + "typeName": { + "id": 16342, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16341, + "name": "IEVMVerifier", + "nameLocations": [ + "1291:12:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "1291:12:70" + }, + "referencedDeclaration": 798, + "src": "1291:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "3f15457f", + "id": 16346, + "mutability": "immutable", + "name": "ens", + "nameLocation": "1356:3:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1335:24:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 16345, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16344, + "name": "ENS", + "nameLocations": [ + "1335:3:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "1335:3:70" + }, + "referencedDeclaration": 4567, + "src": "1335:3:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "a8e5fbc0", + "id": 16349, + "mutability": "immutable", + "name": "nameWrapper", + "nameLocation": "1395:11:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1365:41:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + }, + "typeName": { + "id": 16348, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16347, + "name": "INameWrapper", + "nameLocations": [ + "1365:12:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "1365:12:70" + }, + "referencedDeclaration": 10064, + "src": "1365:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "d6ae3cd5", + "id": 16351, + "mutability": "immutable", + "name": "l2ChainId", + "nameLocation": "1437:9:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1412:34:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16350, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1412:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "f8256121", + "id": 16353, + "mutability": "immutable", + "name": "publicResolver", + "nameLocation": "1558:14:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1533:39:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1533:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "id": 16357, + "mutability": "mutable", + "name": "targets", + "nameLocation": "1606:7:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1578:35:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "typeName": { + "id": 16356, + "keyName": "", + "keyNameLocation": "-1:-1:-1", + "keyType": { + "id": 16354, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1586:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "1578:27:70", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "valueName": "", + "valueNameLocation": "-1:-1:-1", + "valueType": { + "id": 16355, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1597:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 16360, + "mutability": "constant", + "name": "OWNERS_SLOT", + "nameLocation": "1636:11:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1619:32:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1619:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "32", + "id": 16359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1650:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 16363, + "mutability": "constant", + "name": "ACCEPTED_L2_BLOCK_RANGE_LENGTH", + "nameLocation": "1757:30:70", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "1740:55:70", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16361, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1740:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3836343030", + "id": 16362, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1790:5:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_86400_by_1", + "typeString": "int_const 86400" + }, + "value": "86400" + }, + "visibility": "internal" + }, + { + "anonymous": false, + "eventSelector": "88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8", + "id": 16369, + "name": "TargetSet", + "nameLocation": "1808:9:70", + "nodeType": "EventDefinition", + "parameters": { + "id": 16368, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16365, + "indexed": false, + "mutability": "mutable", + "name": "name", + "nameLocation": "1824:4:70", + "nodeType": "VariableDeclaration", + "scope": 16369, + "src": "1818:10:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16364, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1818:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16367, + "indexed": false, + "mutability": "mutable", + "name": "target", + "nameLocation": "1838:6:70", + "nodeType": "VariableDeclaration", + "scope": 16369, + "src": "1830:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16366, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1830:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1817:28:70" + }, + "src": "1802:44:70" + }, + { + "body": { + "id": 16406, + "nodeType": "Block", + "src": "1917:195:70", + "statements": [ + { + "assignments": [ + 16377 + ], + "declarations": [ + { + "constant": false, + "id": 16377, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1935:5:70", + "nodeType": "VariableDeclaration", + "scope": 16406, + "src": "1927:13:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16376, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1927:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 16382, + "initialValue": { + "arguments": [ + { + "id": 16380, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16371, + "src": "1953:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 16378, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16346, + "src": "1943:3:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 16379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1947:5:70", + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 4536, + "src": "1943:9:70", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 16381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1943:15:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1927:31:70" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16383, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16377, + "src": "1972:5:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 16386, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16349, + "src": "1989:11:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + ], + "id": 16385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1981:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16384, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1981:7:70", + "typeDescriptions": {} + } + }, + "id": 16387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1981:20:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1972:29:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16400, + "nodeType": "IfStatement", + "src": "1968:102:70", + "trueBody": { + "id": 16399, + "nodeType": "Block", + "src": "2003:67:70", + "statements": [ + { + "expression": { + "id": 16397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16389, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16377, + "src": "2017:5:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 16394, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16371, + "src": "2053:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 16393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2045:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 16392, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2045:7:70", + "typeDescriptions": {} + } + }, + "id": 16395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2045:13:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16390, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16349, + "src": "2025:11:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "id": 16391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2037:7:70", + "memberName": "ownerOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 9994, + "src": "2025:19:70", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$", + "typeString": "function (uint256) view external returns (address)" + } + }, + "id": 16396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2025:34:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2017:42:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 16398, + "nodeType": "ExpressionStatement", + "src": "2017:42:70" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16401, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16377, + "src": "2086:5:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 16402, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2095:3:70", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 16403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2099:6:70", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2095:10:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2086:19:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 16375, + "id": 16405, + "nodeType": "Return", + "src": "2079:26:70" + } + ] + }, + "id": 16407, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isAuthorised", + "nameLocation": "1861:12:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16372, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16371, + "mutability": "mutable", + "name": "node", + "nameLocation": "1882:4:70", + "nodeType": "VariableDeclaration", + "scope": 16407, + "src": "1874:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16370, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1874:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1873:14:70" + }, + "returnParameters": { + "id": 16375, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16374, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16407, + "src": "1911:4:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16373, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1911:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1910:6:70" + }, + "scope": 16905, + "src": "1852:260:70", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "documentation": { + "id": 16408, + "nodeType": "StructuredDocumentation", + "src": "2118:261:70", + "text": " @dev EIP-5559 - Error to raise when mutations are being deferred to an L2.\n @param chainId Chain ID to perform the deferred mutation to.\n @param contractAddress Contract Address at which the deferred mutation should transact with." + }, + "errorSelector": "e0a05071", + "id": 16414, + "name": "StorageHandledByL2", + "nameLocation": "2390:18:70", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 16413, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16410, + "mutability": "mutable", + "name": "chainId", + "nameLocation": "2417:7:70", + "nodeType": "VariableDeclaration", + "scope": 16414, + "src": "2409:15:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16409, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2409:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16412, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "2434:15:70", + "nodeType": "VariableDeclaration", + "scope": 16414, + "src": "2426:23:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16411, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2426:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2408:42:70" + }, + "src": "2384:67:70" + }, + { + "body": { + "id": 16490, + "nodeType": "Block", + "src": "2971:486:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 16434, + "name": "_nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16424, + "src": "3010:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + ], + "id": 16433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3002:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16432, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3002:7:70", + "typeDescriptions": {} + } + }, + "id": 16435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3002:21:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 16438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3035:1:70", + "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": 16437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3027:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16436, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3027:7:70", + "typeDescriptions": {} + } + }, + "id": 16439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3027:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3002:35:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4e616d6520577261707065722061646472657373206d75737420626520736574", + "id": 16441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3051:34:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766", + "typeString": "literal_string \"Name Wrapper address must be set\"" + }, + "value": "Name Wrapper address must be set" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766", + "typeString": "literal_string \"Name Wrapper address must be set\"" + } + ], + "id": 16431, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2981:7:70", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2981:114:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16443, + "nodeType": "ExpressionStatement", + "src": "2981:114:70" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 16447, + "name": "_verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16418, + "src": "3134:9:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + ], + "id": 16446, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3126:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16445, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3126:7:70", + "typeDescriptions": {} + } + }, + "id": 16448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3126:18:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 16451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3156:1:70", + "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": 16450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3148:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3148:7:70", + "typeDescriptions": {} + } + }, + "id": 16452, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3148:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3126:32:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "56657269666965722061646472657373206d75737420626520736574", + "id": 16454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3172:30:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f", + "typeString": "literal_string \"Verifier address must be set\"" + }, + "value": "Verifier address must be set" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f", + "typeString": "literal_string \"Verifier address must be set\"" + } + ], + "id": 16444, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3105:7:70", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3105:107:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16456, + "nodeType": "ExpressionStatement", + "src": "3105:107:70" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 16460, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16421, + "src": "3238:4:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + ], + "id": 16459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3230:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16458, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3230:7:70", + "typeDescriptions": {} + } + }, + "id": 16461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3230:13:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 16464, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3255:1:70", + "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": 16463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3247:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16462, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3247:7:70", + "typeDescriptions": {} + } + }, + "id": 16465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3247:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3230:27:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "52656769737472792061646472657373206d75737420626520736574", + "id": 16467, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3259:30:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60", + "typeString": "literal_string \"Registry address must be set\"" + }, + "value": "Registry address must be set" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60", + "typeString": "literal_string \"Registry address must be set\"" + } + ], + "id": 16457, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3222:7:70", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3222:68:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16469, + "nodeType": "ExpressionStatement", + "src": "3222:68:70" + }, + { + "expression": { + "id": 16472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16470, + "name": "verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16343, + "src": "3300:8:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16471, + "name": "_verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16418, + "src": "3311:9:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "src": "3300:20:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "id": 16473, + "nodeType": "ExpressionStatement", + "src": "3300:20:70" + }, + { + "expression": { + "id": 16476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16474, + "name": "ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16346, + "src": "3330:3:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16475, + "name": "_ens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16421, + "src": "3336:4:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "src": "3330:10:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "id": 16477, + "nodeType": "ExpressionStatement", + "src": "3330:10:70" + }, + { + "expression": { + "id": 16480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16478, + "name": "nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16349, + "src": "3350:11:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16479, + "name": "_nameWrapper", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16424, + "src": "3364:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "src": "3350:26:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "id": 16481, + "nodeType": "ExpressionStatement", + "src": "3350:26:70" + }, + { + "expression": { + "id": 16484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16482, + "name": "l2ChainId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16351, + "src": "3386:9:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16483, + "name": "_l2ChainId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16426, + "src": "3398:10:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3386:22:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16485, + "nodeType": "ExpressionStatement", + "src": "3386:22:70" + }, + { + "expression": { + "id": 16488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16486, + "name": "publicResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16353, + "src": "3418:14:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16487, + "name": "_publicResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16428, + "src": "3435:15:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3418:32:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 16489, + "nodeType": "ExpressionStatement", + "src": "3418:32:70" + } + ] + }, + "documentation": { + "id": 16415, + "nodeType": "StructuredDocumentation", + "src": "2457:345:70", + "text": " @param _verifier The chain verifier address\n @param _ens The ENS registry address\n @param _nameWrapper The ENS name wrapper address\n @param _l2ChainId The chainId at which the resolver resolves data from\n @param _publicResolver The PublicResolver address to use to resolve base domains" + }, + "id": 16491, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16429, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16418, + "mutability": "mutable", + "name": "_verifier", + "nameLocation": "2841:9:70", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "2828:22:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + "typeName": { + "id": 16417, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16416, + "name": "IEVMVerifier", + "nameLocations": [ + "2828:12:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 798, + "src": "2828:12:70" + }, + "referencedDeclaration": 798, + "src": "2828:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16421, + "mutability": "mutable", + "name": "_ens", + "nameLocation": "2864:4:70", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "2860:8:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + }, + "typeName": { + "id": 16420, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16419, + "name": "ENS", + "nameLocations": [ + "2860:3:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 4567, + "src": "2860:3:70" + }, + "referencedDeclaration": 4567, + "src": "2860:3:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ENS_$4567", + "typeString": "contract ENS" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16424, + "mutability": "mutable", + "name": "_nameWrapper", + "nameLocation": "2891:12:70", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "2878:25:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + }, + "typeName": { + "id": 16423, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 16422, + "name": "INameWrapper", + "nameLocations": [ + "2878:12:70" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 10064, + "src": "2878:12:70" + }, + "referencedDeclaration": 10064, + "src": "2878:12:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_INameWrapper_$10064", + "typeString": "contract INameWrapper" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16426, + "mutability": "mutable", + "name": "_l2ChainId", + "nameLocation": "2921:10:70", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "2913:18:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2913:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16428, + "mutability": "mutable", + "name": "_publicResolver", + "nameLocation": "2949:15:70", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "2941:23:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16427, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2941:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2818:152:70" + }, + "returnParameters": { + "id": 16430, + "nodeType": "ParameterList", + "parameters": [], + "src": "2971:0:70" + }, + "scope": 16905, + "src": "2807:650:70", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 121 + ], + "body": { + "id": 16500, + "nodeType": "Block", + "src": "3636:54:70", + "statements": [ + { + "expression": { + "id": 16498, + "name": "ACCEPTED_L2_BLOCK_RANGE_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16363, + "src": "3653:30:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 16497, + "id": 16499, + "nodeType": "Return", + "src": "3646:37:70" + } + ] + }, + "documentation": { + "id": 16492, + "nodeType": "StructuredDocumentation", + "src": "3463:52:70", + "text": " @dev inherits from EVMFetchTarget" + }, + "functionSelector": "6d74e86e", + "id": 16501, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getAcceptedL2BlockRangeLength", + "nameLocation": "3529:29:70", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 16494, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3597:8:70" + }, + "parameters": { + "id": 16493, + "nodeType": "ParameterList", + "parameters": [], + "src": "3558:2:70" + }, + "returnParameters": { + "id": 16497, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16496, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16501, + "src": "3623:7:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16495, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3623:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3622:9:70" + }, + "scope": 16905, + "src": "3520:170:70", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 16533, + "nodeType": "Block", + "src": "3931:238:70", + "statements": [ + { + "assignments": [ + 16510, + null + ], + "declarations": [ + { + "constant": false, + "id": 16510, + "mutability": "mutable", + "name": "node", + "nameLocation": "3950:4:70", + "nodeType": "VariableDeclaration", + "scope": 16533, + "src": "3942:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16509, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3942:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + null + ], + "id": 16514, + "initialValue": { + "arguments": [ + { + "id": 16512, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16504, + "src": "3970:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 16511, + "name": "getTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16550, + "src": "3960:9:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$_t_bytes32_$_t_address_$", + "typeString": "function (bytes memory) view returns (bytes32,address)" + } + }, + "id": 16513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3960:15:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3941:34:70" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 16517, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16510, + "src": "4019:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 16516, + "name": "isAuthorised", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16407, + "src": "4006:12:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32) view returns (bool)" + } + }, + "id": 16518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4006:18:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4e6f7420617574686f72697a656420746f207365742074617267657420666f722074686973206e6f6465", + "id": 16519, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4038:44:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838", + "typeString": "literal_string \"Not authorized to set target for this node\"" + }, + "value": "Not authorized to set target for this node" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838", + "typeString": "literal_string \"Not authorized to set target for this node\"" + } + ], + "id": 16515, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3985:7:70", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3985:107:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16521, + "nodeType": "ExpressionStatement", + "src": "3985:107:70" + }, + { + "expression": { + "id": 16526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 16522, + "name": "targets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16357, + "src": "4102:7:70", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 16524, + "indexExpression": { + "id": 16523, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16510, + "src": "4110:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4102:13:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16525, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16506, + "src": "4118:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4102:22:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 16527, + "nodeType": "ExpressionStatement", + "src": "4102:22:70" + }, + { + "eventCall": { + "arguments": [ + { + "id": 16529, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16504, + "src": "4149:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 16530, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16506, + "src": "4155:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 16528, + "name": "TargetSet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16369, + "src": "4139:9:70", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (bytes memory,address)" + } + }, + "id": 16531, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4139:23:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16532, + "nodeType": "EmitStatement", + "src": "4134:28:70" + } + ] + }, + "documentation": { + "id": 16502, + "nodeType": "StructuredDocumentation", + "src": "3696:165:70", + "text": " Set target address to verify against\n @param name The encoded name to query.\n @param target The L2 resolver address to verify against." + }, + "functionSelector": "d358df77", + "id": 16534, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setTarget", + "nameLocation": "3875:9:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16507, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16504, + "mutability": "mutable", + "name": "name", + "nameLocation": "3900:4:70", + "nodeType": "VariableDeclaration", + "scope": 16534, + "src": "3885:19:70", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16503, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3885:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16506, + "mutability": "mutable", + "name": "target", + "nameLocation": "3914:6:70", + "nodeType": "VariableDeclaration", + "scope": 16534, + "src": "3906:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16505, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3906:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3884:37:70" + }, + "returnParameters": { + "id": 16508, + "nodeType": "ParameterList", + "parameters": [], + "src": "3931:0:70" + }, + "scope": 16905, + "src": "3866:303:70", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 16130 + ], + "body": { + "id": 16549, + "nodeType": "Block", + "src": "4527:43:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 16545, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16537, + "src": "4555:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 16546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4561:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 16544, + "name": "_getTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16645, + "src": "4544:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_address_$", + "typeString": "function (bytes memory,uint256) view returns (bytes32,address)" + } + }, + "id": 16547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4544:19:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "functionReturnParameters": 16543, + "id": 16548, + "nodeType": "Return", + "src": "4537:26:70" + } + ] + }, + "documentation": { + "id": 16535, + "nodeType": "StructuredDocumentation", + "src": "4175:244:70", + "text": " @dev Returns the L2 target address that can answer queries for `name`.\n @param name DNS encoded ENS name to query\n @return node The node of the name\n @return target The L2 resolver address to verify against." + }, + "functionSelector": "15f64386", + "id": 16550, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getTarget", + "nameLocation": "4433:9:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16538, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16537, + "mutability": "mutable", + "name": "name", + "nameLocation": "4465:4:70", + "nodeType": "VariableDeclaration", + "scope": 16550, + "src": "4452:17:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16536, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4452:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4442:33:70" + }, + "returnParameters": { + "id": 16543, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16540, + "mutability": "mutable", + "name": "node", + "nameLocation": "4505:4:70", + "nodeType": "VariableDeclaration", + "scope": 16550, + "src": "4497:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16539, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4497:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16542, + "mutability": "mutable", + "name": "target", + "nameLocation": "4519:6:70", + "nodeType": "VariableDeclaration", + "scope": 16550, + "src": "4511:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16541, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4511:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4496:30:70" + }, + "scope": 16905, + "src": "4424:146:70", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 16644, + "nodeType": "Block", + "src": "4705:497:70", + "statements": [ + { + "assignments": [ + 16562 + ], + "declarations": [ + { + "constant": false, + "id": 16562, + "mutability": "mutable", + "name": "len", + "nameLocation": "4723:3:70", + "nodeType": "VariableDeclaration", + "scope": 16644, + "src": "4715:11:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16561, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4715:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16567, + "initialValue": { + "arguments": [ + { + "id": 16565, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16554, + "src": "4744:6:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16563, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16552, + "src": "4729:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4734:9:70", + "memberName": "readUint8", + "nodeType": "MemberAccess", + "referencedDeclaration": 8144, + "src": "4729:14:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint8_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256) pure returns (uint8)" + } + }, + "id": 16566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4729:22:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4715:36:70" + }, + { + "expression": { + "id": 16573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16568, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "4761:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "30", + "id": 16571, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4776:1:70", + "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": 16570, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4768:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 16569, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4768:7:70", + "typeDescriptions": {} + } + }, + "id": 16572, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4768:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "4761:17:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 16574, + "nodeType": "ExpressionStatement", + "src": "4761:17:70" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16575, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16562, + "src": "4792:3:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 16576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4798:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4792:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 16638, + "nodeType": "Block", + "src": "5109:56:70", + "statements": [ + { + "expression": { + "components": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 16630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5139:1:70", + "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": 16629, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5131:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 16628, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5131:7:70", + "typeDescriptions": {} + } + }, + "id": 16631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5131:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 16634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5151:1:70", + "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": 16633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5143:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5143:7:70", + "typeDescriptions": {} + } + }, + "id": 16635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5143:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 16636, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5130:24:70", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "functionReturnParameters": 16560, + "id": 16637, + "nodeType": "Return", + "src": "5123:31:70" + } + ] + }, + "id": 16639, + "nodeType": "IfStatement", + "src": "4788:377:70", + "trueBody": { + "id": 16627, + "nodeType": "Block", + "src": "4801:302:70", + "statements": [ + { + "assignments": [ + 16579 + ], + "declarations": [ + { + "constant": false, + "id": 16579, + "mutability": "mutable", + "name": "label", + "nameLocation": "4823:5:70", + "nodeType": "VariableDeclaration", + "scope": 16627, + "src": "4815:13:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16578, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4815:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 16587, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16582, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16554, + "src": "4843:6:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 16583, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4852:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4843:10:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16585, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16562, + "src": "4855:3:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16580, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16552, + "src": "4831:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 16581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4836:6:70", + "memberName": "keccak", + "nodeType": "MemberAccess", + "referencedDeclaration": 7703, + "src": "4831:11:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$attached_to$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,uint256,uint256) pure returns (bytes32)" + } + }, + "id": 16586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4831:28:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4815:44:70" + }, + { + "expression": { + "id": 16599, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 16588, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "4874:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 16589, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16559, + "src": "4880:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 16590, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "4873:14:70", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 16592, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16552, + "src": "4901:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16593, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16554, + "src": "4907:6:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 16594, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16562, + "src": "4916:3:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4907:12:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 16596, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4922:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4907:16:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 16591, + "name": "_getTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16645, + "src": "4890:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_address_$", + "typeString": "function (bytes memory,uint256) view returns (bytes32,address)" + } + }, + "id": 16598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4890:34:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "src": "4873:51:70", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16600, + "nodeType": "ExpressionStatement", + "src": "4873:51:70" + }, + { + "expression": { + "id": 16609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16601, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "4938:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 16605, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "4972:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 16606, + "name": "label", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16579, + "src": "4978:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 16603, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4955:3:70", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16604, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4959:12:70", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "4955:16:70", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 16607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4955:29:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16602, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "4945:9:70", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 16608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4945:40:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "4938:47:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 16610, + "nodeType": "ExpressionStatement", + "src": "4938:47:70" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 16611, + "name": "targets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16357, + "src": "5003:7:70", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 16613, + "indexExpression": { + "id": 16612, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "5011:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5003:13:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 16616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5028:1:70", + "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": 16615, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5020:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16614, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5020:7:70", + "typeDescriptions": {} + } + }, + "id": 16617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5020:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5003:27:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16626, + "nodeType": "IfStatement", + "src": "4999:94:70", + "trueBody": { + "id": 16625, + "nodeType": "Block", + "src": "5032:61:70", + "statements": [ + { + "expression": { + "components": [ + { + "id": 16619, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "5058:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "baseExpression": { + "id": 16620, + "name": "targets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16357, + "src": "5064:7:70", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 16622, + "indexExpression": { + "id": 16621, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "5072:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5064:13:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 16623, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5057:21:70", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "functionReturnParameters": 16560, + "id": 16624, + "nodeType": "Return", + "src": "5050:28:70" + } + ] + } + } + ] + } + }, + { + "expression": { + "components": [ + { + "id": 16640, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16557, + "src": "5182:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 16641, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16559, + "src": "5188:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 16642, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5181:14:70", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "functionReturnParameters": 16560, + "id": 16643, + "nodeType": "Return", + "src": "5174:21:70" + } + ] + }, + "id": 16645, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_getTarget", + "nameLocation": "4585:10:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16555, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16552, + "mutability": "mutable", + "name": "name", + "nameLocation": "4618:4:70", + "nodeType": "VariableDeclaration", + "scope": 16645, + "src": "4605:17:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16551, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4605:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16554, + "mutability": "mutable", + "name": "offset", + "nameLocation": "4640:6:70", + "nodeType": "VariableDeclaration", + "scope": 16645, + "src": "4632:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16553, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4632:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4595:57:70" + }, + "returnParameters": { + "id": 16560, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16557, + "mutability": "mutable", + "name": "node", + "nameLocation": "4683:4:70", + "nodeType": "VariableDeclaration", + "scope": 16645, + "src": "4675:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16556, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4675:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16559, + "mutability": "mutable", + "name": "target", + "nameLocation": "4697:6:70", + "nodeType": "VariableDeclaration", + "scope": 16645, + "src": "4689:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16558, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4689:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4674:30:70" + }, + "scope": 16905, + "src": "4576:626:70", + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "baseFunctions": [ + 6600 + ], + "body": { + "id": 16730, + "nodeType": "Block", + "src": "5621:708:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 16659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 16656, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16650, + "src": "5639:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 16657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5644:6:70", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5639:11:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "34", + "id": 16658, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5654:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "5639:16:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "706172616d206461746120746f6f2073686f7274", + "id": 16660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5657:22:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a", + "typeString": "literal_string \"param data too short\"" + }, + "value": "param data too short" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a", + "typeString": "literal_string \"param data too short\"" + } + ], + "id": 16655, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5631:7:70", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 16661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5631:49:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16662, + "nodeType": "ExpressionStatement", + "src": "5631:49:70" + }, + { + "assignments": [ + 16664 + ], + "declarations": [ + { + "constant": false, + "id": 16664, + "mutability": "mutable", + "name": "node", + "nameLocation": "5699:4:70", + "nodeType": "VariableDeclaration", + "scope": 16730, + "src": "5691:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16663, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5691:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 16674, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 16667, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16650, + "src": "5717:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 16669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "5717:8:70", + "startExpression": { + "hexValue": "34", + "id": 16668, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5722:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + }, + { + "components": [ + { + "id": 16671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5728:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 16670, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5728:7:70", + "typeDescriptions": {} + } + } + ], + "id": 16672, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5727:9:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + }, + { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + } + ], + "expression": { + "id": 16665, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5706:3:70", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5710:6:70", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "5706:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 16673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5706:31:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5691:46:70" + }, + { + "assignments": [ + 16676 + ], + "declarations": [ + { + "constant": false, + "id": 16676, + "mutability": "mutable", + "name": "isBaseDomain", + "nameLocation": "5752:12:70", + "nodeType": "VariableDeclaration", + "scope": 16730, + "src": "5747:17:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16675, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5747:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 16685, + "initialValue": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 16684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 16677, + "name": "targets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16357, + "src": "5767:7:70", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 16679, + "indexExpression": { + "id": 16678, + "name": "node", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16664, + "src": "5775:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5767:13:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 16682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5792:1:70", + "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": 16681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5784:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16680, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5784:7:70", + "typeDescriptions": {} + } + }, + "id": 16683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5784:10:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5767:27:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5747:47:70" + }, + { + "condition": { + "id": 16686, + "name": "isBaseDomain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16676, + "src": "5884:12:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16693, + "nodeType": "IfStatement", + "src": "5880:70:70", + "trueBody": { + "id": 16692, + "nodeType": "Block", + "src": "5898:52:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 16688, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16648, + "src": "5928:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 16689, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16650, + "src": "5934:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 16687, + "name": "_resolve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16801, + "src": "5919:8:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory,bytes memory) view returns (bytes memory)" + } + }, + "id": 16690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5919:20:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 16654, + "id": 16691, + "nodeType": "Return", + "src": "5912:27:70" + } + ] + } + }, + { + "assignments": [ + null, + 16695 + ], + "declarations": [ + null, + { + "constant": false, + "id": 16695, + "mutability": "mutable", + "name": "target", + "nameLocation": "5971:6:70", + "nodeType": "VariableDeclaration", + "scope": 16730, + "src": "5963:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16694, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5963:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 16700, + "initialValue": { + "arguments": [ + { + "id": 16697, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16648, + "src": "5992:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "hexValue": "30", + "id": 16698, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5998:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 16696, + "name": "_getTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16645, + "src": "5981:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_address_$", + "typeString": "function (bytes memory,uint256) view returns (bytes32,address)" + } + }, + "id": 16699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5981:19:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5960:40:70" + }, + { + "assignments": [ + 16702 + ], + "declarations": [ + { + "constant": false, + "id": 16702, + "mutability": "mutable", + "name": "selector", + "nameLocation": "6018:8:70", + "nodeType": "VariableDeclaration", + "scope": 16730, + "src": "6011:15:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 16701, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "6011:6:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 16707, + "initialValue": { + "arguments": [ + { + "id": 16705, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16650, + "src": "6036:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 16704, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6029:6:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 16703, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "6029:6:70", + "typeDescriptions": {} + } + }, + "id": 16706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6029:12:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6011:30:70" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 16712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16708, + "name": "selector", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16702, + "src": "6056:8:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 16709, + "name": "IAddrResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6499, + "src": "6068:13:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAddrResolver_$6499_$", + "typeString": "type(contract IAddrResolver)" + } + }, + "id": 16710, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6082:4:70", + "memberName": "addr", + "nodeType": "MemberAccess", + "referencedDeclaration": 6498, + "src": "6068:18:70", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_bytes32_$returns$_t_address_payable_$", + "typeString": "function IAddrResolver.addr(bytes32) view returns (address payable)" + } + }, + "id": 16711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6087:8:70", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6068:27:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6056:39:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 16725, + "nodeType": "IfStatement", + "src": "6052:183:70", + "trueBody": { + "id": 16724, + "nodeType": "Block", + "src": "6097:138:70", + "statements": [ + { + "assignments": [ + 16714 + ], + "declarations": [ + { + "constant": false, + "id": 16714, + "mutability": "mutable", + "name": "nftId", + "nameLocation": "6157:5:70", + "nodeType": "VariableDeclaration", + "scope": 16724, + "src": "6149:13:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16713, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6149:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 16718, + "initialValue": { + "arguments": [ + { + "id": 16716, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16648, + "src": "6178:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 16715, + "name": "extractNFTId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16752, + "src": "6165:12:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_uint256_$", + "typeString": "function (bytes calldata) pure returns (uint256)" + } + }, + "id": 16717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6165:18:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6149:34:70" + }, + { + "expression": { + "arguments": [ + { + "id": 16720, + "name": "nftId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16714, + "src": "6210:5:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16721, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16695, + "src": "6217:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 16719, + "name": "_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16830, + "src": "6204:5:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256,address) view returns (bytes memory)" + } + }, + "id": 16722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6204:20:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 16654, + "id": 16723, + "nodeType": "Return", + "src": "6197:27:70" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "hexValue": "696e76616c69642073656c6563746f72", + "id": 16727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6303:18:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92", + "typeString": "literal_string \"invalid selector\"" + }, + "value": "invalid selector" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92", + "typeString": "literal_string \"invalid selector\"" + } + ], + "id": 16726, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "6296:6:70", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 16728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6296:26:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16729, + "nodeType": "ExpressionStatement", + "src": "6296:26:70" + } + ] + }, + "documentation": { + "id": 16646, + "nodeType": "StructuredDocumentation", + "src": "5208:283:70", + "text": " @dev Resolve and verify a record stored in l2 target address. It supports subname by fetching target recursively to the nearest parent.\n @param name DNS encoded ENS name to query\n @param data The actual calldata\n @return result result of the call" + }, + "functionSelector": "9061b923", + "id": 16731, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "resolve", + "nameLocation": "5505:7:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16651, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16648, + "mutability": "mutable", + "name": "name", + "nameLocation": "5537:4:70", + "nodeType": "VariableDeclaration", + "scope": 16731, + "src": "5522:19:70", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16647, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5522:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16650, + "mutability": "mutable", + "name": "data", + "nameLocation": "5566:4:70", + "nodeType": "VariableDeclaration", + "scope": 16731, + "src": "5551:19:70", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16649, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5551:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5512:64:70" + }, + "returnParameters": { + "id": 16654, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16653, + "mutability": "mutable", + "name": "result", + "nameLocation": "5613:6:70", + "nodeType": "VariableDeclaration", + "scope": 16731, + "src": "5600:19:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16652, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5600:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5599:21:70" + }, + "scope": 16905, + "src": "5496:833:70", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 16751, + "nodeType": "Block", + "src": "6541:137:70", + "statements": [ + { + "assignments": [ + 16740 + ], + "declarations": [ + { + "constant": false, + "id": 16740, + "mutability": "mutable", + "name": "firstLabel", + "nameLocation": "6564:10:70", + "nodeType": "VariableDeclaration", + "scope": 16751, + "src": "6551:23:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16739, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6551:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 16745, + "initialValue": { + "arguments": [ + { + "id": 16743, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16734, + "src": "6606:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "id": 16741, + "name": "LabelUtils", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16265, + "src": "6577:10:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_LabelUtils_$16265_$", + "typeString": "type(library LabelUtils)" + } + }, + "id": 16742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6588:17:70", + "memberName": "extractFirstLabel", + "nodeType": "MemberAccess", + "referencedDeclaration": 16190, + "src": "6577:28:70", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (bytes memory)" + } + }, + "id": 16744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6577:34:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6551:60:70" + }, + { + "expression": { + "arguments": [ + { + "id": 16748, + "name": "firstLabel", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16740, + "src": "6660:10:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 16746, + "name": "LabelUtils", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16265, + "src": "6628:10:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_LabelUtils_$16265_$", + "typeString": "type(library LabelUtils)" + } + }, + "id": 16747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6639:20:70", + "memberName": "extractNumericSuffix", + "nodeType": "MemberAccess", + "referencedDeclaration": 16264, + "src": "6628:31:70", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", + "typeString": "function (bytes memory) pure returns (uint256)" + } + }, + "id": 16749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6628:43:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 16738, + "id": 16750, + "nodeType": "Return", + "src": "6621:50:70" + } + ] + }, + "documentation": { + "id": 16732, + "nodeType": "StructuredDocumentation", + "src": "6335:128:70", + "text": " Get the NFT Id from the ENS name's label\n @param name DNS encoded ENS name\n @return id the NFT id" + }, + "functionSelector": "1a33ddae", + "id": 16752, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "extractNFTId", + "nameLocation": "6477:12:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16735, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16734, + "mutability": "mutable", + "name": "name", + "nameLocation": "6505:4:70", + "nodeType": "VariableDeclaration", + "scope": 16752, + "src": "6490:19:70", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16733, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6490:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6489:21:70" + }, + "returnParameters": { + "id": 16738, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16737, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16752, + "src": "6532:7:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16736, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6532:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6531:9:70" + }, + "scope": 16905, + "src": "6468:210:70", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 16118 + ], + "body": { + "id": 16773, + "nodeType": "Block", + "src": "7008:89:70", + "statements": [ + { + "assignments": [ + null, + 16763 + ], + "declarations": [ + null, + { + "constant": false, + "id": 16763, + "mutability": "mutable", + "name": "target", + "nameLocation": "7029:6:70", + "nodeType": "VariableDeclaration", + "scope": 16773, + "src": "7021:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16762, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7021:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 16768, + "initialValue": { + "arguments": [ + { + "id": 16765, + "name": "name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16755, + "src": "7050:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "hexValue": "30", + "id": 16766, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7056:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 16764, + "name": "_getTarget", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16645, + "src": "7039:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$_t_address_$", + "typeString": "function (bytes memory,uint256) view returns (bytes32,address)" + } + }, + "id": 16767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7039:19:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bytes32_$_t_address_$", + "typeString": "tuple(bytes32,address)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7018:40:70" + }, + { + "expression": { + "arguments": [ + { + "id": 16770, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16763, + "src": "7083:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 16769, + "name": "_writeDeferral", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16904, + "src": "7068:14:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 16771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7068:22:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16772, + "nodeType": "ExpressionStatement", + "src": "7068:22:70" + } + ] + }, + "documentation": { + "id": 16753, + "nodeType": "StructuredDocumentation", + "src": "6684:200:70", + "text": " @dev Resolve and throws an EIP 3559 compliant error\n @param name DNS encoded ENS name to query\n @param _addr The actual calldata\n @return result result of the call" + }, + "functionSelector": "f00eebf4", + "id": 16774, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setAddr", + "nameLocation": "6898:7:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16758, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16755, + "mutability": "mutable", + "name": "name", + "nameLocation": "6930:4:70", + "nodeType": "VariableDeclaration", + "scope": 16774, + "src": "6915:19:70", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16754, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6915:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16757, + "mutability": "mutable", + "name": "_addr", + "nameLocation": "6952:5:70", + "nodeType": "VariableDeclaration", + "scope": 16774, + "src": "6944:13:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16756, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6944:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6905:58:70" + }, + "returnParameters": { + "id": 16761, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16760, + "mutability": "mutable", + "name": "result", + "nameLocation": "7000:6:70", + "nodeType": "VariableDeclaration", + "scope": 16774, + "src": "6987:19:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16759, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6987:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6986:21:70" + }, + "scope": 16905, + "src": "6889:208:70", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 16800, + "nodeType": "Block", + "src": "7835:316:70", + "statements": [ + { + "assignments": [ + 16785, + 16787 + ], + "declarations": [ + { + "constant": false, + "id": 16785, + "mutability": "mutable", + "name": "success", + "nameLocation": "7851:7:70", + "nodeType": "VariableDeclaration", + "scope": 16800, + "src": "7846:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16784, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7846:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16787, + "mutability": "mutable", + "name": "result", + "nameLocation": "7873:6:70", + "nodeType": "VariableDeclaration", + "scope": 16800, + "src": "7860:19:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16786, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7860:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 16792, + "initialValue": { + "arguments": [ + { + "id": 16790, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16779, + "src": "7909:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 16788, + "name": "publicResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16353, + "src": "7883:14:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 16789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7898:10:70", + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "7883:25:70", + "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": 16791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7883:31:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7845:69:70" + }, + { + "condition": { + "id": 16793, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16785, + "src": "7928:7:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 16798, + "nodeType": "Block", + "src": "7981:164:70", + "statements": [ + { + "AST": { + "nativeSrc": "8063:72:70", + "nodeType": "YulBlock", + "src": "8063:72:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "result", + "nativeSrc": "8092:6:70", + "nodeType": "YulIdentifier", + "src": "8092:6:70" + }, + { + "kind": "number", + "nativeSrc": "8100:4:70", + "nodeType": "YulLiteral", + "src": "8100:4:70", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8088:3:70", + "nodeType": "YulIdentifier", + "src": "8088:3:70" + }, + "nativeSrc": "8088:17:70", + "nodeType": "YulFunctionCall", + "src": "8088:17:70" + }, + { + "arguments": [ + { + "name": "result", + "nativeSrc": "8113:6:70", + "nodeType": "YulIdentifier", + "src": "8113:6:70" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8107:5:70", + "nodeType": "YulIdentifier", + "src": "8107:5:70" + }, + "nativeSrc": "8107:13:70", + "nodeType": "YulFunctionCall", + "src": "8107:13:70" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "8081:6:70", + "nodeType": "YulIdentifier", + "src": "8081:6:70" + }, + "nativeSrc": "8081:40:70", + "nodeType": "YulFunctionCall", + "src": "8081:40:70" + }, + "nativeSrc": "8081:40:70", + "nodeType": "YulExpressionStatement", + "src": "8081:40:70" + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 16787, + "isOffset": false, + "isSlot": false, + "src": "8092:6:70", + "valueSize": 1 + }, + { + "declaration": 16787, + "isOffset": false, + "isSlot": false, + "src": "8113:6:70", + "valueSize": 1 + } + ], + "id": 16797, + "nodeType": "InlineAssembly", + "src": "8054:81:70" + } + ] + }, + "id": 16799, + "nodeType": "IfStatement", + "src": "7924:221:70", + "trueBody": { + "id": 16796, + "nodeType": "Block", + "src": "7937:38:70", + "statements": [ + { + "expression": { + "id": 16794, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16787, + "src": "7958:6:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 16783, + "id": 16795, + "nodeType": "Return", + "src": "7951:13:70" + } + ] + } + } + ] + }, + "documentation": { + "id": 16775, + "nodeType": "StructuredDocumentation", + "src": "7103:617:70", + "text": " @dev The `PublicResolver` does not implement the `resolve(bytes,bytes)` method.\n This method completes the resolution request by staticcalling `PublicResolver` with the resolve request.\n Implementation matches the ENS `ExtendedResolver:resolve(bytes,bytes)` method with the exception that it `staticcall`s the\n the `rootResolver` instead of `address(this)`.\n @param data The ABI encoded data for the underlying resolution function (Eg, addr(bytes32), text(bytes32,string), etc).\n @return The return data, ABI encoded identically to the underlying function." + }, + "id": 16801, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_resolve", + "nameLocation": "7734:8:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16780, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16777, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16801, + "src": "7752:12:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16776, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7752:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16779, + "mutability": "mutable", + "name": "data", + "nameLocation": "7787:4:70", + "nodeType": "VariableDeclaration", + "scope": 16801, + "src": "7774:17:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16778, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7774:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7742:55:70" + }, + "returnParameters": { + "id": 16783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16782, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16801, + "src": "7821:12:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16781, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7821:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7820:14:70" + }, + "scope": 16905, + "src": "7725:426:70", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 16829, + "nodeType": "Block", + "src": "8263:209:70", + "statements": [ + { + "expression": { + "arguments": [ + { + "expression": { + "expression": { + "id": 16823, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "8416:4:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_NFTResolver_$16905", + "typeString": "contract NFTResolver" + } + }, + "id": 16824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8421:12:70", + "memberName": "addrCallback", + "nodeType": "MemberAccess", + "referencedDeclaration": 16858, + "src": "8416:17:70", + "typeDescriptions": { + "typeIdentifier": "t_function_external_pure$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory[] memory,bytes memory) pure external returns (bytes memory)" + } + }, + "id": 16825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8434:8:70", + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8416:26:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "hexValue": "", + "id": 16826, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8444:2:70", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "expression": { + "arguments": [ + { + "id": 16820, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16803, + "src": "8388:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 16817, + "name": "OWNERS_SLOT", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16360, + "src": "8354:11:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 16813, + "name": "verifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16343, + "src": "8313:8:70", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + } + }, + { + "id": 16814, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16805, + "src": "8323:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IEVMVerifier_$798", + "typeString": "contract IEVMVerifier" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16810, + "name": "EVMFetcher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 771, + "src": "8273:10:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_EVMFetcher_$771_$", + "typeString": "type(library EVMFetcher)" + } + }, + "id": 16812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8297:15:70", + "memberName": "newFetchRequest", + "nodeType": "MemberAccess", + "referencedDeclaration": 249, + "src": "8273:39:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_contract$_IEVMVerifier_$798_$_t_address_$returns$_t_struct$_EVMFetchRequest_$205_memory_ptr_$", + "typeString": "function (contract IEVMVerifier,address) pure returns (struct EVMFetcher.EVMFetchRequest memory)" + } + }, + "id": 16815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8273:57:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 16816, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8344:9:70", + "memberName": "getStatic", + "nodeType": "MemberAccess", + "referencedDeclaration": 326, + "src": "8273:80:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint256_$returns$_t_struct$_EVMFetchRequest_$205_memory_ptr_$attached_to$_t_struct$_EVMFetchRequest_$205_memory_ptr_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint256) pure returns (struct EVMFetcher.EVMFetchRequest memory)" + } + }, + "id": 16818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8273:93:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 16819, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8380:7:70", + "memberName": "element", + "nodeType": "MemberAccess", + "referencedDeclaration": 438, + "src": "8273:114:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_uint256_$returns$_t_struct$_EVMFetchRequest_$205_memory_ptr_$attached_to$_t_struct$_EVMFetchRequest_$205_memory_ptr_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,uint256) pure returns (struct EVMFetcher.EVMFetchRequest memory)" + } + }, + "id": 16821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8273:123:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_EVMFetchRequest_$205_memory_ptr", + "typeString": "struct EVMFetcher.EVMFetchRequest memory" + } + }, + "id": 16822, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8410:5:70", + "memberName": "fetch", + "nodeType": "MemberAccess", + "referencedDeclaration": 692, + "src": "8273:142:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_EVMFetchRequest_$205_memory_ptr_$_t_bytes4_$_t_bytes_memory_ptr_$returns$__$attached_to$_t_struct$_EVMFetchRequest_$205_memory_ptr_$", + "typeString": "function (struct EVMFetcher.EVMFetchRequest memory,bytes4,bytes memory) view" + } + }, + "id": 16827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8273:174:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16828, + "nodeType": "ExpressionStatement", + "src": "8273:174:70" + } + ] + }, + "id": 16830, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_addr", + "nameLocation": "8166:5:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16806, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16803, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "8189:7:70", + "nodeType": "VariableDeclaration", + "scope": 16830, + "src": "8181:15:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16802, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8181:7:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16805, + "mutability": "mutable", + "name": "target", + "nameLocation": "8214:6:70", + "nodeType": "VariableDeclaration", + "scope": 16830, + "src": "8206:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16804, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8206:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8171:55:70" + }, + "returnParameters": { + "id": 16809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16830, + "src": "8249:12:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16807, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8249:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8248:14:70" + }, + "scope": 16905, + "src": "8157:315:70", + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 16857, + "nodeType": "Block", + "src": "8596:97:70", + "statements": [ + { + "assignments": [ + 16841 + ], + "declarations": [ + { + "constant": false, + "id": 16841, + "mutability": "mutable", + "name": "addr", + "nameLocation": "8614:4:70", + "nodeType": "VariableDeclaration", + "scope": 16857, + "src": "8606:12:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16840, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8606:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 16851, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 16844, + "name": "values", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16833, + "src": "8632:6:70", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes memory[] memory" + } + }, + "id": 16846, + "indexExpression": { + "hexValue": "30", + "id": 16845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8639:1:70", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8632:9:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 16848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8644:7:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8644:7:70", + "typeDescriptions": {} + } + } + ], + "id": 16849, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8643:9:70", + "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": 16842, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8621:3:70", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8625:6:70", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "8621:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 16850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8621:32:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8606:47:70" + }, + { + "expression": { + "arguments": [ + { + "id": 16854, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16841, + "src": "8681:4:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16852, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8670:3:70", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8674:6:70", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8670:10:70", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 16855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8670:16:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 16839, + "id": 16856, + "nodeType": "Return", + "src": "8663:23:70" + } + ] + }, + "functionSelector": "f470901a", + "id": 16858, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "addrCallback", + "nameLocation": "8487:12:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16833, + "mutability": "mutable", + "name": "values", + "nameLocation": "8524:6:70", + "nodeType": "VariableDeclaration", + "scope": 16858, + "src": "8509:21:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 16831, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8509:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 16832, + "nodeType": "ArrayTypeName", + "src": "8509:7:70", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16835, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16858, + "src": "8540:12:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16834, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8540:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8499:59:70" + }, + "returnParameters": { + "id": 16839, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16838, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16858, + "src": "8582:12:70", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16837, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8582:5:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8581:14:70" + }, + "scope": 16905, + "src": "8478:215:70", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 15123 + ], + "body": { + "id": 16892, + "nodeType": "Block", + "src": "8796:262:70", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 16890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 16885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 16878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 16871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16866, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16860, + "src": "8825:11:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 16868, + "name": "IExtendedResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6601, + "src": "8845:17:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IExtendedResolver_$6601_$", + "typeString": "type(contract IExtendedResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IExtendedResolver_$6601_$", + "typeString": "type(contract IExtendedResolver)" + } + ], + "id": 16867, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "8840:4:70", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 16869, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8840:23:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IExtendedResolver_$6601", + "typeString": "type(contract IExtendedResolver)" + } + }, + "id": 16870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8864:11:70", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "8840:35:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8825:50:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 16877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16872, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16860, + "src": "8891:11:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 16874, + "name": "ITargetResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16131, + "src": "8911:15:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITargetResolver_$16131_$", + "typeString": "type(contract ITargetResolver)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_ITargetResolver_$16131_$", + "typeString": "type(contract ITargetResolver)" + } + ], + "id": 16873, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "8906:4:70", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 16875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8906:21:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_ITargetResolver_$16131", + "typeString": "type(contract ITargetResolver)" + } + }, + "id": 16876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8928:11:70", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "8906:33:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8891:48:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8825:114:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 16884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 16879, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16860, + "src": "8955:11:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 16881, + "name": "IAddrSetter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16119, + "src": "8975:11:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAddrSetter_$16119_$", + "typeString": "type(contract IAddrSetter)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IAddrSetter_$16119_$", + "typeString": "type(contract IAddrSetter)" + } + ], + "id": 16880, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "8970:4:70", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 16882, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8970:17:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IAddrSetter_$16119", + "typeString": "type(contract IAddrSetter)" + } + }, + "id": 16883, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8988:11:70", + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "8970:29:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8955:44:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8825:174:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 16888, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16860, + "src": "9039:11:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 16886, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "9015:5:70", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_NFTResolver_$16905_$", + "typeString": "type(contract super NFTResolver)" + } + }, + "id": 16887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9021:17:70", + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 15123, + "src": "9015:23:70", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", + "typeString": "function (bytes4) view returns (bool)" + } + }, + "id": 16889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9015:36:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8825:226:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 16865, + "id": 16891, + "nodeType": "Return", + "src": "8806:245:70" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 16893, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nameLocation": "8708:17:70", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 16862, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "8772:8:70" + }, + "parameters": { + "id": 16861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16860, + "mutability": "mutable", + "name": "interfaceId", + "nameLocation": "8742:11:70", + "nodeType": "VariableDeclaration", + "scope": 16893, + "src": "8735:18:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 16859, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "8735:6:70", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "8725:34:70" + }, + "returnParameters": { + "id": 16865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 16893, + "src": "8790:4:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16863, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8790:4:70", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8789:6:70" + }, + "scope": 16905, + "src": "8699:359:70", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 16903, + "nodeType": "Block", + "src": "9118:61:70", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 16899, + "name": "l2ChainId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16351, + "src": "9154:9:70", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16900, + "name": "target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16895, + "src": "9165:6:70", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 16898, + "name": "StorageHandledByL2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16414, + "src": "9135:18:70", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (uint256,address) pure" + } + }, + "id": 16901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9135:37:70", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16902, + "nodeType": "RevertStatement", + "src": "9128:44:70" + } + ] + }, + "id": 16904, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_writeDeferral", + "nameLocation": "9073:14:70", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16896, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16895, + "mutability": "mutable", + "name": "target", + "nameLocation": "9096:6:70", + "nodeType": "VariableDeclaration", + "scope": 16904, + "src": "9088:14:70", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16894, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9088:7:70", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9087:16:70" + }, + "returnParameters": { + "id": 16897, + "nodeType": "ParameterList", + "parameters": [], + "src": "9118:0:70" + }, + "scope": 16905, + "src": "9064:115:70", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 16906, + "src": "1084:8097:70", + "usedErrors": [ + 15, + 170, + 172, + 191, + 16414 + ], + "usedEvents": [ + 16369 + ] + } + ], + "src": "39:9143:70" + }, + "id": 70 + }, + "contracts/RollupMock.sol": { + "ast": { + "absolutePath": "contracts/RollupMock.sol", + "exportedSymbols": { + "RollupMock": [ + 16974 + ] + }, + "id": 16975, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16907, + "literals": [ + "solidity", + "0.8", + ".25" + ], + "nodeType": "PragmaDirective", + "src": "32:23:71" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "RollupMock", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 16974, + "linearizedBaseContracts": [ + 16974 + ], + "name": "RollupMock", + "nameLocation": "66:10:71", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "eventSelector": "1335f1a2b3ff25f07f5fef07dd35d8fb4312c3c73b138e2fad9347b3319ab53c", + "id": 16917, + "name": "DataFinalized", + "nameLocation": "89:13:71", + "nodeType": "EventDefinition", + "parameters": { + "id": 16916, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16909, + "indexed": true, + "mutability": "mutable", + "name": "lastBlockFinalized", + "nameLocation": "128:18:71", + "nodeType": "VariableDeclaration", + "scope": 16917, + "src": "112:34:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16908, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "112:7:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16911, + "indexed": true, + "mutability": "mutable", + "name": "startingRootHash", + "nameLocation": "172:16:71", + "nodeType": "VariableDeclaration", + "scope": 16917, + "src": "156:32:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16910, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "156:7:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16913, + "indexed": true, + "mutability": "mutable", + "name": "finalRootHash", + "nameLocation": "214:13:71", + "nodeType": "VariableDeclaration", + "scope": 16917, + "src": "198:29:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16912, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "198:7:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16915, + "indexed": false, + "mutability": "mutable", + "name": "withProof", + "nameLocation": "242:9:71", + "nodeType": "VariableDeclaration", + "scope": 16917, + "src": "237:14:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16914, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "237:4:71", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "102:155:71" + }, + "src": "83:175:71" + }, + { + "constant": false, + "functionSelector": "695378f5", + "id": 16919, + "mutability": "mutable", + "name": "currentL2BlockNumber", + "nameLocation": "279:20:71", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "264:35:71", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16918, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "264:7:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "8be745d1", + "id": 16923, + "mutability": "mutable", + "name": "stateRootHashes", + "nameLocation": "374:15:71", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "305:84:71", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$", + "typeString": "mapping(uint256 => bytes32)" + }, + "typeName": { + "id": 16922, + "keyName": "blockNumber", + "keyNameLocation": "321:11:71", + "keyType": { + "id": 16920, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "313:7:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "305:53:71", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$", + "typeString": "mapping(uint256 => bytes32)" + }, + "valueName": "stateRootHash", + "valueNameLocation": "344:13:71", + "valueType": { + "id": 16921, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "336:7:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + }, + "visibility": "public" + }, + { + "body": { + "id": 16947, + "nodeType": "Block", + "src": "470:295:71", + "statements": [ + { + "expression": { + "id": 16932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16930, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16919, + "src": "480:20:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16931, + "name": "_currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16925, + "src": "503:21:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "480:44:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16933, + "nodeType": "ExpressionStatement", + "src": "480:44:71" + }, + { + "expression": { + "id": 16938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 16934, + "name": "stateRootHashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16923, + "src": "534:15:71", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$", + "typeString": "mapping(uint256 => bytes32)" + } + }, + "id": 16936, + "indexExpression": { + "id": 16935, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16919, + "src": "550:20:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "534:37:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16937, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16927, + "src": "574:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "534:61:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 16939, + "nodeType": "ExpressionStatement", + "src": "534:61:71" + }, + { + "eventCall": { + "arguments": [ + { + "id": 16941, + "name": "_currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16925, + "src": "638:21:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16942, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16927, + "src": "673:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 16943, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16927, + "src": "708:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "hexValue": "66616c7365", + "id": 16944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "743:5:71", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 16940, + "name": "DataFinalized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16917, + "src": "611:13:71", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_bytes32_$_t_bytes32_$_t_bool_$returns$__$", + "typeString": "function (uint256,bytes32,bytes32,bool)" + } + }, + "id": 16945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "611:147:71", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16946, + "nodeType": "EmitStatement", + "src": "606:152:71" + } + ] + }, + "id": 16948, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16925, + "mutability": "mutable", + "name": "_currentL2BlockNumber", + "nameLocation": "416:21:71", + "nodeType": "VariableDeclaration", + "scope": 16948, + "src": "408:29:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "408:7:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16927, + "mutability": "mutable", + "name": "_currentStateRootHash", + "nameLocation": "447:21:71", + "nodeType": "VariableDeclaration", + "scope": 16948, + "src": "439:29:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16926, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "439:7:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "407:62:71" + }, + "returnParameters": { + "id": 16929, + "nodeType": "ParameterList", + "parameters": [], + "src": "470:0:71" + }, + "scope": 16974, + "src": "396:369:71", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 16972, + "nodeType": "Block", + "src": "893:295:71", + "statements": [ + { + "expression": { + "id": 16957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 16955, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16919, + "src": "903:20:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16956, + "name": "_currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16950, + "src": "926:21:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "903:44:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 16958, + "nodeType": "ExpressionStatement", + "src": "903:44:71" + }, + { + "expression": { + "id": 16963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 16959, + "name": "stateRootHashes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16923, + "src": "957:15:71", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$", + "typeString": "mapping(uint256 => bytes32)" + } + }, + "id": 16961, + "indexExpression": { + "id": 16960, + "name": "currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16919, + "src": "973:20:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "957:37:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 16962, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16952, + "src": "997:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "957:61:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 16964, + "nodeType": "ExpressionStatement", + "src": "957:61:71" + }, + { + "eventCall": { + "arguments": [ + { + "id": 16966, + "name": "_currentL2BlockNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16950, + "src": "1061:21:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16967, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16952, + "src": "1096:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 16968, + "name": "_currentStateRootHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16952, + "src": "1131:21:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "hexValue": "66616c7365", + "id": 16969, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1166:5:71", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 16965, + "name": "DataFinalized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16917, + "src": "1034:13:71", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_bytes32_$_t_bytes32_$_t_bool_$returns$__$", + "typeString": "function (uint256,bytes32,bytes32,bool)" + } + }, + "id": 16970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1034:147:71", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16971, + "nodeType": "EmitStatement", + "src": "1029:152:71" + } + ] + }, + "functionSelector": "56bc257d", + "id": 16973, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setCurrentStateRoot", + "nameLocation": "780:19:71", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16953, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16950, + "mutability": "mutable", + "name": "_currentL2BlockNumber", + "nameLocation": "817:21:71", + "nodeType": "VariableDeclaration", + "scope": 16973, + "src": "809:29:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16949, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "809:7:71", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16952, + "mutability": "mutable", + "name": "_currentStateRootHash", + "nameLocation": "856:21:71", + "nodeType": "VariableDeclaration", + "scope": 16973, + "src": "848:29:71", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 16951, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "848:7:71", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "799:84:71" + }, + "returnParameters": { + "id": 16954, + "nodeType": "ParameterList", + "parameters": [], + "src": "893:0:71" + }, + "scope": 16974, + "src": "771:417:71", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 16975, + "src": "57:1133:71", + "usedErrors": [], + "usedEvents": [ + 16917 + ] + } + ], + "src": "32:1159:71" + }, + "id": 71 + }, + "contracts/deps.sol": { + "ast": { + "absolutePath": "contracts/deps.sol", + "exportedSymbols": { + "Address": [ + 14841 + ], + "BaseRegistrarImplementation": [ + 4335 + ], + "BytesUtils": [ + 8609 + ], + "CANNOT_APPROVE": [ + 9718 + ], + "CANNOT_BURN_FUSES": [ + 9703 + ], + "CANNOT_CREATE_SUBDOMAIN": [ + 9715 + ], + "CANNOT_SET_RESOLVER": [ + 9709 + ], + "CANNOT_SET_TTL": [ + 9712 + ], + "CANNOT_TRANSFER": [ + 9706 + ], + "CANNOT_UNWRAP": [ + 9700 + ], + "CAN_DO_EVERYTHING": [ + 9736 + ], + "CAN_EXTEND_EXPIRY": [ + 9733 + ], + "CannotUpgrade": [ + 10155 + ], + "Context": [ + 14871 + ], + "Controllable": [ + 8687 + ], + "ENS": [ + 4567 + ], + "ENSRegistry": [ + 4991 + ], + "ERC1155Fuse": [ + 9680 + ], + "ERC165": [ + 15124 + ], + "ERC20Recoverable": [ + 8638 + ], + "ERC721": [ + 14350 + ], + "IBaseRegistrar": [ + 4430 + ], + "IERC1155": [ + 13289 + ], + "IERC1155MetadataURI": [ + 13345 + ], + "IERC165": [ + 15136 + ], + "IERC721": [ + 14466 + ], + "IERC721Metadata": [ + 14511 + ], + "IERC721Receiver": [ + 14484 + ], + "IMetadataService": [ + 9690 + ], + "INameWrapper": [ + 10064 + ], + "INameWrapperUpgrade": [ + 10082 + ], + "IReverseRegistrar": [ + 7238 + ], + "IS_DOT_ETH": [ + 9728 + ], + "IncompatibleParent": [ + 10135 + ], + "IncorrectTargetOwner": [ + 10153 + ], + "IncorrectTokenType": [ + 10137 + ], + "LabelMismatch": [ + 10143 + ], + "LabelTooLong": [ + 10149 + ], + "LabelTooShort": [ + 10145 + ], + "LineaSparseProofVerifier": [ + 1710 + ], + "Math": [ + 16002 + ], + "NameIsNotWrapped": [ + 10161 + ], + "NameIsStillExpired": [ + 10163 + ], + "NameWrapper": [ + 13029 + ], + "OperationProhibited": [ + 10159 + ], + "Ownable": [ + 13167 + ], + "PARENT_CANNOT_CONTROL": [ + 9723 + ], + "PARENT_CONTROLLED_FUSES": [ + 9739 + ], + "PublicResolver": [ + 5481 + ], + "ReverseClaimer": [ + 7273 + ], + "ReverseRegistrar": [ + 7624 + ], + "SignedMath": [ + 16107 + ], + "StaticMetadataService": [ + 13054 + ], + "Strings": [ + 15100 + ], + "USER_SETTABLE_FUSES": [ + 9742 + ], + "Unauthorised": [ + 10133 + ], + "console": [ + 25070 + ] + }, + "id": 16986, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "absolutePath": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "file": "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol", + "id": 16976, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 4992, + "src": "33:70:72", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "file": "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol", + "id": 16977, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 13030, + "src": "104:69:72", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol", + "file": "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol", + "id": 16978, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 4336, + "src": "174:90:72", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol", + "file": "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol", + "id": 16979, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 13055, + "src": "265:79:72", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "file": "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol", + "id": 16981, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 7625, + "src": "345:107:72", + "symbolAliases": [ + { + "foreign": { + "id": 16980, + "name": "ReverseRegistrar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7624, + "src": "353:16:72", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol", + "file": "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol", + "id": 16983, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 5482, + "src": "453:96:72", + "symbolAliases": [ + { + "foreign": { + "id": 16982, + "name": "PublicResolver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5481, + "src": "461:14:72", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol", + "file": "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol", + "id": 16985, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 16986, + "sourceUnit": 1711, + "src": "550:112:72", + "symbolAliases": [ + { + "foreign": { + "id": 16984, + "name": "LineaSparseProofVerifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1710, + "src": "558:24:72", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + } + ], + "src": "33:630:72" + }, + "id": 72 + }, + "hardhat/console.sol": { + "ast": { + "absolutePath": "hardhat/console.sol", + "exportedSymbols": { + "console": [ + 25070 + ] + }, + "id": 25071, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 16987, + "literals": [ + "solidity", + ">=", + "0.4", + ".22", + "<", + "0.9", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "32:32:73" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "console", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "id": 25070, + "linearizedBaseContracts": [ + 25070 + ], + "name": "console", + "nameLocation": "74:7:73", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 16990, + "mutability": "constant", + "name": "CONSOLE_ADDRESS", + "nameLocation": "105:15:73", + "nodeType": "VariableDeclaration", + "scope": 25070, + "src": "88:85:73", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16988, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "88:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307830303030303030303030303030303030303036333646366537333646366336353265366336663637", + "id": 16989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "131:42:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x000000000000000000636F6e736F6c652e6c6f67" + }, + "visibility": "internal" + }, + { + "body": { + "id": 17000, + "nodeType": "Block", + "src": "255:388:73", + "statements": [ + { + "assignments": [ + 16996 + ], + "declarations": [ + { + "constant": false, + "id": 16996, + "mutability": "mutable", + "name": "consoleAddress", + "nameLocation": "273:14:73", + "nodeType": "VariableDeclaration", + "scope": 17000, + "src": "265:22:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16995, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "265:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 16998, + "initialValue": { + "id": 16997, + "name": "CONSOLE_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16990, + "src": "290:15:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "265:40:73" + }, + { + "AST": { + "nativeSrc": "367:270:73", + "nodeType": "YulBlock", + "src": "367:270:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "gas", + "nativeSrc": "434:3:73", + "nodeType": "YulIdentifier", + "src": "434:3:73" + }, + "nativeSrc": "434:5:73", + "nodeType": "YulFunctionCall", + "src": "434:5:73" + }, + { + "name": "consoleAddress", + "nativeSrc": "461:14:73", + "nodeType": "YulIdentifier", + "src": "461:14:73" + }, + { + "arguments": [ + { + "name": "payload", + "nativeSrc": "501:7:73", + "nodeType": "YulIdentifier", + "src": "501:7:73" + }, + { + "kind": "number", + "nativeSrc": "510:2:73", + "nodeType": "YulLiteral", + "src": "510:2:73", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "497:3:73", + "nodeType": "YulIdentifier", + "src": "497:3:73" + }, + "nativeSrc": "497:16:73", + "nodeType": "YulFunctionCall", + "src": "497:16:73" + }, + { + "arguments": [ + { + "name": "payload", + "nativeSrc": "541:7:73", + "nodeType": "YulIdentifier", + "src": "541:7:73" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "535:5:73", + "nodeType": "YulIdentifier", + "src": "535:5:73" + }, + "nativeSrc": "535:14:73", + "nodeType": "YulFunctionCall", + "src": "535:14:73" + }, + { + "kind": "number", + "nativeSrc": "571:1:73", + "nodeType": "YulLiteral", + "src": "571:1:73", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "594:1:73", + "nodeType": "YulLiteral", + "src": "594:1:73", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "staticcall", + "nativeSrc": "402:10:73", + "nodeType": "YulIdentifier", + "src": "402:10:73" + }, + "nativeSrc": "402:211:73", + "nodeType": "YulFunctionCall", + "src": "402:211:73" + } + ], + "functionName": { + "name": "pop", + "nativeSrc": "381:3:73", + "nodeType": "YulIdentifier", + "src": "381:3:73" + }, + "nativeSrc": "381:246:73", + "nodeType": "YulFunctionCall", + "src": "381:246:73" + }, + "nativeSrc": "381:246:73", + "nodeType": "YulExpressionStatement", + "src": "381:246:73" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 16996, + "isOffset": false, + "isSlot": false, + "src": "461:14:73", + "valueSize": 1 + }, + { + "declaration": 16992, + "isOffset": false, + "isSlot": false, + "src": "501:7:73", + "valueSize": 1 + }, + { + "declaration": 16992, + "isOffset": false, + "isSlot": false, + "src": "541:7:73", + "valueSize": 1 + } + ], + "id": 16999, + "nodeType": "InlineAssembly", + "src": "358:279:73" + } + ] + }, + "id": 17001, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_sendLogPayloadImplementation", + "nameLocation": "189:29:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 16993, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16992, + "mutability": "mutable", + "name": "payload", + "nameLocation": "232:7:73", + "nodeType": "VariableDeclaration", + "scope": 17001, + "src": "219:20:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 16991, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "219:5:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "218:22:73" + }, + "returnParameters": { + "id": 16994, + "nodeType": "ParameterList", + "parameters": [], + "src": "255:0:73" + }, + "scope": 25070, + "src": "180:463:73", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17017, + "nodeType": "Block", + "src": "783:62:73", + "statements": [ + { + "AST": { + "nativeSrc": "802:37:73", + "nodeType": "YulBlock", + "src": "802:37:73", + "statements": [ + { + "nativeSrc": "816:13:73", + "nodeType": "YulAssignment", + "src": "816:13:73", + "value": { + "name": "fnIn", + "nativeSrc": "825:4:73", + "nodeType": "YulIdentifier", + "src": "825:4:73" + }, + "variableNames": [ + { + "name": "fnOut", + "nativeSrc": "816:5:73", + "nodeType": "YulIdentifier", + "src": "816:5:73" + } + ] + } + ] + }, + "evmVersion": "paris", + "externalReferences": [ + { + "declaration": 17007, + "isOffset": false, + "isSlot": false, + "src": "825:4:73", + "valueSize": 1 + }, + { + "declaration": 17014, + "isOffset": false, + "isSlot": false, + "src": "816:5:73", + "valueSize": 1 + } + ], + "id": 17016, + "nodeType": "InlineAssembly", + "src": "793:46:73" + } + ] + }, + "id": 17018, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_castToPure", + "nameLocation": "658:11:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17007, + "mutability": "mutable", + "name": "fnIn", + "nameLocation": "714:4:73", + "nodeType": "VariableDeclaration", + "scope": 17018, + "src": "677:41:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes) view" + }, + "typeName": { + "id": 17006, + "nodeType": "FunctionTypeName", + "parameterTypes": { + "id": 17004, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17003, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 17006, + "src": "686:12:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 17002, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "686:5:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "685:14:73" + }, + "returnParameterTypes": { + "id": 17005, + "nodeType": "ParameterList", + "parameters": [], + "src": "714:0:73" + }, + "src": "677:41:73", + "stateMutability": "view", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes) view" + }, + "visibility": "internal" + }, + "visibility": "internal" + } + ], + "src": "669:55:73" + }, + "returnParameters": { + "id": 17015, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17014, + "mutability": "mutable", + "name": "fnOut", + "nameLocation": "776:5:73", + "nodeType": "VariableDeclaration", + "scope": 17018, + "src": "748:33:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes) pure" + }, + "typeName": { + "id": 17013, + "nodeType": "FunctionTypeName", + "parameterTypes": { + "id": 17011, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17010, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 17013, + "src": "757:12:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 17009, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "757:5:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "756:14:73" + }, + "returnParameterTypes": { + "id": 17012, + "nodeType": "ParameterList", + "parameters": [], + "src": "776:0:73" + }, + "src": "748:33:73", + "stateMutability": "pure", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes) pure" + }, + "visibility": "internal" + }, + "visibility": "internal" + } + ], + "src": "747:35:73" + }, + "scope": 25070, + "src": "649:196:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17029, + "nodeType": "Block", + "src": "912:68:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 17026, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17020, + "src": "965:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "arguments": [ + { + "id": 17024, + "name": "_sendLogPayloadImplementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17001, + "src": "934:29:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + ], + "id": 17023, + "name": "_castToPure", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17018, + "src": "922:11:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_function_internal_view$_t_bytes_memory_ptr_$returns$__$_$returns$_t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$_$", + "typeString": "function (function (bytes memory) view) pure returns (function (bytes memory) pure)" + } + }, + "id": 17025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "922:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "922:51:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17028, + "nodeType": "ExpressionStatement", + "src": "922:51:73" + } + ] + }, + "id": 17030, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_sendLogPayload", + "nameLocation": "860:15:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17021, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17020, + "mutability": "mutable", + "name": "payload", + "nameLocation": "889:7:73", + "nodeType": "VariableDeclaration", + "scope": 17030, + "src": "876:20:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 17019, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "876:5:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "875:22:73" + }, + "returnParameters": { + "id": 17022, + "nodeType": "ParameterList", + "parameters": [], + "src": "912:0:73" + }, + "scope": 25070, + "src": "851:129:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17040, + "nodeType": "Block", + "src": "1015:66:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672829", + "id": 17036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1065:7:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + }, + "value": "log()" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + } + ], + "expression": { + "id": 17034, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1041:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1045:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1041:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17037, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1041:32:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17033, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1025:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1025:49:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17039, + "nodeType": "ExpressionStatement", + "src": "1025:49:73" + } + ] + }, + "id": 17041, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "995:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17031, + "nodeType": "ParameterList", + "parameters": [], + "src": "998:2:73" + }, + "returnParameters": { + "id": 17032, + "nodeType": "ParameterList", + "parameters": [], + "src": "1015:0:73" + }, + "scope": 25070, + "src": "986:95:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17054, + "nodeType": "Block", + "src": "1127:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728696e7432353629", + "id": 17049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1177:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d5b6cb95ba2d00a93cd4ffa61ec07ef4bb1694f20c02a3cccb170a38df81ef8", + "typeString": "literal_string \"log(int256)\"" + }, + "value": "log(int256)" + }, + { + "id": 17050, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17043, + "src": "1192:2:73", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d5b6cb95ba2d00a93cd4ffa61ec07ef4bb1694f20c02a3cccb170a38df81ef8", + "typeString": "literal_string \"log(int256)\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 17047, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1153:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17048, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1157:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1153:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1153:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17046, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1137:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1137:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17053, + "nodeType": "ExpressionStatement", + "src": "1137:59:73" + } + ] + }, + "id": 17055, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logInt", + "nameLocation": "1095:6:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17044, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17043, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1109:2:73", + "nodeType": "VariableDeclaration", + "scope": 17055, + "src": "1102:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 17042, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1102:6:73", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1101:11:73" + }, + "returnParameters": { + "id": 17045, + "nodeType": "ParameterList", + "parameters": [], + "src": "1127:0:73" + }, + "scope": 25070, + "src": "1086:117:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17068, + "nodeType": "Block", + "src": "1252:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7432353629", + "id": 17063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1302:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + "value": "log(uint256)" + }, + { + "id": 17064, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17057, + "src": "1318:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17061, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1278:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1282:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1278:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1278:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17060, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1262:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1262:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17067, + "nodeType": "ExpressionStatement", + "src": "1262:60:73" + } + ] + }, + "id": 17069, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logUint", + "nameLocation": "1218:7:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17057, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1234:2:73", + "nodeType": "VariableDeclaration", + "scope": 17069, + "src": "1226:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17056, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1226:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1225:12:73" + }, + "returnParameters": { + "id": 17059, + "nodeType": "ParameterList", + "parameters": [], + "src": "1252:0:73" + }, + "scope": 25070, + "src": "1209:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17082, + "nodeType": "Block", + "src": "1386:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 17077, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1436:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 17078, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17071, + "src": "1451:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17075, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1412:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1416:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1412:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1412:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17074, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1396:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1396:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17081, + "nodeType": "ExpressionStatement", + "src": "1396:59:73" + } + ] + }, + "id": 17083, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logString", + "nameLocation": "1344:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17072, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17071, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1368:2:73", + "nodeType": "VariableDeclaration", + "scope": 17083, + "src": "1354:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17070, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1354:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1353:18:73" + }, + "returnParameters": { + "id": 17073, + "nodeType": "ParameterList", + "parameters": [], + "src": "1386:0:73" + }, + "scope": 25070, + "src": "1335:127:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17096, + "nodeType": "Block", + "src": "1508:74:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 17091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1558:11:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 17092, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17085, + "src": "1571:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17089, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1534:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1538:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1534:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1534:40:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17088, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1518:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1518:57:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17095, + "nodeType": "ExpressionStatement", + "src": "1518:57:73" + } + ] + }, + "id": 17097, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBool", + "nameLocation": "1477:7:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17085, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1490:2:73", + "nodeType": "VariableDeclaration", + "scope": 17097, + "src": "1485:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17084, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1485:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1484:9:73" + }, + "returnParameters": { + "id": 17087, + "nodeType": "ParameterList", + "parameters": [], + "src": "1508:0:73" + }, + "scope": 25070, + "src": "1468:114:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17110, + "nodeType": "Block", + "src": "1634:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 17105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1684:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 17106, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17099, + "src": "1700:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17103, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1660:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1664:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1660:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1660:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17102, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1644:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1644:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17109, + "nodeType": "ExpressionStatement", + "src": "1644:60:73" + } + ] + }, + "id": 17111, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logAddress", + "nameLocation": "1597:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17099, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1616:2:73", + "nodeType": "VariableDeclaration", + "scope": 17111, + "src": "1608:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17098, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1608:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1607:12:73" + }, + "returnParameters": { + "id": 17101, + "nodeType": "ParameterList", + "parameters": [], + "src": "1634:0:73" + }, + "scope": 25070, + "src": "1588:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17124, + "nodeType": "Block", + "src": "1766:75:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728627974657329", + "id": 17119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1816:12:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + "value": "log(bytes)" + }, + { + "id": 17120, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17113, + "src": "1830:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 17117, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1792:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1796:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1792:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1792:41:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17116, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1776:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1776:58:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17123, + "nodeType": "ExpressionStatement", + "src": "1776:58:73" + } + ] + }, + "id": 17125, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes", + "nameLocation": "1726:8:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17113, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1748:2:73", + "nodeType": "VariableDeclaration", + "scope": 17125, + "src": "1735:15:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 17112, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1735:5:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1734:17:73" + }, + "returnParameters": { + "id": 17115, + "nodeType": "ParameterList", + "parameters": [], + "src": "1766:0:73" + }, + "scope": 25070, + "src": "1717:124:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17138, + "nodeType": "Block", + "src": "1891:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733129", + "id": 17133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1941:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + "value": "log(bytes1)" + }, + { + "id": 17134, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17127, + "src": "1956:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "expression": { + "id": 17131, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1917:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1921:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1917:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1917:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17130, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "1901:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1901:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17137, + "nodeType": "ExpressionStatement", + "src": "1901:59:73" + } + ] + }, + "id": 17139, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes1", + "nameLocation": "1856:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17127, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1873:2:73", + "nodeType": "VariableDeclaration", + "scope": 17139, + "src": "1866:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 17126, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1866:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + } + ], + "src": "1865:11:73" + }, + "returnParameters": { + "id": 17129, + "nodeType": "ParameterList", + "parameters": [], + "src": "1891:0:73" + }, + "scope": 25070, + "src": "1847:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17152, + "nodeType": "Block", + "src": "2017:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733229", + "id": 17147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2067:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + "value": "log(bytes2)" + }, + { + "id": 17148, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17141, + "src": "2082:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + ], + "expression": { + "id": 17145, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2043:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2047:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2043:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2043:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17144, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2027:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17150, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2027:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17151, + "nodeType": "ExpressionStatement", + "src": "2027:59:73" + } + ] + }, + "id": 17153, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes2", + "nameLocation": "1982:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17141, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1999:2:73", + "nodeType": "VariableDeclaration", + "scope": 17153, + "src": "1992:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + }, + "typeName": { + "id": 17140, + "name": "bytes2", + "nodeType": "ElementaryTypeName", + "src": "1992:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + }, + "visibility": "internal" + } + ], + "src": "1991:11:73" + }, + "returnParameters": { + "id": 17143, + "nodeType": "ParameterList", + "parameters": [], + "src": "2017:0:73" + }, + "scope": 25070, + "src": "1973:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17166, + "nodeType": "Block", + "src": "2143:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733329", + "id": 17161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2193:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + "value": "log(bytes3)" + }, + { + "id": 17162, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17155, + "src": "2208:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + ], + "expression": { + "id": 17159, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2169:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2173:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2169:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2169:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17158, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2153:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17164, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2153:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17165, + "nodeType": "ExpressionStatement", + "src": "2153:59:73" + } + ] + }, + "id": 17167, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes3", + "nameLocation": "2108:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17156, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17155, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2125:2:73", + "nodeType": "VariableDeclaration", + "scope": 17167, + "src": "2118:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + }, + "typeName": { + "id": 17154, + "name": "bytes3", + "nodeType": "ElementaryTypeName", + "src": "2118:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + }, + "visibility": "internal" + } + ], + "src": "2117:11:73" + }, + "returnParameters": { + "id": 17157, + "nodeType": "ParameterList", + "parameters": [], + "src": "2143:0:73" + }, + "scope": 25070, + "src": "2099:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17180, + "nodeType": "Block", + "src": "2269:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733429", + "id": 17175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2319:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + "value": "log(bytes4)" + }, + { + "id": 17176, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17169, + "src": "2334:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 17173, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2295:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2299:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2295:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2295:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17172, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2279:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2279:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17179, + "nodeType": "ExpressionStatement", + "src": "2279:59:73" + } + ] + }, + "id": 17181, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes4", + "nameLocation": "2234:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17169, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2251:2:73", + "nodeType": "VariableDeclaration", + "scope": 17181, + "src": "2244:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 17168, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2244:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "2243:11:73" + }, + "returnParameters": { + "id": 17171, + "nodeType": "ParameterList", + "parameters": [], + "src": "2269:0:73" + }, + "scope": 25070, + "src": "2225:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17194, + "nodeType": "Block", + "src": "2395:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733529", + "id": 17189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2445:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + "value": "log(bytes5)" + }, + { + "id": 17190, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17183, + "src": "2460:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + ], + "expression": { + "id": 17187, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2421:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2425:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2421:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2421:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17186, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2405:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2405:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17193, + "nodeType": "ExpressionStatement", + "src": "2405:59:73" + } + ] + }, + "id": 17195, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes5", + "nameLocation": "2360:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17183, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2377:2:73", + "nodeType": "VariableDeclaration", + "scope": 17195, + "src": "2370:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + }, + "typeName": { + "id": 17182, + "name": "bytes5", + "nodeType": "ElementaryTypeName", + "src": "2370:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + }, + "visibility": "internal" + } + ], + "src": "2369:11:73" + }, + "returnParameters": { + "id": 17185, + "nodeType": "ParameterList", + "parameters": [], + "src": "2395:0:73" + }, + "scope": 25070, + "src": "2351:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17208, + "nodeType": "Block", + "src": "2521:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733629", + "id": 17203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2571:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + "value": "log(bytes6)" + }, + { + "id": 17204, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17197, + "src": "2586:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + ], + "expression": { + "id": 17201, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2547:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17202, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2551:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2547:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2547:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17200, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2531:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2531:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17207, + "nodeType": "ExpressionStatement", + "src": "2531:59:73" + } + ] + }, + "id": 17209, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes6", + "nameLocation": "2486:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17198, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17197, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2503:2:73", + "nodeType": "VariableDeclaration", + "scope": 17209, + "src": "2496:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + }, + "typeName": { + "id": 17196, + "name": "bytes6", + "nodeType": "ElementaryTypeName", + "src": "2496:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + }, + "visibility": "internal" + } + ], + "src": "2495:11:73" + }, + "returnParameters": { + "id": 17199, + "nodeType": "ParameterList", + "parameters": [], + "src": "2521:0:73" + }, + "scope": 25070, + "src": "2477:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17222, + "nodeType": "Block", + "src": "2647:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733729", + "id": 17217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2697:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + "value": "log(bytes7)" + }, + { + "id": 17218, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17211, + "src": "2712:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + ], + "expression": { + "id": 17215, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2673:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2677:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2673:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2673:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17214, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2657:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2657:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17221, + "nodeType": "ExpressionStatement", + "src": "2657:59:73" + } + ] + }, + "id": 17223, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes7", + "nameLocation": "2612:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17212, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17211, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2629:2:73", + "nodeType": "VariableDeclaration", + "scope": 17223, + "src": "2622:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + }, + "typeName": { + "id": 17210, + "name": "bytes7", + "nodeType": "ElementaryTypeName", + "src": "2622:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + }, + "visibility": "internal" + } + ], + "src": "2621:11:73" + }, + "returnParameters": { + "id": 17213, + "nodeType": "ParameterList", + "parameters": [], + "src": "2647:0:73" + }, + "scope": 25070, + "src": "2603:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17236, + "nodeType": "Block", + "src": "2773:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733829", + "id": 17231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2823:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + "value": "log(bytes8)" + }, + { + "id": 17232, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17225, + "src": "2838:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + ], + "expression": { + "id": 17229, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2799:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2803:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2799:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2799:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17228, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2783:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2783:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17235, + "nodeType": "ExpressionStatement", + "src": "2783:59:73" + } + ] + }, + "id": 17237, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes8", + "nameLocation": "2738:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17225, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2755:2:73", + "nodeType": "VariableDeclaration", + "scope": 17237, + "src": "2748:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + }, + "typeName": { + "id": 17224, + "name": "bytes8", + "nodeType": "ElementaryTypeName", + "src": "2748:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + }, + "visibility": "internal" + } + ], + "src": "2747:11:73" + }, + "returnParameters": { + "id": 17227, + "nodeType": "ParameterList", + "parameters": [], + "src": "2773:0:73" + }, + "scope": 25070, + "src": "2729:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17250, + "nodeType": "Block", + "src": "2899:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733929", + "id": 17245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2949:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + "value": "log(bytes9)" + }, + { + "id": 17246, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17239, + "src": "2964:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + ], + "expression": { + "id": 17243, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2925:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2929:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2925:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2925:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17242, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "2909:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2909:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17249, + "nodeType": "ExpressionStatement", + "src": "2909:59:73" + } + ] + }, + "id": 17251, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes9", + "nameLocation": "2864:9:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17240, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17239, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2881:2:73", + "nodeType": "VariableDeclaration", + "scope": 17251, + "src": "2874:9:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + }, + "typeName": { + "id": 17238, + "name": "bytes9", + "nodeType": "ElementaryTypeName", + "src": "2874:6:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + }, + "visibility": "internal" + } + ], + "src": "2873:11:73" + }, + "returnParameters": { + "id": 17241, + "nodeType": "ParameterList", + "parameters": [], + "src": "2899:0:73" + }, + "scope": 25070, + "src": "2855:120:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17264, + "nodeType": "Block", + "src": "3027:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313029", + "id": 17259, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3077:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + "value": "log(bytes10)" + }, + { + "id": 17260, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17253, + "src": "3093:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + ], + "expression": { + "id": 17257, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3053:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3057:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3053:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3053:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17256, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3037:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3037:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17263, + "nodeType": "ExpressionStatement", + "src": "3037:60:73" + } + ] + }, + "id": 17265, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes10", + "nameLocation": "2990:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17254, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17253, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3009:2:73", + "nodeType": "VariableDeclaration", + "scope": 17265, + "src": "3001:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + }, + "typeName": { + "id": 17252, + "name": "bytes10", + "nodeType": "ElementaryTypeName", + "src": "3001:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + }, + "visibility": "internal" + } + ], + "src": "3000:12:73" + }, + "returnParameters": { + "id": 17255, + "nodeType": "ParameterList", + "parameters": [], + "src": "3027:0:73" + }, + "scope": 25070, + "src": "2981:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17278, + "nodeType": "Block", + "src": "3156:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313129", + "id": 17273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3206:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + "value": "log(bytes11)" + }, + { + "id": 17274, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17267, + "src": "3222:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + ], + "expression": { + "id": 17271, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3182:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3186:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3182:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3182:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17270, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3166:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3166:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17277, + "nodeType": "ExpressionStatement", + "src": "3166:60:73" + } + ] + }, + "id": 17279, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes11", + "nameLocation": "3119:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17268, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17267, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3138:2:73", + "nodeType": "VariableDeclaration", + "scope": 17279, + "src": "3130:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + }, + "typeName": { + "id": 17266, + "name": "bytes11", + "nodeType": "ElementaryTypeName", + "src": "3130:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + }, + "visibility": "internal" + } + ], + "src": "3129:12:73" + }, + "returnParameters": { + "id": 17269, + "nodeType": "ParameterList", + "parameters": [], + "src": "3156:0:73" + }, + "scope": 25070, + "src": "3110:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17292, + "nodeType": "Block", + "src": "3285:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313229", + "id": 17287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3335:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + "value": "log(bytes12)" + }, + { + "id": 17288, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17281, + "src": "3351:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + ], + "expression": { + "id": 17285, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3311:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3315:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3311:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3311:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17284, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3295:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3295:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17291, + "nodeType": "ExpressionStatement", + "src": "3295:60:73" + } + ] + }, + "id": 17293, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes12", + "nameLocation": "3248:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17282, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17281, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3267:2:73", + "nodeType": "VariableDeclaration", + "scope": 17293, + "src": "3259:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + }, + "typeName": { + "id": 17280, + "name": "bytes12", + "nodeType": "ElementaryTypeName", + "src": "3259:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + }, + "visibility": "internal" + } + ], + "src": "3258:12:73" + }, + "returnParameters": { + "id": 17283, + "nodeType": "ParameterList", + "parameters": [], + "src": "3285:0:73" + }, + "scope": 25070, + "src": "3239:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17306, + "nodeType": "Block", + "src": "3414:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313329", + "id": 17301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3464:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + "value": "log(bytes13)" + }, + { + "id": 17302, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17295, + "src": "3480:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + ], + "expression": { + "id": 17299, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3440:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3444:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3440:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3440:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17298, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3424:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3424:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17305, + "nodeType": "ExpressionStatement", + "src": "3424:60:73" + } + ] + }, + "id": 17307, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes13", + "nameLocation": "3377:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17296, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17295, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3396:2:73", + "nodeType": "VariableDeclaration", + "scope": 17307, + "src": "3388:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + }, + "typeName": { + "id": 17294, + "name": "bytes13", + "nodeType": "ElementaryTypeName", + "src": "3388:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + }, + "visibility": "internal" + } + ], + "src": "3387:12:73" + }, + "returnParameters": { + "id": 17297, + "nodeType": "ParameterList", + "parameters": [], + "src": "3414:0:73" + }, + "scope": 25070, + "src": "3368:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17320, + "nodeType": "Block", + "src": "3543:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313429", + "id": 17315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3593:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + "value": "log(bytes14)" + }, + { + "id": 17316, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17309, + "src": "3609:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + ], + "expression": { + "id": 17313, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3569:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3573:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3569:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3569:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17312, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3553:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3553:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17319, + "nodeType": "ExpressionStatement", + "src": "3553:60:73" + } + ] + }, + "id": 17321, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes14", + "nameLocation": "3506:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17309, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3525:2:73", + "nodeType": "VariableDeclaration", + "scope": 17321, + "src": "3517:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + }, + "typeName": { + "id": 17308, + "name": "bytes14", + "nodeType": "ElementaryTypeName", + "src": "3517:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + }, + "visibility": "internal" + } + ], + "src": "3516:12:73" + }, + "returnParameters": { + "id": 17311, + "nodeType": "ParameterList", + "parameters": [], + "src": "3543:0:73" + }, + "scope": 25070, + "src": "3497:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17334, + "nodeType": "Block", + "src": "3672:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313529", + "id": 17329, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3722:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + "value": "log(bytes15)" + }, + { + "id": 17330, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17323, + "src": "3738:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + ], + "expression": { + "id": 17327, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3698:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17328, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3702:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3698:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3698:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17326, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3682:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3682:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17333, + "nodeType": "ExpressionStatement", + "src": "3682:60:73" + } + ] + }, + "id": 17335, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes15", + "nameLocation": "3635:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17324, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17323, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3654:2:73", + "nodeType": "VariableDeclaration", + "scope": 17335, + "src": "3646:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + }, + "typeName": { + "id": 17322, + "name": "bytes15", + "nodeType": "ElementaryTypeName", + "src": "3646:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + }, + "visibility": "internal" + } + ], + "src": "3645:12:73" + }, + "returnParameters": { + "id": 17325, + "nodeType": "ParameterList", + "parameters": [], + "src": "3672:0:73" + }, + "scope": 25070, + "src": "3626:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17348, + "nodeType": "Block", + "src": "3801:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313629", + "id": 17343, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3851:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + "value": "log(bytes16)" + }, + { + "id": 17344, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17337, + "src": "3867:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + ], + "expression": { + "id": 17341, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3827:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3831:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3827:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3827:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17340, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3811:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3811:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17347, + "nodeType": "ExpressionStatement", + "src": "3811:60:73" + } + ] + }, + "id": 17349, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes16", + "nameLocation": "3764:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17338, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17337, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3783:2:73", + "nodeType": "VariableDeclaration", + "scope": 17349, + "src": "3775:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + }, + "typeName": { + "id": 17336, + "name": "bytes16", + "nodeType": "ElementaryTypeName", + "src": "3775:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + }, + "visibility": "internal" + } + ], + "src": "3774:12:73" + }, + "returnParameters": { + "id": 17339, + "nodeType": "ParameterList", + "parameters": [], + "src": "3801:0:73" + }, + "scope": 25070, + "src": "3755:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17362, + "nodeType": "Block", + "src": "3930:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313729", + "id": 17357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3980:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + "value": "log(bytes17)" + }, + { + "id": 17358, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17351, + "src": "3996:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + ], + "expression": { + "id": 17355, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3956:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3960:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3956:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3956:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17354, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "3940:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3940:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17361, + "nodeType": "ExpressionStatement", + "src": "3940:60:73" + } + ] + }, + "id": 17363, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes17", + "nameLocation": "3893:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17351, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3912:2:73", + "nodeType": "VariableDeclaration", + "scope": 17363, + "src": "3904:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + }, + "typeName": { + "id": 17350, + "name": "bytes17", + "nodeType": "ElementaryTypeName", + "src": "3904:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + }, + "visibility": "internal" + } + ], + "src": "3903:12:73" + }, + "returnParameters": { + "id": 17353, + "nodeType": "ParameterList", + "parameters": [], + "src": "3930:0:73" + }, + "scope": 25070, + "src": "3884:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17376, + "nodeType": "Block", + "src": "4059:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313829", + "id": 17371, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4109:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + "value": "log(bytes18)" + }, + { + "id": 17372, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17365, + "src": "4125:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + ], + "expression": { + "id": 17369, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4085:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17370, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4089:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4085:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4085:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17368, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4069:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4069:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17375, + "nodeType": "ExpressionStatement", + "src": "4069:60:73" + } + ] + }, + "id": 17377, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes18", + "nameLocation": "4022:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17365, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4041:2:73", + "nodeType": "VariableDeclaration", + "scope": 17377, + "src": "4033:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + }, + "typeName": { + "id": 17364, + "name": "bytes18", + "nodeType": "ElementaryTypeName", + "src": "4033:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + }, + "visibility": "internal" + } + ], + "src": "4032:12:73" + }, + "returnParameters": { + "id": 17367, + "nodeType": "ParameterList", + "parameters": [], + "src": "4059:0:73" + }, + "scope": 25070, + "src": "4013:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17390, + "nodeType": "Block", + "src": "4188:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313929", + "id": 17385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4238:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + "value": "log(bytes19)" + }, + { + "id": 17386, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17379, + "src": "4254:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + ], + "expression": { + "id": 17383, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4214:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4218:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4214:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4214:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17382, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4198:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4198:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17389, + "nodeType": "ExpressionStatement", + "src": "4198:60:73" + } + ] + }, + "id": 17391, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes19", + "nameLocation": "4151:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17380, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17379, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4170:2:73", + "nodeType": "VariableDeclaration", + "scope": 17391, + "src": "4162:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + }, + "typeName": { + "id": 17378, + "name": "bytes19", + "nodeType": "ElementaryTypeName", + "src": "4162:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + }, + "visibility": "internal" + } + ], + "src": "4161:12:73" + }, + "returnParameters": { + "id": 17381, + "nodeType": "ParameterList", + "parameters": [], + "src": "4188:0:73" + }, + "scope": 25070, + "src": "4142:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17404, + "nodeType": "Block", + "src": "4317:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323029", + "id": 17399, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4367:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + "value": "log(bytes20)" + }, + { + "id": 17400, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17393, + "src": "4383:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "expression": { + "id": 17397, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4343:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4347:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4343:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4343:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17396, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4327:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4327:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17403, + "nodeType": "ExpressionStatement", + "src": "4327:60:73" + } + ] + }, + "id": 17405, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes20", + "nameLocation": "4280:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17394, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17393, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4299:2:73", + "nodeType": "VariableDeclaration", + "scope": 17405, + "src": "4291:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 17392, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "4291:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "src": "4290:12:73" + }, + "returnParameters": { + "id": 17395, + "nodeType": "ParameterList", + "parameters": [], + "src": "4317:0:73" + }, + "scope": 25070, + "src": "4271:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17418, + "nodeType": "Block", + "src": "4446:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323129", + "id": 17413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4496:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + "value": "log(bytes21)" + }, + { + "id": 17414, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17407, + "src": "4512:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + ], + "expression": { + "id": 17411, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4472:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4476:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4472:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4472:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17410, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4456:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4456:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17417, + "nodeType": "ExpressionStatement", + "src": "4456:60:73" + } + ] + }, + "id": 17419, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes21", + "nameLocation": "4409:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17408, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17407, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4428:2:73", + "nodeType": "VariableDeclaration", + "scope": 17419, + "src": "4420:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + }, + "typeName": { + "id": 17406, + "name": "bytes21", + "nodeType": "ElementaryTypeName", + "src": "4420:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + }, + "visibility": "internal" + } + ], + "src": "4419:12:73" + }, + "returnParameters": { + "id": 17409, + "nodeType": "ParameterList", + "parameters": [], + "src": "4446:0:73" + }, + "scope": 25070, + "src": "4400:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17432, + "nodeType": "Block", + "src": "4575:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323229", + "id": 17427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4625:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + "value": "log(bytes22)" + }, + { + "id": 17428, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17421, + "src": "4641:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + ], + "expression": { + "id": 17425, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4601:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4605:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4601:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4601:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17424, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4585:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4585:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17431, + "nodeType": "ExpressionStatement", + "src": "4585:60:73" + } + ] + }, + "id": 17433, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes22", + "nameLocation": "4538:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17421, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4557:2:73", + "nodeType": "VariableDeclaration", + "scope": 17433, + "src": "4549:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + }, + "typeName": { + "id": 17420, + "name": "bytes22", + "nodeType": "ElementaryTypeName", + "src": "4549:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + }, + "visibility": "internal" + } + ], + "src": "4548:12:73" + }, + "returnParameters": { + "id": 17423, + "nodeType": "ParameterList", + "parameters": [], + "src": "4575:0:73" + }, + "scope": 25070, + "src": "4529:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17446, + "nodeType": "Block", + "src": "4704:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323329", + "id": 17441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4754:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + "value": "log(bytes23)" + }, + { + "id": 17442, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17435, + "src": "4770:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + ], + "expression": { + "id": 17439, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4730:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4734:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4730:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4730:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17438, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4714:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4714:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17445, + "nodeType": "ExpressionStatement", + "src": "4714:60:73" + } + ] + }, + "id": 17447, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes23", + "nameLocation": "4667:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17435, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4686:2:73", + "nodeType": "VariableDeclaration", + "scope": 17447, + "src": "4678:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + }, + "typeName": { + "id": 17434, + "name": "bytes23", + "nodeType": "ElementaryTypeName", + "src": "4678:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + }, + "visibility": "internal" + } + ], + "src": "4677:12:73" + }, + "returnParameters": { + "id": 17437, + "nodeType": "ParameterList", + "parameters": [], + "src": "4704:0:73" + }, + "scope": 25070, + "src": "4658:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17460, + "nodeType": "Block", + "src": "4833:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323429", + "id": 17455, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4883:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + "value": "log(bytes24)" + }, + { + "id": 17456, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17449, + "src": "4899:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + ], + "expression": { + "id": 17453, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4859:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4863:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4859:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4859:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17452, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4843:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4843:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17459, + "nodeType": "ExpressionStatement", + "src": "4843:60:73" + } + ] + }, + "id": 17461, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes24", + "nameLocation": "4796:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17450, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17449, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4815:2:73", + "nodeType": "VariableDeclaration", + "scope": 17461, + "src": "4807:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + }, + "typeName": { + "id": 17448, + "name": "bytes24", + "nodeType": "ElementaryTypeName", + "src": "4807:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + }, + "visibility": "internal" + } + ], + "src": "4806:12:73" + }, + "returnParameters": { + "id": 17451, + "nodeType": "ParameterList", + "parameters": [], + "src": "4833:0:73" + }, + "scope": 25070, + "src": "4787:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17474, + "nodeType": "Block", + "src": "4962:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323529", + "id": 17469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5012:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + "value": "log(bytes25)" + }, + { + "id": 17470, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17463, + "src": "5028:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + ], + "expression": { + "id": 17467, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4988:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17468, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4992:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4988:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4988:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17466, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "4972:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4972:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17473, + "nodeType": "ExpressionStatement", + "src": "4972:60:73" + } + ] + }, + "id": 17475, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes25", + "nameLocation": "4925:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17464, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17463, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4944:2:73", + "nodeType": "VariableDeclaration", + "scope": 17475, + "src": "4936:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + }, + "typeName": { + "id": 17462, + "name": "bytes25", + "nodeType": "ElementaryTypeName", + "src": "4936:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + }, + "visibility": "internal" + } + ], + "src": "4935:12:73" + }, + "returnParameters": { + "id": 17465, + "nodeType": "ParameterList", + "parameters": [], + "src": "4962:0:73" + }, + "scope": 25070, + "src": "4916:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17488, + "nodeType": "Block", + "src": "5091:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323629", + "id": 17483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5141:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + "value": "log(bytes26)" + }, + { + "id": 17484, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17477, + "src": "5157:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + ], + "expression": { + "id": 17481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5117:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5121:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5117:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5117:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17480, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5101:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5101:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17487, + "nodeType": "ExpressionStatement", + "src": "5101:60:73" + } + ] + }, + "id": 17489, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes26", + "nameLocation": "5054:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17478, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17477, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5073:2:73", + "nodeType": "VariableDeclaration", + "scope": 17489, + "src": "5065:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + }, + "typeName": { + "id": 17476, + "name": "bytes26", + "nodeType": "ElementaryTypeName", + "src": "5065:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + }, + "visibility": "internal" + } + ], + "src": "5064:12:73" + }, + "returnParameters": { + "id": 17479, + "nodeType": "ParameterList", + "parameters": [], + "src": "5091:0:73" + }, + "scope": 25070, + "src": "5045:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17502, + "nodeType": "Block", + "src": "5220:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323729", + "id": 17497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5270:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + "value": "log(bytes27)" + }, + { + "id": 17498, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17491, + "src": "5286:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + ], + "expression": { + "id": 17495, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5246:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17496, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5250:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5246:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5246:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17494, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5230:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5230:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17501, + "nodeType": "ExpressionStatement", + "src": "5230:60:73" + } + ] + }, + "id": 17503, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes27", + "nameLocation": "5183:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17492, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17491, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5202:2:73", + "nodeType": "VariableDeclaration", + "scope": 17503, + "src": "5194:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + }, + "typeName": { + "id": 17490, + "name": "bytes27", + "nodeType": "ElementaryTypeName", + "src": "5194:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + }, + "visibility": "internal" + } + ], + "src": "5193:12:73" + }, + "returnParameters": { + "id": 17493, + "nodeType": "ParameterList", + "parameters": [], + "src": "5220:0:73" + }, + "scope": 25070, + "src": "5174:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17516, + "nodeType": "Block", + "src": "5349:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323829", + "id": 17511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5399:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + "value": "log(bytes28)" + }, + { + "id": 17512, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17505, + "src": "5415:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + ], + "expression": { + "id": 17509, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5375:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5379:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5375:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5375:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17508, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5359:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5359:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17515, + "nodeType": "ExpressionStatement", + "src": "5359:60:73" + } + ] + }, + "id": 17517, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes28", + "nameLocation": "5312:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17505, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5331:2:73", + "nodeType": "VariableDeclaration", + "scope": 17517, + "src": "5323:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + }, + "typeName": { + "id": 17504, + "name": "bytes28", + "nodeType": "ElementaryTypeName", + "src": "5323:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + }, + "visibility": "internal" + } + ], + "src": "5322:12:73" + }, + "returnParameters": { + "id": 17507, + "nodeType": "ParameterList", + "parameters": [], + "src": "5349:0:73" + }, + "scope": 25070, + "src": "5303:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17530, + "nodeType": "Block", + "src": "5478:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323929", + "id": 17525, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5528:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + "value": "log(bytes29)" + }, + { + "id": 17526, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17519, + "src": "5544:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + ], + "expression": { + "id": 17523, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5504:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17524, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5508:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5504:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5504:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17522, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5488:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5488:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17529, + "nodeType": "ExpressionStatement", + "src": "5488:60:73" + } + ] + }, + "id": 17531, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes29", + "nameLocation": "5441:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17520, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17519, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5460:2:73", + "nodeType": "VariableDeclaration", + "scope": 17531, + "src": "5452:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + }, + "typeName": { + "id": 17518, + "name": "bytes29", + "nodeType": "ElementaryTypeName", + "src": "5452:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + }, + "visibility": "internal" + } + ], + "src": "5451:12:73" + }, + "returnParameters": { + "id": 17521, + "nodeType": "ParameterList", + "parameters": [], + "src": "5478:0:73" + }, + "scope": 25070, + "src": "5432:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17544, + "nodeType": "Block", + "src": "5607:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333029", + "id": 17539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5657:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + "value": "log(bytes30)" + }, + { + "id": 17540, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17533, + "src": "5673:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + ], + "expression": { + "id": 17537, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5633:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5637:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5633:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5633:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17536, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5617:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5617:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17543, + "nodeType": "ExpressionStatement", + "src": "5617:60:73" + } + ] + }, + "id": 17545, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes30", + "nameLocation": "5570:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17533, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5589:2:73", + "nodeType": "VariableDeclaration", + "scope": 17545, + "src": "5581:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + }, + "typeName": { + "id": 17532, + "name": "bytes30", + "nodeType": "ElementaryTypeName", + "src": "5581:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + }, + "visibility": "internal" + } + ], + "src": "5580:12:73" + }, + "returnParameters": { + "id": 17535, + "nodeType": "ParameterList", + "parameters": [], + "src": "5607:0:73" + }, + "scope": 25070, + "src": "5561:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17558, + "nodeType": "Block", + "src": "5736:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333129", + "id": 17553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5786:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + "value": "log(bytes31)" + }, + { + "id": 17554, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17547, + "src": "5802:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + ], + "expression": { + "id": 17551, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5762:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5766:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5762:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5762:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17550, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5746:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5746:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17557, + "nodeType": "ExpressionStatement", + "src": "5746:60:73" + } + ] + }, + "id": 17559, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes31", + "nameLocation": "5699:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17547, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5718:2:73", + "nodeType": "VariableDeclaration", + "scope": 17559, + "src": "5710:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + }, + "typeName": { + "id": 17546, + "name": "bytes31", + "nodeType": "ElementaryTypeName", + "src": "5710:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + }, + "visibility": "internal" + } + ], + "src": "5709:12:73" + }, + "returnParameters": { + "id": 17549, + "nodeType": "ParameterList", + "parameters": [], + "src": "5736:0:73" + }, + "scope": 25070, + "src": "5690:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17572, + "nodeType": "Block", + "src": "5865:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333229", + "id": 17567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5915:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + "value": "log(bytes32)" + }, + { + "id": 17568, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17561, + "src": "5931:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 17565, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5891:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5895:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5891:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5891:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17564, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5875:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5875:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17571, + "nodeType": "ExpressionStatement", + "src": "5875:60:73" + } + ] + }, + "id": 17573, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes32", + "nameLocation": "5828:10:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17562, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17561, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5847:2:73", + "nodeType": "VariableDeclaration", + "scope": 17573, + "src": "5839:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 17560, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5839:7:73", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5838:12:73" + }, + "returnParameters": { + "id": 17563, + "nodeType": "ParameterList", + "parameters": [], + "src": "5865:0:73" + }, + "scope": 25070, + "src": "5819:123:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17586, + "nodeType": "Block", + "src": "5987:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7432353629", + "id": 17581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6037:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + "value": "log(uint256)" + }, + { + "id": 17582, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17575, + "src": "6053:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17579, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6013:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6017:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6013:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6013:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17578, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "5997:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5997:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17585, + "nodeType": "ExpressionStatement", + "src": "5997:60:73" + } + ] + }, + "id": 17587, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5957:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17576, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17575, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5969:2:73", + "nodeType": "VariableDeclaration", + "scope": 17587, + "src": "5961:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17574, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5961:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5960:12:73" + }, + "returnParameters": { + "id": 17577, + "nodeType": "ParameterList", + "parameters": [], + "src": "5987:0:73" + }, + "scope": 25070, + "src": "5948:116:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17600, + "nodeType": "Block", + "src": "6115:76:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 17595, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6165:13:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 17596, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17589, + "src": "6180:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17593, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6141:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6145:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6141:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6141:42:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17592, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6125:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6125:59:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17599, + "nodeType": "ExpressionStatement", + "src": "6125:59:73" + } + ] + }, + "id": 17601, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6079:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17590, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17589, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6097:2:73", + "nodeType": "VariableDeclaration", + "scope": 17601, + "src": "6083:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17588, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6083:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6082:18:73" + }, + "returnParameters": { + "id": 17591, + "nodeType": "ParameterList", + "parameters": [], + "src": "6115:0:73" + }, + "scope": 25070, + "src": "6070:121:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17614, + "nodeType": "Block", + "src": "6233:74:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 17609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6283:11:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 17610, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17603, + "src": "6296:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17607, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6259:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6263:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6259:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6259:40:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17606, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6243:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6243:57:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17613, + "nodeType": "ExpressionStatement", + "src": "6243:57:73" + } + ] + }, + "id": 17615, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6206:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17603, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6215:2:73", + "nodeType": "VariableDeclaration", + "scope": 17615, + "src": "6210:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17602, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6210:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6209:9:73" + }, + "returnParameters": { + "id": 17605, + "nodeType": "ParameterList", + "parameters": [], + "src": "6233:0:73" + }, + "scope": 25070, + "src": "6197:110:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17628, + "nodeType": "Block", + "src": "6352:77:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 17623, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6402:14:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 17624, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17617, + "src": "6418:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17621, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6378:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6382:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6378:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6378:43:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17620, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6362:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6362:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17627, + "nodeType": "ExpressionStatement", + "src": "6362:60:73" + } + ] + }, + "id": 17629, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6322:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17618, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17617, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6334:2:73", + "nodeType": "VariableDeclaration", + "scope": 17629, + "src": "6326:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17616, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6326:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6325:12:73" + }, + "returnParameters": { + "id": 17619, + "nodeType": "ParameterList", + "parameters": [], + "src": "6352:0:73" + }, + "scope": 25070, + "src": "6313:116:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17645, + "nodeType": "Block", + "src": "6486:89:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e7432353629", + "id": 17639, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6536:22:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f666715aa6b8e8ce32bd39173f51eea0643fdd246a826c4756c2f168022b6eb5", + "typeString": "literal_string \"log(uint256,uint256)\"" + }, + "value": "log(uint256,uint256)" + }, + { + "id": 17640, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17631, + "src": "6560:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17641, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17633, + "src": "6564:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f666715aa6b8e8ce32bd39173f51eea0643fdd246a826c4756c2f168022b6eb5", + "typeString": "literal_string \"log(uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17637, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6512:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17638, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6516:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6512:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6512:55:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17636, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6496:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6496:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17644, + "nodeType": "ExpressionStatement", + "src": "6496:72:73" + } + ] + }, + "id": 17646, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6444:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17631, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6456:2:73", + "nodeType": "VariableDeclaration", + "scope": 17646, + "src": "6448:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17630, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6448:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17633, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6468:2:73", + "nodeType": "VariableDeclaration", + "scope": 17646, + "src": "6460:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17632, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6460:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6447:24:73" + }, + "returnParameters": { + "id": 17635, + "nodeType": "ParameterList", + "parameters": [], + "src": "6486:0:73" + }, + "scope": 25070, + "src": "6435:140:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17662, + "nodeType": "Block", + "src": "6638:88:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e6729", + "id": 17656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6688:21:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_643fd0df4c7dfb004c6169012c8aec390bd7246941d7fe467022f10f2da987c3", + "typeString": "literal_string \"log(uint256,string)\"" + }, + "value": "log(uint256,string)" + }, + { + "id": 17657, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17648, + "src": "6711:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17658, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17650, + "src": "6715:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_643fd0df4c7dfb004c6169012c8aec390bd7246941d7fe467022f10f2da987c3", + "typeString": "literal_string \"log(uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17654, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6664:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6668:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6664:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6664:54:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17653, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6648:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6648:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17661, + "nodeType": "ExpressionStatement", + "src": "6648:71:73" + } + ] + }, + "id": 17663, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6590:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17651, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17648, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6602:2:73", + "nodeType": "VariableDeclaration", + "scope": 17663, + "src": "6594:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17647, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6594:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17650, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6620:2:73", + "nodeType": "VariableDeclaration", + "scope": 17663, + "src": "6606:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17649, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6606:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6593:30:73" + }, + "returnParameters": { + "id": 17652, + "nodeType": "ParameterList", + "parameters": [], + "src": "6638:0:73" + }, + "scope": 25070, + "src": "6581:145:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17679, + "nodeType": "Block", + "src": "6780:86:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c29", + "id": 17673, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6830:19:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c9d7eb3a75db315653a5c0996fcea52a2b2692643ce8ace4d8b12bb9da6c1f2", + "typeString": "literal_string \"log(uint256,bool)\"" + }, + "value": "log(uint256,bool)" + }, + { + "id": 17674, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17665, + "src": "6851:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17675, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17667, + "src": "6855:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c9d7eb3a75db315653a5c0996fcea52a2b2692643ce8ace4d8b12bb9da6c1f2", + "typeString": "literal_string \"log(uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17671, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6806:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6810:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6806:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6806:52:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17670, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6790:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6790:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17678, + "nodeType": "ExpressionStatement", + "src": "6790:69:73" + } + ] + }, + "id": 17680, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6741:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17665, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6753:2:73", + "nodeType": "VariableDeclaration", + "scope": 17680, + "src": "6745:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17664, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6745:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17667, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6762:2:73", + "nodeType": "VariableDeclaration", + "scope": 17680, + "src": "6757:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17666, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6757:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6744:21:73" + }, + "returnParameters": { + "id": 17669, + "nodeType": "ParameterList", + "parameters": [], + "src": "6780:0:73" + }, + "scope": 25070, + "src": "6732:134:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17696, + "nodeType": "Block", + "src": "6923:89:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c6164647265737329", + "id": 17690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6973:22:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_69276c86d20522c49707664308d424b84905ef92219f3146bcaacedc72eaed27", + "typeString": "literal_string \"log(uint256,address)\"" + }, + "value": "log(uint256,address)" + }, + { + "id": 17691, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17682, + "src": "6997:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17692, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17684, + "src": "7001:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_69276c86d20522c49707664308d424b84905ef92219f3146bcaacedc72eaed27", + "typeString": "literal_string \"log(uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17688, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6949:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17689, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6953:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6949:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6949:55:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17687, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "6933:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6933:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17695, + "nodeType": "ExpressionStatement", + "src": "6933:72:73" + } + ] + }, + "id": 17697, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6881:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17685, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17682, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6893:2:73", + "nodeType": "VariableDeclaration", + "scope": 17697, + "src": "6885:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17681, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6885:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17684, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6905:2:73", + "nodeType": "VariableDeclaration", + "scope": 17697, + "src": "6897:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17683, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6897:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6884:24:73" + }, + "returnParameters": { + "id": 17686, + "nodeType": "ParameterList", + "parameters": [], + "src": "6923:0:73" + }, + "scope": 25070, + "src": "6872:140:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17713, + "nodeType": "Block", + "src": "7075:88:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e7432353629", + "id": 17707, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7125:21:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b60e72ccf6d57ab53eb84d7e94a9545806ed7f93c4d5673f11a64f03471e584e", + "typeString": "literal_string \"log(string,uint256)\"" + }, + "value": "log(string,uint256)" + }, + { + "id": 17708, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17699, + "src": "7148:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17709, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17701, + "src": "7152:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b60e72ccf6d57ab53eb84d7e94a9545806ed7f93c4d5673f11a64f03471e584e", + "typeString": "literal_string \"log(string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17705, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7101:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17706, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7105:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7101:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7101:54:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17704, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7085:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7085:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17712, + "nodeType": "ExpressionStatement", + "src": "7085:71:73" + } + ] + }, + "id": 17714, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7027:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17702, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17699, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7045:2:73", + "nodeType": "VariableDeclaration", + "scope": 17714, + "src": "7031:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17698, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7031:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17701, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7057:2:73", + "nodeType": "VariableDeclaration", + "scope": 17714, + "src": "7049:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17700, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7049:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7030:30:73" + }, + "returnParameters": { + "id": 17703, + "nodeType": "ParameterList", + "parameters": [], + "src": "7075:0:73" + }, + "scope": 25070, + "src": "7018:145:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17730, + "nodeType": "Block", + "src": "7232:87:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e6729", + "id": 17724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7282:20:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + "value": "log(string,string)" + }, + { + "id": 17725, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17716, + "src": "7304:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17726, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17718, + "src": "7308:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17722, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7258:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7262:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7258:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7258:53:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17721, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7242:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7242:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17729, + "nodeType": "ExpressionStatement", + "src": "7242:70:73" + } + ] + }, + "id": 17731, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7178:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17719, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17716, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7196:2:73", + "nodeType": "VariableDeclaration", + "scope": 17731, + "src": "7182:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17715, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7182:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17718, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7214:2:73", + "nodeType": "VariableDeclaration", + "scope": 17731, + "src": "7200:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17717, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7200:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7181:36:73" + }, + "returnParameters": { + "id": 17720, + "nodeType": "ParameterList", + "parameters": [], + "src": "7232:0:73" + }, + "scope": 25070, + "src": "7169:150:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17747, + "nodeType": "Block", + "src": "7379:85:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c29", + "id": 17741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7429:18:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + "value": "log(string,bool)" + }, + { + "id": 17742, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17733, + "src": "7449:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17743, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17735, + "src": "7453:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17739, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7405:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7409:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7405:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7405:51:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17738, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7389:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7389:68:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17746, + "nodeType": "ExpressionStatement", + "src": "7389:68:73" + } + ] + }, + "id": 17748, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7334:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17736, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17733, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7352:2:73", + "nodeType": "VariableDeclaration", + "scope": 17748, + "src": "7338:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17732, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7338:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17735, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7361:2:73", + "nodeType": "VariableDeclaration", + "scope": 17748, + "src": "7356:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17734, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7356:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7337:27:73" + }, + "returnParameters": { + "id": 17737, + "nodeType": "ParameterList", + "parameters": [], + "src": "7379:0:73" + }, + "scope": 25070, + "src": "7325:139:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17764, + "nodeType": "Block", + "src": "7527:88:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c6164647265737329", + "id": 17758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7577:21:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + "value": "log(string,address)" + }, + { + "id": 17759, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17750, + "src": "7600:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17760, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17752, + "src": "7604:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17756, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7553:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7557:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7553:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7553:54:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17755, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7537:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17762, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7537:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17763, + "nodeType": "ExpressionStatement", + "src": "7537:71:73" + } + ] + }, + "id": 17765, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7479:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17753, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17750, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7497:2:73", + "nodeType": "VariableDeclaration", + "scope": 17765, + "src": "7483:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17749, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7483:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17752, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7509:2:73", + "nodeType": "VariableDeclaration", + "scope": 17765, + "src": "7501:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17751, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7501:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7482:30:73" + }, + "returnParameters": { + "id": 17754, + "nodeType": "ParameterList", + "parameters": [], + "src": "7527:0:73" + }, + "scope": 25070, + "src": "7470:145:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17781, + "nodeType": "Block", + "src": "7669:86:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e7432353629", + "id": 17775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7719:19:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_399174d3d0c43cb9677bce4fa1b5541fc60a002cbf23e154f1abcbb5f02cf2d7", + "typeString": "literal_string \"log(bool,uint256)\"" + }, + "value": "log(bool,uint256)" + }, + { + "id": 17776, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17767, + "src": "7740:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17777, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17769, + "src": "7744:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_399174d3d0c43cb9677bce4fa1b5541fc60a002cbf23e154f1abcbb5f02cf2d7", + "typeString": "literal_string \"log(bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17773, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7695:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7699:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7695:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17778, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7695:52:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17772, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7679:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7679:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17780, + "nodeType": "ExpressionStatement", + "src": "7679:69:73" + } + ] + }, + "id": 17782, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7630:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17767, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7639:2:73", + "nodeType": "VariableDeclaration", + "scope": 17782, + "src": "7634:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17766, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7634:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17769, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7651:2:73", + "nodeType": "VariableDeclaration", + "scope": 17782, + "src": "7643:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17768, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7643:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7633:21:73" + }, + "returnParameters": { + "id": 17771, + "nodeType": "ParameterList", + "parameters": [], + "src": "7669:0:73" + }, + "scope": 25070, + "src": "7621:134:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17798, + "nodeType": "Block", + "src": "7815:85:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e6729", + "id": 17792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7865:18:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + "value": "log(bool,string)" + }, + { + "id": 17793, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17784, + "src": "7885:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17794, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17786, + "src": "7889:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17790, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7841:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17791, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7845:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7841:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17795, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7841:51:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17789, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7825:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7825:68:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17797, + "nodeType": "ExpressionStatement", + "src": "7825:68:73" + } + ] + }, + "id": 17799, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7770:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17784, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7779:2:73", + "nodeType": "VariableDeclaration", + "scope": 17799, + "src": "7774:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17783, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7774:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17786, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7797:2:73", + "nodeType": "VariableDeclaration", + "scope": 17799, + "src": "7783:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17785, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7783:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7773:27:73" + }, + "returnParameters": { + "id": 17788, + "nodeType": "ParameterList", + "parameters": [], + "src": "7815:0:73" + }, + "scope": 25070, + "src": "7761:139:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17815, + "nodeType": "Block", + "src": "7951:83:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c29", + "id": 17809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8001:16:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + "value": "log(bool,bool)" + }, + { + "id": 17810, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17801, + "src": "8019:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17811, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17803, + "src": "8023:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17807, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7977:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7981:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7977:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7977:49:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17806, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "7961:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17813, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7961:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17814, + "nodeType": "ExpressionStatement", + "src": "7961:66:73" + } + ] + }, + "id": 17816, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7915:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17801, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7924:2:73", + "nodeType": "VariableDeclaration", + "scope": 17816, + "src": "7919:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17800, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7919:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17803, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7933:2:73", + "nodeType": "VariableDeclaration", + "scope": 17816, + "src": "7928:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17802, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7928:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7918:18:73" + }, + "returnParameters": { + "id": 17805, + "nodeType": "ParameterList", + "parameters": [], + "src": "7951:0:73" + }, + "scope": 25070, + "src": "7906:128:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17832, + "nodeType": "Block", + "src": "8088:86:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c6164647265737329", + "id": 17826, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8138:19:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + "value": "log(bool,address)" + }, + { + "id": 17827, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17818, + "src": "8159:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17828, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17820, + "src": "8163:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17824, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8114:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8118:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8114:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8114:52:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17823, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8098:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17830, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8098:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17831, + "nodeType": "ExpressionStatement", + "src": "8098:69:73" + } + ] + }, + "id": 17833, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8049:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17821, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17818, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8058:2:73", + "nodeType": "VariableDeclaration", + "scope": 17833, + "src": "8053:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17817, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8053:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17820, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8070:2:73", + "nodeType": "VariableDeclaration", + "scope": 17833, + "src": "8062:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17819, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8062:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8052:21:73" + }, + "returnParameters": { + "id": 17822, + "nodeType": "ParameterList", + "parameters": [], + "src": "8088:0:73" + }, + "scope": 25070, + "src": "8040:134:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17849, + "nodeType": "Block", + "src": "8231:89:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e7432353629", + "id": 17843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8281:22:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8309e8a8b132619bdb25dffa9d595ba1ecb7835540fd62622dad33018c4a0d3e", + "typeString": "literal_string \"log(address,uint256)\"" + }, + "value": "log(address,uint256)" + }, + { + "id": 17844, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17835, + "src": "8305:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17845, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17837, + "src": "8309:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8309e8a8b132619bdb25dffa9d595ba1ecb7835540fd62622dad33018c4a0d3e", + "typeString": "literal_string \"log(address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17841, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8257:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17842, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8261:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8257:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8257:55:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17840, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8241:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8241:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17848, + "nodeType": "ExpressionStatement", + "src": "8241:72:73" + } + ] + }, + "id": 17850, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8189:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17835, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8201:2:73", + "nodeType": "VariableDeclaration", + "scope": 17850, + "src": "8193:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17834, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8193:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17837, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8213:2:73", + "nodeType": "VariableDeclaration", + "scope": 17850, + "src": "8205:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17836, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8205:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8192:24:73" + }, + "returnParameters": { + "id": 17839, + "nodeType": "ParameterList", + "parameters": [], + "src": "8231:0:73" + }, + "scope": 25070, + "src": "8180:140:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17866, + "nodeType": "Block", + "src": "8383:88:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e6729", + "id": 17860, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8433:21:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + "value": "log(address,string)" + }, + { + "id": 17861, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17852, + "src": "8456:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17862, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17854, + "src": "8460:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17858, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8409:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8413:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8409:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8409:54:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17857, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8393:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17864, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8393:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17865, + "nodeType": "ExpressionStatement", + "src": "8393:71:73" + } + ] + }, + "id": 17867, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8335:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17855, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17852, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8347:2:73", + "nodeType": "VariableDeclaration", + "scope": 17867, + "src": "8339:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17851, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8339:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17854, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8365:2:73", + "nodeType": "VariableDeclaration", + "scope": 17867, + "src": "8351:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17853, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8351:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8338:30:73" + }, + "returnParameters": { + "id": 17856, + "nodeType": "ParameterList", + "parameters": [], + "src": "8383:0:73" + }, + "scope": 25070, + "src": "8326:145:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17883, + "nodeType": "Block", + "src": "8525:86:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c29", + "id": 17877, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8575:19:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + "value": "log(address,bool)" + }, + { + "id": 17878, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17869, + "src": "8596:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17879, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17871, + "src": "8600:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17875, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8551:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8555:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8551:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8551:52:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17874, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8535:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8535:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17882, + "nodeType": "ExpressionStatement", + "src": "8535:69:73" + } + ] + }, + "id": 17884, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8486:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17872, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17869, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8498:2:73", + "nodeType": "VariableDeclaration", + "scope": 17884, + "src": "8490:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8490:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17871, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8507:2:73", + "nodeType": "VariableDeclaration", + "scope": 17884, + "src": "8502:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17870, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8502:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8489:21:73" + }, + "returnParameters": { + "id": 17873, + "nodeType": "ParameterList", + "parameters": [], + "src": "8525:0:73" + }, + "scope": 25070, + "src": "8477:134:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17900, + "nodeType": "Block", + "src": "8668:89:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c6164647265737329", + "id": 17894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8718:22:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + "value": "log(address,address)" + }, + { + "id": 17895, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17886, + "src": "8742:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17896, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17888, + "src": "8746:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17892, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8694:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17893, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8698:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8694:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8694:55:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17891, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8678:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8678:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17899, + "nodeType": "ExpressionStatement", + "src": "8678:72:73" + } + ] + }, + "id": 17901, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8626:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17889, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17886, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8638:2:73", + "nodeType": "VariableDeclaration", + "scope": 17901, + "src": "8630:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17885, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8630:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17888, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8650:2:73", + "nodeType": "VariableDeclaration", + "scope": 17901, + "src": "8642:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17887, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8642:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8629:24:73" + }, + "returnParameters": { + "id": 17890, + "nodeType": "ParameterList", + "parameters": [], + "src": "8668:0:73" + }, + "scope": 25070, + "src": "8617:140:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17920, + "nodeType": "Block", + "src": "8826:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e7432353629", + "id": 17913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8876:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1ed7a3c020c4f5939654147940a147a8e4e638fa1e8f5664b5efbd1e1f3c4a6", + "typeString": "literal_string \"log(uint256,uint256,uint256)\"" + }, + "value": "log(uint256,uint256,uint256)" + }, + { + "id": 17914, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17903, + "src": "8908:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17915, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17905, + "src": "8912:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17916, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17907, + "src": "8916:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d1ed7a3c020c4f5939654147940a147a8e4e638fa1e8f5664b5efbd1e1f3c4a6", + "typeString": "literal_string \"log(uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17911, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8852:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "8856:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8852:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8852:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17910, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "8836:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8836:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17919, + "nodeType": "ExpressionStatement", + "src": "8836:84:73" + } + ] + }, + "id": 17921, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8772:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17903, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8784:2:73", + "nodeType": "VariableDeclaration", + "scope": 17921, + "src": "8776:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17902, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8776:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17905, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8796:2:73", + "nodeType": "VariableDeclaration", + "scope": 17921, + "src": "8788:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17904, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8788:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17907, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8808:2:73", + "nodeType": "VariableDeclaration", + "scope": 17921, + "src": "8800:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8800:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8775:36:73" + }, + "returnParameters": { + "id": 17909, + "nodeType": "ParameterList", + "parameters": [], + "src": "8826:0:73" + }, + "scope": 25070, + "src": "8763:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17940, + "nodeType": "Block", + "src": "9002:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e6729", + "id": 17933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9052:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_71d04af2c0d71f035017c73ec9440d8cef06157a84f0febe8ec74eca98138262", + "typeString": "literal_string \"log(uint256,uint256,string)\"" + }, + "value": "log(uint256,uint256,string)" + }, + { + "id": 17934, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17923, + "src": "9083:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17935, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17925, + "src": "9087:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17936, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17927, + "src": "9091:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_71d04af2c0d71f035017c73ec9440d8cef06157a84f0febe8ec74eca98138262", + "typeString": "literal_string \"log(uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17931, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9028:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9032:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9028:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9028:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17930, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9012:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9012:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17939, + "nodeType": "ExpressionStatement", + "src": "9012:83:73" + } + ] + }, + "id": 17941, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8942:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17923, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8954:2:73", + "nodeType": "VariableDeclaration", + "scope": 17941, + "src": "8946:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17922, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8946:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17925, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8966:2:73", + "nodeType": "VariableDeclaration", + "scope": 17941, + "src": "8958:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8958:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17927, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8984:2:73", + "nodeType": "VariableDeclaration", + "scope": 17941, + "src": "8970:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17926, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8970:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8945:42:73" + }, + "returnParameters": { + "id": 17929, + "nodeType": "ParameterList", + "parameters": [], + "src": "9002:0:73" + }, + "scope": 25070, + "src": "8933:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17960, + "nodeType": "Block", + "src": "9168:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c29", + "id": 17953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9218:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4766da72b632663e3b9911d02d6f30e0cf213f928bdb9f6fd840851875d9fce0", + "typeString": "literal_string \"log(uint256,uint256,bool)\"" + }, + "value": "log(uint256,uint256,bool)" + }, + { + "id": 17954, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17943, + "src": "9247:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17955, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17945, + "src": "9251:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17956, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17947, + "src": "9255:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4766da72b632663e3b9911d02d6f30e0cf213f928bdb9f6fd840851875d9fce0", + "typeString": "literal_string \"log(uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17951, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9194:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9198:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9194:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9194:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17950, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9178:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9178:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17959, + "nodeType": "ExpressionStatement", + "src": "9178:81:73" + } + ] + }, + "id": 17961, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9117:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17943, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9129:2:73", + "nodeType": "VariableDeclaration", + "scope": 17961, + "src": "9121:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17942, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9121:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17945, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9141:2:73", + "nodeType": "VariableDeclaration", + "scope": 17961, + "src": "9133:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17944, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9133:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17947, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9150:2:73", + "nodeType": "VariableDeclaration", + "scope": 17961, + "src": "9145:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17946, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9145:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9120:33:73" + }, + "returnParameters": { + "id": 17949, + "nodeType": "ParameterList", + "parameters": [], + "src": "9168:0:73" + }, + "scope": 25070, + "src": "9108:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 17980, + "nodeType": "Block", + "src": "9335:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c6164647265737329", + "id": 17973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9385:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c96b331e359852d9a7254105926ce8dfcc42dd4fce56a736cfb981b4c2984c1", + "typeString": "literal_string \"log(uint256,uint256,address)\"" + }, + "value": "log(uint256,uint256,address)" + }, + { + "id": 17974, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17963, + "src": "9417:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17975, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17965, + "src": "9421:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17976, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17967, + "src": "9425:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5c96b331e359852d9a7254105926ce8dfcc42dd4fce56a736cfb981b4c2984c1", + "typeString": "literal_string \"log(uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17971, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9361:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9365:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9361:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9361:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17970, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9345:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9345:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17979, + "nodeType": "ExpressionStatement", + "src": "9345:84:73" + } + ] + }, + "id": 17981, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9281:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17968, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17963, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9293:2:73", + "nodeType": "VariableDeclaration", + "scope": 17981, + "src": "9285:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17962, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9285:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17965, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9305:2:73", + "nodeType": "VariableDeclaration", + "scope": 17981, + "src": "9297:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17964, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9297:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17967, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9317:2:73", + "nodeType": "VariableDeclaration", + "scope": 17981, + "src": "9309:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17966, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9309:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9284:36:73" + }, + "returnParameters": { + "id": 17969, + "nodeType": "ParameterList", + "parameters": [], + "src": "9335:0:73" + }, + "scope": 25070, + "src": "9272:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18000, + "nodeType": "Block", + "src": "9511:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e7432353629", + "id": 17993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9561:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_37aa7d4c835edd965b1201d9c03f13272bd937d8e244ab84a153693e2f2f30c0", + "typeString": "literal_string \"log(uint256,string,uint256)\"" + }, + "value": "log(uint256,string,uint256)" + }, + { + "id": 17994, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17983, + "src": "9592:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17995, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17985, + "src": "9596:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17996, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17987, + "src": "9600:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_37aa7d4c835edd965b1201d9c03f13272bd937d8e244ab84a153693e2f2f30c0", + "typeString": "literal_string \"log(uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17991, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9537:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9541:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9537:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9537:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17990, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9521:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 17998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9521:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17999, + "nodeType": "ExpressionStatement", + "src": "9521:83:73" + } + ] + }, + "id": 18001, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9451:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 17988, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17983, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9463:2:73", + "nodeType": "VariableDeclaration", + "scope": 18001, + "src": "9455:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9455:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17985, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9481:2:73", + "nodeType": "VariableDeclaration", + "scope": 18001, + "src": "9467:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17984, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9467:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17987, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9493:2:73", + "nodeType": "VariableDeclaration", + "scope": 18001, + "src": "9485:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9485:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9454:42:73" + }, + "returnParameters": { + "id": 17989, + "nodeType": "ParameterList", + "parameters": [], + "src": "9511:0:73" + }, + "scope": 25070, + "src": "9442:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18020, + "nodeType": "Block", + "src": "9692:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e6729", + "id": 18013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9742:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b115611f13262589f336fb650c9278bd1879123a635e6a638f94e6cbdb1c1b35", + "typeString": "literal_string \"log(uint256,string,string)\"" + }, + "value": "log(uint256,string,string)" + }, + { + "id": 18014, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18003, + "src": "9772:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18015, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18005, + "src": "9776:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18016, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18007, + "src": "9780:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b115611f13262589f336fb650c9278bd1879123a635e6a638f94e6cbdb1c1b35", + "typeString": "literal_string \"log(uint256,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18011, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9718:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9722:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9718:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9718:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18010, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9702:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9702:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18019, + "nodeType": "ExpressionStatement", + "src": "9702:82:73" + } + ] + }, + "id": 18021, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9626:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18003, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9638:2:73", + "nodeType": "VariableDeclaration", + "scope": 18021, + "src": "9630:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18002, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9630:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18005, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9656:2:73", + "nodeType": "VariableDeclaration", + "scope": 18021, + "src": "9642:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18004, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9642:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18007, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9674:2:73", + "nodeType": "VariableDeclaration", + "scope": 18021, + "src": "9660:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18006, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9660:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9629:48:73" + }, + "returnParameters": { + "id": 18009, + "nodeType": "ParameterList", + "parameters": [], + "src": "9692:0:73" + }, + "scope": 25070, + "src": "9617:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18040, + "nodeType": "Block", + "src": "9863:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c29", + "id": 18033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9913:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ceda75ad13e534e8b5089564c6a40ae80cd33aac3e77ef1f87a233c1d43067a", + "typeString": "literal_string \"log(uint256,string,bool)\"" + }, + "value": "log(uint256,string,bool)" + }, + { + "id": 18034, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18023, + "src": "9941:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18035, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18025, + "src": "9945:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18036, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18027, + "src": "9949:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4ceda75ad13e534e8b5089564c6a40ae80cd33aac3e77ef1f87a233c1d43067a", + "typeString": "literal_string \"log(uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18031, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9889:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18032, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "9893:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9889:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9889:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18030, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "9873:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9873:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18039, + "nodeType": "ExpressionStatement", + "src": "9873:80:73" + } + ] + }, + "id": 18041, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9806:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18023, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9818:2:73", + "nodeType": "VariableDeclaration", + "scope": 18041, + "src": "9810:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18022, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9810:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18025, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9836:2:73", + "nodeType": "VariableDeclaration", + "scope": 18041, + "src": "9822:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18024, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9822:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18027, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9845:2:73", + "nodeType": "VariableDeclaration", + "scope": 18041, + "src": "9840:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18026, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9840:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9809:39:73" + }, + "returnParameters": { + "id": 18029, + "nodeType": "ParameterList", + "parameters": [], + "src": "9863:0:73" + }, + "scope": 25070, + "src": "9797:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18060, + "nodeType": "Block", + "src": "10035:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c6164647265737329", + "id": 18053, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10085:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7afac959002f7dcdccdf461a7e6db7810eebd7217c0b7c30905b3c7e89b561f2", + "typeString": "literal_string \"log(uint256,string,address)\"" + }, + "value": "log(uint256,string,address)" + }, + { + "id": 18054, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18043, + "src": "10116:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18055, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18045, + "src": "10120:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18056, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18047, + "src": "10124:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7afac959002f7dcdccdf461a7e6db7810eebd7217c0b7c30905b3c7e89b561f2", + "typeString": "literal_string \"log(uint256,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18051, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10061:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18052, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10065:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10061:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10061:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18050, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10045:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10045:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18059, + "nodeType": "ExpressionStatement", + "src": "10045:83:73" + } + ] + }, + "id": 18061, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9975:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18048, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18043, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9987:2:73", + "nodeType": "VariableDeclaration", + "scope": 18061, + "src": "9979:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18042, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9979:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18045, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10005:2:73", + "nodeType": "VariableDeclaration", + "scope": 18061, + "src": "9991:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18044, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9991:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18047, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10017:2:73", + "nodeType": "VariableDeclaration", + "scope": 18061, + "src": "10009:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18046, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10009:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9978:42:73" + }, + "returnParameters": { + "id": 18049, + "nodeType": "ParameterList", + "parameters": [], + "src": "10035:0:73" + }, + "scope": 25070, + "src": "9966:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18080, + "nodeType": "Block", + "src": "10201:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e7432353629", + "id": 18073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10251:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_200980147f19b368809aab41084ebebcf1e19d47edd13f2d540a6327cec213d1", + "typeString": "literal_string \"log(uint256,bool,uint256)\"" + }, + "value": "log(uint256,bool,uint256)" + }, + { + "id": 18074, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18063, + "src": "10280:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18075, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18065, + "src": "10284:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18076, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18067, + "src": "10288:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_200980147f19b368809aab41084ebebcf1e19d47edd13f2d540a6327cec213d1", + "typeString": "literal_string \"log(uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18071, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10227:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18072, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10231:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10227:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10227:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18070, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10211:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10211:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18079, + "nodeType": "ExpressionStatement", + "src": "10211:81:73" + } + ] + }, + "id": 18081, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10150:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18063, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10162:2:73", + "nodeType": "VariableDeclaration", + "scope": 18081, + "src": "10154:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18062, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10154:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18065, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10171:2:73", + "nodeType": "VariableDeclaration", + "scope": 18081, + "src": "10166:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18064, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10166:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18067, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10183:2:73", + "nodeType": "VariableDeclaration", + "scope": 18081, + "src": "10175:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18066, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10175:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10153:33:73" + }, + "returnParameters": { + "id": 18069, + "nodeType": "ParameterList", + "parameters": [], + "src": "10201:0:73" + }, + "scope": 25070, + "src": "10141:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18100, + "nodeType": "Block", + "src": "10371:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e6729", + "id": 18093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10421:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_85775021582c57b14e9e0b33e0f693439478099486817fe4214a503f559f37df", + "typeString": "literal_string \"log(uint256,bool,string)\"" + }, + "value": "log(uint256,bool,string)" + }, + { + "id": 18094, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18083, + "src": "10449:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18095, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18085, + "src": "10453:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18096, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18087, + "src": "10457:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_85775021582c57b14e9e0b33e0f693439478099486817fe4214a503f559f37df", + "typeString": "literal_string \"log(uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10397:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10401:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10397:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10397:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18090, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10381:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10381:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18099, + "nodeType": "ExpressionStatement", + "src": "10381:80:73" + } + ] + }, + "id": 18101, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10314:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18083, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10326:2:73", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "10318:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18082, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10318:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18085, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10335:2:73", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "10330:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18084, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10330:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18087, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10353:2:73", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "10339:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18086, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10339:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10317:39:73" + }, + "returnParameters": { + "id": 18089, + "nodeType": "ParameterList", + "parameters": [], + "src": "10371:0:73" + }, + "scope": 25070, + "src": "10305:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18120, + "nodeType": "Block", + "src": "10531:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c29", + "id": 18113, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10581:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_207186500d54a80dae0e8fae760b583cb518c2c49967db59c8f7e5596879c0b6", + "typeString": "literal_string \"log(uint256,bool,bool)\"" + }, + "value": "log(uint256,bool,bool)" + }, + { + "id": 18114, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18103, + "src": "10607:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18115, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18105, + "src": "10611:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18116, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18107, + "src": "10615:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_207186500d54a80dae0e8fae760b583cb518c2c49967db59c8f7e5596879c0b6", + "typeString": "literal_string \"log(uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18111, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10557:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18112, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10561:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10557:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10557:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18110, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10541:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10541:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18119, + "nodeType": "ExpressionStatement", + "src": "10541:78:73" + } + ] + }, + "id": 18121, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10483:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18103, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10495:2:73", + "nodeType": "VariableDeclaration", + "scope": 18121, + "src": "10487:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18102, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10487:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18105, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10504:2:73", + "nodeType": "VariableDeclaration", + "scope": 18121, + "src": "10499:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18104, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10499:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18107, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10513:2:73", + "nodeType": "VariableDeclaration", + "scope": 18121, + "src": "10508:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18106, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10508:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10486:30:73" + }, + "returnParameters": { + "id": 18109, + "nodeType": "ParameterList", + "parameters": [], + "src": "10531:0:73" + }, + "scope": 25070, + "src": "10474:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18140, + "nodeType": "Block", + "src": "10692:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c6164647265737329", + "id": 18133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10742:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_35085f7b74fe0b67ab2d779d94b2a1efc14ce8d637e06ffda83ca305116f3c99", + "typeString": "literal_string \"log(uint256,bool,address)\"" + }, + "value": "log(uint256,bool,address)" + }, + { + "id": 18134, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18123, + "src": "10771:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18135, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18125, + "src": "10775:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18136, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18127, + "src": "10779:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_35085f7b74fe0b67ab2d779d94b2a1efc14ce8d637e06ffda83ca305116f3c99", + "typeString": "literal_string \"log(uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18131, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10718:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10722:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10718:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10718:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18130, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10702:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10702:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18139, + "nodeType": "ExpressionStatement", + "src": "10702:81:73" + } + ] + }, + "id": 18141, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10641:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18123, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10653:2:73", + "nodeType": "VariableDeclaration", + "scope": 18141, + "src": "10645:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18122, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10645:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18125, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10662:2:73", + "nodeType": "VariableDeclaration", + "scope": 18141, + "src": "10657:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18124, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10657:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18127, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10674:2:73", + "nodeType": "VariableDeclaration", + "scope": 18141, + "src": "10666:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10666:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10644:33:73" + }, + "returnParameters": { + "id": 18129, + "nodeType": "ParameterList", + "parameters": [], + "src": "10692:0:73" + }, + "scope": 25070, + "src": "10632:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18160, + "nodeType": "Block", + "src": "10859:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e7432353629", + "id": 18153, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10909:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5a9b5ed5e0cc67953f5b0a58c12e9694944af5a126321ab88870dec3bc05a9ae", + "typeString": "literal_string \"log(uint256,address,uint256)\"" + }, + "value": "log(uint256,address,uint256)" + }, + { + "id": 18154, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18143, + "src": "10941:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18155, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18145, + "src": "10945:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18156, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18147, + "src": "10949:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5a9b5ed5e0cc67953f5b0a58c12e9694944af5a126321ab88870dec3bc05a9ae", + "typeString": "literal_string \"log(uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18151, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10885:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "10889:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10885:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10885:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18150, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "10869:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10869:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18159, + "nodeType": "ExpressionStatement", + "src": "10869:84:73" + } + ] + }, + "id": 18161, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10805:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18143, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10817:2:73", + "nodeType": "VariableDeclaration", + "scope": 18161, + "src": "10809:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18142, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10809:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18145, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10829:2:73", + "nodeType": "VariableDeclaration", + "scope": 18161, + "src": "10821:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18144, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10821:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18147, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10841:2:73", + "nodeType": "VariableDeclaration", + "scope": 18161, + "src": "10833:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18146, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10833:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10808:36:73" + }, + "returnParameters": { + "id": 18149, + "nodeType": "ParameterList", + "parameters": [], + "src": "10859:0:73" + }, + "scope": 25070, + "src": "10796:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18180, + "nodeType": "Block", + "src": "11035:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e6729", + "id": 18173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11085:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_63cb41f9a63efe5dfacd3a2836bdef664d136fd6113f8e931c31a919af38935c", + "typeString": "literal_string \"log(uint256,address,string)\"" + }, + "value": "log(uint256,address,string)" + }, + { + "id": 18174, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18163, + "src": "11116:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18175, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18165, + "src": "11120:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18176, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18167, + "src": "11124:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_63cb41f9a63efe5dfacd3a2836bdef664d136fd6113f8e931c31a919af38935c", + "typeString": "literal_string \"log(uint256,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18171, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11061:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11065:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11061:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11061:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18170, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11045:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11045:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18179, + "nodeType": "ExpressionStatement", + "src": "11045:83:73" + } + ] + }, + "id": 18181, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10975:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18168, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18163, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10987:2:73", + "nodeType": "VariableDeclaration", + "scope": 18181, + "src": "10979:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18162, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10979:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18165, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10999:2:73", + "nodeType": "VariableDeclaration", + "scope": 18181, + "src": "10991:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10991:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18167, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11017:2:73", + "nodeType": "VariableDeclaration", + "scope": 18181, + "src": "11003:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18166, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11003:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10978:42:73" + }, + "returnParameters": { + "id": 18169, + "nodeType": "ParameterList", + "parameters": [], + "src": "11035:0:73" + }, + "scope": 25070, + "src": "10966:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18200, + "nodeType": "Block", + "src": "11201:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c29", + "id": 18193, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11251:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9b6ec042c5598a780a5bfae5e9ea2c50c251da4c38db3a134b8857be618f0c5c", + "typeString": "literal_string \"log(uint256,address,bool)\"" + }, + "value": "log(uint256,address,bool)" + }, + { + "id": 18194, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18183, + "src": "11280:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18195, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18185, + "src": "11284:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18196, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18187, + "src": "11288:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9b6ec042c5598a780a5bfae5e9ea2c50c251da4c38db3a134b8857be618f0c5c", + "typeString": "literal_string \"log(uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18191, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11227:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11231:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11227:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11227:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18190, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11211:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11211:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18199, + "nodeType": "ExpressionStatement", + "src": "11211:81:73" + } + ] + }, + "id": 18201, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11150:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18183, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11162:2:73", + "nodeType": "VariableDeclaration", + "scope": 18201, + "src": "11154:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18182, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11154:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18185, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11174:2:73", + "nodeType": "VariableDeclaration", + "scope": 18201, + "src": "11166:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11166:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18187, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11183:2:73", + "nodeType": "VariableDeclaration", + "scope": 18201, + "src": "11178:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18186, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11178:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11153:33:73" + }, + "returnParameters": { + "id": 18189, + "nodeType": "ParameterList", + "parameters": [], + "src": "11201:0:73" + }, + "scope": 25070, + "src": "11141:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18220, + "nodeType": "Block", + "src": "11368:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c6164647265737329", + "id": 18213, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11418:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bcfd9be04f8d6b8ee1ae73075f8fe8db10e4b254a56103daa450197029a55fda", + "typeString": "literal_string \"log(uint256,address,address)\"" + }, + "value": "log(uint256,address,address)" + }, + { + "id": 18214, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18203, + "src": "11450:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18215, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18205, + "src": "11454:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18216, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18207, + "src": "11458:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bcfd9be04f8d6b8ee1ae73075f8fe8db10e4b254a56103daa450197029a55fda", + "typeString": "literal_string \"log(uint256,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18211, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11394:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18212, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11398:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11394:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11394:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18210, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11378:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11378:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18219, + "nodeType": "ExpressionStatement", + "src": "11378:84:73" + } + ] + }, + "id": 18221, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11314:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18203, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11326:2:73", + "nodeType": "VariableDeclaration", + "scope": 18221, + "src": "11318:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18202, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11318:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18205, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11338:2:73", + "nodeType": "VariableDeclaration", + "scope": 18221, + "src": "11330:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18204, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11330:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18207, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11350:2:73", + "nodeType": "VariableDeclaration", + "scope": 18221, + "src": "11342:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18206, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11342:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11317:36:73" + }, + "returnParameters": { + "id": 18209, + "nodeType": "ParameterList", + "parameters": [], + "src": "11368:0:73" + }, + "scope": 25070, + "src": "11305:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18240, + "nodeType": "Block", + "src": "11544:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e7432353629", + "id": 18233, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11594:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca47c4ebe9fba29faff9e6b57fbe69e17216e7526486c463d61c06e8992beece", + "typeString": "literal_string \"log(string,uint256,uint256)\"" + }, + "value": "log(string,uint256,uint256)" + }, + { + "id": 18234, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18223, + "src": "11625:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18235, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18225, + "src": "11629:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18236, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18227, + "src": "11633:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca47c4ebe9fba29faff9e6b57fbe69e17216e7526486c463d61c06e8992beece", + "typeString": "literal_string \"log(string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18231, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11570:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11574:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11570:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11570:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18230, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11554:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11554:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18239, + "nodeType": "ExpressionStatement", + "src": "11554:83:73" + } + ] + }, + "id": 18241, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11484:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18228, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18223, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11502:2:73", + "nodeType": "VariableDeclaration", + "scope": 18241, + "src": "11488:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18222, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11488:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18225, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11514:2:73", + "nodeType": "VariableDeclaration", + "scope": 18241, + "src": "11506:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11506:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18227, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11526:2:73", + "nodeType": "VariableDeclaration", + "scope": 18241, + "src": "11518:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18226, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11518:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11487:42:73" + }, + "returnParameters": { + "id": 18229, + "nodeType": "ParameterList", + "parameters": [], + "src": "11544:0:73" + }, + "scope": 25070, + "src": "11475:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18260, + "nodeType": "Block", + "src": "11725:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e6729", + "id": 18253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11775:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5970e089c65c5d431d60f26e6cf1ec3984c873a96b59f1aed9fc44cdf9078bcf", + "typeString": "literal_string \"log(string,uint256,string)\"" + }, + "value": "log(string,uint256,string)" + }, + { + "id": 18254, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18243, + "src": "11805:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18255, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18245, + "src": "11809:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18256, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18247, + "src": "11813:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5970e089c65c5d431d60f26e6cf1ec3984c873a96b59f1aed9fc44cdf9078bcf", + "typeString": "literal_string \"log(string,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18251, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11751:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18252, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11755:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11751:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18257, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11751:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18250, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11735:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11735:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18259, + "nodeType": "ExpressionStatement", + "src": "11735:82:73" + } + ] + }, + "id": 18261, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11659:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18248, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18243, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11677:2:73", + "nodeType": "VariableDeclaration", + "scope": 18261, + "src": "11663:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18242, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11663:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18245, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11689:2:73", + "nodeType": "VariableDeclaration", + "scope": 18261, + "src": "11681:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18244, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11681:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18247, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11707:2:73", + "nodeType": "VariableDeclaration", + "scope": 18261, + "src": "11693:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18246, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11693:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11662:48:73" + }, + "returnParameters": { + "id": 18249, + "nodeType": "ParameterList", + "parameters": [], + "src": "11725:0:73" + }, + "scope": 25070, + "src": "11650:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18280, + "nodeType": "Block", + "src": "11896:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c29", + "id": 18273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11946:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca7733b1b473f13a94152fab2b969755f42d925703a46c93a1825aad614f145e", + "typeString": "literal_string \"log(string,uint256,bool)\"" + }, + "value": "log(string,uint256,bool)" + }, + { + "id": 18274, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18263, + "src": "11974:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18275, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18265, + "src": "11978:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18276, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18267, + "src": "11982:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca7733b1b473f13a94152fab2b969755f42d925703a46c93a1825aad614f145e", + "typeString": "literal_string \"log(string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18271, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11922:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "11926:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11922:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11922:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18270, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "11906:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11906:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18279, + "nodeType": "ExpressionStatement", + "src": "11906:80:73" + } + ] + }, + "id": 18281, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11839:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18268, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18263, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11857:2:73", + "nodeType": "VariableDeclaration", + "scope": 18281, + "src": "11843:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18262, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11843:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18265, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11869:2:73", + "nodeType": "VariableDeclaration", + "scope": 18281, + "src": "11861:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18264, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11861:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18267, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11878:2:73", + "nodeType": "VariableDeclaration", + "scope": 18281, + "src": "11873:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18266, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11873:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11842:39:73" + }, + "returnParameters": { + "id": 18269, + "nodeType": "ParameterList", + "parameters": [], + "src": "11896:0:73" + }, + "scope": 25070, + "src": "11830:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18300, + "nodeType": "Block", + "src": "12068:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c6164647265737329", + "id": 18293, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12118:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c7ec4485ea8bf18e646e5381f7318f45423199ed371307bc9171a4242f27335", + "typeString": "literal_string \"log(string,uint256,address)\"" + }, + "value": "log(string,uint256,address)" + }, + { + "id": 18294, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18283, + "src": "12149:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18295, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18285, + "src": "12153:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18296, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18287, + "src": "12157:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c7ec4485ea8bf18e646e5381f7318f45423199ed371307bc9171a4242f27335", + "typeString": "literal_string \"log(string,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18291, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12094:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12098:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12094:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12094:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18290, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12078:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12078:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18299, + "nodeType": "ExpressionStatement", + "src": "12078:83:73" + } + ] + }, + "id": 18301, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12008:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18288, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18283, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12026:2:73", + "nodeType": "VariableDeclaration", + "scope": 18301, + "src": "12012:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12012:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18285, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12038:2:73", + "nodeType": "VariableDeclaration", + "scope": 18301, + "src": "12030:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18284, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12030:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18287, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12050:2:73", + "nodeType": "VariableDeclaration", + "scope": 18301, + "src": "12042:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18286, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12042:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12011:42:73" + }, + "returnParameters": { + "id": 18289, + "nodeType": "ParameterList", + "parameters": [], + "src": "12068:0:73" + }, + "scope": 25070, + "src": "11999:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18320, + "nodeType": "Block", + "src": "12249:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e7432353629", + "id": 18313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12299:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5821efa12787fd2b80909e807f1dcc73717b87128d89e827e5b876178f2fdbd0", + "typeString": "literal_string \"log(string,string,uint256)\"" + }, + "value": "log(string,string,uint256)" + }, + { + "id": 18314, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18303, + "src": "12329:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18315, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18305, + "src": "12333:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18316, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18307, + "src": "12337:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5821efa12787fd2b80909e807f1dcc73717b87128d89e827e5b876178f2fdbd0", + "typeString": "literal_string \"log(string,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18311, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12275:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18312, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12279:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12275:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12275:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18310, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12259:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12259:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18319, + "nodeType": "ExpressionStatement", + "src": "12259:82:73" + } + ] + }, + "id": 18321, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12183:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18308, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18303, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12201:2:73", + "nodeType": "VariableDeclaration", + "scope": 18321, + "src": "12187:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18302, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12187:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18305, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12219:2:73", + "nodeType": "VariableDeclaration", + "scope": 18321, + "src": "12205:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18304, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12205:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18307, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12231:2:73", + "nodeType": "VariableDeclaration", + "scope": 18321, + "src": "12223:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18306, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12223:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12186:48:73" + }, + "returnParameters": { + "id": 18309, + "nodeType": "ParameterList", + "parameters": [], + "src": "12249:0:73" + }, + "scope": 25070, + "src": "12174:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18340, + "nodeType": "Block", + "src": "12435:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e6729", + "id": 18333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12485:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + "value": "log(string,string,string)" + }, + { + "id": 18334, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18323, + "src": "12514:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18335, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18325, + "src": "12518:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18336, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18327, + "src": "12522:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12461:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12465:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12461:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12461:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18330, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12445:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12445:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18339, + "nodeType": "ExpressionStatement", + "src": "12445:81:73" + } + ] + }, + "id": 18341, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12363:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18328, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18323, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12381:2:73", + "nodeType": "VariableDeclaration", + "scope": 18341, + "src": "12367:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18322, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12367:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18325, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12399:2:73", + "nodeType": "VariableDeclaration", + "scope": 18341, + "src": "12385:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18324, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12385:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18327, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12417:2:73", + "nodeType": "VariableDeclaration", + "scope": 18341, + "src": "12403:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18326, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12403:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12366:54:73" + }, + "returnParameters": { + "id": 18329, + "nodeType": "ParameterList", + "parameters": [], + "src": "12435:0:73" + }, + "scope": 25070, + "src": "12354:179:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18360, + "nodeType": "Block", + "src": "12611:96:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c29", + "id": 18353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12661:25:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + "value": "log(string,string,bool)" + }, + { + "id": 18354, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18343, + "src": "12688:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18355, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18345, + "src": "12692:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18356, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18347, + "src": "12696:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18351, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12637:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12641:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12637:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12637:62:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18350, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12621:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12621:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18359, + "nodeType": "ExpressionStatement", + "src": "12621:79:73" + } + ] + }, + "id": 18361, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12548:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18348, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18343, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12566:2:73", + "nodeType": "VariableDeclaration", + "scope": 18361, + "src": "12552:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18342, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12552:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18345, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12584:2:73", + "nodeType": "VariableDeclaration", + "scope": 18361, + "src": "12570:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18344, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12570:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18347, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12593:2:73", + "nodeType": "VariableDeclaration", + "scope": 18361, + "src": "12588:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18346, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12588:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12551:45:73" + }, + "returnParameters": { + "id": 18349, + "nodeType": "ParameterList", + "parameters": [], + "src": "12611:0:73" + }, + "scope": 25070, + "src": "12539:168:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18380, + "nodeType": "Block", + "src": "12788:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c6164647265737329", + "id": 18373, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12838:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + "value": "log(string,string,address)" + }, + { + "id": 18374, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18363, + "src": "12868:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18375, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18365, + "src": "12872:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18376, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18367, + "src": "12876:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18371, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12814:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18372, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12818:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12814:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12814:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18370, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12798:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12798:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18379, + "nodeType": "ExpressionStatement", + "src": "12798:82:73" + } + ] + }, + "id": 18381, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12722:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18368, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18363, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12740:2:73", + "nodeType": "VariableDeclaration", + "scope": 18381, + "src": "12726:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18362, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12726:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18365, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12758:2:73", + "nodeType": "VariableDeclaration", + "scope": 18381, + "src": "12744:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18364, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12744:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18367, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12770:2:73", + "nodeType": "VariableDeclaration", + "scope": 18381, + "src": "12762:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18366, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12762:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12725:48:73" + }, + "returnParameters": { + "id": 18369, + "nodeType": "ParameterList", + "parameters": [], + "src": "12788:0:73" + }, + "scope": 25070, + "src": "12713:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18400, + "nodeType": "Block", + "src": "12959:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e7432353629", + "id": 18393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13009:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c95958d6bc6e492868f9bea34fa0d5d3bf60736d44598880e7a9a99746b5d26a", + "typeString": "literal_string \"log(string,bool,uint256)\"" + }, + "value": "log(string,bool,uint256)" + }, + { + "id": 18394, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18383, + "src": "13037:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18395, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18385, + "src": "13041:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18396, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18387, + "src": "13045:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c95958d6bc6e492868f9bea34fa0d5d3bf60736d44598880e7a9a99746b5d26a", + "typeString": "literal_string \"log(string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18391, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12985:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "12989:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12985:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12985:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18390, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "12969:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12969:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18399, + "nodeType": "ExpressionStatement", + "src": "12969:80:73" + } + ] + }, + "id": 18401, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12902:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18388, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18383, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12920:2:73", + "nodeType": "VariableDeclaration", + "scope": 18401, + "src": "12906:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18382, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12906:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18385, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12929:2:73", + "nodeType": "VariableDeclaration", + "scope": 18401, + "src": "12924:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18384, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12924:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18387, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12941:2:73", + "nodeType": "VariableDeclaration", + "scope": 18401, + "src": "12933:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18386, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12933:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12905:39:73" + }, + "returnParameters": { + "id": 18389, + "nodeType": "ParameterList", + "parameters": [], + "src": "12959:0:73" + }, + "scope": 25070, + "src": "12893:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18420, + "nodeType": "Block", + "src": "13134:96:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e6729", + "id": 18413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13184:25:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + "value": "log(string,bool,string)" + }, + { + "id": 18414, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18403, + "src": "13211:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18415, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18405, + "src": "13215:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18416, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18407, + "src": "13219:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18411, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13160:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "13164:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13160:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13160:62:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18410, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13144:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13144:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18419, + "nodeType": "ExpressionStatement", + "src": "13144:79:73" + } + ] + }, + "id": 18421, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13071:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18408, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18403, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13089:2:73", + "nodeType": "VariableDeclaration", + "scope": 18421, + "src": "13075:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18402, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13075:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18405, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13098:2:73", + "nodeType": "VariableDeclaration", + "scope": 18421, + "src": "13093:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18404, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13093:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18407, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13116:2:73", + "nodeType": "VariableDeclaration", + "scope": 18421, + "src": "13102:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18406, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13102:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13074:45:73" + }, + "returnParameters": { + "id": 18409, + "nodeType": "ParameterList", + "parameters": [], + "src": "13134:0:73" + }, + "scope": 25070, + "src": "13062:168:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18440, + "nodeType": "Block", + "src": "13299:94:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c29", + "id": 18433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13349:23:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + "value": "log(string,bool,bool)" + }, + { + "id": 18434, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18423, + "src": "13374:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18435, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18425, + "src": "13378:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18436, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18427, + "src": "13382:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18431, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13325:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "13329:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13325:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13325:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18430, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13309:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13309:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18439, + "nodeType": "ExpressionStatement", + "src": "13309:77:73" + } + ] + }, + "id": 18441, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13245:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18428, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18423, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13263:2:73", + "nodeType": "VariableDeclaration", + "scope": 18441, + "src": "13249:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18422, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13249:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18425, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13272:2:73", + "nodeType": "VariableDeclaration", + "scope": 18441, + "src": "13267:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18424, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13267:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18427, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13281:2:73", + "nodeType": "VariableDeclaration", + "scope": 18441, + "src": "13276:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13276:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13248:36:73" + }, + "returnParameters": { + "id": 18429, + "nodeType": "ParameterList", + "parameters": [], + "src": "13299:0:73" + }, + "scope": 25070, + "src": "13236:157:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18460, + "nodeType": "Block", + "src": "13465:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c6164647265737329", + "id": 18453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13515:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + "value": "log(string,bool,address)" + }, + { + "id": 18454, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18443, + "src": "13543:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18455, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18445, + "src": "13547:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18456, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18447, + "src": "13551:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18451, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13491:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18452, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "13495:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13491:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13491:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18450, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13475:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13475:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18459, + "nodeType": "ExpressionStatement", + "src": "13475:80:73" + } + ] + }, + "id": 18461, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13408:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18443, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13426:2:73", + "nodeType": "VariableDeclaration", + "scope": 18461, + "src": "13412:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18442, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13412:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18445, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13435:2:73", + "nodeType": "VariableDeclaration", + "scope": 18461, + "src": "13430:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18444, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13430:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18447, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13447:2:73", + "nodeType": "VariableDeclaration", + "scope": 18461, + "src": "13439:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18446, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13439:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13411:39:73" + }, + "returnParameters": { + "id": 18449, + "nodeType": "ParameterList", + "parameters": [], + "src": "13465:0:73" + }, + "scope": 25070, + "src": "13399:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18480, + "nodeType": "Block", + "src": "13637:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e7432353629", + "id": 18473, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13687:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d26b92533630e908cb95a1b2ed09291c6aa98f8da7094a2325f8c86cd45e5e4", + "typeString": "literal_string \"log(string,address,uint256)\"" + }, + "value": "log(string,address,uint256)" + }, + { + "id": 18474, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18463, + "src": "13718:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18475, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18465, + "src": "13722:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18476, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18467, + "src": "13726:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d26b92533630e908cb95a1b2ed09291c6aa98f8da7094a2325f8c86cd45e5e4", + "typeString": "literal_string \"log(string,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18471, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13663:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "13667:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13663:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13663:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18470, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13647:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13647:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18479, + "nodeType": "ExpressionStatement", + "src": "13647:83:73" + } + ] + }, + "id": 18481, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13577:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18463, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13595:2:73", + "nodeType": "VariableDeclaration", + "scope": 18481, + "src": "13581:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18462, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13581:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18465, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13607:2:73", + "nodeType": "VariableDeclaration", + "scope": 18481, + "src": "13599:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18464, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13599:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18467, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13619:2:73", + "nodeType": "VariableDeclaration", + "scope": 18481, + "src": "13611:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18466, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13611:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13580:42:73" + }, + "returnParameters": { + "id": 18469, + "nodeType": "ParameterList", + "parameters": [], + "src": "13637:0:73" + }, + "scope": 25070, + "src": "13568:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18500, + "nodeType": "Block", + "src": "13818:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e6729", + "id": 18493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13868:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + "value": "log(string,address,string)" + }, + { + "id": 18494, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18483, + "src": "13898:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18495, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18485, + "src": "13902:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18496, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18487, + "src": "13906:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13844:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "13848:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13844:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13844:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18490, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13828:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18498, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13828:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18499, + "nodeType": "ExpressionStatement", + "src": "13828:82:73" + } + ] + }, + "id": 18501, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13752:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18488, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18483, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13770:2:73", + "nodeType": "VariableDeclaration", + "scope": 18501, + "src": "13756:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18482, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13756:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18485, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13782:2:73", + "nodeType": "VariableDeclaration", + "scope": 18501, + "src": "13774:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18484, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13774:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18487, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13800:2:73", + "nodeType": "VariableDeclaration", + "scope": 18501, + "src": "13786:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18486, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13786:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13755:48:73" + }, + "returnParameters": { + "id": 18489, + "nodeType": "ParameterList", + "parameters": [], + "src": "13818:0:73" + }, + "scope": 25070, + "src": "13743:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18520, + "nodeType": "Block", + "src": "13989:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c29", + "id": 18513, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14039:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + "value": "log(string,address,bool)" + }, + { + "id": 18514, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18503, + "src": "14067:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18515, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18505, + "src": "14071:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18516, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18507, + "src": "14075:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18511, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14015:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18512, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14019:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14015:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14015:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18510, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "13999:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "13999:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18519, + "nodeType": "ExpressionStatement", + "src": "13999:80:73" + } + ] + }, + "id": 18521, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13932:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18508, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18503, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13950:2:73", + "nodeType": "VariableDeclaration", + "scope": 18521, + "src": "13936:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18502, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13936:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18505, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13962:2:73", + "nodeType": "VariableDeclaration", + "scope": 18521, + "src": "13954:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18504, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13954:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18507, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13971:2:73", + "nodeType": "VariableDeclaration", + "scope": 18521, + "src": "13966:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18506, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13966:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13935:39:73" + }, + "returnParameters": { + "id": 18509, + "nodeType": "ParameterList", + "parameters": [], + "src": "13989:0:73" + }, + "scope": 25070, + "src": "13923:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18540, + "nodeType": "Block", + "src": "14161:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c6164647265737329", + "id": 18533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14211:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + "value": "log(string,address,address)" + }, + { + "id": 18534, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18523, + "src": "14242:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18535, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18525, + "src": "14246:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18536, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18527, + "src": "14250:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14187:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14191:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14187:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14187:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18530, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14171:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14171:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18539, + "nodeType": "ExpressionStatement", + "src": "14171:83:73" + } + ] + }, + "id": 18541, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14101:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18523, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14119:2:73", + "nodeType": "VariableDeclaration", + "scope": 18541, + "src": "14105:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18522, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14105:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18525, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14131:2:73", + "nodeType": "VariableDeclaration", + "scope": 18541, + "src": "14123:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18524, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14123:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18527, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14143:2:73", + "nodeType": "VariableDeclaration", + "scope": 18541, + "src": "14135:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18526, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14135:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14104:42:73" + }, + "returnParameters": { + "id": 18529, + "nodeType": "ParameterList", + "parameters": [], + "src": "14161:0:73" + }, + "scope": 25070, + "src": "14092:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18560, + "nodeType": "Block", + "src": "14327:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e7432353629", + "id": 18553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14377:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_371033677da72158a60d6dc6ec9fa4683ad37ad854670ba3fcf814603cf8bb28", + "typeString": "literal_string \"log(bool,uint256,uint256)\"" + }, + "value": "log(bool,uint256,uint256)" + }, + { + "id": 18554, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18543, + "src": "14406:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18555, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18545, + "src": "14410:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18556, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18547, + "src": "14414:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_371033677da72158a60d6dc6ec9fa4683ad37ad854670ba3fcf814603cf8bb28", + "typeString": "literal_string \"log(bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18551, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14353:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14357:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14353:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14353:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18550, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14337:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14337:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18559, + "nodeType": "ExpressionStatement", + "src": "14337:81:73" + } + ] + }, + "id": 18561, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14276:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18543, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14285:2:73", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "14280:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18542, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14280:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18545, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14297:2:73", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "14289:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18544, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14289:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18547, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14309:2:73", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "14301:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18546, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14301:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14279:33:73" + }, + "returnParameters": { + "id": 18549, + "nodeType": "ParameterList", + "parameters": [], + "src": "14327:0:73" + }, + "scope": 25070, + "src": "14267:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18580, + "nodeType": "Block", + "src": "14497:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e6729", + "id": 18573, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14547:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3fc3970359ec5bcd4a409af812c658e77b7983043c9e7299db566fbd8131447", + "typeString": "literal_string \"log(bool,uint256,string)\"" + }, + "value": "log(bool,uint256,string)" + }, + { + "id": 18574, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18563, + "src": "14575:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18575, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18565, + "src": "14579:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18576, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18567, + "src": "14583:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3fc3970359ec5bcd4a409af812c658e77b7983043c9e7299db566fbd8131447", + "typeString": "literal_string \"log(bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18571, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14523:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18572, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14527:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14523:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14523:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18570, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14507:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14507:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18579, + "nodeType": "ExpressionStatement", + "src": "14507:80:73" + } + ] + }, + "id": 18581, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14440:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18568, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18563, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14449:2:73", + "nodeType": "VariableDeclaration", + "scope": 18581, + "src": "14444:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18562, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14444:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18565, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14461:2:73", + "nodeType": "VariableDeclaration", + "scope": 18581, + "src": "14453:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18564, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14453:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18567, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14479:2:73", + "nodeType": "VariableDeclaration", + "scope": 18581, + "src": "14465:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18566, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14465:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "14443:39:73" + }, + "returnParameters": { + "id": 18569, + "nodeType": "ParameterList", + "parameters": [], + "src": "14497:0:73" + }, + "scope": 25070, + "src": "14431:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18600, + "nodeType": "Block", + "src": "14657:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c29", + "id": 18593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14707:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e8defba9dac8a3ed4ad0f711b733171fd223b5d127b3485540d69bec05995a26", + "typeString": "literal_string \"log(bool,uint256,bool)\"" + }, + "value": "log(bool,uint256,bool)" + }, + { + "id": 18594, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18583, + "src": "14733:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18595, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18585, + "src": "14737:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18596, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18587, + "src": "14741:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e8defba9dac8a3ed4ad0f711b733171fd223b5d127b3485540d69bec05995a26", + "typeString": "literal_string \"log(bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18591, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14683:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18592, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14687:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14683:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14683:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18590, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14667:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14667:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18599, + "nodeType": "ExpressionStatement", + "src": "14667:78:73" + } + ] + }, + "id": 18601, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14609:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18588, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18583, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14618:2:73", + "nodeType": "VariableDeclaration", + "scope": 18601, + "src": "14613:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18582, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14613:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18585, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14630:2:73", + "nodeType": "VariableDeclaration", + "scope": 18601, + "src": "14622:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18584, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14622:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18587, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14639:2:73", + "nodeType": "VariableDeclaration", + "scope": 18601, + "src": "14634:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18586, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14634:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "14612:30:73" + }, + "returnParameters": { + "id": 18589, + "nodeType": "ParameterList", + "parameters": [], + "src": "14657:0:73" + }, + "scope": 25070, + "src": "14600:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18620, + "nodeType": "Block", + "src": "14818:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c6164647265737329", + "id": 18613, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14868:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_088ef9d2f4d01d13401423c19b7f189200a7ad3f567d9e20f37299f94f92f574", + "typeString": "literal_string \"log(bool,uint256,address)\"" + }, + "value": "log(bool,uint256,address)" + }, + { + "id": 18614, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18603, + "src": "14897:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18615, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18605, + "src": "14901:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18616, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18607, + "src": "14905:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_088ef9d2f4d01d13401423c19b7f189200a7ad3f567d9e20f37299f94f92f574", + "typeString": "literal_string \"log(bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18611, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14844:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "14848:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14844:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14844:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18610, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14828:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14828:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18619, + "nodeType": "ExpressionStatement", + "src": "14828:81:73" + } + ] + }, + "id": 18621, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14767:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18608, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18603, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14776:2:73", + "nodeType": "VariableDeclaration", + "scope": 18621, + "src": "14771:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18602, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14771:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18605, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14788:2:73", + "nodeType": "VariableDeclaration", + "scope": 18621, + "src": "14780:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14780:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18607, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14800:2:73", + "nodeType": "VariableDeclaration", + "scope": 18621, + "src": "14792:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18606, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14792:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14770:33:73" + }, + "returnParameters": { + "id": 18609, + "nodeType": "ParameterList", + "parameters": [], + "src": "14818:0:73" + }, + "scope": 25070, + "src": "14758:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18640, + "nodeType": "Block", + "src": "14988:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e7432353629", + "id": 18633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15038:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1093ee11e671928331708700100b356c86a8494f33b170ddcffd95462a0adf64", + "typeString": "literal_string \"log(bool,string,uint256)\"" + }, + "value": "log(bool,string,uint256)" + }, + { + "id": 18634, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18623, + "src": "15066:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18635, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18625, + "src": "15070:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18636, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18627, + "src": "15074:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1093ee11e671928331708700100b356c86a8494f33b170ddcffd95462a0adf64", + "typeString": "literal_string \"log(bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18631, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15014:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15018:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15014:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15014:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18630, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "14998:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14998:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18639, + "nodeType": "ExpressionStatement", + "src": "14998:80:73" + } + ] + }, + "id": 18641, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14931:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18628, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18623, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14940:2:73", + "nodeType": "VariableDeclaration", + "scope": 18641, + "src": "14935:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18622, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14935:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18625, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14958:2:73", + "nodeType": "VariableDeclaration", + "scope": 18641, + "src": "14944:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18624, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14944:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18627, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14970:2:73", + "nodeType": "VariableDeclaration", + "scope": 18641, + "src": "14962:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18626, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14962:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14934:39:73" + }, + "returnParameters": { + "id": 18629, + "nodeType": "ParameterList", + "parameters": [], + "src": "14988:0:73" + }, + "scope": 25070, + "src": "14922:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18660, + "nodeType": "Block", + "src": "15163:96:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e6729", + "id": 18653, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15213:25:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + "value": "log(bool,string,string)" + }, + { + "id": 18654, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18643, + "src": "15240:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18655, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18645, + "src": "15244:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18656, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18647, + "src": "15248:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18651, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15189:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18652, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15193:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15189:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15189:62:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18650, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15173:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15173:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18659, + "nodeType": "ExpressionStatement", + "src": "15173:79:73" + } + ] + }, + "id": 18661, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15100:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18643, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15109:2:73", + "nodeType": "VariableDeclaration", + "scope": 18661, + "src": "15104:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18642, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15104:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18645, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15127:2:73", + "nodeType": "VariableDeclaration", + "scope": 18661, + "src": "15113:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18644, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15113:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18647, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15145:2:73", + "nodeType": "VariableDeclaration", + "scope": 18661, + "src": "15131:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18646, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15131:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15103:45:73" + }, + "returnParameters": { + "id": 18649, + "nodeType": "ParameterList", + "parameters": [], + "src": "15163:0:73" + }, + "scope": 25070, + "src": "15091:168:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18680, + "nodeType": "Block", + "src": "15328:94:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c29", + "id": 18673, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15378:23:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + "value": "log(bool,string,bool)" + }, + { + "id": 18674, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18663, + "src": "15403:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18675, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18665, + "src": "15407:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18676, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18667, + "src": "15411:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18671, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15354:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15358:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15354:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15354:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18670, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15338:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15338:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18679, + "nodeType": "ExpressionStatement", + "src": "15338:77:73" + } + ] + }, + "id": 18681, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15274:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18663, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15283:2:73", + "nodeType": "VariableDeclaration", + "scope": 18681, + "src": "15278:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18662, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15278:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18665, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15301:2:73", + "nodeType": "VariableDeclaration", + "scope": 18681, + "src": "15287:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18664, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15287:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18667, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15310:2:73", + "nodeType": "VariableDeclaration", + "scope": 18681, + "src": "15305:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18666, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15305:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15277:36:73" + }, + "returnParameters": { + "id": 18669, + "nodeType": "ParameterList", + "parameters": [], + "src": "15328:0:73" + }, + "scope": 25070, + "src": "15265:157:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18700, + "nodeType": "Block", + "src": "15494:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c6164647265737329", + "id": 18693, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15544:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + "value": "log(bool,string,address)" + }, + { + "id": 18694, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18683, + "src": "15572:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18695, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18685, + "src": "15576:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18696, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18687, + "src": "15580:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18691, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15520:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15524:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15520:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15520:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18690, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15504:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15504:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18699, + "nodeType": "ExpressionStatement", + "src": "15504:80:73" + } + ] + }, + "id": 18701, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15437:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18683, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15446:2:73", + "nodeType": "VariableDeclaration", + "scope": 18701, + "src": "15441:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18682, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15441:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18685, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15464:2:73", + "nodeType": "VariableDeclaration", + "scope": 18701, + "src": "15450:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18684, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15450:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18687, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15476:2:73", + "nodeType": "VariableDeclaration", + "scope": 18701, + "src": "15468:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18686, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15468:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15440:39:73" + }, + "returnParameters": { + "id": 18689, + "nodeType": "ParameterList", + "parameters": [], + "src": "15494:0:73" + }, + "scope": 25070, + "src": "15428:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18720, + "nodeType": "Block", + "src": "15654:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e7432353629", + "id": 18713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15704:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12f216023a0243e7ece19b75fc4619b59ea663e0aefdf2e4b1faa16a9fa3a211", + "typeString": "literal_string \"log(bool,bool,uint256)\"" + }, + "value": "log(bool,bool,uint256)" + }, + { + "id": 18714, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18703, + "src": "15730:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18715, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18705, + "src": "15734:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18716, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18707, + "src": "15738:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12f216023a0243e7ece19b75fc4619b59ea663e0aefdf2e4b1faa16a9fa3a211", + "typeString": "literal_string \"log(bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18711, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15680:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15684:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15680:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15680:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18710, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15664:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15664:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18719, + "nodeType": "ExpressionStatement", + "src": "15664:78:73" + } + ] + }, + "id": 18721, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15606:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18708, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18703, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15615:2:73", + "nodeType": "VariableDeclaration", + "scope": 18721, + "src": "15610:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18702, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15610:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18705, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15624:2:73", + "nodeType": "VariableDeclaration", + "scope": 18721, + "src": "15619:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18704, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15619:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18707, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15636:2:73", + "nodeType": "VariableDeclaration", + "scope": 18721, + "src": "15628:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18706, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15628:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15609:30:73" + }, + "returnParameters": { + "id": 18709, + "nodeType": "ParameterList", + "parameters": [], + "src": "15654:0:73" + }, + "scope": 25070, + "src": "15597:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18740, + "nodeType": "Block", + "src": "15818:94:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e6729", + "id": 18733, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15868:23:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + "value": "log(bool,bool,string)" + }, + { + "id": 18734, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18723, + "src": "15893:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18735, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18725, + "src": "15897:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18736, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18727, + "src": "15901:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18731, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15844:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15848:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15844:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15844:60:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18730, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15828:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15828:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18739, + "nodeType": "ExpressionStatement", + "src": "15828:77:73" + } + ] + }, + "id": 18741, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15764:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18728, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18723, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15773:2:73", + "nodeType": "VariableDeclaration", + "scope": 18741, + "src": "15768:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18722, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15768:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18725, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15782:2:73", + "nodeType": "VariableDeclaration", + "scope": 18741, + "src": "15777:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18724, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15777:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18727, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15800:2:73", + "nodeType": "VariableDeclaration", + "scope": 18741, + "src": "15786:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18726, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15786:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15767:36:73" + }, + "returnParameters": { + "id": 18729, + "nodeType": "ParameterList", + "parameters": [], + "src": "15818:0:73" + }, + "scope": 25070, + "src": "15755:157:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18760, + "nodeType": "Block", + "src": "15972:92:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c29", + "id": 18753, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16022:21:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool)" + }, + { + "id": 18754, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18743, + "src": "16045:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18755, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18745, + "src": "16049:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18756, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18747, + "src": "16053:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18751, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15998:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18752, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16002:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15998:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15998:58:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18750, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "15982:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15982:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18759, + "nodeType": "ExpressionStatement", + "src": "15982:75:73" + } + ] + }, + "id": 18761, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15927:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18748, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18743, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15936:2:73", + "nodeType": "VariableDeclaration", + "scope": 18761, + "src": "15931:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18742, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15931:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18745, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15945:2:73", + "nodeType": "VariableDeclaration", + "scope": 18761, + "src": "15940:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18744, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15940:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18747, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15954:2:73", + "nodeType": "VariableDeclaration", + "scope": 18761, + "src": "15949:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18746, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15949:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15930:27:73" + }, + "returnParameters": { + "id": 18749, + "nodeType": "ParameterList", + "parameters": [], + "src": "15972:0:73" + }, + "scope": 25070, + "src": "15918:146:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18780, + "nodeType": "Block", + "src": "16127:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c6164647265737329", + "id": 18773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16177:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + "value": "log(bool,bool,address)" + }, + { + "id": 18774, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18763, + "src": "16203:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18775, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18765, + "src": "16207:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18776, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18767, + "src": "16211:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18771, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16153:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18772, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16157:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16153:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16153:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18770, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16137:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18778, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16137:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18779, + "nodeType": "ExpressionStatement", + "src": "16137:78:73" + } + ] + }, + "id": 18781, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16079:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18768, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18763, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16088:2:73", + "nodeType": "VariableDeclaration", + "scope": 18781, + "src": "16083:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18762, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16083:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18765, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16097:2:73", + "nodeType": "VariableDeclaration", + "scope": 18781, + "src": "16092:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18764, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16092:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18767, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16109:2:73", + "nodeType": "VariableDeclaration", + "scope": 18781, + "src": "16101:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18766, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16101:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16082:30:73" + }, + "returnParameters": { + "id": 18769, + "nodeType": "ParameterList", + "parameters": [], + "src": "16127:0:73" + }, + "scope": 25070, + "src": "16070:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18800, + "nodeType": "Block", + "src": "16288:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e7432353629", + "id": 18793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16338:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f7b9afb4f9ee9df3fee50155d0accfa23536f443bcbc89ec11f75df422d05ac", + "typeString": "literal_string \"log(bool,address,uint256)\"" + }, + "value": "log(bool,address,uint256)" + }, + { + "id": 18794, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18783, + "src": "16367:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18795, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18785, + "src": "16371:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18796, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18787, + "src": "16375:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f7b9afb4f9ee9df3fee50155d0accfa23536f443bcbc89ec11f75df422d05ac", + "typeString": "literal_string \"log(bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18791, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16314:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16318:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16314:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16314:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18790, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16298:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16298:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18799, + "nodeType": "ExpressionStatement", + "src": "16298:81:73" + } + ] + }, + "id": 18801, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16237:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18788, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18783, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16246:2:73", + "nodeType": "VariableDeclaration", + "scope": 18801, + "src": "16241:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18782, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16241:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18785, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16258:2:73", + "nodeType": "VariableDeclaration", + "scope": 18801, + "src": "16250:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18784, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16250:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18787, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16270:2:73", + "nodeType": "VariableDeclaration", + "scope": 18801, + "src": "16262:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18786, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16262:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16240:33:73" + }, + "returnParameters": { + "id": 18789, + "nodeType": "ParameterList", + "parameters": [], + "src": "16288:0:73" + }, + "scope": 25070, + "src": "16228:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18820, + "nodeType": "Block", + "src": "16458:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e6729", + "id": 18813, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16508:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + "value": "log(bool,address,string)" + }, + { + "id": 18814, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18803, + "src": "16536:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18815, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18805, + "src": "16540:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18816, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18807, + "src": "16544:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18811, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16484:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16488:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16484:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16484:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18810, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16468:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16468:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18819, + "nodeType": "ExpressionStatement", + "src": "16468:80:73" + } + ] + }, + "id": 18821, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16401:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18808, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18803, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16410:2:73", + "nodeType": "VariableDeclaration", + "scope": 18821, + "src": "16405:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18802, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16405:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18805, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16422:2:73", + "nodeType": "VariableDeclaration", + "scope": 18821, + "src": "16414:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18804, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16414:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18807, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16440:2:73", + "nodeType": "VariableDeclaration", + "scope": 18821, + "src": "16426:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18806, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16426:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "16404:39:73" + }, + "returnParameters": { + "id": 18809, + "nodeType": "ParameterList", + "parameters": [], + "src": "16458:0:73" + }, + "scope": 25070, + "src": "16392:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18840, + "nodeType": "Block", + "src": "16618:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c29", + "id": 18833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16668:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + "value": "log(bool,address,bool)" + }, + { + "id": 18834, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18823, + "src": "16694:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18835, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18825, + "src": "16698:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18836, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18827, + "src": "16702:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18831, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16644:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16648:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16644:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16644:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18830, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16628:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18838, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16628:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18839, + "nodeType": "ExpressionStatement", + "src": "16628:78:73" + } + ] + }, + "id": 18841, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16570:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18828, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18823, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16579:2:73", + "nodeType": "VariableDeclaration", + "scope": 18841, + "src": "16574:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18822, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16574:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18825, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16591:2:73", + "nodeType": "VariableDeclaration", + "scope": 18841, + "src": "16583:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18824, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16583:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18827, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16600:2:73", + "nodeType": "VariableDeclaration", + "scope": 18841, + "src": "16595:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18826, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16595:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "16573:30:73" + }, + "returnParameters": { + "id": 18829, + "nodeType": "ParameterList", + "parameters": [], + "src": "16618:0:73" + }, + "scope": 25070, + "src": "16561:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18860, + "nodeType": "Block", + "src": "16779:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c6164647265737329", + "id": 18853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16829:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + "value": "log(bool,address,address)" + }, + { + "id": 18854, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18843, + "src": "16858:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18855, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18845, + "src": "16862:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18856, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18847, + "src": "16866:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18851, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16805:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16809:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16805:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16805:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18850, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16789:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16789:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18859, + "nodeType": "ExpressionStatement", + "src": "16789:81:73" + } + ] + }, + "id": 18861, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16728:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18848, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18843, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16737:2:73", + "nodeType": "VariableDeclaration", + "scope": 18861, + "src": "16732:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18842, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16732:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18845, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16749:2:73", + "nodeType": "VariableDeclaration", + "scope": 18861, + "src": "16741:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18844, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16741:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18847, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16761:2:73", + "nodeType": "VariableDeclaration", + "scope": 18861, + "src": "16753:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18846, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16753:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16731:33:73" + }, + "returnParameters": { + "id": 18849, + "nodeType": "ParameterList", + "parameters": [], + "src": "16779:0:73" + }, + "scope": 25070, + "src": "16719:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18880, + "nodeType": "Block", + "src": "16946:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e7432353629", + "id": 18873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16996:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b69bcaf6823fa467c87c127df102001d1ca4e8a6dc08cab8aa1e5ab4a0ae8c76", + "typeString": "literal_string \"log(address,uint256,uint256)\"" + }, + "value": "log(address,uint256,uint256)" + }, + { + "id": 18874, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18863, + "src": "17028:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18875, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18865, + "src": "17032:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18876, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18867, + "src": "17036:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b69bcaf6823fa467c87c127df102001d1ca4e8a6dc08cab8aa1e5ab4a0ae8c76", + "typeString": "literal_string \"log(address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18871, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16972:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18872, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16976:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16972:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16972:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18870, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "16956:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16956:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18879, + "nodeType": "ExpressionStatement", + "src": "16956:84:73" + } + ] + }, + "id": 18881, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16892:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18868, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18863, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16904:2:73", + "nodeType": "VariableDeclaration", + "scope": 18881, + "src": "16896:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18862, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16896:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18865, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16916:2:73", + "nodeType": "VariableDeclaration", + "scope": 18881, + "src": "16908:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18864, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16908:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18867, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16928:2:73", + "nodeType": "VariableDeclaration", + "scope": 18881, + "src": "16920:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18866, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16920:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16895:36:73" + }, + "returnParameters": { + "id": 18869, + "nodeType": "ParameterList", + "parameters": [], + "src": "16946:0:73" + }, + "scope": 25070, + "src": "16883:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18900, + "nodeType": "Block", + "src": "17122:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e6729", + "id": 18893, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17172:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1f2e8aa7ff0c088860d7b3f0d1dc288d8e8a07808525cc31a5691f1bc0e149d", + "typeString": "literal_string \"log(address,uint256,string)\"" + }, + "value": "log(address,uint256,string)" + }, + { + "id": 18894, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18883, + "src": "17203:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18895, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18885, + "src": "17207:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18896, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18887, + "src": "17211:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1f2e8aa7ff0c088860d7b3f0d1dc288d8e8a07808525cc31a5691f1bc0e149d", + "typeString": "literal_string \"log(address,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18891, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17148:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18892, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "17152:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17148:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17148:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18890, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17132:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17132:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18899, + "nodeType": "ExpressionStatement", + "src": "17132:83:73" + } + ] + }, + "id": 18901, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17062:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18888, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18883, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17074:2:73", + "nodeType": "VariableDeclaration", + "scope": 18901, + "src": "17066:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18882, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17066:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18885, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17086:2:73", + "nodeType": "VariableDeclaration", + "scope": 18901, + "src": "17078:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18884, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17078:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18887, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17104:2:73", + "nodeType": "VariableDeclaration", + "scope": 18901, + "src": "17090:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18886, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17090:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "17065:42:73" + }, + "returnParameters": { + "id": 18889, + "nodeType": "ParameterList", + "parameters": [], + "src": "17122:0:73" + }, + "scope": 25070, + "src": "17053:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18920, + "nodeType": "Block", + "src": "17288:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c29", + "id": 18913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17338:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_678209a8f42181c670dc624bae130f552678a896a5cb06db485524796aca1390", + "typeString": "literal_string \"log(address,uint256,bool)\"" + }, + "value": "log(address,uint256,bool)" + }, + { + "id": 18914, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18903, + "src": "17367:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18915, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18905, + "src": "17371:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18916, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18907, + "src": "17375:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_678209a8f42181c670dc624bae130f552678a896a5cb06db485524796aca1390", + "typeString": "literal_string \"log(address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18911, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17314:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "17318:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17314:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17314:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18910, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17298:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17298:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18919, + "nodeType": "ExpressionStatement", + "src": "17298:81:73" + } + ] + }, + "id": 18921, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17237:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18903, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17249:2:73", + "nodeType": "VariableDeclaration", + "scope": 18921, + "src": "17241:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18902, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17241:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18905, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17261:2:73", + "nodeType": "VariableDeclaration", + "scope": 18921, + "src": "17253:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18904, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17253:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18907, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17270:2:73", + "nodeType": "VariableDeclaration", + "scope": 18921, + "src": "17265:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18906, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17265:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17240:33:73" + }, + "returnParameters": { + "id": 18909, + "nodeType": "ParameterList", + "parameters": [], + "src": "17288:0:73" + }, + "scope": 25070, + "src": "17228:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18940, + "nodeType": "Block", + "src": "17455:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c6164647265737329", + "id": 18933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17505:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7bc0d848840f8a2b7df87b30af9a8d9856aea86658fd890c9e8abce72cda0b36", + "typeString": "literal_string \"log(address,uint256,address)\"" + }, + "value": "log(address,uint256,address)" + }, + { + "id": 18934, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18923, + "src": "17537:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18935, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18925, + "src": "17541:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18936, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18927, + "src": "17545:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7bc0d848840f8a2b7df87b30af9a8d9856aea86658fd890c9e8abce72cda0b36", + "typeString": "literal_string \"log(address,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18931, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17481:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "17485:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17481:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17481:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18930, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17465:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17465:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18939, + "nodeType": "ExpressionStatement", + "src": "17465:84:73" + } + ] + }, + "id": 18941, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17401:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18923, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17413:2:73", + "nodeType": "VariableDeclaration", + "scope": 18941, + "src": "17405:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18922, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17405:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18925, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17425:2:73", + "nodeType": "VariableDeclaration", + "scope": 18941, + "src": "17417:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17417:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18927, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17437:2:73", + "nodeType": "VariableDeclaration", + "scope": 18941, + "src": "17429:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18926, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17429:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17404:36:73" + }, + "returnParameters": { + "id": 18929, + "nodeType": "ParameterList", + "parameters": [], + "src": "17455:0:73" + }, + "scope": 25070, + "src": "17392:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18960, + "nodeType": "Block", + "src": "17631:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e7432353629", + "id": 18953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17681:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_67dd6ff15de5c635b9900811039f919659774d9843a07b7bcdfb1b54315e9200", + "typeString": "literal_string \"log(address,string,uint256)\"" + }, + "value": "log(address,string,uint256)" + }, + { + "id": 18954, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18943, + "src": "17712:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18955, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18945, + "src": "17716:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18956, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18947, + "src": "17720:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_67dd6ff15de5c635b9900811039f919659774d9843a07b7bcdfb1b54315e9200", + "typeString": "literal_string \"log(address,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18951, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17657:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "17661:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17657:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17657:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18950, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17641:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17641:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18959, + "nodeType": "ExpressionStatement", + "src": "17641:83:73" + } + ] + }, + "id": 18961, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17571:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18943, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17583:2:73", + "nodeType": "VariableDeclaration", + "scope": 18961, + "src": "17575:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18942, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17575:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18945, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17601:2:73", + "nodeType": "VariableDeclaration", + "scope": 18961, + "src": "17587:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18944, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17587:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18947, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17613:2:73", + "nodeType": "VariableDeclaration", + "scope": 18961, + "src": "17605:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17605:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17574:42:73" + }, + "returnParameters": { + "id": 18949, + "nodeType": "ParameterList", + "parameters": [], + "src": "17631:0:73" + }, + "scope": 25070, + "src": "17562:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 18980, + "nodeType": "Block", + "src": "17812:99:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e6729", + "id": 18973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17862:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + "value": "log(address,string,string)" + }, + { + "id": 18974, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18963, + "src": "17892:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18975, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18965, + "src": "17896:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18976, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18967, + "src": "17900:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18971, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17838:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "17842:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17838:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17838:65:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18970, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17822:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17822:82:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18979, + "nodeType": "ExpressionStatement", + "src": "17822:82:73" + } + ] + }, + "id": 18981, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17746:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18968, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18963, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17758:2:73", + "nodeType": "VariableDeclaration", + "scope": 18981, + "src": "17750:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18962, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17750:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18965, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17776:2:73", + "nodeType": "VariableDeclaration", + "scope": 18981, + "src": "17762:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18964, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17762:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18967, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17794:2:73", + "nodeType": "VariableDeclaration", + "scope": 18981, + "src": "17780:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18966, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17780:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "17749:48:73" + }, + "returnParameters": { + "id": 18969, + "nodeType": "ParameterList", + "parameters": [], + "src": "17812:0:73" + }, + "scope": 25070, + "src": "17737:174:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19000, + "nodeType": "Block", + "src": "17983:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c29", + "id": 18993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18033:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + "value": "log(address,string,bool)" + }, + { + "id": 18994, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18983, + "src": "18061:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18995, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18985, + "src": "18065:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18996, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18987, + "src": "18069:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18991, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18009:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18013:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18009:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18009:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18990, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "17993:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 18998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17993:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18999, + "nodeType": "ExpressionStatement", + "src": "17993:80:73" + } + ] + }, + "id": 19001, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17926:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 18988, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18983, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17938:2:73", + "nodeType": "VariableDeclaration", + "scope": 19001, + "src": "17930:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18982, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17930:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18985, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17956:2:73", + "nodeType": "VariableDeclaration", + "scope": 19001, + "src": "17942:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18984, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17942:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18987, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17965:2:73", + "nodeType": "VariableDeclaration", + "scope": 19001, + "src": "17960:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18986, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17960:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17929:39:73" + }, + "returnParameters": { + "id": 18989, + "nodeType": "ParameterList", + "parameters": [], + "src": "17983:0:73" + }, + "scope": 25070, + "src": "17917:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19020, + "nodeType": "Block", + "src": "18155:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c6164647265737329", + "id": 19013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18205:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + "value": "log(address,string,address)" + }, + { + "id": 19014, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19003, + "src": "18236:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19015, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19005, + "src": "18240:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19016, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19007, + "src": "18244:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19011, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18181:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18185:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18181:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18181:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19010, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18165:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18165:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19019, + "nodeType": "ExpressionStatement", + "src": "18165:83:73" + } + ] + }, + "id": 19021, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18095:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19003, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18107:2:73", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "18099:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18099:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19005, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18125:2:73", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "18111:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19004, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18111:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19007, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18137:2:73", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "18129:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19006, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18129:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "18098:42:73" + }, + "returnParameters": { + "id": 19009, + "nodeType": "ParameterList", + "parameters": [], + "src": "18155:0:73" + }, + "scope": 25070, + "src": "18086:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19040, + "nodeType": "Block", + "src": "18321:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e7432353629", + "id": 19033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18371:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9c4f99fb8e27f663a71adc9f15ace4bdc959202f3b7faa1c8ca25e5e7e8568f9", + "typeString": "literal_string \"log(address,bool,uint256)\"" + }, + "value": "log(address,bool,uint256)" + }, + { + "id": 19034, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19023, + "src": "18400:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19035, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19025, + "src": "18404:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19036, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19027, + "src": "18408:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9c4f99fb8e27f663a71adc9f15ace4bdc959202f3b7faa1c8ca25e5e7e8568f9", + "typeString": "literal_string \"log(address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19031, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18347:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19032, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18351:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18347:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18347:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19030, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18331:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18331:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19039, + "nodeType": "ExpressionStatement", + "src": "18331:81:73" + } + ] + }, + "id": 19041, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18270:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19023, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18282:2:73", + "nodeType": "VariableDeclaration", + "scope": 19041, + "src": "18274:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19022, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18274:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19025, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18291:2:73", + "nodeType": "VariableDeclaration", + "scope": 19041, + "src": "18286:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19024, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18286:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19027, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18303:2:73", + "nodeType": "VariableDeclaration", + "scope": 19041, + "src": "18295:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19026, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18295:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18273:33:73" + }, + "returnParameters": { + "id": 19029, + "nodeType": "ParameterList", + "parameters": [], + "src": "18321:0:73" + }, + "scope": 25070, + "src": "18261:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19060, + "nodeType": "Block", + "src": "18491:97:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e6729", + "id": 19053, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18541:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + "value": "log(address,bool,string)" + }, + { + "id": 19054, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19043, + "src": "18569:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19055, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19045, + "src": "18573:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19056, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19047, + "src": "18577:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19051, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18517:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19052, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18521:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18517:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18517:63:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19050, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18501:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18501:80:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19059, + "nodeType": "ExpressionStatement", + "src": "18501:80:73" + } + ] + }, + "id": 19061, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18434:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19048, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19043, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18446:2:73", + "nodeType": "VariableDeclaration", + "scope": 19061, + "src": "18438:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19042, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18438:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19045, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18455:2:73", + "nodeType": "VariableDeclaration", + "scope": 19061, + "src": "18450:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19044, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18450:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19047, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18473:2:73", + "nodeType": "VariableDeclaration", + "scope": 19061, + "src": "18459:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19046, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18459:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "18437:39:73" + }, + "returnParameters": { + "id": 19049, + "nodeType": "ParameterList", + "parameters": [], + "src": "18491:0:73" + }, + "scope": 25070, + "src": "18425:163:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19080, + "nodeType": "Block", + "src": "18651:95:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c29", + "id": 19073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18701:24:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + "value": "log(address,bool,bool)" + }, + { + "id": 19074, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19063, + "src": "18727:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19075, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19065, + "src": "18731:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19076, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19067, + "src": "18735:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19071, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18677:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19072, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18681:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18677:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18677:61:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19070, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18661:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18661:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19079, + "nodeType": "ExpressionStatement", + "src": "18661:78:73" + } + ] + }, + "id": 19081, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18603:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19063, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18615:2:73", + "nodeType": "VariableDeclaration", + "scope": 19081, + "src": "18607:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19062, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18607:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19065, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18624:2:73", + "nodeType": "VariableDeclaration", + "scope": 19081, + "src": "18619:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19064, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18619:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19067, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18633:2:73", + "nodeType": "VariableDeclaration", + "scope": 19081, + "src": "18628:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19066, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18628:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "18606:30:73" + }, + "returnParameters": { + "id": 19069, + "nodeType": "ParameterList", + "parameters": [], + "src": "18651:0:73" + }, + "scope": 25070, + "src": "18594:152:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19100, + "nodeType": "Block", + "src": "18812:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c6164647265737329", + "id": 19093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18862:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + "value": "log(address,bool,address)" + }, + { + "id": 19094, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19083, + "src": "18891:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19095, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19085, + "src": "18895:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19096, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19087, + "src": "18899:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18838:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "18842:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18838:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18838:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19090, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18822:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18822:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19099, + "nodeType": "ExpressionStatement", + "src": "18822:81:73" + } + ] + }, + "id": 19101, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18761:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19083, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18773:2:73", + "nodeType": "VariableDeclaration", + "scope": 19101, + "src": "18765:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19082, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18765:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19085, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18782:2:73", + "nodeType": "VariableDeclaration", + "scope": 19101, + "src": "18777:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19084, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18777:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19087, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18794:2:73", + "nodeType": "VariableDeclaration", + "scope": 19101, + "src": "18786:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19086, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18786:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "18764:33:73" + }, + "returnParameters": { + "id": 19089, + "nodeType": "ParameterList", + "parameters": [], + "src": "18812:0:73" + }, + "scope": 25070, + "src": "18752:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19120, + "nodeType": "Block", + "src": "18979:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e7432353629", + "id": 19113, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19029:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_17fe6185890336f35fbbd1b2962ba4f7207a4a65eb5b7443a7be8a152af930a4", + "typeString": "literal_string \"log(address,address,uint256)\"" + }, + "value": "log(address,address,uint256)" + }, + { + "id": 19114, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19103, + "src": "19061:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19115, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19105, + "src": "19065:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19116, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19107, + "src": "19069:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_17fe6185890336f35fbbd1b2962ba4f7207a4a65eb5b7443a7be8a152af930a4", + "typeString": "literal_string \"log(address,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19111, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19005:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19112, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19009:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19005:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19005:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19110, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "18989:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18989:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19119, + "nodeType": "ExpressionStatement", + "src": "18989:84:73" + } + ] + }, + "id": 19121, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18925:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19103, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18937:2:73", + "nodeType": "VariableDeclaration", + "scope": 19121, + "src": "18929:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18929:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19105, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18949:2:73", + "nodeType": "VariableDeclaration", + "scope": 19121, + "src": "18941:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18941:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19107, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18961:2:73", + "nodeType": "VariableDeclaration", + "scope": 19121, + "src": "18953:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19106, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18953:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18928:36:73" + }, + "returnParameters": { + "id": 19109, + "nodeType": "ParameterList", + "parameters": [], + "src": "18979:0:73" + }, + "scope": 25070, + "src": "18916:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19140, + "nodeType": "Block", + "src": "19155:100:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e6729", + "id": 19133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19205:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + "value": "log(address,address,string)" + }, + { + "id": 19134, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19123, + "src": "19236:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19135, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19125, + "src": "19240:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19136, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19127, + "src": "19244:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19131, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19181:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19185:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19181:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19181:66:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19130, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "19165:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19165:83:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19139, + "nodeType": "ExpressionStatement", + "src": "19165:83:73" + } + ] + }, + "id": 19141, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19095:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19123, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19107:2:73", + "nodeType": "VariableDeclaration", + "scope": 19141, + "src": "19099:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19122, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19099:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19125, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19119:2:73", + "nodeType": "VariableDeclaration", + "scope": 19141, + "src": "19111:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19124, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19111:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19127, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19137:2:73", + "nodeType": "VariableDeclaration", + "scope": 19141, + "src": "19123:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19126, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19123:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19098:42:73" + }, + "returnParameters": { + "id": 19129, + "nodeType": "ParameterList", + "parameters": [], + "src": "19155:0:73" + }, + "scope": 25070, + "src": "19086:169:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19160, + "nodeType": "Block", + "src": "19321:98:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c29", + "id": 19153, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19371:27:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + "value": "log(address,address,bool)" + }, + { + "id": 19154, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19143, + "src": "19400:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19155, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19145, + "src": "19404:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19156, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19147, + "src": "19408:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19151, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19347:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19351:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19347:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19347:64:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19150, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "19331:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19331:81:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19159, + "nodeType": "ExpressionStatement", + "src": "19331:81:73" + } + ] + }, + "id": 19161, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19270:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19143, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19282:2:73", + "nodeType": "VariableDeclaration", + "scope": 19161, + "src": "19274:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19274:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19145, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19294:2:73", + "nodeType": "VariableDeclaration", + "scope": 19161, + "src": "19286:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19144, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19286:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19147, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19303:2:73", + "nodeType": "VariableDeclaration", + "scope": 19161, + "src": "19298:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19146, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19298:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19273:33:73" + }, + "returnParameters": { + "id": 19149, + "nodeType": "ParameterList", + "parameters": [], + "src": "19321:0:73" + }, + "scope": 25070, + "src": "19261:158:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19180, + "nodeType": "Block", + "src": "19488:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c6164647265737329", + "id": 19173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19538:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + "value": "log(address,address,address)" + }, + { + "id": 19174, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19163, + "src": "19570:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19175, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19165, + "src": "19574:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19176, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19167, + "src": "19578:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19171, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19514:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19518:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19514:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19514:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19170, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "19498:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19498:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19179, + "nodeType": "ExpressionStatement", + "src": "19498:84:73" + } + ] + }, + "id": 19181, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19434:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19168, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19163, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19446:2:73", + "nodeType": "VariableDeclaration", + "scope": 19181, + "src": "19438:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19438:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19165, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19458:2:73", + "nodeType": "VariableDeclaration", + "scope": 19181, + "src": "19450:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19450:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19167, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19470:2:73", + "nodeType": "VariableDeclaration", + "scope": 19181, + "src": "19462:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19166, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19462:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19437:36:73" + }, + "returnParameters": { + "id": 19169, + "nodeType": "ParameterList", + "parameters": [], + "src": "19488:0:73" + }, + "scope": 25070, + "src": "19425:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19203, + "nodeType": "Block", + "src": "19670:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c75696e7432353629", + "id": 19195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19720:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_193fb8009d4d1e3c22da0dd831b1e3aed72b8cabd1ebf3967b4ab3c2bbcf1c4f", + "typeString": "literal_string \"log(uint256,uint256,uint256,uint256)\"" + }, + "value": "log(uint256,uint256,uint256,uint256)" + }, + { + "id": 19196, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19183, + "src": "19760:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19197, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19185, + "src": "19764:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19198, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19187, + "src": "19768:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19199, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19189, + "src": "19772:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_193fb8009d4d1e3c22da0dd831b1e3aed72b8cabd1ebf3967b4ab3c2bbcf1c4f", + "typeString": "literal_string \"log(uint256,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19193, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19696:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19700:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19696:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19696:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19192, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "19680:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19680:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19202, + "nodeType": "ExpressionStatement", + "src": "19680:96:73" + } + ] + }, + "id": 19204, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19604:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19190, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19183, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19616:2:73", + "nodeType": "VariableDeclaration", + "scope": 19204, + "src": "19608:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19182, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19608:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19185, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19628:2:73", + "nodeType": "VariableDeclaration", + "scope": 19204, + "src": "19620:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19184, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19620:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19187, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19640:2:73", + "nodeType": "VariableDeclaration", + "scope": 19204, + "src": "19632:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19186, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19632:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19189, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19652:2:73", + "nodeType": "VariableDeclaration", + "scope": 19204, + "src": "19644:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19644:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "19607:48:73" + }, + "returnParameters": { + "id": 19191, + "nodeType": "ParameterList", + "parameters": [], + "src": "19670:0:73" + }, + "scope": 25070, + "src": "19595:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19226, + "nodeType": "Block", + "src": "19870:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c737472696e6729", + "id": 19218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19920:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_59cfcbe3e387f57023dcccd8733484dcb5a23a41a25c4015c01a4e8d3520c4ef", + "typeString": "literal_string \"log(uint256,uint256,uint256,string)\"" + }, + "value": "log(uint256,uint256,uint256,string)" + }, + { + "id": 19219, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19206, + "src": "19959:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19220, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19208, + "src": "19963:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19221, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19210, + "src": "19967:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19222, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19212, + "src": "19971:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_59cfcbe3e387f57023dcccd8733484dcb5a23a41a25c4015c01a4e8d3520c4ef", + "typeString": "literal_string \"log(uint256,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19216, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19896:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "19900:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19896:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19896:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19215, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "19880:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "19880:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19225, + "nodeType": "ExpressionStatement", + "src": "19880:95:73" + } + ] + }, + "id": 19227, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19798:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19213, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19206, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19810:2:73", + "nodeType": "VariableDeclaration", + "scope": 19227, + "src": "19802:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19205, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19802:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19208, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19822:2:73", + "nodeType": "VariableDeclaration", + "scope": 19227, + "src": "19814:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19207, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19814:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19210, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19834:2:73", + "nodeType": "VariableDeclaration", + "scope": 19227, + "src": "19826:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19209, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19826:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19212, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19852:2:73", + "nodeType": "VariableDeclaration", + "scope": 19227, + "src": "19838:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19211, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19838:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19801:54:73" + }, + "returnParameters": { + "id": 19214, + "nodeType": "ParameterList", + "parameters": [], + "src": "19870:0:73" + }, + "scope": 25070, + "src": "19789:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19249, + "nodeType": "Block", + "src": "20060:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c626f6f6c29", + "id": 19241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20110:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c598d18505e9c7404a061484d6144251d0ef342167a57ace85723d498abac8e3", + "typeString": "literal_string \"log(uint256,uint256,uint256,bool)\"" + }, + "value": "log(uint256,uint256,uint256,bool)" + }, + { + "id": 19242, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19229, + "src": "20147:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19243, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19231, + "src": "20151:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19244, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19233, + "src": "20155:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19245, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19235, + "src": "20159:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c598d18505e9c7404a061484d6144251d0ef342167a57ace85723d498abac8e3", + "typeString": "literal_string \"log(uint256,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19239, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20086:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19240, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "20090:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20086:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20086:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19238, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "20070:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20070:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19248, + "nodeType": "ExpressionStatement", + "src": "20070:93:73" + } + ] + }, + "id": 19250, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19997:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19229, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20009:2:73", + "nodeType": "VariableDeclaration", + "scope": 19250, + "src": "20001:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19228, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20001:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19231, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20021:2:73", + "nodeType": "VariableDeclaration", + "scope": 19250, + "src": "20013:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19230, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20013:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19233, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20033:2:73", + "nodeType": "VariableDeclaration", + "scope": 19250, + "src": "20025:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19232, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20025:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19235, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20042:2:73", + "nodeType": "VariableDeclaration", + "scope": 19250, + "src": "20037:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19234, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20037:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20000:45:73" + }, + "returnParameters": { + "id": 19237, + "nodeType": "ParameterList", + "parameters": [], + "src": "20060:0:73" + }, + "scope": 25070, + "src": "19988:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19272, + "nodeType": "Block", + "src": "20251:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c6164647265737329", + "id": 19264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20301:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fa8185afaca325eb459625959e5610b99e97bbcba8d5834d7632610b4f237c79", + "typeString": "literal_string \"log(uint256,uint256,uint256,address)\"" + }, + "value": "log(uint256,uint256,uint256,address)" + }, + { + "id": 19265, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19252, + "src": "20341:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19266, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19254, + "src": "20345:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19267, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19256, + "src": "20349:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19268, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19258, + "src": "20353:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fa8185afaca325eb459625959e5610b99e97bbcba8d5834d7632610b4f237c79", + "typeString": "literal_string \"log(uint256,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19262, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20277:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "20281:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20277:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20277:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19261, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "20261:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20261:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19271, + "nodeType": "ExpressionStatement", + "src": "20261:96:73" + } + ] + }, + "id": 19273, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20185:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19259, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19252, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20197:2:73", + "nodeType": "VariableDeclaration", + "scope": 19273, + "src": "20189:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19251, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20189:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19254, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20209:2:73", + "nodeType": "VariableDeclaration", + "scope": 19273, + "src": "20201:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19253, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20201:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19256, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20221:2:73", + "nodeType": "VariableDeclaration", + "scope": 19273, + "src": "20213:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19255, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20213:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19258, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20233:2:73", + "nodeType": "VariableDeclaration", + "scope": 19273, + "src": "20225:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19257, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20225:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20188:48:73" + }, + "returnParameters": { + "id": 19260, + "nodeType": "ParameterList", + "parameters": [], + "src": "20251:0:73" + }, + "scope": 25070, + "src": "20176:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19295, + "nodeType": "Block", + "src": "20451:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c75696e7432353629", + "id": 19287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20501:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5da297eb5acf47b1a9c0089c080d654cc07f2a8c9aa94fc68af26a6405cde114", + "typeString": "literal_string \"log(uint256,uint256,string,uint256)\"" + }, + "value": "log(uint256,uint256,string,uint256)" + }, + { + "id": 19288, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19275, + "src": "20540:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19289, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19277, + "src": "20544:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19290, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19279, + "src": "20548:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19291, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19281, + "src": "20552:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5da297eb5acf47b1a9c0089c080d654cc07f2a8c9aa94fc68af26a6405cde114", + "typeString": "literal_string \"log(uint256,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19285, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20477:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "20481:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20477:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20477:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19284, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "20461:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20461:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19294, + "nodeType": "ExpressionStatement", + "src": "20461:95:73" + } + ] + }, + "id": 19296, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20379:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19282, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19275, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20391:2:73", + "nodeType": "VariableDeclaration", + "scope": 19296, + "src": "20383:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19274, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20383:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19277, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20403:2:73", + "nodeType": "VariableDeclaration", + "scope": 19296, + "src": "20395:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19276, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20395:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19279, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20421:2:73", + "nodeType": "VariableDeclaration", + "scope": 19296, + "src": "20407:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19278, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20407:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19281, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20433:2:73", + "nodeType": "VariableDeclaration", + "scope": 19296, + "src": "20425:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19280, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20425:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20382:54:73" + }, + "returnParameters": { + "id": 19283, + "nodeType": "ParameterList", + "parameters": [], + "src": "20451:0:73" + }, + "scope": 25070, + "src": "20370:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19318, + "nodeType": "Block", + "src": "20656:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c737472696e6729", + "id": 19310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20706:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_27d8afd2525217fff7302dbf79acc81edc09cb300d94f2503a4fb8a8115910e0", + "typeString": "literal_string \"log(uint256,uint256,string,string)\"" + }, + "value": "log(uint256,uint256,string,string)" + }, + { + "id": 19311, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19298, + "src": "20744:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19312, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19300, + "src": "20748:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19313, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19302, + "src": "20752:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19314, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19304, + "src": "20756:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_27d8afd2525217fff7302dbf79acc81edc09cb300d94f2503a4fb8a8115910e0", + "typeString": "literal_string \"log(uint256,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19308, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20682:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "20686:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20682:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20682:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19307, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "20666:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20666:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19317, + "nodeType": "ExpressionStatement", + "src": "20666:94:73" + } + ] + }, + "id": 19319, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20578:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19305, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19298, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20590:2:73", + "nodeType": "VariableDeclaration", + "scope": 19319, + "src": "20582:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19297, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20582:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19300, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20602:2:73", + "nodeType": "VariableDeclaration", + "scope": 19319, + "src": "20594:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19299, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20594:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19302, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20620:2:73", + "nodeType": "VariableDeclaration", + "scope": 19319, + "src": "20606:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19301, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20606:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19304, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20638:2:73", + "nodeType": "VariableDeclaration", + "scope": 19319, + "src": "20624:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19303, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20624:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "20581:60:73" + }, + "returnParameters": { + "id": 19306, + "nodeType": "ParameterList", + "parameters": [], + "src": "20656:0:73" + }, + "scope": 25070, + "src": "20569:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19341, + "nodeType": "Block", + "src": "20851:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c626f6f6c29", + "id": 19333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20901:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7af6ab2578caf14043420c6b292dcb787d09d31b13365d7673f201f9b2e310c9", + "typeString": "literal_string \"log(uint256,uint256,string,bool)\"" + }, + "value": "log(uint256,uint256,string,bool)" + }, + { + "id": 19334, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19321, + "src": "20937:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19335, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19323, + "src": "20941:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19336, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19325, + "src": "20945:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19337, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19327, + "src": "20949:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7af6ab2578caf14043420c6b292dcb787d09d31b13365d7673f201f9b2e310c9", + "typeString": "literal_string \"log(uint256,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20877:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "20881:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20877:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20877:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19330, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "20861:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "20861:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19340, + "nodeType": "ExpressionStatement", + "src": "20861:92:73" + } + ] + }, + "id": 19342, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20782:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19328, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19321, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20794:2:73", + "nodeType": "VariableDeclaration", + "scope": 19342, + "src": "20786:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19320, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20786:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19323, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20806:2:73", + "nodeType": "VariableDeclaration", + "scope": 19342, + "src": "20798:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19322, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20798:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19325, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20824:2:73", + "nodeType": "VariableDeclaration", + "scope": 19342, + "src": "20810:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19324, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20810:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19327, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20833:2:73", + "nodeType": "VariableDeclaration", + "scope": 19342, + "src": "20828:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19326, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20828:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20785:51:73" + }, + "returnParameters": { + "id": 19329, + "nodeType": "ParameterList", + "parameters": [], + "src": "20851:0:73" + }, + "scope": 25070, + "src": "20773:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19364, + "nodeType": "Block", + "src": "21047:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c6164647265737329", + "id": 19356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21097:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42d21db701843c064ab7fb7cddd0cda130fcc29c7289dd90519dfea1322b1a53", + "typeString": "literal_string \"log(uint256,uint256,string,address)\"" + }, + "value": "log(uint256,uint256,string,address)" + }, + { + "id": 19357, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19344, + "src": "21136:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19358, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19346, + "src": "21140:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19359, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19348, + "src": "21144:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19360, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19350, + "src": "21148:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42d21db701843c064ab7fb7cddd0cda130fcc29c7289dd90519dfea1322b1a53", + "typeString": "literal_string \"log(uint256,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19354, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21073:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "21077:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21073:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21073:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19353, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "21057:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21057:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19363, + "nodeType": "ExpressionStatement", + "src": "21057:95:73" + } + ] + }, + "id": 19365, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20975:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19351, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19344, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20987:2:73", + "nodeType": "VariableDeclaration", + "scope": 19365, + "src": "20979:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19343, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20979:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19346, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20999:2:73", + "nodeType": "VariableDeclaration", + "scope": 19365, + "src": "20991:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20991:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19348, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21017:2:73", + "nodeType": "VariableDeclaration", + "scope": 19365, + "src": "21003:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19347, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21003:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19350, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21029:2:73", + "nodeType": "VariableDeclaration", + "scope": 19365, + "src": "21021:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19349, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21021:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20978:54:73" + }, + "returnParameters": { + "id": 19352, + "nodeType": "ParameterList", + "parameters": [], + "src": "21047:0:73" + }, + "scope": 25070, + "src": "20966:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19387, + "nodeType": "Block", + "src": "21237:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c75696e7432353629", + "id": 19379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21287:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb7f6fd2c2005d3f08b2528135265cced621d1abf62716b05a9b62bc732577fd", + "typeString": "literal_string \"log(uint256,uint256,bool,uint256)\"" + }, + "value": "log(uint256,uint256,bool,uint256)" + }, + { + "id": 19380, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19367, + "src": "21324:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19381, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19369, + "src": "21328:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19382, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19371, + "src": "21332:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19383, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19373, + "src": "21336:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb7f6fd2c2005d3f08b2528135265cced621d1abf62716b05a9b62bc732577fd", + "typeString": "literal_string \"log(uint256,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19377, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21263:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "21267:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21263:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21263:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19376, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "21247:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21247:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19386, + "nodeType": "ExpressionStatement", + "src": "21247:93:73" + } + ] + }, + "id": 19388, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21174:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19367, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21186:2:73", + "nodeType": "VariableDeclaration", + "scope": 19388, + "src": "21178:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19366, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21178:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19369, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21198:2:73", + "nodeType": "VariableDeclaration", + "scope": 19388, + "src": "21190:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19368, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21190:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19371, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21207:2:73", + "nodeType": "VariableDeclaration", + "scope": 19388, + "src": "21202:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19370, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21202:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19373, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21219:2:73", + "nodeType": "VariableDeclaration", + "scope": 19388, + "src": "21211:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21211:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21177:45:73" + }, + "returnParameters": { + "id": 19375, + "nodeType": "ParameterList", + "parameters": [], + "src": "21237:0:73" + }, + "scope": 25070, + "src": "21165:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19410, + "nodeType": "Block", + "src": "21431:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c737472696e6729", + "id": 19402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21481:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5b4fc99467445b3de47079da2d48b3031bb8d3adcbee781cbdca55596f1414a", + "typeString": "literal_string \"log(uint256,uint256,bool,string)\"" + }, + "value": "log(uint256,uint256,bool,string)" + }, + { + "id": 19403, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19390, + "src": "21517:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19404, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19392, + "src": "21521:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19405, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19394, + "src": "21525:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19406, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19396, + "src": "21529:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5b4fc99467445b3de47079da2d48b3031bb8d3adcbee781cbdca55596f1414a", + "typeString": "literal_string \"log(uint256,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19400, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21457:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "21461:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21457:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21457:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19399, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "21441:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21441:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19409, + "nodeType": "ExpressionStatement", + "src": "21441:92:73" + } + ] + }, + "id": 19411, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21362:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19397, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19390, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21374:2:73", + "nodeType": "VariableDeclaration", + "scope": 19411, + "src": "21366:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19389, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21366:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19392, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21386:2:73", + "nodeType": "VariableDeclaration", + "scope": 19411, + "src": "21378:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19391, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21378:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19394, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21395:2:73", + "nodeType": "VariableDeclaration", + "scope": 19411, + "src": "21390:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19393, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21390:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19396, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21413:2:73", + "nodeType": "VariableDeclaration", + "scope": 19411, + "src": "21399:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19395, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21399:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "21365:51:73" + }, + "returnParameters": { + "id": 19398, + "nodeType": "ParameterList", + "parameters": [], + "src": "21431:0:73" + }, + "scope": 25070, + "src": "21353:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19433, + "nodeType": "Block", + "src": "21615:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c626f6f6c29", + "id": 19425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21665:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ab085ae680de5118cde80cb5e8cb1f7383786238f1394e82b7ab82553a0dd7fe", + "typeString": "literal_string \"log(uint256,uint256,bool,bool)\"" + }, + "value": "log(uint256,uint256,bool,bool)" + }, + { + "id": 19426, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19413, + "src": "21699:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19427, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19415, + "src": "21703:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19428, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19417, + "src": "21707:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19429, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19419, + "src": "21711:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ab085ae680de5118cde80cb5e8cb1f7383786238f1394e82b7ab82553a0dd7fe", + "typeString": "literal_string \"log(uint256,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19423, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21641:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "21645:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21641:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21641:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19422, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "21625:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21625:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19432, + "nodeType": "ExpressionStatement", + "src": "21625:90:73" + } + ] + }, + "id": 19434, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21555:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19420, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19413, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21567:2:73", + "nodeType": "VariableDeclaration", + "scope": 19434, + "src": "21559:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19412, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21559:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19415, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21579:2:73", + "nodeType": "VariableDeclaration", + "scope": 19434, + "src": "21571:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19414, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21571:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19417, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21588:2:73", + "nodeType": "VariableDeclaration", + "scope": 19434, + "src": "21583:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19416, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21583:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19419, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21597:2:73", + "nodeType": "VariableDeclaration", + "scope": 19434, + "src": "21592:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19418, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21592:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "21558:42:73" + }, + "returnParameters": { + "id": 19421, + "nodeType": "ParameterList", + "parameters": [], + "src": "21615:0:73" + }, + "scope": 25070, + "src": "21546:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19456, + "nodeType": "Block", + "src": "21800:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c6164647265737329", + "id": 19448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21850:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9a816a83f59c7e2fc96bb179b1fa8fd5307277d58bad9d6b835a280d4474fc1b", + "typeString": "literal_string \"log(uint256,uint256,bool,address)\"" + }, + "value": "log(uint256,uint256,bool,address)" + }, + { + "id": 19449, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19436, + "src": "21887:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19450, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19438, + "src": "21891:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19451, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19440, + "src": "21895:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19452, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19442, + "src": "21899:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9a816a83f59c7e2fc96bb179b1fa8fd5307277d58bad9d6b835a280d4474fc1b", + "typeString": "literal_string \"log(uint256,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19446, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21826:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "21830:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21826:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21826:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19445, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "21810:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "21810:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19455, + "nodeType": "ExpressionStatement", + "src": "21810:93:73" + } + ] + }, + "id": 19457, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21737:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19443, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19436, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21749:2:73", + "nodeType": "VariableDeclaration", + "scope": 19457, + "src": "21741:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19435, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21741:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19438, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21761:2:73", + "nodeType": "VariableDeclaration", + "scope": 19457, + "src": "21753:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19437, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21753:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19440, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21770:2:73", + "nodeType": "VariableDeclaration", + "scope": 19457, + "src": "21765:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19439, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21765:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19442, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21782:2:73", + "nodeType": "VariableDeclaration", + "scope": 19457, + "src": "21774:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19441, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21774:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "21740:45:73" + }, + "returnParameters": { + "id": 19444, + "nodeType": "ParameterList", + "parameters": [], + "src": "21800:0:73" + }, + "scope": 25070, + "src": "21728:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19479, + "nodeType": "Block", + "src": "21991:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c75696e7432353629", + "id": 19471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22041:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88f6e4b2e9fd1797748b31e8b1564d27784c7a0b5de7a75df225524205baab36", + "typeString": "literal_string \"log(uint256,uint256,address,uint256)\"" + }, + "value": "log(uint256,uint256,address,uint256)" + }, + { + "id": 19472, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19459, + "src": "22081:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19473, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19461, + "src": "22085:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19474, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19463, + "src": "22089:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19475, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19465, + "src": "22093:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88f6e4b2e9fd1797748b31e8b1564d27784c7a0b5de7a75df225524205baab36", + "typeString": "literal_string \"log(uint256,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19469, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22017:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "22021:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22017:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22017:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19468, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22001:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22001:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19478, + "nodeType": "ExpressionStatement", + "src": "22001:96:73" + } + ] + }, + "id": 19480, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21925:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19466, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19459, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21937:2:73", + "nodeType": "VariableDeclaration", + "scope": 19480, + "src": "21929:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19458, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21929:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19461, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21949:2:73", + "nodeType": "VariableDeclaration", + "scope": 19480, + "src": "21941:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21941:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19463, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21961:2:73", + "nodeType": "VariableDeclaration", + "scope": 19480, + "src": "21953:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19462, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21953:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19465, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21973:2:73", + "nodeType": "VariableDeclaration", + "scope": 19480, + "src": "21965:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19464, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21965:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21928:48:73" + }, + "returnParameters": { + "id": 19467, + "nodeType": "ParameterList", + "parameters": [], + "src": "21991:0:73" + }, + "scope": 25070, + "src": "21916:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19502, + "nodeType": "Block", + "src": "22191:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c737472696e6729", + "id": 19494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22241:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6cde40b8d4f88da65710732f1ce432c86447f486bf713e5763c0ab174df12f40", + "typeString": "literal_string \"log(uint256,uint256,address,string)\"" + }, + "value": "log(uint256,uint256,address,string)" + }, + { + "id": 19495, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19482, + "src": "22280:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19496, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19484, + "src": "22284:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19497, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19486, + "src": "22288:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19498, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19488, + "src": "22292:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6cde40b8d4f88da65710732f1ce432c86447f486bf713e5763c0ab174df12f40", + "typeString": "literal_string \"log(uint256,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19492, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22217:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "22221:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22217:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22217:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19491, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22201:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22201:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19501, + "nodeType": "ExpressionStatement", + "src": "22201:95:73" + } + ] + }, + "id": 19503, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22119:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19482, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22131:2:73", + "nodeType": "VariableDeclaration", + "scope": 19503, + "src": "22123:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19481, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22123:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19484, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22143:2:73", + "nodeType": "VariableDeclaration", + "scope": 19503, + "src": "22135:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19483, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22135:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19486, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22155:2:73", + "nodeType": "VariableDeclaration", + "scope": 19503, + "src": "22147:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19485, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22147:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19488, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22173:2:73", + "nodeType": "VariableDeclaration", + "scope": 19503, + "src": "22159:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19487, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22159:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "22122:54:73" + }, + "returnParameters": { + "id": 19490, + "nodeType": "ParameterList", + "parameters": [], + "src": "22191:0:73" + }, + "scope": 25070, + "src": "22110:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19525, + "nodeType": "Block", + "src": "22381:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c626f6f6c29", + "id": 19517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22431:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_15cac47617578377cd39f9593e7bb3ffa0e284336b9741dcc2c4151a93e1b201", + "typeString": "literal_string \"log(uint256,uint256,address,bool)\"" + }, + "value": "log(uint256,uint256,address,bool)" + }, + { + "id": 19518, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19505, + "src": "22468:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19519, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19507, + "src": "22472:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19520, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19509, + "src": "22476:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19521, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19511, + "src": "22480:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_15cac47617578377cd39f9593e7bb3ffa0e284336b9741dcc2c4151a93e1b201", + "typeString": "literal_string \"log(uint256,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19515, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22407:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19516, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "22411:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22407:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22407:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19514, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22391:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22391:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19524, + "nodeType": "ExpressionStatement", + "src": "22391:93:73" + } + ] + }, + "id": 19526, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22318:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19512, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19505, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22330:2:73", + "nodeType": "VariableDeclaration", + "scope": 19526, + "src": "22322:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19504, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22322:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19507, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22342:2:73", + "nodeType": "VariableDeclaration", + "scope": 19526, + "src": "22334:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19506, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22334:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19509, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22354:2:73", + "nodeType": "VariableDeclaration", + "scope": 19526, + "src": "22346:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19508, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22346:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19511, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22363:2:73", + "nodeType": "VariableDeclaration", + "scope": 19526, + "src": "22358:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19510, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22358:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22321:45:73" + }, + "returnParameters": { + "id": 19513, + "nodeType": "ParameterList", + "parameters": [], + "src": "22381:0:73" + }, + "scope": 25070, + "src": "22309:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19548, + "nodeType": "Block", + "src": "22572:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c6164647265737329", + "id": 19540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22622:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_56a5d1b1d2f0613b93371fc2b5ec91f6c2ba1375e1e4ff59b5061b56ca88e88d", + "typeString": "literal_string \"log(uint256,uint256,address,address)\"" + }, + "value": "log(uint256,uint256,address,address)" + }, + { + "id": 19541, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19528, + "src": "22662:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19542, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19530, + "src": "22666:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19543, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19532, + "src": "22670:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19544, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19534, + "src": "22674:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_56a5d1b1d2f0613b93371fc2b5ec91f6c2ba1375e1e4ff59b5061b56ca88e88d", + "typeString": "literal_string \"log(uint256,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19538, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22598:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "22602:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22598:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22598:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19537, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22582:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22582:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19547, + "nodeType": "ExpressionStatement", + "src": "22582:96:73" + } + ] + }, + "id": 19549, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22506:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19535, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19528, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22518:2:73", + "nodeType": "VariableDeclaration", + "scope": 19549, + "src": "22510:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19527, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22510:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19530, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22530:2:73", + "nodeType": "VariableDeclaration", + "scope": 19549, + "src": "22522:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19529, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22522:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19532, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22542:2:73", + "nodeType": "VariableDeclaration", + "scope": 19549, + "src": "22534:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19531, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22534:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19534, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22554:2:73", + "nodeType": "VariableDeclaration", + "scope": 19549, + "src": "22546:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22546:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22509:48:73" + }, + "returnParameters": { + "id": 19536, + "nodeType": "ParameterList", + "parameters": [], + "src": "22572:0:73" + }, + "scope": 25070, + "src": "22497:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19571, + "nodeType": "Block", + "src": "22772:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c75696e7432353629", + "id": 19563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22822:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82c25b74e3ddb6ea40e867e0a41af8848bdc6a88fd5e365497c46917573fd66f", + "typeString": "literal_string \"log(uint256,string,uint256,uint256)\"" + }, + "value": "log(uint256,string,uint256,uint256)" + }, + { + "id": 19564, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19551, + "src": "22861:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19565, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19553, + "src": "22865:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19566, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19555, + "src": "22869:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19567, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19557, + "src": "22873:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_82c25b74e3ddb6ea40e867e0a41af8848bdc6a88fd5e365497c46917573fd66f", + "typeString": "literal_string \"log(uint256,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19561, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22798:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "22802:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22798:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22798:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19560, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22782:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22782:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19570, + "nodeType": "ExpressionStatement", + "src": "22782:95:73" + } + ] + }, + "id": 19572, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22700:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19558, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19551, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22712:2:73", + "nodeType": "VariableDeclaration", + "scope": 19572, + "src": "22704:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19550, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22704:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19553, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22730:2:73", + "nodeType": "VariableDeclaration", + "scope": 19572, + "src": "22716:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19552, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22716:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19555, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22742:2:73", + "nodeType": "VariableDeclaration", + "scope": 19572, + "src": "22734:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19554, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22734:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19557, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22754:2:73", + "nodeType": "VariableDeclaration", + "scope": 19572, + "src": "22746:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19556, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22746:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22703:54:73" + }, + "returnParameters": { + "id": 19559, + "nodeType": "ParameterList", + "parameters": [], + "src": "22772:0:73" + }, + "scope": 25070, + "src": "22691:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19594, + "nodeType": "Block", + "src": "22977:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c737472696e6729", + "id": 19586, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23027:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b7b914cad3c94167dcd4b5ef970076918e96b3894a20503b7d3f9648bea8aace", + "typeString": "literal_string \"log(uint256,string,uint256,string)\"" + }, + "value": "log(uint256,string,uint256,string)" + }, + { + "id": 19587, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19574, + "src": "23065:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19588, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19576, + "src": "23069:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19589, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19578, + "src": "23073:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19590, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19580, + "src": "23077:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b7b914cad3c94167dcd4b5ef970076918e96b3894a20503b7d3f9648bea8aace", + "typeString": "literal_string \"log(uint256,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19584, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23003:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19585, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "23007:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23003:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23003:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19583, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "22987:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "22987:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19593, + "nodeType": "ExpressionStatement", + "src": "22987:94:73" + } + ] + }, + "id": 19595, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22899:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19581, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19574, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22911:2:73", + "nodeType": "VariableDeclaration", + "scope": 19595, + "src": "22903:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19573, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22903:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19576, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22929:2:73", + "nodeType": "VariableDeclaration", + "scope": 19595, + "src": "22915:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19575, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22915:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19578, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22941:2:73", + "nodeType": "VariableDeclaration", + "scope": 19595, + "src": "22933:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19577, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22933:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19580, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22959:2:73", + "nodeType": "VariableDeclaration", + "scope": 19595, + "src": "22945:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19579, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22945:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "22902:60:73" + }, + "returnParameters": { + "id": 19582, + "nodeType": "ParameterList", + "parameters": [], + "src": "22977:0:73" + }, + "scope": 25070, + "src": "22890:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19617, + "nodeType": "Block", + "src": "23172:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c626f6f6c29", + "id": 19609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23222:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_691a8f74cbf1a313fd1bdfd5dda19feaf4f9deac56f7ca7c4fa6386e5382a03c", + "typeString": "literal_string \"log(uint256,string,uint256,bool)\"" + }, + "value": "log(uint256,string,uint256,bool)" + }, + { + "id": 19610, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19597, + "src": "23258:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19611, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19599, + "src": "23262:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19612, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19601, + "src": "23266:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19613, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19603, + "src": "23270:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_691a8f74cbf1a313fd1bdfd5dda19feaf4f9deac56f7ca7c4fa6386e5382a03c", + "typeString": "literal_string \"log(uint256,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19607, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23198:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "23202:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23198:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23198:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19606, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "23182:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23182:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19616, + "nodeType": "ExpressionStatement", + "src": "23182:92:73" + } + ] + }, + "id": 19618, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23103:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19597, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23115:2:73", + "nodeType": "VariableDeclaration", + "scope": 19618, + "src": "23107:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19596, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23107:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19599, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23133:2:73", + "nodeType": "VariableDeclaration", + "scope": 19618, + "src": "23119:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19598, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23119:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19601, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23145:2:73", + "nodeType": "VariableDeclaration", + "scope": 19618, + "src": "23137:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19600, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23137:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19603, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23154:2:73", + "nodeType": "VariableDeclaration", + "scope": 19618, + "src": "23149:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19602, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23149:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "23106:51:73" + }, + "returnParameters": { + "id": 19605, + "nodeType": "ParameterList", + "parameters": [], + "src": "23172:0:73" + }, + "scope": 25070, + "src": "23094:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19640, + "nodeType": "Block", + "src": "23368:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c6164647265737329", + "id": 19632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23418:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b2279b4b3c26cbcd4374acce75e4c447a59a65883d849a72eaa051b3a07ec08", + "typeString": "literal_string \"log(uint256,string,uint256,address)\"" + }, + "value": "log(uint256,string,uint256,address)" + }, + { + "id": 19633, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19620, + "src": "23457:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19634, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19622, + "src": "23461:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19635, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19624, + "src": "23465:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19636, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19626, + "src": "23469:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b2279b4b3c26cbcd4374acce75e4c447a59a65883d849a72eaa051b3a07ec08", + "typeString": "literal_string \"log(uint256,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19630, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23394:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "23398:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23394:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23394:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19629, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "23378:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23378:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19639, + "nodeType": "ExpressionStatement", + "src": "23378:95:73" + } + ] + }, + "id": 19641, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23296:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19627, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19620, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23308:2:73", + "nodeType": "VariableDeclaration", + "scope": 19641, + "src": "23300:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19619, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23300:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19622, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23326:2:73", + "nodeType": "VariableDeclaration", + "scope": 19641, + "src": "23312:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19621, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23312:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19624, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23338:2:73", + "nodeType": "VariableDeclaration", + "scope": 19641, + "src": "23330:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19623, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23330:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19626, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23350:2:73", + "nodeType": "VariableDeclaration", + "scope": 19641, + "src": "23342:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19625, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23342:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23299:54:73" + }, + "returnParameters": { + "id": 19628, + "nodeType": "ParameterList", + "parameters": [], + "src": "23368:0:73" + }, + "scope": 25070, + "src": "23287:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19663, + "nodeType": "Block", + "src": "23573:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c75696e7432353629", + "id": 19655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23623:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b028c9bd0105e32bab3e2b1b4678f4cd49b1f267c4fcb1899043ad16b67c3dd1", + "typeString": "literal_string \"log(uint256,string,string,uint256)\"" + }, + "value": "log(uint256,string,string,uint256)" + }, + { + "id": 19656, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19643, + "src": "23661:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19657, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19645, + "src": "23665:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19658, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19647, + "src": "23669:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19659, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19649, + "src": "23673:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b028c9bd0105e32bab3e2b1b4678f4cd49b1f267c4fcb1899043ad16b67c3dd1", + "typeString": "literal_string \"log(uint256,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23599:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "23603:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23599:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23599:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19652, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "23583:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23583:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19662, + "nodeType": "ExpressionStatement", + "src": "23583:94:73" + } + ] + }, + "id": 19664, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23495:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19643, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23507:2:73", + "nodeType": "VariableDeclaration", + "scope": 19664, + "src": "23499:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23499:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19645, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23525:2:73", + "nodeType": "VariableDeclaration", + "scope": 19664, + "src": "23511:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19644, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23511:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19647, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23543:2:73", + "nodeType": "VariableDeclaration", + "scope": 19664, + "src": "23529:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19646, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23529:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19649, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23555:2:73", + "nodeType": "VariableDeclaration", + "scope": 19664, + "src": "23547:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19648, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23547:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23498:60:73" + }, + "returnParameters": { + "id": 19651, + "nodeType": "ParameterList", + "parameters": [], + "src": "23573:0:73" + }, + "scope": 25070, + "src": "23486:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19686, + "nodeType": "Block", + "src": "23783:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c737472696e6729", + "id": 19678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23833:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_21ad06836085541851abea445814b5a1baf9d3be52c1169a6570c83010dbea5a", + "typeString": "literal_string \"log(uint256,string,string,string)\"" + }, + "value": "log(uint256,string,string,string)" + }, + { + "id": 19679, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19666, + "src": "23870:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19680, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19668, + "src": "23874:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19681, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19670, + "src": "23878:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19682, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19672, + "src": "23882:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_21ad06836085541851abea445814b5a1baf9d3be52c1169a6570c83010dbea5a", + "typeString": "literal_string \"log(uint256,string,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19676, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23809:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "23813:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23809:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23809:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19675, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "23793:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23793:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19685, + "nodeType": "ExpressionStatement", + "src": "23793:93:73" + } + ] + }, + "id": 19687, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23699:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19673, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19666, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23711:2:73", + "nodeType": "VariableDeclaration", + "scope": 19687, + "src": "23703:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19665, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23703:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19668, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23729:2:73", + "nodeType": "VariableDeclaration", + "scope": 19687, + "src": "23715:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19667, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23715:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19670, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23747:2:73", + "nodeType": "VariableDeclaration", + "scope": 19687, + "src": "23733:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19669, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23733:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19672, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23765:2:73", + "nodeType": "VariableDeclaration", + "scope": 19687, + "src": "23751:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19671, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23751:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "23702:66:73" + }, + "returnParameters": { + "id": 19674, + "nodeType": "ParameterList", + "parameters": [], + "src": "23783:0:73" + }, + "scope": 25070, + "src": "23690:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19709, + "nodeType": "Block", + "src": "23983:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c626f6f6c29", + "id": 19701, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24033:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3a6b6bdf3265665181b9a9ab1338c75ebc293704c96a9a669654a5ba9f6d3e9", + "typeString": "literal_string \"log(uint256,string,string,bool)\"" + }, + "value": "log(uint256,string,string,bool)" + }, + { + "id": 19702, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19689, + "src": "24068:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19703, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19691, + "src": "24072:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19704, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19693, + "src": "24076:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19705, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19695, + "src": "24080:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3a6b6bdf3265665181b9a9ab1338c75ebc293704c96a9a669654a5ba9f6d3e9", + "typeString": "literal_string \"log(uint256,string,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19699, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24009:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19700, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24013:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24009:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24009:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19698, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "23993:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "23993:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19708, + "nodeType": "ExpressionStatement", + "src": "23993:91:73" + } + ] + }, + "id": 19710, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23908:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19696, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19689, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23920:2:73", + "nodeType": "VariableDeclaration", + "scope": 19710, + "src": "23912:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19688, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23912:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19691, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23938:2:73", + "nodeType": "VariableDeclaration", + "scope": 19710, + "src": "23924:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19690, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23924:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19693, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23956:2:73", + "nodeType": "VariableDeclaration", + "scope": 19710, + "src": "23942:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19692, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23942:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19695, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23965:2:73", + "nodeType": "VariableDeclaration", + "scope": 19710, + "src": "23960:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19694, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23960:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "23911:57:73" + }, + "returnParameters": { + "id": 19697, + "nodeType": "ParameterList", + "parameters": [], + "src": "23983:0:73" + }, + "scope": 25070, + "src": "23899:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19732, + "nodeType": "Block", + "src": "24184:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c6164647265737329", + "id": 19724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24234:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d583c60265ad086fe6216ef9aea37bf5de1e77bdf9055c734c55781d5f4b81d7", + "typeString": "literal_string \"log(uint256,string,string,address)\"" + }, + "value": "log(uint256,string,string,address)" + }, + { + "id": 19725, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19712, + "src": "24272:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19726, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19714, + "src": "24276:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19727, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19716, + "src": "24280:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19728, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19718, + "src": "24284:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d583c60265ad086fe6216ef9aea37bf5de1e77bdf9055c734c55781d5f4b81d7", + "typeString": "literal_string \"log(uint256,string,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19722, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24210:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24214:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24210:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24210:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19721, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "24194:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24194:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19731, + "nodeType": "ExpressionStatement", + "src": "24194:94:73" + } + ] + }, + "id": 19733, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24106:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19719, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19712, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24118:2:73", + "nodeType": "VariableDeclaration", + "scope": 19733, + "src": "24110:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19711, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24110:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19714, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24136:2:73", + "nodeType": "VariableDeclaration", + "scope": 19733, + "src": "24122:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19713, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24122:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19716, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24154:2:73", + "nodeType": "VariableDeclaration", + "scope": 19733, + "src": "24140:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19715, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24140:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19718, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24166:2:73", + "nodeType": "VariableDeclaration", + "scope": 19733, + "src": "24158:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24158:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24109:60:73" + }, + "returnParameters": { + "id": 19720, + "nodeType": "ParameterList", + "parameters": [], + "src": "24184:0:73" + }, + "scope": 25070, + "src": "24097:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19755, + "nodeType": "Block", + "src": "24379:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c75696e7432353629", + "id": 19747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24429:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf00988004d982e10d8d4fa7f603a1414e3b2b91cdfcf6f72808ca6c3100f96a", + "typeString": "literal_string \"log(uint256,string,bool,uint256)\"" + }, + "value": "log(uint256,string,bool,uint256)" + }, + { + "id": 19748, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19735, + "src": "24465:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19749, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19737, + "src": "24469:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19750, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19739, + "src": "24473:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19751, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19741, + "src": "24477:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf00988004d982e10d8d4fa7f603a1414e3b2b91cdfcf6f72808ca6c3100f96a", + "typeString": "literal_string \"log(uint256,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19745, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24405:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24409:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24405:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24405:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19744, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "24389:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24389:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19754, + "nodeType": "ExpressionStatement", + "src": "24389:92:73" + } + ] + }, + "id": 19756, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24310:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19742, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19735, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24322:2:73", + "nodeType": "VariableDeclaration", + "scope": 19756, + "src": "24314:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19734, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24314:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19737, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24340:2:73", + "nodeType": "VariableDeclaration", + "scope": 19756, + "src": "24326:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19736, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24326:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19739, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24349:2:73", + "nodeType": "VariableDeclaration", + "scope": 19756, + "src": "24344:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19738, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24344:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19741, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24361:2:73", + "nodeType": "VariableDeclaration", + "scope": 19756, + "src": "24353:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19740, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24353:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24313:51:73" + }, + "returnParameters": { + "id": 19743, + "nodeType": "ParameterList", + "parameters": [], + "src": "24379:0:73" + }, + "scope": 25070, + "src": "24301:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19778, + "nodeType": "Block", + "src": "24578:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c737472696e6729", + "id": 19770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24628:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2d423cdca0e3ae7a0a1a283a67d891c85787b75e0c5291c02d15317d67fe45c", + "typeString": "literal_string \"log(uint256,string,bool,string)\"" + }, + "value": "log(uint256,string,bool,string)" + }, + { + "id": 19771, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19758, + "src": "24663:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19772, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19760, + "src": "24667:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19773, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19762, + "src": "24671:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19774, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19764, + "src": "24675:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2d423cdca0e3ae7a0a1a283a67d891c85787b75e0c5291c02d15317d67fe45c", + "typeString": "literal_string \"log(uint256,string,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19768, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24604:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24608:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24604:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24604:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19767, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "24588:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24588:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19777, + "nodeType": "ExpressionStatement", + "src": "24588:91:73" + } + ] + }, + "id": 19779, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24503:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19765, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19758, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24515:2:73", + "nodeType": "VariableDeclaration", + "scope": 19779, + "src": "24507:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19757, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24507:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19760, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24533:2:73", + "nodeType": "VariableDeclaration", + "scope": 19779, + "src": "24519:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19759, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24519:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19762, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24542:2:73", + "nodeType": "VariableDeclaration", + "scope": 19779, + "src": "24537:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19761, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24537:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19764, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24560:2:73", + "nodeType": "VariableDeclaration", + "scope": 19779, + "src": "24546:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19763, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24546:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "24506:57:73" + }, + "returnParameters": { + "id": 19766, + "nodeType": "ParameterList", + "parameters": [], + "src": "24578:0:73" + }, + "scope": 25070, + "src": "24494:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19801, + "nodeType": "Block", + "src": "24767:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c626f6f6c29", + "id": 19793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24817:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba535d9cec0fb8bbd83e61b83d0f575d149cba6778a192239c1bdc5170053e4f", + "typeString": "literal_string \"log(uint256,string,bool,bool)\"" + }, + "value": "log(uint256,string,bool,bool)" + }, + { + "id": 19794, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19781, + "src": "24850:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19795, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19783, + "src": "24854:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19796, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19785, + "src": "24858:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19797, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19787, + "src": "24862:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ba535d9cec0fb8bbd83e61b83d0f575d149cba6778a192239c1bdc5170053e4f", + "typeString": "literal_string \"log(uint256,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19791, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24793:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24797:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24793:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24793:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19790, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "24777:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24777:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19800, + "nodeType": "ExpressionStatement", + "src": "24777:89:73" + } + ] + }, + "id": 19802, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24701:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19788, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19781, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24713:2:73", + "nodeType": "VariableDeclaration", + "scope": 19802, + "src": "24705:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19780, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24705:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19783, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24731:2:73", + "nodeType": "VariableDeclaration", + "scope": 19802, + "src": "24717:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19782, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24717:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19785, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24740:2:73", + "nodeType": "VariableDeclaration", + "scope": 19802, + "src": "24735:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19784, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24735:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19787, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24749:2:73", + "nodeType": "VariableDeclaration", + "scope": 19802, + "src": "24744:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19786, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24744:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "24704:48:73" + }, + "returnParameters": { + "id": 19789, + "nodeType": "ParameterList", + "parameters": [], + "src": "24767:0:73" + }, + "scope": 25070, + "src": "24692:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19824, + "nodeType": "Block", + "src": "24957:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c6164647265737329", + "id": 19816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25007:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae2ec581fba979c4f79aae94f13936ff6bb7e283817b2ec0602d9daa028a1550", + "typeString": "literal_string \"log(uint256,string,bool,address)\"" + }, + "value": "log(uint256,string,bool,address)" + }, + { + "id": 19817, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19804, + "src": "25043:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19818, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19806, + "src": "25047:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19819, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19808, + "src": "25051:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19820, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19810, + "src": "25055:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ae2ec581fba979c4f79aae94f13936ff6bb7e283817b2ec0602d9daa028a1550", + "typeString": "literal_string \"log(uint256,string,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19814, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24983:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "24987:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24983:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24983:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19813, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "24967:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "24967:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19823, + "nodeType": "ExpressionStatement", + "src": "24967:92:73" + } + ] + }, + "id": 19825, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24888:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19804, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24900:2:73", + "nodeType": "VariableDeclaration", + "scope": 19825, + "src": "24892:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24892:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19806, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24918:2:73", + "nodeType": "VariableDeclaration", + "scope": 19825, + "src": "24904:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19805, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24904:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19808, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24927:2:73", + "nodeType": "VariableDeclaration", + "scope": 19825, + "src": "24922:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19807, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24922:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19810, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24939:2:73", + "nodeType": "VariableDeclaration", + "scope": 19825, + "src": "24931:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19809, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24931:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24891:51:73" + }, + "returnParameters": { + "id": 19812, + "nodeType": "ParameterList", + "parameters": [], + "src": "24957:0:73" + }, + "scope": 25070, + "src": "24879:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19847, + "nodeType": "Block", + "src": "25153:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c75696e7432353629", + "id": 19839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25203:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e8d3018d32ee5012095e63c81679b366f06035e83d43be351e9c327886860908", + "typeString": "literal_string \"log(uint256,string,address,uint256)\"" + }, + "value": "log(uint256,string,address,uint256)" + }, + { + "id": 19840, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19827, + "src": "25242:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19841, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19829, + "src": "25246:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19842, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19831, + "src": "25250:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19843, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19833, + "src": "25254:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e8d3018d32ee5012095e63c81679b366f06035e83d43be351e9c327886860908", + "typeString": "literal_string \"log(uint256,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19837, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25179:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "25183:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25179:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25179:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19836, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "25163:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25163:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19846, + "nodeType": "ExpressionStatement", + "src": "25163:95:73" + } + ] + }, + "id": 19848, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25081:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19834, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19827, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25093:2:73", + "nodeType": "VariableDeclaration", + "scope": 19848, + "src": "25085:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19826, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25085:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19829, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25111:2:73", + "nodeType": "VariableDeclaration", + "scope": 19848, + "src": "25097:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19828, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25097:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19831, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25123:2:73", + "nodeType": "VariableDeclaration", + "scope": 19848, + "src": "25115:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19830, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25115:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19833, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25135:2:73", + "nodeType": "VariableDeclaration", + "scope": 19848, + "src": "25127:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19832, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25127:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25084:54:73" + }, + "returnParameters": { + "id": 19835, + "nodeType": "ParameterList", + "parameters": [], + "src": "25153:0:73" + }, + "scope": 25070, + "src": "25072:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19870, + "nodeType": "Block", + "src": "25358:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c737472696e6729", + "id": 19862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25408:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9c3adfa1394c3989d93ade538d03d04b05867057c1dd54721ae2c85f9a1a4720", + "typeString": "literal_string \"log(uint256,string,address,string)\"" + }, + "value": "log(uint256,string,address,string)" + }, + { + "id": 19863, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19850, + "src": "25446:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19864, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19852, + "src": "25450:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19865, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19854, + "src": "25454:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19866, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19856, + "src": "25458:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9c3adfa1394c3989d93ade538d03d04b05867057c1dd54721ae2c85f9a1a4720", + "typeString": "literal_string \"log(uint256,string,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19860, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25384:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "25388:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25384:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25384:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19859, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "25368:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25368:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19869, + "nodeType": "ExpressionStatement", + "src": "25368:94:73" + } + ] + }, + "id": 19871, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25280:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19850, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25292:2:73", + "nodeType": "VariableDeclaration", + "scope": 19871, + "src": "25284:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19849, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25284:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19852, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25310:2:73", + "nodeType": "VariableDeclaration", + "scope": 19871, + "src": "25296:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19851, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25296:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19854, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25322:2:73", + "nodeType": "VariableDeclaration", + "scope": 19871, + "src": "25314:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19853, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25314:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19856, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25340:2:73", + "nodeType": "VariableDeclaration", + "scope": 19871, + "src": "25326:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19855, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25326:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "25283:60:73" + }, + "returnParameters": { + "id": 19858, + "nodeType": "ParameterList", + "parameters": [], + "src": "25358:0:73" + }, + "scope": 25070, + "src": "25271:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19893, + "nodeType": "Block", + "src": "25553:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c626f6f6c29", + "id": 19885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25603:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90c30a564e5b352d6dfee73888402a5685ca327aad7827d5040904440ee085c5", + "typeString": "literal_string \"log(uint256,string,address,bool)\"" + }, + "value": "log(uint256,string,address,bool)" + }, + { + "id": 19886, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19873, + "src": "25639:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19887, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19875, + "src": "25643:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19888, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19877, + "src": "25647:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19889, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19879, + "src": "25651:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90c30a564e5b352d6dfee73888402a5685ca327aad7827d5040904440ee085c5", + "typeString": "literal_string \"log(uint256,string,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19883, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25579:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "25583:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25579:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25579:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19882, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "25563:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25563:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19892, + "nodeType": "ExpressionStatement", + "src": "25563:92:73" + } + ] + }, + "id": 19894, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25484:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19873, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25496:2:73", + "nodeType": "VariableDeclaration", + "scope": 19894, + "src": "25488:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19872, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25488:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19875, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25514:2:73", + "nodeType": "VariableDeclaration", + "scope": 19894, + "src": "25500:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19874, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25500:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19877, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25526:2:73", + "nodeType": "VariableDeclaration", + "scope": 19894, + "src": "25518:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19876, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25518:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19879, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25535:2:73", + "nodeType": "VariableDeclaration", + "scope": 19894, + "src": "25530:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19878, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25530:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "25487:51:73" + }, + "returnParameters": { + "id": 19881, + "nodeType": "ParameterList", + "parameters": [], + "src": "25553:0:73" + }, + "scope": 25070, + "src": "25475:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19916, + "nodeType": "Block", + "src": "25749:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c6164647265737329", + "id": 19908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25799:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6168ed618844a2c75dc49207e69cdff562cd2faf2e74aa5192211a023611c6bd", + "typeString": "literal_string \"log(uint256,string,address,address)\"" + }, + "value": "log(uint256,string,address,address)" + }, + { + "id": 19909, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19896, + "src": "25838:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19910, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19898, + "src": "25842:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19911, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19900, + "src": "25846:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19912, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19902, + "src": "25850:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6168ed618844a2c75dc49207e69cdff562cd2faf2e74aa5192211a023611c6bd", + "typeString": "literal_string \"log(uint256,string,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19906, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25775:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "25779:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25775:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25775:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19905, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "25759:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25759:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19915, + "nodeType": "ExpressionStatement", + "src": "25759:95:73" + } + ] + }, + "id": 19917, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25677:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19896, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25689:2:73", + "nodeType": "VariableDeclaration", + "scope": 19917, + "src": "25681:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19895, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25681:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19898, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25707:2:73", + "nodeType": "VariableDeclaration", + "scope": 19917, + "src": "25693:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19897, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25693:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19900, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25719:2:73", + "nodeType": "VariableDeclaration", + "scope": 19917, + "src": "25711:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19899, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25711:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19902, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25731:2:73", + "nodeType": "VariableDeclaration", + "scope": 19917, + "src": "25723:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25723:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "25680:54:73" + }, + "returnParameters": { + "id": 19904, + "nodeType": "ParameterList", + "parameters": [], + "src": "25749:0:73" + }, + "scope": 25070, + "src": "25668:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19939, + "nodeType": "Block", + "src": "25939:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c75696e7432353629", + "id": 19931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25989:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c6acc7a8396e6de9a5a1476aecf2cbff57758b174747b0371b7f3994e930b8b4", + "typeString": "literal_string \"log(uint256,bool,uint256,uint256)\"" + }, + "value": "log(uint256,bool,uint256,uint256)" + }, + { + "id": 19932, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19919, + "src": "26026:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19933, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19921, + "src": "26030:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19934, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19923, + "src": "26034:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19935, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19925, + "src": "26038:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c6acc7a8396e6de9a5a1476aecf2cbff57758b174747b0371b7f3994e930b8b4", + "typeString": "literal_string \"log(uint256,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19929, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25965:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "25969:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25965:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25965:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19928, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "25949:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "25949:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19938, + "nodeType": "ExpressionStatement", + "src": "25949:93:73" + } + ] + }, + "id": 19940, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25876:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19919, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25888:2:73", + "nodeType": "VariableDeclaration", + "scope": 19940, + "src": "25880:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19918, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25880:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19921, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25897:2:73", + "nodeType": "VariableDeclaration", + "scope": 19940, + "src": "25892:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19920, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25892:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19923, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25909:2:73", + "nodeType": "VariableDeclaration", + "scope": 19940, + "src": "25901:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19922, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25901:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19925, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25921:2:73", + "nodeType": "VariableDeclaration", + "scope": 19940, + "src": "25913:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25913:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25879:45:73" + }, + "returnParameters": { + "id": 19927, + "nodeType": "ParameterList", + "parameters": [], + "src": "25939:0:73" + }, + "scope": 25070, + "src": "25867:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19962, + "nodeType": "Block", + "src": "26133:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c737472696e6729", + "id": 19954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26183:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de03e77403acbacf9b1b18c1115984c9fba2c45e2eec9f12c266ada3f62a0d1b", + "typeString": "literal_string \"log(uint256,bool,uint256,string)\"" + }, + "value": "log(uint256,bool,uint256,string)" + }, + { + "id": 19955, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19942, + "src": "26219:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19956, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19944, + "src": "26223:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19957, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19946, + "src": "26227:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19958, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19948, + "src": "26231:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de03e77403acbacf9b1b18c1115984c9fba2c45e2eec9f12c266ada3f62a0d1b", + "typeString": "literal_string \"log(uint256,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19952, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26159:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "26163:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26159:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26159:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19951, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "26143:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26143:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19961, + "nodeType": "ExpressionStatement", + "src": "26143:92:73" + } + ] + }, + "id": 19963, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26064:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19942, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26076:2:73", + "nodeType": "VariableDeclaration", + "scope": 19963, + "src": "26068:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19941, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26068:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19944, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26085:2:73", + "nodeType": "VariableDeclaration", + "scope": 19963, + "src": "26080:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19943, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26080:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19946, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26097:2:73", + "nodeType": "VariableDeclaration", + "scope": 19963, + "src": "26089:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19945, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26089:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19948, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26115:2:73", + "nodeType": "VariableDeclaration", + "scope": 19963, + "src": "26101:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19947, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26101:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "26067:51:73" + }, + "returnParameters": { + "id": 19950, + "nodeType": "ParameterList", + "parameters": [], + "src": "26133:0:73" + }, + "scope": 25070, + "src": "26055:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 19985, + "nodeType": "Block", + "src": "26317:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c626f6f6c29", + "id": 19977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26367:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91a02e2ac8ae09683fa28beba3fd130b88054c89e51901b8e0510c8e25aa37d1", + "typeString": "literal_string \"log(uint256,bool,uint256,bool)\"" + }, + "value": "log(uint256,bool,uint256,bool)" + }, + { + "id": 19978, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19965, + "src": "26401:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19979, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19967, + "src": "26405:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19980, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19969, + "src": "26409:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19981, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19971, + "src": "26413:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91a02e2ac8ae09683fa28beba3fd130b88054c89e51901b8e0510c8e25aa37d1", + "typeString": "literal_string \"log(uint256,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19975, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26343:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "26347:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26343:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26343:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19974, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "26327:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 19983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26327:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19984, + "nodeType": "ExpressionStatement", + "src": "26327:90:73" + } + ] + }, + "id": 19986, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26257:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19972, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19965, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26269:2:73", + "nodeType": "VariableDeclaration", + "scope": 19986, + "src": "26261:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19964, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26261:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19967, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26278:2:73", + "nodeType": "VariableDeclaration", + "scope": 19986, + "src": "26273:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19966, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26273:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19969, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26290:2:73", + "nodeType": "VariableDeclaration", + "scope": 19986, + "src": "26282:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19968, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26282:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19971, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26299:2:73", + "nodeType": "VariableDeclaration", + "scope": 19986, + "src": "26294:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19970, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26294:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "26260:42:73" + }, + "returnParameters": { + "id": 19973, + "nodeType": "ParameterList", + "parameters": [], + "src": "26317:0:73" + }, + "scope": 25070, + "src": "26248:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20008, + "nodeType": "Block", + "src": "26502:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c6164647265737329", + "id": 20000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26552:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88cb6041693b97a5282ad65a65484c065fbc3d3a4dac698c427f5b30bb33b29b", + "typeString": "literal_string \"log(uint256,bool,uint256,address)\"" + }, + "value": "log(uint256,bool,uint256,address)" + }, + { + "id": 20001, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19988, + "src": "26589:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20002, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19990, + "src": "26593:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20003, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19992, + "src": "26597:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20004, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19994, + "src": "26601:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88cb6041693b97a5282ad65a65484c065fbc3d3a4dac698c427f5b30bb33b29b", + "typeString": "literal_string \"log(uint256,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19998, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26528:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "26532:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26528:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26528:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19997, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "26512:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26512:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20007, + "nodeType": "ExpressionStatement", + "src": "26512:93:73" + } + ] + }, + "id": 20009, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26439:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 19995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19988, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26451:2:73", + "nodeType": "VariableDeclaration", + "scope": 20009, + "src": "26443:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19987, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26443:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19990, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26460:2:73", + "nodeType": "VariableDeclaration", + "scope": 20009, + "src": "26455:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19989, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26455:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19992, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26472:2:73", + "nodeType": "VariableDeclaration", + "scope": 20009, + "src": "26464:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19991, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26464:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19994, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26484:2:73", + "nodeType": "VariableDeclaration", + "scope": 20009, + "src": "26476:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26476:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "26442:45:73" + }, + "returnParameters": { + "id": 19996, + "nodeType": "ParameterList", + "parameters": [], + "src": "26502:0:73" + }, + "scope": 25070, + "src": "26430:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20031, + "nodeType": "Block", + "src": "26696:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c75696e7432353629", + "id": 20023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26746:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c1d07463509a567bf9962980ac948a2ea7c76a53c189a607b7b35b14e806be8", + "typeString": "literal_string \"log(uint256,bool,string,uint256)\"" + }, + "value": "log(uint256,bool,string,uint256)" + }, + { + "id": 20024, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20011, + "src": "26782:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20025, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20013, + "src": "26786:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20026, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20015, + "src": "26790:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20027, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20017, + "src": "26794:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c1d07463509a567bf9962980ac948a2ea7c76a53c189a607b7b35b14e806be8", + "typeString": "literal_string \"log(uint256,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20021, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26722:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "26726:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26722:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26722:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20020, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "26706:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26706:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20030, + "nodeType": "ExpressionStatement", + "src": "26706:92:73" + } + ] + }, + "id": 20032, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26627:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20011, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26639:2:73", + "nodeType": "VariableDeclaration", + "scope": 20032, + "src": "26631:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20010, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26631:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20013, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26648:2:73", + "nodeType": "VariableDeclaration", + "scope": 20032, + "src": "26643:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20012, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26643:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20015, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26666:2:73", + "nodeType": "VariableDeclaration", + "scope": 20032, + "src": "26652:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20014, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26652:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20017, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26678:2:73", + "nodeType": "VariableDeclaration", + "scope": 20032, + "src": "26670:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26670:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "26630:51:73" + }, + "returnParameters": { + "id": 20019, + "nodeType": "ParameterList", + "parameters": [], + "src": "26696:0:73" + }, + "scope": 25070, + "src": "26618:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20054, + "nodeType": "Block", + "src": "26895:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c737472696e6729", + "id": 20046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26945:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_68c8b8bd8cd0cfd8add7c6745840520db0bd1049365ac415de6367b3b79b5ddd", + "typeString": "literal_string \"log(uint256,bool,string,string)\"" + }, + "value": "log(uint256,bool,string,string)" + }, + { + "id": 20047, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20034, + "src": "26980:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20048, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20036, + "src": "26984:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20049, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20038, + "src": "26988:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20050, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20040, + "src": "26992:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_68c8b8bd8cd0cfd8add7c6745840520db0bd1049365ac415de6367b3b79b5ddd", + "typeString": "literal_string \"log(uint256,bool,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20044, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26921:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "26925:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26921:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26921:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20043, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "26905:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "26905:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20053, + "nodeType": "ExpressionStatement", + "src": "26905:91:73" + } + ] + }, + "id": 20055, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26820:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20041, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20034, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26832:2:73", + "nodeType": "VariableDeclaration", + "scope": 20055, + "src": "26824:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20033, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26824:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20036, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26841:2:73", + "nodeType": "VariableDeclaration", + "scope": 20055, + "src": "26836:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20035, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26836:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20038, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26859:2:73", + "nodeType": "VariableDeclaration", + "scope": 20055, + "src": "26845:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20037, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26845:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20040, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26877:2:73", + "nodeType": "VariableDeclaration", + "scope": 20055, + "src": "26863:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20039, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26863:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "26823:57:73" + }, + "returnParameters": { + "id": 20042, + "nodeType": "ParameterList", + "parameters": [], + "src": "26895:0:73" + }, + "scope": 25070, + "src": "26811:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20077, + "nodeType": "Block", + "src": "27084:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c626f6f6c29", + "id": 20069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27134:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb928d7f2c458ba40d8ba853c60153b2f73ca9189d4be051103bc8a6c10d45ad", + "typeString": "literal_string \"log(uint256,bool,string,bool)\"" + }, + "value": "log(uint256,bool,string,bool)" + }, + { + "id": 20070, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20057, + "src": "27167:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20071, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20059, + "src": "27171:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20072, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20061, + "src": "27175:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20073, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20063, + "src": "27179:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb928d7f2c458ba40d8ba853c60153b2f73ca9189d4be051103bc8a6c10d45ad", + "typeString": "literal_string \"log(uint256,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20067, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27110:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "27114:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27110:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27110:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20066, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "27094:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27094:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20076, + "nodeType": "ExpressionStatement", + "src": "27094:89:73" + } + ] + }, + "id": 20078, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27018:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20064, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20057, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27030:2:73", + "nodeType": "VariableDeclaration", + "scope": 20078, + "src": "27022:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20056, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27022:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20059, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27039:2:73", + "nodeType": "VariableDeclaration", + "scope": 20078, + "src": "27034:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20058, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27034:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20061, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27057:2:73", + "nodeType": "VariableDeclaration", + "scope": 20078, + "src": "27043:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20060, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27043:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20063, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27066:2:73", + "nodeType": "VariableDeclaration", + "scope": 20078, + "src": "27061:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20062, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27061:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27021:48:73" + }, + "returnParameters": { + "id": 20065, + "nodeType": "ParameterList", + "parameters": [], + "src": "27084:0:73" + }, + "scope": 25070, + "src": "27009:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20100, + "nodeType": "Block", + "src": "27274:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c6164647265737329", + "id": 20092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27324:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef529018e81552426f837435fb92b39b88965df2736546faff28c9f06e5f58b5", + "typeString": "literal_string \"log(uint256,bool,string,address)\"" + }, + "value": "log(uint256,bool,string,address)" + }, + { + "id": 20093, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20080, + "src": "27360:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20094, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20082, + "src": "27364:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20095, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20084, + "src": "27368:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20096, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20086, + "src": "27372:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef529018e81552426f837435fb92b39b88965df2736546faff28c9f06e5f58b5", + "typeString": "literal_string \"log(uint256,bool,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20090, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27300:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "27304:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27300:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27300:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20089, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "27284:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27284:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20099, + "nodeType": "ExpressionStatement", + "src": "27284:92:73" + } + ] + }, + "id": 20101, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27205:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20087, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20080, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27217:2:73", + "nodeType": "VariableDeclaration", + "scope": 20101, + "src": "27209:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20079, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27209:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20082, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27226:2:73", + "nodeType": "VariableDeclaration", + "scope": 20101, + "src": "27221:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20081, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27221:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20084, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27244:2:73", + "nodeType": "VariableDeclaration", + "scope": 20101, + "src": "27230:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20083, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27230:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20086, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27256:2:73", + "nodeType": "VariableDeclaration", + "scope": 20101, + "src": "27248:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20085, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27248:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "27208:51:73" + }, + "returnParameters": { + "id": 20088, + "nodeType": "ParameterList", + "parameters": [], + "src": "27274:0:73" + }, + "scope": 25070, + "src": "27196:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20123, + "nodeType": "Block", + "src": "27458:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 20115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27508:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7464ce2380e6490f75dd524dd03612157b27bca22ecbf1bc2f0ca22ac41015d1", + "typeString": "literal_string \"log(uint256,bool,bool,uint256)\"" + }, + "value": "log(uint256,bool,bool,uint256)" + }, + { + "id": 20116, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20103, + "src": "27542:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20117, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20105, + "src": "27546:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20118, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20107, + "src": "27550:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20119, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20109, + "src": "27554:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7464ce2380e6490f75dd524dd03612157b27bca22ecbf1bc2f0ca22ac41015d1", + "typeString": "literal_string \"log(uint256,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27484:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "27488:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27484:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27484:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20112, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "27468:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27468:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20122, + "nodeType": "ExpressionStatement", + "src": "27468:90:73" + } + ] + }, + "id": 20124, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27398:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20103, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27410:2:73", + "nodeType": "VariableDeclaration", + "scope": 20124, + "src": "27402:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20102, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27402:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20105, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27419:2:73", + "nodeType": "VariableDeclaration", + "scope": 20124, + "src": "27414:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20104, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27414:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20107, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27428:2:73", + "nodeType": "VariableDeclaration", + "scope": 20124, + "src": "27423:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20106, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27423:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20109, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27440:2:73", + "nodeType": "VariableDeclaration", + "scope": 20124, + "src": "27432:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20108, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27432:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "27401:42:73" + }, + "returnParameters": { + "id": 20111, + "nodeType": "ParameterList", + "parameters": [], + "src": "27458:0:73" + }, + "scope": 25070, + "src": "27389:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20146, + "nodeType": "Block", + "src": "27646:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c737472696e6729", + "id": 20138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27696:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dddb956172e374c580dd136b5b8151c6400d22ece6b561a1010b6b9e902dd439", + "typeString": "literal_string \"log(uint256,bool,bool,string)\"" + }, + "value": "log(uint256,bool,bool,string)" + }, + { + "id": 20139, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20126, + "src": "27729:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20140, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20128, + "src": "27733:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20141, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20130, + "src": "27737:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20142, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20132, + "src": "27741:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dddb956172e374c580dd136b5b8151c6400d22ece6b561a1010b6b9e902dd439", + "typeString": "literal_string \"log(uint256,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20136, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27672:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20137, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "27676:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27672:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27672:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20135, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "27656:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27656:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20145, + "nodeType": "ExpressionStatement", + "src": "27656:89:73" + } + ] + }, + "id": 20147, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27580:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20133, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20126, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27592:2:73", + "nodeType": "VariableDeclaration", + "scope": 20147, + "src": "27584:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20125, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27584:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20128, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27601:2:73", + "nodeType": "VariableDeclaration", + "scope": 20147, + "src": "27596:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20127, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27596:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20130, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27610:2:73", + "nodeType": "VariableDeclaration", + "scope": 20147, + "src": "27605:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20129, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27605:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20132, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27628:2:73", + "nodeType": "VariableDeclaration", + "scope": 20147, + "src": "27614:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20131, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27614:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "27583:48:73" + }, + "returnParameters": { + "id": 20134, + "nodeType": "ParameterList", + "parameters": [], + "src": "27646:0:73" + }, + "scope": 25070, + "src": "27571:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20169, + "nodeType": "Block", + "src": "27824:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 20161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27874:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b6f577a1520f8fa7d40eaff9dcd5f293e28b7606bd07d0a450b13db93da80473", + "typeString": "literal_string \"log(uint256,bool,bool,bool)\"" + }, + "value": "log(uint256,bool,bool,bool)" + }, + { + "id": 20162, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20149, + "src": "27905:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20163, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20151, + "src": "27909:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20164, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20153, + "src": "27913:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20165, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20155, + "src": "27917:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b6f577a1520f8fa7d40eaff9dcd5f293e28b7606bd07d0a450b13db93da80473", + "typeString": "literal_string \"log(uint256,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20159, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27850:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "27854:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27850:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27850:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20158, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "27834:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "27834:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20168, + "nodeType": "ExpressionStatement", + "src": "27834:87:73" + } + ] + }, + "id": 20170, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27767:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20156, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20149, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27779:2:73", + "nodeType": "VariableDeclaration", + "scope": 20170, + "src": "27771:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20148, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27771:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20151, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27788:2:73", + "nodeType": "VariableDeclaration", + "scope": 20170, + "src": "27783:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20150, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27783:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20153, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27797:2:73", + "nodeType": "VariableDeclaration", + "scope": 20170, + "src": "27792:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20152, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27792:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20155, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27806:2:73", + "nodeType": "VariableDeclaration", + "scope": 20170, + "src": "27801:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20154, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27801:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27770:39:73" + }, + "returnParameters": { + "id": 20157, + "nodeType": "ParameterList", + "parameters": [], + "src": "27824:0:73" + }, + "scope": 25070, + "src": "27758:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20192, + "nodeType": "Block", + "src": "28003:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c6164647265737329", + "id": 20184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28053:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_69640b598ea5b9e4e68e932871cb8a509ce832c6718a902773532568b8c95c31", + "typeString": "literal_string \"log(uint256,bool,bool,address)\"" + }, + "value": "log(uint256,bool,bool,address)" + }, + { + "id": 20185, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20172, + "src": "28087:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20186, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20174, + "src": "28091:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20187, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20176, + "src": "28095:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20188, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20178, + "src": "28099:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_69640b598ea5b9e4e68e932871cb8a509ce832c6718a902773532568b8c95c31", + "typeString": "literal_string \"log(uint256,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20182, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28029:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28033:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28029:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28029:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20181, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28013:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28013:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20191, + "nodeType": "ExpressionStatement", + "src": "28013:90:73" + } + ] + }, + "id": 20193, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27943:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20179, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20172, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27955:2:73", + "nodeType": "VariableDeclaration", + "scope": 20193, + "src": "27947:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20171, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27947:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20174, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27964:2:73", + "nodeType": "VariableDeclaration", + "scope": 20193, + "src": "27959:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20173, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27959:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20176, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27973:2:73", + "nodeType": "VariableDeclaration", + "scope": 20193, + "src": "27968:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20175, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27968:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20178, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27985:2:73", + "nodeType": "VariableDeclaration", + "scope": 20193, + "src": "27977:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20177, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27977:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "27946:42:73" + }, + "returnParameters": { + "id": 20180, + "nodeType": "ParameterList", + "parameters": [], + "src": "28003:0:73" + }, + "scope": 25070, + "src": "27934:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20215, + "nodeType": "Block", + "src": "28188:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c75696e7432353629", + "id": 20207, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28238:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_078287f5d654caee11cca90bb8c074a9529509cd07319dc17a93fa036ea5ea88", + "typeString": "literal_string \"log(uint256,bool,address,uint256)\"" + }, + "value": "log(uint256,bool,address,uint256)" + }, + { + "id": 20208, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20195, + "src": "28275:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20209, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20197, + "src": "28279:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20210, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20199, + "src": "28283:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20211, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20201, + "src": "28287:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_078287f5d654caee11cca90bb8c074a9529509cd07319dc17a93fa036ea5ea88", + "typeString": "literal_string \"log(uint256,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20205, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28214:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28218:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28214:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28214:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20204, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28198:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28198:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20214, + "nodeType": "ExpressionStatement", + "src": "28198:93:73" + } + ] + }, + "id": 20216, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28125:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20202, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20195, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28137:2:73", + "nodeType": "VariableDeclaration", + "scope": 20216, + "src": "28129:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20194, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28129:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20197, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28146:2:73", + "nodeType": "VariableDeclaration", + "scope": 20216, + "src": "28141:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20196, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28141:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20199, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28158:2:73", + "nodeType": "VariableDeclaration", + "scope": 20216, + "src": "28150:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20198, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28150:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20201, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28170:2:73", + "nodeType": "VariableDeclaration", + "scope": 20216, + "src": "28162:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20200, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28162:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "28128:45:73" + }, + "returnParameters": { + "id": 20203, + "nodeType": "ParameterList", + "parameters": [], + "src": "28188:0:73" + }, + "scope": 25070, + "src": "28116:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20238, + "nodeType": "Block", + "src": "28382:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c737472696e6729", + "id": 20230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28432:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ade052c70a8f7736e3d4ca12bfb5de52ba51cd4551a71eb41200e5ca9b193461", + "typeString": "literal_string \"log(uint256,bool,address,string)\"" + }, + "value": "log(uint256,bool,address,string)" + }, + { + "id": 20231, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20218, + "src": "28468:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20232, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20220, + "src": "28472:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20233, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20222, + "src": "28476:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20234, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20224, + "src": "28480:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ade052c70a8f7736e3d4ca12bfb5de52ba51cd4551a71eb41200e5ca9b193461", + "typeString": "literal_string \"log(uint256,bool,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28408:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28412:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28408:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28408:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20227, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28392:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28392:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20237, + "nodeType": "ExpressionStatement", + "src": "28392:92:73" + } + ] + }, + "id": 20239, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28313:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20225, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20218, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28325:2:73", + "nodeType": "VariableDeclaration", + "scope": 20239, + "src": "28317:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20217, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28317:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20220, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28334:2:73", + "nodeType": "VariableDeclaration", + "scope": 20239, + "src": "28329:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20219, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28329:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20222, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28346:2:73", + "nodeType": "VariableDeclaration", + "scope": 20239, + "src": "28338:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20221, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28338:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20224, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28364:2:73", + "nodeType": "VariableDeclaration", + "scope": 20239, + "src": "28350:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20223, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28350:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "28316:51:73" + }, + "returnParameters": { + "id": 20226, + "nodeType": "ParameterList", + "parameters": [], + "src": "28382:0:73" + }, + "scope": 25070, + "src": "28304:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20261, + "nodeType": "Block", + "src": "28566:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c626f6f6c29", + "id": 20253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28616:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_454d54a5a1119d55883b5fbee0d6f19af54017eb1650d2284224aac472880f6a", + "typeString": "literal_string \"log(uint256,bool,address,bool)\"" + }, + "value": "log(uint256,bool,address,bool)" + }, + { + "id": 20254, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20241, + "src": "28650:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20255, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20243, + "src": "28654:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20256, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20245, + "src": "28658:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20257, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20247, + "src": "28662:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_454d54a5a1119d55883b5fbee0d6f19af54017eb1650d2284224aac472880f6a", + "typeString": "literal_string \"log(uint256,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20251, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28592:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20252, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28596:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28592:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28592:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20250, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28576:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28576:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20260, + "nodeType": "ExpressionStatement", + "src": "28576:90:73" + } + ] + }, + "id": 20262, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28506:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20248, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20241, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28518:2:73", + "nodeType": "VariableDeclaration", + "scope": 20262, + "src": "28510:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20240, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28510:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20243, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28527:2:73", + "nodeType": "VariableDeclaration", + "scope": 20262, + "src": "28522:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20242, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28522:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20245, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28539:2:73", + "nodeType": "VariableDeclaration", + "scope": 20262, + "src": "28531:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20244, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28531:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20247, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28548:2:73", + "nodeType": "VariableDeclaration", + "scope": 20262, + "src": "28543:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20246, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28543:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28509:42:73" + }, + "returnParameters": { + "id": 20249, + "nodeType": "ParameterList", + "parameters": [], + "src": "28566:0:73" + }, + "scope": 25070, + "src": "28497:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20284, + "nodeType": "Block", + "src": "28751:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c6164647265737329", + "id": 20276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28801:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1ef4cbbfd0316a849f14b661567c9c341a49bccb745dfb6a3d9b82c389ac190", + "typeString": "literal_string \"log(uint256,bool,address,address)\"" + }, + "value": "log(uint256,bool,address,address)" + }, + { + "id": 20277, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20264, + "src": "28838:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20278, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20266, + "src": "28842:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20279, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20268, + "src": "28846:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20280, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20270, + "src": "28850:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1ef4cbbfd0316a849f14b661567c9c341a49bccb745dfb6a3d9b82c389ac190", + "typeString": "literal_string \"log(uint256,bool,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20274, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28777:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28781:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28777:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28777:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20273, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28761:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28761:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20283, + "nodeType": "ExpressionStatement", + "src": "28761:93:73" + } + ] + }, + "id": 20285, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28688:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20264, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28700:2:73", + "nodeType": "VariableDeclaration", + "scope": 20285, + "src": "28692:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20263, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28692:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20266, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28709:2:73", + "nodeType": "VariableDeclaration", + "scope": 20285, + "src": "28704:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20265, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28704:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20268, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28721:2:73", + "nodeType": "VariableDeclaration", + "scope": 20285, + "src": "28713:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20267, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28713:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20270, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28733:2:73", + "nodeType": "VariableDeclaration", + "scope": 20285, + "src": "28725:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28725:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "28691:45:73" + }, + "returnParameters": { + "id": 20272, + "nodeType": "ParameterList", + "parameters": [], + "src": "28751:0:73" + }, + "scope": 25070, + "src": "28679:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20307, + "nodeType": "Block", + "src": "28942:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c75696e7432353629", + "id": 20299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28992:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c9cd9c12a2e17a9af800ac7e9a2b379066135ecb5b197bdb13381ac61cbc59a", + "typeString": "literal_string \"log(uint256,address,uint256,uint256)\"" + }, + "value": "log(uint256,address,uint256,uint256)" + }, + { + "id": 20300, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20287, + "src": "29032:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20301, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20289, + "src": "29036:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20302, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20291, + "src": "29040:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20303, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20293, + "src": "29044:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c9cd9c12a2e17a9af800ac7e9a2b379066135ecb5b197bdb13381ac61cbc59a", + "typeString": "literal_string \"log(uint256,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20297, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28968:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "28972:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28968:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28968:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20296, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "28952:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "28952:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20306, + "nodeType": "ExpressionStatement", + "src": "28952:96:73" + } + ] + }, + "id": 20308, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28876:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20294, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20287, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28888:2:73", + "nodeType": "VariableDeclaration", + "scope": 20308, + "src": "28880:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20286, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28880:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20289, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28900:2:73", + "nodeType": "VariableDeclaration", + "scope": 20308, + "src": "28892:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20288, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28892:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20291, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28912:2:73", + "nodeType": "VariableDeclaration", + "scope": 20308, + "src": "28904:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20290, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28904:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20293, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28924:2:73", + "nodeType": "VariableDeclaration", + "scope": 20308, + "src": "28916:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20292, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28916:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "28879:48:73" + }, + "returnParameters": { + "id": 20295, + "nodeType": "ParameterList", + "parameters": [], + "src": "28942:0:73" + }, + "scope": 25070, + "src": "28867:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20330, + "nodeType": "Block", + "src": "29142:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c737472696e6729", + "id": 20322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29192:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ddb06521f885b932f9898b05830c564a50fea82133f47ad308278affbd84d0bd", + "typeString": "literal_string \"log(uint256,address,uint256,string)\"" + }, + "value": "log(uint256,address,uint256,string)" + }, + { + "id": 20323, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20310, + "src": "29231:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20324, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20312, + "src": "29235:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20325, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20314, + "src": "29239:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20326, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20316, + "src": "29243:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ddb06521f885b932f9898b05830c564a50fea82133f47ad308278affbd84d0bd", + "typeString": "literal_string \"log(uint256,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20320, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29168:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20321, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29172:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29168:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29168:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20319, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "29152:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29152:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20329, + "nodeType": "ExpressionStatement", + "src": "29152:95:73" + } + ] + }, + "id": 20331, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29070:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20317, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20310, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29082:2:73", + "nodeType": "VariableDeclaration", + "scope": 20331, + "src": "29074:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20309, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29074:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20312, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29094:2:73", + "nodeType": "VariableDeclaration", + "scope": 20331, + "src": "29086:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20311, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29086:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20314, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29106:2:73", + "nodeType": "VariableDeclaration", + "scope": 20331, + "src": "29098:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29098:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20316, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29124:2:73", + "nodeType": "VariableDeclaration", + "scope": 20331, + "src": "29110:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20315, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29110:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29073:54:73" + }, + "returnParameters": { + "id": 20318, + "nodeType": "ParameterList", + "parameters": [], + "src": "29142:0:73" + }, + "scope": 25070, + "src": "29061:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20353, + "nodeType": "Block", + "src": "29332:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c626f6f6c29", + "id": 20345, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29382:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f743a7c155871069fb5e6df4e57e25e572bb3015b18294cc69630b2e0ae2e5f", + "typeString": "literal_string \"log(uint256,address,uint256,bool)\"" + }, + "value": "log(uint256,address,uint256,bool)" + }, + { + "id": 20346, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20333, + "src": "29419:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20347, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20335, + "src": "29423:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20348, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20337, + "src": "29427:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20349, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20339, + "src": "29431:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f743a7c155871069fb5e6df4e57e25e572bb3015b18294cc69630b2e0ae2e5f", + "typeString": "literal_string \"log(uint256,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20343, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29358:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20344, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29362:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29358:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29358:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20342, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "29342:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29342:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20352, + "nodeType": "ExpressionStatement", + "src": "29342:93:73" + } + ] + }, + "id": 20354, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29269:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20340, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20333, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29281:2:73", + "nodeType": "VariableDeclaration", + "scope": 20354, + "src": "29273:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20332, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29273:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20335, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29293:2:73", + "nodeType": "VariableDeclaration", + "scope": 20354, + "src": "29285:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29285:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20337, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29305:2:73", + "nodeType": "VariableDeclaration", + "scope": 20354, + "src": "29297:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20336, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29297:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20339, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29314:2:73", + "nodeType": "VariableDeclaration", + "scope": 20354, + "src": "29309:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20338, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29309:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "29272:45:73" + }, + "returnParameters": { + "id": 20341, + "nodeType": "ParameterList", + "parameters": [], + "src": "29332:0:73" + }, + "scope": 25070, + "src": "29260:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20376, + "nodeType": "Block", + "src": "29523:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c6164647265737329", + "id": 20368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29573:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_15c127b50404cc1f9627d5115fd42bf400df548658b1002bf25e12f94854b379", + "typeString": "literal_string \"log(uint256,address,uint256,address)\"" + }, + "value": "log(uint256,address,uint256,address)" + }, + { + "id": 20369, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20356, + "src": "29613:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20370, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20358, + "src": "29617:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20371, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20360, + "src": "29621:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20372, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20362, + "src": "29625:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_15c127b50404cc1f9627d5115fd42bf400df548658b1002bf25e12f94854b379", + "typeString": "literal_string \"log(uint256,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20366, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29549:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29553:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29549:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29549:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20365, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "29533:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29533:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20375, + "nodeType": "ExpressionStatement", + "src": "29533:96:73" + } + ] + }, + "id": 20377, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29457:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20356, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29469:2:73", + "nodeType": "VariableDeclaration", + "scope": 20377, + "src": "29461:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20355, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29461:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20358, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29481:2:73", + "nodeType": "VariableDeclaration", + "scope": 20377, + "src": "29473:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20357, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29473:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20360, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29493:2:73", + "nodeType": "VariableDeclaration", + "scope": 20377, + "src": "29485:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20359, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29485:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20362, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29505:2:73", + "nodeType": "VariableDeclaration", + "scope": 20377, + "src": "29497:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29497:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "29460:48:73" + }, + "returnParameters": { + "id": 20364, + "nodeType": "ParameterList", + "parameters": [], + "src": "29523:0:73" + }, + "scope": 25070, + "src": "29448:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20399, + "nodeType": "Block", + "src": "29723:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c75696e7432353629", + "id": 20391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29773:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46826b5dec5e8aeff4504f2c138d4e9c8aadb89d9034725f3050269a35303ba0", + "typeString": "literal_string \"log(uint256,address,string,uint256)\"" + }, + "value": "log(uint256,address,string,uint256)" + }, + { + "id": 20392, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20379, + "src": "29812:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20393, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20381, + "src": "29816:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20394, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20383, + "src": "29820:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20395, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20385, + "src": "29824:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46826b5dec5e8aeff4504f2c138d4e9c8aadb89d9034725f3050269a35303ba0", + "typeString": "literal_string \"log(uint256,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20389, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29749:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20390, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29753:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29749:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29749:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20388, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "29733:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29733:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20398, + "nodeType": "ExpressionStatement", + "src": "29733:95:73" + } + ] + }, + "id": 20400, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29651:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20379, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29663:2:73", + "nodeType": "VariableDeclaration", + "scope": 20400, + "src": "29655:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20378, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29655:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20381, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29675:2:73", + "nodeType": "VariableDeclaration", + "scope": 20400, + "src": "29667:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20380, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29667:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20383, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29693:2:73", + "nodeType": "VariableDeclaration", + "scope": 20400, + "src": "29679:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20382, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29679:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20385, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29705:2:73", + "nodeType": "VariableDeclaration", + "scope": 20400, + "src": "29697:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20384, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29697:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "29654:54:73" + }, + "returnParameters": { + "id": 20387, + "nodeType": "ParameterList", + "parameters": [], + "src": "29723:0:73" + }, + "scope": 25070, + "src": "29642:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20422, + "nodeType": "Block", + "src": "29928:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c737472696e6729", + "id": 20414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29978:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3e128ca3cc785552dc4e62d3c73af79fb5f114dc6f0c0eb2bc0e3bdbbd4a1d3b", + "typeString": "literal_string \"log(uint256,address,string,string)\"" + }, + "value": "log(uint256,address,string,string)" + }, + { + "id": 20415, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20402, + "src": "30016:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20416, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20404, + "src": "30020:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20417, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20406, + "src": "30024:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20418, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20408, + "src": "30028:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3e128ca3cc785552dc4e62d3c73af79fb5f114dc6f0c0eb2bc0e3bdbbd4a1d3b", + "typeString": "literal_string \"log(uint256,address,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20412, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29954:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "29958:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29954:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29954:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20411, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "29938:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "29938:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20421, + "nodeType": "ExpressionStatement", + "src": "29938:94:73" + } + ] + }, + "id": 20423, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29850:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20409, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20402, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29862:2:73", + "nodeType": "VariableDeclaration", + "scope": 20423, + "src": "29854:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20401, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29854:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20404, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29874:2:73", + "nodeType": "VariableDeclaration", + "scope": 20423, + "src": "29866:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20403, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29866:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20406, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29892:2:73", + "nodeType": "VariableDeclaration", + "scope": 20423, + "src": "29878:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20405, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29878:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20408, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29910:2:73", + "nodeType": "VariableDeclaration", + "scope": 20423, + "src": "29896:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20407, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29896:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29853:60:73" + }, + "returnParameters": { + "id": 20410, + "nodeType": "ParameterList", + "parameters": [], + "src": "29928:0:73" + }, + "scope": 25070, + "src": "29841:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20445, + "nodeType": "Block", + "src": "30123:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c626f6f6c29", + "id": 20437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30173:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc32ab07df108ae88df1c6b9771e60e5cd39cbe0f0e92481af8633000db2c64b", + "typeString": "literal_string \"log(uint256,address,string,bool)\"" + }, + "value": "log(uint256,address,string,bool)" + }, + { + "id": 20438, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20425, + "src": "30209:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20439, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20427, + "src": "30213:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20440, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20429, + "src": "30217:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20441, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20431, + "src": "30221:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cc32ab07df108ae88df1c6b9771e60e5cd39cbe0f0e92481af8633000db2c64b", + "typeString": "literal_string \"log(uint256,address,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20435, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30149:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "30153:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30149:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30149:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20434, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "30133:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30133:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20444, + "nodeType": "ExpressionStatement", + "src": "30133:92:73" + } + ] + }, + "id": 20446, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30054:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20432, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20425, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30066:2:73", + "nodeType": "VariableDeclaration", + "scope": 20446, + "src": "30058:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20424, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30058:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20427, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30078:2:73", + "nodeType": "VariableDeclaration", + "scope": 20446, + "src": "30070:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30070:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20429, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30096:2:73", + "nodeType": "VariableDeclaration", + "scope": 20446, + "src": "30082:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20428, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30082:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20431, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30105:2:73", + "nodeType": "VariableDeclaration", + "scope": 20446, + "src": "30100:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20430, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30100:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30057:51:73" + }, + "returnParameters": { + "id": 20433, + "nodeType": "ParameterList", + "parameters": [], + "src": "30123:0:73" + }, + "scope": 25070, + "src": "30045:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20468, + "nodeType": "Block", + "src": "30319:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c6164647265737329", + "id": 20460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30369:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9cba8fffa4a3e6f47d307a71f619bf1719d0a75680c6c916d7776ea0341039b9", + "typeString": "literal_string \"log(uint256,address,string,address)\"" + }, + "value": "log(uint256,address,string,address)" + }, + { + "id": 20461, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20448, + "src": "30408:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20462, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20450, + "src": "30412:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20463, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20452, + "src": "30416:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20464, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20454, + "src": "30420:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9cba8fffa4a3e6f47d307a71f619bf1719d0a75680c6c916d7776ea0341039b9", + "typeString": "literal_string \"log(uint256,address,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20458, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30345:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "30349:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30345:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30345:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20457, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "30329:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30329:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20467, + "nodeType": "ExpressionStatement", + "src": "30329:95:73" + } + ] + }, + "id": 20469, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30247:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20455, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20448, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30259:2:73", + "nodeType": "VariableDeclaration", + "scope": 20469, + "src": "30251:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20447, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30251:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20450, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30271:2:73", + "nodeType": "VariableDeclaration", + "scope": 20469, + "src": "30263:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30263:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20452, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30289:2:73", + "nodeType": "VariableDeclaration", + "scope": 20469, + "src": "30275:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20451, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30275:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20454, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30301:2:73", + "nodeType": "VariableDeclaration", + "scope": 20469, + "src": "30293:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20453, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30293:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "30250:54:73" + }, + "returnParameters": { + "id": 20456, + "nodeType": "ParameterList", + "parameters": [], + "src": "30319:0:73" + }, + "scope": 25070, + "src": "30238:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20491, + "nodeType": "Block", + "src": "30509:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c75696e7432353629", + "id": 20483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30559:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5abd992a7a64be8afc8745d44215dd5b4a31f8b03abd4cb03ff6565b7f51c1b1", + "typeString": "literal_string \"log(uint256,address,bool,uint256)\"" + }, + "value": "log(uint256,address,bool,uint256)" + }, + { + "id": 20484, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20471, + "src": "30596:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20485, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20473, + "src": "30600:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20486, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20475, + "src": "30604:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20487, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20477, + "src": "30608:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5abd992a7a64be8afc8745d44215dd5b4a31f8b03abd4cb03ff6565b7f51c1b1", + "typeString": "literal_string \"log(uint256,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30535:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "30539:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30535:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30535:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20480, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "30519:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30519:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20490, + "nodeType": "ExpressionStatement", + "src": "30519:93:73" + } + ] + }, + "id": 20492, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30446:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20478, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20471, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30458:2:73", + "nodeType": "VariableDeclaration", + "scope": 20492, + "src": "30450:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30450:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20473, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30470:2:73", + "nodeType": "VariableDeclaration", + "scope": 20492, + "src": "30462:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20472, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30462:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20475, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30479:2:73", + "nodeType": "VariableDeclaration", + "scope": 20492, + "src": "30474:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20474, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30474:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20477, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30491:2:73", + "nodeType": "VariableDeclaration", + "scope": 20492, + "src": "30483:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20476, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30483:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "30449:45:73" + }, + "returnParameters": { + "id": 20479, + "nodeType": "ParameterList", + "parameters": [], + "src": "30509:0:73" + }, + "scope": 25070, + "src": "30437:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20514, + "nodeType": "Block", + "src": "30703:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c737472696e6729", + "id": 20506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30753:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90fb06aa0f94ddb9149d9a0d0271a9fd2b331af93ebc6a4aece22e4f82154c7d", + "typeString": "literal_string \"log(uint256,address,bool,string)\"" + }, + "value": "log(uint256,address,bool,string)" + }, + { + "id": 20507, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20494, + "src": "30789:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20508, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20496, + "src": "30793:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20509, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20498, + "src": "30797:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20510, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20500, + "src": "30801:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90fb06aa0f94ddb9149d9a0d0271a9fd2b331af93ebc6a4aece22e4f82154c7d", + "typeString": "literal_string \"log(uint256,address,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20504, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30729:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "30733:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30729:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30729:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20503, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "30713:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30713:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20513, + "nodeType": "ExpressionStatement", + "src": "30713:92:73" + } + ] + }, + "id": 20515, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30634:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20501, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20494, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30646:2:73", + "nodeType": "VariableDeclaration", + "scope": 20515, + "src": "30638:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20493, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30638:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20496, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30658:2:73", + "nodeType": "VariableDeclaration", + "scope": 20515, + "src": "30650:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20495, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30650:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20498, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30667:2:73", + "nodeType": "VariableDeclaration", + "scope": 20515, + "src": "30662:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20497, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30662:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20500, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30685:2:73", + "nodeType": "VariableDeclaration", + "scope": 20515, + "src": "30671:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20499, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30671:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "30637:51:73" + }, + "returnParameters": { + "id": 20502, + "nodeType": "ParameterList", + "parameters": [], + "src": "30703:0:73" + }, + "scope": 25070, + "src": "30625:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20537, + "nodeType": "Block", + "src": "30887:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c626f6f6c29", + "id": 20529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30937:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e351140f919f09731a4793c7bb4d5f07234902f499ced9e1e3c9639d2685c6f1", + "typeString": "literal_string \"log(uint256,address,bool,bool)\"" + }, + "value": "log(uint256,address,bool,bool)" + }, + { + "id": 20530, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20517, + "src": "30971:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20531, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20519, + "src": "30975:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20532, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20521, + "src": "30979:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20533, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20523, + "src": "30983:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e351140f919f09731a4793c7bb4d5f07234902f499ced9e1e3c9639d2685c6f1", + "typeString": "literal_string \"log(uint256,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20527, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30913:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20528, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "30917:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30913:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30913:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20526, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "30897:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "30897:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20536, + "nodeType": "ExpressionStatement", + "src": "30897:90:73" + } + ] + }, + "id": 20538, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30827:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20524, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20517, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30839:2:73", + "nodeType": "VariableDeclaration", + "scope": 20538, + "src": "30831:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20516, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30831:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20519, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30851:2:73", + "nodeType": "VariableDeclaration", + "scope": 20538, + "src": "30843:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20518, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30843:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20521, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30860:2:73", + "nodeType": "VariableDeclaration", + "scope": 20538, + "src": "30855:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20520, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30855:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20523, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30869:2:73", + "nodeType": "VariableDeclaration", + "scope": 20538, + "src": "30864:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20522, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30864:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30830:42:73" + }, + "returnParameters": { + "id": 20525, + "nodeType": "ParameterList", + "parameters": [], + "src": "30887:0:73" + }, + "scope": 25070, + "src": "30818:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20560, + "nodeType": "Block", + "src": "31072:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c6164647265737329", + "id": 20552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31122:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef72c5130890d3b81e89bdbf9a039a84547328dd01c955d6bb1088aaf2252d05", + "typeString": "literal_string \"log(uint256,address,bool,address)\"" + }, + "value": "log(uint256,address,bool,address)" + }, + { + "id": 20553, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20540, + "src": "31159:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20554, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20542, + "src": "31163:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20555, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20544, + "src": "31167:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20556, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20546, + "src": "31171:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef72c5130890d3b81e89bdbf9a039a84547328dd01c955d6bb1088aaf2252d05", + "typeString": "literal_string \"log(uint256,address,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20550, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31098:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20551, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31102:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31098:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31098:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20549, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "31082:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31082:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20559, + "nodeType": "ExpressionStatement", + "src": "31082:93:73" + } + ] + }, + "id": 20561, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31009:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20540, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31021:2:73", + "nodeType": "VariableDeclaration", + "scope": 20561, + "src": "31013:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20539, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31013:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20542, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31033:2:73", + "nodeType": "VariableDeclaration", + "scope": 20561, + "src": "31025:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20541, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31025:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20544, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31042:2:73", + "nodeType": "VariableDeclaration", + "scope": 20561, + "src": "31037:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20543, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "31037:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20546, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31054:2:73", + "nodeType": "VariableDeclaration", + "scope": 20561, + "src": "31046:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20545, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31046:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "31012:45:73" + }, + "returnParameters": { + "id": 20548, + "nodeType": "ParameterList", + "parameters": [], + "src": "31072:0:73" + }, + "scope": 25070, + "src": "31000:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20583, + "nodeType": "Block", + "src": "31263:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c75696e7432353629", + "id": 20575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31313:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_736efbb692cd4ba0c879f89673f1c5a7eb58e7bd2b833c4d30d41d3aa9c7a23a", + "typeString": "literal_string \"log(uint256,address,address,uint256)\"" + }, + "value": "log(uint256,address,address,uint256)" + }, + { + "id": 20576, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20563, + "src": "31353:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20577, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20565, + "src": "31357:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20578, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20567, + "src": "31361:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20579, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20569, + "src": "31365:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_736efbb692cd4ba0c879f89673f1c5a7eb58e7bd2b833c4d30d41d3aa9c7a23a", + "typeString": "literal_string \"log(uint256,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31289:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31293:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31289:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31289:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20572, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "31273:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31273:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20582, + "nodeType": "ExpressionStatement", + "src": "31273:96:73" + } + ] + }, + "id": 20584, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31197:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20563, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31209:2:73", + "nodeType": "VariableDeclaration", + "scope": 20584, + "src": "31201:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20562, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31201:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20565, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31221:2:73", + "nodeType": "VariableDeclaration", + "scope": 20584, + "src": "31213:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31213:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20567, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31233:2:73", + "nodeType": "VariableDeclaration", + "scope": 20584, + "src": "31225:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20566, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31225:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20569, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31245:2:73", + "nodeType": "VariableDeclaration", + "scope": 20584, + "src": "31237:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20568, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31237:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "31200:48:73" + }, + "returnParameters": { + "id": 20571, + "nodeType": "ParameterList", + "parameters": [], + "src": "31263:0:73" + }, + "scope": 25070, + "src": "31188:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20606, + "nodeType": "Block", + "src": "31463:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c737472696e6729", + "id": 20598, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31513:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_031c6f73458c2a0d841ad5d5914dceb24973d9df898a3826eec79330397cd882", + "typeString": "literal_string \"log(uint256,address,address,string)\"" + }, + "value": "log(uint256,address,address,string)" + }, + { + "id": 20599, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20586, + "src": "31552:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20600, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20588, + "src": "31556:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20601, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20590, + "src": "31560:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20602, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20592, + "src": "31564:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_031c6f73458c2a0d841ad5d5914dceb24973d9df898a3826eec79330397cd882", + "typeString": "literal_string \"log(uint256,address,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20596, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31489:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20597, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31493:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31489:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31489:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20595, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "31473:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31473:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20605, + "nodeType": "ExpressionStatement", + "src": "31473:95:73" + } + ] + }, + "id": 20607, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31391:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20586, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31403:2:73", + "nodeType": "VariableDeclaration", + "scope": 20607, + "src": "31395:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20585, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31395:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20588, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31415:2:73", + "nodeType": "VariableDeclaration", + "scope": 20607, + "src": "31407:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31407:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20590, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31427:2:73", + "nodeType": "VariableDeclaration", + "scope": 20607, + "src": "31419:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20589, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31419:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20592, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31445:2:73", + "nodeType": "VariableDeclaration", + "scope": 20607, + "src": "31431:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20591, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31431:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "31394:54:73" + }, + "returnParameters": { + "id": 20594, + "nodeType": "ParameterList", + "parameters": [], + "src": "31463:0:73" + }, + "scope": 25070, + "src": "31382:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20629, + "nodeType": "Block", + "src": "31653:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c626f6f6c29", + "id": 20621, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31703:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_091ffaf5e3365a794bfeb97b8157886a9ba00c981ee88d8a8fdb0cc96a5e6c1d", + "typeString": "literal_string \"log(uint256,address,address,bool)\"" + }, + "value": "log(uint256,address,address,bool)" + }, + { + "id": 20622, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20609, + "src": "31740:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20623, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20611, + "src": "31744:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20624, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20613, + "src": "31748:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20625, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20615, + "src": "31752:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_091ffaf5e3365a794bfeb97b8157886a9ba00c981ee88d8a8fdb0cc96a5e6c1d", + "typeString": "literal_string \"log(uint256,address,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20619, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31679:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31683:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31679:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31679:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20618, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "31663:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31663:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20628, + "nodeType": "ExpressionStatement", + "src": "31663:93:73" + } + ] + }, + "id": 20630, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31590:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20616, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20609, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31602:2:73", + "nodeType": "VariableDeclaration", + "scope": 20630, + "src": "31594:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20608, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31594:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20611, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31614:2:73", + "nodeType": "VariableDeclaration", + "scope": 20630, + "src": "31606:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20610, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31606:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20613, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31626:2:73", + "nodeType": "VariableDeclaration", + "scope": 20630, + "src": "31618:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20612, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31618:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20615, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31635:2:73", + "nodeType": "VariableDeclaration", + "scope": 20630, + "src": "31630:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20614, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "31630:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "31593:45:73" + }, + "returnParameters": { + "id": 20617, + "nodeType": "ParameterList", + "parameters": [], + "src": "31653:0:73" + }, + "scope": 25070, + "src": "31581:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20652, + "nodeType": "Block", + "src": "31844:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c6164647265737329", + "id": 20644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31894:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2488b414330cbd4ddab2b849dacd8bed50b19b82318ec6e4a5ccdf72ee519553", + "typeString": "literal_string \"log(uint256,address,address,address)\"" + }, + "value": "log(uint256,address,address,address)" + }, + { + "id": 20645, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20632, + "src": "31934:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20646, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20634, + "src": "31938:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20647, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20636, + "src": "31942:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20648, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20638, + "src": "31946:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2488b414330cbd4ddab2b849dacd8bed50b19b82318ec6e4a5ccdf72ee519553", + "typeString": "literal_string \"log(uint256,address,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20642, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31870:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20643, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "31874:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31870:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31870:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20641, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "31854:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "31854:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20651, + "nodeType": "ExpressionStatement", + "src": "31854:96:73" + } + ] + }, + "id": 20653, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31778:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20639, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20632, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31790:2:73", + "nodeType": "VariableDeclaration", + "scope": 20653, + "src": "31782:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20631, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31782:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20634, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31802:2:73", + "nodeType": "VariableDeclaration", + "scope": 20653, + "src": "31794:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20633, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31794:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20636, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31814:2:73", + "nodeType": "VariableDeclaration", + "scope": 20653, + "src": "31806:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20635, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31806:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20638, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31826:2:73", + "nodeType": "VariableDeclaration", + "scope": 20653, + "src": "31818:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20637, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31818:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "31781:48:73" + }, + "returnParameters": { + "id": 20640, + "nodeType": "ParameterList", + "parameters": [], + "src": "31844:0:73" + }, + "scope": 25070, + "src": "31769:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20675, + "nodeType": "Block", + "src": "32044:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c75696e7432353629", + "id": 20667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32094:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a7a8785394d9aadf7945b4e3d27726dea716dc88e3f64cc80b3aa9abbd2751c5", + "typeString": "literal_string \"log(string,uint256,uint256,uint256)\"" + }, + "value": "log(string,uint256,uint256,uint256)" + }, + { + "id": 20668, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20655, + "src": "32133:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20669, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20657, + "src": "32137:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20670, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20659, + "src": "32141:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20671, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20661, + "src": "32145:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a7a8785394d9aadf7945b4e3d27726dea716dc88e3f64cc80b3aa9abbd2751c5", + "typeString": "literal_string \"log(string,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20665, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32070:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32074:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32070:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32070:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20664, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "32054:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32054:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20674, + "nodeType": "ExpressionStatement", + "src": "32054:95:73" + } + ] + }, + "id": 20676, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31972:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20662, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20655, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31990:2:73", + "nodeType": "VariableDeclaration", + "scope": 20676, + "src": "31976:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20654, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31976:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20657, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32002:2:73", + "nodeType": "VariableDeclaration", + "scope": 20676, + "src": "31994:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20656, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31994:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20659, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32014:2:73", + "nodeType": "VariableDeclaration", + "scope": 20676, + "src": "32006:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20658, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32006:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20661, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32026:2:73", + "nodeType": "VariableDeclaration", + "scope": 20676, + "src": "32018:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20660, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32018:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "31975:54:73" + }, + "returnParameters": { + "id": 20663, + "nodeType": "ParameterList", + "parameters": [], + "src": "32044:0:73" + }, + "scope": 25070, + "src": "31963:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20698, + "nodeType": "Block", + "src": "32249:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c737472696e6729", + "id": 20690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32299:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_854b34964800cd321ba295da547026c9cfe69753667a81487e80d237f63c927f", + "typeString": "literal_string \"log(string,uint256,uint256,string)\"" + }, + "value": "log(string,uint256,uint256,string)" + }, + { + "id": 20691, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20678, + "src": "32337:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20692, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20680, + "src": "32341:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20693, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20682, + "src": "32345:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20694, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20684, + "src": "32349:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_854b34964800cd321ba295da547026c9cfe69753667a81487e80d237f63c927f", + "typeString": "literal_string \"log(string,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20688, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32275:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20689, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32279:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32275:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32275:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20687, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "32259:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32259:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20697, + "nodeType": "ExpressionStatement", + "src": "32259:94:73" + } + ] + }, + "id": 20699, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32171:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20685, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20678, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32189:2:73", + "nodeType": "VariableDeclaration", + "scope": 20699, + "src": "32175:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20677, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32175:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20680, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32201:2:73", + "nodeType": "VariableDeclaration", + "scope": 20699, + "src": "32193:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20679, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32193:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20682, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32213:2:73", + "nodeType": "VariableDeclaration", + "scope": 20699, + "src": "32205:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20681, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32205:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20684, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32231:2:73", + "nodeType": "VariableDeclaration", + "scope": 20699, + "src": "32217:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20683, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32217:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32174:60:73" + }, + "returnParameters": { + "id": 20686, + "nodeType": "ParameterList", + "parameters": [], + "src": "32249:0:73" + }, + "scope": 25070, + "src": "32162:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20721, + "nodeType": "Block", + "src": "32444:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c626f6f6c29", + "id": 20713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32494:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7626db92bcbe8fb38799da91134ebae6bc6c7b10cb0db567e752720b8fd9ae0f", + "typeString": "literal_string \"log(string,uint256,uint256,bool)\"" + }, + "value": "log(string,uint256,uint256,bool)" + }, + { + "id": 20714, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20701, + "src": "32530:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20715, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20703, + "src": "32534:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20716, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20705, + "src": "32538:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20717, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20707, + "src": "32542:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7626db92bcbe8fb38799da91134ebae6bc6c7b10cb0db567e752720b8fd9ae0f", + "typeString": "literal_string \"log(string,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20711, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32470:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32474:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32470:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32470:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20710, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "32454:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32454:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20720, + "nodeType": "ExpressionStatement", + "src": "32454:92:73" + } + ] + }, + "id": 20722, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32375:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20708, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20701, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32393:2:73", + "nodeType": "VariableDeclaration", + "scope": 20722, + "src": "32379:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20700, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32379:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20703, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32405:2:73", + "nodeType": "VariableDeclaration", + "scope": 20722, + "src": "32397:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20702, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32397:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20705, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32417:2:73", + "nodeType": "VariableDeclaration", + "scope": 20722, + "src": "32409:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20704, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32409:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20707, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32426:2:73", + "nodeType": "VariableDeclaration", + "scope": 20722, + "src": "32421:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20706, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32421:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "32378:51:73" + }, + "returnParameters": { + "id": 20709, + "nodeType": "ParameterList", + "parameters": [], + "src": "32444:0:73" + }, + "scope": 25070, + "src": "32366:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20744, + "nodeType": "Block", + "src": "32640:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c6164647265737329", + "id": 20736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32690:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e21de278b3902dab5803384c9ad03fb95c973bc87490e387079e41c7f244f118", + "typeString": "literal_string \"log(string,uint256,uint256,address)\"" + }, + "value": "log(string,uint256,uint256,address)" + }, + { + "id": 20737, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20724, + "src": "32729:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20738, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20726, + "src": "32733:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20739, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20728, + "src": "32737:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20740, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20730, + "src": "32741:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e21de278b3902dab5803384c9ad03fb95c973bc87490e387079e41c7f244f118", + "typeString": "literal_string \"log(string,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20734, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32666:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32670:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32666:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32666:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20733, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "32650:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32650:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20743, + "nodeType": "ExpressionStatement", + "src": "32650:95:73" + } + ] + }, + "id": 20745, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32568:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20731, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20724, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32586:2:73", + "nodeType": "VariableDeclaration", + "scope": 20745, + "src": "32572:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20723, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32572:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20726, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32598:2:73", + "nodeType": "VariableDeclaration", + "scope": 20745, + "src": "32590:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20725, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32590:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20728, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32610:2:73", + "nodeType": "VariableDeclaration", + "scope": 20745, + "src": "32602:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20727, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32602:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20730, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32622:2:73", + "nodeType": "VariableDeclaration", + "scope": 20745, + "src": "32614:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20729, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32614:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "32571:54:73" + }, + "returnParameters": { + "id": 20732, + "nodeType": "ParameterList", + "parameters": [], + "src": "32640:0:73" + }, + "scope": 25070, + "src": "32559:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20767, + "nodeType": "Block", + "src": "32845:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c75696e7432353629", + "id": 20759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32895:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c67ea9d1db4353b82da41ad5e5b85243320ba3a89399b41c13eee1ab804e84c9", + "typeString": "literal_string \"log(string,uint256,string,uint256)\"" + }, + "value": "log(string,uint256,string,uint256)" + }, + { + "id": 20760, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20747, + "src": "32933:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20761, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20749, + "src": "32937:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20762, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20751, + "src": "32941:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20763, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20753, + "src": "32945:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c67ea9d1db4353b82da41ad5e5b85243320ba3a89399b41c13eee1ab804e84c9", + "typeString": "literal_string \"log(string,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20757, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32871:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "32875:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32871:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32871:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20756, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "32855:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "32855:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20766, + "nodeType": "ExpressionStatement", + "src": "32855:94:73" + } + ] + }, + "id": 20768, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32767:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20754, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20747, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32785:2:73", + "nodeType": "VariableDeclaration", + "scope": 20768, + "src": "32771:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20746, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32771:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20749, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32797:2:73", + "nodeType": "VariableDeclaration", + "scope": 20768, + "src": "32789:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20748, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32789:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20751, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32815:2:73", + "nodeType": "VariableDeclaration", + "scope": 20768, + "src": "32801:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20750, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32801:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20753, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32827:2:73", + "nodeType": "VariableDeclaration", + "scope": 20768, + "src": "32819:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20752, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32819:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "32770:60:73" + }, + "returnParameters": { + "id": 20755, + "nodeType": "ParameterList", + "parameters": [], + "src": "32845:0:73" + }, + "scope": 25070, + "src": "32758:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20790, + "nodeType": "Block", + "src": "33055:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c737472696e6729", + "id": 20782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33105:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ab84e1fba099b79ad99dc62242807811428e5c36b5f473a3b74e319a04c4089", + "typeString": "literal_string \"log(string,uint256,string,string)\"" + }, + "value": "log(string,uint256,string,string)" + }, + { + "id": 20783, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20770, + "src": "33142:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20784, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20772, + "src": "33146:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20785, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20774, + "src": "33150:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20786, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20776, + "src": "33154:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ab84e1fba099b79ad99dc62242807811428e5c36b5f473a3b74e319a04c4089", + "typeString": "literal_string \"log(string,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20780, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33081:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "33085:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33081:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33081:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20779, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "33065:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33065:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20789, + "nodeType": "ExpressionStatement", + "src": "33065:93:73" + } + ] + }, + "id": 20791, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32971:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20777, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20770, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32989:2:73", + "nodeType": "VariableDeclaration", + "scope": 20791, + "src": "32975:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20769, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32975:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20772, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33001:2:73", + "nodeType": "VariableDeclaration", + "scope": 20791, + "src": "32993:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20771, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32993:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20774, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33019:2:73", + "nodeType": "VariableDeclaration", + "scope": 20791, + "src": "33005:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20773, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33005:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20776, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33037:2:73", + "nodeType": "VariableDeclaration", + "scope": 20791, + "src": "33023:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20775, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33023:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32974:66:73" + }, + "returnParameters": { + "id": 20778, + "nodeType": "ParameterList", + "parameters": [], + "src": "33055:0:73" + }, + "scope": 25070, + "src": "32962:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20813, + "nodeType": "Block", + "src": "33255:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c626f6f6c29", + "id": 20805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33305:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7d24491d69f4bc88a6e68cd8228b6698af11fe37f60f65c80e3f11428a8eba2f", + "typeString": "literal_string \"log(string,uint256,string,bool)\"" + }, + "value": "log(string,uint256,string,bool)" + }, + { + "id": 20806, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20793, + "src": "33340:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20807, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20795, + "src": "33344:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20808, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20797, + "src": "33348:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20809, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20799, + "src": "33352:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7d24491d69f4bc88a6e68cd8228b6698af11fe37f60f65c80e3f11428a8eba2f", + "typeString": "literal_string \"log(string,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20803, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33281:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "33285:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33281:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33281:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20802, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "33265:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33265:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20812, + "nodeType": "ExpressionStatement", + "src": "33265:91:73" + } + ] + }, + "id": 20814, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33180:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20800, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20793, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33198:2:73", + "nodeType": "VariableDeclaration", + "scope": 20814, + "src": "33184:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20792, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33184:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20795, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33210:2:73", + "nodeType": "VariableDeclaration", + "scope": 20814, + "src": "33202:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20794, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33202:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20797, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33228:2:73", + "nodeType": "VariableDeclaration", + "scope": 20814, + "src": "33214:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20796, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33214:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20799, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33237:2:73", + "nodeType": "VariableDeclaration", + "scope": 20814, + "src": "33232:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20798, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33232:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33183:57:73" + }, + "returnParameters": { + "id": 20801, + "nodeType": "ParameterList", + "parameters": [], + "src": "33255:0:73" + }, + "scope": 25070, + "src": "33171:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20836, + "nodeType": "Block", + "src": "33456:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c6164647265737329", + "id": 20828, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33506:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7c4632a48572fa2d4647539e525c9742d692f8e780540d6116f897ab472257cb", + "typeString": "literal_string \"log(string,uint256,string,address)\"" + }, + "value": "log(string,uint256,string,address)" + }, + { + "id": 20829, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20816, + "src": "33544:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20830, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20818, + "src": "33548:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20831, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20820, + "src": "33552:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20832, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20822, + "src": "33556:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7c4632a48572fa2d4647539e525c9742d692f8e780540d6116f897ab472257cb", + "typeString": "literal_string \"log(string,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20826, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33482:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "33486:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33482:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33482:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20825, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "33466:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33466:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20835, + "nodeType": "ExpressionStatement", + "src": "33466:94:73" + } + ] + }, + "id": 20837, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33378:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20823, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20816, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33396:2:73", + "nodeType": "VariableDeclaration", + "scope": 20837, + "src": "33382:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20815, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33382:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20818, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33408:2:73", + "nodeType": "VariableDeclaration", + "scope": 20837, + "src": "33400:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33400:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20820, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33426:2:73", + "nodeType": "VariableDeclaration", + "scope": 20837, + "src": "33412:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20819, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33412:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20822, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33438:2:73", + "nodeType": "VariableDeclaration", + "scope": 20837, + "src": "33430:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20821, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33430:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "33381:60:73" + }, + "returnParameters": { + "id": 20824, + "nodeType": "ParameterList", + "parameters": [], + "src": "33456:0:73" + }, + "scope": 25070, + "src": "33369:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20859, + "nodeType": "Block", + "src": "33651:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c75696e7432353629", + "id": 20851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33701:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e41b6f6f58a4f880a3266f23bebaff73175ff4306317c20982bc2eabc04edd13", + "typeString": "literal_string \"log(string,uint256,bool,uint256)\"" + }, + "value": "log(string,uint256,bool,uint256)" + }, + { + "id": 20852, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20839, + "src": "33737:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20853, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20841, + "src": "33741:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20854, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20843, + "src": "33745:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20855, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20845, + "src": "33749:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e41b6f6f58a4f880a3266f23bebaff73175ff4306317c20982bc2eabc04edd13", + "typeString": "literal_string \"log(string,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20849, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33677:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "33681:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33677:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33677:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20848, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "33661:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33661:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20858, + "nodeType": "ExpressionStatement", + "src": "33661:92:73" + } + ] + }, + "id": 20860, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33582:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20839, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33600:2:73", + "nodeType": "VariableDeclaration", + "scope": 20860, + "src": "33586:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20838, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33586:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20841, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33612:2:73", + "nodeType": "VariableDeclaration", + "scope": 20860, + "src": "33604:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20840, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33604:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20843, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33621:2:73", + "nodeType": "VariableDeclaration", + "scope": 20860, + "src": "33616:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20842, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33616:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20845, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33633:2:73", + "nodeType": "VariableDeclaration", + "scope": 20860, + "src": "33625:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20844, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33625:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "33585:51:73" + }, + "returnParameters": { + "id": 20847, + "nodeType": "ParameterList", + "parameters": [], + "src": "33651:0:73" + }, + "scope": 25070, + "src": "33573:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20882, + "nodeType": "Block", + "src": "33850:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c737472696e6729", + "id": 20874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33900:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_abf73a9831ab2bdeb8da9d06a81eab42196b20e336ab670ecba37bac94839d87", + "typeString": "literal_string \"log(string,uint256,bool,string)\"" + }, + "value": "log(string,uint256,bool,string)" + }, + { + "id": 20875, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20862, + "src": "33935:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20876, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20864, + "src": "33939:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20877, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20866, + "src": "33943:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20878, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20868, + "src": "33947:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_abf73a9831ab2bdeb8da9d06a81eab42196b20e336ab670ecba37bac94839d87", + "typeString": "literal_string \"log(string,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20872, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33876:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "33880:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33876:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33876:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20871, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "33860:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "33860:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20881, + "nodeType": "ExpressionStatement", + "src": "33860:91:73" + } + ] + }, + "id": 20883, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33775:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20869, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20862, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33793:2:73", + "nodeType": "VariableDeclaration", + "scope": 20883, + "src": "33779:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20861, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33779:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20864, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33805:2:73", + "nodeType": "VariableDeclaration", + "scope": 20883, + "src": "33797:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20863, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33797:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20866, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33814:2:73", + "nodeType": "VariableDeclaration", + "scope": 20883, + "src": "33809:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20865, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33809:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20868, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33832:2:73", + "nodeType": "VariableDeclaration", + "scope": 20883, + "src": "33818:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20867, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33818:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "33778:57:73" + }, + "returnParameters": { + "id": 20870, + "nodeType": "ParameterList", + "parameters": [], + "src": "33850:0:73" + }, + "scope": 25070, + "src": "33766:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20905, + "nodeType": "Block", + "src": "34039:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c626f6f6c29", + "id": 20897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34089:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_354c36d6798abb81721fb2beaef51c92cab9d4cf16be10f0a4724648784ecb76", + "typeString": "literal_string \"log(string,uint256,bool,bool)\"" + }, + "value": "log(string,uint256,bool,bool)" + }, + { + "id": 20898, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20885, + "src": "34122:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20899, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20887, + "src": "34126:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20900, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20889, + "src": "34130:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20901, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20891, + "src": "34134:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_354c36d6798abb81721fb2beaef51c92cab9d4cf16be10f0a4724648784ecb76", + "typeString": "literal_string \"log(string,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20895, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34065:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "34069:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34065:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34065:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20894, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "34049:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34049:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20904, + "nodeType": "ExpressionStatement", + "src": "34049:89:73" + } + ] + }, + "id": 20906, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33973:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20892, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20885, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33991:2:73", + "nodeType": "VariableDeclaration", + "scope": 20906, + "src": "33977:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20884, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33977:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20887, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34003:2:73", + "nodeType": "VariableDeclaration", + "scope": 20906, + "src": "33995:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20886, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33995:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20889, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34012:2:73", + "nodeType": "VariableDeclaration", + "scope": 20906, + "src": "34007:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20888, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34007:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20891, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34021:2:73", + "nodeType": "VariableDeclaration", + "scope": 20906, + "src": "34016:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20890, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34016:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33976:48:73" + }, + "returnParameters": { + "id": 20893, + "nodeType": "ParameterList", + "parameters": [], + "src": "34039:0:73" + }, + "scope": 25070, + "src": "33964:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20928, + "nodeType": "Block", + "src": "34229:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c6164647265737329", + "id": 20920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34279:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0e95b9833a204b7ba633bd63a60ec523906565f2c86d8936f7ff3e9937880f7", + "typeString": "literal_string \"log(string,uint256,bool,address)\"" + }, + "value": "log(string,uint256,bool,address)" + }, + { + "id": 20921, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20908, + "src": "34315:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20922, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20910, + "src": "34319:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20923, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20912, + "src": "34323:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20924, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20914, + "src": "34327:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0e95b9833a204b7ba633bd63a60ec523906565f2c86d8936f7ff3e9937880f7", + "typeString": "literal_string \"log(string,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20918, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34255:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20919, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "34259:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34255:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34255:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20917, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "34239:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34239:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20927, + "nodeType": "ExpressionStatement", + "src": "34239:92:73" + } + ] + }, + "id": 20929, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34160:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20915, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20908, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34178:2:73", + "nodeType": "VariableDeclaration", + "scope": 20929, + "src": "34164:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20907, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34164:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20910, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34190:2:73", + "nodeType": "VariableDeclaration", + "scope": 20929, + "src": "34182:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20909, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34182:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20912, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34199:2:73", + "nodeType": "VariableDeclaration", + "scope": 20929, + "src": "34194:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20911, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34194:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20914, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34211:2:73", + "nodeType": "VariableDeclaration", + "scope": 20929, + "src": "34203:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20913, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34203:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34163:51:73" + }, + "returnParameters": { + "id": 20916, + "nodeType": "ParameterList", + "parameters": [], + "src": "34229:0:73" + }, + "scope": 25070, + "src": "34151:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20951, + "nodeType": "Block", + "src": "34425:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c75696e7432353629", + "id": 20943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34475:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f04fdc6b6271b036262883bae0d1ea5155524010fed0023b5c71c574fb937ff", + "typeString": "literal_string \"log(string,uint256,address,uint256)\"" + }, + "value": "log(string,uint256,address,uint256)" + }, + { + "id": 20944, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20931, + "src": "34514:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20945, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20933, + "src": "34518:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20946, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20935, + "src": "34522:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20947, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20937, + "src": "34526:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f04fdc6b6271b036262883bae0d1ea5155524010fed0023b5c71c574fb937ff", + "typeString": "literal_string \"log(string,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20941, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34451:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "34455:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34451:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34451:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20940, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "34435:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34435:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20950, + "nodeType": "ExpressionStatement", + "src": "34435:95:73" + } + ] + }, + "id": 20952, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34353:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20931, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34371:2:73", + "nodeType": "VariableDeclaration", + "scope": 20952, + "src": "34357:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20930, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34357:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20933, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34383:2:73", + "nodeType": "VariableDeclaration", + "scope": 20952, + "src": "34375:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20932, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34375:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20935, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34395:2:73", + "nodeType": "VariableDeclaration", + "scope": 20952, + "src": "34387:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20934, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34387:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20937, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34407:2:73", + "nodeType": "VariableDeclaration", + "scope": 20952, + "src": "34399:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20936, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34399:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "34356:54:73" + }, + "returnParameters": { + "id": 20939, + "nodeType": "ParameterList", + "parameters": [], + "src": "34425:0:73" + }, + "scope": 25070, + "src": "34344:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20974, + "nodeType": "Block", + "src": "34630:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c737472696e6729", + "id": 20966, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34680:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9ffb2f93ff043d0a86ff6dc2ddf23d28dfc95ecde23d406177dfe6f19d070d2b", + "typeString": "literal_string \"log(string,uint256,address,string)\"" + }, + "value": "log(string,uint256,address,string)" + }, + { + "id": 20967, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20954, + "src": "34718:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20968, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20956, + "src": "34722:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20969, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20958, + "src": "34726:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20970, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20960, + "src": "34730:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9ffb2f93ff043d0a86ff6dc2ddf23d28dfc95ecde23d406177dfe6f19d070d2b", + "typeString": "literal_string \"log(string,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20964, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34656:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "34660:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34656:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34656:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20963, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "34640:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34640:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20973, + "nodeType": "ExpressionStatement", + "src": "34640:94:73" + } + ] + }, + "id": 20975, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34552:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20954, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34570:2:73", + "nodeType": "VariableDeclaration", + "scope": 20975, + "src": "34556:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20953, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34556:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20956, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34582:2:73", + "nodeType": "VariableDeclaration", + "scope": 20975, + "src": "34574:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20955, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34574:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20958, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34594:2:73", + "nodeType": "VariableDeclaration", + "scope": 20975, + "src": "34586:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20957, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34586:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20960, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34612:2:73", + "nodeType": "VariableDeclaration", + "scope": 20975, + "src": "34598:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20959, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34598:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "34555:60:73" + }, + "returnParameters": { + "id": 20962, + "nodeType": "ParameterList", + "parameters": [], + "src": "34630:0:73" + }, + "scope": 25070, + "src": "34543:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 20997, + "nodeType": "Block", + "src": "34825:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c626f6f6c29", + "id": 20989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34875:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82112a429657399db0318af6ca78ff56626aa907939e7cf56b60b07035dcc190", + "typeString": "literal_string \"log(string,uint256,address,bool)\"" + }, + "value": "log(string,uint256,address,bool)" + }, + { + "id": 20990, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20977, + "src": "34911:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20991, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20979, + "src": "34915:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20992, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20981, + "src": "34919:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20993, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20983, + "src": "34923:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_82112a429657399db0318af6ca78ff56626aa907939e7cf56b60b07035dcc190", + "typeString": "literal_string \"log(string,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20987, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34851:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "34855:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34851:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34851:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20986, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "34835:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 20995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "34835:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20996, + "nodeType": "ExpressionStatement", + "src": "34835:92:73" + } + ] + }, + "id": 20998, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34756:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 20984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20977, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34774:2:73", + "nodeType": "VariableDeclaration", + "scope": 20998, + "src": "34760:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20976, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34760:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20979, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34786:2:73", + "nodeType": "VariableDeclaration", + "scope": 20998, + "src": "34778:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20978, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34778:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20981, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34798:2:73", + "nodeType": "VariableDeclaration", + "scope": 20998, + "src": "34790:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20980, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34790:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20983, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34807:2:73", + "nodeType": "VariableDeclaration", + "scope": 20998, + "src": "34802:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20982, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34802:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "34759:51:73" + }, + "returnParameters": { + "id": 20985, + "nodeType": "ParameterList", + "parameters": [], + "src": "34825:0:73" + }, + "scope": 25070, + "src": "34747:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21020, + "nodeType": "Block", + "src": "35021:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c6164647265737329", + "id": 21012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35071:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ea2b7aea4409bbe3ef8ca502419b3574b002a6123a1f864be076316b8efcd1d", + "typeString": "literal_string \"log(string,uint256,address,address)\"" + }, + "value": "log(string,uint256,address,address)" + }, + { + "id": 21013, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21000, + "src": "35110:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21014, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21002, + "src": "35114:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21015, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21004, + "src": "35118:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21016, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21006, + "src": "35122:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ea2b7aea4409bbe3ef8ca502419b3574b002a6123a1f864be076316b8efcd1d", + "typeString": "literal_string \"log(string,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21010, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35047:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "35051:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35047:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35047:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21009, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "35031:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35031:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21019, + "nodeType": "ExpressionStatement", + "src": "35031:95:73" + } + ] + }, + "id": 21021, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34949:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21007, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21000, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34967:2:73", + "nodeType": "VariableDeclaration", + "scope": 21021, + "src": "34953:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20999, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34953:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21002, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34979:2:73", + "nodeType": "VariableDeclaration", + "scope": 21021, + "src": "34971:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21001, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34971:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21004, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34991:2:73", + "nodeType": "VariableDeclaration", + "scope": 21021, + "src": "34983:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21003, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34983:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21006, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35003:2:73", + "nodeType": "VariableDeclaration", + "scope": 21021, + "src": "34995:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21005, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34995:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34952:54:73" + }, + "returnParameters": { + "id": 21008, + "nodeType": "ParameterList", + "parameters": [], + "src": "35021:0:73" + }, + "scope": 25070, + "src": "34940:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21043, + "nodeType": "Block", + "src": "35226:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c75696e7432353629", + "id": 21035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35276:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f45d7d2cd1abe030b09347ce21ce66b503ffdad3e7a1ad6df9e55da5d9367776", + "typeString": "literal_string \"log(string,string,uint256,uint256)\"" + }, + "value": "log(string,string,uint256,uint256)" + }, + { + "id": 21036, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21023, + "src": "35314:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21037, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21025, + "src": "35318:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21038, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21027, + "src": "35322:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21039, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21029, + "src": "35326:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f45d7d2cd1abe030b09347ce21ce66b503ffdad3e7a1ad6df9e55da5d9367776", + "typeString": "literal_string \"log(string,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21033, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35252:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "35256:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35252:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35252:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21032, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "35236:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35236:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21042, + "nodeType": "ExpressionStatement", + "src": "35236:94:73" + } + ] + }, + "id": 21044, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35148:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21023, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35166:2:73", + "nodeType": "VariableDeclaration", + "scope": 21044, + "src": "35152:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21022, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35152:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21025, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35184:2:73", + "nodeType": "VariableDeclaration", + "scope": 21044, + "src": "35170:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21024, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35170:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21027, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35196:2:73", + "nodeType": "VariableDeclaration", + "scope": 21044, + "src": "35188:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21026, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35188:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21029, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35208:2:73", + "nodeType": "VariableDeclaration", + "scope": 21044, + "src": "35200:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21028, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35200:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35151:60:73" + }, + "returnParameters": { + "id": 21031, + "nodeType": "ParameterList", + "parameters": [], + "src": "35226:0:73" + }, + "scope": 25070, + "src": "35139:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21066, + "nodeType": "Block", + "src": "35436:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c737472696e6729", + "id": 21058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35486:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d1a971aebb8f2fbb7526a470ca55e409230d59ee63217090d29ce11b768e909", + "typeString": "literal_string \"log(string,string,uint256,string)\"" + }, + "value": "log(string,string,uint256,string)" + }, + { + "id": 21059, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21046, + "src": "35523:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21060, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21048, + "src": "35527:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21061, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21050, + "src": "35531:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21062, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21052, + "src": "35535:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d1a971aebb8f2fbb7526a470ca55e409230d59ee63217090d29ce11b768e909", + "typeString": "literal_string \"log(string,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21056, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35462:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "35466:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35462:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35462:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21055, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "35446:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35446:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21065, + "nodeType": "ExpressionStatement", + "src": "35446:93:73" + } + ] + }, + "id": 21067, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35352:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21053, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21046, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35370:2:73", + "nodeType": "VariableDeclaration", + "scope": 21067, + "src": "35356:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21045, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35356:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21048, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35388:2:73", + "nodeType": "VariableDeclaration", + "scope": 21067, + "src": "35374:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21047, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35374:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21050, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35400:2:73", + "nodeType": "VariableDeclaration", + "scope": 21067, + "src": "35392:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21049, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35392:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21052, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35418:2:73", + "nodeType": "VariableDeclaration", + "scope": 21067, + "src": "35404:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21051, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35404:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "35355:66:73" + }, + "returnParameters": { + "id": 21054, + "nodeType": "ParameterList", + "parameters": [], + "src": "35436:0:73" + }, + "scope": 25070, + "src": "35343:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21089, + "nodeType": "Block", + "src": "35636:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c626f6f6c29", + "id": 21081, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35686:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3a8a6546b97cf01562dd9ca797c4955f3bab9bc163d02081737c20b686446d2", + "typeString": "literal_string \"log(string,string,uint256,bool)\"" + }, + "value": "log(string,string,uint256,bool)" + }, + { + "id": 21082, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21069, + "src": "35721:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21083, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21071, + "src": "35725:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21084, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21073, + "src": "35729:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21085, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21075, + "src": "35733:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3a8a6546b97cf01562dd9ca797c4955f3bab9bc163d02081737c20b686446d2", + "typeString": "literal_string \"log(string,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21079, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35662:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "35666:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35662:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35662:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21078, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "35646:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35646:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21088, + "nodeType": "ExpressionStatement", + "src": "35646:91:73" + } + ] + }, + "id": 21090, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35561:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21076, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21069, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35579:2:73", + "nodeType": "VariableDeclaration", + "scope": 21090, + "src": "35565:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21068, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35565:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21071, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35597:2:73", + "nodeType": "VariableDeclaration", + "scope": 21090, + "src": "35583:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21070, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35583:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21073, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35609:2:73", + "nodeType": "VariableDeclaration", + "scope": 21090, + "src": "35601:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21072, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35601:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21075, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35618:2:73", + "nodeType": "VariableDeclaration", + "scope": 21090, + "src": "35613:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21074, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35613:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "35564:57:73" + }, + "returnParameters": { + "id": 21077, + "nodeType": "ParameterList", + "parameters": [], + "src": "35636:0:73" + }, + "scope": 25070, + "src": "35552:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21112, + "nodeType": "Block", + "src": "35837:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c6164647265737329", + "id": 21104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35887:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1023f7b286378387abf24b7020dbd1ddde789519cf7f13da727146a2a8a61fc6", + "typeString": "literal_string \"log(string,string,uint256,address)\"" + }, + "value": "log(string,string,uint256,address)" + }, + { + "id": 21105, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21092, + "src": "35925:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21106, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21094, + "src": "35929:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21107, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21096, + "src": "35933:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21108, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21098, + "src": "35937:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1023f7b286378387abf24b7020dbd1ddde789519cf7f13da727146a2a8a61fc6", + "typeString": "literal_string \"log(string,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21102, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35863:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "35867:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35863:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35863:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21101, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "35847:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "35847:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21111, + "nodeType": "ExpressionStatement", + "src": "35847:94:73" + } + ] + }, + "id": 21113, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35759:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21099, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21092, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35777:2:73", + "nodeType": "VariableDeclaration", + "scope": 21113, + "src": "35763:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21091, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35763:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21094, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35795:2:73", + "nodeType": "VariableDeclaration", + "scope": 21113, + "src": "35781:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21093, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35781:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21096, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35807:2:73", + "nodeType": "VariableDeclaration", + "scope": 21113, + "src": "35799:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21095, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35799:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21098, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35819:2:73", + "nodeType": "VariableDeclaration", + "scope": 21113, + "src": "35811:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21097, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35811:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "35762:60:73" + }, + "returnParameters": { + "id": 21100, + "nodeType": "ParameterList", + "parameters": [], + "src": "35837:0:73" + }, + "scope": 25070, + "src": "35750:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21135, + "nodeType": "Block", + "src": "36047:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c75696e7432353629", + "id": 21127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36097:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8eafb02b2f27070f4cef3c26d2b8a8d041c7bf077352780062dc5a70550ac689", + "typeString": "literal_string \"log(string,string,string,uint256)\"" + }, + "value": "log(string,string,string,uint256)" + }, + { + "id": 21128, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21115, + "src": "36134:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21129, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21117, + "src": "36138:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21130, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21119, + "src": "36142:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21131, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21121, + "src": "36146:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8eafb02b2f27070f4cef3c26d2b8a8d041c7bf077352780062dc5a70550ac689", + "typeString": "literal_string \"log(string,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21125, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36073:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "36077:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36073:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36073:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21124, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "36057:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36057:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21134, + "nodeType": "ExpressionStatement", + "src": "36057:93:73" + } + ] + }, + "id": 21136, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35963:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21115, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35981:2:73", + "nodeType": "VariableDeclaration", + "scope": 21136, + "src": "35967:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21114, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35967:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21117, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35999:2:73", + "nodeType": "VariableDeclaration", + "scope": 21136, + "src": "35985:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21116, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35985:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21119, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36017:2:73", + "nodeType": "VariableDeclaration", + "scope": 21136, + "src": "36003:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21118, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36003:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21121, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36029:2:73", + "nodeType": "VariableDeclaration", + "scope": 21136, + "src": "36021:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21120, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "36021:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35966:66:73" + }, + "returnParameters": { + "id": 21123, + "nodeType": "ParameterList", + "parameters": [], + "src": "36047:0:73" + }, + "scope": 25070, + "src": "35954:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21158, + "nodeType": "Block", + "src": "36262:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c737472696e6729", + "id": 21150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36312:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + "value": "log(string,string,string,string)" + }, + { + "id": 21151, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21138, + "src": "36348:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21152, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21140, + "src": "36352:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21153, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21142, + "src": "36356:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21154, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21144, + "src": "36360:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21148, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36288:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "36292:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36288:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36288:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21147, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "36272:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36272:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21157, + "nodeType": "ExpressionStatement", + "src": "36272:92:73" + } + ] + }, + "id": 21159, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36172:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21145, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21138, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36190:2:73", + "nodeType": "VariableDeclaration", + "scope": 21159, + "src": "36176:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21137, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36176:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21140, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36208:2:73", + "nodeType": "VariableDeclaration", + "scope": 21159, + "src": "36194:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21139, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36194:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21142, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36226:2:73", + "nodeType": "VariableDeclaration", + "scope": 21159, + "src": "36212:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21141, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36212:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21144, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36244:2:73", + "nodeType": "VariableDeclaration", + "scope": 21159, + "src": "36230:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21143, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36230:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36175:72:73" + }, + "returnParameters": { + "id": 21146, + "nodeType": "ParameterList", + "parameters": [], + "src": "36262:0:73" + }, + "scope": 25070, + "src": "36163:208:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21181, + "nodeType": "Block", + "src": "36467:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c626f6f6c29", + "id": 21173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36517:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + "value": "log(string,string,string,bool)" + }, + { + "id": 21174, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21161, + "src": "36551:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21175, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21163, + "src": "36555:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21176, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21165, + "src": "36559:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21177, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21167, + "src": "36563:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21171, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36493:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "36497:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36493:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36493:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21170, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "36477:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36477:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21180, + "nodeType": "ExpressionStatement", + "src": "36477:90:73" + } + ] + }, + "id": 21182, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36386:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21168, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21161, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36404:2:73", + "nodeType": "VariableDeclaration", + "scope": 21182, + "src": "36390:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21160, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36390:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21163, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36422:2:73", + "nodeType": "VariableDeclaration", + "scope": 21182, + "src": "36408:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21162, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36408:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21165, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36440:2:73", + "nodeType": "VariableDeclaration", + "scope": 21182, + "src": "36426:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21164, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36426:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21167, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36449:2:73", + "nodeType": "VariableDeclaration", + "scope": 21182, + "src": "36444:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21166, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36444:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "36389:63:73" + }, + "returnParameters": { + "id": 21169, + "nodeType": "ParameterList", + "parameters": [], + "src": "36467:0:73" + }, + "scope": 25070, + "src": "36377:197:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21204, + "nodeType": "Block", + "src": "36673:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c6164647265737329", + "id": 21196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36723:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + "value": "log(string,string,string,address)" + }, + { + "id": 21197, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21184, + "src": "36760:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21198, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21186, + "src": "36764:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21199, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21188, + "src": "36768:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21200, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21190, + "src": "36772:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21194, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36699:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "36703:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36699:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36699:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21193, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "36683:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36683:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21203, + "nodeType": "ExpressionStatement", + "src": "36683:93:73" + } + ] + }, + "id": 21205, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36589:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21191, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21184, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36607:2:73", + "nodeType": "VariableDeclaration", + "scope": 21205, + "src": "36593:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21183, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36593:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21186, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36625:2:73", + "nodeType": "VariableDeclaration", + "scope": 21205, + "src": "36611:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21185, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36611:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21188, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36643:2:73", + "nodeType": "VariableDeclaration", + "scope": 21205, + "src": "36629:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21187, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36629:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21190, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36655:2:73", + "nodeType": "VariableDeclaration", + "scope": 21205, + "src": "36647:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21189, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36647:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "36592:66:73" + }, + "returnParameters": { + "id": 21192, + "nodeType": "ParameterList", + "parameters": [], + "src": "36673:0:73" + }, + "scope": 25070, + "src": "36580:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21227, + "nodeType": "Block", + "src": "36873:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c75696e7432353629", + "id": 21219, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36923:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6aefad2ecee6d91421acc41f939bded56985ac5c9cf6e49011ee16b1bb31729", + "typeString": "literal_string \"log(string,string,bool,uint256)\"" + }, + "value": "log(string,string,bool,uint256)" + }, + { + "id": 21220, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21207, + "src": "36958:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21221, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21209, + "src": "36962:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21222, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21211, + "src": "36966:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21223, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21213, + "src": "36970:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6aefad2ecee6d91421acc41f939bded56985ac5c9cf6e49011ee16b1bb31729", + "typeString": "literal_string \"log(string,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21217, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36899:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "36903:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36899:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36899:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21216, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "36883:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "36883:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21226, + "nodeType": "ExpressionStatement", + "src": "36883:91:73" + } + ] + }, + "id": 21228, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36798:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21214, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21207, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36816:2:73", + "nodeType": "VariableDeclaration", + "scope": 21228, + "src": "36802:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21206, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36802:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21209, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36834:2:73", + "nodeType": "VariableDeclaration", + "scope": 21228, + "src": "36820:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21208, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36820:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21211, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36843:2:73", + "nodeType": "VariableDeclaration", + "scope": 21228, + "src": "36838:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21210, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36838:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21213, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36855:2:73", + "nodeType": "VariableDeclaration", + "scope": 21228, + "src": "36847:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21212, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "36847:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "36801:57:73" + }, + "returnParameters": { + "id": 21215, + "nodeType": "ParameterList", + "parameters": [], + "src": "36873:0:73" + }, + "scope": 25070, + "src": "36789:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21250, + "nodeType": "Block", + "src": "37077:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c737472696e6729", + "id": 21242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37127:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + "value": "log(string,string,bool,string)" + }, + { + "id": 21243, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21230, + "src": "37161:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21244, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21232, + "src": "37165:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21245, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21234, + "src": "37169:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21246, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21236, + "src": "37173:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21240, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37103:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "37107:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37103:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37103:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21239, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "37087:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37087:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21249, + "nodeType": "ExpressionStatement", + "src": "37087:90:73" + } + ] + }, + "id": 21251, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36996:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21237, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21230, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37014:2:73", + "nodeType": "VariableDeclaration", + "scope": 21251, + "src": "37000:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21229, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37000:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21232, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37032:2:73", + "nodeType": "VariableDeclaration", + "scope": 21251, + "src": "37018:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21231, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37018:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21234, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37041:2:73", + "nodeType": "VariableDeclaration", + "scope": 21251, + "src": "37036:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21233, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37036:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21236, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37059:2:73", + "nodeType": "VariableDeclaration", + "scope": 21251, + "src": "37045:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21235, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37045:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36999:63:73" + }, + "returnParameters": { + "id": 21238, + "nodeType": "ParameterList", + "parameters": [], + "src": "37077:0:73" + }, + "scope": 25070, + "src": "36987:197:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21273, + "nodeType": "Block", + "src": "37271:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c626f6f6c29", + "id": 21265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37321:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + "value": "log(string,string,bool,bool)" + }, + { + "id": 21266, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21253, + "src": "37353:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21267, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21255, + "src": "37357:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21268, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21257, + "src": "37361:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21269, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21259, + "src": "37365:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21263, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37297:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "37301:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37297:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37297:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21262, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "37281:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37281:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21272, + "nodeType": "ExpressionStatement", + "src": "37281:88:73" + } + ] + }, + "id": 21274, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37199:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21260, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21253, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37217:2:73", + "nodeType": "VariableDeclaration", + "scope": 21274, + "src": "37203:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21252, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37203:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21255, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37235:2:73", + "nodeType": "VariableDeclaration", + "scope": 21274, + "src": "37221:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21254, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37221:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21257, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37244:2:73", + "nodeType": "VariableDeclaration", + "scope": 21274, + "src": "37239:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21256, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37239:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21259, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37253:2:73", + "nodeType": "VariableDeclaration", + "scope": 21274, + "src": "37248:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21258, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37248:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "37202:54:73" + }, + "returnParameters": { + "id": 21261, + "nodeType": "ParameterList", + "parameters": [], + "src": "37271:0:73" + }, + "scope": 25070, + "src": "37190:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21296, + "nodeType": "Block", + "src": "37466:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c6164647265737329", + "id": 21288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37516:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + "value": "log(string,string,bool,address)" + }, + { + "id": 21289, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21276, + "src": "37551:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21290, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21278, + "src": "37555:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21291, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21280, + "src": "37559:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21292, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21282, + "src": "37563:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21286, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37492:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "37496:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37492:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37492:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21285, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "37476:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37476:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21295, + "nodeType": "ExpressionStatement", + "src": "37476:91:73" + } + ] + }, + "id": 21297, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37391:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21283, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21276, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37409:2:73", + "nodeType": "VariableDeclaration", + "scope": 21297, + "src": "37395:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21275, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37395:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21278, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37427:2:73", + "nodeType": "VariableDeclaration", + "scope": 21297, + "src": "37413:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21277, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37413:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21280, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37436:2:73", + "nodeType": "VariableDeclaration", + "scope": 21297, + "src": "37431:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21279, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37431:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21282, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37448:2:73", + "nodeType": "VariableDeclaration", + "scope": 21297, + "src": "37440:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21281, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37440:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "37394:57:73" + }, + "returnParameters": { + "id": 21284, + "nodeType": "ParameterList", + "parameters": [], + "src": "37466:0:73" + }, + "scope": 25070, + "src": "37382:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21319, + "nodeType": "Block", + "src": "37667:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c75696e7432353629", + "id": 21311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37717:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7cc3c607046f21bb2d1cc4864448de2e6c44029beb9bfc36cf6ca90777ae5a00", + "typeString": "literal_string \"log(string,string,address,uint256)\"" + }, + "value": "log(string,string,address,uint256)" + }, + { + "id": 21312, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21299, + "src": "37755:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21313, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21301, + "src": "37759:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21314, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21303, + "src": "37763:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21315, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21305, + "src": "37767:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7cc3c607046f21bb2d1cc4864448de2e6c44029beb9bfc36cf6ca90777ae5a00", + "typeString": "literal_string \"log(string,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21309, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37693:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "37697:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37693:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37693:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21308, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "37677:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37677:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21318, + "nodeType": "ExpressionStatement", + "src": "37677:94:73" + } + ] + }, + "id": 21320, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37589:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21306, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21299, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37607:2:73", + "nodeType": "VariableDeclaration", + "scope": 21320, + "src": "37593:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21298, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37593:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21301, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37625:2:73", + "nodeType": "VariableDeclaration", + "scope": 21320, + "src": "37611:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21300, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37611:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21303, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37637:2:73", + "nodeType": "VariableDeclaration", + "scope": 21320, + "src": "37629:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21302, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37629:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21305, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37649:2:73", + "nodeType": "VariableDeclaration", + "scope": 21320, + "src": "37641:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21304, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "37641:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "37592:60:73" + }, + "returnParameters": { + "id": 21307, + "nodeType": "ParameterList", + "parameters": [], + "src": "37667:0:73" + }, + "scope": 25070, + "src": "37580:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21342, + "nodeType": "Block", + "src": "37877:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c737472696e6729", + "id": 21334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37927:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + "value": "log(string,string,address,string)" + }, + { + "id": 21335, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21322, + "src": "37964:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21336, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21324, + "src": "37968:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21337, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21326, + "src": "37972:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21338, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21328, + "src": "37976:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21332, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37903:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "37907:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37903:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37903:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21331, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "37887:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "37887:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21341, + "nodeType": "ExpressionStatement", + "src": "37887:93:73" + } + ] + }, + "id": 21343, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37793:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21329, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21322, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37811:2:73", + "nodeType": "VariableDeclaration", + "scope": 21343, + "src": "37797:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21321, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37797:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21324, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37829:2:73", + "nodeType": "VariableDeclaration", + "scope": 21343, + "src": "37815:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21323, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37815:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21326, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37841:2:73", + "nodeType": "VariableDeclaration", + "scope": 21343, + "src": "37833:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21325, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37833:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21328, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37859:2:73", + "nodeType": "VariableDeclaration", + "scope": 21343, + "src": "37845:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21327, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37845:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "37796:66:73" + }, + "returnParameters": { + "id": 21330, + "nodeType": "ParameterList", + "parameters": [], + "src": "37877:0:73" + }, + "scope": 25070, + "src": "37784:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21365, + "nodeType": "Block", + "src": "38077:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c626f6f6c29", + "id": 21357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38127:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + "value": "log(string,string,address,bool)" + }, + { + "id": 21358, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21345, + "src": "38162:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21359, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21347, + "src": "38166:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21360, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21349, + "src": "38170:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21361, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21351, + "src": "38174:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21355, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38103:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "38107:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38103:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38103:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21354, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "38087:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38087:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21364, + "nodeType": "ExpressionStatement", + "src": "38087:91:73" + } + ] + }, + "id": 21366, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38002:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21345, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38020:2:73", + "nodeType": "VariableDeclaration", + "scope": 21366, + "src": "38006:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21344, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38006:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21347, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38038:2:73", + "nodeType": "VariableDeclaration", + "scope": 21366, + "src": "38024:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21346, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38024:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21349, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38050:2:73", + "nodeType": "VariableDeclaration", + "scope": 21366, + "src": "38042:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21348, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38042:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21351, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38059:2:73", + "nodeType": "VariableDeclaration", + "scope": 21366, + "src": "38054:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21350, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38054:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38005:57:73" + }, + "returnParameters": { + "id": 21353, + "nodeType": "ParameterList", + "parameters": [], + "src": "38077:0:73" + }, + "scope": 25070, + "src": "37993:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21388, + "nodeType": "Block", + "src": "38278:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c6164647265737329", + "id": 21380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38328:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + "value": "log(string,string,address,address)" + }, + { + "id": 21381, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21368, + "src": "38366:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21382, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21370, + "src": "38370:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21383, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21372, + "src": "38374:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21384, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21374, + "src": "38378:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21378, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38304:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "38308:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38304:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38304:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21377, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "38288:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38288:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21387, + "nodeType": "ExpressionStatement", + "src": "38288:94:73" + } + ] + }, + "id": 21389, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38200:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21375, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21368, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38218:2:73", + "nodeType": "VariableDeclaration", + "scope": 21389, + "src": "38204:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21367, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38204:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21370, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38236:2:73", + "nodeType": "VariableDeclaration", + "scope": 21389, + "src": "38222:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21369, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38222:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21372, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38248:2:73", + "nodeType": "VariableDeclaration", + "scope": 21389, + "src": "38240:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21371, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38240:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21374, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38260:2:73", + "nodeType": "VariableDeclaration", + "scope": 21389, + "src": "38252:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21373, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38252:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38203:60:73" + }, + "returnParameters": { + "id": 21376, + "nodeType": "ParameterList", + "parameters": [], + "src": "38278:0:73" + }, + "scope": 25070, + "src": "38191:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21411, + "nodeType": "Block", + "src": "38473:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c75696e7432353629", + "id": 21403, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38523:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_64b5bb671d0911515c2d999ed3f7f689c3b5762a99b342dfee4a1d88fec7b25e", + "typeString": "literal_string \"log(string,bool,uint256,uint256)\"" + }, + "value": "log(string,bool,uint256,uint256)" + }, + { + "id": 21404, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21391, + "src": "38559:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21405, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21393, + "src": "38563:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21406, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21395, + "src": "38567:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21407, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21397, + "src": "38571:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_64b5bb671d0911515c2d999ed3f7f689c3b5762a99b342dfee4a1d88fec7b25e", + "typeString": "literal_string \"log(string,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21401, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38499:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "38503:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38499:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38499:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21400, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "38483:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38483:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21410, + "nodeType": "ExpressionStatement", + "src": "38483:92:73" + } + ] + }, + "id": 21412, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38404:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21391, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38422:2:73", + "nodeType": "VariableDeclaration", + "scope": 21412, + "src": "38408:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21390, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38408:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21393, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38431:2:73", + "nodeType": "VariableDeclaration", + "scope": 21412, + "src": "38426:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21392, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38426:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21395, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38443:2:73", + "nodeType": "VariableDeclaration", + "scope": 21412, + "src": "38435:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21394, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38435:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21397, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38455:2:73", + "nodeType": "VariableDeclaration", + "scope": 21412, + "src": "38447:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38447:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "38407:51:73" + }, + "returnParameters": { + "id": 21399, + "nodeType": "ParameterList", + "parameters": [], + "src": "38473:0:73" + }, + "scope": 25070, + "src": "38395:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21434, + "nodeType": "Block", + "src": "38672:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c737472696e6729", + "id": 21426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38722:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_742d6ee771df9df1dec5a8b70ff5f7f41567f6ae9fe27e7e391b2811f9978b00", + "typeString": "literal_string \"log(string,bool,uint256,string)\"" + }, + "value": "log(string,bool,uint256,string)" + }, + { + "id": 21427, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21414, + "src": "38757:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21428, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21416, + "src": "38761:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21429, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21418, + "src": "38765:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21430, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21420, + "src": "38769:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_742d6ee771df9df1dec5a8b70ff5f7f41567f6ae9fe27e7e391b2811f9978b00", + "typeString": "literal_string \"log(string,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21424, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38698:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "38702:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38698:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38698:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21423, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "38682:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38682:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21433, + "nodeType": "ExpressionStatement", + "src": "38682:91:73" + } + ] + }, + "id": 21435, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38597:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21421, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21414, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38615:2:73", + "nodeType": "VariableDeclaration", + "scope": 21435, + "src": "38601:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21413, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38601:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21416, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38624:2:73", + "nodeType": "VariableDeclaration", + "scope": 21435, + "src": "38619:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21415, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38619:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21418, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38636:2:73", + "nodeType": "VariableDeclaration", + "scope": 21435, + "src": "38628:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21417, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38628:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21420, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38654:2:73", + "nodeType": "VariableDeclaration", + "scope": 21435, + "src": "38640:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21419, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38640:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "38600:57:73" + }, + "returnParameters": { + "id": 21422, + "nodeType": "ParameterList", + "parameters": [], + "src": "38672:0:73" + }, + "scope": 25070, + "src": "38588:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21457, + "nodeType": "Block", + "src": "38861:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c626f6f6c29", + "id": 21449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38911:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8af7cf8a379b674b00a81c3841f4203ce23fde0db10f1f8c2a0017ca424d79e2", + "typeString": "literal_string \"log(string,bool,uint256,bool)\"" + }, + "value": "log(string,bool,uint256,bool)" + }, + { + "id": 21450, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21437, + "src": "38944:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21451, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21439, + "src": "38948:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21452, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21441, + "src": "38952:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21453, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21443, + "src": "38956:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8af7cf8a379b674b00a81c3841f4203ce23fde0db10f1f8c2a0017ca424d79e2", + "typeString": "literal_string \"log(string,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21447, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38887:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "38891:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38887:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38887:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21446, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "38871:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "38871:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21456, + "nodeType": "ExpressionStatement", + "src": "38871:89:73" + } + ] + }, + "id": 21458, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38795:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21444, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21437, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38813:2:73", + "nodeType": "VariableDeclaration", + "scope": 21458, + "src": "38799:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21436, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38799:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21439, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38822:2:73", + "nodeType": "VariableDeclaration", + "scope": 21458, + "src": "38817:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21438, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38817:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21441, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38834:2:73", + "nodeType": "VariableDeclaration", + "scope": 21458, + "src": "38826:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21440, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38826:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21443, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38843:2:73", + "nodeType": "VariableDeclaration", + "scope": 21458, + "src": "38838:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21442, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38838:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38798:48:73" + }, + "returnParameters": { + "id": 21445, + "nodeType": "ParameterList", + "parameters": [], + "src": "38861:0:73" + }, + "scope": 25070, + "src": "38786:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21480, + "nodeType": "Block", + "src": "39051:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c6164647265737329", + "id": 21472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39101:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_935e09bfd29779a7e049f17e6e907bb9f7181e93c0c486cf646b7471eb4a9d1e", + "typeString": "literal_string \"log(string,bool,uint256,address)\"" + }, + "value": "log(string,bool,uint256,address)" + }, + { + "id": 21473, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21460, + "src": "39137:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21474, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21462, + "src": "39141:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21475, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21464, + "src": "39145:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21476, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21466, + "src": "39149:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_935e09bfd29779a7e049f17e6e907bb9f7181e93c0c486cf646b7471eb4a9d1e", + "typeString": "literal_string \"log(string,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21470, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39077:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "39081:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39077:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39077:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21469, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "39061:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39061:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21479, + "nodeType": "ExpressionStatement", + "src": "39061:92:73" + } + ] + }, + "id": 21481, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38982:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21467, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21460, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39000:2:73", + "nodeType": "VariableDeclaration", + "scope": 21481, + "src": "38986:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21459, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38986:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21462, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39009:2:73", + "nodeType": "VariableDeclaration", + "scope": 21481, + "src": "39004:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21461, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39004:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21464, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39021:2:73", + "nodeType": "VariableDeclaration", + "scope": 21481, + "src": "39013:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21463, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "39013:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21466, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39033:2:73", + "nodeType": "VariableDeclaration", + "scope": 21481, + "src": "39025:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21465, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39025:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38985:51:73" + }, + "returnParameters": { + "id": 21468, + "nodeType": "ParameterList", + "parameters": [], + "src": "39051:0:73" + }, + "scope": 25070, + "src": "38973:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21503, + "nodeType": "Block", + "src": "39250:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c75696e7432353629", + "id": 21495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39300:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_24f9146562ee02c43db65ac014241fab3a51c9e29435f60d2ed133a186cac03a", + "typeString": "literal_string \"log(string,bool,string,uint256)\"" + }, + "value": "log(string,bool,string,uint256)" + }, + { + "id": 21496, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21483, + "src": "39335:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21497, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21485, + "src": "39339:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21498, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21487, + "src": "39343:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21499, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21489, + "src": "39347:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_24f9146562ee02c43db65ac014241fab3a51c9e29435f60d2ed133a186cac03a", + "typeString": "literal_string \"log(string,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21493, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39276:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "39280:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39276:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39276:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21492, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "39260:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39260:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21502, + "nodeType": "ExpressionStatement", + "src": "39260:91:73" + } + ] + }, + "id": 21504, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39175:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21490, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21483, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39193:2:73", + "nodeType": "VariableDeclaration", + "scope": 21504, + "src": "39179:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21482, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39179:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21485, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39202:2:73", + "nodeType": "VariableDeclaration", + "scope": 21504, + "src": "39197:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21484, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39197:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21487, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39220:2:73", + "nodeType": "VariableDeclaration", + "scope": 21504, + "src": "39206:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21486, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39206:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21489, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39232:2:73", + "nodeType": "VariableDeclaration", + "scope": 21504, + "src": "39224:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21488, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "39224:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39178:57:73" + }, + "returnParameters": { + "id": 21491, + "nodeType": "ParameterList", + "parameters": [], + "src": "39250:0:73" + }, + "scope": 25070, + "src": "39166:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21526, + "nodeType": "Block", + "src": "39454:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c737472696e6729", + "id": 21518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39504:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + "value": "log(string,bool,string,string)" + }, + { + "id": 21519, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21506, + "src": "39538:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21520, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21508, + "src": "39542:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21521, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21510, + "src": "39546:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21522, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21512, + "src": "39550:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21516, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39480:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "39484:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39480:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39480:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21515, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "39464:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39464:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21525, + "nodeType": "ExpressionStatement", + "src": "39464:90:73" + } + ] + }, + "id": 21527, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39373:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21506, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39391:2:73", + "nodeType": "VariableDeclaration", + "scope": 21527, + "src": "39377:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21505, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39377:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21508, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39400:2:73", + "nodeType": "VariableDeclaration", + "scope": 21527, + "src": "39395:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21507, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39395:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21510, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39418:2:73", + "nodeType": "VariableDeclaration", + "scope": 21527, + "src": "39404:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21509, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39404:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21512, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39436:2:73", + "nodeType": "VariableDeclaration", + "scope": 21527, + "src": "39422:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21511, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39422:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "39376:63:73" + }, + "returnParameters": { + "id": 21514, + "nodeType": "ParameterList", + "parameters": [], + "src": "39454:0:73" + }, + "scope": 25070, + "src": "39364:197:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21549, + "nodeType": "Block", + "src": "39648:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c626f6f6c29", + "id": 21541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39698:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + "value": "log(string,bool,string,bool)" + }, + { + "id": 21542, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21529, + "src": "39730:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21543, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21531, + "src": "39734:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21544, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21533, + "src": "39738:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21545, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21535, + "src": "39742:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21539, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39674:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "39678:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39674:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39674:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21538, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "39658:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39658:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21548, + "nodeType": "ExpressionStatement", + "src": "39658:88:73" + } + ] + }, + "id": 21550, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39576:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21536, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21529, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39594:2:73", + "nodeType": "VariableDeclaration", + "scope": 21550, + "src": "39580:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21528, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39580:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21531, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39603:2:73", + "nodeType": "VariableDeclaration", + "scope": 21550, + "src": "39598:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21530, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39598:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21533, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39621:2:73", + "nodeType": "VariableDeclaration", + "scope": 21550, + "src": "39607:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21532, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39607:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21535, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39630:2:73", + "nodeType": "VariableDeclaration", + "scope": 21550, + "src": "39625:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21534, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39625:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "39579:54:73" + }, + "returnParameters": { + "id": 21537, + "nodeType": "ParameterList", + "parameters": [], + "src": "39648:0:73" + }, + "scope": 25070, + "src": "39567:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21572, + "nodeType": "Block", + "src": "39843:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c6164647265737329", + "id": 21564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39893:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + "value": "log(string,bool,string,address)" + }, + { + "id": 21565, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21552, + "src": "39928:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21566, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21554, + "src": "39932:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21567, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21556, + "src": "39936:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21568, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21558, + "src": "39940:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21562, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39869:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "39873:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39869:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39869:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21561, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "39853:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "39853:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21571, + "nodeType": "ExpressionStatement", + "src": "39853:91:73" + } + ] + }, + "id": 21573, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39768:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21559, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21552, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39786:2:73", + "nodeType": "VariableDeclaration", + "scope": 21573, + "src": "39772:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21551, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39772:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21554, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39795:2:73", + "nodeType": "VariableDeclaration", + "scope": 21573, + "src": "39790:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21553, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39790:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21556, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39813:2:73", + "nodeType": "VariableDeclaration", + "scope": 21573, + "src": "39799:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21555, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39799:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21558, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39825:2:73", + "nodeType": "VariableDeclaration", + "scope": 21573, + "src": "39817:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21557, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39817:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "39771:57:73" + }, + "returnParameters": { + "id": 21560, + "nodeType": "ParameterList", + "parameters": [], + "src": "39843:0:73" + }, + "scope": 25070, + "src": "39759:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21595, + "nodeType": "Block", + "src": "40032:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 21587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40082:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e3f78a95b6137f6ae9ccc69d6fedacb3b283b432b4367bfc497a4b3b428665c", + "typeString": "literal_string \"log(string,bool,bool,uint256)\"" + }, + "value": "log(string,bool,bool,uint256)" + }, + { + "id": 21588, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21575, + "src": "40115:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21589, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21577, + "src": "40119:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21590, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21579, + "src": "40123:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21591, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21581, + "src": "40127:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e3f78a95b6137f6ae9ccc69d6fedacb3b283b432b4367bfc497a4b3b428665c", + "typeString": "literal_string \"log(string,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21585, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40058:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21586, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "40062:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40058:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40058:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21584, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40042:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40042:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21594, + "nodeType": "ExpressionStatement", + "src": "40042:89:73" + } + ] + }, + "id": 21596, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39966:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21575, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39984:2:73", + "nodeType": "VariableDeclaration", + "scope": 21596, + "src": "39970:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21574, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39970:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21577, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39993:2:73", + "nodeType": "VariableDeclaration", + "scope": 21596, + "src": "39988:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21576, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39988:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21579, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40002:2:73", + "nodeType": "VariableDeclaration", + "scope": 21596, + "src": "39997:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21578, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39997:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21581, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40014:2:73", + "nodeType": "VariableDeclaration", + "scope": 21596, + "src": "40006:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21580, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "40006:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39969:48:73" + }, + "returnParameters": { + "id": 21583, + "nodeType": "ParameterList", + "parameters": [], + "src": "40032:0:73" + }, + "scope": 25070, + "src": "39957:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21618, + "nodeType": "Block", + "src": "40225:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c737472696e6729", + "id": 21610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40275:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + "value": "log(string,bool,bool,string)" + }, + { + "id": 21611, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21598, + "src": "40307:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21612, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21600, + "src": "40311:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21613, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21602, + "src": "40315:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21614, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21604, + "src": "40319:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21608, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40251:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "40255:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40251:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40251:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21607, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40235:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40235:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21617, + "nodeType": "ExpressionStatement", + "src": "40235:88:73" + } + ] + }, + "id": 21619, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40153:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21605, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21598, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40171:2:73", + "nodeType": "VariableDeclaration", + "scope": 21619, + "src": "40157:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21597, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40157:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21600, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40180:2:73", + "nodeType": "VariableDeclaration", + "scope": 21619, + "src": "40175:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21599, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40175:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21602, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40189:2:73", + "nodeType": "VariableDeclaration", + "scope": 21619, + "src": "40184:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21601, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40184:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21604, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40207:2:73", + "nodeType": "VariableDeclaration", + "scope": 21619, + "src": "40193:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21603, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40193:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "40156:54:73" + }, + "returnParameters": { + "id": 21606, + "nodeType": "ParameterList", + "parameters": [], + "src": "40225:0:73" + }, + "scope": 25070, + "src": "40144:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21641, + "nodeType": "Block", + "src": "40408:103:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 21633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40458:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + "value": "log(string,bool,bool,bool)" + }, + { + "id": 21634, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21621, + "src": "40488:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21635, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21623, + "src": "40492:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21636, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21625, + "src": "40496:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21637, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21627, + "src": "40500:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21631, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40434:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "40438:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40434:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40434:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21630, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40418:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40418:86:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21640, + "nodeType": "ExpressionStatement", + "src": "40418:86:73" + } + ] + }, + "id": 21642, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40345:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21628, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21621, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40363:2:73", + "nodeType": "VariableDeclaration", + "scope": 21642, + "src": "40349:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21620, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40349:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21623, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40372:2:73", + "nodeType": "VariableDeclaration", + "scope": 21642, + "src": "40367:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21622, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40367:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21625, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40381:2:73", + "nodeType": "VariableDeclaration", + "scope": 21642, + "src": "40376:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40376:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21627, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40390:2:73", + "nodeType": "VariableDeclaration", + "scope": 21642, + "src": "40385:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21626, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40385:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "40348:45:73" + }, + "returnParameters": { + "id": 21629, + "nodeType": "ParameterList", + "parameters": [], + "src": "40408:0:73" + }, + "scope": 25070, + "src": "40336:175:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21664, + "nodeType": "Block", + "src": "40592:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c6164647265737329", + "id": 21656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40642:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + "value": "log(string,bool,bool,address)" + }, + { + "id": 21657, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21644, + "src": "40675:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21658, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21646, + "src": "40679:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21659, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21648, + "src": "40683:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21660, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21650, + "src": "40687:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21654, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40618:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "40622:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40618:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40618:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21653, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40602:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40602:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21663, + "nodeType": "ExpressionStatement", + "src": "40602:89:73" + } + ] + }, + "id": 21665, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40526:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21651, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21644, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40544:2:73", + "nodeType": "VariableDeclaration", + "scope": 21665, + "src": "40530:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21643, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40530:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21646, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40553:2:73", + "nodeType": "VariableDeclaration", + "scope": 21665, + "src": "40548:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21645, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40548:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21648, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40562:2:73", + "nodeType": "VariableDeclaration", + "scope": 21665, + "src": "40557:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21647, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40557:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21650, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40574:2:73", + "nodeType": "VariableDeclaration", + "scope": 21665, + "src": "40566:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21649, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40566:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "40529:48:73" + }, + "returnParameters": { + "id": 21652, + "nodeType": "ParameterList", + "parameters": [], + "src": "40592:0:73" + }, + "scope": 25070, + "src": "40517:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21687, + "nodeType": "Block", + "src": "40782:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c75696e7432353629", + "id": 21679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40832:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d08bb051545e1af26b8dc05172e6aa8a0bd85212ec19e971b10cea364c21531", + "typeString": "literal_string \"log(string,bool,address,uint256)\"" + }, + "value": "log(string,bool,address,uint256)" + }, + { + "id": 21680, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21667, + "src": "40868:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21681, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21669, + "src": "40872:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21682, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21671, + "src": "40876:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21683, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21673, + "src": "40880:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d08bb051545e1af26b8dc05172e6aa8a0bd85212ec19e971b10cea364c21531", + "typeString": "literal_string \"log(string,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21677, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40808:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "40812:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40808:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40808:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21676, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40792:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40792:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21686, + "nodeType": "ExpressionStatement", + "src": "40792:92:73" + } + ] + }, + "id": 21688, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40713:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21674, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21667, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40731:2:73", + "nodeType": "VariableDeclaration", + "scope": 21688, + "src": "40717:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21666, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40717:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21669, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40740:2:73", + "nodeType": "VariableDeclaration", + "scope": 21688, + "src": "40735:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21668, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40735:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21671, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40752:2:73", + "nodeType": "VariableDeclaration", + "scope": 21688, + "src": "40744:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21670, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40744:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21673, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40764:2:73", + "nodeType": "VariableDeclaration", + "scope": 21688, + "src": "40756:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21672, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "40756:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "40716:51:73" + }, + "returnParameters": { + "id": 21675, + "nodeType": "ParameterList", + "parameters": [], + "src": "40782:0:73" + }, + "scope": 25070, + "src": "40704:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21710, + "nodeType": "Block", + "src": "40981:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c737472696e6729", + "id": 21702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41031:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + "value": "log(string,bool,address,string)" + }, + { + "id": 21703, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21690, + "src": "41066:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21704, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21692, + "src": "41070:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21705, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21694, + "src": "41074:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21706, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21696, + "src": "41078:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21700, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41007:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21701, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41011:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41007:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41007:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21699, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "40991:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "40991:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21709, + "nodeType": "ExpressionStatement", + "src": "40991:91:73" + } + ] + }, + "id": 21711, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40906:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21690, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40924:2:73", + "nodeType": "VariableDeclaration", + "scope": 21711, + "src": "40910:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21689, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40910:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21692, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40933:2:73", + "nodeType": "VariableDeclaration", + "scope": 21711, + "src": "40928:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21691, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40928:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21694, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40945:2:73", + "nodeType": "VariableDeclaration", + "scope": 21711, + "src": "40937:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21693, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40937:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21696, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40963:2:73", + "nodeType": "VariableDeclaration", + "scope": 21711, + "src": "40949:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21695, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40949:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "40909:57:73" + }, + "returnParameters": { + "id": 21698, + "nodeType": "ParameterList", + "parameters": [], + "src": "40981:0:73" + }, + "scope": 25070, + "src": "40897:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21733, + "nodeType": "Block", + "src": "41170:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c626f6f6c29", + "id": 21725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41220:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + "value": "log(string,bool,address,bool)" + }, + { + "id": 21726, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21713, + "src": "41253:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21727, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21715, + "src": "41257:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21728, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21717, + "src": "41261:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21729, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21719, + "src": "41265:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21723, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41196:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41200:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41196:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41196:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21722, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "41180:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41180:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21732, + "nodeType": "ExpressionStatement", + "src": "41180:89:73" + } + ] + }, + "id": 21734, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41104:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21720, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21713, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41122:2:73", + "nodeType": "VariableDeclaration", + "scope": 21734, + "src": "41108:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21712, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41108:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21715, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41131:2:73", + "nodeType": "VariableDeclaration", + "scope": 21734, + "src": "41126:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21714, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41126:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21717, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41143:2:73", + "nodeType": "VariableDeclaration", + "scope": 21734, + "src": "41135:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41135:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21719, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41152:2:73", + "nodeType": "VariableDeclaration", + "scope": 21734, + "src": "41147:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21718, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41147:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "41107:48:73" + }, + "returnParameters": { + "id": 21721, + "nodeType": "ParameterList", + "parameters": [], + "src": "41170:0:73" + }, + "scope": 25070, + "src": "41095:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21756, + "nodeType": "Block", + "src": "41360:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c6164647265737329", + "id": 21748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41410:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + "value": "log(string,bool,address,address)" + }, + { + "id": 21749, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21736, + "src": "41446:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21750, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21738, + "src": "41450:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21751, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21740, + "src": "41454:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21752, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21742, + "src": "41458:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21746, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41386:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41390:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41386:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41386:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21745, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "41370:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41370:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21755, + "nodeType": "ExpressionStatement", + "src": "41370:92:73" + } + ] + }, + "id": 21757, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41291:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21736, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41309:2:73", + "nodeType": "VariableDeclaration", + "scope": 21757, + "src": "41295:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21735, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41295:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21738, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41318:2:73", + "nodeType": "VariableDeclaration", + "scope": 21757, + "src": "41313:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21737, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41313:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21740, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41330:2:73", + "nodeType": "VariableDeclaration", + "scope": 21757, + "src": "41322:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21739, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41322:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21742, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41342:2:73", + "nodeType": "VariableDeclaration", + "scope": 21757, + "src": "41334:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41334:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "41294:51:73" + }, + "returnParameters": { + "id": 21744, + "nodeType": "ParameterList", + "parameters": [], + "src": "41360:0:73" + }, + "scope": 25070, + "src": "41282:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21779, + "nodeType": "Block", + "src": "41556:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c75696e7432353629", + "id": 21771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41606:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8f51b1efa50f24f22e6d84ce2fe784a33e1301484ada1546e913ae05d6370e9", + "typeString": "literal_string \"log(string,address,uint256,uint256)\"" + }, + "value": "log(string,address,uint256,uint256)" + }, + { + "id": 21772, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21759, + "src": "41645:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21773, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21761, + "src": "41649:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21774, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21763, + "src": "41653:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21775, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21765, + "src": "41657:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f8f51b1efa50f24f22e6d84ce2fe784a33e1301484ada1546e913ae05d6370e9", + "typeString": "literal_string \"log(string,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21769, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41582:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41586:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41582:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41582:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21768, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "41566:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41566:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21778, + "nodeType": "ExpressionStatement", + "src": "41566:95:73" + } + ] + }, + "id": 21780, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41484:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21766, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21759, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41502:2:73", + "nodeType": "VariableDeclaration", + "scope": 21780, + "src": "41488:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21758, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41488:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21761, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41514:2:73", + "nodeType": "VariableDeclaration", + "scope": 21780, + "src": "41506:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21760, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41506:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21763, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41526:2:73", + "nodeType": "VariableDeclaration", + "scope": 21780, + "src": "41518:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21762, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41518:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21765, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41538:2:73", + "nodeType": "VariableDeclaration", + "scope": 21780, + "src": "41530:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21764, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41530:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "41487:54:73" + }, + "returnParameters": { + "id": 21767, + "nodeType": "ParameterList", + "parameters": [], + "src": "41556:0:73" + }, + "scope": 25070, + "src": "41475:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21802, + "nodeType": "Block", + "src": "41761:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c737472696e6729", + "id": 21794, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41811:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5a477632ed0f8b7872a83c9247644de555db395491f2f355c6edb676d8bcb46c", + "typeString": "literal_string \"log(string,address,uint256,string)\"" + }, + "value": "log(string,address,uint256,string)" + }, + { + "id": 21795, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21782, + "src": "41849:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21796, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21784, + "src": "41853:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21797, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21786, + "src": "41857:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21798, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21788, + "src": "41861:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5a477632ed0f8b7872a83c9247644de555db395491f2f355c6edb676d8bcb46c", + "typeString": "literal_string \"log(string,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21792, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41787:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41791:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41787:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41787:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21791, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "41771:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41771:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21801, + "nodeType": "ExpressionStatement", + "src": "41771:94:73" + } + ] + }, + "id": 21803, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41683:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21789, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21782, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41701:2:73", + "nodeType": "VariableDeclaration", + "scope": 21803, + "src": "41687:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41687:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21784, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41713:2:73", + "nodeType": "VariableDeclaration", + "scope": 21803, + "src": "41705:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21783, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41705:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21786, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41725:2:73", + "nodeType": "VariableDeclaration", + "scope": 21803, + "src": "41717:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21785, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41717:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21788, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41743:2:73", + "nodeType": "VariableDeclaration", + "scope": 21803, + "src": "41729:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21787, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41729:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "41686:60:73" + }, + "returnParameters": { + "id": 21790, + "nodeType": "ParameterList", + "parameters": [], + "src": "41761:0:73" + }, + "scope": 25070, + "src": "41674:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21825, + "nodeType": "Block", + "src": "41956:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c626f6f6c29", + "id": 21817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42006:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fc4845f029f76ed29f7b800fe92a7851214073a807806d7d808676b2cbe7a1c7", + "typeString": "literal_string \"log(string,address,uint256,bool)\"" + }, + "value": "log(string,address,uint256,bool)" + }, + { + "id": 21818, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21805, + "src": "42042:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21819, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21807, + "src": "42046:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21820, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21809, + "src": "42050:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21821, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21811, + "src": "42054:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fc4845f029f76ed29f7b800fe92a7851214073a807806d7d808676b2cbe7a1c7", + "typeString": "literal_string \"log(string,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21815, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41982:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "41986:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41982:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41982:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21814, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "41966:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "41966:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21824, + "nodeType": "ExpressionStatement", + "src": "41966:92:73" + } + ] + }, + "id": 21826, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41887:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21812, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21805, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41905:2:73", + "nodeType": "VariableDeclaration", + "scope": 21826, + "src": "41891:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21804, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41891:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21807, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41917:2:73", + "nodeType": "VariableDeclaration", + "scope": 21826, + "src": "41909:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21806, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41909:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21809, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41929:2:73", + "nodeType": "VariableDeclaration", + "scope": 21826, + "src": "41921:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21808, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41921:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21811, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41938:2:73", + "nodeType": "VariableDeclaration", + "scope": 21826, + "src": "41933:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21810, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41933:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "41890:51:73" + }, + "returnParameters": { + "id": 21813, + "nodeType": "ParameterList", + "parameters": [], + "src": "41956:0:73" + }, + "scope": 25070, + "src": "41878:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21848, + "nodeType": "Block", + "src": "42152:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c6164647265737329", + "id": 21840, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42202:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_63fb8bc57476e3f2139504feb3fa304f43eeecc15ac8e150b7b3c9fdfa4ea83a", + "typeString": "literal_string \"log(string,address,uint256,address)\"" + }, + "value": "log(string,address,uint256,address)" + }, + { + "id": 21841, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21828, + "src": "42241:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21842, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21830, + "src": "42245:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21843, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21832, + "src": "42249:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 21844, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21834, + "src": "42253:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_63fb8bc57476e3f2139504feb3fa304f43eeecc15ac8e150b7b3c9fdfa4ea83a", + "typeString": "literal_string \"log(string,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21838, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42178:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "42182:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42178:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42178:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21837, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "42162:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42162:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21847, + "nodeType": "ExpressionStatement", + "src": "42162:95:73" + } + ] + }, + "id": 21849, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42080:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21835, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21828, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42098:2:73", + "nodeType": "VariableDeclaration", + "scope": 21849, + "src": "42084:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21827, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42084:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21830, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42110:2:73", + "nodeType": "VariableDeclaration", + "scope": 21849, + "src": "42102:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21829, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42102:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21832, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42122:2:73", + "nodeType": "VariableDeclaration", + "scope": 21849, + "src": "42114:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "42114:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21834, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42134:2:73", + "nodeType": "VariableDeclaration", + "scope": 21849, + "src": "42126:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21833, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42126:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "42083:54:73" + }, + "returnParameters": { + "id": 21836, + "nodeType": "ParameterList", + "parameters": [], + "src": "42152:0:73" + }, + "scope": 25070, + "src": "42071:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21871, + "nodeType": "Block", + "src": "42357:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c75696e7432353629", + "id": 21863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42407:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91d1112e9ca774de680c78512401449500c1938a4e449f6e73f80a84d95cfcfd", + "typeString": "literal_string \"log(string,address,string,uint256)\"" + }, + "value": "log(string,address,string,uint256)" + }, + { + "id": 21864, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21851, + "src": "42445:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21865, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21853, + "src": "42449:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21866, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21855, + "src": "42453:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21867, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21857, + "src": "42457:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91d1112e9ca774de680c78512401449500c1938a4e449f6e73f80a84d95cfcfd", + "typeString": "literal_string \"log(string,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21861, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42383:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "42387:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42383:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42383:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21860, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "42367:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42367:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21870, + "nodeType": "ExpressionStatement", + "src": "42367:94:73" + } + ] + }, + "id": 21872, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42279:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21858, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21851, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42297:2:73", + "nodeType": "VariableDeclaration", + "scope": 21872, + "src": "42283:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21850, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42283:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21853, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42309:2:73", + "nodeType": "VariableDeclaration", + "scope": 21872, + "src": "42301:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42301:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21855, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42327:2:73", + "nodeType": "VariableDeclaration", + "scope": 21872, + "src": "42313:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21854, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42313:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21857, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42339:2:73", + "nodeType": "VariableDeclaration", + "scope": 21872, + "src": "42331:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21856, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "42331:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "42282:60:73" + }, + "returnParameters": { + "id": 21859, + "nodeType": "ParameterList", + "parameters": [], + "src": "42357:0:73" + }, + "scope": 25070, + "src": "42270:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21894, + "nodeType": "Block", + "src": "42567:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c737472696e6729", + "id": 21886, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42617:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + "value": "log(string,address,string,string)" + }, + { + "id": 21887, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21874, + "src": "42654:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21888, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21876, + "src": "42658:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21889, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21878, + "src": "42662:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21890, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21880, + "src": "42666:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21884, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42593:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "42597:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42593:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42593:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21883, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "42577:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42577:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21893, + "nodeType": "ExpressionStatement", + "src": "42577:93:73" + } + ] + }, + "id": 21895, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42483:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21881, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21874, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42501:2:73", + "nodeType": "VariableDeclaration", + "scope": 21895, + "src": "42487:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21873, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42487:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21876, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42513:2:73", + "nodeType": "VariableDeclaration", + "scope": 21895, + "src": "42505:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21875, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42505:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21878, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42531:2:73", + "nodeType": "VariableDeclaration", + "scope": 21895, + "src": "42517:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21877, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42517:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21880, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42549:2:73", + "nodeType": "VariableDeclaration", + "scope": 21895, + "src": "42535:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21879, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42535:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "42486:66:73" + }, + "returnParameters": { + "id": 21882, + "nodeType": "ParameterList", + "parameters": [], + "src": "42567:0:73" + }, + "scope": 25070, + "src": "42474:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21917, + "nodeType": "Block", + "src": "42767:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c626f6f6c29", + "id": 21909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42817:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + "value": "log(string,address,string,bool)" + }, + { + "id": 21910, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21897, + "src": "42852:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21911, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21899, + "src": "42856:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21912, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21901, + "src": "42860:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21913, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21903, + "src": "42864:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21907, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42793:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "42797:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42793:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42793:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21906, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "42777:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42777:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21916, + "nodeType": "ExpressionStatement", + "src": "42777:91:73" + } + ] + }, + "id": 21918, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42692:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21897, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42710:2:73", + "nodeType": "VariableDeclaration", + "scope": 21918, + "src": "42696:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21896, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42696:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21899, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42722:2:73", + "nodeType": "VariableDeclaration", + "scope": 21918, + "src": "42714:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42714:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21901, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42740:2:73", + "nodeType": "VariableDeclaration", + "scope": 21918, + "src": "42726:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21900, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42726:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21903, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42749:2:73", + "nodeType": "VariableDeclaration", + "scope": 21918, + "src": "42744:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21902, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "42744:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "42695:57:73" + }, + "returnParameters": { + "id": 21905, + "nodeType": "ParameterList", + "parameters": [], + "src": "42767:0:73" + }, + "scope": 25070, + "src": "42683:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21940, + "nodeType": "Block", + "src": "42968:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c6164647265737329", + "id": 21932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43018:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + "value": "log(string,address,string,address)" + }, + { + "id": 21933, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21920, + "src": "43056:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21934, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21922, + "src": "43060:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21935, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21924, + "src": "43064:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21936, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21926, + "src": "43068:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21930, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42994:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "42998:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42994:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42994:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21929, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "42978:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "42978:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21939, + "nodeType": "ExpressionStatement", + "src": "42978:94:73" + } + ] + }, + "id": 21941, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42890:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21927, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21920, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42908:2:73", + "nodeType": "VariableDeclaration", + "scope": 21941, + "src": "42894:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21919, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42894:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21922, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42920:2:73", + "nodeType": "VariableDeclaration", + "scope": 21941, + "src": "42912:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21921, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42912:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21924, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42938:2:73", + "nodeType": "VariableDeclaration", + "scope": 21941, + "src": "42924:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21923, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42924:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21926, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42950:2:73", + "nodeType": "VariableDeclaration", + "scope": 21941, + "src": "42942:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21925, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42942:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "42893:60:73" + }, + "returnParameters": { + "id": 21928, + "nodeType": "ParameterList", + "parameters": [], + "src": "42968:0:73" + }, + "scope": 25070, + "src": "42881:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21963, + "nodeType": "Block", + "src": "43163:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c75696e7432353629", + "id": 21955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43213:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3e9f866aadef9b1f2b0257e0ed5e2df8882ba55e598b4f5282674b64ae3f06b5", + "typeString": "literal_string \"log(string,address,bool,uint256)\"" + }, + "value": "log(string,address,bool,uint256)" + }, + { + "id": 21956, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21943, + "src": "43249:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21957, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21945, + "src": "43253:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21958, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21947, + "src": "43257:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21959, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21949, + "src": "43261:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3e9f866aadef9b1f2b0257e0ed5e2df8882ba55e598b4f5282674b64ae3f06b5", + "typeString": "literal_string \"log(string,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21953, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43189:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "43193:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43189:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43189:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21952, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "43173:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43173:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21962, + "nodeType": "ExpressionStatement", + "src": "43173:92:73" + } + ] + }, + "id": 21964, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43094:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21943, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43112:2:73", + "nodeType": "VariableDeclaration", + "scope": 21964, + "src": "43098:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43098:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21945, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43124:2:73", + "nodeType": "VariableDeclaration", + "scope": 21964, + "src": "43116:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21944, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43116:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21947, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43133:2:73", + "nodeType": "VariableDeclaration", + "scope": 21964, + "src": "43128:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21946, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43128:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21949, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43145:2:73", + "nodeType": "VariableDeclaration", + "scope": 21964, + "src": "43137:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21948, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "43137:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "43097:51:73" + }, + "returnParameters": { + "id": 21951, + "nodeType": "ParameterList", + "parameters": [], + "src": "43163:0:73" + }, + "scope": 25070, + "src": "43085:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 21986, + "nodeType": "Block", + "src": "43362:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c737472696e6729", + "id": 21978, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43412:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + "value": "log(string,address,bool,string)" + }, + { + "id": 21979, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21966, + "src": "43447:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 21980, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21968, + "src": "43451:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21981, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21970, + "src": "43455:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 21982, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21972, + "src": "43459:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21976, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43388:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "43392:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43388:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43388:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21975, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "43372:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 21984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43372:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21985, + "nodeType": "ExpressionStatement", + "src": "43372:91:73" + } + ] + }, + "id": 21987, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43287:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21973, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21966, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43305:2:73", + "nodeType": "VariableDeclaration", + "scope": 21987, + "src": "43291:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21965, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43291:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21968, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43317:2:73", + "nodeType": "VariableDeclaration", + "scope": 21987, + "src": "43309:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21967, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43309:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21970, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43326:2:73", + "nodeType": "VariableDeclaration", + "scope": 21987, + "src": "43321:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21969, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43321:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21972, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43344:2:73", + "nodeType": "VariableDeclaration", + "scope": 21987, + "src": "43330:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21971, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43330:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "43290:57:73" + }, + "returnParameters": { + "id": 21974, + "nodeType": "ParameterList", + "parameters": [], + "src": "43362:0:73" + }, + "scope": 25070, + "src": "43278:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22009, + "nodeType": "Block", + "src": "43551:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c626f6f6c29", + "id": 22001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43601:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + "value": "log(string,address,bool,bool)" + }, + { + "id": 22002, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21989, + "src": "43634:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22003, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21991, + "src": "43638:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22004, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21993, + "src": "43642:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22005, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21995, + "src": "43646:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21999, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43577:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "43581:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43577:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43577:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21998, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "43561:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43561:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22008, + "nodeType": "ExpressionStatement", + "src": "43561:89:73" + } + ] + }, + "id": 22010, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43485:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 21996, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21989, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43503:2:73", + "nodeType": "VariableDeclaration", + "scope": 22010, + "src": "43489:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21988, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43489:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21991, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43515:2:73", + "nodeType": "VariableDeclaration", + "scope": 22010, + "src": "43507:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21990, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43507:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21993, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43524:2:73", + "nodeType": "VariableDeclaration", + "scope": 22010, + "src": "43519:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21992, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43519:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21995, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43533:2:73", + "nodeType": "VariableDeclaration", + "scope": 22010, + "src": "43528:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21994, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43528:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "43488:48:73" + }, + "returnParameters": { + "id": 21997, + "nodeType": "ParameterList", + "parameters": [], + "src": "43551:0:73" + }, + "scope": 25070, + "src": "43476:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22032, + "nodeType": "Block", + "src": "43741:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c6164647265737329", + "id": 22024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43791:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + "value": "log(string,address,bool,address)" + }, + { + "id": 22025, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22012, + "src": "43827:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22026, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22014, + "src": "43831:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22027, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22016, + "src": "43835:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22028, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22018, + "src": "43839:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22022, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43767:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "43771:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43767:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43767:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22021, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "43751:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22030, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43751:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22031, + "nodeType": "ExpressionStatement", + "src": "43751:92:73" + } + ] + }, + "id": 22033, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43672:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22019, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22012, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43690:2:73", + "nodeType": "VariableDeclaration", + "scope": 22033, + "src": "43676:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22011, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43676:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22014, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43702:2:73", + "nodeType": "VariableDeclaration", + "scope": 22033, + "src": "43694:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22013, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43694:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22016, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43711:2:73", + "nodeType": "VariableDeclaration", + "scope": 22033, + "src": "43706:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22015, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43706:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22018, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43723:2:73", + "nodeType": "VariableDeclaration", + "scope": 22033, + "src": "43715:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22017, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43715:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "43675:51:73" + }, + "returnParameters": { + "id": 22020, + "nodeType": "ParameterList", + "parameters": [], + "src": "43741:0:73" + }, + "scope": 25070, + "src": "43663:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22055, + "nodeType": "Block", + "src": "43937:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c75696e7432353629", + "id": 22047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43987:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ef3f399de1ebecd7840dee5f4cdc1bad43021ab37fa3acdd3dfbd36f7092e7b", + "typeString": "literal_string \"log(string,address,address,uint256)\"" + }, + "value": "log(string,address,address,uint256)" + }, + { + "id": 22048, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22035, + "src": "44026:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22049, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22037, + "src": "44030:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22050, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22039, + "src": "44034:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22051, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22041, + "src": "44038:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8ef3f399de1ebecd7840dee5f4cdc1bad43021ab37fa3acdd3dfbd36f7092e7b", + "typeString": "literal_string \"log(string,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22045, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43963:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "43967:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43963:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43963:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22044, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "43947:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "43947:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22054, + "nodeType": "ExpressionStatement", + "src": "43947:95:73" + } + ] + }, + "id": 22056, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43865:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22042, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22035, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43883:2:73", + "nodeType": "VariableDeclaration", + "scope": 22056, + "src": "43869:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22034, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43869:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22037, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43895:2:73", + "nodeType": "VariableDeclaration", + "scope": 22056, + "src": "43887:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22036, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43887:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22039, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43907:2:73", + "nodeType": "VariableDeclaration", + "scope": 22056, + "src": "43899:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22038, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43899:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22041, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43919:2:73", + "nodeType": "VariableDeclaration", + "scope": 22056, + "src": "43911:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22040, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "43911:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "43868:54:73" + }, + "returnParameters": { + "id": 22043, + "nodeType": "ParameterList", + "parameters": [], + "src": "43937:0:73" + }, + "scope": 25070, + "src": "43856:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22078, + "nodeType": "Block", + "src": "44142:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c737472696e6729", + "id": 22070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44192:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + "value": "log(string,address,address,string)" + }, + { + "id": 22071, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22058, + "src": "44230:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22072, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22060, + "src": "44234:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22073, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22062, + "src": "44238:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22074, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22064, + "src": "44242:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22068, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44168:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "44172:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44168:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44168:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22067, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "44152:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44152:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22077, + "nodeType": "ExpressionStatement", + "src": "44152:94:73" + } + ] + }, + "id": 22079, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44064:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22058, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44082:2:73", + "nodeType": "VariableDeclaration", + "scope": 22079, + "src": "44068:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22057, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44068:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22060, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44094:2:73", + "nodeType": "VariableDeclaration", + "scope": 22079, + "src": "44086:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22059, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44086:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22062, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44106:2:73", + "nodeType": "VariableDeclaration", + "scope": 22079, + "src": "44098:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44098:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22064, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44124:2:73", + "nodeType": "VariableDeclaration", + "scope": 22079, + "src": "44110:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22063, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44110:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "44067:60:73" + }, + "returnParameters": { + "id": 22066, + "nodeType": "ParameterList", + "parameters": [], + "src": "44142:0:73" + }, + "scope": 25070, + "src": "44055:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22101, + "nodeType": "Block", + "src": "44337:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c626f6f6c29", + "id": 22093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44387:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + "value": "log(string,address,address,bool)" + }, + { + "id": 22094, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22081, + "src": "44423:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22095, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22083, + "src": "44427:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22096, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22085, + "src": "44431:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22097, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22087, + "src": "44435:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44363:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "44367:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44363:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44363:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22090, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "44347:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44347:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22100, + "nodeType": "ExpressionStatement", + "src": "44347:92:73" + } + ] + }, + "id": 22102, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44268:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22081, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44286:2:73", + "nodeType": "VariableDeclaration", + "scope": 22102, + "src": "44272:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22080, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44272:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22083, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44298:2:73", + "nodeType": "VariableDeclaration", + "scope": 22102, + "src": "44290:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22082, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44290:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22085, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44310:2:73", + "nodeType": "VariableDeclaration", + "scope": 22102, + "src": "44302:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44302:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22087, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44319:2:73", + "nodeType": "VariableDeclaration", + "scope": 22102, + "src": "44314:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22086, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44314:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "44271:51:73" + }, + "returnParameters": { + "id": 22089, + "nodeType": "ParameterList", + "parameters": [], + "src": "44337:0:73" + }, + "scope": 25070, + "src": "44259:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22124, + "nodeType": "Block", + "src": "44533:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c6164647265737329", + "id": 22116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44583:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + "value": "log(string,address,address,address)" + }, + { + "id": 22117, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22104, + "src": "44622:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22118, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22106, + "src": "44626:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22119, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22108, + "src": "44630:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22120, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22110, + "src": "44634:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22114, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44559:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "44563:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44559:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44559:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22113, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "44543:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44543:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22123, + "nodeType": "ExpressionStatement", + "src": "44543:95:73" + } + ] + }, + "id": 22125, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44461:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22111, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22104, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44479:2:73", + "nodeType": "VariableDeclaration", + "scope": 22125, + "src": "44465:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22103, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44465:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22106, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44491:2:73", + "nodeType": "VariableDeclaration", + "scope": 22125, + "src": "44483:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22105, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44483:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22108, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44503:2:73", + "nodeType": "VariableDeclaration", + "scope": 22125, + "src": "44495:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44495:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22110, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44515:2:73", + "nodeType": "VariableDeclaration", + "scope": 22125, + "src": "44507:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22109, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44507:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "44464:54:73" + }, + "returnParameters": { + "id": 22112, + "nodeType": "ParameterList", + "parameters": [], + "src": "44533:0:73" + }, + "scope": 25070, + "src": "44452:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22147, + "nodeType": "Block", + "src": "44723:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c75696e7432353629", + "id": 22139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44773:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_374bb4b29e495d2b557643d341fe72136bf6e92f2ac9b1edd86dbbd72a19d62b", + "typeString": "literal_string \"log(bool,uint256,uint256,uint256)\"" + }, + "value": "log(bool,uint256,uint256,uint256)" + }, + { + "id": 22140, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22127, + "src": "44810:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22141, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22129, + "src": "44814:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22142, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22131, + "src": "44818:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22143, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22133, + "src": "44822:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_374bb4b29e495d2b557643d341fe72136bf6e92f2ac9b1edd86dbbd72a19d62b", + "typeString": "literal_string \"log(bool,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22137, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44749:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "44753:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44749:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44749:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22136, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "44733:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22145, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44733:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22146, + "nodeType": "ExpressionStatement", + "src": "44733:93:73" + } + ] + }, + "id": 22148, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44660:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22127, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44669:2:73", + "nodeType": "VariableDeclaration", + "scope": 22148, + "src": "44664:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22126, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44664:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22129, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44681:2:73", + "nodeType": "VariableDeclaration", + "scope": 22148, + "src": "44673:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22128, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44673:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22131, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44693:2:73", + "nodeType": "VariableDeclaration", + "scope": 22148, + "src": "44685:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44685:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22133, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44705:2:73", + "nodeType": "VariableDeclaration", + "scope": 22148, + "src": "44697:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22132, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44697:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "44663:45:73" + }, + "returnParameters": { + "id": 22135, + "nodeType": "ParameterList", + "parameters": [], + "src": "44723:0:73" + }, + "scope": 25070, + "src": "44651:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22170, + "nodeType": "Block", + "src": "44917:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c737472696e6729", + "id": 22162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44967:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e69fb5dd49f06ae0054ca1d4af84221644c5b45a9306505e04580a4156255c3", + "typeString": "literal_string \"log(bool,uint256,uint256,string)\"" + }, + "value": "log(bool,uint256,uint256,string)" + }, + { + "id": 22163, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22150, + "src": "45003:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22164, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22152, + "src": "45007:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22165, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22154, + "src": "45011:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22166, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22156, + "src": "45015:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e69fb5dd49f06ae0054ca1d4af84221644c5b45a9306505e04580a4156255c3", + "typeString": "literal_string \"log(bool,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44943:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "44947:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44943:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44943:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22159, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "44927:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "44927:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22169, + "nodeType": "ExpressionStatement", + "src": "44927:92:73" + } + ] + }, + "id": 22171, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44848:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22150, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44857:2:73", + "nodeType": "VariableDeclaration", + "scope": 22171, + "src": "44852:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22149, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44852:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22152, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44869:2:73", + "nodeType": "VariableDeclaration", + "scope": 22171, + "src": "44861:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22151, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44861:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22154, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44881:2:73", + "nodeType": "VariableDeclaration", + "scope": 22171, + "src": "44873:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22153, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44873:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22156, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44899:2:73", + "nodeType": "VariableDeclaration", + "scope": 22171, + "src": "44885:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22155, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44885:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "44851:51:73" + }, + "returnParameters": { + "id": 22158, + "nodeType": "ParameterList", + "parameters": [], + "src": "44917:0:73" + }, + "scope": 25070, + "src": "44839:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22193, + "nodeType": "Block", + "src": "45101:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c626f6f6c29", + "id": 22185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45151:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_be9843530e69b1feba88a3a9701a6984aaa8a57e749a7f9d10c857993e79900d", + "typeString": "literal_string \"log(bool,uint256,uint256,bool)\"" + }, + "value": "log(bool,uint256,uint256,bool)" + }, + { + "id": 22186, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22173, + "src": "45185:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22187, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22175, + "src": "45189:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22188, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22177, + "src": "45193:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22189, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22179, + "src": "45197:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_be9843530e69b1feba88a3a9701a6984aaa8a57e749a7f9d10c857993e79900d", + "typeString": "literal_string \"log(bool,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22183, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45127:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "45131:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45127:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45127:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22182, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "45111:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45111:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22192, + "nodeType": "ExpressionStatement", + "src": "45111:90:73" + } + ] + }, + "id": 22194, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45041:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22180, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22173, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45050:2:73", + "nodeType": "VariableDeclaration", + "scope": 22194, + "src": "45045:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22172, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45045:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22175, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45062:2:73", + "nodeType": "VariableDeclaration", + "scope": 22194, + "src": "45054:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22174, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45054:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22177, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45074:2:73", + "nodeType": "VariableDeclaration", + "scope": 22194, + "src": "45066:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22176, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45066:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22179, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45083:2:73", + "nodeType": "VariableDeclaration", + "scope": 22194, + "src": "45078:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22178, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45078:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "45044:42:73" + }, + "returnParameters": { + "id": 22181, + "nodeType": "ParameterList", + "parameters": [], + "src": "45101:0:73" + }, + "scope": 25070, + "src": "45032:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22216, + "nodeType": "Block", + "src": "45286:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c6164647265737329", + "id": 22208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45336:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00dd87b926eb0a94d5705f2c40026359b9577dfd5ddb2d0d51c86b3f4acb5010", + "typeString": "literal_string \"log(bool,uint256,uint256,address)\"" + }, + "value": "log(bool,uint256,uint256,address)" + }, + { + "id": 22209, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22196, + "src": "45373:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22210, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22198, + "src": "45377:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22211, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22200, + "src": "45381:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22212, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22202, + "src": "45385:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_00dd87b926eb0a94d5705f2c40026359b9577dfd5ddb2d0d51c86b3f4acb5010", + "typeString": "literal_string \"log(bool,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22206, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45312:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22207, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "45316:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45312:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45312:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22205, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "45296:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45296:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22215, + "nodeType": "ExpressionStatement", + "src": "45296:93:73" + } + ] + }, + "id": 22217, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45223:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22203, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22196, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45232:2:73", + "nodeType": "VariableDeclaration", + "scope": 22217, + "src": "45227:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22195, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45227:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22198, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45244:2:73", + "nodeType": "VariableDeclaration", + "scope": 22217, + "src": "45236:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22197, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45236:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22200, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45256:2:73", + "nodeType": "VariableDeclaration", + "scope": 22217, + "src": "45248:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22199, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45248:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22202, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45268:2:73", + "nodeType": "VariableDeclaration", + "scope": 22217, + "src": "45260:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22201, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45260:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "45226:45:73" + }, + "returnParameters": { + "id": 22204, + "nodeType": "ParameterList", + "parameters": [], + "src": "45286:0:73" + }, + "scope": 25070, + "src": "45214:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22239, + "nodeType": "Block", + "src": "45480:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c75696e7432353629", + "id": 22231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45530:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a1199e21848ce015eabd66ea7f6a3409c7fc6ef9bb322d84e4c06706c42747e", + "typeString": "literal_string \"log(bool,uint256,string,uint256)\"" + }, + "value": "log(bool,uint256,string,uint256)" + }, + { + "id": 22232, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22219, + "src": "45566:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22233, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22221, + "src": "45570:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22234, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22223, + "src": "45574:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22235, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22225, + "src": "45578:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6a1199e21848ce015eabd66ea7f6a3409c7fc6ef9bb322d84e4c06706c42747e", + "typeString": "literal_string \"log(bool,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22229, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45506:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "45510:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45506:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45506:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22228, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "45490:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45490:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22238, + "nodeType": "ExpressionStatement", + "src": "45490:92:73" + } + ] + }, + "id": 22240, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45411:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22219, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45420:2:73", + "nodeType": "VariableDeclaration", + "scope": 22240, + "src": "45415:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22218, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45415:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22221, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45432:2:73", + "nodeType": "VariableDeclaration", + "scope": 22240, + "src": "45424:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22220, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45424:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22223, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45450:2:73", + "nodeType": "VariableDeclaration", + "scope": 22240, + "src": "45436:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22222, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45436:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22225, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45462:2:73", + "nodeType": "VariableDeclaration", + "scope": 22240, + "src": "45454:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45454:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "45414:51:73" + }, + "returnParameters": { + "id": 22227, + "nodeType": "ParameterList", + "parameters": [], + "src": "45480:0:73" + }, + "scope": 25070, + "src": "45402:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22262, + "nodeType": "Block", + "src": "45679:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c737472696e6729", + "id": 22254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45729:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f5bc2249bce1f463dc4a6cae73d4e7be2aab36b6885cd1506575f16575a67f07", + "typeString": "literal_string \"log(bool,uint256,string,string)\"" + }, + "value": "log(bool,uint256,string,string)" + }, + { + "id": 22255, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22242, + "src": "45764:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22256, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22244, + "src": "45768:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22257, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22246, + "src": "45772:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22258, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22248, + "src": "45776:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f5bc2249bce1f463dc4a6cae73d4e7be2aab36b6885cd1506575f16575a67f07", + "typeString": "literal_string \"log(bool,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22252, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45705:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "45709:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45705:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45705:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22251, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "45689:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45689:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22261, + "nodeType": "ExpressionStatement", + "src": "45689:91:73" + } + ] + }, + "id": 22263, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45604:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22249, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22242, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45613:2:73", + "nodeType": "VariableDeclaration", + "scope": 22263, + "src": "45608:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22241, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45608:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22244, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45625:2:73", + "nodeType": "VariableDeclaration", + "scope": 22263, + "src": "45617:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22243, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45617:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22246, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45643:2:73", + "nodeType": "VariableDeclaration", + "scope": 22263, + "src": "45629:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22245, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45629:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22248, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45661:2:73", + "nodeType": "VariableDeclaration", + "scope": 22263, + "src": "45647:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22247, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45647:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "45607:57:73" + }, + "returnParameters": { + "id": 22250, + "nodeType": "ParameterList", + "parameters": [], + "src": "45679:0:73" + }, + "scope": 25070, + "src": "45595:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22285, + "nodeType": "Block", + "src": "45868:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c626f6f6c29", + "id": 22277, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45918:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e5e70b2b79ba63a1232a1075e7d527614bad7291574e41ebeb8ef428426395c2", + "typeString": "literal_string \"log(bool,uint256,string,bool)\"" + }, + "value": "log(bool,uint256,string,bool)" + }, + { + "id": 22278, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22265, + "src": "45951:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22279, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22267, + "src": "45955:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22280, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22269, + "src": "45959:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22281, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22271, + "src": "45963:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e5e70b2b79ba63a1232a1075e7d527614bad7291574e41ebeb8ef428426395c2", + "typeString": "literal_string \"log(bool,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22275, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45894:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "45898:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45894:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45894:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22274, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "45878:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "45878:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22284, + "nodeType": "ExpressionStatement", + "src": "45878:89:73" + } + ] + }, + "id": 22286, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45802:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22272, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22265, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45811:2:73", + "nodeType": "VariableDeclaration", + "scope": 22286, + "src": "45806:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22264, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45806:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22267, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45823:2:73", + "nodeType": "VariableDeclaration", + "scope": 22286, + "src": "45815:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22266, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45815:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22269, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45841:2:73", + "nodeType": "VariableDeclaration", + "scope": 22286, + "src": "45827:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22268, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45827:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22271, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45850:2:73", + "nodeType": "VariableDeclaration", + "scope": 22286, + "src": "45845:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22270, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45845:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "45805:48:73" + }, + "returnParameters": { + "id": 22273, + "nodeType": "ParameterList", + "parameters": [], + "src": "45868:0:73" + }, + "scope": 25070, + "src": "45793:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22308, + "nodeType": "Block", + "src": "46058:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c6164647265737329", + "id": 22300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46108:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fedd1fffaad08b0e5474b192f50d84da9ca48f54859d4d4f42d00bf3f4781fab", + "typeString": "literal_string \"log(bool,uint256,string,address)\"" + }, + "value": "log(bool,uint256,string,address)" + }, + { + "id": 22301, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22288, + "src": "46144:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22302, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22290, + "src": "46148:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22303, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22292, + "src": "46152:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22304, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22294, + "src": "46156:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fedd1fffaad08b0e5474b192f50d84da9ca48f54859d4d4f42d00bf3f4781fab", + "typeString": "literal_string \"log(bool,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22298, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46084:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "46088:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46084:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46084:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22297, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46068:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46068:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22307, + "nodeType": "ExpressionStatement", + "src": "46068:92:73" + } + ] + }, + "id": 22309, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45989:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22295, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22288, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45998:2:73", + "nodeType": "VariableDeclaration", + "scope": 22309, + "src": "45993:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22287, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45993:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22290, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46010:2:73", + "nodeType": "VariableDeclaration", + "scope": 22309, + "src": "46002:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22289, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46002:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22292, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46028:2:73", + "nodeType": "VariableDeclaration", + "scope": 22309, + "src": "46014:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22291, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46014:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22294, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46040:2:73", + "nodeType": "VariableDeclaration", + "scope": 22309, + "src": "46032:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22293, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46032:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "45992:51:73" + }, + "returnParameters": { + "id": 22296, + "nodeType": "ParameterList", + "parameters": [], + "src": "46058:0:73" + }, + "scope": 25070, + "src": "45980:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22331, + "nodeType": "Block", + "src": "46242:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c75696e7432353629", + "id": 22323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46292:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7f9bbca288abffbb423da5759392c2bb0e6c7c60dc55ee1c76da7b38adac1443", + "typeString": "literal_string \"log(bool,uint256,bool,uint256)\"" + }, + "value": "log(bool,uint256,bool,uint256)" + }, + { + "id": 22324, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22311, + "src": "46326:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22325, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22313, + "src": "46330:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22326, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22315, + "src": "46334:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22327, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22317, + "src": "46338:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7f9bbca288abffbb423da5759392c2bb0e6c7c60dc55ee1c76da7b38adac1443", + "typeString": "literal_string \"log(bool,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22321, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46268:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "46272:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46268:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46268:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22320, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46252:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46252:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22330, + "nodeType": "ExpressionStatement", + "src": "46252:90:73" + } + ] + }, + "id": 22332, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46182:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22318, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22311, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46191:2:73", + "nodeType": "VariableDeclaration", + "scope": 22332, + "src": "46186:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22310, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46186:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22313, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46203:2:73", + "nodeType": "VariableDeclaration", + "scope": 22332, + "src": "46195:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22312, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46195:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22315, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46212:2:73", + "nodeType": "VariableDeclaration", + "scope": 22332, + "src": "46207:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22314, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46207:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22317, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46224:2:73", + "nodeType": "VariableDeclaration", + "scope": 22332, + "src": "46216:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22316, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46216:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "46185:42:73" + }, + "returnParameters": { + "id": 22319, + "nodeType": "ParameterList", + "parameters": [], + "src": "46242:0:73" + }, + "scope": 25070, + "src": "46173:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22354, + "nodeType": "Block", + "src": "46430:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c737472696e6729", + "id": 22346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46480:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9143dbb14a0962a6e3d7ec52e236cb9bf165b86383a96499ea4cf52b827d7ce0", + "typeString": "literal_string \"log(bool,uint256,bool,string)\"" + }, + "value": "log(bool,uint256,bool,string)" + }, + { + "id": 22347, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22334, + "src": "46513:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22348, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22336, + "src": "46517:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22349, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22338, + "src": "46521:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22350, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22340, + "src": "46525:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9143dbb14a0962a6e3d7ec52e236cb9bf165b86383a96499ea4cf52b827d7ce0", + "typeString": "literal_string \"log(bool,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22344, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46456:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22345, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "46460:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46456:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46456:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22343, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46440:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46440:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22353, + "nodeType": "ExpressionStatement", + "src": "46440:89:73" + } + ] + }, + "id": 22355, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46364:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22341, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22334, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46373:2:73", + "nodeType": "VariableDeclaration", + "scope": 22355, + "src": "46368:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22333, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46368:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22336, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46385:2:73", + "nodeType": "VariableDeclaration", + "scope": 22355, + "src": "46377:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22335, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46377:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22338, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46394:2:73", + "nodeType": "VariableDeclaration", + "scope": 22355, + "src": "46389:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22337, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46389:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22340, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46412:2:73", + "nodeType": "VariableDeclaration", + "scope": 22355, + "src": "46398:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22339, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46398:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "46367:48:73" + }, + "returnParameters": { + "id": 22342, + "nodeType": "ParameterList", + "parameters": [], + "src": "46430:0:73" + }, + "scope": 25070, + "src": "46355:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22377, + "nodeType": "Block", + "src": "46608:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c626f6f6c29", + "id": 22369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46658:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ceb5f4d77121f3d3cfafeaa403e6fff70e4470d0bfb40c1d850f89e3d65029f2", + "typeString": "literal_string \"log(bool,uint256,bool,bool)\"" + }, + "value": "log(bool,uint256,bool,bool)" + }, + { + "id": 22370, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22357, + "src": "46689:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22371, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22359, + "src": "46693:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22372, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22361, + "src": "46697:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22373, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22363, + "src": "46701:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ceb5f4d77121f3d3cfafeaa403e6fff70e4470d0bfb40c1d850f89e3d65029f2", + "typeString": "literal_string \"log(bool,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22367, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46634:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "46638:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46634:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46634:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22366, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46618:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46618:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22376, + "nodeType": "ExpressionStatement", + "src": "46618:87:73" + } + ] + }, + "id": 22378, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46551:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22357, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46560:2:73", + "nodeType": "VariableDeclaration", + "scope": 22378, + "src": "46555:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22356, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46555:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22359, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46572:2:73", + "nodeType": "VariableDeclaration", + "scope": 22378, + "src": "46564:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46564:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22361, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46581:2:73", + "nodeType": "VariableDeclaration", + "scope": 22378, + "src": "46576:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22360, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46576:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22363, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46590:2:73", + "nodeType": "VariableDeclaration", + "scope": 22378, + "src": "46585:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22362, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46585:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "46554:39:73" + }, + "returnParameters": { + "id": 22365, + "nodeType": "ParameterList", + "parameters": [], + "src": "46608:0:73" + }, + "scope": 25070, + "src": "46542:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22400, + "nodeType": "Block", + "src": "46787:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c6164647265737329", + "id": 22392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46837:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9acd3616ce3d15d7b870c591206f600266707f40592e6070353f762f54c75a2e", + "typeString": "literal_string \"log(bool,uint256,bool,address)\"" + }, + "value": "log(bool,uint256,bool,address)" + }, + { + "id": 22393, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22380, + "src": "46871:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22394, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22382, + "src": "46875:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22395, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22384, + "src": "46879:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22396, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22386, + "src": "46883:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9acd3616ce3d15d7b870c591206f600266707f40592e6070353f762f54c75a2e", + "typeString": "literal_string \"log(bool,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22390, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46813:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "46817:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46813:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46813:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22389, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46797:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46797:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22399, + "nodeType": "ExpressionStatement", + "src": "46797:90:73" + } + ] + }, + "id": 22401, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46727:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22387, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22380, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46736:2:73", + "nodeType": "VariableDeclaration", + "scope": 22401, + "src": "46731:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22379, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46731:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22382, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46748:2:73", + "nodeType": "VariableDeclaration", + "scope": 22401, + "src": "46740:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22381, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46740:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22384, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46757:2:73", + "nodeType": "VariableDeclaration", + "scope": 22401, + "src": "46752:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22383, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46752:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22386, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46769:2:73", + "nodeType": "VariableDeclaration", + "scope": 22401, + "src": "46761:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22385, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46761:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "46730:42:73" + }, + "returnParameters": { + "id": 22388, + "nodeType": "ParameterList", + "parameters": [], + "src": "46787:0:73" + }, + "scope": 25070, + "src": "46718:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22423, + "nodeType": "Block", + "src": "46972:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c75696e7432353629", + "id": 22415, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47022:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1537dc87a2086882c18d77c4157142ca3b6771cb00e940824367191cd9b5e560", + "typeString": "literal_string \"log(bool,uint256,address,uint256)\"" + }, + "value": "log(bool,uint256,address,uint256)" + }, + { + "id": 22416, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22403, + "src": "47059:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22417, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22405, + "src": "47063:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22418, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22407, + "src": "47067:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22419, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22409, + "src": "47071:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1537dc87a2086882c18d77c4157142ca3b6771cb00e940824367191cd9b5e560", + "typeString": "literal_string \"log(bool,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22413, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46998:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47002:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46998:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46998:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22412, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "46982:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "46982:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22422, + "nodeType": "ExpressionStatement", + "src": "46982:93:73" + } + ] + }, + "id": 22424, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46909:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22410, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22403, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46918:2:73", + "nodeType": "VariableDeclaration", + "scope": 22424, + "src": "46913:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22402, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46913:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22405, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46930:2:73", + "nodeType": "VariableDeclaration", + "scope": 22424, + "src": "46922:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22404, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46922:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22407, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46942:2:73", + "nodeType": "VariableDeclaration", + "scope": 22424, + "src": "46934:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22406, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46934:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22409, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46954:2:73", + "nodeType": "VariableDeclaration", + "scope": 22424, + "src": "46946:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22408, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46946:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "46912:45:73" + }, + "returnParameters": { + "id": 22411, + "nodeType": "ParameterList", + "parameters": [], + "src": "46972:0:73" + }, + "scope": 25070, + "src": "46900:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22446, + "nodeType": "Block", + "src": "47166:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c737472696e6729", + "id": 22438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47216:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1bb3b09a4221f0a7df6a4e6e8ee3a14c54c5ebf8032d4ada871c774122536c94", + "typeString": "literal_string \"log(bool,uint256,address,string)\"" + }, + "value": "log(bool,uint256,address,string)" + }, + { + "id": 22439, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22426, + "src": "47252:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22440, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22428, + "src": "47256:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22441, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22430, + "src": "47260:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22442, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22432, + "src": "47264:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1bb3b09a4221f0a7df6a4e6e8ee3a14c54c5ebf8032d4ada871c774122536c94", + "typeString": "literal_string \"log(bool,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22436, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47192:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47196:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47192:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47192:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22435, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "47176:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47176:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22445, + "nodeType": "ExpressionStatement", + "src": "47176:92:73" + } + ] + }, + "id": 22447, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47097:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22433, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22426, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47106:2:73", + "nodeType": "VariableDeclaration", + "scope": 22447, + "src": "47101:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22425, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47101:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22428, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47118:2:73", + "nodeType": "VariableDeclaration", + "scope": 22447, + "src": "47110:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22427, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47110:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22430, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47130:2:73", + "nodeType": "VariableDeclaration", + "scope": 22447, + "src": "47122:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22429, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47122:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22432, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47148:2:73", + "nodeType": "VariableDeclaration", + "scope": 22447, + "src": "47134:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22431, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47134:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "47100:51:73" + }, + "returnParameters": { + "id": 22434, + "nodeType": "ParameterList", + "parameters": [], + "src": "47166:0:73" + }, + "scope": 25070, + "src": "47088:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22469, + "nodeType": "Block", + "src": "47350:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c626f6f6c29", + "id": 22461, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47400:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b4c314ff4d8914c4657179922b73426f4bcee4ae499bd03b5b3cf557ef247ea8", + "typeString": "literal_string \"log(bool,uint256,address,bool)\"" + }, + "value": "log(bool,uint256,address,bool)" + }, + { + "id": 22462, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22449, + "src": "47434:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22463, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22451, + "src": "47438:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22464, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22453, + "src": "47442:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22465, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22455, + "src": "47446:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b4c314ff4d8914c4657179922b73426f4bcee4ae499bd03b5b3cf557ef247ea8", + "typeString": "literal_string \"log(bool,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22459, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47376:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47380:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47376:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47376:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22458, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "47360:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47360:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22468, + "nodeType": "ExpressionStatement", + "src": "47360:90:73" + } + ] + }, + "id": 22470, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47290:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22456, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22449, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47299:2:73", + "nodeType": "VariableDeclaration", + "scope": 22470, + "src": "47294:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22448, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47294:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22451, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47311:2:73", + "nodeType": "VariableDeclaration", + "scope": 22470, + "src": "47303:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22450, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47303:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22453, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47323:2:73", + "nodeType": "VariableDeclaration", + "scope": 22470, + "src": "47315:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22452, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47315:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22455, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47332:2:73", + "nodeType": "VariableDeclaration", + "scope": 22470, + "src": "47327:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22454, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47327:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "47293:42:73" + }, + "returnParameters": { + "id": 22457, + "nodeType": "ParameterList", + "parameters": [], + "src": "47350:0:73" + }, + "scope": 25070, + "src": "47281:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22492, + "nodeType": "Block", + "src": "47535:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c6164647265737329", + "id": 22484, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47585:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_26f560a852938fadf6addef4dd03c86f93715a295417544d6a793cb20f13b8dd", + "typeString": "literal_string \"log(bool,uint256,address,address)\"" + }, + "value": "log(bool,uint256,address,address)" + }, + { + "id": 22485, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22472, + "src": "47622:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22486, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22474, + "src": "47626:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22487, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22476, + "src": "47630:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22488, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22478, + "src": "47634:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_26f560a852938fadf6addef4dd03c86f93715a295417544d6a793cb20f13b8dd", + "typeString": "literal_string \"log(bool,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22482, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47561:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47565:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47561:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47561:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22481, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "47545:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47545:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22491, + "nodeType": "ExpressionStatement", + "src": "47545:93:73" + } + ] + }, + "id": 22493, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47472:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22479, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22472, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47481:2:73", + "nodeType": "VariableDeclaration", + "scope": 22493, + "src": "47476:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22471, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47476:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22474, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47493:2:73", + "nodeType": "VariableDeclaration", + "scope": 22493, + "src": "47485:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22473, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47485:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22476, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47505:2:73", + "nodeType": "VariableDeclaration", + "scope": 22493, + "src": "47497:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22475, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47497:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22478, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47517:2:73", + "nodeType": "VariableDeclaration", + "scope": 22493, + "src": "47509:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22477, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47509:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "47475:45:73" + }, + "returnParameters": { + "id": 22480, + "nodeType": "ParameterList", + "parameters": [], + "src": "47535:0:73" + }, + "scope": 25070, + "src": "47463:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22515, + "nodeType": "Block", + "src": "47729:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c75696e7432353629", + "id": 22507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47779:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_28863fcbec29a80af15c2b8595f162a2324efa0e9f70b928971349e597c15cb0", + "typeString": "literal_string \"log(bool,string,uint256,uint256)\"" + }, + "value": "log(bool,string,uint256,uint256)" + }, + { + "id": 22508, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22495, + "src": "47815:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22509, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22497, + "src": "47819:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22510, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22499, + "src": "47823:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22511, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22501, + "src": "47827:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_28863fcbec29a80af15c2b8595f162a2324efa0e9f70b928971349e597c15cb0", + "typeString": "literal_string \"log(bool,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22505, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47755:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47759:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47755:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47755:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22504, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "47739:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47739:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22514, + "nodeType": "ExpressionStatement", + "src": "47739:92:73" + } + ] + }, + "id": 22516, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47660:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22502, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22495, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47669:2:73", + "nodeType": "VariableDeclaration", + "scope": 22516, + "src": "47664:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22494, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47664:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22497, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47687:2:73", + "nodeType": "VariableDeclaration", + "scope": 22516, + "src": "47673:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22496, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47673:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22499, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47699:2:73", + "nodeType": "VariableDeclaration", + "scope": 22516, + "src": "47691:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22498, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47691:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22501, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47711:2:73", + "nodeType": "VariableDeclaration", + "scope": 22516, + "src": "47703:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22500, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47703:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "47663:51:73" + }, + "returnParameters": { + "id": 22503, + "nodeType": "ParameterList", + "parameters": [], + "src": "47729:0:73" + }, + "scope": 25070, + "src": "47651:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22538, + "nodeType": "Block", + "src": "47928:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c737472696e6729", + "id": 22530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47978:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1ad96de6602c0b08f6631d6647303bccf3e586fcfa2c15fa04c5d6cbf0ffc70d", + "typeString": "literal_string \"log(bool,string,uint256,string)\"" + }, + "value": "log(bool,string,uint256,string)" + }, + { + "id": 22531, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22518, + "src": "48013:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22532, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22520, + "src": "48017:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22533, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22522, + "src": "48021:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22534, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22524, + "src": "48025:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1ad96de6602c0b08f6631d6647303bccf3e586fcfa2c15fa04c5d6cbf0ffc70d", + "typeString": "literal_string \"log(bool,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22528, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47954:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "47958:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47954:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47954:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22527, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "47938:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "47938:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22537, + "nodeType": "ExpressionStatement", + "src": "47938:91:73" + } + ] + }, + "id": 22539, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47853:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22518, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47862:2:73", + "nodeType": "VariableDeclaration", + "scope": 22539, + "src": "47857:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22517, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47857:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22520, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47880:2:73", + "nodeType": "VariableDeclaration", + "scope": 22539, + "src": "47866:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22519, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47866:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22522, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47892:2:73", + "nodeType": "VariableDeclaration", + "scope": 22539, + "src": "47884:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47884:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22524, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47910:2:73", + "nodeType": "VariableDeclaration", + "scope": 22539, + "src": "47896:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22523, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47896:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "47856:57:73" + }, + "returnParameters": { + "id": 22526, + "nodeType": "ParameterList", + "parameters": [], + "src": "47928:0:73" + }, + "scope": 25070, + "src": "47844:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22561, + "nodeType": "Block", + "src": "48117:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c626f6f6c29", + "id": 22553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48167:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6b0e5d538cb3332d8fd45a0c2680232536414e292adbc2f70059f1d665e25411", + "typeString": "literal_string \"log(bool,string,uint256,bool)\"" + }, + "value": "log(bool,string,uint256,bool)" + }, + { + "id": 22554, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22541, + "src": "48200:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22555, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22543, + "src": "48204:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22556, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22545, + "src": "48208:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22557, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22547, + "src": "48212:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6b0e5d538cb3332d8fd45a0c2680232536414e292adbc2f70059f1d665e25411", + "typeString": "literal_string \"log(bool,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22551, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48143:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "48147:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48143:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48143:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22550, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "48127:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48127:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22560, + "nodeType": "ExpressionStatement", + "src": "48127:89:73" + } + ] + }, + "id": 22562, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48051:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22541, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48060:2:73", + "nodeType": "VariableDeclaration", + "scope": 22562, + "src": "48055:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22540, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48055:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22543, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48078:2:73", + "nodeType": "VariableDeclaration", + "scope": 22562, + "src": "48064:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22542, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48064:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22545, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48090:2:73", + "nodeType": "VariableDeclaration", + "scope": 22562, + "src": "48082:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22544, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48082:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22547, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48099:2:73", + "nodeType": "VariableDeclaration", + "scope": 22562, + "src": "48094:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22546, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48094:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "48054:48:73" + }, + "returnParameters": { + "id": 22549, + "nodeType": "ParameterList", + "parameters": [], + "src": "48117:0:73" + }, + "scope": 25070, + "src": "48042:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22584, + "nodeType": "Block", + "src": "48307:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c6164647265737329", + "id": 22576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48357:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1596a1ceb88c7fe162cbcf294bbc564db1eb943f277b50b442bf55dba1134056", + "typeString": "literal_string \"log(bool,string,uint256,address)\"" + }, + "value": "log(bool,string,uint256,address)" + }, + { + "id": 22577, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22564, + "src": "48393:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22578, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22566, + "src": "48397:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22579, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22568, + "src": "48401:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22580, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22570, + "src": "48405:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1596a1ceb88c7fe162cbcf294bbc564db1eb943f277b50b442bf55dba1134056", + "typeString": "literal_string \"log(bool,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22574, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48333:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "48337:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48333:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48333:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22573, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "48317:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48317:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22583, + "nodeType": "ExpressionStatement", + "src": "48317:92:73" + } + ] + }, + "id": 22585, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48238:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22571, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22564, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48247:2:73", + "nodeType": "VariableDeclaration", + "scope": 22585, + "src": "48242:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22563, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48242:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22566, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48265:2:73", + "nodeType": "VariableDeclaration", + "scope": 22585, + "src": "48251:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22565, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48251:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22568, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48277:2:73", + "nodeType": "VariableDeclaration", + "scope": 22585, + "src": "48269:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22567, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48269:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22570, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48289:2:73", + "nodeType": "VariableDeclaration", + "scope": 22585, + "src": "48281:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22569, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48281:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "48241:51:73" + }, + "returnParameters": { + "id": 22572, + "nodeType": "ParameterList", + "parameters": [], + "src": "48307:0:73" + }, + "scope": 25070, + "src": "48229:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22607, + "nodeType": "Block", + "src": "48506:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c75696e7432353629", + "id": 22599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48556:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7be0c3eb1e87c47c60c12330b930fb496493960f97b03f8342bbe08fec9d20a2", + "typeString": "literal_string \"log(bool,string,string,uint256)\"" + }, + "value": "log(bool,string,string,uint256)" + }, + { + "id": 22600, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22587, + "src": "48591:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22601, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22589, + "src": "48595:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22602, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22591, + "src": "48599:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22603, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22593, + "src": "48603:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7be0c3eb1e87c47c60c12330b930fb496493960f97b03f8342bbe08fec9d20a2", + "typeString": "literal_string \"log(bool,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22597, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48532:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22598, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "48536:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48532:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48532:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22596, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "48516:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48516:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22606, + "nodeType": "ExpressionStatement", + "src": "48516:91:73" + } + ] + }, + "id": 22608, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48431:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22587, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48440:2:73", + "nodeType": "VariableDeclaration", + "scope": 22608, + "src": "48435:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22586, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48435:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22589, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48458:2:73", + "nodeType": "VariableDeclaration", + "scope": 22608, + "src": "48444:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22588, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48444:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22591, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48476:2:73", + "nodeType": "VariableDeclaration", + "scope": 22608, + "src": "48462:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22590, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48462:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22593, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48488:2:73", + "nodeType": "VariableDeclaration", + "scope": 22608, + "src": "48480:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22592, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48480:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "48434:57:73" + }, + "returnParameters": { + "id": 22595, + "nodeType": "ParameterList", + "parameters": [], + "src": "48506:0:73" + }, + "scope": 25070, + "src": "48422:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22630, + "nodeType": "Block", + "src": "48710:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c737472696e6729", + "id": 22622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48760:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + "value": "log(bool,string,string,string)" + }, + { + "id": 22623, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22610, + "src": "48794:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22624, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22612, + "src": "48798:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22625, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22614, + "src": "48802:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22626, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22616, + "src": "48806:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22620, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48736:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22621, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "48740:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48736:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48736:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22619, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "48720:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48720:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22629, + "nodeType": "ExpressionStatement", + "src": "48720:90:73" + } + ] + }, + "id": 22631, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48629:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22617, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22610, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48638:2:73", + "nodeType": "VariableDeclaration", + "scope": 22631, + "src": "48633:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22609, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48633:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22612, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48656:2:73", + "nodeType": "VariableDeclaration", + "scope": 22631, + "src": "48642:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22611, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48642:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22614, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48674:2:73", + "nodeType": "VariableDeclaration", + "scope": 22631, + "src": "48660:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22613, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48660:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22616, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48692:2:73", + "nodeType": "VariableDeclaration", + "scope": 22631, + "src": "48678:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22615, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48678:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "48632:63:73" + }, + "returnParameters": { + "id": 22618, + "nodeType": "ParameterList", + "parameters": [], + "src": "48710:0:73" + }, + "scope": 25070, + "src": "48620:197:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22653, + "nodeType": "Block", + "src": "48904:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c626f6f6c29", + "id": 22645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48954:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + "value": "log(bool,string,string,bool)" + }, + { + "id": 22646, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22633, + "src": "48986:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22647, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22635, + "src": "48990:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22648, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22637, + "src": "48994:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22649, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22639, + "src": "48998:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22643, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48930:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "48934:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48930:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48930:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22642, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "48914:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "48914:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22652, + "nodeType": "ExpressionStatement", + "src": "48914:88:73" + } + ] + }, + "id": 22654, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48832:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22633, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48841:2:73", + "nodeType": "VariableDeclaration", + "scope": 22654, + "src": "48836:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22632, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48836:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22635, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48859:2:73", + "nodeType": "VariableDeclaration", + "scope": 22654, + "src": "48845:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22634, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48845:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22637, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48877:2:73", + "nodeType": "VariableDeclaration", + "scope": 22654, + "src": "48863:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22636, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48863:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22639, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48886:2:73", + "nodeType": "VariableDeclaration", + "scope": 22654, + "src": "48881:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22638, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48881:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "48835:54:73" + }, + "returnParameters": { + "id": 22641, + "nodeType": "ParameterList", + "parameters": [], + "src": "48904:0:73" + }, + "scope": 25070, + "src": "48823:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22676, + "nodeType": "Block", + "src": "49099:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c6164647265737329", + "id": 22668, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49149:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + "value": "log(bool,string,string,address)" + }, + { + "id": 22669, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22656, + "src": "49184:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22670, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22658, + "src": "49188:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22671, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22660, + "src": "49192:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22672, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22662, + "src": "49196:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22666, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49125:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "49129:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49125:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49125:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22665, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "49109:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49109:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22675, + "nodeType": "ExpressionStatement", + "src": "49109:91:73" + } + ] + }, + "id": 22677, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49024:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22663, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22656, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49033:2:73", + "nodeType": "VariableDeclaration", + "scope": 22677, + "src": "49028:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22655, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49028:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22658, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49051:2:73", + "nodeType": "VariableDeclaration", + "scope": 22677, + "src": "49037:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22657, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49037:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22660, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49069:2:73", + "nodeType": "VariableDeclaration", + "scope": 22677, + "src": "49055:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22659, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49055:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22662, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49081:2:73", + "nodeType": "VariableDeclaration", + "scope": 22677, + "src": "49073:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22661, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49073:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "49027:57:73" + }, + "returnParameters": { + "id": 22664, + "nodeType": "ParameterList", + "parameters": [], + "src": "49099:0:73" + }, + "scope": 25070, + "src": "49015:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22699, + "nodeType": "Block", + "src": "49288:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c75696e7432353629", + "id": 22691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49338:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1606a393d6d8ee0e5b372b3b4baba691a3700cb155888ecb60500deb6038e937", + "typeString": "literal_string \"log(bool,string,bool,uint256)\"" + }, + "value": "log(bool,string,bool,uint256)" + }, + { + "id": 22692, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22679, + "src": "49371:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22693, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22681, + "src": "49375:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22694, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22683, + "src": "49379:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22695, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22685, + "src": "49383:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1606a393d6d8ee0e5b372b3b4baba691a3700cb155888ecb60500deb6038e937", + "typeString": "literal_string \"log(bool,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22689, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49314:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "49318:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49314:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49314:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22688, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "49298:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49298:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22698, + "nodeType": "ExpressionStatement", + "src": "49298:89:73" + } + ] + }, + "id": 22700, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49222:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22686, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22679, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49231:2:73", + "nodeType": "VariableDeclaration", + "scope": 22700, + "src": "49226:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22678, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49226:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22681, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49249:2:73", + "nodeType": "VariableDeclaration", + "scope": 22700, + "src": "49235:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22680, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49235:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22683, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49258:2:73", + "nodeType": "VariableDeclaration", + "scope": 22700, + "src": "49253:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22682, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49253:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22685, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49270:2:73", + "nodeType": "VariableDeclaration", + "scope": 22700, + "src": "49262:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22684, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "49262:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "49225:48:73" + }, + "returnParameters": { + "id": 22687, + "nodeType": "ParameterList", + "parameters": [], + "src": "49288:0:73" + }, + "scope": 25070, + "src": "49213:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22722, + "nodeType": "Block", + "src": "49481:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c737472696e6729", + "id": 22714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49531:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + "value": "log(bool,string,bool,string)" + }, + { + "id": 22715, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22702, + "src": "49563:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22716, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22704, + "src": "49567:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22717, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22706, + "src": "49571:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22718, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22708, + "src": "49575:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22712, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49507:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "49511:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49507:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49507:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22711, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "49491:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49491:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22721, + "nodeType": "ExpressionStatement", + "src": "49491:88:73" + } + ] + }, + "id": 22723, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49409:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22709, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22702, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49418:2:73", + "nodeType": "VariableDeclaration", + "scope": 22723, + "src": "49413:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22701, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49413:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22704, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49436:2:73", + "nodeType": "VariableDeclaration", + "scope": 22723, + "src": "49422:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22703, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49422:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22706, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49445:2:73", + "nodeType": "VariableDeclaration", + "scope": 22723, + "src": "49440:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22705, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49440:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22708, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49463:2:73", + "nodeType": "VariableDeclaration", + "scope": 22723, + "src": "49449:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22707, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49449:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "49412:54:73" + }, + "returnParameters": { + "id": 22710, + "nodeType": "ParameterList", + "parameters": [], + "src": "49481:0:73" + }, + "scope": 25070, + "src": "49400:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22745, + "nodeType": "Block", + "src": "49664:103:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c626f6f6c29", + "id": 22737, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49714:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + "value": "log(bool,string,bool,bool)" + }, + { + "id": 22738, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22725, + "src": "49744:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22739, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22727, + "src": "49748:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22740, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22729, + "src": "49752:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22741, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22731, + "src": "49756:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22735, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49690:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "49694:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49690:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49690:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22734, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "49674:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49674:86:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22744, + "nodeType": "ExpressionStatement", + "src": "49674:86:73" + } + ] + }, + "id": 22746, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49601:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22725, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49610:2:73", + "nodeType": "VariableDeclaration", + "scope": 22746, + "src": "49605:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22724, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49605:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22727, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49628:2:73", + "nodeType": "VariableDeclaration", + "scope": 22746, + "src": "49614:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22726, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49614:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22729, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49637:2:73", + "nodeType": "VariableDeclaration", + "scope": 22746, + "src": "49632:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22728, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49632:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22731, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49646:2:73", + "nodeType": "VariableDeclaration", + "scope": 22746, + "src": "49641:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22730, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49641:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "49604:45:73" + }, + "returnParameters": { + "id": 22733, + "nodeType": "ParameterList", + "parameters": [], + "src": "49664:0:73" + }, + "scope": 25070, + "src": "49592:175:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22768, + "nodeType": "Block", + "src": "49848:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c6164647265737329", + "id": 22760, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49898:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + "value": "log(bool,string,bool,address)" + }, + { + "id": 22761, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22748, + "src": "49931:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22762, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22750, + "src": "49935:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22763, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22752, + "src": "49939:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22764, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22754, + "src": "49943:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22758, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49874:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "49878:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49874:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49874:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22757, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "49858:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "49858:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22767, + "nodeType": "ExpressionStatement", + "src": "49858:89:73" + } + ] + }, + "id": 22769, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49782:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22748, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49791:2:73", + "nodeType": "VariableDeclaration", + "scope": 22769, + "src": "49786:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22747, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49786:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22750, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49809:2:73", + "nodeType": "VariableDeclaration", + "scope": 22769, + "src": "49795:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22749, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49795:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22752, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49818:2:73", + "nodeType": "VariableDeclaration", + "scope": 22769, + "src": "49813:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22751, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49813:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22754, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49830:2:73", + "nodeType": "VariableDeclaration", + "scope": 22769, + "src": "49822:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22753, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49822:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "49785:48:73" + }, + "returnParameters": { + "id": 22756, + "nodeType": "ParameterList", + "parameters": [], + "src": "49848:0:73" + }, + "scope": 25070, + "src": "49773:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22791, + "nodeType": "Block", + "src": "50038:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c75696e7432353629", + "id": 22783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50088:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5cada94c7dfdda57d4cfcf14da44c63431bfd533756a6e0d0d0a684af164218", + "typeString": "literal_string \"log(bool,string,address,uint256)\"" + }, + "value": "log(bool,string,address,uint256)" + }, + { + "id": 22784, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22771, + "src": "50124:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22785, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22773, + "src": "50128:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22786, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22775, + "src": "50132:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22787, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22777, + "src": "50136:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5cada94c7dfdda57d4cfcf14da44c63431bfd533756a6e0d0d0a684af164218", + "typeString": "literal_string \"log(bool,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22781, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50064:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "50068:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50064:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50064:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22780, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50048:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50048:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22790, + "nodeType": "ExpressionStatement", + "src": "50048:92:73" + } + ] + }, + "id": 22792, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49969:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22778, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22771, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49978:2:73", + "nodeType": "VariableDeclaration", + "scope": 22792, + "src": "49973:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22770, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49973:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22773, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49996:2:73", + "nodeType": "VariableDeclaration", + "scope": 22792, + "src": "49982:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22772, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49982:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22775, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50008:2:73", + "nodeType": "VariableDeclaration", + "scope": 22792, + "src": "50000:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22774, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50000:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22777, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50020:2:73", + "nodeType": "VariableDeclaration", + "scope": 22792, + "src": "50012:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22776, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50012:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "49972:51:73" + }, + "returnParameters": { + "id": 22779, + "nodeType": "ParameterList", + "parameters": [], + "src": "50038:0:73" + }, + "scope": 25070, + "src": "49960:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22814, + "nodeType": "Block", + "src": "50237:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c737472696e6729", + "id": 22806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50287:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + "value": "log(bool,string,address,string)" + }, + { + "id": 22807, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22794, + "src": "50322:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22808, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22796, + "src": "50326:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22809, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22798, + "src": "50330:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22810, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22800, + "src": "50334:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22804, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50263:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "50267:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50263:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50263:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22803, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50247:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50247:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22813, + "nodeType": "ExpressionStatement", + "src": "50247:91:73" + } + ] + }, + "id": 22815, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50162:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22801, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22794, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50171:2:73", + "nodeType": "VariableDeclaration", + "scope": 22815, + "src": "50166:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22793, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50166:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22796, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50189:2:73", + "nodeType": "VariableDeclaration", + "scope": 22815, + "src": "50175:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22795, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50175:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22798, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50201:2:73", + "nodeType": "VariableDeclaration", + "scope": 22815, + "src": "50193:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22797, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50193:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22800, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50219:2:73", + "nodeType": "VariableDeclaration", + "scope": 22815, + "src": "50205:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22799, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50205:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "50165:57:73" + }, + "returnParameters": { + "id": 22802, + "nodeType": "ParameterList", + "parameters": [], + "src": "50237:0:73" + }, + "scope": 25070, + "src": "50153:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22837, + "nodeType": "Block", + "src": "50426:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c626f6f6c29", + "id": 22829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50476:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + "value": "log(bool,string,address,bool)" + }, + { + "id": 22830, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22817, + "src": "50509:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22831, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22819, + "src": "50513:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22832, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22821, + "src": "50517:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22833, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22823, + "src": "50521:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22827, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50452:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22828, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "50456:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50452:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50452:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22826, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50436:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50436:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22836, + "nodeType": "ExpressionStatement", + "src": "50436:89:73" + } + ] + }, + "id": 22838, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50360:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22824, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22817, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50369:2:73", + "nodeType": "VariableDeclaration", + "scope": 22838, + "src": "50364:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22816, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50364:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22819, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50387:2:73", + "nodeType": "VariableDeclaration", + "scope": 22838, + "src": "50373:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22818, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50373:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22821, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50399:2:73", + "nodeType": "VariableDeclaration", + "scope": 22838, + "src": "50391:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22820, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50391:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22823, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50408:2:73", + "nodeType": "VariableDeclaration", + "scope": 22838, + "src": "50403:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22822, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50403:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "50363:48:73" + }, + "returnParameters": { + "id": 22825, + "nodeType": "ParameterList", + "parameters": [], + "src": "50426:0:73" + }, + "scope": 25070, + "src": "50351:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22860, + "nodeType": "Block", + "src": "50616:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c6164647265737329", + "id": 22852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50666:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + "value": "log(bool,string,address,address)" + }, + { + "id": 22853, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22840, + "src": "50702:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22854, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22842, + "src": "50706:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22855, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22844, + "src": "50710:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 22856, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22846, + "src": "50714:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22850, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50642:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "50646:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50642:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50642:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22849, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50626:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50626:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22859, + "nodeType": "ExpressionStatement", + "src": "50626:92:73" + } + ] + }, + "id": 22861, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50547:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22847, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22840, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50556:2:73", + "nodeType": "VariableDeclaration", + "scope": 22861, + "src": "50551:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22839, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50551:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22842, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50574:2:73", + "nodeType": "VariableDeclaration", + "scope": 22861, + "src": "50560:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22841, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50560:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22844, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50586:2:73", + "nodeType": "VariableDeclaration", + "scope": 22861, + "src": "50578:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50578:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22846, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50598:2:73", + "nodeType": "VariableDeclaration", + "scope": 22861, + "src": "50590:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22845, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50590:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "50550:51:73" + }, + "returnParameters": { + "id": 22848, + "nodeType": "ParameterList", + "parameters": [], + "src": "50616:0:73" + }, + "scope": 25070, + "src": "50538:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22883, + "nodeType": "Block", + "src": "50800:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c75696e7432353629", + "id": 22875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50850:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0bb00eab8772a517edb34ef48e9be8dbee2f7b7490bba02909d18953766a9d34", + "typeString": "literal_string \"log(bool,bool,uint256,uint256)\"" + }, + "value": "log(bool,bool,uint256,uint256)" + }, + { + "id": 22876, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22863, + "src": "50884:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22877, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22865, + "src": "50888:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22878, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22867, + "src": "50892:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22879, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22869, + "src": "50896:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0bb00eab8772a517edb34ef48e9be8dbee2f7b7490bba02909d18953766a9d34", + "typeString": "literal_string \"log(bool,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22873, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50826:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "50830:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50826:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50826:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22872, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50810:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50810:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22882, + "nodeType": "ExpressionStatement", + "src": "50810:90:73" + } + ] + }, + "id": 22884, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50740:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22870, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22863, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50749:2:73", + "nodeType": "VariableDeclaration", + "scope": 22884, + "src": "50744:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22862, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50744:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22865, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50758:2:73", + "nodeType": "VariableDeclaration", + "scope": 22884, + "src": "50753:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22864, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50753:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22867, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50770:2:73", + "nodeType": "VariableDeclaration", + "scope": 22884, + "src": "50762:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22866, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50762:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22869, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50782:2:73", + "nodeType": "VariableDeclaration", + "scope": 22884, + "src": "50774:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22868, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50774:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "50743:42:73" + }, + "returnParameters": { + "id": 22871, + "nodeType": "ParameterList", + "parameters": [], + "src": "50800:0:73" + }, + "scope": 25070, + "src": "50731:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22906, + "nodeType": "Block", + "src": "50988:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c737472696e6729", + "id": 22898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51038:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7dd4d0e0c518f4b352fd13daccf87a5d9bed9e01e109d2cd329f8180d1bf37cf", + "typeString": "literal_string \"log(bool,bool,uint256,string)\"" + }, + "value": "log(bool,bool,uint256,string)" + }, + { + "id": 22899, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22886, + "src": "51071:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22900, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22888, + "src": "51075:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22901, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22890, + "src": "51079:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22902, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22892, + "src": "51083:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7dd4d0e0c518f4b352fd13daccf87a5d9bed9e01e109d2cd329f8180d1bf37cf", + "typeString": "literal_string \"log(bool,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22896, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51014:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51018:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51014:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51014:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22895, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "50998:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "50998:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22905, + "nodeType": "ExpressionStatement", + "src": "50998:89:73" + } + ] + }, + "id": 22907, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50922:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22886, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50931:2:73", + "nodeType": "VariableDeclaration", + "scope": 22907, + "src": "50926:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22885, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50926:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22888, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50940:2:73", + "nodeType": "VariableDeclaration", + "scope": 22907, + "src": "50935:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22887, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50935:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22890, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50952:2:73", + "nodeType": "VariableDeclaration", + "scope": 22907, + "src": "50944:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22889, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50944:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22892, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50970:2:73", + "nodeType": "VariableDeclaration", + "scope": 22907, + "src": "50956:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22891, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50956:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "50925:48:73" + }, + "returnParameters": { + "id": 22894, + "nodeType": "ParameterList", + "parameters": [], + "src": "50988:0:73" + }, + "scope": 25070, + "src": "50913:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22929, + "nodeType": "Block", + "src": "51166:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c626f6f6c29", + "id": 22921, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51216:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_619e4d0eef4ca09035d413eaba6f544cfd6dc9e01c2aeecde070c53237f5a842", + "typeString": "literal_string \"log(bool,bool,uint256,bool)\"" + }, + "value": "log(bool,bool,uint256,bool)" + }, + { + "id": 22922, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22909, + "src": "51247:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22923, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22911, + "src": "51251:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22924, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22913, + "src": "51255:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22925, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22915, + "src": "51259:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_619e4d0eef4ca09035d413eaba6f544cfd6dc9e01c2aeecde070c53237f5a842", + "typeString": "literal_string \"log(bool,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 22919, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51192:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51196:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51192:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51192:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22918, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "51176:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51176:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22928, + "nodeType": "ExpressionStatement", + "src": "51176:87:73" + } + ] + }, + "id": 22930, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51109:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22916, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22909, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51118:2:73", + "nodeType": "VariableDeclaration", + "scope": 22930, + "src": "51113:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22908, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51113:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22911, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51127:2:73", + "nodeType": "VariableDeclaration", + "scope": 22930, + "src": "51122:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22910, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51122:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22913, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51139:2:73", + "nodeType": "VariableDeclaration", + "scope": 22930, + "src": "51131:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22912, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51131:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22915, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51148:2:73", + "nodeType": "VariableDeclaration", + "scope": 22930, + "src": "51143:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22914, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51143:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "51112:39:73" + }, + "returnParameters": { + "id": 22917, + "nodeType": "ParameterList", + "parameters": [], + "src": "51166:0:73" + }, + "scope": 25070, + "src": "51100:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22952, + "nodeType": "Block", + "src": "51345:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c6164647265737329", + "id": 22944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51395:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_54a7a9a08e00a28d36d734cc45e318f9adc9ffbfd731cd45d0dc5a2abe2b9ac9", + "typeString": "literal_string \"log(bool,bool,uint256,address)\"" + }, + "value": "log(bool,bool,uint256,address)" + }, + { + "id": 22945, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22932, + "src": "51429:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22946, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22934, + "src": "51433:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22947, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22936, + "src": "51437:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 22948, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22938, + "src": "51441:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_54a7a9a08e00a28d36d734cc45e318f9adc9ffbfd731cd45d0dc5a2abe2b9ac9", + "typeString": "literal_string \"log(bool,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 22942, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51371:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51375:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51371:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51371:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22941, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "51355:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51355:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22951, + "nodeType": "ExpressionStatement", + "src": "51355:90:73" + } + ] + }, + "id": 22953, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51285:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22939, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22932, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51294:2:73", + "nodeType": "VariableDeclaration", + "scope": 22953, + "src": "51289:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22931, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51289:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22934, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51303:2:73", + "nodeType": "VariableDeclaration", + "scope": 22953, + "src": "51298:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22933, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51298:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22936, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51315:2:73", + "nodeType": "VariableDeclaration", + "scope": 22953, + "src": "51307:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22935, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51307:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22938, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51327:2:73", + "nodeType": "VariableDeclaration", + "scope": 22953, + "src": "51319:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 22937, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51319:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "51288:42:73" + }, + "returnParameters": { + "id": 22940, + "nodeType": "ParameterList", + "parameters": [], + "src": "51345:0:73" + }, + "scope": 25070, + "src": "51276:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22975, + "nodeType": "Block", + "src": "51533:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c75696e7432353629", + "id": 22967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51583:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e3a9ca2f5717705d404f75ae4eff025addb4f91e02ce7d2b9a424fc7423a8246", + "typeString": "literal_string \"log(bool,bool,string,uint256)\"" + }, + "value": "log(bool,bool,string,uint256)" + }, + { + "id": 22968, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22955, + "src": "51616:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22969, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22957, + "src": "51620:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22970, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22959, + "src": "51624:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22971, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22961, + "src": "51628:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e3a9ca2f5717705d404f75ae4eff025addb4f91e02ce7d2b9a424fc7423a8246", + "typeString": "literal_string \"log(bool,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 22965, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51559:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22966, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51563:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51559:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51559:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22964, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "51543:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51543:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22974, + "nodeType": "ExpressionStatement", + "src": "51543:89:73" + } + ] + }, + "id": 22976, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51467:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22955, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51476:2:73", + "nodeType": "VariableDeclaration", + "scope": 22976, + "src": "51471:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22954, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51471:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22957, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51485:2:73", + "nodeType": "VariableDeclaration", + "scope": 22976, + "src": "51480:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22956, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51480:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22959, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51503:2:73", + "nodeType": "VariableDeclaration", + "scope": 22976, + "src": "51489:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22958, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51489:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22961, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51515:2:73", + "nodeType": "VariableDeclaration", + "scope": 22976, + "src": "51507:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51507:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "51470:48:73" + }, + "returnParameters": { + "id": 22963, + "nodeType": "ParameterList", + "parameters": [], + "src": "51533:0:73" + }, + "scope": 25070, + "src": "51458:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 22998, + "nodeType": "Block", + "src": "51726:105:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c737472696e6729", + "id": 22990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51776:30:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + "value": "log(bool,bool,string,string)" + }, + { + "id": 22991, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22978, + "src": "51808:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22992, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22980, + "src": "51812:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 22993, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22982, + "src": "51816:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 22994, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22984, + "src": "51820:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 22988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51752:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 22989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51756:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51752:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 22995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51752:71:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 22987, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "51736:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 22996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51736:88:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 22997, + "nodeType": "ExpressionStatement", + "src": "51736:88:73" + } + ] + }, + "id": 22999, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51654:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 22985, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22978, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51663:2:73", + "nodeType": "VariableDeclaration", + "scope": 22999, + "src": "51658:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22977, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51658:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22980, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51672:2:73", + "nodeType": "VariableDeclaration", + "scope": 22999, + "src": "51667:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 22979, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51667:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22982, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51690:2:73", + "nodeType": "VariableDeclaration", + "scope": 22999, + "src": "51676:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22981, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51676:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 22984, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51708:2:73", + "nodeType": "VariableDeclaration", + "scope": 22999, + "src": "51694:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 22983, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51694:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "51657:54:73" + }, + "returnParameters": { + "id": 22986, + "nodeType": "ParameterList", + "parameters": [], + "src": "51726:0:73" + }, + "scope": 25070, + "src": "51645:186:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23021, + "nodeType": "Block", + "src": "51909:103:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c626f6f6c29", + "id": 23013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51959:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + "value": "log(bool,bool,string,bool)" + }, + { + "id": 23014, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23001, + "src": "51989:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23015, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23003, + "src": "51993:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23016, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23005, + "src": "51997:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23017, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23007, + "src": "52001:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23011, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51935:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "51939:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51935:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51935:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23010, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "51919:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "51919:86:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23020, + "nodeType": "ExpressionStatement", + "src": "51919:86:73" + } + ] + }, + "id": 23022, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51846:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23001, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51855:2:73", + "nodeType": "VariableDeclaration", + "scope": 23022, + "src": "51850:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23000, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51850:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23003, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51864:2:73", + "nodeType": "VariableDeclaration", + "scope": 23022, + "src": "51859:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23002, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51859:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23005, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51882:2:73", + "nodeType": "VariableDeclaration", + "scope": 23022, + "src": "51868:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23004, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51868:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23007, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51891:2:73", + "nodeType": "VariableDeclaration", + "scope": 23022, + "src": "51886:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23006, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51886:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "51849:45:73" + }, + "returnParameters": { + "id": 23009, + "nodeType": "ParameterList", + "parameters": [], + "src": "51909:0:73" + }, + "scope": 25070, + "src": "51837:175:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23044, + "nodeType": "Block", + "src": "52093:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c6164647265737329", + "id": 23036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52143:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + "value": "log(bool,bool,string,address)" + }, + { + "id": 23037, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23024, + "src": "52176:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23038, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23026, + "src": "52180:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23039, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23028, + "src": "52184:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23040, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23030, + "src": "52188:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23034, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52119:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "52123:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52119:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52119:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23033, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52103:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52103:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23043, + "nodeType": "ExpressionStatement", + "src": "52103:89:73" + } + ] + }, + "id": 23045, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52027:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23031, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23024, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52036:2:73", + "nodeType": "VariableDeclaration", + "scope": 23045, + "src": "52031:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23023, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52031:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23026, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52045:2:73", + "nodeType": "VariableDeclaration", + "scope": 23045, + "src": "52040:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23025, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52040:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23028, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52063:2:73", + "nodeType": "VariableDeclaration", + "scope": 23045, + "src": "52049:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23027, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52049:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23030, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52075:2:73", + "nodeType": "VariableDeclaration", + "scope": 23045, + "src": "52067:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23029, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52067:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52030:48:73" + }, + "returnParameters": { + "id": 23032, + "nodeType": "ParameterList", + "parameters": [], + "src": "52093:0:73" + }, + "scope": 25070, + "src": "52018:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23067, + "nodeType": "Block", + "src": "52271:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 23059, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52321:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d7045c1b7eb7ef78b5ae54b2426a16952d89f674f6d689a4e37aa73bc076a7c", + "typeString": "literal_string \"log(bool,bool,bool,uint256)\"" + }, + "value": "log(bool,bool,bool,uint256)" + }, + { + "id": 23060, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23047, + "src": "52352:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23061, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23049, + "src": "52356:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23062, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23051, + "src": "52360:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23063, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23053, + "src": "52364:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d7045c1b7eb7ef78b5ae54b2426a16952d89f674f6d689a4e37aa73bc076a7c", + "typeString": "literal_string \"log(bool,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23057, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52297:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "52301:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52297:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52297:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23056, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52281:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52281:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23066, + "nodeType": "ExpressionStatement", + "src": "52281:87:73" + } + ] + }, + "id": 23068, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52214:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23054, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23047, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52223:2:73", + "nodeType": "VariableDeclaration", + "scope": 23068, + "src": "52218:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23046, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52218:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23049, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52232:2:73", + "nodeType": "VariableDeclaration", + "scope": 23068, + "src": "52227:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23048, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52227:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23051, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52241:2:73", + "nodeType": "VariableDeclaration", + "scope": 23068, + "src": "52236:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23050, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52236:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23053, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52253:2:73", + "nodeType": "VariableDeclaration", + "scope": 23068, + "src": "52245:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23052, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "52245:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "52217:39:73" + }, + "returnParameters": { + "id": 23055, + "nodeType": "ParameterList", + "parameters": [], + "src": "52271:0:73" + }, + "scope": 25070, + "src": "52205:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23090, + "nodeType": "Block", + "src": "52453:103:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c737472696e6729", + "id": 23082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52503:28:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + "value": "log(bool,bool,bool,string)" + }, + { + "id": 23083, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23070, + "src": "52533:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23084, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23072, + "src": "52537:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23085, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23074, + "src": "52541:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23086, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23076, + "src": "52545:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23080, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52479:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23081, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "52483:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52479:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52479:69:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23079, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52463:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52463:86:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23089, + "nodeType": "ExpressionStatement", + "src": "52463:86:73" + } + ] + }, + "id": 23091, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52390:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23077, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23070, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52399:2:73", + "nodeType": "VariableDeclaration", + "scope": 23091, + "src": "52394:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23069, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52394:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23072, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52408:2:73", + "nodeType": "VariableDeclaration", + "scope": 23091, + "src": "52403:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23071, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52403:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23074, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52417:2:73", + "nodeType": "VariableDeclaration", + "scope": 23091, + "src": "52412:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23073, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52412:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23076, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52435:2:73", + "nodeType": "VariableDeclaration", + "scope": 23091, + "src": "52421:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23075, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52421:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "52393:45:73" + }, + "returnParameters": { + "id": 23078, + "nodeType": "ParameterList", + "parameters": [], + "src": "52453:0:73" + }, + "scope": 25070, + "src": "52381:175:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23113, + "nodeType": "Block", + "src": "52625:101:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 23105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52675:26:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool,bool)" + }, + { + "id": 23106, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23093, + "src": "52703:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23107, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23095, + "src": "52707:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23108, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23097, + "src": "52711:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23109, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23099, + "src": "52715:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23103, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52651:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "52655:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52651:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52651:67:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23102, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52635:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52635:84:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23112, + "nodeType": "ExpressionStatement", + "src": "52635:84:73" + } + ] + }, + "id": 23114, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52571:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23093, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52580:2:73", + "nodeType": "VariableDeclaration", + "scope": 23114, + "src": "52575:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23092, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52575:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23095, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52589:2:73", + "nodeType": "VariableDeclaration", + "scope": 23114, + "src": "52584:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23094, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52584:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23097, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52598:2:73", + "nodeType": "VariableDeclaration", + "scope": 23114, + "src": "52593:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23096, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52593:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23099, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52607:2:73", + "nodeType": "VariableDeclaration", + "scope": 23114, + "src": "52602:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23098, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52602:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "52574:36:73" + }, + "returnParameters": { + "id": 23101, + "nodeType": "ParameterList", + "parameters": [], + "src": "52625:0:73" + }, + "scope": 25070, + "src": "52562:164:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23136, + "nodeType": "Block", + "src": "52798:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c6164647265737329", + "id": 23128, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52848:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + "value": "log(bool,bool,bool,address)" + }, + { + "id": 23129, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23116, + "src": "52879:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23130, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23118, + "src": "52883:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23131, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23120, + "src": "52887:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23132, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23122, + "src": "52891:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23126, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52824:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "52828:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52824:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52824:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23125, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52808:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52808:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23135, + "nodeType": "ExpressionStatement", + "src": "52808:87:73" + } + ] + }, + "id": 23137, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52741:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23123, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23116, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52750:2:73", + "nodeType": "VariableDeclaration", + "scope": 23137, + "src": "52745:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23115, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52745:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23118, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52759:2:73", + "nodeType": "VariableDeclaration", + "scope": 23137, + "src": "52754:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23117, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52754:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23120, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52768:2:73", + "nodeType": "VariableDeclaration", + "scope": 23137, + "src": "52763:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23119, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52763:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23122, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52780:2:73", + "nodeType": "VariableDeclaration", + "scope": 23137, + "src": "52772:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23121, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52772:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52744:39:73" + }, + "returnParameters": { + "id": 23124, + "nodeType": "ParameterList", + "parameters": [], + "src": "52798:0:73" + }, + "scope": 25070, + "src": "52732:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23159, + "nodeType": "Block", + "src": "52977:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c75696e7432353629", + "id": 23151, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53027:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4c123d5798ed03bd59911522da9ad7b1fc4e62f5a5de1c95ef20dc3897657cf1", + "typeString": "literal_string \"log(bool,bool,address,uint256)\"" + }, + "value": "log(bool,bool,address,uint256)" + }, + { + "id": 23152, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23139, + "src": "53061:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23153, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23141, + "src": "53065:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23154, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23143, + "src": "53069:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23155, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23145, + "src": "53073:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4c123d5798ed03bd59911522da9ad7b1fc4e62f5a5de1c95ef20dc3897657cf1", + "typeString": "literal_string \"log(bool,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23149, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53003:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53007:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53003:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53003:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23148, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "52987:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "52987:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23158, + "nodeType": "ExpressionStatement", + "src": "52987:90:73" + } + ] + }, + "id": 23160, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52917:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23146, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23139, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52926:2:73", + "nodeType": "VariableDeclaration", + "scope": 23160, + "src": "52921:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23138, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52921:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23141, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52935:2:73", + "nodeType": "VariableDeclaration", + "scope": 23160, + "src": "52930:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23140, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52930:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23143, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52947:2:73", + "nodeType": "VariableDeclaration", + "scope": 23160, + "src": "52939:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52939:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23145, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52959:2:73", + "nodeType": "VariableDeclaration", + "scope": 23160, + "src": "52951:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23144, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "52951:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "52920:42:73" + }, + "returnParameters": { + "id": 23147, + "nodeType": "ParameterList", + "parameters": [], + "src": "52977:0:73" + }, + "scope": 25070, + "src": "52908:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23182, + "nodeType": "Block", + "src": "53165:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c737472696e6729", + "id": 23174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53215:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + "value": "log(bool,bool,address,string)" + }, + { + "id": 23175, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23162, + "src": "53248:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23176, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23164, + "src": "53252:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23177, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23166, + "src": "53256:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23178, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23168, + "src": "53260:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23172, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53191:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53195:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53191:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53191:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23171, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "53175:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53175:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23181, + "nodeType": "ExpressionStatement", + "src": "53175:89:73" + } + ] + }, + "id": 23183, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53099:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23169, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23162, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53108:2:73", + "nodeType": "VariableDeclaration", + "scope": 23183, + "src": "53103:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23161, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53103:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23164, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53117:2:73", + "nodeType": "VariableDeclaration", + "scope": 23183, + "src": "53112:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23163, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53112:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23166, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53129:2:73", + "nodeType": "VariableDeclaration", + "scope": 23183, + "src": "53121:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23165, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53121:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23168, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53147:2:73", + "nodeType": "VariableDeclaration", + "scope": 23183, + "src": "53133:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23167, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "53133:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "53102:48:73" + }, + "returnParameters": { + "id": 23170, + "nodeType": "ParameterList", + "parameters": [], + "src": "53165:0:73" + }, + "scope": 25070, + "src": "53090:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23205, + "nodeType": "Block", + "src": "53343:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c626f6f6c29", + "id": 23197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53393:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + "value": "log(bool,bool,address,bool)" + }, + { + "id": 23198, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23185, + "src": "53424:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23199, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23187, + "src": "53428:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23200, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23189, + "src": "53432:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23201, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23191, + "src": "53436:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53369:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53373:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53369:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53369:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23194, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "53353:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53353:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23204, + "nodeType": "ExpressionStatement", + "src": "53353:87:73" + } + ] + }, + "id": 23206, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53286:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23192, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23185, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53295:2:73", + "nodeType": "VariableDeclaration", + "scope": 23206, + "src": "53290:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23184, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53290:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23187, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53304:2:73", + "nodeType": "VariableDeclaration", + "scope": 23206, + "src": "53299:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23186, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53299:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23189, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53316:2:73", + "nodeType": "VariableDeclaration", + "scope": 23206, + "src": "53308:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23188, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53308:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23191, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53325:2:73", + "nodeType": "VariableDeclaration", + "scope": 23206, + "src": "53320:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23190, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53320:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "53289:39:73" + }, + "returnParameters": { + "id": 23193, + "nodeType": "ParameterList", + "parameters": [], + "src": "53343:0:73" + }, + "scope": 25070, + "src": "53277:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23228, + "nodeType": "Block", + "src": "53522:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c6164647265737329", + "id": 23220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53572:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + "value": "log(bool,bool,address,address)" + }, + { + "id": 23221, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23208, + "src": "53606:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23222, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23210, + "src": "53610:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23223, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23212, + "src": "53614:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23224, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23214, + "src": "53618:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23218, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53548:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23219, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53552:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53548:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53548:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23217, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "53532:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23226, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53532:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23227, + "nodeType": "ExpressionStatement", + "src": "53532:90:73" + } + ] + }, + "id": 23229, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53462:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23215, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23208, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53471:2:73", + "nodeType": "VariableDeclaration", + "scope": 23229, + "src": "53466:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23207, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53466:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23210, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53480:2:73", + "nodeType": "VariableDeclaration", + "scope": 23229, + "src": "53475:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23209, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53475:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23212, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53492:2:73", + "nodeType": "VariableDeclaration", + "scope": 23229, + "src": "53484:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23211, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53484:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23214, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53504:2:73", + "nodeType": "VariableDeclaration", + "scope": 23229, + "src": "53496:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23213, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53496:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "53465:42:73" + }, + "returnParameters": { + "id": 23216, + "nodeType": "ParameterList", + "parameters": [], + "src": "53522:0:73" + }, + "scope": 25070, + "src": "53453:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23251, + "nodeType": "Block", + "src": "53707:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c75696e7432353629", + "id": 23243, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53757:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7bf181a13b51d775e7d4339fb4fee9749d9226fa1720a2ae5e3183ab5674d16e", + "typeString": "literal_string \"log(bool,address,uint256,uint256)\"" + }, + "value": "log(bool,address,uint256,uint256)" + }, + { + "id": 23244, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23231, + "src": "53794:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23245, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23233, + "src": "53798:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23246, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23235, + "src": "53802:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23247, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23237, + "src": "53806:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7bf181a13b51d775e7d4339fb4fee9749d9226fa1720a2ae5e3183ab5674d16e", + "typeString": "literal_string \"log(bool,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23241, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53733:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53737:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53733:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53733:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23240, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "53717:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53717:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23250, + "nodeType": "ExpressionStatement", + "src": "53717:93:73" + } + ] + }, + "id": 23252, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53644:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23238, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23231, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53653:2:73", + "nodeType": "VariableDeclaration", + "scope": 23252, + "src": "53648:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23230, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53648:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23233, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53665:2:73", + "nodeType": "VariableDeclaration", + "scope": 23252, + "src": "53657:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23232, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53657:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23235, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53677:2:73", + "nodeType": "VariableDeclaration", + "scope": 23252, + "src": "53669:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53669:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23237, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53689:2:73", + "nodeType": "VariableDeclaration", + "scope": 23252, + "src": "53681:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23236, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53681:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "53647:45:73" + }, + "returnParameters": { + "id": 23239, + "nodeType": "ParameterList", + "parameters": [], + "src": "53707:0:73" + }, + "scope": 25070, + "src": "53635:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23274, + "nodeType": "Block", + "src": "53901:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c737472696e6729", + "id": 23266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53951:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51f09ff8d49d8535177ce9f46f86e22d6e0ebf6aab24e3ad1fe351dec9cb8af7", + "typeString": "literal_string \"log(bool,address,uint256,string)\"" + }, + "value": "log(bool,address,uint256,string)" + }, + { + "id": 23267, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23254, + "src": "53987:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23268, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23256, + "src": "53991:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23269, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23258, + "src": "53995:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23270, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23260, + "src": "53999:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51f09ff8d49d8535177ce9f46f86e22d6e0ebf6aab24e3ad1fe351dec9cb8af7", + "typeString": "literal_string \"log(bool,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23264, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53927:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "53931:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53927:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53927:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23263, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "53911:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "53911:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23273, + "nodeType": "ExpressionStatement", + "src": "53911:92:73" + } + ] + }, + "id": 23275, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53832:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23261, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23254, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53841:2:73", + "nodeType": "VariableDeclaration", + "scope": 23275, + "src": "53836:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23253, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53836:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23256, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53853:2:73", + "nodeType": "VariableDeclaration", + "scope": 23275, + "src": "53845:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53845:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23258, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53865:2:73", + "nodeType": "VariableDeclaration", + "scope": 23275, + "src": "53857:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23257, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53857:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23260, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53883:2:73", + "nodeType": "VariableDeclaration", + "scope": 23275, + "src": "53869:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23259, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "53869:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "53835:51:73" + }, + "returnParameters": { + "id": 23262, + "nodeType": "ParameterList", + "parameters": [], + "src": "53901:0:73" + }, + "scope": 25070, + "src": "53823:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23297, + "nodeType": "Block", + "src": "54085:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c626f6f6c29", + "id": 23289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54135:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6019f1c844577cb799272d8b580ae7d31e1d26be8513d99f3a91ca8ea67c958", + "typeString": "literal_string \"log(bool,address,uint256,bool)\"" + }, + "value": "log(bool,address,uint256,bool)" + }, + { + "id": 23290, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23277, + "src": "54169:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23291, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23279, + "src": "54173:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23292, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23281, + "src": "54177:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23293, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23283, + "src": "54181:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6019f1c844577cb799272d8b580ae7d31e1d26be8513d99f3a91ca8ea67c958", + "typeString": "literal_string \"log(bool,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23287, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54111:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "54115:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54111:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54111:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23286, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "54095:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23295, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54095:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23296, + "nodeType": "ExpressionStatement", + "src": "54095:90:73" + } + ] + }, + "id": 23298, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54025:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23284, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23277, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54034:2:73", + "nodeType": "VariableDeclaration", + "scope": 23298, + "src": "54029:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23276, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54029:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23279, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54046:2:73", + "nodeType": "VariableDeclaration", + "scope": 23298, + "src": "54038:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23278, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54038:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23281, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54058:2:73", + "nodeType": "VariableDeclaration", + "scope": 23298, + "src": "54050:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23280, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54050:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23283, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54067:2:73", + "nodeType": "VariableDeclaration", + "scope": 23298, + "src": "54062:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23282, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54062:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54028:42:73" + }, + "returnParameters": { + "id": 23285, + "nodeType": "ParameterList", + "parameters": [], + "src": "54085:0:73" + }, + "scope": 25070, + "src": "54016:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23320, + "nodeType": "Block", + "src": "54270:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c6164647265737329", + "id": 23312, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54320:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_136b05dd56dbfa6e97805ce657954968bb4ea366eef252c9fa3aec31b1aa7ebd", + "typeString": "literal_string \"log(bool,address,uint256,address)\"" + }, + "value": "log(bool,address,uint256,address)" + }, + { + "id": 23313, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23300, + "src": "54357:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23314, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23302, + "src": "54361:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23315, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23304, + "src": "54365:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23316, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23306, + "src": "54369:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_136b05dd56dbfa6e97805ce657954968bb4ea366eef252c9fa3aec31b1aa7ebd", + "typeString": "literal_string \"log(bool,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23310, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54296:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "54300:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54296:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54296:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23309, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "54280:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54280:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23319, + "nodeType": "ExpressionStatement", + "src": "54280:93:73" + } + ] + }, + "id": 23321, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54207:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23307, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23300, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54216:2:73", + "nodeType": "VariableDeclaration", + "scope": 23321, + "src": "54211:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23299, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54211:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23302, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54228:2:73", + "nodeType": "VariableDeclaration", + "scope": 23321, + "src": "54220:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23301, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54220:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23304, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54240:2:73", + "nodeType": "VariableDeclaration", + "scope": 23321, + "src": "54232:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23303, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54232:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23306, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54252:2:73", + "nodeType": "VariableDeclaration", + "scope": 23321, + "src": "54244:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23305, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54244:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "54210:45:73" + }, + "returnParameters": { + "id": 23308, + "nodeType": "ParameterList", + "parameters": [], + "src": "54270:0:73" + }, + "scope": 25070, + "src": "54198:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23343, + "nodeType": "Block", + "src": "54464:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c75696e7432353629", + "id": 23335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54514:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c21f64c781c24c69fbdf6daf185e821c3143831e9c7b3ede1933a6cffd68030d", + "typeString": "literal_string \"log(bool,address,string,uint256)\"" + }, + "value": "log(bool,address,string,uint256)" + }, + { + "id": 23336, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23323, + "src": "54550:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23337, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23325, + "src": "54554:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23338, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23327, + "src": "54558:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23339, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23329, + "src": "54562:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c21f64c781c24c69fbdf6daf185e821c3143831e9c7b3ede1933a6cffd68030d", + "typeString": "literal_string \"log(bool,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23333, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54490:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "54494:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54490:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54490:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23332, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "54474:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54474:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23342, + "nodeType": "ExpressionStatement", + "src": "54474:92:73" + } + ] + }, + "id": 23344, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54395:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23323, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54404:2:73", + "nodeType": "VariableDeclaration", + "scope": 23344, + "src": "54399:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23322, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54399:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23325, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54416:2:73", + "nodeType": "VariableDeclaration", + "scope": 23344, + "src": "54408:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23324, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54408:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23327, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54434:2:73", + "nodeType": "VariableDeclaration", + "scope": 23344, + "src": "54420:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23326, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54420:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23329, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54446:2:73", + "nodeType": "VariableDeclaration", + "scope": 23344, + "src": "54438:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54438:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "54398:51:73" + }, + "returnParameters": { + "id": 23331, + "nodeType": "ParameterList", + "parameters": [], + "src": "54464:0:73" + }, + "scope": 25070, + "src": "54386:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23366, + "nodeType": "Block", + "src": "54663:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c737472696e6729", + "id": 23358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54713:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + "value": "log(bool,address,string,string)" + }, + { + "id": 23359, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23346, + "src": "54748:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23360, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23348, + "src": "54752:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23361, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23350, + "src": "54756:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23362, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23352, + "src": "54760:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23356, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54689:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "54693:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54689:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54689:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23355, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "54673:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54673:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23365, + "nodeType": "ExpressionStatement", + "src": "54673:91:73" + } + ] + }, + "id": 23367, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54588:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23353, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23346, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54597:2:73", + "nodeType": "VariableDeclaration", + "scope": 23367, + "src": "54592:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23345, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54592:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23348, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54609:2:73", + "nodeType": "VariableDeclaration", + "scope": 23367, + "src": "54601:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23347, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54601:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23350, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54627:2:73", + "nodeType": "VariableDeclaration", + "scope": 23367, + "src": "54613:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23349, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54613:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23352, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54645:2:73", + "nodeType": "VariableDeclaration", + "scope": 23367, + "src": "54631:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23351, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54631:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "54591:57:73" + }, + "returnParameters": { + "id": 23354, + "nodeType": "ParameterList", + "parameters": [], + "src": "54663:0:73" + }, + "scope": 25070, + "src": "54579:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23389, + "nodeType": "Block", + "src": "54852:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c626f6f6c29", + "id": 23381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54902:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + "value": "log(bool,address,string,bool)" + }, + { + "id": 23382, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23369, + "src": "54935:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23383, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23371, + "src": "54939:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23384, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23373, + "src": "54943:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23385, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23375, + "src": "54947:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23379, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54878:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "54882:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54878:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54878:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23378, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "54862:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "54862:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23388, + "nodeType": "ExpressionStatement", + "src": "54862:89:73" + } + ] + }, + "id": 23390, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54786:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23376, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23369, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54795:2:73", + "nodeType": "VariableDeclaration", + "scope": 23390, + "src": "54790:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54790:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23371, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54807:2:73", + "nodeType": "VariableDeclaration", + "scope": 23390, + "src": "54799:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23370, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54799:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23373, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54825:2:73", + "nodeType": "VariableDeclaration", + "scope": 23390, + "src": "54811:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23372, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54811:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23375, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54834:2:73", + "nodeType": "VariableDeclaration", + "scope": 23390, + "src": "54829:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23374, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54829:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54789:48:73" + }, + "returnParameters": { + "id": 23377, + "nodeType": "ParameterList", + "parameters": [], + "src": "54852:0:73" + }, + "scope": 25070, + "src": "54777:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23412, + "nodeType": "Block", + "src": "55042:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c6164647265737329", + "id": 23404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55092:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + "value": "log(bool,address,string,address)" + }, + { + "id": 23405, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23392, + "src": "55128:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23406, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23394, + "src": "55132:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23407, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23396, + "src": "55136:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23408, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23398, + "src": "55140:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23402, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55068:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23403, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55072:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55068:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55068:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23401, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55052:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55052:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23411, + "nodeType": "ExpressionStatement", + "src": "55052:92:73" + } + ] + }, + "id": 23413, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54973:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23399, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23392, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54982:2:73", + "nodeType": "VariableDeclaration", + "scope": 23413, + "src": "54977:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23391, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54977:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23394, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54994:2:73", + "nodeType": "VariableDeclaration", + "scope": 23413, + "src": "54986:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23393, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54986:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23396, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55012:2:73", + "nodeType": "VariableDeclaration", + "scope": 23413, + "src": "54998:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23395, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54998:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23398, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55024:2:73", + "nodeType": "VariableDeclaration", + "scope": 23413, + "src": "55016:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55016:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "54976:51:73" + }, + "returnParameters": { + "id": 23400, + "nodeType": "ParameterList", + "parameters": [], + "src": "55042:0:73" + }, + "scope": 25070, + "src": "54964:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23435, + "nodeType": "Block", + "src": "55226:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c75696e7432353629", + "id": 23427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55276:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_07831502b96d5b050adbd4ca2f9d4cd011dd7a8d3e1266dadb6c832ee8e56059", + "typeString": "literal_string \"log(bool,address,bool,uint256)\"" + }, + "value": "log(bool,address,bool,uint256)" + }, + { + "id": 23428, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23415, + "src": "55310:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23429, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23417, + "src": "55314:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23430, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23419, + "src": "55318:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23431, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23421, + "src": "55322:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_07831502b96d5b050adbd4ca2f9d4cd011dd7a8d3e1266dadb6c832ee8e56059", + "typeString": "literal_string \"log(bool,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23425, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55252:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55256:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55252:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55252:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23424, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55236:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55236:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23434, + "nodeType": "ExpressionStatement", + "src": "55236:90:73" + } + ] + }, + "id": 23436, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55166:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23415, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55175:2:73", + "nodeType": "VariableDeclaration", + "scope": 23436, + "src": "55170:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23414, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55170:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23417, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55187:2:73", + "nodeType": "VariableDeclaration", + "scope": 23436, + "src": "55179:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23416, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55179:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23419, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55196:2:73", + "nodeType": "VariableDeclaration", + "scope": 23436, + "src": "55191:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23418, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55191:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23421, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55208:2:73", + "nodeType": "VariableDeclaration", + "scope": 23436, + "src": "55200:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23420, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "55200:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "55169:42:73" + }, + "returnParameters": { + "id": 23423, + "nodeType": "ParameterList", + "parameters": [], + "src": "55226:0:73" + }, + "scope": 25070, + "src": "55157:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23458, + "nodeType": "Block", + "src": "55414:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c737472696e6729", + "id": 23450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55464:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + "value": "log(bool,address,bool,string)" + }, + { + "id": 23451, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23438, + "src": "55497:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23452, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23440, + "src": "55501:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23453, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23442, + "src": "55505:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23454, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23444, + "src": "55509:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23448, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55440:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55444:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55440:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55440:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23447, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55424:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55424:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23457, + "nodeType": "ExpressionStatement", + "src": "55424:89:73" + } + ] + }, + "id": 23459, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55348:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23445, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23438, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55357:2:73", + "nodeType": "VariableDeclaration", + "scope": 23459, + "src": "55352:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23437, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55352:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23440, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55369:2:73", + "nodeType": "VariableDeclaration", + "scope": 23459, + "src": "55361:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23439, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55361:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23442, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55378:2:73", + "nodeType": "VariableDeclaration", + "scope": 23459, + "src": "55373:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23441, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55373:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23444, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55396:2:73", + "nodeType": "VariableDeclaration", + "scope": 23459, + "src": "55382:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23443, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55382:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "55351:48:73" + }, + "returnParameters": { + "id": 23446, + "nodeType": "ParameterList", + "parameters": [], + "src": "55414:0:73" + }, + "scope": 25070, + "src": "55339:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23481, + "nodeType": "Block", + "src": "55592:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c626f6f6c29", + "id": 23473, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55642:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + "value": "log(bool,address,bool,bool)" + }, + { + "id": 23474, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23461, + "src": "55673:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23475, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23463, + "src": "55677:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23476, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23465, + "src": "55681:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23477, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23467, + "src": "55685:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23471, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55618:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55622:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55618:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55618:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23470, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55602:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55602:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23480, + "nodeType": "ExpressionStatement", + "src": "55602:87:73" + } + ] + }, + "id": 23482, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55535:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23461, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55544:2:73", + "nodeType": "VariableDeclaration", + "scope": 23482, + "src": "55539:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23460, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55539:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23463, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55556:2:73", + "nodeType": "VariableDeclaration", + "scope": 23482, + "src": "55548:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23462, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55548:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23465, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55565:2:73", + "nodeType": "VariableDeclaration", + "scope": 23482, + "src": "55560:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55560:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23467, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55574:2:73", + "nodeType": "VariableDeclaration", + "scope": 23482, + "src": "55569:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23466, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55569:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "55538:39:73" + }, + "returnParameters": { + "id": 23469, + "nodeType": "ParameterList", + "parameters": [], + "src": "55592:0:73" + }, + "scope": 25070, + "src": "55526:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23504, + "nodeType": "Block", + "src": "55771:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c6164647265737329", + "id": 23496, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55821:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + "value": "log(bool,address,bool,address)" + }, + { + "id": 23497, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23484, + "src": "55855:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23498, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23486, + "src": "55859:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23499, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23488, + "src": "55863:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23500, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23490, + "src": "55867:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23494, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55797:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55801:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55797:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55797:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23493, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55781:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55781:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23503, + "nodeType": "ExpressionStatement", + "src": "55781:90:73" + } + ] + }, + "id": 23505, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55711:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23491, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23484, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55720:2:73", + "nodeType": "VariableDeclaration", + "scope": 23505, + "src": "55715:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23483, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55715:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23486, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55732:2:73", + "nodeType": "VariableDeclaration", + "scope": 23505, + "src": "55724:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23485, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55724:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23488, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55741:2:73", + "nodeType": "VariableDeclaration", + "scope": 23505, + "src": "55736:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23487, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55736:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23490, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55753:2:73", + "nodeType": "VariableDeclaration", + "scope": 23505, + "src": "55745:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23489, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55745:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "55714:42:73" + }, + "returnParameters": { + "id": 23492, + "nodeType": "ParameterList", + "parameters": [], + "src": "55771:0:73" + }, + "scope": 25070, + "src": "55702:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23527, + "nodeType": "Block", + "src": "55956:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c75696e7432353629", + "id": 23519, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56006:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c66d1be8b80b8d96088c57d6fc12897f737822d5beb6e751a923520a0a509b8", + "typeString": "literal_string \"log(bool,address,address,uint256)\"" + }, + "value": "log(bool,address,address,uint256)" + }, + { + "id": 23520, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23507, + "src": "56043:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23521, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23509, + "src": "56047:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23522, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23511, + "src": "56051:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23523, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23513, + "src": "56055:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c66d1be8b80b8d96088c57d6fc12897f737822d5beb6e751a923520a0a509b8", + "typeString": "literal_string \"log(bool,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23517, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55982:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "55986:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55982:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55982:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23516, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "55966:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "55966:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23526, + "nodeType": "ExpressionStatement", + "src": "55966:93:73" + } + ] + }, + "id": 23528, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55893:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23514, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23507, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55902:2:73", + "nodeType": "VariableDeclaration", + "scope": 23528, + "src": "55897:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23506, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55897:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23509, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55914:2:73", + "nodeType": "VariableDeclaration", + "scope": 23528, + "src": "55906:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23508, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55906:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23511, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55926:2:73", + "nodeType": "VariableDeclaration", + "scope": 23528, + "src": "55918:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23510, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55918:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23513, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55938:2:73", + "nodeType": "VariableDeclaration", + "scope": 23528, + "src": "55930:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23512, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "55930:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "55896:45:73" + }, + "returnParameters": { + "id": 23515, + "nodeType": "ParameterList", + "parameters": [], + "src": "55956:0:73" + }, + "scope": 25070, + "src": "55884:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23550, + "nodeType": "Block", + "src": "56150:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c737472696e6729", + "id": 23542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56200:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + "value": "log(bool,address,address,string)" + }, + { + "id": 23543, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23530, + "src": "56236:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23544, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23532, + "src": "56240:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23545, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23534, + "src": "56244:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23546, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23536, + "src": "56248:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23540, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56176:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "56180:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56176:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56176:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23539, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "56160:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23548, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56160:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23549, + "nodeType": "ExpressionStatement", + "src": "56160:92:73" + } + ] + }, + "id": 23551, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56081:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23530, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56090:2:73", + "nodeType": "VariableDeclaration", + "scope": 23551, + "src": "56085:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23529, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56085:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23532, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56102:2:73", + "nodeType": "VariableDeclaration", + "scope": 23551, + "src": "56094:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23531, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56094:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23534, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56114:2:73", + "nodeType": "VariableDeclaration", + "scope": 23551, + "src": "56106:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56106:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23536, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56132:2:73", + "nodeType": "VariableDeclaration", + "scope": 23551, + "src": "56118:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23535, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "56118:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "56084:51:73" + }, + "returnParameters": { + "id": 23538, + "nodeType": "ParameterList", + "parameters": [], + "src": "56150:0:73" + }, + "scope": 25070, + "src": "56072:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23573, + "nodeType": "Block", + "src": "56334:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c626f6f6c29", + "id": 23565, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56384:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + "value": "log(bool,address,address,bool)" + }, + { + "id": 23566, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23553, + "src": "56418:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23567, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23555, + "src": "56422:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23568, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23557, + "src": "56426:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23569, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23559, + "src": "56430:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23563, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56360:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "56364:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56360:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56360:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23562, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "56344:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56344:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23572, + "nodeType": "ExpressionStatement", + "src": "56344:90:73" + } + ] + }, + "id": 23574, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56274:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23560, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23553, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56283:2:73", + "nodeType": "VariableDeclaration", + "scope": 23574, + "src": "56278:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23552, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56278:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23555, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56295:2:73", + "nodeType": "VariableDeclaration", + "scope": 23574, + "src": "56287:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23554, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56287:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23557, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56307:2:73", + "nodeType": "VariableDeclaration", + "scope": 23574, + "src": "56299:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23556, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56299:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23559, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56316:2:73", + "nodeType": "VariableDeclaration", + "scope": 23574, + "src": "56311:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23558, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56311:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "56277:42:73" + }, + "returnParameters": { + "id": 23561, + "nodeType": "ParameterList", + "parameters": [], + "src": "56334:0:73" + }, + "scope": 25070, + "src": "56265:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23596, + "nodeType": "Block", + "src": "56519:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c6164647265737329", + "id": 23588, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56569:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + "value": "log(bool,address,address,address)" + }, + { + "id": 23589, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23576, + "src": "56606:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23590, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23578, + "src": "56610:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23591, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23580, + "src": "56614:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23592, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23582, + "src": "56618:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23586, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56545:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "56549:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56545:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56545:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23585, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "56529:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56529:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23595, + "nodeType": "ExpressionStatement", + "src": "56529:93:73" + } + ] + }, + "id": 23597, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56456:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23583, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23576, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56465:2:73", + "nodeType": "VariableDeclaration", + "scope": 23597, + "src": "56460:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23575, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56460:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23578, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56477:2:73", + "nodeType": "VariableDeclaration", + "scope": 23597, + "src": "56469:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23577, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56469:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23580, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56489:2:73", + "nodeType": "VariableDeclaration", + "scope": 23597, + "src": "56481:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23579, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56481:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23582, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56501:2:73", + "nodeType": "VariableDeclaration", + "scope": 23597, + "src": "56493:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23581, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56493:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "56459:45:73" + }, + "returnParameters": { + "id": 23584, + "nodeType": "ParameterList", + "parameters": [], + "src": "56519:0:73" + }, + "scope": 25070, + "src": "56447:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23619, + "nodeType": "Block", + "src": "56710:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c75696e7432353629", + "id": 23611, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56760:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_34f0e636808ebabd61ce9b247c78c7a38984ab35d5f29c0bd51299288509f6d6", + "typeString": "literal_string \"log(address,uint256,uint256,uint256)\"" + }, + "value": "log(address,uint256,uint256,uint256)" + }, + { + "id": 23612, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23599, + "src": "56800:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23613, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23601, + "src": "56804:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23614, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23603, + "src": "56808:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23615, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23605, + "src": "56812:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_34f0e636808ebabd61ce9b247c78c7a38984ab35d5f29c0bd51299288509f6d6", + "typeString": "literal_string \"log(address,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56736:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "56740:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56736:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56736:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23608, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "56720:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56720:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23618, + "nodeType": "ExpressionStatement", + "src": "56720:96:73" + } + ] + }, + "id": 23620, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56644:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23599, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56656:2:73", + "nodeType": "VariableDeclaration", + "scope": 23620, + "src": "56648:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23598, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56648:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23601, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56668:2:73", + "nodeType": "VariableDeclaration", + "scope": 23620, + "src": "56660:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23600, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56660:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23603, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56680:2:73", + "nodeType": "VariableDeclaration", + "scope": 23620, + "src": "56672:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56672:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23605, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56692:2:73", + "nodeType": "VariableDeclaration", + "scope": 23620, + "src": "56684:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56684:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "56647:48:73" + }, + "returnParameters": { + "id": 23607, + "nodeType": "ParameterList", + "parameters": [], + "src": "56710:0:73" + }, + "scope": 25070, + "src": "56635:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23642, + "nodeType": "Block", + "src": "56910:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c737472696e6729", + "id": 23634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56960:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a28c017e545dc04fb82dd1a46d46ba463e69e0aeff774fbced9bedd205b6cf6", + "typeString": "literal_string \"log(address,uint256,uint256,string)\"" + }, + "value": "log(address,uint256,uint256,string)" + }, + { + "id": 23635, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23622, + "src": "56999:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23636, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23624, + "src": "57003:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23637, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23626, + "src": "57007:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23638, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23628, + "src": "57011:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a28c017e545dc04fb82dd1a46d46ba463e69e0aeff774fbced9bedd205b6cf6", + "typeString": "literal_string \"log(address,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23632, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56936:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "56940:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56936:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56936:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23631, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "56920:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "56920:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23641, + "nodeType": "ExpressionStatement", + "src": "56920:95:73" + } + ] + }, + "id": 23643, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56838:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23629, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23622, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56850:2:73", + "nodeType": "VariableDeclaration", + "scope": 23643, + "src": "56842:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23621, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56842:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23624, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56862:2:73", + "nodeType": "VariableDeclaration", + "scope": 23643, + "src": "56854:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23623, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56854:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23626, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56874:2:73", + "nodeType": "VariableDeclaration", + "scope": 23643, + "src": "56866:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23625, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56866:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23628, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56892:2:73", + "nodeType": "VariableDeclaration", + "scope": 23643, + "src": "56878:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23627, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "56878:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "56841:54:73" + }, + "returnParameters": { + "id": 23630, + "nodeType": "ParameterList", + "parameters": [], + "src": "56910:0:73" + }, + "scope": 25070, + "src": "56829:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23665, + "nodeType": "Block", + "src": "57100:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c626f6f6c29", + "id": 23657, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57150:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_66f1bc67b5cb59260b3541ed684f0a38ab8f590dfff7947bd562de33eae3c57e", + "typeString": "literal_string \"log(address,uint256,uint256,bool)\"" + }, + "value": "log(address,uint256,uint256,bool)" + }, + { + "id": 23658, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23645, + "src": "57187:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23659, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23647, + "src": "57191:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23660, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23649, + "src": "57195:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23661, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23651, + "src": "57199:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_66f1bc67b5cb59260b3541ed684f0a38ab8f590dfff7947bd562de33eae3c57e", + "typeString": "literal_string \"log(address,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23655, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57126:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "57130:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57126:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57126:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23654, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "57110:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57110:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23664, + "nodeType": "ExpressionStatement", + "src": "57110:93:73" + } + ] + }, + "id": 23666, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57037:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23652, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23645, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57049:2:73", + "nodeType": "VariableDeclaration", + "scope": 23666, + "src": "57041:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23644, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57041:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23647, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57061:2:73", + "nodeType": "VariableDeclaration", + "scope": 23666, + "src": "57053:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23646, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57053:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23649, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57073:2:73", + "nodeType": "VariableDeclaration", + "scope": 23666, + "src": "57065:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23648, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57065:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23651, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57082:2:73", + "nodeType": "VariableDeclaration", + "scope": 23666, + "src": "57077:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23650, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "57077:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57040:45:73" + }, + "returnParameters": { + "id": 23653, + "nodeType": "ParameterList", + "parameters": [], + "src": "57100:0:73" + }, + "scope": 25070, + "src": "57028:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23688, + "nodeType": "Block", + "src": "57291:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c6164647265737329", + "id": 23680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57341:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_20e3984d0b91232a40a479187d959e3fb7102cd2a40a0267e07a4f648290e390", + "typeString": "literal_string \"log(address,uint256,uint256,address)\"" + }, + "value": "log(address,uint256,uint256,address)" + }, + { + "id": 23681, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23668, + "src": "57381:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23682, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23670, + "src": "57385:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23683, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23672, + "src": "57389:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23684, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23674, + "src": "57393:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_20e3984d0b91232a40a479187d959e3fb7102cd2a40a0267e07a4f648290e390", + "typeString": "literal_string \"log(address,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23678, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57317:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "57321:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57317:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57317:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23677, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "57301:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57301:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23687, + "nodeType": "ExpressionStatement", + "src": "57301:96:73" + } + ] + }, + "id": 23689, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57225:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23668, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57237:2:73", + "nodeType": "VariableDeclaration", + "scope": 23689, + "src": "57229:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23667, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57229:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23670, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57249:2:73", + "nodeType": "VariableDeclaration", + "scope": 23689, + "src": "57241:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23669, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57241:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23672, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57261:2:73", + "nodeType": "VariableDeclaration", + "scope": 23689, + "src": "57253:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23671, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57253:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23674, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57273:2:73", + "nodeType": "VariableDeclaration", + "scope": 23689, + "src": "57265:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23673, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57265:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "57228:48:73" + }, + "returnParameters": { + "id": 23676, + "nodeType": "ParameterList", + "parameters": [], + "src": "57291:0:73" + }, + "scope": 25070, + "src": "57216:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23711, + "nodeType": "Block", + "src": "57491:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c75696e7432353629", + "id": 23703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57541:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bf01f89152073297823dffc184d44302911f7269a4d8bb68457feda7325d0054", + "typeString": "literal_string \"log(address,uint256,string,uint256)\"" + }, + "value": "log(address,uint256,string,uint256)" + }, + { + "id": 23704, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23691, + "src": "57580:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23705, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23693, + "src": "57584:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23706, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23695, + "src": "57588:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23707, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23697, + "src": "57592:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bf01f89152073297823dffc184d44302911f7269a4d8bb68457feda7325d0054", + "typeString": "literal_string \"log(address,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23701, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57517:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "57521:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57517:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57517:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23700, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "57501:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57501:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23710, + "nodeType": "ExpressionStatement", + "src": "57501:95:73" + } + ] + }, + "id": 23712, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57419:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23698, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23691, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57431:2:73", + "nodeType": "VariableDeclaration", + "scope": 23712, + "src": "57423:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23690, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57423:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23693, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57443:2:73", + "nodeType": "VariableDeclaration", + "scope": 23712, + "src": "57435:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23692, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57435:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23695, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57461:2:73", + "nodeType": "VariableDeclaration", + "scope": 23712, + "src": "57447:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23694, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57447:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23697, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57473:2:73", + "nodeType": "VariableDeclaration", + "scope": 23712, + "src": "57465:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23696, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57465:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "57422:54:73" + }, + "returnParameters": { + "id": 23699, + "nodeType": "ParameterList", + "parameters": [], + "src": "57491:0:73" + }, + "scope": 25070, + "src": "57410:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23734, + "nodeType": "Block", + "src": "57696:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c737472696e6729", + "id": 23726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57746:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88a8c40673ee8948292248925b0e9d44ca87355f3f886942e848cf22ee50e1c9", + "typeString": "literal_string \"log(address,uint256,string,string)\"" + }, + "value": "log(address,uint256,string,string)" + }, + { + "id": 23727, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23714, + "src": "57784:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23728, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23716, + "src": "57788:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23729, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23718, + "src": "57792:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23730, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23720, + "src": "57796:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88a8c40673ee8948292248925b0e9d44ca87355f3f886942e848cf22ee50e1c9", + "typeString": "literal_string \"log(address,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23724, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57722:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "57726:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57722:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57722:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23723, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "57706:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57706:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23733, + "nodeType": "ExpressionStatement", + "src": "57706:94:73" + } + ] + }, + "id": 23735, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57618:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23721, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23714, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57630:2:73", + "nodeType": "VariableDeclaration", + "scope": 23735, + "src": "57622:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23713, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57622:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23716, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57642:2:73", + "nodeType": "VariableDeclaration", + "scope": 23735, + "src": "57634:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23715, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57634:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23718, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57660:2:73", + "nodeType": "VariableDeclaration", + "scope": 23735, + "src": "57646:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23717, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57646:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23720, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57678:2:73", + "nodeType": "VariableDeclaration", + "scope": 23735, + "src": "57664:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23719, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57664:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "57621:60:73" + }, + "returnParameters": { + "id": 23722, + "nodeType": "ParameterList", + "parameters": [], + "src": "57696:0:73" + }, + "scope": 25070, + "src": "57609:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23757, + "nodeType": "Block", + "src": "57891:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c626f6f6c29", + "id": 23749, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57941:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf18105cbdc058258aaac7d4703aebeff683e464ae87b167f8bcabefd4799184", + "typeString": "literal_string \"log(address,uint256,string,bool)\"" + }, + "value": "log(address,uint256,string,bool)" + }, + { + "id": 23750, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23737, + "src": "57977:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23751, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23739, + "src": "57981:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23752, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23741, + "src": "57985:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23753, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23743, + "src": "57989:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf18105cbdc058258aaac7d4703aebeff683e464ae87b167f8bcabefd4799184", + "typeString": "literal_string \"log(address,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23747, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57917:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "57921:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57917:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57917:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23746, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "57901:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "57901:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23756, + "nodeType": "ExpressionStatement", + "src": "57901:92:73" + } + ] + }, + "id": 23758, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57822:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23744, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23737, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57834:2:73", + "nodeType": "VariableDeclaration", + "scope": 23758, + "src": "57826:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23736, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57826:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23739, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57846:2:73", + "nodeType": "VariableDeclaration", + "scope": 23758, + "src": "57838:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23738, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57838:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23741, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57864:2:73", + "nodeType": "VariableDeclaration", + "scope": 23758, + "src": "57850:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23740, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57850:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23743, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57873:2:73", + "nodeType": "VariableDeclaration", + "scope": 23758, + "src": "57868:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23742, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "57868:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57825:51:73" + }, + "returnParameters": { + "id": 23745, + "nodeType": "ParameterList", + "parameters": [], + "src": "57891:0:73" + }, + "scope": 25070, + "src": "57813:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23780, + "nodeType": "Block", + "src": "58087:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c6164647265737329", + "id": 23772, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58137:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c430d475ad8236f34d086a6aae3612106ae74c8621b8677d58f13dcda27570a", + "typeString": "literal_string \"log(address,uint256,string,address)\"" + }, + "value": "log(address,uint256,string,address)" + }, + { + "id": 23773, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23760, + "src": "58176:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23774, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23762, + "src": "58180:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23775, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23764, + "src": "58184:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23776, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23766, + "src": "58188:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5c430d475ad8236f34d086a6aae3612106ae74c8621b8677d58f13dcda27570a", + "typeString": "literal_string \"log(address,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23770, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58113:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "58117:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58113:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58113:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23769, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "58097:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23778, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58097:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23779, + "nodeType": "ExpressionStatement", + "src": "58097:95:73" + } + ] + }, + "id": 23781, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58015:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23760, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58027:2:73", + "nodeType": "VariableDeclaration", + "scope": 23781, + "src": "58019:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23759, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58019:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23762, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58039:2:73", + "nodeType": "VariableDeclaration", + "scope": 23781, + "src": "58031:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58031:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23764, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58057:2:73", + "nodeType": "VariableDeclaration", + "scope": 23781, + "src": "58043:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23763, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58043:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23766, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58069:2:73", + "nodeType": "VariableDeclaration", + "scope": 23781, + "src": "58061:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23765, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58061:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58018:54:73" + }, + "returnParameters": { + "id": 23768, + "nodeType": "ParameterList", + "parameters": [], + "src": "58087:0:73" + }, + "scope": 25070, + "src": "58006:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23803, + "nodeType": "Block", + "src": "58277:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c75696e7432353629", + "id": 23795, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58327:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_22f6b999343c50207803e85ddd9e714a5457dacc91c49407b8de02bdaf889e5e", + "typeString": "literal_string \"log(address,uint256,bool,uint256)\"" + }, + "value": "log(address,uint256,bool,uint256)" + }, + { + "id": 23796, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23783, + "src": "58364:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23797, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23785, + "src": "58368:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23798, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23787, + "src": "58372:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23799, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23789, + "src": "58376:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_22f6b999343c50207803e85ddd9e714a5457dacc91c49407b8de02bdaf889e5e", + "typeString": "literal_string \"log(address,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23793, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58303:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23794, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "58307:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58303:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58303:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23792, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "58287:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58287:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23802, + "nodeType": "ExpressionStatement", + "src": "58287:93:73" + } + ] + }, + "id": 23804, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58214:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23790, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23783, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58226:2:73", + "nodeType": "VariableDeclaration", + "scope": 23804, + "src": "58218:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23782, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58218:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23785, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58238:2:73", + "nodeType": "VariableDeclaration", + "scope": 23804, + "src": "58230:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23784, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58230:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23787, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58247:2:73", + "nodeType": "VariableDeclaration", + "scope": 23804, + "src": "58242:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23786, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58242:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23789, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58259:2:73", + "nodeType": "VariableDeclaration", + "scope": 23804, + "src": "58251:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23788, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58251:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "58217:45:73" + }, + "returnParameters": { + "id": 23791, + "nodeType": "ParameterList", + "parameters": [], + "src": "58277:0:73" + }, + "scope": 25070, + "src": "58205:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23826, + "nodeType": "Block", + "src": "58471:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c737472696e6729", + "id": 23818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58521:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5ad85f9b1e72940e5c2ff98bcaf10dac65873a2d1f60566284e5a9bba66ce0b", + "typeString": "literal_string \"log(address,uint256,bool,string)\"" + }, + "value": "log(address,uint256,bool,string)" + }, + { + "id": 23819, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23806, + "src": "58557:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23820, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23808, + "src": "58561:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23821, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23810, + "src": "58565:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23822, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23812, + "src": "58569:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5ad85f9b1e72940e5c2ff98bcaf10dac65873a2d1f60566284e5a9bba66ce0b", + "typeString": "literal_string \"log(address,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23816, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58497:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "58501:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58497:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58497:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23815, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "58481:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58481:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23825, + "nodeType": "ExpressionStatement", + "src": "58481:92:73" + } + ] + }, + "id": 23827, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58402:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23813, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23806, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58414:2:73", + "nodeType": "VariableDeclaration", + "scope": 23827, + "src": "58406:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23805, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58406:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23808, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58426:2:73", + "nodeType": "VariableDeclaration", + "scope": 23827, + "src": "58418:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58418:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23810, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58435:2:73", + "nodeType": "VariableDeclaration", + "scope": 23827, + "src": "58430:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23809, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58430:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23812, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58453:2:73", + "nodeType": "VariableDeclaration", + "scope": 23827, + "src": "58439:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23811, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58439:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "58405:51:73" + }, + "returnParameters": { + "id": 23814, + "nodeType": "ParameterList", + "parameters": [], + "src": "58471:0:73" + }, + "scope": 25070, + "src": "58393:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23849, + "nodeType": "Block", + "src": "58655:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c626f6f6c29", + "id": 23841, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58705:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bf5e5379bfb03415fbd47322e912c55a56b102cc24fbed41ca848047f460ae7", + "typeString": "literal_string \"log(address,uint256,bool,bool)\"" + }, + "value": "log(address,uint256,bool,bool)" + }, + { + "id": 23842, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23829, + "src": "58739:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23843, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23831, + "src": "58743:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23844, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23833, + "src": "58747:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23845, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23835, + "src": "58751:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3bf5e5379bfb03415fbd47322e912c55a56b102cc24fbed41ca848047f460ae7", + "typeString": "literal_string \"log(address,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23839, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58681:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23840, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "58685:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58681:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58681:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23838, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "58665:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58665:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23848, + "nodeType": "ExpressionStatement", + "src": "58665:90:73" + } + ] + }, + "id": 23850, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58595:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23829, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58607:2:73", + "nodeType": "VariableDeclaration", + "scope": 23850, + "src": "58599:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23828, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58599:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23831, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58619:2:73", + "nodeType": "VariableDeclaration", + "scope": 23850, + "src": "58611:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58611:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23833, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58628:2:73", + "nodeType": "VariableDeclaration", + "scope": 23850, + "src": "58623:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58623:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23835, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58637:2:73", + "nodeType": "VariableDeclaration", + "scope": 23850, + "src": "58632:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23834, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58632:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "58598:42:73" + }, + "returnParameters": { + "id": 23837, + "nodeType": "ParameterList", + "parameters": [], + "src": "58655:0:73" + }, + "scope": 25070, + "src": "58586:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23872, + "nodeType": "Block", + "src": "58840:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c6164647265737329", + "id": 23864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58890:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a31bfdcce87cf9e77dc577737a291feb3aa727a8fbb8205e53519527c85ff290", + "typeString": "literal_string \"log(address,uint256,bool,address)\"" + }, + "value": "log(address,uint256,bool,address)" + }, + { + "id": 23865, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23852, + "src": "58927:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23866, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23854, + "src": "58931:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23867, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23856, + "src": "58935:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 23868, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23858, + "src": "58939:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a31bfdcce87cf9e77dc577737a291feb3aa727a8fbb8205e53519527c85ff290", + "typeString": "literal_string \"log(address,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23862, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58866:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "58870:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58866:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58866:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23861, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "58850:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "58850:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23871, + "nodeType": "ExpressionStatement", + "src": "58850:93:73" + } + ] + }, + "id": 23873, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58777:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23852, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58789:2:73", + "nodeType": "VariableDeclaration", + "scope": 23873, + "src": "58781:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23851, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58781:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23854, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58801:2:73", + "nodeType": "VariableDeclaration", + "scope": 23873, + "src": "58793:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23853, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58793:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23856, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58810:2:73", + "nodeType": "VariableDeclaration", + "scope": 23873, + "src": "58805:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23855, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58805:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23858, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58822:2:73", + "nodeType": "VariableDeclaration", + "scope": 23873, + "src": "58814:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23857, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58814:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58780:45:73" + }, + "returnParameters": { + "id": 23860, + "nodeType": "ParameterList", + "parameters": [], + "src": "58840:0:73" + }, + "scope": 25070, + "src": "58768:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23895, + "nodeType": "Block", + "src": "59031:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c75696e7432353629", + "id": 23887, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59081:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_100f650ebf81cb406bb4fb842e06128992c5a86986b0eab3b9e965c3254516e6", + "typeString": "literal_string \"log(address,uint256,address,uint256)\"" + }, + "value": "log(address,uint256,address,uint256)" + }, + { + "id": 23888, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23875, + "src": "59121:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23889, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23877, + "src": "59125:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23890, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23879, + "src": "59129:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23891, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23881, + "src": "59133:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_100f650ebf81cb406bb4fb842e06128992c5a86986b0eab3b9e965c3254516e6", + "typeString": "literal_string \"log(address,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23885, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59057:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23886, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "59061:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59057:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59057:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23884, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "59041:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59041:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23894, + "nodeType": "ExpressionStatement", + "src": "59041:96:73" + } + ] + }, + "id": 23896, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58965:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23882, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23875, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58977:2:73", + "nodeType": "VariableDeclaration", + "scope": 23896, + "src": "58969:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23874, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58969:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23877, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58989:2:73", + "nodeType": "VariableDeclaration", + "scope": 23896, + "src": "58981:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23876, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58981:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23879, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59001:2:73", + "nodeType": "VariableDeclaration", + "scope": 23896, + "src": "58993:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23878, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58993:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23881, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59013:2:73", + "nodeType": "VariableDeclaration", + "scope": 23896, + "src": "59005:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23880, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59005:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "58968:48:73" + }, + "returnParameters": { + "id": 23883, + "nodeType": "ParameterList", + "parameters": [], + "src": "59031:0:73" + }, + "scope": 25070, + "src": "58956:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23918, + "nodeType": "Block", + "src": "59231:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c737472696e6729", + "id": 23910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59281:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1da986ea2505037a166dd31728d673db1dd36bf0935c0201f0d23934a6acafdb", + "typeString": "literal_string \"log(address,uint256,address,string)\"" + }, + "value": "log(address,uint256,address,string)" + }, + { + "id": 23911, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23898, + "src": "59320:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23912, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23900, + "src": "59324:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23913, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23902, + "src": "59328:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23914, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23904, + "src": "59332:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1da986ea2505037a166dd31728d673db1dd36bf0935c0201f0d23934a6acafdb", + "typeString": "literal_string \"log(address,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 23908, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59257:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "59261:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59257:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59257:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23907, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "59241:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59241:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23917, + "nodeType": "ExpressionStatement", + "src": "59241:95:73" + } + ] + }, + "id": 23919, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59159:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23905, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23898, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59171:2:73", + "nodeType": "VariableDeclaration", + "scope": 23919, + "src": "59163:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23897, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59163:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23900, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59183:2:73", + "nodeType": "VariableDeclaration", + "scope": 23919, + "src": "59175:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59175:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23902, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59195:2:73", + "nodeType": "VariableDeclaration", + "scope": 23919, + "src": "59187:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59187:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23904, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59213:2:73", + "nodeType": "VariableDeclaration", + "scope": 23919, + "src": "59199:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23903, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59199:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "59162:54:73" + }, + "returnParameters": { + "id": 23906, + "nodeType": "ParameterList", + "parameters": [], + "src": "59231:0:73" + }, + "scope": 25070, + "src": "59150:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23941, + "nodeType": "Block", + "src": "59421:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c626f6f6c29", + "id": 23933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59471:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1bcc9b3f106a0ac6ebf0cd2eda5f636e4ab1afa891b1acb460dd180f14bb322", + "typeString": "literal_string \"log(address,uint256,address,bool)\"" + }, + "value": "log(address,uint256,address,bool)" + }, + { + "id": 23934, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23921, + "src": "59508:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23935, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23923, + "src": "59512:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23936, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23925, + "src": "59516:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23937, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23927, + "src": "59520:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1bcc9b3f106a0ac6ebf0cd2eda5f636e4ab1afa891b1acb460dd180f14bb322", + "typeString": "literal_string \"log(address,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 23931, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59447:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "59451:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59447:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59447:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23930, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "59431:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59431:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23940, + "nodeType": "ExpressionStatement", + "src": "59431:93:73" + } + ] + }, + "id": 23942, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59358:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23921, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59370:2:73", + "nodeType": "VariableDeclaration", + "scope": 23942, + "src": "59362:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59362:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23923, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59382:2:73", + "nodeType": "VariableDeclaration", + "scope": 23942, + "src": "59374:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23922, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59374:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23925, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59394:2:73", + "nodeType": "VariableDeclaration", + "scope": 23942, + "src": "59386:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59386:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23927, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59403:2:73", + "nodeType": "VariableDeclaration", + "scope": 23942, + "src": "59398:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 23926, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59398:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "59361:45:73" + }, + "returnParameters": { + "id": 23929, + "nodeType": "ParameterList", + "parameters": [], + "src": "59421:0:73" + }, + "scope": 25070, + "src": "59349:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23964, + "nodeType": "Block", + "src": "59612:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c6164647265737329", + "id": 23956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59662:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_478d1c625a50f0548fbd6ce5c9463f034dc2ce146c930b3546dac402346457d4", + "typeString": "literal_string \"log(address,uint256,address,address)\"" + }, + "value": "log(address,uint256,address,address)" + }, + { + "id": 23957, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23944, + "src": "59702:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23958, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23946, + "src": "59706:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23959, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23948, + "src": "59710:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23960, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23950, + "src": "59714:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_478d1c625a50f0548fbd6ce5c9463f034dc2ce146c930b3546dac402346457d4", + "typeString": "literal_string \"log(address,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 23954, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59638:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "59642:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59638:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59638:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23953, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "59622:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59622:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23963, + "nodeType": "ExpressionStatement", + "src": "59622:96:73" + } + ] + }, + "id": 23965, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59546:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23951, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23944, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59558:2:73", + "nodeType": "VariableDeclaration", + "scope": 23965, + "src": "59550:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23943, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59550:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23946, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59570:2:73", + "nodeType": "VariableDeclaration", + "scope": 23965, + "src": "59562:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23945, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59562:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23948, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59582:2:73", + "nodeType": "VariableDeclaration", + "scope": 23965, + "src": "59574:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59574:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23950, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59594:2:73", + "nodeType": "VariableDeclaration", + "scope": 23965, + "src": "59586:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23949, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59586:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "59549:48:73" + }, + "returnParameters": { + "id": 23952, + "nodeType": "ParameterList", + "parameters": [], + "src": "59612:0:73" + }, + "scope": 25070, + "src": "59537:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 23987, + "nodeType": "Block", + "src": "59812:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c75696e7432353629", + "id": 23979, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59862:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1dc8e1b86f5e8cc33f88f9c9577316d392566cde443e43069eebe8e56a0a0562", + "typeString": "literal_string \"log(address,string,uint256,uint256)\"" + }, + "value": "log(address,string,uint256,uint256)" + }, + { + "id": 23980, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23967, + "src": "59901:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 23981, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23969, + "src": "59905:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 23982, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23971, + "src": "59909:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 23983, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23973, + "src": "59913:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1dc8e1b86f5e8cc33f88f9c9577316d392566cde443e43069eebe8e56a0a0562", + "typeString": "literal_string \"log(address,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 23977, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59838:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 23978, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "59842:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59838:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 23984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59838:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23976, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "59822:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 23985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "59822:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23986, + "nodeType": "ExpressionStatement", + "src": "59822:95:73" + } + ] + }, + "id": 23988, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59740:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23974, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23967, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59752:2:73", + "nodeType": "VariableDeclaration", + "scope": 23988, + "src": "59744:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23966, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59744:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23969, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59770:2:73", + "nodeType": "VariableDeclaration", + "scope": 23988, + "src": "59756:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23968, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59756:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23971, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59782:2:73", + "nodeType": "VariableDeclaration", + "scope": 23988, + "src": "59774:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23970, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59774:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23973, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59794:2:73", + "nodeType": "VariableDeclaration", + "scope": 23988, + "src": "59786:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23972, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59786:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "59743:54:73" + }, + "returnParameters": { + "id": 23975, + "nodeType": "ParameterList", + "parameters": [], + "src": "59812:0:73" + }, + "scope": 25070, + "src": "59731:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24010, + "nodeType": "Block", + "src": "60017:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c737472696e6729", + "id": 24002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60067:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_448830a8c1281c2ef562207eb8a81eaf8ce3a05f5db2e480f1a7741f740725d3", + "typeString": "literal_string \"log(address,string,uint256,string)\"" + }, + "value": "log(address,string,uint256,string)" + }, + { + "id": 24003, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23990, + "src": "60105:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24004, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23992, + "src": "60109:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24005, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23994, + "src": "60113:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24006, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23996, + "src": "60117:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_448830a8c1281c2ef562207eb8a81eaf8ce3a05f5db2e480f1a7741f740725d3", + "typeString": "literal_string \"log(address,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24000, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60043:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "60047:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60043:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60043:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 23999, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "60027:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60027:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24009, + "nodeType": "ExpressionStatement", + "src": "60027:94:73" + } + ] + }, + "id": 24011, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59939:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23997, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23990, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59951:2:73", + "nodeType": "VariableDeclaration", + "scope": 24011, + "src": "59943:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23989, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59943:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23992, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59969:2:73", + "nodeType": "VariableDeclaration", + "scope": 24011, + "src": "59955:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23991, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59955:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23994, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59981:2:73", + "nodeType": "VariableDeclaration", + "scope": 24011, + "src": "59973:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 23993, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59973:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 23996, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59999:2:73", + "nodeType": "VariableDeclaration", + "scope": 24011, + "src": "59985:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 23995, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59985:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "59942:60:73" + }, + "returnParameters": { + "id": 23998, + "nodeType": "ParameterList", + "parameters": [], + "src": "60017:0:73" + }, + "scope": 25070, + "src": "59930:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24033, + "nodeType": "Block", + "src": "60212:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c626f6f6c29", + "id": 24025, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60262:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0ef7e050655c297a96024e476b2cd79b6c7fd3efbcd797a5d2723a888114ada4", + "typeString": "literal_string \"log(address,string,uint256,bool)\"" + }, + "value": "log(address,string,uint256,bool)" + }, + { + "id": 24026, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24013, + "src": "60298:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24027, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24015, + "src": "60302:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24028, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24017, + "src": "60306:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24029, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24019, + "src": "60310:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0ef7e050655c297a96024e476b2cd79b6c7fd3efbcd797a5d2723a888114ada4", + "typeString": "literal_string \"log(address,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24023, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60238:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "60242:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60238:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24030, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60238:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24022, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "60222:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60222:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24032, + "nodeType": "ExpressionStatement", + "src": "60222:92:73" + } + ] + }, + "id": 24034, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60143:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24020, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24013, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60155:2:73", + "nodeType": "VariableDeclaration", + "scope": 24034, + "src": "60147:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24012, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60147:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24015, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60173:2:73", + "nodeType": "VariableDeclaration", + "scope": 24034, + "src": "60159:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24014, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60159:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24017, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60185:2:73", + "nodeType": "VariableDeclaration", + "scope": 24034, + "src": "60177:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60177:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24019, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60194:2:73", + "nodeType": "VariableDeclaration", + "scope": 24034, + "src": "60189:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24018, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60189:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "60146:51:73" + }, + "returnParameters": { + "id": 24021, + "nodeType": "ParameterList", + "parameters": [], + "src": "60212:0:73" + }, + "scope": 25070, + "src": "60134:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24056, + "nodeType": "Block", + "src": "60408:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c6164647265737329", + "id": 24048, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60458:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_631836789e813227d6b1cf492359a1dbdd837663758bd3e55e319e4a730f0a18", + "typeString": "literal_string \"log(address,string,uint256,address)\"" + }, + "value": "log(address,string,uint256,address)" + }, + { + "id": 24049, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24036, + "src": "60497:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24050, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24038, + "src": "60501:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24051, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24040, + "src": "60505:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24052, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24042, + "src": "60509:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_631836789e813227d6b1cf492359a1dbdd837663758bd3e55e319e4a730f0a18", + "typeString": "literal_string \"log(address,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24046, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60434:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "60438:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60434:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60434:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24045, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "60418:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60418:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24055, + "nodeType": "ExpressionStatement", + "src": "60418:95:73" + } + ] + }, + "id": 24057, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60336:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24043, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24036, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60348:2:73", + "nodeType": "VariableDeclaration", + "scope": 24057, + "src": "60340:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60340:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24038, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60366:2:73", + "nodeType": "VariableDeclaration", + "scope": 24057, + "src": "60352:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24037, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60352:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24040, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60378:2:73", + "nodeType": "VariableDeclaration", + "scope": 24057, + "src": "60370:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24039, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60370:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24042, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60390:2:73", + "nodeType": "VariableDeclaration", + "scope": 24057, + "src": "60382:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24041, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60382:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "60339:54:73" + }, + "returnParameters": { + "id": 24044, + "nodeType": "ParameterList", + "parameters": [], + "src": "60408:0:73" + }, + "scope": 25070, + "src": "60327:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24079, + "nodeType": "Block", + "src": "60613:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c75696e7432353629", + "id": 24071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60663:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_159f89272dbf40436b74fcc844c992c1f5cc6a7cc05a9db80782be1a20a8f265", + "typeString": "literal_string \"log(address,string,string,uint256)\"" + }, + "value": "log(address,string,string,uint256)" + }, + { + "id": 24072, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24059, + "src": "60701:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24073, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24061, + "src": "60705:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24074, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24063, + "src": "60709:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24075, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24065, + "src": "60713:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_159f89272dbf40436b74fcc844c992c1f5cc6a7cc05a9db80782be1a20a8f265", + "typeString": "literal_string \"log(address,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24069, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60639:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "60643:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60639:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60639:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24068, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "60623:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60623:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24078, + "nodeType": "ExpressionStatement", + "src": "60623:94:73" + } + ] + }, + "id": 24080, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60535:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24066, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24059, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60547:2:73", + "nodeType": "VariableDeclaration", + "scope": 24080, + "src": "60539:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24058, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60539:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24061, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60565:2:73", + "nodeType": "VariableDeclaration", + "scope": 24080, + "src": "60551:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24060, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60551:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24063, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60583:2:73", + "nodeType": "VariableDeclaration", + "scope": 24080, + "src": "60569:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24062, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60569:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24065, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60595:2:73", + "nodeType": "VariableDeclaration", + "scope": 24080, + "src": "60587:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24064, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60587:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "60538:60:73" + }, + "returnParameters": { + "id": 24067, + "nodeType": "ParameterList", + "parameters": [], + "src": "60613:0:73" + }, + "scope": 25070, + "src": "60526:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24102, + "nodeType": "Block", + "src": "60823:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c737472696e6729", + "id": 24094, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60873:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + "value": "log(address,string,string,string)" + }, + { + "id": 24095, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24082, + "src": "60910:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24096, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24084, + "src": "60914:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24097, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24086, + "src": "60918:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24098, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24088, + "src": "60922:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24092, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60849:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "60853:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60849:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60849:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24091, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "60833:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "60833:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24101, + "nodeType": "ExpressionStatement", + "src": "60833:93:73" + } + ] + }, + "id": 24103, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60739:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24089, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24082, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60751:2:73", + "nodeType": "VariableDeclaration", + "scope": 24103, + "src": "60743:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60743:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24084, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60769:2:73", + "nodeType": "VariableDeclaration", + "scope": 24103, + "src": "60755:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24083, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60755:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24086, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60787:2:73", + "nodeType": "VariableDeclaration", + "scope": 24103, + "src": "60773:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24085, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60773:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24088, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60805:2:73", + "nodeType": "VariableDeclaration", + "scope": 24103, + "src": "60791:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24087, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60791:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "60742:66:73" + }, + "returnParameters": { + "id": 24090, + "nodeType": "ParameterList", + "parameters": [], + "src": "60823:0:73" + }, + "scope": 25070, + "src": "60730:203:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24125, + "nodeType": "Block", + "src": "61023:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c626f6f6c29", + "id": 24117, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61073:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + "value": "log(address,string,string,bool)" + }, + { + "id": 24118, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24105, + "src": "61108:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24119, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24107, + "src": "61112:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24120, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24109, + "src": "61116:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24121, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24111, + "src": "61120:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24115, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61049:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "61053:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61049:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61049:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24114, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "61033:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61033:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24124, + "nodeType": "ExpressionStatement", + "src": "61033:91:73" + } + ] + }, + "id": 24126, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60948:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24112, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24105, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60960:2:73", + "nodeType": "VariableDeclaration", + "scope": 24126, + "src": "60952:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60952:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24107, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60978:2:73", + "nodeType": "VariableDeclaration", + "scope": 24126, + "src": "60964:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24106, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60964:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24109, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60996:2:73", + "nodeType": "VariableDeclaration", + "scope": 24126, + "src": "60982:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24108, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60982:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24111, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61005:2:73", + "nodeType": "VariableDeclaration", + "scope": 24126, + "src": "61000:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24110, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61000:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "60951:57:73" + }, + "returnParameters": { + "id": 24113, + "nodeType": "ParameterList", + "parameters": [], + "src": "61023:0:73" + }, + "scope": 25070, + "src": "60939:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24148, + "nodeType": "Block", + "src": "61224:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c6164647265737329", + "id": 24140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61274:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + "value": "log(address,string,string,address)" + }, + { + "id": 24141, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24128, + "src": "61312:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24142, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24130, + "src": "61316:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24143, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24132, + "src": "61320:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24144, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24134, + "src": "61324:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24138, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61250:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "61254:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61250:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24145, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61250:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24137, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "61234:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61234:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24147, + "nodeType": "ExpressionStatement", + "src": "61234:94:73" + } + ] + }, + "id": 24149, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61146:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24135, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24128, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61158:2:73", + "nodeType": "VariableDeclaration", + "scope": 24149, + "src": "61150:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24127, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61150:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24130, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61176:2:73", + "nodeType": "VariableDeclaration", + "scope": 24149, + "src": "61162:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24129, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61162:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24132, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61194:2:73", + "nodeType": "VariableDeclaration", + "scope": 24149, + "src": "61180:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24131, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61180:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24134, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61206:2:73", + "nodeType": "VariableDeclaration", + "scope": 24149, + "src": "61198:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24133, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61198:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61149:60:73" + }, + "returnParameters": { + "id": 24136, + "nodeType": "ParameterList", + "parameters": [], + "src": "61224:0:73" + }, + "scope": 25070, + "src": "61137:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24171, + "nodeType": "Block", + "src": "61419:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c75696e7432353629", + "id": 24163, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61469:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_515e38b61b40d622a4c0448953be005b3991f6a70155c59b5dca42a264aa0345", + "typeString": "literal_string \"log(address,string,bool,uint256)\"" + }, + "value": "log(address,string,bool,uint256)" + }, + { + "id": 24164, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24151, + "src": "61505:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24165, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24153, + "src": "61509:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24166, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24155, + "src": "61513:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24167, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24157, + "src": "61517:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_515e38b61b40d622a4c0448953be005b3991f6a70155c59b5dca42a264aa0345", + "typeString": "literal_string \"log(address,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24161, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61445:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "61449:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61445:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61445:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24160, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "61429:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61429:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24170, + "nodeType": "ExpressionStatement", + "src": "61429:92:73" + } + ] + }, + "id": 24172, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61350:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24151, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61362:2:73", + "nodeType": "VariableDeclaration", + "scope": 24172, + "src": "61354:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24150, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61354:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24153, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61380:2:73", + "nodeType": "VariableDeclaration", + "scope": 24172, + "src": "61366:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24152, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61366:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24155, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61389:2:73", + "nodeType": "VariableDeclaration", + "scope": 24172, + "src": "61384:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24154, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61384:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24157, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61401:2:73", + "nodeType": "VariableDeclaration", + "scope": 24172, + "src": "61393:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24156, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "61393:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "61353:51:73" + }, + "returnParameters": { + "id": 24159, + "nodeType": "ParameterList", + "parameters": [], + "src": "61419:0:73" + }, + "scope": 25070, + "src": "61341:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24194, + "nodeType": "Block", + "src": "61618:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c737472696e6729", + "id": 24186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61668:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + "value": "log(address,string,bool,string)" + }, + { + "id": 24187, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24174, + "src": "61703:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24188, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24176, + "src": "61707:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24189, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24178, + "src": "61711:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24190, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24180, + "src": "61715:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24184, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61644:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "61648:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61644:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61644:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24183, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "61628:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61628:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24193, + "nodeType": "ExpressionStatement", + "src": "61628:91:73" + } + ] + }, + "id": 24195, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61543:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24181, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24174, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61555:2:73", + "nodeType": "VariableDeclaration", + "scope": 24195, + "src": "61547:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24173, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61547:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24176, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61573:2:73", + "nodeType": "VariableDeclaration", + "scope": 24195, + "src": "61559:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24175, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61559:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24178, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61582:2:73", + "nodeType": "VariableDeclaration", + "scope": 24195, + "src": "61577:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24177, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61577:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24180, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61600:2:73", + "nodeType": "VariableDeclaration", + "scope": 24195, + "src": "61586:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24179, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61586:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "61546:57:73" + }, + "returnParameters": { + "id": 24182, + "nodeType": "ParameterList", + "parameters": [], + "src": "61618:0:73" + }, + "scope": 25070, + "src": "61534:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24217, + "nodeType": "Block", + "src": "61807:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c626f6f6c29", + "id": 24209, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61857:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + "value": "log(address,string,bool,bool)" + }, + { + "id": 24210, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24197, + "src": "61890:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24211, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24199, + "src": "61894:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24212, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24201, + "src": "61898:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24213, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24203, + "src": "61902:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24207, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61833:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "61837:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61833:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61833:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24206, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "61817:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "61817:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24216, + "nodeType": "ExpressionStatement", + "src": "61817:89:73" + } + ] + }, + "id": 24218, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61741:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24204, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24197, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61753:2:73", + "nodeType": "VariableDeclaration", + "scope": 24218, + "src": "61745:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24196, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61745:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24199, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61771:2:73", + "nodeType": "VariableDeclaration", + "scope": 24218, + "src": "61757:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24198, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61757:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24201, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61780:2:73", + "nodeType": "VariableDeclaration", + "scope": 24218, + "src": "61775:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24200, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61775:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24203, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61789:2:73", + "nodeType": "VariableDeclaration", + "scope": 24218, + "src": "61784:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24202, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61784:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "61744:48:73" + }, + "returnParameters": { + "id": 24205, + "nodeType": "ParameterList", + "parameters": [], + "src": "61807:0:73" + }, + "scope": 25070, + "src": "61732:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24240, + "nodeType": "Block", + "src": "61997:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c6164647265737329", + "id": 24232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62047:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + "value": "log(address,string,bool,address)" + }, + { + "id": 24233, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24220, + "src": "62083:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24234, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24222, + "src": "62087:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24235, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24224, + "src": "62091:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24236, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24226, + "src": "62095:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24230, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62023:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "62027:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62023:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62023:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24229, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62007:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62007:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24239, + "nodeType": "ExpressionStatement", + "src": "62007:92:73" + } + ] + }, + "id": 24241, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61928:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24220, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61940:2:73", + "nodeType": "VariableDeclaration", + "scope": 24241, + "src": "61932:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24219, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61932:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24222, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61958:2:73", + "nodeType": "VariableDeclaration", + "scope": 24241, + "src": "61944:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24221, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61944:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24224, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61967:2:73", + "nodeType": "VariableDeclaration", + "scope": 24241, + "src": "61962:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24223, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61962:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24226, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61979:2:73", + "nodeType": "VariableDeclaration", + "scope": 24241, + "src": "61971:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61971:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61931:51:73" + }, + "returnParameters": { + "id": 24228, + "nodeType": "ParameterList", + "parameters": [], + "src": "61997:0:73" + }, + "scope": 25070, + "src": "61919:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24263, + "nodeType": "Block", + "src": "62193:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c75696e7432353629", + "id": 24255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62243:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_457fe3cf7da0d45ce051e53ef9adc21213d4d7779b5a0fadf99dea432be4beb7", + "typeString": "literal_string \"log(address,string,address,uint256)\"" + }, + "value": "log(address,string,address,uint256)" + }, + { + "id": 24256, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24243, + "src": "62282:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24257, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24245, + "src": "62286:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24258, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24247, + "src": "62290:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24259, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24249, + "src": "62294:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_457fe3cf7da0d45ce051e53ef9adc21213d4d7779b5a0fadf99dea432be4beb7", + "typeString": "literal_string \"log(address,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24253, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62219:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "62223:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62219:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62219:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24252, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62203:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62203:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24262, + "nodeType": "ExpressionStatement", + "src": "62203:95:73" + } + ] + }, + "id": 24264, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62121:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24243, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62133:2:73", + "nodeType": "VariableDeclaration", + "scope": 24264, + "src": "62125:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24242, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62125:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24245, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62151:2:73", + "nodeType": "VariableDeclaration", + "scope": 24264, + "src": "62137:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24244, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62137:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24247, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62163:2:73", + "nodeType": "VariableDeclaration", + "scope": 24264, + "src": "62155:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62155:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24249, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62175:2:73", + "nodeType": "VariableDeclaration", + "scope": 24264, + "src": "62167:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24248, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62167:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62124:54:73" + }, + "returnParameters": { + "id": 24251, + "nodeType": "ParameterList", + "parameters": [], + "src": "62193:0:73" + }, + "scope": 25070, + "src": "62112:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24286, + "nodeType": "Block", + "src": "62398:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c737472696e6729", + "id": 24278, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62448:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + "value": "log(address,string,address,string)" + }, + { + "id": 24279, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24266, + "src": "62486:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24280, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24268, + "src": "62490:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24281, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24270, + "src": "62494:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24282, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24272, + "src": "62498:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24276, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62424:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24277, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "62428:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62424:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62424:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24275, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62408:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62408:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24285, + "nodeType": "ExpressionStatement", + "src": "62408:94:73" + } + ] + }, + "id": 24287, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62320:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24266, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62332:2:73", + "nodeType": "VariableDeclaration", + "scope": 24287, + "src": "62324:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24265, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62324:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24268, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62350:2:73", + "nodeType": "VariableDeclaration", + "scope": 24287, + "src": "62336:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24267, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62336:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24270, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62362:2:73", + "nodeType": "VariableDeclaration", + "scope": 24287, + "src": "62354:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62354:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24272, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62380:2:73", + "nodeType": "VariableDeclaration", + "scope": 24287, + "src": "62366:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24271, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62366:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "62323:60:73" + }, + "returnParameters": { + "id": 24274, + "nodeType": "ParameterList", + "parameters": [], + "src": "62398:0:73" + }, + "scope": 25070, + "src": "62311:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24309, + "nodeType": "Block", + "src": "62593:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c626f6f6c29", + "id": 24301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62643:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + "value": "log(address,string,address,bool)" + }, + { + "id": 24302, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24289, + "src": "62679:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24303, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24291, + "src": "62683:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24304, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24293, + "src": "62687:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24305, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24295, + "src": "62691:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24299, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62619:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "62623:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62619:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62619:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24298, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62603:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62603:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24308, + "nodeType": "ExpressionStatement", + "src": "62603:92:73" + } + ] + }, + "id": 24310, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62524:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24296, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24289, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62536:2:73", + "nodeType": "VariableDeclaration", + "scope": 24310, + "src": "62528:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24288, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62528:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24291, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62554:2:73", + "nodeType": "VariableDeclaration", + "scope": 24310, + "src": "62540:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24290, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62540:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24293, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62566:2:73", + "nodeType": "VariableDeclaration", + "scope": 24310, + "src": "62558:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24292, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62558:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24295, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62575:2:73", + "nodeType": "VariableDeclaration", + "scope": 24310, + "src": "62570:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24294, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62570:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "62527:51:73" + }, + "returnParameters": { + "id": 24297, + "nodeType": "ParameterList", + "parameters": [], + "src": "62593:0:73" + }, + "scope": 25070, + "src": "62515:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24332, + "nodeType": "Block", + "src": "62789:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c6164647265737329", + "id": 24324, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62839:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + "value": "log(address,string,address,address)" + }, + { + "id": 24325, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24312, + "src": "62878:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24326, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24314, + "src": "62882:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24327, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24316, + "src": "62886:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24328, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24318, + "src": "62890:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24322, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62815:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "62819:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62815:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62815:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24321, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62799:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62799:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24331, + "nodeType": "ExpressionStatement", + "src": "62799:95:73" + } + ] + }, + "id": 24333, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62717:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24319, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24312, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62729:2:73", + "nodeType": "VariableDeclaration", + "scope": 24333, + "src": "62721:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24311, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62721:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24314, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62747:2:73", + "nodeType": "VariableDeclaration", + "scope": 24333, + "src": "62733:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24313, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62733:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24316, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62759:2:73", + "nodeType": "VariableDeclaration", + "scope": 24333, + "src": "62751:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62751:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24318, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62771:2:73", + "nodeType": "VariableDeclaration", + "scope": 24333, + "src": "62763:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24317, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62763:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "62720:54:73" + }, + "returnParameters": { + "id": 24320, + "nodeType": "ParameterList", + "parameters": [], + "src": "62789:0:73" + }, + "scope": 25070, + "src": "62708:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24355, + "nodeType": "Block", + "src": "62979:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c75696e7432353629", + "id": 24347, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63029:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_386ff5f4530ea008cf639214e5b8a55077ec58314989bc72a4ee1f3ffe9617a4", + "typeString": "literal_string \"log(address,bool,uint256,uint256)\"" + }, + "value": "log(address,bool,uint256,uint256)" + }, + { + "id": 24348, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24335, + "src": "63066:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24349, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24337, + "src": "63070:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24350, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24339, + "src": "63074:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24351, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24341, + "src": "63078:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_386ff5f4530ea008cf639214e5b8a55077ec58314989bc72a4ee1f3ffe9617a4", + "typeString": "literal_string \"log(address,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24345, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63005:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63009:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63005:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63005:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24344, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "62989:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "62989:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24354, + "nodeType": "ExpressionStatement", + "src": "62989:93:73" + } + ] + }, + "id": 24356, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62916:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24342, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24335, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62928:2:73", + "nodeType": "VariableDeclaration", + "scope": 24356, + "src": "62920:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62920:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24337, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62937:2:73", + "nodeType": "VariableDeclaration", + "scope": 24356, + "src": "62932:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24336, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62932:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24339, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62949:2:73", + "nodeType": "VariableDeclaration", + "scope": 24356, + "src": "62941:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24338, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62941:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24341, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62961:2:73", + "nodeType": "VariableDeclaration", + "scope": 24356, + "src": "62953:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24340, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62953:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62919:45:73" + }, + "returnParameters": { + "id": 24343, + "nodeType": "ParameterList", + "parameters": [], + "src": "62979:0:73" + }, + "scope": 25070, + "src": "62907:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24378, + "nodeType": "Block", + "src": "63173:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c737472696e6729", + "id": 24370, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63223:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0aa6cfad2c268cd387390ada6d4a75b3aa3e38d6511517eb59fcd07a90f9c283", + "typeString": "literal_string \"log(address,bool,uint256,string)\"" + }, + "value": "log(address,bool,uint256,string)" + }, + { + "id": 24371, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24358, + "src": "63259:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24372, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24360, + "src": "63263:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24373, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24362, + "src": "63267:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24374, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24364, + "src": "63271:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0aa6cfad2c268cd387390ada6d4a75b3aa3e38d6511517eb59fcd07a90f9c283", + "typeString": "literal_string \"log(address,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24368, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63199:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63203:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63199:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63199:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24367, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "63183:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63183:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24377, + "nodeType": "ExpressionStatement", + "src": "63183:92:73" + } + ] + }, + "id": 24379, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63104:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24365, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24358, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63116:2:73", + "nodeType": "VariableDeclaration", + "scope": 24379, + "src": "63108:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24357, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63108:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24360, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63125:2:73", + "nodeType": "VariableDeclaration", + "scope": 24379, + "src": "63120:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24359, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63120:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24362, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63137:2:73", + "nodeType": "VariableDeclaration", + "scope": 24379, + "src": "63129:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24361, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63129:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24364, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63155:2:73", + "nodeType": "VariableDeclaration", + "scope": 24379, + "src": "63141:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24363, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63141:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63107:51:73" + }, + "returnParameters": { + "id": 24366, + "nodeType": "ParameterList", + "parameters": [], + "src": "63173:0:73" + }, + "scope": 25070, + "src": "63095:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24401, + "nodeType": "Block", + "src": "63357:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c626f6f6c29", + "id": 24393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63407:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4643e20494ddb98fe78bc587bcecbcc7db255edcee8232992e8be9b00c4713c", + "typeString": "literal_string \"log(address,bool,uint256,bool)\"" + }, + "value": "log(address,bool,uint256,bool)" + }, + { + "id": 24394, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24381, + "src": "63441:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24395, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24383, + "src": "63445:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24396, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24385, + "src": "63449:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24397, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24387, + "src": "63453:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4643e20494ddb98fe78bc587bcecbcc7db255edcee8232992e8be9b00c4713c", + "typeString": "literal_string \"log(address,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24391, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63383:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63387:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63383:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63383:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24390, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "63367:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24399, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63367:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24400, + "nodeType": "ExpressionStatement", + "src": "63367:90:73" + } + ] + }, + "id": 24402, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63297:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24388, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24381, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63309:2:73", + "nodeType": "VariableDeclaration", + "scope": 24402, + "src": "63301:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24380, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63301:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24383, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63318:2:73", + "nodeType": "VariableDeclaration", + "scope": 24402, + "src": "63313:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24382, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63313:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24385, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63330:2:73", + "nodeType": "VariableDeclaration", + "scope": 24402, + "src": "63322:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24384, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63322:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24387, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63339:2:73", + "nodeType": "VariableDeclaration", + "scope": 24402, + "src": "63334:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24386, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63334:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "63300:42:73" + }, + "returnParameters": { + "id": 24389, + "nodeType": "ParameterList", + "parameters": [], + "src": "63357:0:73" + }, + "scope": 25070, + "src": "63288:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24424, + "nodeType": "Block", + "src": "63542:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c6164647265737329", + "id": 24416, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63592:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ccf790a175b1b762ef5bfd3564f0b74c078f15eca08b8ee654a38a96a5ad2aee", + "typeString": "literal_string \"log(address,bool,uint256,address)\"" + }, + "value": "log(address,bool,uint256,address)" + }, + { + "id": 24417, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24404, + "src": "63629:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24418, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24406, + "src": "63633:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24419, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24408, + "src": "63637:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24420, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24410, + "src": "63641:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ccf790a175b1b762ef5bfd3564f0b74c078f15eca08b8ee654a38a96a5ad2aee", + "typeString": "literal_string \"log(address,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24414, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63568:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24415, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63572:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63568:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63568:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24413, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "63552:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63552:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24423, + "nodeType": "ExpressionStatement", + "src": "63552:93:73" + } + ] + }, + "id": 24425, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63479:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24411, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24404, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63491:2:73", + "nodeType": "VariableDeclaration", + "scope": 24425, + "src": "63483:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24403, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63483:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24406, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63500:2:73", + "nodeType": "VariableDeclaration", + "scope": 24425, + "src": "63495:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24405, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63495:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24408, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63512:2:73", + "nodeType": "VariableDeclaration", + "scope": 24425, + "src": "63504:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24407, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63504:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24410, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63524:2:73", + "nodeType": "VariableDeclaration", + "scope": 24425, + "src": "63516:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24409, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63516:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "63482:45:73" + }, + "returnParameters": { + "id": 24412, + "nodeType": "ParameterList", + "parameters": [], + "src": "63542:0:73" + }, + "scope": 25070, + "src": "63470:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24447, + "nodeType": "Block", + "src": "63736:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c75696e7432353629", + "id": 24439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63786:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_80e6a20b48643c1f2494eae694f173a69e42da349d0e193e48fece80e869df69", + "typeString": "literal_string \"log(address,bool,string,uint256)\"" + }, + "value": "log(address,bool,string,uint256)" + }, + { + "id": 24440, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24427, + "src": "63822:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24441, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24429, + "src": "63826:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24442, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24431, + "src": "63830:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24443, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24433, + "src": "63834:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_80e6a20b48643c1f2494eae694f173a69e42da349d0e193e48fece80e869df69", + "typeString": "literal_string \"log(address,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24437, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63762:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63766:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63762:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63762:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24436, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "63746:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63746:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24446, + "nodeType": "ExpressionStatement", + "src": "63746:92:73" + } + ] + }, + "id": 24448, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63667:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24434, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24427, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63679:2:73", + "nodeType": "VariableDeclaration", + "scope": 24448, + "src": "63671:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63671:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24429, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63688:2:73", + "nodeType": "VariableDeclaration", + "scope": 24448, + "src": "63683:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63683:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24431, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63706:2:73", + "nodeType": "VariableDeclaration", + "scope": 24448, + "src": "63692:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24430, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63692:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24433, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63718:2:73", + "nodeType": "VariableDeclaration", + "scope": 24448, + "src": "63710:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63710:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "63670:51:73" + }, + "returnParameters": { + "id": 24435, + "nodeType": "ParameterList", + "parameters": [], + "src": "63736:0:73" + }, + "scope": 25070, + "src": "63658:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24470, + "nodeType": "Block", + "src": "63935:108:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c737472696e6729", + "id": 24462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63985:33:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + "value": "log(address,bool,string,string)" + }, + { + "id": 24463, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24450, + "src": "64020:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24464, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24452, + "src": "64024:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24465, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24454, + "src": "64028:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24466, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24456, + "src": "64032:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24460, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63961:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24461, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "63965:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63961:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63961:74:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24459, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "63945:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "63945:91:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24469, + "nodeType": "ExpressionStatement", + "src": "63945:91:73" + } + ] + }, + "id": 24471, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63860:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24450, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63872:2:73", + "nodeType": "VariableDeclaration", + "scope": 24471, + "src": "63864:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63864:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24452, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63881:2:73", + "nodeType": "VariableDeclaration", + "scope": 24471, + "src": "63876:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24451, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63876:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24454, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63899:2:73", + "nodeType": "VariableDeclaration", + "scope": 24471, + "src": "63885:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24453, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63885:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24456, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63917:2:73", + "nodeType": "VariableDeclaration", + "scope": 24471, + "src": "63903:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24455, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63903:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63863:57:73" + }, + "returnParameters": { + "id": 24458, + "nodeType": "ParameterList", + "parameters": [], + "src": "63935:0:73" + }, + "scope": 25070, + "src": "63851:192:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24493, + "nodeType": "Block", + "src": "64124:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c626f6f6c29", + "id": 24485, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64174:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + "value": "log(address,bool,string,bool)" + }, + { + "id": 24486, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24473, + "src": "64207:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24487, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24475, + "src": "64211:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24488, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24477, + "src": "64215:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24489, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24479, + "src": "64219:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24483, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64150:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24484, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "64154:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64150:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64150:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24482, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "64134:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64134:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24492, + "nodeType": "ExpressionStatement", + "src": "64134:89:73" + } + ] + }, + "id": 24494, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64058:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24480, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24473, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64070:2:73", + "nodeType": "VariableDeclaration", + "scope": 24494, + "src": "64062:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24472, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64062:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24475, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64079:2:73", + "nodeType": "VariableDeclaration", + "scope": 24494, + "src": "64074:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24474, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64074:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24477, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64097:2:73", + "nodeType": "VariableDeclaration", + "scope": 24494, + "src": "64083:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24476, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64083:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24479, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64106:2:73", + "nodeType": "VariableDeclaration", + "scope": 24494, + "src": "64101:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24478, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64101:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64061:48:73" + }, + "returnParameters": { + "id": 24481, + "nodeType": "ParameterList", + "parameters": [], + "src": "64124:0:73" + }, + "scope": 25070, + "src": "64049:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24516, + "nodeType": "Block", + "src": "64314:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c6164647265737329", + "id": 24508, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64364:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + "value": "log(address,bool,string,address)" + }, + { + "id": 24509, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24496, + "src": "64400:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24510, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24498, + "src": "64404:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24511, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24500, + "src": "64408:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24512, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24502, + "src": "64412:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24506, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64340:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "64344:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64340:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64340:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24505, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "64324:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64324:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24515, + "nodeType": "ExpressionStatement", + "src": "64324:92:73" + } + ] + }, + "id": 24517, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64245:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24503, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24496, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64257:2:73", + "nodeType": "VariableDeclaration", + "scope": 24517, + "src": "64249:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24495, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64249:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24498, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64266:2:73", + "nodeType": "VariableDeclaration", + "scope": 24517, + "src": "64261:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24497, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64261:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24500, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64284:2:73", + "nodeType": "VariableDeclaration", + "scope": 24517, + "src": "64270:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24499, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64270:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24502, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64296:2:73", + "nodeType": "VariableDeclaration", + "scope": 24517, + "src": "64288:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24501, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64288:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64248:51:73" + }, + "returnParameters": { + "id": 24504, + "nodeType": "ParameterList", + "parameters": [], + "src": "64314:0:73" + }, + "scope": 25070, + "src": "64236:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24539, + "nodeType": "Block", + "src": "64498:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 24531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64548:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c4e5de62881fec144fb423112f08d23c6aca116363a7b195024519470acf22e", + "typeString": "literal_string \"log(address,bool,bool,uint256)\"" + }, + "value": "log(address,bool,bool,uint256)" + }, + { + "id": 24532, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24519, + "src": "64582:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24533, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24521, + "src": "64586:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24534, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24523, + "src": "64590:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24535, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24525, + "src": "64594:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c4e5de62881fec144fb423112f08d23c6aca116363a7b195024519470acf22e", + "typeString": "literal_string \"log(address,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24529, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64524:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "64528:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64524:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64524:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24528, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "64508:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64508:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24538, + "nodeType": "ExpressionStatement", + "src": "64508:90:73" + } + ] + }, + "id": 24540, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64438:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24526, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24519, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64450:2:73", + "nodeType": "VariableDeclaration", + "scope": 24540, + "src": "64442:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24518, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64442:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24521, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64459:2:73", + "nodeType": "VariableDeclaration", + "scope": 24540, + "src": "64454:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24520, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64454:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24523, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64468:2:73", + "nodeType": "VariableDeclaration", + "scope": 24540, + "src": "64463:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24522, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64463:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24525, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64480:2:73", + "nodeType": "VariableDeclaration", + "scope": 24540, + "src": "64472:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24524, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "64472:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "64441:42:73" + }, + "returnParameters": { + "id": 24527, + "nodeType": "ParameterList", + "parameters": [], + "src": "64498:0:73" + }, + "scope": 25070, + "src": "64429:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24562, + "nodeType": "Block", + "src": "64686:106:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c737472696e6729", + "id": 24554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64736:31:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + "value": "log(address,bool,bool,string)" + }, + { + "id": 24555, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24542, + "src": "64769:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24556, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24544, + "src": "64773:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24557, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24546, + "src": "64777:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24558, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24548, + "src": "64781:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24552, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64712:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "64716:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64712:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64712:72:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24551, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "64696:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64696:89:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24561, + "nodeType": "ExpressionStatement", + "src": "64696:89:73" + } + ] + }, + "id": 24563, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64620:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24549, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24542, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64632:2:73", + "nodeType": "VariableDeclaration", + "scope": 24563, + "src": "64624:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24541, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64624:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24544, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64641:2:73", + "nodeType": "VariableDeclaration", + "scope": 24563, + "src": "64636:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24543, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64636:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24546, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64650:2:73", + "nodeType": "VariableDeclaration", + "scope": 24563, + "src": "64645:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24545, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64645:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24548, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64668:2:73", + "nodeType": "VariableDeclaration", + "scope": 24563, + "src": "64654:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24547, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64654:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "64623:48:73" + }, + "returnParameters": { + "id": 24550, + "nodeType": "ParameterList", + "parameters": [], + "src": "64686:0:73" + }, + "scope": 25070, + "src": "64611:181:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24585, + "nodeType": "Block", + "src": "64864:104:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 24577, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64914:29:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + "value": "log(address,bool,bool,bool)" + }, + { + "id": 24578, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24565, + "src": "64945:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24579, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24567, + "src": "64949:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24580, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24569, + "src": "64953:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24581, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24571, + "src": "64957:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24575, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64890:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "64894:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64890:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64890:70:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24574, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "64874:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "64874:87:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24584, + "nodeType": "ExpressionStatement", + "src": "64874:87:73" + } + ] + }, + "id": 24586, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64807:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24572, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24565, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64819:2:73", + "nodeType": "VariableDeclaration", + "scope": 24586, + "src": "64811:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64811:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24567, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64828:2:73", + "nodeType": "VariableDeclaration", + "scope": 24586, + "src": "64823:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24566, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64823:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24569, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64837:2:73", + "nodeType": "VariableDeclaration", + "scope": 24586, + "src": "64832:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24568, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64832:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24571, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64846:2:73", + "nodeType": "VariableDeclaration", + "scope": 24586, + "src": "64841:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24570, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64841:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64810:39:73" + }, + "returnParameters": { + "id": 24573, + "nodeType": "ParameterList", + "parameters": [], + "src": "64864:0:73" + }, + "scope": 25070, + "src": "64798:170:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24608, + "nodeType": "Block", + "src": "65043:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c6164647265737329", + "id": 24600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65093:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + "value": "log(address,bool,bool,address)" + }, + { + "id": 24601, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24588, + "src": "65127:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24602, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24590, + "src": "65131:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24603, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24592, + "src": "65135:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24604, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24594, + "src": "65139:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24598, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65069:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "65073:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65069:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65069:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24597, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65053:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65053:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24607, + "nodeType": "ExpressionStatement", + "src": "65053:90:73" + } + ] + }, + "id": 24609, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64983:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24595, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24588, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64995:2:73", + "nodeType": "VariableDeclaration", + "scope": 24609, + "src": "64987:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64987:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24590, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65004:2:73", + "nodeType": "VariableDeclaration", + "scope": 24609, + "src": "64999:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24589, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64999:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24592, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65013:2:73", + "nodeType": "VariableDeclaration", + "scope": 24609, + "src": "65008:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24591, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65008:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24594, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65025:2:73", + "nodeType": "VariableDeclaration", + "scope": 24609, + "src": "65017:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24593, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65017:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64986:42:73" + }, + "returnParameters": { + "id": 24596, + "nodeType": "ParameterList", + "parameters": [], + "src": "65043:0:73" + }, + "scope": 25070, + "src": "64974:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24631, + "nodeType": "Block", + "src": "65228:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c75696e7432353629", + "id": 24623, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65278:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a75c59de36827f2596ade7bd79f668ae219518c12b79ebf06071586765c3e039", + "typeString": "literal_string \"log(address,bool,address,uint256)\"" + }, + "value": "log(address,bool,address,uint256)" + }, + { + "id": 24624, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24611, + "src": "65315:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24625, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24613, + "src": "65319:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24626, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24615, + "src": "65323:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24627, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24617, + "src": "65327:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a75c59de36827f2596ade7bd79f668ae219518c12b79ebf06071586765c3e039", + "typeString": "literal_string \"log(address,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24621, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65254:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "65258:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65254:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65254:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24620, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65238:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24629, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65238:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24630, + "nodeType": "ExpressionStatement", + "src": "65238:93:73" + } + ] + }, + "id": 24632, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65165:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24618, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24611, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65177:2:73", + "nodeType": "VariableDeclaration", + "scope": 24632, + "src": "65169:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24610, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65169:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24613, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65186:2:73", + "nodeType": "VariableDeclaration", + "scope": 24632, + "src": "65181:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24612, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65181:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24615, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65198:2:73", + "nodeType": "VariableDeclaration", + "scope": 24632, + "src": "65190:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24614, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65190:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24617, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65210:2:73", + "nodeType": "VariableDeclaration", + "scope": 24632, + "src": "65202:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24616, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65202:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65168:45:73" + }, + "returnParameters": { + "id": 24619, + "nodeType": "ParameterList", + "parameters": [], + "src": "65228:0:73" + }, + "scope": 25070, + "src": "65156:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24654, + "nodeType": "Block", + "src": "65422:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c737472696e6729", + "id": 24646, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65472:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + "value": "log(address,bool,address,string)" + }, + { + "id": 24647, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24634, + "src": "65508:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24648, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24636, + "src": "65512:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24649, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24638, + "src": "65516:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24650, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24640, + "src": "65520:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24644, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65448:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "65452:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65448:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65448:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24643, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65432:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65432:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24653, + "nodeType": "ExpressionStatement", + "src": "65432:92:73" + } + ] + }, + "id": 24655, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65353:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24641, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24634, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65365:2:73", + "nodeType": "VariableDeclaration", + "scope": 24655, + "src": "65357:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24633, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65357:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24636, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65374:2:73", + "nodeType": "VariableDeclaration", + "scope": 24655, + "src": "65369:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24635, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65369:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24638, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65386:2:73", + "nodeType": "VariableDeclaration", + "scope": 24655, + "src": "65378:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24637, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65378:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24640, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65404:2:73", + "nodeType": "VariableDeclaration", + "scope": 24655, + "src": "65390:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24639, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "65390:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "65356:51:73" + }, + "returnParameters": { + "id": 24642, + "nodeType": "ParameterList", + "parameters": [], + "src": "65422:0:73" + }, + "scope": 25070, + "src": "65344:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24677, + "nodeType": "Block", + "src": "65606:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c626f6f6c29", + "id": 24669, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65656:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + "value": "log(address,bool,address,bool)" + }, + { + "id": 24670, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24657, + "src": "65690:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24671, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24659, + "src": "65694:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24672, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24661, + "src": "65698:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24673, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24663, + "src": "65702:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24667, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65632:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24668, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "65636:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65632:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65632:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24666, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65616:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65616:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24676, + "nodeType": "ExpressionStatement", + "src": "65616:90:73" + } + ] + }, + "id": 24678, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65546:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24664, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24657, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65558:2:73", + "nodeType": "VariableDeclaration", + "scope": 24678, + "src": "65550:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24656, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65550:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24659, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65567:2:73", + "nodeType": "VariableDeclaration", + "scope": 24678, + "src": "65562:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24658, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65562:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24661, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65579:2:73", + "nodeType": "VariableDeclaration", + "scope": 24678, + "src": "65571:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24660, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65571:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24663, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65588:2:73", + "nodeType": "VariableDeclaration", + "scope": 24678, + "src": "65583:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24662, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65583:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "65549:42:73" + }, + "returnParameters": { + "id": 24665, + "nodeType": "ParameterList", + "parameters": [], + "src": "65606:0:73" + }, + "scope": 25070, + "src": "65537:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24700, + "nodeType": "Block", + "src": "65791:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c6164647265737329", + "id": 24692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65841:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + "value": "log(address,bool,address,address)" + }, + { + "id": 24693, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24680, + "src": "65878:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24694, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24682, + "src": "65882:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24695, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24684, + "src": "65886:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24696, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24686, + "src": "65890:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24690, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65817:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "65821:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65817:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65817:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24689, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65801:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65801:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24699, + "nodeType": "ExpressionStatement", + "src": "65801:93:73" + } + ] + }, + "id": 24701, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65728:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24680, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65740:2:73", + "nodeType": "VariableDeclaration", + "scope": 24701, + "src": "65732:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24679, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65732:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24682, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65749:2:73", + "nodeType": "VariableDeclaration", + "scope": 24701, + "src": "65744:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24681, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65744:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24684, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65761:2:73", + "nodeType": "VariableDeclaration", + "scope": 24701, + "src": "65753:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24683, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65753:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24686, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65773:2:73", + "nodeType": "VariableDeclaration", + "scope": 24701, + "src": "65765:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24685, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65765:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "65731:45:73" + }, + "returnParameters": { + "id": 24688, + "nodeType": "ParameterList", + "parameters": [], + "src": "65791:0:73" + }, + "scope": 25070, + "src": "65719:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24723, + "nodeType": "Block", + "src": "65982:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c75696e7432353629", + "id": 24715, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66032:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_be55348107f27daf63b48e87ab23840f2cbf20bdfa1dd4b92b4c2b337967fa25", + "typeString": "literal_string \"log(address,address,uint256,uint256)\"" + }, + "value": "log(address,address,uint256,uint256)" + }, + { + "id": 24716, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24703, + "src": "66072:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24717, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24705, + "src": "66076:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24718, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24707, + "src": "66080:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24719, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24709, + "src": "66084:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_be55348107f27daf63b48e87ab23840f2cbf20bdfa1dd4b92b4c2b337967fa25", + "typeString": "literal_string \"log(address,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24713, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66008:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66012:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66008:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66008:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24712, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "65992:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "65992:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24722, + "nodeType": "ExpressionStatement", + "src": "65992:96:73" + } + ] + }, + "id": 24724, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65916:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24710, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24703, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65928:2:73", + "nodeType": "VariableDeclaration", + "scope": 24724, + "src": "65920:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24702, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65920:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24705, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65940:2:73", + "nodeType": "VariableDeclaration", + "scope": 24724, + "src": "65932:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24704, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65932:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24707, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65952:2:73", + "nodeType": "VariableDeclaration", + "scope": 24724, + "src": "65944:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24706, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65944:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24709, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65964:2:73", + "nodeType": "VariableDeclaration", + "scope": 24724, + "src": "65956:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24708, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65956:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65919:48:73" + }, + "returnParameters": { + "id": 24711, + "nodeType": "ParameterList", + "parameters": [], + "src": "65982:0:73" + }, + "scope": 25070, + "src": "65907:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24746, + "nodeType": "Block", + "src": "66182:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c737472696e6729", + "id": 24738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66232:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fdb4f99053c71d9229026b69fabc5567b4324649a228ca0935bada4975f57343", + "typeString": "literal_string \"log(address,address,uint256,string)\"" + }, + "value": "log(address,address,uint256,string)" + }, + { + "id": 24739, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24726, + "src": "66271:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24740, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24728, + "src": "66275:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24741, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24730, + "src": "66279:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24742, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24732, + "src": "66283:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fdb4f99053c71d9229026b69fabc5567b4324649a228ca0935bada4975f57343", + "typeString": "literal_string \"log(address,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24736, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66208:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24737, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66212:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66208:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66208:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24735, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "66192:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66192:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24745, + "nodeType": "ExpressionStatement", + "src": "66192:95:73" + } + ] + }, + "id": 24747, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66110:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24733, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24726, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66122:2:73", + "nodeType": "VariableDeclaration", + "scope": 24747, + "src": "66114:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24725, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66114:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24728, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66134:2:73", + "nodeType": "VariableDeclaration", + "scope": 24747, + "src": "66126:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24727, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66126:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24730, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66146:2:73", + "nodeType": "VariableDeclaration", + "scope": 24747, + "src": "66138:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24729, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66138:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24732, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66164:2:73", + "nodeType": "VariableDeclaration", + "scope": 24747, + "src": "66150:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24731, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66150:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "66113:54:73" + }, + "returnParameters": { + "id": 24734, + "nodeType": "ParameterList", + "parameters": [], + "src": "66182:0:73" + }, + "scope": 25070, + "src": "66101:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24769, + "nodeType": "Block", + "src": "66372:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c626f6f6c29", + "id": 24761, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66422:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9b4254e23753cb4c7d637e38638d109b03aeabf8705961d18d943c5bfa6672cd", + "typeString": "literal_string \"log(address,address,uint256,bool)\"" + }, + "value": "log(address,address,uint256,bool)" + }, + { + "id": 24762, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24749, + "src": "66459:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24763, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24751, + "src": "66463:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24764, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24753, + "src": "66467:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24765, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24755, + "src": "66471:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9b4254e23753cb4c7d637e38638d109b03aeabf8705961d18d943c5bfa6672cd", + "typeString": "literal_string \"log(address,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24759, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66398:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24760, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66402:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66398:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66398:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24758, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "66382:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66382:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24768, + "nodeType": "ExpressionStatement", + "src": "66382:93:73" + } + ] + }, + "id": 24770, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66309:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24756, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24749, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66321:2:73", + "nodeType": "VariableDeclaration", + "scope": 24770, + "src": "66313:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24748, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66313:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24751, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66333:2:73", + "nodeType": "VariableDeclaration", + "scope": 24770, + "src": "66325:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24750, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66325:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24753, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66345:2:73", + "nodeType": "VariableDeclaration", + "scope": 24770, + "src": "66337:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24752, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66337:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24755, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66354:2:73", + "nodeType": "VariableDeclaration", + "scope": 24770, + "src": "66349:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24754, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "66349:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "66312:45:73" + }, + "returnParameters": { + "id": 24757, + "nodeType": "ParameterList", + "parameters": [], + "src": "66372:0:73" + }, + "scope": 25070, + "src": "66300:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24792, + "nodeType": "Block", + "src": "66563:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c6164647265737329", + "id": 24784, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66613:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8da6def55c582f2ce59d561e896a66e570478eda5169747a6ea3575cfa60d28b", + "typeString": "literal_string \"log(address,address,uint256,address)\"" + }, + "value": "log(address,address,uint256,address)" + }, + { + "id": 24785, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24772, + "src": "66653:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24786, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24774, + "src": "66657:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24787, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24776, + "src": "66661:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 24788, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24778, + "src": "66665:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8da6def55c582f2ce59d561e896a66e570478eda5169747a6ea3575cfa60d28b", + "typeString": "literal_string \"log(address,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24782, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66589:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66593:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66589:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66589:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24781, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "66573:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66573:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24791, + "nodeType": "ExpressionStatement", + "src": "66573:96:73" + } + ] + }, + "id": 24793, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66497:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24779, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24772, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66509:2:73", + "nodeType": "VariableDeclaration", + "scope": 24793, + "src": "66501:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24771, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66501:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24774, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66521:2:73", + "nodeType": "VariableDeclaration", + "scope": 24793, + "src": "66513:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24773, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66513:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24776, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66533:2:73", + "nodeType": "VariableDeclaration", + "scope": 24793, + "src": "66525:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24775, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66525:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24778, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66545:2:73", + "nodeType": "VariableDeclaration", + "scope": 24793, + "src": "66537:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24777, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66537:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "66500:48:73" + }, + "returnParameters": { + "id": 24780, + "nodeType": "ParameterList", + "parameters": [], + "src": "66563:0:73" + }, + "scope": 25070, + "src": "66488:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24815, + "nodeType": "Block", + "src": "66763:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c75696e7432353629", + "id": 24807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66813:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef1cefe7e092dcc5b0ed6bc72a78756f9c352fc002139efb9b181c734d5d45d5", + "typeString": "literal_string \"log(address,address,string,uint256)\"" + }, + "value": "log(address,address,string,uint256)" + }, + { + "id": 24808, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24795, + "src": "66852:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24809, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24797, + "src": "66856:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24810, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24799, + "src": "66860:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24811, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24801, + "src": "66864:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef1cefe7e092dcc5b0ed6bc72a78756f9c352fc002139efb9b181c734d5d45d5", + "typeString": "literal_string \"log(address,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24805, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66789:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66793:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66789:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66789:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24804, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "66773:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24813, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66773:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24814, + "nodeType": "ExpressionStatement", + "src": "66773:95:73" + } + ] + }, + "id": 24816, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66691:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24802, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24795, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66703:2:73", + "nodeType": "VariableDeclaration", + "scope": 24816, + "src": "66695:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24794, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66695:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24797, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66715:2:73", + "nodeType": "VariableDeclaration", + "scope": 24816, + "src": "66707:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24796, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66707:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24799, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66733:2:73", + "nodeType": "VariableDeclaration", + "scope": 24816, + "src": "66719:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24798, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66719:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24801, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66745:2:73", + "nodeType": "VariableDeclaration", + "scope": 24816, + "src": "66737:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24800, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66737:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "66694:54:73" + }, + "returnParameters": { + "id": 24803, + "nodeType": "ParameterList", + "parameters": [], + "src": "66763:0:73" + }, + "scope": 25070, + "src": "66682:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24838, + "nodeType": "Block", + "src": "66968:111:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c737472696e6729", + "id": 24830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67018:36:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + "value": "log(address,address,string,string)" + }, + { + "id": 24831, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24818, + "src": "67056:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24832, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24820, + "src": "67060:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24833, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24822, + "src": "67064:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24834, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24824, + "src": "67068:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24828, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66994:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "66998:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66994:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66994:77:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24827, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "66978:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24836, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "66978:94:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24837, + "nodeType": "ExpressionStatement", + "src": "66978:94:73" + } + ] + }, + "id": 24839, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66890:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24825, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24818, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66902:2:73", + "nodeType": "VariableDeclaration", + "scope": 24839, + "src": "66894:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24817, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66894:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24820, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66914:2:73", + "nodeType": "VariableDeclaration", + "scope": 24839, + "src": "66906:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24819, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66906:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24822, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66932:2:73", + "nodeType": "VariableDeclaration", + "scope": 24839, + "src": "66918:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24821, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66918:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24824, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66950:2:73", + "nodeType": "VariableDeclaration", + "scope": 24839, + "src": "66936:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24823, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66936:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "66893:60:73" + }, + "returnParameters": { + "id": 24826, + "nodeType": "ParameterList", + "parameters": [], + "src": "66968:0:73" + }, + "scope": 25070, + "src": "66881:198:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24861, + "nodeType": "Block", + "src": "67163:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c626f6f6c29", + "id": 24853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67213:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + "value": "log(address,address,string,bool)" + }, + { + "id": 24854, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24841, + "src": "67249:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24855, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24843, + "src": "67253:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24856, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24845, + "src": "67257:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24857, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24847, + "src": "67261:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24851, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67189:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "67193:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67189:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67189:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24850, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "67173:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67173:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24860, + "nodeType": "ExpressionStatement", + "src": "67173:92:73" + } + ] + }, + "id": 24862, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67094:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24848, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24841, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67106:2:73", + "nodeType": "VariableDeclaration", + "scope": 24862, + "src": "67098:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24840, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67098:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24843, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67118:2:73", + "nodeType": "VariableDeclaration", + "scope": 24862, + "src": "67110:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67110:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24845, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67136:2:73", + "nodeType": "VariableDeclaration", + "scope": 24862, + "src": "67122:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24844, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67122:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24847, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67145:2:73", + "nodeType": "VariableDeclaration", + "scope": 24862, + "src": "67140:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24846, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67140:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "67097:51:73" + }, + "returnParameters": { + "id": 24849, + "nodeType": "ParameterList", + "parameters": [], + "src": "67163:0:73" + }, + "scope": 25070, + "src": "67085:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24884, + "nodeType": "Block", + "src": "67359:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c6164647265737329", + "id": 24876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67409:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + "value": "log(address,address,string,address)" + }, + { + "id": 24877, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24864, + "src": "67448:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24878, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24866, + "src": "67452:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24879, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24868, + "src": "67456:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 24880, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24870, + "src": "67460:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24874, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67385:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "67389:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67385:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67385:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24873, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "67369:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67369:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24883, + "nodeType": "ExpressionStatement", + "src": "67369:95:73" + } + ] + }, + "id": 24885, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67287:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24864, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67299:2:73", + "nodeType": "VariableDeclaration", + "scope": 24885, + "src": "67291:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24863, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67291:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24866, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67311:2:73", + "nodeType": "VariableDeclaration", + "scope": 24885, + "src": "67303:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24865, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67303:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24868, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67329:2:73", + "nodeType": "VariableDeclaration", + "scope": 24885, + "src": "67315:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24867, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67315:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24870, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67341:2:73", + "nodeType": "VariableDeclaration", + "scope": 24885, + "src": "67333:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24869, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67333:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "67290:54:73" + }, + "returnParameters": { + "id": 24872, + "nodeType": "ParameterList", + "parameters": [], + "src": "67359:0:73" + }, + "scope": 25070, + "src": "67278:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24907, + "nodeType": "Block", + "src": "67549:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c75696e7432353629", + "id": 24899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67599:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3971e78c267e3c99a8d143ab93f96daa498ed164b55c7e4c2a5439320fbc2671", + "typeString": "literal_string \"log(address,address,bool,uint256)\"" + }, + "value": "log(address,address,bool,uint256)" + }, + { + "id": 24900, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24887, + "src": "67636:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24901, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24889, + "src": "67640:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24902, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24891, + "src": "67644:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24903, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24893, + "src": "67648:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3971e78c267e3c99a8d143ab93f96daa498ed164b55c7e4c2a5439320fbc2671", + "typeString": "literal_string \"log(address,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24897, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67575:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "67579:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67575:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67575:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24896, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "67559:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67559:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24906, + "nodeType": "ExpressionStatement", + "src": "67559:93:73" + } + ] + }, + "id": 24908, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67486:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24894, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24887, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67498:2:73", + "nodeType": "VariableDeclaration", + "scope": 24908, + "src": "67490:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24886, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67490:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24889, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67510:2:73", + "nodeType": "VariableDeclaration", + "scope": 24908, + "src": "67502:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24888, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67502:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24891, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67519:2:73", + "nodeType": "VariableDeclaration", + "scope": 24908, + "src": "67514:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24890, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67514:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24893, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67531:2:73", + "nodeType": "VariableDeclaration", + "scope": 24908, + "src": "67523:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24892, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "67523:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "67489:45:73" + }, + "returnParameters": { + "id": 24895, + "nodeType": "ParameterList", + "parameters": [], + "src": "67549:0:73" + }, + "scope": 25070, + "src": "67477:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24930, + "nodeType": "Block", + "src": "67743:109:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c737472696e6729", + "id": 24922, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67793:34:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + "value": "log(address,address,bool,string)" + }, + { + "id": 24923, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24910, + "src": "67829:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24924, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24912, + "src": "67833:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24925, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24914, + "src": "67837:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24926, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24916, + "src": "67841:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 24920, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67769:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24921, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "67773:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67769:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67769:75:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24919, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "67753:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67753:92:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24929, + "nodeType": "ExpressionStatement", + "src": "67753:92:73" + } + ] + }, + "id": 24931, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67674:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24917, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24910, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67686:2:73", + "nodeType": "VariableDeclaration", + "scope": 24931, + "src": "67678:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24909, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67678:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24912, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67698:2:73", + "nodeType": "VariableDeclaration", + "scope": 24931, + "src": "67690:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24911, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67690:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24914, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67707:2:73", + "nodeType": "VariableDeclaration", + "scope": 24931, + "src": "67702:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24913, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67702:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24916, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67725:2:73", + "nodeType": "VariableDeclaration", + "scope": 24931, + "src": "67711:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 24915, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67711:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "67677:51:73" + }, + "returnParameters": { + "id": 24918, + "nodeType": "ParameterList", + "parameters": [], + "src": "67743:0:73" + }, + "scope": 25070, + "src": "67665:187:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24953, + "nodeType": "Block", + "src": "67927:107:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c626f6f6c29", + "id": 24945, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67977:32:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + "value": "log(address,address,bool,bool)" + }, + { + "id": 24946, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24933, + "src": "68011:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24947, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24935, + "src": "68015:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24948, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24937, + "src": "68019:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24949, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24939, + "src": "68023:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 24943, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67953:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "67957:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67953:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67953:73:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24942, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "67937:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "67937:90:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24952, + "nodeType": "ExpressionStatement", + "src": "67937:90:73" + } + ] + }, + "id": 24954, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67867:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24933, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67879:2:73", + "nodeType": "VariableDeclaration", + "scope": 24954, + "src": "67871:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24932, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67871:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24935, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67891:2:73", + "nodeType": "VariableDeclaration", + "scope": 24954, + "src": "67883:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24934, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67883:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24937, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67900:2:73", + "nodeType": "VariableDeclaration", + "scope": 24954, + "src": "67895:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24936, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67895:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24939, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67909:2:73", + "nodeType": "VariableDeclaration", + "scope": 24954, + "src": "67904:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24938, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67904:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "67870:42:73" + }, + "returnParameters": { + "id": 24941, + "nodeType": "ParameterList", + "parameters": [], + "src": "67927:0:73" + }, + "scope": 25070, + "src": "67858:176:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24976, + "nodeType": "Block", + "src": "68112:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c6164647265737329", + "id": 24968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68162:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + "value": "log(address,address,bool,address)" + }, + { + "id": 24969, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24956, + "src": "68199:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24970, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24958, + "src": "68203:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24971, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24960, + "src": "68207:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 24972, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24962, + "src": "68211:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 24966, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68138:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "68142:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68138:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68138:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24965, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "68122:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68122:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24975, + "nodeType": "ExpressionStatement", + "src": "68122:93:73" + } + ] + }, + "id": 24977, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68049:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24963, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24956, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68061:2:73", + "nodeType": "VariableDeclaration", + "scope": 24977, + "src": "68053:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24955, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68053:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24958, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68073:2:73", + "nodeType": "VariableDeclaration", + "scope": 24977, + "src": "68065:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24957, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68065:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24960, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68082:2:73", + "nodeType": "VariableDeclaration", + "scope": 24977, + "src": "68077:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24959, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "68077:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24962, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68094:2:73", + "nodeType": "VariableDeclaration", + "scope": 24977, + "src": "68086:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24961, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68086:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "68052:45:73" + }, + "returnParameters": { + "id": 24964, + "nodeType": "ParameterList", + "parameters": [], + "src": "68112:0:73" + }, + "scope": 25070, + "src": "68040:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 24999, + "nodeType": "Block", + "src": "68303:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c75696e7432353629", + "id": 24991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68353:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94250d77556167cb7a7fd3eb9433101f8af8848163edfced0c46147ba10a2577", + "typeString": "literal_string \"log(address,address,address,uint256)\"" + }, + "value": "log(address,address,address,uint256)" + }, + { + "id": 24992, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24979, + "src": "68393:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24993, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24981, + "src": "68397:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24994, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24983, + "src": "68401:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 24995, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24985, + "src": "68405:2:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94250d77556167cb7a7fd3eb9433101f8af8848163edfced0c46147ba10a2577", + "typeString": "literal_string \"log(address,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 24989, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68329:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 24990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "68333:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68329:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 24996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68329:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 24988, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "68313:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 24997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68313:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 24998, + "nodeType": "ExpressionStatement", + "src": "68313:96:73" + } + ] + }, + "id": 25000, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68237:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 24986, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24979, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68249:2:73", + "nodeType": "VariableDeclaration", + "scope": 25000, + "src": "68241:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24978, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68241:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24981, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68261:2:73", + "nodeType": "VariableDeclaration", + "scope": 25000, + "src": "68253:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24980, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68253:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24983, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68273:2:73", + "nodeType": "VariableDeclaration", + "scope": 25000, + "src": "68265:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24982, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68265:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 24985, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68285:2:73", + "nodeType": "VariableDeclaration", + "scope": 25000, + "src": "68277:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24984, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "68277:7:73", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "68240:48:73" + }, + "returnParameters": { + "id": 24987, + "nodeType": "ParameterList", + "parameters": [], + "src": "68303:0:73" + }, + "scope": 25070, + "src": "68228:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 25022, + "nodeType": "Block", + "src": "68503:112:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c737472696e6729", + "id": 25014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68553:37:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + "value": "log(address,address,address,string)" + }, + { + "id": 25015, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25002, + "src": "68592:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25016, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25004, + "src": "68596:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25017, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25006, + "src": "68600:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25018, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25008, + "src": "68604:2:73", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 25012, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68529:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 25013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "68533:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68529:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 25019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68529:78:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 25011, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "68513:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 25020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68513:95:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25021, + "nodeType": "ExpressionStatement", + "src": "68513:95:73" + } + ] + }, + "id": 25023, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68431:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25009, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25002, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68443:2:73", + "nodeType": "VariableDeclaration", + "scope": 25023, + "src": "68435:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25001, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68435:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25004, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68455:2:73", + "nodeType": "VariableDeclaration", + "scope": 25023, + "src": "68447:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25003, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68447:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25006, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68467:2:73", + "nodeType": "VariableDeclaration", + "scope": 25023, + "src": "68459:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25005, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68459:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25008, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68485:2:73", + "nodeType": "VariableDeclaration", + "scope": 25023, + "src": "68471:16:73", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 25007, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "68471:6:73", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "68434:54:73" + }, + "returnParameters": { + "id": 25010, + "nodeType": "ParameterList", + "parameters": [], + "src": "68503:0:73" + }, + "scope": 25070, + "src": "68422:193:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 25045, + "nodeType": "Block", + "src": "68693:110:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c626f6f6c29", + "id": 25037, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68743:35:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + "value": "log(address,address,address,bool)" + }, + { + "id": 25038, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25025, + "src": "68780:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25039, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25027, + "src": "68784:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25040, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25029, + "src": "68788:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25041, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25031, + "src": "68792:2:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 25035, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68719:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 25036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "68723:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68719:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 25042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68719:76:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 25034, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "68703:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 25043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68703:93:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25044, + "nodeType": "ExpressionStatement", + "src": "68703:93:73" + } + ] + }, + "id": 25046, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68630:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25032, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25025, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68642:2:73", + "nodeType": "VariableDeclaration", + "scope": 25046, + "src": "68634:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25024, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68634:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25027, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68654:2:73", + "nodeType": "VariableDeclaration", + "scope": 25046, + "src": "68646:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25026, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68646:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25029, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68666:2:73", + "nodeType": "VariableDeclaration", + "scope": 25046, + "src": "68658:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25028, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68658:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25031, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68675:2:73", + "nodeType": "VariableDeclaration", + "scope": 25046, + "src": "68670:7:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 25030, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "68670:4:73", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "68633:45:73" + }, + "returnParameters": { + "id": 25033, + "nodeType": "ParameterList", + "parameters": [], + "src": "68693:0:73" + }, + "scope": 25070, + "src": "68621:182:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 25068, + "nodeType": "Block", + "src": "68884:113:73", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c6164647265737329", + "id": 25060, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68934:38:73", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + "value": "log(address,address,address,address)" + }, + { + "id": 25061, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25048, + "src": "68974:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25062, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25050, + "src": "68978:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25063, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25052, + "src": "68982:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 25064, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25054, + "src": "68986:2:73", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 25058, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68910:3:73", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 25059, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "68914:19:73", + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68910:23:73", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 25065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68910:79:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 25057, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17030, + "src": "68894:15:73", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) pure" + } + }, + "id": 25066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "68894:96:73", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25067, + "nodeType": "ExpressionStatement", + "src": "68894:96:73" + } + ] + }, + "id": 25069, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68818:3:73", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25055, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25048, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68830:2:73", + "nodeType": "VariableDeclaration", + "scope": 25069, + "src": "68822:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25047, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68822:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25050, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68842:2:73", + "nodeType": "VariableDeclaration", + "scope": 25069, + "src": "68834:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25049, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68834:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25052, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68854:2:73", + "nodeType": "VariableDeclaration", + "scope": 25069, + "src": "68846:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25051, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68846:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25054, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68866:2:73", + "nodeType": "VariableDeclaration", + "scope": 25069, + "src": "68858:10:73", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25053, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68858:7:73", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "68821:48:73" + }, + "returnParameters": { + "id": 25056, + "nodeType": "ParameterList", + "parameters": [], + "src": "68884:0:73" + }, + "scope": 25070, + "src": "68809:188:73", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 25071, + "src": "66:68934:73", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "32:68969:73" + }, + "id": 73 + } + }, + "contracts": { + "@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol": { + "EVMFetchTarget": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "actual", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expected", + "type": "uint256" + } + ], + "name": "ResponseLengthMismatch", + "type": "error" + }, + { + "inputs": [], + "name": "getAcceptedL2BlockRangeLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "response", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extradata", + "type": "bytes" + } + ], + "name": "getStorageSlotsCallback", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "getAcceptedL2BlockRangeLength()": "6d74e86e", + "getStorageSlotsCallback(bytes,bytes)": "5bdaa916" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"actual\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"}],\"name\":\"ResponseLengthMismatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"getAcceptedL2BlockRangeLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"response\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"extradata\",\"type\":\"bytes\"}],\"name\":\"getStorageSlotsCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Callback implementation for users of `EVMFetcher`. If you use `EVMFetcher`, your contract must inherit from this contract in order to handle callbacks correctly.\",\"kind\":\"dev\",\"methods\":{\"getAcceptedL2BlockRangeLength()\":{\"details\":\"The child contract has to return an accepted L2 block range used by the verifier to verify that the block number verified is in the accepted block range.\"},\"getStorageSlotsCallback(bytes,bytes)\":{\"details\":\"Internal callback function invoked by CCIP-Read in response to a `getStorageSlots` request.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\":\"EVMFetchTarget\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\":{\"keccak256\":\"0x16343bb690c36a6c1d41922b114319505dc2c6b86348b9abc06c10be79bfea9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2a2e001f6fec0aa4927b636aace4998b961c9a9eec8840f3eddcdeb9b9d72632\",\"dweb:/ipfs/QmeYRrJrBY1rpHQzbdLfG45wFeeLgFUpTAcPAf3PkVVEAB\"]},\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/EVMFetcher.sol": { + "EVMFetcher": { + "abi": [ + { + "inputs": [], + "name": "CommandTooLong", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "InvalidReference", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string[]", + "name": "urls", + "type": "string[]" + }, + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "callbackFunction", + "type": "bytes4" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "OffchainLookup", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "TooManyCommands", + "type": "error" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122071244fd5c5d2fe392c774bee9e111d3a3ae7d1ae936780a0f137f2f43612dc0364736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH18 0x244FD5C5D2FE392C774BEE9E111D3A3AE7D1 0xAE SWAP4 PUSH8 0x80A0F137F2F43612 0xDC SUB PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "739:9478:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122071244fd5c5d2fe392c774bee9e111d3a3ae7d1ae936780a0f137f2f43612dc0364736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH18 0x244FD5C5D2FE392C774BEE9E111D3A3AE7D1 0xAE SWAP4 PUSH8 0x80A0F137F2F43612 0xDC SUB PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "739:9478:1:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"CommandTooLong\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"InvalidReference\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes4\",\"name\":\"callbackFunction\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"OffchainLookup\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"TooManyCommands\",\"type\":\"error\"}],\"devdoc\":{\"details\":\"A library to facilitate requesting storage data proofs from contracts, possibly on a different chain. See l1-verifier/test/TestL1.sol for example usage.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\":\"EVMFetcher\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\":{\"keccak256\":\"0x16343bb690c36a6c1d41922b114319505dc2c6b86348b9abc06c10be79bfea9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2a2e001f6fec0aa4927b636aace4998b961c9a9eec8840f3eddcdeb9b9d72632\",\"dweb:/ipfs/QmeYRrJrBY1rpHQzbdLfG45wFeeLgFUpTAcPAf3PkVVEAB\"]},\"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\":{\"keccak256\":\"0x96ccc4f320287222e427a2c4620d8e27cfc0a64820dc9b214ba396344eeb6a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75d4c2093fc22db01c4552aae2706d9e77c08b1c0b390cee8d80802a73238dcf\",\"dweb:/ipfs/QmPrFfoC6K4Jimky4VSfiZnErCL1X4yQhMFNVNKLtLWBxz\"]},\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]}},\"version\":1}" + }, + "IEVMGateway": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "bytes32[]", + "name": "commands", + "type": "bytes32[]" + }, + { + "internalType": "bytes[]", + "name": "constants", + "type": "bytes[]" + } + ], + "name": "getStorageSlots", + "outputs": [ + { + "internalType": "bytes", + "name": "witness", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "getStorageSlots(address,bytes32[],bytes[])": "ea9cd3bf" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"commands\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes[]\",\"name\":\"constants\",\"type\":\"bytes[]\"}],\"name\":\"getStorageSlots\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"witness\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\":\"IEVMGateway\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\":{\"keccak256\":\"0x16343bb690c36a6c1d41922b114319505dc2c6b86348b9abc06c10be79bfea9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2a2e001f6fec0aa4927b636aace4998b961c9a9eec8840f3eddcdeb9b9d72632\",\"dweb:/ipfs/QmeYRrJrBY1rpHQzbdLfG45wFeeLgFUpTAcPAf3PkVVEAB\"]},\"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\":{\"keccak256\":\"0x96ccc4f320287222e427a2c4620d8e27cfc0a64820dc9b214ba396344eeb6a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75d4c2093fc22db01c4552aae2706d9e77c08b1c0b390cee8d80802a73238dcf\",\"dweb:/ipfs/QmPrFfoC6K4Jimky4VSfiZnErCL1X4yQhMFNVNKLtLWBxz\"]},\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/IEVMVerifier.sol": { + "IEVMVerifier": { + "abi": [ + { + "inputs": [], + "name": "gatewayURLs", + "outputs": [ + { + "internalType": "string[]", + "name": "", + "type": "string[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes32[]", + "name": "commands", + "type": "bytes32[]" + }, + { + "internalType": "bytes[]", + "name": "constants", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "acceptedL2BlockRangeLength", + "type": "uint256" + } + ], + "name": "getStorageValues", + "outputs": [ + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "gatewayURLs()": "b50f2fbc", + "getStorageValues(address,bytes32[],bytes[],bytes,uint256)": "c51ca02a" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"gatewayURLs\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"commands\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes[]\",\"name\":\"constants\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"acceptedL2BlockRangeLength\",\"type\":\"uint256\"}],\"name\":\"getStorageValues\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":\"IEVMVerifier\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/LineaProofHelper.sol": { + "LineaProofHelper": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "size", + "type": "uint256" + } + ], + "name": "InvalidSlotSize", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "name": "UnknownOpcode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "start", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "sliceBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "610580610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80639f0701421461003a575b600080fd5b610054600480360381019061004f919061032b565b61006a565b6040516100619190610419565b60405180910390f35b60608351828461007a919061046a565b11156100bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100b2906104fb565b60405180910390fd5b60008267ffffffffffffffff8111156100d7576100d66101ca565b5b6040519080825280601f01601f1916602001820160405280156101095781602001600182028036833780820191505090505b50905060005b8381101561018f57858582610124919061046a565b815181106101355761013461051b565b5b602001015160f81c60f81b8282815181106101535761015261051b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808060010191505061010f565b50809150509392505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610202826101b9565b810181811067ffffffffffffffff82111715610221576102206101ca565b5b80604052505050565b600061023461019b565b905061024082826101f9565b919050565b600067ffffffffffffffff8211156102605761025f6101ca565b5b610269826101b9565b9050602081019050919050565b82818337600083830152505050565b600061029861029384610245565b61022a565b9050828152602081018484840111156102b4576102b36101b4565b5b6102bf848285610276565b509392505050565b600082601f8301126102dc576102db6101af565b5b81356102ec848260208601610285565b91505092915050565b6000819050919050565b610308816102f5565b811461031357600080fd5b50565b600081359050610325816102ff565b92915050565b600080600060608486031215610344576103436101a5565b5b600084013567ffffffffffffffff811115610362576103616101aa565b5b61036e868287016102c7565b935050602061037f86828701610316565b925050604061039086828701610316565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b60005b838110156103d45780820151818401526020810190506103b9565b60008484015250505050565b60006103eb8261039a565b6103f581856103a5565b93506104058185602086016103b6565b61040e816101b9565b840191505092915050565b6000602082019050818103600083015261043381846103e0565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610475826102f5565b9150610480836102f5565b92508282019050808211156104985761049761043b565b5b92915050565b600082825260208201905092915050565b7f736c69636542797465733a206f7574206f662072616e67650000000000000000600082015250565b60006104e560188361049e565b91506104f0826104af565b602082019050919050565b60006020820190508181036000830152610514816104d8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220cff3b4cc4601fd20a49bcac012578853281ee7531fdba425647e9b9b4ca2517764736f6c63430008190033", + "opcodes": "PUSH2 0x580 PUSH2 0x52 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x45 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x35 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F070142 EQ PUSH2 0x3A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x54 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F SWAP2 SWAP1 PUSH2 0x32B JUMP JUMPDEST PUSH2 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61 SWAP2 SWAP1 PUSH2 0x419 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x7A SWAP2 SWAP1 PUSH2 0x46A JUMP JUMPDEST GT ISZERO PUSH2 0xBB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB2 SWAP1 PUSH2 0x4FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD7 JUMPI PUSH2 0xD6 PUSH2 0x1CA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x109 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x18F JUMPI DUP6 DUP6 DUP3 PUSH2 0x124 SWAP2 SWAP1 PUSH2 0x46A JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x135 JUMPI PUSH2 0x134 PUSH2 0x51B JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x153 JUMPI PUSH2 0x152 PUSH2 0x51B JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x10F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x202 DUP3 PUSH2 0x1B9 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x221 JUMPI PUSH2 0x220 PUSH2 0x1CA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x234 PUSH2 0x19B JUMP JUMPDEST SWAP1 POP PUSH2 0x240 DUP3 DUP3 PUSH2 0x1F9 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x260 JUMPI PUSH2 0x25F PUSH2 0x1CA JUMP JUMPDEST JUMPDEST PUSH2 0x269 DUP3 PUSH2 0x1B9 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x298 PUSH2 0x293 DUP5 PUSH2 0x245 JUMP JUMPDEST PUSH2 0x22A JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2B4 JUMPI PUSH2 0x2B3 PUSH2 0x1B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2BF DUP5 DUP3 DUP6 PUSH2 0x276 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2DC JUMPI PUSH2 0x2DB PUSH2 0x1AF JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2EC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x285 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x308 DUP2 PUSH2 0x2F5 JUMP JUMPDEST DUP2 EQ PUSH2 0x313 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x325 DUP2 PUSH2 0x2FF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x344 JUMPI PUSH2 0x343 PUSH2 0x1A5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x362 JUMPI PUSH2 0x361 PUSH2 0x1AA JUMP JUMPDEST JUMPDEST PUSH2 0x36E DUP7 DUP3 DUP8 ADD PUSH2 0x2C7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x37F DUP7 DUP3 DUP8 ADD PUSH2 0x316 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x390 DUP7 DUP3 DUP8 ADD PUSH2 0x316 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3D4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3B9 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3EB DUP3 PUSH2 0x39A JUMP JUMPDEST PUSH2 0x3F5 DUP2 DUP6 PUSH2 0x3A5 JUMP JUMPDEST SWAP4 POP PUSH2 0x405 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B6 JUMP JUMPDEST PUSH2 0x40E DUP2 PUSH2 0x1B9 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x433 DUP2 DUP5 PUSH2 0x3E0 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x475 DUP3 PUSH2 0x2F5 JUMP JUMPDEST SWAP2 POP PUSH2 0x480 DUP4 PUSH2 0x2F5 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x498 JUMPI PUSH2 0x497 PUSH2 0x43B JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x736C69636542797465733A206F7574206F662072616E67650000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4E5 PUSH1 0x18 DUP4 PUSH2 0x49E JUMP JUMPDEST SWAP2 POP PUSH2 0x4F0 DUP3 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x514 DUP2 PUSH2 0x4D8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCF RETURN 0xB4 0xCC CHAINID ADD REVERT KECCAK256 LOG4 SWAP12 0xCA 0xC0 SLT JUMPI DUP9 MSTORE8 0x28 0x1E 0xE7 MSTORE8 0x1F 0xDB LOG4 0x25 PUSH5 0x7E9B9B4CA2 MLOAD PUSH24 0x64736F6C6343000819003300000000000000000000000000 ", + "sourceMap": "627:7508:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@sliceBytes_1227": { + "entryPoint": 106, + "id": 1227, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 645, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 711, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 790, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_memory_ptrt_uint256t_uint256": { + "entryPoint": 811, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 992, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1240, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 1049, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1275, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 554, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 411, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 581, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 922, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 933, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1182, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 1130, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 757, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 630, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 950, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "finalize_allocation": { + "entryPoint": 505, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "panic_error_0x11": { + "entryPoint": 1083, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 1307, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 458, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 431, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 436, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 426, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 421, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 441, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73": { + "entryPoint": 1199, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 767, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:6692:74", + "nodeType": "YulBlock", + "src": "0:6692:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "628:54:74", + "nodeType": "YulBlock", + "src": "628:54:74", + "statements": [ + { + "nativeSrc": "638:38:74", + "nodeType": "YulAssignment", + "src": "638:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "656:5:74", + "nodeType": "YulIdentifier", + "src": "656:5:74" + }, + { + "kind": "number", + "nativeSrc": "663:2:74", + "nodeType": "YulLiteral", + "src": "663:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "652:3:74", + "nodeType": "YulIdentifier", + "src": "652:3:74" + }, + "nativeSrc": "652:14:74", + "nodeType": "YulFunctionCall", + "src": "652:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "672:2:74", + "nodeType": "YulLiteral", + "src": "672:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "668:3:74", + "nodeType": "YulIdentifier", + "src": "668:3:74" + }, + "nativeSrc": "668:7:74", + "nodeType": "YulFunctionCall", + "src": "668:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "648:3:74", + "nodeType": "YulIdentifier", + "src": "648:3:74" + }, + "nativeSrc": "648:28:74", + "nodeType": "YulFunctionCall", + "src": "648:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "638:6:74", + "nodeType": "YulIdentifier", + "src": "638:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "580:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "611:5:74", + "nodeType": "YulTypedName", + "src": "611:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "621:6:74", + "nodeType": "YulTypedName", + "src": "621:6:74", + "type": "" + } + ], + "src": "580:102:74" + }, + { + "body": { + "nativeSrc": "716:152:74", + "nodeType": "YulBlock", + "src": "716:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "733:1:74", + "nodeType": "YulLiteral", + "src": "733:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "736:77:74", + "nodeType": "YulLiteral", + "src": "736:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "726:6:74", + "nodeType": "YulIdentifier", + "src": "726:6:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulFunctionCall", + "src": "726:88:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulExpressionStatement", + "src": "726:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "830:1:74", + "nodeType": "YulLiteral", + "src": "830:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "833:4:74", + "nodeType": "YulLiteral", + "src": "833:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "823:6:74", + "nodeType": "YulIdentifier", + "src": "823:6:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulFunctionCall", + "src": "823:15:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulExpressionStatement", + "src": "823:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "854:1:74", + "nodeType": "YulLiteral", + "src": "854:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "857:4:74", + "nodeType": "YulLiteral", + "src": "857:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "847:6:74", + "nodeType": "YulIdentifier", + "src": "847:6:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulFunctionCall", + "src": "847:15:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulExpressionStatement", + "src": "847:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "688:180:74", + "nodeType": "YulFunctionDefinition", + "src": "688:180:74" + }, + { + "body": { + "nativeSrc": "917:238:74", + "nodeType": "YulBlock", + "src": "917:238:74", + "statements": [ + { + "nativeSrc": "927:58:74", + "nodeType": "YulVariableDeclaration", + "src": "927:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "949:6:74", + "nodeType": "YulIdentifier", + "src": "949:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "979:4:74", + "nodeType": "YulIdentifier", + "src": "979:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "957:21:74", + "nodeType": "YulIdentifier", + "src": "957:21:74" + }, + "nativeSrc": "957:27:74", + "nodeType": "YulFunctionCall", + "src": "957:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "945:3:74", + "nodeType": "YulIdentifier", + "src": "945:3:74" + }, + "nativeSrc": "945:40:74", + "nodeType": "YulFunctionCall", + "src": "945:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "931:10:74", + "nodeType": "YulTypedName", + "src": "931:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1096:22:74", + "nodeType": "YulBlock", + "src": "1096:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1098:16:74", + "nodeType": "YulIdentifier", + "src": "1098:16:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulFunctionCall", + "src": "1098:18:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulExpressionStatement", + "src": "1098:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1039:10:74", + "nodeType": "YulIdentifier", + "src": "1039:10:74" + }, + { + "kind": "number", + "nativeSrc": "1051:18:74", + "nodeType": "YulLiteral", + "src": "1051:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1036:2:74", + "nodeType": "YulIdentifier", + "src": "1036:2:74" + }, + "nativeSrc": "1036:34:74", + "nodeType": "YulFunctionCall", + "src": "1036:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1075:10:74", + "nodeType": "YulIdentifier", + "src": "1075:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "1087:6:74", + "nodeType": "YulIdentifier", + "src": "1087:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1072:2:74", + "nodeType": "YulIdentifier", + "src": "1072:2:74" + }, + "nativeSrc": "1072:22:74", + "nodeType": "YulFunctionCall", + "src": "1072:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "1033:2:74", + "nodeType": "YulIdentifier", + "src": "1033:2:74" + }, + "nativeSrc": "1033:62:74", + "nodeType": "YulFunctionCall", + "src": "1033:62:74" + }, + "nativeSrc": "1030:88:74", + "nodeType": "YulIf", + "src": "1030:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1134:2:74", + "nodeType": "YulLiteral", + "src": "1134:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "1138:10:74", + "nodeType": "YulIdentifier", + "src": "1138:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1127:6:74", + "nodeType": "YulIdentifier", + "src": "1127:6:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulFunctionCall", + "src": "1127:22:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulExpressionStatement", + "src": "1127:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "874:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "903:6:74", + "nodeType": "YulTypedName", + "src": "903:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "911:4:74", + "nodeType": "YulTypedName", + "src": "911:4:74", + "type": "" + } + ], + "src": "874:281:74" + }, + { + "body": { + "nativeSrc": "1202:88:74", + "nodeType": "YulBlock", + "src": "1202:88:74", + "statements": [ + { + "nativeSrc": "1212:30:74", + "nodeType": "YulAssignment", + "src": "1212:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "1222:18:74", + "nodeType": "YulIdentifier", + "src": "1222:18:74" + }, + "nativeSrc": "1222:20:74", + "nodeType": "YulFunctionCall", + "src": "1222:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "1212:6:74", + "nodeType": "YulIdentifier", + "src": "1212:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "1271:6:74", + "nodeType": "YulIdentifier", + "src": "1271:6:74" + }, + { + "name": "size", + "nativeSrc": "1279:4:74", + "nodeType": "YulIdentifier", + "src": "1279:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "1251:19:74", + "nodeType": "YulIdentifier", + "src": "1251:19:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulFunctionCall", + "src": "1251:33:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulExpressionStatement", + "src": "1251:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "1161:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "1186:4:74", + "nodeType": "YulTypedName", + "src": "1186:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "1195:6:74", + "nodeType": "YulTypedName", + "src": "1195:6:74", + "type": "" + } + ], + "src": "1161:129:74" + }, + { + "body": { + "nativeSrc": "1362:241:74", + "nodeType": "YulBlock", + "src": "1362:241:74", + "statements": [ + { + "body": { + "nativeSrc": "1467:22:74", + "nodeType": "YulBlock", + "src": "1467:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1469:16:74", + "nodeType": "YulIdentifier", + "src": "1469:16:74" + }, + "nativeSrc": "1469:18:74", + "nodeType": "YulFunctionCall", + "src": "1469:18:74" + }, + "nativeSrc": "1469:18:74", + "nodeType": "YulExpressionStatement", + "src": "1469:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1439:6:74", + "nodeType": "YulIdentifier", + "src": "1439:6:74" + }, + { + "kind": "number", + "nativeSrc": "1447:18:74", + "nodeType": "YulLiteral", + "src": "1447:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1436:2:74", + "nodeType": "YulIdentifier", + "src": "1436:2:74" + }, + "nativeSrc": "1436:30:74", + "nodeType": "YulFunctionCall", + "src": "1436:30:74" + }, + "nativeSrc": "1433:56:74", + "nodeType": "YulIf", + "src": "1433:56:74" + }, + { + "nativeSrc": "1499:37:74", + "nodeType": "YulAssignment", + "src": "1499:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1529:6:74", + "nodeType": "YulIdentifier", + "src": "1529:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "1507:21:74", + "nodeType": "YulIdentifier", + "src": "1507:21:74" + }, + "nativeSrc": "1507:29:74", + "nodeType": "YulFunctionCall", + "src": "1507:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1499:4:74", + "nodeType": "YulIdentifier", + "src": "1499:4:74" + } + ] + }, + { + "nativeSrc": "1573:23:74", + "nodeType": "YulAssignment", + "src": "1573:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "1585:4:74", + "nodeType": "YulIdentifier", + "src": "1585:4:74" + }, + { + "kind": "number", + "nativeSrc": "1591:4:74", + "nodeType": "YulLiteral", + "src": "1591:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1581:3:74", + "nodeType": "YulIdentifier", + "src": "1581:3:74" + }, + "nativeSrc": "1581:15:74", + "nodeType": "YulFunctionCall", + "src": "1581:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1573:4:74", + "nodeType": "YulIdentifier", + "src": "1573:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "1296:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1346:6:74", + "nodeType": "YulTypedName", + "src": "1346:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1357:4:74", + "nodeType": "YulTypedName", + "src": "1357:4:74", + "type": "" + } + ], + "src": "1296:307:74" + }, + { + "body": { + "nativeSrc": "1673:84:74", + "nodeType": "YulBlock", + "src": "1673:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1697:3:74", + "nodeType": "YulIdentifier", + "src": "1697:3:74" + }, + { + "name": "src", + "nativeSrc": "1702:3:74", + "nodeType": "YulIdentifier", + "src": "1702:3:74" + }, + { + "name": "length", + "nativeSrc": "1707:6:74", + "nodeType": "YulIdentifier", + "src": "1707:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "1684:12:74", + "nodeType": "YulIdentifier", + "src": "1684:12:74" + }, + "nativeSrc": "1684:30:74", + "nodeType": "YulFunctionCall", + "src": "1684:30:74" + }, + "nativeSrc": "1684:30:74", + "nodeType": "YulExpressionStatement", + "src": "1684:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1734:3:74", + "nodeType": "YulIdentifier", + "src": "1734:3:74" + }, + { + "name": "length", + "nativeSrc": "1739:6:74", + "nodeType": "YulIdentifier", + "src": "1739:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1730:3:74", + "nodeType": "YulIdentifier", + "src": "1730:3:74" + }, + "nativeSrc": "1730:16:74", + "nodeType": "YulFunctionCall", + "src": "1730:16:74" + }, + { + "kind": "number", + "nativeSrc": "1748:1:74", + "nodeType": "YulLiteral", + "src": "1748:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1723:6:74", + "nodeType": "YulIdentifier", + "src": "1723:6:74" + }, + "nativeSrc": "1723:27:74", + "nodeType": "YulFunctionCall", + "src": "1723:27:74" + }, + "nativeSrc": "1723:27:74", + "nodeType": "YulExpressionStatement", + "src": "1723:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "1609:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1655:3:74", + "nodeType": "YulTypedName", + "src": "1655:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1660:3:74", + "nodeType": "YulTypedName", + "src": "1660:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1665:6:74", + "nodeType": "YulTypedName", + "src": "1665:6:74", + "type": "" + } + ], + "src": "1609:148:74" + }, + { + "body": { + "nativeSrc": "1846:340:74", + "nodeType": "YulBlock", + "src": "1846:340:74", + "statements": [ + { + "nativeSrc": "1856:74:74", + "nodeType": "YulAssignment", + "src": "1856:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "1922:6:74", + "nodeType": "YulIdentifier", + "src": "1922:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "1881:40:74", + "nodeType": "YulIdentifier", + "src": "1881:40:74" + }, + "nativeSrc": "1881:48:74", + "nodeType": "YulFunctionCall", + "src": "1881:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "1865:15:74", + "nodeType": "YulIdentifier", + "src": "1865:15:74" + }, + "nativeSrc": "1865:65:74", + "nodeType": "YulFunctionCall", + "src": "1865:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "1856:5:74", + "nodeType": "YulIdentifier", + "src": "1856:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "1946:5:74", + "nodeType": "YulIdentifier", + "src": "1946:5:74" + }, + { + "name": "length", + "nativeSrc": "1953:6:74", + "nodeType": "YulIdentifier", + "src": "1953:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1939:6:74", + "nodeType": "YulIdentifier", + "src": "1939:6:74" + }, + "nativeSrc": "1939:21:74", + "nodeType": "YulFunctionCall", + "src": "1939:21:74" + }, + "nativeSrc": "1939:21:74", + "nodeType": "YulExpressionStatement", + "src": "1939:21:74" + }, + { + "nativeSrc": "1969:27:74", + "nodeType": "YulVariableDeclaration", + "src": "1969:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "1984:5:74", + "nodeType": "YulIdentifier", + "src": "1984:5:74" + }, + { + "kind": "number", + "nativeSrc": "1991:4:74", + "nodeType": "YulLiteral", + "src": "1991:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1980:3:74", + "nodeType": "YulIdentifier", + "src": "1980:3:74" + }, + "nativeSrc": "1980:16:74", + "nodeType": "YulFunctionCall", + "src": "1980:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "1973:3:74", + "nodeType": "YulTypedName", + "src": "1973:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2034:83:74", + "nodeType": "YulBlock", + "src": "2034:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "2036:77:74", + "nodeType": "YulIdentifier", + "src": "2036:77:74" + }, + "nativeSrc": "2036:79:74", + "nodeType": "YulFunctionCall", + "src": "2036:79:74" + }, + "nativeSrc": "2036:79:74", + "nodeType": "YulExpressionStatement", + "src": "2036:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2015:3:74", + "nodeType": "YulIdentifier", + "src": "2015:3:74" + }, + { + "name": "length", + "nativeSrc": "2020:6:74", + "nodeType": "YulIdentifier", + "src": "2020:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2011:3:74", + "nodeType": "YulIdentifier", + "src": "2011:3:74" + }, + "nativeSrc": "2011:16:74", + "nodeType": "YulFunctionCall", + "src": "2011:16:74" + }, + { + "name": "end", + "nativeSrc": "2029:3:74", + "nodeType": "YulIdentifier", + "src": "2029:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2008:2:74", + "nodeType": "YulIdentifier", + "src": "2008:2:74" + }, + "nativeSrc": "2008:25:74", + "nodeType": "YulFunctionCall", + "src": "2008:25:74" + }, + "nativeSrc": "2005:112:74", + "nodeType": "YulIf", + "src": "2005:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "2163:3:74", + "nodeType": "YulIdentifier", + "src": "2163:3:74" + }, + { + "name": "dst", + "nativeSrc": "2168:3:74", + "nodeType": "YulIdentifier", + "src": "2168:3:74" + }, + { + "name": "length", + "nativeSrc": "2173:6:74", + "nodeType": "YulIdentifier", + "src": "2173:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "2126:36:74", + "nodeType": "YulIdentifier", + "src": "2126:36:74" + }, + "nativeSrc": "2126:54:74", + "nodeType": "YulFunctionCall", + "src": "2126:54:74" + }, + "nativeSrc": "2126:54:74", + "nodeType": "YulExpressionStatement", + "src": "2126:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "1763:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1819:3:74", + "nodeType": "YulTypedName", + "src": "1819:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1824:6:74", + "nodeType": "YulTypedName", + "src": "1824:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1832:3:74", + "nodeType": "YulTypedName", + "src": "1832:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "1840:5:74", + "nodeType": "YulTypedName", + "src": "1840:5:74", + "type": "" + } + ], + "src": "1763:423:74" + }, + { + "body": { + "nativeSrc": "2266:277:74", + "nodeType": "YulBlock", + "src": "2266:277:74", + "statements": [ + { + "body": { + "nativeSrc": "2315:83:74", + "nodeType": "YulBlock", + "src": "2315:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2317:77:74", + "nodeType": "YulIdentifier", + "src": "2317:77:74" + }, + "nativeSrc": "2317:79:74", + "nodeType": "YulFunctionCall", + "src": "2317:79:74" + }, + "nativeSrc": "2317:79:74", + "nodeType": "YulExpressionStatement", + "src": "2317:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2294:6:74", + "nodeType": "YulIdentifier", + "src": "2294:6:74" + }, + { + "kind": "number", + "nativeSrc": "2302:4:74", + "nodeType": "YulLiteral", + "src": "2302:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2290:3:74", + "nodeType": "YulIdentifier", + "src": "2290:3:74" + }, + "nativeSrc": "2290:17:74", + "nodeType": "YulFunctionCall", + "src": "2290:17:74" + }, + { + "name": "end", + "nativeSrc": "2309:3:74", + "nodeType": "YulIdentifier", + "src": "2309:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2286:3:74", + "nodeType": "YulIdentifier", + "src": "2286:3:74" + }, + "nativeSrc": "2286:27:74", + "nodeType": "YulFunctionCall", + "src": "2286:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2279:6:74", + "nodeType": "YulIdentifier", + "src": "2279:6:74" + }, + "nativeSrc": "2279:35:74", + "nodeType": "YulFunctionCall", + "src": "2279:35:74" + }, + "nativeSrc": "2276:122:74", + "nodeType": "YulIf", + "src": "2276:122:74" + }, + { + "nativeSrc": "2407:34:74", + "nodeType": "YulVariableDeclaration", + "src": "2407:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2434:6:74", + "nodeType": "YulIdentifier", + "src": "2434:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2421:12:74", + "nodeType": "YulIdentifier", + "src": "2421:12:74" + }, + "nativeSrc": "2421:20:74", + "nodeType": "YulFunctionCall", + "src": "2421:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2411:6:74", + "nodeType": "YulTypedName", + "src": "2411:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2450:87:74", + "nodeType": "YulAssignment", + "src": "2450:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2510:6:74", + "nodeType": "YulIdentifier", + "src": "2510:6:74" + }, + { + "kind": "number", + "nativeSrc": "2518:4:74", + "nodeType": "YulLiteral", + "src": "2518:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2506:3:74", + "nodeType": "YulIdentifier", + "src": "2506:3:74" + }, + "nativeSrc": "2506:17:74", + "nodeType": "YulFunctionCall", + "src": "2506:17:74" + }, + { + "name": "length", + "nativeSrc": "2525:6:74", + "nodeType": "YulIdentifier", + "src": "2525:6:74" + }, + { + "name": "end", + "nativeSrc": "2533:3:74", + "nodeType": "YulIdentifier", + "src": "2533:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "2459:46:74", + "nodeType": "YulIdentifier", + "src": "2459:46:74" + }, + "nativeSrc": "2459:78:74", + "nodeType": "YulFunctionCall", + "src": "2459:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "2450:5:74", + "nodeType": "YulIdentifier", + "src": "2450:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "2205:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2244:6:74", + "nodeType": "YulTypedName", + "src": "2244:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2252:3:74", + "nodeType": "YulTypedName", + "src": "2252:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2260:5:74", + "nodeType": "YulTypedName", + "src": "2260:5:74", + "type": "" + } + ], + "src": "2205:338:74" + }, + { + "body": { + "nativeSrc": "2594:32:74", + "nodeType": "YulBlock", + "src": "2594:32:74", + "statements": [ + { + "nativeSrc": "2604:16:74", + "nodeType": "YulAssignment", + "src": "2604:16:74", + "value": { + "name": "value", + "nativeSrc": "2615:5:74", + "nodeType": "YulIdentifier", + "src": "2615:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2604:7:74", + "nodeType": "YulIdentifier", + "src": "2604:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "2549:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2576:5:74", + "nodeType": "YulTypedName", + "src": "2576:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2586:7:74", + "nodeType": "YulTypedName", + "src": "2586:7:74", + "type": "" + } + ], + "src": "2549:77:74" + }, + { + "body": { + "nativeSrc": "2675:79:74", + "nodeType": "YulBlock", + "src": "2675:79:74", + "statements": [ + { + "body": { + "nativeSrc": "2732:16:74", + "nodeType": "YulBlock", + "src": "2732:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2741:1:74", + "nodeType": "YulLiteral", + "src": "2741:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2744:1:74", + "nodeType": "YulLiteral", + "src": "2744:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2734:6:74", + "nodeType": "YulIdentifier", + "src": "2734:6:74" + }, + "nativeSrc": "2734:12:74", + "nodeType": "YulFunctionCall", + "src": "2734:12:74" + }, + "nativeSrc": "2734:12:74", + "nodeType": "YulExpressionStatement", + "src": "2734:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2698:5:74", + "nodeType": "YulIdentifier", + "src": "2698:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2723:5:74", + "nodeType": "YulIdentifier", + "src": "2723:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "2705:17:74", + "nodeType": "YulIdentifier", + "src": "2705:17:74" + }, + "nativeSrc": "2705:24:74", + "nodeType": "YulFunctionCall", + "src": "2705:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2695:2:74", + "nodeType": "YulIdentifier", + "src": "2695:2:74" + }, + "nativeSrc": "2695:35:74", + "nodeType": "YulFunctionCall", + "src": "2695:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2688:6:74", + "nodeType": "YulIdentifier", + "src": "2688:6:74" + }, + "nativeSrc": "2688:43:74", + "nodeType": "YulFunctionCall", + "src": "2688:43:74" + }, + "nativeSrc": "2685:63:74", + "nodeType": "YulIf", + "src": "2685:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "2632:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2668:5:74", + "nodeType": "YulTypedName", + "src": "2668:5:74", + "type": "" + } + ], + "src": "2632:122:74" + }, + { + "body": { + "nativeSrc": "2812:87:74", + "nodeType": "YulBlock", + "src": "2812:87:74", + "statements": [ + { + "nativeSrc": "2822:29:74", + "nodeType": "YulAssignment", + "src": "2822:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2844:6:74", + "nodeType": "YulIdentifier", + "src": "2844:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2831:12:74", + "nodeType": "YulIdentifier", + "src": "2831:12:74" + }, + "nativeSrc": "2831:20:74", + "nodeType": "YulFunctionCall", + "src": "2831:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2822:5:74", + "nodeType": "YulIdentifier", + "src": "2822:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2887:5:74", + "nodeType": "YulIdentifier", + "src": "2887:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "2860:26:74", + "nodeType": "YulIdentifier", + "src": "2860:26:74" + }, + "nativeSrc": "2860:33:74", + "nodeType": "YulFunctionCall", + "src": "2860:33:74" + }, + "nativeSrc": "2860:33:74", + "nodeType": "YulExpressionStatement", + "src": "2860:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "2760:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2790:6:74", + "nodeType": "YulTypedName", + "src": "2790:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2798:3:74", + "nodeType": "YulTypedName", + "src": "2798:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2806:5:74", + "nodeType": "YulTypedName", + "src": "2806:5:74", + "type": "" + } + ], + "src": "2760:139:74" + }, + { + "body": { + "nativeSrc": "3014:688:74", + "nodeType": "YulBlock", + "src": "3014:688:74", + "statements": [ + { + "body": { + "nativeSrc": "3060:83:74", + "nodeType": "YulBlock", + "src": "3060:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3062:77:74", + "nodeType": "YulIdentifier", + "src": "3062:77:74" + }, + "nativeSrc": "3062:79:74", + "nodeType": "YulFunctionCall", + "src": "3062:79:74" + }, + "nativeSrc": "3062:79:74", + "nodeType": "YulExpressionStatement", + "src": "3062:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3035:7:74", + "nodeType": "YulIdentifier", + "src": "3035:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3044:9:74", + "nodeType": "YulIdentifier", + "src": "3044:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3031:3:74", + "nodeType": "YulIdentifier", + "src": "3031:3:74" + }, + "nativeSrc": "3031:23:74", + "nodeType": "YulFunctionCall", + "src": "3031:23:74" + }, + { + "kind": "number", + "nativeSrc": "3056:2:74", + "nodeType": "YulLiteral", + "src": "3056:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3027:3:74", + "nodeType": "YulIdentifier", + "src": "3027:3:74" + }, + "nativeSrc": "3027:32:74", + "nodeType": "YulFunctionCall", + "src": "3027:32:74" + }, + "nativeSrc": "3024:119:74", + "nodeType": "YulIf", + "src": "3024:119:74" + }, + { + "nativeSrc": "3153:286:74", + "nodeType": "YulBlock", + "src": "3153:286:74", + "statements": [ + { + "nativeSrc": "3168:45:74", + "nodeType": "YulVariableDeclaration", + "src": "3168:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3199:9:74", + "nodeType": "YulIdentifier", + "src": "3199:9:74" + }, + { + "kind": "number", + "nativeSrc": "3210:1:74", + "nodeType": "YulLiteral", + "src": "3210:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3195:3:74", + "nodeType": "YulIdentifier", + "src": "3195:3:74" + }, + "nativeSrc": "3195:17:74", + "nodeType": "YulFunctionCall", + "src": "3195:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3182:12:74", + "nodeType": "YulIdentifier", + "src": "3182:12:74" + }, + "nativeSrc": "3182:31:74", + "nodeType": "YulFunctionCall", + "src": "3182:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3172:6:74", + "nodeType": "YulTypedName", + "src": "3172:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3260:83:74", + "nodeType": "YulBlock", + "src": "3260:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "3262:77:74", + "nodeType": "YulIdentifier", + "src": "3262:77:74" + }, + "nativeSrc": "3262:79:74", + "nodeType": "YulFunctionCall", + "src": "3262:79:74" + }, + "nativeSrc": "3262:79:74", + "nodeType": "YulExpressionStatement", + "src": "3262:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3232:6:74", + "nodeType": "YulIdentifier", + "src": "3232:6:74" + }, + { + "kind": "number", + "nativeSrc": "3240:18:74", + "nodeType": "YulLiteral", + "src": "3240:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3229:2:74", + "nodeType": "YulIdentifier", + "src": "3229:2:74" + }, + "nativeSrc": "3229:30:74", + "nodeType": "YulFunctionCall", + "src": "3229:30:74" + }, + "nativeSrc": "3226:117:74", + "nodeType": "YulIf", + "src": "3226:117:74" + }, + { + "nativeSrc": "3357:72:74", + "nodeType": "YulAssignment", + "src": "3357:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3401:9:74", + "nodeType": "YulIdentifier", + "src": "3401:9:74" + }, + { + "name": "offset", + "nativeSrc": "3412:6:74", + "nodeType": "YulIdentifier", + "src": "3412:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3397:3:74", + "nodeType": "YulIdentifier", + "src": "3397:3:74" + }, + "nativeSrc": "3397:22:74", + "nodeType": "YulFunctionCall", + "src": "3397:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3421:7:74", + "nodeType": "YulIdentifier", + "src": "3421:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "3367:29:74", + "nodeType": "YulIdentifier", + "src": "3367:29:74" + }, + "nativeSrc": "3367:62:74", + "nodeType": "YulFunctionCall", + "src": "3367:62:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3357:6:74", + "nodeType": "YulIdentifier", + "src": "3357:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3449:118:74", + "nodeType": "YulBlock", + "src": "3449:118:74", + "statements": [ + { + "nativeSrc": "3464:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3464:16:74", + "value": { + "kind": "number", + "nativeSrc": "3478:2:74", + "nodeType": "YulLiteral", + "src": "3478:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3468:6:74", + "nodeType": "YulTypedName", + "src": "3468:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3494:63:74", + "nodeType": "YulAssignment", + "src": "3494:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3529:9:74", + "nodeType": "YulIdentifier", + "src": "3529:9:74" + }, + { + "name": "offset", + "nativeSrc": "3540:6:74", + "nodeType": "YulIdentifier", + "src": "3540:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3525:3:74", + "nodeType": "YulIdentifier", + "src": "3525:3:74" + }, + "nativeSrc": "3525:22:74", + "nodeType": "YulFunctionCall", + "src": "3525:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3549:7:74", + "nodeType": "YulIdentifier", + "src": "3549:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "3504:20:74", + "nodeType": "YulIdentifier", + "src": "3504:20:74" + }, + "nativeSrc": "3504:53:74", + "nodeType": "YulFunctionCall", + "src": "3504:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3494:6:74", + "nodeType": "YulIdentifier", + "src": "3494:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3577:118:74", + "nodeType": "YulBlock", + "src": "3577:118:74", + "statements": [ + { + "nativeSrc": "3592:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3592:16:74", + "value": { + "kind": "number", + "nativeSrc": "3606:2:74", + "nodeType": "YulLiteral", + "src": "3606:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3596:6:74", + "nodeType": "YulTypedName", + "src": "3596:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3622:63:74", + "nodeType": "YulAssignment", + "src": "3622:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3657:9:74", + "nodeType": "YulIdentifier", + "src": "3657:9:74" + }, + { + "name": "offset", + "nativeSrc": "3668:6:74", + "nodeType": "YulIdentifier", + "src": "3668:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3653:3:74", + "nodeType": "YulIdentifier", + "src": "3653:3:74" + }, + "nativeSrc": "3653:22:74", + "nodeType": "YulFunctionCall", + "src": "3653:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3677:7:74", + "nodeType": "YulIdentifier", + "src": "3677:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "3632:20:74", + "nodeType": "YulIdentifier", + "src": "3632:20:74" + }, + "nativeSrc": "3632:53:74", + "nodeType": "YulFunctionCall", + "src": "3632:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "3622:6:74", + "nodeType": "YulIdentifier", + "src": "3622:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptrt_uint256t_uint256", + "nativeSrc": "2905:797:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2968:9:74", + "nodeType": "YulTypedName", + "src": "2968:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2979:7:74", + "nodeType": "YulTypedName", + "src": "2979:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2991:6:74", + "nodeType": "YulTypedName", + "src": "2991:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2999:6:74", + "nodeType": "YulTypedName", + "src": "2999:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "3007:6:74", + "nodeType": "YulTypedName", + "src": "3007:6:74", + "type": "" + } + ], + "src": "2905:797:74" + }, + { + "body": { + "nativeSrc": "3766:40:74", + "nodeType": "YulBlock", + "src": "3766:40:74", + "statements": [ + { + "nativeSrc": "3777:22:74", + "nodeType": "YulAssignment", + "src": "3777:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3793:5:74", + "nodeType": "YulIdentifier", + "src": "3793:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3787:5:74", + "nodeType": "YulIdentifier", + "src": "3787:5:74" + }, + "nativeSrc": "3787:12:74", + "nodeType": "YulFunctionCall", + "src": "3787:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3777:6:74", + "nodeType": "YulIdentifier", + "src": "3777:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "3708:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3749:5:74", + "nodeType": "YulTypedName", + "src": "3749:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3759:6:74", + "nodeType": "YulTypedName", + "src": "3759:6:74", + "type": "" + } + ], + "src": "3708:98:74" + }, + { + "body": { + "nativeSrc": "3915:73:74", + "nodeType": "YulBlock", + "src": "3915:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3932:3:74", + "nodeType": "YulIdentifier", + "src": "3932:3:74" + }, + { + "name": "length", + "nativeSrc": "3937:6:74", + "nodeType": "YulIdentifier", + "src": "3937:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3925:6:74", + "nodeType": "YulIdentifier", + "src": "3925:6:74" + }, + "nativeSrc": "3925:19:74", + "nodeType": "YulFunctionCall", + "src": "3925:19:74" + }, + "nativeSrc": "3925:19:74", + "nodeType": "YulExpressionStatement", + "src": "3925:19:74" + }, + { + "nativeSrc": "3953:29:74", + "nodeType": "YulAssignment", + "src": "3953:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3972:3:74", + "nodeType": "YulIdentifier", + "src": "3972:3:74" + }, + { + "kind": "number", + "nativeSrc": "3977:4:74", + "nodeType": "YulLiteral", + "src": "3977:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3968:3:74", + "nodeType": "YulIdentifier", + "src": "3968:3:74" + }, + "nativeSrc": "3968:14:74", + "nodeType": "YulFunctionCall", + "src": "3968:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "3953:11:74", + "nodeType": "YulIdentifier", + "src": "3953:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "3812:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3887:3:74", + "nodeType": "YulTypedName", + "src": "3887:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3892:6:74", + "nodeType": "YulTypedName", + "src": "3892:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "3903:11:74", + "nodeType": "YulTypedName", + "src": "3903:11:74", + "type": "" + } + ], + "src": "3812:176:74" + }, + { + "body": { + "nativeSrc": "4056:186:74", + "nodeType": "YulBlock", + "src": "4056:186:74", + "statements": [ + { + "nativeSrc": "4067:10:74", + "nodeType": "YulVariableDeclaration", + "src": "4067:10:74", + "value": { + "kind": "number", + "nativeSrc": "4076:1:74", + "nodeType": "YulLiteral", + "src": "4076:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "4071:1:74", + "nodeType": "YulTypedName", + "src": "4071:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4136:63:74", + "nodeType": "YulBlock", + "src": "4136:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "4161:3:74", + "nodeType": "YulIdentifier", + "src": "4161:3:74" + }, + { + "name": "i", + "nativeSrc": "4166:1:74", + "nodeType": "YulIdentifier", + "src": "4166:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4157:3:74", + "nodeType": "YulIdentifier", + "src": "4157:3:74" + }, + "nativeSrc": "4157:11:74", + "nodeType": "YulFunctionCall", + "src": "4157:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "4180:3:74", + "nodeType": "YulIdentifier", + "src": "4180:3:74" + }, + { + "name": "i", + "nativeSrc": "4185:1:74", + "nodeType": "YulIdentifier", + "src": "4185:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4176:3:74", + "nodeType": "YulIdentifier", + "src": "4176:3:74" + }, + "nativeSrc": "4176:11:74", + "nodeType": "YulFunctionCall", + "src": "4176:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4170:5:74", + "nodeType": "YulIdentifier", + "src": "4170:5:74" + }, + "nativeSrc": "4170:18:74", + "nodeType": "YulFunctionCall", + "src": "4170:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4150:6:74", + "nodeType": "YulIdentifier", + "src": "4150:6:74" + }, + "nativeSrc": "4150:39:74", + "nodeType": "YulFunctionCall", + "src": "4150:39:74" + }, + "nativeSrc": "4150:39:74", + "nodeType": "YulExpressionStatement", + "src": "4150:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4097:1:74", + "nodeType": "YulIdentifier", + "src": "4097:1:74" + }, + { + "name": "length", + "nativeSrc": "4100:6:74", + "nodeType": "YulIdentifier", + "src": "4100:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4094:2:74", + "nodeType": "YulIdentifier", + "src": "4094:2:74" + }, + "nativeSrc": "4094:13:74", + "nodeType": "YulFunctionCall", + "src": "4094:13:74" + }, + "nativeSrc": "4086:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "4108:19:74", + "nodeType": "YulBlock", + "src": "4108:19:74", + "statements": [ + { + "nativeSrc": "4110:15:74", + "nodeType": "YulAssignment", + "src": "4110:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4119:1:74", + "nodeType": "YulIdentifier", + "src": "4119:1:74" + }, + { + "kind": "number", + "nativeSrc": "4122:2:74", + "nodeType": "YulLiteral", + "src": "4122:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4115:3:74", + "nodeType": "YulIdentifier", + "src": "4115:3:74" + }, + "nativeSrc": "4115:10:74", + "nodeType": "YulFunctionCall", + "src": "4115:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "4110:1:74", + "nodeType": "YulIdentifier", + "src": "4110:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "4090:3:74", + "nodeType": "YulBlock", + "src": "4090:3:74", + "statements": [] + }, + "src": "4086:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "4219:3:74", + "nodeType": "YulIdentifier", + "src": "4219:3:74" + }, + { + "name": "length", + "nativeSrc": "4224:6:74", + "nodeType": "YulIdentifier", + "src": "4224:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4215:3:74", + "nodeType": "YulIdentifier", + "src": "4215:3:74" + }, + "nativeSrc": "4215:16:74", + "nodeType": "YulFunctionCall", + "src": "4215:16:74" + }, + { + "kind": "number", + "nativeSrc": "4233:1:74", + "nodeType": "YulLiteral", + "src": "4233:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4208:6:74", + "nodeType": "YulIdentifier", + "src": "4208:6:74" + }, + "nativeSrc": "4208:27:74", + "nodeType": "YulFunctionCall", + "src": "4208:27:74" + }, + "nativeSrc": "4208:27:74", + "nodeType": "YulExpressionStatement", + "src": "4208:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "3994:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "4038:3:74", + "nodeType": "YulTypedName", + "src": "4038:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "4043:3:74", + "nodeType": "YulTypedName", + "src": "4043:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "4048:6:74", + "nodeType": "YulTypedName", + "src": "4048:6:74", + "type": "" + } + ], + "src": "3994:248:74" + }, + { + "body": { + "nativeSrc": "4346:291:74", + "nodeType": "YulBlock", + "src": "4346:291:74", + "statements": [ + { + "nativeSrc": "4356:52:74", + "nodeType": "YulVariableDeclaration", + "src": "4356:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4402:5:74", + "nodeType": "YulIdentifier", + "src": "4402:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "4370:31:74", + "nodeType": "YulIdentifier", + "src": "4370:31:74" + }, + "nativeSrc": "4370:38:74", + "nodeType": "YulFunctionCall", + "src": "4370:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "4360:6:74", + "nodeType": "YulTypedName", + "src": "4360:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4417:85:74", + "nodeType": "YulAssignment", + "src": "4417:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4490:3:74", + "nodeType": "YulIdentifier", + "src": "4490:3:74" + }, + { + "name": "length", + "nativeSrc": "4495:6:74", + "nodeType": "YulIdentifier", + "src": "4495:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4424:65:74", + "nodeType": "YulIdentifier", + "src": "4424:65:74" + }, + "nativeSrc": "4424:78:74", + "nodeType": "YulFunctionCall", + "src": "4424:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4417:3:74", + "nodeType": "YulIdentifier", + "src": "4417:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4550:5:74", + "nodeType": "YulIdentifier", + "src": "4550:5:74" + }, + { + "kind": "number", + "nativeSrc": "4557:4:74", + "nodeType": "YulLiteral", + "src": "4557:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4546:3:74", + "nodeType": "YulIdentifier", + "src": "4546:3:74" + }, + "nativeSrc": "4546:16:74", + "nodeType": "YulFunctionCall", + "src": "4546:16:74" + }, + { + "name": "pos", + "nativeSrc": "4564:3:74", + "nodeType": "YulIdentifier", + "src": "4564:3:74" + }, + { + "name": "length", + "nativeSrc": "4569:6:74", + "nodeType": "YulIdentifier", + "src": "4569:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "4511:34:74", + "nodeType": "YulIdentifier", + "src": "4511:34:74" + }, + "nativeSrc": "4511:65:74", + "nodeType": "YulFunctionCall", + "src": "4511:65:74" + }, + "nativeSrc": "4511:65:74", + "nodeType": "YulExpressionStatement", + "src": "4511:65:74" + }, + { + "nativeSrc": "4585:46:74", + "nodeType": "YulAssignment", + "src": "4585:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4596:3:74", + "nodeType": "YulIdentifier", + "src": "4596:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "4623:6:74", + "nodeType": "YulIdentifier", + "src": "4623:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "4601:21:74", + "nodeType": "YulIdentifier", + "src": "4601:21:74" + }, + "nativeSrc": "4601:29:74", + "nodeType": "YulFunctionCall", + "src": "4601:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4592:3:74", + "nodeType": "YulIdentifier", + "src": "4592:3:74" + }, + "nativeSrc": "4592:39:74", + "nodeType": "YulFunctionCall", + "src": "4592:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4585:3:74", + "nodeType": "YulIdentifier", + "src": "4585:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4248:389:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4327:5:74", + "nodeType": "YulTypedName", + "src": "4327:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4334:3:74", + "nodeType": "YulTypedName", + "src": "4334:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4342:3:74", + "nodeType": "YulTypedName", + "src": "4342:3:74", + "type": "" + } + ], + "src": "4248:389:74" + }, + { + "body": { + "nativeSrc": "4767:201:74", + "nodeType": "YulBlock", + "src": "4767:201:74", + "statements": [ + { + "nativeSrc": "4777:26:74", + "nodeType": "YulAssignment", + "src": "4777:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4789:9:74", + "nodeType": "YulIdentifier", + "src": "4789:9:74" + }, + { + "kind": "number", + "nativeSrc": "4800:2:74", + "nodeType": "YulLiteral", + "src": "4800:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4785:3:74", + "nodeType": "YulIdentifier", + "src": "4785:3:74" + }, + "nativeSrc": "4785:18:74", + "nodeType": "YulFunctionCall", + "src": "4785:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4777:4:74", + "nodeType": "YulIdentifier", + "src": "4777:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4824:9:74", + "nodeType": "YulIdentifier", + "src": "4824:9:74" + }, + { + "kind": "number", + "nativeSrc": "4835:1:74", + "nodeType": "YulLiteral", + "src": "4835:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4820:3:74", + "nodeType": "YulIdentifier", + "src": "4820:3:74" + }, + "nativeSrc": "4820:17:74", + "nodeType": "YulFunctionCall", + "src": "4820:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4843:4:74", + "nodeType": "YulIdentifier", + "src": "4843:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4849:9:74", + "nodeType": "YulIdentifier", + "src": "4849:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4839:3:74", + "nodeType": "YulIdentifier", + "src": "4839:3:74" + }, + "nativeSrc": "4839:20:74", + "nodeType": "YulFunctionCall", + "src": "4839:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4813:6:74", + "nodeType": "YulIdentifier", + "src": "4813:6:74" + }, + "nativeSrc": "4813:47:74", + "nodeType": "YulFunctionCall", + "src": "4813:47:74" + }, + "nativeSrc": "4813:47:74", + "nodeType": "YulExpressionStatement", + "src": "4813:47:74" + }, + { + "nativeSrc": "4869:92:74", + "nodeType": "YulAssignment", + "src": "4869:92:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4947:6:74", + "nodeType": "YulIdentifier", + "src": "4947:6:74" + }, + { + "name": "tail", + "nativeSrc": "4956:4:74", + "nodeType": "YulIdentifier", + "src": "4956:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4877:69:74", + "nodeType": "YulIdentifier", + "src": "4877:69:74" + }, + "nativeSrc": "4877:84:74", + "nodeType": "YulFunctionCall", + "src": "4877:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4869:4:74", + "nodeType": "YulIdentifier", + "src": "4869:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "4643:325:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4739:9:74", + "nodeType": "YulTypedName", + "src": "4739:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4751:6:74", + "nodeType": "YulTypedName", + "src": "4751:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4762:4:74", + "nodeType": "YulTypedName", + "src": "4762:4:74", + "type": "" + } + ], + "src": "4643:325:74" + }, + { + "body": { + "nativeSrc": "5002:152:74", + "nodeType": "YulBlock", + "src": "5002:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5019:1:74", + "nodeType": "YulLiteral", + "src": "5019:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5022:77:74", + "nodeType": "YulLiteral", + "src": "5022:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5012:6:74", + "nodeType": "YulIdentifier", + "src": "5012:6:74" + }, + "nativeSrc": "5012:88:74", + "nodeType": "YulFunctionCall", + "src": "5012:88:74" + }, + "nativeSrc": "5012:88:74", + "nodeType": "YulExpressionStatement", + "src": "5012:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5116:1:74", + "nodeType": "YulLiteral", + "src": "5116:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "5119:4:74", + "nodeType": "YulLiteral", + "src": "5119:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5109:6:74", + "nodeType": "YulIdentifier", + "src": "5109:6:74" + }, + "nativeSrc": "5109:15:74", + "nodeType": "YulFunctionCall", + "src": "5109:15:74" + }, + "nativeSrc": "5109:15:74", + "nodeType": "YulExpressionStatement", + "src": "5109:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5140:1:74", + "nodeType": "YulLiteral", + "src": "5140:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5143:4:74", + "nodeType": "YulLiteral", + "src": "5143:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5133:6:74", + "nodeType": "YulIdentifier", + "src": "5133:6:74" + }, + "nativeSrc": "5133:15:74", + "nodeType": "YulFunctionCall", + "src": "5133:15:74" + }, + "nativeSrc": "5133:15:74", + "nodeType": "YulExpressionStatement", + "src": "5133:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "4974:180:74", + "nodeType": "YulFunctionDefinition", + "src": "4974:180:74" + }, + { + "body": { + "nativeSrc": "5204:147:74", + "nodeType": "YulBlock", + "src": "5204:147:74", + "statements": [ + { + "nativeSrc": "5214:25:74", + "nodeType": "YulAssignment", + "src": "5214:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5237:1:74", + "nodeType": "YulIdentifier", + "src": "5237:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5219:17:74", + "nodeType": "YulIdentifier", + "src": "5219:17:74" + }, + "nativeSrc": "5219:20:74", + "nodeType": "YulFunctionCall", + "src": "5219:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "5214:1:74", + "nodeType": "YulIdentifier", + "src": "5214:1:74" + } + ] + }, + { + "nativeSrc": "5248:25:74", + "nodeType": "YulAssignment", + "src": "5248:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "5271:1:74", + "nodeType": "YulIdentifier", + "src": "5271:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5253:17:74", + "nodeType": "YulIdentifier", + "src": "5253:17:74" + }, + "nativeSrc": "5253:20:74", + "nodeType": "YulFunctionCall", + "src": "5253:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "5248:1:74", + "nodeType": "YulIdentifier", + "src": "5248:1:74" + } + ] + }, + { + "nativeSrc": "5282:16:74", + "nodeType": "YulAssignment", + "src": "5282:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5293:1:74", + "nodeType": "YulIdentifier", + "src": "5293:1:74" + }, + { + "name": "y", + "nativeSrc": "5296:1:74", + "nodeType": "YulIdentifier", + "src": "5296:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5289:3:74", + "nodeType": "YulIdentifier", + "src": "5289:3:74" + }, + "nativeSrc": "5289:9:74", + "nodeType": "YulFunctionCall", + "src": "5289:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "5282:3:74", + "nodeType": "YulIdentifier", + "src": "5282:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "5322:22:74", + "nodeType": "YulBlock", + "src": "5322:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "5324:16:74", + "nodeType": "YulIdentifier", + "src": "5324:16:74" + }, + "nativeSrc": "5324:18:74", + "nodeType": "YulFunctionCall", + "src": "5324:18:74" + }, + "nativeSrc": "5324:18:74", + "nodeType": "YulExpressionStatement", + "src": "5324:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5314:1:74", + "nodeType": "YulIdentifier", + "src": "5314:1:74" + }, + { + "name": "sum", + "nativeSrc": "5317:3:74", + "nodeType": "YulIdentifier", + "src": "5317:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5311:2:74", + "nodeType": "YulIdentifier", + "src": "5311:2:74" + }, + "nativeSrc": "5311:10:74", + "nodeType": "YulFunctionCall", + "src": "5311:10:74" + }, + "nativeSrc": "5308:36:74", + "nodeType": "YulIf", + "src": "5308:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "5160:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "5191:1:74", + "nodeType": "YulTypedName", + "src": "5191:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "5194:1:74", + "nodeType": "YulTypedName", + "src": "5194:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "5200:3:74", + "nodeType": "YulTypedName", + "src": "5200:3:74", + "type": "" + } + ], + "src": "5160:191:74" + }, + { + "body": { + "nativeSrc": "5453:73:74", + "nodeType": "YulBlock", + "src": "5453:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5470:3:74", + "nodeType": "YulIdentifier", + "src": "5470:3:74" + }, + { + "name": "length", + "nativeSrc": "5475:6:74", + "nodeType": "YulIdentifier", + "src": "5475:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5463:6:74", + "nodeType": "YulIdentifier", + "src": "5463:6:74" + }, + "nativeSrc": "5463:19:74", + "nodeType": "YulFunctionCall", + "src": "5463:19:74" + }, + "nativeSrc": "5463:19:74", + "nodeType": "YulExpressionStatement", + "src": "5463:19:74" + }, + { + "nativeSrc": "5491:29:74", + "nodeType": "YulAssignment", + "src": "5491:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5510:3:74", + "nodeType": "YulIdentifier", + "src": "5510:3:74" + }, + { + "kind": "number", + "nativeSrc": "5515:4:74", + "nodeType": "YulLiteral", + "src": "5515:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5506:3:74", + "nodeType": "YulIdentifier", + "src": "5506:3:74" + }, + "nativeSrc": "5506:14:74", + "nodeType": "YulFunctionCall", + "src": "5506:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "5491:11:74", + "nodeType": "YulIdentifier", + "src": "5491:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "5357:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "5425:3:74", + "nodeType": "YulTypedName", + "src": "5425:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "5430:6:74", + "nodeType": "YulTypedName", + "src": "5430:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "5441:11:74", + "nodeType": "YulTypedName", + "src": "5441:11:74", + "type": "" + } + ], + "src": "5357:169:74" + }, + { + "body": { + "nativeSrc": "5638:68:74", + "nodeType": "YulBlock", + "src": "5638:68:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "5660:6:74", + "nodeType": "YulIdentifier", + "src": "5660:6:74" + }, + { + "kind": "number", + "nativeSrc": "5668:1:74", + "nodeType": "YulLiteral", + "src": "5668:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5656:3:74", + "nodeType": "YulIdentifier", + "src": "5656:3:74" + }, + "nativeSrc": "5656:14:74", + "nodeType": "YulFunctionCall", + "src": "5656:14:74" + }, + { + "hexValue": "736c69636542797465733a206f7574206f662072616e6765", + "kind": "string", + "nativeSrc": "5672:26:74", + "nodeType": "YulLiteral", + "src": "5672:26:74", + "type": "", + "value": "sliceBytes: out of range" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5649:6:74", + "nodeType": "YulIdentifier", + "src": "5649:6:74" + }, + "nativeSrc": "5649:50:74", + "nodeType": "YulFunctionCall", + "src": "5649:50:74" + }, + "nativeSrc": "5649:50:74", + "nodeType": "YulExpressionStatement", + "src": "5649:50:74" + } + ] + }, + "name": "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "nativeSrc": "5532:174:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "5630:6:74", + "nodeType": "YulTypedName", + "src": "5630:6:74", + "type": "" + } + ], + "src": "5532:174:74" + }, + { + "body": { + "nativeSrc": "5858:220:74", + "nodeType": "YulBlock", + "src": "5858:220:74", + "statements": [ + { + "nativeSrc": "5868:74:74", + "nodeType": "YulAssignment", + "src": "5868:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5934:3:74", + "nodeType": "YulIdentifier", + "src": "5934:3:74" + }, + { + "kind": "number", + "nativeSrc": "5939:2:74", + "nodeType": "YulLiteral", + "src": "5939:2:74", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "5875:58:74", + "nodeType": "YulIdentifier", + "src": "5875:58:74" + }, + "nativeSrc": "5875:67:74", + "nodeType": "YulFunctionCall", + "src": "5875:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "5868:3:74", + "nodeType": "YulIdentifier", + "src": "5868:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6040:3:74", + "nodeType": "YulIdentifier", + "src": "6040:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "nativeSrc": "5951:88:74", + "nodeType": "YulIdentifier", + "src": "5951:88:74" + }, + "nativeSrc": "5951:93:74", + "nodeType": "YulFunctionCall", + "src": "5951:93:74" + }, + "nativeSrc": "5951:93:74", + "nodeType": "YulExpressionStatement", + "src": "5951:93:74" + }, + { + "nativeSrc": "6053:19:74", + "nodeType": "YulAssignment", + "src": "6053:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6064:3:74", + "nodeType": "YulIdentifier", + "src": "6064:3:74" + }, + { + "kind": "number", + "nativeSrc": "6069:2:74", + "nodeType": "YulLiteral", + "src": "6069:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6060:3:74", + "nodeType": "YulIdentifier", + "src": "6060:3:74" + }, + "nativeSrc": "6060:12:74", + "nodeType": "YulFunctionCall", + "src": "6060:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "6053:3:74", + "nodeType": "YulIdentifier", + "src": "6053:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5712:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "5846:3:74", + "nodeType": "YulTypedName", + "src": "5846:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "5854:3:74", + "nodeType": "YulTypedName", + "src": "5854:3:74", + "type": "" + } + ], + "src": "5712:366:74" + }, + { + "body": { + "nativeSrc": "6255:248:74", + "nodeType": "YulBlock", + "src": "6255:248:74", + "statements": [ + { + "nativeSrc": "6265:26:74", + "nodeType": "YulAssignment", + "src": "6265:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6277:9:74", + "nodeType": "YulIdentifier", + "src": "6277:9:74" + }, + { + "kind": "number", + "nativeSrc": "6288:2:74", + "nodeType": "YulLiteral", + "src": "6288:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6273:3:74", + "nodeType": "YulIdentifier", + "src": "6273:3:74" + }, + "nativeSrc": "6273:18:74", + "nodeType": "YulFunctionCall", + "src": "6273:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6265:4:74", + "nodeType": "YulIdentifier", + "src": "6265:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6312:9:74", + "nodeType": "YulIdentifier", + "src": "6312:9:74" + }, + { + "kind": "number", + "nativeSrc": "6323:1:74", + "nodeType": "YulLiteral", + "src": "6323:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6308:3:74", + "nodeType": "YulIdentifier", + "src": "6308:3:74" + }, + "nativeSrc": "6308:17:74", + "nodeType": "YulFunctionCall", + "src": "6308:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "6331:4:74", + "nodeType": "YulIdentifier", + "src": "6331:4:74" + }, + { + "name": "headStart", + "nativeSrc": "6337:9:74", + "nodeType": "YulIdentifier", + "src": "6337:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6327:3:74", + "nodeType": "YulIdentifier", + "src": "6327:3:74" + }, + "nativeSrc": "6327:20:74", + "nodeType": "YulFunctionCall", + "src": "6327:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6301:6:74", + "nodeType": "YulIdentifier", + "src": "6301:6:74" + }, + "nativeSrc": "6301:47:74", + "nodeType": "YulFunctionCall", + "src": "6301:47:74" + }, + "nativeSrc": "6301:47:74", + "nodeType": "YulExpressionStatement", + "src": "6301:47:74" + }, + { + "nativeSrc": "6357:139:74", + "nodeType": "YulAssignment", + "src": "6357:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "6491:4:74", + "nodeType": "YulIdentifier", + "src": "6491:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack", + "nativeSrc": "6365:124:74", + "nodeType": "YulIdentifier", + "src": "6365:124:74" + }, + "nativeSrc": "6365:131:74", + "nodeType": "YulFunctionCall", + "src": "6365:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6357:4:74", + "nodeType": "YulIdentifier", + "src": "6357:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "6084:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6235:9:74", + "nodeType": "YulTypedName", + "src": "6235:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6250:4:74", + "nodeType": "YulTypedName", + "src": "6250:4:74", + "type": "" + } + ], + "src": "6084:419:74" + }, + { + "body": { + "nativeSrc": "6537:152:74", + "nodeType": "YulBlock", + "src": "6537:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6554:1:74", + "nodeType": "YulLiteral", + "src": "6554:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6557:77:74", + "nodeType": "YulLiteral", + "src": "6557:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6547:6:74", + "nodeType": "YulIdentifier", + "src": "6547:6:74" + }, + "nativeSrc": "6547:88:74", + "nodeType": "YulFunctionCall", + "src": "6547:88:74" + }, + "nativeSrc": "6547:88:74", + "nodeType": "YulExpressionStatement", + "src": "6547:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6651:1:74", + "nodeType": "YulLiteral", + "src": "6651:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "6654:4:74", + "nodeType": "YulLiteral", + "src": "6654:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6644:6:74", + "nodeType": "YulIdentifier", + "src": "6644:6:74" + }, + "nativeSrc": "6644:15:74", + "nodeType": "YulFunctionCall", + "src": "6644:15:74" + }, + "nativeSrc": "6644:15:74", + "nodeType": "YulExpressionStatement", + "src": "6644:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6675:1:74", + "nodeType": "YulLiteral", + "src": "6675:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6678:4:74", + "nodeType": "YulLiteral", + "src": "6678:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6668:6:74", + "nodeType": "YulIdentifier", + "src": "6668:6:74" + }, + "nativeSrc": "6668:15:74", + "nodeType": "YulFunctionCall", + "src": "6668:15:74" + }, + "nativeSrc": "6668:15:74", + "nodeType": "YulExpressionStatement", + "src": "6668:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "6509:180:74", + "nodeType": "YulFunctionDefinition", + "src": "6509:180:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_bytes_memory_ptrt_uint256t_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73(memPtr) {\n\n mstore(add(memPtr, 0), \"sliceBytes: out of range\")\n\n }\n\n function abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80639f0701421461003a575b600080fd5b610054600480360381019061004f919061032b565b61006a565b6040516100619190610419565b60405180910390f35b60608351828461007a919061046a565b11156100bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100b2906104fb565b60405180910390fd5b60008267ffffffffffffffff8111156100d7576100d66101ca565b5b6040519080825280601f01601f1916602001820160405280156101095781602001600182028036833780820191505090505b50905060005b8381101561018f57858582610124919061046a565b815181106101355761013461051b565b5b602001015160f81c60f81b8282815181106101535761015261051b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808060010191505061010f565b50809150509392505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610202826101b9565b810181811067ffffffffffffffff82111715610221576102206101ca565b5b80604052505050565b600061023461019b565b905061024082826101f9565b919050565b600067ffffffffffffffff8211156102605761025f6101ca565b5b610269826101b9565b9050602081019050919050565b82818337600083830152505050565b600061029861029384610245565b61022a565b9050828152602081018484840111156102b4576102b36101b4565b5b6102bf848285610276565b509392505050565b600082601f8301126102dc576102db6101af565b5b81356102ec848260208601610285565b91505092915050565b6000819050919050565b610308816102f5565b811461031357600080fd5b50565b600081359050610325816102ff565b92915050565b600080600060608486031215610344576103436101a5565b5b600084013567ffffffffffffffff811115610362576103616101aa565b5b61036e868287016102c7565b935050602061037f86828701610316565b925050604061039086828701610316565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b60005b838110156103d45780820151818401526020810190506103b9565b60008484015250505050565b60006103eb8261039a565b6103f581856103a5565b93506104058185602086016103b6565b61040e816101b9565b840191505092915050565b6000602082019050818103600083015261043381846103e0565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610475826102f5565b9150610480836102f5565b92508282019050808211156104985761049761043b565b5b92915050565b600082825260208201905092915050565b7f736c69636542797465733a206f7574206f662072616e67650000000000000000600082015250565b60006104e560188361049e565b91506104f0826104af565b602082019050919050565b60006020820190508181036000830152610514816104d8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220cff3b4cc4601fd20a49bcac012578853281ee7531fdba425647e9b9b4ca2517764736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x35 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F070142 EQ PUSH2 0x3A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x54 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F SWAP2 SWAP1 PUSH2 0x32B JUMP JUMPDEST PUSH2 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61 SWAP2 SWAP1 PUSH2 0x419 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x7A SWAP2 SWAP1 PUSH2 0x46A JUMP JUMPDEST GT ISZERO PUSH2 0xBB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB2 SWAP1 PUSH2 0x4FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD7 JUMPI PUSH2 0xD6 PUSH2 0x1CA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x109 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x18F JUMPI DUP6 DUP6 DUP3 PUSH2 0x124 SWAP2 SWAP1 PUSH2 0x46A JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x135 JUMPI PUSH2 0x134 PUSH2 0x51B JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x153 JUMPI PUSH2 0x152 PUSH2 0x51B JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x10F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x202 DUP3 PUSH2 0x1B9 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x221 JUMPI PUSH2 0x220 PUSH2 0x1CA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x234 PUSH2 0x19B JUMP JUMPDEST SWAP1 POP PUSH2 0x240 DUP3 DUP3 PUSH2 0x1F9 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x260 JUMPI PUSH2 0x25F PUSH2 0x1CA JUMP JUMPDEST JUMPDEST PUSH2 0x269 DUP3 PUSH2 0x1B9 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x298 PUSH2 0x293 DUP5 PUSH2 0x245 JUMP JUMPDEST PUSH2 0x22A JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2B4 JUMPI PUSH2 0x2B3 PUSH2 0x1B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2BF DUP5 DUP3 DUP6 PUSH2 0x276 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2DC JUMPI PUSH2 0x2DB PUSH2 0x1AF JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2EC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x285 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x308 DUP2 PUSH2 0x2F5 JUMP JUMPDEST DUP2 EQ PUSH2 0x313 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x325 DUP2 PUSH2 0x2FF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x344 JUMPI PUSH2 0x343 PUSH2 0x1A5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x362 JUMPI PUSH2 0x361 PUSH2 0x1AA JUMP JUMPDEST JUMPDEST PUSH2 0x36E DUP7 DUP3 DUP8 ADD PUSH2 0x2C7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x37F DUP7 DUP3 DUP8 ADD PUSH2 0x316 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x390 DUP7 DUP3 DUP8 ADD PUSH2 0x316 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3D4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3B9 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3EB DUP3 PUSH2 0x39A JUMP JUMPDEST PUSH2 0x3F5 DUP2 DUP6 PUSH2 0x3A5 JUMP JUMPDEST SWAP4 POP PUSH2 0x405 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B6 JUMP JUMPDEST PUSH2 0x40E DUP2 PUSH2 0x1B9 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x433 DUP2 DUP5 PUSH2 0x3E0 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x475 DUP3 PUSH2 0x2F5 JUMP JUMPDEST SWAP2 POP PUSH2 0x480 DUP4 PUSH2 0x2F5 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x498 JUMPI PUSH2 0x497 PUSH2 0x43B JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x736C69636542797465733A206F7574206F662072616E67650000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4E5 PUSH1 0x18 DUP4 PUSH2 0x49E JUMP JUMPDEST SWAP2 POP PUSH2 0x4F0 DUP3 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x514 DUP2 PUSH2 0x4D8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCF RETURN 0xB4 0xCC CHAINID ADD REVERT KECCAK256 LOG4 SWAP12 0xCA 0xC0 SLT JUMPI DUP9 MSTORE8 0x28 0x1E 0xE7 MSTORE8 0x1F 0xDB LOG4 0x25 PUSH5 0x7E9B9B4CA2 MLOAD PUSH24 0x64736F6C6343000819003300000000000000000000000000 ", + "sourceMap": "627:7508:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;3680:390;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;3801:12;3851:4;:11;3841:6;3833:5;:14;;;;:::i;:::-;:29;;3825:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;3902:19;3934:6;3924:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3902:39;;3956:9;3951:89;3975:6;3971:1;:10;3951:89;;;4014:4;4023:5;4019:1;:9;;;;:::i;:::-;4014:15;;;;;;;;:::i;:::-;;;;;;;;;;4002:6;4009:1;4002:9;;;;;;;;:::i;:::-;;;;;:27;;;;;;;;;;;3983:3;;;;;;;3951:89;;;;4057:6;4050:13;;;3680:390;;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:307::-;1357:4;1447:18;1439:6;1436:30;1433:56;;;1469:18;;:::i;:::-;1433:56;1507:29;1529:6;1507:29;:::i;:::-;1499:37;;1591:4;1585;1581:15;1573:23;;1296:307;;;:::o;1609:148::-;1707:6;1702:3;1697;1684:30;1748:1;1739:6;1734:3;1730:16;1723:27;1609:148;;;:::o;1763:423::-;1840:5;1865:65;1881:48;1922:6;1881:48;:::i;:::-;1865:65;:::i;:::-;1856:74;;1953:6;1946:5;1939:21;1991:4;1984:5;1980:16;2029:3;2020:6;2015:3;2011:16;2008:25;2005:112;;;2036:79;;:::i;:::-;2005:112;2126:54;2173:6;2168:3;2163;2126:54;:::i;:::-;1846:340;1763:423;;;;;:::o;2205:338::-;2260:5;2309:3;2302:4;2294:6;2290:17;2286:27;2276:122;;2317:79;;:::i;:::-;2276:122;2434:6;2421:20;2459:78;2533:3;2525:6;2518:4;2510:6;2506:17;2459:78;:::i;:::-;2450:87;;2266:277;2205:338;;;;:::o;2549:77::-;2586:7;2615:5;2604:16;;2549:77;;;:::o;2632:122::-;2705:24;2723:5;2705:24;:::i;:::-;2698:5;2695:35;2685:63;;2744:1;2741;2734:12;2685:63;2632:122;:::o;2760:139::-;2806:5;2844:6;2831:20;2822:29;;2860:33;2887:5;2860:33;:::i;:::-;2760:139;;;;:::o;2905:797::-;2991:6;2999;3007;3056:2;3044:9;3035:7;3031:23;3027:32;3024:119;;;3062:79;;:::i;:::-;3024:119;3210:1;3199:9;3195:17;3182:31;3240:18;3232:6;3229:30;3226:117;;;3262:79;;:::i;:::-;3226:117;3367:62;3421:7;3412:6;3401:9;3397:22;3367:62;:::i;:::-;3357:72;;3153:286;3478:2;3504:53;3549:7;3540:6;3529:9;3525:22;3504:53;:::i;:::-;3494:63;;3449:118;3606:2;3632:53;3677:7;3668:6;3657:9;3653:22;3632:53;:::i;:::-;3622:63;;3577:118;2905:797;;;;;:::o;3708:98::-;3759:6;3793:5;3787:12;3777:22;;3708:98;;;:::o;3812:176::-;3903:11;3937:6;3932:3;3925:19;3977:4;3972:3;3968:14;3953:29;;3812:176;;;;:::o;3994:248::-;4076:1;4086:113;4100:6;4097:1;4094:13;4086:113;;;4185:1;4180:3;4176:11;4170:18;4166:1;4161:3;4157:11;4150:39;4122:2;4119:1;4115:10;4110:15;;4086:113;;;4233:1;4224:6;4219:3;4215:16;4208:27;4056:186;3994:248;;;:::o;4248:389::-;4342:3;4370:38;4402:5;4370:38;:::i;:::-;4424:78;4495:6;4490:3;4424:78;:::i;:::-;4417:85;;4511:65;4569:6;4564:3;4557:4;4550:5;4546:16;4511:65;:::i;:::-;4601:29;4623:6;4601:29;:::i;:::-;4596:3;4592:39;4585:46;;4346:291;4248:389;;;;:::o;4643:325::-;4762:4;4800:2;4789:9;4785:18;4777:26;;4849:9;4843:4;4839:20;4835:1;4824:9;4820:17;4813:47;4877:84;4956:4;4947:6;4877:84;:::i;:::-;4869:92;;4643:325;;;;:::o;4974:180::-;5022:77;5019:1;5012:88;5119:4;5116:1;5109:15;5143:4;5140:1;5133:15;5160:191;5200:3;5219:20;5237:1;5219:20;:::i;:::-;5214:25;;5253:20;5271:1;5253:20;:::i;:::-;5248:25;;5296:1;5293;5289:9;5282:16;;5317:3;5314:1;5311:10;5308:36;;;5324:18;;:::i;:::-;5308:36;5160:191;;;;:::o;5357:169::-;5441:11;5475:6;5470:3;5463:19;5515:4;5510:3;5506:14;5491:29;;5357:169;;;;:::o;5532:174::-;5672:26;5668:1;5660:6;5656:14;5649:50;5532:174;:::o;5712:366::-;5854:3;5875:67;5939:2;5934:3;5875:67;:::i;:::-;5868:74;;5951:93;6040:3;5951:93;:::i;:::-;6069:2;6064:3;6060:12;6053:19;;5712:366;;;:::o;6084:419::-;6250:4;6288:2;6277:9;6273:18;6265:26;;6337:9;6331:4;6327:20;6323:1;6312:9;6308:17;6301:47;6365:131;6491:4;6365:131;:::i;:::-;6357:139;;6084:419;;;:::o;6509:180::-;6557:77;6554:1;6547:88;6654:4;6651:1;6644:15;6678:4;6675:1;6668:15" + }, + "methodIdentifiers": { + "sliceBytes(bytes,uint256,uint256)": "9f070142" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"size\",\"type\":\"uint256\"}],\"name\":\"InvalidSlotSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"UnknownOpcode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"sliceBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/LineaProofHelper.sol\":\"LineaProofHelper\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/LineaProofHelper.sol\":{\"keccak256\":\"0x3ae8167e864cd8ae1e6804d3555c7df29142d1ae1347d1f74fe0c5dcd44368d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2c1a4d294cbd9bced7e3d42baf8835ef42caf214aaa47d878d1382305ed309e\",\"dweb:/ipfs/QmNU5hMSc5fVdcfMswcTv3MwRTKGg4tffNTJ89HUN9TVW6\"]},\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":{\"keccak256\":\"0x7ce398ff779301fa880cfbe0c803f3955c1908cba02948b56e759173ecba0b52\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://25940ab3d3a3cd594bbeff12d43f54a11b389717f463aa0c2f8c505a37947f78\",\"dweb:/ipfs/QmbWz3GYdprM682MeMoXfkK5sDeewbMWhwUQ8sS84EpGBB\"]},\"@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol\":{\"keccak256\":\"0xd7738d73506bffcf02c5e4ce5761e3d429261e5c522c39cf43eb9b6c943154de\",\"license\":\"AGPL-3.0\",\"urls\":[\"bzz-raw://1b7801ce7f2495799c8de31e845f88aebae02226d9dc20e885228c4a22a6b07d\",\"dweb:/ipfs/QmREJ13mkEa4bWgsHvkeh9RW2NyYSn5NbcwKp6Rkk991tF\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol": { + "IRollup": { + "abi": [ + { + "inputs": [], + "name": "currentL2BlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "l2blockNumber", + "type": "uint256" + } + ], + "name": "stateRootHashes", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "currentL2BlockNumber()": "695378f5", + "stateRootHashes(uint256)": "8be745d1" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"currentL2BlockNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"l2blockNumber\",\"type\":\"uint256\"}],\"name\":\"stateRootHashes\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol\":\"IRollup\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@consensys/linea-state-verifier/contracts/LineaProofHelper.sol\":{\"keccak256\":\"0x3ae8167e864cd8ae1e6804d3555c7df29142d1ae1347d1f74fe0c5dcd44368d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2c1a4d294cbd9bced7e3d42baf8835ef42caf214aaa47d878d1382305ed309e\",\"dweb:/ipfs/QmNU5hMSc5fVdcfMswcTv3MwRTKGg4tffNTJ89HUN9TVW6\"]},\"@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol\":{\"keccak256\":\"0xa689f18e9e208b2d8ecd1d9a9dcb42b1b4aafbf4740114cab9fdfb150994cb47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a11a9c9421d781d8f007d0c8ef2bb7558a8751ef53f6b88f6dc673a1d51574c\",\"dweb:/ipfs/QmRpsUQGNwBgt5arCiqbmT4X7HzWEsWsLV4NTuZdMfFbsP\"]},\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":{\"keccak256\":\"0x7ce398ff779301fa880cfbe0c803f3955c1908cba02948b56e759173ecba0b52\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://25940ab3d3a3cd594bbeff12d43f54a11b389717f463aa0c2f8c505a37947f78\",\"dweb:/ipfs/QmbWz3GYdprM682MeMoXfkK5sDeewbMWhwUQ8sS84EpGBB\"]},\"@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol\":{\"keccak256\":\"0xd7738d73506bffcf02c5e4ce5761e3d429261e5c522c39cf43eb9b6c943154de\",\"license\":\"AGPL-3.0\",\"urls\":[\"bzz-raw://1b7801ce7f2495799c8de31e845f88aebae02226d9dc20e885228c4a22a6b07d\",\"dweb:/ipfs/QmREJ13mkEa4bWgsHvkeh9RW2NyYSn5NbcwKp6Rkk991tF\"]}},\"version\":1}" + }, + "LineaSparseProofVerifier": { + "abi": [ + { + "inputs": [ + { + "internalType": "string[]", + "name": "urls", + "type": "string[]" + }, + { + "internalType": "address", + "name": "rollup", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "size", + "type": "uint256" + } + ], + "name": "InvalidSlotSize", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "name": "UnknownOpcode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "_gatewayURLs", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "_rollup", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gatewayURLs", + "outputs": [ + { + "internalType": "string[]", + "name": "", + "type": "string[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes32[]", + "name": "commands", + "type": "bytes32[]" + }, + { + "internalType": "bytes[]", + "name": "constants", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "acceptedL2BlockRangeLength", + "type": "uint256" + } + ], + "name": "getStorageValues", + "outputs": [ + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_1604": { + "entryPoint": null, + "id": 1604, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 785, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr_fromMemory": { + "entryPoint": 673, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 1039, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 920, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr_fromMemory": { + "entryPoint": 739, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptrt_address_fromMemory": { + "entryPoint": 1060, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "allocate_memory": { + "entryPoint": 501, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 363, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 528, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 582, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 1259, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 1152, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 1556, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_address": { + "entryPoint": 998, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 966, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 1391, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 1521, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 1411, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 1697, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 631, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 1280, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 1210, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 1669, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 452, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 1401, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 1639, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 1163, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 405, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 1445, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 383, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 572, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 577, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 378, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 373, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 388, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 1296, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 1626, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 1497, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 1309, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 1455, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 1016, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 1492, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:10823:74", + "nodeType": "YulBlock", + "src": "0:10823:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "505:54:74", + "nodeType": "YulBlock", + "src": "505:54:74", + "statements": [ + { + "nativeSrc": "515:38:74", + "nodeType": "YulAssignment", + "src": "515:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "533:5:74", + "nodeType": "YulIdentifier", + "src": "533:5:74" + }, + { + "kind": "number", + "nativeSrc": "540:2:74", + "nodeType": "YulLiteral", + "src": "540:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "529:3:74", + "nodeType": "YulIdentifier", + "src": "529:3:74" + }, + "nativeSrc": "529:14:74", + "nodeType": "YulFunctionCall", + "src": "529:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "549:2:74", + "nodeType": "YulLiteral", + "src": "549:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "545:3:74", + "nodeType": "YulIdentifier", + "src": "545:3:74" + }, + "nativeSrc": "545:7:74", + "nodeType": "YulFunctionCall", + "src": "545:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "525:3:74", + "nodeType": "YulIdentifier", + "src": "525:3:74" + }, + "nativeSrc": "525:28:74", + "nodeType": "YulFunctionCall", + "src": "525:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "515:6:74", + "nodeType": "YulIdentifier", + "src": "515:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "457:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "488:5:74", + "nodeType": "YulTypedName", + "src": "488:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "498:6:74", + "nodeType": "YulTypedName", + "src": "498:6:74", + "type": "" + } + ], + "src": "457:102:74" + }, + { + "body": { + "nativeSrc": "593:152:74", + "nodeType": "YulBlock", + "src": "593:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "610:1:74", + "nodeType": "YulLiteral", + "src": "610:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "613:77:74", + "nodeType": "YulLiteral", + "src": "613:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "603:6:74", + "nodeType": "YulIdentifier", + "src": "603:6:74" + }, + "nativeSrc": "603:88:74", + "nodeType": "YulFunctionCall", + "src": "603:88:74" + }, + "nativeSrc": "603:88:74", + "nodeType": "YulExpressionStatement", + "src": "603:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "707:1:74", + "nodeType": "YulLiteral", + "src": "707:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "710:4:74", + "nodeType": "YulLiteral", + "src": "710:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "700:6:74", + "nodeType": "YulIdentifier", + "src": "700:6:74" + }, + "nativeSrc": "700:15:74", + "nodeType": "YulFunctionCall", + "src": "700:15:74" + }, + "nativeSrc": "700:15:74", + "nodeType": "YulExpressionStatement", + "src": "700:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "731:1:74", + "nodeType": "YulLiteral", + "src": "731:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "734:4:74", + "nodeType": "YulLiteral", + "src": "734:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "724:6:74", + "nodeType": "YulIdentifier", + "src": "724:6:74" + }, + "nativeSrc": "724:15:74", + "nodeType": "YulFunctionCall", + "src": "724:15:74" + }, + "nativeSrc": "724:15:74", + "nodeType": "YulExpressionStatement", + "src": "724:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "565:180:74", + "nodeType": "YulFunctionDefinition", + "src": "565:180:74" + }, + { + "body": { + "nativeSrc": "794:238:74", + "nodeType": "YulBlock", + "src": "794:238:74", + "statements": [ + { + "nativeSrc": "804:58:74", + "nodeType": "YulVariableDeclaration", + "src": "804:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "826:6:74", + "nodeType": "YulIdentifier", + "src": "826:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "856:4:74", + "nodeType": "YulIdentifier", + "src": "856:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "834:21:74", + "nodeType": "YulIdentifier", + "src": "834:21:74" + }, + "nativeSrc": "834:27:74", + "nodeType": "YulFunctionCall", + "src": "834:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "822:3:74", + "nodeType": "YulIdentifier", + "src": "822:3:74" + }, + "nativeSrc": "822:40:74", + "nodeType": "YulFunctionCall", + "src": "822:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "808:10:74", + "nodeType": "YulTypedName", + "src": "808:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "973:22:74", + "nodeType": "YulBlock", + "src": "973:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "975:16:74", + "nodeType": "YulIdentifier", + "src": "975:16:74" + }, + "nativeSrc": "975:18:74", + "nodeType": "YulFunctionCall", + "src": "975:18:74" + }, + "nativeSrc": "975:18:74", + "nodeType": "YulExpressionStatement", + "src": "975:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "916:10:74", + "nodeType": "YulIdentifier", + "src": "916:10:74" + }, + { + "kind": "number", + "nativeSrc": "928:18:74", + "nodeType": "YulLiteral", + "src": "928:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "913:2:74", + "nodeType": "YulIdentifier", + "src": "913:2:74" + }, + "nativeSrc": "913:34:74", + "nodeType": "YulFunctionCall", + "src": "913:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "952:10:74", + "nodeType": "YulIdentifier", + "src": "952:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "964:6:74", + "nodeType": "YulIdentifier", + "src": "964:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "949:2:74", + "nodeType": "YulIdentifier", + "src": "949:2:74" + }, + "nativeSrc": "949:22:74", + "nodeType": "YulFunctionCall", + "src": "949:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "910:2:74", + "nodeType": "YulIdentifier", + "src": "910:2:74" + }, + "nativeSrc": "910:62:74", + "nodeType": "YulFunctionCall", + "src": "910:62:74" + }, + "nativeSrc": "907:88:74", + "nodeType": "YulIf", + "src": "907:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1011:2:74", + "nodeType": "YulLiteral", + "src": "1011:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "1015:10:74", + "nodeType": "YulIdentifier", + "src": "1015:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1004:6:74", + "nodeType": "YulIdentifier", + "src": "1004:6:74" + }, + "nativeSrc": "1004:22:74", + "nodeType": "YulFunctionCall", + "src": "1004:22:74" + }, + "nativeSrc": "1004:22:74", + "nodeType": "YulExpressionStatement", + "src": "1004:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "751:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "780:6:74", + "nodeType": "YulTypedName", + "src": "780:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "788:4:74", + "nodeType": "YulTypedName", + "src": "788:4:74", + "type": "" + } + ], + "src": "751:281:74" + }, + { + "body": { + "nativeSrc": "1079:88:74", + "nodeType": "YulBlock", + "src": "1079:88:74", + "statements": [ + { + "nativeSrc": "1089:30:74", + "nodeType": "YulAssignment", + "src": "1089:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "1099:18:74", + "nodeType": "YulIdentifier", + "src": "1099:18:74" + }, + "nativeSrc": "1099:20:74", + "nodeType": "YulFunctionCall", + "src": "1099:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "1089:6:74", + "nodeType": "YulIdentifier", + "src": "1089:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "1148:6:74", + "nodeType": "YulIdentifier", + "src": "1148:6:74" + }, + { + "name": "size", + "nativeSrc": "1156:4:74", + "nodeType": "YulIdentifier", + "src": "1156:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "1128:19:74", + "nodeType": "YulIdentifier", + "src": "1128:19:74" + }, + "nativeSrc": "1128:33:74", + "nodeType": "YulFunctionCall", + "src": "1128:33:74" + }, + "nativeSrc": "1128:33:74", + "nodeType": "YulExpressionStatement", + "src": "1128:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "1038:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "1063:4:74", + "nodeType": "YulTypedName", + "src": "1063:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "1072:6:74", + "nodeType": "YulTypedName", + "src": "1072:6:74", + "type": "" + } + ], + "src": "1038:129:74" + }, + { + "body": { + "nativeSrc": "1265:229:74", + "nodeType": "YulBlock", + "src": "1265:229:74", + "statements": [ + { + "body": { + "nativeSrc": "1370:22:74", + "nodeType": "YulBlock", + "src": "1370:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1372:16:74", + "nodeType": "YulIdentifier", + "src": "1372:16:74" + }, + "nativeSrc": "1372:18:74", + "nodeType": "YulFunctionCall", + "src": "1372:18:74" + }, + "nativeSrc": "1372:18:74", + "nodeType": "YulExpressionStatement", + "src": "1372:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1342:6:74", + "nodeType": "YulIdentifier", + "src": "1342:6:74" + }, + { + "kind": "number", + "nativeSrc": "1350:18:74", + "nodeType": "YulLiteral", + "src": "1350:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1339:2:74", + "nodeType": "YulIdentifier", + "src": "1339:2:74" + }, + "nativeSrc": "1339:30:74", + "nodeType": "YulFunctionCall", + "src": "1339:30:74" + }, + "nativeSrc": "1336:56:74", + "nodeType": "YulIf", + "src": "1336:56:74" + }, + { + "nativeSrc": "1402:25:74", + "nodeType": "YulAssignment", + "src": "1402:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1414:6:74", + "nodeType": "YulIdentifier", + "src": "1414:6:74" + }, + { + "kind": "number", + "nativeSrc": "1422:4:74", + "nodeType": "YulLiteral", + "src": "1422:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "1410:3:74", + "nodeType": "YulIdentifier", + "src": "1410:3:74" + }, + "nativeSrc": "1410:17:74", + "nodeType": "YulFunctionCall", + "src": "1410:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1402:4:74", + "nodeType": "YulIdentifier", + "src": "1402:4:74" + } + ] + }, + { + "nativeSrc": "1464:23:74", + "nodeType": "YulAssignment", + "src": "1464:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "1476:4:74", + "nodeType": "YulIdentifier", + "src": "1476:4:74" + }, + { + "kind": "number", + "nativeSrc": "1482:4:74", + "nodeType": "YulLiteral", + "src": "1482:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1472:3:74", + "nodeType": "YulIdentifier", + "src": "1472:3:74" + }, + "nativeSrc": "1472:15:74", + "nodeType": "YulFunctionCall", + "src": "1472:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1464:4:74", + "nodeType": "YulIdentifier", + "src": "1464:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "1173:321:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1249:6:74", + "nodeType": "YulTypedName", + "src": "1249:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1260:4:74", + "nodeType": "YulTypedName", + "src": "1260:4:74", + "type": "" + } + ], + "src": "1173:321:74" + }, + { + "body": { + "nativeSrc": "1589:28:74", + "nodeType": "YulBlock", + "src": "1589:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1606:1:74", + "nodeType": "YulLiteral", + "src": "1606:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1609:1:74", + "nodeType": "YulLiteral", + "src": "1609:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1599:6:74", + "nodeType": "YulIdentifier", + "src": "1599:6:74" + }, + "nativeSrc": "1599:12:74", + "nodeType": "YulFunctionCall", + "src": "1599:12:74" + }, + "nativeSrc": "1599:12:74", + "nodeType": "YulExpressionStatement", + "src": "1599:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "1500:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1500:117:74" + }, + { + "body": { + "nativeSrc": "1712:28:74", + "nodeType": "YulBlock", + "src": "1712:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1729:1:74", + "nodeType": "YulLiteral", + "src": "1729:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1732:1:74", + "nodeType": "YulLiteral", + "src": "1732:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1722:6:74", + "nodeType": "YulIdentifier", + "src": "1722:6:74" + }, + "nativeSrc": "1722:12:74", + "nodeType": "YulFunctionCall", + "src": "1722:12:74" + }, + "nativeSrc": "1722:12:74", + "nodeType": "YulExpressionStatement", + "src": "1722:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "1623:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1623:117:74" + }, + { + "body": { + "nativeSrc": "1813:241:74", + "nodeType": "YulBlock", + "src": "1813:241:74", + "statements": [ + { + "body": { + "nativeSrc": "1918:22:74", + "nodeType": "YulBlock", + "src": "1918:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1920:16:74", + "nodeType": "YulIdentifier", + "src": "1920:16:74" + }, + "nativeSrc": "1920:18:74", + "nodeType": "YulFunctionCall", + "src": "1920:18:74" + }, + "nativeSrc": "1920:18:74", + "nodeType": "YulExpressionStatement", + "src": "1920:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1890:6:74", + "nodeType": "YulIdentifier", + "src": "1890:6:74" + }, + { + "kind": "number", + "nativeSrc": "1898:18:74", + "nodeType": "YulLiteral", + "src": "1898:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1887:2:74", + "nodeType": "YulIdentifier", + "src": "1887:2:74" + }, + "nativeSrc": "1887:30:74", + "nodeType": "YulFunctionCall", + "src": "1887:30:74" + }, + "nativeSrc": "1884:56:74", + "nodeType": "YulIf", + "src": "1884:56:74" + }, + { + "nativeSrc": "1950:37:74", + "nodeType": "YulAssignment", + "src": "1950:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1980:6:74", + "nodeType": "YulIdentifier", + "src": "1980:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "1958:21:74", + "nodeType": "YulIdentifier", + "src": "1958:21:74" + }, + "nativeSrc": "1958:29:74", + "nodeType": "YulFunctionCall", + "src": "1958:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1950:4:74", + "nodeType": "YulIdentifier", + "src": "1950:4:74" + } + ] + }, + { + "nativeSrc": "2024:23:74", + "nodeType": "YulAssignment", + "src": "2024:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "2036:4:74", + "nodeType": "YulIdentifier", + "src": "2036:4:74" + }, + { + "kind": "number", + "nativeSrc": "2042:4:74", + "nodeType": "YulLiteral", + "src": "2042:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2032:3:74", + "nodeType": "YulIdentifier", + "src": "2032:3:74" + }, + "nativeSrc": "2032:15:74", + "nodeType": "YulFunctionCall", + "src": "2032:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "2024:4:74", + "nodeType": "YulIdentifier", + "src": "2024:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "1746:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1797:6:74", + "nodeType": "YulTypedName", + "src": "1797:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1808:4:74", + "nodeType": "YulTypedName", + "src": "1808:4:74", + "type": "" + } + ], + "src": "1746:308:74" + }, + { + "body": { + "nativeSrc": "2122:186:74", + "nodeType": "YulBlock", + "src": "2122:186:74", + "statements": [ + { + "nativeSrc": "2133:10:74", + "nodeType": "YulVariableDeclaration", + "src": "2133:10:74", + "value": { + "kind": "number", + "nativeSrc": "2142:1:74", + "nodeType": "YulLiteral", + "src": "2142:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "2137:1:74", + "nodeType": "YulTypedName", + "src": "2137:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2202:63:74", + "nodeType": "YulBlock", + "src": "2202:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2227:3:74", + "nodeType": "YulIdentifier", + "src": "2227:3:74" + }, + { + "name": "i", + "nativeSrc": "2232:1:74", + "nodeType": "YulIdentifier", + "src": "2232:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2223:3:74", + "nodeType": "YulIdentifier", + "src": "2223:3:74" + }, + "nativeSrc": "2223:11:74", + "nodeType": "YulFunctionCall", + "src": "2223:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2246:3:74", + "nodeType": "YulIdentifier", + "src": "2246:3:74" + }, + { + "name": "i", + "nativeSrc": "2251:1:74", + "nodeType": "YulIdentifier", + "src": "2251:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2242:3:74", + "nodeType": "YulIdentifier", + "src": "2242:3:74" + }, + "nativeSrc": "2242:11:74", + "nodeType": "YulFunctionCall", + "src": "2242:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2236:5:74", + "nodeType": "YulIdentifier", + "src": "2236:5:74" + }, + "nativeSrc": "2236:18:74", + "nodeType": "YulFunctionCall", + "src": "2236:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2216:6:74", + "nodeType": "YulIdentifier", + "src": "2216:6:74" + }, + "nativeSrc": "2216:39:74", + "nodeType": "YulFunctionCall", + "src": "2216:39:74" + }, + "nativeSrc": "2216:39:74", + "nodeType": "YulExpressionStatement", + "src": "2216:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "2163:1:74", + "nodeType": "YulIdentifier", + "src": "2163:1:74" + }, + { + "name": "length", + "nativeSrc": "2166:6:74", + "nodeType": "YulIdentifier", + "src": "2166:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2160:2:74", + "nodeType": "YulIdentifier", + "src": "2160:2:74" + }, + "nativeSrc": "2160:13:74", + "nodeType": "YulFunctionCall", + "src": "2160:13:74" + }, + "nativeSrc": "2152:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "2174:19:74", + "nodeType": "YulBlock", + "src": "2174:19:74", + "statements": [ + { + "nativeSrc": "2176:15:74", + "nodeType": "YulAssignment", + "src": "2176:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "2185:1:74", + "nodeType": "YulIdentifier", + "src": "2185:1:74" + }, + { + "kind": "number", + "nativeSrc": "2188:2:74", + "nodeType": "YulLiteral", + "src": "2188:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2181:3:74", + "nodeType": "YulIdentifier", + "src": "2181:3:74" + }, + "nativeSrc": "2181:10:74", + "nodeType": "YulFunctionCall", + "src": "2181:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "2176:1:74", + "nodeType": "YulIdentifier", + "src": "2176:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "2156:3:74", + "nodeType": "YulBlock", + "src": "2156:3:74", + "statements": [] + }, + "src": "2152:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2285:3:74", + "nodeType": "YulIdentifier", + "src": "2285:3:74" + }, + { + "name": "length", + "nativeSrc": "2290:6:74", + "nodeType": "YulIdentifier", + "src": "2290:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2281:3:74", + "nodeType": "YulIdentifier", + "src": "2281:3:74" + }, + "nativeSrc": "2281:16:74", + "nodeType": "YulFunctionCall", + "src": "2281:16:74" + }, + { + "kind": "number", + "nativeSrc": "2299:1:74", + "nodeType": "YulLiteral", + "src": "2299:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2274:6:74", + "nodeType": "YulIdentifier", + "src": "2274:6:74" + }, + "nativeSrc": "2274:27:74", + "nodeType": "YulFunctionCall", + "src": "2274:27:74" + }, + "nativeSrc": "2274:27:74", + "nodeType": "YulExpressionStatement", + "src": "2274:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2060:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "2104:3:74", + "nodeType": "YulTypedName", + "src": "2104:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "2109:3:74", + "nodeType": "YulTypedName", + "src": "2109:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2114:6:74", + "nodeType": "YulTypedName", + "src": "2114:6:74", + "type": "" + } + ], + "src": "2060:248:74" + }, + { + "body": { + "nativeSrc": "2409:339:74", + "nodeType": "YulBlock", + "src": "2409:339:74", + "statements": [ + { + "nativeSrc": "2419:75:74", + "nodeType": "YulAssignment", + "src": "2419:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2486:6:74", + "nodeType": "YulIdentifier", + "src": "2486:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "2444:41:74", + "nodeType": "YulIdentifier", + "src": "2444:41:74" + }, + "nativeSrc": "2444:49:74", + "nodeType": "YulFunctionCall", + "src": "2444:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "2428:15:74", + "nodeType": "YulIdentifier", + "src": "2428:15:74" + }, + "nativeSrc": "2428:66:74", + "nodeType": "YulFunctionCall", + "src": "2428:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "2419:5:74", + "nodeType": "YulIdentifier", + "src": "2419:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2510:5:74", + "nodeType": "YulIdentifier", + "src": "2510:5:74" + }, + { + "name": "length", + "nativeSrc": "2517:6:74", + "nodeType": "YulIdentifier", + "src": "2517:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2503:6:74", + "nodeType": "YulIdentifier", + "src": "2503:6:74" + }, + "nativeSrc": "2503:21:74", + "nodeType": "YulFunctionCall", + "src": "2503:21:74" + }, + "nativeSrc": "2503:21:74", + "nodeType": "YulExpressionStatement", + "src": "2503:21:74" + }, + { + "nativeSrc": "2533:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2533:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2548:5:74", + "nodeType": "YulIdentifier", + "src": "2548:5:74" + }, + { + "kind": "number", + "nativeSrc": "2555:4:74", + "nodeType": "YulLiteral", + "src": "2555:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2544:3:74", + "nodeType": "YulIdentifier", + "src": "2544:3:74" + }, + "nativeSrc": "2544:16:74", + "nodeType": "YulFunctionCall", + "src": "2544:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "2537:3:74", + "nodeType": "YulTypedName", + "src": "2537:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2598:83:74", + "nodeType": "YulBlock", + "src": "2598:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "2600:77:74", + "nodeType": "YulIdentifier", + "src": "2600:77:74" + }, + "nativeSrc": "2600:79:74", + "nodeType": "YulFunctionCall", + "src": "2600:79:74" + }, + "nativeSrc": "2600:79:74", + "nodeType": "YulExpressionStatement", + "src": "2600:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2579:3:74", + "nodeType": "YulIdentifier", + "src": "2579:3:74" + }, + { + "name": "length", + "nativeSrc": "2584:6:74", + "nodeType": "YulIdentifier", + "src": "2584:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2575:3:74", + "nodeType": "YulIdentifier", + "src": "2575:3:74" + }, + "nativeSrc": "2575:16:74", + "nodeType": "YulFunctionCall", + "src": "2575:16:74" + }, + { + "name": "end", + "nativeSrc": "2593:3:74", + "nodeType": "YulIdentifier", + "src": "2593:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2572:2:74", + "nodeType": "YulIdentifier", + "src": "2572:2:74" + }, + "nativeSrc": "2572:25:74", + "nodeType": "YulFunctionCall", + "src": "2572:25:74" + }, + "nativeSrc": "2569:112:74", + "nodeType": "YulIf", + "src": "2569:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "2725:3:74", + "nodeType": "YulIdentifier", + "src": "2725:3:74" + }, + { + "name": "dst", + "nativeSrc": "2730:3:74", + "nodeType": "YulIdentifier", + "src": "2730:3:74" + }, + { + "name": "length", + "nativeSrc": "2735:6:74", + "nodeType": "YulIdentifier", + "src": "2735:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2690:34:74", + "nodeType": "YulIdentifier", + "src": "2690:34:74" + }, + "nativeSrc": "2690:52:74", + "nodeType": "YulFunctionCall", + "src": "2690:52:74" + }, + "nativeSrc": "2690:52:74", + "nodeType": "YulExpressionStatement", + "src": "2690:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "2314:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "2382:3:74", + "nodeType": "YulTypedName", + "src": "2382:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2387:6:74", + "nodeType": "YulTypedName", + "src": "2387:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2395:3:74", + "nodeType": "YulTypedName", + "src": "2395:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2403:5:74", + "nodeType": "YulTypedName", + "src": "2403:5:74", + "type": "" + } + ], + "src": "2314:434:74" + }, + { + "body": { + "nativeSrc": "2841:282:74", + "nodeType": "YulBlock", + "src": "2841:282:74", + "statements": [ + { + "body": { + "nativeSrc": "2890:83:74", + "nodeType": "YulBlock", + "src": "2890:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2892:77:74", + "nodeType": "YulIdentifier", + "src": "2892:77:74" + }, + "nativeSrc": "2892:79:74", + "nodeType": "YulFunctionCall", + "src": "2892:79:74" + }, + "nativeSrc": "2892:79:74", + "nodeType": "YulExpressionStatement", + "src": "2892:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2869:6:74", + "nodeType": "YulIdentifier", + "src": "2869:6:74" + }, + { + "kind": "number", + "nativeSrc": "2877:4:74", + "nodeType": "YulLiteral", + "src": "2877:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2865:3:74", + "nodeType": "YulIdentifier", + "src": "2865:3:74" + }, + "nativeSrc": "2865:17:74", + "nodeType": "YulFunctionCall", + "src": "2865:17:74" + }, + { + "name": "end", + "nativeSrc": "2884:3:74", + "nodeType": "YulIdentifier", + "src": "2884:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2861:3:74", + "nodeType": "YulIdentifier", + "src": "2861:3:74" + }, + "nativeSrc": "2861:27:74", + "nodeType": "YulFunctionCall", + "src": "2861:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2854:6:74", + "nodeType": "YulIdentifier", + "src": "2854:6:74" + }, + "nativeSrc": "2854:35:74", + "nodeType": "YulFunctionCall", + "src": "2854:35:74" + }, + "nativeSrc": "2851:122:74", + "nodeType": "YulIf", + "src": "2851:122:74" + }, + { + "nativeSrc": "2982:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2982:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3002:6:74", + "nodeType": "YulIdentifier", + "src": "3002:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2996:5:74", + "nodeType": "YulIdentifier", + "src": "2996:5:74" + }, + "nativeSrc": "2996:13:74", + "nodeType": "YulFunctionCall", + "src": "2996:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2986:6:74", + "nodeType": "YulTypedName", + "src": "2986:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3018:99:74", + "nodeType": "YulAssignment", + "src": "3018:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3090:6:74", + "nodeType": "YulIdentifier", + "src": "3090:6:74" + }, + { + "kind": "number", + "nativeSrc": "3098:4:74", + "nodeType": "YulLiteral", + "src": "3098:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3086:3:74", + "nodeType": "YulIdentifier", + "src": "3086:3:74" + }, + "nativeSrc": "3086:17:74", + "nodeType": "YulFunctionCall", + "src": "3086:17:74" + }, + { + "name": "length", + "nativeSrc": "3105:6:74", + "nodeType": "YulIdentifier", + "src": "3105:6:74" + }, + { + "name": "end", + "nativeSrc": "3113:3:74", + "nodeType": "YulIdentifier", + "src": "3113:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "3027:58:74", + "nodeType": "YulIdentifier", + "src": "3027:58:74" + }, + "nativeSrc": "3027:90:74", + "nodeType": "YulFunctionCall", + "src": "3027:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "3018:5:74", + "nodeType": "YulIdentifier", + "src": "3018:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "2768:355:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2819:6:74", + "nodeType": "YulTypedName", + "src": "2819:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2827:3:74", + "nodeType": "YulTypedName", + "src": "2827:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2835:5:74", + "nodeType": "YulTypedName", + "src": "2835:5:74", + "type": "" + } + ], + "src": "2768:355:74" + }, + { + "body": { + "nativeSrc": "3268:837:74", + "nodeType": "YulBlock", + "src": "3268:837:74", + "statements": [ + { + "nativeSrc": "3278:100:74", + "nodeType": "YulAssignment", + "src": "3278:100:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "3370:6:74", + "nodeType": "YulIdentifier", + "src": "3370:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "3303:66:74", + "nodeType": "YulIdentifier", + "src": "3303:66:74" + }, + "nativeSrc": "3303:74:74", + "nodeType": "YulFunctionCall", + "src": "3303:74:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "3287:15:74", + "nodeType": "YulIdentifier", + "src": "3287:15:74" + }, + "nativeSrc": "3287:91:74", + "nodeType": "YulFunctionCall", + "src": "3287:91:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "3278:5:74", + "nodeType": "YulIdentifier", + "src": "3278:5:74" + } + ] + }, + { + "nativeSrc": "3387:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3387:16:74", + "value": { + "name": "array", + "nativeSrc": "3398:5:74", + "nodeType": "YulIdentifier", + "src": "3398:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "3391:3:74", + "nodeType": "YulTypedName", + "src": "3391:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "3420:5:74", + "nodeType": "YulIdentifier", + "src": "3420:5:74" + }, + { + "name": "length", + "nativeSrc": "3427:6:74", + "nodeType": "YulIdentifier", + "src": "3427:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3413:6:74", + "nodeType": "YulIdentifier", + "src": "3413:6:74" + }, + "nativeSrc": "3413:21:74", + "nodeType": "YulFunctionCall", + "src": "3413:21:74" + }, + "nativeSrc": "3413:21:74", + "nodeType": "YulExpressionStatement", + "src": "3413:21:74" + }, + { + "nativeSrc": "3443:23:74", + "nodeType": "YulAssignment", + "src": "3443:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "3454:5:74", + "nodeType": "YulIdentifier", + "src": "3454:5:74" + }, + { + "kind": "number", + "nativeSrc": "3461:4:74", + "nodeType": "YulLiteral", + "src": "3461:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3450:3:74", + "nodeType": "YulIdentifier", + "src": "3450:3:74" + }, + "nativeSrc": "3450:16:74", + "nodeType": "YulFunctionCall", + "src": "3450:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "3443:3:74", + "nodeType": "YulIdentifier", + "src": "3443:3:74" + } + ] + }, + { + "nativeSrc": "3476:44:74", + "nodeType": "YulVariableDeclaration", + "src": "3476:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3494:6:74", + "nodeType": "YulIdentifier", + "src": "3494:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "3506:6:74", + "nodeType": "YulIdentifier", + "src": "3506:6:74" + }, + { + "kind": "number", + "nativeSrc": "3514:4:74", + "nodeType": "YulLiteral", + "src": "3514:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "3502:3:74", + "nodeType": "YulIdentifier", + "src": "3502:3:74" + }, + "nativeSrc": "3502:17:74", + "nodeType": "YulFunctionCall", + "src": "3502:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3490:3:74", + "nodeType": "YulIdentifier", + "src": "3490:3:74" + }, + "nativeSrc": "3490:30:74", + "nodeType": "YulFunctionCall", + "src": "3490:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "3480:6:74", + "nodeType": "YulTypedName", + "src": "3480:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3548:103:74", + "nodeType": "YulBlock", + "src": "3548:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "3562:77:74", + "nodeType": "YulIdentifier", + "src": "3562:77:74" + }, + "nativeSrc": "3562:79:74", + "nodeType": "YulFunctionCall", + "src": "3562:79:74" + }, + "nativeSrc": "3562:79:74", + "nodeType": "YulExpressionStatement", + "src": "3562:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "3535:6:74", + "nodeType": "YulIdentifier", + "src": "3535:6:74" + }, + { + "name": "end", + "nativeSrc": "3543:3:74", + "nodeType": "YulIdentifier", + "src": "3543:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3532:2:74", + "nodeType": "YulIdentifier", + "src": "3532:2:74" + }, + "nativeSrc": "3532:15:74", + "nodeType": "YulFunctionCall", + "src": "3532:15:74" + }, + "nativeSrc": "3529:122:74", + "nodeType": "YulIf", + "src": "3529:122:74" + }, + { + "body": { + "nativeSrc": "3736:363:74", + "nodeType": "YulBlock", + "src": "3736:363:74", + "statements": [ + { + "nativeSrc": "3751:29:74", + "nodeType": "YulVariableDeclaration", + "src": "3751:29:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "3776:3:74", + "nodeType": "YulIdentifier", + "src": "3776:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3770:5:74", + "nodeType": "YulIdentifier", + "src": "3770:5:74" + }, + "nativeSrc": "3770:10:74", + "nodeType": "YulFunctionCall", + "src": "3770:10:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "3755:11:74", + "nodeType": "YulTypedName", + "src": "3755:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3832:83:74", + "nodeType": "YulBlock", + "src": "3832:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "3834:77:74", + "nodeType": "YulIdentifier", + "src": "3834:77:74" + }, + "nativeSrc": "3834:79:74", + "nodeType": "YulFunctionCall", + "src": "3834:79:74" + }, + "nativeSrc": "3834:79:74", + "nodeType": "YulExpressionStatement", + "src": "3834:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "3799:11:74", + "nodeType": "YulIdentifier", + "src": "3799:11:74" + }, + { + "kind": "number", + "nativeSrc": "3812:18:74", + "nodeType": "YulLiteral", + "src": "3812:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3796:2:74", + "nodeType": "YulIdentifier", + "src": "3796:2:74" + }, + "nativeSrc": "3796:35:74", + "nodeType": "YulFunctionCall", + "src": "3796:35:74" + }, + "nativeSrc": "3793:122:74", + "nodeType": "YulIf", + "src": "3793:122:74" + }, + { + "nativeSrc": "3928:42:74", + "nodeType": "YulVariableDeclaration", + "src": "3928:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3950:6:74", + "nodeType": "YulIdentifier", + "src": "3950:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "3958:11:74", + "nodeType": "YulIdentifier", + "src": "3958:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3946:3:74", + "nodeType": "YulIdentifier", + "src": "3946:3:74" + }, + "nativeSrc": "3946:24:74", + "nodeType": "YulFunctionCall", + "src": "3946:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "3932:10:74", + "nodeType": "YulTypedName", + "src": "3932:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "3991:3:74", + "nodeType": "YulIdentifier", + "src": "3991:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "4038:10:74", + "nodeType": "YulIdentifier", + "src": "4038:10:74" + }, + { + "name": "end", + "nativeSrc": "4050:3:74", + "nodeType": "YulIdentifier", + "src": "4050:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "3996:41:74", + "nodeType": "YulIdentifier", + "src": "3996:41:74" + }, + "nativeSrc": "3996:58:74", + "nodeType": "YulFunctionCall", + "src": "3996:58:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3984:6:74", + "nodeType": "YulIdentifier", + "src": "3984:6:74" + }, + "nativeSrc": "3984:71:74", + "nodeType": "YulFunctionCall", + "src": "3984:71:74" + }, + "nativeSrc": "3984:71:74", + "nodeType": "YulExpressionStatement", + "src": "3984:71:74" + }, + { + "nativeSrc": "4068:21:74", + "nodeType": "YulAssignment", + "src": "4068:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "4079:3:74", + "nodeType": "YulIdentifier", + "src": "4079:3:74" + }, + { + "kind": "number", + "nativeSrc": "4084:4:74", + "nodeType": "YulLiteral", + "src": "4084:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4075:3:74", + "nodeType": "YulIdentifier", + "src": "4075:3:74" + }, + "nativeSrc": "4075:14:74", + "nodeType": "YulFunctionCall", + "src": "4075:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "4068:3:74", + "nodeType": "YulIdentifier", + "src": "4068:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "3689:3:74", + "nodeType": "YulIdentifier", + "src": "3689:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "3694:6:74", + "nodeType": "YulIdentifier", + "src": "3694:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "3686:2:74", + "nodeType": "YulIdentifier", + "src": "3686:2:74" + }, + "nativeSrc": "3686:15:74", + "nodeType": "YulFunctionCall", + "src": "3686:15:74" + }, + "nativeSrc": "3660:439:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "3702:25:74", + "nodeType": "YulBlock", + "src": "3702:25:74", + "statements": [ + { + "nativeSrc": "3704:21:74", + "nodeType": "YulAssignment", + "src": "3704:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "3715:3:74", + "nodeType": "YulIdentifier", + "src": "3715:3:74" + }, + { + "kind": "number", + "nativeSrc": "3720:4:74", + "nodeType": "YulLiteral", + "src": "3720:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3711:3:74", + "nodeType": "YulIdentifier", + "src": "3711:3:74" + }, + "nativeSrc": "3711:14:74", + "nodeType": "YulFunctionCall", + "src": "3711:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "3704:3:74", + "nodeType": "YulIdentifier", + "src": "3704:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "3664:21:74", + "nodeType": "YulBlock", + "src": "3664:21:74", + "statements": [ + { + "nativeSrc": "3666:17:74", + "nodeType": "YulVariableDeclaration", + "src": "3666:17:74", + "value": { + "name": "offset", + "nativeSrc": "3677:6:74", + "nodeType": "YulIdentifier", + "src": "3677:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "3670:3:74", + "nodeType": "YulTypedName", + "src": "3670:3:74", + "type": "" + } + ] + } + ] + }, + "src": "3660:439:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "3145:960:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3238:6:74", + "nodeType": "YulTypedName", + "src": "3238:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3246:6:74", + "nodeType": "YulTypedName", + "src": "3246:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3254:3:74", + "nodeType": "YulTypedName", + "src": "3254:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "3262:5:74", + "nodeType": "YulTypedName", + "src": "3262:5:74", + "type": "" + } + ], + "src": "3145:960:74" + }, + { + "body": { + "nativeSrc": "4225:307:74", + "nodeType": "YulBlock", + "src": "4225:307:74", + "statements": [ + { + "body": { + "nativeSrc": "4274:83:74", + "nodeType": "YulBlock", + "src": "4274:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "4276:77:74", + "nodeType": "YulIdentifier", + "src": "4276:77:74" + }, + "nativeSrc": "4276:79:74", + "nodeType": "YulFunctionCall", + "src": "4276:79:74" + }, + "nativeSrc": "4276:79:74", + "nodeType": "YulExpressionStatement", + "src": "4276:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4253:6:74", + "nodeType": "YulIdentifier", + "src": "4253:6:74" + }, + { + "kind": "number", + "nativeSrc": "4261:4:74", + "nodeType": "YulLiteral", + "src": "4261:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4249:3:74", + "nodeType": "YulIdentifier", + "src": "4249:3:74" + }, + "nativeSrc": "4249:17:74", + "nodeType": "YulFunctionCall", + "src": "4249:17:74" + }, + { + "name": "end", + "nativeSrc": "4268:3:74", + "nodeType": "YulIdentifier", + "src": "4268:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4245:3:74", + "nodeType": "YulIdentifier", + "src": "4245:3:74" + }, + "nativeSrc": "4245:27:74", + "nodeType": "YulFunctionCall", + "src": "4245:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4238:6:74", + "nodeType": "YulIdentifier", + "src": "4238:6:74" + }, + "nativeSrc": "4238:35:74", + "nodeType": "YulFunctionCall", + "src": "4238:35:74" + }, + "nativeSrc": "4235:122:74", + "nodeType": "YulIf", + "src": "4235:122:74" + }, + { + "nativeSrc": "4366:27:74", + "nodeType": "YulVariableDeclaration", + "src": "4366:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4386:6:74", + "nodeType": "YulIdentifier", + "src": "4386:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4380:5:74", + "nodeType": "YulIdentifier", + "src": "4380:5:74" + }, + "nativeSrc": "4380:13:74", + "nodeType": "YulFunctionCall", + "src": "4380:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "4370:6:74", + "nodeType": "YulTypedName", + "src": "4370:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4402:124:74", + "nodeType": "YulAssignment", + "src": "4402:124:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4499:6:74", + "nodeType": "YulIdentifier", + "src": "4499:6:74" + }, + { + "kind": "number", + "nativeSrc": "4507:4:74", + "nodeType": "YulLiteral", + "src": "4507:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4495:3:74", + "nodeType": "YulIdentifier", + "src": "4495:3:74" + }, + "nativeSrc": "4495:17:74", + "nodeType": "YulFunctionCall", + "src": "4495:17:74" + }, + { + "name": "length", + "nativeSrc": "4514:6:74", + "nodeType": "YulIdentifier", + "src": "4514:6:74" + }, + { + "name": "end", + "nativeSrc": "4522:3:74", + "nodeType": "YulIdentifier", + "src": "4522:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "4411:83:74", + "nodeType": "YulIdentifier", + "src": "4411:83:74" + }, + "nativeSrc": "4411:115:74", + "nodeType": "YulFunctionCall", + "src": "4411:115:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "4402:5:74", + "nodeType": "YulIdentifier", + "src": "4402:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "4127:405:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4203:6:74", + "nodeType": "YulTypedName", + "src": "4203:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4211:3:74", + "nodeType": "YulTypedName", + "src": "4211:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "4219:5:74", + "nodeType": "YulTypedName", + "src": "4219:5:74", + "type": "" + } + ], + "src": "4127:405:74" + }, + { + "body": { + "nativeSrc": "4583:81:74", + "nodeType": "YulBlock", + "src": "4583:81:74", + "statements": [ + { + "nativeSrc": "4593:65:74", + "nodeType": "YulAssignment", + "src": "4593:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4608:5:74", + "nodeType": "YulIdentifier", + "src": "4608:5:74" + }, + { + "kind": "number", + "nativeSrc": "4615:42:74", + "nodeType": "YulLiteral", + "src": "4615:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4604:3:74", + "nodeType": "YulIdentifier", + "src": "4604:3:74" + }, + "nativeSrc": "4604:54:74", + "nodeType": "YulFunctionCall", + "src": "4604:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4593:7:74", + "nodeType": "YulIdentifier", + "src": "4593:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "4538:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4565:5:74", + "nodeType": "YulTypedName", + "src": "4565:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4575:7:74", + "nodeType": "YulTypedName", + "src": "4575:7:74", + "type": "" + } + ], + "src": "4538:126:74" + }, + { + "body": { + "nativeSrc": "4715:51:74", + "nodeType": "YulBlock", + "src": "4715:51:74", + "statements": [ + { + "nativeSrc": "4725:35:74", + "nodeType": "YulAssignment", + "src": "4725:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4754:5:74", + "nodeType": "YulIdentifier", + "src": "4754:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "4736:17:74", + "nodeType": "YulIdentifier", + "src": "4736:17:74" + }, + "nativeSrc": "4736:24:74", + "nodeType": "YulFunctionCall", + "src": "4736:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4725:7:74", + "nodeType": "YulIdentifier", + "src": "4725:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "4670:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4697:5:74", + "nodeType": "YulTypedName", + "src": "4697:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4707:7:74", + "nodeType": "YulTypedName", + "src": "4707:7:74", + "type": "" + } + ], + "src": "4670:96:74" + }, + { + "body": { + "nativeSrc": "4815:79:74", + "nodeType": "YulBlock", + "src": "4815:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4872:16:74", + "nodeType": "YulBlock", + "src": "4872:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4881:1:74", + "nodeType": "YulLiteral", + "src": "4881:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4884:1:74", + "nodeType": "YulLiteral", + "src": "4884:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4874:6:74", + "nodeType": "YulIdentifier", + "src": "4874:6:74" + }, + "nativeSrc": "4874:12:74", + "nodeType": "YulFunctionCall", + "src": "4874:12:74" + }, + "nativeSrc": "4874:12:74", + "nodeType": "YulExpressionStatement", + "src": "4874:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4838:5:74", + "nodeType": "YulIdentifier", + "src": "4838:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4863:5:74", + "nodeType": "YulIdentifier", + "src": "4863:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4845:17:74", + "nodeType": "YulIdentifier", + "src": "4845:17:74" + }, + "nativeSrc": "4845:24:74", + "nodeType": "YulFunctionCall", + "src": "4845:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4835:2:74", + "nodeType": "YulIdentifier", + "src": "4835:2:74" + }, + "nativeSrc": "4835:35:74", + "nodeType": "YulFunctionCall", + "src": "4835:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4828:6:74", + "nodeType": "YulIdentifier", + "src": "4828:6:74" + }, + "nativeSrc": "4828:43:74", + "nodeType": "YulFunctionCall", + "src": "4828:43:74" + }, + "nativeSrc": "4825:63:74", + "nodeType": "YulIf", + "src": "4825:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "4772:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4808:5:74", + "nodeType": "YulTypedName", + "src": "4808:5:74", + "type": "" + } + ], + "src": "4772:122:74" + }, + { + "body": { + "nativeSrc": "4963:80:74", + "nodeType": "YulBlock", + "src": "4963:80:74", + "statements": [ + { + "nativeSrc": "4973:22:74", + "nodeType": "YulAssignment", + "src": "4973:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4988:6:74", + "nodeType": "YulIdentifier", + "src": "4988:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4982:5:74", + "nodeType": "YulIdentifier", + "src": "4982:5:74" + }, + "nativeSrc": "4982:13:74", + "nodeType": "YulFunctionCall", + "src": "4982:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4973:5:74", + "nodeType": "YulIdentifier", + "src": "4973:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5031:5:74", + "nodeType": "YulIdentifier", + "src": "5031:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "5004:26:74", + "nodeType": "YulIdentifier", + "src": "5004:26:74" + }, + "nativeSrc": "5004:33:74", + "nodeType": "YulFunctionCall", + "src": "5004:33:74" + }, + "nativeSrc": "5004:33:74", + "nodeType": "YulExpressionStatement", + "src": "5004:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "4900:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4941:6:74", + "nodeType": "YulTypedName", + "src": "4941:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4949:3:74", + "nodeType": "YulTypedName", + "src": "4949:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4957:5:74", + "nodeType": "YulTypedName", + "src": "4957:5:74", + "type": "" + } + ], + "src": "4900:143:74" + }, + { + "body": { + "nativeSrc": "5178:601:74", + "nodeType": "YulBlock", + "src": "5178:601:74", + "statements": [ + { + "body": { + "nativeSrc": "5224:83:74", + "nodeType": "YulBlock", + "src": "5224:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5226:77:74", + "nodeType": "YulIdentifier", + "src": "5226:77:74" + }, + "nativeSrc": "5226:79:74", + "nodeType": "YulFunctionCall", + "src": "5226:79:74" + }, + "nativeSrc": "5226:79:74", + "nodeType": "YulExpressionStatement", + "src": "5226:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5199:7:74", + "nodeType": "YulIdentifier", + "src": "5199:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5208:9:74", + "nodeType": "YulIdentifier", + "src": "5208:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5195:3:74", + "nodeType": "YulIdentifier", + "src": "5195:3:74" + }, + "nativeSrc": "5195:23:74", + "nodeType": "YulFunctionCall", + "src": "5195:23:74" + }, + { + "kind": "number", + "nativeSrc": "5220:2:74", + "nodeType": "YulLiteral", + "src": "5220:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5191:3:74", + "nodeType": "YulIdentifier", + "src": "5191:3:74" + }, + "nativeSrc": "5191:32:74", + "nodeType": "YulFunctionCall", + "src": "5191:32:74" + }, + "nativeSrc": "5188:119:74", + "nodeType": "YulIf", + "src": "5188:119:74" + }, + { + "nativeSrc": "5317:316:74", + "nodeType": "YulBlock", + "src": "5317:316:74", + "statements": [ + { + "nativeSrc": "5332:38:74", + "nodeType": "YulVariableDeclaration", + "src": "5332:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5356:9:74", + "nodeType": "YulIdentifier", + "src": "5356:9:74" + }, + { + "kind": "number", + "nativeSrc": "5367:1:74", + "nodeType": "YulLiteral", + "src": "5367:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5352:3:74", + "nodeType": "YulIdentifier", + "src": "5352:3:74" + }, + "nativeSrc": "5352:17:74", + "nodeType": "YulFunctionCall", + "src": "5352:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5346:5:74", + "nodeType": "YulIdentifier", + "src": "5346:5:74" + }, + "nativeSrc": "5346:24:74", + "nodeType": "YulFunctionCall", + "src": "5346:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5336:6:74", + "nodeType": "YulTypedName", + "src": "5336:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "5417:83:74", + "nodeType": "YulBlock", + "src": "5417:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "5419:77:74", + "nodeType": "YulIdentifier", + "src": "5419:77:74" + }, + "nativeSrc": "5419:79:74", + "nodeType": "YulFunctionCall", + "src": "5419:79:74" + }, + "nativeSrc": "5419:79:74", + "nodeType": "YulExpressionStatement", + "src": "5419:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5389:6:74", + "nodeType": "YulIdentifier", + "src": "5389:6:74" + }, + { + "kind": "number", + "nativeSrc": "5397:18:74", + "nodeType": "YulLiteral", + "src": "5397:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5386:2:74", + "nodeType": "YulIdentifier", + "src": "5386:2:74" + }, + "nativeSrc": "5386:30:74", + "nodeType": "YulFunctionCall", + "src": "5386:30:74" + }, + "nativeSrc": "5383:117:74", + "nodeType": "YulIf", + "src": "5383:117:74" + }, + { + "nativeSrc": "5514:109:74", + "nodeType": "YulAssignment", + "src": "5514:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5595:9:74", + "nodeType": "YulIdentifier", + "src": "5595:9:74" + }, + { + "name": "offset", + "nativeSrc": "5606:6:74", + "nodeType": "YulIdentifier", + "src": "5606:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5591:3:74", + "nodeType": "YulIdentifier", + "src": "5591:3:74" + }, + "nativeSrc": "5591:22:74", + "nodeType": "YulFunctionCall", + "src": "5591:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5615:7:74", + "nodeType": "YulIdentifier", + "src": "5615:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "5524:66:74", + "nodeType": "YulIdentifier", + "src": "5524:66:74" + }, + "nativeSrc": "5524:99:74", + "nodeType": "YulFunctionCall", + "src": "5524:99:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5514:6:74", + "nodeType": "YulIdentifier", + "src": "5514:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5643:129:74", + "nodeType": "YulBlock", + "src": "5643:129:74", + "statements": [ + { + "nativeSrc": "5658:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5658:16:74", + "value": { + "kind": "number", + "nativeSrc": "5672:2:74", + "nodeType": "YulLiteral", + "src": "5672:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5662:6:74", + "nodeType": "YulTypedName", + "src": "5662:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5688:74:74", + "nodeType": "YulAssignment", + "src": "5688:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5734:9:74", + "nodeType": "YulIdentifier", + "src": "5734:9:74" + }, + { + "name": "offset", + "nativeSrc": "5745:6:74", + "nodeType": "YulIdentifier", + "src": "5745:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5730:3:74", + "nodeType": "YulIdentifier", + "src": "5730:3:74" + }, + "nativeSrc": "5730:22:74", + "nodeType": "YulFunctionCall", + "src": "5730:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5754:7:74", + "nodeType": "YulIdentifier", + "src": "5754:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "5698:31:74", + "nodeType": "YulIdentifier", + "src": "5698:31:74" + }, + "nativeSrc": "5698:64:74", + "nodeType": "YulFunctionCall", + "src": "5698:64:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5688:6:74", + "nodeType": "YulIdentifier", + "src": "5688:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptrt_address_fromMemory", + "nativeSrc": "5049:730:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5140:9:74", + "nodeType": "YulTypedName", + "src": "5140:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5151:7:74", + "nodeType": "YulTypedName", + "src": "5151:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5163:6:74", + "nodeType": "YulTypedName", + "src": "5163:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5171:6:74", + "nodeType": "YulTypedName", + "src": "5171:6:74", + "type": "" + } + ], + "src": "5049:730:74" + }, + { + "body": { + "nativeSrc": "5844:40:74", + "nodeType": "YulBlock", + "src": "5844:40:74", + "statements": [ + { + "nativeSrc": "5855:22:74", + "nodeType": "YulAssignment", + "src": "5855:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5871:5:74", + "nodeType": "YulIdentifier", + "src": "5871:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5865:5:74", + "nodeType": "YulIdentifier", + "src": "5865:5:74" + }, + "nativeSrc": "5865:12:74", + "nodeType": "YulFunctionCall", + "src": "5865:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "5855:6:74", + "nodeType": "YulIdentifier", + "src": "5855:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "5785:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5827:5:74", + "nodeType": "YulTypedName", + "src": "5827:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "5837:6:74", + "nodeType": "YulTypedName", + "src": "5837:6:74", + "type": "" + } + ], + "src": "5785:99:74" + }, + { + "body": { + "nativeSrc": "5918:152:74", + "nodeType": "YulBlock", + "src": "5918:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5935:1:74", + "nodeType": "YulLiteral", + "src": "5935:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5938:77:74", + "nodeType": "YulLiteral", + "src": "5938:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5928:6:74", + "nodeType": "YulIdentifier", + "src": "5928:6:74" + }, + "nativeSrc": "5928:88:74", + "nodeType": "YulFunctionCall", + "src": "5928:88:74" + }, + "nativeSrc": "5928:88:74", + "nodeType": "YulExpressionStatement", + "src": "5928:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6032:1:74", + "nodeType": "YulLiteral", + "src": "6032:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "6035:4:74", + "nodeType": "YulLiteral", + "src": "6035:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6025:6:74", + "nodeType": "YulIdentifier", + "src": "6025:6:74" + }, + "nativeSrc": "6025:15:74", + "nodeType": "YulFunctionCall", + "src": "6025:15:74" + }, + "nativeSrc": "6025:15:74", + "nodeType": "YulExpressionStatement", + "src": "6025:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6056:1:74", + "nodeType": "YulLiteral", + "src": "6056:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6059:4:74", + "nodeType": "YulLiteral", + "src": "6059:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6049:6:74", + "nodeType": "YulIdentifier", + "src": "6049:6:74" + }, + "nativeSrc": "6049:15:74", + "nodeType": "YulFunctionCall", + "src": "6049:15:74" + }, + "nativeSrc": "6049:15:74", + "nodeType": "YulExpressionStatement", + "src": "6049:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "5890:180:74", + "nodeType": "YulFunctionDefinition", + "src": "5890:180:74" + }, + { + "body": { + "nativeSrc": "6127:269:74", + "nodeType": "YulBlock", + "src": "6127:269:74", + "statements": [ + { + "nativeSrc": "6137:22:74", + "nodeType": "YulAssignment", + "src": "6137:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6151:4:74", + "nodeType": "YulIdentifier", + "src": "6151:4:74" + }, + { + "kind": "number", + "nativeSrc": "6157:1:74", + "nodeType": "YulLiteral", + "src": "6157:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "6147:3:74", + "nodeType": "YulIdentifier", + "src": "6147:3:74" + }, + "nativeSrc": "6147:12:74", + "nodeType": "YulFunctionCall", + "src": "6147:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "6137:6:74", + "nodeType": "YulIdentifier", + "src": "6137:6:74" + } + ] + }, + { + "nativeSrc": "6168:38:74", + "nodeType": "YulVariableDeclaration", + "src": "6168:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6198:4:74", + "nodeType": "YulIdentifier", + "src": "6198:4:74" + }, + { + "kind": "number", + "nativeSrc": "6204:1:74", + "nodeType": "YulLiteral", + "src": "6204:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6194:3:74", + "nodeType": "YulIdentifier", + "src": "6194:3:74" + }, + "nativeSrc": "6194:12:74", + "nodeType": "YulFunctionCall", + "src": "6194:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "6172:18:74", + "nodeType": "YulTypedName", + "src": "6172:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6245:51:74", + "nodeType": "YulBlock", + "src": "6245:51:74", + "statements": [ + { + "nativeSrc": "6259:27:74", + "nodeType": "YulAssignment", + "src": "6259:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "6273:6:74", + "nodeType": "YulIdentifier", + "src": "6273:6:74" + }, + { + "kind": "number", + "nativeSrc": "6281:4:74", + "nodeType": "YulLiteral", + "src": "6281:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6269:3:74", + "nodeType": "YulIdentifier", + "src": "6269:3:74" + }, + "nativeSrc": "6269:17:74", + "nodeType": "YulFunctionCall", + "src": "6269:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "6259:6:74", + "nodeType": "YulIdentifier", + "src": "6259:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "6225:18:74", + "nodeType": "YulIdentifier", + "src": "6225:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6218:6:74", + "nodeType": "YulIdentifier", + "src": "6218:6:74" + }, + "nativeSrc": "6218:26:74", + "nodeType": "YulFunctionCall", + "src": "6218:26:74" + }, + "nativeSrc": "6215:81:74", + "nodeType": "YulIf", + "src": "6215:81:74" + }, + { + "body": { + "nativeSrc": "6348:42:74", + "nodeType": "YulBlock", + "src": "6348:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "6362:16:74", + "nodeType": "YulIdentifier", + "src": "6362:16:74" + }, + "nativeSrc": "6362:18:74", + "nodeType": "YulFunctionCall", + "src": "6362:18:74" + }, + "nativeSrc": "6362:18:74", + "nodeType": "YulExpressionStatement", + "src": "6362:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "6312:18:74", + "nodeType": "YulIdentifier", + "src": "6312:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "6335:6:74", + "nodeType": "YulIdentifier", + "src": "6335:6:74" + }, + { + "kind": "number", + "nativeSrc": "6343:2:74", + "nodeType": "YulLiteral", + "src": "6343:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6332:2:74", + "nodeType": "YulIdentifier", + "src": "6332:2:74" + }, + "nativeSrc": "6332:14:74", + "nodeType": "YulFunctionCall", + "src": "6332:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6309:2:74", + "nodeType": "YulIdentifier", + "src": "6309:2:74" + }, + "nativeSrc": "6309:38:74", + "nodeType": "YulFunctionCall", + "src": "6309:38:74" + }, + "nativeSrc": "6306:84:74", + "nodeType": "YulIf", + "src": "6306:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "6076:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "6111:4:74", + "nodeType": "YulTypedName", + "src": "6111:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "6120:6:74", + "nodeType": "YulTypedName", + "src": "6120:6:74", + "type": "" + } + ], + "src": "6076:320:74" + }, + { + "body": { + "nativeSrc": "6456:87:74", + "nodeType": "YulBlock", + "src": "6456:87:74", + "statements": [ + { + "nativeSrc": "6466:11:74", + "nodeType": "YulAssignment", + "src": "6466:11:74", + "value": { + "name": "ptr", + "nativeSrc": "6474:3:74", + "nodeType": "YulIdentifier", + "src": "6474:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "6466:4:74", + "nodeType": "YulIdentifier", + "src": "6466:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6494:1:74", + "nodeType": "YulLiteral", + "src": "6494:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "6497:3:74", + "nodeType": "YulIdentifier", + "src": "6497:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6487:6:74", + "nodeType": "YulIdentifier", + "src": "6487:6:74" + }, + "nativeSrc": "6487:14:74", + "nodeType": "YulFunctionCall", + "src": "6487:14:74" + }, + "nativeSrc": "6487:14:74", + "nodeType": "YulExpressionStatement", + "src": "6487:14:74" + }, + { + "nativeSrc": "6510:26:74", + "nodeType": "YulAssignment", + "src": "6510:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6528:1:74", + "nodeType": "YulLiteral", + "src": "6528:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6531:4:74", + "nodeType": "YulLiteral", + "src": "6531:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "6518:9:74", + "nodeType": "YulIdentifier", + "src": "6518:9:74" + }, + "nativeSrc": "6518:18:74", + "nodeType": "YulFunctionCall", + "src": "6518:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "6510:4:74", + "nodeType": "YulIdentifier", + "src": "6510:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "6402:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "6443:3:74", + "nodeType": "YulTypedName", + "src": "6443:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "6451:4:74", + "nodeType": "YulTypedName", + "src": "6451:4:74", + "type": "" + } + ], + "src": "6402:141:74" + }, + { + "body": { + "nativeSrc": "6593:49:74", + "nodeType": "YulBlock", + "src": "6593:49:74", + "statements": [ + { + "nativeSrc": "6603:33:74", + "nodeType": "YulAssignment", + "src": "6603:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6621:5:74", + "nodeType": "YulIdentifier", + "src": "6621:5:74" + }, + { + "kind": "number", + "nativeSrc": "6628:2:74", + "nodeType": "YulLiteral", + "src": "6628:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6617:3:74", + "nodeType": "YulIdentifier", + "src": "6617:3:74" + }, + "nativeSrc": "6617:14:74", + "nodeType": "YulFunctionCall", + "src": "6617:14:74" + }, + { + "kind": "number", + "nativeSrc": "6633:2:74", + "nodeType": "YulLiteral", + "src": "6633:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "6613:3:74", + "nodeType": "YulIdentifier", + "src": "6613:3:74" + }, + "nativeSrc": "6613:23:74", + "nodeType": "YulFunctionCall", + "src": "6613:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "6603:6:74", + "nodeType": "YulIdentifier", + "src": "6603:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "6549:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6576:5:74", + "nodeType": "YulTypedName", + "src": "6576:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "6586:6:74", + "nodeType": "YulTypedName", + "src": "6586:6:74", + "type": "" + } + ], + "src": "6549:93:74" + }, + { + "body": { + "nativeSrc": "6701:54:74", + "nodeType": "YulBlock", + "src": "6701:54:74", + "statements": [ + { + "nativeSrc": "6711:37:74", + "nodeType": "YulAssignment", + "src": "6711:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "6736:4:74", + "nodeType": "YulIdentifier", + "src": "6736:4:74" + }, + { + "name": "value", + "nativeSrc": "6742:5:74", + "nodeType": "YulIdentifier", + "src": "6742:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "6732:3:74", + "nodeType": "YulIdentifier", + "src": "6732:3:74" + }, + "nativeSrc": "6732:16:74", + "nodeType": "YulFunctionCall", + "src": "6732:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "6711:8:74", + "nodeType": "YulIdentifier", + "src": "6711:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "6648:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "6676:4:74", + "nodeType": "YulTypedName", + "src": "6676:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "6682:5:74", + "nodeType": "YulTypedName", + "src": "6682:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "6692:8:74", + "nodeType": "YulTypedName", + "src": "6692:8:74", + "type": "" + } + ], + "src": "6648:107:74" + }, + { + "body": { + "nativeSrc": "6837:317:74", + "nodeType": "YulBlock", + "src": "6837:317:74", + "statements": [ + { + "nativeSrc": "6847:35:74", + "nodeType": "YulVariableDeclaration", + "src": "6847:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "6868:10:74", + "nodeType": "YulIdentifier", + "src": "6868:10:74" + }, + { + "kind": "number", + "nativeSrc": "6880:1:74", + "nodeType": "YulLiteral", + "src": "6880:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6864:3:74", + "nodeType": "YulIdentifier", + "src": "6864:3:74" + }, + "nativeSrc": "6864:18:74", + "nodeType": "YulFunctionCall", + "src": "6864:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "6851:9:74", + "nodeType": "YulTypedName", + "src": "6851:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6891:109:74", + "nodeType": "YulVariableDeclaration", + "src": "6891:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "6922:9:74", + "nodeType": "YulIdentifier", + "src": "6922:9:74" + }, + { + "kind": "number", + "nativeSrc": "6933:66:74", + "nodeType": "YulLiteral", + "src": "6933:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "6903:18:74", + "nodeType": "YulIdentifier", + "src": "6903:18:74" + }, + "nativeSrc": "6903:97:74", + "nodeType": "YulFunctionCall", + "src": "6903:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "6895:4:74", + "nodeType": "YulTypedName", + "src": "6895:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7009:51:74", + "nodeType": "YulAssignment", + "src": "7009:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "7040:9:74", + "nodeType": "YulIdentifier", + "src": "7040:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "7051:8:74", + "nodeType": "YulIdentifier", + "src": "7051:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "7021:18:74", + "nodeType": "YulIdentifier", + "src": "7021:18:74" + }, + "nativeSrc": "7021:39:74", + "nodeType": "YulFunctionCall", + "src": "7021:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "7009:8:74", + "nodeType": "YulIdentifier", + "src": "7009:8:74" + } + ] + }, + { + "nativeSrc": "7069:30:74", + "nodeType": "YulAssignment", + "src": "7069:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7082:5:74", + "nodeType": "YulIdentifier", + "src": "7082:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "7093:4:74", + "nodeType": "YulIdentifier", + "src": "7093:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "7089:3:74", + "nodeType": "YulIdentifier", + "src": "7089:3:74" + }, + "nativeSrc": "7089:9:74", + "nodeType": "YulFunctionCall", + "src": "7089:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7078:3:74", + "nodeType": "YulIdentifier", + "src": "7078:3:74" + }, + "nativeSrc": "7078:21:74", + "nodeType": "YulFunctionCall", + "src": "7078:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "7069:5:74", + "nodeType": "YulIdentifier", + "src": "7069:5:74" + } + ] + }, + { + "nativeSrc": "7108:40:74", + "nodeType": "YulAssignment", + "src": "7108:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7121:5:74", + "nodeType": "YulIdentifier", + "src": "7121:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "7132:8:74", + "nodeType": "YulIdentifier", + "src": "7132:8:74" + }, + { + "name": "mask", + "nativeSrc": "7142:4:74", + "nodeType": "YulIdentifier", + "src": "7142:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7128:3:74", + "nodeType": "YulIdentifier", + "src": "7128:3:74" + }, + "nativeSrc": "7128:19:74", + "nodeType": "YulFunctionCall", + "src": "7128:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "7118:2:74", + "nodeType": "YulIdentifier", + "src": "7118:2:74" + }, + "nativeSrc": "7118:30:74", + "nodeType": "YulFunctionCall", + "src": "7118:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "7108:6:74", + "nodeType": "YulIdentifier", + "src": "7108:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "6761:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6798:5:74", + "nodeType": "YulTypedName", + "src": "6798:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "6805:10:74", + "nodeType": "YulTypedName", + "src": "6805:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "6817:8:74", + "nodeType": "YulTypedName", + "src": "6817:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "6830:6:74", + "nodeType": "YulTypedName", + "src": "6830:6:74", + "type": "" + } + ], + "src": "6761:393:74" + }, + { + "body": { + "nativeSrc": "7205:32:74", + "nodeType": "YulBlock", + "src": "7205:32:74", + "statements": [ + { + "nativeSrc": "7215:16:74", + "nodeType": "YulAssignment", + "src": "7215:16:74", + "value": { + "name": "value", + "nativeSrc": "7226:5:74", + "nodeType": "YulIdentifier", + "src": "7226:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "7215:7:74", + "nodeType": "YulIdentifier", + "src": "7215:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "7160:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7187:5:74", + "nodeType": "YulTypedName", + "src": "7187:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "7197:7:74", + "nodeType": "YulTypedName", + "src": "7197:7:74", + "type": "" + } + ], + "src": "7160:77:74" + }, + { + "body": { + "nativeSrc": "7275:28:74", + "nodeType": "YulBlock", + "src": "7275:28:74", + "statements": [ + { + "nativeSrc": "7285:12:74", + "nodeType": "YulAssignment", + "src": "7285:12:74", + "value": { + "name": "value", + "nativeSrc": "7292:5:74", + "nodeType": "YulIdentifier", + "src": "7292:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7285:3:74", + "nodeType": "YulIdentifier", + "src": "7285:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "7243:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7261:5:74", + "nodeType": "YulTypedName", + "src": "7261:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7271:3:74", + "nodeType": "YulTypedName", + "src": "7271:3:74", + "type": "" + } + ], + "src": "7243:60:74" + }, + { + "body": { + "nativeSrc": "7369:82:74", + "nodeType": "YulBlock", + "src": "7369:82:74", + "statements": [ + { + "nativeSrc": "7379:66:74", + "nodeType": "YulAssignment", + "src": "7379:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7437:5:74", + "nodeType": "YulIdentifier", + "src": "7437:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "7419:17:74", + "nodeType": "YulIdentifier", + "src": "7419:17:74" + }, + "nativeSrc": "7419:24:74", + "nodeType": "YulFunctionCall", + "src": "7419:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "7410:8:74", + "nodeType": "YulIdentifier", + "src": "7410:8:74" + }, + "nativeSrc": "7410:34:74", + "nodeType": "YulFunctionCall", + "src": "7410:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "7392:17:74", + "nodeType": "YulIdentifier", + "src": "7392:17:74" + }, + "nativeSrc": "7392:53:74", + "nodeType": "YulFunctionCall", + "src": "7392:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7379:9:74", + "nodeType": "YulIdentifier", + "src": "7379:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "7309:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7349:5:74", + "nodeType": "YulTypedName", + "src": "7349:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7359:9:74", + "nodeType": "YulTypedName", + "src": "7359:9:74", + "type": "" + } + ], + "src": "7309:142:74" + }, + { + "body": { + "nativeSrc": "7504:28:74", + "nodeType": "YulBlock", + "src": "7504:28:74", + "statements": [ + { + "nativeSrc": "7514:12:74", + "nodeType": "YulAssignment", + "src": "7514:12:74", + "value": { + "name": "value", + "nativeSrc": "7521:5:74", + "nodeType": "YulIdentifier", + "src": "7521:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7514:3:74", + "nodeType": "YulIdentifier", + "src": "7514:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "7457:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7490:5:74", + "nodeType": "YulTypedName", + "src": "7490:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7500:3:74", + "nodeType": "YulTypedName", + "src": "7500:3:74", + "type": "" + } + ], + "src": "7457:75:74" + }, + { + "body": { + "nativeSrc": "7614:193:74", + "nodeType": "YulBlock", + "src": "7614:193:74", + "statements": [ + { + "nativeSrc": "7624:63:74", + "nodeType": "YulVariableDeclaration", + "src": "7624:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "7679:7:74", + "nodeType": "YulIdentifier", + "src": "7679:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "7648:30:74", + "nodeType": "YulIdentifier", + "src": "7648:30:74" + }, + "nativeSrc": "7648:39:74", + "nodeType": "YulFunctionCall", + "src": "7648:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "7628:16:74", + "nodeType": "YulTypedName", + "src": "7628:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7703:4:74", + "nodeType": "YulIdentifier", + "src": "7703:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7743:4:74", + "nodeType": "YulIdentifier", + "src": "7743:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "7737:5:74", + "nodeType": "YulIdentifier", + "src": "7737:5:74" + }, + "nativeSrc": "7737:11:74", + "nodeType": "YulFunctionCall", + "src": "7737:11:74" + }, + { + "name": "offset", + "nativeSrc": "7750:6:74", + "nodeType": "YulIdentifier", + "src": "7750:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "7782:16:74", + "nodeType": "YulIdentifier", + "src": "7782:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "7758:23:74", + "nodeType": "YulIdentifier", + "src": "7758:23:74" + }, + "nativeSrc": "7758:41:74", + "nodeType": "YulFunctionCall", + "src": "7758:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "7709:27:74", + "nodeType": "YulIdentifier", + "src": "7709:27:74" + }, + "nativeSrc": "7709:91:74", + "nodeType": "YulFunctionCall", + "src": "7709:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7696:6:74", + "nodeType": "YulIdentifier", + "src": "7696:6:74" + }, + "nativeSrc": "7696:105:74", + "nodeType": "YulFunctionCall", + "src": "7696:105:74" + }, + "nativeSrc": "7696:105:74", + "nodeType": "YulExpressionStatement", + "src": "7696:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "7538:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "7591:4:74", + "nodeType": "YulTypedName", + "src": "7591:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "7597:6:74", + "nodeType": "YulTypedName", + "src": "7597:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "7605:7:74", + "nodeType": "YulTypedName", + "src": "7605:7:74", + "type": "" + } + ], + "src": "7538:269:74" + }, + { + "body": { + "nativeSrc": "7862:24:74", + "nodeType": "YulBlock", + "src": "7862:24:74", + "statements": [ + { + "nativeSrc": "7872:8:74", + "nodeType": "YulAssignment", + "src": "7872:8:74", + "value": { + "kind": "number", + "nativeSrc": "7879:1:74", + "nodeType": "YulLiteral", + "src": "7879:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7872:3:74", + "nodeType": "YulIdentifier", + "src": "7872:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "7813:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7858:3:74", + "nodeType": "YulTypedName", + "src": "7858:3:74", + "type": "" + } + ], + "src": "7813:73:74" + }, + { + "body": { + "nativeSrc": "7945:136:74", + "nodeType": "YulBlock", + "src": "7945:136:74", + "statements": [ + { + "nativeSrc": "7955:46:74", + "nodeType": "YulVariableDeclaration", + "src": "7955:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "7969:30:74", + "nodeType": "YulIdentifier", + "src": "7969:30:74" + }, + "nativeSrc": "7969:32:74", + "nodeType": "YulFunctionCall", + "src": "7969:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "7959:6:74", + "nodeType": "YulTypedName", + "src": "7959:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "8054:4:74", + "nodeType": "YulIdentifier", + "src": "8054:4:74" + }, + { + "name": "offset", + "nativeSrc": "8060:6:74", + "nodeType": "YulIdentifier", + "src": "8060:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "8068:6:74", + "nodeType": "YulIdentifier", + "src": "8068:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "8010:43:74", + "nodeType": "YulIdentifier", + "src": "8010:43:74" + }, + "nativeSrc": "8010:65:74", + "nodeType": "YulFunctionCall", + "src": "8010:65:74" + }, + "nativeSrc": "8010:65:74", + "nodeType": "YulExpressionStatement", + "src": "8010:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "7892:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "7931:4:74", + "nodeType": "YulTypedName", + "src": "7931:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "7937:6:74", + "nodeType": "YulTypedName", + "src": "7937:6:74", + "type": "" + } + ], + "src": "7892:189:74" + }, + { + "body": { + "nativeSrc": "8137:136:74", + "nodeType": "YulBlock", + "src": "8137:136:74", + "statements": [ + { + "body": { + "nativeSrc": "8204:63:74", + "nodeType": "YulBlock", + "src": "8204:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "8248:5:74", + "nodeType": "YulIdentifier", + "src": "8248:5:74" + }, + { + "kind": "number", + "nativeSrc": "8255:1:74", + "nodeType": "YulLiteral", + "src": "8255:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "8218:29:74", + "nodeType": "YulIdentifier", + "src": "8218:29:74" + }, + "nativeSrc": "8218:39:74", + "nodeType": "YulFunctionCall", + "src": "8218:39:74" + }, + "nativeSrc": "8218:39:74", + "nodeType": "YulExpressionStatement", + "src": "8218:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "8157:5:74", + "nodeType": "YulIdentifier", + "src": "8157:5:74" + }, + { + "name": "end", + "nativeSrc": "8164:3:74", + "nodeType": "YulIdentifier", + "src": "8164:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "8154:2:74", + "nodeType": "YulIdentifier", + "src": "8154:2:74" + }, + "nativeSrc": "8154:14:74", + "nodeType": "YulFunctionCall", + "src": "8154:14:74" + }, + "nativeSrc": "8147:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "8169:26:74", + "nodeType": "YulBlock", + "src": "8169:26:74", + "statements": [ + { + "nativeSrc": "8171:22:74", + "nodeType": "YulAssignment", + "src": "8171:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "8184:5:74", + "nodeType": "YulIdentifier", + "src": "8184:5:74" + }, + { + "kind": "number", + "nativeSrc": "8191:1:74", + "nodeType": "YulLiteral", + "src": "8191:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8180:3:74", + "nodeType": "YulIdentifier", + "src": "8180:3:74" + }, + "nativeSrc": "8180:13:74", + "nodeType": "YulFunctionCall", + "src": "8180:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "8171:5:74", + "nodeType": "YulIdentifier", + "src": "8171:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "8151:2:74", + "nodeType": "YulBlock", + "src": "8151:2:74", + "statements": [] + }, + "src": "8147:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "8087:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "8125:5:74", + "nodeType": "YulTypedName", + "src": "8125:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8132:3:74", + "nodeType": "YulTypedName", + "src": "8132:3:74", + "type": "" + } + ], + "src": "8087:186:74" + }, + { + "body": { + "nativeSrc": "8358:464:74", + "nodeType": "YulBlock", + "src": "8358:464:74", + "statements": [ + { + "body": { + "nativeSrc": "8384:431:74", + "nodeType": "YulBlock", + "src": "8384:431:74", + "statements": [ + { + "nativeSrc": "8398:54:74", + "nodeType": "YulVariableDeclaration", + "src": "8398:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8446:5:74", + "nodeType": "YulIdentifier", + "src": "8446:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "8414:31:74", + "nodeType": "YulIdentifier", + "src": "8414:31:74" + }, + "nativeSrc": "8414:38:74", + "nodeType": "YulFunctionCall", + "src": "8414:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "8402:8:74", + "nodeType": "YulTypedName", + "src": "8402:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8465:63:74", + "nodeType": "YulVariableDeclaration", + "src": "8465:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "8488:8:74", + "nodeType": "YulIdentifier", + "src": "8488:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "8516:10:74", + "nodeType": "YulIdentifier", + "src": "8516:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "8498:17:74", + "nodeType": "YulIdentifier", + "src": "8498:17:74" + }, + "nativeSrc": "8498:29:74", + "nodeType": "YulFunctionCall", + "src": "8498:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8484:3:74", + "nodeType": "YulIdentifier", + "src": "8484:3:74" + }, + "nativeSrc": "8484:44:74", + "nodeType": "YulFunctionCall", + "src": "8484:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "8469:11:74", + "nodeType": "YulTypedName", + "src": "8469:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8685:27:74", + "nodeType": "YulBlock", + "src": "8685:27:74", + "statements": [ + { + "nativeSrc": "8687:23:74", + "nodeType": "YulAssignment", + "src": "8687:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "8702:8:74", + "nodeType": "YulIdentifier", + "src": "8702:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "8687:11:74", + "nodeType": "YulIdentifier", + "src": "8687:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "8669:10:74", + "nodeType": "YulIdentifier", + "src": "8669:10:74" + }, + { + "kind": "number", + "nativeSrc": "8681:2:74", + "nodeType": "YulLiteral", + "src": "8681:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "8666:2:74", + "nodeType": "YulIdentifier", + "src": "8666:2:74" + }, + "nativeSrc": "8666:18:74", + "nodeType": "YulFunctionCall", + "src": "8666:18:74" + }, + "nativeSrc": "8663:49:74", + "nodeType": "YulIf", + "src": "8663:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "8754:11:74", + "nodeType": "YulIdentifier", + "src": "8754:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "8771:8:74", + "nodeType": "YulIdentifier", + "src": "8771:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "8799:3:74", + "nodeType": "YulIdentifier", + "src": "8799:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "8781:17:74", + "nodeType": "YulIdentifier", + "src": "8781:17:74" + }, + "nativeSrc": "8781:22:74", + "nodeType": "YulFunctionCall", + "src": "8781:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8767:3:74", + "nodeType": "YulIdentifier", + "src": "8767:3:74" + }, + "nativeSrc": "8767:37:74", + "nodeType": "YulFunctionCall", + "src": "8767:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "8725:28:74", + "nodeType": "YulIdentifier", + "src": "8725:28:74" + }, + "nativeSrc": "8725:80:74", + "nodeType": "YulFunctionCall", + "src": "8725:80:74" + }, + "nativeSrc": "8725:80:74", + "nodeType": "YulExpressionStatement", + "src": "8725:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "8375:3:74", + "nodeType": "YulIdentifier", + "src": "8375:3:74" + }, + { + "kind": "number", + "nativeSrc": "8380:2:74", + "nodeType": "YulLiteral", + "src": "8380:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8372:2:74", + "nodeType": "YulIdentifier", + "src": "8372:2:74" + }, + "nativeSrc": "8372:11:74", + "nodeType": "YulFunctionCall", + "src": "8372:11:74" + }, + "nativeSrc": "8369:446:74", + "nodeType": "YulIf", + "src": "8369:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "8279:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "8334:5:74", + "nodeType": "YulTypedName", + "src": "8334:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "8341:3:74", + "nodeType": "YulTypedName", + "src": "8341:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "8346:10:74", + "nodeType": "YulTypedName", + "src": "8346:10:74", + "type": "" + } + ], + "src": "8279:543:74" + }, + { + "body": { + "nativeSrc": "8891:54:74", + "nodeType": "YulBlock", + "src": "8891:54:74", + "statements": [ + { + "nativeSrc": "8901:37:74", + "nodeType": "YulAssignment", + "src": "8901:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "8926:4:74", + "nodeType": "YulIdentifier", + "src": "8926:4:74" + }, + { + "name": "value", + "nativeSrc": "8932:5:74", + "nodeType": "YulIdentifier", + "src": "8932:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "8922:3:74", + "nodeType": "YulIdentifier", + "src": "8922:3:74" + }, + "nativeSrc": "8922:16:74", + "nodeType": "YulFunctionCall", + "src": "8922:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "8901:8:74", + "nodeType": "YulIdentifier", + "src": "8901:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "8828:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "8866:4:74", + "nodeType": "YulTypedName", + "src": "8866:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "8872:5:74", + "nodeType": "YulTypedName", + "src": "8872:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "8882:8:74", + "nodeType": "YulTypedName", + "src": "8882:8:74", + "type": "" + } + ], + "src": "8828:117:74" + }, + { + "body": { + "nativeSrc": "9002:118:74", + "nodeType": "YulBlock", + "src": "9002:118:74", + "statements": [ + { + "nativeSrc": "9012:68:74", + "nodeType": "YulVariableDeclaration", + "src": "9012:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9061:1:74", + "nodeType": "YulLiteral", + "src": "9061:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "9064:5:74", + "nodeType": "YulIdentifier", + "src": "9064:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "9057:3:74", + "nodeType": "YulIdentifier", + "src": "9057:3:74" + }, + "nativeSrc": "9057:13:74", + "nodeType": "YulFunctionCall", + "src": "9057:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9076:1:74", + "nodeType": "YulLiteral", + "src": "9076:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "9072:3:74", + "nodeType": "YulIdentifier", + "src": "9072:3:74" + }, + "nativeSrc": "9072:6:74", + "nodeType": "YulFunctionCall", + "src": "9072:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "9028:28:74", + "nodeType": "YulIdentifier", + "src": "9028:28:74" + }, + "nativeSrc": "9028:51:74", + "nodeType": "YulFunctionCall", + "src": "9028:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "9024:3:74", + "nodeType": "YulIdentifier", + "src": "9024:3:74" + }, + "nativeSrc": "9024:56:74", + "nodeType": "YulFunctionCall", + "src": "9024:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "9016:4:74", + "nodeType": "YulTypedName", + "src": "9016:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9089:25:74", + "nodeType": "YulAssignment", + "src": "9089:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "9103:4:74", + "nodeType": "YulIdentifier", + "src": "9103:4:74" + }, + { + "name": "mask", + "nativeSrc": "9109:4:74", + "nodeType": "YulIdentifier", + "src": "9109:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "9099:3:74", + "nodeType": "YulIdentifier", + "src": "9099:3:74" + }, + "nativeSrc": "9099:15:74", + "nodeType": "YulFunctionCall", + "src": "9099:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "9089:6:74", + "nodeType": "YulIdentifier", + "src": "9089:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "8951:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "8979:4:74", + "nodeType": "YulTypedName", + "src": "8979:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "8985:5:74", + "nodeType": "YulTypedName", + "src": "8985:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "8995:6:74", + "nodeType": "YulTypedName", + "src": "8995:6:74", + "type": "" + } + ], + "src": "8951:169:74" + }, + { + "body": { + "nativeSrc": "9206:214:74", + "nodeType": "YulBlock", + "src": "9206:214:74", + "statements": [ + { + "nativeSrc": "9339:37:74", + "nodeType": "YulAssignment", + "src": "9339:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "9366:4:74", + "nodeType": "YulIdentifier", + "src": "9366:4:74" + }, + { + "name": "len", + "nativeSrc": "9372:3:74", + "nodeType": "YulIdentifier", + "src": "9372:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "9347:18:74", + "nodeType": "YulIdentifier", + "src": "9347:18:74" + }, + "nativeSrc": "9347:29:74", + "nodeType": "YulFunctionCall", + "src": "9347:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "9339:4:74", + "nodeType": "YulIdentifier", + "src": "9339:4:74" + } + ] + }, + { + "nativeSrc": "9385:29:74", + "nodeType": "YulAssignment", + "src": "9385:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "9396:4:74", + "nodeType": "YulIdentifier", + "src": "9396:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9406:1:74", + "nodeType": "YulLiteral", + "src": "9406:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "9409:3:74", + "nodeType": "YulIdentifier", + "src": "9409:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "9402:3:74", + "nodeType": "YulIdentifier", + "src": "9402:3:74" + }, + "nativeSrc": "9402:11:74", + "nodeType": "YulFunctionCall", + "src": "9402:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "9393:2:74", + "nodeType": "YulIdentifier", + "src": "9393:2:74" + }, + "nativeSrc": "9393:21:74", + "nodeType": "YulFunctionCall", + "src": "9393:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "9385:4:74", + "nodeType": "YulIdentifier", + "src": "9385:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "9125:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "9187:4:74", + "nodeType": "YulTypedName", + "src": "9187:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "9193:3:74", + "nodeType": "YulTypedName", + "src": "9193:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "9201:4:74", + "nodeType": "YulTypedName", + "src": "9201:4:74", + "type": "" + } + ], + "src": "9125:295:74" + }, + { + "body": { + "nativeSrc": "9517:1303:74", + "nodeType": "YulBlock", + "src": "9517:1303:74", + "statements": [ + { + "nativeSrc": "9528:51:74", + "nodeType": "YulVariableDeclaration", + "src": "9528:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "9575:3:74", + "nodeType": "YulIdentifier", + "src": "9575:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "9542:32:74", + "nodeType": "YulIdentifier", + "src": "9542:32:74" + }, + "nativeSrc": "9542:37:74", + "nodeType": "YulFunctionCall", + "src": "9542:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "9532:6:74", + "nodeType": "YulTypedName", + "src": "9532:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9664:22:74", + "nodeType": "YulBlock", + "src": "9664:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "9666:16:74", + "nodeType": "YulIdentifier", + "src": "9666:16:74" + }, + "nativeSrc": "9666:18:74", + "nodeType": "YulFunctionCall", + "src": "9666:18:74" + }, + "nativeSrc": "9666:18:74", + "nodeType": "YulExpressionStatement", + "src": "9666:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9636:6:74", + "nodeType": "YulIdentifier", + "src": "9636:6:74" + }, + { + "kind": "number", + "nativeSrc": "9644:18:74", + "nodeType": "YulLiteral", + "src": "9644:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9633:2:74", + "nodeType": "YulIdentifier", + "src": "9633:2:74" + }, + "nativeSrc": "9633:30:74", + "nodeType": "YulFunctionCall", + "src": "9633:30:74" + }, + "nativeSrc": "9630:56:74", + "nodeType": "YulIf", + "src": "9630:56:74" + }, + { + "nativeSrc": "9696:52:74", + "nodeType": "YulVariableDeclaration", + "src": "9696:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9742:4:74", + "nodeType": "YulIdentifier", + "src": "9742:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "9736:5:74", + "nodeType": "YulIdentifier", + "src": "9736:5:74" + }, + "nativeSrc": "9736:11:74", + "nodeType": "YulFunctionCall", + "src": "9736:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "9710:25:74", + "nodeType": "YulIdentifier", + "src": "9710:25:74" + }, + "nativeSrc": "9710:38:74", + "nodeType": "YulFunctionCall", + "src": "9710:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "9700:6:74", + "nodeType": "YulTypedName", + "src": "9700:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9841:4:74", + "nodeType": "YulIdentifier", + "src": "9841:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "9847:6:74", + "nodeType": "YulIdentifier", + "src": "9847:6:74" + }, + { + "name": "newLen", + "nativeSrc": "9855:6:74", + "nodeType": "YulIdentifier", + "src": "9855:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "9795:45:74", + "nodeType": "YulIdentifier", + "src": "9795:45:74" + }, + "nativeSrc": "9795:67:74", + "nodeType": "YulFunctionCall", + "src": "9795:67:74" + }, + "nativeSrc": "9795:67:74", + "nodeType": "YulExpressionStatement", + "src": "9795:67:74" + }, + { + "nativeSrc": "9872:18:74", + "nodeType": "YulVariableDeclaration", + "src": "9872:18:74", + "value": { + "kind": "number", + "nativeSrc": "9889:1:74", + "nodeType": "YulLiteral", + "src": "9889:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "9876:9:74", + "nodeType": "YulTypedName", + "src": "9876:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9900:17:74", + "nodeType": "YulAssignment", + "src": "9900:17:74", + "value": { + "kind": "number", + "nativeSrc": "9913:4:74", + "nodeType": "YulLiteral", + "src": "9913:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "9900:9:74", + "nodeType": "YulIdentifier", + "src": "9900:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "9964:611:74", + "nodeType": "YulBlock", + "src": "9964:611:74", + "statements": [ + { + "nativeSrc": "9978:37:74", + "nodeType": "YulVariableDeclaration", + "src": "9978:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9997:6:74", + "nodeType": "YulIdentifier", + "src": "9997:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10009:4:74", + "nodeType": "YulLiteral", + "src": "10009:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "10005:3:74", + "nodeType": "YulIdentifier", + "src": "10005:3:74" + }, + "nativeSrc": "10005:9:74", + "nodeType": "YulFunctionCall", + "src": "10005:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "9993:3:74", + "nodeType": "YulIdentifier", + "src": "9993:3:74" + }, + "nativeSrc": "9993:22:74", + "nodeType": "YulFunctionCall", + "src": "9993:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "9982:7:74", + "nodeType": "YulTypedName", + "src": "9982:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10029:51:74", + "nodeType": "YulVariableDeclaration", + "src": "10029:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "10075:4:74", + "nodeType": "YulIdentifier", + "src": "10075:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "10043:31:74", + "nodeType": "YulIdentifier", + "src": "10043:31:74" + }, + "nativeSrc": "10043:37:74", + "nodeType": "YulFunctionCall", + "src": "10043:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "10033:6:74", + "nodeType": "YulTypedName", + "src": "10033:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10093:10:74", + "nodeType": "YulVariableDeclaration", + "src": "10093:10:74", + "value": { + "kind": "number", + "nativeSrc": "10102:1:74", + "nodeType": "YulLiteral", + "src": "10102:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "10097:1:74", + "nodeType": "YulTypedName", + "src": "10097:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10161:163:74", + "nodeType": "YulBlock", + "src": "10161:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "10186:6:74", + "nodeType": "YulIdentifier", + "src": "10186:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10204:3:74", + "nodeType": "YulIdentifier", + "src": "10204:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "10209:9:74", + "nodeType": "YulIdentifier", + "src": "10209:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10200:3:74", + "nodeType": "YulIdentifier", + "src": "10200:3:74" + }, + "nativeSrc": "10200:19:74", + "nodeType": "YulFunctionCall", + "src": "10200:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10194:5:74", + "nodeType": "YulIdentifier", + "src": "10194:5:74" + }, + "nativeSrc": "10194:26:74", + "nodeType": "YulFunctionCall", + "src": "10194:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "10179:6:74", + "nodeType": "YulIdentifier", + "src": "10179:6:74" + }, + "nativeSrc": "10179:42:74", + "nodeType": "YulFunctionCall", + "src": "10179:42:74" + }, + "nativeSrc": "10179:42:74", + "nodeType": "YulExpressionStatement", + "src": "10179:42:74" + }, + { + "nativeSrc": "10238:24:74", + "nodeType": "YulAssignment", + "src": "10238:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "10252:6:74", + "nodeType": "YulIdentifier", + "src": "10252:6:74" + }, + { + "kind": "number", + "nativeSrc": "10260:1:74", + "nodeType": "YulLiteral", + "src": "10260:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10248:3:74", + "nodeType": "YulIdentifier", + "src": "10248:3:74" + }, + "nativeSrc": "10248:14:74", + "nodeType": "YulFunctionCall", + "src": "10248:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "10238:6:74", + "nodeType": "YulIdentifier", + "src": "10238:6:74" + } + ] + }, + { + "nativeSrc": "10279:31:74", + "nodeType": "YulAssignment", + "src": "10279:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "10296:9:74", + "nodeType": "YulIdentifier", + "src": "10296:9:74" + }, + { + "kind": "number", + "nativeSrc": "10307:2:74", + "nodeType": "YulLiteral", + "src": "10307:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10292:3:74", + "nodeType": "YulIdentifier", + "src": "10292:3:74" + }, + "nativeSrc": "10292:18:74", + "nodeType": "YulFunctionCall", + "src": "10292:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "10279:9:74", + "nodeType": "YulIdentifier", + "src": "10279:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "10127:1:74", + "nodeType": "YulIdentifier", + "src": "10127:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "10130:7:74", + "nodeType": "YulIdentifier", + "src": "10130:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "10124:2:74", + "nodeType": "YulIdentifier", + "src": "10124:2:74" + }, + "nativeSrc": "10124:14:74", + "nodeType": "YulFunctionCall", + "src": "10124:14:74" + }, + "nativeSrc": "10116:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "10139:21:74", + "nodeType": "YulBlock", + "src": "10139:21:74", + "statements": [ + { + "nativeSrc": "10141:17:74", + "nodeType": "YulAssignment", + "src": "10141:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "10150:1:74", + "nodeType": "YulIdentifier", + "src": "10150:1:74" + }, + { + "kind": "number", + "nativeSrc": "10153:4:74", + "nodeType": "YulLiteral", + "src": "10153:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10146:3:74", + "nodeType": "YulIdentifier", + "src": "10146:3:74" + }, + "nativeSrc": "10146:12:74", + "nodeType": "YulFunctionCall", + "src": "10146:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "10141:1:74", + "nodeType": "YulIdentifier", + "src": "10141:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "10120:3:74", + "nodeType": "YulBlock", + "src": "10120:3:74", + "statements": [] + }, + "src": "10116:208:74" + }, + { + "body": { + "nativeSrc": "10360:156:74", + "nodeType": "YulBlock", + "src": "10360:156:74", + "statements": [ + { + "nativeSrc": "10378:43:74", + "nodeType": "YulVariableDeclaration", + "src": "10378:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10405:3:74", + "nodeType": "YulIdentifier", + "src": "10405:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "10410:9:74", + "nodeType": "YulIdentifier", + "src": "10410:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10401:3:74", + "nodeType": "YulIdentifier", + "src": "10401:3:74" + }, + "nativeSrc": "10401:19:74", + "nodeType": "YulFunctionCall", + "src": "10401:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10395:5:74", + "nodeType": "YulIdentifier", + "src": "10395:5:74" + }, + "nativeSrc": "10395:26:74", + "nodeType": "YulFunctionCall", + "src": "10395:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "10382:9:74", + "nodeType": "YulTypedName", + "src": "10382:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "10445:6:74", + "nodeType": "YulIdentifier", + "src": "10445:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "10472:9:74", + "nodeType": "YulIdentifier", + "src": "10472:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "10487:6:74", + "nodeType": "YulIdentifier", + "src": "10487:6:74" + }, + { + "kind": "number", + "nativeSrc": "10495:4:74", + "nodeType": "YulLiteral", + "src": "10495:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10483:3:74", + "nodeType": "YulIdentifier", + "src": "10483:3:74" + }, + "nativeSrc": "10483:17:74", + "nodeType": "YulFunctionCall", + "src": "10483:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "10453:18:74", + "nodeType": "YulIdentifier", + "src": "10453:18:74" + }, + "nativeSrc": "10453:48:74", + "nodeType": "YulFunctionCall", + "src": "10453:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "10438:6:74", + "nodeType": "YulIdentifier", + "src": "10438:6:74" + }, + "nativeSrc": "10438:64:74", + "nodeType": "YulFunctionCall", + "src": "10438:64:74" + }, + "nativeSrc": "10438:64:74", + "nodeType": "YulExpressionStatement", + "src": "10438:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "10343:7:74", + "nodeType": "YulIdentifier", + "src": "10343:7:74" + }, + { + "name": "newLen", + "nativeSrc": "10352:6:74", + "nodeType": "YulIdentifier", + "src": "10352:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "10340:2:74", + "nodeType": "YulIdentifier", + "src": "10340:2:74" + }, + "nativeSrc": "10340:19:74", + "nodeType": "YulFunctionCall", + "src": "10340:19:74" + }, + "nativeSrc": "10337:179:74", + "nodeType": "YulIf", + "src": "10337:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "10536:4:74", + "nodeType": "YulIdentifier", + "src": "10536:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "10550:6:74", + "nodeType": "YulIdentifier", + "src": "10550:6:74" + }, + { + "kind": "number", + "nativeSrc": "10558:1:74", + "nodeType": "YulLiteral", + "src": "10558:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "10546:3:74", + "nodeType": "YulIdentifier", + "src": "10546:3:74" + }, + "nativeSrc": "10546:14:74", + "nodeType": "YulFunctionCall", + "src": "10546:14:74" + }, + { + "kind": "number", + "nativeSrc": "10562:1:74", + "nodeType": "YulLiteral", + "src": "10562:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10542:3:74", + "nodeType": "YulIdentifier", + "src": "10542:3:74" + }, + "nativeSrc": "10542:22:74", + "nodeType": "YulFunctionCall", + "src": "10542:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "10529:6:74", + "nodeType": "YulIdentifier", + "src": "10529:6:74" + }, + "nativeSrc": "10529:36:74", + "nodeType": "YulFunctionCall", + "src": "10529:36:74" + }, + "nativeSrc": "10529:36:74", + "nodeType": "YulExpressionStatement", + "src": "10529:36:74" + } + ] + }, + "nativeSrc": "9957:618:74", + "nodeType": "YulCase", + "src": "9957:618:74", + "value": { + "kind": "number", + "nativeSrc": "9962:1:74", + "nodeType": "YulLiteral", + "src": "9962:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "10592:222:74", + "nodeType": "YulBlock", + "src": "10592:222:74", + "statements": [ + { + "nativeSrc": "10606:14:74", + "nodeType": "YulVariableDeclaration", + "src": "10606:14:74", + "value": { + "kind": "number", + "nativeSrc": "10619:1:74", + "nodeType": "YulLiteral", + "src": "10619:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "10610:5:74", + "nodeType": "YulTypedName", + "src": "10610:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10643:67:74", + "nodeType": "YulBlock", + "src": "10643:67:74", + "statements": [ + { + "nativeSrc": "10661:35:74", + "nodeType": "YulAssignment", + "src": "10661:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10680:3:74", + "nodeType": "YulIdentifier", + "src": "10680:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "10685:9:74", + "nodeType": "YulIdentifier", + "src": "10685:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10676:3:74", + "nodeType": "YulIdentifier", + "src": "10676:3:74" + }, + "nativeSrc": "10676:19:74", + "nodeType": "YulFunctionCall", + "src": "10676:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10670:5:74", + "nodeType": "YulIdentifier", + "src": "10670:5:74" + }, + "nativeSrc": "10670:26:74", + "nodeType": "YulFunctionCall", + "src": "10670:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "10661:5:74", + "nodeType": "YulIdentifier", + "src": "10661:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "10636:6:74", + "nodeType": "YulIdentifier", + "src": "10636:6:74" + }, + "nativeSrc": "10633:77:74", + "nodeType": "YulIf", + "src": "10633:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "10730:4:74", + "nodeType": "YulIdentifier", + "src": "10730:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10789:5:74", + "nodeType": "YulIdentifier", + "src": "10789:5:74" + }, + { + "name": "newLen", + "nativeSrc": "10796:6:74", + "nodeType": "YulIdentifier", + "src": "10796:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "10736:52:74", + "nodeType": "YulIdentifier", + "src": "10736:52:74" + }, + "nativeSrc": "10736:67:74", + "nodeType": "YulFunctionCall", + "src": "10736:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "10723:6:74", + "nodeType": "YulIdentifier", + "src": "10723:6:74" + }, + "nativeSrc": "10723:81:74", + "nodeType": "YulFunctionCall", + "src": "10723:81:74" + }, + "nativeSrc": "10723:81:74", + "nodeType": "YulExpressionStatement", + "src": "10723:81:74" + } + ] + }, + "nativeSrc": "10584:230:74", + "nodeType": "YulCase", + "src": "10584:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9937:6:74", + "nodeType": "YulIdentifier", + "src": "9937:6:74" + }, + { + "kind": "number", + "nativeSrc": "9945:2:74", + "nodeType": "YulLiteral", + "src": "9945:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9934:2:74", + "nodeType": "YulIdentifier", + "src": "9934:2:74" + }, + "nativeSrc": "9934:14:74", + "nodeType": "YulFunctionCall", + "src": "9934:14:74" + }, + "nativeSrc": "9927:887:74", + "nodeType": "YulSwitch", + "src": "9927:887:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nativeSrc": "9425:1395:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "9506:4:74", + "nodeType": "YulTypedName", + "src": "9506:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "9512:3:74", + "nodeType": "YulTypedName", + "src": "9512:3:74", + "type": "" + } + ], + "src": "9425:1395:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n // string[]\n function abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := mload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_string_memory_ptr_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // string[]\n function abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptrt_address_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": { + "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol": { + "SparseMerkleProof": [ + { + "length": 20, + "start": 3215 + }, + { + "length": 20, + "start": 4042 + }, + { + "length": 20, + "start": 4197 + }, + { + "length": 20, + "start": 4431 + }, + { + "length": 20, + "start": 4571 + }, + { + "length": 20, + "start": 5168 + }, + { + "length": 20, + "start": 5300 + }, + { + "length": 20, + "start": 5451 + }, + { + "length": 20, + "start": 5575 + } + ] + } + }, + "object": "608060405234801561001057600080fd5b5060405161346b38038061346b83398181016040528101906100329190610424565b8160009080519060200190610048929190610091565b5080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050610773565b8280548282559060005260206000209081019282156100d9579160200282015b828111156100d85782518290816100c891906106a1565b50916020019190600101906100b1565b5b5090506100e691906100ea565b5090565b5b8082111561010a5760008181610101919061010e565b506001016100eb565b5090565b50805461011a906104ba565b6000825580601f1061012c575061014b565b601f01602090049060005260206000209081019061014a919061014e565b5b50565b5b8082111561016757600081600090555060010161014f565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6101cd82610184565b810181811067ffffffffffffffff821117156101ec576101eb610195565b5b80604052505050565b60006101ff61016b565b905061020b82826101c4565b919050565b600067ffffffffffffffff82111561022b5761022a610195565b5b602082029050602081019050919050565b600080fd5b600080fd5b600067ffffffffffffffff82111561026157610260610195565b5b61026a82610184565b9050602081019050919050565b60005b8381101561029557808201518184015260208101905061027a565b60008484015250505050565b60006102b46102af84610246565b6101f5565b9050828152602081018484840111156102d0576102cf610241565b5b6102db848285610277565b509392505050565b600082601f8301126102f8576102f761017f565b5b81516103088482602086016102a1565b91505092915050565b600061032461031f84610210565b6101f5565b905080838252602082019050602084028301858111156103475761034661023c565b5b835b8181101561038e57805167ffffffffffffffff81111561036c5761036b61017f565b5b80860161037989826102e3565b85526020850194505050602081019050610349565b5050509392505050565b600082601f8301126103ad576103ac61017f565b5b81516103bd848260208601610311565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103f1826103c6565b9050919050565b610401816103e6565b811461040c57600080fd5b50565b60008151905061041e816103f8565b92915050565b6000806040838503121561043b5761043a610175565b5b600083015167ffffffffffffffff8111156104595761045861017a565b5b61046585828601610398565b92505060206104768582860161040f565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806104d257607f821691505b6020821081036104e5576104e461048b565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830261054d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610510565b6105578683610510565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061059e6105996105948461056f565b610579565b61056f565b9050919050565b6000819050919050565b6105b883610583565b6105cc6105c4826105a5565b84845461051d565b825550505050565b600090565b6105e16105d4565b6105ec8184846105af565b505050565b5b81811015610610576106056000826105d9565b6001810190506105f2565b5050565b601f82111561065557610626816104eb565b61062f84610500565b8101602085101561063e578190505b61065261064a85610500565b8301826105f1565b50505b505050565b600082821c905092915050565b60006106786000198460080261065a565b1980831691505092915050565b60006106918383610667565b9150826002028217905092915050565b6106aa82610480565b67ffffffffffffffff8111156106c3576106c2610195565b5b6106cd82546104ba565b6106d8828285610614565b600060209050601f83116001811461070b57600084156106f9578287015190505b6107038582610685565b86555061076b565b601f198416610719866104eb565b60005b828110156107415784890151825560018201915060208501945060208101905061071c565b8683101561075e578489015161075a601f891682610667565b8355505b6001600288020188555050505b505050505050565b612ce9806107826000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063a183bada14610051578063b50f2fbc1461006f578063c51ca02a1461008d578063f36c452e146100bd575b600080fd5b6100596100ed565b6040516100669190611409565b60405180910390f35b610077610113565b6040516100849190611576565b60405180910390f35b6100a760048036038101906100a29190611922565b6101ec565b6040516100b49190611b08565b60405180910390f35b6100d760048036038101906100d29190611b2a565b61040a565b6040516100e49190611ba1565b60405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606000805480602002602001604051908101604052809291908181526020016000905b828210156101e357838290600052602060002001805461015690611bf2565b80601f016020809104026020016040519081016040528092919081815260200182805461018290611bf2565b80156101cf5780601f106101a4576101008083540402835291602001916101cf565b820191906000526020600020905b8154815290600101906020018083116101b257829003601f168201915b505050505081526020019060010190610137565b50505050905090565b606060008060008580602001905181019061020791906120b2565b9250925092506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663695378f56040518163ffffffff1660e01b8152600401602060405180830381865afa15801561027c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a0919061213d565b90508581111580156102b25750808411155b806102c8575085816102c49190612199565b8410155b610307576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102fe9061223f565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638be745d1866040518263ffffffff1660e01b8152600401610364919061226e565b602060405180830381865afa158015610381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a59190612289565b90506000801b81036103ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e390612328565b60405180910390fd5b6103fa8b8b8b8488886104b6565b9550505050505095945050505050565b6000818154811061041a57600080fd5b90600052602060002001600091509050805461043590611bf2565b80601f016020809104026020016040519081016040528092919081815260200182805461046190611bf2565b80156104ae5780601f10610483576101008083540402835291602001916104ae565b820191906000526020600020905b81548152906001019060200180831161049157829003601f168201915b505050505081565b60608151865111156104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f4906123ba565b60405180910390fd5b610508878486610843565b50600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__6360f0f00f8560400151600001516040518263ffffffff1660e01b815260040161054a9190612424565b60c060405180830381865af4158015610567573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058b9190612526565b90506000875167ffffffffffffffff8111156105aa576105a96115dd565b5b6040519080825280602002602001820160405280156105dd57816020015b60608152602001906001900390816105c85790505b50925060005b885181101561083657600089828151811061060157610600612553565b5b60200260200101519050600080610619838c89610b38565b91509150816107f75787858151811061063557610634612553565b5b60200260200101516060015161069757600060405160200161065791906125d4565b60405160208183030381529060405287858151811061067957610678612553565b5b6020026020010181905250848061068f906125ef565b9550506107f2565b610709868987815181106106ae576106ad612553565b5b6020026020010151602001518a88815181106106cd576106cc612553565b5b602002602001015160400151602001518b89815181106106f0576106ef612553565b5b602002602001015160400151600001518560001b610caa565b878580610715906125ef565b96508151811061072857610727612553565b5b602002602001015160400151600001516040516020016107489190612646565b60405160208183030381529060405287858151811061076a57610769612553565b5b6020026020010181905250602087858151811061078a57610789612553565b5b60200260200101515111156107f1578684815181106107ac576107ab612553565b5b6020026020010151516040517f54d020910000000000000000000000000000000000000000000000000000000081526004016107e8919061226e565b60405180910390fd5b5b610826565b61080381868a89610f26565b88868151811061081657610815612553565b5b6020026020010181975082905250505b50505080806001019150506105e3565b5050509695505050505050565b60008073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63b893e579866040516020016108719190611409565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161089c9190612424565b602060405180830381865af41580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dd9190612289565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__635ea5a98f86604001516020015160298151811061091757610916612553565b5b60200260200101516040518263ffffffff1660e01b815260040161093b9190612424565b608060405180830381865af4158015610958573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097c91906126d9565b90506000816040015190508083146109c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c090612752565b60405180910390fd5b600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63cc5c21ea8860400151602001518960200151896040518463ffffffff1660e01b8152600401610a1293929190612874565b602060405180830381865af4158015610a2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5391906128b2565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__638c628e408960400151600001516040518263ffffffff1660e01b8152600401610a969190612424565b602060405180830381865af4158015610ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad79190612289565b9050818015610ae95750808460600151145b610b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1f90612951565b60405180910390fd5b6001955050505050509392505050565b600080600085600060208110610b5157610b50612553565b5b1a60f81b60f81c905060006001821660ff16141592506000610b8b87600160208110610b8057610b7f612553565b5b1a60f81b87876111d1565b90506020815114610bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc8906129e3565b60405180910390fd5b80610bdb90612a35565b60001c92506000600290505b602081108015610c33575060ff60f81b888260208110610c0a57610c09612553565b5b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15610c9f576000610c5b898360208110610c5057610c4f612553565b5b1a60f81b89896111d1565b90508085604051602001610c70929190612af9565b6040516020818303038152906040528051906020012060001c9450508080610c97906125ef565b915050610be7565b505050935093915050565b600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63cc5c21ea858789604001516040518463ffffffff1660e01b8152600401610ceb93929190612874565b602060405180830381865af4158015610d08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2c91906128b2565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__635ea5a98f86602981518110610d5e57610d5d612553565b5b60200260200101516040518263ffffffff1660e01b8152600401610d829190612424565b608060405180830381865af4158015610d9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc391906126d9565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63ceeef504856040518263ffffffff1660e01b8152600401610dfe9190612b21565b602060405180830381865af4158015610e1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3f9190612289565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63ceeef504876040518263ffffffff1660e01b8152600401610e7a9190612b21565b602060405180830381865af4158015610e97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ebb9190612289565b9050838015610ecd5750818360400151145b8015610edc5750808360600151145b610f1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1290612bae565b60405180910390fd5b505050505050505050565b60606000838581518110610f3d57610f3c612553565b5b602002602001015160600151610f74578480610f58906125ef565b95506040518060200160405280600081525090915091506111c8565b610fe683858781518110610f8b57610f8a612553565b5b602002602001015160200151868881518110610faa57610fa9612553565b5b60200260200101516040015160200151878981518110610fcd57610fcc612553565b5b602002602001015160400151600001518a60001b610caa565b6000848680610ff4906125ef565b97508151811061100757611006612553565b5b6020026020010151604001516000015160001c905060018082160361118957866040516020016110379190612bce565b6040516020818303038152906040528051906020012060001c9650600181901c67ffffffffffffffff8111156110705761106f6115dd565b5b6040519080825280601f01601f1916602001820160405280156110a25781602001600182028036833780820191505090505b50925060005b835181101561117c5761112f858789815181106110c8576110c7612553565b5b602002602001015160200151888a815181106110e7576110e6612553565b5b60200260200101516040015160200151898b8151811061110a57611109612553565b5b602002602001015160400151600001518c80611125906125ef565b9d5060001b610caa565b60208161113c9190612be9565b9050600086888061114c906125ef565b99508151811061115f5761115e612553565b5b6020026020010151604001516000015190508082860152506110a8565b83879350935050506111c8565b6000600160ff8316901c90506111c0826040516020016111a9919061226e565b604051602081830303815290604052600083611297565b879350935050505b94509492505050565b6060600060e08560f81c1690506000601f8660f81c169050600060ff168260ff160361121e57848160ff168151811061120d5761120c612553565b5b602002602001015192505050611290565b602060ff168260ff160361125357838160ff168151811061124257611241612553565b5b602002602001015192505050611290565b816040517fb378b6d40000000000000000000000000000000000000000000000000000000081526004016112879190612c2c565b60405180910390fd5b9392505050565b6060835182846112a79190612be9565b11156112e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112df90612c93565b60405180910390fd5b60008267ffffffffffffffff811115611304576113036115dd565b5b6040519080825280601f01601f1916602001820160405280156113365781602001600182028036833780820191505090505b50905060005b838110156113bc578585826113519190612be9565b8151811061136257611361612553565b5b602001015160f81c60f81b8282815181106113805761137f612553565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808060010191505061133c565b50809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006113f3826113c8565b9050919050565b611403816113e8565b82525050565b600060208201905061141e60008301846113fa565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561148a57808201518184015260208101905061146f565b60008484015250505050565b6000601f19601f8301169050919050565b60006114b282611450565b6114bc818561145b565b93506114cc81856020860161146c565b6114d581611496565b840191505092915050565b60006114ec83836114a7565b905092915050565b6000602082019050919050565b600061150c82611424565b611516818561142f565b93508360208202850161152885611440565b8060005b85811015611564578484038952815161154585826114e0565b9450611550836114f4565b925060208a0199505060018101905061152c565b50829750879550505050505092915050565b600060208201905081810360008301526115908184611501565b905092915050565b6000604051905090565b600080fd5b600080fd5b6115b5816113e8565b81146115c057600080fd5b50565b6000813590506115d2816115ac565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61161582611496565b810181811067ffffffffffffffff82111715611634576116336115dd565b5b80604052505050565b6000611647611598565b9050611653828261160c565b919050565b600067ffffffffffffffff821115611673576116726115dd565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b61169c81611689565b81146116a757600080fd5b50565b6000813590506116b981611693565b92915050565b60006116d26116cd84611658565b61163d565b905080838252602082019050602084028301858111156116f5576116f4611684565b5b835b8181101561171e578061170a88826116aa565b8452602084019350506020810190506116f7565b5050509392505050565b600082601f83011261173d5761173c6115d8565b5b813561174d8482602086016116bf565b91505092915050565b600067ffffffffffffffff821115611771576117706115dd565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff8211156117a2576117a16115dd565b5b6117ab82611496565b9050602081019050919050565b82818337600083830152505050565b60006117da6117d584611787565b61163d565b9050828152602081018484840111156117f6576117f5611782565b5b6118018482856117b8565b509392505050565b600082601f83011261181e5761181d6115d8565b5b813561182e8482602086016117c7565b91505092915050565b600061184a61184584611756565b61163d565b9050808382526020820190506020840283018581111561186d5761186c611684565b5b835b818110156118b457803567ffffffffffffffff811115611892576118916115d8565b5b80860161189f8982611809565b8552602085019450505060208101905061186f565b5050509392505050565b600082601f8301126118d3576118d26115d8565b5b81356118e3848260208601611837565b91505092915050565b6000819050919050565b6118ff816118ec565b811461190a57600080fd5b50565b60008135905061191c816118f6565b92915050565b600080600080600060a0868803121561193e5761193d6115a2565b5b600061194c888289016115c3565b955050602086013567ffffffffffffffff81111561196d5761196c6115a7565b5b61197988828901611728565b945050604086013567ffffffffffffffff81111561199a576119996115a7565b5b6119a6888289016118be565b935050606086013567ffffffffffffffff8111156119c7576119c66115a7565b5b6119d388828901611809565b92505060806119e48882890161190d565b9150509295509295909350565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b6000611a4482611a1d565b611a4e8185611a28565b9350611a5e81856020860161146c565b611a6781611496565b840191505092915050565b6000611a7e8383611a39565b905092915050565b6000602082019050919050565b6000611a9e826119f1565b611aa881856119fc565b935083602082028501611aba85611a0d565b8060005b85811015611af65784840389528151611ad78582611a72565b9450611ae283611a86565b925060208a01995050600181019050611abe565b50829750879550505050505092915050565b60006020820190508181036000830152611b228184611a93565b905092915050565b600060208284031215611b4057611b3f6115a2565b5b6000611b4e8482850161190d565b91505092915050565b600082825260208201905092915050565b6000611b7382611450565b611b7d8185611b57565b9350611b8d81856020860161146c565b611b9681611496565b840191505092915050565b60006020820190508181036000830152611bbb8184611b68565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c0a57607f821691505b602082108103611c1d57611c1c611bc3565b5b50919050565b600081519050611c32816118f6565b92915050565b600080fd5b600080fd5b600081519050611c51816115ac565b92915050565b6000611c6a611c6584611787565b61163d565b905082815260208101848484011115611c8657611c85611782565b5b611c9184828561146c565b509392505050565b600082601f830112611cae57611cad6115d8565b5b8151611cbe848260208601611c57565b91505092915050565b6000611cda611cd584611756565b61163d565b90508083825260208201905060208402830185811115611cfd57611cfc611684565b5b835b81811015611d4457805167ffffffffffffffff811115611d2257611d216115d8565b5b808601611d2f8982611c99565b85526020850194505050602081019050611cff565b5050509392505050565b600082601f830112611d6357611d626115d8565b5b8151611d73848260208601611cc7565b91505092915050565b600060408284031215611d9257611d91611c38565b5b611d9c604061163d565b9050600082015167ffffffffffffffff811115611dbc57611dbb611c3d565b5b611dc884828501611c99565b600083015250602082015167ffffffffffffffff811115611dec57611deb611c3d565b5b611df884828501611d4e565b60208301525092915050565b600060608284031215611e1a57611e19611c38565b5b611e24606061163d565b90506000611e3484828501611c42565b6000830152506020611e4884828501611c23565b602083015250604082015167ffffffffffffffff811115611e6c57611e6b611c3d565b5b611e7884828501611d7c565b60408301525092915050565b600067ffffffffffffffff821115611e9f57611e9e6115dd565b5b602082029050602081019050919050565b600081519050611ebf81611693565b92915050565b600060408284031215611edb57611eda611c38565b5b611ee5604061163d565b90506000611ef584828501611eb0565b600083015250602082015167ffffffffffffffff811115611f1957611f18611c3d565b5b611f2584828501611d4e565b60208301525092915050565b60008115159050919050565b611f4681611f31565b8114611f5157600080fd5b50565b600081519050611f6381611f3d565b92915050565b600060808284031215611f7f57611f7e611c38565b5b611f89608061163d565b90506000611f9984828501611eb0565b6000830152506020611fad84828501611c23565b602083015250604082015167ffffffffffffffff811115611fd157611fd0611c3d565b5b611fdd84828501611ec5565b6040830152506060611ff184828501611f54565b60608301525092915050565b600061201061200b84611e84565b61163d565b9050808382526020820190506020840283018581111561203357612032611684565b5b835b8181101561207a57805167ffffffffffffffff811115612058576120576115d8565b5b8086016120658982611f69565b85526020850194505050602081019050612035565b5050509392505050565b600082601f830112612099576120986115d8565b5b81516120a9848260208601611ffd565b91505092915050565b6000806000606084860312156120cb576120ca6115a2565b5b60006120d986828701611c23565b935050602084015167ffffffffffffffff8111156120fa576120f96115a7565b5b61210686828701611e04565b925050604084015167ffffffffffffffff811115612127576121266115a7565b5b61213386828701612084565b9150509250925092565b600060208284031215612153576121526115a2565b5b600061216184828501611c23565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006121a4826118ec565b91506121af836118ec565b92508282039050818111156121c7576121c661216a565b5b92915050565b7f4c696e656153706172736550726f6f6656657269666965723a20626c6f636b2060008201527f6e6f7420696e2072616e67652061636365707465640000000000000000000000602082015250565b6000612229603583611b57565b9150612234826121cd565b604082019050919050565b600060208201905081810360008301526122588161221c565b9050919050565b612268816118ec565b82525050565b6000602082019050612283600083018461225f565b92915050565b60006020828403121561229f5761229e6115a2565b5b60006122ad84828501611eb0565b91505092915050565b7f4c696e656153706172736550726f6f6656657269666965723a20696e76616c6960008201527f6420737461746520726f6f740000000000000000000000000000000000000000602082015250565b6000612312602c83611b57565b915061231d826122b6565b604082019050919050565b6000602082019050818103600083015261234181612305565b9050919050565b7f4c696e656150726f6f6648656c7065723a20636f6d6d616e6473206e756d626560008201527f72203e2073746f726167652070726f6f6673206e756d62657200000000000000602082015250565b60006123a4603983611b57565b91506123af82612348565b604082019050919050565b600060208201905081810360008301526123d381612397565b9050919050565b600082825260208201905092915050565b60006123f682611a1d565b61240081856123da565b935061241081856020860161146c565b61241981611496565b840191505092915050565b6000602082019050818103600083015261243e81846123eb565b905092915050565b600067ffffffffffffffff82169050919050565b61246381612446565b811461246e57600080fd5b50565b6000815190506124808161245a565b92915050565b600060c0828403121561249c5761249b611c38565b5b6124a660c061163d565b905060006124b684828501612471565b60008301525060206124ca84828501611c23565b60208301525060406124de84828501611eb0565b60408301525060606124f284828501611eb0565b606083015250608061250684828501611eb0565b60808301525060a061251a84828501612471565b60a08301525092915050565b600060c0828403121561253c5761253b6115a2565b5b600061254a84828501612486565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600060ff82169050919050565b6000819050919050565b60006125be6125b96125b484612582565b612599565b61258c565b9050919050565b6125ce816125a3565b82525050565b60006020820190506125e960008301846125c5565b92915050565b60006125fa826118ec565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361262c5761262b61216a565b5b600182019050919050565b61264081611689565b82525050565b600060208201905061265b6000830184612637565b92915050565b60006080828403121561267757612676611c38565b5b612681608061163d565b9050600061269184828501611c23565b60008301525060206126a584828501611c23565b60208301525060406126b984828501611eb0565b60408301525060606126cd84828501611eb0565b60608301525092915050565b6000608082840312156126ef576126ee6115a2565b5b60006126fd84828501612661565b91505092915050565b7f4c696e656150726f6f6648656c7065723a2077726f6e67207461726765740000600082015250565b600061273c601e83611b57565b915061274782612706565b602082019050919050565b6000602082019050818103600083015261276b8161272f565b9050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061279f82611a1d565b6127a98185612783565b93506127b981856020860161146c565b6127c281611496565b840191505092915050565b60006127d98383612794565b905092915050565b60006127ec826119f1565b6127f68185612772565b93508360208202850161280885611a0d565b8060005b85811015612844578484038952815161282585826127cd565b945061283083611a86565b925060208a0199505060018101905061280c565b50829750879550505050505092915050565b61285f816118ec565b82525050565b61286e81611689565b82525050565b6000606082019050818103600083015261288e81866127e1565b905061289d6020830185612856565b6128aa6040830184612865565b949350505050565b6000602082840312156128c8576128c76115a2565b5b60006128d684828501611f54565b91505092915050565b7f4c696e656150726f6f6648656c7065723a20696e76616c6964206163636f756e60008201527f742070726f6f6600000000000000000000000000000000000000000000000000602082015250565b600061293b602783611b57565b9150612946826128df565b604082019050919050565b6000602082019050818103600083015261296a8161292e565b9050919050565b7f4669727374207061746820656c656d656e74206d75737420626520333220627960008201527f7465730000000000000000000000000000000000000000000000000000000000602082015250565b60006129cd602383611b57565b91506129d882612971565b604082019050919050565b600060208201905081810360008301526129fc816129c0565b9050919050565b6000819050602082019050919050565b6000612a1f8251611689565b80915050919050565b600082821b905092915050565b6000612a4082611a1d565b82612a4a84612a03565b9050612a5581612a13565b92506020821015612a9557612a907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802612a28565b831692505b5050919050565b600081905092915050565b6000612ab282611a1d565b612abc8185612a9c565b9350612acc81856020860161146c565b80840191505092915050565b6000819050919050565b612af3612aee826118ec565b612ad8565b82525050565b6000612b058285612aa7565b9150612b118284612ae2565b6020820191508190509392505050565b6000602082019050612b366000830184612865565b92915050565b7f4c696e656150726f6f6648656c7065723a20696e76616c69642073746f72616760008201527f652070726f6f6600000000000000000000000000000000000000000000000000602082015250565b6000612b98602783611b57565b9150612ba382612b3c565b604082019050919050565b60006020820190508181036000830152612bc781612b8b565b9050919050565b6000612bda8284612ae2565b60208201915081905092915050565b6000612bf4826118ec565b9150612bff836118ec565b9250828201905080821115612c1757612c1661216a565b5b92915050565b612c268161258c565b82525050565b6000602082019050612c416000830184612c1d565b92915050565b7f736c69636542797465733a206f7574206f662072616e67650000000000000000600082015250565b6000612c7d601883611b57565b9150612c8882612c47565b602082019050919050565b60006020820190508181036000830152612cac81612c70565b905091905056fea2646970667358221220f5ed6c78b94227e6c6feac9d1baaa09bca365defc8b6ccf9ef98484e0f0bf47464736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x346B CODESIZE SUB DUP1 PUSH2 0x346B DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x424 JUMP JUMPDEST DUP2 PUSH1 0x0 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x48 SWAP3 SWAP2 SWAP1 PUSH2 0x91 JUMP JUMPDEST POP DUP1 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP PUSH2 0x773 JUMP JUMPDEST DUP3 DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0xD9 JUMPI SWAP2 PUSH1 0x20 MUL DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0xD8 JUMPI DUP3 MLOAD DUP3 SWAP1 DUP2 PUSH2 0xC8 SWAP2 SWAP1 PUSH2 0x6A1 JUMP JUMPDEST POP SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0xB1 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0xE6 SWAP2 SWAP1 PUSH2 0xEA JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x10A JUMPI PUSH1 0x0 DUP2 DUP2 PUSH2 0x101 SWAP2 SWAP1 PUSH2 0x10E JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xEB JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x11A SWAP1 PUSH2 0x4BA JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x12C JUMPI POP PUSH2 0x14B JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x14A SWAP2 SWAP1 PUSH2 0x14E JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x167 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x14F JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1CD DUP3 PUSH2 0x184 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1EC JUMPI PUSH2 0x1EB PUSH2 0x195 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FF PUSH2 0x16B JUMP JUMPDEST SWAP1 POP PUSH2 0x20B DUP3 DUP3 PUSH2 0x1C4 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x22B JUMPI PUSH2 0x22A PUSH2 0x195 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x261 JUMPI PUSH2 0x260 PUSH2 0x195 JUMP JUMPDEST JUMPDEST PUSH2 0x26A DUP3 PUSH2 0x184 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x295 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x27A JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B4 PUSH2 0x2AF DUP5 PUSH2 0x246 JUMP JUMPDEST PUSH2 0x1F5 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2D0 JUMPI PUSH2 0x2CF PUSH2 0x241 JUMP JUMPDEST JUMPDEST PUSH2 0x2DB DUP5 DUP3 DUP6 PUSH2 0x277 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2F8 JUMPI PUSH2 0x2F7 PUSH2 0x17F JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x308 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2A1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324 PUSH2 0x31F DUP5 PUSH2 0x210 JUMP JUMPDEST PUSH2 0x1F5 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x347 JUMPI PUSH2 0x346 PUSH2 0x23C JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x38E JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x36C JUMPI PUSH2 0x36B PUSH2 0x17F JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x379 DUP10 DUP3 PUSH2 0x2E3 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x349 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x3AD JUMPI PUSH2 0x3AC PUSH2 0x17F JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x3BD DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x311 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F1 DUP3 PUSH2 0x3C6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x401 DUP2 PUSH2 0x3E6 JUMP JUMPDEST DUP2 EQ PUSH2 0x40C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x41E DUP2 PUSH2 0x3F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x43B JUMPI PUSH2 0x43A PUSH2 0x175 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x459 JUMPI PUSH2 0x458 PUSH2 0x17A JUMP JUMPDEST JUMPDEST PUSH2 0x465 DUP6 DUP3 DUP7 ADD PUSH2 0x398 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x476 DUP6 DUP3 DUP7 ADD PUSH2 0x40F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x4D2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x4E5 JUMPI PUSH2 0x4E4 PUSH2 0x48B JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x54D PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x510 JUMP JUMPDEST PUSH2 0x557 DUP7 DUP4 PUSH2 0x510 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x59E PUSH2 0x599 PUSH2 0x594 DUP5 PUSH2 0x56F JUMP JUMPDEST PUSH2 0x579 JUMP JUMPDEST PUSH2 0x56F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5B8 DUP4 PUSH2 0x583 JUMP JUMPDEST PUSH2 0x5CC PUSH2 0x5C4 DUP3 PUSH2 0x5A5 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x51D JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x5E1 PUSH2 0x5D4 JUMP JUMPDEST PUSH2 0x5EC DUP2 DUP5 DUP5 PUSH2 0x5AF JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x610 JUMPI PUSH2 0x605 PUSH1 0x0 DUP3 PUSH2 0x5D9 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5F2 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x655 JUMPI PUSH2 0x626 DUP2 PUSH2 0x4EB JUMP JUMPDEST PUSH2 0x62F DUP5 PUSH2 0x500 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x63E JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x652 PUSH2 0x64A DUP6 PUSH2 0x500 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x5F1 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x678 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x65A JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x691 DUP4 DUP4 PUSH2 0x667 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6AA DUP3 PUSH2 0x480 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6C3 JUMPI PUSH2 0x6C2 PUSH2 0x195 JUMP JUMPDEST JUMPDEST PUSH2 0x6CD DUP3 SLOAD PUSH2 0x4BA JUMP JUMPDEST PUSH2 0x6D8 DUP3 DUP3 DUP6 PUSH2 0x614 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x70B JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x6F9 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x703 DUP6 DUP3 PUSH2 0x685 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x76B JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x719 DUP7 PUSH2 0x4EB JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x741 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x71C JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x75E JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x75A PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x667 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2CE9 DUP1 PUSH2 0x782 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA183BADA EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0xB50F2FBC EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0xC51CA02A EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0xF36C452E EQ PUSH2 0xBD JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x1409 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77 PUSH2 0x113 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x1576 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1922 JUMP JUMPDEST PUSH2 0x1EC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB4 SWAP2 SWAP1 PUSH2 0x1B08 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xD7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD2 SWAP2 SWAP1 PUSH2 0x1B2A JUMP JUMPDEST PUSH2 0x40A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE4 SWAP2 SWAP1 PUSH2 0x1BA1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x1E3 JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD DUP1 SLOAD PUSH2 0x156 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x182 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1CF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1A4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1CF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1B2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x137 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x207 SWAP2 SWAP1 PUSH2 0x20B2 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x695378F5 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x27C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2A0 SWAP2 SWAP1 PUSH2 0x213D JUMP JUMPDEST SWAP1 POP DUP6 DUP2 GT ISZERO DUP1 ISZERO PUSH2 0x2B2 JUMPI POP DUP1 DUP5 GT ISZERO JUMPDEST DUP1 PUSH2 0x2C8 JUMPI POP DUP6 DUP2 PUSH2 0x2C4 SWAP2 SWAP1 PUSH2 0x2199 JUMP JUMPDEST DUP5 LT ISZERO JUMPDEST PUSH2 0x307 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2FE SWAP1 PUSH2 0x223F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8BE745D1 DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x364 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x381 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3A5 SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 SHL DUP2 SUB PUSH2 0x3EC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E3 SWAP1 PUSH2 0x2328 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3FA DUP12 DUP12 DUP12 DUP5 DUP9 DUP9 PUSH2 0x4B6 JUMP JUMPDEST SWAP6 POP POP POP POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x41A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP1 POP DUP1 SLOAD PUSH2 0x435 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x461 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4AE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x483 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4AE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x491 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x60 DUP2 MLOAD DUP7 MLOAD GT ISZERO PUSH2 0x4FD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F4 SWAP1 PUSH2 0x23BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x508 DUP8 DUP5 DUP7 PUSH2 0x843 JUMP JUMPDEST POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x60F0F00F DUP6 PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x54A SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0xC0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x567 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x2526 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP8 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5AA JUMPI PUSH2 0x5A9 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5DD JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x5C8 JUMPI SWAP1 POP JUMPDEST POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP9 MLOAD DUP2 LT ISZERO PUSH2 0x836 JUMPI PUSH1 0x0 DUP10 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x601 JUMPI PUSH2 0x600 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x619 DUP4 DUP13 DUP10 PUSH2 0xB38 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x7F7 JUMPI DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x635 JUMPI PUSH2 0x634 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0x697 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x657 SWAP2 SWAP1 PUSH2 0x25D4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x679 JUMPI PUSH2 0x678 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP DUP5 DUP1 PUSH2 0x68F SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP6 POP POP PUSH2 0x7F2 JUMP JUMPDEST PUSH2 0x709 DUP7 DUP10 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x6AE JUMPI PUSH2 0x6AD PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP11 DUP9 DUP2 MLOAD DUP2 LT PUSH2 0x6CD JUMPI PUSH2 0x6CC PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP12 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0x6F0 JUMPI PUSH2 0x6EF PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST DUP8 DUP6 DUP1 PUSH2 0x715 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP7 POP DUP2 MLOAD DUP2 LT PUSH2 0x728 JUMPI PUSH2 0x727 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x748 SWAP2 SWAP1 PUSH2 0x2646 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x76A JUMPI PUSH2 0x769 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x20 DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x78A JUMPI PUSH2 0x789 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD MLOAD GT ISZERO PUSH2 0x7F1 JUMPI DUP7 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x7AC JUMPI PUSH2 0x7AB PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD MLOAD PUSH1 0x40 MLOAD PUSH32 0x54D0209100000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7E8 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x826 JUMP JUMPDEST PUSH2 0x803 DUP2 DUP7 DUP11 DUP10 PUSH2 0xF26 JUMP JUMPDEST DUP9 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x816 JUMPI PUSH2 0x815 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP8 POP DUP3 SWAP1 MSTORE POP POP JUMPDEST POP POP POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x5E3 JUMP JUMPDEST POP POP POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x0 PUSH4 0xB893E579 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x871 SWAP2 SWAP1 PUSH2 0x1409 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x89C SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x8B9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8DD SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x5EA5A98F DUP7 PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x29 DUP2 MLOAD DUP2 LT PUSH2 0x917 JUMPI PUSH2 0x916 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x93B SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x958 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x97C SWAP2 SWAP1 PUSH2 0x26D9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x40 ADD MLOAD SWAP1 POP DUP1 DUP4 EQ PUSH2 0x9C9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9C0 SWAP1 PUSH2 0x2752 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xCC5C21EA DUP9 PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA12 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2874 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xA2F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA53 SWAP2 SWAP1 PUSH2 0x28B2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x8C628E40 DUP10 PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA96 SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xAB3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP DUP2 DUP1 ISZERO PUSH2 0xAE9 JUMPI POP DUP1 DUP5 PUSH1 0x60 ADD MLOAD EQ JUMPDEST PUSH2 0xB28 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB1F SWAP1 PUSH2 0x2951 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 SWAP6 POP POP POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 PUSH1 0x0 PUSH1 0x20 DUP2 LT PUSH2 0xB51 JUMPI PUSH2 0xB50 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 AND PUSH1 0xFF AND EQ ISZERO SWAP3 POP PUSH1 0x0 PUSH2 0xB8B DUP8 PUSH1 0x1 PUSH1 0x20 DUP2 LT PUSH2 0xB80 JUMPI PUSH2 0xB7F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL DUP8 DUP8 PUSH2 0x11D1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 MLOAD EQ PUSH2 0xBD1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC8 SWAP1 PUSH2 0x29E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH2 0xBDB SWAP1 PUSH2 0x2A35 JUMP JUMPDEST PUSH1 0x0 SHR SWAP3 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x20 DUP2 LT DUP1 ISZERO PUSH2 0xC33 JUMPI POP PUSH1 0xFF PUSH1 0xF8 SHL DUP9 DUP3 PUSH1 0x20 DUP2 LT PUSH2 0xC0A JUMPI PUSH2 0xC09 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ ISZERO JUMPDEST ISZERO PUSH2 0xC9F JUMPI PUSH1 0x0 PUSH2 0xC5B DUP10 DUP4 PUSH1 0x20 DUP2 LT PUSH2 0xC50 JUMPI PUSH2 0xC4F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL DUP10 DUP10 PUSH2 0x11D1 JUMP JUMPDEST SWAP1 POP DUP1 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC70 SWAP3 SWAP2 SWAP1 PUSH2 0x2AF9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x0 SHR SWAP5 POP POP DUP1 DUP1 PUSH2 0xC97 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE7 JUMP JUMPDEST POP POP POP SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xCC5C21EA DUP6 DUP8 DUP10 PUSH1 0x40 ADD MLOAD PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCEB SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2874 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xD08 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xD2C SWAP2 SWAP1 PUSH2 0x28B2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x5EA5A98F DUP7 PUSH1 0x29 DUP2 MLOAD DUP2 LT PUSH2 0xD5E JUMPI PUSH2 0xD5D PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD82 SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xD9F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xDC3 SWAP2 SWAP1 PUSH2 0x26D9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xCEEEF504 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDFE SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE1B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE3F SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xCEEEF504 DUP8 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE7A SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE97 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEBB SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP DUP4 DUP1 ISZERO PUSH2 0xECD JUMPI POP DUP2 DUP4 PUSH1 0x40 ADD MLOAD EQ JUMPDEST DUP1 ISZERO PUSH2 0xEDC JUMPI POP DUP1 DUP4 PUSH1 0x60 ADD MLOAD EQ JUMPDEST PUSH2 0xF1B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF12 SWAP1 PUSH2 0x2BAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP4 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0xF3D JUMPI PUSH2 0xF3C PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0xF74 JUMPI DUP5 DUP1 PUSH2 0xF58 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP6 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 SWAP2 POP SWAP2 POP PUSH2 0x11C8 JUMP JUMPDEST PUSH2 0xFE6 DUP4 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0xF8B JUMPI PUSH2 0xF8A PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP7 DUP9 DUP2 MLOAD DUP2 LT PUSH2 0xFAA JUMPI PUSH2 0xFA9 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP8 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0xFCD JUMPI PUSH2 0xFCC PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP11 PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x0 DUP5 DUP7 DUP1 PUSH2 0xFF4 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP8 POP DUP2 MLOAD DUP2 LT PUSH2 0x1007 JUMPI PUSH2 0x1006 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x0 SHR SWAP1 POP PUSH1 0x1 DUP1 DUP3 AND SUB PUSH2 0x1189 JUMPI DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1037 SWAP2 SWAP1 PUSH2 0x2BCE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x0 SHR SWAP7 POP PUSH1 0x1 DUP2 SWAP1 SHR PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1070 JUMPI PUSH2 0x106F PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x10A2 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x117C JUMPI PUSH2 0x112F DUP6 DUP8 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0x10C8 JUMPI PUSH2 0x10C7 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP9 DUP11 DUP2 MLOAD DUP2 LT PUSH2 0x10E7 JUMPI PUSH2 0x10E6 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP10 DUP12 DUP2 MLOAD DUP2 LT PUSH2 0x110A JUMPI PUSH2 0x1109 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP13 DUP1 PUSH2 0x1125 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP14 POP PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x20 DUP2 PUSH2 0x113C SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 DUP9 DUP1 PUSH2 0x114C SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP10 POP DUP2 MLOAD DUP2 LT PUSH2 0x115F JUMPI PUSH2 0x115E PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD SWAP1 POP DUP1 DUP3 DUP7 ADD MSTORE POP PUSH2 0x10A8 JUMP JUMPDEST DUP4 DUP8 SWAP4 POP SWAP4 POP POP POP PUSH2 0x11C8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0xFF DUP4 AND SWAP1 SHR SWAP1 POP PUSH2 0x11C0 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x11A9 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x0 DUP4 PUSH2 0x1297 JUMP JUMPDEST DUP8 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0xE0 DUP6 PUSH1 0xF8 SHR AND SWAP1 POP PUSH1 0x0 PUSH1 0x1F DUP7 PUSH1 0xF8 SHR AND SWAP1 POP PUSH1 0x0 PUSH1 0xFF AND DUP3 PUSH1 0xFF AND SUB PUSH2 0x121E JUMPI DUP5 DUP2 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x120D JUMPI PUSH2 0x120C PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP3 POP POP POP PUSH2 0x1290 JUMP JUMPDEST PUSH1 0x20 PUSH1 0xFF AND DUP3 PUSH1 0xFF AND SUB PUSH2 0x1253 JUMPI DUP4 DUP2 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1242 JUMPI PUSH2 0x1241 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP3 POP POP POP PUSH2 0x1290 JUMP JUMPDEST DUP2 PUSH1 0x40 MLOAD PUSH32 0xB378B6D400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1287 SWAP2 SWAP1 PUSH2 0x2C2C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x12A7 SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST GT ISZERO PUSH2 0x12E8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12DF SWAP1 PUSH2 0x2C93 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1304 JUMPI PUSH2 0x1303 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1336 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x13BC JUMPI DUP6 DUP6 DUP3 PUSH2 0x1351 SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x1362 JUMPI PUSH2 0x1361 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1380 JUMPI PUSH2 0x137F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x133C JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13F3 DUP3 PUSH2 0x13C8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1403 DUP2 PUSH2 0x13E8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x141E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x13FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x148A JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x146F JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14B2 DUP3 PUSH2 0x1450 JUMP JUMPDEST PUSH2 0x14BC DUP2 DUP6 PUSH2 0x145B JUMP JUMPDEST SWAP4 POP PUSH2 0x14CC DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x14D5 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14EC DUP4 DUP4 PUSH2 0x14A7 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150C DUP3 PUSH2 0x1424 JUMP JUMPDEST PUSH2 0x1516 DUP2 DUP6 PUSH2 0x142F JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1528 DUP6 PUSH2 0x1440 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1564 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1545 DUP6 DUP3 PUSH2 0x14E0 JUMP JUMPDEST SWAP5 POP PUSH2 0x1550 DUP4 PUSH2 0x14F4 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x152C JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1590 DUP2 DUP5 PUSH2 0x1501 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x15B5 DUP2 PUSH2 0x13E8 JUMP JUMPDEST DUP2 EQ PUSH2 0x15C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x15D2 DUP2 PUSH2 0x15AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1615 DUP3 PUSH2 0x1496 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1634 JUMPI PUSH2 0x1633 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1647 PUSH2 0x1598 JUMP JUMPDEST SWAP1 POP PUSH2 0x1653 DUP3 DUP3 PUSH2 0x160C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1673 JUMPI PUSH2 0x1672 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x169C DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x16B9 DUP2 PUSH2 0x1693 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16D2 PUSH2 0x16CD DUP5 PUSH2 0x1658 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x16F5 JUMPI PUSH2 0x16F4 PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x171E JUMPI DUP1 PUSH2 0x170A DUP9 DUP3 PUSH2 0x16AA JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x16F7 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x173D JUMPI PUSH2 0x173C PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x174D DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x16BF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1771 JUMPI PUSH2 0x1770 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x17A2 JUMPI PUSH2 0x17A1 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH2 0x17AB DUP3 PUSH2 0x1496 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17DA PUSH2 0x17D5 DUP5 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x17F6 JUMPI PUSH2 0x17F5 PUSH2 0x1782 JUMP JUMPDEST JUMPDEST PUSH2 0x1801 DUP5 DUP3 DUP6 PUSH2 0x17B8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x181E JUMPI PUSH2 0x181D PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x182E DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x17C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x184A PUSH2 0x1845 DUP5 PUSH2 0x1756 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x186D JUMPI PUSH2 0x186C PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x18B4 JUMPI DUP1 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1892 JUMPI PUSH2 0x1891 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x189F DUP10 DUP3 PUSH2 0x1809 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x186F JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x18D3 JUMPI PUSH2 0x18D2 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x18E3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1837 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x18FF DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP2 EQ PUSH2 0x190A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x191C DUP2 PUSH2 0x18F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x193E JUMPI PUSH2 0x193D PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x194C DUP9 DUP3 DUP10 ADD PUSH2 0x15C3 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x196D JUMPI PUSH2 0x196C PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x1979 DUP9 DUP3 DUP10 ADD PUSH2 0x1728 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x199A JUMPI PUSH2 0x1999 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x19A6 DUP9 DUP3 DUP10 ADD PUSH2 0x18BE JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x19C7 JUMPI PUSH2 0x19C6 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x19D3 DUP9 DUP3 DUP10 ADD PUSH2 0x1809 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x19E4 DUP9 DUP3 DUP10 ADD PUSH2 0x190D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A44 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x1A4E DUP2 DUP6 PUSH2 0x1A28 JUMP JUMPDEST SWAP4 POP PUSH2 0x1A5E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x1A67 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A7E DUP4 DUP4 PUSH2 0x1A39 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A9E DUP3 PUSH2 0x19F1 JUMP JUMPDEST PUSH2 0x1AA8 DUP2 DUP6 PUSH2 0x19FC JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1ABA DUP6 PUSH2 0x1A0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1AF6 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1AD7 DUP6 DUP3 PUSH2 0x1A72 JUMP JUMPDEST SWAP5 POP PUSH2 0x1AE2 DUP4 PUSH2 0x1A86 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1ABE JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1B22 DUP2 DUP5 PUSH2 0x1A93 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B40 JUMPI PUSH2 0x1B3F PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B4E DUP5 DUP3 DUP6 ADD PUSH2 0x190D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B73 DUP3 PUSH2 0x1450 JUMP JUMPDEST PUSH2 0x1B7D DUP2 DUP6 PUSH2 0x1B57 JUMP JUMPDEST SWAP4 POP PUSH2 0x1B8D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x1B96 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1BBB DUP2 DUP5 PUSH2 0x1B68 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1C0A JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1C1D JUMPI PUSH2 0x1C1C PUSH2 0x1BC3 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C32 DUP2 PUSH2 0x18F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C51 DUP2 PUSH2 0x15AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C6A PUSH2 0x1C65 DUP5 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C86 JUMPI PUSH2 0x1C85 PUSH2 0x1782 JUMP JUMPDEST JUMPDEST PUSH2 0x1C91 DUP5 DUP3 DUP6 PUSH2 0x146C JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CAE JUMPI PUSH2 0x1CAD PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1CBE DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C57 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1CDA PUSH2 0x1CD5 DUP5 PUSH2 0x1756 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x1CFD JUMPI PUSH2 0x1CFC PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1D44 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D22 JUMPI PUSH2 0x1D21 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x1D2F DUP10 DUP3 PUSH2 0x1C99 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1CFF JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1D63 JUMPI PUSH2 0x1D62 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1D73 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1CC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D92 JUMPI PUSH2 0x1D91 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1D9C PUSH1 0x40 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DBC JUMPI PUSH2 0x1DBB PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1DC8 DUP5 DUP3 DUP6 ADD PUSH2 0x1C99 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DEC JUMPI PUSH2 0x1DEB PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1DF8 DUP5 DUP3 DUP6 ADD PUSH2 0x1D4E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1E1A JUMPI PUSH2 0x1E19 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1E24 PUSH1 0x60 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E34 DUP5 DUP3 DUP6 ADD PUSH2 0x1C42 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1E48 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E6C JUMPI PUSH2 0x1E6B PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1E78 DUP5 DUP3 DUP6 ADD PUSH2 0x1D7C JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1E9F JUMPI PUSH2 0x1E9E PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1EBF DUP2 PUSH2 0x1693 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1EDB JUMPI PUSH2 0x1EDA PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1EE5 PUSH1 0x40 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1EF5 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1F19 JUMPI PUSH2 0x1F18 PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1F25 DUP5 DUP3 DUP6 ADD PUSH2 0x1D4E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1F46 DUP2 PUSH2 0x1F31 JUMP JUMPDEST DUP2 EQ PUSH2 0x1F51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F63 DUP2 PUSH2 0x1F3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F7F JUMPI PUSH2 0x1F7E PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1F89 PUSH1 0x80 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F99 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1FAD DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1FD1 JUMPI PUSH2 0x1FD0 PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1FDD DUP5 DUP3 DUP6 ADD PUSH2 0x1EC5 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1FF1 DUP5 DUP3 DUP6 ADD PUSH2 0x1F54 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2010 PUSH2 0x200B DUP5 PUSH2 0x1E84 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2033 JUMPI PUSH2 0x2032 PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x207A JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2058 JUMPI PUSH2 0x2057 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x2065 DUP10 DUP3 PUSH2 0x1F69 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2035 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2099 JUMPI PUSH2 0x2098 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x20A9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x20CB JUMPI PUSH2 0x20CA PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x20D9 DUP7 DUP3 DUP8 ADD PUSH2 0x1C23 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20FA JUMPI PUSH2 0x20F9 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x2106 DUP7 DUP3 DUP8 ADD PUSH2 0x1E04 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2127 JUMPI PUSH2 0x2126 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x2133 DUP7 DUP3 DUP8 ADD PUSH2 0x2084 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2153 JUMPI PUSH2 0x2152 PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2161 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21A4 DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH2 0x21AF DUP4 PUSH2 0x18EC JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x21C7 JUMPI PUSH2 0x21C6 PUSH2 0x216A JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656153706172736550726F6F6656657269666965723A20626C6F636B20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E6F7420696E2072616E67652061636365707465640000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2229 PUSH1 0x35 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2234 DUP3 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2258 DUP2 PUSH2 0x221C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2268 DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2283 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x225F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x229F JUMPI PUSH2 0x229E PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22AD DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656153706172736550726F6F6656657269666965723A20696E76616C69 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6420737461746520726F6F740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2312 PUSH1 0x2C DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x231D DUP3 PUSH2 0x22B6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2341 DUP2 PUSH2 0x2305 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20636F6D6D616E6473206E756D6265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72203E2073746F726167652070726F6F6673206E756D62657200000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23A4 PUSH1 0x39 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x23AF DUP3 PUSH2 0x2348 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x23D3 DUP2 PUSH2 0x2397 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23F6 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x2400 DUP2 DUP6 PUSH2 0x23DA JUMP JUMPDEST SWAP4 POP PUSH2 0x2410 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x2419 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x243E DUP2 DUP5 PUSH2 0x23EB JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2463 DUP2 PUSH2 0x2446 JUMP JUMPDEST DUP2 EQ PUSH2 0x246E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2480 DUP2 PUSH2 0x245A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x249C JUMPI PUSH2 0x249B PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x24A6 PUSH1 0xC0 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x24B6 DUP5 DUP3 DUP6 ADD PUSH2 0x2471 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x24CA DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x24DE DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x24F2 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x2506 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x251A DUP5 DUP3 DUP6 ADD PUSH2 0x2471 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x253C JUMPI PUSH2 0x253B PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x254A DUP5 DUP3 DUP6 ADD PUSH2 0x2486 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25BE PUSH2 0x25B9 PUSH2 0x25B4 DUP5 PUSH2 0x2582 JUMP JUMPDEST PUSH2 0x2599 JUMP JUMPDEST PUSH2 0x258C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25CE DUP2 PUSH2 0x25A3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25E9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x25C5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25FA DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x262C JUMPI PUSH2 0x262B PUSH2 0x216A JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2640 DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x265B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2637 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2677 JUMPI PUSH2 0x2676 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x2681 PUSH1 0x80 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2691 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x26A5 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x26B9 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x26CD DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x26EF JUMPI PUSH2 0x26EE PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x26FD DUP5 DUP3 DUP6 ADD PUSH2 0x2661 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A2077726F6E67207461726765740000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x273C PUSH1 0x1E DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2747 DUP3 PUSH2 0x2706 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x276B DUP2 PUSH2 0x272F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x279F DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x27A9 DUP2 DUP6 PUSH2 0x2783 JUMP JUMPDEST SWAP4 POP PUSH2 0x27B9 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x27C2 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27D9 DUP4 DUP4 PUSH2 0x2794 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27EC DUP3 PUSH2 0x19F1 JUMP JUMPDEST PUSH2 0x27F6 DUP2 DUP6 PUSH2 0x2772 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2808 DUP6 PUSH2 0x1A0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x2844 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x2825 DUP6 DUP3 PUSH2 0x27CD JUMP JUMPDEST SWAP5 POP PUSH2 0x2830 DUP4 PUSH2 0x1A86 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x280C JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x285F DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x286E DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x288E DUP2 DUP7 PUSH2 0x27E1 JUMP JUMPDEST SWAP1 POP PUSH2 0x289D PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2856 JUMP JUMPDEST PUSH2 0x28AA PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x2865 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x28C8 JUMPI PUSH2 0x28C7 PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x28D6 DUP5 DUP3 DUP6 ADD PUSH2 0x1F54 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20696E76616C6964206163636F756E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x742070726F6F6600000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x293B PUSH1 0x27 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2946 DUP3 PUSH2 0x28DF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x296A DUP2 PUSH2 0x292E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4669727374207061746820656C656D656E74206D757374206265203332206279 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7465730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29CD PUSH1 0x23 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x29D8 DUP3 PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29FC DUP2 PUSH2 0x29C0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A1F DUP3 MLOAD PUSH2 0x1689 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A40 DUP3 PUSH2 0x1A1D JUMP JUMPDEST DUP3 PUSH2 0x2A4A DUP5 PUSH2 0x2A03 JUMP JUMPDEST SWAP1 POP PUSH2 0x2A55 DUP2 PUSH2 0x2A13 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A90 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x2A28 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AB2 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x2ABC DUP2 DUP6 PUSH2 0x2A9C JUMP JUMPDEST SWAP4 POP PUSH2 0x2ACC DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2AF3 PUSH2 0x2AEE DUP3 PUSH2 0x18EC JUMP JUMPDEST PUSH2 0x2AD8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B05 DUP3 DUP6 PUSH2 0x2AA7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B11 DUP3 DUP5 PUSH2 0x2AE2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2865 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20696E76616C69642073746F726167 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x652070726F6F6600000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B98 PUSH1 0x27 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2BA3 DUP3 PUSH2 0x2B3C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2BC7 DUP2 PUSH2 0x2B8B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BDA DUP3 DUP5 PUSH2 0x2AE2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BF4 DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH2 0x2BFF DUP4 PUSH2 0x18EC JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2C17 JUMPI PUSH2 0x2C16 PUSH2 0x216A JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2C26 DUP2 PUSH2 0x258C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2C41 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2C1D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x736C69636542797465733A206F7574206F662072616E67650000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C7D PUSH1 0x18 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C88 DUP3 PUSH2 0x2C47 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2CAC DUP2 PUSH2 0x2C70 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CREATE2 0xED PUSH13 0x78B94227E6C6FEAC9D1BAAA09B 0xCA CALLDATASIZE TSTORE 0xEF 0xC8 0xB6 0xCC 0xF9 0xEF SWAP9 BASEFEE 0x4E 0xF SIGNEXTEND DELEGATECALL PUSH21 0x64736F6C6343000819003300000000000000000000 ", + "sourceMap": "397:1789:4:-:0;;;516:112;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;591:4;576:12;:19;;;;;;;;;;;;:::i;:::-;;615:6;605:7;;:16;;;;;;;;;;;;;;;;;;516:112;;397:1789;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:102;498:6;549:2;545:7;540:2;533:5;529:14;525:28;515:38;;457:102;;;:::o;565:180::-;613:77;610:1;603:88;710:4;707:1;700:15;734:4;731:1;724:15;751:281;834:27;856:4;834:27;:::i;:::-;826:6;822:40;964:6;952:10;949:22;928:18;916:10;913:34;910:62;907:88;;;975:18;;:::i;:::-;907:88;1015:10;1011:2;1004:22;794:238;751:281;;:::o;1038:129::-;1072:6;1099:20;;:::i;:::-;1089:30;;1128:33;1156:4;1148:6;1128:33;:::i;:::-;1038:129;;;:::o;1173:321::-;1260:4;1350:18;1342:6;1339:30;1336:56;;;1372:18;;:::i;:::-;1336:56;1422:4;1414:6;1410:17;1402:25;;1482:4;1476;1472:15;1464:23;;1173:321;;;:::o;1500:117::-;1609:1;1606;1599:12;1623:117;1732:1;1729;1722:12;1746:308;1808:4;1898:18;1890:6;1887:30;1884:56;;;1920:18;;:::i;:::-;1884:56;1958:29;1980:6;1958:29;:::i;:::-;1950:37;;2042:4;2036;2032:15;2024:23;;1746:308;;;:::o;2060:248::-;2142:1;2152:113;2166:6;2163:1;2160:13;2152:113;;;2251:1;2246:3;2242:11;2236:18;2232:1;2227:3;2223:11;2216:39;2188:2;2185:1;2181:10;2176:15;;2152:113;;;2299:1;2290:6;2285:3;2281:16;2274:27;2122:186;2060:248;;;:::o;2314:434::-;2403:5;2428:66;2444:49;2486:6;2444:49;:::i;:::-;2428:66;:::i;:::-;2419:75;;2517:6;2510:5;2503:21;2555:4;2548:5;2544:16;2593:3;2584:6;2579:3;2575:16;2572:25;2569:112;;;2600:79;;:::i;:::-;2569:112;2690:52;2735:6;2730:3;2725;2690:52;:::i;:::-;2409:339;2314:434;;;;;:::o;2768:355::-;2835:5;2884:3;2877:4;2869:6;2865:17;2861:27;2851:122;;2892:79;;:::i;:::-;2851:122;3002:6;2996:13;3027:90;3113:3;3105:6;3098:4;3090:6;3086:17;3027:90;:::i;:::-;3018:99;;2841:282;2768:355;;;;:::o;3145:960::-;3262:5;3287:91;3303:74;3370:6;3303:74;:::i;:::-;3287:91;:::i;:::-;3278:100;;3398:5;3427:6;3420:5;3413:21;3461:4;3454:5;3450:16;3443:23;;3514:4;3506:6;3502:17;3494:6;3490:30;3543:3;3535:6;3532:15;3529:122;;;3562:79;;:::i;:::-;3529:122;3677:6;3660:439;3694:6;3689:3;3686:15;3660:439;;;3776:3;3770:10;3812:18;3799:11;3796:35;3793:122;;;3834:79;;:::i;:::-;3793:122;3958:11;3950:6;3946:24;3996:58;4050:3;4038:10;3996:58;:::i;:::-;3991:3;3984:71;4084:4;4079:3;4075:14;4068:21;;3736:363;;3720:4;3715:3;3711:14;3704:21;;3660:439;;;3664:21;3268:837;;3145:960;;;;;:::o;4127:405::-;4219:5;4268:3;4261:4;4253:6;4249:17;4245:27;4235:122;;4276:79;;:::i;:::-;4235:122;4386:6;4380:13;4411:115;4522:3;4514:6;4507:4;4499:6;4495:17;4411:115;:::i;:::-;4402:124;;4225:307;4127:405;;;;:::o;4538:126::-;4575:7;4615:42;4608:5;4604:54;4593:65;;4538:126;;;:::o;4670:96::-;4707:7;4736:24;4754:5;4736:24;:::i;:::-;4725:35;;4670:96;;;:::o;4772:122::-;4845:24;4863:5;4845:24;:::i;:::-;4838:5;4835:35;4825:63;;4884:1;4881;4874:12;4825:63;4772:122;:::o;4900:143::-;4957:5;4988:6;4982:13;4973:22;;5004:33;5031:5;5004:33;:::i;:::-;4900:143;;;;:::o;5049:730::-;5163:6;5171;5220:2;5208:9;5199:7;5195:23;5191:32;5188:119;;;5226:79;;:::i;:::-;5188:119;5367:1;5356:9;5352:17;5346:24;5397:18;5389:6;5386:30;5383:117;;;5419:79;;:::i;:::-;5383:117;5524:99;5615:7;5606:6;5595:9;5591:22;5524:99;:::i;:::-;5514:109;;5317:316;5672:2;5698:64;5754:7;5745:6;5734:9;5730:22;5698:64;:::i;:::-;5688:74;;5643:129;5049:730;;;;;:::o;5785:99::-;5837:6;5871:5;5865:12;5855:22;;5785:99;;;:::o;5890:180::-;5938:77;5935:1;5928:88;6035:4;6032:1;6025:15;6059:4;6056:1;6049:15;6076:320;6120:6;6157:1;6151:4;6147:12;6137:22;;6204:1;6198:4;6194:12;6225:18;6215:81;;6281:4;6273:6;6269:17;6259:27;;6215:81;6343:2;6335:6;6332:14;6312:18;6309:38;6306:84;;6362:18;;:::i;:::-;6306:84;6127:269;6076:320;;;:::o;6402:141::-;6451:4;6474:3;6466:11;;6497:3;6494:1;6487:14;6531:4;6528:1;6518:18;6510:26;;6402:141;;;:::o;6549:93::-;6586:6;6633:2;6628;6621:5;6617:14;6613:23;6603:33;;6549:93;;;:::o;6648:107::-;6692:8;6742:5;6736:4;6732:16;6711:37;;6648:107;;;;:::o;6761:393::-;6830:6;6880:1;6868:10;6864:18;6903:97;6933:66;6922:9;6903:97;:::i;:::-;7021:39;7051:8;7040:9;7021:39;:::i;:::-;7009:51;;7093:4;7089:9;7082:5;7078:21;7069:30;;7142:4;7132:8;7128:19;7121:5;7118:30;7108:40;;6837:317;;6761:393;;;;;:::o;7160:77::-;7197:7;7226:5;7215:16;;7160:77;;;:::o;7243:60::-;7271:3;7292:5;7285:12;;7243:60;;;:::o;7309:142::-;7359:9;7392:53;7410:34;7419:24;7437:5;7419:24;:::i;:::-;7410:34;:::i;:::-;7392:53;:::i;:::-;7379:66;;7309:142;;;:::o;7457:75::-;7500:3;7521:5;7514:12;;7457:75;;;:::o;7538:269::-;7648:39;7679:7;7648:39;:::i;:::-;7709:91;7758:41;7782:16;7758:41;:::i;:::-;7750:6;7743:4;7737:11;7709:91;:::i;:::-;7703:4;7696:105;7614:193;7538:269;;;:::o;7813:73::-;7858:3;7813:73;:::o;7892:189::-;7969:32;;:::i;:::-;8010:65;8068:6;8060;8054:4;8010:65;:::i;:::-;7945:136;7892:189;;:::o;8087:186::-;8147:120;8164:3;8157:5;8154:14;8147:120;;;8218:39;8255:1;8248:5;8218:39;:::i;:::-;8191:1;8184:5;8180:13;8171:22;;8147:120;;;8087:186;;:::o;8279:543::-;8380:2;8375:3;8372:11;8369:446;;;8414:38;8446:5;8414:38;:::i;:::-;8498:29;8516:10;8498:29;:::i;:::-;8488:8;8484:44;8681:2;8669:10;8666:18;8663:49;;;8702:8;8687:23;;8663:49;8725:80;8781:22;8799:3;8781:22;:::i;:::-;8771:8;8767:37;8754:11;8725:80;:::i;:::-;8384:431;;8369:446;8279:543;;;:::o;8828:117::-;8882:8;8932:5;8926:4;8922:16;8901:37;;8828:117;;;;:::o;8951:169::-;8995:6;9028:51;9076:1;9072:6;9064:5;9061:1;9057:13;9028:51;:::i;:::-;9024:56;9109:4;9103;9099:15;9089:25;;9002:118;8951:169;;;;:::o;9125:295::-;9201:4;9347:29;9372:3;9366:4;9347:29;:::i;:::-;9339:37;;9409:3;9406:1;9402:11;9396:4;9393:21;9385:29;;9125:295;;;;:::o;9425:1395::-;9542:37;9575:3;9542:37;:::i;:::-;9644:18;9636:6;9633:30;9630:56;;;9666:18;;:::i;:::-;9630:56;9710:38;9742:4;9736:11;9710:38;:::i;:::-;9795:67;9855:6;9847;9841:4;9795:67;:::i;:::-;9889:1;9913:4;9900:17;;9945:2;9937:6;9934:14;9962:1;9957:618;;;;10619:1;10636:6;10633:77;;;10685:9;10680:3;10676:19;10670:26;10661:35;;10633:77;10736:67;10796:6;10789:5;10736:67;:::i;:::-;10730:4;10723:81;10592:222;9927:887;;9957:618;10009:4;10005:9;9997:6;9993:22;10043:37;10075:4;10043:37;:::i;:::-;10102:1;10116:208;10130:7;10127:1;10124:14;10116:208;;;10209:9;10204:3;10200:19;10194:26;10186:6;10179:42;10260:1;10252:6;10248:14;10238:24;;10307:2;10296:9;10292:18;10279:31;;10153:4;10150:1;10146:12;10141:17;;10116:208;;;10352:6;10343:7;10340:19;10337:179;;;10410:9;10405:3;10401:19;10395:26;10453:48;10495:4;10487:6;10483:17;10472:9;10453:48;:::i;:::-;10445:6;10438:64;10360:156;10337:179;10562:1;10558;10550:6;10546:14;10542:22;10536:4;10529:36;9964:611;;;9927:887;;9517:1303;;;9425:1395;;:::o;397:1789:4:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_gatewayURLs_1585": { + "entryPoint": 1034, + "id": 1585, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_rollup_1587": { + "entryPoint": 237, + "id": 1587, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@computeFirstSlot_1010": { + "entryPoint": 2872, + "id": 1010, + "parameterSlots": 3, + "returnSlots": 2 + }, + "@executeOperation_907": { + "entryPoint": 4561, + "id": 907, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@gatewayURLs_1709": { + "entryPoint": 275, + "id": 1709, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@getDynamicValue_1174": { + "entryPoint": 3878, + "id": 1174, + "parameterSlots": 4, + "returnSlots": 2 + }, + "@getStorageValues_1558": { + "entryPoint": 1206, + "id": 1558, + "parameterSlots": 6, + "returnSlots": 1 + }, + "@getStorageValues_1699": { + "entryPoint": 492, + "id": 1699, + "parameterSlots": 5, + "returnSlots": 1 + }, + "@sliceBytes_1227": { + "entryPoint": 4759, + "id": 1227, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@verifyAccountProof_1309": { + "entryPoint": 2115, + "id": 1309, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@verifyStorageProof_1376": { + "entryPoint": 3242, + "id": 1376, + "parameterSlots": 5, + "returnSlots": 0 + }, + "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 5823, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 6199, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 7367, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 8189, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 6087, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr_fromMemory": { + "entryPoint": 7255, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 5571, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 7234, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 5928, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 6334, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 7502, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 8324, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool_fromMemory": { + "entryPoint": 8020, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32": { + "entryPoint": 5802, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 7856, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 6153, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr_fromMemory": { + "entryPoint": 7321, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_AccountProofStruct_$825_memory_ptr_fromMemory": { + "entryPoint": 7684, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_AccountProof_$811_memory_ptr_fromMemory": { + "entryPoint": 7548, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_Account_$1774_memory_ptr_fromMemory": { + "entryPoint": 9350, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_Leaf_$1784_memory_ptr_fromMemory": { + "entryPoint": 9825, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_StorageProofStruct_$835_memory_ptr_fromMemory": { + "entryPoint": 8041, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_StorageProof_$817_memory_ptr_fromMemory": { + "entryPoint": 7877, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 6413, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256_fromMemory": { + "entryPoint": 7203, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint64_fromMemory": { + "entryPoint": 9329, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptrt_uint256": { + "entryPoint": 6434, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 10418, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 8841, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_struct$_Account_$1774_memory_ptr_fromMemory": { + "entryPoint": 9510, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr_fromMemory": { + "entryPoint": 9945, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 6954, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256_fromMemory": { + "entryPoint": 8509, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256t_struct$_AccountProofStruct_$825_memory_ptrt_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 8370, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 6770, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library": { + "entryPoint": 10189, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 5344, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 5114, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 6803, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library": { + "entryPoint": 10209, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 5377, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 9783, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack_library": { + "entryPoint": 10341, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 6713, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 9195, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library": { + "entryPoint": 10132, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 10919, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_rational_0_by_1_to_t_uint8_fromStack": { + "entryPoint": 9669, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 5287, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7016, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10688, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292_to_t_string_memory_ptr_fromStack": { + "entryPoint": 11147, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10031, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8732, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5_to_t_string_memory_ptr_fromStack": { + "entryPoint": 9111, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8965, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10542, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack": { + "entryPoint": 11376, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 8799, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack_library": { + "entryPoint": 10326, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack": { + "entryPoint": 10978, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint8_to_t_uint8_fromStack": { + "entryPoint": 11293, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint256__to_t_bytes_memory_ptr_t_uint256__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 11001, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_uint256__to_t_uint256__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 11214, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 5129, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 6920, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__fromStack_library_reversed": { + "entryPoint": 10356, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 5494, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed": { + "entryPoint": 11041, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 9798, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 9252, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_rational_0_by_1__to_t_uint8__fromStack_reversed": { + "entryPoint": 9684, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7073, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10723, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 11182, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10066, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8767, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 9146, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 9000, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10577, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 11411, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 8814, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": { + "entryPoint": 11308, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 5693, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 5528, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 5720, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 5974, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 7812, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 6023, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 6669, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 5184, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_memory_ptr": { + "entryPoint": 10755, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 6641, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 5156, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 6685, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 5200, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 6790, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 5364, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 6652, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library": { + "entryPoint": 10098, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 5167, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr": { + "entryPoint": 6696, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 9178, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_library": { + "entryPoint": 10115, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 10908, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr": { + "entryPoint": 5211, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 6999, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 11241, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 8601, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 5096, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 7985, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 5769, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_0_by_1": { + "entryPoint": 9602, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 5064, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 6380, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 9286, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint8": { + "entryPoint": 9612, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_bytes_to_fixedbytes_from_t_bytes_memory_ptr_to_t_bytes32": { + "entryPoint": 10805, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_rational_0_by_1_to_t_uint8": { + "entryPoint": 9635, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 6072, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 5228, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 7154, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 5644, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 9625, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 9711, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_uint256": { + "entryPoint": 10968, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 8554, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 7107, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 9555, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 5597, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "read_from_memoryt_bytes32": { + "entryPoint": 10771, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 5592, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f": { + "entryPoint": 7224, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421": { + "entryPoint": 7229, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 5764, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 6018, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 5543, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 5538, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 5270, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 10792, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "store_literal_in_memory_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893": { + "entryPoint": 10609, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292": { + "entryPoint": 11068, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306": { + "entryPoint": 9990, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c": { + "entryPoint": 8653, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5": { + "entryPoint": 9032, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697": { + "entryPoint": 8886, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3": { + "entryPoint": 10463, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73": { + "entryPoint": 11335, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 5548, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 7997, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 5779, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 6390, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint64": { + "entryPoint": 9306, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:49244:74", + "nodeType": "YulBlock", + "src": "0:49244:74", + "statements": [ + { + "body": { + "nativeSrc": "52:81:74", + "nodeType": "YulBlock", + "src": "52:81:74", + "statements": [ + { + "nativeSrc": "62:65:74", + "nodeType": "YulAssignment", + "src": "62:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "77:5:74", + "nodeType": "YulIdentifier", + "src": "77:5:74" + }, + { + "kind": "number", + "nativeSrc": "84:42:74", + "nodeType": "YulLiteral", + "src": "84:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "73:3:74", + "nodeType": "YulIdentifier", + "src": "73:3:74" + }, + "nativeSrc": "73:54:74", + "nodeType": "YulFunctionCall", + "src": "73:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "62:7:74", + "nodeType": "YulIdentifier", + "src": "62:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "7:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34:5:74", + "nodeType": "YulTypedName", + "src": "34:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "44:7:74", + "nodeType": "YulTypedName", + "src": "44:7:74", + "type": "" + } + ], + "src": "7:126:74" + }, + { + "body": { + "nativeSrc": "184:51:74", + "nodeType": "YulBlock", + "src": "184:51:74", + "statements": [ + { + "nativeSrc": "194:35:74", + "nodeType": "YulAssignment", + "src": "194:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "223:5:74", + "nodeType": "YulIdentifier", + "src": "223:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "205:17:74", + "nodeType": "YulIdentifier", + "src": "205:17:74" + }, + "nativeSrc": "205:24:74", + "nodeType": "YulFunctionCall", + "src": "205:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "194:7:74", + "nodeType": "YulIdentifier", + "src": "194:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "139:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "166:5:74", + "nodeType": "YulTypedName", + "src": "166:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "176:7:74", + "nodeType": "YulTypedName", + "src": "176:7:74", + "type": "" + } + ], + "src": "139:96:74" + }, + { + "body": { + "nativeSrc": "306:53:74", + "nodeType": "YulBlock", + "src": "306:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "323:3:74", + "nodeType": "YulIdentifier", + "src": "323:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "346:5:74", + "nodeType": "YulIdentifier", + "src": "346:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "328:17:74", + "nodeType": "YulIdentifier", + "src": "328:17:74" + }, + "nativeSrc": "328:24:74", + "nodeType": "YulFunctionCall", + "src": "328:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "316:6:74", + "nodeType": "YulIdentifier", + "src": "316:6:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulFunctionCall", + "src": "316:37:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulExpressionStatement", + "src": "316:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "241:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "294:5:74", + "nodeType": "YulTypedName", + "src": "294:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "301:3:74", + "nodeType": "YulTypedName", + "src": "301:3:74", + "type": "" + } + ], + "src": "241:118:74" + }, + { + "body": { + "nativeSrc": "463:124:74", + "nodeType": "YulBlock", + "src": "463:124:74", + "statements": [ + { + "nativeSrc": "473:26:74", + "nodeType": "YulAssignment", + "src": "473:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "485:9:74", + "nodeType": "YulIdentifier", + "src": "485:9:74" + }, + { + "kind": "number", + "nativeSrc": "496:2:74", + "nodeType": "YulLiteral", + "src": "496:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "481:3:74", + "nodeType": "YulIdentifier", + "src": "481:3:74" + }, + "nativeSrc": "481:18:74", + "nodeType": "YulFunctionCall", + "src": "481:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "473:4:74", + "nodeType": "YulIdentifier", + "src": "473:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "553:6:74", + "nodeType": "YulIdentifier", + "src": "553:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "566:9:74", + "nodeType": "YulIdentifier", + "src": "566:9:74" + }, + { + "kind": "number", + "nativeSrc": "577:1:74", + "nodeType": "YulLiteral", + "src": "577:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "562:3:74", + "nodeType": "YulIdentifier", + "src": "562:3:74" + }, + "nativeSrc": "562:17:74", + "nodeType": "YulFunctionCall", + "src": "562:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "509:43:74", + "nodeType": "YulIdentifier", + "src": "509:43:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulFunctionCall", + "src": "509:71:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulExpressionStatement", + "src": "509:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "365:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "435:9:74", + "nodeType": "YulTypedName", + "src": "435:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "447:6:74", + "nodeType": "YulTypedName", + "src": "447:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "458:4:74", + "nodeType": "YulTypedName", + "src": "458:4:74", + "type": "" + } + ], + "src": "365:222:74" + }, + { + "body": { + "nativeSrc": "677:40:74", + "nodeType": "YulBlock", + "src": "677:40:74", + "statements": [ + { + "nativeSrc": "688:22:74", + "nodeType": "YulAssignment", + "src": "688:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "704:5:74", + "nodeType": "YulIdentifier", + "src": "704:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "698:5:74", + "nodeType": "YulIdentifier", + "src": "698:5:74" + }, + "nativeSrc": "698:12:74", + "nodeType": "YulFunctionCall", + "src": "698:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "688:6:74", + "nodeType": "YulIdentifier", + "src": "688:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "593:124:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "660:5:74", + "nodeType": "YulTypedName", + "src": "660:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "670:6:74", + "nodeType": "YulTypedName", + "src": "670:6:74", + "type": "" + } + ], + "src": "593:124:74" + }, + { + "body": { + "nativeSrc": "844:73:74", + "nodeType": "YulBlock", + "src": "844:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "861:3:74", + "nodeType": "YulIdentifier", + "src": "861:3:74" + }, + { + "name": "length", + "nativeSrc": "866:6:74", + "nodeType": "YulIdentifier", + "src": "866:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "854:6:74", + "nodeType": "YulIdentifier", + "src": "854:6:74" + }, + "nativeSrc": "854:19:74", + "nodeType": "YulFunctionCall", + "src": "854:19:74" + }, + "nativeSrc": "854:19:74", + "nodeType": "YulExpressionStatement", + "src": "854:19:74" + }, + { + "nativeSrc": "882:29:74", + "nodeType": "YulAssignment", + "src": "882:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "901:3:74", + "nodeType": "YulIdentifier", + "src": "901:3:74" + }, + { + "kind": "number", + "nativeSrc": "906:4:74", + "nodeType": "YulLiteral", + "src": "906:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "897:3:74", + "nodeType": "YulIdentifier", + "src": "897:3:74" + }, + "nativeSrc": "897:14:74", + "nodeType": "YulFunctionCall", + "src": "897:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "882:11:74", + "nodeType": "YulIdentifier", + "src": "882:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "723:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "816:3:74", + "nodeType": "YulTypedName", + "src": "816:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "821:6:74", + "nodeType": "YulTypedName", + "src": "821:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "832:11:74", + "nodeType": "YulTypedName", + "src": "832:11:74", + "type": "" + } + ], + "src": "723:194:74" + }, + { + "body": { + "nativeSrc": "1005:60:74", + "nodeType": "YulBlock", + "src": "1005:60:74", + "statements": [ + { + "nativeSrc": "1015:11:74", + "nodeType": "YulAssignment", + "src": "1015:11:74", + "value": { + "name": "ptr", + "nativeSrc": "1023:3:74", + "nodeType": "YulIdentifier", + "src": "1023:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "1015:4:74", + "nodeType": "YulIdentifier", + "src": "1015:4:74" + } + ] + }, + { + "nativeSrc": "1036:22:74", + "nodeType": "YulAssignment", + "src": "1036:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "1048:3:74", + "nodeType": "YulIdentifier", + "src": "1048:3:74" + }, + { + "kind": "number", + "nativeSrc": "1053:4:74", + "nodeType": "YulLiteral", + "src": "1053:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1044:3:74", + "nodeType": "YulIdentifier", + "src": "1044:3:74" + }, + "nativeSrc": "1044:14:74", + "nodeType": "YulFunctionCall", + "src": "1044:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "1036:4:74", + "nodeType": "YulIdentifier", + "src": "1036:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "923:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "992:3:74", + "nodeType": "YulTypedName", + "src": "992:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "1000:4:74", + "nodeType": "YulTypedName", + "src": "1000:4:74", + "type": "" + } + ], + "src": "923:142:74" + }, + { + "body": { + "nativeSrc": "1130:40:74", + "nodeType": "YulBlock", + "src": "1130:40:74", + "statements": [ + { + "nativeSrc": "1141:22:74", + "nodeType": "YulAssignment", + "src": "1141:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1157:5:74", + "nodeType": "YulIdentifier", + "src": "1157:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1151:5:74", + "nodeType": "YulIdentifier", + "src": "1151:5:74" + }, + "nativeSrc": "1151:12:74", + "nodeType": "YulFunctionCall", + "src": "1151:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "1141:6:74", + "nodeType": "YulIdentifier", + "src": "1141:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1071:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1113:5:74", + "nodeType": "YulTypedName", + "src": "1113:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "1123:6:74", + "nodeType": "YulTypedName", + "src": "1123:6:74", + "type": "" + } + ], + "src": "1071:99:74" + }, + { + "body": { + "nativeSrc": "1262:73:74", + "nodeType": "YulBlock", + "src": "1262:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1279:3:74", + "nodeType": "YulIdentifier", + "src": "1279:3:74" + }, + { + "name": "length", + "nativeSrc": "1284:6:74", + "nodeType": "YulIdentifier", + "src": "1284:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1272:6:74", + "nodeType": "YulIdentifier", + "src": "1272:6:74" + }, + "nativeSrc": "1272:19:74", + "nodeType": "YulFunctionCall", + "src": "1272:19:74" + }, + "nativeSrc": "1272:19:74", + "nodeType": "YulExpressionStatement", + "src": "1272:19:74" + }, + { + "nativeSrc": "1300:29:74", + "nodeType": "YulAssignment", + "src": "1300:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1319:3:74", + "nodeType": "YulIdentifier", + "src": "1319:3:74" + }, + { + "kind": "number", + "nativeSrc": "1324:4:74", + "nodeType": "YulLiteral", + "src": "1324:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1315:3:74", + "nodeType": "YulIdentifier", + "src": "1315:3:74" + }, + "nativeSrc": "1315:14:74", + "nodeType": "YulFunctionCall", + "src": "1315:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "1300:11:74", + "nodeType": "YulIdentifier", + "src": "1300:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nativeSrc": "1176:159:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "1234:3:74", + "nodeType": "YulTypedName", + "src": "1234:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1239:6:74", + "nodeType": "YulTypedName", + "src": "1239:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "1250:11:74", + "nodeType": "YulTypedName", + "src": "1250:11:74", + "type": "" + } + ], + "src": "1176:159:74" + }, + { + "body": { + "nativeSrc": "1403:186:74", + "nodeType": "YulBlock", + "src": "1403:186:74", + "statements": [ + { + "nativeSrc": "1414:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1414:10:74", + "value": { + "kind": "number", + "nativeSrc": "1423:1:74", + "nodeType": "YulLiteral", + "src": "1423:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1418:1:74", + "nodeType": "YulTypedName", + "src": "1418:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1483:63:74", + "nodeType": "YulBlock", + "src": "1483:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1508:3:74", + "nodeType": "YulIdentifier", + "src": "1508:3:74" + }, + { + "name": "i", + "nativeSrc": "1513:1:74", + "nodeType": "YulIdentifier", + "src": "1513:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1504:3:74", + "nodeType": "YulIdentifier", + "src": "1504:3:74" + }, + "nativeSrc": "1504:11:74", + "nodeType": "YulFunctionCall", + "src": "1504:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1527:3:74", + "nodeType": "YulIdentifier", + "src": "1527:3:74" + }, + { + "name": "i", + "nativeSrc": "1532:1:74", + "nodeType": "YulIdentifier", + "src": "1532:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1523:3:74", + "nodeType": "YulIdentifier", + "src": "1523:3:74" + }, + "nativeSrc": "1523:11:74", + "nodeType": "YulFunctionCall", + "src": "1523:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1517:5:74", + "nodeType": "YulIdentifier", + "src": "1517:5:74" + }, + "nativeSrc": "1517:18:74", + "nodeType": "YulFunctionCall", + "src": "1517:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1497:6:74", + "nodeType": "YulIdentifier", + "src": "1497:6:74" + }, + "nativeSrc": "1497:39:74", + "nodeType": "YulFunctionCall", + "src": "1497:39:74" + }, + "nativeSrc": "1497:39:74", + "nodeType": "YulExpressionStatement", + "src": "1497:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1444:1:74", + "nodeType": "YulIdentifier", + "src": "1444:1:74" + }, + { + "name": "length", + "nativeSrc": "1447:6:74", + "nodeType": "YulIdentifier", + "src": "1447:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1441:2:74", + "nodeType": "YulIdentifier", + "src": "1441:2:74" + }, + "nativeSrc": "1441:13:74", + "nodeType": "YulFunctionCall", + "src": "1441:13:74" + }, + "nativeSrc": "1433:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1455:19:74", + "nodeType": "YulBlock", + "src": "1455:19:74", + "statements": [ + { + "nativeSrc": "1457:15:74", + "nodeType": "YulAssignment", + "src": "1457:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1466:1:74", + "nodeType": "YulIdentifier", + "src": "1466:1:74" + }, + { + "kind": "number", + "nativeSrc": "1469:2:74", + "nodeType": "YulLiteral", + "src": "1469:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1462:3:74", + "nodeType": "YulIdentifier", + "src": "1462:3:74" + }, + "nativeSrc": "1462:10:74", + "nodeType": "YulFunctionCall", + "src": "1462:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1457:1:74", + "nodeType": "YulIdentifier", + "src": "1457:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1437:3:74", + "nodeType": "YulBlock", + "src": "1437:3:74", + "statements": [] + }, + "src": "1433:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1566:3:74", + "nodeType": "YulIdentifier", + "src": "1566:3:74" + }, + { + "name": "length", + "nativeSrc": "1571:6:74", + "nodeType": "YulIdentifier", + "src": "1571:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1562:3:74", + "nodeType": "YulIdentifier", + "src": "1562:3:74" + }, + "nativeSrc": "1562:16:74", + "nodeType": "YulFunctionCall", + "src": "1562:16:74" + }, + { + "kind": "number", + "nativeSrc": "1580:1:74", + "nodeType": "YulLiteral", + "src": "1580:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1555:6:74", + "nodeType": "YulIdentifier", + "src": "1555:6:74" + }, + "nativeSrc": "1555:27:74", + "nodeType": "YulFunctionCall", + "src": "1555:27:74" + }, + "nativeSrc": "1555:27:74", + "nodeType": "YulExpressionStatement", + "src": "1555:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1341:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1385:3:74", + "nodeType": "YulTypedName", + "src": "1385:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1390:3:74", + "nodeType": "YulTypedName", + "src": "1390:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1395:6:74", + "nodeType": "YulTypedName", + "src": "1395:6:74", + "type": "" + } + ], + "src": "1341:248:74" + }, + { + "body": { + "nativeSrc": "1643:54:74", + "nodeType": "YulBlock", + "src": "1643:54:74", + "statements": [ + { + "nativeSrc": "1653:38:74", + "nodeType": "YulAssignment", + "src": "1653:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1671:5:74", + "nodeType": "YulIdentifier", + "src": "1671:5:74" + }, + { + "kind": "number", + "nativeSrc": "1678:2:74", + "nodeType": "YulLiteral", + "src": "1678:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1667:3:74", + "nodeType": "YulIdentifier", + "src": "1667:3:74" + }, + "nativeSrc": "1667:14:74", + "nodeType": "YulFunctionCall", + "src": "1667:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1687:2:74", + "nodeType": "YulLiteral", + "src": "1687:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "1683:3:74", + "nodeType": "YulIdentifier", + "src": "1683:3:74" + }, + "nativeSrc": "1683:7:74", + "nodeType": "YulFunctionCall", + "src": "1683:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1663:3:74", + "nodeType": "YulIdentifier", + "src": "1663:3:74" + }, + "nativeSrc": "1663:28:74", + "nodeType": "YulFunctionCall", + "src": "1663:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "1653:6:74", + "nodeType": "YulIdentifier", + "src": "1653:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "1595:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1626:5:74", + "nodeType": "YulTypedName", + "src": "1626:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "1636:6:74", + "nodeType": "YulTypedName", + "src": "1636:6:74", + "type": "" + } + ], + "src": "1595:102:74" + }, + { + "body": { + "nativeSrc": "1785:275:74", + "nodeType": "YulBlock", + "src": "1785:275:74", + "statements": [ + { + "nativeSrc": "1795:53:74", + "nodeType": "YulVariableDeclaration", + "src": "1795:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1842:5:74", + "nodeType": "YulIdentifier", + "src": "1842:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1809:32:74", + "nodeType": "YulIdentifier", + "src": "1809:32:74" + }, + "nativeSrc": "1809:39:74", + "nodeType": "YulFunctionCall", + "src": "1809:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "1799:6:74", + "nodeType": "YulTypedName", + "src": "1799:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1857:68:74", + "nodeType": "YulAssignment", + "src": "1857:68:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1913:3:74", + "nodeType": "YulIdentifier", + "src": "1913:3:74" + }, + { + "name": "length", + "nativeSrc": "1918:6:74", + "nodeType": "YulIdentifier", + "src": "1918:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nativeSrc": "1864:48:74", + "nodeType": "YulIdentifier", + "src": "1864:48:74" + }, + "nativeSrc": "1864:61:74", + "nodeType": "YulFunctionCall", + "src": "1864:61:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "1857:3:74", + "nodeType": "YulIdentifier", + "src": "1857:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1973:5:74", + "nodeType": "YulIdentifier", + "src": "1973:5:74" + }, + { + "kind": "number", + "nativeSrc": "1980:4:74", + "nodeType": "YulLiteral", + "src": "1980:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1969:3:74", + "nodeType": "YulIdentifier", + "src": "1969:3:74" + }, + "nativeSrc": "1969:16:74", + "nodeType": "YulFunctionCall", + "src": "1969:16:74" + }, + { + "name": "pos", + "nativeSrc": "1987:3:74", + "nodeType": "YulIdentifier", + "src": "1987:3:74" + }, + { + "name": "length", + "nativeSrc": "1992:6:74", + "nodeType": "YulIdentifier", + "src": "1992:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1934:34:74", + "nodeType": "YulIdentifier", + "src": "1934:34:74" + }, + "nativeSrc": "1934:65:74", + "nodeType": "YulFunctionCall", + "src": "1934:65:74" + }, + "nativeSrc": "1934:65:74", + "nodeType": "YulExpressionStatement", + "src": "1934:65:74" + }, + { + "nativeSrc": "2008:46:74", + "nodeType": "YulAssignment", + "src": "2008:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2019:3:74", + "nodeType": "YulIdentifier", + "src": "2019:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2046:6:74", + "nodeType": "YulIdentifier", + "src": "2046:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2024:21:74", + "nodeType": "YulIdentifier", + "src": "2024:21:74" + }, + "nativeSrc": "2024:29:74", + "nodeType": "YulFunctionCall", + "src": "2024:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2015:3:74", + "nodeType": "YulIdentifier", + "src": "2015:3:74" + }, + "nativeSrc": "2015:39:74", + "nodeType": "YulFunctionCall", + "src": "2015:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "2008:3:74", + "nodeType": "YulIdentifier", + "src": "2008:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "1703:357:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1766:5:74", + "nodeType": "YulTypedName", + "src": "1766:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1773:3:74", + "nodeType": "YulTypedName", + "src": "1773:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "1781:3:74", + "nodeType": "YulTypedName", + "src": "1781:3:74", + "type": "" + } + ], + "src": "1703:357:74" + }, + { + "body": { + "nativeSrc": "2166:96:74", + "nodeType": "YulBlock", + "src": "2166:96:74", + "statements": [ + { + "nativeSrc": "2176:80:74", + "nodeType": "YulAssignment", + "src": "2176:80:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2244:6:74", + "nodeType": "YulIdentifier", + "src": "2244:6:74" + }, + { + "name": "pos", + "nativeSrc": "2252:3:74", + "nodeType": "YulIdentifier", + "src": "2252:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "2190:53:74", + "nodeType": "YulIdentifier", + "src": "2190:53:74" + }, + "nativeSrc": "2190:66:74", + "nodeType": "YulFunctionCall", + "src": "2190:66:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "2176:10:74", + "nodeType": "YulIdentifier", + "src": "2176:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "2066:196:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "2139:6:74", + "nodeType": "YulTypedName", + "src": "2139:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2147:3:74", + "nodeType": "YulTypedName", + "src": "2147:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "2155:10:74", + "nodeType": "YulTypedName", + "src": "2155:10:74", + "type": "" + } + ], + "src": "2066:196:74" + }, + { + "body": { + "nativeSrc": "2353:38:74", + "nodeType": "YulBlock", + "src": "2353:38:74", + "statements": [ + { + "nativeSrc": "2363:22:74", + "nodeType": "YulAssignment", + "src": "2363:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "2375:3:74", + "nodeType": "YulIdentifier", + "src": "2375:3:74" + }, + { + "kind": "number", + "nativeSrc": "2380:4:74", + "nodeType": "YulLiteral", + "src": "2380:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2371:3:74", + "nodeType": "YulIdentifier", + "src": "2371:3:74" + }, + "nativeSrc": "2371:14:74", + "nodeType": "YulFunctionCall", + "src": "2371:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "2363:4:74", + "nodeType": "YulIdentifier", + "src": "2363:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "2268:123:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "2340:3:74", + "nodeType": "YulTypedName", + "src": "2340:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "2348:4:74", + "nodeType": "YulTypedName", + "src": "2348:4:74", + "type": "" + } + ], + "src": "2268:123:74" + }, + { + "body": { + "nativeSrc": "2569:847:74", + "nodeType": "YulBlock", + "src": "2569:847:74", + "statements": [ + { + "nativeSrc": "2579:78:74", + "nodeType": "YulVariableDeclaration", + "src": "2579:78:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2651:5:74", + "nodeType": "YulIdentifier", + "src": "2651:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "2593:57:74", + "nodeType": "YulIdentifier", + "src": "2593:57:74" + }, + "nativeSrc": "2593:64:74", + "nodeType": "YulFunctionCall", + "src": "2593:64:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2583:6:74", + "nodeType": "YulTypedName", + "src": "2583:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2666:103:74", + "nodeType": "YulAssignment", + "src": "2666:103:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2757:3:74", + "nodeType": "YulIdentifier", + "src": "2757:3:74" + }, + { + "name": "length", + "nativeSrc": "2762:6:74", + "nodeType": "YulIdentifier", + "src": "2762:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "2673:83:74", + "nodeType": "YulIdentifier", + "src": "2673:83:74" + }, + "nativeSrc": "2673:96:74", + "nodeType": "YulFunctionCall", + "src": "2673:96:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "2666:3:74", + "nodeType": "YulIdentifier", + "src": "2666:3:74" + } + ] + }, + { + "nativeSrc": "2778:20:74", + "nodeType": "YulVariableDeclaration", + "src": "2778:20:74", + "value": { + "name": "pos", + "nativeSrc": "2795:3:74", + "nodeType": "YulIdentifier", + "src": "2795:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "2782:9:74", + "nodeType": "YulTypedName", + "src": "2782:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2807:39:74", + "nodeType": "YulVariableDeclaration", + "src": "2807:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2823:3:74", + "nodeType": "YulIdentifier", + "src": "2823:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2832:6:74", + "nodeType": "YulIdentifier", + "src": "2832:6:74" + }, + { + "kind": "number", + "nativeSrc": "2840:4:74", + "nodeType": "YulLiteral", + "src": "2840:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "2828:3:74", + "nodeType": "YulIdentifier", + "src": "2828:3:74" + }, + "nativeSrc": "2828:17:74", + "nodeType": "YulFunctionCall", + "src": "2828:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2819:3:74", + "nodeType": "YulIdentifier", + "src": "2819:3:74" + }, + "nativeSrc": "2819:27:74", + "nodeType": "YulFunctionCall", + "src": "2819:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "2811:4:74", + "nodeType": "YulTypedName", + "src": "2811:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2855:81:74", + "nodeType": "YulVariableDeclaration", + "src": "2855:81:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2930:5:74", + "nodeType": "YulIdentifier", + "src": "2930:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "2870:59:74", + "nodeType": "YulIdentifier", + "src": "2870:59:74" + }, + "nativeSrc": "2870:66:74", + "nodeType": "YulFunctionCall", + "src": "2870:66:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "2859:7:74", + "nodeType": "YulTypedName", + "src": "2859:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2945:21:74", + "nodeType": "YulVariableDeclaration", + "src": "2945:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "2959:7:74", + "nodeType": "YulIdentifier", + "src": "2959:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "2949:6:74", + "nodeType": "YulTypedName", + "src": "2949:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3035:336:74", + "nodeType": "YulBlock", + "src": "3035:336:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3056:3:74", + "nodeType": "YulIdentifier", + "src": "3056:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3065:4:74", + "nodeType": "YulIdentifier", + "src": "3065:4:74" + }, + { + "name": "headStart", + "nativeSrc": "3071:9:74", + "nodeType": "YulIdentifier", + "src": "3071:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3061:3:74", + "nodeType": "YulIdentifier", + "src": "3061:3:74" + }, + "nativeSrc": "3061:20:74", + "nodeType": "YulFunctionCall", + "src": "3061:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3049:6:74", + "nodeType": "YulIdentifier", + "src": "3049:6:74" + }, + "nativeSrc": "3049:33:74", + "nodeType": "YulFunctionCall", + "src": "3049:33:74" + }, + "nativeSrc": "3049:33:74", + "nodeType": "YulExpressionStatement", + "src": "3049:33:74" + }, + { + "nativeSrc": "3095:34:74", + "nodeType": "YulVariableDeclaration", + "src": "3095:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "3122:6:74", + "nodeType": "YulIdentifier", + "src": "3122:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3116:5:74", + "nodeType": "YulIdentifier", + "src": "3116:5:74" + }, + "nativeSrc": "3116:13:74", + "nodeType": "YulFunctionCall", + "src": "3116:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "3099:13:74", + "nodeType": "YulTypedName", + "src": "3099:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3142:92:74", + "nodeType": "YulAssignment", + "src": "3142:92:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "3214:13:74", + "nodeType": "YulIdentifier", + "src": "3214:13:74" + }, + { + "name": "tail", + "nativeSrc": "3229:4:74", + "nodeType": "YulIdentifier", + "src": "3229:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "3150:63:74", + "nodeType": "YulIdentifier", + "src": "3150:63:74" + }, + "nativeSrc": "3150:84:74", + "nodeType": "YulFunctionCall", + "src": "3150:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3142:4:74", + "nodeType": "YulIdentifier", + "src": "3142:4:74" + } + ] + }, + { + "nativeSrc": "3247:80:74", + "nodeType": "YulAssignment", + "src": "3247:80:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "3320:6:74", + "nodeType": "YulIdentifier", + "src": "3320:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "3257:62:74", + "nodeType": "YulIdentifier", + "src": "3257:62:74" + }, + "nativeSrc": "3257:70:74", + "nodeType": "YulFunctionCall", + "src": "3257:70:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "3247:6:74", + "nodeType": "YulIdentifier", + "src": "3247:6:74" + } + ] + }, + { + "nativeSrc": "3340:21:74", + "nodeType": "YulAssignment", + "src": "3340:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3351:3:74", + "nodeType": "YulIdentifier", + "src": "3351:3:74" + }, + { + "kind": "number", + "nativeSrc": "3356:4:74", + "nodeType": "YulLiteral", + "src": "3356:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3347:3:74", + "nodeType": "YulIdentifier", + "src": "3347:3:74" + }, + "nativeSrc": "3347:14:74", + "nodeType": "YulFunctionCall", + "src": "3347:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "3340:3:74", + "nodeType": "YulIdentifier", + "src": "3340:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "2997:1:74", + "nodeType": "YulIdentifier", + "src": "2997:1:74" + }, + { + "name": "length", + "nativeSrc": "3000:6:74", + "nodeType": "YulIdentifier", + "src": "3000:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2994:2:74", + "nodeType": "YulIdentifier", + "src": "2994:2:74" + }, + "nativeSrc": "2994:13:74", + "nodeType": "YulFunctionCall", + "src": "2994:13:74" + }, + "nativeSrc": "2975:396:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "3008:18:74", + "nodeType": "YulBlock", + "src": "3008:18:74", + "statements": [ + { + "nativeSrc": "3010:14:74", + "nodeType": "YulAssignment", + "src": "3010:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "3019:1:74", + "nodeType": "YulIdentifier", + "src": "3019:1:74" + }, + { + "kind": "number", + "nativeSrc": "3022:1:74", + "nodeType": "YulLiteral", + "src": "3022:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3015:3:74", + "nodeType": "YulIdentifier", + "src": "3015:3:74" + }, + "nativeSrc": "3015:9:74", + "nodeType": "YulFunctionCall", + "src": "3015:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "3010:1:74", + "nodeType": "YulIdentifier", + "src": "3010:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "2979:14:74", + "nodeType": "YulBlock", + "src": "2979:14:74", + "statements": [ + { + "nativeSrc": "2981:10:74", + "nodeType": "YulVariableDeclaration", + "src": "2981:10:74", + "value": { + "kind": "number", + "nativeSrc": "2990:1:74", + "nodeType": "YulLiteral", + "src": "2990:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "2985:1:74", + "nodeType": "YulTypedName", + "src": "2985:1:74", + "type": "" + } + ] + } + ] + }, + "src": "2975:396:74" + }, + { + "nativeSrc": "3380:11:74", + "nodeType": "YulAssignment", + "src": "3380:11:74", + "value": { + "name": "tail", + "nativeSrc": "3387:4:74", + "nodeType": "YulIdentifier", + "src": "3387:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "3380:3:74", + "nodeType": "YulIdentifier", + "src": "3380:3:74" + } + ] + }, + { + "nativeSrc": "3400:10:74", + "nodeType": "YulAssignment", + "src": "3400:10:74", + "value": { + "name": "pos", + "nativeSrc": "3407:3:74", + "nodeType": "YulIdentifier", + "src": "3407:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "3400:3:74", + "nodeType": "YulIdentifier", + "src": "3400:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "2425:991:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2548:5:74", + "nodeType": "YulTypedName", + "src": "2548:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2555:3:74", + "nodeType": "YulTypedName", + "src": "2555:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "2564:3:74", + "nodeType": "YulTypedName", + "src": "2564:3:74", + "type": "" + } + ], + "src": "2425:991:74" + }, + { + "body": { + "nativeSrc": "3590:245:74", + "nodeType": "YulBlock", + "src": "3590:245:74", + "statements": [ + { + "nativeSrc": "3600:26:74", + "nodeType": "YulAssignment", + "src": "3600:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3612:9:74", + "nodeType": "YulIdentifier", + "src": "3612:9:74" + }, + { + "kind": "number", + "nativeSrc": "3623:2:74", + "nodeType": "YulLiteral", + "src": "3623:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3608:3:74", + "nodeType": "YulIdentifier", + "src": "3608:3:74" + }, + "nativeSrc": "3608:18:74", + "nodeType": "YulFunctionCall", + "src": "3608:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3600:4:74", + "nodeType": "YulIdentifier", + "src": "3600:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3647:9:74", + "nodeType": "YulIdentifier", + "src": "3647:9:74" + }, + { + "kind": "number", + "nativeSrc": "3658:1:74", + "nodeType": "YulLiteral", + "src": "3658:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3643:3:74", + "nodeType": "YulIdentifier", + "src": "3643:3:74" + }, + "nativeSrc": "3643:17:74", + "nodeType": "YulFunctionCall", + "src": "3643:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3666:4:74", + "nodeType": "YulIdentifier", + "src": "3666:4:74" + }, + { + "name": "headStart", + "nativeSrc": "3672:9:74", + "nodeType": "YulIdentifier", + "src": "3672:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3662:3:74", + "nodeType": "YulIdentifier", + "src": "3662:3:74" + }, + "nativeSrc": "3662:20:74", + "nodeType": "YulFunctionCall", + "src": "3662:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3636:6:74", + "nodeType": "YulIdentifier", + "src": "3636:6:74" + }, + "nativeSrc": "3636:47:74", + "nodeType": "YulFunctionCall", + "src": "3636:47:74" + }, + "nativeSrc": "3636:47:74", + "nodeType": "YulExpressionStatement", + "src": "3636:47:74" + }, + { + "nativeSrc": "3692:136:74", + "nodeType": "YulAssignment", + "src": "3692:136:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3814:6:74", + "nodeType": "YulIdentifier", + "src": "3814:6:74" + }, + { + "name": "tail", + "nativeSrc": "3823:4:74", + "nodeType": "YulIdentifier", + "src": "3823:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "3700:113:74", + "nodeType": "YulIdentifier", + "src": "3700:113:74" + }, + "nativeSrc": "3700:128:74", + "nodeType": "YulFunctionCall", + "src": "3700:128:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3692:4:74", + "nodeType": "YulIdentifier", + "src": "3692:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "3422:413:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3562:9:74", + "nodeType": "YulTypedName", + "src": "3562:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3574:6:74", + "nodeType": "YulTypedName", + "src": "3574:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3585:4:74", + "nodeType": "YulTypedName", + "src": "3585:4:74", + "type": "" + } + ], + "src": "3422:413:74" + }, + { + "body": { + "nativeSrc": "3881:35:74", + "nodeType": "YulBlock", + "src": "3881:35:74", + "statements": [ + { + "nativeSrc": "3891:19:74", + "nodeType": "YulAssignment", + "src": "3891:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3907:2:74", + "nodeType": "YulLiteral", + "src": "3907:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3901:5:74", + "nodeType": "YulIdentifier", + "src": "3901:5:74" + }, + "nativeSrc": "3901:9:74", + "nodeType": "YulFunctionCall", + "src": "3901:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "3891:6:74", + "nodeType": "YulIdentifier", + "src": "3891:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "3841:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "3874:6:74", + "nodeType": "YulTypedName", + "src": "3874:6:74", + "type": "" + } + ], + "src": "3841:75:74" + }, + { + "body": { + "nativeSrc": "4011:28:74", + "nodeType": "YulBlock", + "src": "4011:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4028:1:74", + "nodeType": "YulLiteral", + "src": "4028:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4031:1:74", + "nodeType": "YulLiteral", + "src": "4031:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4021:6:74", + "nodeType": "YulIdentifier", + "src": "4021:6:74" + }, + "nativeSrc": "4021:12:74", + "nodeType": "YulFunctionCall", + "src": "4021:12:74" + }, + "nativeSrc": "4021:12:74", + "nodeType": "YulExpressionStatement", + "src": "4021:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3922:117:74", + "nodeType": "YulFunctionDefinition", + "src": "3922:117:74" + }, + { + "body": { + "nativeSrc": "4134:28:74", + "nodeType": "YulBlock", + "src": "4134:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4151:1:74", + "nodeType": "YulLiteral", + "src": "4151:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4154:1:74", + "nodeType": "YulLiteral", + "src": "4154:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4144:6:74", + "nodeType": "YulIdentifier", + "src": "4144:6:74" + }, + "nativeSrc": "4144:12:74", + "nodeType": "YulFunctionCall", + "src": "4144:12:74" + }, + "nativeSrc": "4144:12:74", + "nodeType": "YulExpressionStatement", + "src": "4144:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "4045:117:74", + "nodeType": "YulFunctionDefinition", + "src": "4045:117:74" + }, + { + "body": { + "nativeSrc": "4211:79:74", + "nodeType": "YulBlock", + "src": "4211:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4268:16:74", + "nodeType": "YulBlock", + "src": "4268:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4277:1:74", + "nodeType": "YulLiteral", + "src": "4277:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4280:1:74", + "nodeType": "YulLiteral", + "src": "4280:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4270:6:74", + "nodeType": "YulIdentifier", + "src": "4270:6:74" + }, + "nativeSrc": "4270:12:74", + "nodeType": "YulFunctionCall", + "src": "4270:12:74" + }, + "nativeSrc": "4270:12:74", + "nodeType": "YulExpressionStatement", + "src": "4270:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4234:5:74", + "nodeType": "YulIdentifier", + "src": "4234:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4259:5:74", + "nodeType": "YulIdentifier", + "src": "4259:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4241:17:74", + "nodeType": "YulIdentifier", + "src": "4241:17:74" + }, + "nativeSrc": "4241:24:74", + "nodeType": "YulFunctionCall", + "src": "4241:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4231:2:74", + "nodeType": "YulIdentifier", + "src": "4231:2:74" + }, + "nativeSrc": "4231:35:74", + "nodeType": "YulFunctionCall", + "src": "4231:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4224:6:74", + "nodeType": "YulIdentifier", + "src": "4224:6:74" + }, + "nativeSrc": "4224:43:74", + "nodeType": "YulFunctionCall", + "src": "4224:43:74" + }, + "nativeSrc": "4221:63:74", + "nodeType": "YulIf", + "src": "4221:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "4168:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4204:5:74", + "nodeType": "YulTypedName", + "src": "4204:5:74", + "type": "" + } + ], + "src": "4168:122:74" + }, + { + "body": { + "nativeSrc": "4348:87:74", + "nodeType": "YulBlock", + "src": "4348:87:74", + "statements": [ + { + "nativeSrc": "4358:29:74", + "nodeType": "YulAssignment", + "src": "4358:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4380:6:74", + "nodeType": "YulIdentifier", + "src": "4380:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4367:12:74", + "nodeType": "YulIdentifier", + "src": "4367:12:74" + }, + "nativeSrc": "4367:20:74", + "nodeType": "YulFunctionCall", + "src": "4367:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4358:5:74", + "nodeType": "YulIdentifier", + "src": "4358:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4423:5:74", + "nodeType": "YulIdentifier", + "src": "4423:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "4396:26:74", + "nodeType": "YulIdentifier", + "src": "4396:26:74" + }, + "nativeSrc": "4396:33:74", + "nodeType": "YulFunctionCall", + "src": "4396:33:74" + }, + "nativeSrc": "4396:33:74", + "nodeType": "YulExpressionStatement", + "src": "4396:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "4296:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4326:6:74", + "nodeType": "YulTypedName", + "src": "4326:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4334:3:74", + "nodeType": "YulTypedName", + "src": "4334:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4342:5:74", + "nodeType": "YulTypedName", + "src": "4342:5:74", + "type": "" + } + ], + "src": "4296:139:74" + }, + { + "body": { + "nativeSrc": "4530:28:74", + "nodeType": "YulBlock", + "src": "4530:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4547:1:74", + "nodeType": "YulLiteral", + "src": "4547:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4550:1:74", + "nodeType": "YulLiteral", + "src": "4550:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4540:6:74", + "nodeType": "YulIdentifier", + "src": "4540:6:74" + }, + "nativeSrc": "4540:12:74", + "nodeType": "YulFunctionCall", + "src": "4540:12:74" + }, + "nativeSrc": "4540:12:74", + "nodeType": "YulExpressionStatement", + "src": "4540:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "4441:117:74", + "nodeType": "YulFunctionDefinition", + "src": "4441:117:74" + }, + { + "body": { + "nativeSrc": "4592:152:74", + "nodeType": "YulBlock", + "src": "4592:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4609:1:74", + "nodeType": "YulLiteral", + "src": "4609:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4612:77:74", + "nodeType": "YulLiteral", + "src": "4612:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4602:6:74", + "nodeType": "YulIdentifier", + "src": "4602:6:74" + }, + "nativeSrc": "4602:88:74", + "nodeType": "YulFunctionCall", + "src": "4602:88:74" + }, + "nativeSrc": "4602:88:74", + "nodeType": "YulExpressionStatement", + "src": "4602:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4706:1:74", + "nodeType": "YulLiteral", + "src": "4706:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "4709:4:74", + "nodeType": "YulLiteral", + "src": "4709:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4699:6:74", + "nodeType": "YulIdentifier", + "src": "4699:6:74" + }, + "nativeSrc": "4699:15:74", + "nodeType": "YulFunctionCall", + "src": "4699:15:74" + }, + "nativeSrc": "4699:15:74", + "nodeType": "YulExpressionStatement", + "src": "4699:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4730:1:74", + "nodeType": "YulLiteral", + "src": "4730:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4733:4:74", + "nodeType": "YulLiteral", + "src": "4733:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4723:6:74", + "nodeType": "YulIdentifier", + "src": "4723:6:74" + }, + "nativeSrc": "4723:15:74", + "nodeType": "YulFunctionCall", + "src": "4723:15:74" + }, + "nativeSrc": "4723:15:74", + "nodeType": "YulExpressionStatement", + "src": "4723:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "4564:180:74", + "nodeType": "YulFunctionDefinition", + "src": "4564:180:74" + }, + { + "body": { + "nativeSrc": "4793:238:74", + "nodeType": "YulBlock", + "src": "4793:238:74", + "statements": [ + { + "nativeSrc": "4803:58:74", + "nodeType": "YulVariableDeclaration", + "src": "4803:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4825:6:74", + "nodeType": "YulIdentifier", + "src": "4825:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "4855:4:74", + "nodeType": "YulIdentifier", + "src": "4855:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "4833:21:74", + "nodeType": "YulIdentifier", + "src": "4833:21:74" + }, + "nativeSrc": "4833:27:74", + "nodeType": "YulFunctionCall", + "src": "4833:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4821:3:74", + "nodeType": "YulIdentifier", + "src": "4821:3:74" + }, + "nativeSrc": "4821:40:74", + "nodeType": "YulFunctionCall", + "src": "4821:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "4807:10:74", + "nodeType": "YulTypedName", + "src": "4807:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4972:22:74", + "nodeType": "YulBlock", + "src": "4972:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "4974:16:74", + "nodeType": "YulIdentifier", + "src": "4974:16:74" + }, + "nativeSrc": "4974:18:74", + "nodeType": "YulFunctionCall", + "src": "4974:18:74" + }, + "nativeSrc": "4974:18:74", + "nodeType": "YulExpressionStatement", + "src": "4974:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "4915:10:74", + "nodeType": "YulIdentifier", + "src": "4915:10:74" + }, + { + "kind": "number", + "nativeSrc": "4927:18:74", + "nodeType": "YulLiteral", + "src": "4927:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4912:2:74", + "nodeType": "YulIdentifier", + "src": "4912:2:74" + }, + "nativeSrc": "4912:34:74", + "nodeType": "YulFunctionCall", + "src": "4912:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "4951:10:74", + "nodeType": "YulIdentifier", + "src": "4951:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "4963:6:74", + "nodeType": "YulIdentifier", + "src": "4963:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4948:2:74", + "nodeType": "YulIdentifier", + "src": "4948:2:74" + }, + "nativeSrc": "4948:22:74", + "nodeType": "YulFunctionCall", + "src": "4948:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "4909:2:74", + "nodeType": "YulIdentifier", + "src": "4909:2:74" + }, + "nativeSrc": "4909:62:74", + "nodeType": "YulFunctionCall", + "src": "4909:62:74" + }, + "nativeSrc": "4906:88:74", + "nodeType": "YulIf", + "src": "4906:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5010:2:74", + "nodeType": "YulLiteral", + "src": "5010:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "5014:10:74", + "nodeType": "YulIdentifier", + "src": "5014:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5003:6:74", + "nodeType": "YulIdentifier", + "src": "5003:6:74" + }, + "nativeSrc": "5003:22:74", + "nodeType": "YulFunctionCall", + "src": "5003:22:74" + }, + "nativeSrc": "5003:22:74", + "nodeType": "YulExpressionStatement", + "src": "5003:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "4750:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "4779:6:74", + "nodeType": "YulTypedName", + "src": "4779:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "4787:4:74", + "nodeType": "YulTypedName", + "src": "4787:4:74", + "type": "" + } + ], + "src": "4750:281:74" + }, + { + "body": { + "nativeSrc": "5078:88:74", + "nodeType": "YulBlock", + "src": "5078:88:74", + "statements": [ + { + "nativeSrc": "5088:30:74", + "nodeType": "YulAssignment", + "src": "5088:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "5098:18:74", + "nodeType": "YulIdentifier", + "src": "5098:18:74" + }, + "nativeSrc": "5098:20:74", + "nodeType": "YulFunctionCall", + "src": "5098:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "5088:6:74", + "nodeType": "YulIdentifier", + "src": "5088:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "5147:6:74", + "nodeType": "YulIdentifier", + "src": "5147:6:74" + }, + { + "name": "size", + "nativeSrc": "5155:4:74", + "nodeType": "YulIdentifier", + "src": "5155:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "5127:19:74", + "nodeType": "YulIdentifier", + "src": "5127:19:74" + }, + "nativeSrc": "5127:33:74", + "nodeType": "YulFunctionCall", + "src": "5127:33:74" + }, + "nativeSrc": "5127:33:74", + "nodeType": "YulExpressionStatement", + "src": "5127:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "5037:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "5062:4:74", + "nodeType": "YulTypedName", + "src": "5062:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "5071:6:74", + "nodeType": "YulTypedName", + "src": "5071:6:74", + "type": "" + } + ], + "src": "5037:129:74" + }, + { + "body": { + "nativeSrc": "5254:229:74", + "nodeType": "YulBlock", + "src": "5254:229:74", + "statements": [ + { + "body": { + "nativeSrc": "5359:22:74", + "nodeType": "YulBlock", + "src": "5359:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "5361:16:74", + "nodeType": "YulIdentifier", + "src": "5361:16:74" + }, + "nativeSrc": "5361:18:74", + "nodeType": "YulFunctionCall", + "src": "5361:18:74" + }, + "nativeSrc": "5361:18:74", + "nodeType": "YulExpressionStatement", + "src": "5361:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "5331:6:74", + "nodeType": "YulIdentifier", + "src": "5331:6:74" + }, + { + "kind": "number", + "nativeSrc": "5339:18:74", + "nodeType": "YulLiteral", + "src": "5339:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5328:2:74", + "nodeType": "YulIdentifier", + "src": "5328:2:74" + }, + "nativeSrc": "5328:30:74", + "nodeType": "YulFunctionCall", + "src": "5328:30:74" + }, + "nativeSrc": "5325:56:74", + "nodeType": "YulIf", + "src": "5325:56:74" + }, + { + "nativeSrc": "5391:25:74", + "nodeType": "YulAssignment", + "src": "5391:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "5403:6:74", + "nodeType": "YulIdentifier", + "src": "5403:6:74" + }, + { + "kind": "number", + "nativeSrc": "5411:4:74", + "nodeType": "YulLiteral", + "src": "5411:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "5399:3:74", + "nodeType": "YulIdentifier", + "src": "5399:3:74" + }, + "nativeSrc": "5399:17:74", + "nodeType": "YulFunctionCall", + "src": "5399:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "5391:4:74", + "nodeType": "YulIdentifier", + "src": "5391:4:74" + } + ] + }, + { + "nativeSrc": "5453:23:74", + "nodeType": "YulAssignment", + "src": "5453:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "5465:4:74", + "nodeType": "YulIdentifier", + "src": "5465:4:74" + }, + { + "kind": "number", + "nativeSrc": "5471:4:74", + "nodeType": "YulLiteral", + "src": "5471:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5461:3:74", + "nodeType": "YulIdentifier", + "src": "5461:3:74" + }, + "nativeSrc": "5461:15:74", + "nodeType": "YulFunctionCall", + "src": "5461:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "5453:4:74", + "nodeType": "YulIdentifier", + "src": "5453:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "5172:311:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "5238:6:74", + "nodeType": "YulTypedName", + "src": "5238:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "5249:4:74", + "nodeType": "YulTypedName", + "src": "5249:4:74", + "type": "" + } + ], + "src": "5172:311:74" + }, + { + "body": { + "nativeSrc": "5578:28:74", + "nodeType": "YulBlock", + "src": "5578:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5595:1:74", + "nodeType": "YulLiteral", + "src": "5595:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5598:1:74", + "nodeType": "YulLiteral", + "src": "5598:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5588:6:74", + "nodeType": "YulIdentifier", + "src": "5588:6:74" + }, + "nativeSrc": "5588:12:74", + "nodeType": "YulFunctionCall", + "src": "5588:12:74" + }, + "nativeSrc": "5588:12:74", + "nodeType": "YulExpressionStatement", + "src": "5588:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "5489:117:74", + "nodeType": "YulFunctionDefinition", + "src": "5489:117:74" + }, + { + "body": { + "nativeSrc": "5657:32:74", + "nodeType": "YulBlock", + "src": "5657:32:74", + "statements": [ + { + "nativeSrc": "5667:16:74", + "nodeType": "YulAssignment", + "src": "5667:16:74", + "value": { + "name": "value", + "nativeSrc": "5678:5:74", + "nodeType": "YulIdentifier", + "src": "5678:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "5667:7:74", + "nodeType": "YulIdentifier", + "src": "5667:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "5612:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5639:5:74", + "nodeType": "YulTypedName", + "src": "5639:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "5649:7:74", + "nodeType": "YulTypedName", + "src": "5649:7:74", + "type": "" + } + ], + "src": "5612:77:74" + }, + { + "body": { + "nativeSrc": "5738:79:74", + "nodeType": "YulBlock", + "src": "5738:79:74", + "statements": [ + { + "body": { + "nativeSrc": "5795:16:74", + "nodeType": "YulBlock", + "src": "5795:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5804:1:74", + "nodeType": "YulLiteral", + "src": "5804:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5807:1:74", + "nodeType": "YulLiteral", + "src": "5807:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5797:6:74", + "nodeType": "YulIdentifier", + "src": "5797:6:74" + }, + "nativeSrc": "5797:12:74", + "nodeType": "YulFunctionCall", + "src": "5797:12:74" + }, + "nativeSrc": "5797:12:74", + "nodeType": "YulExpressionStatement", + "src": "5797:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5761:5:74", + "nodeType": "YulIdentifier", + "src": "5761:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5786:5:74", + "nodeType": "YulIdentifier", + "src": "5786:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "5768:17:74", + "nodeType": "YulIdentifier", + "src": "5768:17:74" + }, + "nativeSrc": "5768:24:74", + "nodeType": "YulFunctionCall", + "src": "5768:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "5758:2:74", + "nodeType": "YulIdentifier", + "src": "5758:2:74" + }, + "nativeSrc": "5758:35:74", + "nodeType": "YulFunctionCall", + "src": "5758:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5751:6:74", + "nodeType": "YulIdentifier", + "src": "5751:6:74" + }, + "nativeSrc": "5751:43:74", + "nodeType": "YulFunctionCall", + "src": "5751:43:74" + }, + "nativeSrc": "5748:63:74", + "nodeType": "YulIf", + "src": "5748:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "5695:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5731:5:74", + "nodeType": "YulTypedName", + "src": "5731:5:74", + "type": "" + } + ], + "src": "5695:122:74" + }, + { + "body": { + "nativeSrc": "5875:87:74", + "nodeType": "YulBlock", + "src": "5875:87:74", + "statements": [ + { + "nativeSrc": "5885:29:74", + "nodeType": "YulAssignment", + "src": "5885:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5907:6:74", + "nodeType": "YulIdentifier", + "src": "5907:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "5894:12:74", + "nodeType": "YulIdentifier", + "src": "5894:12:74" + }, + "nativeSrc": "5894:20:74", + "nodeType": "YulFunctionCall", + "src": "5894:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "5885:5:74", + "nodeType": "YulIdentifier", + "src": "5885:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5950:5:74", + "nodeType": "YulIdentifier", + "src": "5950:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "5923:26:74", + "nodeType": "YulIdentifier", + "src": "5923:26:74" + }, + "nativeSrc": "5923:33:74", + "nodeType": "YulFunctionCall", + "src": "5923:33:74" + }, + "nativeSrc": "5923:33:74", + "nodeType": "YulExpressionStatement", + "src": "5923:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "5823:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "5853:6:74", + "nodeType": "YulTypedName", + "src": "5853:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5861:3:74", + "nodeType": "YulTypedName", + "src": "5861:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "5869:5:74", + "nodeType": "YulTypedName", + "src": "5869:5:74", + "type": "" + } + ], + "src": "5823:139:74" + }, + { + "body": { + "nativeSrc": "6087:608:74", + "nodeType": "YulBlock", + "src": "6087:608:74", + "statements": [ + { + "nativeSrc": "6097:90:74", + "nodeType": "YulAssignment", + "src": "6097:90:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "6179:6:74", + "nodeType": "YulIdentifier", + "src": "6179:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "6122:56:74", + "nodeType": "YulIdentifier", + "src": "6122:56:74" + }, + "nativeSrc": "6122:64:74", + "nodeType": "YulFunctionCall", + "src": "6122:64:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "6106:15:74", + "nodeType": "YulIdentifier", + "src": "6106:15:74" + }, + "nativeSrc": "6106:81:74", + "nodeType": "YulFunctionCall", + "src": "6106:81:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "6097:5:74", + "nodeType": "YulIdentifier", + "src": "6097:5:74" + } + ] + }, + { + "nativeSrc": "6196:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6196:16:74", + "value": { + "name": "array", + "nativeSrc": "6207:5:74", + "nodeType": "YulIdentifier", + "src": "6207:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "6200:3:74", + "nodeType": "YulTypedName", + "src": "6200:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "6229:5:74", + "nodeType": "YulIdentifier", + "src": "6229:5:74" + }, + { + "name": "length", + "nativeSrc": "6236:6:74", + "nodeType": "YulIdentifier", + "src": "6236:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6222:6:74", + "nodeType": "YulIdentifier", + "src": "6222:6:74" + }, + "nativeSrc": "6222:21:74", + "nodeType": "YulFunctionCall", + "src": "6222:21:74" + }, + "nativeSrc": "6222:21:74", + "nodeType": "YulExpressionStatement", + "src": "6222:21:74" + }, + { + "nativeSrc": "6252:23:74", + "nodeType": "YulAssignment", + "src": "6252:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "6263:5:74", + "nodeType": "YulIdentifier", + "src": "6263:5:74" + }, + { + "kind": "number", + "nativeSrc": "6270:4:74", + "nodeType": "YulLiteral", + "src": "6270:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6259:3:74", + "nodeType": "YulIdentifier", + "src": "6259:3:74" + }, + "nativeSrc": "6259:16:74", + "nodeType": "YulFunctionCall", + "src": "6259:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "6252:3:74", + "nodeType": "YulIdentifier", + "src": "6252:3:74" + } + ] + }, + { + "nativeSrc": "6285:44:74", + "nodeType": "YulVariableDeclaration", + "src": "6285:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6303:6:74", + "nodeType": "YulIdentifier", + "src": "6303:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "6315:6:74", + "nodeType": "YulIdentifier", + "src": "6315:6:74" + }, + { + "kind": "number", + "nativeSrc": "6323:4:74", + "nodeType": "YulLiteral", + "src": "6323:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6311:3:74", + "nodeType": "YulIdentifier", + "src": "6311:3:74" + }, + "nativeSrc": "6311:17:74", + "nodeType": "YulFunctionCall", + "src": "6311:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6299:3:74", + "nodeType": "YulIdentifier", + "src": "6299:3:74" + }, + "nativeSrc": "6299:30:74", + "nodeType": "YulFunctionCall", + "src": "6299:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "6289:6:74", + "nodeType": "YulTypedName", + "src": "6289:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6357:103:74", + "nodeType": "YulBlock", + "src": "6357:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "6371:77:74", + "nodeType": "YulIdentifier", + "src": "6371:77:74" + }, + "nativeSrc": "6371:79:74", + "nodeType": "YulFunctionCall", + "src": "6371:79:74" + }, + "nativeSrc": "6371:79:74", + "nodeType": "YulExpressionStatement", + "src": "6371:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "6344:6:74", + "nodeType": "YulIdentifier", + "src": "6344:6:74" + }, + { + "name": "end", + "nativeSrc": "6352:3:74", + "nodeType": "YulIdentifier", + "src": "6352:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6341:2:74", + "nodeType": "YulIdentifier", + "src": "6341:2:74" + }, + "nativeSrc": "6341:15:74", + "nodeType": "YulFunctionCall", + "src": "6341:15:74" + }, + "nativeSrc": "6338:122:74", + "nodeType": "YulIf", + "src": "6338:122:74" + }, + { + "body": { + "nativeSrc": "6545:144:74", + "nodeType": "YulBlock", + "src": "6545:144:74", + "statements": [ + { + "nativeSrc": "6560:21:74", + "nodeType": "YulVariableDeclaration", + "src": "6560:21:74", + "value": { + "name": "src", + "nativeSrc": "6578:3:74", + "nodeType": "YulIdentifier", + "src": "6578:3:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "6564:10:74", + "nodeType": "YulTypedName", + "src": "6564:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "6602:3:74", + "nodeType": "YulIdentifier", + "src": "6602:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "6628:10:74", + "nodeType": "YulIdentifier", + "src": "6628:10:74" + }, + { + "name": "end", + "nativeSrc": "6640:3:74", + "nodeType": "YulIdentifier", + "src": "6640:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "6607:20:74", + "nodeType": "YulIdentifier", + "src": "6607:20:74" + }, + "nativeSrc": "6607:37:74", + "nodeType": "YulFunctionCall", + "src": "6607:37:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6595:6:74", + "nodeType": "YulIdentifier", + "src": "6595:6:74" + }, + "nativeSrc": "6595:50:74", + "nodeType": "YulFunctionCall", + "src": "6595:50:74" + }, + "nativeSrc": "6595:50:74", + "nodeType": "YulExpressionStatement", + "src": "6595:50:74" + }, + { + "nativeSrc": "6658:21:74", + "nodeType": "YulAssignment", + "src": "6658:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "6669:3:74", + "nodeType": "YulIdentifier", + "src": "6669:3:74" + }, + { + "kind": "number", + "nativeSrc": "6674:4:74", + "nodeType": "YulLiteral", + "src": "6674:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6665:3:74", + "nodeType": "YulIdentifier", + "src": "6665:3:74" + }, + "nativeSrc": "6665:14:74", + "nodeType": "YulFunctionCall", + "src": "6665:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "6658:3:74", + "nodeType": "YulIdentifier", + "src": "6658:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "6498:3:74", + "nodeType": "YulIdentifier", + "src": "6498:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "6503:6:74", + "nodeType": "YulIdentifier", + "src": "6503:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6495:2:74", + "nodeType": "YulIdentifier", + "src": "6495:2:74" + }, + "nativeSrc": "6495:15:74", + "nodeType": "YulFunctionCall", + "src": "6495:15:74" + }, + "nativeSrc": "6469:220:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "6511:25:74", + "nodeType": "YulBlock", + "src": "6511:25:74", + "statements": [ + { + "nativeSrc": "6513:21:74", + "nodeType": "YulAssignment", + "src": "6513:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "6524:3:74", + "nodeType": "YulIdentifier", + "src": "6524:3:74" + }, + { + "kind": "number", + "nativeSrc": "6529:4:74", + "nodeType": "YulLiteral", + "src": "6529:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6520:3:74", + "nodeType": "YulIdentifier", + "src": "6520:3:74" + }, + "nativeSrc": "6520:14:74", + "nodeType": "YulFunctionCall", + "src": "6520:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "6513:3:74", + "nodeType": "YulIdentifier", + "src": "6513:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "6473:21:74", + "nodeType": "YulBlock", + "src": "6473:21:74", + "statements": [ + { + "nativeSrc": "6475:17:74", + "nodeType": "YulVariableDeclaration", + "src": "6475:17:74", + "value": { + "name": "offset", + "nativeSrc": "6486:6:74", + "nodeType": "YulIdentifier", + "src": "6486:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "6479:3:74", + "nodeType": "YulTypedName", + "src": "6479:3:74", + "type": "" + } + ] + } + ] + }, + "src": "6469:220:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "5985:710:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6057:6:74", + "nodeType": "YulTypedName", + "src": "6057:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "6065:6:74", + "nodeType": "YulTypedName", + "src": "6065:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6073:3:74", + "nodeType": "YulTypedName", + "src": "6073:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "6081:5:74", + "nodeType": "YulTypedName", + "src": "6081:5:74", + "type": "" + } + ], + "src": "5985:710:74" + }, + { + "body": { + "nativeSrc": "6795:293:74", + "nodeType": "YulBlock", + "src": "6795:293:74", + "statements": [ + { + "body": { + "nativeSrc": "6844:83:74", + "nodeType": "YulBlock", + "src": "6844:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "6846:77:74", + "nodeType": "YulIdentifier", + "src": "6846:77:74" + }, + "nativeSrc": "6846:79:74", + "nodeType": "YulFunctionCall", + "src": "6846:79:74" + }, + "nativeSrc": "6846:79:74", + "nodeType": "YulExpressionStatement", + "src": "6846:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6823:6:74", + "nodeType": "YulIdentifier", + "src": "6823:6:74" + }, + { + "kind": "number", + "nativeSrc": "6831:4:74", + "nodeType": "YulLiteral", + "src": "6831:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6819:3:74", + "nodeType": "YulIdentifier", + "src": "6819:3:74" + }, + "nativeSrc": "6819:17:74", + "nodeType": "YulFunctionCall", + "src": "6819:17:74" + }, + { + "name": "end", + "nativeSrc": "6838:3:74", + "nodeType": "YulIdentifier", + "src": "6838:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6815:3:74", + "nodeType": "YulIdentifier", + "src": "6815:3:74" + }, + "nativeSrc": "6815:27:74", + "nodeType": "YulFunctionCall", + "src": "6815:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6808:6:74", + "nodeType": "YulIdentifier", + "src": "6808:6:74" + }, + "nativeSrc": "6808:35:74", + "nodeType": "YulFunctionCall", + "src": "6808:35:74" + }, + "nativeSrc": "6805:122:74", + "nodeType": "YulIf", + "src": "6805:122:74" + }, + { + "nativeSrc": "6936:34:74", + "nodeType": "YulVariableDeclaration", + "src": "6936:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6963:6:74", + "nodeType": "YulIdentifier", + "src": "6963:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6950:12:74", + "nodeType": "YulIdentifier", + "src": "6950:12:74" + }, + "nativeSrc": "6950:20:74", + "nodeType": "YulFunctionCall", + "src": "6950:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "6940:6:74", + "nodeType": "YulTypedName", + "src": "6940:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6979:103:74", + "nodeType": "YulAssignment", + "src": "6979:103:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "7055:6:74", + "nodeType": "YulIdentifier", + "src": "7055:6:74" + }, + { + "kind": "number", + "nativeSrc": "7063:4:74", + "nodeType": "YulLiteral", + "src": "7063:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7051:3:74", + "nodeType": "YulIdentifier", + "src": "7051:3:74" + }, + "nativeSrc": "7051:17:74", + "nodeType": "YulFunctionCall", + "src": "7051:17:74" + }, + { + "name": "length", + "nativeSrc": "7070:6:74", + "nodeType": "YulIdentifier", + "src": "7070:6:74" + }, + { + "name": "end", + "nativeSrc": "7078:3:74", + "nodeType": "YulIdentifier", + "src": "7078:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "6988:62:74", + "nodeType": "YulIdentifier", + "src": "6988:62:74" + }, + "nativeSrc": "6988:94:74", + "nodeType": "YulFunctionCall", + "src": "6988:94:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "6979:5:74", + "nodeType": "YulIdentifier", + "src": "6979:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "6718:370:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6773:6:74", + "nodeType": "YulTypedName", + "src": "6773:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6781:3:74", + "nodeType": "YulTypedName", + "src": "6781:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "6789:5:74", + "nodeType": "YulTypedName", + "src": "6789:5:74", + "type": "" + } + ], + "src": "6718:370:74" + }, + { + "body": { + "nativeSrc": "7185:229:74", + "nodeType": "YulBlock", + "src": "7185:229:74", + "statements": [ + { + "body": { + "nativeSrc": "7290:22:74", + "nodeType": "YulBlock", + "src": "7290:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7292:16:74", + "nodeType": "YulIdentifier", + "src": "7292:16:74" + }, + "nativeSrc": "7292:18:74", + "nodeType": "YulFunctionCall", + "src": "7292:18:74" + }, + "nativeSrc": "7292:18:74", + "nodeType": "YulExpressionStatement", + "src": "7292:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7262:6:74", + "nodeType": "YulIdentifier", + "src": "7262:6:74" + }, + { + "kind": "number", + "nativeSrc": "7270:18:74", + "nodeType": "YulLiteral", + "src": "7270:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7259:2:74", + "nodeType": "YulIdentifier", + "src": "7259:2:74" + }, + "nativeSrc": "7259:30:74", + "nodeType": "YulFunctionCall", + "src": "7259:30:74" + }, + "nativeSrc": "7256:56:74", + "nodeType": "YulIf", + "src": "7256:56:74" + }, + { + "nativeSrc": "7322:25:74", + "nodeType": "YulAssignment", + "src": "7322:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7334:6:74", + "nodeType": "YulIdentifier", + "src": "7334:6:74" + }, + { + "kind": "number", + "nativeSrc": "7342:4:74", + "nodeType": "YulLiteral", + "src": "7342:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "7330:3:74", + "nodeType": "YulIdentifier", + "src": "7330:3:74" + }, + "nativeSrc": "7330:17:74", + "nodeType": "YulFunctionCall", + "src": "7330:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7322:4:74", + "nodeType": "YulIdentifier", + "src": "7322:4:74" + } + ] + }, + { + "nativeSrc": "7384:23:74", + "nodeType": "YulAssignment", + "src": "7384:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "7396:4:74", + "nodeType": "YulIdentifier", + "src": "7396:4:74" + }, + { + "kind": "number", + "nativeSrc": "7402:4:74", + "nodeType": "YulLiteral", + "src": "7402:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7392:3:74", + "nodeType": "YulIdentifier", + "src": "7392:3:74" + }, + "nativeSrc": "7392:15:74", + "nodeType": "YulFunctionCall", + "src": "7392:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7384:4:74", + "nodeType": "YulIdentifier", + "src": "7384:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "7094:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "7169:6:74", + "nodeType": "YulTypedName", + "src": "7169:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "7180:4:74", + "nodeType": "YulTypedName", + "src": "7180:4:74", + "type": "" + } + ], + "src": "7094:320:74" + }, + { + "body": { + "nativeSrc": "7509:28:74", + "nodeType": "YulBlock", + "src": "7509:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7526:1:74", + "nodeType": "YulLiteral", + "src": "7526:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7529:1:74", + "nodeType": "YulLiteral", + "src": "7529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7519:6:74", + "nodeType": "YulIdentifier", + "src": "7519:6:74" + }, + "nativeSrc": "7519:12:74", + "nodeType": "YulFunctionCall", + "src": "7519:12:74" + }, + "nativeSrc": "7519:12:74", + "nodeType": "YulExpressionStatement", + "src": "7519:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "7420:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7420:117:74" + }, + { + "body": { + "nativeSrc": "7609:241:74", + "nodeType": "YulBlock", + "src": "7609:241:74", + "statements": [ + { + "body": { + "nativeSrc": "7714:22:74", + "nodeType": "YulBlock", + "src": "7714:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7716:16:74", + "nodeType": "YulIdentifier", + "src": "7716:16:74" + }, + "nativeSrc": "7716:18:74", + "nodeType": "YulFunctionCall", + "src": "7716:18:74" + }, + "nativeSrc": "7716:18:74", + "nodeType": "YulExpressionStatement", + "src": "7716:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7686:6:74", + "nodeType": "YulIdentifier", + "src": "7686:6:74" + }, + { + "kind": "number", + "nativeSrc": "7694:18:74", + "nodeType": "YulLiteral", + "src": "7694:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7683:2:74", + "nodeType": "YulIdentifier", + "src": "7683:2:74" + }, + "nativeSrc": "7683:30:74", + "nodeType": "YulFunctionCall", + "src": "7683:30:74" + }, + "nativeSrc": "7680:56:74", + "nodeType": "YulIf", + "src": "7680:56:74" + }, + { + "nativeSrc": "7746:37:74", + "nodeType": "YulAssignment", + "src": "7746:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7776:6:74", + "nodeType": "YulIdentifier", + "src": "7776:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "7754:21:74", + "nodeType": "YulIdentifier", + "src": "7754:21:74" + }, + "nativeSrc": "7754:29:74", + "nodeType": "YulFunctionCall", + "src": "7754:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7746:4:74", + "nodeType": "YulIdentifier", + "src": "7746:4:74" + } + ] + }, + { + "nativeSrc": "7820:23:74", + "nodeType": "YulAssignment", + "src": "7820:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "7832:4:74", + "nodeType": "YulIdentifier", + "src": "7832:4:74" + }, + { + "kind": "number", + "nativeSrc": "7838:4:74", + "nodeType": "YulLiteral", + "src": "7838:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7828:3:74", + "nodeType": "YulIdentifier", + "src": "7828:3:74" + }, + "nativeSrc": "7828:15:74", + "nodeType": "YulFunctionCall", + "src": "7828:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7820:4:74", + "nodeType": "YulIdentifier", + "src": "7820:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "7543:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "7593:6:74", + "nodeType": "YulTypedName", + "src": "7593:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "7604:4:74", + "nodeType": "YulTypedName", + "src": "7604:4:74", + "type": "" + } + ], + "src": "7543:307:74" + }, + { + "body": { + "nativeSrc": "7920:84:74", + "nodeType": "YulBlock", + "src": "7920:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "7944:3:74", + "nodeType": "YulIdentifier", + "src": "7944:3:74" + }, + { + "name": "src", + "nativeSrc": "7949:3:74", + "nodeType": "YulIdentifier", + "src": "7949:3:74" + }, + { + "name": "length", + "nativeSrc": "7954:6:74", + "nodeType": "YulIdentifier", + "src": "7954:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "7931:12:74", + "nodeType": "YulIdentifier", + "src": "7931:12:74" + }, + "nativeSrc": "7931:30:74", + "nodeType": "YulFunctionCall", + "src": "7931:30:74" + }, + "nativeSrc": "7931:30:74", + "nodeType": "YulExpressionStatement", + "src": "7931:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "7981:3:74", + "nodeType": "YulIdentifier", + "src": "7981:3:74" + }, + { + "name": "length", + "nativeSrc": "7986:6:74", + "nodeType": "YulIdentifier", + "src": "7986:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7977:3:74", + "nodeType": "YulIdentifier", + "src": "7977:3:74" + }, + "nativeSrc": "7977:16:74", + "nodeType": "YulFunctionCall", + "src": "7977:16:74" + }, + { + "kind": "number", + "nativeSrc": "7995:1:74", + "nodeType": "YulLiteral", + "src": "7995:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7970:6:74", + "nodeType": "YulIdentifier", + "src": "7970:6:74" + }, + "nativeSrc": "7970:27:74", + "nodeType": "YulFunctionCall", + "src": "7970:27:74" + }, + "nativeSrc": "7970:27:74", + "nodeType": "YulExpressionStatement", + "src": "7970:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "7856:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "7902:3:74", + "nodeType": "YulTypedName", + "src": "7902:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "7907:3:74", + "nodeType": "YulTypedName", + "src": "7907:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "7912:6:74", + "nodeType": "YulTypedName", + "src": "7912:6:74", + "type": "" + } + ], + "src": "7856:148:74" + }, + { + "body": { + "nativeSrc": "8093:340:74", + "nodeType": "YulBlock", + "src": "8093:340:74", + "statements": [ + { + "nativeSrc": "8103:74:74", + "nodeType": "YulAssignment", + "src": "8103:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "8169:6:74", + "nodeType": "YulIdentifier", + "src": "8169:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "8128:40:74", + "nodeType": "YulIdentifier", + "src": "8128:40:74" + }, + "nativeSrc": "8128:48:74", + "nodeType": "YulFunctionCall", + "src": "8128:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "8112:15:74", + "nodeType": "YulIdentifier", + "src": "8112:15:74" + }, + "nativeSrc": "8112:65:74", + "nodeType": "YulFunctionCall", + "src": "8112:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8103:5:74", + "nodeType": "YulIdentifier", + "src": "8103:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8193:5:74", + "nodeType": "YulIdentifier", + "src": "8193:5:74" + }, + { + "name": "length", + "nativeSrc": "8200:6:74", + "nodeType": "YulIdentifier", + "src": "8200:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8186:6:74", + "nodeType": "YulIdentifier", + "src": "8186:6:74" + }, + "nativeSrc": "8186:21:74", + "nodeType": "YulFunctionCall", + "src": "8186:21:74" + }, + "nativeSrc": "8186:21:74", + "nodeType": "YulExpressionStatement", + "src": "8186:21:74" + }, + { + "nativeSrc": "8216:27:74", + "nodeType": "YulVariableDeclaration", + "src": "8216:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8231:5:74", + "nodeType": "YulIdentifier", + "src": "8231:5:74" + }, + { + "kind": "number", + "nativeSrc": "8238:4:74", + "nodeType": "YulLiteral", + "src": "8238:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8227:3:74", + "nodeType": "YulIdentifier", + "src": "8227:3:74" + }, + "nativeSrc": "8227:16:74", + "nodeType": "YulFunctionCall", + "src": "8227:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "8220:3:74", + "nodeType": "YulTypedName", + "src": "8220:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8281:83:74", + "nodeType": "YulBlock", + "src": "8281:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "8283:77:74", + "nodeType": "YulIdentifier", + "src": "8283:77:74" + }, + "nativeSrc": "8283:79:74", + "nodeType": "YulFunctionCall", + "src": "8283:79:74" + }, + "nativeSrc": "8283:79:74", + "nodeType": "YulExpressionStatement", + "src": "8283:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8262:3:74", + "nodeType": "YulIdentifier", + "src": "8262:3:74" + }, + { + "name": "length", + "nativeSrc": "8267:6:74", + "nodeType": "YulIdentifier", + "src": "8267:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8258:3:74", + "nodeType": "YulIdentifier", + "src": "8258:3:74" + }, + "nativeSrc": "8258:16:74", + "nodeType": "YulFunctionCall", + "src": "8258:16:74" + }, + { + "name": "end", + "nativeSrc": "8276:3:74", + "nodeType": "YulIdentifier", + "src": "8276:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8255:2:74", + "nodeType": "YulIdentifier", + "src": "8255:2:74" + }, + "nativeSrc": "8255:25:74", + "nodeType": "YulFunctionCall", + "src": "8255:25:74" + }, + "nativeSrc": "8252:112:74", + "nodeType": "YulIf", + "src": "8252:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "8410:3:74", + "nodeType": "YulIdentifier", + "src": "8410:3:74" + }, + { + "name": "dst", + "nativeSrc": "8415:3:74", + "nodeType": "YulIdentifier", + "src": "8415:3:74" + }, + { + "name": "length", + "nativeSrc": "8420:6:74", + "nodeType": "YulIdentifier", + "src": "8420:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "8373:36:74", + "nodeType": "YulIdentifier", + "src": "8373:36:74" + }, + "nativeSrc": "8373:54:74", + "nodeType": "YulFunctionCall", + "src": "8373:54:74" + }, + "nativeSrc": "8373:54:74", + "nodeType": "YulExpressionStatement", + "src": "8373:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8010:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "8066:3:74", + "nodeType": "YulTypedName", + "src": "8066:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8071:6:74", + "nodeType": "YulTypedName", + "src": "8071:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8079:3:74", + "nodeType": "YulTypedName", + "src": "8079:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8087:5:74", + "nodeType": "YulTypedName", + "src": "8087:5:74", + "type": "" + } + ], + "src": "8010:423:74" + }, + { + "body": { + "nativeSrc": "8513:277:74", + "nodeType": "YulBlock", + "src": "8513:277:74", + "statements": [ + { + "body": { + "nativeSrc": "8562:83:74", + "nodeType": "YulBlock", + "src": "8562:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "8564:77:74", + "nodeType": "YulIdentifier", + "src": "8564:77:74" + }, + "nativeSrc": "8564:79:74", + "nodeType": "YulFunctionCall", + "src": "8564:79:74" + }, + "nativeSrc": "8564:79:74", + "nodeType": "YulExpressionStatement", + "src": "8564:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8541:6:74", + "nodeType": "YulIdentifier", + "src": "8541:6:74" + }, + { + "kind": "number", + "nativeSrc": "8549:4:74", + "nodeType": "YulLiteral", + "src": "8549:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8537:3:74", + "nodeType": "YulIdentifier", + "src": "8537:3:74" + }, + "nativeSrc": "8537:17:74", + "nodeType": "YulFunctionCall", + "src": "8537:17:74" + }, + { + "name": "end", + "nativeSrc": "8556:3:74", + "nodeType": "YulIdentifier", + "src": "8556:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8533:3:74", + "nodeType": "YulIdentifier", + "src": "8533:3:74" + }, + "nativeSrc": "8533:27:74", + "nodeType": "YulFunctionCall", + "src": "8533:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8526:6:74", + "nodeType": "YulIdentifier", + "src": "8526:6:74" + }, + "nativeSrc": "8526:35:74", + "nodeType": "YulFunctionCall", + "src": "8526:35:74" + }, + "nativeSrc": "8523:122:74", + "nodeType": "YulIf", + "src": "8523:122:74" + }, + { + "nativeSrc": "8654:34:74", + "nodeType": "YulVariableDeclaration", + "src": "8654:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8681:6:74", + "nodeType": "YulIdentifier", + "src": "8681:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8668:12:74", + "nodeType": "YulIdentifier", + "src": "8668:12:74" + }, + "nativeSrc": "8668:20:74", + "nodeType": "YulFunctionCall", + "src": "8668:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "8658:6:74", + "nodeType": "YulTypedName", + "src": "8658:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8697:87:74", + "nodeType": "YulAssignment", + "src": "8697:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8757:6:74", + "nodeType": "YulIdentifier", + "src": "8757:6:74" + }, + { + "kind": "number", + "nativeSrc": "8765:4:74", + "nodeType": "YulLiteral", + "src": "8765:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8753:3:74", + "nodeType": "YulIdentifier", + "src": "8753:3:74" + }, + "nativeSrc": "8753:17:74", + "nodeType": "YulFunctionCall", + "src": "8753:17:74" + }, + { + "name": "length", + "nativeSrc": "8772:6:74", + "nodeType": "YulIdentifier", + "src": "8772:6:74" + }, + { + "name": "end", + "nativeSrc": "8780:3:74", + "nodeType": "YulIdentifier", + "src": "8780:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8706:46:74", + "nodeType": "YulIdentifier", + "src": "8706:46:74" + }, + "nativeSrc": "8706:78:74", + "nodeType": "YulFunctionCall", + "src": "8706:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8697:5:74", + "nodeType": "YulIdentifier", + "src": "8697:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "8452:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8491:6:74", + "nodeType": "YulTypedName", + "src": "8491:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8499:3:74", + "nodeType": "YulTypedName", + "src": "8499:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8507:5:74", + "nodeType": "YulTypedName", + "src": "8507:5:74", + "type": "" + } + ], + "src": "8452:338:74" + }, + { + "body": { + "nativeSrc": "8922:831:74", + "nodeType": "YulBlock", + "src": "8922:831:74", + "statements": [ + { + "nativeSrc": "8932:99:74", + "nodeType": "YulAssignment", + "src": "8932:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "9023:6:74", + "nodeType": "YulIdentifier", + "src": "9023:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "8957:65:74", + "nodeType": "YulIdentifier", + "src": "8957:65:74" + }, + "nativeSrc": "8957:73:74", + "nodeType": "YulFunctionCall", + "src": "8957:73:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "8941:15:74", + "nodeType": "YulIdentifier", + "src": "8941:15:74" + }, + "nativeSrc": "8941:90:74", + "nodeType": "YulFunctionCall", + "src": "8941:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8932:5:74", + "nodeType": "YulIdentifier", + "src": "8932:5:74" + } + ] + }, + { + "nativeSrc": "9040:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9040:16:74", + "value": { + "name": "array", + "nativeSrc": "9051:5:74", + "nodeType": "YulIdentifier", + "src": "9051:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "9044:3:74", + "nodeType": "YulTypedName", + "src": "9044:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "9073:5:74", + "nodeType": "YulIdentifier", + "src": "9073:5:74" + }, + { + "name": "length", + "nativeSrc": "9080:6:74", + "nodeType": "YulIdentifier", + "src": "9080:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9066:6:74", + "nodeType": "YulIdentifier", + "src": "9066:6:74" + }, + "nativeSrc": "9066:21:74", + "nodeType": "YulFunctionCall", + "src": "9066:21:74" + }, + "nativeSrc": "9066:21:74", + "nodeType": "YulExpressionStatement", + "src": "9066:21:74" + }, + { + "nativeSrc": "9096:23:74", + "nodeType": "YulAssignment", + "src": "9096:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "9107:5:74", + "nodeType": "YulIdentifier", + "src": "9107:5:74" + }, + { + "kind": "number", + "nativeSrc": "9114:4:74", + "nodeType": "YulLiteral", + "src": "9114:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9103:3:74", + "nodeType": "YulIdentifier", + "src": "9103:3:74" + }, + "nativeSrc": "9103:16:74", + "nodeType": "YulFunctionCall", + "src": "9103:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "9096:3:74", + "nodeType": "YulIdentifier", + "src": "9096:3:74" + } + ] + }, + { + "nativeSrc": "9129:44:74", + "nodeType": "YulVariableDeclaration", + "src": "9129:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9147:6:74", + "nodeType": "YulIdentifier", + "src": "9147:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "9159:6:74", + "nodeType": "YulIdentifier", + "src": "9159:6:74" + }, + { + "kind": "number", + "nativeSrc": "9167:4:74", + "nodeType": "YulLiteral", + "src": "9167:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "9155:3:74", + "nodeType": "YulIdentifier", + "src": "9155:3:74" + }, + "nativeSrc": "9155:17:74", + "nodeType": "YulFunctionCall", + "src": "9155:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9143:3:74", + "nodeType": "YulIdentifier", + "src": "9143:3:74" + }, + "nativeSrc": "9143:30:74", + "nodeType": "YulFunctionCall", + "src": "9143:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "9133:6:74", + "nodeType": "YulTypedName", + "src": "9133:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9201:103:74", + "nodeType": "YulBlock", + "src": "9201:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "9215:77:74", + "nodeType": "YulIdentifier", + "src": "9215:77:74" + }, + "nativeSrc": "9215:79:74", + "nodeType": "YulFunctionCall", + "src": "9215:79:74" + }, + "nativeSrc": "9215:79:74", + "nodeType": "YulExpressionStatement", + "src": "9215:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "9188:6:74", + "nodeType": "YulIdentifier", + "src": "9188:6:74" + }, + { + "name": "end", + "nativeSrc": "9196:3:74", + "nodeType": "YulIdentifier", + "src": "9196:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9185:2:74", + "nodeType": "YulIdentifier", + "src": "9185:2:74" + }, + "nativeSrc": "9185:15:74", + "nodeType": "YulFunctionCall", + "src": "9185:15:74" + }, + "nativeSrc": "9182:122:74", + "nodeType": "YulIf", + "src": "9182:122:74" + }, + { + "body": { + "nativeSrc": "9389:358:74", + "nodeType": "YulBlock", + "src": "9389:358:74", + "statements": [ + { + "nativeSrc": "9404:36:74", + "nodeType": "YulVariableDeclaration", + "src": "9404:36:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "9436:3:74", + "nodeType": "YulIdentifier", + "src": "9436:3:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "9423:12:74", + "nodeType": "YulIdentifier", + "src": "9423:12:74" + }, + "nativeSrc": "9423:17:74", + "nodeType": "YulFunctionCall", + "src": "9423:17:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "9408:11:74", + "nodeType": "YulTypedName", + "src": "9408:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9492:83:74", + "nodeType": "YulBlock", + "src": "9492:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "9494:77:74", + "nodeType": "YulIdentifier", + "src": "9494:77:74" + }, + "nativeSrc": "9494:79:74", + "nodeType": "YulFunctionCall", + "src": "9494:79:74" + }, + "nativeSrc": "9494:79:74", + "nodeType": "YulExpressionStatement", + "src": "9494:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "9459:11:74", + "nodeType": "YulIdentifier", + "src": "9459:11:74" + }, + { + "kind": "number", + "nativeSrc": "9472:18:74", + "nodeType": "YulLiteral", + "src": "9472:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9456:2:74", + "nodeType": "YulIdentifier", + "src": "9456:2:74" + }, + "nativeSrc": "9456:35:74", + "nodeType": "YulFunctionCall", + "src": "9456:35:74" + }, + "nativeSrc": "9453:122:74", + "nodeType": "YulIf", + "src": "9453:122:74" + }, + { + "nativeSrc": "9588:42:74", + "nodeType": "YulVariableDeclaration", + "src": "9588:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9610:6:74", + "nodeType": "YulIdentifier", + "src": "9610:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "9618:11:74", + "nodeType": "YulIdentifier", + "src": "9618:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9606:3:74", + "nodeType": "YulIdentifier", + "src": "9606:3:74" + }, + "nativeSrc": "9606:24:74", + "nodeType": "YulFunctionCall", + "src": "9606:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "9592:10:74", + "nodeType": "YulTypedName", + "src": "9592:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "9651:3:74", + "nodeType": "YulIdentifier", + "src": "9651:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "9686:10:74", + "nodeType": "YulIdentifier", + "src": "9686:10:74" + }, + { + "name": "end", + "nativeSrc": "9698:3:74", + "nodeType": "YulIdentifier", + "src": "9698:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "9656:29:74", + "nodeType": "YulIdentifier", + "src": "9656:29:74" + }, + "nativeSrc": "9656:46:74", + "nodeType": "YulFunctionCall", + "src": "9656:46:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9644:6:74", + "nodeType": "YulIdentifier", + "src": "9644:6:74" + }, + "nativeSrc": "9644:59:74", + "nodeType": "YulFunctionCall", + "src": "9644:59:74" + }, + "nativeSrc": "9644:59:74", + "nodeType": "YulExpressionStatement", + "src": "9644:59:74" + }, + { + "nativeSrc": "9716:21:74", + "nodeType": "YulAssignment", + "src": "9716:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "9727:3:74", + "nodeType": "YulIdentifier", + "src": "9727:3:74" + }, + { + "kind": "number", + "nativeSrc": "9732:4:74", + "nodeType": "YulLiteral", + "src": "9732:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9723:3:74", + "nodeType": "YulIdentifier", + "src": "9723:3:74" + }, + "nativeSrc": "9723:14:74", + "nodeType": "YulFunctionCall", + "src": "9723:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "9716:3:74", + "nodeType": "YulIdentifier", + "src": "9716:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "9342:3:74", + "nodeType": "YulIdentifier", + "src": "9342:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "9347:6:74", + "nodeType": "YulIdentifier", + "src": "9347:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "9339:2:74", + "nodeType": "YulIdentifier", + "src": "9339:2:74" + }, + "nativeSrc": "9339:15:74", + "nodeType": "YulFunctionCall", + "src": "9339:15:74" + }, + "nativeSrc": "9313:434:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "9355:25:74", + "nodeType": "YulBlock", + "src": "9355:25:74", + "statements": [ + { + "nativeSrc": "9357:21:74", + "nodeType": "YulAssignment", + "src": "9357:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "9368:3:74", + "nodeType": "YulIdentifier", + "src": "9368:3:74" + }, + { + "kind": "number", + "nativeSrc": "9373:4:74", + "nodeType": "YulLiteral", + "src": "9373:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9364:3:74", + "nodeType": "YulIdentifier", + "src": "9364:3:74" + }, + "nativeSrc": "9364:14:74", + "nodeType": "YulFunctionCall", + "src": "9364:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "9357:3:74", + "nodeType": "YulIdentifier", + "src": "9357:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "9317:21:74", + "nodeType": "YulBlock", + "src": "9317:21:74", + "statements": [ + { + "nativeSrc": "9319:17:74", + "nodeType": "YulVariableDeclaration", + "src": "9319:17:74", + "value": { + "name": "offset", + "nativeSrc": "9330:6:74", + "nodeType": "YulIdentifier", + "src": "9330:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "9323:3:74", + "nodeType": "YulTypedName", + "src": "9323:3:74", + "type": "" + } + ] + } + ] + }, + "src": "9313:434:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "8811:942:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8892:6:74", + "nodeType": "YulTypedName", + "src": "8892:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8900:6:74", + "nodeType": "YulTypedName", + "src": "8900:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8908:3:74", + "nodeType": "YulTypedName", + "src": "8908:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8916:5:74", + "nodeType": "YulTypedName", + "src": "8916:5:74", + "type": "" + } + ], + "src": "8811:942:74" + }, + { + "body": { + "nativeSrc": "9860:302:74", + "nodeType": "YulBlock", + "src": "9860:302:74", + "statements": [ + { + "body": { + "nativeSrc": "9909:83:74", + "nodeType": "YulBlock", + "src": "9909:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "9911:77:74", + "nodeType": "YulIdentifier", + "src": "9911:77:74" + }, + "nativeSrc": "9911:79:74", + "nodeType": "YulFunctionCall", + "src": "9911:79:74" + }, + "nativeSrc": "9911:79:74", + "nodeType": "YulExpressionStatement", + "src": "9911:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9888:6:74", + "nodeType": "YulIdentifier", + "src": "9888:6:74" + }, + { + "kind": "number", + "nativeSrc": "9896:4:74", + "nodeType": "YulLiteral", + "src": "9896:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9884:3:74", + "nodeType": "YulIdentifier", + "src": "9884:3:74" + }, + "nativeSrc": "9884:17:74", + "nodeType": "YulFunctionCall", + "src": "9884:17:74" + }, + { + "name": "end", + "nativeSrc": "9903:3:74", + "nodeType": "YulIdentifier", + "src": "9903:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9880:3:74", + "nodeType": "YulIdentifier", + "src": "9880:3:74" + }, + "nativeSrc": "9880:27:74", + "nodeType": "YulFunctionCall", + "src": "9880:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "9873:6:74", + "nodeType": "YulIdentifier", + "src": "9873:6:74" + }, + "nativeSrc": "9873:35:74", + "nodeType": "YulFunctionCall", + "src": "9873:35:74" + }, + "nativeSrc": "9870:122:74", + "nodeType": "YulIf", + "src": "9870:122:74" + }, + { + "nativeSrc": "10001:34:74", + "nodeType": "YulVariableDeclaration", + "src": "10001:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10028:6:74", + "nodeType": "YulIdentifier", + "src": "10028:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "10015:12:74", + "nodeType": "YulIdentifier", + "src": "10015:12:74" + }, + "nativeSrc": "10015:20:74", + "nodeType": "YulFunctionCall", + "src": "10015:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "10005:6:74", + "nodeType": "YulTypedName", + "src": "10005:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10044:112:74", + "nodeType": "YulAssignment", + "src": "10044:112:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10129:6:74", + "nodeType": "YulIdentifier", + "src": "10129:6:74" + }, + { + "kind": "number", + "nativeSrc": "10137:4:74", + "nodeType": "YulLiteral", + "src": "10137:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10125:3:74", + "nodeType": "YulIdentifier", + "src": "10125:3:74" + }, + "nativeSrc": "10125:17:74", + "nodeType": "YulFunctionCall", + "src": "10125:17:74" + }, + { + "name": "length", + "nativeSrc": "10144:6:74", + "nodeType": "YulIdentifier", + "src": "10144:6:74" + }, + { + "name": "end", + "nativeSrc": "10152:3:74", + "nodeType": "YulIdentifier", + "src": "10152:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "10053:71:74", + "nodeType": "YulIdentifier", + "src": "10053:71:74" + }, + "nativeSrc": "10053:103:74", + "nodeType": "YulFunctionCall", + "src": "10053:103:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "10044:5:74", + "nodeType": "YulIdentifier", + "src": "10044:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "9774:388:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "9838:6:74", + "nodeType": "YulTypedName", + "src": "9838:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "9846:3:74", + "nodeType": "YulTypedName", + "src": "9846:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "9854:5:74", + "nodeType": "YulTypedName", + "src": "9854:5:74", + "type": "" + } + ], + "src": "9774:388:74" + }, + { + "body": { + "nativeSrc": "10213:32:74", + "nodeType": "YulBlock", + "src": "10213:32:74", + "statements": [ + { + "nativeSrc": "10223:16:74", + "nodeType": "YulAssignment", + "src": "10223:16:74", + "value": { + "name": "value", + "nativeSrc": "10234:5:74", + "nodeType": "YulIdentifier", + "src": "10234:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "10223:7:74", + "nodeType": "YulIdentifier", + "src": "10223:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "10168:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10195:5:74", + "nodeType": "YulTypedName", + "src": "10195:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "10205:7:74", + "nodeType": "YulTypedName", + "src": "10205:7:74", + "type": "" + } + ], + "src": "10168:77:74" + }, + { + "body": { + "nativeSrc": "10294:79:74", + "nodeType": "YulBlock", + "src": "10294:79:74", + "statements": [ + { + "body": { + "nativeSrc": "10351:16:74", + "nodeType": "YulBlock", + "src": "10351:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10360:1:74", + "nodeType": "YulLiteral", + "src": "10360:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10363:1:74", + "nodeType": "YulLiteral", + "src": "10363:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "10353:6:74", + "nodeType": "YulIdentifier", + "src": "10353:6:74" + }, + "nativeSrc": "10353:12:74", + "nodeType": "YulFunctionCall", + "src": "10353:12:74" + }, + "nativeSrc": "10353:12:74", + "nodeType": "YulExpressionStatement", + "src": "10353:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10317:5:74", + "nodeType": "YulIdentifier", + "src": "10317:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10342:5:74", + "nodeType": "YulIdentifier", + "src": "10342:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "10324:17:74", + "nodeType": "YulIdentifier", + "src": "10324:17:74" + }, + "nativeSrc": "10324:24:74", + "nodeType": "YulFunctionCall", + "src": "10324:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "10314:2:74", + "nodeType": "YulIdentifier", + "src": "10314:2:74" + }, + "nativeSrc": "10314:35:74", + "nodeType": "YulFunctionCall", + "src": "10314:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "10307:6:74", + "nodeType": "YulIdentifier", + "src": "10307:6:74" + }, + "nativeSrc": "10307:43:74", + "nodeType": "YulFunctionCall", + "src": "10307:43:74" + }, + "nativeSrc": "10304:63:74", + "nodeType": "YulIf", + "src": "10304:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "10251:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10287:5:74", + "nodeType": "YulTypedName", + "src": "10287:5:74", + "type": "" + } + ], + "src": "10251:122:74" + }, + { + "body": { + "nativeSrc": "10431:87:74", + "nodeType": "YulBlock", + "src": "10431:87:74", + "statements": [ + { + "nativeSrc": "10441:29:74", + "nodeType": "YulAssignment", + "src": "10441:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10463:6:74", + "nodeType": "YulIdentifier", + "src": "10463:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "10450:12:74", + "nodeType": "YulIdentifier", + "src": "10450:12:74" + }, + "nativeSrc": "10450:20:74", + "nodeType": "YulFunctionCall", + "src": "10450:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "10441:5:74", + "nodeType": "YulIdentifier", + "src": "10441:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "10506:5:74", + "nodeType": "YulIdentifier", + "src": "10506:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "10479:26:74", + "nodeType": "YulIdentifier", + "src": "10479:26:74" + }, + "nativeSrc": "10479:33:74", + "nodeType": "YulFunctionCall", + "src": "10479:33:74" + }, + "nativeSrc": "10479:33:74", + "nodeType": "YulExpressionStatement", + "src": "10479:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "10379:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "10409:6:74", + "nodeType": "YulTypedName", + "src": "10409:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "10417:3:74", + "nodeType": "YulTypedName", + "src": "10417:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "10425:5:74", + "nodeType": "YulTypedName", + "src": "10425:5:74", + "type": "" + } + ], + "src": "10379:139:74" + }, + { + "body": { + "nativeSrc": "10726:1325:74", + "nodeType": "YulBlock", + "src": "10726:1325:74", + "statements": [ + { + "body": { + "nativeSrc": "10773:83:74", + "nodeType": "YulBlock", + "src": "10773:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10775:77:74", + "nodeType": "YulIdentifier", + "src": "10775:77:74" + }, + "nativeSrc": "10775:79:74", + "nodeType": "YulFunctionCall", + "src": "10775:79:74" + }, + "nativeSrc": "10775:79:74", + "nodeType": "YulExpressionStatement", + "src": "10775:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10747:7:74", + "nodeType": "YulIdentifier", + "src": "10747:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10756:9:74", + "nodeType": "YulIdentifier", + "src": "10756:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10743:3:74", + "nodeType": "YulIdentifier", + "src": "10743:3:74" + }, + "nativeSrc": "10743:23:74", + "nodeType": "YulFunctionCall", + "src": "10743:23:74" + }, + { + "kind": "number", + "nativeSrc": "10768:3:74", + "nodeType": "YulLiteral", + "src": "10768:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10739:3:74", + "nodeType": "YulIdentifier", + "src": "10739:3:74" + }, + "nativeSrc": "10739:33:74", + "nodeType": "YulFunctionCall", + "src": "10739:33:74" + }, + "nativeSrc": "10736:120:74", + "nodeType": "YulIf", + "src": "10736:120:74" + }, + { + "nativeSrc": "10866:117:74", + "nodeType": "YulBlock", + "src": "10866:117:74", + "statements": [ + { + "nativeSrc": "10881:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10881:15:74", + "value": { + "kind": "number", + "nativeSrc": "10895:1:74", + "nodeType": "YulLiteral", + "src": "10895:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10885:6:74", + "nodeType": "YulTypedName", + "src": "10885:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10910:63:74", + "nodeType": "YulAssignment", + "src": "10910:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10945:9:74", + "nodeType": "YulIdentifier", + "src": "10945:9:74" + }, + { + "name": "offset", + "nativeSrc": "10956:6:74", + "nodeType": "YulIdentifier", + "src": "10956:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10941:3:74", + "nodeType": "YulIdentifier", + "src": "10941:3:74" + }, + "nativeSrc": "10941:22:74", + "nodeType": "YulFunctionCall", + "src": "10941:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10965:7:74", + "nodeType": "YulIdentifier", + "src": "10965:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "10920:20:74", + "nodeType": "YulIdentifier", + "src": "10920:20:74" + }, + "nativeSrc": "10920:53:74", + "nodeType": "YulFunctionCall", + "src": "10920:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10910:6:74", + "nodeType": "YulIdentifier", + "src": "10910:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "10993:303:74", + "nodeType": "YulBlock", + "src": "10993:303:74", + "statements": [ + { + "nativeSrc": "11008:46:74", + "nodeType": "YulVariableDeclaration", + "src": "11008:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11039:9:74", + "nodeType": "YulIdentifier", + "src": "11039:9:74" + }, + { + "kind": "number", + "nativeSrc": "11050:2:74", + "nodeType": "YulLiteral", + "src": "11050:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11035:3:74", + "nodeType": "YulIdentifier", + "src": "11035:3:74" + }, + "nativeSrc": "11035:18:74", + "nodeType": "YulFunctionCall", + "src": "11035:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11022:12:74", + "nodeType": "YulIdentifier", + "src": "11022:12:74" + }, + "nativeSrc": "11022:32:74", + "nodeType": "YulFunctionCall", + "src": "11022:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11012:6:74", + "nodeType": "YulTypedName", + "src": "11012:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "11101:83:74", + "nodeType": "YulBlock", + "src": "11101:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "11103:77:74", + "nodeType": "YulIdentifier", + "src": "11103:77:74" + }, + "nativeSrc": "11103:79:74", + "nodeType": "YulFunctionCall", + "src": "11103:79:74" + }, + "nativeSrc": "11103:79:74", + "nodeType": "YulExpressionStatement", + "src": "11103:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11073:6:74", + "nodeType": "YulIdentifier", + "src": "11073:6:74" + }, + { + "kind": "number", + "nativeSrc": "11081:18:74", + "nodeType": "YulLiteral", + "src": "11081:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "11070:2:74", + "nodeType": "YulIdentifier", + "src": "11070:2:74" + }, + "nativeSrc": "11070:30:74", + "nodeType": "YulFunctionCall", + "src": "11070:30:74" + }, + "nativeSrc": "11067:117:74", + "nodeType": "YulIf", + "src": "11067:117:74" + }, + { + "nativeSrc": "11198:88:74", + "nodeType": "YulAssignment", + "src": "11198:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11258:9:74", + "nodeType": "YulIdentifier", + "src": "11258:9:74" + }, + { + "name": "offset", + "nativeSrc": "11269:6:74", + "nodeType": "YulIdentifier", + "src": "11269:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11254:3:74", + "nodeType": "YulIdentifier", + "src": "11254:3:74" + }, + "nativeSrc": "11254:22:74", + "nodeType": "YulFunctionCall", + "src": "11254:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11278:7:74", + "nodeType": "YulIdentifier", + "src": "11278:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "11208:45:74", + "nodeType": "YulIdentifier", + "src": "11208:45:74" + }, + "nativeSrc": "11208:78:74", + "nodeType": "YulFunctionCall", + "src": "11208:78:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "11198:6:74", + "nodeType": "YulIdentifier", + "src": "11198:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11306:312:74", + "nodeType": "YulBlock", + "src": "11306:312:74", + "statements": [ + { + "nativeSrc": "11321:46:74", + "nodeType": "YulVariableDeclaration", + "src": "11321:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11352:9:74", + "nodeType": "YulIdentifier", + "src": "11352:9:74" + }, + { + "kind": "number", + "nativeSrc": "11363:2:74", + "nodeType": "YulLiteral", + "src": "11363:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11348:3:74", + "nodeType": "YulIdentifier", + "src": "11348:3:74" + }, + "nativeSrc": "11348:18:74", + "nodeType": "YulFunctionCall", + "src": "11348:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11335:12:74", + "nodeType": "YulIdentifier", + "src": "11335:12:74" + }, + "nativeSrc": "11335:32:74", + "nodeType": "YulFunctionCall", + "src": "11335:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11325:6:74", + "nodeType": "YulTypedName", + "src": "11325:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "11414:83:74", + "nodeType": "YulBlock", + "src": "11414:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "11416:77:74", + "nodeType": "YulIdentifier", + "src": "11416:77:74" + }, + "nativeSrc": "11416:79:74", + "nodeType": "YulFunctionCall", + "src": "11416:79:74" + }, + "nativeSrc": "11416:79:74", + "nodeType": "YulExpressionStatement", + "src": "11416:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11386:6:74", + "nodeType": "YulIdentifier", + "src": "11386:6:74" + }, + { + "kind": "number", + "nativeSrc": "11394:18:74", + "nodeType": "YulLiteral", + "src": "11394:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "11383:2:74", + "nodeType": "YulIdentifier", + "src": "11383:2:74" + }, + "nativeSrc": "11383:30:74", + "nodeType": "YulFunctionCall", + "src": "11383:30:74" + }, + "nativeSrc": "11380:117:74", + "nodeType": "YulIf", + "src": "11380:117:74" + }, + { + "nativeSrc": "11511:97:74", + "nodeType": "YulAssignment", + "src": "11511:97:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11580:9:74", + "nodeType": "YulIdentifier", + "src": "11580:9:74" + }, + { + "name": "offset", + "nativeSrc": "11591:6:74", + "nodeType": "YulIdentifier", + "src": "11591:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11576:3:74", + "nodeType": "YulIdentifier", + "src": "11576:3:74" + }, + "nativeSrc": "11576:22:74", + "nodeType": "YulFunctionCall", + "src": "11576:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11600:7:74", + "nodeType": "YulIdentifier", + "src": "11600:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "11521:54:74", + "nodeType": "YulIdentifier", + "src": "11521:54:74" + }, + "nativeSrc": "11521:87:74", + "nodeType": "YulFunctionCall", + "src": "11521:87:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "11511:6:74", + "nodeType": "YulIdentifier", + "src": "11511:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11628:287:74", + "nodeType": "YulBlock", + "src": "11628:287:74", + "statements": [ + { + "nativeSrc": "11643:46:74", + "nodeType": "YulVariableDeclaration", + "src": "11643:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11674:9:74", + "nodeType": "YulIdentifier", + "src": "11674:9:74" + }, + { + "kind": "number", + "nativeSrc": "11685:2:74", + "nodeType": "YulLiteral", + "src": "11685:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11670:3:74", + "nodeType": "YulIdentifier", + "src": "11670:3:74" + }, + "nativeSrc": "11670:18:74", + "nodeType": "YulFunctionCall", + "src": "11670:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11657:12:74", + "nodeType": "YulIdentifier", + "src": "11657:12:74" + }, + "nativeSrc": "11657:32:74", + "nodeType": "YulFunctionCall", + "src": "11657:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11647:6:74", + "nodeType": "YulTypedName", + "src": "11647:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "11736:83:74", + "nodeType": "YulBlock", + "src": "11736:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "11738:77:74", + "nodeType": "YulIdentifier", + "src": "11738:77:74" + }, + "nativeSrc": "11738:79:74", + "nodeType": "YulFunctionCall", + "src": "11738:79:74" + }, + "nativeSrc": "11738:79:74", + "nodeType": "YulExpressionStatement", + "src": "11738:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11708:6:74", + "nodeType": "YulIdentifier", + "src": "11708:6:74" + }, + { + "kind": "number", + "nativeSrc": "11716:18:74", + "nodeType": "YulLiteral", + "src": "11716:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "11705:2:74", + "nodeType": "YulIdentifier", + "src": "11705:2:74" + }, + "nativeSrc": "11705:30:74", + "nodeType": "YulFunctionCall", + "src": "11705:30:74" + }, + "nativeSrc": "11702:117:74", + "nodeType": "YulIf", + "src": "11702:117:74" + }, + { + "nativeSrc": "11833:72:74", + "nodeType": "YulAssignment", + "src": "11833:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11877:9:74", + "nodeType": "YulIdentifier", + "src": "11877:9:74" + }, + { + "name": "offset", + "nativeSrc": "11888:6:74", + "nodeType": "YulIdentifier", + "src": "11888:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11873:3:74", + "nodeType": "YulIdentifier", + "src": "11873:3:74" + }, + "nativeSrc": "11873:22:74", + "nodeType": "YulFunctionCall", + "src": "11873:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11897:7:74", + "nodeType": "YulIdentifier", + "src": "11897:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "11843:29:74", + "nodeType": "YulIdentifier", + "src": "11843:29:74" + }, + "nativeSrc": "11843:62:74", + "nodeType": "YulFunctionCall", + "src": "11843:62:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "11833:6:74", + "nodeType": "YulIdentifier", + "src": "11833:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11925:119:74", + "nodeType": "YulBlock", + "src": "11925:119:74", + "statements": [ + { + "nativeSrc": "11940:17:74", + "nodeType": "YulVariableDeclaration", + "src": "11940:17:74", + "value": { + "kind": "number", + "nativeSrc": "11954:3:74", + "nodeType": "YulLiteral", + "src": "11954:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11944:6:74", + "nodeType": "YulTypedName", + "src": "11944:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11971:63:74", + "nodeType": "YulAssignment", + "src": "11971:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12006:9:74", + "nodeType": "YulIdentifier", + "src": "12006:9:74" + }, + { + "name": "offset", + "nativeSrc": "12017:6:74", + "nodeType": "YulIdentifier", + "src": "12017:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12002:3:74", + "nodeType": "YulIdentifier", + "src": "12002:3:74" + }, + "nativeSrc": "12002:22:74", + "nodeType": "YulFunctionCall", + "src": "12002:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12026:7:74", + "nodeType": "YulIdentifier", + "src": "12026:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "11981:20:74", + "nodeType": "YulIdentifier", + "src": "11981:20:74" + }, + "nativeSrc": "11981:53:74", + "nodeType": "YulFunctionCall", + "src": "11981:53:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "11971:6:74", + "nodeType": "YulIdentifier", + "src": "11971:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptrt_uint256", + "nativeSrc": "10524:1527:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10664:9:74", + "nodeType": "YulTypedName", + "src": "10664:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10675:7:74", + "nodeType": "YulTypedName", + "src": "10675:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10687:6:74", + "nodeType": "YulTypedName", + "src": "10687:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "10695:6:74", + "nodeType": "YulTypedName", + "src": "10695:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "10703:6:74", + "nodeType": "YulTypedName", + "src": "10703:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "10711:6:74", + "nodeType": "YulTypedName", + "src": "10711:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "10719:6:74", + "nodeType": "YulTypedName", + "src": "10719:6:74", + "type": "" + } + ], + "src": "10524:1527:74" + }, + { + "body": { + "nativeSrc": "12140:40:74", + "nodeType": "YulBlock", + "src": "12140:40:74", + "statements": [ + { + "nativeSrc": "12151:22:74", + "nodeType": "YulAssignment", + "src": "12151:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12167:5:74", + "nodeType": "YulIdentifier", + "src": "12167:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "12161:5:74", + "nodeType": "YulIdentifier", + "src": "12161:5:74" + }, + "nativeSrc": "12161:12:74", + "nodeType": "YulFunctionCall", + "src": "12161:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "12151:6:74", + "nodeType": "YulIdentifier", + "src": "12151:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "12057:123:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12123:5:74", + "nodeType": "YulTypedName", + "src": "12123:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "12133:6:74", + "nodeType": "YulTypedName", + "src": "12133:6:74", + "type": "" + } + ], + "src": "12057:123:74" + }, + { + "body": { + "nativeSrc": "12306:73:74", + "nodeType": "YulBlock", + "src": "12306:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12323:3:74", + "nodeType": "YulIdentifier", + "src": "12323:3:74" + }, + { + "name": "length", + "nativeSrc": "12328:6:74", + "nodeType": "YulIdentifier", + "src": "12328:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12316:6:74", + "nodeType": "YulIdentifier", + "src": "12316:6:74" + }, + "nativeSrc": "12316:19:74", + "nodeType": "YulFunctionCall", + "src": "12316:19:74" + }, + "nativeSrc": "12316:19:74", + "nodeType": "YulExpressionStatement", + "src": "12316:19:74" + }, + { + "nativeSrc": "12344:29:74", + "nodeType": "YulAssignment", + "src": "12344:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12363:3:74", + "nodeType": "YulIdentifier", + "src": "12363:3:74" + }, + { + "kind": "number", + "nativeSrc": "12368:4:74", + "nodeType": "YulLiteral", + "src": "12368:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12359:3:74", + "nodeType": "YulIdentifier", + "src": "12359:3:74" + }, + "nativeSrc": "12359:14:74", + "nodeType": "YulFunctionCall", + "src": "12359:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "12344:11:74", + "nodeType": "YulIdentifier", + "src": "12344:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "12186:193:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "12278:3:74", + "nodeType": "YulTypedName", + "src": "12278:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "12283:6:74", + "nodeType": "YulTypedName", + "src": "12283:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "12294:11:74", + "nodeType": "YulTypedName", + "src": "12294:11:74", + "type": "" + } + ], + "src": "12186:193:74" + }, + { + "body": { + "nativeSrc": "12466:60:74", + "nodeType": "YulBlock", + "src": "12466:60:74", + "statements": [ + { + "nativeSrc": "12476:11:74", + "nodeType": "YulAssignment", + "src": "12476:11:74", + "value": { + "name": "ptr", + "nativeSrc": "12484:3:74", + "nodeType": "YulIdentifier", + "src": "12484:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "12476:4:74", + "nodeType": "YulIdentifier", + "src": "12476:4:74" + } + ] + }, + { + "nativeSrc": "12497:22:74", + "nodeType": "YulAssignment", + "src": "12497:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "12509:3:74", + "nodeType": "YulIdentifier", + "src": "12509:3:74" + }, + { + "kind": "number", + "nativeSrc": "12514:4:74", + "nodeType": "YulLiteral", + "src": "12514:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12505:3:74", + "nodeType": "YulIdentifier", + "src": "12505:3:74" + }, + "nativeSrc": "12505:14:74", + "nodeType": "YulFunctionCall", + "src": "12505:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "12497:4:74", + "nodeType": "YulIdentifier", + "src": "12497:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "12385:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "12453:3:74", + "nodeType": "YulTypedName", + "src": "12453:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "12461:4:74", + "nodeType": "YulTypedName", + "src": "12461:4:74", + "type": "" + } + ], + "src": "12385:141:74" + }, + { + "body": { + "nativeSrc": "12590:40:74", + "nodeType": "YulBlock", + "src": "12590:40:74", + "statements": [ + { + "nativeSrc": "12601:22:74", + "nodeType": "YulAssignment", + "src": "12601:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12617:5:74", + "nodeType": "YulIdentifier", + "src": "12617:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "12611:5:74", + "nodeType": "YulIdentifier", + "src": "12611:5:74" + }, + "nativeSrc": "12611:12:74", + "nodeType": "YulFunctionCall", + "src": "12611:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "12601:6:74", + "nodeType": "YulIdentifier", + "src": "12601:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "12532:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12573:5:74", + "nodeType": "YulTypedName", + "src": "12573:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "12583:6:74", + "nodeType": "YulTypedName", + "src": "12583:6:74", + "type": "" + } + ], + "src": "12532:98:74" + }, + { + "body": { + "nativeSrc": "12721:73:74", + "nodeType": "YulBlock", + "src": "12721:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12738:3:74", + "nodeType": "YulIdentifier", + "src": "12738:3:74" + }, + { + "name": "length", + "nativeSrc": "12743:6:74", + "nodeType": "YulIdentifier", + "src": "12743:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12731:6:74", + "nodeType": "YulIdentifier", + "src": "12731:6:74" + }, + "nativeSrc": "12731:19:74", + "nodeType": "YulFunctionCall", + "src": "12731:19:74" + }, + "nativeSrc": "12731:19:74", + "nodeType": "YulExpressionStatement", + "src": "12731:19:74" + }, + { + "nativeSrc": "12759:29:74", + "nodeType": "YulAssignment", + "src": "12759:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12778:3:74", + "nodeType": "YulIdentifier", + "src": "12778:3:74" + }, + { + "kind": "number", + "nativeSrc": "12783:4:74", + "nodeType": "YulLiteral", + "src": "12783:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12774:3:74", + "nodeType": "YulIdentifier", + "src": "12774:3:74" + }, + "nativeSrc": "12774:14:74", + "nodeType": "YulFunctionCall", + "src": "12774:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "12759:11:74", + "nodeType": "YulIdentifier", + "src": "12759:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "12636:158:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "12693:3:74", + "nodeType": "YulTypedName", + "src": "12693:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "12698:6:74", + "nodeType": "YulTypedName", + "src": "12698:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "12709:11:74", + "nodeType": "YulTypedName", + "src": "12709:11:74", + "type": "" + } + ], + "src": "12636:158:74" + }, + { + "body": { + "nativeSrc": "12880:273:74", + "nodeType": "YulBlock", + "src": "12880:273:74", + "statements": [ + { + "nativeSrc": "12890:52:74", + "nodeType": "YulVariableDeclaration", + "src": "12890:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12936:5:74", + "nodeType": "YulIdentifier", + "src": "12936:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "12904:31:74", + "nodeType": "YulIdentifier", + "src": "12904:31:74" + }, + "nativeSrc": "12904:38:74", + "nodeType": "YulFunctionCall", + "src": "12904:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "12894:6:74", + "nodeType": "YulTypedName", + "src": "12894:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12951:67:74", + "nodeType": "YulAssignment", + "src": "12951:67:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13006:3:74", + "nodeType": "YulIdentifier", + "src": "13006:3:74" + }, + { + "name": "length", + "nativeSrc": "13011:6:74", + "nodeType": "YulIdentifier", + "src": "13011:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "12958:47:74", + "nodeType": "YulIdentifier", + "src": "12958:47:74" + }, + "nativeSrc": "12958:60:74", + "nodeType": "YulFunctionCall", + "src": "12958:60:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12951:3:74", + "nodeType": "YulIdentifier", + "src": "12951:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "13066:5:74", + "nodeType": "YulIdentifier", + "src": "13066:5:74" + }, + { + "kind": "number", + "nativeSrc": "13073:4:74", + "nodeType": "YulLiteral", + "src": "13073:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13062:3:74", + "nodeType": "YulIdentifier", + "src": "13062:3:74" + }, + "nativeSrc": "13062:16:74", + "nodeType": "YulFunctionCall", + "src": "13062:16:74" + }, + { + "name": "pos", + "nativeSrc": "13080:3:74", + "nodeType": "YulIdentifier", + "src": "13080:3:74" + }, + { + "name": "length", + "nativeSrc": "13085:6:74", + "nodeType": "YulIdentifier", + "src": "13085:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "13027:34:74", + "nodeType": "YulIdentifier", + "src": "13027:34:74" + }, + "nativeSrc": "13027:65:74", + "nodeType": "YulFunctionCall", + "src": "13027:65:74" + }, + "nativeSrc": "13027:65:74", + "nodeType": "YulExpressionStatement", + "src": "13027:65:74" + }, + { + "nativeSrc": "13101:46:74", + "nodeType": "YulAssignment", + "src": "13101:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13112:3:74", + "nodeType": "YulIdentifier", + "src": "13112:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "13139:6:74", + "nodeType": "YulIdentifier", + "src": "13139:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "13117:21:74", + "nodeType": "YulIdentifier", + "src": "13117:21:74" + }, + "nativeSrc": "13117:29:74", + "nodeType": "YulFunctionCall", + "src": "13117:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13108:3:74", + "nodeType": "YulIdentifier", + "src": "13108:3:74" + }, + "nativeSrc": "13108:39:74", + "nodeType": "YulFunctionCall", + "src": "13108:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "13101:3:74", + "nodeType": "YulIdentifier", + "src": "13101:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "12800:353:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12861:5:74", + "nodeType": "YulTypedName", + "src": "12861:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "12868:3:74", + "nodeType": "YulTypedName", + "src": "12868:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "12876:3:74", + "nodeType": "YulTypedName", + "src": "12876:3:74", + "type": "" + } + ], + "src": "12800:353:74" + }, + { + "body": { + "nativeSrc": "13257:94:74", + "nodeType": "YulBlock", + "src": "13257:94:74", + "statements": [ + { + "nativeSrc": "13267:78:74", + "nodeType": "YulAssignment", + "src": "13267:78:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "13333:6:74", + "nodeType": "YulIdentifier", + "src": "13333:6:74" + }, + { + "name": "pos", + "nativeSrc": "13341:3:74", + "nodeType": "YulIdentifier", + "src": "13341:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "13281:51:74", + "nodeType": "YulIdentifier", + "src": "13281:51:74" + }, + "nativeSrc": "13281:64:74", + "nodeType": "YulFunctionCall", + "src": "13281:64:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "13267:10:74", + "nodeType": "YulIdentifier", + "src": "13267:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "13159:192:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "13230:6:74", + "nodeType": "YulTypedName", + "src": "13230:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "13238:3:74", + "nodeType": "YulTypedName", + "src": "13238:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "13246:10:74", + "nodeType": "YulTypedName", + "src": "13246:10:74", + "type": "" + } + ], + "src": "13159:192:74" + }, + { + "body": { + "nativeSrc": "13441:38:74", + "nodeType": "YulBlock", + "src": "13441:38:74", + "statements": [ + { + "nativeSrc": "13451:22:74", + "nodeType": "YulAssignment", + "src": "13451:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "13463:3:74", + "nodeType": "YulIdentifier", + "src": "13463:3:74" + }, + { + "kind": "number", + "nativeSrc": "13468:4:74", + "nodeType": "YulLiteral", + "src": "13468:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13459:3:74", + "nodeType": "YulIdentifier", + "src": "13459:3:74" + }, + "nativeSrc": "13459:14:74", + "nodeType": "YulFunctionCall", + "src": "13459:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "13451:4:74", + "nodeType": "YulIdentifier", + "src": "13451:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "13357:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "13428:3:74", + "nodeType": "YulTypedName", + "src": "13428:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "13436:4:74", + "nodeType": "YulTypedName", + "src": "13436:4:74", + "type": "" + } + ], + "src": "13357:122:74" + }, + { + "body": { + "nativeSrc": "13653:841:74", + "nodeType": "YulBlock", + "src": "13653:841:74", + "statements": [ + { + "nativeSrc": "13663:77:74", + "nodeType": "YulVariableDeclaration", + "src": "13663:77:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13734:5:74", + "nodeType": "YulIdentifier", + "src": "13734:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "13677:56:74", + "nodeType": "YulIdentifier", + "src": "13677:56:74" + }, + "nativeSrc": "13677:63:74", + "nodeType": "YulFunctionCall", + "src": "13677:63:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "13667:6:74", + "nodeType": "YulTypedName", + "src": "13667:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13749:102:74", + "nodeType": "YulAssignment", + "src": "13749:102:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13839:3:74", + "nodeType": "YulIdentifier", + "src": "13839:3:74" + }, + { + "name": "length", + "nativeSrc": "13844:6:74", + "nodeType": "YulIdentifier", + "src": "13844:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "13756:82:74", + "nodeType": "YulIdentifier", + "src": "13756:82:74" + }, + "nativeSrc": "13756:95:74", + "nodeType": "YulFunctionCall", + "src": "13756:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13749:3:74", + "nodeType": "YulIdentifier", + "src": "13749:3:74" + } + ] + }, + { + "nativeSrc": "13860:20:74", + "nodeType": "YulVariableDeclaration", + "src": "13860:20:74", + "value": { + "name": "pos", + "nativeSrc": "13877:3:74", + "nodeType": "YulIdentifier", + "src": "13877:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "13864:9:74", + "nodeType": "YulTypedName", + "src": "13864:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13889:39:74", + "nodeType": "YulVariableDeclaration", + "src": "13889:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13905:3:74", + "nodeType": "YulIdentifier", + "src": "13905:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "13914:6:74", + "nodeType": "YulIdentifier", + "src": "13914:6:74" + }, + { + "kind": "number", + "nativeSrc": "13922:4:74", + "nodeType": "YulLiteral", + "src": "13922:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "13910:3:74", + "nodeType": "YulIdentifier", + "src": "13910:3:74" + }, + "nativeSrc": "13910:17:74", + "nodeType": "YulFunctionCall", + "src": "13910:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13901:3:74", + "nodeType": "YulIdentifier", + "src": "13901:3:74" + }, + "nativeSrc": "13901:27:74", + "nodeType": "YulFunctionCall", + "src": "13901:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "13893:4:74", + "nodeType": "YulTypedName", + "src": "13893:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13937:80:74", + "nodeType": "YulVariableDeclaration", + "src": "13937:80:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "14011:5:74", + "nodeType": "YulIdentifier", + "src": "14011:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "13952:58:74", + "nodeType": "YulIdentifier", + "src": "13952:58:74" + }, + "nativeSrc": "13952:65:74", + "nodeType": "YulFunctionCall", + "src": "13952:65:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "13941:7:74", + "nodeType": "YulTypedName", + "src": "13941:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "14026:21:74", + "nodeType": "YulVariableDeclaration", + "src": "14026:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "14040:7:74", + "nodeType": "YulIdentifier", + "src": "14040:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "14030:6:74", + "nodeType": "YulTypedName", + "src": "14030:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "14116:333:74", + "nodeType": "YulBlock", + "src": "14116:333:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14137:3:74", + "nodeType": "YulIdentifier", + "src": "14137:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14146:4:74", + "nodeType": "YulIdentifier", + "src": "14146:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14152:9:74", + "nodeType": "YulIdentifier", + "src": "14152:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14142:3:74", + "nodeType": "YulIdentifier", + "src": "14142:3:74" + }, + "nativeSrc": "14142:20:74", + "nodeType": "YulFunctionCall", + "src": "14142:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14130:6:74", + "nodeType": "YulIdentifier", + "src": "14130:6:74" + }, + "nativeSrc": "14130:33:74", + "nodeType": "YulFunctionCall", + "src": "14130:33:74" + }, + "nativeSrc": "14130:33:74", + "nodeType": "YulExpressionStatement", + "src": "14130:33:74" + }, + { + "nativeSrc": "14176:34:74", + "nodeType": "YulVariableDeclaration", + "src": "14176:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "14203:6:74", + "nodeType": "YulIdentifier", + "src": "14203:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "14197:5:74", + "nodeType": "YulIdentifier", + "src": "14197:5:74" + }, + "nativeSrc": "14197:13:74", + "nodeType": "YulFunctionCall", + "src": "14197:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "14180:13:74", + "nodeType": "YulTypedName", + "src": "14180:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "14223:90:74", + "nodeType": "YulAssignment", + "src": "14223:90:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "14293:13:74", + "nodeType": "YulIdentifier", + "src": "14293:13:74" + }, + { + "name": "tail", + "nativeSrc": "14308:4:74", + "nodeType": "YulIdentifier", + "src": "14308:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "14231:61:74", + "nodeType": "YulIdentifier", + "src": "14231:61:74" + }, + "nativeSrc": "14231:82:74", + "nodeType": "YulFunctionCall", + "src": "14231:82:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14223:4:74", + "nodeType": "YulIdentifier", + "src": "14223:4:74" + } + ] + }, + { + "nativeSrc": "14326:79:74", + "nodeType": "YulAssignment", + "src": "14326:79:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "14398:6:74", + "nodeType": "YulIdentifier", + "src": "14398:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "14336:61:74", + "nodeType": "YulIdentifier", + "src": "14336:61:74" + }, + "nativeSrc": "14336:69:74", + "nodeType": "YulFunctionCall", + "src": "14336:69:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "14326:6:74", + "nodeType": "YulIdentifier", + "src": "14326:6:74" + } + ] + }, + { + "nativeSrc": "14418:21:74", + "nodeType": "YulAssignment", + "src": "14418:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14429:3:74", + "nodeType": "YulIdentifier", + "src": "14429:3:74" + }, + { + "kind": "number", + "nativeSrc": "14434:4:74", + "nodeType": "YulLiteral", + "src": "14434:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14425:3:74", + "nodeType": "YulIdentifier", + "src": "14425:3:74" + }, + "nativeSrc": "14425:14:74", + "nodeType": "YulFunctionCall", + "src": "14425:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14418:3:74", + "nodeType": "YulIdentifier", + "src": "14418:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "14078:1:74", + "nodeType": "YulIdentifier", + "src": "14078:1:74" + }, + { + "name": "length", + "nativeSrc": "14081:6:74", + "nodeType": "YulIdentifier", + "src": "14081:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "14075:2:74", + "nodeType": "YulIdentifier", + "src": "14075:2:74" + }, + "nativeSrc": "14075:13:74", + "nodeType": "YulFunctionCall", + "src": "14075:13:74" + }, + "nativeSrc": "14056:393:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "14089:18:74", + "nodeType": "YulBlock", + "src": "14089:18:74", + "statements": [ + { + "nativeSrc": "14091:14:74", + "nodeType": "YulAssignment", + "src": "14091:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "14100:1:74", + "nodeType": "YulIdentifier", + "src": "14100:1:74" + }, + { + "kind": "number", + "nativeSrc": "14103:1:74", + "nodeType": "YulLiteral", + "src": "14103:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14096:3:74", + "nodeType": "YulIdentifier", + "src": "14096:3:74" + }, + "nativeSrc": "14096:9:74", + "nodeType": "YulFunctionCall", + "src": "14096:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "14091:1:74", + "nodeType": "YulIdentifier", + "src": "14091:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "14060:14:74", + "nodeType": "YulBlock", + "src": "14060:14:74", + "statements": [ + { + "nativeSrc": "14062:10:74", + "nodeType": "YulVariableDeclaration", + "src": "14062:10:74", + "value": { + "kind": "number", + "nativeSrc": "14071:1:74", + "nodeType": "YulLiteral", + "src": "14071:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "14066:1:74", + "nodeType": "YulTypedName", + "src": "14066:1:74", + "type": "" + } + ] + } + ] + }, + "src": "14056:393:74" + }, + { + "nativeSrc": "14458:11:74", + "nodeType": "YulAssignment", + "src": "14458:11:74", + "value": { + "name": "tail", + "nativeSrc": "14465:4:74", + "nodeType": "YulIdentifier", + "src": "14465:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14458:3:74", + "nodeType": "YulIdentifier", + "src": "14458:3:74" + } + ] + }, + { + "nativeSrc": "14478:10:74", + "nodeType": "YulAssignment", + "src": "14478:10:74", + "value": { + "name": "pos", + "nativeSrc": "14485:3:74", + "nodeType": "YulIdentifier", + "src": "14485:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "14478:3:74", + "nodeType": "YulIdentifier", + "src": "14478:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "13511:983:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13632:5:74", + "nodeType": "YulTypedName", + "src": "13632:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "13639:3:74", + "nodeType": "YulTypedName", + "src": "13639:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "13648:3:74", + "nodeType": "YulTypedName", + "src": "13648:3:74", + "type": "" + } + ], + "src": "13511:983:74" + }, + { + "body": { + "nativeSrc": "14666:243:74", + "nodeType": "YulBlock", + "src": "14666:243:74", + "statements": [ + { + "nativeSrc": "14676:26:74", + "nodeType": "YulAssignment", + "src": "14676:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14688:9:74", + "nodeType": "YulIdentifier", + "src": "14688:9:74" + }, + { + "kind": "number", + "nativeSrc": "14699:2:74", + "nodeType": "YulLiteral", + "src": "14699:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14684:3:74", + "nodeType": "YulIdentifier", + "src": "14684:3:74" + }, + "nativeSrc": "14684:18:74", + "nodeType": "YulFunctionCall", + "src": "14684:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14676:4:74", + "nodeType": "YulIdentifier", + "src": "14676:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14723:9:74", + "nodeType": "YulIdentifier", + "src": "14723:9:74" + }, + { + "kind": "number", + "nativeSrc": "14734:1:74", + "nodeType": "YulLiteral", + "src": "14734:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14719:3:74", + "nodeType": "YulIdentifier", + "src": "14719:3:74" + }, + "nativeSrc": "14719:17:74", + "nodeType": "YulFunctionCall", + "src": "14719:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14742:4:74", + "nodeType": "YulIdentifier", + "src": "14742:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14748:9:74", + "nodeType": "YulIdentifier", + "src": "14748:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14738:3:74", + "nodeType": "YulIdentifier", + "src": "14738:3:74" + }, + "nativeSrc": "14738:20:74", + "nodeType": "YulFunctionCall", + "src": "14738:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14712:6:74", + "nodeType": "YulIdentifier", + "src": "14712:6:74" + }, + "nativeSrc": "14712:47:74", + "nodeType": "YulFunctionCall", + "src": "14712:47:74" + }, + "nativeSrc": "14712:47:74", + "nodeType": "YulExpressionStatement", + "src": "14712:47:74" + }, + { + "nativeSrc": "14768:134:74", + "nodeType": "YulAssignment", + "src": "14768:134:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "14888:6:74", + "nodeType": "YulIdentifier", + "src": "14888:6:74" + }, + { + "name": "tail", + "nativeSrc": "14897:4:74", + "nodeType": "YulIdentifier", + "src": "14897:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "14776:111:74", + "nodeType": "YulIdentifier", + "src": "14776:111:74" + }, + "nativeSrc": "14776:126:74", + "nodeType": "YulFunctionCall", + "src": "14776:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14768:4:74", + "nodeType": "YulIdentifier", + "src": "14768:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "14500:409:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14638:9:74", + "nodeType": "YulTypedName", + "src": "14638:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "14650:6:74", + "nodeType": "YulTypedName", + "src": "14650:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14661:4:74", + "nodeType": "YulTypedName", + "src": "14661:4:74", + "type": "" + } + ], + "src": "14500:409:74" + }, + { + "body": { + "nativeSrc": "14981:263:74", + "nodeType": "YulBlock", + "src": "14981:263:74", + "statements": [ + { + "body": { + "nativeSrc": "15027:83:74", + "nodeType": "YulBlock", + "src": "15027:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "15029:77:74", + "nodeType": "YulIdentifier", + "src": "15029:77:74" + }, + "nativeSrc": "15029:79:74", + "nodeType": "YulFunctionCall", + "src": "15029:79:74" + }, + "nativeSrc": "15029:79:74", + "nodeType": "YulExpressionStatement", + "src": "15029:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "15002:7:74", + "nodeType": "YulIdentifier", + "src": "15002:7:74" + }, + { + "name": "headStart", + "nativeSrc": "15011:9:74", + "nodeType": "YulIdentifier", + "src": "15011:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14998:3:74", + "nodeType": "YulIdentifier", + "src": "14998:3:74" + }, + "nativeSrc": "14998:23:74", + "nodeType": "YulFunctionCall", + "src": "14998:23:74" + }, + { + "kind": "number", + "nativeSrc": "15023:2:74", + "nodeType": "YulLiteral", + "src": "15023:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "14994:3:74", + "nodeType": "YulIdentifier", + "src": "14994:3:74" + }, + "nativeSrc": "14994:32:74", + "nodeType": "YulFunctionCall", + "src": "14994:32:74" + }, + "nativeSrc": "14991:119:74", + "nodeType": "YulIf", + "src": "14991:119:74" + }, + { + "nativeSrc": "15120:117:74", + "nodeType": "YulBlock", + "src": "15120:117:74", + "statements": [ + { + "nativeSrc": "15135:15:74", + "nodeType": "YulVariableDeclaration", + "src": "15135:15:74", + "value": { + "kind": "number", + "nativeSrc": "15149:1:74", + "nodeType": "YulLiteral", + "src": "15149:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15139:6:74", + "nodeType": "YulTypedName", + "src": "15139:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15164:63:74", + "nodeType": "YulAssignment", + "src": "15164:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15199:9:74", + "nodeType": "YulIdentifier", + "src": "15199:9:74" + }, + { + "name": "offset", + "nativeSrc": "15210:6:74", + "nodeType": "YulIdentifier", + "src": "15210:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15195:3:74", + "nodeType": "YulIdentifier", + "src": "15195:3:74" + }, + "nativeSrc": "15195:22:74", + "nodeType": "YulFunctionCall", + "src": "15195:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "15219:7:74", + "nodeType": "YulIdentifier", + "src": "15219:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "15174:20:74", + "nodeType": "YulIdentifier", + "src": "15174:20:74" + }, + "nativeSrc": "15174:53:74", + "nodeType": "YulFunctionCall", + "src": "15174:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "15164:6:74", + "nodeType": "YulIdentifier", + "src": "15164:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "14915:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14951:9:74", + "nodeType": "YulTypedName", + "src": "14951:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "14962:7:74", + "nodeType": "YulTypedName", + "src": "14962:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "14974:6:74", + "nodeType": "YulTypedName", + "src": "14974:6:74", + "type": "" + } + ], + "src": "14915:329:74" + }, + { + "body": { + "nativeSrc": "15346:73:74", + "nodeType": "YulBlock", + "src": "15346:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15363:3:74", + "nodeType": "YulIdentifier", + "src": "15363:3:74" + }, + { + "name": "length", + "nativeSrc": "15368:6:74", + "nodeType": "YulIdentifier", + "src": "15368:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15356:6:74", + "nodeType": "YulIdentifier", + "src": "15356:6:74" + }, + "nativeSrc": "15356:19:74", + "nodeType": "YulFunctionCall", + "src": "15356:19:74" + }, + "nativeSrc": "15356:19:74", + "nodeType": "YulExpressionStatement", + "src": "15356:19:74" + }, + { + "nativeSrc": "15384:29:74", + "nodeType": "YulAssignment", + "src": "15384:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15403:3:74", + "nodeType": "YulIdentifier", + "src": "15403:3:74" + }, + { + "kind": "number", + "nativeSrc": "15408:4:74", + "nodeType": "YulLiteral", + "src": "15408:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15399:3:74", + "nodeType": "YulIdentifier", + "src": "15399:3:74" + }, + "nativeSrc": "15399:14:74", + "nodeType": "YulFunctionCall", + "src": "15399:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "15384:11:74", + "nodeType": "YulIdentifier", + "src": "15384:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15250:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "15318:3:74", + "nodeType": "YulTypedName", + "src": "15318:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "15323:6:74", + "nodeType": "YulTypedName", + "src": "15323:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "15334:11:74", + "nodeType": "YulTypedName", + "src": "15334:11:74", + "type": "" + } + ], + "src": "15250:169:74" + }, + { + "body": { + "nativeSrc": "15517:285:74", + "nodeType": "YulBlock", + "src": "15517:285:74", + "statements": [ + { + "nativeSrc": "15527:53:74", + "nodeType": "YulVariableDeclaration", + "src": "15527:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "15574:5:74", + "nodeType": "YulIdentifier", + "src": "15574:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "15541:32:74", + "nodeType": "YulIdentifier", + "src": "15541:32:74" + }, + "nativeSrc": "15541:39:74", + "nodeType": "YulFunctionCall", + "src": "15541:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "15531:6:74", + "nodeType": "YulTypedName", + "src": "15531:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15589:78:74", + "nodeType": "YulAssignment", + "src": "15589:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15655:3:74", + "nodeType": "YulIdentifier", + "src": "15655:3:74" + }, + { + "name": "length", + "nativeSrc": "15660:6:74", + "nodeType": "YulIdentifier", + "src": "15660:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15596:58:74", + "nodeType": "YulIdentifier", + "src": "15596:58:74" + }, + "nativeSrc": "15596:71:74", + "nodeType": "YulFunctionCall", + "src": "15596:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15589:3:74", + "nodeType": "YulIdentifier", + "src": "15589:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "15715:5:74", + "nodeType": "YulIdentifier", + "src": "15715:5:74" + }, + { + "kind": "number", + "nativeSrc": "15722:4:74", + "nodeType": "YulLiteral", + "src": "15722:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15711:3:74", + "nodeType": "YulIdentifier", + "src": "15711:3:74" + }, + "nativeSrc": "15711:16:74", + "nodeType": "YulFunctionCall", + "src": "15711:16:74" + }, + { + "name": "pos", + "nativeSrc": "15729:3:74", + "nodeType": "YulIdentifier", + "src": "15729:3:74" + }, + { + "name": "length", + "nativeSrc": "15734:6:74", + "nodeType": "YulIdentifier", + "src": "15734:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "15676:34:74", + "nodeType": "YulIdentifier", + "src": "15676:34:74" + }, + "nativeSrc": "15676:65:74", + "nodeType": "YulFunctionCall", + "src": "15676:65:74" + }, + "nativeSrc": "15676:65:74", + "nodeType": "YulExpressionStatement", + "src": "15676:65:74" + }, + { + "nativeSrc": "15750:46:74", + "nodeType": "YulAssignment", + "src": "15750:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15761:3:74", + "nodeType": "YulIdentifier", + "src": "15761:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "15788:6:74", + "nodeType": "YulIdentifier", + "src": "15788:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "15766:21:74", + "nodeType": "YulIdentifier", + "src": "15766:21:74" + }, + "nativeSrc": "15766:29:74", + "nodeType": "YulFunctionCall", + "src": "15766:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15757:3:74", + "nodeType": "YulIdentifier", + "src": "15757:3:74" + }, + "nativeSrc": "15757:39:74", + "nodeType": "YulFunctionCall", + "src": "15757:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15750:3:74", + "nodeType": "YulIdentifier", + "src": "15750:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15425:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "15498:5:74", + "nodeType": "YulTypedName", + "src": "15498:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "15505:3:74", + "nodeType": "YulTypedName", + "src": "15505:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15513:3:74", + "nodeType": "YulTypedName", + "src": "15513:3:74", + "type": "" + } + ], + "src": "15425:377:74" + }, + { + "body": { + "nativeSrc": "15926:195:74", + "nodeType": "YulBlock", + "src": "15926:195:74", + "statements": [ + { + "nativeSrc": "15936:26:74", + "nodeType": "YulAssignment", + "src": "15936:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15948:9:74", + "nodeType": "YulIdentifier", + "src": "15948:9:74" + }, + { + "kind": "number", + "nativeSrc": "15959:2:74", + "nodeType": "YulLiteral", + "src": "15959:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15944:3:74", + "nodeType": "YulIdentifier", + "src": "15944:3:74" + }, + "nativeSrc": "15944:18:74", + "nodeType": "YulFunctionCall", + "src": "15944:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15936:4:74", + "nodeType": "YulIdentifier", + "src": "15936:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15983:9:74", + "nodeType": "YulIdentifier", + "src": "15983:9:74" + }, + { + "kind": "number", + "nativeSrc": "15994:1:74", + "nodeType": "YulLiteral", + "src": "15994:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15979:3:74", + "nodeType": "YulIdentifier", + "src": "15979:3:74" + }, + "nativeSrc": "15979:17:74", + "nodeType": "YulFunctionCall", + "src": "15979:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16002:4:74", + "nodeType": "YulIdentifier", + "src": "16002:4:74" + }, + { + "name": "headStart", + "nativeSrc": "16008:9:74", + "nodeType": "YulIdentifier", + "src": "16008:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15998:3:74", + "nodeType": "YulIdentifier", + "src": "15998:3:74" + }, + "nativeSrc": "15998:20:74", + "nodeType": "YulFunctionCall", + "src": "15998:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15972:6:74", + "nodeType": "YulIdentifier", + "src": "15972:6:74" + }, + "nativeSrc": "15972:47:74", + "nodeType": "YulFunctionCall", + "src": "15972:47:74" + }, + "nativeSrc": "15972:47:74", + "nodeType": "YulExpressionStatement", + "src": "15972:47:74" + }, + { + "nativeSrc": "16028:86:74", + "nodeType": "YulAssignment", + "src": "16028:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "16100:6:74", + "nodeType": "YulIdentifier", + "src": "16100:6:74" + }, + { + "name": "tail", + "nativeSrc": "16109:4:74", + "nodeType": "YulIdentifier", + "src": "16109:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "16036:63:74", + "nodeType": "YulIdentifier", + "src": "16036:63:74" + }, + "nativeSrc": "16036:78:74", + "nodeType": "YulFunctionCall", + "src": "16036:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16028:4:74", + "nodeType": "YulIdentifier", + "src": "16028:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "15808:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15898:9:74", + "nodeType": "YulTypedName", + "src": "15898:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "15910:6:74", + "nodeType": "YulTypedName", + "src": "15910:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15921:4:74", + "nodeType": "YulTypedName", + "src": "15921:4:74", + "type": "" + } + ], + "src": "15808:313:74" + }, + { + "body": { + "nativeSrc": "16155:152:74", + "nodeType": "YulBlock", + "src": "16155:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16172:1:74", + "nodeType": "YulLiteral", + "src": "16172:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "16175:77:74", + "nodeType": "YulLiteral", + "src": "16175:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16165:6:74", + "nodeType": "YulIdentifier", + "src": "16165:6:74" + }, + "nativeSrc": "16165:88:74", + "nodeType": "YulFunctionCall", + "src": "16165:88:74" + }, + "nativeSrc": "16165:88:74", + "nodeType": "YulExpressionStatement", + "src": "16165:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16269:1:74", + "nodeType": "YulLiteral", + "src": "16269:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "16272:4:74", + "nodeType": "YulLiteral", + "src": "16272:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16262:6:74", + "nodeType": "YulIdentifier", + "src": "16262:6:74" + }, + "nativeSrc": "16262:15:74", + "nodeType": "YulFunctionCall", + "src": "16262:15:74" + }, + "nativeSrc": "16262:15:74", + "nodeType": "YulExpressionStatement", + "src": "16262:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16293:1:74", + "nodeType": "YulLiteral", + "src": "16293:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "16296:4:74", + "nodeType": "YulLiteral", + "src": "16296:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "16286:6:74", + "nodeType": "YulIdentifier", + "src": "16286:6:74" + }, + "nativeSrc": "16286:15:74", + "nodeType": "YulFunctionCall", + "src": "16286:15:74" + }, + "nativeSrc": "16286:15:74", + "nodeType": "YulExpressionStatement", + "src": "16286:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "16127:180:74", + "nodeType": "YulFunctionDefinition", + "src": "16127:180:74" + }, + { + "body": { + "nativeSrc": "16364:269:74", + "nodeType": "YulBlock", + "src": "16364:269:74", + "statements": [ + { + "nativeSrc": "16374:22:74", + "nodeType": "YulAssignment", + "src": "16374:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "16388:4:74", + "nodeType": "YulIdentifier", + "src": "16388:4:74" + }, + { + "kind": "number", + "nativeSrc": "16394:1:74", + "nodeType": "YulLiteral", + "src": "16394:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "16384:3:74", + "nodeType": "YulIdentifier", + "src": "16384:3:74" + }, + "nativeSrc": "16384:12:74", + "nodeType": "YulFunctionCall", + "src": "16384:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "16374:6:74", + "nodeType": "YulIdentifier", + "src": "16374:6:74" + } + ] + }, + { + "nativeSrc": "16405:38:74", + "nodeType": "YulVariableDeclaration", + "src": "16405:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "16435:4:74", + "nodeType": "YulIdentifier", + "src": "16435:4:74" + }, + { + "kind": "number", + "nativeSrc": "16441:1:74", + "nodeType": "YulLiteral", + "src": "16441:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "16431:3:74", + "nodeType": "YulIdentifier", + "src": "16431:3:74" + }, + "nativeSrc": "16431:12:74", + "nodeType": "YulFunctionCall", + "src": "16431:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "16409:18:74", + "nodeType": "YulTypedName", + "src": "16409:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "16482:51:74", + "nodeType": "YulBlock", + "src": "16482:51:74", + "statements": [ + { + "nativeSrc": "16496:27:74", + "nodeType": "YulAssignment", + "src": "16496:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "16510:6:74", + "nodeType": "YulIdentifier", + "src": "16510:6:74" + }, + { + "kind": "number", + "nativeSrc": "16518:4:74", + "nodeType": "YulLiteral", + "src": "16518:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "16506:3:74", + "nodeType": "YulIdentifier", + "src": "16506:3:74" + }, + "nativeSrc": "16506:17:74", + "nodeType": "YulFunctionCall", + "src": "16506:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "16496:6:74", + "nodeType": "YulIdentifier", + "src": "16496:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "16462:18:74", + "nodeType": "YulIdentifier", + "src": "16462:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "16455:6:74", + "nodeType": "YulIdentifier", + "src": "16455:6:74" + }, + "nativeSrc": "16455:26:74", + "nodeType": "YulFunctionCall", + "src": "16455:26:74" + }, + "nativeSrc": "16452:81:74", + "nodeType": "YulIf", + "src": "16452:81:74" + }, + { + "body": { + "nativeSrc": "16585:42:74", + "nodeType": "YulBlock", + "src": "16585:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "16599:16:74", + "nodeType": "YulIdentifier", + "src": "16599:16:74" + }, + "nativeSrc": "16599:18:74", + "nodeType": "YulFunctionCall", + "src": "16599:18:74" + }, + "nativeSrc": "16599:18:74", + "nodeType": "YulExpressionStatement", + "src": "16599:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "16549:18:74", + "nodeType": "YulIdentifier", + "src": "16549:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "16572:6:74", + "nodeType": "YulIdentifier", + "src": "16572:6:74" + }, + { + "kind": "number", + "nativeSrc": "16580:2:74", + "nodeType": "YulLiteral", + "src": "16580:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "16569:2:74", + "nodeType": "YulIdentifier", + "src": "16569:2:74" + }, + "nativeSrc": "16569:14:74", + "nodeType": "YulFunctionCall", + "src": "16569:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "16546:2:74", + "nodeType": "YulIdentifier", + "src": "16546:2:74" + }, + "nativeSrc": "16546:38:74", + "nodeType": "YulFunctionCall", + "src": "16546:38:74" + }, + "nativeSrc": "16543:84:74", + "nodeType": "YulIf", + "src": "16543:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "16313:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "16348:4:74", + "nodeType": "YulTypedName", + "src": "16348:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "16357:6:74", + "nodeType": "YulTypedName", + "src": "16357:6:74", + "type": "" + } + ], + "src": "16313:320:74" + }, + { + "body": { + "nativeSrc": "16702:80:74", + "nodeType": "YulBlock", + "src": "16702:80:74", + "statements": [ + { + "nativeSrc": "16712:22:74", + "nodeType": "YulAssignment", + "src": "16712:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16727:6:74", + "nodeType": "YulIdentifier", + "src": "16727:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "16721:5:74", + "nodeType": "YulIdentifier", + "src": "16721:5:74" + }, + "nativeSrc": "16721:13:74", + "nodeType": "YulFunctionCall", + "src": "16721:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "16712:5:74", + "nodeType": "YulIdentifier", + "src": "16712:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16770:5:74", + "nodeType": "YulIdentifier", + "src": "16770:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "16743:26:74", + "nodeType": "YulIdentifier", + "src": "16743:26:74" + }, + "nativeSrc": "16743:33:74", + "nodeType": "YulFunctionCall", + "src": "16743:33:74" + }, + "nativeSrc": "16743:33:74", + "nodeType": "YulExpressionStatement", + "src": "16743:33:74" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "16639:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "16680:6:74", + "nodeType": "YulTypedName", + "src": "16680:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "16688:3:74", + "nodeType": "YulTypedName", + "src": "16688:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "16696:5:74", + "nodeType": "YulTypedName", + "src": "16696:5:74", + "type": "" + } + ], + "src": "16639:143:74" + }, + { + "body": { + "nativeSrc": "16877:28:74", + "nodeType": "YulBlock", + "src": "16877:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16894:1:74", + "nodeType": "YulLiteral", + "src": "16894:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "16897:1:74", + "nodeType": "YulLiteral", + "src": "16897:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "16887:6:74", + "nodeType": "YulIdentifier", + "src": "16887:6:74" + }, + "nativeSrc": "16887:12:74", + "nodeType": "YulFunctionCall", + "src": "16887:12:74" + }, + "nativeSrc": "16887:12:74", + "nodeType": "YulExpressionStatement", + "src": "16887:12:74" + } + ] + }, + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "16788:117:74", + "nodeType": "YulFunctionDefinition", + "src": "16788:117:74" + }, + { + "body": { + "nativeSrc": "17000:28:74", + "nodeType": "YulBlock", + "src": "17000:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "17017:1:74", + "nodeType": "YulLiteral", + "src": "17017:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "17020:1:74", + "nodeType": "YulLiteral", + "src": "17020:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "17010:6:74", + "nodeType": "YulIdentifier", + "src": "17010:6:74" + }, + "nativeSrc": "17010:12:74", + "nodeType": "YulFunctionCall", + "src": "17010:12:74" + }, + "nativeSrc": "17010:12:74", + "nodeType": "YulExpressionStatement", + "src": "17010:12:74" + } + ] + }, + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "16911:117:74", + "nodeType": "YulFunctionDefinition", + "src": "16911:117:74" + }, + { + "body": { + "nativeSrc": "17097:80:74", + "nodeType": "YulBlock", + "src": "17097:80:74", + "statements": [ + { + "nativeSrc": "17107:22:74", + "nodeType": "YulAssignment", + "src": "17107:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17122:6:74", + "nodeType": "YulIdentifier", + "src": "17122:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "17116:5:74", + "nodeType": "YulIdentifier", + "src": "17116:5:74" + }, + "nativeSrc": "17116:13:74", + "nodeType": "YulFunctionCall", + "src": "17116:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "17107:5:74", + "nodeType": "YulIdentifier", + "src": "17107:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17165:5:74", + "nodeType": "YulIdentifier", + "src": "17165:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "17138:26:74", + "nodeType": "YulIdentifier", + "src": "17138:26:74" + }, + "nativeSrc": "17138:33:74", + "nodeType": "YulFunctionCall", + "src": "17138:33:74" + }, + "nativeSrc": "17138:33:74", + "nodeType": "YulExpressionStatement", + "src": "17138:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "17034:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "17075:6:74", + "nodeType": "YulTypedName", + "src": "17075:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17083:3:74", + "nodeType": "YulTypedName", + "src": "17083:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "17091:5:74", + "nodeType": "YulTypedName", + "src": "17091:5:74", + "type": "" + } + ], + "src": "17034:143:74" + }, + { + "body": { + "nativeSrc": "17277:338:74", + "nodeType": "YulBlock", + "src": "17277:338:74", + "statements": [ + { + "nativeSrc": "17287:74:74", + "nodeType": "YulAssignment", + "src": "17287:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "17353:6:74", + "nodeType": "YulIdentifier", + "src": "17353:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "17312:40:74", + "nodeType": "YulIdentifier", + "src": "17312:40:74" + }, + "nativeSrc": "17312:48:74", + "nodeType": "YulFunctionCall", + "src": "17312:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "17296:15:74", + "nodeType": "YulIdentifier", + "src": "17296:15:74" + }, + "nativeSrc": "17296:65:74", + "nodeType": "YulFunctionCall", + "src": "17296:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "17287:5:74", + "nodeType": "YulIdentifier", + "src": "17287:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "17377:5:74", + "nodeType": "YulIdentifier", + "src": "17377:5:74" + }, + { + "name": "length", + "nativeSrc": "17384:6:74", + "nodeType": "YulIdentifier", + "src": "17384:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17370:6:74", + "nodeType": "YulIdentifier", + "src": "17370:6:74" + }, + "nativeSrc": "17370:21:74", + "nodeType": "YulFunctionCall", + "src": "17370:21:74" + }, + "nativeSrc": "17370:21:74", + "nodeType": "YulExpressionStatement", + "src": "17370:21:74" + }, + { + "nativeSrc": "17400:27:74", + "nodeType": "YulVariableDeclaration", + "src": "17400:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "17415:5:74", + "nodeType": "YulIdentifier", + "src": "17415:5:74" + }, + { + "kind": "number", + "nativeSrc": "17422:4:74", + "nodeType": "YulLiteral", + "src": "17422:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17411:3:74", + "nodeType": "YulIdentifier", + "src": "17411:3:74" + }, + "nativeSrc": "17411:16:74", + "nodeType": "YulFunctionCall", + "src": "17411:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "17404:3:74", + "nodeType": "YulTypedName", + "src": "17404:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "17465:83:74", + "nodeType": "YulBlock", + "src": "17465:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "17467:77:74", + "nodeType": "YulIdentifier", + "src": "17467:77:74" + }, + "nativeSrc": "17467:79:74", + "nodeType": "YulFunctionCall", + "src": "17467:79:74" + }, + "nativeSrc": "17467:79:74", + "nodeType": "YulExpressionStatement", + "src": "17467:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "17446:3:74", + "nodeType": "YulIdentifier", + "src": "17446:3:74" + }, + { + "name": "length", + "nativeSrc": "17451:6:74", + "nodeType": "YulIdentifier", + "src": "17451:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17442:3:74", + "nodeType": "YulIdentifier", + "src": "17442:3:74" + }, + "nativeSrc": "17442:16:74", + "nodeType": "YulFunctionCall", + "src": "17442:16:74" + }, + { + "name": "end", + "nativeSrc": "17460:3:74", + "nodeType": "YulIdentifier", + "src": "17460:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "17439:2:74", + "nodeType": "YulIdentifier", + "src": "17439:2:74" + }, + "nativeSrc": "17439:25:74", + "nodeType": "YulFunctionCall", + "src": "17439:25:74" + }, + "nativeSrc": "17436:112:74", + "nodeType": "YulIf", + "src": "17436:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "17592:3:74", + "nodeType": "YulIdentifier", + "src": "17592:3:74" + }, + { + "name": "dst", + "nativeSrc": "17597:3:74", + "nodeType": "YulIdentifier", + "src": "17597:3:74" + }, + { + "name": "length", + "nativeSrc": "17602:6:74", + "nodeType": "YulIdentifier", + "src": "17602:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "17557:34:74", + "nodeType": "YulIdentifier", + "src": "17557:34:74" + }, + "nativeSrc": "17557:52:74", + "nodeType": "YulFunctionCall", + "src": "17557:52:74" + }, + "nativeSrc": "17557:52:74", + "nodeType": "YulExpressionStatement", + "src": "17557:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "17183:432:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "17250:3:74", + "nodeType": "YulTypedName", + "src": "17250:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "17255:6:74", + "nodeType": "YulTypedName", + "src": "17255:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17263:3:74", + "nodeType": "YulTypedName", + "src": "17263:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "17271:5:74", + "nodeType": "YulTypedName", + "src": "17271:5:74", + "type": "" + } + ], + "src": "17183:432:74" + }, + { + "body": { + "nativeSrc": "17706:281:74", + "nodeType": "YulBlock", + "src": "17706:281:74", + "statements": [ + { + "body": { + "nativeSrc": "17755:83:74", + "nodeType": "YulBlock", + "src": "17755:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "17757:77:74", + "nodeType": "YulIdentifier", + "src": "17757:77:74" + }, + "nativeSrc": "17757:79:74", + "nodeType": "YulFunctionCall", + "src": "17757:79:74" + }, + "nativeSrc": "17757:79:74", + "nodeType": "YulExpressionStatement", + "src": "17757:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17734:6:74", + "nodeType": "YulIdentifier", + "src": "17734:6:74" + }, + { + "kind": "number", + "nativeSrc": "17742:4:74", + "nodeType": "YulLiteral", + "src": "17742:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17730:3:74", + "nodeType": "YulIdentifier", + "src": "17730:3:74" + }, + "nativeSrc": "17730:17:74", + "nodeType": "YulFunctionCall", + "src": "17730:17:74" + }, + { + "name": "end", + "nativeSrc": "17749:3:74", + "nodeType": "YulIdentifier", + "src": "17749:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "17726:3:74", + "nodeType": "YulIdentifier", + "src": "17726:3:74" + }, + "nativeSrc": "17726:27:74", + "nodeType": "YulFunctionCall", + "src": "17726:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "17719:6:74", + "nodeType": "YulIdentifier", + "src": "17719:6:74" + }, + "nativeSrc": "17719:35:74", + "nodeType": "YulFunctionCall", + "src": "17719:35:74" + }, + "nativeSrc": "17716:122:74", + "nodeType": "YulIf", + "src": "17716:122:74" + }, + { + "nativeSrc": "17847:27:74", + "nodeType": "YulVariableDeclaration", + "src": "17847:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17867:6:74", + "nodeType": "YulIdentifier", + "src": "17867:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "17861:5:74", + "nodeType": "YulIdentifier", + "src": "17861:5:74" + }, + "nativeSrc": "17861:13:74", + "nodeType": "YulFunctionCall", + "src": "17861:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "17851:6:74", + "nodeType": "YulTypedName", + "src": "17851:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17883:98:74", + "nodeType": "YulAssignment", + "src": "17883:98:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17954:6:74", + "nodeType": "YulIdentifier", + "src": "17954:6:74" + }, + { + "kind": "number", + "nativeSrc": "17962:4:74", + "nodeType": "YulLiteral", + "src": "17962:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17950:3:74", + "nodeType": "YulIdentifier", + "src": "17950:3:74" + }, + "nativeSrc": "17950:17:74", + "nodeType": "YulFunctionCall", + "src": "17950:17:74" + }, + { + "name": "length", + "nativeSrc": "17969:6:74", + "nodeType": "YulIdentifier", + "src": "17969:6:74" + }, + { + "name": "end", + "nativeSrc": "17977:3:74", + "nodeType": "YulIdentifier", + "src": "17977:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "17892:57:74", + "nodeType": "YulIdentifier", + "src": "17892:57:74" + }, + "nativeSrc": "17892:89:74", + "nodeType": "YulFunctionCall", + "src": "17892:89:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "17883:5:74", + "nodeType": "YulIdentifier", + "src": "17883:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "17634:353:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "17684:6:74", + "nodeType": "YulTypedName", + "src": "17684:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17692:3:74", + "nodeType": "YulTypedName", + "src": "17692:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "17700:5:74", + "nodeType": "YulTypedName", + "src": "17700:5:74", + "type": "" + } + ], + "src": "17634:353:74" + }, + { + "body": { + "nativeSrc": "18130:835:74", + "nodeType": "YulBlock", + "src": "18130:835:74", + "statements": [ + { + "nativeSrc": "18140:99:74", + "nodeType": "YulAssignment", + "src": "18140:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "18231:6:74", + "nodeType": "YulIdentifier", + "src": "18231:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "18165:65:74", + "nodeType": "YulIdentifier", + "src": "18165:65:74" + }, + "nativeSrc": "18165:73:74", + "nodeType": "YulFunctionCall", + "src": "18165:73:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "18149:15:74", + "nodeType": "YulIdentifier", + "src": "18149:15:74" + }, + "nativeSrc": "18149:90:74", + "nodeType": "YulFunctionCall", + "src": "18149:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "18140:5:74", + "nodeType": "YulIdentifier", + "src": "18140:5:74" + } + ] + }, + { + "nativeSrc": "18248:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18248:16:74", + "value": { + "name": "array", + "nativeSrc": "18259:5:74", + "nodeType": "YulIdentifier", + "src": "18259:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "18252:3:74", + "nodeType": "YulTypedName", + "src": "18252:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "18281:5:74", + "nodeType": "YulIdentifier", + "src": "18281:5:74" + }, + { + "name": "length", + "nativeSrc": "18288:6:74", + "nodeType": "YulIdentifier", + "src": "18288:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18274:6:74", + "nodeType": "YulIdentifier", + "src": "18274:6:74" + }, + "nativeSrc": "18274:21:74", + "nodeType": "YulFunctionCall", + "src": "18274:21:74" + }, + "nativeSrc": "18274:21:74", + "nodeType": "YulExpressionStatement", + "src": "18274:21:74" + }, + { + "nativeSrc": "18304:23:74", + "nodeType": "YulAssignment", + "src": "18304:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "18315:5:74", + "nodeType": "YulIdentifier", + "src": "18315:5:74" + }, + { + "kind": "number", + "nativeSrc": "18322:4:74", + "nodeType": "YulLiteral", + "src": "18322:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18311:3:74", + "nodeType": "YulIdentifier", + "src": "18311:3:74" + }, + "nativeSrc": "18311:16:74", + "nodeType": "YulFunctionCall", + "src": "18311:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "18304:3:74", + "nodeType": "YulIdentifier", + "src": "18304:3:74" + } + ] + }, + { + "nativeSrc": "18337:44:74", + "nodeType": "YulVariableDeclaration", + "src": "18337:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18355:6:74", + "nodeType": "YulIdentifier", + "src": "18355:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "18367:6:74", + "nodeType": "YulIdentifier", + "src": "18367:6:74" + }, + { + "kind": "number", + "nativeSrc": "18375:4:74", + "nodeType": "YulLiteral", + "src": "18375:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "18363:3:74", + "nodeType": "YulIdentifier", + "src": "18363:3:74" + }, + "nativeSrc": "18363:17:74", + "nodeType": "YulFunctionCall", + "src": "18363:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18351:3:74", + "nodeType": "YulIdentifier", + "src": "18351:3:74" + }, + "nativeSrc": "18351:30:74", + "nodeType": "YulFunctionCall", + "src": "18351:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "18341:6:74", + "nodeType": "YulTypedName", + "src": "18341:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "18409:103:74", + "nodeType": "YulBlock", + "src": "18409:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "18423:77:74", + "nodeType": "YulIdentifier", + "src": "18423:77:74" + }, + "nativeSrc": "18423:79:74", + "nodeType": "YulFunctionCall", + "src": "18423:79:74" + }, + "nativeSrc": "18423:79:74", + "nodeType": "YulExpressionStatement", + "src": "18423:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "18396:6:74", + "nodeType": "YulIdentifier", + "src": "18396:6:74" + }, + { + "name": "end", + "nativeSrc": "18404:3:74", + "nodeType": "YulIdentifier", + "src": "18404:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "18393:2:74", + "nodeType": "YulIdentifier", + "src": "18393:2:74" + }, + "nativeSrc": "18393:15:74", + "nodeType": "YulFunctionCall", + "src": "18393:15:74" + }, + "nativeSrc": "18390:122:74", + "nodeType": "YulIf", + "src": "18390:122:74" + }, + { + "body": { + "nativeSrc": "18597:362:74", + "nodeType": "YulBlock", + "src": "18597:362:74", + "statements": [ + { + "nativeSrc": "18612:29:74", + "nodeType": "YulVariableDeclaration", + "src": "18612:29:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "18637:3:74", + "nodeType": "YulIdentifier", + "src": "18637:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "18631:5:74", + "nodeType": "YulIdentifier", + "src": "18631:5:74" + }, + "nativeSrc": "18631:10:74", + "nodeType": "YulFunctionCall", + "src": "18631:10:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "18616:11:74", + "nodeType": "YulTypedName", + "src": "18616:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "18693:83:74", + "nodeType": "YulBlock", + "src": "18693:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "18695:77:74", + "nodeType": "YulIdentifier", + "src": "18695:77:74" + }, + "nativeSrc": "18695:79:74", + "nodeType": "YulFunctionCall", + "src": "18695:79:74" + }, + "nativeSrc": "18695:79:74", + "nodeType": "YulExpressionStatement", + "src": "18695:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "18660:11:74", + "nodeType": "YulIdentifier", + "src": "18660:11:74" + }, + { + "kind": "number", + "nativeSrc": "18673:18:74", + "nodeType": "YulLiteral", + "src": "18673:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "18657:2:74", + "nodeType": "YulIdentifier", + "src": "18657:2:74" + }, + "nativeSrc": "18657:35:74", + "nodeType": "YulFunctionCall", + "src": "18657:35:74" + }, + "nativeSrc": "18654:122:74", + "nodeType": "YulIf", + "src": "18654:122:74" + }, + { + "nativeSrc": "18789:42:74", + "nodeType": "YulVariableDeclaration", + "src": "18789:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18811:6:74", + "nodeType": "YulIdentifier", + "src": "18811:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "18819:11:74", + "nodeType": "YulIdentifier", + "src": "18819:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18807:3:74", + "nodeType": "YulIdentifier", + "src": "18807:3:74" + }, + "nativeSrc": "18807:24:74", + "nodeType": "YulFunctionCall", + "src": "18807:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "18793:10:74", + "nodeType": "YulTypedName", + "src": "18793:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "18852:3:74", + "nodeType": "YulIdentifier", + "src": "18852:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "18898:10:74", + "nodeType": "YulIdentifier", + "src": "18898:10:74" + }, + { + "name": "end", + "nativeSrc": "18910:3:74", + "nodeType": "YulIdentifier", + "src": "18910:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "18857:40:74", + "nodeType": "YulIdentifier", + "src": "18857:40:74" + }, + "nativeSrc": "18857:57:74", + "nodeType": "YulFunctionCall", + "src": "18857:57:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18845:6:74", + "nodeType": "YulIdentifier", + "src": "18845:6:74" + }, + "nativeSrc": "18845:70:74", + "nodeType": "YulFunctionCall", + "src": "18845:70:74" + }, + "nativeSrc": "18845:70:74", + "nodeType": "YulExpressionStatement", + "src": "18845:70:74" + }, + { + "nativeSrc": "18928:21:74", + "nodeType": "YulAssignment", + "src": "18928:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "18939:3:74", + "nodeType": "YulIdentifier", + "src": "18939:3:74" + }, + { + "kind": "number", + "nativeSrc": "18944:4:74", + "nodeType": "YulLiteral", + "src": "18944:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18935:3:74", + "nodeType": "YulIdentifier", + "src": "18935:3:74" + }, + "nativeSrc": "18935:14:74", + "nodeType": "YulFunctionCall", + "src": "18935:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "18928:3:74", + "nodeType": "YulIdentifier", + "src": "18928:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "18550:3:74", + "nodeType": "YulIdentifier", + "src": "18550:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "18555:6:74", + "nodeType": "YulIdentifier", + "src": "18555:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "18547:2:74", + "nodeType": "YulIdentifier", + "src": "18547:2:74" + }, + "nativeSrc": "18547:15:74", + "nodeType": "YulFunctionCall", + "src": "18547:15:74" + }, + "nativeSrc": "18521:438:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "18563:25:74", + "nodeType": "YulBlock", + "src": "18563:25:74", + "statements": [ + { + "nativeSrc": "18565:21:74", + "nodeType": "YulAssignment", + "src": "18565:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "18576:3:74", + "nodeType": "YulIdentifier", + "src": "18576:3:74" + }, + { + "kind": "number", + "nativeSrc": "18581:4:74", + "nodeType": "YulLiteral", + "src": "18581:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18572:3:74", + "nodeType": "YulIdentifier", + "src": "18572:3:74" + }, + "nativeSrc": "18572:14:74", + "nodeType": "YulFunctionCall", + "src": "18572:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "18565:3:74", + "nodeType": "YulIdentifier", + "src": "18565:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "18525:21:74", + "nodeType": "YulBlock", + "src": "18525:21:74", + "statements": [ + { + "nativeSrc": "18527:17:74", + "nodeType": "YulVariableDeclaration", + "src": "18527:17:74", + "value": { + "name": "offset", + "nativeSrc": "18538:6:74", + "nodeType": "YulIdentifier", + "src": "18538:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "18531:3:74", + "nodeType": "YulTypedName", + "src": "18531:3:74", + "type": "" + } + ] + } + ] + }, + "src": "18521:438:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "18008:957:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18100:6:74", + "nodeType": "YulTypedName", + "src": "18100:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "18108:6:74", + "nodeType": "YulTypedName", + "src": "18108:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18116:3:74", + "nodeType": "YulTypedName", + "src": "18116:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "18124:5:74", + "nodeType": "YulTypedName", + "src": "18124:5:74", + "type": "" + } + ], + "src": "18008:957:74" + }, + { + "body": { + "nativeSrc": "19083:306:74", + "nodeType": "YulBlock", + "src": "19083:306:74", + "statements": [ + { + "body": { + "nativeSrc": "19132:83:74", + "nodeType": "YulBlock", + "src": "19132:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "19134:77:74", + "nodeType": "YulIdentifier", + "src": "19134:77:74" + }, + "nativeSrc": "19134:79:74", + "nodeType": "YulFunctionCall", + "src": "19134:79:74" + }, + "nativeSrc": "19134:79:74", + "nodeType": "YulExpressionStatement", + "src": "19134:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19111:6:74", + "nodeType": "YulIdentifier", + "src": "19111:6:74" + }, + { + "kind": "number", + "nativeSrc": "19119:4:74", + "nodeType": "YulLiteral", + "src": "19119:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19107:3:74", + "nodeType": "YulIdentifier", + "src": "19107:3:74" + }, + "nativeSrc": "19107:17:74", + "nodeType": "YulFunctionCall", + "src": "19107:17:74" + }, + { + "name": "end", + "nativeSrc": "19126:3:74", + "nodeType": "YulIdentifier", + "src": "19126:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "19103:3:74", + "nodeType": "YulIdentifier", + "src": "19103:3:74" + }, + "nativeSrc": "19103:27:74", + "nodeType": "YulFunctionCall", + "src": "19103:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "19096:6:74", + "nodeType": "YulIdentifier", + "src": "19096:6:74" + }, + "nativeSrc": "19096:35:74", + "nodeType": "YulFunctionCall", + "src": "19096:35:74" + }, + "nativeSrc": "19093:122:74", + "nodeType": "YulIf", + "src": "19093:122:74" + }, + { + "nativeSrc": "19224:27:74", + "nodeType": "YulVariableDeclaration", + "src": "19224:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19244:6:74", + "nodeType": "YulIdentifier", + "src": "19244:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "19238:5:74", + "nodeType": "YulIdentifier", + "src": "19238:5:74" + }, + "nativeSrc": "19238:13:74", + "nodeType": "YulFunctionCall", + "src": "19238:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "19228:6:74", + "nodeType": "YulTypedName", + "src": "19228:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19260:123:74", + "nodeType": "YulAssignment", + "src": "19260:123:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19356:6:74", + "nodeType": "YulIdentifier", + "src": "19356:6:74" + }, + { + "kind": "number", + "nativeSrc": "19364:4:74", + "nodeType": "YulLiteral", + "src": "19364:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19352:3:74", + "nodeType": "YulIdentifier", + "src": "19352:3:74" + }, + "nativeSrc": "19352:17:74", + "nodeType": "YulFunctionCall", + "src": "19352:17:74" + }, + { + "name": "length", + "nativeSrc": "19371:6:74", + "nodeType": "YulIdentifier", + "src": "19371:6:74" + }, + { + "name": "end", + "nativeSrc": "19379:3:74", + "nodeType": "YulIdentifier", + "src": "19379:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "19269:82:74", + "nodeType": "YulIdentifier", + "src": "19269:82:74" + }, + "nativeSrc": "19269:114:74", + "nodeType": "YulFunctionCall", + "src": "19269:114:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "19260:5:74", + "nodeType": "YulIdentifier", + "src": "19260:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "18986:403:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "19061:6:74", + "nodeType": "YulTypedName", + "src": "19061:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19069:3:74", + "nodeType": "YulTypedName", + "src": "19069:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "19077:5:74", + "nodeType": "YulTypedName", + "src": "19077:5:74", + "type": "" + } + ], + "src": "18986:403:74" + }, + { + "body": { + "nativeSrc": "19517:879:74", + "nodeType": "YulBlock", + "src": "19517:879:74", + "statements": [ + { + "body": { + "nativeSrc": "19561:83:74", + "nodeType": "YulBlock", + "src": "19561:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "19563:77:74", + "nodeType": "YulIdentifier", + "src": "19563:77:74" + }, + "nativeSrc": "19563:79:74", + "nodeType": "YulFunctionCall", + "src": "19563:79:74" + }, + "nativeSrc": "19563:79:74", + "nodeType": "YulExpressionStatement", + "src": "19563:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "19538:3:74", + "nodeType": "YulIdentifier", + "src": "19538:3:74" + }, + { + "name": "headStart", + "nativeSrc": "19543:9:74", + "nodeType": "YulIdentifier", + "src": "19543:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19534:3:74", + "nodeType": "YulIdentifier", + "src": "19534:3:74" + }, + "nativeSrc": "19534:19:74", + "nodeType": "YulFunctionCall", + "src": "19534:19:74" + }, + { + "kind": "number", + "nativeSrc": "19555:4:74", + "nodeType": "YulLiteral", + "src": "19555:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "19530:3:74", + "nodeType": "YulIdentifier", + "src": "19530:3:74" + }, + "nativeSrc": "19530:30:74", + "nodeType": "YulFunctionCall", + "src": "19530:30:74" + }, + "nativeSrc": "19527:117:74", + "nodeType": "YulIf", + "src": "19527:117:74" + }, + { + "nativeSrc": "19653:30:74", + "nodeType": "YulAssignment", + "src": "19653:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19678:4:74", + "nodeType": "YulLiteral", + "src": "19678:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "19662:15:74", + "nodeType": "YulIdentifier", + "src": "19662:15:74" + }, + "nativeSrc": "19662:21:74", + "nodeType": "YulFunctionCall", + "src": "19662:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "19653:5:74", + "nodeType": "YulIdentifier", + "src": "19653:5:74" + } + ] + }, + { + "nativeSrc": "19693:324:74", + "nodeType": "YulBlock", + "src": "19693:324:74", + "statements": [ + { + "nativeSrc": "19729:38:74", + "nodeType": "YulVariableDeclaration", + "src": "19729:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19753:9:74", + "nodeType": "YulIdentifier", + "src": "19753:9:74" + }, + { + "kind": "number", + "nativeSrc": "19764:1:74", + "nodeType": "YulLiteral", + "src": "19764:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19749:3:74", + "nodeType": "YulIdentifier", + "src": "19749:3:74" + }, + "nativeSrc": "19749:17:74", + "nodeType": "YulFunctionCall", + "src": "19749:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "19743:5:74", + "nodeType": "YulIdentifier", + "src": "19743:5:74" + }, + "nativeSrc": "19743:24:74", + "nodeType": "YulFunctionCall", + "src": "19743:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "19733:6:74", + "nodeType": "YulTypedName", + "src": "19733:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "19814:83:74", + "nodeType": "YulBlock", + "src": "19814:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "19816:77:74", + "nodeType": "YulIdentifier", + "src": "19816:77:74" + }, + "nativeSrc": "19816:79:74", + "nodeType": "YulFunctionCall", + "src": "19816:79:74" + }, + "nativeSrc": "19816:79:74", + "nodeType": "YulExpressionStatement", + "src": "19816:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19786:6:74", + "nodeType": "YulIdentifier", + "src": "19786:6:74" + }, + { + "kind": "number", + "nativeSrc": "19794:18:74", + "nodeType": "YulLiteral", + "src": "19794:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19783:2:74", + "nodeType": "YulIdentifier", + "src": "19783:2:74" + }, + "nativeSrc": "19783:30:74", + "nodeType": "YulFunctionCall", + "src": "19783:30:74" + }, + "nativeSrc": "19780:117:74", + "nodeType": "YulIf", + "src": "19780:117:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "19922:5:74", + "nodeType": "YulIdentifier", + "src": "19922:5:74" + }, + { + "kind": "number", + "nativeSrc": "19929:4:74", + "nodeType": "YulLiteral", + "src": "19929:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19918:3:74", + "nodeType": "YulIdentifier", + "src": "19918:3:74" + }, + "nativeSrc": "19918:16:74", + "nodeType": "YulFunctionCall", + "src": "19918:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19981:9:74", + "nodeType": "YulIdentifier", + "src": "19981:9:74" + }, + { + "name": "offset", + "nativeSrc": "19992:6:74", + "nodeType": "YulIdentifier", + "src": "19992:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19977:3:74", + "nodeType": "YulIdentifier", + "src": "19977:3:74" + }, + "nativeSrc": "19977:22:74", + "nodeType": "YulFunctionCall", + "src": "19977:22:74" + }, + { + "name": "end", + "nativeSrc": "20001:3:74", + "nodeType": "YulIdentifier", + "src": "20001:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "19936:40:74", + "nodeType": "YulIdentifier", + "src": "19936:40:74" + }, + "nativeSrc": "19936:69:74", + "nodeType": "YulFunctionCall", + "src": "19936:69:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19911:6:74", + "nodeType": "YulIdentifier", + "src": "19911:6:74" + }, + "nativeSrc": "19911:95:74", + "nodeType": "YulFunctionCall", + "src": "19911:95:74" + }, + "nativeSrc": "19911:95:74", + "nodeType": "YulExpressionStatement", + "src": "19911:95:74" + } + ] + }, + { + "nativeSrc": "20027:362:74", + "nodeType": "YulBlock", + "src": "20027:362:74", + "statements": [ + { + "nativeSrc": "20075:39:74", + "nodeType": "YulVariableDeclaration", + "src": "20075:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20099:9:74", + "nodeType": "YulIdentifier", + "src": "20099:9:74" + }, + { + "kind": "number", + "nativeSrc": "20110:2:74", + "nodeType": "YulLiteral", + "src": "20110:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20095:3:74", + "nodeType": "YulIdentifier", + "src": "20095:3:74" + }, + "nativeSrc": "20095:18:74", + "nodeType": "YulFunctionCall", + "src": "20095:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "20089:5:74", + "nodeType": "YulIdentifier", + "src": "20089:5:74" + }, + "nativeSrc": "20089:25:74", + "nodeType": "YulFunctionCall", + "src": "20089:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20079:6:74", + "nodeType": "YulTypedName", + "src": "20079:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "20161:83:74", + "nodeType": "YulBlock", + "src": "20161:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "20163:77:74", + "nodeType": "YulIdentifier", + "src": "20163:77:74" + }, + "nativeSrc": "20163:79:74", + "nodeType": "YulFunctionCall", + "src": "20163:79:74" + }, + "nativeSrc": "20163:79:74", + "nodeType": "YulExpressionStatement", + "src": "20163:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20133:6:74", + "nodeType": "YulIdentifier", + "src": "20133:6:74" + }, + { + "kind": "number", + "nativeSrc": "20141:18:74", + "nodeType": "YulLiteral", + "src": "20141:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20130:2:74", + "nodeType": "YulIdentifier", + "src": "20130:2:74" + }, + "nativeSrc": "20130:30:74", + "nodeType": "YulFunctionCall", + "src": "20130:30:74" + }, + "nativeSrc": "20127:117:74", + "nodeType": "YulIf", + "src": "20127:117:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "20269:5:74", + "nodeType": "YulIdentifier", + "src": "20269:5:74" + }, + { + "kind": "number", + "nativeSrc": "20276:4:74", + "nodeType": "YulLiteral", + "src": "20276:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20265:3:74", + "nodeType": "YulIdentifier", + "src": "20265:3:74" + }, + "nativeSrc": "20265:16:74", + "nodeType": "YulFunctionCall", + "src": "20265:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20353:9:74", + "nodeType": "YulIdentifier", + "src": "20353:9:74" + }, + { + "name": "offset", + "nativeSrc": "20364:6:74", + "nodeType": "YulIdentifier", + "src": "20364:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20349:3:74", + "nodeType": "YulIdentifier", + "src": "20349:3:74" + }, + "nativeSrc": "20349:22:74", + "nodeType": "YulFunctionCall", + "src": "20349:22:74" + }, + { + "name": "end", + "nativeSrc": "20373:3:74", + "nodeType": "YulIdentifier", + "src": "20373:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "20283:65:74", + "nodeType": "YulIdentifier", + "src": "20283:65:74" + }, + "nativeSrc": "20283:94:74", + "nodeType": "YulFunctionCall", + "src": "20283:94:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20258:6:74", + "nodeType": "YulIdentifier", + "src": "20258:6:74" + }, + "nativeSrc": "20258:120:74", + "nodeType": "YulFunctionCall", + "src": "20258:120:74" + }, + "nativeSrc": "20258:120:74", + "nodeType": "YulExpressionStatement", + "src": "20258:120:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_AccountProof_$811_memory_ptr_fromMemory", + "nativeSrc": "19422:974:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "19492:9:74", + "nodeType": "YulTypedName", + "src": "19492:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19503:3:74", + "nodeType": "YulTypedName", + "src": "19503:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "19511:5:74", + "nodeType": "YulTypedName", + "src": "19511:5:74", + "type": "" + } + ], + "src": "19422:974:74" + }, + { + "body": { + "nativeSrc": "20536:875:74", + "nodeType": "YulBlock", + "src": "20536:875:74", + "statements": [ + { + "body": { + "nativeSrc": "20580:83:74", + "nodeType": "YulBlock", + "src": "20580:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "20582:77:74", + "nodeType": "YulIdentifier", + "src": "20582:77:74" + }, + "nativeSrc": "20582:79:74", + "nodeType": "YulFunctionCall", + "src": "20582:79:74" + }, + "nativeSrc": "20582:79:74", + "nodeType": "YulExpressionStatement", + "src": "20582:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "20557:3:74", + "nodeType": "YulIdentifier", + "src": "20557:3:74" + }, + { + "name": "headStart", + "nativeSrc": "20562:9:74", + "nodeType": "YulIdentifier", + "src": "20562:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20553:3:74", + "nodeType": "YulIdentifier", + "src": "20553:3:74" + }, + "nativeSrc": "20553:19:74", + "nodeType": "YulFunctionCall", + "src": "20553:19:74" + }, + { + "kind": "number", + "nativeSrc": "20574:4:74", + "nodeType": "YulLiteral", + "src": "20574:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20549:3:74", + "nodeType": "YulIdentifier", + "src": "20549:3:74" + }, + "nativeSrc": "20549:30:74", + "nodeType": "YulFunctionCall", + "src": "20549:30:74" + }, + "nativeSrc": "20546:117:74", + "nodeType": "YulIf", + "src": "20546:117:74" + }, + { + "nativeSrc": "20672:30:74", + "nodeType": "YulAssignment", + "src": "20672:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20697:4:74", + "nodeType": "YulLiteral", + "src": "20697:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "20681:15:74", + "nodeType": "YulIdentifier", + "src": "20681:15:74" + }, + "nativeSrc": "20681:21:74", + "nodeType": "YulFunctionCall", + "src": "20681:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "20672:5:74", + "nodeType": "YulIdentifier", + "src": "20672:5:74" + } + ] + }, + { + "nativeSrc": "20712:160:74", + "nodeType": "YulBlock", + "src": "20712:160:74", + "statements": [ + { + "nativeSrc": "20746:15:74", + "nodeType": "YulVariableDeclaration", + "src": "20746:15:74", + "value": { + "kind": "number", + "nativeSrc": "20760:1:74", + "nodeType": "YulLiteral", + "src": "20760:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20750:6:74", + "nodeType": "YulTypedName", + "src": "20750:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "20786:5:74", + "nodeType": "YulIdentifier", + "src": "20786:5:74" + }, + { + "kind": "number", + "nativeSrc": "20793:4:74", + "nodeType": "YulLiteral", + "src": "20793:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20782:3:74", + "nodeType": "YulIdentifier", + "src": "20782:3:74" + }, + "nativeSrc": "20782:16:74", + "nodeType": "YulFunctionCall", + "src": "20782:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20836:9:74", + "nodeType": "YulIdentifier", + "src": "20836:9:74" + }, + { + "name": "offset", + "nativeSrc": "20847:6:74", + "nodeType": "YulIdentifier", + "src": "20847:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20832:3:74", + "nodeType": "YulIdentifier", + "src": "20832:3:74" + }, + "nativeSrc": "20832:22:74", + "nodeType": "YulFunctionCall", + "src": "20832:22:74" + }, + { + "name": "end", + "nativeSrc": "20856:3:74", + "nodeType": "YulIdentifier", + "src": "20856:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "20800:31:74", + "nodeType": "YulIdentifier", + "src": "20800:31:74" + }, + "nativeSrc": "20800:60:74", + "nodeType": "YulFunctionCall", + "src": "20800:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20775:6:74", + "nodeType": "YulIdentifier", + "src": "20775:6:74" + }, + "nativeSrc": "20775:86:74", + "nodeType": "YulFunctionCall", + "src": "20775:86:74" + }, + "nativeSrc": "20775:86:74", + "nodeType": "YulExpressionStatement", + "src": "20775:86:74" + } + ] + }, + { + "nativeSrc": "20882:167:74", + "nodeType": "YulBlock", + "src": "20882:167:74", + "statements": [ + { + "nativeSrc": "20922:16:74", + "nodeType": "YulVariableDeclaration", + "src": "20922:16:74", + "value": { + "kind": "number", + "nativeSrc": "20936:2:74", + "nodeType": "YulLiteral", + "src": "20936:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20926:6:74", + "nodeType": "YulTypedName", + "src": "20926:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "20963:5:74", + "nodeType": "YulIdentifier", + "src": "20963:5:74" + }, + { + "kind": "number", + "nativeSrc": "20970:4:74", + "nodeType": "YulLiteral", + "src": "20970:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20959:3:74", + "nodeType": "YulIdentifier", + "src": "20959:3:74" + }, + "nativeSrc": "20959:16:74", + "nodeType": "YulFunctionCall", + "src": "20959:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21013:9:74", + "nodeType": "YulIdentifier", + "src": "21013:9:74" + }, + { + "name": "offset", + "nativeSrc": "21024:6:74", + "nodeType": "YulIdentifier", + "src": "21024:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21009:3:74", + "nodeType": "YulIdentifier", + "src": "21009:3:74" + }, + "nativeSrc": "21009:22:74", + "nodeType": "YulFunctionCall", + "src": "21009:22:74" + }, + { + "name": "end", + "nativeSrc": "21033:3:74", + "nodeType": "YulIdentifier", + "src": "21033:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "20977:31:74", + "nodeType": "YulIdentifier", + "src": "20977:31:74" + }, + "nativeSrc": "20977:60:74", + "nodeType": "YulFunctionCall", + "src": "20977:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20952:6:74", + "nodeType": "YulIdentifier", + "src": "20952:6:74" + }, + "nativeSrc": "20952:86:74", + "nodeType": "YulFunctionCall", + "src": "20952:86:74" + }, + "nativeSrc": "20952:86:74", + "nodeType": "YulExpressionStatement", + "src": "20952:86:74" + } + ] + }, + { + "nativeSrc": "21059:345:74", + "nodeType": "YulBlock", + "src": "21059:345:74", + "statements": [ + { + "nativeSrc": "21095:39:74", + "nodeType": "YulVariableDeclaration", + "src": "21095:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21119:9:74", + "nodeType": "YulIdentifier", + "src": "21119:9:74" + }, + { + "kind": "number", + "nativeSrc": "21130:2:74", + "nodeType": "YulLiteral", + "src": "21130:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21115:3:74", + "nodeType": "YulIdentifier", + "src": "21115:3:74" + }, + "nativeSrc": "21115:18:74", + "nodeType": "YulFunctionCall", + "src": "21115:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "21109:5:74", + "nodeType": "YulIdentifier", + "src": "21109:5:74" + }, + "nativeSrc": "21109:25:74", + "nodeType": "YulFunctionCall", + "src": "21109:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21099:6:74", + "nodeType": "YulTypedName", + "src": "21099:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "21181:83:74", + "nodeType": "YulBlock", + "src": "21181:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "21183:77:74", + "nodeType": "YulIdentifier", + "src": "21183:77:74" + }, + "nativeSrc": "21183:79:74", + "nodeType": "YulFunctionCall", + "src": "21183:79:74" + }, + "nativeSrc": "21183:79:74", + "nodeType": "YulExpressionStatement", + "src": "21183:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21153:6:74", + "nodeType": "YulIdentifier", + "src": "21153:6:74" + }, + { + "kind": "number", + "nativeSrc": "21161:18:74", + "nodeType": "YulLiteral", + "src": "21161:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "21150:2:74", + "nodeType": "YulIdentifier", + "src": "21150:2:74" + }, + "nativeSrc": "21150:30:74", + "nodeType": "YulFunctionCall", + "src": "21150:30:74" + }, + "nativeSrc": "21147:117:74", + "nodeType": "YulIf", + "src": "21147:117:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "21289:5:74", + "nodeType": "YulIdentifier", + "src": "21289:5:74" + }, + { + "kind": "number", + "nativeSrc": "21296:4:74", + "nodeType": "YulLiteral", + "src": "21296:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21285:3:74", + "nodeType": "YulIdentifier", + "src": "21285:3:74" + }, + "nativeSrc": "21285:16:74", + "nodeType": "YulFunctionCall", + "src": "21285:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21368:9:74", + "nodeType": "YulIdentifier", + "src": "21368:9:74" + }, + { + "name": "offset", + "nativeSrc": "21379:6:74", + "nodeType": "YulIdentifier", + "src": "21379:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21364:3:74", + "nodeType": "YulIdentifier", + "src": "21364:3:74" + }, + "nativeSrc": "21364:22:74", + "nodeType": "YulFunctionCall", + "src": "21364:22:74" + }, + { + "name": "end", + "nativeSrc": "21388:3:74", + "nodeType": "YulIdentifier", + "src": "21388:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_AccountProof_$811_memory_ptr_fromMemory", + "nativeSrc": "21303:60:74", + "nodeType": "YulIdentifier", + "src": "21303:60:74" + }, + "nativeSrc": "21303:89:74", + "nodeType": "YulFunctionCall", + "src": "21303:89:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21278:6:74", + "nodeType": "YulIdentifier", + "src": "21278:6:74" + }, + "nativeSrc": "21278:115:74", + "nodeType": "YulFunctionCall", + "src": "21278:115:74" + }, + "nativeSrc": "21278:115:74", + "nodeType": "YulExpressionStatement", + "src": "21278:115:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_AccountProofStruct_$825_memory_ptr_fromMemory", + "nativeSrc": "20435:976:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "20511:9:74", + "nodeType": "YulTypedName", + "src": "20511:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "20522:3:74", + "nodeType": "YulTypedName", + "src": "20522:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "20530:5:74", + "nodeType": "YulTypedName", + "src": "20530:5:74", + "type": "" + } + ], + "src": "20435:976:74" + }, + { + "body": { + "nativeSrc": "21534:229:74", + "nodeType": "YulBlock", + "src": "21534:229:74", + "statements": [ + { + "body": { + "nativeSrc": "21639:22:74", + "nodeType": "YulBlock", + "src": "21639:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "21641:16:74", + "nodeType": "YulIdentifier", + "src": "21641:16:74" + }, + "nativeSrc": "21641:18:74", + "nodeType": "YulFunctionCall", + "src": "21641:18:74" + }, + "nativeSrc": "21641:18:74", + "nodeType": "YulExpressionStatement", + "src": "21641:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "21611:6:74", + "nodeType": "YulIdentifier", + "src": "21611:6:74" + }, + { + "kind": "number", + "nativeSrc": "21619:18:74", + "nodeType": "YulLiteral", + "src": "21619:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "21608:2:74", + "nodeType": "YulIdentifier", + "src": "21608:2:74" + }, + "nativeSrc": "21608:30:74", + "nodeType": "YulFunctionCall", + "src": "21608:30:74" + }, + "nativeSrc": "21605:56:74", + "nodeType": "YulIf", + "src": "21605:56:74" + }, + { + "nativeSrc": "21671:25:74", + "nodeType": "YulAssignment", + "src": "21671:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "21683:6:74", + "nodeType": "YulIdentifier", + "src": "21683:6:74" + }, + { + "kind": "number", + "nativeSrc": "21691:4:74", + "nodeType": "YulLiteral", + "src": "21691:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "21679:3:74", + "nodeType": "YulIdentifier", + "src": "21679:3:74" + }, + "nativeSrc": "21679:17:74", + "nodeType": "YulFunctionCall", + "src": "21679:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "21671:4:74", + "nodeType": "YulIdentifier", + "src": "21671:4:74" + } + ] + }, + { + "nativeSrc": "21733:23:74", + "nodeType": "YulAssignment", + "src": "21733:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "21745:4:74", + "nodeType": "YulIdentifier", + "src": "21745:4:74" + }, + { + "kind": "number", + "nativeSrc": "21751:4:74", + "nodeType": "YulLiteral", + "src": "21751:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21741:3:74", + "nodeType": "YulIdentifier", + "src": "21741:3:74" + }, + "nativeSrc": "21741:15:74", + "nodeType": "YulFunctionCall", + "src": "21741:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "21733:4:74", + "nodeType": "YulIdentifier", + "src": "21733:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "21417:346:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "21518:6:74", + "nodeType": "YulTypedName", + "src": "21518:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "21529:4:74", + "nodeType": "YulTypedName", + "src": "21529:4:74", + "type": "" + } + ], + "src": "21417:346:74" + }, + { + "body": { + "nativeSrc": "21832:80:74", + "nodeType": "YulBlock", + "src": "21832:80:74", + "statements": [ + { + "nativeSrc": "21842:22:74", + "nodeType": "YulAssignment", + "src": "21842:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21857:6:74", + "nodeType": "YulIdentifier", + "src": "21857:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "21851:5:74", + "nodeType": "YulIdentifier", + "src": "21851:5:74" + }, + "nativeSrc": "21851:13:74", + "nodeType": "YulFunctionCall", + "src": "21851:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "21842:5:74", + "nodeType": "YulIdentifier", + "src": "21842:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "21900:5:74", + "nodeType": "YulIdentifier", + "src": "21900:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "21873:26:74", + "nodeType": "YulIdentifier", + "src": "21873:26:74" + }, + "nativeSrc": "21873:33:74", + "nodeType": "YulFunctionCall", + "src": "21873:33:74" + }, + "nativeSrc": "21873:33:74", + "nodeType": "YulExpressionStatement", + "src": "21873:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "21769:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "21810:6:74", + "nodeType": "YulTypedName", + "src": "21810:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "21818:3:74", + "nodeType": "YulTypedName", + "src": "21818:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "21826:5:74", + "nodeType": "YulTypedName", + "src": "21826:5:74", + "type": "" + } + ], + "src": "21769:143:74" + }, + { + "body": { + "nativeSrc": "22040:717:74", + "nodeType": "YulBlock", + "src": "22040:717:74", + "statements": [ + { + "body": { + "nativeSrc": "22084:83:74", + "nodeType": "YulBlock", + "src": "22084:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "22086:77:74", + "nodeType": "YulIdentifier", + "src": "22086:77:74" + }, + "nativeSrc": "22086:79:74", + "nodeType": "YulFunctionCall", + "src": "22086:79:74" + }, + "nativeSrc": "22086:79:74", + "nodeType": "YulExpressionStatement", + "src": "22086:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "22061:3:74", + "nodeType": "YulIdentifier", + "src": "22061:3:74" + }, + { + "name": "headStart", + "nativeSrc": "22066:9:74", + "nodeType": "YulIdentifier", + "src": "22066:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22057:3:74", + "nodeType": "YulIdentifier", + "src": "22057:3:74" + }, + "nativeSrc": "22057:19:74", + "nodeType": "YulFunctionCall", + "src": "22057:19:74" + }, + { + "kind": "number", + "nativeSrc": "22078:4:74", + "nodeType": "YulLiteral", + "src": "22078:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "22053:3:74", + "nodeType": "YulIdentifier", + "src": "22053:3:74" + }, + "nativeSrc": "22053:30:74", + "nodeType": "YulFunctionCall", + "src": "22053:30:74" + }, + "nativeSrc": "22050:117:74", + "nodeType": "YulIf", + "src": "22050:117:74" + }, + { + "nativeSrc": "22176:30:74", + "nodeType": "YulAssignment", + "src": "22176:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "22201:4:74", + "nodeType": "YulLiteral", + "src": "22201:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "22185:15:74", + "nodeType": "YulIdentifier", + "src": "22185:15:74" + }, + "nativeSrc": "22185:21:74", + "nodeType": "YulFunctionCall", + "src": "22185:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "22176:5:74", + "nodeType": "YulIdentifier", + "src": "22176:5:74" + } + ] + }, + { + "nativeSrc": "22216:162:74", + "nodeType": "YulBlock", + "src": "22216:162:74", + "statements": [ + { + "nativeSrc": "22252:15:74", + "nodeType": "YulVariableDeclaration", + "src": "22252:15:74", + "value": { + "kind": "number", + "nativeSrc": "22266:1:74", + "nodeType": "YulLiteral", + "src": "22266:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22256:6:74", + "nodeType": "YulTypedName", + "src": "22256:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22292:5:74", + "nodeType": "YulIdentifier", + "src": "22292:5:74" + }, + { + "kind": "number", + "nativeSrc": "22299:4:74", + "nodeType": "YulLiteral", + "src": "22299:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22288:3:74", + "nodeType": "YulIdentifier", + "src": "22288:3:74" + }, + "nativeSrc": "22288:16:74", + "nodeType": "YulFunctionCall", + "src": "22288:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22342:9:74", + "nodeType": "YulIdentifier", + "src": "22342:9:74" + }, + { + "name": "offset", + "nativeSrc": "22353:6:74", + "nodeType": "YulIdentifier", + "src": "22353:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22338:3:74", + "nodeType": "YulIdentifier", + "src": "22338:3:74" + }, + "nativeSrc": "22338:22:74", + "nodeType": "YulFunctionCall", + "src": "22338:22:74" + }, + { + "name": "end", + "nativeSrc": "22362:3:74", + "nodeType": "YulIdentifier", + "src": "22362:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "22306:31:74", + "nodeType": "YulIdentifier", + "src": "22306:31:74" + }, + "nativeSrc": "22306:60:74", + "nodeType": "YulFunctionCall", + "src": "22306:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22281:6:74", + "nodeType": "YulIdentifier", + "src": "22281:6:74" + }, + "nativeSrc": "22281:86:74", + "nodeType": "YulFunctionCall", + "src": "22281:86:74" + }, + "nativeSrc": "22281:86:74", + "nodeType": "YulExpressionStatement", + "src": "22281:86:74" + } + ] + }, + { + "nativeSrc": "22388:362:74", + "nodeType": "YulBlock", + "src": "22388:362:74", + "statements": [ + { + "nativeSrc": "22436:39:74", + "nodeType": "YulVariableDeclaration", + "src": "22436:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22460:9:74", + "nodeType": "YulIdentifier", + "src": "22460:9:74" + }, + { + "kind": "number", + "nativeSrc": "22471:2:74", + "nodeType": "YulLiteral", + "src": "22471:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22456:3:74", + "nodeType": "YulIdentifier", + "src": "22456:3:74" + }, + "nativeSrc": "22456:18:74", + "nodeType": "YulFunctionCall", + "src": "22456:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "22450:5:74", + "nodeType": "YulIdentifier", + "src": "22450:5:74" + }, + "nativeSrc": "22450:25:74", + "nodeType": "YulFunctionCall", + "src": "22450:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22440:6:74", + "nodeType": "YulTypedName", + "src": "22440:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "22522:83:74", + "nodeType": "YulBlock", + "src": "22522:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "22524:77:74", + "nodeType": "YulIdentifier", + "src": "22524:77:74" + }, + "nativeSrc": "22524:79:74", + "nodeType": "YulFunctionCall", + "src": "22524:79:74" + }, + "nativeSrc": "22524:79:74", + "nodeType": "YulExpressionStatement", + "src": "22524:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "22494:6:74", + "nodeType": "YulIdentifier", + "src": "22494:6:74" + }, + { + "kind": "number", + "nativeSrc": "22502:18:74", + "nodeType": "YulLiteral", + "src": "22502:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "22491:2:74", + "nodeType": "YulIdentifier", + "src": "22491:2:74" + }, + "nativeSrc": "22491:30:74", + "nodeType": "YulFunctionCall", + "src": "22491:30:74" + }, + "nativeSrc": "22488:117:74", + "nodeType": "YulIf", + "src": "22488:117:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22630:5:74", + "nodeType": "YulIdentifier", + "src": "22630:5:74" + }, + { + "kind": "number", + "nativeSrc": "22637:4:74", + "nodeType": "YulLiteral", + "src": "22637:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22626:3:74", + "nodeType": "YulIdentifier", + "src": "22626:3:74" + }, + "nativeSrc": "22626:16:74", + "nodeType": "YulFunctionCall", + "src": "22626:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22714:9:74", + "nodeType": "YulIdentifier", + "src": "22714:9:74" + }, + { + "name": "offset", + "nativeSrc": "22725:6:74", + "nodeType": "YulIdentifier", + "src": "22725:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22710:3:74", + "nodeType": "YulIdentifier", + "src": "22710:3:74" + }, + "nativeSrc": "22710:22:74", + "nodeType": "YulFunctionCall", + "src": "22710:22:74" + }, + { + "name": "end", + "nativeSrc": "22734:3:74", + "nodeType": "YulIdentifier", + "src": "22734:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "22644:65:74", + "nodeType": "YulIdentifier", + "src": "22644:65:74" + }, + "nativeSrc": "22644:94:74", + "nodeType": "YulFunctionCall", + "src": "22644:94:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22619:6:74", + "nodeType": "YulIdentifier", + "src": "22619:6:74" + }, + "nativeSrc": "22619:120:74", + "nodeType": "YulFunctionCall", + "src": "22619:120:74" + }, + "nativeSrc": "22619:120:74", + "nodeType": "YulExpressionStatement", + "src": "22619:120:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_StorageProof_$817_memory_ptr_fromMemory", + "nativeSrc": "21945:812:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22015:9:74", + "nodeType": "YulTypedName", + "src": "22015:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "22026:3:74", + "nodeType": "YulTypedName", + "src": "22026:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "22034:5:74", + "nodeType": "YulTypedName", + "src": "22034:5:74", + "type": "" + } + ], + "src": "21945:812:74" + }, + { + "body": { + "nativeSrc": "22805:48:74", + "nodeType": "YulBlock", + "src": "22805:48:74", + "statements": [ + { + "nativeSrc": "22815:32:74", + "nodeType": "YulAssignment", + "src": "22815:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22840:5:74", + "nodeType": "YulIdentifier", + "src": "22840:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "22833:6:74", + "nodeType": "YulIdentifier", + "src": "22833:6:74" + }, + "nativeSrc": "22833:13:74", + "nodeType": "YulFunctionCall", + "src": "22833:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "22826:6:74", + "nodeType": "YulIdentifier", + "src": "22826:6:74" + }, + "nativeSrc": "22826:21:74", + "nodeType": "YulFunctionCall", + "src": "22826:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "22815:7:74", + "nodeType": "YulIdentifier", + "src": "22815:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "22763:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22787:5:74", + "nodeType": "YulTypedName", + "src": "22787:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "22797:7:74", + "nodeType": "YulTypedName", + "src": "22797:7:74", + "type": "" + } + ], + "src": "22763:90:74" + }, + { + "body": { + "nativeSrc": "22899:76:74", + "nodeType": "YulBlock", + "src": "22899:76:74", + "statements": [ + { + "body": { + "nativeSrc": "22953:16:74", + "nodeType": "YulBlock", + "src": "22953:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "22962:1:74", + "nodeType": "YulLiteral", + "src": "22962:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "22965:1:74", + "nodeType": "YulLiteral", + "src": "22965:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "22955:6:74", + "nodeType": "YulIdentifier", + "src": "22955:6:74" + }, + "nativeSrc": "22955:12:74", + "nodeType": "YulFunctionCall", + "src": "22955:12:74" + }, + "nativeSrc": "22955:12:74", + "nodeType": "YulExpressionStatement", + "src": "22955:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22922:5:74", + "nodeType": "YulIdentifier", + "src": "22922:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22944:5:74", + "nodeType": "YulIdentifier", + "src": "22944:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "22929:14:74", + "nodeType": "YulIdentifier", + "src": "22929:14:74" + }, + "nativeSrc": "22929:21:74", + "nodeType": "YulFunctionCall", + "src": "22929:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "22919:2:74", + "nodeType": "YulIdentifier", + "src": "22919:2:74" + }, + "nativeSrc": "22919:32:74", + "nodeType": "YulFunctionCall", + "src": "22919:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "22912:6:74", + "nodeType": "YulIdentifier", + "src": "22912:6:74" + }, + "nativeSrc": "22912:40:74", + "nodeType": "YulFunctionCall", + "src": "22912:40:74" + }, + "nativeSrc": "22909:60:74", + "nodeType": "YulIf", + "src": "22909:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "22859:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22892:5:74", + "nodeType": "YulTypedName", + "src": "22892:5:74", + "type": "" + } + ], + "src": "22859:116:74" + }, + { + "body": { + "nativeSrc": "23041:77:74", + "nodeType": "YulBlock", + "src": "23041:77:74", + "statements": [ + { + "nativeSrc": "23051:22:74", + "nodeType": "YulAssignment", + "src": "23051:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "23066:6:74", + "nodeType": "YulIdentifier", + "src": "23066:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "23060:5:74", + "nodeType": "YulIdentifier", + "src": "23060:5:74" + }, + "nativeSrc": "23060:13:74", + "nodeType": "YulFunctionCall", + "src": "23060:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23051:5:74", + "nodeType": "YulIdentifier", + "src": "23051:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23106:5:74", + "nodeType": "YulIdentifier", + "src": "23106:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "23082:23:74", + "nodeType": "YulIdentifier", + "src": "23082:23:74" + }, + "nativeSrc": "23082:30:74", + "nodeType": "YulFunctionCall", + "src": "23082:30:74" + }, + "nativeSrc": "23082:30:74", + "nodeType": "YulExpressionStatement", + "src": "23082:30:74" + } + ] + }, + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "22981:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "23019:6:74", + "nodeType": "YulTypedName", + "src": "23019:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "23027:3:74", + "nodeType": "YulTypedName", + "src": "23027:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "23035:5:74", + "nodeType": "YulTypedName", + "src": "23035:5:74", + "type": "" + } + ], + "src": "22981:137:74" + }, + { + "body": { + "nativeSrc": "23258:1051:74", + "nodeType": "YulBlock", + "src": "23258:1051:74", + "statements": [ + { + "body": { + "nativeSrc": "23302:83:74", + "nodeType": "YulBlock", + "src": "23302:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "23304:77:74", + "nodeType": "YulIdentifier", + "src": "23304:77:74" + }, + "nativeSrc": "23304:79:74", + "nodeType": "YulFunctionCall", + "src": "23304:79:74" + }, + "nativeSrc": "23304:79:74", + "nodeType": "YulExpressionStatement", + "src": "23304:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "23279:3:74", + "nodeType": "YulIdentifier", + "src": "23279:3:74" + }, + { + "name": "headStart", + "nativeSrc": "23284:9:74", + "nodeType": "YulIdentifier", + "src": "23284:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23275:3:74", + "nodeType": "YulIdentifier", + "src": "23275:3:74" + }, + "nativeSrc": "23275:19:74", + "nodeType": "YulFunctionCall", + "src": "23275:19:74" + }, + { + "kind": "number", + "nativeSrc": "23296:4:74", + "nodeType": "YulLiteral", + "src": "23296:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "23271:3:74", + "nodeType": "YulIdentifier", + "src": "23271:3:74" + }, + "nativeSrc": "23271:30:74", + "nodeType": "YulFunctionCall", + "src": "23271:30:74" + }, + "nativeSrc": "23268:117:74", + "nodeType": "YulIf", + "src": "23268:117:74" + }, + { + "nativeSrc": "23394:30:74", + "nodeType": "YulAssignment", + "src": "23394:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "23419:4:74", + "nodeType": "YulLiteral", + "src": "23419:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "23403:15:74", + "nodeType": "YulIdentifier", + "src": "23403:15:74" + }, + "nativeSrc": "23403:21:74", + "nodeType": "YulFunctionCall", + "src": "23403:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23394:5:74", + "nodeType": "YulIdentifier", + "src": "23394:5:74" + } + ] + }, + { + "nativeSrc": "23434:160:74", + "nodeType": "YulBlock", + "src": "23434:160:74", + "statements": [ + { + "nativeSrc": "23468:15:74", + "nodeType": "YulVariableDeclaration", + "src": "23468:15:74", + "value": { + "kind": "number", + "nativeSrc": "23482:1:74", + "nodeType": "YulLiteral", + "src": "23482:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23472:6:74", + "nodeType": "YulTypedName", + "src": "23472:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23508:5:74", + "nodeType": "YulIdentifier", + "src": "23508:5:74" + }, + { + "kind": "number", + "nativeSrc": "23515:4:74", + "nodeType": "YulLiteral", + "src": "23515:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23504:3:74", + "nodeType": "YulIdentifier", + "src": "23504:3:74" + }, + "nativeSrc": "23504:16:74", + "nodeType": "YulFunctionCall", + "src": "23504:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23558:9:74", + "nodeType": "YulIdentifier", + "src": "23558:9:74" + }, + { + "name": "offset", + "nativeSrc": "23569:6:74", + "nodeType": "YulIdentifier", + "src": "23569:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23554:3:74", + "nodeType": "YulIdentifier", + "src": "23554:3:74" + }, + "nativeSrc": "23554:22:74", + "nodeType": "YulFunctionCall", + "src": "23554:22:74" + }, + { + "name": "end", + "nativeSrc": "23578:3:74", + "nodeType": "YulIdentifier", + "src": "23578:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "23522:31:74", + "nodeType": "YulIdentifier", + "src": "23522:31:74" + }, + "nativeSrc": "23522:60:74", + "nodeType": "YulFunctionCall", + "src": "23522:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23497:6:74", + "nodeType": "YulIdentifier", + "src": "23497:6:74" + }, + "nativeSrc": "23497:86:74", + "nodeType": "YulFunctionCall", + "src": "23497:86:74" + }, + "nativeSrc": "23497:86:74", + "nodeType": "YulExpressionStatement", + "src": "23497:86:74" + } + ] + }, + { + "nativeSrc": "23604:167:74", + "nodeType": "YulBlock", + "src": "23604:167:74", + "statements": [ + { + "nativeSrc": "23644:16:74", + "nodeType": "YulVariableDeclaration", + "src": "23644:16:74", + "value": { + "kind": "number", + "nativeSrc": "23658:2:74", + "nodeType": "YulLiteral", + "src": "23658:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23648:6:74", + "nodeType": "YulTypedName", + "src": "23648:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23685:5:74", + "nodeType": "YulIdentifier", + "src": "23685:5:74" + }, + { + "kind": "number", + "nativeSrc": "23692:4:74", + "nodeType": "YulLiteral", + "src": "23692:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23681:3:74", + "nodeType": "YulIdentifier", + "src": "23681:3:74" + }, + "nativeSrc": "23681:16:74", + "nodeType": "YulFunctionCall", + "src": "23681:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23735:9:74", + "nodeType": "YulIdentifier", + "src": "23735:9:74" + }, + { + "name": "offset", + "nativeSrc": "23746:6:74", + "nodeType": "YulIdentifier", + "src": "23746:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23731:3:74", + "nodeType": "YulIdentifier", + "src": "23731:3:74" + }, + "nativeSrc": "23731:22:74", + "nodeType": "YulFunctionCall", + "src": "23731:22:74" + }, + { + "name": "end", + "nativeSrc": "23755:3:74", + "nodeType": "YulIdentifier", + "src": "23755:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "23699:31:74", + "nodeType": "YulIdentifier", + "src": "23699:31:74" + }, + "nativeSrc": "23699:60:74", + "nodeType": "YulFunctionCall", + "src": "23699:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23674:6:74", + "nodeType": "YulIdentifier", + "src": "23674:6:74" + }, + "nativeSrc": "23674:86:74", + "nodeType": "YulFunctionCall", + "src": "23674:86:74" + }, + "nativeSrc": "23674:86:74", + "nodeType": "YulExpressionStatement", + "src": "23674:86:74" + } + ] + }, + { + "nativeSrc": "23781:345:74", + "nodeType": "YulBlock", + "src": "23781:345:74", + "statements": [ + { + "nativeSrc": "23817:39:74", + "nodeType": "YulVariableDeclaration", + "src": "23817:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23841:9:74", + "nodeType": "YulIdentifier", + "src": "23841:9:74" + }, + { + "kind": "number", + "nativeSrc": "23852:2:74", + "nodeType": "YulLiteral", + "src": "23852:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23837:3:74", + "nodeType": "YulIdentifier", + "src": "23837:3:74" + }, + "nativeSrc": "23837:18:74", + "nodeType": "YulFunctionCall", + "src": "23837:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "23831:5:74", + "nodeType": "YulIdentifier", + "src": "23831:5:74" + }, + "nativeSrc": "23831:25:74", + "nodeType": "YulFunctionCall", + "src": "23831:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23821:6:74", + "nodeType": "YulTypedName", + "src": "23821:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "23903:83:74", + "nodeType": "YulBlock", + "src": "23903:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "23905:77:74", + "nodeType": "YulIdentifier", + "src": "23905:77:74" + }, + "nativeSrc": "23905:79:74", + "nodeType": "YulFunctionCall", + "src": "23905:79:74" + }, + "nativeSrc": "23905:79:74", + "nodeType": "YulExpressionStatement", + "src": "23905:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "23875:6:74", + "nodeType": "YulIdentifier", + "src": "23875:6:74" + }, + { + "kind": "number", + "nativeSrc": "23883:18:74", + "nodeType": "YulLiteral", + "src": "23883:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "23872:2:74", + "nodeType": "YulIdentifier", + "src": "23872:2:74" + }, + "nativeSrc": "23872:30:74", + "nodeType": "YulFunctionCall", + "src": "23872:30:74" + }, + "nativeSrc": "23869:117:74", + "nodeType": "YulIf", + "src": "23869:117:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "24011:5:74", + "nodeType": "YulIdentifier", + "src": "24011:5:74" + }, + { + "kind": "number", + "nativeSrc": "24018:4:74", + "nodeType": "YulLiteral", + "src": "24018:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24007:3:74", + "nodeType": "YulIdentifier", + "src": "24007:3:74" + }, + "nativeSrc": "24007:16:74", + "nodeType": "YulFunctionCall", + "src": "24007:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24090:9:74", + "nodeType": "YulIdentifier", + "src": "24090:9:74" + }, + { + "name": "offset", + "nativeSrc": "24101:6:74", + "nodeType": "YulIdentifier", + "src": "24101:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24086:3:74", + "nodeType": "YulIdentifier", + "src": "24086:3:74" + }, + "nativeSrc": "24086:22:74", + "nodeType": "YulFunctionCall", + "src": "24086:22:74" + }, + { + "name": "end", + "nativeSrc": "24110:3:74", + "nodeType": "YulIdentifier", + "src": "24110:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_StorageProof_$817_memory_ptr_fromMemory", + "nativeSrc": "24025:60:74", + "nodeType": "YulIdentifier", + "src": "24025:60:74" + }, + "nativeSrc": "24025:89:74", + "nodeType": "YulFunctionCall", + "src": "24025:89:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24000:6:74", + "nodeType": "YulIdentifier", + "src": "24000:6:74" + }, + "nativeSrc": "24000:115:74", + "nodeType": "YulFunctionCall", + "src": "24000:115:74" + }, + "nativeSrc": "24000:115:74", + "nodeType": "YulExpressionStatement", + "src": "24000:115:74" + } + ] + }, + { + "nativeSrc": "24136:166:74", + "nodeType": "YulBlock", + "src": "24136:166:74", + "statements": [ + { + "nativeSrc": "24178:16:74", + "nodeType": "YulVariableDeclaration", + "src": "24178:16:74", + "value": { + "kind": "number", + "nativeSrc": "24192:2:74", + "nodeType": "YulLiteral", + "src": "24192:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "24182:6:74", + "nodeType": "YulTypedName", + "src": "24182:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "24219:5:74", + "nodeType": "YulIdentifier", + "src": "24219:5:74" + }, + { + "kind": "number", + "nativeSrc": "24226:4:74", + "nodeType": "YulLiteral", + "src": "24226:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24215:3:74", + "nodeType": "YulIdentifier", + "src": "24215:3:74" + }, + "nativeSrc": "24215:16:74", + "nodeType": "YulFunctionCall", + "src": "24215:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24266:9:74", + "nodeType": "YulIdentifier", + "src": "24266:9:74" + }, + { + "name": "offset", + "nativeSrc": "24277:6:74", + "nodeType": "YulIdentifier", + "src": "24277:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24262:3:74", + "nodeType": "YulIdentifier", + "src": "24262:3:74" + }, + "nativeSrc": "24262:22:74", + "nodeType": "YulFunctionCall", + "src": "24262:22:74" + }, + { + "name": "end", + "nativeSrc": "24286:3:74", + "nodeType": "YulIdentifier", + "src": "24286:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "24233:28:74", + "nodeType": "YulIdentifier", + "src": "24233:28:74" + }, + "nativeSrc": "24233:57:74", + "nodeType": "YulFunctionCall", + "src": "24233:57:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24208:6:74", + "nodeType": "YulIdentifier", + "src": "24208:6:74" + }, + "nativeSrc": "24208:83:74", + "nodeType": "YulFunctionCall", + "src": "24208:83:74" + }, + "nativeSrc": "24208:83:74", + "nodeType": "YulExpressionStatement", + "src": "24208:83:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_StorageProofStruct_$835_memory_ptr_fromMemory", + "nativeSrc": "23157:1152:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23233:9:74", + "nodeType": "YulTypedName", + "src": "23233:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "23244:3:74", + "nodeType": "YulTypedName", + "src": "23244:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "23252:5:74", + "nodeType": "YulTypedName", + "src": "23252:5:74", + "type": "" + } + ], + "src": "23157:1152:74" + }, + { + "body": { + "nativeSrc": "24498:887:74", + "nodeType": "YulBlock", + "src": "24498:887:74", + "statements": [ + { + "nativeSrc": "24508:125:74", + "nodeType": "YulAssignment", + "src": "24508:125:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "24625:6:74", + "nodeType": "YulIdentifier", + "src": "24625:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "24533:91:74", + "nodeType": "YulIdentifier", + "src": "24533:91:74" + }, + "nativeSrc": "24533:99:74", + "nodeType": "YulFunctionCall", + "src": "24533:99:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "24517:15:74", + "nodeType": "YulIdentifier", + "src": "24517:15:74" + }, + "nativeSrc": "24517:116:74", + "nodeType": "YulFunctionCall", + "src": "24517:116:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "24508:5:74", + "nodeType": "YulIdentifier", + "src": "24508:5:74" + } + ] + }, + { + "nativeSrc": "24642:16:74", + "nodeType": "YulVariableDeclaration", + "src": "24642:16:74", + "value": { + "name": "array", + "nativeSrc": "24653:5:74", + "nodeType": "YulIdentifier", + "src": "24653:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "24646:3:74", + "nodeType": "YulTypedName", + "src": "24646:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "24675:5:74", + "nodeType": "YulIdentifier", + "src": "24675:5:74" + }, + { + "name": "length", + "nativeSrc": "24682:6:74", + "nodeType": "YulIdentifier", + "src": "24682:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24668:6:74", + "nodeType": "YulIdentifier", + "src": "24668:6:74" + }, + "nativeSrc": "24668:21:74", + "nodeType": "YulFunctionCall", + "src": "24668:21:74" + }, + "nativeSrc": "24668:21:74", + "nodeType": "YulExpressionStatement", + "src": "24668:21:74" + }, + { + "nativeSrc": "24698:23:74", + "nodeType": "YulAssignment", + "src": "24698:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "24709:5:74", + "nodeType": "YulIdentifier", + "src": "24709:5:74" + }, + { + "kind": "number", + "nativeSrc": "24716:4:74", + "nodeType": "YulLiteral", + "src": "24716:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24705:3:74", + "nodeType": "YulIdentifier", + "src": "24705:3:74" + }, + "nativeSrc": "24705:16:74", + "nodeType": "YulFunctionCall", + "src": "24705:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "24698:3:74", + "nodeType": "YulIdentifier", + "src": "24698:3:74" + } + ] + }, + { + "nativeSrc": "24731:44:74", + "nodeType": "YulVariableDeclaration", + "src": "24731:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "24749:6:74", + "nodeType": "YulIdentifier", + "src": "24749:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "24761:6:74", + "nodeType": "YulIdentifier", + "src": "24761:6:74" + }, + { + "kind": "number", + "nativeSrc": "24769:4:74", + "nodeType": "YulLiteral", + "src": "24769:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "24757:3:74", + "nodeType": "YulIdentifier", + "src": "24757:3:74" + }, + "nativeSrc": "24757:17:74", + "nodeType": "YulFunctionCall", + "src": "24757:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24745:3:74", + "nodeType": "YulIdentifier", + "src": "24745:3:74" + }, + "nativeSrc": "24745:30:74", + "nodeType": "YulFunctionCall", + "src": "24745:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "24735:6:74", + "nodeType": "YulTypedName", + "src": "24735:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "24803:103:74", + "nodeType": "YulBlock", + "src": "24803:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "24817:77:74", + "nodeType": "YulIdentifier", + "src": "24817:77:74" + }, + "nativeSrc": "24817:79:74", + "nodeType": "YulFunctionCall", + "src": "24817:79:74" + }, + "nativeSrc": "24817:79:74", + "nodeType": "YulExpressionStatement", + "src": "24817:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "24790:6:74", + "nodeType": "YulIdentifier", + "src": "24790:6:74" + }, + { + "name": "end", + "nativeSrc": "24798:3:74", + "nodeType": "YulIdentifier", + "src": "24798:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "24787:2:74", + "nodeType": "YulIdentifier", + "src": "24787:2:74" + }, + "nativeSrc": "24787:15:74", + "nodeType": "YulFunctionCall", + "src": "24787:15:74" + }, + "nativeSrc": "24784:122:74", + "nodeType": "YulIf", + "src": "24784:122:74" + }, + { + "body": { + "nativeSrc": "24991:388:74", + "nodeType": "YulBlock", + "src": "24991:388:74", + "statements": [ + { + "nativeSrc": "25006:29:74", + "nodeType": "YulVariableDeclaration", + "src": "25006:29:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "25031:3:74", + "nodeType": "YulIdentifier", + "src": "25031:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "25025:5:74", + "nodeType": "YulIdentifier", + "src": "25025:5:74" + }, + "nativeSrc": "25025:10:74", + "nodeType": "YulFunctionCall", + "src": "25025:10:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "25010:11:74", + "nodeType": "YulTypedName", + "src": "25010:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "25087:83:74", + "nodeType": "YulBlock", + "src": "25087:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "25089:77:74", + "nodeType": "YulIdentifier", + "src": "25089:77:74" + }, + "nativeSrc": "25089:79:74", + "nodeType": "YulFunctionCall", + "src": "25089:79:74" + }, + "nativeSrc": "25089:79:74", + "nodeType": "YulExpressionStatement", + "src": "25089:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "25054:11:74", + "nodeType": "YulIdentifier", + "src": "25054:11:74" + }, + { + "kind": "number", + "nativeSrc": "25067:18:74", + "nodeType": "YulLiteral", + "src": "25067:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "25051:2:74", + "nodeType": "YulIdentifier", + "src": "25051:2:74" + }, + "nativeSrc": "25051:35:74", + "nodeType": "YulFunctionCall", + "src": "25051:35:74" + }, + "nativeSrc": "25048:122:74", + "nodeType": "YulIf", + "src": "25048:122:74" + }, + { + "nativeSrc": "25183:42:74", + "nodeType": "YulVariableDeclaration", + "src": "25183:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25205:6:74", + "nodeType": "YulIdentifier", + "src": "25205:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "25213:11:74", + "nodeType": "YulIdentifier", + "src": "25213:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25201:3:74", + "nodeType": "YulIdentifier", + "src": "25201:3:74" + }, + "nativeSrc": "25201:24:74", + "nodeType": "YulFunctionCall", + "src": "25201:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "25187:10:74", + "nodeType": "YulTypedName", + "src": "25187:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "25246:3:74", + "nodeType": "YulIdentifier", + "src": "25246:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "25318:10:74", + "nodeType": "YulIdentifier", + "src": "25318:10:74" + }, + { + "name": "end", + "nativeSrc": "25330:3:74", + "nodeType": "YulIdentifier", + "src": "25330:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_StorageProofStruct_$835_memory_ptr_fromMemory", + "nativeSrc": "25251:66:74", + "nodeType": "YulIdentifier", + "src": "25251:66:74" + }, + "nativeSrc": "25251:83:74", + "nodeType": "YulFunctionCall", + "src": "25251:83:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25239:6:74", + "nodeType": "YulIdentifier", + "src": "25239:6:74" + }, + "nativeSrc": "25239:96:74", + "nodeType": "YulFunctionCall", + "src": "25239:96:74" + }, + "nativeSrc": "25239:96:74", + "nodeType": "YulExpressionStatement", + "src": "25239:96:74" + }, + { + "nativeSrc": "25348:21:74", + "nodeType": "YulAssignment", + "src": "25348:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "25359:3:74", + "nodeType": "YulIdentifier", + "src": "25359:3:74" + }, + { + "kind": "number", + "nativeSrc": "25364:4:74", + "nodeType": "YulLiteral", + "src": "25364:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25355:3:74", + "nodeType": "YulIdentifier", + "src": "25355:3:74" + }, + "nativeSrc": "25355:14:74", + "nodeType": "YulFunctionCall", + "src": "25355:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "25348:3:74", + "nodeType": "YulIdentifier", + "src": "25348:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "24944:3:74", + "nodeType": "YulIdentifier", + "src": "24944:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "24949:6:74", + "nodeType": "YulIdentifier", + "src": "24949:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "24941:2:74", + "nodeType": "YulIdentifier", + "src": "24941:2:74" + }, + "nativeSrc": "24941:15:74", + "nodeType": "YulFunctionCall", + "src": "24941:15:74" + }, + "nativeSrc": "24915:464:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "24957:25:74", + "nodeType": "YulBlock", + "src": "24957:25:74", + "statements": [ + { + "nativeSrc": "24959:21:74", + "nodeType": "YulAssignment", + "src": "24959:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "24970:3:74", + "nodeType": "YulIdentifier", + "src": "24970:3:74" + }, + { + "kind": "number", + "nativeSrc": "24975:4:74", + "nodeType": "YulLiteral", + "src": "24975:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24966:3:74", + "nodeType": "YulIdentifier", + "src": "24966:3:74" + }, + "nativeSrc": "24966:14:74", + "nodeType": "YulFunctionCall", + "src": "24966:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "24959:3:74", + "nodeType": "YulIdentifier", + "src": "24959:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "24919:21:74", + "nodeType": "YulBlock", + "src": "24919:21:74", + "statements": [ + { + "nativeSrc": "24921:17:74", + "nodeType": "YulVariableDeclaration", + "src": "24921:17:74", + "value": { + "name": "offset", + "nativeSrc": "24932:6:74", + "nodeType": "YulIdentifier", + "src": "24932:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "24925:3:74", + "nodeType": "YulTypedName", + "src": "24925:3:74", + "type": "" + } + ] + } + ] + }, + "src": "24915:464:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "24350:1035:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "24468:6:74", + "nodeType": "YulTypedName", + "src": "24468:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "24476:6:74", + "nodeType": "YulTypedName", + "src": "24476:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "24484:3:74", + "nodeType": "YulTypedName", + "src": "24484:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "24492:5:74", + "nodeType": "YulTypedName", + "src": "24492:5:74", + "type": "" + } + ], + "src": "24350:1035:74" + }, + { + "body": { + "nativeSrc": "25549:332:74", + "nodeType": "YulBlock", + "src": "25549:332:74", + "statements": [ + { + "body": { + "nativeSrc": "25598:83:74", + "nodeType": "YulBlock", + "src": "25598:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "25600:77:74", + "nodeType": "YulIdentifier", + "src": "25600:77:74" + }, + "nativeSrc": "25600:79:74", + "nodeType": "YulFunctionCall", + "src": "25600:79:74" + }, + "nativeSrc": "25600:79:74", + "nodeType": "YulExpressionStatement", + "src": "25600:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25577:6:74", + "nodeType": "YulIdentifier", + "src": "25577:6:74" + }, + { + "kind": "number", + "nativeSrc": "25585:4:74", + "nodeType": "YulLiteral", + "src": "25585:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25573:3:74", + "nodeType": "YulIdentifier", + "src": "25573:3:74" + }, + "nativeSrc": "25573:17:74", + "nodeType": "YulFunctionCall", + "src": "25573:17:74" + }, + { + "name": "end", + "nativeSrc": "25592:3:74", + "nodeType": "YulIdentifier", + "src": "25592:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "25569:3:74", + "nodeType": "YulIdentifier", + "src": "25569:3:74" + }, + "nativeSrc": "25569:27:74", + "nodeType": "YulFunctionCall", + "src": "25569:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "25562:6:74", + "nodeType": "YulIdentifier", + "src": "25562:6:74" + }, + "nativeSrc": "25562:35:74", + "nodeType": "YulFunctionCall", + "src": "25562:35:74" + }, + "nativeSrc": "25559:122:74", + "nodeType": "YulIf", + "src": "25559:122:74" + }, + { + "nativeSrc": "25690:27:74", + "nodeType": "YulVariableDeclaration", + "src": "25690:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25710:6:74", + "nodeType": "YulIdentifier", + "src": "25710:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "25704:5:74", + "nodeType": "YulIdentifier", + "src": "25704:5:74" + }, + "nativeSrc": "25704:13:74", + "nodeType": "YulFunctionCall", + "src": "25704:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "25694:6:74", + "nodeType": "YulTypedName", + "src": "25694:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25726:149:74", + "nodeType": "YulAssignment", + "src": "25726:149:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25848:6:74", + "nodeType": "YulIdentifier", + "src": "25848:6:74" + }, + { + "kind": "number", + "nativeSrc": "25856:4:74", + "nodeType": "YulLiteral", + "src": "25856:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25844:3:74", + "nodeType": "YulIdentifier", + "src": "25844:3:74" + }, + "nativeSrc": "25844:17:74", + "nodeType": "YulFunctionCall", + "src": "25844:17:74" + }, + { + "name": "length", + "nativeSrc": "25863:6:74", + "nodeType": "YulIdentifier", + "src": "25863:6:74" + }, + { + "name": "end", + "nativeSrc": "25871:3:74", + "nodeType": "YulIdentifier", + "src": "25871:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "25735:108:74", + "nodeType": "YulIdentifier", + "src": "25735:108:74" + }, + "nativeSrc": "25735:140:74", + "nodeType": "YulFunctionCall", + "src": "25735:140:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "25726:5:74", + "nodeType": "YulIdentifier", + "src": "25726:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "25426:455:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "25527:6:74", + "nodeType": "YulTypedName", + "src": "25527:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "25535:3:74", + "nodeType": "YulTypedName", + "src": "25535:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "25543:5:74", + "nodeType": "YulTypedName", + "src": "25543:5:74", + "type": "" + } + ], + "src": "25426:455:74" + }, + { + "body": { + "nativeSrc": "26093:953:74", + "nodeType": "YulBlock", + "src": "26093:953:74", + "statements": [ + { + "body": { + "nativeSrc": "26139:83:74", + "nodeType": "YulBlock", + "src": "26139:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "26141:77:74", + "nodeType": "YulIdentifier", + "src": "26141:77:74" + }, + "nativeSrc": "26141:79:74", + "nodeType": "YulFunctionCall", + "src": "26141:79:74" + }, + "nativeSrc": "26141:79:74", + "nodeType": "YulExpressionStatement", + "src": "26141:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "26114:7:74", + "nodeType": "YulIdentifier", + "src": "26114:7:74" + }, + { + "name": "headStart", + "nativeSrc": "26123:9:74", + "nodeType": "YulIdentifier", + "src": "26123:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "26110:3:74", + "nodeType": "YulIdentifier", + "src": "26110:3:74" + }, + "nativeSrc": "26110:23:74", + "nodeType": "YulFunctionCall", + "src": "26110:23:74" + }, + { + "kind": "number", + "nativeSrc": "26135:2:74", + "nodeType": "YulLiteral", + "src": "26135:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "26106:3:74", + "nodeType": "YulIdentifier", + "src": "26106:3:74" + }, + "nativeSrc": "26106:32:74", + "nodeType": "YulFunctionCall", + "src": "26106:32:74" + }, + "nativeSrc": "26103:119:74", + "nodeType": "YulIf", + "src": "26103:119:74" + }, + { + "nativeSrc": "26232:128:74", + "nodeType": "YulBlock", + "src": "26232:128:74", + "statements": [ + { + "nativeSrc": "26247:15:74", + "nodeType": "YulVariableDeclaration", + "src": "26247:15:74", + "value": { + "kind": "number", + "nativeSrc": "26261:1:74", + "nodeType": "YulLiteral", + "src": "26261:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26251:6:74", + "nodeType": "YulTypedName", + "src": "26251:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26276:74:74", + "nodeType": "YulAssignment", + "src": "26276:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26322:9:74", + "nodeType": "YulIdentifier", + "src": "26322:9:74" + }, + { + "name": "offset", + "nativeSrc": "26333:6:74", + "nodeType": "YulIdentifier", + "src": "26333:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26318:3:74", + "nodeType": "YulIdentifier", + "src": "26318:3:74" + }, + "nativeSrc": "26318:22:74", + "nodeType": "YulFunctionCall", + "src": "26318:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26342:7:74", + "nodeType": "YulIdentifier", + "src": "26342:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "26286:31:74", + "nodeType": "YulIdentifier", + "src": "26286:31:74" + }, + "nativeSrc": "26286:64:74", + "nodeType": "YulFunctionCall", + "src": "26286:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "26276:6:74", + "nodeType": "YulIdentifier", + "src": "26276:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "26370:317:74", + "nodeType": "YulBlock", + "src": "26370:317:74", + "statements": [ + { + "nativeSrc": "26385:39:74", + "nodeType": "YulVariableDeclaration", + "src": "26385:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26409:9:74", + "nodeType": "YulIdentifier", + "src": "26409:9:74" + }, + { + "kind": "number", + "nativeSrc": "26420:2:74", + "nodeType": "YulLiteral", + "src": "26420:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26405:3:74", + "nodeType": "YulIdentifier", + "src": "26405:3:74" + }, + "nativeSrc": "26405:18:74", + "nodeType": "YulFunctionCall", + "src": "26405:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "26399:5:74", + "nodeType": "YulIdentifier", + "src": "26399:5:74" + }, + "nativeSrc": "26399:25:74", + "nodeType": "YulFunctionCall", + "src": "26399:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26389:6:74", + "nodeType": "YulTypedName", + "src": "26389:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "26471:83:74", + "nodeType": "YulBlock", + "src": "26471:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "26473:77:74", + "nodeType": "YulIdentifier", + "src": "26473:77:74" + }, + "nativeSrc": "26473:79:74", + "nodeType": "YulFunctionCall", + "src": "26473:79:74" + }, + "nativeSrc": "26473:79:74", + "nodeType": "YulExpressionStatement", + "src": "26473:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "26443:6:74", + "nodeType": "YulIdentifier", + "src": "26443:6:74" + }, + { + "kind": "number", + "nativeSrc": "26451:18:74", + "nodeType": "YulLiteral", + "src": "26451:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "26440:2:74", + "nodeType": "YulIdentifier", + "src": "26440:2:74" + }, + "nativeSrc": "26440:30:74", + "nodeType": "YulFunctionCall", + "src": "26440:30:74" + }, + "nativeSrc": "26437:117:74", + "nodeType": "YulIf", + "src": "26437:117:74" + }, + { + "nativeSrc": "26568:109:74", + "nodeType": "YulAssignment", + "src": "26568:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26649:9:74", + "nodeType": "YulIdentifier", + "src": "26649:9:74" + }, + { + "name": "offset", + "nativeSrc": "26660:6:74", + "nodeType": "YulIdentifier", + "src": "26660:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26645:3:74", + "nodeType": "YulIdentifier", + "src": "26645:3:74" + }, + "nativeSrc": "26645:22:74", + "nodeType": "YulFunctionCall", + "src": "26645:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26669:7:74", + "nodeType": "YulIdentifier", + "src": "26669:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_AccountProofStruct_$825_memory_ptr_fromMemory", + "nativeSrc": "26578:66:74", + "nodeType": "YulIdentifier", + "src": "26578:66:74" + }, + "nativeSrc": "26578:99:74", + "nodeType": "YulFunctionCall", + "src": "26578:99:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "26568:6:74", + "nodeType": "YulIdentifier", + "src": "26568:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "26697:342:74", + "nodeType": "YulBlock", + "src": "26697:342:74", + "statements": [ + { + "nativeSrc": "26712:39:74", + "nodeType": "YulVariableDeclaration", + "src": "26712:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26736:9:74", + "nodeType": "YulIdentifier", + "src": "26736:9:74" + }, + { + "kind": "number", + "nativeSrc": "26747:2:74", + "nodeType": "YulLiteral", + "src": "26747:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26732:3:74", + "nodeType": "YulIdentifier", + "src": "26732:3:74" + }, + "nativeSrc": "26732:18:74", + "nodeType": "YulFunctionCall", + "src": "26732:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "26726:5:74", + "nodeType": "YulIdentifier", + "src": "26726:5:74" + }, + "nativeSrc": "26726:25:74", + "nodeType": "YulFunctionCall", + "src": "26726:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26716:6:74", + "nodeType": "YulTypedName", + "src": "26716:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "26798:83:74", + "nodeType": "YulBlock", + "src": "26798:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "26800:77:74", + "nodeType": "YulIdentifier", + "src": "26800:77:74" + }, + "nativeSrc": "26800:79:74", + "nodeType": "YulFunctionCall", + "src": "26800:79:74" + }, + "nativeSrc": "26800:79:74", + "nodeType": "YulExpressionStatement", + "src": "26800:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "26770:6:74", + "nodeType": "YulIdentifier", + "src": "26770:6:74" + }, + { + "kind": "number", + "nativeSrc": "26778:18:74", + "nodeType": "YulLiteral", + "src": "26778:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "26767:2:74", + "nodeType": "YulIdentifier", + "src": "26767:2:74" + }, + "nativeSrc": "26767:30:74", + "nodeType": "YulFunctionCall", + "src": "26767:30:74" + }, + "nativeSrc": "26764:117:74", + "nodeType": "YulIf", + "src": "26764:117:74" + }, + { + "nativeSrc": "26895:134:74", + "nodeType": "YulAssignment", + "src": "26895:134:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27001:9:74", + "nodeType": "YulIdentifier", + "src": "27001:9:74" + }, + { + "name": "offset", + "nativeSrc": "27012:6:74", + "nodeType": "YulIdentifier", + "src": "27012:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26997:3:74", + "nodeType": "YulIdentifier", + "src": "26997:3:74" + }, + "nativeSrc": "26997:22:74", + "nodeType": "YulFunctionCall", + "src": "26997:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "27021:7:74", + "nodeType": "YulIdentifier", + "src": "27021:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "26905:91:74", + "nodeType": "YulIdentifier", + "src": "26905:91:74" + }, + "nativeSrc": "26905:124:74", + "nodeType": "YulFunctionCall", + "src": "26905:124:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "26895:6:74", + "nodeType": "YulIdentifier", + "src": "26895:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_struct$_AccountProofStruct_$825_memory_ptrt_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "25887:1159:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "26047:9:74", + "nodeType": "YulTypedName", + "src": "26047:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "26058:7:74", + "nodeType": "YulTypedName", + "src": "26058:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "26070:6:74", + "nodeType": "YulTypedName", + "src": "26070:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "26078:6:74", + "nodeType": "YulTypedName", + "src": "26078:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "26086:6:74", + "nodeType": "YulTypedName", + "src": "26086:6:74", + "type": "" + } + ], + "src": "25887:1159:74" + }, + { + "body": { + "nativeSrc": "27129:274:74", + "nodeType": "YulBlock", + "src": "27129:274:74", + "statements": [ + { + "body": { + "nativeSrc": "27175:83:74", + "nodeType": "YulBlock", + "src": "27175:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "27177:77:74", + "nodeType": "YulIdentifier", + "src": "27177:77:74" + }, + "nativeSrc": "27177:79:74", + "nodeType": "YulFunctionCall", + "src": "27177:79:74" + }, + "nativeSrc": "27177:79:74", + "nodeType": "YulExpressionStatement", + "src": "27177:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "27150:7:74", + "nodeType": "YulIdentifier", + "src": "27150:7:74" + }, + { + "name": "headStart", + "nativeSrc": "27159:9:74", + "nodeType": "YulIdentifier", + "src": "27159:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27146:3:74", + "nodeType": "YulIdentifier", + "src": "27146:3:74" + }, + "nativeSrc": "27146:23:74", + "nodeType": "YulFunctionCall", + "src": "27146:23:74" + }, + { + "kind": "number", + "nativeSrc": "27171:2:74", + "nodeType": "YulLiteral", + "src": "27171:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "27142:3:74", + "nodeType": "YulIdentifier", + "src": "27142:3:74" + }, + "nativeSrc": "27142:32:74", + "nodeType": "YulFunctionCall", + "src": "27142:32:74" + }, + "nativeSrc": "27139:119:74", + "nodeType": "YulIf", + "src": "27139:119:74" + }, + { + "nativeSrc": "27268:128:74", + "nodeType": "YulBlock", + "src": "27268:128:74", + "statements": [ + { + "nativeSrc": "27283:15:74", + "nodeType": "YulVariableDeclaration", + "src": "27283:15:74", + "value": { + "kind": "number", + "nativeSrc": "27297:1:74", + "nodeType": "YulLiteral", + "src": "27297:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "27287:6:74", + "nodeType": "YulTypedName", + "src": "27287:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "27312:74:74", + "nodeType": "YulAssignment", + "src": "27312:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27358:9:74", + "nodeType": "YulIdentifier", + "src": "27358:9:74" + }, + { + "name": "offset", + "nativeSrc": "27369:6:74", + "nodeType": "YulIdentifier", + "src": "27369:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27354:3:74", + "nodeType": "YulIdentifier", + "src": "27354:3:74" + }, + "nativeSrc": "27354:22:74", + "nodeType": "YulFunctionCall", + "src": "27354:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "27378:7:74", + "nodeType": "YulIdentifier", + "src": "27378:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "27322:31:74", + "nodeType": "YulIdentifier", + "src": "27322:31:74" + }, + "nativeSrc": "27322:64:74", + "nodeType": "YulFunctionCall", + "src": "27322:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "27312:6:74", + "nodeType": "YulIdentifier", + "src": "27312:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256_fromMemory", + "nativeSrc": "27052:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "27099:9:74", + "nodeType": "YulTypedName", + "src": "27099:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "27110:7:74", + "nodeType": "YulTypedName", + "src": "27110:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "27122:6:74", + "nodeType": "YulTypedName", + "src": "27122:6:74", + "type": "" + } + ], + "src": "27052:351:74" + }, + { + "body": { + "nativeSrc": "27437:152:74", + "nodeType": "YulBlock", + "src": "27437:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27454:1:74", + "nodeType": "YulLiteral", + "src": "27454:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "27457:77:74", + "nodeType": "YulLiteral", + "src": "27457:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27447:6:74", + "nodeType": "YulIdentifier", + "src": "27447:6:74" + }, + "nativeSrc": "27447:88:74", + "nodeType": "YulFunctionCall", + "src": "27447:88:74" + }, + "nativeSrc": "27447:88:74", + "nodeType": "YulExpressionStatement", + "src": "27447:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27551:1:74", + "nodeType": "YulLiteral", + "src": "27551:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "27554:4:74", + "nodeType": "YulLiteral", + "src": "27554:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27544:6:74", + "nodeType": "YulIdentifier", + "src": "27544:6:74" + }, + "nativeSrc": "27544:15:74", + "nodeType": "YulFunctionCall", + "src": "27544:15:74" + }, + "nativeSrc": "27544:15:74", + "nodeType": "YulExpressionStatement", + "src": "27544:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27575:1:74", + "nodeType": "YulLiteral", + "src": "27575:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "27578:4:74", + "nodeType": "YulLiteral", + "src": "27578:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "27568:6:74", + "nodeType": "YulIdentifier", + "src": "27568:6:74" + }, + "nativeSrc": "27568:15:74", + "nodeType": "YulFunctionCall", + "src": "27568:15:74" + }, + "nativeSrc": "27568:15:74", + "nodeType": "YulExpressionStatement", + "src": "27568:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "27409:180:74", + "nodeType": "YulFunctionDefinition", + "src": "27409:180:74" + }, + { + "body": { + "nativeSrc": "27640:149:74", + "nodeType": "YulBlock", + "src": "27640:149:74", + "statements": [ + { + "nativeSrc": "27650:25:74", + "nodeType": "YulAssignment", + "src": "27650:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "27673:1:74", + "nodeType": "YulIdentifier", + "src": "27673:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "27655:17:74", + "nodeType": "YulIdentifier", + "src": "27655:17:74" + }, + "nativeSrc": "27655:20:74", + "nodeType": "YulFunctionCall", + "src": "27655:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "27650:1:74", + "nodeType": "YulIdentifier", + "src": "27650:1:74" + } + ] + }, + { + "nativeSrc": "27684:25:74", + "nodeType": "YulAssignment", + "src": "27684:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "27707:1:74", + "nodeType": "YulIdentifier", + "src": "27707:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "27689:17:74", + "nodeType": "YulIdentifier", + "src": "27689:17:74" + }, + "nativeSrc": "27689:20:74", + "nodeType": "YulFunctionCall", + "src": "27689:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "27684:1:74", + "nodeType": "YulIdentifier", + "src": "27684:1:74" + } + ] + }, + { + "nativeSrc": "27718:17:74", + "nodeType": "YulAssignment", + "src": "27718:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "27730:1:74", + "nodeType": "YulIdentifier", + "src": "27730:1:74" + }, + { + "name": "y", + "nativeSrc": "27733:1:74", + "nodeType": "YulIdentifier", + "src": "27733:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27726:3:74", + "nodeType": "YulIdentifier", + "src": "27726:3:74" + }, + "nativeSrc": "27726:9:74", + "nodeType": "YulFunctionCall", + "src": "27726:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "27718:4:74", + "nodeType": "YulIdentifier", + "src": "27718:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "27760:22:74", + "nodeType": "YulBlock", + "src": "27760:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "27762:16:74", + "nodeType": "YulIdentifier", + "src": "27762:16:74" + }, + "nativeSrc": "27762:18:74", + "nodeType": "YulFunctionCall", + "src": "27762:18:74" + }, + "nativeSrc": "27762:18:74", + "nodeType": "YulExpressionStatement", + "src": "27762:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "27751:4:74", + "nodeType": "YulIdentifier", + "src": "27751:4:74" + }, + { + "name": "x", + "nativeSrc": "27757:1:74", + "nodeType": "YulIdentifier", + "src": "27757:1:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "27748:2:74", + "nodeType": "YulIdentifier", + "src": "27748:2:74" + }, + "nativeSrc": "27748:11:74", + "nodeType": "YulFunctionCall", + "src": "27748:11:74" + }, + "nativeSrc": "27745:37:74", + "nodeType": "YulIf", + "src": "27745:37:74" + } + ] + }, + "name": "checked_sub_t_uint256", + "nativeSrc": "27595:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "27626:1:74", + "nodeType": "YulTypedName", + "src": "27626:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "27629:1:74", + "nodeType": "YulTypedName", + "src": "27629:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "27635:4:74", + "nodeType": "YulTypedName", + "src": "27635:4:74", + "type": "" + } + ], + "src": "27595:194:74" + }, + { + "body": { + "nativeSrc": "27901:134:74", + "nodeType": "YulBlock", + "src": "27901:134:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "27923:6:74", + "nodeType": "YulIdentifier", + "src": "27923:6:74" + }, + { + "kind": "number", + "nativeSrc": "27931:1:74", + "nodeType": "YulLiteral", + "src": "27931:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27919:3:74", + "nodeType": "YulIdentifier", + "src": "27919:3:74" + }, + "nativeSrc": "27919:14:74", + "nodeType": "YulFunctionCall", + "src": "27919:14:74" + }, + { + "hexValue": "4c696e656153706172736550726f6f6656657269666965723a20626c6f636b20", + "kind": "string", + "nativeSrc": "27935:34:74", + "nodeType": "YulLiteral", + "src": "27935:34:74", + "type": "", + "value": "LineaSparseProofVerifier: block " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27912:6:74", + "nodeType": "YulIdentifier", + "src": "27912:6:74" + }, + "nativeSrc": "27912:58:74", + "nodeType": "YulFunctionCall", + "src": "27912:58:74" + }, + "nativeSrc": "27912:58:74", + "nodeType": "YulExpressionStatement", + "src": "27912:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "27991:6:74", + "nodeType": "YulIdentifier", + "src": "27991:6:74" + }, + { + "kind": "number", + "nativeSrc": "27999:2:74", + "nodeType": "YulLiteral", + "src": "27999:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27987:3:74", + "nodeType": "YulIdentifier", + "src": "27987:3:74" + }, + "nativeSrc": "27987:15:74", + "nodeType": "YulFunctionCall", + "src": "27987:15:74" + }, + { + "hexValue": "6e6f7420696e2072616e6765206163636570746564", + "kind": "string", + "nativeSrc": "28004:23:74", + "nodeType": "YulLiteral", + "src": "28004:23:74", + "type": "", + "value": "not in range accepted" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27980:6:74", + "nodeType": "YulIdentifier", + "src": "27980:6:74" + }, + "nativeSrc": "27980:48:74", + "nodeType": "YulFunctionCall", + "src": "27980:48:74" + }, + "nativeSrc": "27980:48:74", + "nodeType": "YulExpressionStatement", + "src": "27980:48:74" + } + ] + }, + "name": "store_literal_in_memory_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c", + "nativeSrc": "27795:240:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "27893:6:74", + "nodeType": "YulTypedName", + "src": "27893:6:74", + "type": "" + } + ], + "src": "27795:240:74" + }, + { + "body": { + "nativeSrc": "28187:220:74", + "nodeType": "YulBlock", + "src": "28187:220:74", + "statements": [ + { + "nativeSrc": "28197:74:74", + "nodeType": "YulAssignment", + "src": "28197:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28263:3:74", + "nodeType": "YulIdentifier", + "src": "28263:3:74" + }, + { + "kind": "number", + "nativeSrc": "28268:2:74", + "nodeType": "YulLiteral", + "src": "28268:2:74", + "type": "", + "value": "53" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "28204:58:74", + "nodeType": "YulIdentifier", + "src": "28204:58:74" + }, + "nativeSrc": "28204:67:74", + "nodeType": "YulFunctionCall", + "src": "28204:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "28197:3:74", + "nodeType": "YulIdentifier", + "src": "28197:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28369:3:74", + "nodeType": "YulIdentifier", + "src": "28369:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c", + "nativeSrc": "28280:88:74", + "nodeType": "YulIdentifier", + "src": "28280:88:74" + }, + "nativeSrc": "28280:93:74", + "nodeType": "YulFunctionCall", + "src": "28280:93:74" + }, + "nativeSrc": "28280:93:74", + "nodeType": "YulExpressionStatement", + "src": "28280:93:74" + }, + { + "nativeSrc": "28382:19:74", + "nodeType": "YulAssignment", + "src": "28382:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28393:3:74", + "nodeType": "YulIdentifier", + "src": "28393:3:74" + }, + { + "kind": "number", + "nativeSrc": "28398:2:74", + "nodeType": "YulLiteral", + "src": "28398:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28389:3:74", + "nodeType": "YulIdentifier", + "src": "28389:3:74" + }, + "nativeSrc": "28389:12:74", + "nodeType": "YulFunctionCall", + "src": "28389:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "28382:3:74", + "nodeType": "YulIdentifier", + "src": "28382:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c_to_t_string_memory_ptr_fromStack", + "nativeSrc": "28041:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "28175:3:74", + "nodeType": "YulTypedName", + "src": "28175:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "28183:3:74", + "nodeType": "YulTypedName", + "src": "28183:3:74", + "type": "" + } + ], + "src": "28041:366:74" + }, + { + "body": { + "nativeSrc": "28584:248:74", + "nodeType": "YulBlock", + "src": "28584:248:74", + "statements": [ + { + "nativeSrc": "28594:26:74", + "nodeType": "YulAssignment", + "src": "28594:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28606:9:74", + "nodeType": "YulIdentifier", + "src": "28606:9:74" + }, + { + "kind": "number", + "nativeSrc": "28617:2:74", + "nodeType": "YulLiteral", + "src": "28617:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28602:3:74", + "nodeType": "YulIdentifier", + "src": "28602:3:74" + }, + "nativeSrc": "28602:18:74", + "nodeType": "YulFunctionCall", + "src": "28602:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28594:4:74", + "nodeType": "YulIdentifier", + "src": "28594:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28641:9:74", + "nodeType": "YulIdentifier", + "src": "28641:9:74" + }, + { + "kind": "number", + "nativeSrc": "28652:1:74", + "nodeType": "YulLiteral", + "src": "28652:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28637:3:74", + "nodeType": "YulIdentifier", + "src": "28637:3:74" + }, + "nativeSrc": "28637:17:74", + "nodeType": "YulFunctionCall", + "src": "28637:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "28660:4:74", + "nodeType": "YulIdentifier", + "src": "28660:4:74" + }, + { + "name": "headStart", + "nativeSrc": "28666:9:74", + "nodeType": "YulIdentifier", + "src": "28666:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "28656:3:74", + "nodeType": "YulIdentifier", + "src": "28656:3:74" + }, + "nativeSrc": "28656:20:74", + "nodeType": "YulFunctionCall", + "src": "28656:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28630:6:74", + "nodeType": "YulIdentifier", + "src": "28630:6:74" + }, + "nativeSrc": "28630:47:74", + "nodeType": "YulFunctionCall", + "src": "28630:47:74" + }, + "nativeSrc": "28630:47:74", + "nodeType": "YulExpressionStatement", + "src": "28630:47:74" + }, + { + "nativeSrc": "28686:139:74", + "nodeType": "YulAssignment", + "src": "28686:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "28820:4:74", + "nodeType": "YulIdentifier", + "src": "28820:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c_to_t_string_memory_ptr_fromStack", + "nativeSrc": "28694:124:74", + "nodeType": "YulIdentifier", + "src": "28694:124:74" + }, + "nativeSrc": "28694:131:74", + "nodeType": "YulFunctionCall", + "src": "28694:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28686:4:74", + "nodeType": "YulIdentifier", + "src": "28686:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "28413:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "28564:9:74", + "nodeType": "YulTypedName", + "src": "28564:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "28579:4:74", + "nodeType": "YulTypedName", + "src": "28579:4:74", + "type": "" + } + ], + "src": "28413:419:74" + }, + { + "body": { + "nativeSrc": "28903:53:74", + "nodeType": "YulBlock", + "src": "28903:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28920:3:74", + "nodeType": "YulIdentifier", + "src": "28920:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "28943:5:74", + "nodeType": "YulIdentifier", + "src": "28943:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "28925:17:74", + "nodeType": "YulIdentifier", + "src": "28925:17:74" + }, + "nativeSrc": "28925:24:74", + "nodeType": "YulFunctionCall", + "src": "28925:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28913:6:74", + "nodeType": "YulIdentifier", + "src": "28913:6:74" + }, + "nativeSrc": "28913:37:74", + "nodeType": "YulFunctionCall", + "src": "28913:37:74" + }, + "nativeSrc": "28913:37:74", + "nodeType": "YulExpressionStatement", + "src": "28913:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "28838:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "28891:5:74", + "nodeType": "YulTypedName", + "src": "28891:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "28898:3:74", + "nodeType": "YulTypedName", + "src": "28898:3:74", + "type": "" + } + ], + "src": "28838:118:74" + }, + { + "body": { + "nativeSrc": "29060:124:74", + "nodeType": "YulBlock", + "src": "29060:124:74", + "statements": [ + { + "nativeSrc": "29070:26:74", + "nodeType": "YulAssignment", + "src": "29070:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29082:9:74", + "nodeType": "YulIdentifier", + "src": "29082:9:74" + }, + { + "kind": "number", + "nativeSrc": "29093:2:74", + "nodeType": "YulLiteral", + "src": "29093:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29078:3:74", + "nodeType": "YulIdentifier", + "src": "29078:3:74" + }, + "nativeSrc": "29078:18:74", + "nodeType": "YulFunctionCall", + "src": "29078:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "29070:4:74", + "nodeType": "YulIdentifier", + "src": "29070:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "29150:6:74", + "nodeType": "YulIdentifier", + "src": "29150:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29163:9:74", + "nodeType": "YulIdentifier", + "src": "29163:9:74" + }, + { + "kind": "number", + "nativeSrc": "29174:1:74", + "nodeType": "YulLiteral", + "src": "29174:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29159:3:74", + "nodeType": "YulIdentifier", + "src": "29159:3:74" + }, + "nativeSrc": "29159:17:74", + "nodeType": "YulFunctionCall", + "src": "29159:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "29106:43:74", + "nodeType": "YulIdentifier", + "src": "29106:43:74" + }, + "nativeSrc": "29106:71:74", + "nodeType": "YulFunctionCall", + "src": "29106:71:74" + }, + "nativeSrc": "29106:71:74", + "nodeType": "YulExpressionStatement", + "src": "29106:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "28962:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29032:9:74", + "nodeType": "YulTypedName", + "src": "29032:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "29044:6:74", + "nodeType": "YulTypedName", + "src": "29044:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "29055:4:74", + "nodeType": "YulTypedName", + "src": "29055:4:74", + "type": "" + } + ], + "src": "28962:222:74" + }, + { + "body": { + "nativeSrc": "29267:274:74", + "nodeType": "YulBlock", + "src": "29267:274:74", + "statements": [ + { + "body": { + "nativeSrc": "29313:83:74", + "nodeType": "YulBlock", + "src": "29313:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "29315:77:74", + "nodeType": "YulIdentifier", + "src": "29315:77:74" + }, + "nativeSrc": "29315:79:74", + "nodeType": "YulFunctionCall", + "src": "29315:79:74" + }, + "nativeSrc": "29315:79:74", + "nodeType": "YulExpressionStatement", + "src": "29315:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "29288:7:74", + "nodeType": "YulIdentifier", + "src": "29288:7:74" + }, + { + "name": "headStart", + "nativeSrc": "29297:9:74", + "nodeType": "YulIdentifier", + "src": "29297:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "29284:3:74", + "nodeType": "YulIdentifier", + "src": "29284:3:74" + }, + "nativeSrc": "29284:23:74", + "nodeType": "YulFunctionCall", + "src": "29284:23:74" + }, + { + "kind": "number", + "nativeSrc": "29309:2:74", + "nodeType": "YulLiteral", + "src": "29309:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "29280:3:74", + "nodeType": "YulIdentifier", + "src": "29280:3:74" + }, + "nativeSrc": "29280:32:74", + "nodeType": "YulFunctionCall", + "src": "29280:32:74" + }, + "nativeSrc": "29277:119:74", + "nodeType": "YulIf", + "src": "29277:119:74" + }, + { + "nativeSrc": "29406:128:74", + "nodeType": "YulBlock", + "src": "29406:128:74", + "statements": [ + { + "nativeSrc": "29421:15:74", + "nodeType": "YulVariableDeclaration", + "src": "29421:15:74", + "value": { + "kind": "number", + "nativeSrc": "29435:1:74", + "nodeType": "YulLiteral", + "src": "29435:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "29425:6:74", + "nodeType": "YulTypedName", + "src": "29425:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29450:74:74", + "nodeType": "YulAssignment", + "src": "29450:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29496:9:74", + "nodeType": "YulIdentifier", + "src": "29496:9:74" + }, + { + "name": "offset", + "nativeSrc": "29507:6:74", + "nodeType": "YulIdentifier", + "src": "29507:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29492:3:74", + "nodeType": "YulIdentifier", + "src": "29492:3:74" + }, + "nativeSrc": "29492:22:74", + "nodeType": "YulFunctionCall", + "src": "29492:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "29516:7:74", + "nodeType": "YulIdentifier", + "src": "29516:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "29460:31:74", + "nodeType": "YulIdentifier", + "src": "29460:31:74" + }, + "nativeSrc": "29460:64:74", + "nodeType": "YulFunctionCall", + "src": "29460:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "29450:6:74", + "nodeType": "YulIdentifier", + "src": "29450:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "29190:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29237:9:74", + "nodeType": "YulTypedName", + "src": "29237:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "29248:7:74", + "nodeType": "YulTypedName", + "src": "29248:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "29260:6:74", + "nodeType": "YulTypedName", + "src": "29260:6:74", + "type": "" + } + ], + "src": "29190:351:74" + }, + { + "body": { + "nativeSrc": "29653:125:74", + "nodeType": "YulBlock", + "src": "29653:125:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "29675:6:74", + "nodeType": "YulIdentifier", + "src": "29675:6:74" + }, + { + "kind": "number", + "nativeSrc": "29683:1:74", + "nodeType": "YulLiteral", + "src": "29683:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29671:3:74", + "nodeType": "YulIdentifier", + "src": "29671:3:74" + }, + "nativeSrc": "29671:14:74", + "nodeType": "YulFunctionCall", + "src": "29671:14:74" + }, + { + "hexValue": "4c696e656153706172736550726f6f6656657269666965723a20696e76616c69", + "kind": "string", + "nativeSrc": "29687:34:74", + "nodeType": "YulLiteral", + "src": "29687:34:74", + "type": "", + "value": "LineaSparseProofVerifier: invali" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "29664:6:74", + "nodeType": "YulIdentifier", + "src": "29664:6:74" + }, + "nativeSrc": "29664:58:74", + "nodeType": "YulFunctionCall", + "src": "29664:58:74" + }, + "nativeSrc": "29664:58:74", + "nodeType": "YulExpressionStatement", + "src": "29664:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "29743:6:74", + "nodeType": "YulIdentifier", + "src": "29743:6:74" + }, + { + "kind": "number", + "nativeSrc": "29751:2:74", + "nodeType": "YulLiteral", + "src": "29751:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29739:3:74", + "nodeType": "YulIdentifier", + "src": "29739:3:74" + }, + "nativeSrc": "29739:15:74", + "nodeType": "YulFunctionCall", + "src": "29739:15:74" + }, + { + "hexValue": "6420737461746520726f6f74", + "kind": "string", + "nativeSrc": "29756:14:74", + "nodeType": "YulLiteral", + "src": "29756:14:74", + "type": "", + "value": "d state root" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "29732:6:74", + "nodeType": "YulIdentifier", + "src": "29732:6:74" + }, + "nativeSrc": "29732:39:74", + "nodeType": "YulFunctionCall", + "src": "29732:39:74" + }, + "nativeSrc": "29732:39:74", + "nodeType": "YulExpressionStatement", + "src": "29732:39:74" + } + ] + }, + "name": "store_literal_in_memory_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697", + "nativeSrc": "29547:231:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "29645:6:74", + "nodeType": "YulTypedName", + "src": "29645:6:74", + "type": "" + } + ], + "src": "29547:231:74" + }, + { + "body": { + "nativeSrc": "29930:220:74", + "nodeType": "YulBlock", + "src": "29930:220:74", + "statements": [ + { + "nativeSrc": "29940:74:74", + "nodeType": "YulAssignment", + "src": "29940:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30006:3:74", + "nodeType": "YulIdentifier", + "src": "30006:3:74" + }, + { + "kind": "number", + "nativeSrc": "30011:2:74", + "nodeType": "YulLiteral", + "src": "30011:2:74", + "type": "", + "value": "44" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "29947:58:74", + "nodeType": "YulIdentifier", + "src": "29947:58:74" + }, + "nativeSrc": "29947:67:74", + "nodeType": "YulFunctionCall", + "src": "29947:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "29940:3:74", + "nodeType": "YulIdentifier", + "src": "29940:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30112:3:74", + "nodeType": "YulIdentifier", + "src": "30112:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697", + "nativeSrc": "30023:88:74", + "nodeType": "YulIdentifier", + "src": "30023:88:74" + }, + "nativeSrc": "30023:93:74", + "nodeType": "YulFunctionCall", + "src": "30023:93:74" + }, + "nativeSrc": "30023:93:74", + "nodeType": "YulExpressionStatement", + "src": "30023:93:74" + }, + { + "nativeSrc": "30125:19:74", + "nodeType": "YulAssignment", + "src": "30125:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30136:3:74", + "nodeType": "YulIdentifier", + "src": "30136:3:74" + }, + { + "kind": "number", + "nativeSrc": "30141:2:74", + "nodeType": "YulLiteral", + "src": "30141:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30132:3:74", + "nodeType": "YulIdentifier", + "src": "30132:3:74" + }, + "nativeSrc": "30132:12:74", + "nodeType": "YulFunctionCall", + "src": "30132:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "30125:3:74", + "nodeType": "YulIdentifier", + "src": "30125:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697_to_t_string_memory_ptr_fromStack", + "nativeSrc": "29784:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "29918:3:74", + "nodeType": "YulTypedName", + "src": "29918:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "29926:3:74", + "nodeType": "YulTypedName", + "src": "29926:3:74", + "type": "" + } + ], + "src": "29784:366:74" + }, + { + "body": { + "nativeSrc": "30327:248:74", + "nodeType": "YulBlock", + "src": "30327:248:74", + "statements": [ + { + "nativeSrc": "30337:26:74", + "nodeType": "YulAssignment", + "src": "30337:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30349:9:74", + "nodeType": "YulIdentifier", + "src": "30349:9:74" + }, + { + "kind": "number", + "nativeSrc": "30360:2:74", + "nodeType": "YulLiteral", + "src": "30360:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30345:3:74", + "nodeType": "YulIdentifier", + "src": "30345:3:74" + }, + "nativeSrc": "30345:18:74", + "nodeType": "YulFunctionCall", + "src": "30345:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30337:4:74", + "nodeType": "YulIdentifier", + "src": "30337:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30384:9:74", + "nodeType": "YulIdentifier", + "src": "30384:9:74" + }, + { + "kind": "number", + "nativeSrc": "30395:1:74", + "nodeType": "YulLiteral", + "src": "30395:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30380:3:74", + "nodeType": "YulIdentifier", + "src": "30380:3:74" + }, + "nativeSrc": "30380:17:74", + "nodeType": "YulFunctionCall", + "src": "30380:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30403:4:74", + "nodeType": "YulIdentifier", + "src": "30403:4:74" + }, + { + "name": "headStart", + "nativeSrc": "30409:9:74", + "nodeType": "YulIdentifier", + "src": "30409:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "30399:3:74", + "nodeType": "YulIdentifier", + "src": "30399:3:74" + }, + "nativeSrc": "30399:20:74", + "nodeType": "YulFunctionCall", + "src": "30399:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30373:6:74", + "nodeType": "YulIdentifier", + "src": "30373:6:74" + }, + "nativeSrc": "30373:47:74", + "nodeType": "YulFunctionCall", + "src": "30373:47:74" + }, + "nativeSrc": "30373:47:74", + "nodeType": "YulExpressionStatement", + "src": "30373:47:74" + }, + { + "nativeSrc": "30429:139:74", + "nodeType": "YulAssignment", + "src": "30429:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30563:4:74", + "nodeType": "YulIdentifier", + "src": "30563:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697_to_t_string_memory_ptr_fromStack", + "nativeSrc": "30437:124:74", + "nodeType": "YulIdentifier", + "src": "30437:124:74" + }, + "nativeSrc": "30437:131:74", + "nodeType": "YulFunctionCall", + "src": "30437:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30429:4:74", + "nodeType": "YulIdentifier", + "src": "30429:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "30156:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "30307:9:74", + "nodeType": "YulTypedName", + "src": "30307:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "30322:4:74", + "nodeType": "YulTypedName", + "src": "30322:4:74", + "type": "" + } + ], + "src": "30156:419:74" + }, + { + "body": { + "nativeSrc": "30687:138:74", + "nodeType": "YulBlock", + "src": "30687:138:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "30709:6:74", + "nodeType": "YulIdentifier", + "src": "30709:6:74" + }, + { + "kind": "number", + "nativeSrc": "30717:1:74", + "nodeType": "YulLiteral", + "src": "30717:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30705:3:74", + "nodeType": "YulIdentifier", + "src": "30705:3:74" + }, + "nativeSrc": "30705:14:74", + "nodeType": "YulFunctionCall", + "src": "30705:14:74" + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20636f6d6d616e6473206e756d6265", + "kind": "string", + "nativeSrc": "30721:34:74", + "nodeType": "YulLiteral", + "src": "30721:34:74", + "type": "", + "value": "LineaProofHelper: commands numbe" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30698:6:74", + "nodeType": "YulIdentifier", + "src": "30698:6:74" + }, + "nativeSrc": "30698:58:74", + "nodeType": "YulFunctionCall", + "src": "30698:58:74" + }, + "nativeSrc": "30698:58:74", + "nodeType": "YulExpressionStatement", + "src": "30698:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "30777:6:74", + "nodeType": "YulIdentifier", + "src": "30777:6:74" + }, + { + "kind": "number", + "nativeSrc": "30785:2:74", + "nodeType": "YulLiteral", + "src": "30785:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30773:3:74", + "nodeType": "YulIdentifier", + "src": "30773:3:74" + }, + "nativeSrc": "30773:15:74", + "nodeType": "YulFunctionCall", + "src": "30773:15:74" + }, + { + "hexValue": "72203e2073746f726167652070726f6f6673206e756d626572", + "kind": "string", + "nativeSrc": "30790:27:74", + "nodeType": "YulLiteral", + "src": "30790:27:74", + "type": "", + "value": "r > storage proofs number" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30766:6:74", + "nodeType": "YulIdentifier", + "src": "30766:6:74" + }, + "nativeSrc": "30766:52:74", + "nodeType": "YulFunctionCall", + "src": "30766:52:74" + }, + "nativeSrc": "30766:52:74", + "nodeType": "YulExpressionStatement", + "src": "30766:52:74" + } + ] + }, + "name": "store_literal_in_memory_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5", + "nativeSrc": "30581:244:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "30679:6:74", + "nodeType": "YulTypedName", + "src": "30679:6:74", + "type": "" + } + ], + "src": "30581:244:74" + }, + { + "body": { + "nativeSrc": "30977:220:74", + "nodeType": "YulBlock", + "src": "30977:220:74", + "statements": [ + { + "nativeSrc": "30987:74:74", + "nodeType": "YulAssignment", + "src": "30987:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31053:3:74", + "nodeType": "YulIdentifier", + "src": "31053:3:74" + }, + { + "kind": "number", + "nativeSrc": "31058:2:74", + "nodeType": "YulLiteral", + "src": "31058:2:74", + "type": "", + "value": "57" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "30994:58:74", + "nodeType": "YulIdentifier", + "src": "30994:58:74" + }, + "nativeSrc": "30994:67:74", + "nodeType": "YulFunctionCall", + "src": "30994:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "30987:3:74", + "nodeType": "YulIdentifier", + "src": "30987:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31159:3:74", + "nodeType": "YulIdentifier", + "src": "31159:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5", + "nativeSrc": "31070:88:74", + "nodeType": "YulIdentifier", + "src": "31070:88:74" + }, + "nativeSrc": "31070:93:74", + "nodeType": "YulFunctionCall", + "src": "31070:93:74" + }, + "nativeSrc": "31070:93:74", + "nodeType": "YulExpressionStatement", + "src": "31070:93:74" + }, + { + "nativeSrc": "31172:19:74", + "nodeType": "YulAssignment", + "src": "31172:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31183:3:74", + "nodeType": "YulIdentifier", + "src": "31183:3:74" + }, + { + "kind": "number", + "nativeSrc": "31188:2:74", + "nodeType": "YulLiteral", + "src": "31188:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31179:3:74", + "nodeType": "YulIdentifier", + "src": "31179:3:74" + }, + "nativeSrc": "31179:12:74", + "nodeType": "YulFunctionCall", + "src": "31179:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "31172:3:74", + "nodeType": "YulIdentifier", + "src": "31172:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5_to_t_string_memory_ptr_fromStack", + "nativeSrc": "30831:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "30965:3:74", + "nodeType": "YulTypedName", + "src": "30965:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "30973:3:74", + "nodeType": "YulTypedName", + "src": "30973:3:74", + "type": "" + } + ], + "src": "30831:366:74" + }, + { + "body": { + "nativeSrc": "31374:248:74", + "nodeType": "YulBlock", + "src": "31374:248:74", + "statements": [ + { + "nativeSrc": "31384:26:74", + "nodeType": "YulAssignment", + "src": "31384:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31396:9:74", + "nodeType": "YulIdentifier", + "src": "31396:9:74" + }, + { + "kind": "number", + "nativeSrc": "31407:2:74", + "nodeType": "YulLiteral", + "src": "31407:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31392:3:74", + "nodeType": "YulIdentifier", + "src": "31392:3:74" + }, + "nativeSrc": "31392:18:74", + "nodeType": "YulFunctionCall", + "src": "31392:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31384:4:74", + "nodeType": "YulIdentifier", + "src": "31384:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31431:9:74", + "nodeType": "YulIdentifier", + "src": "31431:9:74" + }, + { + "kind": "number", + "nativeSrc": "31442:1:74", + "nodeType": "YulLiteral", + "src": "31442:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31427:3:74", + "nodeType": "YulIdentifier", + "src": "31427:3:74" + }, + "nativeSrc": "31427:17:74", + "nodeType": "YulFunctionCall", + "src": "31427:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "31450:4:74", + "nodeType": "YulIdentifier", + "src": "31450:4:74" + }, + { + "name": "headStart", + "nativeSrc": "31456:9:74", + "nodeType": "YulIdentifier", + "src": "31456:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "31446:3:74", + "nodeType": "YulIdentifier", + "src": "31446:3:74" + }, + "nativeSrc": "31446:20:74", + "nodeType": "YulFunctionCall", + "src": "31446:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "31420:6:74", + "nodeType": "YulIdentifier", + "src": "31420:6:74" + }, + "nativeSrc": "31420:47:74", + "nodeType": "YulFunctionCall", + "src": "31420:47:74" + }, + "nativeSrc": "31420:47:74", + "nodeType": "YulExpressionStatement", + "src": "31420:47:74" + }, + { + "nativeSrc": "31476:139:74", + "nodeType": "YulAssignment", + "src": "31476:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "31610:4:74", + "nodeType": "YulIdentifier", + "src": "31610:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5_to_t_string_memory_ptr_fromStack", + "nativeSrc": "31484:124:74", + "nodeType": "YulIdentifier", + "src": "31484:124:74" + }, + "nativeSrc": "31484:131:74", + "nodeType": "YulFunctionCall", + "src": "31484:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31476:4:74", + "nodeType": "YulIdentifier", + "src": "31476:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "31203:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "31354:9:74", + "nodeType": "YulTypedName", + "src": "31354:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "31369:4:74", + "nodeType": "YulTypedName", + "src": "31369:4:74", + "type": "" + } + ], + "src": "31203:419:74" + }, + { + "body": { + "nativeSrc": "31731:73:74", + "nodeType": "YulBlock", + "src": "31731:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31748:3:74", + "nodeType": "YulIdentifier", + "src": "31748:3:74" + }, + { + "name": "length", + "nativeSrc": "31753:6:74", + "nodeType": "YulIdentifier", + "src": "31753:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "31741:6:74", + "nodeType": "YulIdentifier", + "src": "31741:6:74" + }, + "nativeSrc": "31741:19:74", + "nodeType": "YulFunctionCall", + "src": "31741:19:74" + }, + "nativeSrc": "31741:19:74", + "nodeType": "YulExpressionStatement", + "src": "31741:19:74" + }, + { + "nativeSrc": "31769:29:74", + "nodeType": "YulAssignment", + "src": "31769:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31788:3:74", + "nodeType": "YulIdentifier", + "src": "31788:3:74" + }, + { + "kind": "number", + "nativeSrc": "31793:4:74", + "nodeType": "YulLiteral", + "src": "31793:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31784:3:74", + "nodeType": "YulIdentifier", + "src": "31784:3:74" + }, + "nativeSrc": "31784:14:74", + "nodeType": "YulFunctionCall", + "src": "31784:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "31769:11:74", + "nodeType": "YulIdentifier", + "src": "31769:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "31628:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "31703:3:74", + "nodeType": "YulTypedName", + "src": "31703:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "31708:6:74", + "nodeType": "YulTypedName", + "src": "31708:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "31719:11:74", + "nodeType": "YulTypedName", + "src": "31719:11:74", + "type": "" + } + ], + "src": "31628:176:74" + }, + { + "body": { + "nativeSrc": "31908:291:74", + "nodeType": "YulBlock", + "src": "31908:291:74", + "statements": [ + { + "nativeSrc": "31918:52:74", + "nodeType": "YulVariableDeclaration", + "src": "31918:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "31964:5:74", + "nodeType": "YulIdentifier", + "src": "31964:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "31932:31:74", + "nodeType": "YulIdentifier", + "src": "31932:31:74" + }, + "nativeSrc": "31932:38:74", + "nodeType": "YulFunctionCall", + "src": "31932:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "31922:6:74", + "nodeType": "YulTypedName", + "src": "31922:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31979:85:74", + "nodeType": "YulAssignment", + "src": "31979:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "32052:3:74", + "nodeType": "YulIdentifier", + "src": "32052:3:74" + }, + { + "name": "length", + "nativeSrc": "32057:6:74", + "nodeType": "YulIdentifier", + "src": "32057:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "31986:65:74", + "nodeType": "YulIdentifier", + "src": "31986:65:74" + }, + "nativeSrc": "31986:78:74", + "nodeType": "YulFunctionCall", + "src": "31986:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "31979:3:74", + "nodeType": "YulIdentifier", + "src": "31979:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "32112:5:74", + "nodeType": "YulIdentifier", + "src": "32112:5:74" + }, + { + "kind": "number", + "nativeSrc": "32119:4:74", + "nodeType": "YulLiteral", + "src": "32119:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32108:3:74", + "nodeType": "YulIdentifier", + "src": "32108:3:74" + }, + "nativeSrc": "32108:16:74", + "nodeType": "YulFunctionCall", + "src": "32108:16:74" + }, + { + "name": "pos", + "nativeSrc": "32126:3:74", + "nodeType": "YulIdentifier", + "src": "32126:3:74" + }, + { + "name": "length", + "nativeSrc": "32131:6:74", + "nodeType": "YulIdentifier", + "src": "32131:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "32073:34:74", + "nodeType": "YulIdentifier", + "src": "32073:34:74" + }, + "nativeSrc": "32073:65:74", + "nodeType": "YulFunctionCall", + "src": "32073:65:74" + }, + "nativeSrc": "32073:65:74", + "nodeType": "YulExpressionStatement", + "src": "32073:65:74" + }, + { + "nativeSrc": "32147:46:74", + "nodeType": "YulAssignment", + "src": "32147:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "32158:3:74", + "nodeType": "YulIdentifier", + "src": "32158:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "32185:6:74", + "nodeType": "YulIdentifier", + "src": "32185:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "32163:21:74", + "nodeType": "YulIdentifier", + "src": "32163:21:74" + }, + "nativeSrc": "32163:29:74", + "nodeType": "YulFunctionCall", + "src": "32163:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32154:3:74", + "nodeType": "YulIdentifier", + "src": "32154:3:74" + }, + "nativeSrc": "32154:39:74", + "nodeType": "YulFunctionCall", + "src": "32154:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "32147:3:74", + "nodeType": "YulIdentifier", + "src": "32147:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "31810:389:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "31889:5:74", + "nodeType": "YulTypedName", + "src": "31889:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "31896:3:74", + "nodeType": "YulTypedName", + "src": "31896:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "31904:3:74", + "nodeType": "YulTypedName", + "src": "31904:3:74", + "type": "" + } + ], + "src": "31810:389:74" + }, + { + "body": { + "nativeSrc": "32329:201:74", + "nodeType": "YulBlock", + "src": "32329:201:74", + "statements": [ + { + "nativeSrc": "32339:26:74", + "nodeType": "YulAssignment", + "src": "32339:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32351:9:74", + "nodeType": "YulIdentifier", + "src": "32351:9:74" + }, + { + "kind": "number", + "nativeSrc": "32362:2:74", + "nodeType": "YulLiteral", + "src": "32362:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32347:3:74", + "nodeType": "YulIdentifier", + "src": "32347:3:74" + }, + "nativeSrc": "32347:18:74", + "nodeType": "YulFunctionCall", + "src": "32347:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "32339:4:74", + "nodeType": "YulIdentifier", + "src": "32339:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32386:9:74", + "nodeType": "YulIdentifier", + "src": "32386:9:74" + }, + { + "kind": "number", + "nativeSrc": "32397:1:74", + "nodeType": "YulLiteral", + "src": "32397:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32382:3:74", + "nodeType": "YulIdentifier", + "src": "32382:3:74" + }, + "nativeSrc": "32382:17:74", + "nodeType": "YulFunctionCall", + "src": "32382:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "32405:4:74", + "nodeType": "YulIdentifier", + "src": "32405:4:74" + }, + { + "name": "headStart", + "nativeSrc": "32411:9:74", + "nodeType": "YulIdentifier", + "src": "32411:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "32401:3:74", + "nodeType": "YulIdentifier", + "src": "32401:3:74" + }, + "nativeSrc": "32401:20:74", + "nodeType": "YulFunctionCall", + "src": "32401:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "32375:6:74", + "nodeType": "YulIdentifier", + "src": "32375:6:74" + }, + "nativeSrc": "32375:47:74", + "nodeType": "YulFunctionCall", + "src": "32375:47:74" + }, + "nativeSrc": "32375:47:74", + "nodeType": "YulExpressionStatement", + "src": "32375:47:74" + }, + { + "nativeSrc": "32431:92:74", + "nodeType": "YulAssignment", + "src": "32431:92:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "32509:6:74", + "nodeType": "YulIdentifier", + "src": "32509:6:74" + }, + { + "name": "tail", + "nativeSrc": "32518:4:74", + "nodeType": "YulIdentifier", + "src": "32518:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "32439:69:74", + "nodeType": "YulIdentifier", + "src": "32439:69:74" + }, + "nativeSrc": "32439:84:74", + "nodeType": "YulFunctionCall", + "src": "32439:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "32431:4:74", + "nodeType": "YulIdentifier", + "src": "32431:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "32205:325:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "32301:9:74", + "nodeType": "YulTypedName", + "src": "32301:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "32313:6:74", + "nodeType": "YulTypedName", + "src": "32313:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "32324:4:74", + "nodeType": "YulTypedName", + "src": "32324:4:74", + "type": "" + } + ], + "src": "32205:325:74" + }, + { + "body": { + "nativeSrc": "32580:57:74", + "nodeType": "YulBlock", + "src": "32580:57:74", + "statements": [ + { + "nativeSrc": "32590:41:74", + "nodeType": "YulAssignment", + "src": "32590:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "32605:5:74", + "nodeType": "YulIdentifier", + "src": "32605:5:74" + }, + { + "kind": "number", + "nativeSrc": "32612:18:74", + "nodeType": "YulLiteral", + "src": "32612:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "32601:3:74", + "nodeType": "YulIdentifier", + "src": "32601:3:74" + }, + "nativeSrc": "32601:30:74", + "nodeType": "YulFunctionCall", + "src": "32601:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "32590:7:74", + "nodeType": "YulIdentifier", + "src": "32590:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "32536:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "32562:5:74", + "nodeType": "YulTypedName", + "src": "32562:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "32572:7:74", + "nodeType": "YulTypedName", + "src": "32572:7:74", + "type": "" + } + ], + "src": "32536:101:74" + }, + { + "body": { + "nativeSrc": "32685:78:74", + "nodeType": "YulBlock", + "src": "32685:78:74", + "statements": [ + { + "body": { + "nativeSrc": "32741:16:74", + "nodeType": "YulBlock", + "src": "32741:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32750:1:74", + "nodeType": "YulLiteral", + "src": "32750:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "32753:1:74", + "nodeType": "YulLiteral", + "src": "32753:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "32743:6:74", + "nodeType": "YulIdentifier", + "src": "32743:6:74" + }, + "nativeSrc": "32743:12:74", + "nodeType": "YulFunctionCall", + "src": "32743:12:74" + }, + "nativeSrc": "32743:12:74", + "nodeType": "YulExpressionStatement", + "src": "32743:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "32708:5:74", + "nodeType": "YulIdentifier", + "src": "32708:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "32732:5:74", + "nodeType": "YulIdentifier", + "src": "32732:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "32715:16:74", + "nodeType": "YulIdentifier", + "src": "32715:16:74" + }, + "nativeSrc": "32715:23:74", + "nodeType": "YulFunctionCall", + "src": "32715:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "32705:2:74", + "nodeType": "YulIdentifier", + "src": "32705:2:74" + }, + "nativeSrc": "32705:34:74", + "nodeType": "YulFunctionCall", + "src": "32705:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "32698:6:74", + "nodeType": "YulIdentifier", + "src": "32698:6:74" + }, + "nativeSrc": "32698:42:74", + "nodeType": "YulFunctionCall", + "src": "32698:42:74" + }, + "nativeSrc": "32695:62:74", + "nodeType": "YulIf", + "src": "32695:62:74" + } + ] + }, + "name": "validator_revert_t_uint64", + "nativeSrc": "32643:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "32678:5:74", + "nodeType": "YulTypedName", + "src": "32678:5:74", + "type": "" + } + ], + "src": "32643:120:74" + }, + { + "body": { + "nativeSrc": "32831:79:74", + "nodeType": "YulBlock", + "src": "32831:79:74", + "statements": [ + { + "nativeSrc": "32841:22:74", + "nodeType": "YulAssignment", + "src": "32841:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "32856:6:74", + "nodeType": "YulIdentifier", + "src": "32856:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "32850:5:74", + "nodeType": "YulIdentifier", + "src": "32850:5:74" + }, + "nativeSrc": "32850:13:74", + "nodeType": "YulFunctionCall", + "src": "32850:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "32841:5:74", + "nodeType": "YulIdentifier", + "src": "32841:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "32898:5:74", + "nodeType": "YulIdentifier", + "src": "32898:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint64", + "nativeSrc": "32872:25:74", + "nodeType": "YulIdentifier", + "src": "32872:25:74" + }, + "nativeSrc": "32872:32:74", + "nodeType": "YulFunctionCall", + "src": "32872:32:74" + }, + "nativeSrc": "32872:32:74", + "nodeType": "YulExpressionStatement", + "src": "32872:32:74" + } + ] + }, + "name": "abi_decode_t_uint64_fromMemory", + "nativeSrc": "32769:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "32809:6:74", + "nodeType": "YulTypedName", + "src": "32809:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "32817:3:74", + "nodeType": "YulTypedName", + "src": "32817:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "32825:5:74", + "nodeType": "YulTypedName", + "src": "32825:5:74", + "type": "" + } + ], + "src": "32769:141:74" + }, + { + "body": { + "nativeSrc": "33047:1237:74", + "nodeType": "YulBlock", + "src": "33047:1237:74", + "statements": [ + { + "body": { + "nativeSrc": "33091:83:74", + "nodeType": "YulBlock", + "src": "33091:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "33093:77:74", + "nodeType": "YulIdentifier", + "src": "33093:77:74" + }, + "nativeSrc": "33093:79:74", + "nodeType": "YulFunctionCall", + "src": "33093:79:74" + }, + "nativeSrc": "33093:79:74", + "nodeType": "YulExpressionStatement", + "src": "33093:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "33068:3:74", + "nodeType": "YulIdentifier", + "src": "33068:3:74" + }, + { + "name": "headStart", + "nativeSrc": "33073:9:74", + "nodeType": "YulIdentifier", + "src": "33073:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "33064:3:74", + "nodeType": "YulIdentifier", + "src": "33064:3:74" + }, + "nativeSrc": "33064:19:74", + "nodeType": "YulFunctionCall", + "src": "33064:19:74" + }, + { + "kind": "number", + "nativeSrc": "33085:4:74", + "nodeType": "YulLiteral", + "src": "33085:4:74", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "33060:3:74", + "nodeType": "YulIdentifier", + "src": "33060:3:74" + }, + "nativeSrc": "33060:30:74", + "nodeType": "YulFunctionCall", + "src": "33060:30:74" + }, + "nativeSrc": "33057:117:74", + "nodeType": "YulIf", + "src": "33057:117:74" + }, + { + "nativeSrc": "33183:30:74", + "nodeType": "YulAssignment", + "src": "33183:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "33208:4:74", + "nodeType": "YulLiteral", + "src": "33208:4:74", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "33192:15:74", + "nodeType": "YulIdentifier", + "src": "33192:15:74" + }, + "nativeSrc": "33192:21:74", + "nodeType": "YulFunctionCall", + "src": "33192:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "33183:5:74", + "nodeType": "YulIdentifier", + "src": "33183:5:74" + } + ] + }, + { + "nativeSrc": "33223:161:74", + "nodeType": "YulBlock", + "src": "33223:161:74", + "statements": [ + { + "nativeSrc": "33259:15:74", + "nodeType": "YulVariableDeclaration", + "src": "33259:15:74", + "value": { + "kind": "number", + "nativeSrc": "33273:1:74", + "nodeType": "YulLiteral", + "src": "33273:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33263:6:74", + "nodeType": "YulTypedName", + "src": "33263:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "33299:5:74", + "nodeType": "YulIdentifier", + "src": "33299:5:74" + }, + { + "kind": "number", + "nativeSrc": "33306:4:74", + "nodeType": "YulLiteral", + "src": "33306:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33295:3:74", + "nodeType": "YulIdentifier", + "src": "33295:3:74" + }, + "nativeSrc": "33295:16:74", + "nodeType": "YulFunctionCall", + "src": "33295:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33348:9:74", + "nodeType": "YulIdentifier", + "src": "33348:9:74" + }, + { + "name": "offset", + "nativeSrc": "33359:6:74", + "nodeType": "YulIdentifier", + "src": "33359:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33344:3:74", + "nodeType": "YulIdentifier", + "src": "33344:3:74" + }, + "nativeSrc": "33344:22:74", + "nodeType": "YulFunctionCall", + "src": "33344:22:74" + }, + { + "name": "end", + "nativeSrc": "33368:3:74", + "nodeType": "YulIdentifier", + "src": "33368:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64_fromMemory", + "nativeSrc": "33313:30:74", + "nodeType": "YulIdentifier", + "src": "33313:30:74" + }, + "nativeSrc": "33313:59:74", + "nodeType": "YulFunctionCall", + "src": "33313:59:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "33288:6:74", + "nodeType": "YulIdentifier", + "src": "33288:6:74" + }, + "nativeSrc": "33288:85:74", + "nodeType": "YulFunctionCall", + "src": "33288:85:74" + }, + "nativeSrc": "33288:85:74", + "nodeType": "YulExpressionStatement", + "src": "33288:85:74" + } + ] + }, + { + "nativeSrc": "33394:165:74", + "nodeType": "YulBlock", + "src": "33394:165:74", + "statements": [ + { + "nativeSrc": "33432:16:74", + "nodeType": "YulVariableDeclaration", + "src": "33432:16:74", + "value": { + "kind": "number", + "nativeSrc": "33446:2:74", + "nodeType": "YulLiteral", + "src": "33446:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33436:6:74", + "nodeType": "YulTypedName", + "src": "33436:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "33473:5:74", + "nodeType": "YulIdentifier", + "src": "33473:5:74" + }, + { + "kind": "number", + "nativeSrc": "33480:4:74", + "nodeType": "YulLiteral", + "src": "33480:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33469:3:74", + "nodeType": "YulIdentifier", + "src": "33469:3:74" + }, + "nativeSrc": "33469:16:74", + "nodeType": "YulFunctionCall", + "src": "33469:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33523:9:74", + "nodeType": "YulIdentifier", + "src": "33523:9:74" + }, + { + "name": "offset", + "nativeSrc": "33534:6:74", + "nodeType": "YulIdentifier", + "src": "33534:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33519:3:74", + "nodeType": "YulIdentifier", + "src": "33519:3:74" + }, + "nativeSrc": "33519:22:74", + "nodeType": "YulFunctionCall", + "src": "33519:22:74" + }, + { + "name": "end", + "nativeSrc": "33543:3:74", + "nodeType": "YulIdentifier", + "src": "33543:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "33487:31:74", + "nodeType": "YulIdentifier", + "src": "33487:31:74" + }, + "nativeSrc": "33487:60:74", + "nodeType": "YulFunctionCall", + "src": "33487:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "33462:6:74", + "nodeType": "YulIdentifier", + "src": "33462:6:74" + }, + "nativeSrc": "33462:86:74", + "nodeType": "YulFunctionCall", + "src": "33462:86:74" + }, + "nativeSrc": "33462:86:74", + "nodeType": "YulExpressionStatement", + "src": "33462:86:74" + } + ] + }, + { + "nativeSrc": "33569:169:74", + "nodeType": "YulBlock", + "src": "33569:169:74", + "statements": [ + { + "nativeSrc": "33611:16:74", + "nodeType": "YulVariableDeclaration", + "src": "33611:16:74", + "value": { + "kind": "number", + "nativeSrc": "33625:2:74", + "nodeType": "YulLiteral", + "src": "33625:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33615:6:74", + "nodeType": "YulTypedName", + "src": "33615:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "33652:5:74", + "nodeType": "YulIdentifier", + "src": "33652:5:74" + }, + { + "kind": "number", + "nativeSrc": "33659:4:74", + "nodeType": "YulLiteral", + "src": "33659:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33648:3:74", + "nodeType": "YulIdentifier", + "src": "33648:3:74" + }, + "nativeSrc": "33648:16:74", + "nodeType": "YulFunctionCall", + "src": "33648:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33702:9:74", + "nodeType": "YulIdentifier", + "src": "33702:9:74" + }, + { + "name": "offset", + "nativeSrc": "33713:6:74", + "nodeType": "YulIdentifier", + "src": "33713:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33698:3:74", + "nodeType": "YulIdentifier", + "src": "33698:3:74" + }, + "nativeSrc": "33698:22:74", + "nodeType": "YulFunctionCall", + "src": "33698:22:74" + }, + { + "name": "end", + "nativeSrc": "33722:3:74", + "nodeType": "YulIdentifier", + "src": "33722:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "33666:31:74", + "nodeType": "YulIdentifier", + "src": "33666:31:74" + }, + "nativeSrc": "33666:60:74", + "nodeType": "YulFunctionCall", + "src": "33666:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "33641:6:74", + "nodeType": "YulIdentifier", + "src": "33641:6:74" + }, + "nativeSrc": "33641:86:74", + "nodeType": "YulFunctionCall", + "src": "33641:86:74" + }, + "nativeSrc": "33641:86:74", + "nodeType": "YulExpressionStatement", + "src": "33641:86:74" + } + ] + }, + { + "nativeSrc": "33748:170:74", + "nodeType": "YulBlock", + "src": "33748:170:74", + "statements": [ + { + "nativeSrc": "33791:16:74", + "nodeType": "YulVariableDeclaration", + "src": "33791:16:74", + "value": { + "kind": "number", + "nativeSrc": "33805:2:74", + "nodeType": "YulLiteral", + "src": "33805:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33795:6:74", + "nodeType": "YulTypedName", + "src": "33795:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "33832:5:74", + "nodeType": "YulIdentifier", + "src": "33832:5:74" + }, + { + "kind": "number", + "nativeSrc": "33839:4:74", + "nodeType": "YulLiteral", + "src": "33839:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33828:3:74", + "nodeType": "YulIdentifier", + "src": "33828:3:74" + }, + "nativeSrc": "33828:16:74", + "nodeType": "YulFunctionCall", + "src": "33828:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33882:9:74", + "nodeType": "YulIdentifier", + "src": "33882:9:74" + }, + { + "name": "offset", + "nativeSrc": "33893:6:74", + "nodeType": "YulIdentifier", + "src": "33893:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33878:3:74", + "nodeType": "YulIdentifier", + "src": "33878:3:74" + }, + "nativeSrc": "33878:22:74", + "nodeType": "YulFunctionCall", + "src": "33878:22:74" + }, + { + "name": "end", + "nativeSrc": "33902:3:74", + "nodeType": "YulIdentifier", + "src": "33902:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "33846:31:74", + "nodeType": "YulIdentifier", + "src": "33846:31:74" + }, + "nativeSrc": "33846:60:74", + "nodeType": "YulFunctionCall", + "src": "33846:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "33821:6:74", + "nodeType": "YulIdentifier", + "src": "33821:6:74" + }, + "nativeSrc": "33821:86:74", + "nodeType": "YulFunctionCall", + "src": "33821:86:74" + }, + "nativeSrc": "33821:86:74", + "nodeType": "YulExpressionStatement", + "src": "33821:86:74" + } + ] + }, + { + "nativeSrc": "33928:173:74", + "nodeType": "YulBlock", + "src": "33928:173:74", + "statements": [ + { + "nativeSrc": "33973:17:74", + "nodeType": "YulVariableDeclaration", + "src": "33973:17:74", + "value": { + "kind": "number", + "nativeSrc": "33987:3:74", + "nodeType": "YulLiteral", + "src": "33987:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33977:6:74", + "nodeType": "YulTypedName", + "src": "33977:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "34015:5:74", + "nodeType": "YulIdentifier", + "src": "34015:5:74" + }, + { + "kind": "number", + "nativeSrc": "34022:4:74", + "nodeType": "YulLiteral", + "src": "34022:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34011:3:74", + "nodeType": "YulIdentifier", + "src": "34011:3:74" + }, + "nativeSrc": "34011:16:74", + "nodeType": "YulFunctionCall", + "src": "34011:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34065:9:74", + "nodeType": "YulIdentifier", + "src": "34065:9:74" + }, + { + "name": "offset", + "nativeSrc": "34076:6:74", + "nodeType": "YulIdentifier", + "src": "34076:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34061:3:74", + "nodeType": "YulIdentifier", + "src": "34061:3:74" + }, + "nativeSrc": "34061:22:74", + "nodeType": "YulFunctionCall", + "src": "34061:22:74" + }, + { + "name": "end", + "nativeSrc": "34085:3:74", + "nodeType": "YulIdentifier", + "src": "34085:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "34029:31:74", + "nodeType": "YulIdentifier", + "src": "34029:31:74" + }, + "nativeSrc": "34029:60:74", + "nodeType": "YulFunctionCall", + "src": "34029:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34004:6:74", + "nodeType": "YulIdentifier", + "src": "34004:6:74" + }, + "nativeSrc": "34004:86:74", + "nodeType": "YulFunctionCall", + "src": "34004:86:74" + }, + "nativeSrc": "34004:86:74", + "nodeType": "YulExpressionStatement", + "src": "34004:86:74" + } + ] + }, + { + "nativeSrc": "34111:166:74", + "nodeType": "YulBlock", + "src": "34111:166:74", + "statements": [ + { + "nativeSrc": "34150:17:74", + "nodeType": "YulVariableDeclaration", + "src": "34150:17:74", + "value": { + "kind": "number", + "nativeSrc": "34164:3:74", + "nodeType": "YulLiteral", + "src": "34164:3:74", + "type": "", + "value": "160" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34154:6:74", + "nodeType": "YulTypedName", + "src": "34154:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "34192:5:74", + "nodeType": "YulIdentifier", + "src": "34192:5:74" + }, + { + "kind": "number", + "nativeSrc": "34199:4:74", + "nodeType": "YulLiteral", + "src": "34199:4:74", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34188:3:74", + "nodeType": "YulIdentifier", + "src": "34188:3:74" + }, + "nativeSrc": "34188:16:74", + "nodeType": "YulFunctionCall", + "src": "34188:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34241:9:74", + "nodeType": "YulIdentifier", + "src": "34241:9:74" + }, + { + "name": "offset", + "nativeSrc": "34252:6:74", + "nodeType": "YulIdentifier", + "src": "34252:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34237:3:74", + "nodeType": "YulIdentifier", + "src": "34237:3:74" + }, + "nativeSrc": "34237:22:74", + "nodeType": "YulFunctionCall", + "src": "34237:22:74" + }, + { + "name": "end", + "nativeSrc": "34261:3:74", + "nodeType": "YulIdentifier", + "src": "34261:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64_fromMemory", + "nativeSrc": "34206:30:74", + "nodeType": "YulIdentifier", + "src": "34206:30:74" + }, + "nativeSrc": "34206:59:74", + "nodeType": "YulFunctionCall", + "src": "34206:59:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34181:6:74", + "nodeType": "YulIdentifier", + "src": "34181:6:74" + }, + "nativeSrc": "34181:85:74", + "nodeType": "YulFunctionCall", + "src": "34181:85:74" + }, + "nativeSrc": "34181:85:74", + "nodeType": "YulExpressionStatement", + "src": "34181:85:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_Account_$1774_memory_ptr_fromMemory", + "nativeSrc": "32956:1328:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "33022:9:74", + "nodeType": "YulTypedName", + "src": "33022:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "33033:3:74", + "nodeType": "YulTypedName", + "src": "33033:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "33041:5:74", + "nodeType": "YulTypedName", + "src": "33041:5:74", + "type": "" + } + ], + "src": "32956:1328:74" + }, + { + "body": { + "nativeSrc": "34392:300:74", + "nodeType": "YulBlock", + "src": "34392:300:74", + "statements": [ + { + "body": { + "nativeSrc": "34439:83:74", + "nodeType": "YulBlock", + "src": "34439:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "34441:77:74", + "nodeType": "YulIdentifier", + "src": "34441:77:74" + }, + "nativeSrc": "34441:79:74", + "nodeType": "YulFunctionCall", + "src": "34441:79:74" + }, + "nativeSrc": "34441:79:74", + "nodeType": "YulExpressionStatement", + "src": "34441:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "34413:7:74", + "nodeType": "YulIdentifier", + "src": "34413:7:74" + }, + { + "name": "headStart", + "nativeSrc": "34422:9:74", + "nodeType": "YulIdentifier", + "src": "34422:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "34409:3:74", + "nodeType": "YulIdentifier", + "src": "34409:3:74" + }, + "nativeSrc": "34409:23:74", + "nodeType": "YulFunctionCall", + "src": "34409:23:74" + }, + { + "kind": "number", + "nativeSrc": "34434:3:74", + "nodeType": "YulLiteral", + "src": "34434:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "34405:3:74", + "nodeType": "YulIdentifier", + "src": "34405:3:74" + }, + "nativeSrc": "34405:33:74", + "nodeType": "YulFunctionCall", + "src": "34405:33:74" + }, + "nativeSrc": "34402:120:74", + "nodeType": "YulIf", + "src": "34402:120:74" + }, + { + "nativeSrc": "34532:153:74", + "nodeType": "YulBlock", + "src": "34532:153:74", + "statements": [ + { + "nativeSrc": "34547:15:74", + "nodeType": "YulVariableDeclaration", + "src": "34547:15:74", + "value": { + "kind": "number", + "nativeSrc": "34561:1:74", + "nodeType": "YulLiteral", + "src": "34561:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34551:6:74", + "nodeType": "YulTypedName", + "src": "34551:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34576:99:74", + "nodeType": "YulAssignment", + "src": "34576:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34647:9:74", + "nodeType": "YulIdentifier", + "src": "34647:9:74" + }, + { + "name": "offset", + "nativeSrc": "34658:6:74", + "nodeType": "YulIdentifier", + "src": "34658:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34643:3:74", + "nodeType": "YulIdentifier", + "src": "34643:3:74" + }, + "nativeSrc": "34643:22:74", + "nodeType": "YulFunctionCall", + "src": "34643:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34667:7:74", + "nodeType": "YulIdentifier", + "src": "34667:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_Account_$1774_memory_ptr_fromMemory", + "nativeSrc": "34586:56:74", + "nodeType": "YulIdentifier", + "src": "34586:56:74" + }, + "nativeSrc": "34586:89:74", + "nodeType": "YulFunctionCall", + "src": "34586:89:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "34576:6:74", + "nodeType": "YulIdentifier", + "src": "34576:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_struct$_Account_$1774_memory_ptr_fromMemory", + "nativeSrc": "34290:402:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "34362:9:74", + "nodeType": "YulTypedName", + "src": "34362:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "34373:7:74", + "nodeType": "YulTypedName", + "src": "34373:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "34385:6:74", + "nodeType": "YulTypedName", + "src": "34385:6:74", + "type": "" + } + ], + "src": "34290:402:74" + }, + { + "body": { + "nativeSrc": "34726:152:74", + "nodeType": "YulBlock", + "src": "34726:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34743:1:74", + "nodeType": "YulLiteral", + "src": "34743:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "34746:77:74", + "nodeType": "YulLiteral", + "src": "34746:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34736:6:74", + "nodeType": "YulIdentifier", + "src": "34736:6:74" + }, + "nativeSrc": "34736:88:74", + "nodeType": "YulFunctionCall", + "src": "34736:88:74" + }, + "nativeSrc": "34736:88:74", + "nodeType": "YulExpressionStatement", + "src": "34736:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34840:1:74", + "nodeType": "YulLiteral", + "src": "34840:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "34843:4:74", + "nodeType": "YulLiteral", + "src": "34843:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34833:6:74", + "nodeType": "YulIdentifier", + "src": "34833:6:74" + }, + "nativeSrc": "34833:15:74", + "nodeType": "YulFunctionCall", + "src": "34833:15:74" + }, + "nativeSrc": "34833:15:74", + "nodeType": "YulExpressionStatement", + "src": "34833:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34864:1:74", + "nodeType": "YulLiteral", + "src": "34864:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "34867:4:74", + "nodeType": "YulLiteral", + "src": "34867:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "34857:6:74", + "nodeType": "YulIdentifier", + "src": "34857:6:74" + }, + "nativeSrc": "34857:15:74", + "nodeType": "YulFunctionCall", + "src": "34857:15:74" + }, + "nativeSrc": "34857:15:74", + "nodeType": "YulExpressionStatement", + "src": "34857:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "34698:180:74", + "nodeType": "YulFunctionDefinition", + "src": "34698:180:74" + }, + { + "body": { + "nativeSrc": "34937:32:74", + "nodeType": "YulBlock", + "src": "34937:32:74", + "statements": [ + { + "nativeSrc": "34947:16:74", + "nodeType": "YulAssignment", + "src": "34947:16:74", + "value": { + "name": "value", + "nativeSrc": "34958:5:74", + "nodeType": "YulIdentifier", + "src": "34958:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "34947:7:74", + "nodeType": "YulIdentifier", + "src": "34947:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_0_by_1", + "nativeSrc": "34884:85:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34919:5:74", + "nodeType": "YulTypedName", + "src": "34919:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "34929:7:74", + "nodeType": "YulTypedName", + "src": "34929:7:74", + "type": "" + } + ], + "src": "34884:85:74" + }, + { + "body": { + "nativeSrc": "35018:43:74", + "nodeType": "YulBlock", + "src": "35018:43:74", + "statements": [ + { + "nativeSrc": "35028:27:74", + "nodeType": "YulAssignment", + "src": "35028:27:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35043:5:74", + "nodeType": "YulIdentifier", + "src": "35043:5:74" + }, + { + "kind": "number", + "nativeSrc": "35050:4:74", + "nodeType": "YulLiteral", + "src": "35050:4:74", + "type": "", + "value": "0xff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "35039:3:74", + "nodeType": "YulIdentifier", + "src": "35039:3:74" + }, + "nativeSrc": "35039:16:74", + "nodeType": "YulFunctionCall", + "src": "35039:16:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "35028:7:74", + "nodeType": "YulIdentifier", + "src": "35028:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint8", + "nativeSrc": "34975:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35000:5:74", + "nodeType": "YulTypedName", + "src": "35000:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "35010:7:74", + "nodeType": "YulTypedName", + "src": "35010:7:74", + "type": "" + } + ], + "src": "34975:86:74" + }, + { + "body": { + "nativeSrc": "35099:28:74", + "nodeType": "YulBlock", + "src": "35099:28:74", + "statements": [ + { + "nativeSrc": "35109:12:74", + "nodeType": "YulAssignment", + "src": "35109:12:74", + "value": { + "name": "value", + "nativeSrc": "35116:5:74", + "nodeType": "YulIdentifier", + "src": "35116:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "35109:3:74", + "nodeType": "YulIdentifier", + "src": "35109:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "35067:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35085:5:74", + "nodeType": "YulTypedName", + "src": "35085:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "35095:3:74", + "nodeType": "YulTypedName", + "src": "35095:3:74", + "type": "" + } + ], + "src": "35067:60:74" + }, + { + "body": { + "nativeSrc": "35199:88:74", + "nodeType": "YulBlock", + "src": "35199:88:74", + "statements": [ + { + "nativeSrc": "35209:72:74", + "nodeType": "YulAssignment", + "src": "35209:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "35273:5:74", + "nodeType": "YulIdentifier", + "src": "35273:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_0_by_1", + "nativeSrc": "35247:25:74", + "nodeType": "YulIdentifier", + "src": "35247:25:74" + }, + "nativeSrc": "35247:32:74", + "nodeType": "YulFunctionCall", + "src": "35247:32:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "35238:8:74", + "nodeType": "YulIdentifier", + "src": "35238:8:74" + }, + "nativeSrc": "35238:42:74", + "nodeType": "YulFunctionCall", + "src": "35238:42:74" + } + ], + "functionName": { + "name": "cleanup_t_uint8", + "nativeSrc": "35222:15:74", + "nodeType": "YulIdentifier", + "src": "35222:15:74" + }, + "nativeSrc": "35222:59:74", + "nodeType": "YulFunctionCall", + "src": "35222:59:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "35209:9:74", + "nodeType": "YulIdentifier", + "src": "35209:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_0_by_1_to_t_uint8", + "nativeSrc": "35133:154:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35179:5:74", + "nodeType": "YulTypedName", + "src": "35179:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "35189:9:74", + "nodeType": "YulTypedName", + "src": "35189:9:74", + "type": "" + } + ], + "src": "35133:154:74" + }, + { + "body": { + "nativeSrc": "35364:72:74", + "nodeType": "YulBlock", + "src": "35364:72:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "35381:3:74", + "nodeType": "YulIdentifier", + "src": "35381:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "35423:5:74", + "nodeType": "YulIdentifier", + "src": "35423:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_0_by_1_to_t_uint8", + "nativeSrc": "35386:36:74", + "nodeType": "YulIdentifier", + "src": "35386:36:74" + }, + "nativeSrc": "35386:43:74", + "nodeType": "YulFunctionCall", + "src": "35386:43:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "35374:6:74", + "nodeType": "YulIdentifier", + "src": "35374:6:74" + }, + "nativeSrc": "35374:56:74", + "nodeType": "YulFunctionCall", + "src": "35374:56:74" + }, + "nativeSrc": "35374:56:74", + "nodeType": "YulExpressionStatement", + "src": "35374:56:74" + } + ] + }, + "name": "abi_encode_t_rational_0_by_1_to_t_uint8_fromStack", + "nativeSrc": "35293:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35352:5:74", + "nodeType": "YulTypedName", + "src": "35352:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "35359:3:74", + "nodeType": "YulTypedName", + "src": "35359:3:74", + "type": "" + } + ], + "src": "35293:143:74" + }, + { + "body": { + "nativeSrc": "35546:130:74", + "nodeType": "YulBlock", + "src": "35546:130:74", + "statements": [ + { + "nativeSrc": "35556:26:74", + "nodeType": "YulAssignment", + "src": "35556:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "35568:9:74", + "nodeType": "YulIdentifier", + "src": "35568:9:74" + }, + { + "kind": "number", + "nativeSrc": "35579:2:74", + "nodeType": "YulLiteral", + "src": "35579:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35564:3:74", + "nodeType": "YulIdentifier", + "src": "35564:3:74" + }, + "nativeSrc": "35564:18:74", + "nodeType": "YulFunctionCall", + "src": "35564:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "35556:4:74", + "nodeType": "YulIdentifier", + "src": "35556:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "35642:6:74", + "nodeType": "YulIdentifier", + "src": "35642:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "35655:9:74", + "nodeType": "YulIdentifier", + "src": "35655:9:74" + }, + { + "kind": "number", + "nativeSrc": "35666:1:74", + "nodeType": "YulLiteral", + "src": "35666:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35651:3:74", + "nodeType": "YulIdentifier", + "src": "35651:3:74" + }, + "nativeSrc": "35651:17:74", + "nodeType": "YulFunctionCall", + "src": "35651:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_0_by_1_to_t_uint8_fromStack", + "nativeSrc": "35592:49:74", + "nodeType": "YulIdentifier", + "src": "35592:49:74" + }, + "nativeSrc": "35592:77:74", + "nodeType": "YulFunctionCall", + "src": "35592:77:74" + }, + "nativeSrc": "35592:77:74", + "nodeType": "YulExpressionStatement", + "src": "35592:77:74" + } + ] + }, + "name": "abi_encode_tuple_t_rational_0_by_1__to_t_uint8__fromStack_reversed", + "nativeSrc": "35442:234:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "35518:9:74", + "nodeType": "YulTypedName", + "src": "35518:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "35530:6:74", + "nodeType": "YulTypedName", + "src": "35530:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "35541:4:74", + "nodeType": "YulTypedName", + "src": "35541:4:74", + "type": "" + } + ], + "src": "35442:234:74" + }, + { + "body": { + "nativeSrc": "35725:190:74", + "nodeType": "YulBlock", + "src": "35725:190:74", + "statements": [ + { + "nativeSrc": "35735:33:74", + "nodeType": "YulAssignment", + "src": "35735:33:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35762:5:74", + "nodeType": "YulIdentifier", + "src": "35762:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "35744:17:74", + "nodeType": "YulIdentifier", + "src": "35744:17:74" + }, + "nativeSrc": "35744:24:74", + "nodeType": "YulFunctionCall", + "src": "35744:24:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "35735:5:74", + "nodeType": "YulIdentifier", + "src": "35735:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "35858:22:74", + "nodeType": "YulBlock", + "src": "35858:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "35860:16:74", + "nodeType": "YulIdentifier", + "src": "35860:16:74" + }, + "nativeSrc": "35860:18:74", + "nodeType": "YulFunctionCall", + "src": "35860:18:74" + }, + "nativeSrc": "35860:18:74", + "nodeType": "YulExpressionStatement", + "src": "35860:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35783:5:74", + "nodeType": "YulIdentifier", + "src": "35783:5:74" + }, + { + "kind": "number", + "nativeSrc": "35790:66:74", + "nodeType": "YulLiteral", + "src": "35790:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "35780:2:74", + "nodeType": "YulIdentifier", + "src": "35780:2:74" + }, + "nativeSrc": "35780:77:74", + "nodeType": "YulFunctionCall", + "src": "35780:77:74" + }, + "nativeSrc": "35777:103:74", + "nodeType": "YulIf", + "src": "35777:103:74" + }, + { + "nativeSrc": "35889:20:74", + "nodeType": "YulAssignment", + "src": "35889:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35900:5:74", + "nodeType": "YulIdentifier", + "src": "35900:5:74" + }, + { + "kind": "number", + "nativeSrc": "35907:1:74", + "nodeType": "YulLiteral", + "src": "35907:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35896:3:74", + "nodeType": "YulIdentifier", + "src": "35896:3:74" + }, + "nativeSrc": "35896:13:74", + "nodeType": "YulFunctionCall", + "src": "35896:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "35889:3:74", + "nodeType": "YulIdentifier", + "src": "35889:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nativeSrc": "35682:233:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35711:5:74", + "nodeType": "YulTypedName", + "src": "35711:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "35721:3:74", + "nodeType": "YulTypedName", + "src": "35721:3:74", + "type": "" + } + ], + "src": "35682:233:74" + }, + { + "body": { + "nativeSrc": "35986:53:74", + "nodeType": "YulBlock", + "src": "35986:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "36003:3:74", + "nodeType": "YulIdentifier", + "src": "36003:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "36026:5:74", + "nodeType": "YulIdentifier", + "src": "36026:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "36008:17:74", + "nodeType": "YulIdentifier", + "src": "36008:17:74" + }, + "nativeSrc": "36008:24:74", + "nodeType": "YulFunctionCall", + "src": "36008:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "35996:6:74", + "nodeType": "YulIdentifier", + "src": "35996:6:74" + }, + "nativeSrc": "35996:37:74", + "nodeType": "YulFunctionCall", + "src": "35996:37:74" + }, + "nativeSrc": "35996:37:74", + "nodeType": "YulExpressionStatement", + "src": "35996:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "35921:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35974:5:74", + "nodeType": "YulTypedName", + "src": "35974:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "35981:3:74", + "nodeType": "YulTypedName", + "src": "35981:3:74", + "type": "" + } + ], + "src": "35921:118:74" + }, + { + "body": { + "nativeSrc": "36143:124:74", + "nodeType": "YulBlock", + "src": "36143:124:74", + "statements": [ + { + "nativeSrc": "36153:26:74", + "nodeType": "YulAssignment", + "src": "36153:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36165:9:74", + "nodeType": "YulIdentifier", + "src": "36165:9:74" + }, + { + "kind": "number", + "nativeSrc": "36176:2:74", + "nodeType": "YulLiteral", + "src": "36176:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36161:3:74", + "nodeType": "YulIdentifier", + "src": "36161:3:74" + }, + "nativeSrc": "36161:18:74", + "nodeType": "YulFunctionCall", + "src": "36161:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "36153:4:74", + "nodeType": "YulIdentifier", + "src": "36153:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "36233:6:74", + "nodeType": "YulIdentifier", + "src": "36233:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36246:9:74", + "nodeType": "YulIdentifier", + "src": "36246:9:74" + }, + { + "kind": "number", + "nativeSrc": "36257:1:74", + "nodeType": "YulLiteral", + "src": "36257:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36242:3:74", + "nodeType": "YulIdentifier", + "src": "36242:3:74" + }, + "nativeSrc": "36242:17:74", + "nodeType": "YulFunctionCall", + "src": "36242:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "36189:43:74", + "nodeType": "YulIdentifier", + "src": "36189:43:74" + }, + "nativeSrc": "36189:71:74", + "nodeType": "YulFunctionCall", + "src": "36189:71:74" + }, + "nativeSrc": "36189:71:74", + "nodeType": "YulExpressionStatement", + "src": "36189:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "36045:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "36115:9:74", + "nodeType": "YulTypedName", + "src": "36115:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "36127:6:74", + "nodeType": "YulTypedName", + "src": "36127:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "36138:4:74", + "nodeType": "YulTypedName", + "src": "36138:4:74", + "type": "" + } + ], + "src": "36045:222:74" + }, + { + "body": { + "nativeSrc": "36398:862:74", + "nodeType": "YulBlock", + "src": "36398:862:74", + "statements": [ + { + "body": { + "nativeSrc": "36442:83:74", + "nodeType": "YulBlock", + "src": "36442:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "36444:77:74", + "nodeType": "YulIdentifier", + "src": "36444:77:74" + }, + "nativeSrc": "36444:79:74", + "nodeType": "YulFunctionCall", + "src": "36444:79:74" + }, + "nativeSrc": "36444:79:74", + "nodeType": "YulExpressionStatement", + "src": "36444:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "36419:3:74", + "nodeType": "YulIdentifier", + "src": "36419:3:74" + }, + { + "name": "headStart", + "nativeSrc": "36424:9:74", + "nodeType": "YulIdentifier", + "src": "36424:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "36415:3:74", + "nodeType": "YulIdentifier", + "src": "36415:3:74" + }, + "nativeSrc": "36415:19:74", + "nodeType": "YulFunctionCall", + "src": "36415:19:74" + }, + { + "kind": "number", + "nativeSrc": "36436:4:74", + "nodeType": "YulLiteral", + "src": "36436:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "36411:3:74", + "nodeType": "YulIdentifier", + "src": "36411:3:74" + }, + "nativeSrc": "36411:30:74", + "nodeType": "YulFunctionCall", + "src": "36411:30:74" + }, + "nativeSrc": "36408:117:74", + "nodeType": "YulIf", + "src": "36408:117:74" + }, + { + "nativeSrc": "36534:30:74", + "nodeType": "YulAssignment", + "src": "36534:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "36559:4:74", + "nodeType": "YulLiteral", + "src": "36559:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "36543:15:74", + "nodeType": "YulIdentifier", + "src": "36543:15:74" + }, + "nativeSrc": "36543:21:74", + "nodeType": "YulFunctionCall", + "src": "36543:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "36534:5:74", + "nodeType": "YulIdentifier", + "src": "36534:5:74" + } + ] + }, + { + "nativeSrc": "36574:161:74", + "nodeType": "YulBlock", + "src": "36574:161:74", + "statements": [ + { + "nativeSrc": "36609:15:74", + "nodeType": "YulVariableDeclaration", + "src": "36609:15:74", + "value": { + "kind": "number", + "nativeSrc": "36623:1:74", + "nodeType": "YulLiteral", + "src": "36623:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36613:6:74", + "nodeType": "YulTypedName", + "src": "36613:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "36649:5:74", + "nodeType": "YulIdentifier", + "src": "36649:5:74" + }, + { + "kind": "number", + "nativeSrc": "36656:4:74", + "nodeType": "YulLiteral", + "src": "36656:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36645:3:74", + "nodeType": "YulIdentifier", + "src": "36645:3:74" + }, + "nativeSrc": "36645:16:74", + "nodeType": "YulFunctionCall", + "src": "36645:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36699:9:74", + "nodeType": "YulIdentifier", + "src": "36699:9:74" + }, + { + "name": "offset", + "nativeSrc": "36710:6:74", + "nodeType": "YulIdentifier", + "src": "36710:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36695:3:74", + "nodeType": "YulIdentifier", + "src": "36695:3:74" + }, + "nativeSrc": "36695:22:74", + "nodeType": "YulFunctionCall", + "src": "36695:22:74" + }, + { + "name": "end", + "nativeSrc": "36719:3:74", + "nodeType": "YulIdentifier", + "src": "36719:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "36663:31:74", + "nodeType": "YulIdentifier", + "src": "36663:31:74" + }, + "nativeSrc": "36663:60:74", + "nodeType": "YulFunctionCall", + "src": "36663:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36638:6:74", + "nodeType": "YulIdentifier", + "src": "36638:6:74" + }, + "nativeSrc": "36638:86:74", + "nodeType": "YulFunctionCall", + "src": "36638:86:74" + }, + "nativeSrc": "36638:86:74", + "nodeType": "YulExpressionStatement", + "src": "36638:86:74" + } + ] + }, + { + "nativeSrc": "36745:162:74", + "nodeType": "YulBlock", + "src": "36745:162:74", + "statements": [ + { + "nativeSrc": "36780:16:74", + "nodeType": "YulVariableDeclaration", + "src": "36780:16:74", + "value": { + "kind": "number", + "nativeSrc": "36794:2:74", + "nodeType": "YulLiteral", + "src": "36794:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36784:6:74", + "nodeType": "YulTypedName", + "src": "36784:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "36821:5:74", + "nodeType": "YulIdentifier", + "src": "36821:5:74" + }, + { + "kind": "number", + "nativeSrc": "36828:4:74", + "nodeType": "YulLiteral", + "src": "36828:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36817:3:74", + "nodeType": "YulIdentifier", + "src": "36817:3:74" + }, + "nativeSrc": "36817:16:74", + "nodeType": "YulFunctionCall", + "src": "36817:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36871:9:74", + "nodeType": "YulIdentifier", + "src": "36871:9:74" + }, + { + "name": "offset", + "nativeSrc": "36882:6:74", + "nodeType": "YulIdentifier", + "src": "36882:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36867:3:74", + "nodeType": "YulIdentifier", + "src": "36867:3:74" + }, + "nativeSrc": "36867:22:74", + "nodeType": "YulFunctionCall", + "src": "36867:22:74" + }, + { + "name": "end", + "nativeSrc": "36891:3:74", + "nodeType": "YulIdentifier", + "src": "36891:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "36835:31:74", + "nodeType": "YulIdentifier", + "src": "36835:31:74" + }, + "nativeSrc": "36835:60:74", + "nodeType": "YulFunctionCall", + "src": "36835:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36810:6:74", + "nodeType": "YulIdentifier", + "src": "36810:6:74" + }, + "nativeSrc": "36810:86:74", + "nodeType": "YulFunctionCall", + "src": "36810:86:74" + }, + "nativeSrc": "36810:86:74", + "nodeType": "YulExpressionStatement", + "src": "36810:86:74" + } + ] + }, + { + "nativeSrc": "36917:162:74", + "nodeType": "YulBlock", + "src": "36917:162:74", + "statements": [ + { + "nativeSrc": "36952:16:74", + "nodeType": "YulVariableDeclaration", + "src": "36952:16:74", + "value": { + "kind": "number", + "nativeSrc": "36966:2:74", + "nodeType": "YulLiteral", + "src": "36966:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36956:6:74", + "nodeType": "YulTypedName", + "src": "36956:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "36993:5:74", + "nodeType": "YulIdentifier", + "src": "36993:5:74" + }, + { + "kind": "number", + "nativeSrc": "37000:4:74", + "nodeType": "YulLiteral", + "src": "37000:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36989:3:74", + "nodeType": "YulIdentifier", + "src": "36989:3:74" + }, + "nativeSrc": "36989:16:74", + "nodeType": "YulFunctionCall", + "src": "36989:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37043:9:74", + "nodeType": "YulIdentifier", + "src": "37043:9:74" + }, + { + "name": "offset", + "nativeSrc": "37054:6:74", + "nodeType": "YulIdentifier", + "src": "37054:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37039:3:74", + "nodeType": "YulIdentifier", + "src": "37039:3:74" + }, + "nativeSrc": "37039:22:74", + "nodeType": "YulFunctionCall", + "src": "37039:22:74" + }, + { + "name": "end", + "nativeSrc": "37063:3:74", + "nodeType": "YulIdentifier", + "src": "37063:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "37007:31:74", + "nodeType": "YulIdentifier", + "src": "37007:31:74" + }, + "nativeSrc": "37007:60:74", + "nodeType": "YulFunctionCall", + "src": "37007:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36982:6:74", + "nodeType": "YulIdentifier", + "src": "36982:6:74" + }, + "nativeSrc": "36982:86:74", + "nodeType": "YulFunctionCall", + "src": "36982:86:74" + }, + "nativeSrc": "36982:86:74", + "nodeType": "YulExpressionStatement", + "src": "36982:86:74" + } + ] + }, + { + "nativeSrc": "37089:164:74", + "nodeType": "YulBlock", + "src": "37089:164:74", + "statements": [ + { + "nativeSrc": "37126:16:74", + "nodeType": "YulVariableDeclaration", + "src": "37126:16:74", + "value": { + "kind": "number", + "nativeSrc": "37140:2:74", + "nodeType": "YulLiteral", + "src": "37140:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37130:6:74", + "nodeType": "YulTypedName", + "src": "37130:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "37167:5:74", + "nodeType": "YulIdentifier", + "src": "37167:5:74" + }, + { + "kind": "number", + "nativeSrc": "37174:4:74", + "nodeType": "YulLiteral", + "src": "37174:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37163:3:74", + "nodeType": "YulIdentifier", + "src": "37163:3:74" + }, + "nativeSrc": "37163:16:74", + "nodeType": "YulFunctionCall", + "src": "37163:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37217:9:74", + "nodeType": "YulIdentifier", + "src": "37217:9:74" + }, + { + "name": "offset", + "nativeSrc": "37228:6:74", + "nodeType": "YulIdentifier", + "src": "37228:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37213:3:74", + "nodeType": "YulIdentifier", + "src": "37213:3:74" + }, + "nativeSrc": "37213:22:74", + "nodeType": "YulFunctionCall", + "src": "37213:22:74" + }, + { + "name": "end", + "nativeSrc": "37237:3:74", + "nodeType": "YulIdentifier", + "src": "37237:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "37181:31:74", + "nodeType": "YulIdentifier", + "src": "37181:31:74" + }, + "nativeSrc": "37181:60:74", + "nodeType": "YulFunctionCall", + "src": "37181:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37156:6:74", + "nodeType": "YulIdentifier", + "src": "37156:6:74" + }, + "nativeSrc": "37156:86:74", + "nodeType": "YulFunctionCall", + "src": "37156:86:74" + }, + "nativeSrc": "37156:86:74", + "nodeType": "YulExpressionStatement", + "src": "37156:86:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_Leaf_$1784_memory_ptr_fromMemory", + "nativeSrc": "36310:950:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "36373:9:74", + "nodeType": "YulTypedName", + "src": "36373:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "36384:3:74", + "nodeType": "YulTypedName", + "src": "36384:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "36392:5:74", + "nodeType": "YulTypedName", + "src": "36392:5:74", + "type": "" + } + ], + "src": "36310:950:74" + }, + { + "body": { + "nativeSrc": "37365:297:74", + "nodeType": "YulBlock", + "src": "37365:297:74", + "statements": [ + { + "body": { + "nativeSrc": "37412:83:74", + "nodeType": "YulBlock", + "src": "37412:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "37414:77:74", + "nodeType": "YulIdentifier", + "src": "37414:77:74" + }, + "nativeSrc": "37414:79:74", + "nodeType": "YulFunctionCall", + "src": "37414:79:74" + }, + "nativeSrc": "37414:79:74", + "nodeType": "YulExpressionStatement", + "src": "37414:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "37386:7:74", + "nodeType": "YulIdentifier", + "src": "37386:7:74" + }, + { + "name": "headStart", + "nativeSrc": "37395:9:74", + "nodeType": "YulIdentifier", + "src": "37395:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "37382:3:74", + "nodeType": "YulIdentifier", + "src": "37382:3:74" + }, + "nativeSrc": "37382:23:74", + "nodeType": "YulFunctionCall", + "src": "37382:23:74" + }, + { + "kind": "number", + "nativeSrc": "37407:3:74", + "nodeType": "YulLiteral", + "src": "37407:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "37378:3:74", + "nodeType": "YulIdentifier", + "src": "37378:3:74" + }, + "nativeSrc": "37378:33:74", + "nodeType": "YulFunctionCall", + "src": "37378:33:74" + }, + "nativeSrc": "37375:120:74", + "nodeType": "YulIf", + "src": "37375:120:74" + }, + { + "nativeSrc": "37505:150:74", + "nodeType": "YulBlock", + "src": "37505:150:74", + "statements": [ + { + "nativeSrc": "37520:15:74", + "nodeType": "YulVariableDeclaration", + "src": "37520:15:74", + "value": { + "kind": "number", + "nativeSrc": "37534:1:74", + "nodeType": "YulLiteral", + "src": "37534:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37524:6:74", + "nodeType": "YulTypedName", + "src": "37524:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "37549:96:74", + "nodeType": "YulAssignment", + "src": "37549:96:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37617:9:74", + "nodeType": "YulIdentifier", + "src": "37617:9:74" + }, + { + "name": "offset", + "nativeSrc": "37628:6:74", + "nodeType": "YulIdentifier", + "src": "37628:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37613:3:74", + "nodeType": "YulIdentifier", + "src": "37613:3:74" + }, + "nativeSrc": "37613:22:74", + "nodeType": "YulFunctionCall", + "src": "37613:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37637:7:74", + "nodeType": "YulIdentifier", + "src": "37637:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_Leaf_$1784_memory_ptr_fromMemory", + "nativeSrc": "37559:53:74", + "nodeType": "YulIdentifier", + "src": "37559:53:74" + }, + "nativeSrc": "37559:86:74", + "nodeType": "YulFunctionCall", + "src": "37559:86:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "37549:6:74", + "nodeType": "YulIdentifier", + "src": "37549:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr_fromMemory", + "nativeSrc": "37266:396:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "37335:9:74", + "nodeType": "YulTypedName", + "src": "37335:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "37346:7:74", + "nodeType": "YulTypedName", + "src": "37346:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "37358:6:74", + "nodeType": "YulTypedName", + "src": "37358:6:74", + "type": "" + } + ], + "src": "37266:396:74" + }, + { + "body": { + "nativeSrc": "37774:74:74", + "nodeType": "YulBlock", + "src": "37774:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "37796:6:74", + "nodeType": "YulIdentifier", + "src": "37796:6:74" + }, + { + "kind": "number", + "nativeSrc": "37804:1:74", + "nodeType": "YulLiteral", + "src": "37804:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37792:3:74", + "nodeType": "YulIdentifier", + "src": "37792:3:74" + }, + "nativeSrc": "37792:14:74", + "nodeType": "YulFunctionCall", + "src": "37792:14:74" + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a2077726f6e6720746172676574", + "kind": "string", + "nativeSrc": "37808:32:74", + "nodeType": "YulLiteral", + "src": "37808:32:74", + "type": "", + "value": "LineaProofHelper: wrong target" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37785:6:74", + "nodeType": "YulIdentifier", + "src": "37785:6:74" + }, + "nativeSrc": "37785:56:74", + "nodeType": "YulFunctionCall", + "src": "37785:56:74" + }, + "nativeSrc": "37785:56:74", + "nodeType": "YulExpressionStatement", + "src": "37785:56:74" + } + ] + }, + "name": "store_literal_in_memory_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306", + "nativeSrc": "37668:180:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "37766:6:74", + "nodeType": "YulTypedName", + "src": "37766:6:74", + "type": "" + } + ], + "src": "37668:180:74" + }, + { + "body": { + "nativeSrc": "38000:220:74", + "nodeType": "YulBlock", + "src": "38000:220:74", + "statements": [ + { + "nativeSrc": "38010:74:74", + "nodeType": "YulAssignment", + "src": "38010:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38076:3:74", + "nodeType": "YulIdentifier", + "src": "38076:3:74" + }, + { + "kind": "number", + "nativeSrc": "38081:2:74", + "nodeType": "YulLiteral", + "src": "38081:2:74", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "38017:58:74", + "nodeType": "YulIdentifier", + "src": "38017:58:74" + }, + "nativeSrc": "38017:67:74", + "nodeType": "YulFunctionCall", + "src": "38017:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "38010:3:74", + "nodeType": "YulIdentifier", + "src": "38010:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38182:3:74", + "nodeType": "YulIdentifier", + "src": "38182:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306", + "nativeSrc": "38093:88:74", + "nodeType": "YulIdentifier", + "src": "38093:88:74" + }, + "nativeSrc": "38093:93:74", + "nodeType": "YulFunctionCall", + "src": "38093:93:74" + }, + "nativeSrc": "38093:93:74", + "nodeType": "YulExpressionStatement", + "src": "38093:93:74" + }, + { + "nativeSrc": "38195:19:74", + "nodeType": "YulAssignment", + "src": "38195:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38206:3:74", + "nodeType": "YulIdentifier", + "src": "38206:3:74" + }, + { + "kind": "number", + "nativeSrc": "38211:2:74", + "nodeType": "YulLiteral", + "src": "38211:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38202:3:74", + "nodeType": "YulIdentifier", + "src": "38202:3:74" + }, + "nativeSrc": "38202:12:74", + "nodeType": "YulFunctionCall", + "src": "38202:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "38195:3:74", + "nodeType": "YulIdentifier", + "src": "38195:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306_to_t_string_memory_ptr_fromStack", + "nativeSrc": "37854:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "37988:3:74", + "nodeType": "YulTypedName", + "src": "37988:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "37996:3:74", + "nodeType": "YulTypedName", + "src": "37996:3:74", + "type": "" + } + ], + "src": "37854:366:74" + }, + { + "body": { + "nativeSrc": "38397:248:74", + "nodeType": "YulBlock", + "src": "38397:248:74", + "statements": [ + { + "nativeSrc": "38407:26:74", + "nodeType": "YulAssignment", + "src": "38407:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38419:9:74", + "nodeType": "YulIdentifier", + "src": "38419:9:74" + }, + { + "kind": "number", + "nativeSrc": "38430:2:74", + "nodeType": "YulLiteral", + "src": "38430:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38415:3:74", + "nodeType": "YulIdentifier", + "src": "38415:3:74" + }, + "nativeSrc": "38415:18:74", + "nodeType": "YulFunctionCall", + "src": "38415:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "38407:4:74", + "nodeType": "YulIdentifier", + "src": "38407:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38454:9:74", + "nodeType": "YulIdentifier", + "src": "38454:9:74" + }, + { + "kind": "number", + "nativeSrc": "38465:1:74", + "nodeType": "YulLiteral", + "src": "38465:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38450:3:74", + "nodeType": "YulIdentifier", + "src": "38450:3:74" + }, + "nativeSrc": "38450:17:74", + "nodeType": "YulFunctionCall", + "src": "38450:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "38473:4:74", + "nodeType": "YulIdentifier", + "src": "38473:4:74" + }, + { + "name": "headStart", + "nativeSrc": "38479:9:74", + "nodeType": "YulIdentifier", + "src": "38479:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "38469:3:74", + "nodeType": "YulIdentifier", + "src": "38469:3:74" + }, + "nativeSrc": "38469:20:74", + "nodeType": "YulFunctionCall", + "src": "38469:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "38443:6:74", + "nodeType": "YulIdentifier", + "src": "38443:6:74" + }, + "nativeSrc": "38443:47:74", + "nodeType": "YulFunctionCall", + "src": "38443:47:74" + }, + "nativeSrc": "38443:47:74", + "nodeType": "YulExpressionStatement", + "src": "38443:47:74" + }, + { + "nativeSrc": "38499:139:74", + "nodeType": "YulAssignment", + "src": "38499:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "38633:4:74", + "nodeType": "YulIdentifier", + "src": "38633:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306_to_t_string_memory_ptr_fromStack", + "nativeSrc": "38507:124:74", + "nodeType": "YulIdentifier", + "src": "38507:124:74" + }, + "nativeSrc": "38507:131:74", + "nodeType": "YulFunctionCall", + "src": "38507:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "38499:4:74", + "nodeType": "YulIdentifier", + "src": "38499:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "38226:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "38377:9:74", + "nodeType": "YulTypedName", + "src": "38377:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "38392:4:74", + "nodeType": "YulTypedName", + "src": "38392:4:74", + "type": "" + } + ], + "src": "38226:419:74" + }, + { + "body": { + "nativeSrc": "38779:73:74", + "nodeType": "YulBlock", + "src": "38779:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38796:3:74", + "nodeType": "YulIdentifier", + "src": "38796:3:74" + }, + { + "name": "length", + "nativeSrc": "38801:6:74", + "nodeType": "YulIdentifier", + "src": "38801:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "38789:6:74", + "nodeType": "YulIdentifier", + "src": "38789:6:74" + }, + "nativeSrc": "38789:19:74", + "nodeType": "YulFunctionCall", + "src": "38789:19:74" + }, + "nativeSrc": "38789:19:74", + "nodeType": "YulExpressionStatement", + "src": "38789:19:74" + }, + { + "nativeSrc": "38817:29:74", + "nodeType": "YulAssignment", + "src": "38817:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38836:3:74", + "nodeType": "YulIdentifier", + "src": "38836:3:74" + }, + { + "kind": "number", + "nativeSrc": "38841:4:74", + "nodeType": "YulLiteral", + "src": "38841:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38832:3:74", + "nodeType": "YulIdentifier", + "src": "38832:3:74" + }, + "nativeSrc": "38832:14:74", + "nodeType": "YulFunctionCall", + "src": "38832:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "38817:11:74", + "nodeType": "YulIdentifier", + "src": "38817:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library", + "nativeSrc": "38651:201:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "38751:3:74", + "nodeType": "YulTypedName", + "src": "38751:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "38756:6:74", + "nodeType": "YulTypedName", + "src": "38756:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "38767:11:74", + "nodeType": "YulTypedName", + "src": "38767:11:74", + "type": "" + } + ], + "src": "38651:201:74" + }, + { + "body": { + "nativeSrc": "38951:73:74", + "nodeType": "YulBlock", + "src": "38951:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38968:3:74", + "nodeType": "YulIdentifier", + "src": "38968:3:74" + }, + { + "name": "length", + "nativeSrc": "38973:6:74", + "nodeType": "YulIdentifier", + "src": "38973:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "38961:6:74", + "nodeType": "YulIdentifier", + "src": "38961:6:74" + }, + "nativeSrc": "38961:19:74", + "nodeType": "YulFunctionCall", + "src": "38961:19:74" + }, + "nativeSrc": "38961:19:74", + "nodeType": "YulExpressionStatement", + "src": "38961:19:74" + }, + { + "nativeSrc": "38989:29:74", + "nodeType": "YulAssignment", + "src": "38989:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "39008:3:74", + "nodeType": "YulIdentifier", + "src": "39008:3:74" + }, + { + "kind": "number", + "nativeSrc": "39013:4:74", + "nodeType": "YulLiteral", + "src": "39013:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39004:3:74", + "nodeType": "YulIdentifier", + "src": "39004:3:74" + }, + "nativeSrc": "39004:14:74", + "nodeType": "YulFunctionCall", + "src": "39004:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "38989:11:74", + "nodeType": "YulIdentifier", + "src": "38989:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_library", + "nativeSrc": "38858:166:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "38923:3:74", + "nodeType": "YulTypedName", + "src": "38923:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "38928:6:74", + "nodeType": "YulTypedName", + "src": "38928:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "38939:11:74", + "nodeType": "YulTypedName", + "src": "38939:11:74", + "type": "" + } + ], + "src": "38858:166:74" + }, + { + "body": { + "nativeSrc": "39118:281:74", + "nodeType": "YulBlock", + "src": "39118:281:74", + "statements": [ + { + "nativeSrc": "39128:52:74", + "nodeType": "YulVariableDeclaration", + "src": "39128:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "39174:5:74", + "nodeType": "YulIdentifier", + "src": "39174:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "39142:31:74", + "nodeType": "YulIdentifier", + "src": "39142:31:74" + }, + "nativeSrc": "39142:38:74", + "nodeType": "YulFunctionCall", + "src": "39142:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "39132:6:74", + "nodeType": "YulTypedName", + "src": "39132:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39189:75:74", + "nodeType": "YulAssignment", + "src": "39189:75:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "39252:3:74", + "nodeType": "YulIdentifier", + "src": "39252:3:74" + }, + { + "name": "length", + "nativeSrc": "39257:6:74", + "nodeType": "YulIdentifier", + "src": "39257:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_library", + "nativeSrc": "39196:55:74", + "nodeType": "YulIdentifier", + "src": "39196:55:74" + }, + "nativeSrc": "39196:68:74", + "nodeType": "YulFunctionCall", + "src": "39196:68:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "39189:3:74", + "nodeType": "YulIdentifier", + "src": "39189:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "39312:5:74", + "nodeType": "YulIdentifier", + "src": "39312:5:74" + }, + { + "kind": "number", + "nativeSrc": "39319:4:74", + "nodeType": "YulLiteral", + "src": "39319:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39308:3:74", + "nodeType": "YulIdentifier", + "src": "39308:3:74" + }, + "nativeSrc": "39308:16:74", + "nodeType": "YulFunctionCall", + "src": "39308:16:74" + }, + { + "name": "pos", + "nativeSrc": "39326:3:74", + "nodeType": "YulIdentifier", + "src": "39326:3:74" + }, + { + "name": "length", + "nativeSrc": "39331:6:74", + "nodeType": "YulIdentifier", + "src": "39331:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "39273:34:74", + "nodeType": "YulIdentifier", + "src": "39273:34:74" + }, + "nativeSrc": "39273:65:74", + "nodeType": "YulFunctionCall", + "src": "39273:65:74" + }, + "nativeSrc": "39273:65:74", + "nodeType": "YulExpressionStatement", + "src": "39273:65:74" + }, + { + "nativeSrc": "39347:46:74", + "nodeType": "YulAssignment", + "src": "39347:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "39358:3:74", + "nodeType": "YulIdentifier", + "src": "39358:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "39385:6:74", + "nodeType": "YulIdentifier", + "src": "39385:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "39363:21:74", + "nodeType": "YulIdentifier", + "src": "39363:21:74" + }, + "nativeSrc": "39363:29:74", + "nodeType": "YulFunctionCall", + "src": "39363:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39354:3:74", + "nodeType": "YulIdentifier", + "src": "39354:3:74" + }, + "nativeSrc": "39354:39:74", + "nodeType": "YulFunctionCall", + "src": "39354:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "39347:3:74", + "nodeType": "YulIdentifier", + "src": "39347:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library", + "nativeSrc": "39030:369:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "39099:5:74", + "nodeType": "YulTypedName", + "src": "39099:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "39106:3:74", + "nodeType": "YulTypedName", + "src": "39106:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "39114:3:74", + "nodeType": "YulTypedName", + "src": "39114:3:74", + "type": "" + } + ], + "src": "39030:369:74" + }, + { + "body": { + "nativeSrc": "39511:102:74", + "nodeType": "YulBlock", + "src": "39511:102:74", + "statements": [ + { + "nativeSrc": "39521:86:74", + "nodeType": "YulAssignment", + "src": "39521:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "39595:6:74", + "nodeType": "YulIdentifier", + "src": "39595:6:74" + }, + { + "name": "pos", + "nativeSrc": "39603:3:74", + "nodeType": "YulIdentifier", + "src": "39603:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library", + "nativeSrc": "39535:59:74", + "nodeType": "YulIdentifier", + "src": "39535:59:74" + }, + "nativeSrc": "39535:72:74", + "nodeType": "YulFunctionCall", + "src": "39535:72:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "39521:10:74", + "nodeType": "YulIdentifier", + "src": "39521:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library", + "nativeSrc": "39405:208:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "39484:6:74", + "nodeType": "YulTypedName", + "src": "39484:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "39492:3:74", + "nodeType": "YulTypedName", + "src": "39492:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "39500:10:74", + "nodeType": "YulTypedName", + "src": "39500:10:74", + "type": "" + } + ], + "src": "39405:208:74" + }, + { + "body": { + "nativeSrc": "39795:857:74", + "nodeType": "YulBlock", + "src": "39795:857:74", + "statements": [ + { + "nativeSrc": "39805:77:74", + "nodeType": "YulVariableDeclaration", + "src": "39805:77:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "39876:5:74", + "nodeType": "YulIdentifier", + "src": "39876:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "39819:56:74", + "nodeType": "YulIdentifier", + "src": "39819:56:74" + }, + "nativeSrc": "39819:63:74", + "nodeType": "YulFunctionCall", + "src": "39819:63:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "39809:6:74", + "nodeType": "YulTypedName", + "src": "39809:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39891:110:74", + "nodeType": "YulAssignment", + "src": "39891:110:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "39989:3:74", + "nodeType": "YulIdentifier", + "src": "39989:3:74" + }, + { + "name": "length", + "nativeSrc": "39994:6:74", + "nodeType": "YulIdentifier", + "src": "39994:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library", + "nativeSrc": "39898:90:74", + "nodeType": "YulIdentifier", + "src": "39898:90:74" + }, + "nativeSrc": "39898:103:74", + "nodeType": "YulFunctionCall", + "src": "39898:103:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "39891:3:74", + "nodeType": "YulIdentifier", + "src": "39891:3:74" + } + ] + }, + { + "nativeSrc": "40010:20:74", + "nodeType": "YulVariableDeclaration", + "src": "40010:20:74", + "value": { + "name": "pos", + "nativeSrc": "40027:3:74", + "nodeType": "YulIdentifier", + "src": "40027:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "40014:9:74", + "nodeType": "YulTypedName", + "src": "40014:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40039:39:74", + "nodeType": "YulVariableDeclaration", + "src": "40039:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40055:3:74", + "nodeType": "YulIdentifier", + "src": "40055:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "40064:6:74", + "nodeType": "YulIdentifier", + "src": "40064:6:74" + }, + { + "kind": "number", + "nativeSrc": "40072:4:74", + "nodeType": "YulLiteral", + "src": "40072:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "40060:3:74", + "nodeType": "YulIdentifier", + "src": "40060:3:74" + }, + "nativeSrc": "40060:17:74", + "nodeType": "YulFunctionCall", + "src": "40060:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40051:3:74", + "nodeType": "YulIdentifier", + "src": "40051:3:74" + }, + "nativeSrc": "40051:27:74", + "nodeType": "YulFunctionCall", + "src": "40051:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "40043:4:74", + "nodeType": "YulTypedName", + "src": "40043:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40087:80:74", + "nodeType": "YulVariableDeclaration", + "src": "40087:80:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "40161:5:74", + "nodeType": "YulIdentifier", + "src": "40161:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "40102:58:74", + "nodeType": "YulIdentifier", + "src": "40102:58:74" + }, + "nativeSrc": "40102:65:74", + "nodeType": "YulFunctionCall", + "src": "40102:65:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "40091:7:74", + "nodeType": "YulTypedName", + "src": "40091:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40176:21:74", + "nodeType": "YulVariableDeclaration", + "src": "40176:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "40190:7:74", + "nodeType": "YulIdentifier", + "src": "40190:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "40180:6:74", + "nodeType": "YulTypedName", + "src": "40180:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "40266:341:74", + "nodeType": "YulBlock", + "src": "40266:341:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40287:3:74", + "nodeType": "YulIdentifier", + "src": "40287:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "40296:4:74", + "nodeType": "YulIdentifier", + "src": "40296:4:74" + }, + { + "name": "headStart", + "nativeSrc": "40302:9:74", + "nodeType": "YulIdentifier", + "src": "40302:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "40292:3:74", + "nodeType": "YulIdentifier", + "src": "40292:3:74" + }, + "nativeSrc": "40292:20:74", + "nodeType": "YulFunctionCall", + "src": "40292:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40280:6:74", + "nodeType": "YulIdentifier", + "src": "40280:6:74" + }, + "nativeSrc": "40280:33:74", + "nodeType": "YulFunctionCall", + "src": "40280:33:74" + }, + "nativeSrc": "40280:33:74", + "nodeType": "YulExpressionStatement", + "src": "40280:33:74" + }, + { + "nativeSrc": "40326:34:74", + "nodeType": "YulVariableDeclaration", + "src": "40326:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "40353:6:74", + "nodeType": "YulIdentifier", + "src": "40353:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "40347:5:74", + "nodeType": "YulIdentifier", + "src": "40347:5:74" + }, + "nativeSrc": "40347:13:74", + "nodeType": "YulFunctionCall", + "src": "40347:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "40330:13:74", + "nodeType": "YulTypedName", + "src": "40330:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40373:98:74", + "nodeType": "YulAssignment", + "src": "40373:98:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "40451:13:74", + "nodeType": "YulIdentifier", + "src": "40451:13:74" + }, + { + "name": "tail", + "nativeSrc": "40466:4:74", + "nodeType": "YulIdentifier", + "src": "40466:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library", + "nativeSrc": "40381:69:74", + "nodeType": "YulIdentifier", + "src": "40381:69:74" + }, + "nativeSrc": "40381:90:74", + "nodeType": "YulFunctionCall", + "src": "40381:90:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "40373:4:74", + "nodeType": "YulIdentifier", + "src": "40373:4:74" + } + ] + }, + { + "nativeSrc": "40484:79:74", + "nodeType": "YulAssignment", + "src": "40484:79:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "40556:6:74", + "nodeType": "YulIdentifier", + "src": "40556:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "40494:61:74", + "nodeType": "YulIdentifier", + "src": "40494:61:74" + }, + "nativeSrc": "40494:69:74", + "nodeType": "YulFunctionCall", + "src": "40494:69:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "40484:6:74", + "nodeType": "YulIdentifier", + "src": "40484:6:74" + } + ] + }, + { + "nativeSrc": "40576:21:74", + "nodeType": "YulAssignment", + "src": "40576:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40587:3:74", + "nodeType": "YulIdentifier", + "src": "40587:3:74" + }, + { + "kind": "number", + "nativeSrc": "40592:4:74", + "nodeType": "YulLiteral", + "src": "40592:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40583:3:74", + "nodeType": "YulIdentifier", + "src": "40583:3:74" + }, + "nativeSrc": "40583:14:74", + "nodeType": "YulFunctionCall", + "src": "40583:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "40576:3:74", + "nodeType": "YulIdentifier", + "src": "40576:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "40228:1:74", + "nodeType": "YulIdentifier", + "src": "40228:1:74" + }, + { + "name": "length", + "nativeSrc": "40231:6:74", + "nodeType": "YulIdentifier", + "src": "40231:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "40225:2:74", + "nodeType": "YulIdentifier", + "src": "40225:2:74" + }, + "nativeSrc": "40225:13:74", + "nodeType": "YulFunctionCall", + "src": "40225:13:74" + }, + "nativeSrc": "40206:401:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "40239:18:74", + "nodeType": "YulBlock", + "src": "40239:18:74", + "statements": [ + { + "nativeSrc": "40241:14:74", + "nodeType": "YulAssignment", + "src": "40241:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "40250:1:74", + "nodeType": "YulIdentifier", + "src": "40250:1:74" + }, + { + "kind": "number", + "nativeSrc": "40253:1:74", + "nodeType": "YulLiteral", + "src": "40253:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40246:3:74", + "nodeType": "YulIdentifier", + "src": "40246:3:74" + }, + "nativeSrc": "40246:9:74", + "nodeType": "YulFunctionCall", + "src": "40246:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "40241:1:74", + "nodeType": "YulIdentifier", + "src": "40241:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "40210:14:74", + "nodeType": "YulBlock", + "src": "40210:14:74", + "statements": [ + { + "nativeSrc": "40212:10:74", + "nodeType": "YulVariableDeclaration", + "src": "40212:10:74", + "value": { + "kind": "number", + "nativeSrc": "40221:1:74", + "nodeType": "YulLiteral", + "src": "40221:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "40216:1:74", + "nodeType": "YulTypedName", + "src": "40216:1:74", + "type": "" + } + ] + } + ] + }, + "src": "40206:401:74" + }, + { + "nativeSrc": "40616:11:74", + "nodeType": "YulAssignment", + "src": "40616:11:74", + "value": { + "name": "tail", + "nativeSrc": "40623:4:74", + "nodeType": "YulIdentifier", + "src": "40623:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "40616:3:74", + "nodeType": "YulIdentifier", + "src": "40616:3:74" + } + ] + }, + { + "nativeSrc": "40636:10:74", + "nodeType": "YulAssignment", + "src": "40636:10:74", + "value": { + "name": "pos", + "nativeSrc": "40643:3:74", + "nodeType": "YulIdentifier", + "src": "40643:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "40636:3:74", + "nodeType": "YulIdentifier", + "src": "40636:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library", + "nativeSrc": "39645:1007:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "39774:5:74", + "nodeType": "YulTypedName", + "src": "39774:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "39781:3:74", + "nodeType": "YulTypedName", + "src": "39781:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "39790:3:74", + "nodeType": "YulTypedName", + "src": "39790:3:74", + "type": "" + } + ], + "src": "39645:1007:74" + }, + { + "body": { + "nativeSrc": "40731:53:74", + "nodeType": "YulBlock", + "src": "40731:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40748:3:74", + "nodeType": "YulIdentifier", + "src": "40748:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "40771:5:74", + "nodeType": "YulIdentifier", + "src": "40771:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "40753:17:74", + "nodeType": "YulIdentifier", + "src": "40753:17:74" + }, + "nativeSrc": "40753:24:74", + "nodeType": "YulFunctionCall", + "src": "40753:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40741:6:74", + "nodeType": "YulIdentifier", + "src": "40741:6:74" + }, + "nativeSrc": "40741:37:74", + "nodeType": "YulFunctionCall", + "src": "40741:37:74" + }, + "nativeSrc": "40741:37:74", + "nodeType": "YulExpressionStatement", + "src": "40741:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack_library", + "nativeSrc": "40658:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "40719:5:74", + "nodeType": "YulTypedName", + "src": "40719:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "40726:3:74", + "nodeType": "YulTypedName", + "src": "40726:3:74", + "type": "" + } + ], + "src": "40658:126:74" + }, + { + "body": { + "nativeSrc": "40863:53:74", + "nodeType": "YulBlock", + "src": "40863:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40880:3:74", + "nodeType": "YulIdentifier", + "src": "40880:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "40903:5:74", + "nodeType": "YulIdentifier", + "src": "40903:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "40885:17:74", + "nodeType": "YulIdentifier", + "src": "40885:17:74" + }, + "nativeSrc": "40885:24:74", + "nodeType": "YulFunctionCall", + "src": "40885:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40873:6:74", + "nodeType": "YulIdentifier", + "src": "40873:6:74" + }, + "nativeSrc": "40873:37:74", + "nodeType": "YulFunctionCall", + "src": "40873:37:74" + }, + "nativeSrc": "40873:37:74", + "nodeType": "YulExpressionStatement", + "src": "40873:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "40790:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "40851:5:74", + "nodeType": "YulTypedName", + "src": "40851:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "40858:3:74", + "nodeType": "YulTypedName", + "src": "40858:3:74", + "type": "" + } + ], + "src": "40790:126:74" + }, + { + "body": { + "nativeSrc": "41152:431:74", + "nodeType": "YulBlock", + "src": "41152:431:74", + "statements": [ + { + "nativeSrc": "41162:26:74", + "nodeType": "YulAssignment", + "src": "41162:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41174:9:74", + "nodeType": "YulIdentifier", + "src": "41174:9:74" + }, + { + "kind": "number", + "nativeSrc": "41185:2:74", + "nodeType": "YulLiteral", + "src": "41185:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41170:3:74", + "nodeType": "YulIdentifier", + "src": "41170:3:74" + }, + "nativeSrc": "41170:18:74", + "nodeType": "YulFunctionCall", + "src": "41170:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41162:4:74", + "nodeType": "YulIdentifier", + "src": "41162:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41209:9:74", + "nodeType": "YulIdentifier", + "src": "41209:9:74" + }, + { + "kind": "number", + "nativeSrc": "41220:1:74", + "nodeType": "YulLiteral", + "src": "41220:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41205:3:74", + "nodeType": "YulIdentifier", + "src": "41205:3:74" + }, + "nativeSrc": "41205:17:74", + "nodeType": "YulFunctionCall", + "src": "41205:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "41228:4:74", + "nodeType": "YulIdentifier", + "src": "41228:4:74" + }, + { + "name": "headStart", + "nativeSrc": "41234:9:74", + "nodeType": "YulIdentifier", + "src": "41234:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "41224:3:74", + "nodeType": "YulIdentifier", + "src": "41224:3:74" + }, + "nativeSrc": "41224:20:74", + "nodeType": "YulFunctionCall", + "src": "41224:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "41198:6:74", + "nodeType": "YulIdentifier", + "src": "41198:6:74" + }, + "nativeSrc": "41198:47:74", + "nodeType": "YulFunctionCall", + "src": "41198:47:74" + }, + "nativeSrc": "41198:47:74", + "nodeType": "YulExpressionStatement", + "src": "41198:47:74" + }, + { + "nativeSrc": "41254:142:74", + "nodeType": "YulAssignment", + "src": "41254:142:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "41382:6:74", + "nodeType": "YulIdentifier", + "src": "41382:6:74" + }, + { + "name": "tail", + "nativeSrc": "41391:4:74", + "nodeType": "YulIdentifier", + "src": "41391:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library", + "nativeSrc": "41262:119:74", + "nodeType": "YulIdentifier", + "src": "41262:119:74" + }, + "nativeSrc": "41262:134:74", + "nodeType": "YulFunctionCall", + "src": "41262:134:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41254:4:74", + "nodeType": "YulIdentifier", + "src": "41254:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "41458:6:74", + "nodeType": "YulIdentifier", + "src": "41458:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41471:9:74", + "nodeType": "YulIdentifier", + "src": "41471:9:74" + }, + { + "kind": "number", + "nativeSrc": "41482:2:74", + "nodeType": "YulLiteral", + "src": "41482:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41467:3:74", + "nodeType": "YulIdentifier", + "src": "41467:3:74" + }, + "nativeSrc": "41467:18:74", + "nodeType": "YulFunctionCall", + "src": "41467:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack_library", + "nativeSrc": "41406:51:74", + "nodeType": "YulIdentifier", + "src": "41406:51:74" + }, + "nativeSrc": "41406:80:74", + "nodeType": "YulFunctionCall", + "src": "41406:80:74" + }, + "nativeSrc": "41406:80:74", + "nodeType": "YulExpressionStatement", + "src": "41406:80:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "41548:6:74", + "nodeType": "YulIdentifier", + "src": "41548:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41561:9:74", + "nodeType": "YulIdentifier", + "src": "41561:9:74" + }, + { + "kind": "number", + "nativeSrc": "41572:2:74", + "nodeType": "YulLiteral", + "src": "41572:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41557:3:74", + "nodeType": "YulIdentifier", + "src": "41557:3:74" + }, + "nativeSrc": "41557:18:74", + "nodeType": "YulFunctionCall", + "src": "41557:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "41496:51:74", + "nodeType": "YulIdentifier", + "src": "41496:51:74" + }, + "nativeSrc": "41496:80:74", + "nodeType": "YulFunctionCall", + "src": "41496:80:74" + }, + "nativeSrc": "41496:80:74", + "nodeType": "YulExpressionStatement", + "src": "41496:80:74" + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__fromStack_library_reversed", + "nativeSrc": "40922:661:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "41108:9:74", + "nodeType": "YulTypedName", + "src": "41108:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "41120:6:74", + "nodeType": "YulTypedName", + "src": "41120:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "41128:6:74", + "nodeType": "YulTypedName", + "src": "41128:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "41136:6:74", + "nodeType": "YulTypedName", + "src": "41136:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "41147:4:74", + "nodeType": "YulTypedName", + "src": "41147:4:74", + "type": "" + } + ], + "src": "40922:661:74" + }, + { + "body": { + "nativeSrc": "41663:271:74", + "nodeType": "YulBlock", + "src": "41663:271:74", + "statements": [ + { + "body": { + "nativeSrc": "41709:83:74", + "nodeType": "YulBlock", + "src": "41709:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "41711:77:74", + "nodeType": "YulIdentifier", + "src": "41711:77:74" + }, + "nativeSrc": "41711:79:74", + "nodeType": "YulFunctionCall", + "src": "41711:79:74" + }, + "nativeSrc": "41711:79:74", + "nodeType": "YulExpressionStatement", + "src": "41711:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "41684:7:74", + "nodeType": "YulIdentifier", + "src": "41684:7:74" + }, + { + "name": "headStart", + "nativeSrc": "41693:9:74", + "nodeType": "YulIdentifier", + "src": "41693:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "41680:3:74", + "nodeType": "YulIdentifier", + "src": "41680:3:74" + }, + "nativeSrc": "41680:23:74", + "nodeType": "YulFunctionCall", + "src": "41680:23:74" + }, + { + "kind": "number", + "nativeSrc": "41705:2:74", + "nodeType": "YulLiteral", + "src": "41705:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "41676:3:74", + "nodeType": "YulIdentifier", + "src": "41676:3:74" + }, + "nativeSrc": "41676:32:74", + "nodeType": "YulFunctionCall", + "src": "41676:32:74" + }, + "nativeSrc": "41673:119:74", + "nodeType": "YulIf", + "src": "41673:119:74" + }, + { + "nativeSrc": "41802:125:74", + "nodeType": "YulBlock", + "src": "41802:125:74", + "statements": [ + { + "nativeSrc": "41817:15:74", + "nodeType": "YulVariableDeclaration", + "src": "41817:15:74", + "value": { + "kind": "number", + "nativeSrc": "41831:1:74", + "nodeType": "YulLiteral", + "src": "41831:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "41821:6:74", + "nodeType": "YulTypedName", + "src": "41821:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "41846:71:74", + "nodeType": "YulAssignment", + "src": "41846:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41889:9:74", + "nodeType": "YulIdentifier", + "src": "41889:9:74" + }, + { + "name": "offset", + "nativeSrc": "41900:6:74", + "nodeType": "YulIdentifier", + "src": "41900:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41885:3:74", + "nodeType": "YulIdentifier", + "src": "41885:3:74" + }, + "nativeSrc": "41885:22:74", + "nodeType": "YulFunctionCall", + "src": "41885:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "41909:7:74", + "nodeType": "YulIdentifier", + "src": "41909:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "41856:28:74", + "nodeType": "YulIdentifier", + "src": "41856:28:74" + }, + "nativeSrc": "41856:61:74", + "nodeType": "YulFunctionCall", + "src": "41856:61:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "41846:6:74", + "nodeType": "YulIdentifier", + "src": "41846:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nativeSrc": "41589:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "41633:9:74", + "nodeType": "YulTypedName", + "src": "41633:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "41644:7:74", + "nodeType": "YulTypedName", + "src": "41644:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "41656:6:74", + "nodeType": "YulTypedName", + "src": "41656:6:74", + "type": "" + } + ], + "src": "41589:345:74" + }, + { + "body": { + "nativeSrc": "42046:120:74", + "nodeType": "YulBlock", + "src": "42046:120:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "42068:6:74", + "nodeType": "YulIdentifier", + "src": "42068:6:74" + }, + { + "kind": "number", + "nativeSrc": "42076:1:74", + "nodeType": "YulLiteral", + "src": "42076:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42064:3:74", + "nodeType": "YulIdentifier", + "src": "42064:3:74" + }, + "nativeSrc": "42064:14:74", + "nodeType": "YulFunctionCall", + "src": "42064:14:74" + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20696e76616c6964206163636f756e", + "kind": "string", + "nativeSrc": "42080:34:74", + "nodeType": "YulLiteral", + "src": "42080:34:74", + "type": "", + "value": "LineaProofHelper: invalid accoun" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42057:6:74", + "nodeType": "YulIdentifier", + "src": "42057:6:74" + }, + "nativeSrc": "42057:58:74", + "nodeType": "YulFunctionCall", + "src": "42057:58:74" + }, + "nativeSrc": "42057:58:74", + "nodeType": "YulExpressionStatement", + "src": "42057:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "42136:6:74", + "nodeType": "YulIdentifier", + "src": "42136:6:74" + }, + { + "kind": "number", + "nativeSrc": "42144:2:74", + "nodeType": "YulLiteral", + "src": "42144:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42132:3:74", + "nodeType": "YulIdentifier", + "src": "42132:3:74" + }, + "nativeSrc": "42132:15:74", + "nodeType": "YulFunctionCall", + "src": "42132:15:74" + }, + { + "hexValue": "742070726f6f66", + "kind": "string", + "nativeSrc": "42149:9:74", + "nodeType": "YulLiteral", + "src": "42149:9:74", + "type": "", + "value": "t proof" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42125:6:74", + "nodeType": "YulIdentifier", + "src": "42125:6:74" + }, + "nativeSrc": "42125:34:74", + "nodeType": "YulFunctionCall", + "src": "42125:34:74" + }, + "nativeSrc": "42125:34:74", + "nodeType": "YulExpressionStatement", + "src": "42125:34:74" + } + ] + }, + "name": "store_literal_in_memory_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3", + "nativeSrc": "41940:226:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "42038:6:74", + "nodeType": "YulTypedName", + "src": "42038:6:74", + "type": "" + } + ], + "src": "41940:226:74" + }, + { + "body": { + "nativeSrc": "42318:220:74", + "nodeType": "YulBlock", + "src": "42318:220:74", + "statements": [ + { + "nativeSrc": "42328:74:74", + "nodeType": "YulAssignment", + "src": "42328:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "42394:3:74", + "nodeType": "YulIdentifier", + "src": "42394:3:74" + }, + { + "kind": "number", + "nativeSrc": "42399:2:74", + "nodeType": "YulLiteral", + "src": "42399:2:74", + "type": "", + "value": "39" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "42335:58:74", + "nodeType": "YulIdentifier", + "src": "42335:58:74" + }, + "nativeSrc": "42335:67:74", + "nodeType": "YulFunctionCall", + "src": "42335:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "42328:3:74", + "nodeType": "YulIdentifier", + "src": "42328:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "42500:3:74", + "nodeType": "YulIdentifier", + "src": "42500:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3", + "nativeSrc": "42411:88:74", + "nodeType": "YulIdentifier", + "src": "42411:88:74" + }, + "nativeSrc": "42411:93:74", + "nodeType": "YulFunctionCall", + "src": "42411:93:74" + }, + "nativeSrc": "42411:93:74", + "nodeType": "YulExpressionStatement", + "src": "42411:93:74" + }, + { + "nativeSrc": "42513:19:74", + "nodeType": "YulAssignment", + "src": "42513:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "42524:3:74", + "nodeType": "YulIdentifier", + "src": "42524:3:74" + }, + { + "kind": "number", + "nativeSrc": "42529:2:74", + "nodeType": "YulLiteral", + "src": "42529:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42520:3:74", + "nodeType": "YulIdentifier", + "src": "42520:3:74" + }, + "nativeSrc": "42520:12:74", + "nodeType": "YulFunctionCall", + "src": "42520:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "42513:3:74", + "nodeType": "YulIdentifier", + "src": "42513:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3_to_t_string_memory_ptr_fromStack", + "nativeSrc": "42172:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "42306:3:74", + "nodeType": "YulTypedName", + "src": "42306:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "42314:3:74", + "nodeType": "YulTypedName", + "src": "42314:3:74", + "type": "" + } + ], + "src": "42172:366:74" + }, + { + "body": { + "nativeSrc": "42715:248:74", + "nodeType": "YulBlock", + "src": "42715:248:74", + "statements": [ + { + "nativeSrc": "42725:26:74", + "nodeType": "YulAssignment", + "src": "42725:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42737:9:74", + "nodeType": "YulIdentifier", + "src": "42737:9:74" + }, + { + "kind": "number", + "nativeSrc": "42748:2:74", + "nodeType": "YulLiteral", + "src": "42748:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42733:3:74", + "nodeType": "YulIdentifier", + "src": "42733:3:74" + }, + "nativeSrc": "42733:18:74", + "nodeType": "YulFunctionCall", + "src": "42733:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42725:4:74", + "nodeType": "YulIdentifier", + "src": "42725:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42772:9:74", + "nodeType": "YulIdentifier", + "src": "42772:9:74" + }, + { + "kind": "number", + "nativeSrc": "42783:1:74", + "nodeType": "YulLiteral", + "src": "42783:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42768:3:74", + "nodeType": "YulIdentifier", + "src": "42768:3:74" + }, + "nativeSrc": "42768:17:74", + "nodeType": "YulFunctionCall", + "src": "42768:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42791:4:74", + "nodeType": "YulIdentifier", + "src": "42791:4:74" + }, + { + "name": "headStart", + "nativeSrc": "42797:9:74", + "nodeType": "YulIdentifier", + "src": "42797:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "42787:3:74", + "nodeType": "YulIdentifier", + "src": "42787:3:74" + }, + "nativeSrc": "42787:20:74", + "nodeType": "YulFunctionCall", + "src": "42787:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42761:6:74", + "nodeType": "YulIdentifier", + "src": "42761:6:74" + }, + "nativeSrc": "42761:47:74", + "nodeType": "YulFunctionCall", + "src": "42761:47:74" + }, + "nativeSrc": "42761:47:74", + "nodeType": "YulExpressionStatement", + "src": "42761:47:74" + }, + { + "nativeSrc": "42817:139:74", + "nodeType": "YulAssignment", + "src": "42817:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42951:4:74", + "nodeType": "YulIdentifier", + "src": "42951:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3_to_t_string_memory_ptr_fromStack", + "nativeSrc": "42825:124:74", + "nodeType": "YulIdentifier", + "src": "42825:124:74" + }, + "nativeSrc": "42825:131:74", + "nodeType": "YulFunctionCall", + "src": "42825:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42817:4:74", + "nodeType": "YulIdentifier", + "src": "42817:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "42544:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "42695:9:74", + "nodeType": "YulTypedName", + "src": "42695:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "42710:4:74", + "nodeType": "YulTypedName", + "src": "42710:4:74", + "type": "" + } + ], + "src": "42544:419:74" + }, + { + "body": { + "nativeSrc": "43075:116:74", + "nodeType": "YulBlock", + "src": "43075:116:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "43097:6:74", + "nodeType": "YulIdentifier", + "src": "43097:6:74" + }, + { + "kind": "number", + "nativeSrc": "43105:1:74", + "nodeType": "YulLiteral", + "src": "43105:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43093:3:74", + "nodeType": "YulIdentifier", + "src": "43093:3:74" + }, + "nativeSrc": "43093:14:74", + "nodeType": "YulFunctionCall", + "src": "43093:14:74" + }, + { + "hexValue": "4669727374207061746820656c656d656e74206d757374206265203332206279", + "kind": "string", + "nativeSrc": "43109:34:74", + "nodeType": "YulLiteral", + "src": "43109:34:74", + "type": "", + "value": "First path element must be 32 by" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43086:6:74", + "nodeType": "YulIdentifier", + "src": "43086:6:74" + }, + "nativeSrc": "43086:58:74", + "nodeType": "YulFunctionCall", + "src": "43086:58:74" + }, + "nativeSrc": "43086:58:74", + "nodeType": "YulExpressionStatement", + "src": "43086:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "43165:6:74", + "nodeType": "YulIdentifier", + "src": "43165:6:74" + }, + { + "kind": "number", + "nativeSrc": "43173:2:74", + "nodeType": "YulLiteral", + "src": "43173:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43161:3:74", + "nodeType": "YulIdentifier", + "src": "43161:3:74" + }, + "nativeSrc": "43161:15:74", + "nodeType": "YulFunctionCall", + "src": "43161:15:74" + }, + { + "hexValue": "746573", + "kind": "string", + "nativeSrc": "43178:5:74", + "nodeType": "YulLiteral", + "src": "43178:5:74", + "type": "", + "value": "tes" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43154:6:74", + "nodeType": "YulIdentifier", + "src": "43154:6:74" + }, + "nativeSrc": "43154:30:74", + "nodeType": "YulFunctionCall", + "src": "43154:30:74" + }, + "nativeSrc": "43154:30:74", + "nodeType": "YulExpressionStatement", + "src": "43154:30:74" + } + ] + }, + "name": "store_literal_in_memory_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893", + "nativeSrc": "42969:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "43067:6:74", + "nodeType": "YulTypedName", + "src": "43067:6:74", + "type": "" + } + ], + "src": "42969:222:74" + }, + { + "body": { + "nativeSrc": "43343:220:74", + "nodeType": "YulBlock", + "src": "43343:220:74", + "statements": [ + { + "nativeSrc": "43353:74:74", + "nodeType": "YulAssignment", + "src": "43353:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43419:3:74", + "nodeType": "YulIdentifier", + "src": "43419:3:74" + }, + { + "kind": "number", + "nativeSrc": "43424:2:74", + "nodeType": "YulLiteral", + "src": "43424:2:74", + "type": "", + "value": "35" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "43360:58:74", + "nodeType": "YulIdentifier", + "src": "43360:58:74" + }, + "nativeSrc": "43360:67:74", + "nodeType": "YulFunctionCall", + "src": "43360:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "43353:3:74", + "nodeType": "YulIdentifier", + "src": "43353:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43525:3:74", + "nodeType": "YulIdentifier", + "src": "43525:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893", + "nativeSrc": "43436:88:74", + "nodeType": "YulIdentifier", + "src": "43436:88:74" + }, + "nativeSrc": "43436:93:74", + "nodeType": "YulFunctionCall", + "src": "43436:93:74" + }, + "nativeSrc": "43436:93:74", + "nodeType": "YulExpressionStatement", + "src": "43436:93:74" + }, + { + "nativeSrc": "43538:19:74", + "nodeType": "YulAssignment", + "src": "43538:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43549:3:74", + "nodeType": "YulIdentifier", + "src": "43549:3:74" + }, + { + "kind": "number", + "nativeSrc": "43554:2:74", + "nodeType": "YulLiteral", + "src": "43554:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43545:3:74", + "nodeType": "YulIdentifier", + "src": "43545:3:74" + }, + "nativeSrc": "43545:12:74", + "nodeType": "YulFunctionCall", + "src": "43545:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "43538:3:74", + "nodeType": "YulIdentifier", + "src": "43538:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893_to_t_string_memory_ptr_fromStack", + "nativeSrc": "43197:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "43331:3:74", + "nodeType": "YulTypedName", + "src": "43331:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "43339:3:74", + "nodeType": "YulTypedName", + "src": "43339:3:74", + "type": "" + } + ], + "src": "43197:366:74" + }, + { + "body": { + "nativeSrc": "43740:248:74", + "nodeType": "YulBlock", + "src": "43740:248:74", + "statements": [ + { + "nativeSrc": "43750:26:74", + "nodeType": "YulAssignment", + "src": "43750:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43762:9:74", + "nodeType": "YulIdentifier", + "src": "43762:9:74" + }, + { + "kind": "number", + "nativeSrc": "43773:2:74", + "nodeType": "YulLiteral", + "src": "43773:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43758:3:74", + "nodeType": "YulIdentifier", + "src": "43758:3:74" + }, + "nativeSrc": "43758:18:74", + "nodeType": "YulFunctionCall", + "src": "43758:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "43750:4:74", + "nodeType": "YulIdentifier", + "src": "43750:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43797:9:74", + "nodeType": "YulIdentifier", + "src": "43797:9:74" + }, + { + "kind": "number", + "nativeSrc": "43808:1:74", + "nodeType": "YulLiteral", + "src": "43808:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43793:3:74", + "nodeType": "YulIdentifier", + "src": "43793:3:74" + }, + "nativeSrc": "43793:17:74", + "nodeType": "YulFunctionCall", + "src": "43793:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "43816:4:74", + "nodeType": "YulIdentifier", + "src": "43816:4:74" + }, + { + "name": "headStart", + "nativeSrc": "43822:9:74", + "nodeType": "YulIdentifier", + "src": "43822:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "43812:3:74", + "nodeType": "YulIdentifier", + "src": "43812:3:74" + }, + "nativeSrc": "43812:20:74", + "nodeType": "YulFunctionCall", + "src": "43812:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43786:6:74", + "nodeType": "YulIdentifier", + "src": "43786:6:74" + }, + "nativeSrc": "43786:47:74", + "nodeType": "YulFunctionCall", + "src": "43786:47:74" + }, + "nativeSrc": "43786:47:74", + "nodeType": "YulExpressionStatement", + "src": "43786:47:74" + }, + { + "nativeSrc": "43842:139:74", + "nodeType": "YulAssignment", + "src": "43842:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "43976:4:74", + "nodeType": "YulIdentifier", + "src": "43976:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893_to_t_string_memory_ptr_fromStack", + "nativeSrc": "43850:124:74", + "nodeType": "YulIdentifier", + "src": "43850:124:74" + }, + "nativeSrc": "43850:131:74", + "nodeType": "YulFunctionCall", + "src": "43850:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "43842:4:74", + "nodeType": "YulIdentifier", + "src": "43842:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "43569:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "43720:9:74", + "nodeType": "YulTypedName", + "src": "43720:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "43735:4:74", + "nodeType": "YulTypedName", + "src": "43735:4:74", + "type": "" + } + ], + "src": "43569:419:74" + }, + { + "body": { + "nativeSrc": "44050:60:74", + "nodeType": "YulBlock", + "src": "44050:60:74", + "statements": [ + { + "nativeSrc": "44060:11:74", + "nodeType": "YulAssignment", + "src": "44060:11:74", + "value": { + "name": "ptr", + "nativeSrc": "44068:3:74", + "nodeType": "YulIdentifier", + "src": "44068:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "44060:4:74", + "nodeType": "YulIdentifier", + "src": "44060:4:74" + } + ] + }, + { + "nativeSrc": "44081:22:74", + "nodeType": "YulAssignment", + "src": "44081:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "44093:3:74", + "nodeType": "YulIdentifier", + "src": "44093:3:74" + }, + { + "kind": "number", + "nativeSrc": "44098:4:74", + "nodeType": "YulLiteral", + "src": "44098:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44089:3:74", + "nodeType": "YulIdentifier", + "src": "44089:3:74" + }, + "nativeSrc": "44089:14:74", + "nodeType": "YulFunctionCall", + "src": "44089:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "44081:4:74", + "nodeType": "YulIdentifier", + "src": "44081:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_memory_ptr", + "nativeSrc": "43994:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "44037:3:74", + "nodeType": "YulTypedName", + "src": "44037:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "44045:4:74", + "nodeType": "YulTypedName", + "src": "44045:4:74", + "type": "" + } + ], + "src": "43994:116:74" + }, + { + "body": { + "nativeSrc": "44171:99:74", + "nodeType": "YulBlock", + "src": "44171:99:74", + "statements": [ + { + "nativeSrc": "44182:42:74", + "nodeType": "YulVariableDeclaration", + "src": "44182:42:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "44219:3:74", + "nodeType": "YulIdentifier", + "src": "44219:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "44213:5:74", + "nodeType": "YulIdentifier", + "src": "44213:5:74" + }, + "nativeSrc": "44213:10:74", + "nodeType": "YulFunctionCall", + "src": "44213:10:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "44195:17:74", + "nodeType": "YulIdentifier", + "src": "44195:17:74" + }, + "nativeSrc": "44195:29:74", + "nodeType": "YulFunctionCall", + "src": "44195:29:74" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "44186:5:74", + "nodeType": "YulTypedName", + "src": "44186:5:74", + "type": "" + } + ] + }, + { + "nativeSrc": "44234:29:74", + "nodeType": "YulAssignment", + "src": "44234:29:74", + "value": { + "name": "value", + "nativeSrc": "44258:5:74", + "nodeType": "YulIdentifier", + "src": "44258:5:74" + }, + "variableNames": [ + { + "name": "returnValue", + "nativeSrc": "44234:11:74", + "nodeType": "YulIdentifier", + "src": "44234:11:74" + } + ] + } + ] + }, + "name": "read_from_memoryt_bytes32", + "nativeSrc": "44116:154:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "44151:3:74", + "nodeType": "YulTypedName", + "src": "44151:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "returnValue", + "nativeSrc": "44159:11:74", + "nodeType": "YulTypedName", + "src": "44159:11:74", + "type": "" + } + ], + "src": "44116:154:74" + }, + { + "body": { + "nativeSrc": "44329:54:74", + "nodeType": "YulBlock", + "src": "44329:54:74", + "statements": [ + { + "nativeSrc": "44339:37:74", + "nodeType": "YulAssignment", + "src": "44339:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "44364:4:74", + "nodeType": "YulIdentifier", + "src": "44364:4:74" + }, + { + "name": "value", + "nativeSrc": "44370:5:74", + "nodeType": "YulIdentifier", + "src": "44370:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "44360:3:74", + "nodeType": "YulIdentifier", + "src": "44360:3:74" + }, + "nativeSrc": "44360:16:74", + "nodeType": "YulFunctionCall", + "src": "44360:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "44339:8:74", + "nodeType": "YulIdentifier", + "src": "44339:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "44276:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "44304:4:74", + "nodeType": "YulTypedName", + "src": "44304:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "44310:5:74", + "nodeType": "YulTypedName", + "src": "44310:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "44320:8:74", + "nodeType": "YulTypedName", + "src": "44320:8:74", + "type": "" + } + ], + "src": "44276:107:74" + }, + { + "body": { + "nativeSrc": "44479:504:74", + "nodeType": "YulBlock", + "src": "44479:504:74", + "statements": [ + { + "nativeSrc": "44490:52:74", + "nodeType": "YulVariableDeclaration", + "src": "44490:52:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "44536:5:74", + "nodeType": "YulIdentifier", + "src": "44536:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "44504:31:74", + "nodeType": "YulIdentifier", + "src": "44504:31:74" + }, + "nativeSrc": "44504:38:74", + "nodeType": "YulFunctionCall", + "src": "44504:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "44494:6:74", + "nodeType": "YulTypedName", + "src": "44494:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "44551:21:74", + "nodeType": "YulVariableDeclaration", + "src": "44551:21:74", + "value": { + "name": "array", + "nativeSrc": "44567:5:74", + "nodeType": "YulIdentifier", + "src": "44567:5:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "44555:8:74", + "nodeType": "YulTypedName", + "src": "44555:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "44582:52:74", + "nodeType": "YulAssignment", + "src": "44582:52:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "44628:5:74", + "nodeType": "YulIdentifier", + "src": "44628:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_memory_ptr", + "nativeSrc": "44594:33:74", + "nodeType": "YulIdentifier", + "src": "44594:33:74" + }, + "nativeSrc": "44594:40:74", + "nodeType": "YulFunctionCall", + "src": "44594:40:74" + }, + "variableNames": [ + { + "name": "dataArea", + "nativeSrc": "44582:8:74", + "nodeType": "YulIdentifier", + "src": "44582:8:74" + } + ] + }, + { + "nativeSrc": "44644:44:74", + "nodeType": "YulAssignment", + "src": "44644:44:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "44679:8:74", + "nodeType": "YulIdentifier", + "src": "44679:8:74" + } + ], + "functionName": { + "name": "read_from_memoryt_bytes32", + "nativeSrc": "44653:25:74", + "nodeType": "YulIdentifier", + "src": "44653:25:74" + }, + "nativeSrc": "44653:35:74", + "nodeType": "YulFunctionCall", + "src": "44653:35:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "44644:5:74", + "nodeType": "YulIdentifier", + "src": "44644:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "44716:260:74", + "nodeType": "YulBlock", + "src": "44716:260:74", + "statements": [ + { + "nativeSrc": "44730:236:74", + "nodeType": "YulAssignment", + "src": "44730:236:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44760:5:74", + "nodeType": "YulIdentifier", + "src": "44760:5:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "44827:1:74", + "nodeType": "YulLiteral", + "src": "44827:1:74", + "type": "", + "value": "8" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "44834:2:74", + "nodeType": "YulLiteral", + "src": "44834:2:74", + "type": "", + "value": "32" + }, + { + "name": "length", + "nativeSrc": "44838:6:74", + "nodeType": "YulIdentifier", + "src": "44838:6:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "44830:3:74", + "nodeType": "YulIdentifier", + "src": "44830:3:74" + }, + "nativeSrc": "44830:15:74", + "nodeType": "YulFunctionCall", + "src": "44830:15:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "44823:3:74", + "nodeType": "YulIdentifier", + "src": "44823:3:74" + }, + "nativeSrc": "44823:23:74", + "nodeType": "YulFunctionCall", + "src": "44823:23:74" + }, + { + "kind": "number", + "nativeSrc": "44868:66:74", + "nodeType": "YulLiteral", + "src": "44868:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "44783:18:74", + "nodeType": "YulIdentifier", + "src": "44783:18:74" + }, + "nativeSrc": "44783:169:74", + "nodeType": "YulFunctionCall", + "src": "44783:169:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "44739:3:74", + "nodeType": "YulIdentifier", + "src": "44739:3:74" + }, + "nativeSrc": "44739:227:74", + "nodeType": "YulFunctionCall", + "src": "44739:227:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "44730:5:74", + "nodeType": "YulIdentifier", + "src": "44730:5:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "44704:6:74", + "nodeType": "YulIdentifier", + "src": "44704:6:74" + }, + { + "kind": "number", + "nativeSrc": "44712:2:74", + "nodeType": "YulLiteral", + "src": "44712:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "44701:2:74", + "nodeType": "YulIdentifier", + "src": "44701:2:74" + }, + "nativeSrc": "44701:14:74", + "nodeType": "YulFunctionCall", + "src": "44701:14:74" + }, + "nativeSrc": "44698:278:74", + "nodeType": "YulIf", + "src": "44698:278:74" + } + ] + }, + "name": "convert_bytes_to_fixedbytes_from_t_bytes_memory_ptr_to_t_bytes32", + "nativeSrc": "44389:594:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "44463:5:74", + "nodeType": "YulTypedName", + "src": "44463:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "44473:5:74", + "nodeType": "YulTypedName", + "src": "44473:5:74", + "type": "" + } + ], + "src": "44389:594:74" + }, + { + "body": { + "nativeSrc": "45102:34:74", + "nodeType": "YulBlock", + "src": "45102:34:74", + "statements": [ + { + "nativeSrc": "45112:18:74", + "nodeType": "YulAssignment", + "src": "45112:18:74", + "value": { + "name": "pos", + "nativeSrc": "45127:3:74", + "nodeType": "YulIdentifier", + "src": "45127:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "45112:11:74", + "nodeType": "YulIdentifier", + "src": "45112:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "44989:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "45074:3:74", + "nodeType": "YulTypedName", + "src": "45074:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "45079:6:74", + "nodeType": "YulTypedName", + "src": "45079:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "45090:11:74", + "nodeType": "YulTypedName", + "src": "45090:11:74", + "type": "" + } + ], + "src": "44989:147:74" + }, + { + "body": { + "nativeSrc": "45250:278:74", + "nodeType": "YulBlock", + "src": "45250:278:74", + "statements": [ + { + "nativeSrc": "45260:52:74", + "nodeType": "YulVariableDeclaration", + "src": "45260:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "45306:5:74", + "nodeType": "YulIdentifier", + "src": "45306:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "45274:31:74", + "nodeType": "YulIdentifier", + "src": "45274:31:74" + }, + "nativeSrc": "45274:38:74", + "nodeType": "YulFunctionCall", + "src": "45274:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "45264:6:74", + "nodeType": "YulTypedName", + "src": "45264:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "45321:95:74", + "nodeType": "YulAssignment", + "src": "45321:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "45404:3:74", + "nodeType": "YulIdentifier", + "src": "45404:3:74" + }, + { + "name": "length", + "nativeSrc": "45409:6:74", + "nodeType": "YulIdentifier", + "src": "45409:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "45328:75:74", + "nodeType": "YulIdentifier", + "src": "45328:75:74" + }, + "nativeSrc": "45328:88:74", + "nodeType": "YulFunctionCall", + "src": "45328:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "45321:3:74", + "nodeType": "YulIdentifier", + "src": "45321:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "45464:5:74", + "nodeType": "YulIdentifier", + "src": "45464:5:74" + }, + { + "kind": "number", + "nativeSrc": "45471:4:74", + "nodeType": "YulLiteral", + "src": "45471:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45460:3:74", + "nodeType": "YulIdentifier", + "src": "45460:3:74" + }, + "nativeSrc": "45460:16:74", + "nodeType": "YulFunctionCall", + "src": "45460:16:74" + }, + { + "name": "pos", + "nativeSrc": "45478:3:74", + "nodeType": "YulIdentifier", + "src": "45478:3:74" + }, + { + "name": "length", + "nativeSrc": "45483:6:74", + "nodeType": "YulIdentifier", + "src": "45483:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "45425:34:74", + "nodeType": "YulIdentifier", + "src": "45425:34:74" + }, + "nativeSrc": "45425:65:74", + "nodeType": "YulFunctionCall", + "src": "45425:65:74" + }, + "nativeSrc": "45425:65:74", + "nodeType": "YulExpressionStatement", + "src": "45425:65:74" + }, + { + "nativeSrc": "45499:23:74", + "nodeType": "YulAssignment", + "src": "45499:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "45510:3:74", + "nodeType": "YulIdentifier", + "src": "45510:3:74" + }, + { + "name": "length", + "nativeSrc": "45515:6:74", + "nodeType": "YulIdentifier", + "src": "45515:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45506:3:74", + "nodeType": "YulIdentifier", + "src": "45506:3:74" + }, + "nativeSrc": "45506:16:74", + "nodeType": "YulFunctionCall", + "src": "45506:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "45499:3:74", + "nodeType": "YulIdentifier", + "src": "45499:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "45142:386:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "45231:5:74", + "nodeType": "YulTypedName", + "src": "45231:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "45238:3:74", + "nodeType": "YulTypedName", + "src": "45238:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "45246:3:74", + "nodeType": "YulTypedName", + "src": "45246:3:74", + "type": "" + } + ], + "src": "45142:386:74" + }, + { + "body": { + "nativeSrc": "45581:32:74", + "nodeType": "YulBlock", + "src": "45581:32:74", + "statements": [ + { + "nativeSrc": "45591:16:74", + "nodeType": "YulAssignment", + "src": "45591:16:74", + "value": { + "name": "value", + "nativeSrc": "45602:5:74", + "nodeType": "YulIdentifier", + "src": "45602:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "45591:7:74", + "nodeType": "YulIdentifier", + "src": "45591:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_uint256", + "nativeSrc": "45534:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "45563:5:74", + "nodeType": "YulTypedName", + "src": "45563:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "45573:7:74", + "nodeType": "YulTypedName", + "src": "45573:7:74", + "type": "" + } + ], + "src": "45534:79:74" + }, + { + "body": { + "nativeSrc": "45702:74:74", + "nodeType": "YulBlock", + "src": "45702:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "45719:3:74", + "nodeType": "YulIdentifier", + "src": "45719:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "45762:5:74", + "nodeType": "YulIdentifier", + "src": "45762:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "45744:17:74", + "nodeType": "YulIdentifier", + "src": "45744:17:74" + }, + "nativeSrc": "45744:24:74", + "nodeType": "YulFunctionCall", + "src": "45744:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_uint256", + "nativeSrc": "45724:19:74", + "nodeType": "YulIdentifier", + "src": "45724:19:74" + }, + "nativeSrc": "45724:45:74", + "nodeType": "YulFunctionCall", + "src": "45724:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45712:6:74", + "nodeType": "YulIdentifier", + "src": "45712:6:74" + }, + "nativeSrc": "45712:58:74", + "nodeType": "YulFunctionCall", + "src": "45712:58:74" + }, + "nativeSrc": "45712:58:74", + "nodeType": "YulExpressionStatement", + "src": "45712:58:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nativeSrc": "45619:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "45690:5:74", + "nodeType": "YulTypedName", + "src": "45690:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "45697:3:74", + "nodeType": "YulTypedName", + "src": "45697:3:74", + "type": "" + } + ], + "src": "45619:157:74" + }, + { + "body": { + "nativeSrc": "45944:250:74", + "nodeType": "YulBlock", + "src": "45944:250:74", + "statements": [ + { + "nativeSrc": "45955:100:74", + "nodeType": "YulAssignment", + "src": "45955:100:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "46042:6:74", + "nodeType": "YulIdentifier", + "src": "46042:6:74" + }, + { + "name": "pos", + "nativeSrc": "46051:3:74", + "nodeType": "YulIdentifier", + "src": "46051:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "45962:79:74", + "nodeType": "YulIdentifier", + "src": "45962:79:74" + }, + "nativeSrc": "45962:93:74", + "nodeType": "YulFunctionCall", + "src": "45962:93:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "45955:3:74", + "nodeType": "YulIdentifier", + "src": "45955:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "46127:6:74", + "nodeType": "YulIdentifier", + "src": "46127:6:74" + }, + { + "name": "pos", + "nativeSrc": "46136:3:74", + "nodeType": "YulIdentifier", + "src": "46136:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nativeSrc": "46065:61:74", + "nodeType": "YulIdentifier", + "src": "46065:61:74" + }, + "nativeSrc": "46065:75:74", + "nodeType": "YulFunctionCall", + "src": "46065:75:74" + }, + "nativeSrc": "46065:75:74", + "nodeType": "YulExpressionStatement", + "src": "46065:75:74" + }, + { + "nativeSrc": "46149:19:74", + "nodeType": "YulAssignment", + "src": "46149:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "46160:3:74", + "nodeType": "YulIdentifier", + "src": "46160:3:74" + }, + { + "kind": "number", + "nativeSrc": "46165:2:74", + "nodeType": "YulLiteral", + "src": "46165:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46156:3:74", + "nodeType": "YulIdentifier", + "src": "46156:3:74" + }, + "nativeSrc": "46156:12:74", + "nodeType": "YulFunctionCall", + "src": "46156:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "46149:3:74", + "nodeType": "YulIdentifier", + "src": "46149:3:74" + } + ] + }, + { + "nativeSrc": "46178:10:74", + "nodeType": "YulAssignment", + "src": "46178:10:74", + "value": { + "name": "pos", + "nativeSrc": "46185:3:74", + "nodeType": "YulIdentifier", + "src": "46185:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "46178:3:74", + "nodeType": "YulIdentifier", + "src": "46178:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint256__to_t_bytes_memory_ptr_t_uint256__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "45782:412:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "45915:3:74", + "nodeType": "YulTypedName", + "src": "45915:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "45921:6:74", + "nodeType": "YulTypedName", + "src": "45921:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "45929:6:74", + "nodeType": "YulTypedName", + "src": "45929:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "45940:3:74", + "nodeType": "YulTypedName", + "src": "45940:3:74", + "type": "" + } + ], + "src": "45782:412:74" + }, + { + "body": { + "nativeSrc": "46306:132:74", + "nodeType": "YulBlock", + "src": "46306:132:74", + "statements": [ + { + "nativeSrc": "46316:26:74", + "nodeType": "YulAssignment", + "src": "46316:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46328:9:74", + "nodeType": "YulIdentifier", + "src": "46328:9:74" + }, + { + "kind": "number", + "nativeSrc": "46339:2:74", + "nodeType": "YulLiteral", + "src": "46339:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46324:3:74", + "nodeType": "YulIdentifier", + "src": "46324:3:74" + }, + "nativeSrc": "46324:18:74", + "nodeType": "YulFunctionCall", + "src": "46324:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "46316:4:74", + "nodeType": "YulIdentifier", + "src": "46316:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "46404:6:74", + "nodeType": "YulIdentifier", + "src": "46404:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46417:9:74", + "nodeType": "YulIdentifier", + "src": "46417:9:74" + }, + { + "kind": "number", + "nativeSrc": "46428:1:74", + "nodeType": "YulLiteral", + "src": "46428:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46413:3:74", + "nodeType": "YulIdentifier", + "src": "46413:3:74" + }, + "nativeSrc": "46413:17:74", + "nodeType": "YulFunctionCall", + "src": "46413:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "46352:51:74", + "nodeType": "YulIdentifier", + "src": "46352:51:74" + }, + "nativeSrc": "46352:79:74", + "nodeType": "YulFunctionCall", + "src": "46352:79:74" + }, + "nativeSrc": "46352:79:74", + "nodeType": "YulExpressionStatement", + "src": "46352:79:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed", + "nativeSrc": "46200:238:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "46278:9:74", + "nodeType": "YulTypedName", + "src": "46278:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "46290:6:74", + "nodeType": "YulTypedName", + "src": "46290:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "46301:4:74", + "nodeType": "YulTypedName", + "src": "46301:4:74", + "type": "" + } + ], + "src": "46200:238:74" + }, + { + "body": { + "nativeSrc": "46550:120:74", + "nodeType": "YulBlock", + "src": "46550:120:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "46572:6:74", + "nodeType": "YulIdentifier", + "src": "46572:6:74" + }, + { + "kind": "number", + "nativeSrc": "46580:1:74", + "nodeType": "YulLiteral", + "src": "46580:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46568:3:74", + "nodeType": "YulIdentifier", + "src": "46568:3:74" + }, + "nativeSrc": "46568:14:74", + "nodeType": "YulFunctionCall", + "src": "46568:14:74" + }, + { + "hexValue": "4c696e656150726f6f6648656c7065723a20696e76616c69642073746f726167", + "kind": "string", + "nativeSrc": "46584:34:74", + "nodeType": "YulLiteral", + "src": "46584:34:74", + "type": "", + "value": "LineaProofHelper: invalid storag" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "46561:6:74", + "nodeType": "YulIdentifier", + "src": "46561:6:74" + }, + "nativeSrc": "46561:58:74", + "nodeType": "YulFunctionCall", + "src": "46561:58:74" + }, + "nativeSrc": "46561:58:74", + "nodeType": "YulExpressionStatement", + "src": "46561:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "46640:6:74", + "nodeType": "YulIdentifier", + "src": "46640:6:74" + }, + { + "kind": "number", + "nativeSrc": "46648:2:74", + "nodeType": "YulLiteral", + "src": "46648:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46636:3:74", + "nodeType": "YulIdentifier", + "src": "46636:3:74" + }, + "nativeSrc": "46636:15:74", + "nodeType": "YulFunctionCall", + "src": "46636:15:74" + }, + { + "hexValue": "652070726f6f66", + "kind": "string", + "nativeSrc": "46653:9:74", + "nodeType": "YulLiteral", + "src": "46653:9:74", + "type": "", + "value": "e proof" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "46629:6:74", + "nodeType": "YulIdentifier", + "src": "46629:6:74" + }, + "nativeSrc": "46629:34:74", + "nodeType": "YulFunctionCall", + "src": "46629:34:74" + }, + "nativeSrc": "46629:34:74", + "nodeType": "YulExpressionStatement", + "src": "46629:34:74" + } + ] + }, + "name": "store_literal_in_memory_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292", + "nativeSrc": "46444:226:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "46542:6:74", + "nodeType": "YulTypedName", + "src": "46542:6:74", + "type": "" + } + ], + "src": "46444:226:74" + }, + { + "body": { + "nativeSrc": "46822:220:74", + "nodeType": "YulBlock", + "src": "46822:220:74", + "statements": [ + { + "nativeSrc": "46832:74:74", + "nodeType": "YulAssignment", + "src": "46832:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "46898:3:74", + "nodeType": "YulIdentifier", + "src": "46898:3:74" + }, + { + "kind": "number", + "nativeSrc": "46903:2:74", + "nodeType": "YulLiteral", + "src": "46903:2:74", + "type": "", + "value": "39" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "46839:58:74", + "nodeType": "YulIdentifier", + "src": "46839:58:74" + }, + "nativeSrc": "46839:67:74", + "nodeType": "YulFunctionCall", + "src": "46839:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "46832:3:74", + "nodeType": "YulIdentifier", + "src": "46832:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47004:3:74", + "nodeType": "YulIdentifier", + "src": "47004:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292", + "nativeSrc": "46915:88:74", + "nodeType": "YulIdentifier", + "src": "46915:88:74" + }, + "nativeSrc": "46915:93:74", + "nodeType": "YulFunctionCall", + "src": "46915:93:74" + }, + "nativeSrc": "46915:93:74", + "nodeType": "YulExpressionStatement", + "src": "46915:93:74" + }, + { + "nativeSrc": "47017:19:74", + "nodeType": "YulAssignment", + "src": "47017:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47028:3:74", + "nodeType": "YulIdentifier", + "src": "47028:3:74" + }, + { + "kind": "number", + "nativeSrc": "47033:2:74", + "nodeType": "YulLiteral", + "src": "47033:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47024:3:74", + "nodeType": "YulIdentifier", + "src": "47024:3:74" + }, + "nativeSrc": "47024:12:74", + "nodeType": "YulFunctionCall", + "src": "47024:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "47017:3:74", + "nodeType": "YulIdentifier", + "src": "47017:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292_to_t_string_memory_ptr_fromStack", + "nativeSrc": "46676:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "46810:3:74", + "nodeType": "YulTypedName", + "src": "46810:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "46818:3:74", + "nodeType": "YulTypedName", + "src": "46818:3:74", + "type": "" + } + ], + "src": "46676:366:74" + }, + { + "body": { + "nativeSrc": "47219:248:74", + "nodeType": "YulBlock", + "src": "47219:248:74", + "statements": [ + { + "nativeSrc": "47229:26:74", + "nodeType": "YulAssignment", + "src": "47229:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47241:9:74", + "nodeType": "YulIdentifier", + "src": "47241:9:74" + }, + { + "kind": "number", + "nativeSrc": "47252:2:74", + "nodeType": "YulLiteral", + "src": "47252:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47237:3:74", + "nodeType": "YulIdentifier", + "src": "47237:3:74" + }, + "nativeSrc": "47237:18:74", + "nodeType": "YulFunctionCall", + "src": "47237:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "47229:4:74", + "nodeType": "YulIdentifier", + "src": "47229:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47276:9:74", + "nodeType": "YulIdentifier", + "src": "47276:9:74" + }, + { + "kind": "number", + "nativeSrc": "47287:1:74", + "nodeType": "YulLiteral", + "src": "47287:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47272:3:74", + "nodeType": "YulIdentifier", + "src": "47272:3:74" + }, + "nativeSrc": "47272:17:74", + "nodeType": "YulFunctionCall", + "src": "47272:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "47295:4:74", + "nodeType": "YulIdentifier", + "src": "47295:4:74" + }, + { + "name": "headStart", + "nativeSrc": "47301:9:74", + "nodeType": "YulIdentifier", + "src": "47301:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "47291:3:74", + "nodeType": "YulIdentifier", + "src": "47291:3:74" + }, + "nativeSrc": "47291:20:74", + "nodeType": "YulFunctionCall", + "src": "47291:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "47265:6:74", + "nodeType": "YulIdentifier", + "src": "47265:6:74" + }, + "nativeSrc": "47265:47:74", + "nodeType": "YulFunctionCall", + "src": "47265:47:74" + }, + "nativeSrc": "47265:47:74", + "nodeType": "YulExpressionStatement", + "src": "47265:47:74" + }, + { + "nativeSrc": "47321:139:74", + "nodeType": "YulAssignment", + "src": "47321:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "47455:4:74", + "nodeType": "YulIdentifier", + "src": "47455:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292_to_t_string_memory_ptr_fromStack", + "nativeSrc": "47329:124:74", + "nodeType": "YulIdentifier", + "src": "47329:124:74" + }, + "nativeSrc": "47329:131:74", + "nodeType": "YulFunctionCall", + "src": "47329:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "47321:4:74", + "nodeType": "YulIdentifier", + "src": "47321:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "47048:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "47199:9:74", + "nodeType": "YulTypedName", + "src": "47199:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "47214:4:74", + "nodeType": "YulTypedName", + "src": "47214:4:74", + "type": "" + } + ], + "src": "47048:419:74" + }, + { + "body": { + "nativeSrc": "47589:140:74", + "nodeType": "YulBlock", + "src": "47589:140:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "47662:6:74", + "nodeType": "YulIdentifier", + "src": "47662:6:74" + }, + { + "name": "pos", + "nativeSrc": "47671:3:74", + "nodeType": "YulIdentifier", + "src": "47671:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nativeSrc": "47600:61:74", + "nodeType": "YulIdentifier", + "src": "47600:61:74" + }, + "nativeSrc": "47600:75:74", + "nodeType": "YulFunctionCall", + "src": "47600:75:74" + }, + "nativeSrc": "47600:75:74", + "nodeType": "YulExpressionStatement", + "src": "47600:75:74" + }, + { + "nativeSrc": "47684:19:74", + "nodeType": "YulAssignment", + "src": "47684:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47695:3:74", + "nodeType": "YulIdentifier", + "src": "47695:3:74" + }, + { + "kind": "number", + "nativeSrc": "47700:2:74", + "nodeType": "YulLiteral", + "src": "47700:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47691:3:74", + "nodeType": "YulIdentifier", + "src": "47691:3:74" + }, + "nativeSrc": "47691:12:74", + "nodeType": "YulFunctionCall", + "src": "47691:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "47684:3:74", + "nodeType": "YulIdentifier", + "src": "47684:3:74" + } + ] + }, + { + "nativeSrc": "47713:10:74", + "nodeType": "YulAssignment", + "src": "47713:10:74", + "value": { + "name": "pos", + "nativeSrc": "47720:3:74", + "nodeType": "YulIdentifier", + "src": "47720:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "47713:3:74", + "nodeType": "YulIdentifier", + "src": "47713:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_uint256__to_t_uint256__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "47473:256:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "47568:3:74", + "nodeType": "YulTypedName", + "src": "47568:3:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "47574:6:74", + "nodeType": "YulTypedName", + "src": "47574:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "47585:3:74", + "nodeType": "YulTypedName", + "src": "47585:3:74", + "type": "" + } + ], + "src": "47473:256:74" + }, + { + "body": { + "nativeSrc": "47779:147:74", + "nodeType": "YulBlock", + "src": "47779:147:74", + "statements": [ + { + "nativeSrc": "47789:25:74", + "nodeType": "YulAssignment", + "src": "47789:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "47812:1:74", + "nodeType": "YulIdentifier", + "src": "47812:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "47794:17:74", + "nodeType": "YulIdentifier", + "src": "47794:17:74" + }, + "nativeSrc": "47794:20:74", + "nodeType": "YulFunctionCall", + "src": "47794:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "47789:1:74", + "nodeType": "YulIdentifier", + "src": "47789:1:74" + } + ] + }, + { + "nativeSrc": "47823:25:74", + "nodeType": "YulAssignment", + "src": "47823:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "47846:1:74", + "nodeType": "YulIdentifier", + "src": "47846:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "47828:17:74", + "nodeType": "YulIdentifier", + "src": "47828:17:74" + }, + "nativeSrc": "47828:20:74", + "nodeType": "YulFunctionCall", + "src": "47828:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "47823:1:74", + "nodeType": "YulIdentifier", + "src": "47823:1:74" + } + ] + }, + { + "nativeSrc": "47857:16:74", + "nodeType": "YulAssignment", + "src": "47857:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "47868:1:74", + "nodeType": "YulIdentifier", + "src": "47868:1:74" + }, + { + "name": "y", + "nativeSrc": "47871:1:74", + "nodeType": "YulIdentifier", + "src": "47871:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47864:3:74", + "nodeType": "YulIdentifier", + "src": "47864:3:74" + }, + "nativeSrc": "47864:9:74", + "nodeType": "YulFunctionCall", + "src": "47864:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "47857:3:74", + "nodeType": "YulIdentifier", + "src": "47857:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "47897:22:74", + "nodeType": "YulBlock", + "src": "47897:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "47899:16:74", + "nodeType": "YulIdentifier", + "src": "47899:16:74" + }, + "nativeSrc": "47899:18:74", + "nodeType": "YulFunctionCall", + "src": "47899:18:74" + }, + "nativeSrc": "47899:18:74", + "nodeType": "YulExpressionStatement", + "src": "47899:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "47889:1:74", + "nodeType": "YulIdentifier", + "src": "47889:1:74" + }, + { + "name": "sum", + "nativeSrc": "47892:3:74", + "nodeType": "YulIdentifier", + "src": "47892:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "47886:2:74", + "nodeType": "YulIdentifier", + "src": "47886:2:74" + }, + "nativeSrc": "47886:10:74", + "nodeType": "YulFunctionCall", + "src": "47886:10:74" + }, + "nativeSrc": "47883:36:74", + "nodeType": "YulIf", + "src": "47883:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "47735:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "47766:1:74", + "nodeType": "YulTypedName", + "src": "47766:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "47769:1:74", + "nodeType": "YulTypedName", + "src": "47769:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "47775:3:74", + "nodeType": "YulTypedName", + "src": "47775:3:74", + "type": "" + } + ], + "src": "47735:191:74" + }, + { + "body": { + "nativeSrc": "47993:51:74", + "nodeType": "YulBlock", + "src": "47993:51:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48010:3:74", + "nodeType": "YulIdentifier", + "src": "48010:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "48031:5:74", + "nodeType": "YulIdentifier", + "src": "48031:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint8", + "nativeSrc": "48015:15:74", + "nodeType": "YulIdentifier", + "src": "48015:15:74" + }, + "nativeSrc": "48015:22:74", + "nodeType": "YulFunctionCall", + "src": "48015:22:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48003:6:74", + "nodeType": "YulIdentifier", + "src": "48003:6:74" + }, + "nativeSrc": "48003:35:74", + "nodeType": "YulFunctionCall", + "src": "48003:35:74" + }, + "nativeSrc": "48003:35:74", + "nodeType": "YulExpressionStatement", + "src": "48003:35:74" + } + ] + }, + "name": "abi_encode_t_uint8_to_t_uint8_fromStack", + "nativeSrc": "47932:112:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "47981:5:74", + "nodeType": "YulTypedName", + "src": "47981:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "47988:3:74", + "nodeType": "YulTypedName", + "src": "47988:3:74", + "type": "" + } + ], + "src": "47932:112:74" + }, + { + "body": { + "nativeSrc": "48144:120:74", + "nodeType": "YulBlock", + "src": "48144:120:74", + "statements": [ + { + "nativeSrc": "48154:26:74", + "nodeType": "YulAssignment", + "src": "48154:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48166:9:74", + "nodeType": "YulIdentifier", + "src": "48166:9:74" + }, + { + "kind": "number", + "nativeSrc": "48177:2:74", + "nodeType": "YulLiteral", + "src": "48177:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48162:3:74", + "nodeType": "YulIdentifier", + "src": "48162:3:74" + }, + "nativeSrc": "48162:18:74", + "nodeType": "YulFunctionCall", + "src": "48162:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "48154:4:74", + "nodeType": "YulIdentifier", + "src": "48154:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "48230:6:74", + "nodeType": "YulIdentifier", + "src": "48230:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48243:9:74", + "nodeType": "YulIdentifier", + "src": "48243:9:74" + }, + { + "kind": "number", + "nativeSrc": "48254:1:74", + "nodeType": "YulLiteral", + "src": "48254:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48239:3:74", + "nodeType": "YulIdentifier", + "src": "48239:3:74" + }, + "nativeSrc": "48239:17:74", + "nodeType": "YulFunctionCall", + "src": "48239:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint8_to_t_uint8_fromStack", + "nativeSrc": "48190:39:74", + "nodeType": "YulIdentifier", + "src": "48190:39:74" + }, + "nativeSrc": "48190:67:74", + "nodeType": "YulFunctionCall", + "src": "48190:67:74" + }, + "nativeSrc": "48190:67:74", + "nodeType": "YulExpressionStatement", + "src": "48190:67:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed", + "nativeSrc": "48050:214:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "48116:9:74", + "nodeType": "YulTypedName", + "src": "48116:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "48128:6:74", + "nodeType": "YulTypedName", + "src": "48128:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "48139:4:74", + "nodeType": "YulTypedName", + "src": "48139:4:74", + "type": "" + } + ], + "src": "48050:214:74" + }, + { + "body": { + "nativeSrc": "48376:68:74", + "nodeType": "YulBlock", + "src": "48376:68:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "48398:6:74", + "nodeType": "YulIdentifier", + "src": "48398:6:74" + }, + { + "kind": "number", + "nativeSrc": "48406:1:74", + "nodeType": "YulLiteral", + "src": "48406:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48394:3:74", + "nodeType": "YulIdentifier", + "src": "48394:3:74" + }, + "nativeSrc": "48394:14:74", + "nodeType": "YulFunctionCall", + "src": "48394:14:74" + }, + { + "hexValue": "736c69636542797465733a206f7574206f662072616e6765", + "kind": "string", + "nativeSrc": "48410:26:74", + "nodeType": "YulLiteral", + "src": "48410:26:74", + "type": "", + "value": "sliceBytes: out of range" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48387:6:74", + "nodeType": "YulIdentifier", + "src": "48387:6:74" + }, + "nativeSrc": "48387:50:74", + "nodeType": "YulFunctionCall", + "src": "48387:50:74" + }, + "nativeSrc": "48387:50:74", + "nodeType": "YulExpressionStatement", + "src": "48387:50:74" + } + ] + }, + "name": "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "nativeSrc": "48270:174:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "48368:6:74", + "nodeType": "YulTypedName", + "src": "48368:6:74", + "type": "" + } + ], + "src": "48270:174:74" + }, + { + "body": { + "nativeSrc": "48596:220:74", + "nodeType": "YulBlock", + "src": "48596:220:74", + "statements": [ + { + "nativeSrc": "48606:74:74", + "nodeType": "YulAssignment", + "src": "48606:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48672:3:74", + "nodeType": "YulIdentifier", + "src": "48672:3:74" + }, + { + "kind": "number", + "nativeSrc": "48677:2:74", + "nodeType": "YulLiteral", + "src": "48677:2:74", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "48613:58:74", + "nodeType": "YulIdentifier", + "src": "48613:58:74" + }, + "nativeSrc": "48613:67:74", + "nodeType": "YulFunctionCall", + "src": "48613:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "48606:3:74", + "nodeType": "YulIdentifier", + "src": "48606:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48778:3:74", + "nodeType": "YulIdentifier", + "src": "48778:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73", + "nativeSrc": "48689:88:74", + "nodeType": "YulIdentifier", + "src": "48689:88:74" + }, + "nativeSrc": "48689:93:74", + "nodeType": "YulFunctionCall", + "src": "48689:93:74" + }, + "nativeSrc": "48689:93:74", + "nodeType": "YulExpressionStatement", + "src": "48689:93:74" + }, + { + "nativeSrc": "48791:19:74", + "nodeType": "YulAssignment", + "src": "48791:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48802:3:74", + "nodeType": "YulIdentifier", + "src": "48802:3:74" + }, + { + "kind": "number", + "nativeSrc": "48807:2:74", + "nodeType": "YulLiteral", + "src": "48807:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48798:3:74", + "nodeType": "YulIdentifier", + "src": "48798:3:74" + }, + "nativeSrc": "48798:12:74", + "nodeType": "YulFunctionCall", + "src": "48798:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "48791:3:74", + "nodeType": "YulIdentifier", + "src": "48791:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack", + "nativeSrc": "48450:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "48584:3:74", + "nodeType": "YulTypedName", + "src": "48584:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "48592:3:74", + "nodeType": "YulTypedName", + "src": "48592:3:74", + "type": "" + } + ], + "src": "48450:366:74" + }, + { + "body": { + "nativeSrc": "48993:248:74", + "nodeType": "YulBlock", + "src": "48993:248:74", + "statements": [ + { + "nativeSrc": "49003:26:74", + "nodeType": "YulAssignment", + "src": "49003:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49015:9:74", + "nodeType": "YulIdentifier", + "src": "49015:9:74" + }, + { + "kind": "number", + "nativeSrc": "49026:2:74", + "nodeType": "YulLiteral", + "src": "49026:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49011:3:74", + "nodeType": "YulIdentifier", + "src": "49011:3:74" + }, + "nativeSrc": "49011:18:74", + "nodeType": "YulFunctionCall", + "src": "49011:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49003:4:74", + "nodeType": "YulIdentifier", + "src": "49003:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49050:9:74", + "nodeType": "YulIdentifier", + "src": "49050:9:74" + }, + { + "kind": "number", + "nativeSrc": "49061:1:74", + "nodeType": "YulLiteral", + "src": "49061:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49046:3:74", + "nodeType": "YulIdentifier", + "src": "49046:3:74" + }, + "nativeSrc": "49046:17:74", + "nodeType": "YulFunctionCall", + "src": "49046:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49069:4:74", + "nodeType": "YulIdentifier", + "src": "49069:4:74" + }, + { + "name": "headStart", + "nativeSrc": "49075:9:74", + "nodeType": "YulIdentifier", + "src": "49075:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "49065:3:74", + "nodeType": "YulIdentifier", + "src": "49065:3:74" + }, + "nativeSrc": "49065:20:74", + "nodeType": "YulFunctionCall", + "src": "49065:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49039:6:74", + "nodeType": "YulIdentifier", + "src": "49039:6:74" + }, + "nativeSrc": "49039:47:74", + "nodeType": "YulFunctionCall", + "src": "49039:47:74" + }, + "nativeSrc": "49039:47:74", + "nodeType": "YulExpressionStatement", + "src": "49039:47:74" + }, + { + "nativeSrc": "49095:139:74", + "nodeType": "YulAssignment", + "src": "49095:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49229:4:74", + "nodeType": "YulIdentifier", + "src": "49229:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack", + "nativeSrc": "49103:124:74", + "nodeType": "YulIdentifier", + "src": "49103:124:74" + }, + "nativeSrc": "49103:131:74", + "nodeType": "YulFunctionCall", + "src": "49103:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49095:4:74", + "nodeType": "YulIdentifier", + "src": "49095:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "48822:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "48973:9:74", + "nodeType": "YulTypedName", + "src": "48973:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "48988:4:74", + "nodeType": "YulTypedName", + "src": "48988:4:74", + "type": "" + } + ], + "src": "48822:419:74" + } + ] + }, + "contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // string[] -> string[]\n function abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes32[]\n function abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_bytes32(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes32[]\n function abi_decode_t_array$_t_bytes32_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n // bytes[]\n function abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := calldataload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_bytes_memory_ptr(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_addresst_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_bytes32_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // bytes[] -> bytes[]\n function abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n revert(0, 0)\n }\n\n function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n revert(0, 0)\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n // bytes[]\n function abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := mload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_bytes_memory_ptr_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n // struct AccountProof\n function abi_decode_t_struct$_AccountProof_$811_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x40)\n\n {\n // value\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // proofRelatedNodes\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n mstore(add(value, 0x20), abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n // struct AccountProofStruct\n function abi_decode_t_struct$_AccountProofStruct_$825_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0x60) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x60)\n\n {\n // key\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_address_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // leafIndex\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // proof\n\n let offset := mload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n mstore(add(value, 0x40), abi_decode_t_struct$_AccountProof_$811_memory_ptr_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n function array_allocation_size_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // struct StorageProof\n function abi_decode_t_struct$_StorageProof_$817_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x40)\n\n {\n // value\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // proofRelatedNodes\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n mstore(add(value, 0x20), abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bool(value)\n }\n\n // struct StorageProofStruct\n function abi_decode_t_struct$_StorageProofStruct_$835_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0x80) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x80)\n\n {\n // key\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // leafIndex\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // proof\n\n let offset := mload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n mstore(add(value, 0x40), abi_decode_t_struct$_StorageProof_$817_memory_ptr_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // initialized\n\n let offset := 96\n\n mstore(add(value, 0x60), abi_decode_t_bool_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n // struct StorageProofStruct[]\n function abi_decode_available_length_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := mload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_struct$_StorageProofStruct_$835_memory_ptr_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // struct StorageProofStruct[]\n function abi_decode_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_uint256t_struct$_AccountProofStruct_$825_memory_ptrt_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_struct$_AccountProofStruct_$825_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_array$_t_struct$_StorageProofStruct_$835_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n diff := sub(x, y)\n\n if gt(diff, x) { panic_error_0x11() }\n\n }\n\n function store_literal_in_memory_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaSparseProofVerifier: block \")\n\n mstore(add(memPtr, 32), \"not in range accepted\")\n\n }\n\n function abi_encode_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 53)\n store_literal_in_memory_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_873c7804ba15068afd98dd7682299aecc7c757a213662bd02ecaa12519e5f14c_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaSparseProofVerifier: invali\")\n\n mstore(add(memPtr, 32), \"d state root\")\n\n }\n\n function abi_encode_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_dbea733da0702aa4d233954e263d7f2d42203be3bc795a4a0fce0524ecbec697_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaProofHelper: commands numbe\")\n\n mstore(add(memPtr, 32), \"r > storage proofs number\")\n\n }\n\n function abi_encode_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 57)\n store_literal_in_memory_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_a63c109668c2dfd96842219f02a2d133ebba758ac9f8391476dbbc64529e73d5_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, tail)\n\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function validator_revert_t_uint64(value) {\n if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint64_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint64(value)\n }\n\n // struct SparseMerkleProof.Account\n function abi_decode_t_struct$_Account_$1774_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0xc0)\n\n {\n // nonce\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // balance\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // storageRoot\n\n let offset := 64\n\n mstore(add(value, 0x40), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // mimcCodeHash\n\n let offset := 96\n\n mstore(add(value, 0x60), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // keccakCodeHash\n\n let offset := 128\n\n mstore(add(value, 0x80), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // codeSize\n\n let offset := 160\n\n mstore(add(value, 0xa0), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n function abi_decode_tuple_t_struct$_Account_$1774_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 192) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_struct$_Account_$1774_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function cleanup_t_rational_0_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_rational_0_by_1_to_t_uint8(value) -> converted {\n converted := cleanup_t_uint8(identity(cleanup_t_rational_0_by_1(value)))\n }\n\n function abi_encode_t_rational_0_by_1_to_t_uint8_fromStack(value, pos) {\n mstore(pos, convert_t_rational_0_by_1_to_t_uint8(value))\n }\n\n function abi_encode_tuple_t_rational_0_by_1__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_rational_0_by_1_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n // struct SparseMerkleProof.Leaf\n function abi_decode_t_struct$_Leaf_$1784_memory_ptr_fromMemory(headStart, end) -> value {\n if slt(sub(end, headStart), 0x80) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x80)\n\n {\n // prev\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_uint256_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // next\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // hKey\n\n let offset := 64\n\n mstore(add(value, 0x40), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n {\n // hValue\n\n let offset := 96\n\n mstore(add(value, 0x60), abi_decode_t_bytes32_fromMemory(add(headStart, offset), end))\n\n }\n\n }\n\n function abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_struct$_Leaf_$1784_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaProofHelper: wrong target\")\n\n }\n\n function abi_encode_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 30)\n store_literal_in_memory_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_66b76894e52a6e1080433d00f07d68ddb6ff3109186dcfdc2901f3ef7dadb306_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value0, pos)\n }\n\n // bytes[] -> bytes[]\n function abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_uint256_t_bytes32__fromStack_library_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack_library(value0, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack_library(value1, add(headStart, 32))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value2, add(headStart, 64))\n\n }\n\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaProofHelper: invalid accoun\")\n\n mstore(add(memPtr, 32), \"t proof\")\n\n }\n\n function abi_encode_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 39)\n store_literal_in_memory_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_e516742ba8c56221f225bb527e4cd0ef85c62af2f8fba62df5dc9defd04878e3_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893(memPtr) {\n\n mstore(add(memPtr, 0), \"First path element must be 32 by\")\n\n mstore(add(memPtr, 32), \"tes\")\n\n }\n\n function abi_encode_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 35)\n store_literal_in_memory_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_296dc27296c7e9c9674f2b8f8f9d13946daf92299bb4722a6fe574a3f7ab9893_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_dataslot_t_bytes_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function read_from_memoryt_bytes32(ptr) -> returnValue {\n\n let value := cleanup_t_bytes32(mload(ptr))\n\n returnValue :=\n\n value\n\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function convert_bytes_to_fixedbytes_from_t_bytes_memory_ptr_to_t_bytes32(array) -> value {\n\n let length := array_length_t_bytes_memory_ptr(array)\n let dataArea := array\n\n dataArea := array_dataslot_t_bytes_memory_ptr(array)\n\n value := read_from_memoryt_bytes32(dataArea)\n\n if lt(length, 32) {\n value := and(\n value,\n shift_left_dynamic(\n mul(8, sub(32, length)),\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n )\n )\n }\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint256__to_t_bytes_memory_ptr_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function store_literal_in_memory_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292(memPtr) {\n\n mstore(add(memPtr, 0), \"LineaProofHelper: invalid storag\")\n\n mstore(add(memPtr, 32), \"e proof\")\n\n }\n\n function abi_encode_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 39)\n store_literal_in_memory_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_5576375ce520447f668efc6cb19ba678c5a627620207101a10591f991b85a292_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_packed_t_uint256__to_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73(memPtr) {\n\n mstore(add(memPtr, 0), \"sliceBytes: out of range\")\n\n }\n\n function abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_fc2b4e28f07e59415a186eb88ad28b2244c1c754f07085a032d8e5598aacbb73_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": { + "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol": { + "SparseMerkleProof": [ + { + "length": 20, + "start": 1293 + }, + { + "length": 20, + "start": 2120 + }, + { + "length": 20, + "start": 2275 + }, + { + "length": 20, + "start": 2509 + }, + { + "length": 20, + "start": 2649 + }, + { + "length": 20, + "start": 3246 + }, + { + "length": 20, + "start": 3378 + }, + { + "length": 20, + "start": 3529 + }, + { + "length": 20, + "start": 3653 + } + ] + } + }, + "object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c8063a183bada14610051578063b50f2fbc1461006f578063c51ca02a1461008d578063f36c452e146100bd575b600080fd5b6100596100ed565b6040516100669190611409565b60405180910390f35b610077610113565b6040516100849190611576565b60405180910390f35b6100a760048036038101906100a29190611922565b6101ec565b6040516100b49190611b08565b60405180910390f35b6100d760048036038101906100d29190611b2a565b61040a565b6040516100e49190611ba1565b60405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606000805480602002602001604051908101604052809291908181526020016000905b828210156101e357838290600052602060002001805461015690611bf2565b80601f016020809104026020016040519081016040528092919081815260200182805461018290611bf2565b80156101cf5780601f106101a4576101008083540402835291602001916101cf565b820191906000526020600020905b8154815290600101906020018083116101b257829003601f168201915b505050505081526020019060010190610137565b50505050905090565b606060008060008580602001905181019061020791906120b2565b9250925092506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663695378f56040518163ffffffff1660e01b8152600401602060405180830381865afa15801561027c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a0919061213d565b90508581111580156102b25750808411155b806102c8575085816102c49190612199565b8410155b610307576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102fe9061223f565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638be745d1866040518263ffffffff1660e01b8152600401610364919061226e565b602060405180830381865afa158015610381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a59190612289565b90506000801b81036103ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e390612328565b60405180910390fd5b6103fa8b8b8b8488886104b6565b9550505050505095945050505050565b6000818154811061041a57600080fd5b90600052602060002001600091509050805461043590611bf2565b80601f016020809104026020016040519081016040528092919081815260200182805461046190611bf2565b80156104ae5780601f10610483576101008083540402835291602001916104ae565b820191906000526020600020905b81548152906001019060200180831161049157829003601f168201915b505050505081565b60608151865111156104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f4906123ba565b60405180910390fd5b610508878486610843565b50600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__6360f0f00f8560400151600001516040518263ffffffff1660e01b815260040161054a9190612424565b60c060405180830381865af4158015610567573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058b9190612526565b90506000875167ffffffffffffffff8111156105aa576105a96115dd565b5b6040519080825280602002602001820160405280156105dd57816020015b60608152602001906001900390816105c85790505b50925060005b885181101561083657600089828151811061060157610600612553565b5b60200260200101519050600080610619838c89610b38565b91509150816107f75787858151811061063557610634612553565b5b60200260200101516060015161069757600060405160200161065791906125d4565b60405160208183030381529060405287858151811061067957610678612553565b5b6020026020010181905250848061068f906125ef565b9550506107f2565b610709868987815181106106ae576106ad612553565b5b6020026020010151602001518a88815181106106cd576106cc612553565b5b602002602001015160400151602001518b89815181106106f0576106ef612553565b5b602002602001015160400151600001518560001b610caa565b878580610715906125ef565b96508151811061072857610727612553565b5b602002602001015160400151600001516040516020016107489190612646565b60405160208183030381529060405287858151811061076a57610769612553565b5b6020026020010181905250602087858151811061078a57610789612553565b5b60200260200101515111156107f1578684815181106107ac576107ab612553565b5b6020026020010151516040517f54d020910000000000000000000000000000000000000000000000000000000081526004016107e8919061226e565b60405180910390fd5b5b610826565b61080381868a89610f26565b88868151811061081657610815612553565b5b6020026020010181975082905250505b50505080806001019150506105e3565b5050509695505050505050565b60008073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63b893e579866040516020016108719190611409565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161089c9190612424565b602060405180830381865af41580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dd9190612289565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__635ea5a98f86604001516020015160298151811061091757610916612553565b5b60200260200101516040518263ffffffff1660e01b815260040161093b9190612424565b608060405180830381865af4158015610958573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097c91906126d9565b90506000816040015190508083146109c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c090612752565b60405180910390fd5b600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63cc5c21ea8860400151602001518960200151896040518463ffffffff1660e01b8152600401610a1293929190612874565b602060405180830381865af4158015610a2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5391906128b2565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__638c628e408960400151600001516040518263ffffffff1660e01b8152600401610a969190612424565b602060405180830381865af4158015610ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad79190612289565b9050818015610ae95750808460600151145b610b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1f90612951565b60405180910390fd5b6001955050505050509392505050565b600080600085600060208110610b5157610b50612553565b5b1a60f81b60f81c905060006001821660ff16141592506000610b8b87600160208110610b8057610b7f612553565b5b1a60f81b87876111d1565b90506020815114610bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc8906129e3565b60405180910390fd5b80610bdb90612a35565b60001c92506000600290505b602081108015610c33575060ff60f81b888260208110610c0a57610c09612553565b5b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15610c9f576000610c5b898360208110610c5057610c4f612553565b5b1a60f81b89896111d1565b90508085604051602001610c70929190612af9565b6040516020818303038152906040528051906020012060001c9450508080610c97906125ef565b915050610be7565b505050935093915050565b600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63cc5c21ea858789604001516040518463ffffffff1660e01b8152600401610ceb93929190612874565b602060405180830381865af4158015610d08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2c91906128b2565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__635ea5a98f86602981518110610d5e57610d5d612553565b5b60200260200101516040518263ffffffff1660e01b8152600401610d829190612424565b608060405180830381865af4158015610d9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc391906126d9565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63ceeef504856040518263ffffffff1660e01b8152600401610dfe9190612b21565b602060405180830381865af4158015610e1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3f9190612289565b9050600073__$c2429a4cf29736d5dd5c7dbc1c5cee6b20$__63ceeef504876040518263ffffffff1660e01b8152600401610e7a9190612b21565b602060405180830381865af4158015610e97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ebb9190612289565b9050838015610ecd5750818360400151145b8015610edc5750808360600151145b610f1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1290612bae565b60405180910390fd5b505050505050505050565b60606000838581518110610f3d57610f3c612553565b5b602002602001015160600151610f74578480610f58906125ef565b95506040518060200160405280600081525090915091506111c8565b610fe683858781518110610f8b57610f8a612553565b5b602002602001015160200151868881518110610faa57610fa9612553565b5b60200260200101516040015160200151878981518110610fcd57610fcc612553565b5b602002602001015160400151600001518a60001b610caa565b6000848680610ff4906125ef565b97508151811061100757611006612553565b5b6020026020010151604001516000015160001c905060018082160361118957866040516020016110379190612bce565b6040516020818303038152906040528051906020012060001c9650600181901c67ffffffffffffffff8111156110705761106f6115dd565b5b6040519080825280601f01601f1916602001820160405280156110a25781602001600182028036833780820191505090505b50925060005b835181101561117c5761112f858789815181106110c8576110c7612553565b5b602002602001015160200151888a815181106110e7576110e6612553565b5b60200260200101516040015160200151898b8151811061110a57611109612553565b5b602002602001015160400151600001518c80611125906125ef565b9d5060001b610caa565b60208161113c9190612be9565b9050600086888061114c906125ef565b99508151811061115f5761115e612553565b5b6020026020010151604001516000015190508082860152506110a8565b83879350935050506111c8565b6000600160ff8316901c90506111c0826040516020016111a9919061226e565b604051602081830303815290604052600083611297565b879350935050505b94509492505050565b6060600060e08560f81c1690506000601f8660f81c169050600060ff168260ff160361121e57848160ff168151811061120d5761120c612553565b5b602002602001015192505050611290565b602060ff168260ff160361125357838160ff168151811061124257611241612553565b5b602002602001015192505050611290565b816040517fb378b6d40000000000000000000000000000000000000000000000000000000081526004016112879190612c2c565b60405180910390fd5b9392505050565b6060835182846112a79190612be9565b11156112e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112df90612c93565b60405180910390fd5b60008267ffffffffffffffff811115611304576113036115dd565b5b6040519080825280601f01601f1916602001820160405280156113365781602001600182028036833780820191505090505b50905060005b838110156113bc578585826113519190612be9565b8151811061136257611361612553565b5b602001015160f81c60f81b8282815181106113805761137f612553565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808060010191505061133c565b50809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006113f3826113c8565b9050919050565b611403816113e8565b82525050565b600060208201905061141e60008301846113fa565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561148a57808201518184015260208101905061146f565b60008484015250505050565b6000601f19601f8301169050919050565b60006114b282611450565b6114bc818561145b565b93506114cc81856020860161146c565b6114d581611496565b840191505092915050565b60006114ec83836114a7565b905092915050565b6000602082019050919050565b600061150c82611424565b611516818561142f565b93508360208202850161152885611440565b8060005b85811015611564578484038952815161154585826114e0565b9450611550836114f4565b925060208a0199505060018101905061152c565b50829750879550505050505092915050565b600060208201905081810360008301526115908184611501565b905092915050565b6000604051905090565b600080fd5b600080fd5b6115b5816113e8565b81146115c057600080fd5b50565b6000813590506115d2816115ac565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61161582611496565b810181811067ffffffffffffffff82111715611634576116336115dd565b5b80604052505050565b6000611647611598565b9050611653828261160c565b919050565b600067ffffffffffffffff821115611673576116726115dd565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b61169c81611689565b81146116a757600080fd5b50565b6000813590506116b981611693565b92915050565b60006116d26116cd84611658565b61163d565b905080838252602082019050602084028301858111156116f5576116f4611684565b5b835b8181101561171e578061170a88826116aa565b8452602084019350506020810190506116f7565b5050509392505050565b600082601f83011261173d5761173c6115d8565b5b813561174d8482602086016116bf565b91505092915050565b600067ffffffffffffffff821115611771576117706115dd565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff8211156117a2576117a16115dd565b5b6117ab82611496565b9050602081019050919050565b82818337600083830152505050565b60006117da6117d584611787565b61163d565b9050828152602081018484840111156117f6576117f5611782565b5b6118018482856117b8565b509392505050565b600082601f83011261181e5761181d6115d8565b5b813561182e8482602086016117c7565b91505092915050565b600061184a61184584611756565b61163d565b9050808382526020820190506020840283018581111561186d5761186c611684565b5b835b818110156118b457803567ffffffffffffffff811115611892576118916115d8565b5b80860161189f8982611809565b8552602085019450505060208101905061186f565b5050509392505050565b600082601f8301126118d3576118d26115d8565b5b81356118e3848260208601611837565b91505092915050565b6000819050919050565b6118ff816118ec565b811461190a57600080fd5b50565b60008135905061191c816118f6565b92915050565b600080600080600060a0868803121561193e5761193d6115a2565b5b600061194c888289016115c3565b955050602086013567ffffffffffffffff81111561196d5761196c6115a7565b5b61197988828901611728565b945050604086013567ffffffffffffffff81111561199a576119996115a7565b5b6119a6888289016118be565b935050606086013567ffffffffffffffff8111156119c7576119c66115a7565b5b6119d388828901611809565b92505060806119e48882890161190d565b9150509295509295909350565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b6000611a4482611a1d565b611a4e8185611a28565b9350611a5e81856020860161146c565b611a6781611496565b840191505092915050565b6000611a7e8383611a39565b905092915050565b6000602082019050919050565b6000611a9e826119f1565b611aa881856119fc565b935083602082028501611aba85611a0d565b8060005b85811015611af65784840389528151611ad78582611a72565b9450611ae283611a86565b925060208a01995050600181019050611abe565b50829750879550505050505092915050565b60006020820190508181036000830152611b228184611a93565b905092915050565b600060208284031215611b4057611b3f6115a2565b5b6000611b4e8482850161190d565b91505092915050565b600082825260208201905092915050565b6000611b7382611450565b611b7d8185611b57565b9350611b8d81856020860161146c565b611b9681611496565b840191505092915050565b60006020820190508181036000830152611bbb8184611b68565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c0a57607f821691505b602082108103611c1d57611c1c611bc3565b5b50919050565b600081519050611c32816118f6565b92915050565b600080fd5b600080fd5b600081519050611c51816115ac565b92915050565b6000611c6a611c6584611787565b61163d565b905082815260208101848484011115611c8657611c85611782565b5b611c9184828561146c565b509392505050565b600082601f830112611cae57611cad6115d8565b5b8151611cbe848260208601611c57565b91505092915050565b6000611cda611cd584611756565b61163d565b90508083825260208201905060208402830185811115611cfd57611cfc611684565b5b835b81811015611d4457805167ffffffffffffffff811115611d2257611d216115d8565b5b808601611d2f8982611c99565b85526020850194505050602081019050611cff565b5050509392505050565b600082601f830112611d6357611d626115d8565b5b8151611d73848260208601611cc7565b91505092915050565b600060408284031215611d9257611d91611c38565b5b611d9c604061163d565b9050600082015167ffffffffffffffff811115611dbc57611dbb611c3d565b5b611dc884828501611c99565b600083015250602082015167ffffffffffffffff811115611dec57611deb611c3d565b5b611df884828501611d4e565b60208301525092915050565b600060608284031215611e1a57611e19611c38565b5b611e24606061163d565b90506000611e3484828501611c42565b6000830152506020611e4884828501611c23565b602083015250604082015167ffffffffffffffff811115611e6c57611e6b611c3d565b5b611e7884828501611d7c565b60408301525092915050565b600067ffffffffffffffff821115611e9f57611e9e6115dd565b5b602082029050602081019050919050565b600081519050611ebf81611693565b92915050565b600060408284031215611edb57611eda611c38565b5b611ee5604061163d565b90506000611ef584828501611eb0565b600083015250602082015167ffffffffffffffff811115611f1957611f18611c3d565b5b611f2584828501611d4e565b60208301525092915050565b60008115159050919050565b611f4681611f31565b8114611f5157600080fd5b50565b600081519050611f6381611f3d565b92915050565b600060808284031215611f7f57611f7e611c38565b5b611f89608061163d565b90506000611f9984828501611eb0565b6000830152506020611fad84828501611c23565b602083015250604082015167ffffffffffffffff811115611fd157611fd0611c3d565b5b611fdd84828501611ec5565b6040830152506060611ff184828501611f54565b60608301525092915050565b600061201061200b84611e84565b61163d565b9050808382526020820190506020840283018581111561203357612032611684565b5b835b8181101561207a57805167ffffffffffffffff811115612058576120576115d8565b5b8086016120658982611f69565b85526020850194505050602081019050612035565b5050509392505050565b600082601f830112612099576120986115d8565b5b81516120a9848260208601611ffd565b91505092915050565b6000806000606084860312156120cb576120ca6115a2565b5b60006120d986828701611c23565b935050602084015167ffffffffffffffff8111156120fa576120f96115a7565b5b61210686828701611e04565b925050604084015167ffffffffffffffff811115612127576121266115a7565b5b61213386828701612084565b9150509250925092565b600060208284031215612153576121526115a2565b5b600061216184828501611c23565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006121a4826118ec565b91506121af836118ec565b92508282039050818111156121c7576121c661216a565b5b92915050565b7f4c696e656153706172736550726f6f6656657269666965723a20626c6f636b2060008201527f6e6f7420696e2072616e67652061636365707465640000000000000000000000602082015250565b6000612229603583611b57565b9150612234826121cd565b604082019050919050565b600060208201905081810360008301526122588161221c565b9050919050565b612268816118ec565b82525050565b6000602082019050612283600083018461225f565b92915050565b60006020828403121561229f5761229e6115a2565b5b60006122ad84828501611eb0565b91505092915050565b7f4c696e656153706172736550726f6f6656657269666965723a20696e76616c6960008201527f6420737461746520726f6f740000000000000000000000000000000000000000602082015250565b6000612312602c83611b57565b915061231d826122b6565b604082019050919050565b6000602082019050818103600083015261234181612305565b9050919050565b7f4c696e656150726f6f6648656c7065723a20636f6d6d616e6473206e756d626560008201527f72203e2073746f726167652070726f6f6673206e756d62657200000000000000602082015250565b60006123a4603983611b57565b91506123af82612348565b604082019050919050565b600060208201905081810360008301526123d381612397565b9050919050565b600082825260208201905092915050565b60006123f682611a1d565b61240081856123da565b935061241081856020860161146c565b61241981611496565b840191505092915050565b6000602082019050818103600083015261243e81846123eb565b905092915050565b600067ffffffffffffffff82169050919050565b61246381612446565b811461246e57600080fd5b50565b6000815190506124808161245a565b92915050565b600060c0828403121561249c5761249b611c38565b5b6124a660c061163d565b905060006124b684828501612471565b60008301525060206124ca84828501611c23565b60208301525060406124de84828501611eb0565b60408301525060606124f284828501611eb0565b606083015250608061250684828501611eb0565b60808301525060a061251a84828501612471565b60a08301525092915050565b600060c0828403121561253c5761253b6115a2565b5b600061254a84828501612486565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600060ff82169050919050565b6000819050919050565b60006125be6125b96125b484612582565b612599565b61258c565b9050919050565b6125ce816125a3565b82525050565b60006020820190506125e960008301846125c5565b92915050565b60006125fa826118ec565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361262c5761262b61216a565b5b600182019050919050565b61264081611689565b82525050565b600060208201905061265b6000830184612637565b92915050565b60006080828403121561267757612676611c38565b5b612681608061163d565b9050600061269184828501611c23565b60008301525060206126a584828501611c23565b60208301525060406126b984828501611eb0565b60408301525060606126cd84828501611eb0565b60608301525092915050565b6000608082840312156126ef576126ee6115a2565b5b60006126fd84828501612661565b91505092915050565b7f4c696e656150726f6f6648656c7065723a2077726f6e67207461726765740000600082015250565b600061273c601e83611b57565b915061274782612706565b602082019050919050565b6000602082019050818103600083015261276b8161272f565b9050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061279f82611a1d565b6127a98185612783565b93506127b981856020860161146c565b6127c281611496565b840191505092915050565b60006127d98383612794565b905092915050565b60006127ec826119f1565b6127f68185612772565b93508360208202850161280885611a0d565b8060005b85811015612844578484038952815161282585826127cd565b945061283083611a86565b925060208a0199505060018101905061280c565b50829750879550505050505092915050565b61285f816118ec565b82525050565b61286e81611689565b82525050565b6000606082019050818103600083015261288e81866127e1565b905061289d6020830185612856565b6128aa6040830184612865565b949350505050565b6000602082840312156128c8576128c76115a2565b5b60006128d684828501611f54565b91505092915050565b7f4c696e656150726f6f6648656c7065723a20696e76616c6964206163636f756e60008201527f742070726f6f6600000000000000000000000000000000000000000000000000602082015250565b600061293b602783611b57565b9150612946826128df565b604082019050919050565b6000602082019050818103600083015261296a8161292e565b9050919050565b7f4669727374207061746820656c656d656e74206d75737420626520333220627960008201527f7465730000000000000000000000000000000000000000000000000000000000602082015250565b60006129cd602383611b57565b91506129d882612971565b604082019050919050565b600060208201905081810360008301526129fc816129c0565b9050919050565b6000819050602082019050919050565b6000612a1f8251611689565b80915050919050565b600082821b905092915050565b6000612a4082611a1d565b82612a4a84612a03565b9050612a5581612a13565b92506020821015612a9557612a907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802612a28565b831692505b5050919050565b600081905092915050565b6000612ab282611a1d565b612abc8185612a9c565b9350612acc81856020860161146c565b80840191505092915050565b6000819050919050565b612af3612aee826118ec565b612ad8565b82525050565b6000612b058285612aa7565b9150612b118284612ae2565b6020820191508190509392505050565b6000602082019050612b366000830184612865565b92915050565b7f4c696e656150726f6f6648656c7065723a20696e76616c69642073746f72616760008201527f652070726f6f6600000000000000000000000000000000000000000000000000602082015250565b6000612b98602783611b57565b9150612ba382612b3c565b604082019050919050565b60006020820190508181036000830152612bc781612b8b565b9050919050565b6000612bda8284612ae2565b60208201915081905092915050565b6000612bf4826118ec565b9150612bff836118ec565b9250828201905080821115612c1757612c1661216a565b5b92915050565b612c268161258c565b82525050565b6000602082019050612c416000830184612c1d565b92915050565b7f736c69636542797465733a206f7574206f662072616e67650000000000000000600082015250565b6000612c7d601883611b57565b9150612c8882612c47565b602082019050919050565b60006020820190508181036000830152612cac81612c70565b905091905056fea2646970667358221220f5ed6c78b94227e6c6feac9d1baaa09bca365defc8b6ccf9ef98484e0f0bf47464736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA183BADA EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0xB50F2FBC EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0xC51CA02A EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0xF36C452E EQ PUSH2 0xBD JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x1409 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77 PUSH2 0x113 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x1576 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1922 JUMP JUMPDEST PUSH2 0x1EC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB4 SWAP2 SWAP1 PUSH2 0x1B08 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xD7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD2 SWAP2 SWAP1 PUSH2 0x1B2A JUMP JUMPDEST PUSH2 0x40A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE4 SWAP2 SWAP1 PUSH2 0x1BA1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x1E3 JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD DUP1 SLOAD PUSH2 0x156 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x182 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1CF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1A4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1CF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1B2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x137 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x207 SWAP2 SWAP1 PUSH2 0x20B2 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x695378F5 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x27C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2A0 SWAP2 SWAP1 PUSH2 0x213D JUMP JUMPDEST SWAP1 POP DUP6 DUP2 GT ISZERO DUP1 ISZERO PUSH2 0x2B2 JUMPI POP DUP1 DUP5 GT ISZERO JUMPDEST DUP1 PUSH2 0x2C8 JUMPI POP DUP6 DUP2 PUSH2 0x2C4 SWAP2 SWAP1 PUSH2 0x2199 JUMP JUMPDEST DUP5 LT ISZERO JUMPDEST PUSH2 0x307 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2FE SWAP1 PUSH2 0x223F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8BE745D1 DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x364 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x381 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3A5 SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 SHL DUP2 SUB PUSH2 0x3EC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E3 SWAP1 PUSH2 0x2328 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3FA DUP12 DUP12 DUP12 DUP5 DUP9 DUP9 PUSH2 0x4B6 JUMP JUMPDEST SWAP6 POP POP POP POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x41A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP1 POP DUP1 SLOAD PUSH2 0x435 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x461 SWAP1 PUSH2 0x1BF2 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4AE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x483 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4AE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x491 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x60 DUP2 MLOAD DUP7 MLOAD GT ISZERO PUSH2 0x4FD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F4 SWAP1 PUSH2 0x23BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x508 DUP8 DUP5 DUP7 PUSH2 0x843 JUMP JUMPDEST POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x60F0F00F DUP6 PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x54A SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0xC0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x567 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x2526 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP8 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5AA JUMPI PUSH2 0x5A9 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5DD JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x5C8 JUMPI SWAP1 POP JUMPDEST POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP9 MLOAD DUP2 LT ISZERO PUSH2 0x836 JUMPI PUSH1 0x0 DUP10 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x601 JUMPI PUSH2 0x600 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x619 DUP4 DUP13 DUP10 PUSH2 0xB38 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x7F7 JUMPI DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x635 JUMPI PUSH2 0x634 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0x697 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x657 SWAP2 SWAP1 PUSH2 0x25D4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x679 JUMPI PUSH2 0x678 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP DUP5 DUP1 PUSH2 0x68F SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP6 POP POP PUSH2 0x7F2 JUMP JUMPDEST PUSH2 0x709 DUP7 DUP10 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x6AE JUMPI PUSH2 0x6AD PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP11 DUP9 DUP2 MLOAD DUP2 LT PUSH2 0x6CD JUMPI PUSH2 0x6CC PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP12 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0x6F0 JUMPI PUSH2 0x6EF PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST DUP8 DUP6 DUP1 PUSH2 0x715 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP7 POP DUP2 MLOAD DUP2 LT PUSH2 0x728 JUMPI PUSH2 0x727 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x748 SWAP2 SWAP1 PUSH2 0x2646 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x76A JUMPI PUSH2 0x769 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x20 DUP8 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0x78A JUMPI PUSH2 0x789 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD MLOAD GT ISZERO PUSH2 0x7F1 JUMPI DUP7 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x7AC JUMPI PUSH2 0x7AB PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD MLOAD PUSH1 0x40 MLOAD PUSH32 0x54D0209100000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7E8 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x826 JUMP JUMPDEST PUSH2 0x803 DUP2 DUP7 DUP11 DUP10 PUSH2 0xF26 JUMP JUMPDEST DUP9 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x816 JUMPI PUSH2 0x815 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP8 POP DUP3 SWAP1 MSTORE POP POP JUMPDEST POP POP POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x5E3 JUMP JUMPDEST POP POP POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x0 PUSH4 0xB893E579 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x871 SWAP2 SWAP1 PUSH2 0x1409 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x89C SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x8B9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8DD SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x5EA5A98F DUP7 PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x29 DUP2 MLOAD DUP2 LT PUSH2 0x917 JUMPI PUSH2 0x916 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x93B SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x958 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x97C SWAP2 SWAP1 PUSH2 0x26D9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x40 ADD MLOAD SWAP1 POP DUP1 DUP4 EQ PUSH2 0x9C9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9C0 SWAP1 PUSH2 0x2752 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xCC5C21EA DUP9 PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA12 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2874 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xA2F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA53 SWAP2 SWAP1 PUSH2 0x28B2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x8C628E40 DUP10 PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA96 SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xAB3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP DUP2 DUP1 ISZERO PUSH2 0xAE9 JUMPI POP DUP1 DUP5 PUSH1 0x60 ADD MLOAD EQ JUMPDEST PUSH2 0xB28 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB1F SWAP1 PUSH2 0x2951 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 SWAP6 POP POP POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 PUSH1 0x0 PUSH1 0x20 DUP2 LT PUSH2 0xB51 JUMPI PUSH2 0xB50 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 AND PUSH1 0xFF AND EQ ISZERO SWAP3 POP PUSH1 0x0 PUSH2 0xB8B DUP8 PUSH1 0x1 PUSH1 0x20 DUP2 LT PUSH2 0xB80 JUMPI PUSH2 0xB7F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL DUP8 DUP8 PUSH2 0x11D1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 MLOAD EQ PUSH2 0xBD1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC8 SWAP1 PUSH2 0x29E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH2 0xBDB SWAP1 PUSH2 0x2A35 JUMP JUMPDEST PUSH1 0x0 SHR SWAP3 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x20 DUP2 LT DUP1 ISZERO PUSH2 0xC33 JUMPI POP PUSH1 0xFF PUSH1 0xF8 SHL DUP9 DUP3 PUSH1 0x20 DUP2 LT PUSH2 0xC0A JUMPI PUSH2 0xC09 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ ISZERO JUMPDEST ISZERO PUSH2 0xC9F JUMPI PUSH1 0x0 PUSH2 0xC5B DUP10 DUP4 PUSH1 0x20 DUP2 LT PUSH2 0xC50 JUMPI PUSH2 0xC4F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST BYTE PUSH1 0xF8 SHL DUP10 DUP10 PUSH2 0x11D1 JUMP JUMPDEST SWAP1 POP DUP1 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC70 SWAP3 SWAP2 SWAP1 PUSH2 0x2AF9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x0 SHR SWAP5 POP POP DUP1 DUP1 PUSH2 0xC97 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE7 JUMP JUMPDEST POP POP POP SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xCC5C21EA DUP6 DUP8 DUP10 PUSH1 0x40 ADD MLOAD PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCEB SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2874 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xD08 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xD2C SWAP2 SWAP1 PUSH2 0x28B2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0x5EA5A98F DUP7 PUSH1 0x29 DUP2 MLOAD DUP2 LT PUSH2 0xD5E JUMPI PUSH2 0xD5D PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD82 SWAP2 SWAP1 PUSH2 0x2424 JUMP JUMPDEST PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xD9F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xDC3 SWAP2 SWAP1 PUSH2 0x26D9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xCEEEF504 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDFE SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE1B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE3F SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xCEEEF504 DUP8 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE7A SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE97 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEBB SWAP2 SWAP1 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP DUP4 DUP1 ISZERO PUSH2 0xECD JUMPI POP DUP2 DUP4 PUSH1 0x40 ADD MLOAD EQ JUMPDEST DUP1 ISZERO PUSH2 0xEDC JUMPI POP DUP1 DUP4 PUSH1 0x60 ADD MLOAD EQ JUMPDEST PUSH2 0xF1B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF12 SWAP1 PUSH2 0x2BAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP4 DUP6 DUP2 MLOAD DUP2 LT PUSH2 0xF3D JUMPI PUSH2 0xF3C PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0xF74 JUMPI DUP5 DUP1 PUSH2 0xF58 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP6 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 SWAP2 POP SWAP2 POP PUSH2 0x11C8 JUMP JUMPDEST PUSH2 0xFE6 DUP4 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0xF8B JUMPI PUSH2 0xF8A PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP7 DUP9 DUP2 MLOAD DUP2 LT PUSH2 0xFAA JUMPI PUSH2 0xFA9 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP8 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0xFCD JUMPI PUSH2 0xFCC PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP11 PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x0 DUP5 DUP7 DUP1 PUSH2 0xFF4 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP8 POP DUP2 MLOAD DUP2 LT PUSH2 0x1007 JUMPI PUSH2 0x1006 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH1 0x0 SHR SWAP1 POP PUSH1 0x1 DUP1 DUP3 AND SUB PUSH2 0x1189 JUMPI DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1037 SWAP2 SWAP1 PUSH2 0x2BCE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x0 SHR SWAP7 POP PUSH1 0x1 DUP2 SWAP1 SHR PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1070 JUMPI PUSH2 0x106F PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x10A2 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x117C JUMPI PUSH2 0x112F DUP6 DUP8 DUP10 DUP2 MLOAD DUP2 LT PUSH2 0x10C8 JUMPI PUSH2 0x10C7 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD DUP9 DUP11 DUP2 MLOAD DUP2 LT PUSH2 0x10E7 JUMPI PUSH2 0x10E6 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x20 ADD MLOAD DUP10 DUP12 DUP2 MLOAD DUP2 LT PUSH2 0x110A JUMPI PUSH2 0x1109 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD DUP13 DUP1 PUSH2 0x1125 SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP14 POP PUSH1 0x0 SHL PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x20 DUP2 PUSH2 0x113C SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 DUP9 DUP1 PUSH2 0x114C SWAP1 PUSH2 0x25EF JUMP JUMPDEST SWAP10 POP DUP2 MLOAD DUP2 LT PUSH2 0x115F JUMPI PUSH2 0x115E PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 ADD MLOAD PUSH1 0x0 ADD MLOAD SWAP1 POP DUP1 DUP3 DUP7 ADD MSTORE POP PUSH2 0x10A8 JUMP JUMPDEST DUP4 DUP8 SWAP4 POP SWAP4 POP POP POP PUSH2 0x11C8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0xFF DUP4 AND SWAP1 SHR SWAP1 POP PUSH2 0x11C0 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x11A9 SWAP2 SWAP1 PUSH2 0x226E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x0 DUP4 PUSH2 0x1297 JUMP JUMPDEST DUP8 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0xE0 DUP6 PUSH1 0xF8 SHR AND SWAP1 POP PUSH1 0x0 PUSH1 0x1F DUP7 PUSH1 0xF8 SHR AND SWAP1 POP PUSH1 0x0 PUSH1 0xFF AND DUP3 PUSH1 0xFF AND SUB PUSH2 0x121E JUMPI DUP5 DUP2 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x120D JUMPI PUSH2 0x120C PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP3 POP POP POP PUSH2 0x1290 JUMP JUMPDEST PUSH1 0x20 PUSH1 0xFF AND DUP3 PUSH1 0xFF AND SUB PUSH2 0x1253 JUMPI DUP4 DUP2 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1242 JUMPI PUSH2 0x1241 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP3 POP POP POP PUSH2 0x1290 JUMP JUMPDEST DUP2 PUSH1 0x40 MLOAD PUSH32 0xB378B6D400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1287 SWAP2 SWAP1 PUSH2 0x2C2C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x12A7 SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST GT ISZERO PUSH2 0x12E8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12DF SWAP1 PUSH2 0x2C93 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1304 JUMPI PUSH2 0x1303 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1336 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x13BC JUMPI DUP6 DUP6 DUP3 PUSH2 0x1351 SWAP2 SWAP1 PUSH2 0x2BE9 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x1362 JUMPI PUSH2 0x1361 PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1380 JUMPI PUSH2 0x137F PUSH2 0x2553 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x133C JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13F3 DUP3 PUSH2 0x13C8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1403 DUP2 PUSH2 0x13E8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x141E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x13FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x148A JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x146F JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14B2 DUP3 PUSH2 0x1450 JUMP JUMPDEST PUSH2 0x14BC DUP2 DUP6 PUSH2 0x145B JUMP JUMPDEST SWAP4 POP PUSH2 0x14CC DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x14D5 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14EC DUP4 DUP4 PUSH2 0x14A7 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150C DUP3 PUSH2 0x1424 JUMP JUMPDEST PUSH2 0x1516 DUP2 DUP6 PUSH2 0x142F JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1528 DUP6 PUSH2 0x1440 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1564 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1545 DUP6 DUP3 PUSH2 0x14E0 JUMP JUMPDEST SWAP5 POP PUSH2 0x1550 DUP4 PUSH2 0x14F4 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x152C JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1590 DUP2 DUP5 PUSH2 0x1501 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x15B5 DUP2 PUSH2 0x13E8 JUMP JUMPDEST DUP2 EQ PUSH2 0x15C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x15D2 DUP2 PUSH2 0x15AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1615 DUP3 PUSH2 0x1496 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1634 JUMPI PUSH2 0x1633 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1647 PUSH2 0x1598 JUMP JUMPDEST SWAP1 POP PUSH2 0x1653 DUP3 DUP3 PUSH2 0x160C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1673 JUMPI PUSH2 0x1672 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x169C DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x16B9 DUP2 PUSH2 0x1693 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16D2 PUSH2 0x16CD DUP5 PUSH2 0x1658 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x16F5 JUMPI PUSH2 0x16F4 PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x171E JUMPI DUP1 PUSH2 0x170A DUP9 DUP3 PUSH2 0x16AA JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x16F7 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x173D JUMPI PUSH2 0x173C PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x174D DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x16BF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1771 JUMPI PUSH2 0x1770 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x17A2 JUMPI PUSH2 0x17A1 PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH2 0x17AB DUP3 PUSH2 0x1496 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17DA PUSH2 0x17D5 DUP5 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x17F6 JUMPI PUSH2 0x17F5 PUSH2 0x1782 JUMP JUMPDEST JUMPDEST PUSH2 0x1801 DUP5 DUP3 DUP6 PUSH2 0x17B8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x181E JUMPI PUSH2 0x181D PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x182E DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x17C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x184A PUSH2 0x1845 DUP5 PUSH2 0x1756 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x186D JUMPI PUSH2 0x186C PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x18B4 JUMPI DUP1 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1892 JUMPI PUSH2 0x1891 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x189F DUP10 DUP3 PUSH2 0x1809 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x186F JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x18D3 JUMPI PUSH2 0x18D2 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x18E3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1837 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x18FF DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP2 EQ PUSH2 0x190A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x191C DUP2 PUSH2 0x18F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x193E JUMPI PUSH2 0x193D PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x194C DUP9 DUP3 DUP10 ADD PUSH2 0x15C3 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x196D JUMPI PUSH2 0x196C PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x1979 DUP9 DUP3 DUP10 ADD PUSH2 0x1728 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x199A JUMPI PUSH2 0x1999 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x19A6 DUP9 DUP3 DUP10 ADD PUSH2 0x18BE JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x19C7 JUMPI PUSH2 0x19C6 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x19D3 DUP9 DUP3 DUP10 ADD PUSH2 0x1809 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x19E4 DUP9 DUP3 DUP10 ADD PUSH2 0x190D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A44 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x1A4E DUP2 DUP6 PUSH2 0x1A28 JUMP JUMPDEST SWAP4 POP PUSH2 0x1A5E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x1A67 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A7E DUP4 DUP4 PUSH2 0x1A39 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A9E DUP3 PUSH2 0x19F1 JUMP JUMPDEST PUSH2 0x1AA8 DUP2 DUP6 PUSH2 0x19FC JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1ABA DUP6 PUSH2 0x1A0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1AF6 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1AD7 DUP6 DUP3 PUSH2 0x1A72 JUMP JUMPDEST SWAP5 POP PUSH2 0x1AE2 DUP4 PUSH2 0x1A86 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1ABE JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1B22 DUP2 DUP5 PUSH2 0x1A93 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B40 JUMPI PUSH2 0x1B3F PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B4E DUP5 DUP3 DUP6 ADD PUSH2 0x190D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B73 DUP3 PUSH2 0x1450 JUMP JUMPDEST PUSH2 0x1B7D DUP2 DUP6 PUSH2 0x1B57 JUMP JUMPDEST SWAP4 POP PUSH2 0x1B8D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x1B96 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1BBB DUP2 DUP5 PUSH2 0x1B68 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1C0A JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1C1D JUMPI PUSH2 0x1C1C PUSH2 0x1BC3 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C32 DUP2 PUSH2 0x18F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C51 DUP2 PUSH2 0x15AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C6A PUSH2 0x1C65 DUP5 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C86 JUMPI PUSH2 0x1C85 PUSH2 0x1782 JUMP JUMPDEST JUMPDEST PUSH2 0x1C91 DUP5 DUP3 DUP6 PUSH2 0x146C JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CAE JUMPI PUSH2 0x1CAD PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1CBE DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C57 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1CDA PUSH2 0x1CD5 DUP5 PUSH2 0x1756 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x1CFD JUMPI PUSH2 0x1CFC PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1D44 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D22 JUMPI PUSH2 0x1D21 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x1D2F DUP10 DUP3 PUSH2 0x1C99 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1CFF JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1D63 JUMPI PUSH2 0x1D62 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1D73 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1CC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D92 JUMPI PUSH2 0x1D91 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1D9C PUSH1 0x40 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DBC JUMPI PUSH2 0x1DBB PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1DC8 DUP5 DUP3 DUP6 ADD PUSH2 0x1C99 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DEC JUMPI PUSH2 0x1DEB PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1DF8 DUP5 DUP3 DUP6 ADD PUSH2 0x1D4E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1E1A JUMPI PUSH2 0x1E19 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1E24 PUSH1 0x60 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E34 DUP5 DUP3 DUP6 ADD PUSH2 0x1C42 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1E48 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E6C JUMPI PUSH2 0x1E6B PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1E78 DUP5 DUP3 DUP6 ADD PUSH2 0x1D7C JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1E9F JUMPI PUSH2 0x1E9E PUSH2 0x15DD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1EBF DUP2 PUSH2 0x1693 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1EDB JUMPI PUSH2 0x1EDA PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1EE5 PUSH1 0x40 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1EF5 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1F19 JUMPI PUSH2 0x1F18 PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1F25 DUP5 DUP3 DUP6 ADD PUSH2 0x1D4E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1F46 DUP2 PUSH2 0x1F31 JUMP JUMPDEST DUP2 EQ PUSH2 0x1F51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F63 DUP2 PUSH2 0x1F3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F7F JUMPI PUSH2 0x1F7E PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x1F89 PUSH1 0x80 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F99 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1FAD DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1FD1 JUMPI PUSH2 0x1FD0 PUSH2 0x1C3D JUMP JUMPDEST JUMPDEST PUSH2 0x1FDD DUP5 DUP3 DUP6 ADD PUSH2 0x1EC5 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1FF1 DUP5 DUP3 DUP6 ADD PUSH2 0x1F54 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2010 PUSH2 0x200B DUP5 PUSH2 0x1E84 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2033 JUMPI PUSH2 0x2032 PUSH2 0x1684 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x207A JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2058 JUMPI PUSH2 0x2057 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x2065 DUP10 DUP3 PUSH2 0x1F69 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2035 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2099 JUMPI PUSH2 0x2098 PUSH2 0x15D8 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x20A9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x20CB JUMPI PUSH2 0x20CA PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x20D9 DUP7 DUP3 DUP8 ADD PUSH2 0x1C23 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20FA JUMPI PUSH2 0x20F9 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x2106 DUP7 DUP3 DUP8 ADD PUSH2 0x1E04 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2127 JUMPI PUSH2 0x2126 PUSH2 0x15A7 JUMP JUMPDEST JUMPDEST PUSH2 0x2133 DUP7 DUP3 DUP8 ADD PUSH2 0x2084 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2153 JUMPI PUSH2 0x2152 PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2161 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21A4 DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH2 0x21AF DUP4 PUSH2 0x18EC JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x21C7 JUMPI PUSH2 0x21C6 PUSH2 0x216A JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656153706172736550726F6F6656657269666965723A20626C6F636B20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E6F7420696E2072616E67652061636365707465640000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2229 PUSH1 0x35 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2234 DUP3 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2258 DUP2 PUSH2 0x221C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2268 DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2283 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x225F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x229F JUMPI PUSH2 0x229E PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22AD DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656153706172736550726F6F6656657269666965723A20696E76616C69 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6420737461746520726F6F740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2312 PUSH1 0x2C DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x231D DUP3 PUSH2 0x22B6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2341 DUP2 PUSH2 0x2305 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20636F6D6D616E6473206E756D6265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72203E2073746F726167652070726F6F6673206E756D62657200000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23A4 PUSH1 0x39 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x23AF DUP3 PUSH2 0x2348 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x23D3 DUP2 PUSH2 0x2397 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23F6 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x2400 DUP2 DUP6 PUSH2 0x23DA JUMP JUMPDEST SWAP4 POP PUSH2 0x2410 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x2419 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x243E DUP2 DUP5 PUSH2 0x23EB JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2463 DUP2 PUSH2 0x2446 JUMP JUMPDEST DUP2 EQ PUSH2 0x246E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2480 DUP2 PUSH2 0x245A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x249C JUMPI PUSH2 0x249B PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x24A6 PUSH1 0xC0 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x24B6 DUP5 DUP3 DUP6 ADD PUSH2 0x2471 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x24CA DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x24DE DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x24F2 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x2506 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x251A DUP5 DUP3 DUP6 ADD PUSH2 0x2471 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x253C JUMPI PUSH2 0x253B PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x254A DUP5 DUP3 DUP6 ADD PUSH2 0x2486 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25BE PUSH2 0x25B9 PUSH2 0x25B4 DUP5 PUSH2 0x2582 JUMP JUMPDEST PUSH2 0x2599 JUMP JUMPDEST PUSH2 0x258C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25CE DUP2 PUSH2 0x25A3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25E9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x25C5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25FA DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x262C JUMPI PUSH2 0x262B PUSH2 0x216A JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2640 DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x265B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2637 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2677 JUMPI PUSH2 0x2676 PUSH2 0x1C38 JUMP JUMPDEST JUMPDEST PUSH2 0x2681 PUSH1 0x80 PUSH2 0x163D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2691 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x26A5 DUP5 DUP3 DUP6 ADD PUSH2 0x1C23 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x26B9 DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x26CD DUP5 DUP3 DUP6 ADD PUSH2 0x1EB0 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x26EF JUMPI PUSH2 0x26EE PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x26FD DUP5 DUP3 DUP6 ADD PUSH2 0x2661 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A2077726F6E67207461726765740000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x273C PUSH1 0x1E DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2747 DUP3 PUSH2 0x2706 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x276B DUP2 PUSH2 0x272F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x279F DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x27A9 DUP2 DUP6 PUSH2 0x2783 JUMP JUMPDEST SWAP4 POP PUSH2 0x27B9 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST PUSH2 0x27C2 DUP2 PUSH2 0x1496 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27D9 DUP4 DUP4 PUSH2 0x2794 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27EC DUP3 PUSH2 0x19F1 JUMP JUMPDEST PUSH2 0x27F6 DUP2 DUP6 PUSH2 0x2772 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2808 DUP6 PUSH2 0x1A0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x2844 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x2825 DUP6 DUP3 PUSH2 0x27CD JUMP JUMPDEST SWAP5 POP PUSH2 0x2830 DUP4 PUSH2 0x1A86 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x280C JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x285F DUP2 PUSH2 0x18EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x286E DUP2 PUSH2 0x1689 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x288E DUP2 DUP7 PUSH2 0x27E1 JUMP JUMPDEST SWAP1 POP PUSH2 0x289D PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2856 JUMP JUMPDEST PUSH2 0x28AA PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x2865 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x28C8 JUMPI PUSH2 0x28C7 PUSH2 0x15A2 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x28D6 DUP5 DUP3 DUP6 ADD PUSH2 0x1F54 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20696E76616C6964206163636F756E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x742070726F6F6600000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x293B PUSH1 0x27 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2946 DUP3 PUSH2 0x28DF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x296A DUP2 PUSH2 0x292E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4669727374207061746820656C656D656E74206D757374206265203332206279 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7465730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29CD PUSH1 0x23 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x29D8 DUP3 PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29FC DUP2 PUSH2 0x29C0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A1F DUP3 MLOAD PUSH2 0x1689 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A40 DUP3 PUSH2 0x1A1D JUMP JUMPDEST DUP3 PUSH2 0x2A4A DUP5 PUSH2 0x2A03 JUMP JUMPDEST SWAP1 POP PUSH2 0x2A55 DUP2 PUSH2 0x2A13 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A90 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x2A28 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AB2 DUP3 PUSH2 0x1A1D JUMP JUMPDEST PUSH2 0x2ABC DUP2 DUP6 PUSH2 0x2A9C JUMP JUMPDEST SWAP4 POP PUSH2 0x2ACC DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x146C JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2AF3 PUSH2 0x2AEE DUP3 PUSH2 0x18EC JUMP JUMPDEST PUSH2 0x2AD8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B05 DUP3 DUP6 PUSH2 0x2AA7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B11 DUP3 DUP5 PUSH2 0x2AE2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2865 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4C696E656150726F6F6648656C7065723A20696E76616C69642073746F726167 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x652070726F6F6600000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B98 PUSH1 0x27 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2BA3 DUP3 PUSH2 0x2B3C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2BC7 DUP2 PUSH2 0x2B8B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BDA DUP3 DUP5 PUSH2 0x2AE2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BF4 DUP3 PUSH2 0x18EC JUMP JUMPDEST SWAP2 POP PUSH2 0x2BFF DUP4 PUSH2 0x18EC JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2C17 JUMPI PUSH2 0x2C16 PUSH2 0x216A JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2C26 DUP2 PUSH2 0x258C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2C41 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2C1D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x736C69636542797465733A206F7574206F662072616E67650000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C7D PUSH1 0x18 DUP4 PUSH2 0x1B57 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C88 DUP3 PUSH2 0x2C47 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2CAC DUP2 PUSH2 0x2C70 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CREATE2 0xED PUSH13 0x78B94227E6C6FEAC9D1BAAA09B 0xCA CALLDATASIZE TSTORE 0xEF 0xC8 0xB6 0xCC 0xF9 0xEF SWAP9 BASEFEE 0x4E 0xF SIGNEXTEND DELEGATECALL PUSH21 0x64736F6C6343000819003300000000000000000000 ", + "sourceMap": "397:1789:4:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;487:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2076:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;634:1436;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;453:28;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;487:22;;;;;;;;;;;;;:::o;2076:108::-;2131:15;2165:12;2158:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2076:108;:::o;634:1436::-;854:21;901:15;930:38;982:41;1064:5;1036:116;;;;;;;;;;;;:::i;:::-;887:265;;;;;;1260:28;1299:7;;;;;;;;;;;1291:37;;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1260:70;;1386:26;1362:20;:50;;:101;;;;;1443:20;1432:7;:31;;1362:101;1361:185;;;;1519:26;1496:20;:49;;;;:::i;:::-;1485:7;:60;;1361:185;1340:285;;;;;;;;;;;;:::i;:::-;;;;;;;;;1636:17;1664:7;;;;;;;;;;;1656:32;;;1689:7;1656:41;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1636:61;;1749:1;1741:10;;1728:9;:23;1707:114;;;;;;;;;;;;:::i;:::-;;;;;;;;;1851:212;1902:6;1926:8;1952:9;1979;2006:12;2036:13;1851:33;:212::i;:::-;1832:231;;;;;;;634:1436;;;;;;;:::o;453:28::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6110:2023:3:-;6384:21;6457:13;:20;6438:8;:15;:39;;6417:143;;;;;;;;;;;;:::i;:::-;;;;;;;;;6570:51;6589:6;6597:12;6611:9;6570:18;:51::i;:::-;;6631:40;6674:17;:28;6716:12;:18;;;:24;;;6674:76;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6631:119;;6760:16;6811:8;:15;6799:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6790:37;;6842:9;6837:1290;6861:8;:15;6857:1;:19;6837:1290;;;6897:15;6915:8;6924:1;6915:11;;;;;;;;:::i;:::-;;;;;;;;6897:29;;6941:14;6957:12;6973:106;7007:7;7032:9;7059:6;6973:16;:106::i;:::-;6940:139;;;;7098:9;7093:1024;;7132:13;7146:8;7132:23;;;;;;;;:::i;:::-;;;;;;;;:35;;;7127:760;;7214:1;7203:13;;;;;;;;:::i;:::-;;;;;;;;;;;;;7191:6;7198:1;7191:9;;;;;;;;:::i;:::-;;;;;;;:25;;;;7238:10;;;;;:::i;:::-;;;;7127:760;;;7295:305;7339:7;7372:13;7386:8;7372:23;;;;;;;;:::i;:::-;;;;;;;;:33;;;7431:13;7445:8;7431:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:47;;;7504:13;7518:8;7504:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:35;;;7573:4;7565:13;;7295:18;:305::i;:::-;7671:13;7685:10;;;;;:::i;:::-;;;7671:25;;;;;;;;:::i;:::-;;;;;;;;:31;;;:37;;;7635:95;;;;;;;;:::i;:::-;;;;;;;;;;;;;7623:6;7630:1;7623:9;;;;;;;;:::i;:::-;;;;;;;:107;;;;7776:2;7757:6;7764:1;7757:9;;;;;;;;:::i;:::-;;;;;;;;:16;:21;7753:116;;;7829:6;7836:1;7829:9;;;;;;;;:::i;:::-;;;;;;;;:16;7813:33;;;;;;;;;;;:::i;:::-;;;;;;;;7753:116;7127:760;7093:1024;;;7949:153;7986:4;8012:8;8042:13;8077:7;7949:15;:153::i;:::-;7926:6;7933:1;7926:9;;;;;;;;:::i;:::-;;;;;;;7925:177;;;;;;;;7093:1024;6883:1244;;;6878:3;;;;;;;6837:1290;;;;6407:1726;;6110:2023;;;;;;;;:::o;4076:1135::-;4231:4;4341:18;4362:17;:26;4400:6;4389:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;4362:46;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4341:67;;4418:41;4462:17;:25;4501:12;:18;;;:36;;;156:2;4501:53;;;;;;;;:::i;:::-;;;;;;;;4462:102;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4418:146;;4574:12;4589:11;:16;;;4574:31;;4638:4;4624:10;:18;4616:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;4733:25;4761:17;:29;4804:12;:18;;;:36;;;4854:12;:22;;;4890:9;4761:148;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4733:176;;4920:21;4944:17;:34;4992:12;:18;;;:24;;;4944:82;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4920:106;;5058:20;:59;;;;;5104:13;5082:11;:18;;;:35;5058:59;5037:145;;;;;;;;;;;;:::i;:::-;;;;;;;;;5200:4;5193:11;;;;;;;4076:1135;;;;;:::o;1226:765::-;1370:14;1386:12;1410:11;1430:7;1438:1;1430:10;;;;;;;:::i;:::-;;;;;1424:17;;1410:31;;1489:1;620:4;1464:5;:20;1463:27;;;;1451:39;;1501:21;1525:47;1542:7;1550:1;1542:10;;;;;;;:::i;:::-;;;;;1554:9;1565:6;1525:16;:47::i;:::-;1501:71;;1609:2;1590:8;:15;:21;1582:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1684:8;1676:17;;;:::i;:::-;1668:26;;1661:33;;1710:9;1722:1;1710:13;;1705:280;1729:2;1725:1;:6;:28;;;;;1749:4;1735:18;;:7;1743:1;1735:10;;;;;;;:::i;:::-;;;;;:18;;;;;1725:28;1705:280;;;1774:18;1795:109;1829:7;1837:1;1829:10;;;;;;;:::i;:::-;;;;;1857:9;1884:6;1795:16;:109::i;:::-;1774:130;;1960:5;1967:4;1943:29;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1933:40;;;;;;1925:49;;1918:56;;1760:225;1755:3;;;;;:::i;:::-;;;;1705:280;;;;1400:591;;1226:765;;;;;;:::o;5217:887::-;5425:25;5453:17;:29;5496:5;5515:9;5538:7;:19;;;5453:114;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5425:142;;5578:41;5622:17;:25;5661:5;156:2;5661:22;;;;;;;;:::i;:::-;;;;;;;;5622:71;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5578:115;;5730:12;5745:17;:34;5780:3;5745:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5730:54;;5831:14;5848:17;:34;5883:5;5848:41;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5831:58;;5920:20;:64;;;;;5980:4;5960:11;:16;;;:24;5920:64;:112;;;;;6026:6;6004:11;:18;;;:28;5920:112;5899:198;;;;;;;;;;;;:::i;:::-;;;;;;;;;5415:689;;;;5217:887;;;;;:::o;1997:1677::-;2199:18;2219:19;2255:13;2269:8;2255:23;;;;;;;;:::i;:::-;;;;;;;;:35;;;2250:90;;2318:10;;;;;:::i;:::-;;;2306:23;;;;;;;;;;;;;;;;;;;2250:90;2349:233;2381:7;2402:13;2416:8;2402:23;;;;;;;;:::i;:::-;;;;;;;;:33;;;2449:13;2463:8;2449:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:47;;;2510:13;2524:8;2510:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:35;;;2567:4;2559:13;;2349:18;:233::i;:::-;2592:18;2621:13;2635:10;;;;;:::i;:::-;;;2621:25;;;;;;;;:::i;:::-;;;;;;;;:31;;;:37;;;2613:46;;2592:67;;2694:4;2686;2673:10;:17;:25;2669:999;;2841:4;2824:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;2814:33;;;;;;2806:42;;2799:49;;2894:1;2880:10;:15;;2870:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2862:34;;2910:11;2935:535;2948:5;:12;2942:3;:18;2935:535;;;2980:283;3020:7;3049:13;3063:8;3049:23;;;;;;;;:::i;:::-;;;;;;;;:33;;;3104:13;3118:8;3104:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:47;;;3173:13;3187:8;3173:23;;;;;;;;:::i;:::-;;;;;;;;:29;;;:35;;;3238:6;;;;;:::i;:::-;;;3230:15;;2980:18;:283::i;:::-;3288:2;3281:9;;;;;:::i;:::-;;;3308:12;3323:13;3337:10;;;;;:::i;:::-;;;3323:25;;;;;;;;:::i;:::-;;;;;;;;:31;;;:37;;;3308:52;;3433:4;3427:3;3420:5;3416:15;3409:29;3387:69;2935:535;;;3491:5;3498:8;3483:24;;;;;;;;2669:999;3538:14;3578:1;3569:4;3556:10;:17;3555:24;;3538:41;;3601:45;3623:10;3612:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;3636:1;3639:6;3601:10;:45::i;:::-;3648:8;3593:64;;;;;;1997:1677;;;;;;;;:::o;732:488::-;877:12;901;935:4;922:9;916:16;;:23;901:38;;949:13;984:4;971:9;965:16;;:23;949:39;;550:4;1003:21;;:6;:21;;;999:215;;1047:9;1057:7;1047:18;;;;;;;;;;:::i;:::-;;;;;;;;1040:25;;;;;;999:215;584:4;1086:20;;:6;:20;;;1082:132;;1129:6;1136:7;1129:15;;;;;;;;;;:::i;:::-;;;;;;;;1122:22;;;;;;1082:132;1196:6;1182:21;;;;;;;;;;;:::i;:::-;;;;;;;;732:488;;;;;;:::o;3680:390::-;3801:12;3851:4;:11;3841:6;3833:5;:14;;;;:::i;:::-;:29;;3825:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;3902:19;3934:6;3924:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3902:39;;3956:9;3951:89;3975:6;3971:1;:10;3951:89;;;4014:4;4023:5;4019:1;:9;;;;:::i;:::-;4014:15;;;;;;;;:::i;:::-;;;;;;;;;;4002:6;4009:1;4002:9;;;;;;;;:::i;:::-;;;;;:27;;;;;;;;;;;3983:3;;;;;;;3951:89;;;;4057:6;4050:13;;;3680:390;;;;;:::o;7:126:74:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;593:124::-;670:6;704:5;698:12;688:22;;593:124;;;:::o;723:194::-;832:11;866:6;861:3;854:19;906:4;901:3;897:14;882:29;;723:194;;;;:::o;923:142::-;1000:4;1023:3;1015:11;;1053:4;1048:3;1044:14;1036:22;;923:142;;;:::o;1071:99::-;1123:6;1157:5;1151:12;1141:22;;1071:99;;;:::o;1176:159::-;1250:11;1284:6;1279:3;1272:19;1324:4;1319:3;1315:14;1300:29;;1176:159;;;;:::o;1341:248::-;1423:1;1433:113;1447:6;1444:1;1441:13;1433:113;;;1532:1;1527:3;1523:11;1517:18;1513:1;1508:3;1504:11;1497:39;1469:2;1466:1;1462:10;1457:15;;1433:113;;;1580:1;1571:6;1566:3;1562:16;1555:27;1403:186;1341:248;;;:::o;1595:102::-;1636:6;1687:2;1683:7;1678:2;1671:5;1667:14;1663:28;1653:38;;1595:102;;;:::o;1703:357::-;1781:3;1809:39;1842:5;1809:39;:::i;:::-;1864:61;1918:6;1913:3;1864:61;:::i;:::-;1857:68;;1934:65;1992:6;1987:3;1980:4;1973:5;1969:16;1934:65;:::i;:::-;2024:29;2046:6;2024:29;:::i;:::-;2019:3;2015:39;2008:46;;1785:275;1703:357;;;;:::o;2066:196::-;2155:10;2190:66;2252:3;2244:6;2190:66;:::i;:::-;2176:80;;2066:196;;;;:::o;2268:123::-;2348:4;2380;2375:3;2371:14;2363:22;;2268:123;;;:::o;2425:991::-;2564:3;2593:64;2651:5;2593:64;:::i;:::-;2673:96;2762:6;2757:3;2673:96;:::i;:::-;2666:103;;2795:3;2840:4;2832:6;2828:17;2823:3;2819:27;2870:66;2930:5;2870:66;:::i;:::-;2959:7;2990:1;2975:396;3000:6;2997:1;2994:13;2975:396;;;3071:9;3065:4;3061:20;3056:3;3049:33;3122:6;3116:13;3150:84;3229:4;3214:13;3150:84;:::i;:::-;3142:92;;3257:70;3320:6;3257:70;:::i;:::-;3247:80;;3356:4;3351:3;3347:14;3340:21;;3035:336;3022:1;3019;3015:9;3010:14;;2975:396;;;2979:14;3387:4;3380:11;;3407:3;3400:10;;2569:847;;;;;2425:991;;;;:::o;3422:413::-;3585:4;3623:2;3612:9;3608:18;3600:26;;3672:9;3666:4;3662:20;3658:1;3647:9;3643:17;3636:47;3700:128;3823:4;3814:6;3700:128;:::i;:::-;3692:136;;3422:413;;;;:::o;3841:75::-;3874:6;3907:2;3901:9;3891:19;;3841:75;:::o;3922:117::-;4031:1;4028;4021:12;4045:117;4154:1;4151;4144:12;4168:122;4241:24;4259:5;4241:24;:::i;:::-;4234:5;4231:35;4221:63;;4280:1;4277;4270:12;4221:63;4168:122;:::o;4296:139::-;4342:5;4380:6;4367:20;4358:29;;4396:33;4423:5;4396:33;:::i;:::-;4296:139;;;;:::o;4441:117::-;4550:1;4547;4540:12;4564:180;4612:77;4609:1;4602:88;4709:4;4706:1;4699:15;4733:4;4730:1;4723:15;4750:281;4833:27;4855:4;4833:27;:::i;:::-;4825:6;4821:40;4963:6;4951:10;4948:22;4927:18;4915:10;4912:34;4909:62;4906:88;;;4974:18;;:::i;:::-;4906:88;5014:10;5010:2;5003:22;4793:238;4750:281;;:::o;5037:129::-;5071:6;5098:20;;:::i;:::-;5088:30;;5127:33;5155:4;5147:6;5127:33;:::i;:::-;5037:129;;;:::o;5172:311::-;5249:4;5339:18;5331:6;5328:30;5325:56;;;5361:18;;:::i;:::-;5325:56;5411:4;5403:6;5399:17;5391:25;;5471:4;5465;5461:15;5453:23;;5172:311;;;:::o;5489:117::-;5598:1;5595;5588:12;5612:77;5649:7;5678:5;5667:16;;5612:77;;;:::o;5695:122::-;5768:24;5786:5;5768:24;:::i;:::-;5761:5;5758:35;5748:63;;5807:1;5804;5797:12;5748:63;5695:122;:::o;5823:139::-;5869:5;5907:6;5894:20;5885:29;;5923:33;5950:5;5923:33;:::i;:::-;5823:139;;;;:::o;5985:710::-;6081:5;6106:81;6122:64;6179:6;6122:64;:::i;:::-;6106:81;:::i;:::-;6097:90;;6207:5;6236:6;6229:5;6222:21;6270:4;6263:5;6259:16;6252:23;;6323:4;6315:6;6311:17;6303:6;6299:30;6352:3;6344:6;6341:15;6338:122;;;6371:79;;:::i;:::-;6338:122;6486:6;6469:220;6503:6;6498:3;6495:15;6469:220;;;6578:3;6607:37;6640:3;6628:10;6607:37;:::i;:::-;6602:3;6595:50;6674:4;6669:3;6665:14;6658:21;;6545:144;6529:4;6524:3;6520:14;6513:21;;6469:220;;;6473:21;6087:608;;5985:710;;;;;:::o;6718:370::-;6789:5;6838:3;6831:4;6823:6;6819:17;6815:27;6805:122;;6846:79;;:::i;:::-;6805:122;6963:6;6950:20;6988:94;7078:3;7070:6;7063:4;7055:6;7051:17;6988:94;:::i;:::-;6979:103;;6795:293;6718:370;;;;:::o;7094:320::-;7180:4;7270:18;7262:6;7259:30;7256:56;;;7292:18;;:::i;:::-;7256:56;7342:4;7334:6;7330:17;7322:25;;7402:4;7396;7392:15;7384:23;;7094:320;;;:::o;7420:117::-;7529:1;7526;7519:12;7543:307;7604:4;7694:18;7686:6;7683:30;7680:56;;;7716:18;;:::i;:::-;7680:56;7754:29;7776:6;7754:29;:::i;:::-;7746:37;;7838:4;7832;7828:15;7820:23;;7543:307;;;:::o;7856:148::-;7954:6;7949:3;7944;7931:30;7995:1;7986:6;7981:3;7977:16;7970:27;7856:148;;;:::o;8010:423::-;8087:5;8112:65;8128:48;8169:6;8128:48;:::i;:::-;8112:65;:::i;:::-;8103:74;;8200:6;8193:5;8186:21;8238:4;8231:5;8227:16;8276:3;8267:6;8262:3;8258:16;8255:25;8252:112;;;8283:79;;:::i;:::-;8252:112;8373:54;8420:6;8415:3;8410;8373:54;:::i;:::-;8093:340;8010:423;;;;;:::o;8452:338::-;8507:5;8556:3;8549:4;8541:6;8537:17;8533:27;8523:122;;8564:79;;:::i;:::-;8523:122;8681:6;8668:20;8706:78;8780:3;8772:6;8765:4;8757:6;8753:17;8706:78;:::i;:::-;8697:87;;8513:277;8452:338;;;;:::o;8811:942::-;8916:5;8941:90;8957:73;9023:6;8957:73;:::i;:::-;8941:90;:::i;:::-;8932:99;;9051:5;9080:6;9073:5;9066:21;9114:4;9107:5;9103:16;9096:23;;9167:4;9159:6;9155:17;9147:6;9143:30;9196:3;9188:6;9185:15;9182:122;;;9215:79;;:::i;:::-;9182:122;9330:6;9313:434;9347:6;9342:3;9339:15;9313:434;;;9436:3;9423:17;9472:18;9459:11;9456:35;9453:122;;;9494:79;;:::i;:::-;9453:122;9618:11;9610:6;9606:24;9656:46;9698:3;9686:10;9656:46;:::i;:::-;9651:3;9644:59;9732:4;9727:3;9723:14;9716:21;;9389:358;;9373:4;9368:3;9364:14;9357:21;;9313:434;;;9317:21;8922:831;;8811:942;;;;;:::o;9774:388::-;9854:5;9903:3;9896:4;9888:6;9884:17;9880:27;9870:122;;9911:79;;:::i;:::-;9870:122;10028:6;10015:20;10053:103;10152:3;10144:6;10137:4;10129:6;10125:17;10053:103;:::i;:::-;10044:112;;9860:302;9774:388;;;;:::o;10168:77::-;10205:7;10234:5;10223:16;;10168:77;;;:::o;10251:122::-;10324:24;10342:5;10324:24;:::i;:::-;10317:5;10314:35;10304:63;;10363:1;10360;10353:12;10304:63;10251:122;:::o;10379:139::-;10425:5;10463:6;10450:20;10441:29;;10479:33;10506:5;10479:33;:::i;:::-;10379:139;;;;:::o;10524:1527::-;10687:6;10695;10703;10711;10719;10768:3;10756:9;10747:7;10743:23;10739:33;10736:120;;;10775:79;;:::i;:::-;10736:120;10895:1;10920:53;10965:7;10956:6;10945:9;10941:22;10920:53;:::i;:::-;10910:63;;10866:117;11050:2;11039:9;11035:18;11022:32;11081:18;11073:6;11070:30;11067:117;;;11103:79;;:::i;:::-;11067:117;11208:78;11278:7;11269:6;11258:9;11254:22;11208:78;:::i;:::-;11198:88;;10993:303;11363:2;11352:9;11348:18;11335:32;11394:18;11386:6;11383:30;11380:117;;;11416:79;;:::i;:::-;11380:117;11521:87;11600:7;11591:6;11580:9;11576:22;11521:87;:::i;:::-;11511:97;;11306:312;11685:2;11674:9;11670:18;11657:32;11716:18;11708:6;11705:30;11702:117;;;11738:79;;:::i;:::-;11702:117;11843:62;11897:7;11888:6;11877:9;11873:22;11843:62;:::i;:::-;11833:72;;11628:287;11954:3;11981:53;12026:7;12017:6;12006:9;12002:22;11981:53;:::i;:::-;11971:63;;11925:119;10524:1527;;;;;;;;:::o;12057:123::-;12133:6;12167:5;12161:12;12151:22;;12057:123;;;:::o;12186:193::-;12294:11;12328:6;12323:3;12316:19;12368:4;12363:3;12359:14;12344:29;;12186:193;;;;:::o;12385:141::-;12461:4;12484:3;12476:11;;12514:4;12509:3;12505:14;12497:22;;12385:141;;;:::o;12532:98::-;12583:6;12617:5;12611:12;12601:22;;12532:98;;;:::o;12636:158::-;12709:11;12743:6;12738:3;12731:19;12783:4;12778:3;12774:14;12759:29;;12636:158;;;;:::o;12800:353::-;12876:3;12904:38;12936:5;12904:38;:::i;:::-;12958:60;13011:6;13006:3;12958:60;:::i;:::-;12951:67;;13027:65;13085:6;13080:3;13073:4;13066:5;13062:16;13027:65;:::i;:::-;13117:29;13139:6;13117:29;:::i;:::-;13112:3;13108:39;13101:46;;12880:273;12800:353;;;;:::o;13159:192::-;13246:10;13281:64;13341:3;13333:6;13281:64;:::i;:::-;13267:78;;13159:192;;;;:::o;13357:122::-;13436:4;13468;13463:3;13459:14;13451:22;;13357:122;;;:::o;13511:983::-;13648:3;13677:63;13734:5;13677:63;:::i;:::-;13756:95;13844:6;13839:3;13756:95;:::i;:::-;13749:102;;13877:3;13922:4;13914:6;13910:17;13905:3;13901:27;13952:65;14011:5;13952:65;:::i;:::-;14040:7;14071:1;14056:393;14081:6;14078:1;14075:13;14056:393;;;14152:9;14146:4;14142:20;14137:3;14130:33;14203:6;14197:13;14231:82;14308:4;14293:13;14231:82;:::i;:::-;14223:90;;14336:69;14398:6;14336:69;:::i;:::-;14326:79;;14434:4;14429:3;14425:14;14418:21;;14116:333;14103:1;14100;14096:9;14091:14;;14056:393;;;14060:14;14465:4;14458:11;;14485:3;14478:10;;13653:841;;;;;13511:983;;;;:::o;14500:409::-;14661:4;14699:2;14688:9;14684:18;14676:26;;14748:9;14742:4;14738:20;14734:1;14723:9;14719:17;14712:47;14776:126;14897:4;14888:6;14776:126;:::i;:::-;14768:134;;14500:409;;;;:::o;14915:329::-;14974:6;15023:2;15011:9;15002:7;14998:23;14994:32;14991:119;;;15029:79;;:::i;:::-;14991:119;15149:1;15174:53;15219:7;15210:6;15199:9;15195:22;15174:53;:::i;:::-;15164:63;;15120:117;14915:329;;;;:::o;15250:169::-;15334:11;15368:6;15363:3;15356:19;15408:4;15403:3;15399:14;15384:29;;15250:169;;;;:::o;15425:377::-;15513:3;15541:39;15574:5;15541:39;:::i;:::-;15596:71;15660:6;15655:3;15596:71;:::i;:::-;15589:78;;15676:65;15734:6;15729:3;15722:4;15715:5;15711:16;15676:65;:::i;:::-;15766:29;15788:6;15766:29;:::i;:::-;15761:3;15757:39;15750:46;;15517:285;15425:377;;;;:::o;15808:313::-;15921:4;15959:2;15948:9;15944:18;15936:26;;16008:9;16002:4;15998:20;15994:1;15983:9;15979:17;15972:47;16036:78;16109:4;16100:6;16036:78;:::i;:::-;16028:86;;15808:313;;;;:::o;16127:180::-;16175:77;16172:1;16165:88;16272:4;16269:1;16262:15;16296:4;16293:1;16286:15;16313:320;16357:6;16394:1;16388:4;16384:12;16374:22;;16441:1;16435:4;16431:12;16462:18;16452:81;;16518:4;16510:6;16506:17;16496:27;;16452:81;16580:2;16572:6;16569:14;16549:18;16546:38;16543:84;;16599:18;;:::i;:::-;16543:84;16364:269;16313:320;;;:::o;16639:143::-;16696:5;16727:6;16721:13;16712:22;;16743:33;16770:5;16743:33;:::i;:::-;16639:143;;;;:::o;16788:117::-;16897:1;16894;16887:12;16911:117;17020:1;17017;17010:12;17034:143;17091:5;17122:6;17116:13;17107:22;;17138:33;17165:5;17138:33;:::i;:::-;17034:143;;;;:::o;17183:432::-;17271:5;17296:65;17312:48;17353:6;17312:48;:::i;:::-;17296:65;:::i;:::-;17287:74;;17384:6;17377:5;17370:21;17422:4;17415:5;17411:16;17460:3;17451:6;17446:3;17442:16;17439:25;17436:112;;;17467:79;;:::i;:::-;17436:112;17557:52;17602:6;17597:3;17592;17557:52;:::i;:::-;17277:338;17183:432;;;;;:::o;17634:353::-;17700:5;17749:3;17742:4;17734:6;17730:17;17726:27;17716:122;;17757:79;;:::i;:::-;17716:122;17867:6;17861:13;17892:89;17977:3;17969:6;17962:4;17954:6;17950:17;17892:89;:::i;:::-;17883:98;;17706:281;17634:353;;;;:::o;18008:957::-;18124:5;18149:90;18165:73;18231:6;18165:73;:::i;:::-;18149:90;:::i;:::-;18140:99;;18259:5;18288:6;18281:5;18274:21;18322:4;18315:5;18311:16;18304:23;;18375:4;18367:6;18363:17;18355:6;18351:30;18404:3;18396:6;18393:15;18390:122;;;18423:79;;:::i;:::-;18390:122;18538:6;18521:438;18555:6;18550:3;18547:15;18521:438;;;18637:3;18631:10;18673:18;18660:11;18657:35;18654:122;;;18695:79;;:::i;:::-;18654:122;18819:11;18811:6;18807:24;18857:57;18910:3;18898:10;18857:57;:::i;:::-;18852:3;18845:70;18944:4;18939:3;18935:14;18928:21;;18597:362;;18581:4;18576:3;18572:14;18565:21;;18521:438;;;18525:21;18130:835;;18008:957;;;;;:::o;18986:403::-;19077:5;19126:3;19119:4;19111:6;19107:17;19103:27;19093:122;;19134:79;;:::i;:::-;19093:122;19244:6;19238:13;19269:114;19379:3;19371:6;19364:4;19356:6;19352:17;19269:114;:::i;:::-;19260:123;;19083:306;18986:403;;;;:::o;19422:974::-;19511:5;19555:4;19543:9;19538:3;19534:19;19530:30;19527:117;;;19563:79;;:::i;:::-;19527:117;19662:21;19678:4;19662:21;:::i;:::-;19653:30;;19764:1;19753:9;19749:17;19743:24;19794:18;19786:6;19783:30;19780:117;;;19816:79;;:::i;:::-;19780:117;19936:69;20001:3;19992:6;19981:9;19977:22;19936:69;:::i;:::-;19929:4;19922:5;19918:16;19911:95;19693:324;20110:2;20099:9;20095:18;20089:25;20141:18;20133:6;20130:30;20127:117;;;20163:79;;:::i;:::-;20127:117;20283:94;20373:3;20364:6;20353:9;20349:22;20283:94;:::i;:::-;20276:4;20269:5;20265:16;20258:120;20027:362;19422:974;;;;:::o;20435:976::-;20530:5;20574:4;20562:9;20557:3;20553:19;20549:30;20546:117;;;20582:79;;:::i;:::-;20546:117;20681:21;20697:4;20681:21;:::i;:::-;20672:30;;20760:1;20800:60;20856:3;20847:6;20836:9;20832:22;20800:60;:::i;:::-;20793:4;20786:5;20782:16;20775:86;20712:160;20936:2;20977:60;21033:3;21024:6;21013:9;21009:22;20977:60;:::i;:::-;20970:4;20963:5;20959:16;20952:86;20882:167;21130:2;21119:9;21115:18;21109:25;21161:18;21153:6;21150:30;21147:117;;;21183:79;;:::i;:::-;21147:117;21303:89;21388:3;21379:6;21368:9;21364:22;21303:89;:::i;:::-;21296:4;21289:5;21285:16;21278:115;21059:345;20435:976;;;;:::o;21417:346::-;21529:4;21619:18;21611:6;21608:30;21605:56;;;21641:18;;:::i;:::-;21605:56;21691:4;21683:6;21679:17;21671:25;;21751:4;21745;21741:15;21733:23;;21417:346;;;:::o;21769:143::-;21826:5;21857:6;21851:13;21842:22;;21873:33;21900:5;21873:33;:::i;:::-;21769:143;;;;:::o;21945:812::-;22034:5;22078:4;22066:9;22061:3;22057:19;22053:30;22050:117;;;22086:79;;:::i;:::-;22050:117;22185:21;22201:4;22185:21;:::i;:::-;22176:30;;22266:1;22306:60;22362:3;22353:6;22342:9;22338:22;22306:60;:::i;:::-;22299:4;22292:5;22288:16;22281:86;22216:162;22471:2;22460:9;22456:18;22450:25;22502:18;22494:6;22491:30;22488:117;;;22524:79;;:::i;:::-;22488:117;22644:94;22734:3;22725:6;22714:9;22710:22;22644:94;:::i;:::-;22637:4;22630:5;22626:16;22619:120;22388:362;21945:812;;;;:::o;22763:90::-;22797:7;22840:5;22833:13;22826:21;22815:32;;22763:90;;;:::o;22859:116::-;22929:21;22944:5;22929:21;:::i;:::-;22922:5;22919:32;22909:60;;22965:1;22962;22955:12;22909:60;22859:116;:::o;22981:137::-;23035:5;23066:6;23060:13;23051:22;;23082:30;23106:5;23082:30;:::i;:::-;22981:137;;;;:::o;23157:1152::-;23252:5;23296:4;23284:9;23279:3;23275:19;23271:30;23268:117;;;23304:79;;:::i;:::-;23268:117;23403:21;23419:4;23403:21;:::i;:::-;23394:30;;23482:1;23522:60;23578:3;23569:6;23558:9;23554:22;23522:60;:::i;:::-;23515:4;23508:5;23504:16;23497:86;23434:160;23658:2;23699:60;23755:3;23746:6;23735:9;23731:22;23699:60;:::i;:::-;23692:4;23685:5;23681:16;23674:86;23604:167;23852:2;23841:9;23837:18;23831:25;23883:18;23875:6;23872:30;23869:117;;;23905:79;;:::i;:::-;23869:117;24025:89;24110:3;24101:6;24090:9;24086:22;24025:89;:::i;:::-;24018:4;24011:5;24007:16;24000:115;23781:345;24192:2;24233:57;24286:3;24277:6;24266:9;24262:22;24233:57;:::i;:::-;24226:4;24219:5;24215:16;24208:83;24136:166;23157:1152;;;;:::o;24350:1035::-;24492:5;24517:116;24533:99;24625:6;24533:99;:::i;:::-;24517:116;:::i;:::-;24508:125;;24653:5;24682:6;24675:5;24668:21;24716:4;24709:5;24705:16;24698:23;;24769:4;24761:6;24757:17;24749:6;24745:30;24798:3;24790:6;24787:15;24784:122;;;24817:79;;:::i;:::-;24784:122;24932:6;24915:464;24949:6;24944:3;24941:15;24915:464;;;25031:3;25025:10;25067:18;25054:11;25051:35;25048:122;;;25089:79;;:::i;:::-;25048:122;25213:11;25205:6;25201:24;25251:83;25330:3;25318:10;25251:83;:::i;:::-;25246:3;25239:96;25364:4;25359:3;25355:14;25348:21;;24991:388;;24975:4;24970:3;24966:14;24959:21;;24915:464;;;24919:21;24498:887;;24350:1035;;;;;:::o;25426:455::-;25543:5;25592:3;25585:4;25577:6;25573:17;25569:27;25559:122;;25600:79;;:::i;:::-;25559:122;25710:6;25704:13;25735:140;25871:3;25863:6;25856:4;25848:6;25844:17;25735:140;:::i;:::-;25726:149;;25549:332;25426:455;;;;:::o;25887:1159::-;26070:6;26078;26086;26135:2;26123:9;26114:7;26110:23;26106:32;26103:119;;;26141:79;;:::i;:::-;26103:119;26261:1;26286:64;26342:7;26333:6;26322:9;26318:22;26286:64;:::i;:::-;26276:74;;26232:128;26420:2;26409:9;26405:18;26399:25;26451:18;26443:6;26440:30;26437:117;;;26473:79;;:::i;:::-;26437:117;26578:99;26669:7;26660:6;26649:9;26645:22;26578:99;:::i;:::-;26568:109;;26370:317;26747:2;26736:9;26732:18;26726:25;26778:18;26770:6;26767:30;26764:117;;;26800:79;;:::i;:::-;26764:117;26905:124;27021:7;27012:6;27001:9;26997:22;26905:124;:::i;:::-;26895:134;;26697:342;25887:1159;;;;;:::o;27052:351::-;27122:6;27171:2;27159:9;27150:7;27146:23;27142:32;27139:119;;;27177:79;;:::i;:::-;27139:119;27297:1;27322:64;27378:7;27369:6;27358:9;27354:22;27322:64;:::i;:::-;27312:74;;27268:128;27052:351;;;;:::o;27409:180::-;27457:77;27454:1;27447:88;27554:4;27551:1;27544:15;27578:4;27575:1;27568:15;27595:194;27635:4;27655:20;27673:1;27655:20;:::i;:::-;27650:25;;27689:20;27707:1;27689:20;:::i;:::-;27684:25;;27733:1;27730;27726:9;27718:17;;27757:1;27751:4;27748:11;27745:37;;;27762:18;;:::i;:::-;27745:37;27595:194;;;;:::o;27795:240::-;27935:34;27931:1;27923:6;27919:14;27912:58;28004:23;27999:2;27991:6;27987:15;27980:48;27795:240;:::o;28041:366::-;28183:3;28204:67;28268:2;28263:3;28204:67;:::i;:::-;28197:74;;28280:93;28369:3;28280:93;:::i;:::-;28398:2;28393:3;28389:12;28382:19;;28041:366;;;:::o;28413:419::-;28579:4;28617:2;28606:9;28602:18;28594:26;;28666:9;28660:4;28656:20;28652:1;28641:9;28637:17;28630:47;28694:131;28820:4;28694:131;:::i;:::-;28686:139;;28413:419;;;:::o;28838:118::-;28925:24;28943:5;28925:24;:::i;:::-;28920:3;28913:37;28838:118;;:::o;28962:222::-;29055:4;29093:2;29082:9;29078:18;29070:26;;29106:71;29174:1;29163:9;29159:17;29150:6;29106:71;:::i;:::-;28962:222;;;;:::o;29190:351::-;29260:6;29309:2;29297:9;29288:7;29284:23;29280:32;29277:119;;;29315:79;;:::i;:::-;29277:119;29435:1;29460:64;29516:7;29507:6;29496:9;29492:22;29460:64;:::i;:::-;29450:74;;29406:128;29190:351;;;;:::o;29547:231::-;29687:34;29683:1;29675:6;29671:14;29664:58;29756:14;29751:2;29743:6;29739:15;29732:39;29547:231;:::o;29784:366::-;29926:3;29947:67;30011:2;30006:3;29947:67;:::i;:::-;29940:74;;30023:93;30112:3;30023:93;:::i;:::-;30141:2;30136:3;30132:12;30125:19;;29784:366;;;:::o;30156:419::-;30322:4;30360:2;30349:9;30345:18;30337:26;;30409:9;30403:4;30399:20;30395:1;30384:9;30380:17;30373:47;30437:131;30563:4;30437:131;:::i;:::-;30429:139;;30156:419;;;:::o;30581:244::-;30721:34;30717:1;30709:6;30705:14;30698:58;30790:27;30785:2;30777:6;30773:15;30766:52;30581:244;:::o;30831:366::-;30973:3;30994:67;31058:2;31053:3;30994:67;:::i;:::-;30987:74;;31070:93;31159:3;31070:93;:::i;:::-;31188:2;31183:3;31179:12;31172:19;;30831:366;;;:::o;31203:419::-;31369:4;31407:2;31396:9;31392:18;31384:26;;31456:9;31450:4;31446:20;31442:1;31431:9;31427:17;31420:47;31484:131;31610:4;31484:131;:::i;:::-;31476:139;;31203:419;;;:::o;31628:176::-;31719:11;31753:6;31748:3;31741:19;31793:4;31788:3;31784:14;31769:29;;31628:176;;;;:::o;31810:389::-;31904:3;31932:38;31964:5;31932:38;:::i;:::-;31986:78;32057:6;32052:3;31986:78;:::i;:::-;31979:85;;32073:65;32131:6;32126:3;32119:4;32112:5;32108:16;32073:65;:::i;:::-;32163:29;32185:6;32163:29;:::i;:::-;32158:3;32154:39;32147:46;;31908:291;31810:389;;;;:::o;32205:325::-;32324:4;32362:2;32351:9;32347:18;32339:26;;32411:9;32405:4;32401:20;32397:1;32386:9;32382:17;32375:47;32439:84;32518:4;32509:6;32439:84;:::i;:::-;32431:92;;32205:325;;;;:::o;32536:101::-;32572:7;32612:18;32605:5;32601:30;32590:41;;32536:101;;;:::o;32643:120::-;32715:23;32732:5;32715:23;:::i;:::-;32708:5;32705:34;32695:62;;32753:1;32750;32743:12;32695:62;32643:120;:::o;32769:141::-;32825:5;32856:6;32850:13;32841:22;;32872:32;32898:5;32872:32;:::i;:::-;32769:141;;;;:::o;32956:1328::-;33041:5;33085:4;33073:9;33068:3;33064:19;33060:30;33057:117;;;33093:79;;:::i;:::-;33057:117;33192:21;33208:4;33192:21;:::i;:::-;33183:30;;33273:1;33313:59;33368:3;33359:6;33348:9;33344:22;33313:59;:::i;:::-;33306:4;33299:5;33295:16;33288:85;33223:161;33446:2;33487:60;33543:3;33534:6;33523:9;33519:22;33487:60;:::i;:::-;33480:4;33473:5;33469:16;33462:86;33394:165;33625:2;33666:60;33722:3;33713:6;33702:9;33698:22;33666:60;:::i;:::-;33659:4;33652:5;33648:16;33641:86;33569:169;33805:2;33846:60;33902:3;33893:6;33882:9;33878:22;33846:60;:::i;:::-;33839:4;33832:5;33828:16;33821:86;33748:170;33987:3;34029:60;34085:3;34076:6;34065:9;34061:22;34029:60;:::i;:::-;34022:4;34015:5;34011:16;34004:86;33928:173;34164:3;34206:59;34261:3;34252:6;34241:9;34237:22;34206:59;:::i;:::-;34199:4;34192:5;34188:16;34181:85;34111:166;32956:1328;;;;:::o;34290:402::-;34385:6;34434:3;34422:9;34413:7;34409:23;34405:33;34402:120;;;34441:79;;:::i;:::-;34402:120;34561:1;34586:89;34667:7;34658:6;34647:9;34643:22;34586:89;:::i;:::-;34576:99;;34532:153;34290:402;;;;:::o;34698:180::-;34746:77;34743:1;34736:88;34843:4;34840:1;34833:15;34867:4;34864:1;34857:15;34884:85;34929:7;34958:5;34947:16;;34884:85;;;:::o;34975:86::-;35010:7;35050:4;35043:5;35039:16;35028:27;;34975:86;;;:::o;35067:60::-;35095:3;35116:5;35109:12;;35067:60;;;:::o;35133:154::-;35189:9;35222:59;35238:42;35247:32;35273:5;35247:32;:::i;:::-;35238:42;:::i;:::-;35222:59;:::i;:::-;35209:72;;35133:154;;;:::o;35293:143::-;35386:43;35423:5;35386:43;:::i;:::-;35381:3;35374:56;35293:143;;:::o;35442:234::-;35541:4;35579:2;35568:9;35564:18;35556:26;;35592:77;35666:1;35655:9;35651:17;35642:6;35592:77;:::i;:::-;35442:234;;;;:::o;35682:233::-;35721:3;35744:24;35762:5;35744:24;:::i;:::-;35735:33;;35790:66;35783:5;35780:77;35777:103;;35860:18;;:::i;:::-;35777:103;35907:1;35900:5;35896:13;35889:20;;35682:233;;;:::o;35921:118::-;36008:24;36026:5;36008:24;:::i;:::-;36003:3;35996:37;35921:118;;:::o;36045:222::-;36138:4;36176:2;36165:9;36161:18;36153:26;;36189:71;36257:1;36246:9;36242:17;36233:6;36189:71;:::i;:::-;36045:222;;;;:::o;36310:950::-;36392:5;36436:4;36424:9;36419:3;36415:19;36411:30;36408:117;;;36444:79;;:::i;:::-;36408:117;36543:21;36559:4;36543:21;:::i;:::-;36534:30;;36623:1;36663:60;36719:3;36710:6;36699:9;36695:22;36663:60;:::i;:::-;36656:4;36649:5;36645:16;36638:86;36574:161;36794:2;36835:60;36891:3;36882:6;36871:9;36867:22;36835:60;:::i;:::-;36828:4;36821:5;36817:16;36810:86;36745:162;36966:2;37007:60;37063:3;37054:6;37043:9;37039:22;37007:60;:::i;:::-;37000:4;36993:5;36989:16;36982:86;36917:162;37140:2;37181:60;37237:3;37228:6;37217:9;37213:22;37181:60;:::i;:::-;37174:4;37167:5;37163:16;37156:86;37089:164;36310:950;;;;:::o;37266:396::-;37358:6;37407:3;37395:9;37386:7;37382:23;37378:33;37375:120;;;37414:79;;:::i;:::-;37375:120;37534:1;37559:86;37637:7;37628:6;37617:9;37613:22;37559:86;:::i;:::-;37549:96;;37505:150;37266:396;;;;:::o;37668:180::-;37808:32;37804:1;37796:6;37792:14;37785:56;37668:180;:::o;37854:366::-;37996:3;38017:67;38081:2;38076:3;38017:67;:::i;:::-;38010:74;;38093:93;38182:3;38093:93;:::i;:::-;38211:2;38206:3;38202:12;38195:19;;37854:366;;;:::o;38226:419::-;38392:4;38430:2;38419:9;38415:18;38407:26;;38479:9;38473:4;38469:20;38465:1;38454:9;38450:17;38443:47;38507:131;38633:4;38507:131;:::i;:::-;38499:139;;38226:419;;;:::o;38651:201::-;38767:11;38801:6;38796:3;38789:19;38841:4;38836:3;38832:14;38817:29;;38651:201;;;;:::o;38858:166::-;38939:11;38973:6;38968:3;38961:19;39013:4;39008:3;39004:14;38989:29;;38858:166;;;;:::o;39030:369::-;39114:3;39142:38;39174:5;39142:38;:::i;:::-;39196:68;39257:6;39252:3;39196:68;:::i;:::-;39189:75;;39273:65;39331:6;39326:3;39319:4;39312:5;39308:16;39273:65;:::i;:::-;39363:29;39385:6;39363:29;:::i;:::-;39358:3;39354:39;39347:46;;39118:281;39030:369;;;;:::o;39405:208::-;39500:10;39535:72;39603:3;39595:6;39535:72;:::i;:::-;39521:86;;39405:208;;;;:::o;39645:1007::-;39790:3;39819:63;39876:5;39819:63;:::i;:::-;39898:103;39994:6;39989:3;39898:103;:::i;:::-;39891:110;;40027:3;40072:4;40064:6;40060:17;40055:3;40051:27;40102:65;40161:5;40102:65;:::i;:::-;40190:7;40221:1;40206:401;40231:6;40228:1;40225:13;40206:401;;;40302:9;40296:4;40292:20;40287:3;40280:33;40353:6;40347:13;40381:90;40466:4;40451:13;40381:90;:::i;:::-;40373:98;;40494:69;40556:6;40494:69;:::i;:::-;40484:79;;40592:4;40587:3;40583:14;40576:21;;40266:341;40253:1;40250;40246:9;40241:14;;40206:401;;;40210:14;40623:4;40616:11;;40643:3;40636:10;;39795:857;;;;;39645:1007;;;;:::o;40658:126::-;40753:24;40771:5;40753:24;:::i;:::-;40748:3;40741:37;40658:126;;:::o;40790:::-;40885:24;40903:5;40885:24;:::i;:::-;40880:3;40873:37;40790:126;;:::o;40922:661::-;41147:4;41185:2;41174:9;41170:18;41162:26;;41234:9;41228:4;41224:20;41220:1;41209:9;41205:17;41198:47;41262:134;41391:4;41382:6;41262:134;:::i;:::-;41254:142;;41406:80;41482:2;41471:9;41467:18;41458:6;41406:80;:::i;:::-;41496;41572:2;41561:9;41557:18;41548:6;41496:80;:::i;:::-;40922:661;;;;;;:::o;41589:345::-;41656:6;41705:2;41693:9;41684:7;41680:23;41676:32;41673:119;;;41711:79;;:::i;:::-;41673:119;41831:1;41856:61;41909:7;41900:6;41889:9;41885:22;41856:61;:::i;:::-;41846:71;;41802:125;41589:345;;;;:::o;41940:226::-;42080:34;42076:1;42068:6;42064:14;42057:58;42149:9;42144:2;42136:6;42132:15;42125:34;41940:226;:::o;42172:366::-;42314:3;42335:67;42399:2;42394:3;42335:67;:::i;:::-;42328:74;;42411:93;42500:3;42411:93;:::i;:::-;42529:2;42524:3;42520:12;42513:19;;42172:366;;;:::o;42544:419::-;42710:4;42748:2;42737:9;42733:18;42725:26;;42797:9;42791:4;42787:20;42783:1;42772:9;42768:17;42761:47;42825:131;42951:4;42825:131;:::i;:::-;42817:139;;42544:419;;;:::o;42969:222::-;43109:34;43105:1;43097:6;43093:14;43086:58;43178:5;43173:2;43165:6;43161:15;43154:30;42969:222;:::o;43197:366::-;43339:3;43360:67;43424:2;43419:3;43360:67;:::i;:::-;43353:74;;43436:93;43525:3;43436:93;:::i;:::-;43554:2;43549:3;43545:12;43538:19;;43197:366;;;:::o;43569:419::-;43735:4;43773:2;43762:9;43758:18;43750:26;;43822:9;43816:4;43812:20;43808:1;43797:9;43793:17;43786:47;43850:131;43976:4;43850:131;:::i;:::-;43842:139;;43569:419;;;:::o;43994:116::-;44045:4;44068:3;44060:11;;44098:4;44093:3;44089:14;44081:22;;43994:116;;;:::o;44116:154::-;44159:11;44195:29;44219:3;44213:10;44195:29;:::i;:::-;44258:5;44234:29;;44171:99;44116:154;;;:::o;44276:107::-;44320:8;44370:5;44364:4;44360:16;44339:37;;44276:107;;;;:::o;44389:594::-;44473:5;44504:38;44536:5;44504:38;:::i;:::-;44567:5;44594:40;44628:5;44594:40;:::i;:::-;44582:52;;44653:35;44679:8;44653:35;:::i;:::-;44644:44;;44712:2;44704:6;44701:14;44698:278;;;44783:169;44868:66;44838:6;44834:2;44830:15;44827:1;44823:23;44783:169;:::i;:::-;44760:5;44739:227;44730:236;;44698:278;44479:504;;44389:594;;;:::o;44989:147::-;45090:11;45127:3;45112:18;;44989:147;;;;:::o;45142:386::-;45246:3;45274:38;45306:5;45274:38;:::i;:::-;45328:88;45409:6;45404:3;45328:88;:::i;:::-;45321:95;;45425:65;45483:6;45478:3;45471:4;45464:5;45460:16;45425:65;:::i;:::-;45515:6;45510:3;45506:16;45499:23;;45250:278;45142:386;;;;:::o;45534:79::-;45573:7;45602:5;45591:16;;45534:79;;;:::o;45619:157::-;45724:45;45744:24;45762:5;45744:24;:::i;:::-;45724:45;:::i;:::-;45719:3;45712:58;45619:157;;:::o;45782:412::-;45940:3;45962:93;46051:3;46042:6;45962:93;:::i;:::-;45955:100;;46065:75;46136:3;46127:6;46065:75;:::i;:::-;46165:2;46160:3;46156:12;46149:19;;46185:3;46178:10;;45782:412;;;;;:::o;46200:238::-;46301:4;46339:2;46328:9;46324:18;46316:26;;46352:79;46428:1;46417:9;46413:17;46404:6;46352:79;:::i;:::-;46200:238;;;;:::o;46444:226::-;46584:34;46580:1;46572:6;46568:14;46561:58;46653:9;46648:2;46640:6;46636:15;46629:34;46444:226;:::o;46676:366::-;46818:3;46839:67;46903:2;46898:3;46839:67;:::i;:::-;46832:74;;46915:93;47004:3;46915:93;:::i;:::-;47033:2;47028:3;47024:12;47017:19;;46676:366;;;:::o;47048:419::-;47214:4;47252:2;47241:9;47237:18;47229:26;;47301:9;47295:4;47291:20;47287:1;47276:9;47272:17;47265:47;47329:131;47455:4;47329:131;:::i;:::-;47321:139;;47048:419;;;:::o;47473:256::-;47585:3;47600:75;47671:3;47662:6;47600:75;:::i;:::-;47700:2;47695:3;47691:12;47684:19;;47720:3;47713:10;;47473:256;;;;:::o;47735:191::-;47775:3;47794:20;47812:1;47794:20;:::i;:::-;47789:25;;47828:20;47846:1;47828:20;:::i;:::-;47823:25;;47871:1;47868;47864:9;47857:16;;47892:3;47889:1;47886:10;47883:36;;;47899:18;;:::i;:::-;47883:36;47735:191;;;;:::o;47932:112::-;48015:22;48031:5;48015:22;:::i;:::-;48010:3;48003:35;47932:112;;:::o;48050:214::-;48139:4;48177:2;48166:9;48162:18;48154:26;;48190:67;48254:1;48243:9;48239:17;48230:6;48190:67;:::i;:::-;48050:214;;;;:::o;48270:174::-;48410:26;48406:1;48398:6;48394:14;48387:50;48270:174;:::o;48450:366::-;48592:3;48613:67;48677:2;48672:3;48613:67;:::i;:::-;48606:74;;48689:93;48778:3;48689:93;:::i;:::-;48807:2;48802:3;48798:12;48791:19;;48450:366;;;:::o;48822:419::-;48988:4;49026:2;49015:9;49011:18;49003:26;;49075:9;49069:4;49065:20;49061:1;49050:9;49046:17;49039:47;49103:131;49229:4;49103:131;:::i;:::-;49095:139;;48822:419;;;:::o" + }, + "methodIdentifiers": { + "_gatewayURLs(uint256)": "f36c452e", + "_rollup()": "a183bada", + "gatewayURLs()": "b50f2fbc", + "getStorageValues(address,bytes32[],bytes[],bytes,uint256)": "c51ca02a" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"address\",\"name\":\"rollup\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"size\",\"type\":\"uint256\"}],\"name\":\"InvalidSlotSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"UnknownOpcode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"_gatewayURLs\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_rollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gatewayURLs\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32[]\",\"name\":\"commands\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes[]\",\"name\":\"constants\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"acceptedL2BlockRangeLength\",\"type\":\"uint256\"}],\"name\":\"getStorageValues\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol\":\"LineaSparseProofVerifier\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@consensys/linea-state-verifier/contracts/LineaProofHelper.sol\":{\"keccak256\":\"0x3ae8167e864cd8ae1e6804d3555c7df29142d1ae1347d1f74fe0c5dcd44368d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2c1a4d294cbd9bced7e3d42baf8835ef42caf214aaa47d878d1382305ed309e\",\"dweb:/ipfs/QmNU5hMSc5fVdcfMswcTv3MwRTKGg4tffNTJ89HUN9TVW6\"]},\"@consensys/linea-state-verifier/contracts/LineaSparseProofVerifier.sol\":{\"keccak256\":\"0xa689f18e9e208b2d8ecd1d9a9dcb42b1b4aafbf4740114cab9fdfb150994cb47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a11a9c9421d781d8f007d0c8ef2bb7558a8751ef53f6b88f6dc673a1d51574c\",\"dweb:/ipfs/QmRpsUQGNwBgt5arCiqbmT4X7HzWEsWsLV4NTuZdMfFbsP\"]},\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":{\"keccak256\":\"0x7ce398ff779301fa880cfbe0c803f3955c1908cba02948b56e759173ecba0b52\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://25940ab3d3a3cd594bbeff12d43f54a11b389717f463aa0c2f8c505a37947f78\",\"dweb:/ipfs/QmbWz3GYdprM682MeMoXfkK5sDeewbMWhwUQ8sS84EpGBB\"]},\"@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol\":{\"keccak256\":\"0xd7738d73506bffcf02c5e4ce5761e3d429261e5c522c39cf43eb9b6c943154de\",\"license\":\"AGPL-3.0\",\"urls\":[\"bzz-raw://1b7801ce7f2495799c8de31e845f88aebae02226d9dc20e885228c4a22a6b07d\",\"dweb:/ipfs/QmREJ13mkEa4bWgsHvkeh9RW2NyYSn5NbcwKp6Rkk991tF\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/lib/Mimc.sol": { + "Mimc": { + "abi": [ + { + "inputs": [], + "name": "DataIsNotMod32", + "type": "error" + }, + { + "inputs": [], + "name": "DataMissing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "hash", + "outputs": [ + { + "internalType": "bytes32", + "name": "mimcHash", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "6113b1610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c8063aa1e84de1461003a575b600080fd5b610054600480360381019061004f9190611290565b61006a565b60405161006191906112f6565b60405180910390f35b60008083839050036100a8576040517f731eab5700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006020848490506100ba919061134a565b146100f1576040517fc2cab26c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020601f83010460005b8181101561016c5760208102850180356101158186610172565b7f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a11800000000001827f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a118000000000018389080895505050506001810190506100fb565b5061121a565b60007f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a118000000000016000817f0efda9332fcec268a3bbd0567797ce650be481c79da27f58b1a51ada4a91b01483868808089050818182099250818384099250818384099250818183858609099250817f05253862ca9b15c2bd33e1a2b830659b7ae3657aacfa8986eec35d8ec2dd344683868608089050818182099250818384099250818384099250818183858609099250817f0db5be05400d438b9facd4a269a49031e8c7f947887a7c8653aae1675075f08d83868608089050818182099250818384099250818384099250818183858609099250817f07850deb84c4b38c891c03f7acc0f0e0602877a2ae969dcd0b10d7facf26dddb83868608089050818182099250818384099250818384099250818183858609099250817f01c2e148c40ea201b748bee72845b349bfa4a4497837af0d569ae47afc6e424383868608089050818182099250818384099250818384099250818183858609099250817e5a472abfb0d5d4b09a0da6d9d4c7ab93bf68299dc5222dc6ef81407825dba983868608089050818182099250818384099250818384099250818183858609099250817f03b0d15d7b62c8b4cfbce18816baeabb2e3df2d9a731d9d248d2f0498bdec1e483868608089050818182099250818384099250818384099250818183858609099250817f04e8da009db8982a082983402626f1f68655a4a3c83be89c165ba656be14d72683868608089050818182099250818384099250818384099250818183858609099250817f02dcc7fbe0034e4fd51853c69fa7161a043c6757df0b3022fd8628c221b04c0183868608089050818182099250818384099250818384099250818183858609099250817f0ef15ea4cf191c23a6eba0d9f4c6c978a7bb172b196d13438c30c1ce50aeefec83868608089050818182099250818384099250818384099250818183858609099250817f0ddda0ea4d7aeda047f66513386eab0c970ea0f302b6227a1a7e64aef63840e983868608089050818182099250818384099250818384099250818183858609099250817f11c526b58d39911c310b2a808cf84fd690f713c06d4016ff30c05aded412af7a83868608089050818182099250818384099250818384099250818183858609099250817f056b338761a8093e7575ab89a9f375f59c61049079a2e5d1120dbf4adf7a9bb583868608089050818182099250818384099250818384099250818183858609099250817f05fc79e450ea6c00b641fdf50f5ee15c0ec5baf629ccb26d553553adf1792b0083868608089050818182099250818384099250818384099250818183858609099250817f1168acb1e68011e4b6ff861a9f84e4ac38d250941c8536f214a0ce4f68bdb5a383868608089050818182099250818384099250818384099250818183858609099250817f06d4d245e2259b3166774189238cfc1b4ae5defd98f62899f0d846d20a005b9183868608089050818182099250818384099250818384099250818183858609099250817f123313cced613293c40586b110f8e4244cd67cc4380c8f5df4ec60f42216ce2883868608089050818182099250818384099250818384099250818183858609099250817f0acf9981fe2d6f97d7fa27873a0a368c2b19b10d15f2460a59512c4381ca037983868608089050818182099250818384099250818384099250818183858609099250817f011e73f99cc798e236f1fb1f38144984fed0a2cdd836d7860099423cce8c491e83868608089050818182099250818384099250818384099250818183858609099250817f0a8d98d4f22ed367167e54617b0701e64f0f9a4b17e0808eeac420473c18bcbe83868608089050818182099250818384099250818384099250818183858609099250817f0e9d4c3fe8fed7780e4b179314207924caebf54185c786400384a8679b6c725283868608089050818182099250818384099250818384099250818183858609099250817f11d37287b2e163e78261cdcc9e4d723b0a81099340c5cfa245eccfb9ee92014283868608089050818182099250818384099250818384099250818183858609099250817f05b231b706fb2967b2b90bade17c758c62201b5a4e04f020cdf2af76c12422f083868608089050818182099250818384099250818384099250818183858609099250817f0dcfd40018b5bf7bb3397d4ce2a24130ae7d74c41e48f2a25a48132f897a5ac283868608089050818182099250818384099250818384099250818183858609099250817f0534aaf5c42188955008e47ba93e156c7d32406566cb85f6183bf6144d8a3ee283868608089050818182099250818384099250818384099250818183858609099250817f023cd78594054aa62b3292f3429491566819cb081159afef6c0d12a945aa059083868608089050818182099250818384099250818384099250818183858609099250817e7ca89d69ee508f26d2500ece5b01925c9728aef78493806f58a2b807c6da4d83868608089050818182099250818384099250818384099250818183858609099250817f05192bd62077895fa33a95382ba2ea0dd65ed66281c6b7a09acc94003238df3783868608089050818182099250818384099250818384099250818183858609099250817f0d0ead8a1699babd8e6b7e3f3811463e8cfafae1915967ad4342ca59465c401483868608089050818182099250818384099250818384099250818183858609099250817f11c0cabe4b1e2444d8915e6a411908faf20cf1feeb59918abde560595ebb5f4f83868608089050818182099250818384099250818384099250818183858609099250817f0f0c1c73b3c6463138527609f33d4981b21444c39d1f00c172f51c3c9aa4357483868608089050818182099250818384099250818384099250818183858609099250817f0861d628f74762a601963dd1823ed11b9dd2456940b41659ac02fe1232355a6483868608089050818182099250818384099250818384099250818183858609099250817f110df129163a9336afa7b9757f15f300aeb954e92b3af524222b84096d1274fd83868608089050818182099250818384099250818384099250818183858609099250817f04c609941ec5da50d43b8d6d7d45fdd4faa8bb69929fc3337ddfc1bee29f7b9483868608089050818182099250818384099250818384099250818183858609099250817f07a63ade8da839446b58f5d1b7fdc9432dbe55467a2b87c1779e4ce62a59e43283868608089050818182099250818384099250818384099250818183858609099250817f120dbf222fc5d5337f22cfe76ea5597030bc328f5ef7b927678f123be9c2a39483868608089050818182099250818384099250818384099250818183858609099250817f0b33e4820a40248cdbc3c27d7dfab70fd4b31ee9f62b2e1e048e23f9b12d5b7183868608089050818182099250818384099250818384099250818183858609099250817f10b998b32a4e17a795d120a590e238dead3a2761cfcc9cce00b0b5c9a865608683868608089050818182099250818384099250818384099250818183858609099250817f0a98ebc6e3643fb6112262f125da98c0dc9eeb5c5e652716f368cf96b8888ed383868608089050818182099250818384099250818384099250818183858609099250817e06ce51116858059370af176e5d32b99b8fd443d520fe34588c6254df7514f583868608089050818182099250818384099250818384099250818183858609099250817f0b2dddc8994767c7d3632cc7bc089becf8ef3b65540fb4709b8cc78ba12b044b83868608089050818182099250818384099250818384099250818183858609099250817f08837cf3399fbfff03fc2e6cbb1a3b205a5a28757c827730ccd0c2f0c90fff3b83868608089050818182099250818384099250818384099250818183858609099250817f0c238d5f2c384a72477fbdce23d461ad73d4a20f8acb2de069ec6b034b7d8c5483868608089050818182099250818384099250818384099250818183858609099250817f0f0e46c03bd29b0cad6857149959c77f9e4f96c6688d3c2c64e228bcc0893ba483868608089050818182099250818384099250818384099250818183858609099250817f0d7dbd25add9892e2ea8951086a653298f4e4261e6bcdb3d980b9a45c9f4f3a983868608089050818182099250818384099250818384099250818183858609099250817f1197bc33ae17572ff6c8671d7a3a52f761305ba4f3a93c582e95c9f6d21dd60083868608089050818182099250818384099250818384099250818183858609099250817f10c0f787b87b60b08241ca6547299f3afe7d86374858661f3db021676d57356683868608089050818182099250818384099250818384099250818183858609099250817f0d527557a2a71d92e0b0c5230b02b5db478d6abd87d24caee5e9f325efec029883868608089050818182099250818384099250818384099250818183858609099250817f046e586141d405df5efb10855b7ea8009fdac1732b676f90de97a3e65fab3f4283868608089050818182099250818384099250818384099250818183858609099250817f02e91572a13a6baf97560b43b5b862aebd8b7d95c0fda9c097d823cc9ef0599e83868608089050818182099250818384099250818384099250818183858609099250817f0a12c428ae449ef925394565ac50d0adb37e9e48873cf7df892b08a7b5c0287583868608089050818182099250818384099250818384099250818183858609099250817f053d51710289df29fdcd07b74954d10edb2a29ce26f58b0868bfa608b976d16283868608089050818182099250818384099250818384099250818183858609099250817f107983a1ea61c3c634124a87ab1271bc68dbbf1f455033dba37f441e942da24883868608089050818182099250818384099250818384099250818183858609099250817f02f05b8c3d5883d63ad8e0fb9d5dfd79fed0a7476208a11ca79905cf50a8627a83868608089050818182099250818384099250818384099250818183858609099250817f0728f029842765bb9a7b662cc646a328bea710b0def51f6c6a0d8e3ee9286a2f83868608089050818182099250818384099250818384099250818183858609099250817f07aee6d598f4aed60276e302085feae4608f4b249347f581ea9e246aa7b2bd2d83868608089050818182099250818384099250818384099250818183858609099250817f0973293a99aab1398c81147a84d50bfa6aa95c659b7a4a2c153f21a13294caa683868608089050818182099250818384099250818384099250818183858609099250817f0f56f597f2a94ff70aed4abd9b14a863808ecffcd706f566a9065b6bf515cba583868608089050818182099250818384099250818384099250818183858609099250817f08d6e679d99527436d1b27315b5933cf75aaad990d3a2969032bc5595f72ed3783868608089050818182099250818384099250818384099250818183858609099250817f0ecf9edc13aa60341dde23bdadf7a719337256129297b85719cd06d173e5432083868608089050818182099250818384099250818384099250818183858609099250817f0f647c810044463684d83b28b6a17aef6a71db48f9af54c58c9919ded4974d2e83868608089050818182099250818384099250818384099250818183858609099250817f0f63f31b9849bcdbf503fd3b51ab77ca37a73a892a2eb5f9328fd4f2e234d20a83868608089050818182099250818384099250818384099250818183858609099250818484089250505092915050565b5092915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f8401126112505761124f61122b565b5b8235905067ffffffffffffffff81111561126d5761126c611230565b5b60208301915083600182028301111561128957611288611235565b5b9250929050565b600080602083850312156112a7576112a6611221565b5b600083013567ffffffffffffffff8111156112c5576112c4611226565b5b6112d18582860161123a565b92509250509250929050565b6000819050919050565b6112f0816112dd565b82525050565b600060208201905061130b60008301846112e7565b92915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061135582611311565b915061136083611311565b9250826113705761136f61131b565b5b82820690509291505056fea264697066735822122074db2851d2b0457295790992d7e6c3ca2039a4f0df5ac2f267d1a60df290972b64736f6c63430008190033", + "opcodes": "PUSH2 0x13B1 PUSH2 0x52 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x45 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x35 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xAA1E84DE EQ PUSH2 0x3A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x54 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F SWAP2 SWAP1 PUSH2 0x1290 JUMP JUMPDEST PUSH2 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 DUP4 DUP4 SWAP1 POP SUB PUSH2 0xA8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x731EAB5700000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP5 DUP5 SWAP1 POP PUSH2 0xBA SWAP2 SWAP1 PUSH2 0x134A JUMP JUMPDEST EQ PUSH2 0xF1 JUMPI PUSH1 0x40 MLOAD PUSH32 0xC2CAB26C00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x16C JUMPI PUSH1 0x20 DUP2 MUL DUP6 ADD DUP1 CALLDATALOAD PUSH2 0x115 DUP2 DUP7 PUSH2 0x172 JUMP JUMPDEST PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 DUP3 PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 DUP4 DUP10 ADDMOD ADDMOD SWAP6 POP POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xFB JUMP JUMPDEST POP PUSH2 0x121A JUMP JUMPDEST PUSH1 0x0 PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 PUSH1 0x0 DUP2 PUSH32 0xEFDA9332FCEC268A3BBD0567797CE650BE481C79DA27F58B1A51ADA4A91B014 DUP4 DUP7 DUP9 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5253862CA9B15C2BD33E1A2B830659B7AE3657AACFA8986EEC35D8EC2DD3446 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDB5BE05400D438B9FACD4A269A49031E8C7F947887A7C8653AAE1675075F08D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7850DEB84C4B38C891C03F7ACC0F0E0602877A2AE969DCD0B10D7FACF26DDDB DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1C2E148C40EA201B748BEE72845B349BFA4A4497837AF0D569AE47AFC6E4243 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x5A472ABFB0D5D4B09A0DA6D9D4C7AB93BF68299DC5222DC6EF81407825DBA9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x3B0D15D7B62C8B4CFBCE18816BAEABB2E3DF2D9A731D9D248D2F0498BDEC1E4 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x4E8DA009DB8982A082983402626F1F68655A4A3C83BE89C165BA656BE14D726 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2DCC7FBE0034E4FD51853C69FA7161A043C6757DF0B3022FD8628C221B04C01 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xEF15EA4CF191C23A6EBA0D9F4C6C978A7BB172B196D13438C30C1CE50AEEFEC DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDDDA0EA4D7AEDA047F66513386EAB0C970EA0F302B6227A1A7E64AEF63840E9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11C526B58D39911C310B2A808CF84FD690F713C06D4016FF30C05ADED412AF7A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x56B338761A8093E7575AB89A9F375F59C61049079A2E5D1120DBF4ADF7A9BB5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5FC79E450EA6C00B641FDF50F5EE15C0EC5BAF629CCB26D553553ADF1792B00 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1168ACB1E68011E4B6FF861A9F84E4AC38D250941C8536F214A0CE4F68BDB5A3 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x6D4D245E2259B3166774189238CFC1B4AE5DEFD98F62899F0D846D20A005B91 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x123313CCED613293C40586B110F8E4244CD67CC4380C8F5DF4EC60F42216CE28 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xACF9981FE2D6F97D7FA27873A0A368C2B19B10D15F2460A59512C4381CA0379 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11E73F99CC798E236F1FB1F38144984FED0A2CDD836D7860099423CCE8C491E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA8D98D4F22ED367167E54617B0701E64F0F9A4B17E0808EEAC420473C18BCBE DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xE9D4C3FE8FED7780E4B179314207924CAEBF54185C786400384A8679B6C7252 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11D37287B2E163E78261CDCC9E4D723B0A81099340C5CFA245ECCFB9EE920142 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5B231B706FB2967B2B90BADE17C758C62201B5A4E04F020CDF2AF76C12422F0 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDCFD40018B5BF7BB3397D4CE2A24130AE7D74C41E48F2A25A48132F897A5AC2 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x534AAF5C42188955008E47BA93E156C7D32406566CB85F6183BF6144D8A3EE2 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x23CD78594054AA62B3292F3429491566819CB081159AFEF6C0D12A945AA0590 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x7CA89D69EE508F26D2500ECE5B01925C9728AEF78493806F58A2B807C6DA4D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5192BD62077895FA33A95382BA2EA0DD65ED66281C6B7A09ACC94003238DF37 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD0EAD8A1699BABD8E6B7E3F3811463E8CFAFAE1915967AD4342CA59465C4014 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11C0CABE4B1E2444D8915E6A411908FAF20CF1FEEB59918ABDE560595EBB5F4F DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF0C1C73B3C6463138527609F33D4981B21444C39D1F00C172F51C3C9AA43574 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x861D628F74762A601963DD1823ED11B9DD2456940B41659AC02FE1232355A64 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x110DF129163A9336AFA7B9757F15F300AEB954E92B3AF524222B84096D1274FD DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x4C609941EC5DA50D43B8D6D7D45FDD4FAA8BB69929FC3337DDFC1BEE29F7B94 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7A63ADE8DA839446B58F5D1B7FDC9432DBE55467A2B87C1779E4CE62A59E432 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x120DBF222FC5D5337F22CFE76EA5597030BC328F5EF7B927678F123BE9C2A394 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xB33E4820A40248CDBC3C27D7DFAB70FD4B31EE9F62B2E1E048E23F9B12D5B71 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x10B998B32A4E17A795D120A590E238DEAD3A2761CFCC9CCE00B0B5C9A8656086 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA98EBC6E3643FB6112262F125DA98C0DC9EEB5C5E652716F368CF96B8888ED3 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x6CE51116858059370AF176E5D32B99B8FD443D520FE34588C6254DF7514F5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xB2DDDC8994767C7D3632CC7BC089BECF8EF3B65540FB4709B8CC78BA12B044B DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x8837CF3399FBFFF03FC2E6CBB1A3B205A5A28757C827730CCD0C2F0C90FFF3B DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xC238D5F2C384A72477FBDCE23D461AD73D4A20F8ACB2DE069EC6B034B7D8C54 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF0E46C03BD29B0CAD6857149959C77F9E4F96C6688D3C2C64E228BCC0893BA4 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD7DBD25ADD9892E2EA8951086A653298F4E4261E6BCDB3D980B9A45C9F4F3A9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1197BC33AE17572FF6C8671D7A3A52F761305BA4F3A93C582E95C9F6D21DD600 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x10C0F787B87B60B08241CA6547299F3AFE7D86374858661F3DB021676D573566 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD527557A2A71D92E0B0C5230B02B5DB478D6ABD87D24CAEE5E9F325EFEC0298 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x46E586141D405DF5EFB10855B7EA8009FDAC1732B676F90DE97A3E65FAB3F42 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2E91572A13A6BAF97560B43B5B862AEBD8B7D95C0FDA9C097D823CC9EF0599E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA12C428AE449EF925394565AC50D0ADB37E9E48873CF7DF892B08A7B5C02875 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x53D51710289DF29FDCD07B74954D10EDB2A29CE26F58B0868BFA608B976D162 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x107983A1EA61C3C634124A87AB1271BC68DBBF1F455033DBA37F441E942DA248 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2F05B8C3D5883D63AD8E0FB9D5DFD79FED0A7476208A11CA79905CF50A8627A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x728F029842765BB9A7B662CC646A328BEA710B0DEF51F6C6A0D8E3EE9286A2F DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7AEE6D598F4AED60276E302085FEAE4608F4B249347F581EA9E246AA7B2BD2D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x973293A99AAB1398C81147A84D50BFA6AA95C659B7A4A2C153F21A13294CAA6 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF56F597F2A94FF70AED4ABD9B14A863808ECFFCD706F566A9065B6BF515CBA5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x8D6E679D99527436D1B27315B5933CF75AAAD990D3A2969032BC5595F72ED37 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xECF9EDC13AA60341DDE23BDADF7A719337256129297B85719CD06D173E54320 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF647C810044463684D83B28B6A17AEF6A71DB48F9AF54C58C9919DED4974D2E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF63F31B9849BCDBF503FD3B51AB77CA37A73A892A2EB5F9328FD4F2E234D20A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 DUP5 DUP5 ADDMOD SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x1250 JUMPI PUSH2 0x124F PUSH2 0x122B JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x126D JUMPI PUSH2 0x126C PUSH2 0x1230 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x1289 JUMPI PUSH2 0x1288 PUSH2 0x1235 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x12A7 JUMPI PUSH2 0x12A6 PUSH2 0x1221 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x12C5 JUMPI PUSH2 0x12C4 PUSH2 0x1226 JUMP JUMPDEST JUMPDEST PUSH2 0x12D1 DUP6 DUP3 DUP7 ADD PUSH2 0x123A JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12F0 DUP2 PUSH2 0x12DD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x130B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x12E7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1355 DUP3 PUSH2 0x1311 JUMP JUMPDEST SWAP2 POP PUSH2 0x1360 DUP4 PUSH2 0x1311 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1370 JUMPI PUSH2 0x136F PUSH2 0x131B JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH21 0xDB2851D2B0457295790992D7E6C3CA2039A4F0DF5A 0xC2 CALLCODE PUSH8 0xD1A60DF290972B64 PUSH20 0x6F6C634300081900330000000000000000000000 ", + "sourceMap": "846:36408:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@hash_1752": { + "entryPoint": 106, + "id": 1752, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_calldata_ptr": { + "entryPoint": 4666, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes_calldata_ptr": { + "entryPoint": 4752, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack_library": { + "entryPoint": 4839, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed": { + "entryPoint": 4854, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 4829, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 4881, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mod_t_uint256": { + "entryPoint": 4938, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x12": { + "entryPoint": 4891, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { + "entryPoint": 4656, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 4651, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 4661, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 4646, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 4641, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:2714:74", + "nodeType": "YulBlock", + "src": "0:2714:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "669:28:74", + "nodeType": "YulBlock", + "src": "669:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "686:1:74", + "nodeType": "YulLiteral", + "src": "686:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "689:1:74", + "nodeType": "YulLiteral", + "src": "689:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "679:6:74", + "nodeType": "YulIdentifier", + "src": "679:6:74" + }, + "nativeSrc": "679:12:74", + "nodeType": "YulFunctionCall", + "src": "679:12:74" + }, + "nativeSrc": "679:12:74", + "nodeType": "YulExpressionStatement", + "src": "679:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "580:117:74", + "nodeType": "YulFunctionDefinition", + "src": "580:117:74" + }, + { + "body": { + "nativeSrc": "790:478:74", + "nodeType": "YulBlock", + "src": "790:478:74", + "statements": [ + { + "body": { + "nativeSrc": "839:83:74", + "nodeType": "YulBlock", + "src": "839:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "841:77:74", + "nodeType": "YulIdentifier", + "src": "841:77:74" + }, + "nativeSrc": "841:79:74", + "nodeType": "YulFunctionCall", + "src": "841:79:74" + }, + "nativeSrc": "841:79:74", + "nodeType": "YulExpressionStatement", + "src": "841:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "818:6:74", + "nodeType": "YulIdentifier", + "src": "818:6:74" + }, + { + "kind": "number", + "nativeSrc": "826:4:74", + "nodeType": "YulLiteral", + "src": "826:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "814:3:74", + "nodeType": "YulIdentifier", + "src": "814:3:74" + }, + "nativeSrc": "814:17:74", + "nodeType": "YulFunctionCall", + "src": "814:17:74" + }, + { + "name": "end", + "nativeSrc": "833:3:74", + "nodeType": "YulIdentifier", + "src": "833:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "810:3:74", + "nodeType": "YulIdentifier", + "src": "810:3:74" + }, + "nativeSrc": "810:27:74", + "nodeType": "YulFunctionCall", + "src": "810:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "803:6:74", + "nodeType": "YulIdentifier", + "src": "803:6:74" + }, + "nativeSrc": "803:35:74", + "nodeType": "YulFunctionCall", + "src": "803:35:74" + }, + "nativeSrc": "800:122:74", + "nodeType": "YulIf", + "src": "800:122:74" + }, + { + "nativeSrc": "931:30:74", + "nodeType": "YulAssignment", + "src": "931:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "954:6:74", + "nodeType": "YulIdentifier", + "src": "954:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "941:12:74", + "nodeType": "YulIdentifier", + "src": "941:12:74" + }, + "nativeSrc": "941:20:74", + "nodeType": "YulFunctionCall", + "src": "941:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "931:6:74", + "nodeType": "YulIdentifier", + "src": "931:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "1004:83:74", + "nodeType": "YulBlock", + "src": "1004:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "1006:77:74", + "nodeType": "YulIdentifier", + "src": "1006:77:74" + }, + "nativeSrc": "1006:79:74", + "nodeType": "YulFunctionCall", + "src": "1006:79:74" + }, + "nativeSrc": "1006:79:74", + "nodeType": "YulExpressionStatement", + "src": "1006:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "976:6:74", + "nodeType": "YulIdentifier", + "src": "976:6:74" + }, + { + "kind": "number", + "nativeSrc": "984:18:74", + "nodeType": "YulLiteral", + "src": "984:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "973:2:74", + "nodeType": "YulIdentifier", + "src": "973:2:74" + }, + "nativeSrc": "973:30:74", + "nodeType": "YulFunctionCall", + "src": "973:30:74" + }, + "nativeSrc": "970:117:74", + "nodeType": "YulIf", + "src": "970:117:74" + }, + { + "nativeSrc": "1096:29:74", + "nodeType": "YulAssignment", + "src": "1096:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1112:6:74", + "nodeType": "YulIdentifier", + "src": "1112:6:74" + }, + { + "kind": "number", + "nativeSrc": "1120:4:74", + "nodeType": "YulLiteral", + "src": "1120:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1108:3:74", + "nodeType": "YulIdentifier", + "src": "1108:3:74" + }, + "nativeSrc": "1108:17:74", + "nodeType": "YulFunctionCall", + "src": "1108:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "1096:8:74", + "nodeType": "YulIdentifier", + "src": "1096:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "1179:83:74", + "nodeType": "YulBlock", + "src": "1179:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "1181:77:74", + "nodeType": "YulIdentifier", + "src": "1181:77:74" + }, + "nativeSrc": "1181:79:74", + "nodeType": "YulFunctionCall", + "src": "1181:79:74" + }, + "nativeSrc": "1181:79:74", + "nodeType": "YulExpressionStatement", + "src": "1181:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "1144:8:74", + "nodeType": "YulIdentifier", + "src": "1144:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "1158:6:74", + "nodeType": "YulIdentifier", + "src": "1158:6:74" + }, + { + "kind": "number", + "nativeSrc": "1166:4:74", + "nodeType": "YulLiteral", + "src": "1166:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "1154:3:74", + "nodeType": "YulIdentifier", + "src": "1154:3:74" + }, + "nativeSrc": "1154:17:74", + "nodeType": "YulFunctionCall", + "src": "1154:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1140:3:74", + "nodeType": "YulIdentifier", + "src": "1140:3:74" + }, + "nativeSrc": "1140:32:74", + "nodeType": "YulFunctionCall", + "src": "1140:32:74" + }, + { + "name": "end", + "nativeSrc": "1174:3:74", + "nodeType": "YulIdentifier", + "src": "1174:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1137:2:74", + "nodeType": "YulIdentifier", + "src": "1137:2:74" + }, + "nativeSrc": "1137:41:74", + "nodeType": "YulFunctionCall", + "src": "1137:41:74" + }, + "nativeSrc": "1134:128:74", + "nodeType": "YulIf", + "src": "1134:128:74" + } + ] + }, + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "716:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "757:6:74", + "nodeType": "YulTypedName", + "src": "757:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "765:3:74", + "nodeType": "YulTypedName", + "src": "765:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "773:8:74", + "nodeType": "YulTypedName", + "src": "773:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "783:6:74", + "nodeType": "YulTypedName", + "src": "783:6:74", + "type": "" + } + ], + "src": "716:552:74" + }, + { + "body": { + "nativeSrc": "1359:442:74", + "nodeType": "YulBlock", + "src": "1359:442:74", + "statements": [ + { + "body": { + "nativeSrc": "1405:83:74", + "nodeType": "YulBlock", + "src": "1405:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1407:77:74", + "nodeType": "YulIdentifier", + "src": "1407:77:74" + }, + "nativeSrc": "1407:79:74", + "nodeType": "YulFunctionCall", + "src": "1407:79:74" + }, + "nativeSrc": "1407:79:74", + "nodeType": "YulExpressionStatement", + "src": "1407:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1380:7:74", + "nodeType": "YulIdentifier", + "src": "1380:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1389:9:74", + "nodeType": "YulIdentifier", + "src": "1389:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1376:3:74", + "nodeType": "YulIdentifier", + "src": "1376:3:74" + }, + "nativeSrc": "1376:23:74", + "nodeType": "YulFunctionCall", + "src": "1376:23:74" + }, + { + "kind": "number", + "nativeSrc": "1401:2:74", + "nodeType": "YulLiteral", + "src": "1401:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1372:3:74", + "nodeType": "YulIdentifier", + "src": "1372:3:74" + }, + "nativeSrc": "1372:32:74", + "nodeType": "YulFunctionCall", + "src": "1372:32:74" + }, + "nativeSrc": "1369:119:74", + "nodeType": "YulIf", + "src": "1369:119:74" + }, + { + "nativeSrc": "1498:296:74", + "nodeType": "YulBlock", + "src": "1498:296:74", + "statements": [ + { + "nativeSrc": "1513:45:74", + "nodeType": "YulVariableDeclaration", + "src": "1513:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1544:9:74", + "nodeType": "YulIdentifier", + "src": "1544:9:74" + }, + { + "kind": "number", + "nativeSrc": "1555:1:74", + "nodeType": "YulLiteral", + "src": "1555:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1540:3:74", + "nodeType": "YulIdentifier", + "src": "1540:3:74" + }, + "nativeSrc": "1540:17:74", + "nodeType": "YulFunctionCall", + "src": "1540:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1527:12:74", + "nodeType": "YulIdentifier", + "src": "1527:12:74" + }, + "nativeSrc": "1527:31:74", + "nodeType": "YulFunctionCall", + "src": "1527:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1517:6:74", + "nodeType": "YulTypedName", + "src": "1517:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1605:83:74", + "nodeType": "YulBlock", + "src": "1605:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "1607:77:74", + "nodeType": "YulIdentifier", + "src": "1607:77:74" + }, + "nativeSrc": "1607:79:74", + "nodeType": "YulFunctionCall", + "src": "1607:79:74" + }, + "nativeSrc": "1607:79:74", + "nodeType": "YulExpressionStatement", + "src": "1607:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1577:6:74", + "nodeType": "YulIdentifier", + "src": "1577:6:74" + }, + { + "kind": "number", + "nativeSrc": "1585:18:74", + "nodeType": "YulLiteral", + "src": "1585:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1574:2:74", + "nodeType": "YulIdentifier", + "src": "1574:2:74" + }, + "nativeSrc": "1574:30:74", + "nodeType": "YulFunctionCall", + "src": "1574:30:74" + }, + "nativeSrc": "1571:117:74", + "nodeType": "YulIf", + "src": "1571:117:74" + }, + { + "nativeSrc": "1702:82:74", + "nodeType": "YulAssignment", + "src": "1702:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1756:9:74", + "nodeType": "YulIdentifier", + "src": "1756:9:74" + }, + { + "name": "offset", + "nativeSrc": "1767:6:74", + "nodeType": "YulIdentifier", + "src": "1767:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1752:3:74", + "nodeType": "YulIdentifier", + "src": "1752:3:74" + }, + "nativeSrc": "1752:22:74", + "nodeType": "YulFunctionCall", + "src": "1752:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1776:7:74", + "nodeType": "YulIdentifier", + "src": "1776:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "1720:31:74", + "nodeType": "YulIdentifier", + "src": "1720:31:74" + }, + "nativeSrc": "1720:64:74", + "nodeType": "YulFunctionCall", + "src": "1720:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1702:6:74", + "nodeType": "YulIdentifier", + "src": "1702:6:74" + }, + { + "name": "value1", + "nativeSrc": "1710:6:74", + "nodeType": "YulIdentifier", + "src": "1710:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptr", + "nativeSrc": "1274:527:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1321:9:74", + "nodeType": "YulTypedName", + "src": "1321:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1332:7:74", + "nodeType": "YulTypedName", + "src": "1332:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1344:6:74", + "nodeType": "YulTypedName", + "src": "1344:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1352:6:74", + "nodeType": "YulTypedName", + "src": "1352:6:74", + "type": "" + } + ], + "src": "1274:527:74" + }, + { + "body": { + "nativeSrc": "1852:32:74", + "nodeType": "YulBlock", + "src": "1852:32:74", + "statements": [ + { + "nativeSrc": "1862:16:74", + "nodeType": "YulAssignment", + "src": "1862:16:74", + "value": { + "name": "value", + "nativeSrc": "1873:5:74", + "nodeType": "YulIdentifier", + "src": "1873:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1862:7:74", + "nodeType": "YulIdentifier", + "src": "1862:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1807:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1834:5:74", + "nodeType": "YulTypedName", + "src": "1834:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1844:7:74", + "nodeType": "YulTypedName", + "src": "1844:7:74", + "type": "" + } + ], + "src": "1807:77:74" + }, + { + "body": { + "nativeSrc": "1963:53:74", + "nodeType": "YulBlock", + "src": "1963:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1980:3:74", + "nodeType": "YulIdentifier", + "src": "1980:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2003:5:74", + "nodeType": "YulIdentifier", + "src": "2003:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1985:17:74", + "nodeType": "YulIdentifier", + "src": "1985:17:74" + }, + "nativeSrc": "1985:24:74", + "nodeType": "YulFunctionCall", + "src": "1985:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1973:6:74", + "nodeType": "YulIdentifier", + "src": "1973:6:74" + }, + "nativeSrc": "1973:37:74", + "nodeType": "YulFunctionCall", + "src": "1973:37:74" + }, + "nativeSrc": "1973:37:74", + "nodeType": "YulExpressionStatement", + "src": "1973:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "1890:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1951:5:74", + "nodeType": "YulTypedName", + "src": "1951:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1958:3:74", + "nodeType": "YulTypedName", + "src": "1958:3:74", + "type": "" + } + ], + "src": "1890:126:74" + }, + { + "body": { + "nativeSrc": "2128:132:74", + "nodeType": "YulBlock", + "src": "2128:132:74", + "statements": [ + { + "nativeSrc": "2138:26:74", + "nodeType": "YulAssignment", + "src": "2138:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2150:9:74", + "nodeType": "YulIdentifier", + "src": "2150:9:74" + }, + { + "kind": "number", + "nativeSrc": "2161:2:74", + "nodeType": "YulLiteral", + "src": "2161:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2146:3:74", + "nodeType": "YulIdentifier", + "src": "2146:3:74" + }, + "nativeSrc": "2146:18:74", + "nodeType": "YulFunctionCall", + "src": "2146:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2138:4:74", + "nodeType": "YulIdentifier", + "src": "2138:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2226:6:74", + "nodeType": "YulIdentifier", + "src": "2226:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2239:9:74", + "nodeType": "YulIdentifier", + "src": "2239:9:74" + }, + { + "kind": "number", + "nativeSrc": "2250:1:74", + "nodeType": "YulLiteral", + "src": "2250:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2235:3:74", + "nodeType": "YulIdentifier", + "src": "2235:3:74" + }, + "nativeSrc": "2235:17:74", + "nodeType": "YulFunctionCall", + "src": "2235:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "2174:51:74", + "nodeType": "YulIdentifier", + "src": "2174:51:74" + }, + "nativeSrc": "2174:79:74", + "nodeType": "YulFunctionCall", + "src": "2174:79:74" + }, + "nativeSrc": "2174:79:74", + "nodeType": "YulExpressionStatement", + "src": "2174:79:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed", + "nativeSrc": "2022:238:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2100:9:74", + "nodeType": "YulTypedName", + "src": "2100:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2112:6:74", + "nodeType": "YulTypedName", + "src": "2112:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2123:4:74", + "nodeType": "YulTypedName", + "src": "2123:4:74", + "type": "" + } + ], + "src": "2022:238:74" + }, + { + "body": { + "nativeSrc": "2311:32:74", + "nodeType": "YulBlock", + "src": "2311:32:74", + "statements": [ + { + "nativeSrc": "2321:16:74", + "nodeType": "YulAssignment", + "src": "2321:16:74", + "value": { + "name": "value", + "nativeSrc": "2332:5:74", + "nodeType": "YulIdentifier", + "src": "2332:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2321:7:74", + "nodeType": "YulIdentifier", + "src": "2321:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "2266:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2293:5:74", + "nodeType": "YulTypedName", + "src": "2293:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2303:7:74", + "nodeType": "YulTypedName", + "src": "2303:7:74", + "type": "" + } + ], + "src": "2266:77:74" + }, + { + "body": { + "nativeSrc": "2377:152:74", + "nodeType": "YulBlock", + "src": "2377:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2394:1:74", + "nodeType": "YulLiteral", + "src": "2394:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2397:77:74", + "nodeType": "YulLiteral", + "src": "2397:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2387:6:74", + "nodeType": "YulIdentifier", + "src": "2387:6:74" + }, + "nativeSrc": "2387:88:74", + "nodeType": "YulFunctionCall", + "src": "2387:88:74" + }, + "nativeSrc": "2387:88:74", + "nodeType": "YulExpressionStatement", + "src": "2387:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2491:1:74", + "nodeType": "YulLiteral", + "src": "2491:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "2494:4:74", + "nodeType": "YulLiteral", + "src": "2494:4:74", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2484:6:74", + "nodeType": "YulIdentifier", + "src": "2484:6:74" + }, + "nativeSrc": "2484:15:74", + "nodeType": "YulFunctionCall", + "src": "2484:15:74" + }, + "nativeSrc": "2484:15:74", + "nodeType": "YulExpressionStatement", + "src": "2484:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2515:1:74", + "nodeType": "YulLiteral", + "src": "2515:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2518:4:74", + "nodeType": "YulLiteral", + "src": "2518:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2508:6:74", + "nodeType": "YulIdentifier", + "src": "2508:6:74" + }, + "nativeSrc": "2508:15:74", + "nodeType": "YulFunctionCall", + "src": "2508:15:74" + }, + "nativeSrc": "2508:15:74", + "nodeType": "YulExpressionStatement", + "src": "2508:15:74" + } + ] + }, + "name": "panic_error_0x12", + "nativeSrc": "2349:180:74", + "nodeType": "YulFunctionDefinition", + "src": "2349:180:74" + }, + { + "body": { + "nativeSrc": "2569:142:74", + "nodeType": "YulBlock", + "src": "2569:142:74", + "statements": [ + { + "nativeSrc": "2579:25:74", + "nodeType": "YulAssignment", + "src": "2579:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "2602:1:74", + "nodeType": "YulIdentifier", + "src": "2602:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "2584:17:74", + "nodeType": "YulIdentifier", + "src": "2584:17:74" + }, + "nativeSrc": "2584:20:74", + "nodeType": "YulFunctionCall", + "src": "2584:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "2579:1:74", + "nodeType": "YulIdentifier", + "src": "2579:1:74" + } + ] + }, + { + "nativeSrc": "2613:25:74", + "nodeType": "YulAssignment", + "src": "2613:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "2636:1:74", + "nodeType": "YulIdentifier", + "src": "2636:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "2618:17:74", + "nodeType": "YulIdentifier", + "src": "2618:17:74" + }, + "nativeSrc": "2618:20:74", + "nodeType": "YulFunctionCall", + "src": "2618:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "2613:1:74", + "nodeType": "YulIdentifier", + "src": "2613:1:74" + } + ] + }, + { + "body": { + "nativeSrc": "2660:22:74", + "nodeType": "YulBlock", + "src": "2660:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nativeSrc": "2662:16:74", + "nodeType": "YulIdentifier", + "src": "2662:16:74" + }, + "nativeSrc": "2662:18:74", + "nodeType": "YulFunctionCall", + "src": "2662:18:74" + }, + "nativeSrc": "2662:18:74", + "nodeType": "YulExpressionStatement", + "src": "2662:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nativeSrc": "2657:1:74", + "nodeType": "YulIdentifier", + "src": "2657:1:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2650:6:74", + "nodeType": "YulIdentifier", + "src": "2650:6:74" + }, + "nativeSrc": "2650:9:74", + "nodeType": "YulFunctionCall", + "src": "2650:9:74" + }, + "nativeSrc": "2647:35:74", + "nodeType": "YulIf", + "src": "2647:35:74" + }, + { + "nativeSrc": "2691:14:74", + "nodeType": "YulAssignment", + "src": "2691:14:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "2700:1:74", + "nodeType": "YulIdentifier", + "src": "2700:1:74" + }, + { + "name": "y", + "nativeSrc": "2703:1:74", + "nodeType": "YulIdentifier", + "src": "2703:1:74" + } + ], + "functionName": { + "name": "mod", + "nativeSrc": "2696:3:74", + "nodeType": "YulIdentifier", + "src": "2696:3:74" + }, + "nativeSrc": "2696:9:74", + "nodeType": "YulFunctionCall", + "src": "2696:9:74" + }, + "variableNames": [ + { + "name": "r", + "nativeSrc": "2691:1:74", + "nodeType": "YulIdentifier", + "src": "2691:1:74" + } + ] + } + ] + }, + "name": "mod_t_uint256", + "nativeSrc": "2535:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "2558:1:74", + "nodeType": "YulTypedName", + "src": "2558:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "2561:1:74", + "nodeType": "YulTypedName", + "src": "2561:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nativeSrc": "2567:1:74", + "nodeType": "YulTypedName", + "src": "2567:1:74", + "type": "" + } + ], + "src": "2535:176:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function mod_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c8063aa1e84de1461003a575b600080fd5b610054600480360381019061004f9190611290565b61006a565b60405161006191906112f6565b60405180910390f35b60008083839050036100a8576040517f731eab5700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006020848490506100ba919061134a565b146100f1576040517fc2cab26c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020601f83010460005b8181101561016c5760208102850180356101158186610172565b7f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a11800000000001827f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a118000000000018389080895505050506001810190506100fb565b5061121a565b60007f12ab655e9a2ca55660b44d1e5c37b00159aa76fed00000010a118000000000016000817f0efda9332fcec268a3bbd0567797ce650be481c79da27f58b1a51ada4a91b01483868808089050818182099250818384099250818384099250818183858609099250817f05253862ca9b15c2bd33e1a2b830659b7ae3657aacfa8986eec35d8ec2dd344683868608089050818182099250818384099250818384099250818183858609099250817f0db5be05400d438b9facd4a269a49031e8c7f947887a7c8653aae1675075f08d83868608089050818182099250818384099250818384099250818183858609099250817f07850deb84c4b38c891c03f7acc0f0e0602877a2ae969dcd0b10d7facf26dddb83868608089050818182099250818384099250818384099250818183858609099250817f01c2e148c40ea201b748bee72845b349bfa4a4497837af0d569ae47afc6e424383868608089050818182099250818384099250818384099250818183858609099250817e5a472abfb0d5d4b09a0da6d9d4c7ab93bf68299dc5222dc6ef81407825dba983868608089050818182099250818384099250818384099250818183858609099250817f03b0d15d7b62c8b4cfbce18816baeabb2e3df2d9a731d9d248d2f0498bdec1e483868608089050818182099250818384099250818384099250818183858609099250817f04e8da009db8982a082983402626f1f68655a4a3c83be89c165ba656be14d72683868608089050818182099250818384099250818384099250818183858609099250817f02dcc7fbe0034e4fd51853c69fa7161a043c6757df0b3022fd8628c221b04c0183868608089050818182099250818384099250818384099250818183858609099250817f0ef15ea4cf191c23a6eba0d9f4c6c978a7bb172b196d13438c30c1ce50aeefec83868608089050818182099250818384099250818384099250818183858609099250817f0ddda0ea4d7aeda047f66513386eab0c970ea0f302b6227a1a7e64aef63840e983868608089050818182099250818384099250818384099250818183858609099250817f11c526b58d39911c310b2a808cf84fd690f713c06d4016ff30c05aded412af7a83868608089050818182099250818384099250818384099250818183858609099250817f056b338761a8093e7575ab89a9f375f59c61049079a2e5d1120dbf4adf7a9bb583868608089050818182099250818384099250818384099250818183858609099250817f05fc79e450ea6c00b641fdf50f5ee15c0ec5baf629ccb26d553553adf1792b0083868608089050818182099250818384099250818384099250818183858609099250817f1168acb1e68011e4b6ff861a9f84e4ac38d250941c8536f214a0ce4f68bdb5a383868608089050818182099250818384099250818384099250818183858609099250817f06d4d245e2259b3166774189238cfc1b4ae5defd98f62899f0d846d20a005b9183868608089050818182099250818384099250818384099250818183858609099250817f123313cced613293c40586b110f8e4244cd67cc4380c8f5df4ec60f42216ce2883868608089050818182099250818384099250818384099250818183858609099250817f0acf9981fe2d6f97d7fa27873a0a368c2b19b10d15f2460a59512c4381ca037983868608089050818182099250818384099250818384099250818183858609099250817f011e73f99cc798e236f1fb1f38144984fed0a2cdd836d7860099423cce8c491e83868608089050818182099250818384099250818384099250818183858609099250817f0a8d98d4f22ed367167e54617b0701e64f0f9a4b17e0808eeac420473c18bcbe83868608089050818182099250818384099250818384099250818183858609099250817f0e9d4c3fe8fed7780e4b179314207924caebf54185c786400384a8679b6c725283868608089050818182099250818384099250818384099250818183858609099250817f11d37287b2e163e78261cdcc9e4d723b0a81099340c5cfa245eccfb9ee92014283868608089050818182099250818384099250818384099250818183858609099250817f05b231b706fb2967b2b90bade17c758c62201b5a4e04f020cdf2af76c12422f083868608089050818182099250818384099250818384099250818183858609099250817f0dcfd40018b5bf7bb3397d4ce2a24130ae7d74c41e48f2a25a48132f897a5ac283868608089050818182099250818384099250818384099250818183858609099250817f0534aaf5c42188955008e47ba93e156c7d32406566cb85f6183bf6144d8a3ee283868608089050818182099250818384099250818384099250818183858609099250817f023cd78594054aa62b3292f3429491566819cb081159afef6c0d12a945aa059083868608089050818182099250818384099250818384099250818183858609099250817e7ca89d69ee508f26d2500ece5b01925c9728aef78493806f58a2b807c6da4d83868608089050818182099250818384099250818384099250818183858609099250817f05192bd62077895fa33a95382ba2ea0dd65ed66281c6b7a09acc94003238df3783868608089050818182099250818384099250818384099250818183858609099250817f0d0ead8a1699babd8e6b7e3f3811463e8cfafae1915967ad4342ca59465c401483868608089050818182099250818384099250818384099250818183858609099250817f11c0cabe4b1e2444d8915e6a411908faf20cf1feeb59918abde560595ebb5f4f83868608089050818182099250818384099250818384099250818183858609099250817f0f0c1c73b3c6463138527609f33d4981b21444c39d1f00c172f51c3c9aa4357483868608089050818182099250818384099250818384099250818183858609099250817f0861d628f74762a601963dd1823ed11b9dd2456940b41659ac02fe1232355a6483868608089050818182099250818384099250818384099250818183858609099250817f110df129163a9336afa7b9757f15f300aeb954e92b3af524222b84096d1274fd83868608089050818182099250818384099250818384099250818183858609099250817f04c609941ec5da50d43b8d6d7d45fdd4faa8bb69929fc3337ddfc1bee29f7b9483868608089050818182099250818384099250818384099250818183858609099250817f07a63ade8da839446b58f5d1b7fdc9432dbe55467a2b87c1779e4ce62a59e43283868608089050818182099250818384099250818384099250818183858609099250817f120dbf222fc5d5337f22cfe76ea5597030bc328f5ef7b927678f123be9c2a39483868608089050818182099250818384099250818384099250818183858609099250817f0b33e4820a40248cdbc3c27d7dfab70fd4b31ee9f62b2e1e048e23f9b12d5b7183868608089050818182099250818384099250818384099250818183858609099250817f10b998b32a4e17a795d120a590e238dead3a2761cfcc9cce00b0b5c9a865608683868608089050818182099250818384099250818384099250818183858609099250817f0a98ebc6e3643fb6112262f125da98c0dc9eeb5c5e652716f368cf96b8888ed383868608089050818182099250818384099250818384099250818183858609099250817e06ce51116858059370af176e5d32b99b8fd443d520fe34588c6254df7514f583868608089050818182099250818384099250818384099250818183858609099250817f0b2dddc8994767c7d3632cc7bc089becf8ef3b65540fb4709b8cc78ba12b044b83868608089050818182099250818384099250818384099250818183858609099250817f08837cf3399fbfff03fc2e6cbb1a3b205a5a28757c827730ccd0c2f0c90fff3b83868608089050818182099250818384099250818384099250818183858609099250817f0c238d5f2c384a72477fbdce23d461ad73d4a20f8acb2de069ec6b034b7d8c5483868608089050818182099250818384099250818384099250818183858609099250817f0f0e46c03bd29b0cad6857149959c77f9e4f96c6688d3c2c64e228bcc0893ba483868608089050818182099250818384099250818384099250818183858609099250817f0d7dbd25add9892e2ea8951086a653298f4e4261e6bcdb3d980b9a45c9f4f3a983868608089050818182099250818384099250818384099250818183858609099250817f1197bc33ae17572ff6c8671d7a3a52f761305ba4f3a93c582e95c9f6d21dd60083868608089050818182099250818384099250818384099250818183858609099250817f10c0f787b87b60b08241ca6547299f3afe7d86374858661f3db021676d57356683868608089050818182099250818384099250818384099250818183858609099250817f0d527557a2a71d92e0b0c5230b02b5db478d6abd87d24caee5e9f325efec029883868608089050818182099250818384099250818384099250818183858609099250817f046e586141d405df5efb10855b7ea8009fdac1732b676f90de97a3e65fab3f4283868608089050818182099250818384099250818384099250818183858609099250817f02e91572a13a6baf97560b43b5b862aebd8b7d95c0fda9c097d823cc9ef0599e83868608089050818182099250818384099250818384099250818183858609099250817f0a12c428ae449ef925394565ac50d0adb37e9e48873cf7df892b08a7b5c0287583868608089050818182099250818384099250818384099250818183858609099250817f053d51710289df29fdcd07b74954d10edb2a29ce26f58b0868bfa608b976d16283868608089050818182099250818384099250818384099250818183858609099250817f107983a1ea61c3c634124a87ab1271bc68dbbf1f455033dba37f441e942da24883868608089050818182099250818384099250818384099250818183858609099250817f02f05b8c3d5883d63ad8e0fb9d5dfd79fed0a7476208a11ca79905cf50a8627a83868608089050818182099250818384099250818384099250818183858609099250817f0728f029842765bb9a7b662cc646a328bea710b0def51f6c6a0d8e3ee9286a2f83868608089050818182099250818384099250818384099250818183858609099250817f07aee6d598f4aed60276e302085feae4608f4b249347f581ea9e246aa7b2bd2d83868608089050818182099250818384099250818384099250818183858609099250817f0973293a99aab1398c81147a84d50bfa6aa95c659b7a4a2c153f21a13294caa683868608089050818182099250818384099250818384099250818183858609099250817f0f56f597f2a94ff70aed4abd9b14a863808ecffcd706f566a9065b6bf515cba583868608089050818182099250818384099250818384099250818183858609099250817f08d6e679d99527436d1b27315b5933cf75aaad990d3a2969032bc5595f72ed3783868608089050818182099250818384099250818384099250818183858609099250817f0ecf9edc13aa60341dde23bdadf7a719337256129297b85719cd06d173e5432083868608089050818182099250818384099250818384099250818183858609099250817f0f647c810044463684d83b28b6a17aef6a71db48f9af54c58c9919ded4974d2e83868608089050818182099250818384099250818384099250818183858609099250817f0f63f31b9849bcdbf503fd3b51ab77ca37a73a892a2eb5f9328fd4f2e234d20a83868608089050818182099250818384099250818384099250818183858609099250818484089250505092915050565b5092915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f8401126112505761124f61122b565b5b8235905067ffffffffffffffff81111561126d5761126c611230565b5b60208301915083600182028301111561128957611288611235565b5b9250929050565b600080602083850312156112a7576112a6611221565b5b600083013567ffffffffffffffff8111156112c5576112c4611226565b5b6112d18582860161123a565b92509250509250929050565b6000819050919050565b6112f0816112dd565b82525050565b600060208201905061130b60008301846112e7565b92915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061135582611311565b915061136083611311565b9250826113705761136f61131b565b5b82820690509291505056fea264697066735822122074db2851d2b0457295790992d7e6c3ca2039a4f0df5ac2f267d1a60df290972b64736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x35 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xAA1E84DE EQ PUSH2 0x3A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x54 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F SWAP2 SWAP1 PUSH2 0x1290 JUMP JUMPDEST PUSH2 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 DUP4 DUP4 SWAP1 POP SUB PUSH2 0xA8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x731EAB5700000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP5 DUP5 SWAP1 POP PUSH2 0xBA SWAP2 SWAP1 PUSH2 0x134A JUMP JUMPDEST EQ PUSH2 0xF1 JUMPI PUSH1 0x40 MLOAD PUSH32 0xC2CAB26C00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x16C JUMPI PUSH1 0x20 DUP2 MUL DUP6 ADD DUP1 CALLDATALOAD PUSH2 0x115 DUP2 DUP7 PUSH2 0x172 JUMP JUMPDEST PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 DUP3 PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 DUP4 DUP10 ADDMOD ADDMOD SWAP6 POP POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xFB JUMP JUMPDEST POP PUSH2 0x121A JUMP JUMPDEST PUSH1 0x0 PUSH32 0x12AB655E9A2CA55660B44D1E5C37B00159AA76FED00000010A11800000000001 PUSH1 0x0 DUP2 PUSH32 0xEFDA9332FCEC268A3BBD0567797CE650BE481C79DA27F58B1A51ADA4A91B014 DUP4 DUP7 DUP9 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5253862CA9B15C2BD33E1A2B830659B7AE3657AACFA8986EEC35D8EC2DD3446 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDB5BE05400D438B9FACD4A269A49031E8C7F947887A7C8653AAE1675075F08D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7850DEB84C4B38C891C03F7ACC0F0E0602877A2AE969DCD0B10D7FACF26DDDB DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1C2E148C40EA201B748BEE72845B349BFA4A4497837AF0D569AE47AFC6E4243 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x5A472ABFB0D5D4B09A0DA6D9D4C7AB93BF68299DC5222DC6EF81407825DBA9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x3B0D15D7B62C8B4CFBCE18816BAEABB2E3DF2D9A731D9D248D2F0498BDEC1E4 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x4E8DA009DB8982A082983402626F1F68655A4A3C83BE89C165BA656BE14D726 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2DCC7FBE0034E4FD51853C69FA7161A043C6757DF0B3022FD8628C221B04C01 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xEF15EA4CF191C23A6EBA0D9F4C6C978A7BB172B196D13438C30C1CE50AEEFEC DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDDDA0EA4D7AEDA047F66513386EAB0C970EA0F302B6227A1A7E64AEF63840E9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11C526B58D39911C310B2A808CF84FD690F713C06D4016FF30C05ADED412AF7A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x56B338761A8093E7575AB89A9F375F59C61049079A2E5D1120DBF4ADF7A9BB5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5FC79E450EA6C00B641FDF50F5EE15C0EC5BAF629CCB26D553553ADF1792B00 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1168ACB1E68011E4B6FF861A9F84E4AC38D250941C8536F214A0CE4F68BDB5A3 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x6D4D245E2259B3166774189238CFC1B4AE5DEFD98F62899F0D846D20A005B91 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x123313CCED613293C40586B110F8E4244CD67CC4380C8F5DF4EC60F42216CE28 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xACF9981FE2D6F97D7FA27873A0A368C2B19B10D15F2460A59512C4381CA0379 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11E73F99CC798E236F1FB1F38144984FED0A2CDD836D7860099423CCE8C491E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA8D98D4F22ED367167E54617B0701E64F0F9A4B17E0808EEAC420473C18BCBE DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xE9D4C3FE8FED7780E4B179314207924CAEBF54185C786400384A8679B6C7252 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11D37287B2E163E78261CDCC9E4D723B0A81099340C5CFA245ECCFB9EE920142 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5B231B706FB2967B2B90BADE17C758C62201B5A4E04F020CDF2AF76C12422F0 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xDCFD40018B5BF7BB3397D4CE2A24130AE7D74C41E48F2A25A48132F897A5AC2 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x534AAF5C42188955008E47BA93E156C7D32406566CB85F6183BF6144D8A3EE2 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x23CD78594054AA62B3292F3429491566819CB081159AFEF6C0D12A945AA0590 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x7CA89D69EE508F26D2500ECE5B01925C9728AEF78493806F58A2B807C6DA4D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x5192BD62077895FA33A95382BA2EA0DD65ED66281C6B7A09ACC94003238DF37 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD0EAD8A1699BABD8E6B7E3F3811463E8CFAFAE1915967AD4342CA59465C4014 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x11C0CABE4B1E2444D8915E6A411908FAF20CF1FEEB59918ABDE560595EBB5F4F DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF0C1C73B3C6463138527609F33D4981B21444C39D1F00C172F51C3C9AA43574 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x861D628F74762A601963DD1823ED11B9DD2456940B41659AC02FE1232355A64 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x110DF129163A9336AFA7B9757F15F300AEB954E92B3AF524222B84096D1274FD DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x4C609941EC5DA50D43B8D6D7D45FDD4FAA8BB69929FC3337DDFC1BEE29F7B94 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7A63ADE8DA839446B58F5D1B7FDC9432DBE55467A2B87C1779E4CE62A59E432 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x120DBF222FC5D5337F22CFE76EA5597030BC328F5EF7B927678F123BE9C2A394 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xB33E4820A40248CDBC3C27D7DFAB70FD4B31EE9F62B2E1E048E23F9B12D5B71 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x10B998B32A4E17A795D120A590E238DEAD3A2761CFCC9CCE00B0B5C9A8656086 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA98EBC6E3643FB6112262F125DA98C0DC9EEB5C5E652716F368CF96B8888ED3 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH31 0x6CE51116858059370AF176E5D32B99B8FD443D520FE34588C6254DF7514F5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xB2DDDC8994767C7D3632CC7BC089BECF8EF3B65540FB4709B8CC78BA12B044B DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x8837CF3399FBFFF03FC2E6CBB1A3B205A5A28757C827730CCD0C2F0C90FFF3B DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xC238D5F2C384A72477FBDCE23D461AD73D4A20F8ACB2DE069EC6B034B7D8C54 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF0E46C03BD29B0CAD6857149959C77F9E4F96C6688D3C2C64E228BCC0893BA4 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD7DBD25ADD9892E2EA8951086A653298F4E4261E6BCDB3D980B9A45C9F4F3A9 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x1197BC33AE17572FF6C8671D7A3A52F761305BA4F3A93C582E95C9F6D21DD600 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x10C0F787B87B60B08241CA6547299F3AFE7D86374858661F3DB021676D573566 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xD527557A2A71D92E0B0C5230B02B5DB478D6ABD87D24CAEE5E9F325EFEC0298 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x46E586141D405DF5EFB10855B7EA8009FDAC1732B676F90DE97A3E65FAB3F42 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2E91572A13A6BAF97560B43B5B862AEBD8B7D95C0FDA9C097D823CC9EF0599E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xA12C428AE449EF925394565AC50D0ADB37E9E48873CF7DF892B08A7B5C02875 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x53D51710289DF29FDCD07B74954D10EDB2A29CE26F58B0868BFA608B976D162 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x107983A1EA61C3C634124A87AB1271BC68DBBF1F455033DBA37F441E942DA248 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x2F05B8C3D5883D63AD8E0FB9D5DFD79FED0A7476208A11CA79905CF50A8627A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x728F029842765BB9A7B662CC646A328BEA710B0DEF51F6C6A0D8E3EE9286A2F DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x7AEE6D598F4AED60276E302085FEAE4608F4B249347F581EA9E246AA7B2BD2D DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x973293A99AAB1398C81147A84D50BFA6AA95C659B7A4A2C153F21A13294CAA6 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF56F597F2A94FF70AED4ABD9B14A863808ECFFCD706F566A9065B6BF515CBA5 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0x8D6E679D99527436D1B27315B5933CF75AAAD990D3A2969032BC5595F72ED37 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xECF9EDC13AA60341DDE23BDADF7A719337256129297B85719CD06D173E54320 DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF647C810044463684D83B28B6A17AEF6A71DB48F9AF54C58C9919DED4974D2E DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 PUSH32 0xF63F31B9849BCDBF503FD3B51AB77CA37A73A892A2EB5F9328FD4F2E234D20A DUP4 DUP7 DUP7 ADDMOD ADDMOD SWAP1 POP DUP2 DUP2 DUP3 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP4 DUP5 MULMOD SWAP3 POP DUP2 DUP2 DUP4 DUP6 DUP7 MULMOD MULMOD SWAP3 POP DUP2 DUP5 DUP5 ADDMOD SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x1250 JUMPI PUSH2 0x124F PUSH2 0x122B JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x126D JUMPI PUSH2 0x126C PUSH2 0x1230 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x1289 JUMPI PUSH2 0x1288 PUSH2 0x1235 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x12A7 JUMPI PUSH2 0x12A6 PUSH2 0x1221 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x12C5 JUMPI PUSH2 0x12C4 PUSH2 0x1226 JUMP JUMPDEST JUMPDEST PUSH2 0x12D1 DUP6 DUP3 DUP7 ADD PUSH2 0x123A JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12F0 DUP2 PUSH2 0x12DD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x130B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x12E7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1355 DUP3 PUSH2 0x1311 JUMP JUMPDEST SWAP2 POP PUSH2 0x1360 DUP4 PUSH2 0x1311 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1370 JUMPI PUSH2 0x136F PUSH2 0x131B JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH21 0xDB2851D2B0457295790992D7E6C3CA2039A4F0DF5A 0xC2 CALLCODE PUSH8 0xD1A60DF290972B64 PUSH20 0x6F6C634300081900330000000000000000000000 ", + "sourceMap": "846:36408:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;1413:35839;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;1485:16;1532:1;1517:4;;:11;;:16;1513:67;;1556:13;;;;;;;;;;;;;;1513:67;1616:1;1608:4;1594;;:11;;:18;;;;:::i;:::-;:23;1590:77;;1640:16;;;;;;;;;;;;;;1590:77;1742:4;1735;1722:11;1718:22;1714:33;1792:1;1761:446;1814:6;1811:1;1808:13;1761:446;;;1925:4;1922:1;1918:12;1905:11;1901:30;1974:6;1961:20;2008:24;2026:5;2016:8;2008:24;:::i;:::-;2167:8;2140:5;2109:8;2106:1;2096:8;2089:29;2061:132;2049:144;;1869:338;;;1852:1;1849;1845:9;1840:14;;1761:446;;;1765:42;2221:35015;;;2251:6;2291:8;2330:1;2532:7;2434:76;2404:7;2401:1;2394:5;2387:25;2359:198;2349:208;;2607:7;2599:6;2591;2584:31;2574:41;;2665:7;2657:6;2649;2642:31;2632:41;;2723:7;2715:6;2707;2700:31;2690:41;;2867:7;2839:6;2809:7;2801:6;2793;2786:31;2758:134;2748:144;;3094:7;2996:76;2966:7;2963:1;2955:6;2948:26;2920:199;2910:209;;3169:7;3161:6;3153;3146:31;3136:41;;3227:7;3219:6;3211;3204:31;3194:41;;3285:7;3277:6;3269;3262:31;3252:41;;3429:7;3401:6;3371:7;3363:6;3355;3348:31;3320:134;3310:144;;3656:7;3558:76;3528:7;3525:1;3517:6;3510:26;3482:199;3472:209;;3731:7;3723:6;3715;3708:31;3698:41;;3789:7;3781:6;3773;3766:31;3756:41;;3847:7;3839:6;3831;3824:31;3814:41;;3991:7;3963:6;3933:7;3925:6;3917;3910:31;3882:134;3872:144;;4218:7;4120:76;4090:7;4087:1;4079:6;4072:26;4044:199;4034:209;;4293:7;4285:6;4277;4270:31;4260:41;;4351:7;4343:6;4335;4328:31;4318:41;;4409:7;4401:6;4393;4386:31;4376:41;;4553:7;4525:6;4495:7;4487:6;4479;4472:31;4444:134;4434:144;;4779:7;4682:75;4652:7;4649:1;4641:6;4634:26;4606:198;4596:208;;4854:7;4846:6;4838;4831:31;4821:41;;4912:7;4904:6;4896;4889:31;4879:41;;4970:7;4962:6;4954;4947:31;4937:41;;5114:7;5086:6;5056:7;5048:6;5040;5033:31;5005:134;4995:144;;5340:7;5243:75;5213:7;5210:1;5202:6;5195:26;5167:198;5157:208;;5415:7;5407:6;5399;5392:31;5382:41;;5473:7;5465:6;5457;5450:31;5440:41;;5531:7;5523:6;5515;5508:31;5498:41;;5675:7;5647:6;5617:7;5609:6;5601;5594:31;5566:134;5556:144;;5902:7;5804:76;5774:7;5771:1;5763:6;5756:26;5728:199;5718:209;;5977:7;5969:6;5961;5954:31;5944:41;;6035:7;6027:6;6019;6012:31;6002:41;;6093:7;6085:6;6077;6070:31;6060:41;;6237:7;6209:6;6179:7;6171:6;6163;6156:31;6128:134;6118:144;;6464:7;6366:76;6336:7;6333:1;6325:6;6318:26;6290:199;6280:209;;6539:7;6531:6;6523;6516:31;6506:41;;6597:7;6589:6;6581;6574:31;6564:41;;6655:7;6647:6;6639;6632:31;6622:41;;6799:7;6771:6;6741:7;6733:6;6725;6718:31;6690:134;6680:144;;7026:7;6928:76;6898:7;6895:1;6887:6;6880:26;6852:199;6842:209;;7101:7;7093:6;7085;7078:31;7068:41;;7159:7;7151:6;7143;7136:31;7126:41;;7217:7;7209:6;7201;7194:31;7184:41;;7361:7;7333:6;7303:7;7295:6;7287;7280:31;7252:134;7242:144;;7588:7;7490:76;7460:7;7457:1;7449:6;7442:26;7414:199;7404:209;;7663:7;7655:6;7647;7640:31;7630:41;;7721:7;7713:6;7705;7698:31;7688:41;;7779:7;7771:6;7763;7756:31;7746:41;;7923:7;7895:6;7865:7;7857:6;7849;7842:31;7814:134;7804:144;;8150:7;8052:76;8022:7;8019:1;8011:6;8004:26;7976:199;7966:209;;8225:7;8217:6;8209;8202:31;8192:41;;8283:7;8275:6;8267;8260:31;8250:41;;8341:7;8333:6;8325;8318:31;8308:41;;8485:7;8457:6;8427:7;8419:6;8411;8404:31;8376:134;8366:144;;8712:7;8614:76;8584:7;8581:1;8573:6;8566:26;8538:199;8528:209;;8787:7;8779:6;8771;8764:31;8754:41;;8845:7;8837:6;8829;8822:31;8812:41;;8903:7;8895:6;8887;8880:31;8870:41;;9047:7;9019:6;8989:7;8981:6;8973;8966:31;8938:134;8928:144;;9274:7;9176:76;9146:7;9143:1;9135:6;9128:26;9100:199;9090:209;;9349:7;9341:6;9333;9326:31;9316:41;;9407:7;9399:6;9391;9384:31;9374:41;;9465:7;9457:6;9449;9442:31;9432:41;;9609:7;9581:6;9551:7;9543:6;9535;9528:31;9500:134;9490:144;;9836:7;9738:76;9708:7;9705:1;9697:6;9690:26;9662:199;9652:209;;9911:7;9903:6;9895;9888:31;9878:41;;9969:7;9961:6;9953;9946:31;9936:41;;10027:7;10019:6;10011;10004:31;9994:41;;10171:7;10143:6;10113:7;10105:6;10097;10090:31;10062:134;10052:144;;10398:7;10300:76;10270:7;10267:1;10259:6;10252:26;10224:199;10214:209;;10473:7;10465:6;10457;10450:31;10440:41;;10531:7;10523:6;10515;10508:31;10498:41;;10589:7;10581:6;10573;10566:31;10556:41;;10733:7;10705:6;10675:7;10667:6;10659;10652:31;10624:134;10614:144;;10960:7;10862:76;10832:7;10829:1;10821:6;10814:26;10786:199;10776:209;;11035:7;11027:6;11019;11012:31;11002:41;;11093:7;11085:6;11077;11070:31;11060:41;;11151:7;11143:6;11135;11128:31;11118:41;;11295:7;11267:6;11237:7;11229:6;11221;11214:31;11186:134;11176:144;;11522:7;11424:76;11394:7;11391:1;11383:6;11376:26;11348:199;11338:209;;11597:7;11589:6;11581;11574:31;11564:41;;11655:7;11647:6;11639;11632:31;11622:41;;11713:7;11705:6;11697;11690:31;11680:41;;11857:7;11829:6;11799:7;11791:6;11783;11776:31;11748:134;11738:144;;12084:7;11986:76;11956:7;11953:1;11945:6;11938:26;11910:199;11900:209;;12159:7;12151:6;12143;12136:31;12126:41;;12217:7;12209:6;12201;12194:31;12184:41;;12275:7;12267:6;12259;12252:31;12242:41;;12419:7;12391:6;12361:7;12353:6;12345;12338:31;12310:134;12300:144;;12645:7;12548:75;12518:7;12515:1;12507:6;12500:26;12472:198;12462:208;;12720:7;12712:6;12704;12697:31;12687:41;;12778:7;12770:6;12762;12755:31;12745:41;;12836:7;12828:6;12820;12813:31;12803:41;;12980:7;12952:6;12922:7;12914:6;12906;12899:31;12871:134;12861:144;;13207:7;13109:76;13079:7;13076:1;13068:6;13061:26;13033:199;13023:209;;13282:7;13274:6;13266;13259:31;13249:41;;13340:7;13332:6;13324;13317:31;13307:41;;13398:7;13390:6;13382;13375:31;13365:41;;13542:7;13514:6;13484:7;13476:6;13468;13461:31;13433:134;13423:144;;13769:7;13671:76;13641:7;13638:1;13630:6;13623:26;13595:199;13585:209;;13844:7;13836:6;13828;13821:31;13811:41;;13902:7;13894:6;13886;13879:31;13869:41;;13960:7;13952:6;13944;13937:31;13927:41;;14104:7;14076:6;14046:7;14038:6;14030;14023:31;13995:134;13985:144;;14331:7;14233:76;14203:7;14200:1;14192:6;14185:26;14157:199;14147:209;;14406:7;14398:6;14390;14383:31;14373:41;;14464:7;14456:6;14448;14441:31;14431:41;;14522:7;14514:6;14506;14499:31;14489:41;;14666:7;14638:6;14608:7;14600:6;14592;14585:31;14557:134;14547:144;;14893:7;14795:76;14765:7;14762:1;14754:6;14747:26;14719:199;14709:209;;14968:7;14960:6;14952;14945:31;14935:41;;15026:7;15018:6;15010;15003:31;14993:41;;15084:7;15076:6;15068;15061:31;15051:41;;15228:7;15200:6;15170:7;15162:6;15154;15147:31;15119:134;15109:144;;15455:7;15357:76;15327:7;15324:1;15316:6;15309:26;15281:199;15271:209;;15530:7;15522:6;15514;15507:31;15497:41;;15588:7;15580:6;15572;15565:31;15555:41;;15646:7;15638:6;15630;15623:31;15613:41;;15790:7;15762:6;15732:7;15724:6;15716;15709:31;15681:134;15671:144;;16017:7;15919:76;15889:7;15886:1;15878:6;15871:26;15843:199;15833:209;;16092:7;16084:6;16076;16069:31;16059:41;;16150:7;16142:6;16134;16127:31;16117:41;;16208:7;16200:6;16192;16185:31;16175:41;;16352:7;16324:6;16294:7;16286:6;16278;16271:31;16243:134;16233:144;;16579:7;16481:76;16451:7;16448:1;16440:6;16433:26;16405:199;16395:209;;16654:7;16646:6;16638;16631:31;16621:41;;16712:7;16704:6;16696;16689:31;16679:41;;16770:7;16762:6;16754;16747:31;16737:41;;16914:7;16886:6;16856:7;16848:6;16840;16833:31;16805:134;16795:144;;17140:7;17043:75;17013:7;17010:1;17002:6;16995:26;16967:198;16957:208;;17215:7;17207:6;17199;17192:31;17182:41;;17273:7;17265:6;17257;17250:31;17240:41;;17331:7;17323:6;17315;17308:31;17298:41;;17475:7;17447:6;17417:7;17409:6;17401;17394:31;17366:134;17356:144;;17702:7;17604:76;17574:7;17571:1;17563:6;17556:26;17528:199;17518:209;;17777:7;17769:6;17761;17754:31;17744:41;;17835:7;17827:6;17819;17812:31;17802:41;;17893:7;17885:6;17877;17870:31;17860:41;;18037:7;18009:6;17979:7;17971:6;17963;17956:31;17928:134;17918:144;;18264:7;18166:76;18136:7;18133:1;18125:6;18118:26;18090:199;18080:209;;18339:7;18331:6;18323;18316:31;18306:41;;18397:7;18389:6;18381;18374:31;18364:41;;18455:7;18447:6;18439;18432:31;18422:41;;18599:7;18571:6;18541:7;18533:6;18525;18518:31;18490:134;18480:144;;18826:7;18728:76;18698:7;18695:1;18687:6;18680:26;18652:199;18642:209;;18901:7;18893:6;18885;18878:31;18868:41;;18959:7;18951:6;18943;18936:31;18926:41;;19017:7;19009:6;19001;18994:31;18984:41;;19161:7;19133:6;19103:7;19095:6;19087;19080:31;19052:134;19042:144;;19388:7;19290:76;19260:7;19257:1;19249:6;19242:26;19214:199;19204:209;;19463:7;19455:6;19447;19440:31;19430:41;;19521:7;19513:6;19505;19498:31;19488:41;;19579:7;19571:6;19563;19556:31;19546:41;;19723:7;19695:6;19665:7;19657:6;19649;19642:31;19614:134;19604:144;;19950:7;19852:76;19822:7;19819:1;19811:6;19804:26;19776:199;19766:209;;20025:7;20017:6;20009;20002:31;19992:41;;20083:7;20075:6;20067;20060:31;20050:41;;20141:7;20133:6;20125;20118:31;20108:41;;20285:7;20257:6;20227:7;20219:6;20211;20204:31;20176:134;20166:144;;20512:7;20414:76;20384:7;20381:1;20373:6;20366:26;20338:199;20328:209;;20587:7;20579:6;20571;20564:31;20554:41;;20645:7;20637:6;20629;20622:31;20612:41;;20703:7;20695:6;20687;20680:31;20670:41;;20847:7;20819:6;20789:7;20781:6;20773;20766:31;20738:134;20728:144;;21074:7;20976:76;20946:7;20943:1;20935:6;20928:26;20900:199;20890:209;;21149:7;21141:6;21133;21126:31;21116:41;;21207:7;21199:6;21191;21184:31;21174:41;;21265:7;21257:6;21249;21242:31;21232:41;;21409:7;21381:6;21351:7;21343:6;21335;21328:31;21300:134;21290:144;;21636:7;21538:76;21508:7;21505:1;21497:6;21490:26;21462:199;21452:209;;21711:7;21703:6;21695;21688:31;21678:41;;21769:7;21761:6;21753;21746:31;21736:41;;21827:7;21819:6;21811;21804:31;21794:41;;21971:7;21943:6;21913:7;21905:6;21897;21890:31;21862:134;21852:144;;22198:7;22100:76;22070:7;22067:1;22059:6;22052:26;22024:199;22014:209;;22273:7;22265:6;22257;22250:31;22240:41;;22331:7;22323:6;22315;22308:31;22298:41;;22389:7;22381:6;22373;22366:31;22356:41;;22533:7;22505:6;22475:7;22467:6;22459;22452:31;22424:134;22414:144;;22760:7;22662:76;22632:7;22629:1;22621:6;22614:26;22586:199;22576:209;;22835:7;22827:6;22819;22812:31;22802:41;;22893:7;22885:6;22877;22870:31;22860:41;;22951:7;22943:6;22935;22928:31;22918:41;;23095:7;23067:6;23037:7;23029:6;23021;23014:31;22986:134;22976:144;;23322:7;23224:76;23194:7;23191:1;23183:6;23176:26;23148:199;23138:209;;23397:7;23389:6;23381;23374:31;23364:41;;23455:7;23447:6;23439;23432:31;23422:41;;23513:7;23505:6;23497;23490:31;23480:41;;23657:7;23629:6;23599:7;23591:6;23583;23576:31;23548:134;23538:144;;23884:7;23786:76;23756:7;23753:1;23745:6;23738:26;23710:199;23700:209;;23959:7;23951:6;23943;23936:31;23926:41;;24017:7;24009:6;24001;23994:31;23984:41;;24075:7;24067:6;24059;24052:31;24042:41;;24219:7;24191:6;24161:7;24153:6;24145;24138:31;24110:134;24100:144;;24444:7;24348:74;24318:7;24315:1;24307:6;24300:26;24272:197;24262:207;;24519:7;24511:6;24503;24496:31;24486:41;;24577:7;24569:6;24561;24554:31;24544:41;;24635:7;24627:6;24619;24612:31;24602:41;;24779:7;24751:6;24721:7;24713:6;24705;24698:31;24670:134;24660:144;;25006:7;24908:76;24878:7;24875:1;24867:6;24860:26;24832:199;24822:209;;25081:7;25073:6;25065;25058:31;25048:41;;25139:7;25131:6;25123;25116:31;25106:41;;25197:7;25189:6;25181;25174:31;25164:41;;25341:7;25313:6;25283:7;25275:6;25267;25260:31;25232:134;25222:144;;25568:7;25470:76;25440:7;25437:1;25429:6;25422:26;25394:199;25384:209;;25643:7;25635:6;25627;25620:31;25610:41;;25701:7;25693:6;25685;25678:31;25668:41;;25759:7;25751:6;25743;25736:31;25726:41;;25903:7;25875:6;25845:7;25837:6;25829;25822:31;25794:134;25784:144;;26130:7;26032:76;26002:7;25999:1;25991:6;25984:26;25956:199;25946:209;;26205:7;26197:6;26189;26182:31;26172:41;;26263:7;26255:6;26247;26240:31;26230:41;;26321:7;26313:6;26305;26298:31;26288:41;;26465:7;26437:6;26407:7;26399:6;26391;26384:31;26356:134;26346:144;;26692:7;26594:76;26564:7;26561:1;26553:6;26546:26;26518:199;26508:209;;26767:7;26759:6;26751;26744:31;26734:41;;26825:7;26817:6;26809;26802:31;26792:41;;26883:7;26875:6;26867;26860:31;26850:41;;27027:7;26999:6;26969:7;26961:6;26953;26946:31;26918:134;26908:144;;27254:7;27156:76;27126:7;27123:1;27115:6;27108:26;27080:199;27070:209;;27329:7;27321:6;27313;27306:31;27296:41;;27387:7;27379:6;27371;27364:31;27354:41;;27445:7;27437:6;27429;27422:31;27412:41;;27589:7;27561:6;27531:7;27523:6;27515;27508:31;27480:134;27470:144;;27816:7;27718:76;27688:7;27685:1;27677:6;27670:26;27642:199;27632:209;;27891:7;27883:6;27875;27868:31;27858:41;;27949:7;27941:6;27933;27926:31;27916:41;;28007:7;27999:6;27991;27984:31;27974:41;;28151:7;28123:6;28093:7;28085:6;28077;28070:31;28042:134;28032:144;;28378:7;28280:76;28250:7;28247:1;28239:6;28232:26;28204:199;28194:209;;28453:7;28445:6;28437;28430:31;28420:41;;28511:7;28503:6;28495;28488:31;28478:41;;28569:7;28561:6;28553;28546:31;28536:41;;28713:7;28685:6;28655:7;28647:6;28639;28632:31;28604:134;28594:144;;28940:7;28842:76;28812:7;28809:1;28801:6;28794:26;28766:199;28756:209;;29015:7;29007:6;28999;28992:31;28982:41;;29073:7;29065:6;29057;29050:31;29040:41;;29131:7;29123:6;29115;29108:31;29098:41;;29275:7;29247:6;29217:7;29209:6;29201;29194:31;29166:134;29156:144;;29502:7;29404:76;29374:7;29371:1;29363:6;29356:26;29328:199;29318:209;;29577:7;29569:6;29561;29554:31;29544:41;;29635:7;29627:6;29619;29612:31;29602:41;;29693:7;29685:6;29677;29670:31;29660:41;;29837:7;29809:6;29779:7;29771:6;29763;29756:31;29728:134;29718:144;;30064:7;29966:76;29936:7;29933:1;29925:6;29918:26;29890:199;29880:209;;30139:7;30131:6;30123;30116:31;30106:41;;30197:7;30189:6;30181;30174:31;30164:41;;30255:7;30247:6;30239;30232:31;30222:41;;30399:7;30371:6;30341:7;30333:6;30325;30318:31;30290:134;30280:144;;30626:7;30528:76;30498:7;30495:1;30487:6;30480:26;30452:199;30442:209;;30701:7;30693:6;30685;30678:31;30668:41;;30759:7;30751:6;30743;30736:31;30726:41;;30817:7;30809:6;30801;30794:31;30784:41;;30961:7;30933:6;30903:7;30895:6;30887;30880:31;30852:134;30842:144;;31188:7;31090:76;31060:7;31057:1;31049:6;31042:26;31014:199;31004:209;;31263:7;31255:6;31247;31240:31;31230:41;;31321:7;31313:6;31305;31298:31;31288:41;;31379:7;31371:6;31363;31356:31;31346:41;;31523:7;31495:6;31465:7;31457:6;31449;31442:31;31414:134;31404:144;;31750:7;31652:76;31622:7;31619:1;31611:6;31604:26;31576:199;31566:209;;31825:7;31817:6;31809;31802:31;31792:41;;31883:7;31875:6;31867;31860:31;31850:41;;31941:7;31933:6;31925;31918:31;31908:41;;32085:7;32057:6;32027:7;32019:6;32011;32004:31;31976:134;31966:144;;32312:7;32214:76;32184:7;32181:1;32173:6;32166:26;32138:199;32128:209;;32387:7;32379:6;32371;32364:31;32354:41;;32445:7;32437:6;32429;32422:31;32412:41;;32503:7;32495:6;32487;32480:31;32470:41;;32647:7;32619:6;32589:7;32581:6;32573;32566:31;32538:134;32528:144;;32874:7;32776:76;32746:7;32743:1;32735:6;32728:26;32700:199;32690:209;;32949:7;32941:6;32933;32926:31;32916:41;;33007:7;32999:6;32991;32984:31;32974:41;;33065:7;33057:6;33049;33042:31;33032:41;;33209:7;33181:6;33151:7;33143:6;33135;33128:31;33100:134;33090:144;;33436:7;33338:76;33308:7;33305:1;33297:6;33290:26;33262:199;33252:209;;33511:7;33503:6;33495;33488:31;33478:41;;33569:7;33561:6;33553;33546:31;33536:41;;33627:7;33619:6;33611;33604:31;33594:41;;33771:7;33743:6;33713:7;33705:6;33697;33690:31;33662:134;33652:144;;33998:7;33900:76;33870:7;33867:1;33859:6;33852:26;33824:199;33814:209;;34073:7;34065:6;34057;34050:31;34040:41;;34131:7;34123:6;34115;34108:31;34098:41;;34189:7;34181:6;34173;34166:31;34156:41;;34333:7;34305:6;34275:7;34267:6;34259;34252:31;34224:134;34214:144;;34560:7;34462:76;34432:7;34429:1;34421:6;34414:26;34386:199;34376:209;;34635:7;34627:6;34619;34612:31;34602:41;;34693:7;34685:6;34677;34670:31;34660:41;;34751:7;34743:6;34735;34728:31;34718:41;;34895:7;34867:6;34837:7;34829:6;34821;34814:31;34786:134;34776:144;;35122:7;35024:76;34994:7;34991:1;34983:6;34976:26;34948:199;34938:209;;35197:7;35189:6;35181;35174:31;35164:41;;35255:7;35247:6;35239;35232:31;35222:41;;35313:7;35305:6;35297;35290:31;35280:41;;35457:7;35429:6;35399:7;35391:6;35383;35376:31;35348:134;35338:144;;35684:7;35586:76;35556:7;35553:1;35545:6;35538:26;35510:199;35500:209;;35759:7;35751:6;35743;35736:31;35726:41;;35817:7;35809:6;35801;35794:31;35784:41;;35875:7;35867:6;35859;35852:31;35842:41;;36019:7;35991:6;35961:7;35953:6;35945;35938:31;35910:134;35900:144;;36246:7;36148:76;36118:7;36115:1;36107:6;36100:26;36072:199;36062:209;;36321:7;36313:6;36305;36298:31;36288:41;;36379:7;36371:6;36363;36356:31;36346:41;;36437:7;36429:6;36421;36414:31;36404:41;;36581:7;36553:6;36523:7;36515:6;36507;36500:31;36472:134;36462:144;;36808:7;36710:76;36680:7;36677:1;36669:6;36662:26;36634:199;36624:209;;36883:7;36875:6;36867;36860:31;36850:41;;36941:7;36933:6;36925;36918:31;36908:41;;36999:7;36991:6;36983;36976:31;36966:41;;37143:7;37115:6;37085:7;37077:6;37069;37062:31;37034:134;37024:144;;37214:7;37211:1;37203:6;37196:26;37186:36;;2258:34978;;2221:35015;;;;:::o;:::-;1686:35560;1413:35839;;;;:::o;88:117:74:-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;716:552;773:8;783:6;833:3;826:4;818:6;814:17;810:27;800:122;;841:79;;:::i;:::-;800:122;954:6;941:20;931:30;;984:18;976:6;973:30;970:117;;;1006:79;;:::i;:::-;970:117;1120:4;1112:6;1108:17;1096:29;;1174:3;1166:4;1158:6;1154:17;1144:8;1140:32;1137:41;1134:128;;;1181:79;;:::i;:::-;1134:128;716:552;;;;;:::o;1274:527::-;1344:6;1352;1401:2;1389:9;1380:7;1376:23;1372:32;1369:119;;;1407:79;;:::i;:::-;1369:119;1555:1;1544:9;1540:17;1527:31;1585:18;1577:6;1574:30;1571:117;;;1607:79;;:::i;:::-;1571:117;1720:64;1776:7;1767:6;1756:9;1752:22;1720:64;:::i;:::-;1702:82;;;;1498:296;1274:527;;;;;:::o;1807:77::-;1844:7;1873:5;1862:16;;1807:77;;;:::o;1890:126::-;1985:24;2003:5;1985:24;:::i;:::-;1980:3;1973:37;1890:126;;:::o;2022:238::-;2123:4;2161:2;2150:9;2146:18;2138:26;;2174:79;2250:1;2239:9;2235:17;2226:6;2174:79;:::i;:::-;2022:238;;;;:::o;2266:77::-;2303:7;2332:5;2321:16;;2266:77;;;:::o;2349:180::-;2397:77;2394:1;2387:88;2494:4;2491:1;2484:15;2518:4;2515:1;2508:15;2535:176;2567:1;2584:20;2602:1;2584:20;:::i;:::-;2579:25;;2618:20;2636:1;2618:20;:::i;:::-;2613:25;;2657:1;2647:35;;2662:18;;:::i;:::-;2647:35;2703:1;2700;2696:9;2691:14;;2535:176;;;;:::o" + }, + "methodIdentifiers": { + "hash(bytes)": "aa1e84de" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DataIsNotMod32\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DataMissing\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_msg\",\"type\":\"bytes\"}],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"mimcHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"ConsenSys Software Inc.\",\"custom:security-contact\":\"security-report@linea.build\",\"kind\":\"dev\",\"methods\":{\"hash(bytes)\":{\"details\":\"Only data that has length modulus 32 is hashed, reverts otherwise\",\"params\":{\"_msg\":\"The data to be hashed\"},\"returns\":{\"mimcHash\":\"The computed MiMC hash\"}}},\"title\":\"Library to perform MiMC hashing\",\"version\":1},\"userdoc\":{\"errors\":{\"DataIsNotMod32()\":[{\"notice\":\"Thrown when the data is not purely in 32 byte chunks\"}],\"DataMissing()\":[{\"notice\":\"Thrown when the data is not provided\"}]},\"kind\":\"user\",\"methods\":{\"hash(bytes)\":{\"notice\":\"Performs a MiMC hash on the data provided\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":\"Mimc\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":{\"keccak256\":\"0x7ce398ff779301fa880cfbe0c803f3955c1908cba02948b56e759173ecba0b52\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://25940ab3d3a3cd594bbeff12d43f54a11b389717f463aa0c2f8c505a37947f78\",\"dweb:/ipfs/QmbWz3GYdprM682MeMoXfkK5sDeewbMWhwUQ8sS84EpGBB\"]}},\"version\":1}" + } + }, + "@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol": { + "SparseMerkleProof": { + "abi": [ + { + "inputs": [], + "name": "LengthNotMod32", + "type": "error" + }, + { + "inputs": [], + "name": "MaxTreeLeafIndexExceed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "expectedLength", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "bytesLength", + "type": "uint256" + } + ], + "name": "WrongBytesLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "expectedLength", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "actualLength", + "type": "uint256" + } + ], + "name": "WrongProofLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_encodedAccountValue", + "type": "bytes" + } + ], + "name": "getAccount", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "storageRoot", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "mimcCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "keccakCodeHash", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "codeSize", + "type": "uint64" + } + ], + "internalType": "struct SparseMerkleProof.Account", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_encodedLeaf", + "type": "bytes" + } + ], + "name": "getLeaf", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "prev", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "next", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "hKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "hValue", + "type": "bytes32" + } + ], + "internalType": "struct SparseMerkleProof.Leaf", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + } + ], + "name": "hashAccountValue", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_value", + "type": "bytes32" + } + ], + "name": "hashStorageValue", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_input", + "type": "bytes" + } + ], + "name": "mimcHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "_rawProof", + "type": "bytes[]" + }, + { + "internalType": "uint256", + "name": "_leafIndex", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_root", + "type": "bytes32" + } + ], + "name": "verifyProof", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": { + "@consensys/linea-state-verifier/contracts/lib/Mimc.sol": { + "Mimc": [ + { + "length": 20, + "start": 572 + }, + { + "length": 20, + "start": 768 + }, + { + "length": 20, + "start": 1043 + }, + { + "length": 20, + "start": 1788 + }, + { + "length": 20, + "start": 1974 + }, + { + "length": 20, + "start": 2276 + }, + { + "length": 20, + "start": 2606 + }, + { + "length": 20, + "start": 2792 + }, + { + "length": 20, + "start": 2987 + } + ] + } + }, + "object": "611a61610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80635ea5a98f1461007157806360f0f00f146100a15780638c628e40146100d1578063b893e57914610101578063cc5c21ea14610131578063ceeef50414610161575b600080fd5b61008b60048036038101906100869190610d7c565b610191565b6040516100989190610e50565b60405180910390f35b6100bb60048036038101906100b69190610d7c565b6101ab565b6040516100c89190610f09565b60405180910390f35b6100eb60048036038101906100e69190610d7c565b6101c5565b6040516100f89190610f33565b60405180910390f35b61011b60048036038101906101169190610d7c565b6102aa565b6040516101289190610f33565b60405180910390f35b61014b60048036038101906101469190610ffc565b61032e565b604051610158919061108b565b60405180910390f35b61017b600480360381019061017691906110a6565b6103ad565b6040516101889190610f33565b60405180910390f35b610199610c82565b6101a38383610461565b905092915050565b6101b3610cb0565b6101bd83836104ce565b905092915050565b6000806101d284846104ce565b90506000806101e4836080015161053b565b9150915073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de846000015185602001518660400151876060015186888a60a001516040516020016102339796959493929190611100565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161025e91906111ff565b602060405180830381865af415801561027b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029f9190611236565b935050505092915050565b600073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de84846040518363ffffffff1660e01b81526004016102e592919061129f565b602060405180830381865af4158015610302573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103269190611236565b905092915050565b6000602a858590501461037e57602a858590506040517fe2d2ab0a0000000000000000000000000000000000000000000000000000000081526004016103759291906112c3565b60405180910390fd5b600080600061038d888861055e565b9250925092506103a08183888887610963565b9350505050949350505050565b60008060006103bb8461053b565b9150915073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de82846040516020016103ec92919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161041791906111ff565b602060405180830381865af4158015610434573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104589190611236565b92505050919050565b610469610c82565b608083839050146104b7576080838390506040517f7b45159f0000000000000000000000000000000000000000000000000000000081526004016104ae92919061137e565b60405180910390fd5b82828101906104c6919061149f565b905092915050565b6104d6610cb0565b60c083839050146105245760c0838390506040517f7b45159f00000000000000000000000000000000000000000000000000000000815260040161051b929190611507565b60405180910390fd5b828281019061053391906115fc565b905092915050565b6000808260801c91506fffffffffffffffffffffffffffffffff83169050915091565b60008060606000858590509050600060028261057a9190611658565b905060008167ffffffffffffffff811115610598576105976113ac565b5b6040519080825280602002602001820160405280156105c65781602001602082028036833780820191505090505b5090506040888860008181106105df576105de61168c565b5b90506020028101906105f191906116ca565b90501461065f5760408888600081811061060e5761060d61168c565b5b905060200281019061062091906116ca565b90506040517f7b45159f000000000000000000000000000000000000000000000000000000008152600401610656929190611768565b60405180910390fd5b6000888860008181106106755761067461168c565b5b905060200281019061068791906116ca565b6000906020926106999392919061179b565b906106a491906117ee565b9050600073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8b8b6001896106d19190611658565b8181106106e1576106e061168c565b5b90506020028101906106f391906116ca565b6040518363ffffffff1660e01b815260040161071092919061129f565b602060405180830381865af415801561072d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107519190611236565b90506000600190505b848110156108345773__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8c8c8481811061078f5761078e61168c565b5b90506020028101906107a191906116ca565b6040518363ffffffff1660e01b81526004016107be92919061129f565b602060405180830381865af41580156107db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ff9190611236565b84828761080c9190611658565b8151811061081d5761081c61168c565b5b60200260200101818152505080600101905061075a565b506108628a8a8681811061084b5761084a61168c565b5b905060200281019061085d91906116ca565b610bfe565b15610890576000801b8360008151811061087f5761087e61168c565b5b60200260200101818152505061094e565b73__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8b8b878181106108bd576108bc61168c565b5b90506020028101906108cf91906116ca565b6040518363ffffffff1660e01b81526004016108ec92919061129f565b602060405180830381865af4158015610909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092d9190611236565b836000815181106109415761094061168c565b5b6020026020010181815250505b81818497509750975050505050509250925092565b600080859050600085905060016028600261097e9190611980565b6109889190611658565b8611156109c1576040517f382f093000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b6028811015610b55576001808284901c1603610a945773__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8a8381518110610a0757610a0661168c565b5b602002602001015185604051602001610a2192919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610a4c91906111ff565b602060405180830381865af4158015610a69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8d9190611236565b9250610b4a565b73__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de848b8481518110610ac257610ac161168c565b5b6020026020010151604051602001610adb92919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610b0691906111ff565b602060405180830381865af4158015610b23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b479190611236565b92505b8060010190506109c4565b508473__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8685604051602001610b8492919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610baf91906111ff565b602060405180830381865af4158015610bcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf09190611236565b149250505095945050505050565b600080602084849050610c1191906119fa565b14610c48576040517fe61963f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001905082805b838201811015610c7a5780356000811503610c6e576000935050610c7a565b50602081019050610c4f565b505092915050565b6040518060800160405280600081526020016000815260200160008019168152602001600080191681525090565b6040518060c00160405280600067ffffffffffffffff16815260200160008152602001600080191681526020016000801916815260200160008019168152602001600067ffffffffffffffff1681525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610d3c57610d3b610d17565b5b8235905067ffffffffffffffff811115610d5957610d58610d1c565b5b602083019150836001820283011115610d7557610d74610d21565b5b9250929050565b60008060208385031215610d9357610d92610d0d565b5b600083013567ffffffffffffffff811115610db157610db0610d12565b5b610dbd85828601610d26565b92509250509250929050565b6000819050919050565b610ddc81610dc9565b82525050565b6000819050919050565b610df581610de2565b82525050565b608082016000820151610e116000850182610dd3565b506020820151610e246020850182610dd3565b506040820151610e376040850182610dec565b506060820151610e4a6060850182610dec565b50505050565b6000608082019050610e656000830184610dfb565b92915050565b600067ffffffffffffffff82169050919050565b610e8881610e6b565b82525050565b60c082016000820151610ea46000850182610e7f565b506020820151610eb76020850182610dd3565b506040820151610eca6040850182610dec565b506060820151610edd6060850182610dec565b506080820151610ef06080850182610dec565b5060a0820151610f0360a0850182610e7f565b50505050565b600060c082019050610f1e6000830184610e8e565b92915050565b610f2d81610de2565b82525050565b6000602082019050610f486000830184610f24565b92915050565b60008083601f840112610f6457610f63610d17565b5b8235905067ffffffffffffffff811115610f8157610f80610d1c565b5b602083019150836020820283011115610f9d57610f9c610d21565b5b9250929050565b610fad81610dc9565b8114610fb857600080fd5b50565b600081359050610fca81610fa4565b92915050565b610fd981610de2565b8114610fe457600080fd5b50565b600081359050610ff681610fd0565b92915050565b6000806000806060858703121561101657611015610d0d565b5b600085013567ffffffffffffffff81111561103457611033610d12565b5b61104087828801610f4e565b9450945050602061105387828801610fbb565b925050604061106487828801610fe7565b91505092959194509250565b60008115159050919050565b61108581611070565b82525050565b60006020820190506110a0600083018461107c565b92915050565b6000602082840312156110bc576110bb610d0d565b5b60006110ca84828501610fe7565b91505092915050565b6110dc81610e6b565b82525050565b6110eb81610dc9565b82525050565b6110fa81610de2565b82525050565b600060e082019050611115600083018a6110d3565b61112260208301896110e2565b61112f60408301886110f1565b61113c60608301876110f1565b61114960808301866110f1565b61115660a08301856110f1565b61116360c08301846110d3565b98975050505050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111a957808201518184015260208101905061118e565b60008484015250505050565b6000601f19601f8301169050919050565b60006111d18261116f565b6111db818561117a565b93506111eb81856020860161118b565b6111f4816111b5565b840191505092915050565b6000602082019050818103600083015261121981846111c6565b905092915050565b60008151905061123081610fd0565b92915050565b60006020828403121561124c5761124b610d0d565b5b600061125a84828501611221565b91505092915050565b82818337600083830152505050565b600061127e838561117a565b935061128b838584611263565b611294836111b5565b840190509392505050565b600060208201905081810360008301526112ba818486611272565b90509392505050565b60006040820190506112d860008301856110e2565b6112e560208301846110e2565b9392505050565b6000819050919050565b61130761130282610de2565b6112ec565b82525050565b600061131982856112f6565b60208201915061132982846112f6565b6020820191508190509392505050565b6000819050919050565b6000819050919050565b600061136861136361135e84611339565b611343565b610dc9565b9050919050565b6113788161134d565b82525050565b6000604082019050611393600083018561136f565b6113a060208301846110e2565b9392505050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6113e4826111b5565b810181811067ffffffffffffffff82111715611403576114026113ac565b5b80604052505050565b6000611416610d03565b905061142282826113db565b919050565b60006080828403121561143d5761143c6113a7565b5b611447608061140c565b9050600061145784828501610fbb565b600083015250602061146b84828501610fbb565b602083015250604061147f84828501610fe7565b604083015250606061149384828501610fe7565b60608301525092915050565b6000608082840312156114b5576114b4610d0d565b5b60006114c384828501611427565b91505092915050565b6000819050919050565b60006114f16114ec6114e7846114cc565b611343565b610dc9565b9050919050565b611501816114d6565b82525050565b600060408201905061151c60008301856114f8565b61152960208301846110e2565b9392505050565b61153981610e6b565b811461154457600080fd5b50565b60008135905061155681611530565b92915050565b600060c08284031215611572576115716113a7565b5b61157c60c061140c565b9050600061158c84828501611547565b60008301525060206115a084828501610fbb565b60208301525060406115b484828501610fe7565b60408301525060606115c884828501610fe7565b60608301525060806115dc84828501610fe7565b60808301525060a06115f084828501611547565b60a08301525092915050565b600060c0828403121561161257611611610d0d565b5b60006116208482850161155c565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061166382610dc9565b915061166e83610dc9565b925082820390508181111561168657611685611629565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126116e7576116e66116bb565b5b80840192508235915067ffffffffffffffff821115611709576117086116c0565b5b602083019250600182023603831315611725576117246116c5565b5b509250929050565b6000819050919050565b600061175261174d6117488461172d565b611343565b610dc9565b9050919050565b61176281611737565b82525050565b600060408201905061177d6000830185611759565b61178a60208301846110e2565b9392505050565b600080fd5b600080fd5b600080858511156117af576117ae611791565b5b838611156117c0576117bf611796565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b60006117fa83836117d6565b826118058135610de2565b92506020821015611845576118407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026117e1565b831692505b505092915050565b60008160011c9050919050565b6000808291508390505b60018511156118a4578086048111156118805761187f611629565b5b600185161561188f5780820291505b808102905061189d8561184d565b9450611864565b94509492505050565b6000826118bd5760019050611979565b816118cb5760009050611979565b81600181146118e157600281146118eb5761191a565b6001915050611979565b60ff8411156118fd576118fc611629565b5b8360020a91508482111561191457611913611629565b5b50611979565b5060208310610133831016604e8410600b841016171561194f5782820a90508381111561194a57611949611629565b5b611979565b61195c848484600161185a565b9250905081840481111561197357611972611629565b5b81810290505b9392505050565b600061198b82610dc9565b915061199683610dc9565b92506119c37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846118ad565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611a0582610dc9565b9150611a1083610dc9565b925082611a2057611a1f6119cb565b5b82820690509291505056fea26469706673582212201ad8833fcef5ec3ba5742b7c244b9c0029cb66362c037d239b6f986bc0df920964736f6c63430008190033", + "opcodes": "PUSH2 0x1A61 PUSH2 0x52 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x45 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x6C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5EA5A98F EQ PUSH2 0x71 JUMPI DUP1 PUSH4 0x60F0F00F EQ PUSH2 0xA1 JUMPI DUP1 PUSH4 0x8C628E40 EQ PUSH2 0xD1 JUMPI DUP1 PUSH4 0xB893E579 EQ PUSH2 0x101 JUMPI DUP1 PUSH4 0xCC5C21EA EQ PUSH2 0x131 JUMPI DUP1 PUSH4 0xCEEEF504 EQ PUSH2 0x161 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x8B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x86 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x98 SWAP2 SWAP1 PUSH2 0xE50 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xBB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB6 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x1AB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC8 SWAP2 SWAP1 PUSH2 0xF09 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xEB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE6 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xF8 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x11B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x116 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x2AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x128 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x146 SWAP2 SWAP1 PUSH2 0xFFC JUMP JUMPDEST PUSH2 0x32E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x158 SWAP2 SWAP1 PUSH2 0x108B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x176 SWAP2 SWAP1 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x3AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0xC82 JUMP JUMPDEST PUSH2 0x1A3 DUP4 DUP4 PUSH2 0x461 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1B3 PUSH2 0xCB0 JUMP JUMPDEST PUSH2 0x1BD DUP4 DUP4 PUSH2 0x4CE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1D2 DUP5 DUP5 PUSH2 0x4CE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x1E4 DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x53B JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x20 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD DUP8 PUSH1 0x60 ADD MLOAD DUP7 DUP9 DUP11 PUSH1 0xA0 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x233 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25E SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x27B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x29F SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5 SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x302 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x326 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2A DUP6 DUP6 SWAP1 POP EQ PUSH2 0x37E JUMPI PUSH1 0x2A DUP6 DUP6 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0xE2D2AB0A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x375 SWAP3 SWAP2 SWAP1 PUSH2 0x12C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x38D DUP9 DUP9 PUSH2 0x55E JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x3A0 DUP2 DUP4 DUP9 DUP9 DUP8 PUSH2 0x963 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3BB DUP5 PUSH2 0x53B JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH20 0x0 PUSH4 0xAA1E84DE DUP3 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x3EC SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x417 SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x434 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x458 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x469 PUSH2 0xC82 JUMP JUMPDEST PUSH1 0x80 DUP4 DUP4 SWAP1 POP EQ PUSH2 0x4B7 JUMPI PUSH1 0x80 DUP4 DUP4 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4AE SWAP3 SWAP2 SWAP1 PUSH2 0x137E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP3 DUP2 ADD SWAP1 PUSH2 0x4C6 SWAP2 SWAP1 PUSH2 0x149F JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4D6 PUSH2 0xCB0 JUMP JUMPDEST PUSH1 0xC0 DUP4 DUP4 SWAP1 POP EQ PUSH2 0x524 JUMPI PUSH1 0xC0 DUP4 DUP4 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP3 SWAP2 SWAP1 PUSH2 0x1507 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP3 DUP2 ADD SWAP1 PUSH2 0x533 SWAP2 SWAP1 PUSH2 0x15FC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x80 SHR SWAP2 POP PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND SWAP1 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x60 PUSH1 0x0 DUP6 DUP6 SWAP1 POP SWAP1 POP PUSH1 0x0 PUSH1 0x2 DUP3 PUSH2 0x57A SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x598 JUMPI PUSH2 0x597 PUSH2 0x13AC JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5C6 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x40 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x5DF JUMPI PUSH2 0x5DE PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x5F1 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x65F JUMPI PUSH1 0x40 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x60E JUMPI PUSH2 0x60D PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x620 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x656 SWAP3 SWAP2 SWAP1 PUSH2 0x1768 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x675 JUMPI PUSH2 0x674 PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x687 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x0 SWAP1 PUSH1 0x20 SWAP3 PUSH2 0x699 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x179B JUMP JUMPDEST SWAP1 PUSH2 0x6A4 SWAP2 SWAP1 PUSH2 0x17EE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xAA1E84DE DUP12 DUP12 PUSH1 0x1 DUP10 PUSH2 0x6D1 SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP2 DUP2 LT PUSH2 0x6E1 JUMPI PUSH2 0x6E0 PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x6F3 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x710 SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x72D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x751 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP5 DUP2 LT ISZERO PUSH2 0x834 JUMPI PUSH20 0x0 PUSH4 0xAA1E84DE DUP13 DUP13 DUP5 DUP2 DUP2 LT PUSH2 0x78F JUMPI PUSH2 0x78E PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x7A1 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7BE SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x7DB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7FF SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST DUP5 DUP3 DUP8 PUSH2 0x80C SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x81D JUMPI PUSH2 0x81C PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x75A JUMP JUMPDEST POP PUSH2 0x862 DUP11 DUP11 DUP7 DUP2 DUP2 LT PUSH2 0x84B JUMPI PUSH2 0x84A PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x85D SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH2 0xBFE JUMP JUMPDEST ISZERO PUSH2 0x890 JUMPI PUSH1 0x0 DUP1 SHL DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x87F JUMPI PUSH2 0x87E PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x94E JUMP JUMPDEST PUSH20 0x0 PUSH4 0xAA1E84DE DUP12 DUP12 DUP8 DUP2 DUP2 LT PUSH2 0x8BD JUMPI PUSH2 0x8BC PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8EC SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x909 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x92D SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x941 JUMPI PUSH2 0x940 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP JUMPDEST DUP2 DUP2 DUP5 SWAP8 POP SWAP8 POP SWAP8 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 SWAP1 POP PUSH1 0x0 DUP6 SWAP1 POP PUSH1 0x1 PUSH1 0x28 PUSH1 0x2 PUSH2 0x97E SWAP2 SWAP1 PUSH2 0x1980 JUMP JUMPDEST PUSH2 0x988 SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP7 GT ISZERO PUSH2 0x9C1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x382F093000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x28 DUP2 LT ISZERO PUSH2 0xB55 JUMPI PUSH1 0x1 DUP1 DUP3 DUP5 SWAP1 SHR AND SUB PUSH2 0xA94 JUMPI PUSH20 0x0 PUSH4 0xAA1E84DE DUP11 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0xA07 JUMPI PUSH2 0xA06 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA21 SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA4C SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xA69 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA8D SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP PUSH2 0xB4A JUMP JUMPDEST PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 DUP12 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0xAC2 JUMPI PUSH2 0xAC1 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xADB SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB06 SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xB23 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xB47 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP JUMPDEST DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x9C4 JUMP JUMPDEST POP DUP5 PUSH20 0x0 PUSH4 0xAA1E84DE DUP7 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB84 SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBAF SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xBCC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBF0 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST EQ SWAP3 POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP5 DUP5 SWAP1 POP PUSH2 0xC11 SWAP2 SWAP1 PUSH2 0x19FA JUMP JUMPDEST EQ PUSH2 0xC48 JUMPI PUSH1 0x40 MLOAD PUSH32 0xE61963F400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 SWAP1 POP DUP3 DUP1 JUMPDEST DUP4 DUP3 ADD DUP2 LT ISZERO PUSH2 0xC7A JUMPI DUP1 CALLDATALOAD PUSH1 0x0 DUP2 ISZERO SUB PUSH2 0xC6E JUMPI PUSH1 0x0 SWAP4 POP POP PUSH2 0xC7A JUMP JUMPDEST POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xC4F JUMP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD3C JUMPI PUSH2 0xD3B PUSH2 0xD17 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD59 JUMPI PUSH2 0xD58 PUSH2 0xD1C JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0xD75 JUMPI PUSH2 0xD74 PUSH2 0xD21 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xD93 JUMPI PUSH2 0xD92 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xDB1 JUMPI PUSH2 0xDB0 PUSH2 0xD12 JUMP JUMPDEST JUMPDEST PUSH2 0xDBD DUP6 DUP3 DUP7 ADD PUSH2 0xD26 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDDC DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDF5 DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x80 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0xE11 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0xE24 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0xE37 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xE4A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0xE65 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xDFB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE88 DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0xC0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0xEA4 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0xE7F JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0xEB7 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0xECA PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xEDD PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0xEF0 PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0xA0 DUP3 ADD MLOAD PUSH2 0xF03 PUSH1 0xA0 DUP6 ADD DUP3 PUSH2 0xE7F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0xF1E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xE8E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xF2D DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xF48 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xF24 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xF64 JUMPI PUSH2 0xF63 PUSH2 0xD17 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xF81 JUMPI PUSH2 0xF80 PUSH2 0xD1C JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0xF9D JUMPI PUSH2 0xF9C PUSH2 0xD21 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0xFAD DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP2 EQ PUSH2 0xFB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFCA DUP2 PUSH2 0xFA4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xFD9 DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP2 EQ PUSH2 0xFE4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF6 DUP2 PUSH2 0xFD0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1016 JUMPI PUSH2 0x1015 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1034 JUMPI PUSH2 0x1033 PUSH2 0xD12 JUMP JUMPDEST JUMPDEST PUSH2 0x1040 DUP8 DUP3 DUP9 ADD PUSH2 0xF4E JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 PUSH2 0x1053 DUP8 DUP3 DUP9 ADD PUSH2 0xFBB JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x1064 DUP8 DUP3 DUP9 ADD PUSH2 0xFE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1085 DUP2 PUSH2 0x1070 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x10A0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x107C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10BC JUMPI PUSH2 0x10BB PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x10CA DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x10DC DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x10EB DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x10FA DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x1115 PUSH1 0x0 DUP4 ADD DUP11 PUSH2 0x10D3 JUMP JUMPDEST PUSH2 0x1122 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x10E2 JUMP JUMPDEST PUSH2 0x112F PUSH1 0x40 DUP4 ADD DUP9 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x113C PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1149 PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1156 PUSH1 0xA0 DUP4 ADD DUP6 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1163 PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x10D3 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x11A9 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x118E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11D1 DUP3 PUSH2 0x116F JUMP JUMPDEST PUSH2 0x11DB DUP2 DUP6 PUSH2 0x117A JUMP JUMPDEST SWAP4 POP PUSH2 0x11EB DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x118B JUMP JUMPDEST PUSH2 0x11F4 DUP2 PUSH2 0x11B5 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1219 DUP2 DUP5 PUSH2 0x11C6 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1230 DUP2 PUSH2 0xFD0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x124C JUMPI PUSH2 0x124B PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x125A DUP5 DUP3 DUP6 ADD PUSH2 0x1221 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x127E DUP4 DUP6 PUSH2 0x117A JUMP JUMPDEST SWAP4 POP PUSH2 0x128B DUP4 DUP6 DUP5 PUSH2 0x1263 JUMP JUMPDEST PUSH2 0x1294 DUP4 PUSH2 0x11B5 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x12BA DUP2 DUP5 DUP7 PUSH2 0x1272 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12D8 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x10E2 JUMP JUMPDEST PUSH2 0x12E5 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1307 PUSH2 0x1302 DUP3 PUSH2 0xDE2 JUMP JUMPDEST PUSH2 0x12EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1319 DUP3 DUP6 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1329 DUP3 DUP5 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1368 PUSH2 0x1363 PUSH2 0x135E DUP5 PUSH2 0x1339 JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1378 DUP2 PUSH2 0x134D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1393 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x136F JUMP JUMPDEST PUSH2 0x13A0 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x13E4 DUP3 PUSH2 0x11B5 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1403 JUMPI PUSH2 0x1402 PUSH2 0x13AC JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1416 PUSH2 0xD03 JUMP JUMPDEST SWAP1 POP PUSH2 0x1422 DUP3 DUP3 PUSH2 0x13DB JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x143D JUMPI PUSH2 0x143C PUSH2 0x13A7 JUMP JUMPDEST JUMPDEST PUSH2 0x1447 PUSH1 0x80 PUSH2 0x140C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1457 DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x146B DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x147F DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1493 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x14B5 JUMPI PUSH2 0x14B4 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x14C3 DUP5 DUP3 DUP6 ADD PUSH2 0x1427 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14F1 PUSH2 0x14EC PUSH2 0x14E7 DUP5 PUSH2 0x14CC JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1501 DUP2 PUSH2 0x14D6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x151C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x14F8 JUMP JUMPDEST PUSH2 0x1529 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x1539 DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP2 EQ PUSH2 0x1544 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1556 DUP2 PUSH2 0x1530 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1572 JUMPI PUSH2 0x1571 PUSH2 0x13A7 JUMP JUMPDEST JUMPDEST PUSH2 0x157C PUSH1 0xC0 PUSH2 0x140C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x158C DUP5 DUP3 DUP6 ADD PUSH2 0x1547 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x15A0 DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x15B4 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x15C8 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x15DC DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x15F0 DUP5 DUP3 DUP6 ADD PUSH2 0x1547 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1612 JUMPI PUSH2 0x1611 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1620 DUP5 DUP3 DUP6 ADD PUSH2 0x155C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1663 DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x166E DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x1686 JUMPI PUSH2 0x1685 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1 PUSH1 0x20 SUB DUP5 CALLDATASIZE SUB SUB DUP2 SLT PUSH2 0x16E7 JUMPI PUSH2 0x16E6 PUSH2 0x16BB JUMP JUMPDEST JUMPDEST DUP1 DUP5 ADD SWAP3 POP DUP3 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1709 JUMPI PUSH2 0x1708 PUSH2 0x16C0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP3 POP PUSH1 0x1 DUP3 MUL CALLDATASIZE SUB DUP4 SGT ISZERO PUSH2 0x1725 JUMPI PUSH2 0x1724 PUSH2 0x16C5 JUMP JUMPDEST JUMPDEST POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1752 PUSH2 0x174D PUSH2 0x1748 DUP5 PUSH2 0x172D JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1762 DUP2 PUSH2 0x1737 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x177D PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1759 JUMP JUMPDEST PUSH2 0x178A PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x17AF JUMPI PUSH2 0x17AE PUSH2 0x1791 JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x17C0 JUMPI PUSH2 0x17BF PUSH2 0x1796 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17FA DUP4 DUP4 PUSH2 0x17D6 JUMP JUMPDEST DUP3 PUSH2 0x1805 DUP2 CALLDATALOAD PUSH2 0xDE2 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x1845 JUMPI PUSH2 0x1840 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x17E1 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x18A4 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x1880 JUMPI PUSH2 0x187F PUSH2 0x1629 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x188F JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x189D DUP6 PUSH2 0x184D JUMP JUMPDEST SWAP5 POP PUSH2 0x1864 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x18BD JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x1979 JUMP JUMPDEST DUP2 PUSH2 0x18CB JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x1979 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x18E1 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x18EB JUMPI PUSH2 0x191A JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x1979 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x18FD JUMPI PUSH2 0x18FC PUSH2 0x1629 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x1914 JUMPI PUSH2 0x1913 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST POP PUSH2 0x1979 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x194F JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x194A JUMPI PUSH2 0x1949 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST PUSH2 0x1979 JUMP JUMPDEST PUSH2 0x195C DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x185A JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x1973 JUMPI PUSH2 0x1972 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x198B DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x1996 DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP PUSH2 0x19C3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x18AD JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1A05 DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x1A10 DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1A20 JUMPI PUSH2 0x1A1F PUSH2 0x19CB JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BYTE 0xD8 DUP4 EXTCODEHASH 0xCE CREATE2 0xEC EXTCODESIZE 0xA5 PUSH21 0x2B7C244B9C0029CB66362C037D239B6F986BC0DF92 MULMOD PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "283:9312:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_formatProof_2178": { + "entryPoint": 1374, + "id": 2178, + "parameterSlots": 2, + "returnSlots": 3 + }, + "@_isZeroBytes_2203": { + "entryPoint": 3070, + "id": 2203, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_parseAccount_2035": { + "entryPoint": 1230, + "id": 2035, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_parseLeaf_2006": { + "entryPoint": 1121, + "id": 2006, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_splitBytes32_2047": { + "entryPoint": 1339, + "id": 2047, + "parameterSlots": 1, + "returnSlots": 2 + }, + "@_verify_2294": { + "entryPoint": 2403, + "id": 2294, + "parameterSlots": 5, + "returnSlots": 1 + }, + "@getAccount_1907": { + "entryPoint": 427, + "id": 1907, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@getLeaf_1893": { + "entryPoint": 401, + "id": 1893, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@hashAccountValue_1951": { + "entryPoint": 453, + "id": 1951, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@hashStorageValue_1977": { + "entryPoint": 941, + "id": 1977, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@mimcHash_1879": { + "entryPoint": 682, + "id": 1879, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@verifyProof_1865": { + "entryPoint": 814, + "id": 1865, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": { + "entryPoint": 3918, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_bytes32": { + "entryPoint": 4071, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 4641, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_calldata_ptr": { + "entryPoint": 3366, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_struct$_Account_$1774_memory_ptr": { + "entryPoint": 5468, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_struct$_Leaf_$1784_memory_ptr": { + "entryPoint": 5159, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 4027, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint64": { + "entryPoint": 5447, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptrt_uint256t_bytes32": { + "entryPoint": 4092, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 4262, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 4662, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_calldata_ptr": { + "entryPoint": 3452, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_struct$_Account_$1774_memory_ptr": { + "entryPoint": 5628, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr": { + "entryPoint": 5279, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool_fromStack_library": { + "entryPoint": 4220, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 4337, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack_library": { + "entryPoint": 3876, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_library": { + "entryPoint": 3564, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { + "entryPoint": 4854, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 4722, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 4550, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_rational_128_by_1_to_t_uint256_fromStack": { + "entryPoint": 4975, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_rational_192_by_1_to_t_uint256_fromStack": { + "entryPoint": 5368, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_rational_64_by_1_to_t_uint256_fromStack": { + "entryPoint": 5977, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_struct$_Account_$1774_memory_ptr_to_t_struct$_Account_$1774_memory_ptr_fromStack_library": { + "entryPoint": 3726, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_struct$_Leaf_$1784_memory_ptr_to_t_struct$_Leaf_$1784_memory_ptr_fromStack_library": { + "entryPoint": 3579, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 4322, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_library": { + "entryPoint": 3539, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint64_to_t_uint64_fromStack": { + "entryPoint": 4307, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint64_to_t_uint64_library": { + "entryPoint": 3711, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 4877, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed": { + "entryPoint": 4235, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed": { + "entryPoint": 3891, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 4767, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 4607, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_rational_128_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 4990, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_rational_192_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 5383, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_rational_64_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 5992, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_struct$_Account_$1774_memory_ptr__to_t_struct$_Account_$1774_memory_ptr__fromStack_library_reversed": { + "entryPoint": 3849, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_struct$_Leaf_$1784_memory_ptr__to_t_struct$_Leaf_$1784_memory_ptr__fromStack_library_reversed": { + "entryPoint": 3664, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 4803, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__to_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__fromStack_reversed": { + "entryPoint": 4352, + "id": null, + "parameterSlots": 8, + "returnSlots": 1 + }, + "access_calldata_tail_t_bytes_calldata_ptr": { + "entryPoint": 5834, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "allocate_memory": { + "entryPoint": 5132, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 3331, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_calldata_ptr": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_calldata_ptr": { + "entryPoint": 6102, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 4463, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 4474, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "calldata_array_index_range_access_t_bytes_calldata_ptr": { + "entryPoint": 6043, + "id": null, + "parameterSlots": 4, + "returnSlots": 2 + }, + "checked_exp_helper": { + "entryPoint": 6234, + "id": null, + "parameterSlots": 4, + "returnSlots": 2 + }, + "checked_exp_t_uint256_t_uint256": { + "entryPoint": 6528, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_exp_unsigned": { + "entryPoint": 6317, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 5720, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 4208, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 3554, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_128_by_1": { + "entryPoint": 4921, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_192_by_1": { + "entryPoint": 5324, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_64_by_1": { + "entryPoint": 5933, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 3529, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 3691, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32": { + "entryPoint": 6126, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "convert_t_rational_128_by_1_to_t_uint256": { + "entryPoint": 4941, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_rational_192_by_1_to_t_uint256": { + "entryPoint": 5334, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_rational_64_by_1_to_t_uint256": { + "entryPoint": 5943, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 4707, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 4491, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "finalize_allocation": { + "entryPoint": 5083, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 4931, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_bytes32": { + "entryPoint": 4844, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mod_t_uint256": { + "entryPoint": 6650, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 5673, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x12": { + "entryPoint": 6603, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 5772, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 5036, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { + "entryPoint": 3356, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 3351, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a": { + "entryPoint": 5824, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f": { + "entryPoint": 5031, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad": { + "entryPoint": 5819, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c": { + "entryPoint": 6038, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a": { + "entryPoint": 6033, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 3361, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e": { + "entryPoint": 5829, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 3346, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 3341, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 4533, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 6113, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_1_unsigned": { + "entryPoint": 6221, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "validator_revert_t_bytes32": { + "entryPoint": 4048, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 4004, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint64": { + "entryPoint": 5424, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:26093:74", + "nodeType": "YulBlock", + "src": "0:26093:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "669:28:74", + "nodeType": "YulBlock", + "src": "669:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "686:1:74", + "nodeType": "YulLiteral", + "src": "686:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "689:1:74", + "nodeType": "YulLiteral", + "src": "689:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "679:6:74", + "nodeType": "YulIdentifier", + "src": "679:6:74" + }, + "nativeSrc": "679:12:74", + "nodeType": "YulFunctionCall", + "src": "679:12:74" + }, + "nativeSrc": "679:12:74", + "nodeType": "YulExpressionStatement", + "src": "679:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "580:117:74", + "nodeType": "YulFunctionDefinition", + "src": "580:117:74" + }, + { + "body": { + "nativeSrc": "790:478:74", + "nodeType": "YulBlock", + "src": "790:478:74", + "statements": [ + { + "body": { + "nativeSrc": "839:83:74", + "nodeType": "YulBlock", + "src": "839:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "841:77:74", + "nodeType": "YulIdentifier", + "src": "841:77:74" + }, + "nativeSrc": "841:79:74", + "nodeType": "YulFunctionCall", + "src": "841:79:74" + }, + "nativeSrc": "841:79:74", + "nodeType": "YulExpressionStatement", + "src": "841:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "818:6:74", + "nodeType": "YulIdentifier", + "src": "818:6:74" + }, + { + "kind": "number", + "nativeSrc": "826:4:74", + "nodeType": "YulLiteral", + "src": "826:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "814:3:74", + "nodeType": "YulIdentifier", + "src": "814:3:74" + }, + "nativeSrc": "814:17:74", + "nodeType": "YulFunctionCall", + "src": "814:17:74" + }, + { + "name": "end", + "nativeSrc": "833:3:74", + "nodeType": "YulIdentifier", + "src": "833:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "810:3:74", + "nodeType": "YulIdentifier", + "src": "810:3:74" + }, + "nativeSrc": "810:27:74", + "nodeType": "YulFunctionCall", + "src": "810:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "803:6:74", + "nodeType": "YulIdentifier", + "src": "803:6:74" + }, + "nativeSrc": "803:35:74", + "nodeType": "YulFunctionCall", + "src": "803:35:74" + }, + "nativeSrc": "800:122:74", + "nodeType": "YulIf", + "src": "800:122:74" + }, + { + "nativeSrc": "931:30:74", + "nodeType": "YulAssignment", + "src": "931:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "954:6:74", + "nodeType": "YulIdentifier", + "src": "954:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "941:12:74", + "nodeType": "YulIdentifier", + "src": "941:12:74" + }, + "nativeSrc": "941:20:74", + "nodeType": "YulFunctionCall", + "src": "941:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "931:6:74", + "nodeType": "YulIdentifier", + "src": "931:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "1004:83:74", + "nodeType": "YulBlock", + "src": "1004:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "1006:77:74", + "nodeType": "YulIdentifier", + "src": "1006:77:74" + }, + "nativeSrc": "1006:79:74", + "nodeType": "YulFunctionCall", + "src": "1006:79:74" + }, + "nativeSrc": "1006:79:74", + "nodeType": "YulExpressionStatement", + "src": "1006:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "976:6:74", + "nodeType": "YulIdentifier", + "src": "976:6:74" + }, + { + "kind": "number", + "nativeSrc": "984:18:74", + "nodeType": "YulLiteral", + "src": "984:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "973:2:74", + "nodeType": "YulIdentifier", + "src": "973:2:74" + }, + "nativeSrc": "973:30:74", + "nodeType": "YulFunctionCall", + "src": "973:30:74" + }, + "nativeSrc": "970:117:74", + "nodeType": "YulIf", + "src": "970:117:74" + }, + { + "nativeSrc": "1096:29:74", + "nodeType": "YulAssignment", + "src": "1096:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1112:6:74", + "nodeType": "YulIdentifier", + "src": "1112:6:74" + }, + { + "kind": "number", + "nativeSrc": "1120:4:74", + "nodeType": "YulLiteral", + "src": "1120:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1108:3:74", + "nodeType": "YulIdentifier", + "src": "1108:3:74" + }, + "nativeSrc": "1108:17:74", + "nodeType": "YulFunctionCall", + "src": "1108:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "1096:8:74", + "nodeType": "YulIdentifier", + "src": "1096:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "1179:83:74", + "nodeType": "YulBlock", + "src": "1179:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "1181:77:74", + "nodeType": "YulIdentifier", + "src": "1181:77:74" + }, + "nativeSrc": "1181:79:74", + "nodeType": "YulFunctionCall", + "src": "1181:79:74" + }, + "nativeSrc": "1181:79:74", + "nodeType": "YulExpressionStatement", + "src": "1181:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "1144:8:74", + "nodeType": "YulIdentifier", + "src": "1144:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "1158:6:74", + "nodeType": "YulIdentifier", + "src": "1158:6:74" + }, + { + "kind": "number", + "nativeSrc": "1166:4:74", + "nodeType": "YulLiteral", + "src": "1166:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "1154:3:74", + "nodeType": "YulIdentifier", + "src": "1154:3:74" + }, + "nativeSrc": "1154:17:74", + "nodeType": "YulFunctionCall", + "src": "1154:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1140:3:74", + "nodeType": "YulIdentifier", + "src": "1140:3:74" + }, + "nativeSrc": "1140:32:74", + "nodeType": "YulFunctionCall", + "src": "1140:32:74" + }, + { + "name": "end", + "nativeSrc": "1174:3:74", + "nodeType": "YulIdentifier", + "src": "1174:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1137:2:74", + "nodeType": "YulIdentifier", + "src": "1137:2:74" + }, + "nativeSrc": "1137:41:74", + "nodeType": "YulFunctionCall", + "src": "1137:41:74" + }, + "nativeSrc": "1134:128:74", + "nodeType": "YulIf", + "src": "1134:128:74" + } + ] + }, + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "716:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "757:6:74", + "nodeType": "YulTypedName", + "src": "757:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "765:3:74", + "nodeType": "YulTypedName", + "src": "765:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "773:8:74", + "nodeType": "YulTypedName", + "src": "773:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "783:6:74", + "nodeType": "YulTypedName", + "src": "783:6:74", + "type": "" + } + ], + "src": "716:552:74" + }, + { + "body": { + "nativeSrc": "1359:442:74", + "nodeType": "YulBlock", + "src": "1359:442:74", + "statements": [ + { + "body": { + "nativeSrc": "1405:83:74", + "nodeType": "YulBlock", + "src": "1405:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1407:77:74", + "nodeType": "YulIdentifier", + "src": "1407:77:74" + }, + "nativeSrc": "1407:79:74", + "nodeType": "YulFunctionCall", + "src": "1407:79:74" + }, + "nativeSrc": "1407:79:74", + "nodeType": "YulExpressionStatement", + "src": "1407:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1380:7:74", + "nodeType": "YulIdentifier", + "src": "1380:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1389:9:74", + "nodeType": "YulIdentifier", + "src": "1389:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1376:3:74", + "nodeType": "YulIdentifier", + "src": "1376:3:74" + }, + "nativeSrc": "1376:23:74", + "nodeType": "YulFunctionCall", + "src": "1376:23:74" + }, + { + "kind": "number", + "nativeSrc": "1401:2:74", + "nodeType": "YulLiteral", + "src": "1401:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1372:3:74", + "nodeType": "YulIdentifier", + "src": "1372:3:74" + }, + "nativeSrc": "1372:32:74", + "nodeType": "YulFunctionCall", + "src": "1372:32:74" + }, + "nativeSrc": "1369:119:74", + "nodeType": "YulIf", + "src": "1369:119:74" + }, + { + "nativeSrc": "1498:296:74", + "nodeType": "YulBlock", + "src": "1498:296:74", + "statements": [ + { + "nativeSrc": "1513:45:74", + "nodeType": "YulVariableDeclaration", + "src": "1513:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1544:9:74", + "nodeType": "YulIdentifier", + "src": "1544:9:74" + }, + { + "kind": "number", + "nativeSrc": "1555:1:74", + "nodeType": "YulLiteral", + "src": "1555:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1540:3:74", + "nodeType": "YulIdentifier", + "src": "1540:3:74" + }, + "nativeSrc": "1540:17:74", + "nodeType": "YulFunctionCall", + "src": "1540:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1527:12:74", + "nodeType": "YulIdentifier", + "src": "1527:12:74" + }, + "nativeSrc": "1527:31:74", + "nodeType": "YulFunctionCall", + "src": "1527:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1517:6:74", + "nodeType": "YulTypedName", + "src": "1517:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1605:83:74", + "nodeType": "YulBlock", + "src": "1605:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "1607:77:74", + "nodeType": "YulIdentifier", + "src": "1607:77:74" + }, + "nativeSrc": "1607:79:74", + "nodeType": "YulFunctionCall", + "src": "1607:79:74" + }, + "nativeSrc": "1607:79:74", + "nodeType": "YulExpressionStatement", + "src": "1607:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1577:6:74", + "nodeType": "YulIdentifier", + "src": "1577:6:74" + }, + { + "kind": "number", + "nativeSrc": "1585:18:74", + "nodeType": "YulLiteral", + "src": "1585:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1574:2:74", + "nodeType": "YulIdentifier", + "src": "1574:2:74" + }, + "nativeSrc": "1574:30:74", + "nodeType": "YulFunctionCall", + "src": "1574:30:74" + }, + "nativeSrc": "1571:117:74", + "nodeType": "YulIf", + "src": "1571:117:74" + }, + { + "nativeSrc": "1702:82:74", + "nodeType": "YulAssignment", + "src": "1702:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1756:9:74", + "nodeType": "YulIdentifier", + "src": "1756:9:74" + }, + { + "name": "offset", + "nativeSrc": "1767:6:74", + "nodeType": "YulIdentifier", + "src": "1767:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1752:3:74", + "nodeType": "YulIdentifier", + "src": "1752:3:74" + }, + "nativeSrc": "1752:22:74", + "nodeType": "YulFunctionCall", + "src": "1752:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1776:7:74", + "nodeType": "YulIdentifier", + "src": "1776:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "1720:31:74", + "nodeType": "YulIdentifier", + "src": "1720:31:74" + }, + "nativeSrc": "1720:64:74", + "nodeType": "YulFunctionCall", + "src": "1720:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1702:6:74", + "nodeType": "YulIdentifier", + "src": "1702:6:74" + }, + { + "name": "value1", + "nativeSrc": "1710:6:74", + "nodeType": "YulIdentifier", + "src": "1710:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptr", + "nativeSrc": "1274:527:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1321:9:74", + "nodeType": "YulTypedName", + "src": "1321:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1332:7:74", + "nodeType": "YulTypedName", + "src": "1332:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1344:6:74", + "nodeType": "YulTypedName", + "src": "1344:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1352:6:74", + "nodeType": "YulTypedName", + "src": "1352:6:74", + "type": "" + } + ], + "src": "1274:527:74" + }, + { + "body": { + "nativeSrc": "1852:32:74", + "nodeType": "YulBlock", + "src": "1852:32:74", + "statements": [ + { + "nativeSrc": "1862:16:74", + "nodeType": "YulAssignment", + "src": "1862:16:74", + "value": { + "name": "value", + "nativeSrc": "1873:5:74", + "nodeType": "YulIdentifier", + "src": "1873:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1862:7:74", + "nodeType": "YulIdentifier", + "src": "1862:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "1807:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1834:5:74", + "nodeType": "YulTypedName", + "src": "1834:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1844:7:74", + "nodeType": "YulTypedName", + "src": "1844:7:74", + "type": "" + } + ], + "src": "1807:77:74" + }, + { + "body": { + "nativeSrc": "1953:53:74", + "nodeType": "YulBlock", + "src": "1953:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1970:3:74", + "nodeType": "YulIdentifier", + "src": "1970:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1993:5:74", + "nodeType": "YulIdentifier", + "src": "1993:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "1975:17:74", + "nodeType": "YulIdentifier", + "src": "1975:17:74" + }, + "nativeSrc": "1975:24:74", + "nodeType": "YulFunctionCall", + "src": "1975:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1963:6:74", + "nodeType": "YulIdentifier", + "src": "1963:6:74" + }, + "nativeSrc": "1963:37:74", + "nodeType": "YulFunctionCall", + "src": "1963:37:74" + }, + "nativeSrc": "1963:37:74", + "nodeType": "YulExpressionStatement", + "src": "1963:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_library", + "nativeSrc": "1890:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1941:5:74", + "nodeType": "YulTypedName", + "src": "1941:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1948:3:74", + "nodeType": "YulTypedName", + "src": "1948:3:74", + "type": "" + } + ], + "src": "1890:116:74" + }, + { + "body": { + "nativeSrc": "2057:32:74", + "nodeType": "YulBlock", + "src": "2057:32:74", + "statements": [ + { + "nativeSrc": "2067:16:74", + "nodeType": "YulAssignment", + "src": "2067:16:74", + "value": { + "name": "value", + "nativeSrc": "2078:5:74", + "nodeType": "YulIdentifier", + "src": "2078:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2067:7:74", + "nodeType": "YulIdentifier", + "src": "2067:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "2012:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2039:5:74", + "nodeType": "YulTypedName", + "src": "2039:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2049:7:74", + "nodeType": "YulTypedName", + "src": "2049:7:74", + "type": "" + } + ], + "src": "2012:77:74" + }, + { + "body": { + "nativeSrc": "2158:53:74", + "nodeType": "YulBlock", + "src": "2158:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2175:3:74", + "nodeType": "YulIdentifier", + "src": "2175:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2198:5:74", + "nodeType": "YulIdentifier", + "src": "2198:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2180:17:74", + "nodeType": "YulIdentifier", + "src": "2180:17:74" + }, + "nativeSrc": "2180:24:74", + "nodeType": "YulFunctionCall", + "src": "2180:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2168:6:74", + "nodeType": "YulIdentifier", + "src": "2168:6:74" + }, + "nativeSrc": "2168:37:74", + "nodeType": "YulFunctionCall", + "src": "2168:37:74" + }, + "nativeSrc": "2168:37:74", + "nodeType": "YulExpressionStatement", + "src": "2168:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "2095:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2146:5:74", + "nodeType": "YulTypedName", + "src": "2146:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2153:3:74", + "nodeType": "YulTypedName", + "src": "2153:3:74", + "type": "" + } + ], + "src": "2095:116:74" + }, + { + "body": { + "nativeSrc": "2405:773:74", + "nodeType": "YulBlock", + "src": "2405:773:74", + "statements": [ + { + "nativeSrc": "2415:26:74", + "nodeType": "YulVariableDeclaration", + "src": "2415:26:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2431:3:74", + "nodeType": "YulIdentifier", + "src": "2431:3:74" + }, + { + "kind": "number", + "nativeSrc": "2436:4:74", + "nodeType": "YulLiteral", + "src": "2436:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2427:3:74", + "nodeType": "YulIdentifier", + "src": "2427:3:74" + }, + "nativeSrc": "2427:14:74", + "nodeType": "YulFunctionCall", + "src": "2427:14:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "2419:4:74", + "nodeType": "YulTypedName", + "src": "2419:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2451:172:74", + "nodeType": "YulBlock", + "src": "2451:172:74", + "statements": [ + { + "nativeSrc": "2486:43:74", + "nodeType": "YulVariableDeclaration", + "src": "2486:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2516:5:74", + "nodeType": "YulIdentifier", + "src": "2516:5:74" + }, + { + "kind": "number", + "nativeSrc": "2523:4:74", + "nodeType": "YulLiteral", + "src": "2523:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2512:3:74", + "nodeType": "YulIdentifier", + "src": "2512:3:74" + }, + "nativeSrc": "2512:16:74", + "nodeType": "YulFunctionCall", + "src": "2512:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2506:5:74", + "nodeType": "YulIdentifier", + "src": "2506:5:74" + }, + "nativeSrc": "2506:23:74", + "nodeType": "YulFunctionCall", + "src": "2506:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "2490:12:74", + "nodeType": "YulTypedName", + "src": "2490:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "2584:12:74", + "nodeType": "YulIdentifier", + "src": "2584:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2602:3:74", + "nodeType": "YulIdentifier", + "src": "2602:3:74" + }, + { + "kind": "number", + "nativeSrc": "2607:4:74", + "nodeType": "YulLiteral", + "src": "2607:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2598:3:74", + "nodeType": "YulIdentifier", + "src": "2598:3:74" + }, + "nativeSrc": "2598:14:74", + "nodeType": "YulFunctionCall", + "src": "2598:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_library", + "nativeSrc": "2542:41:74", + "nodeType": "YulIdentifier", + "src": "2542:41:74" + }, + "nativeSrc": "2542:71:74", + "nodeType": "YulFunctionCall", + "src": "2542:71:74" + }, + "nativeSrc": "2542:71:74", + "nodeType": "YulExpressionStatement", + "src": "2542:71:74" + } + ] + }, + { + "nativeSrc": "2633:172:74", + "nodeType": "YulBlock", + "src": "2633:172:74", + "statements": [ + { + "nativeSrc": "2668:43:74", + "nodeType": "YulVariableDeclaration", + "src": "2668:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2698:5:74", + "nodeType": "YulIdentifier", + "src": "2698:5:74" + }, + { + "kind": "number", + "nativeSrc": "2705:4:74", + "nodeType": "YulLiteral", + "src": "2705:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2694:3:74", + "nodeType": "YulIdentifier", + "src": "2694:3:74" + }, + "nativeSrc": "2694:16:74", + "nodeType": "YulFunctionCall", + "src": "2694:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2688:5:74", + "nodeType": "YulIdentifier", + "src": "2688:5:74" + }, + "nativeSrc": "2688:23:74", + "nodeType": "YulFunctionCall", + "src": "2688:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "2672:12:74", + "nodeType": "YulTypedName", + "src": "2672:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "2766:12:74", + "nodeType": "YulIdentifier", + "src": "2766:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2784:3:74", + "nodeType": "YulIdentifier", + "src": "2784:3:74" + }, + { + "kind": "number", + "nativeSrc": "2789:4:74", + "nodeType": "YulLiteral", + "src": "2789:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2780:3:74", + "nodeType": "YulIdentifier", + "src": "2780:3:74" + }, + "nativeSrc": "2780:14:74", + "nodeType": "YulFunctionCall", + "src": "2780:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_library", + "nativeSrc": "2724:41:74", + "nodeType": "YulIdentifier", + "src": "2724:41:74" + }, + "nativeSrc": "2724:71:74", + "nodeType": "YulFunctionCall", + "src": "2724:71:74" + }, + "nativeSrc": "2724:71:74", + "nodeType": "YulExpressionStatement", + "src": "2724:71:74" + } + ] + }, + { + "nativeSrc": "2815:172:74", + "nodeType": "YulBlock", + "src": "2815:172:74", + "statements": [ + { + "nativeSrc": "2850:43:74", + "nodeType": "YulVariableDeclaration", + "src": "2850:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2880:5:74", + "nodeType": "YulIdentifier", + "src": "2880:5:74" + }, + { + "kind": "number", + "nativeSrc": "2887:4:74", + "nodeType": "YulLiteral", + "src": "2887:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2876:3:74", + "nodeType": "YulIdentifier", + "src": "2876:3:74" + }, + "nativeSrc": "2876:16:74", + "nodeType": "YulFunctionCall", + "src": "2876:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2870:5:74", + "nodeType": "YulIdentifier", + "src": "2870:5:74" + }, + "nativeSrc": "2870:23:74", + "nodeType": "YulFunctionCall", + "src": "2870:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "2854:12:74", + "nodeType": "YulTypedName", + "src": "2854:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "2948:12:74", + "nodeType": "YulIdentifier", + "src": "2948:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2966:3:74", + "nodeType": "YulIdentifier", + "src": "2966:3:74" + }, + { + "kind": "number", + "nativeSrc": "2971:4:74", + "nodeType": "YulLiteral", + "src": "2971:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2962:3:74", + "nodeType": "YulIdentifier", + "src": "2962:3:74" + }, + "nativeSrc": "2962:14:74", + "nodeType": "YulFunctionCall", + "src": "2962:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "2906:41:74", + "nodeType": "YulIdentifier", + "src": "2906:41:74" + }, + "nativeSrc": "2906:71:74", + "nodeType": "YulFunctionCall", + "src": "2906:71:74" + }, + "nativeSrc": "2906:71:74", + "nodeType": "YulExpressionStatement", + "src": "2906:71:74" + } + ] + }, + { + "nativeSrc": "2997:174:74", + "nodeType": "YulBlock", + "src": "2997:174:74", + "statements": [ + { + "nativeSrc": "3034:43:74", + "nodeType": "YulVariableDeclaration", + "src": "3034:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3064:5:74", + "nodeType": "YulIdentifier", + "src": "3064:5:74" + }, + { + "kind": "number", + "nativeSrc": "3071:4:74", + "nodeType": "YulLiteral", + "src": "3071:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3060:3:74", + "nodeType": "YulIdentifier", + "src": "3060:3:74" + }, + "nativeSrc": "3060:16:74", + "nodeType": "YulFunctionCall", + "src": "3060:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3054:5:74", + "nodeType": "YulIdentifier", + "src": "3054:5:74" + }, + "nativeSrc": "3054:23:74", + "nodeType": "YulFunctionCall", + "src": "3054:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "3038:12:74", + "nodeType": "YulTypedName", + "src": "3038:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "3132:12:74", + "nodeType": "YulIdentifier", + "src": "3132:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3150:3:74", + "nodeType": "YulIdentifier", + "src": "3150:3:74" + }, + { + "kind": "number", + "nativeSrc": "3155:4:74", + "nodeType": "YulLiteral", + "src": "3155:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3146:3:74", + "nodeType": "YulIdentifier", + "src": "3146:3:74" + }, + "nativeSrc": "3146:14:74", + "nodeType": "YulFunctionCall", + "src": "3146:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "3090:41:74", + "nodeType": "YulIdentifier", + "src": "3090:41:74" + }, + "nativeSrc": "3090:71:74", + "nodeType": "YulFunctionCall", + "src": "3090:71:74" + }, + "nativeSrc": "3090:71:74", + "nodeType": "YulExpressionStatement", + "src": "3090:71:74" + } + ] + } + ] + }, + "name": "abi_encode_t_struct$_Leaf_$1784_memory_ptr_to_t_struct$_Leaf_$1784_memory_ptr_fromStack_library", + "nativeSrc": "2287:891:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2392:5:74", + "nodeType": "YulTypedName", + "src": "2392:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2399:3:74", + "nodeType": "YulTypedName", + "src": "2399:3:74", + "type": "" + } + ], + "src": "2287:891:74" + }, + { + "body": { + "nativeSrc": "3334:177:74", + "nodeType": "YulBlock", + "src": "3334:177:74", + "statements": [ + { + "nativeSrc": "3344:27:74", + "nodeType": "YulAssignment", + "src": "3344:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3356:9:74", + "nodeType": "YulIdentifier", + "src": "3356:9:74" + }, + { + "kind": "number", + "nativeSrc": "3367:3:74", + "nodeType": "YulLiteral", + "src": "3367:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3352:3:74", + "nodeType": "YulIdentifier", + "src": "3352:3:74" + }, + "nativeSrc": "3352:19:74", + "nodeType": "YulFunctionCall", + "src": "3352:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3344:4:74", + "nodeType": "YulIdentifier", + "src": "3344:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3477:6:74", + "nodeType": "YulIdentifier", + "src": "3477:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3490:9:74", + "nodeType": "YulIdentifier", + "src": "3490:9:74" + }, + { + "kind": "number", + "nativeSrc": "3501:1:74", + "nodeType": "YulLiteral", + "src": "3501:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3486:3:74", + "nodeType": "YulIdentifier", + "src": "3486:3:74" + }, + "nativeSrc": "3486:17:74", + "nodeType": "YulFunctionCall", + "src": "3486:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_struct$_Leaf_$1784_memory_ptr_to_t_struct$_Leaf_$1784_memory_ptr_fromStack_library", + "nativeSrc": "3381:95:74", + "nodeType": "YulIdentifier", + "src": "3381:95:74" + }, + "nativeSrc": "3381:123:74", + "nodeType": "YulFunctionCall", + "src": "3381:123:74" + }, + "nativeSrc": "3381:123:74", + "nodeType": "YulExpressionStatement", + "src": "3381:123:74" + } + ] + }, + "name": "abi_encode_tuple_t_struct$_Leaf_$1784_memory_ptr__to_t_struct$_Leaf_$1784_memory_ptr__fromStack_library_reversed", + "nativeSrc": "3184:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3306:9:74", + "nodeType": "YulTypedName", + "src": "3306:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3318:6:74", + "nodeType": "YulTypedName", + "src": "3318:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3329:4:74", + "nodeType": "YulTypedName", + "src": "3329:4:74", + "type": "" + } + ], + "src": "3184:327:74" + }, + { + "body": { + "nativeSrc": "3561:57:74", + "nodeType": "YulBlock", + "src": "3561:57:74", + "statements": [ + { + "nativeSrc": "3571:41:74", + "nodeType": "YulAssignment", + "src": "3571:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3586:5:74", + "nodeType": "YulIdentifier", + "src": "3586:5:74" + }, + { + "kind": "number", + "nativeSrc": "3593:18:74", + "nodeType": "YulLiteral", + "src": "3593:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3582:3:74", + "nodeType": "YulIdentifier", + "src": "3582:3:74" + }, + "nativeSrc": "3582:30:74", + "nodeType": "YulFunctionCall", + "src": "3582:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3571:7:74", + "nodeType": "YulIdentifier", + "src": "3571:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "3517:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3543:5:74", + "nodeType": "YulTypedName", + "src": "3543:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3553:7:74", + "nodeType": "YulTypedName", + "src": "3553:7:74", + "type": "" + } + ], + "src": "3517:101:74" + }, + { + "body": { + "nativeSrc": "3685:52:74", + "nodeType": "YulBlock", + "src": "3685:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3702:3:74", + "nodeType": "YulIdentifier", + "src": "3702:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3724:5:74", + "nodeType": "YulIdentifier", + "src": "3724:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "3707:16:74", + "nodeType": "YulIdentifier", + "src": "3707:16:74" + }, + "nativeSrc": "3707:23:74", + "nodeType": "YulFunctionCall", + "src": "3707:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3695:6:74", + "nodeType": "YulIdentifier", + "src": "3695:6:74" + }, + "nativeSrc": "3695:36:74", + "nodeType": "YulFunctionCall", + "src": "3695:36:74" + }, + "nativeSrc": "3695:36:74", + "nodeType": "YulExpressionStatement", + "src": "3695:36:74" + } + ] + }, + "name": "abi_encode_t_uint64_to_t_uint64_library", + "nativeSrc": "3624:113:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3673:5:74", + "nodeType": "YulTypedName", + "src": "3673:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3680:3:74", + "nodeType": "YulTypedName", + "src": "3680:3:74", + "type": "" + } + ], + "src": "3624:113:74" + }, + { + "body": { + "nativeSrc": "3943:1164:74", + "nodeType": "YulBlock", + "src": "3943:1164:74", + "statements": [ + { + "nativeSrc": "3953:26:74", + "nodeType": "YulVariableDeclaration", + "src": "3953:26:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3969:3:74", + "nodeType": "YulIdentifier", + "src": "3969:3:74" + }, + { + "kind": "number", + "nativeSrc": "3974:4:74", + "nodeType": "YulLiteral", + "src": "3974:4:74", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3965:3:74", + "nodeType": "YulIdentifier", + "src": "3965:3:74" + }, + "nativeSrc": "3965:14:74", + "nodeType": "YulFunctionCall", + "src": "3965:14:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "3957:4:74", + "nodeType": "YulTypedName", + "src": "3957:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3989:171:74", + "nodeType": "YulBlock", + "src": "3989:171:74", + "statements": [ + { + "nativeSrc": "4025:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4025:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4055:5:74", + "nodeType": "YulIdentifier", + "src": "4055:5:74" + }, + { + "kind": "number", + "nativeSrc": "4062:4:74", + "nodeType": "YulLiteral", + "src": "4062:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4051:3:74", + "nodeType": "YulIdentifier", + "src": "4051:3:74" + }, + "nativeSrc": "4051:16:74", + "nodeType": "YulFunctionCall", + "src": "4051:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4045:5:74", + "nodeType": "YulIdentifier", + "src": "4045:5:74" + }, + "nativeSrc": "4045:23:74", + "nodeType": "YulFunctionCall", + "src": "4045:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4029:12:74", + "nodeType": "YulTypedName", + "src": "4029:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "4121:12:74", + "nodeType": "YulIdentifier", + "src": "4121:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4139:3:74", + "nodeType": "YulIdentifier", + "src": "4139:3:74" + }, + { + "kind": "number", + "nativeSrc": "4144:4:74", + "nodeType": "YulLiteral", + "src": "4144:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4135:3:74", + "nodeType": "YulIdentifier", + "src": "4135:3:74" + }, + "nativeSrc": "4135:14:74", + "nodeType": "YulFunctionCall", + "src": "4135:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_library", + "nativeSrc": "4081:39:74", + "nodeType": "YulIdentifier", + "src": "4081:39:74" + }, + "nativeSrc": "4081:69:74", + "nodeType": "YulFunctionCall", + "src": "4081:69:74" + }, + "nativeSrc": "4081:69:74", + "nodeType": "YulExpressionStatement", + "src": "4081:69:74" + } + ] + }, + { + "nativeSrc": "4170:175:74", + "nodeType": "YulBlock", + "src": "4170:175:74", + "statements": [ + { + "nativeSrc": "4208:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4208:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4238:5:74", + "nodeType": "YulIdentifier", + "src": "4238:5:74" + }, + { + "kind": "number", + "nativeSrc": "4245:4:74", + "nodeType": "YulLiteral", + "src": "4245:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4234:3:74", + "nodeType": "YulIdentifier", + "src": "4234:3:74" + }, + "nativeSrc": "4234:16:74", + "nodeType": "YulFunctionCall", + "src": "4234:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4228:5:74", + "nodeType": "YulIdentifier", + "src": "4228:5:74" + }, + "nativeSrc": "4228:23:74", + "nodeType": "YulFunctionCall", + "src": "4228:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4212:12:74", + "nodeType": "YulTypedName", + "src": "4212:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "4306:12:74", + "nodeType": "YulIdentifier", + "src": "4306:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4324:3:74", + "nodeType": "YulIdentifier", + "src": "4324:3:74" + }, + { + "kind": "number", + "nativeSrc": "4329:4:74", + "nodeType": "YulLiteral", + "src": "4329:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4320:3:74", + "nodeType": "YulIdentifier", + "src": "4320:3:74" + }, + "nativeSrc": "4320:14:74", + "nodeType": "YulFunctionCall", + "src": "4320:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_library", + "nativeSrc": "4264:41:74", + "nodeType": "YulIdentifier", + "src": "4264:41:74" + }, + "nativeSrc": "4264:71:74", + "nodeType": "YulFunctionCall", + "src": "4264:71:74" + }, + "nativeSrc": "4264:71:74", + "nodeType": "YulExpressionStatement", + "src": "4264:71:74" + } + ] + }, + { + "nativeSrc": "4355:179:74", + "nodeType": "YulBlock", + "src": "4355:179:74", + "statements": [ + { + "nativeSrc": "4397:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4397:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4427:5:74", + "nodeType": "YulIdentifier", + "src": "4427:5:74" + }, + { + "kind": "number", + "nativeSrc": "4434:4:74", + "nodeType": "YulLiteral", + "src": "4434:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4423:3:74", + "nodeType": "YulIdentifier", + "src": "4423:3:74" + }, + "nativeSrc": "4423:16:74", + "nodeType": "YulFunctionCall", + "src": "4423:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4417:5:74", + "nodeType": "YulIdentifier", + "src": "4417:5:74" + }, + "nativeSrc": "4417:23:74", + "nodeType": "YulFunctionCall", + "src": "4417:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4401:12:74", + "nodeType": "YulTypedName", + "src": "4401:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "4495:12:74", + "nodeType": "YulIdentifier", + "src": "4495:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4513:3:74", + "nodeType": "YulIdentifier", + "src": "4513:3:74" + }, + { + "kind": "number", + "nativeSrc": "4518:4:74", + "nodeType": "YulLiteral", + "src": "4518:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4509:3:74", + "nodeType": "YulIdentifier", + "src": "4509:3:74" + }, + "nativeSrc": "4509:14:74", + "nodeType": "YulFunctionCall", + "src": "4509:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "4453:41:74", + "nodeType": "YulIdentifier", + "src": "4453:41:74" + }, + "nativeSrc": "4453:71:74", + "nodeType": "YulFunctionCall", + "src": "4453:71:74" + }, + "nativeSrc": "4453:71:74", + "nodeType": "YulExpressionStatement", + "src": "4453:71:74" + } + ] + }, + { + "nativeSrc": "4544:180:74", + "nodeType": "YulBlock", + "src": "4544:180:74", + "statements": [ + { + "nativeSrc": "4587:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4587:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4617:5:74", + "nodeType": "YulIdentifier", + "src": "4617:5:74" + }, + { + "kind": "number", + "nativeSrc": "4624:4:74", + "nodeType": "YulLiteral", + "src": "4624:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4613:3:74", + "nodeType": "YulIdentifier", + "src": "4613:3:74" + }, + "nativeSrc": "4613:16:74", + "nodeType": "YulFunctionCall", + "src": "4613:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4607:5:74", + "nodeType": "YulIdentifier", + "src": "4607:5:74" + }, + "nativeSrc": "4607:23:74", + "nodeType": "YulFunctionCall", + "src": "4607:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4591:12:74", + "nodeType": "YulTypedName", + "src": "4591:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "4685:12:74", + "nodeType": "YulIdentifier", + "src": "4685:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4703:3:74", + "nodeType": "YulIdentifier", + "src": "4703:3:74" + }, + { + "kind": "number", + "nativeSrc": "4708:4:74", + "nodeType": "YulLiteral", + "src": "4708:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4699:3:74", + "nodeType": "YulIdentifier", + "src": "4699:3:74" + }, + "nativeSrc": "4699:14:74", + "nodeType": "YulFunctionCall", + "src": "4699:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "4643:41:74", + "nodeType": "YulIdentifier", + "src": "4643:41:74" + }, + "nativeSrc": "4643:71:74", + "nodeType": "YulFunctionCall", + "src": "4643:71:74" + }, + "nativeSrc": "4643:71:74", + "nodeType": "YulExpressionStatement", + "src": "4643:71:74" + } + ] + }, + { + "nativeSrc": "4734:182:74", + "nodeType": "YulBlock", + "src": "4734:182:74", + "statements": [ + { + "nativeSrc": "4779:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4779:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4809:5:74", + "nodeType": "YulIdentifier", + "src": "4809:5:74" + }, + { + "kind": "number", + "nativeSrc": "4816:4:74", + "nodeType": "YulLiteral", + "src": "4816:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4805:3:74", + "nodeType": "YulIdentifier", + "src": "4805:3:74" + }, + "nativeSrc": "4805:16:74", + "nodeType": "YulFunctionCall", + "src": "4805:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4799:5:74", + "nodeType": "YulIdentifier", + "src": "4799:5:74" + }, + "nativeSrc": "4799:23:74", + "nodeType": "YulFunctionCall", + "src": "4799:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4783:12:74", + "nodeType": "YulTypedName", + "src": "4783:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "4877:12:74", + "nodeType": "YulIdentifier", + "src": "4877:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4895:3:74", + "nodeType": "YulIdentifier", + "src": "4895:3:74" + }, + { + "kind": "number", + "nativeSrc": "4900:4:74", + "nodeType": "YulLiteral", + "src": "4900:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4891:3:74", + "nodeType": "YulIdentifier", + "src": "4891:3:74" + }, + "nativeSrc": "4891:14:74", + "nodeType": "YulFunctionCall", + "src": "4891:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_library", + "nativeSrc": "4835:41:74", + "nodeType": "YulIdentifier", + "src": "4835:41:74" + }, + "nativeSrc": "4835:71:74", + "nodeType": "YulFunctionCall", + "src": "4835:71:74" + }, + "nativeSrc": "4835:71:74", + "nodeType": "YulExpressionStatement", + "src": "4835:71:74" + } + ] + }, + { + "nativeSrc": "4926:174:74", + "nodeType": "YulBlock", + "src": "4926:174:74", + "statements": [ + { + "nativeSrc": "4965:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4965:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4995:5:74", + "nodeType": "YulIdentifier", + "src": "4995:5:74" + }, + { + "kind": "number", + "nativeSrc": "5002:4:74", + "nodeType": "YulLiteral", + "src": "5002:4:74", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4991:3:74", + "nodeType": "YulIdentifier", + "src": "4991:3:74" + }, + "nativeSrc": "4991:16:74", + "nodeType": "YulFunctionCall", + "src": "4991:16:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4985:5:74", + "nodeType": "YulIdentifier", + "src": "4985:5:74" + }, + "nativeSrc": "4985:23:74", + "nodeType": "YulFunctionCall", + "src": "4985:23:74" + }, + "variables": [ + { + "name": "memberValue0", + "nativeSrc": "4969:12:74", + "nodeType": "YulTypedName", + "src": "4969:12:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nativeSrc": "5061:12:74", + "nodeType": "YulIdentifier", + "src": "5061:12:74" + }, + { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5079:3:74", + "nodeType": "YulIdentifier", + "src": "5079:3:74" + }, + { + "kind": "number", + "nativeSrc": "5084:4:74", + "nodeType": "YulLiteral", + "src": "5084:4:74", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5075:3:74", + "nodeType": "YulIdentifier", + "src": "5075:3:74" + }, + "nativeSrc": "5075:14:74", + "nodeType": "YulFunctionCall", + "src": "5075:14:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_library", + "nativeSrc": "5021:39:74", + "nodeType": "YulIdentifier", + "src": "5021:39:74" + }, + "nativeSrc": "5021:69:74", + "nodeType": "YulFunctionCall", + "src": "5021:69:74" + }, + "nativeSrc": "5021:69:74", + "nodeType": "YulExpressionStatement", + "src": "5021:69:74" + } + ] + } + ] + }, + "name": "abi_encode_t_struct$_Account_$1774_memory_ptr_to_t_struct$_Account_$1774_memory_ptr_fromStack_library", + "nativeSrc": "3819:1288:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3930:5:74", + "nodeType": "YulTypedName", + "src": "3930:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3937:3:74", + "nodeType": "YulTypedName", + "src": "3937:3:74", + "type": "" + } + ], + "src": "3819:1288:74" + }, + { + "body": { + "nativeSrc": "5269:183:74", + "nodeType": "YulBlock", + "src": "5269:183:74", + "statements": [ + { + "nativeSrc": "5279:27:74", + "nodeType": "YulAssignment", + "src": "5279:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5291:9:74", + "nodeType": "YulIdentifier", + "src": "5291:9:74" + }, + { + "kind": "number", + "nativeSrc": "5302:3:74", + "nodeType": "YulLiteral", + "src": "5302:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5287:3:74", + "nodeType": "YulIdentifier", + "src": "5287:3:74" + }, + "nativeSrc": "5287:19:74", + "nodeType": "YulFunctionCall", + "src": "5287:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5279:4:74", + "nodeType": "YulIdentifier", + "src": "5279:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "5418:6:74", + "nodeType": "YulIdentifier", + "src": "5418:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5431:9:74", + "nodeType": "YulIdentifier", + "src": "5431:9:74" + }, + { + "kind": "number", + "nativeSrc": "5442:1:74", + "nodeType": "YulLiteral", + "src": "5442:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5427:3:74", + "nodeType": "YulIdentifier", + "src": "5427:3:74" + }, + "nativeSrc": "5427:17:74", + "nodeType": "YulFunctionCall", + "src": "5427:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_struct$_Account_$1774_memory_ptr_to_t_struct$_Account_$1774_memory_ptr_fromStack_library", + "nativeSrc": "5316:101:74", + "nodeType": "YulIdentifier", + "src": "5316:101:74" + }, + "nativeSrc": "5316:129:74", + "nodeType": "YulFunctionCall", + "src": "5316:129:74" + }, + "nativeSrc": "5316:129:74", + "nodeType": "YulExpressionStatement", + "src": "5316:129:74" + } + ] + }, + "name": "abi_encode_tuple_t_struct$_Account_$1774_memory_ptr__to_t_struct$_Account_$1774_memory_ptr__fromStack_library_reversed", + "nativeSrc": "5113:339:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5241:9:74", + "nodeType": "YulTypedName", + "src": "5241:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "5253:6:74", + "nodeType": "YulTypedName", + "src": "5253:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5264:4:74", + "nodeType": "YulTypedName", + "src": "5264:4:74", + "type": "" + } + ], + "src": "5113:339:74" + }, + { + "body": { + "nativeSrc": "5531:53:74", + "nodeType": "YulBlock", + "src": "5531:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5548:3:74", + "nodeType": "YulIdentifier", + "src": "5548:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5571:5:74", + "nodeType": "YulIdentifier", + "src": "5571:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "5553:17:74", + "nodeType": "YulIdentifier", + "src": "5553:17:74" + }, + "nativeSrc": "5553:24:74", + "nodeType": "YulFunctionCall", + "src": "5553:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5541:6:74", + "nodeType": "YulIdentifier", + "src": "5541:6:74" + }, + "nativeSrc": "5541:37:74", + "nodeType": "YulFunctionCall", + "src": "5541:37:74" + }, + "nativeSrc": "5541:37:74", + "nodeType": "YulExpressionStatement", + "src": "5541:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "5458:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5519:5:74", + "nodeType": "YulTypedName", + "src": "5519:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "5526:3:74", + "nodeType": "YulTypedName", + "src": "5526:3:74", + "type": "" + } + ], + "src": "5458:126:74" + }, + { + "body": { + "nativeSrc": "5696:132:74", + "nodeType": "YulBlock", + "src": "5696:132:74", + "statements": [ + { + "nativeSrc": "5706:26:74", + "nodeType": "YulAssignment", + "src": "5706:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5718:9:74", + "nodeType": "YulIdentifier", + "src": "5718:9:74" + }, + { + "kind": "number", + "nativeSrc": "5729:2:74", + "nodeType": "YulLiteral", + "src": "5729:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5714:3:74", + "nodeType": "YulIdentifier", + "src": "5714:3:74" + }, + "nativeSrc": "5714:18:74", + "nodeType": "YulFunctionCall", + "src": "5714:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5706:4:74", + "nodeType": "YulIdentifier", + "src": "5706:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "5794:6:74", + "nodeType": "YulIdentifier", + "src": "5794:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5807:9:74", + "nodeType": "YulIdentifier", + "src": "5807:9:74" + }, + { + "kind": "number", + "nativeSrc": "5818:1:74", + "nodeType": "YulLiteral", + "src": "5818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5803:3:74", + "nodeType": "YulIdentifier", + "src": "5803:3:74" + }, + "nativeSrc": "5803:17:74", + "nodeType": "YulFunctionCall", + "src": "5803:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack_library", + "nativeSrc": "5742:51:74", + "nodeType": "YulIdentifier", + "src": "5742:51:74" + }, + "nativeSrc": "5742:79:74", + "nodeType": "YulFunctionCall", + "src": "5742:79:74" + }, + "nativeSrc": "5742:79:74", + "nodeType": "YulExpressionStatement", + "src": "5742:79:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed", + "nativeSrc": "5590:238:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5668:9:74", + "nodeType": "YulTypedName", + "src": "5668:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "5680:6:74", + "nodeType": "YulTypedName", + "src": "5680:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5691:4:74", + "nodeType": "YulTypedName", + "src": "5691:4:74", + "type": "" + } + ], + "src": "5590:238:74" + }, + { + "body": { + "nativeSrc": "5950:478:74", + "nodeType": "YulBlock", + "src": "5950:478:74", + "statements": [ + { + "body": { + "nativeSrc": "5999:83:74", + "nodeType": "YulBlock", + "src": "5999:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "6001:77:74", + "nodeType": "YulIdentifier", + "src": "6001:77:74" + }, + "nativeSrc": "6001:79:74", + "nodeType": "YulFunctionCall", + "src": "6001:79:74" + }, + "nativeSrc": "6001:79:74", + "nodeType": "YulExpressionStatement", + "src": "6001:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5978:6:74", + "nodeType": "YulIdentifier", + "src": "5978:6:74" + }, + { + "kind": "number", + "nativeSrc": "5986:4:74", + "nodeType": "YulLiteral", + "src": "5986:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5974:3:74", + "nodeType": "YulIdentifier", + "src": "5974:3:74" + }, + "nativeSrc": "5974:17:74", + "nodeType": "YulFunctionCall", + "src": "5974:17:74" + }, + { + "name": "end", + "nativeSrc": "5993:3:74", + "nodeType": "YulIdentifier", + "src": "5993:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5970:3:74", + "nodeType": "YulIdentifier", + "src": "5970:3:74" + }, + "nativeSrc": "5970:27:74", + "nodeType": "YulFunctionCall", + "src": "5970:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5963:6:74", + "nodeType": "YulIdentifier", + "src": "5963:6:74" + }, + "nativeSrc": "5963:35:74", + "nodeType": "YulFunctionCall", + "src": "5963:35:74" + }, + "nativeSrc": "5960:122:74", + "nodeType": "YulIf", + "src": "5960:122:74" + }, + { + "nativeSrc": "6091:30:74", + "nodeType": "YulAssignment", + "src": "6091:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6114:6:74", + "nodeType": "YulIdentifier", + "src": "6114:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6101:12:74", + "nodeType": "YulIdentifier", + "src": "6101:12:74" + }, + "nativeSrc": "6101:20:74", + "nodeType": "YulFunctionCall", + "src": "6101:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "6091:6:74", + "nodeType": "YulIdentifier", + "src": "6091:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "6164:83:74", + "nodeType": "YulBlock", + "src": "6164:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "6166:77:74", + "nodeType": "YulIdentifier", + "src": "6166:77:74" + }, + "nativeSrc": "6166:79:74", + "nodeType": "YulFunctionCall", + "src": "6166:79:74" + }, + "nativeSrc": "6166:79:74", + "nodeType": "YulExpressionStatement", + "src": "6166:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "6136:6:74", + "nodeType": "YulIdentifier", + "src": "6136:6:74" + }, + { + "kind": "number", + "nativeSrc": "6144:18:74", + "nodeType": "YulLiteral", + "src": "6144:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6133:2:74", + "nodeType": "YulIdentifier", + "src": "6133:2:74" + }, + "nativeSrc": "6133:30:74", + "nodeType": "YulFunctionCall", + "src": "6133:30:74" + }, + "nativeSrc": "6130:117:74", + "nodeType": "YulIf", + "src": "6130:117:74" + }, + { + "nativeSrc": "6256:29:74", + "nodeType": "YulAssignment", + "src": "6256:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6272:6:74", + "nodeType": "YulIdentifier", + "src": "6272:6:74" + }, + { + "kind": "number", + "nativeSrc": "6280:4:74", + "nodeType": "YulLiteral", + "src": "6280:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6268:3:74", + "nodeType": "YulIdentifier", + "src": "6268:3:74" + }, + "nativeSrc": "6268:17:74", + "nodeType": "YulFunctionCall", + "src": "6268:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "6256:8:74", + "nodeType": "YulIdentifier", + "src": "6256:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "6339:83:74", + "nodeType": "YulBlock", + "src": "6339:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "6341:77:74", + "nodeType": "YulIdentifier", + "src": "6341:77:74" + }, + "nativeSrc": "6341:79:74", + "nodeType": "YulFunctionCall", + "src": "6341:79:74" + }, + "nativeSrc": "6341:79:74", + "nodeType": "YulExpressionStatement", + "src": "6341:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "6304:8:74", + "nodeType": "YulIdentifier", + "src": "6304:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "6318:6:74", + "nodeType": "YulIdentifier", + "src": "6318:6:74" + }, + { + "kind": "number", + "nativeSrc": "6326:4:74", + "nodeType": "YulLiteral", + "src": "6326:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6314:3:74", + "nodeType": "YulIdentifier", + "src": "6314:3:74" + }, + "nativeSrc": "6314:17:74", + "nodeType": "YulFunctionCall", + "src": "6314:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6300:3:74", + "nodeType": "YulIdentifier", + "src": "6300:3:74" + }, + "nativeSrc": "6300:32:74", + "nodeType": "YulFunctionCall", + "src": "6300:32:74" + }, + { + "name": "end", + "nativeSrc": "6334:3:74", + "nodeType": "YulIdentifier", + "src": "6334:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6297:2:74", + "nodeType": "YulIdentifier", + "src": "6297:2:74" + }, + "nativeSrc": "6297:41:74", + "nodeType": "YulFunctionCall", + "src": "6297:41:74" + }, + "nativeSrc": "6294:128:74", + "nodeType": "YulIf", + "src": "6294:128:74" + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "5849:579:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "5917:6:74", + "nodeType": "YulTypedName", + "src": "5917:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5925:3:74", + "nodeType": "YulTypedName", + "src": "5925:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "5933:8:74", + "nodeType": "YulTypedName", + "src": "5933:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "5943:6:74", + "nodeType": "YulTypedName", + "src": "5943:6:74", + "type": "" + } + ], + "src": "5849:579:74" + }, + { + "body": { + "nativeSrc": "6477:79:74", + "nodeType": "YulBlock", + "src": "6477:79:74", + "statements": [ + { + "body": { + "nativeSrc": "6534:16:74", + "nodeType": "YulBlock", + "src": "6534:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6543:1:74", + "nodeType": "YulLiteral", + "src": "6543:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6546:1:74", + "nodeType": "YulLiteral", + "src": "6546:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6536:6:74", + "nodeType": "YulIdentifier", + "src": "6536:6:74" + }, + "nativeSrc": "6536:12:74", + "nodeType": "YulFunctionCall", + "src": "6536:12:74" + }, + "nativeSrc": "6536:12:74", + "nodeType": "YulExpressionStatement", + "src": "6536:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6500:5:74", + "nodeType": "YulIdentifier", + "src": "6500:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6525:5:74", + "nodeType": "YulIdentifier", + "src": "6525:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "6507:17:74", + "nodeType": "YulIdentifier", + "src": "6507:17:74" + }, + "nativeSrc": "6507:24:74", + "nodeType": "YulFunctionCall", + "src": "6507:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6497:2:74", + "nodeType": "YulIdentifier", + "src": "6497:2:74" + }, + "nativeSrc": "6497:35:74", + "nodeType": "YulFunctionCall", + "src": "6497:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6490:6:74", + "nodeType": "YulIdentifier", + "src": "6490:6:74" + }, + "nativeSrc": "6490:43:74", + "nodeType": "YulFunctionCall", + "src": "6490:43:74" + }, + "nativeSrc": "6487:63:74", + "nodeType": "YulIf", + "src": "6487:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "6434:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6470:5:74", + "nodeType": "YulTypedName", + "src": "6470:5:74", + "type": "" + } + ], + "src": "6434:122:74" + }, + { + "body": { + "nativeSrc": "6614:87:74", + "nodeType": "YulBlock", + "src": "6614:87:74", + "statements": [ + { + "nativeSrc": "6624:29:74", + "nodeType": "YulAssignment", + "src": "6624:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6646:6:74", + "nodeType": "YulIdentifier", + "src": "6646:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6633:12:74", + "nodeType": "YulIdentifier", + "src": "6633:12:74" + }, + "nativeSrc": "6633:20:74", + "nodeType": "YulFunctionCall", + "src": "6633:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6624:5:74", + "nodeType": "YulIdentifier", + "src": "6624:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6689:5:74", + "nodeType": "YulIdentifier", + "src": "6689:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "6662:26:74", + "nodeType": "YulIdentifier", + "src": "6662:26:74" + }, + "nativeSrc": "6662:33:74", + "nodeType": "YulFunctionCall", + "src": "6662:33:74" + }, + "nativeSrc": "6662:33:74", + "nodeType": "YulExpressionStatement", + "src": "6662:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "6562:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6592:6:74", + "nodeType": "YulTypedName", + "src": "6592:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6600:3:74", + "nodeType": "YulTypedName", + "src": "6600:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6608:5:74", + "nodeType": "YulTypedName", + "src": "6608:5:74", + "type": "" + } + ], + "src": "6562:139:74" + }, + { + "body": { + "nativeSrc": "6750:79:74", + "nodeType": "YulBlock", + "src": "6750:79:74", + "statements": [ + { + "body": { + "nativeSrc": "6807:16:74", + "nodeType": "YulBlock", + "src": "6807:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6816:1:74", + "nodeType": "YulLiteral", + "src": "6816:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6819:1:74", + "nodeType": "YulLiteral", + "src": "6819:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6809:6:74", + "nodeType": "YulIdentifier", + "src": "6809:6:74" + }, + "nativeSrc": "6809:12:74", + "nodeType": "YulFunctionCall", + "src": "6809:12:74" + }, + "nativeSrc": "6809:12:74", + "nodeType": "YulExpressionStatement", + "src": "6809:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6773:5:74", + "nodeType": "YulIdentifier", + "src": "6773:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6798:5:74", + "nodeType": "YulIdentifier", + "src": "6798:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "6780:17:74", + "nodeType": "YulIdentifier", + "src": "6780:17:74" + }, + "nativeSrc": "6780:24:74", + "nodeType": "YulFunctionCall", + "src": "6780:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6770:2:74", + "nodeType": "YulIdentifier", + "src": "6770:2:74" + }, + "nativeSrc": "6770:35:74", + "nodeType": "YulFunctionCall", + "src": "6770:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6763:6:74", + "nodeType": "YulIdentifier", + "src": "6763:6:74" + }, + "nativeSrc": "6763:43:74", + "nodeType": "YulFunctionCall", + "src": "6763:43:74" + }, + "nativeSrc": "6760:63:74", + "nodeType": "YulIf", + "src": "6760:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "6707:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6743:5:74", + "nodeType": "YulTypedName", + "src": "6743:5:74", + "type": "" + } + ], + "src": "6707:122:74" + }, + { + "body": { + "nativeSrc": "6887:87:74", + "nodeType": "YulBlock", + "src": "6887:87:74", + "statements": [ + { + "nativeSrc": "6897:29:74", + "nodeType": "YulAssignment", + "src": "6897:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6919:6:74", + "nodeType": "YulIdentifier", + "src": "6919:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6906:12:74", + "nodeType": "YulIdentifier", + "src": "6906:12:74" + }, + "nativeSrc": "6906:20:74", + "nodeType": "YulFunctionCall", + "src": "6906:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6897:5:74", + "nodeType": "YulIdentifier", + "src": "6897:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6962:5:74", + "nodeType": "YulIdentifier", + "src": "6962:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "6935:26:74", + "nodeType": "YulIdentifier", + "src": "6935:26:74" + }, + "nativeSrc": "6935:33:74", + "nodeType": "YulFunctionCall", + "src": "6935:33:74" + }, + "nativeSrc": "6935:33:74", + "nodeType": "YulExpressionStatement", + "src": "6935:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "6835:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6865:6:74", + "nodeType": "YulTypedName", + "src": "6865:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6873:3:74", + "nodeType": "YulTypedName", + "src": "6873:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6881:5:74", + "nodeType": "YulTypedName", + "src": "6881:5:74", + "type": "" + } + ], + "src": "6835:139:74" + }, + { + "body": { + "nativeSrc": "7126:725:74", + "nodeType": "YulBlock", + "src": "7126:725:74", + "statements": [ + { + "body": { + "nativeSrc": "7172:83:74", + "nodeType": "YulBlock", + "src": "7172:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "7174:77:74", + "nodeType": "YulIdentifier", + "src": "7174:77:74" + }, + "nativeSrc": "7174:79:74", + "nodeType": "YulFunctionCall", + "src": "7174:79:74" + }, + "nativeSrc": "7174:79:74", + "nodeType": "YulExpressionStatement", + "src": "7174:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "7147:7:74", + "nodeType": "YulIdentifier", + "src": "7147:7:74" + }, + { + "name": "headStart", + "nativeSrc": "7156:9:74", + "nodeType": "YulIdentifier", + "src": "7156:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7143:3:74", + "nodeType": "YulIdentifier", + "src": "7143:3:74" + }, + "nativeSrc": "7143:23:74", + "nodeType": "YulFunctionCall", + "src": "7143:23:74" + }, + { + "kind": "number", + "nativeSrc": "7168:2:74", + "nodeType": "YulLiteral", + "src": "7168:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "7139:3:74", + "nodeType": "YulIdentifier", + "src": "7139:3:74" + }, + "nativeSrc": "7139:32:74", + "nodeType": "YulFunctionCall", + "src": "7139:32:74" + }, + "nativeSrc": "7136:119:74", + "nodeType": "YulIf", + "src": "7136:119:74" + }, + { + "nativeSrc": "7265:323:74", + "nodeType": "YulBlock", + "src": "7265:323:74", + "statements": [ + { + "nativeSrc": "7280:45:74", + "nodeType": "YulVariableDeclaration", + "src": "7280:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7311:9:74", + "nodeType": "YulIdentifier", + "src": "7311:9:74" + }, + { + "kind": "number", + "nativeSrc": "7322:1:74", + "nodeType": "YulLiteral", + "src": "7322:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7307:3:74", + "nodeType": "YulIdentifier", + "src": "7307:3:74" + }, + "nativeSrc": "7307:17:74", + "nodeType": "YulFunctionCall", + "src": "7307:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "7294:12:74", + "nodeType": "YulIdentifier", + "src": "7294:12:74" + }, + "nativeSrc": "7294:31:74", + "nodeType": "YulFunctionCall", + "src": "7294:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7284:6:74", + "nodeType": "YulTypedName", + "src": "7284:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7372:83:74", + "nodeType": "YulBlock", + "src": "7372:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "7374:77:74", + "nodeType": "YulIdentifier", + "src": "7374:77:74" + }, + "nativeSrc": "7374:79:74", + "nodeType": "YulFunctionCall", + "src": "7374:79:74" + }, + "nativeSrc": "7374:79:74", + "nodeType": "YulExpressionStatement", + "src": "7374:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "7344:6:74", + "nodeType": "YulIdentifier", + "src": "7344:6:74" + }, + { + "kind": "number", + "nativeSrc": "7352:18:74", + "nodeType": "YulLiteral", + "src": "7352:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7341:2:74", + "nodeType": "YulIdentifier", + "src": "7341:2:74" + }, + "nativeSrc": "7341:30:74", + "nodeType": "YulFunctionCall", + "src": "7341:30:74" + }, + "nativeSrc": "7338:117:74", + "nodeType": "YulIf", + "src": "7338:117:74" + }, + { + "nativeSrc": "7469:109:74", + "nodeType": "YulAssignment", + "src": "7469:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7550:9:74", + "nodeType": "YulIdentifier", + "src": "7550:9:74" + }, + { + "name": "offset", + "nativeSrc": "7561:6:74", + "nodeType": "YulIdentifier", + "src": "7561:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7546:3:74", + "nodeType": "YulIdentifier", + "src": "7546:3:74" + }, + "nativeSrc": "7546:22:74", + "nodeType": "YulFunctionCall", + "src": "7546:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7570:7:74", + "nodeType": "YulIdentifier", + "src": "7570:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "7487:58:74", + "nodeType": "YulIdentifier", + "src": "7487:58:74" + }, + "nativeSrc": "7487:91:74", + "nodeType": "YulFunctionCall", + "src": "7487:91:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "7469:6:74", + "nodeType": "YulIdentifier", + "src": "7469:6:74" + }, + { + "name": "value1", + "nativeSrc": "7477:6:74", + "nodeType": "YulIdentifier", + "src": "7477:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "7598:118:74", + "nodeType": "YulBlock", + "src": "7598:118:74", + "statements": [ + { + "nativeSrc": "7613:16:74", + "nodeType": "YulVariableDeclaration", + "src": "7613:16:74", + "value": { + "kind": "number", + "nativeSrc": "7627:2:74", + "nodeType": "YulLiteral", + "src": "7627:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7617:6:74", + "nodeType": "YulTypedName", + "src": "7617:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7643:63:74", + "nodeType": "YulAssignment", + "src": "7643:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7678:9:74", + "nodeType": "YulIdentifier", + "src": "7678:9:74" + }, + { + "name": "offset", + "nativeSrc": "7689:6:74", + "nodeType": "YulIdentifier", + "src": "7689:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7674:3:74", + "nodeType": "YulIdentifier", + "src": "7674:3:74" + }, + "nativeSrc": "7674:22:74", + "nodeType": "YulFunctionCall", + "src": "7674:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7698:7:74", + "nodeType": "YulIdentifier", + "src": "7698:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "7653:20:74", + "nodeType": "YulIdentifier", + "src": "7653:20:74" + }, + "nativeSrc": "7653:53:74", + "nodeType": "YulFunctionCall", + "src": "7653:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "7643:6:74", + "nodeType": "YulIdentifier", + "src": "7643:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "7726:118:74", + "nodeType": "YulBlock", + "src": "7726:118:74", + "statements": [ + { + "nativeSrc": "7741:16:74", + "nodeType": "YulVariableDeclaration", + "src": "7741:16:74", + "value": { + "kind": "number", + "nativeSrc": "7755:2:74", + "nodeType": "YulLiteral", + "src": "7755:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7745:6:74", + "nodeType": "YulTypedName", + "src": "7745:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7771:63:74", + "nodeType": "YulAssignment", + "src": "7771:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7806:9:74", + "nodeType": "YulIdentifier", + "src": "7806:9:74" + }, + { + "name": "offset", + "nativeSrc": "7817:6:74", + "nodeType": "YulIdentifier", + "src": "7817:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7802:3:74", + "nodeType": "YulIdentifier", + "src": "7802:3:74" + }, + "nativeSrc": "7802:22:74", + "nodeType": "YulFunctionCall", + "src": "7802:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7826:7:74", + "nodeType": "YulIdentifier", + "src": "7826:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "7781:20:74", + "nodeType": "YulIdentifier", + "src": "7781:20:74" + }, + "nativeSrc": "7781:53:74", + "nodeType": "YulFunctionCall", + "src": "7781:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "7771:6:74", + "nodeType": "YulIdentifier", + "src": "7771:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptrt_uint256t_bytes32", + "nativeSrc": "6980:871:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7072:9:74", + "nodeType": "YulTypedName", + "src": "7072:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "7083:7:74", + "nodeType": "YulTypedName", + "src": "7083:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "7095:6:74", + "nodeType": "YulTypedName", + "src": "7095:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "7103:6:74", + "nodeType": "YulTypedName", + "src": "7103:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "7111:6:74", + "nodeType": "YulTypedName", + "src": "7111:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "7119:6:74", + "nodeType": "YulTypedName", + "src": "7119:6:74", + "type": "" + } + ], + "src": "6980:871:74" + }, + { + "body": { + "nativeSrc": "7899:48:74", + "nodeType": "YulBlock", + "src": "7899:48:74", + "statements": [ + { + "nativeSrc": "7909:32:74", + "nodeType": "YulAssignment", + "src": "7909:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7934:5:74", + "nodeType": "YulIdentifier", + "src": "7934:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "7927:6:74", + "nodeType": "YulIdentifier", + "src": "7927:6:74" + }, + "nativeSrc": "7927:13:74", + "nodeType": "YulFunctionCall", + "src": "7927:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "7920:6:74", + "nodeType": "YulIdentifier", + "src": "7920:6:74" + }, + "nativeSrc": "7920:21:74", + "nodeType": "YulFunctionCall", + "src": "7920:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "7909:7:74", + "nodeType": "YulIdentifier", + "src": "7909:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "7857:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7881:5:74", + "nodeType": "YulTypedName", + "src": "7881:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "7891:7:74", + "nodeType": "YulTypedName", + "src": "7891:7:74", + "type": "" + } + ], + "src": "7857:90:74" + }, + { + "body": { + "nativeSrc": "8020:50:74", + "nodeType": "YulBlock", + "src": "8020:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8037:3:74", + "nodeType": "YulIdentifier", + "src": "8037:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8057:5:74", + "nodeType": "YulIdentifier", + "src": "8057:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "8042:14:74", + "nodeType": "YulIdentifier", + "src": "8042:14:74" + }, + "nativeSrc": "8042:21:74", + "nodeType": "YulFunctionCall", + "src": "8042:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8030:6:74", + "nodeType": "YulIdentifier", + "src": "8030:6:74" + }, + "nativeSrc": "8030:34:74", + "nodeType": "YulFunctionCall", + "src": "8030:34:74" + }, + "nativeSrc": "8030:34:74", + "nodeType": "YulExpressionStatement", + "src": "8030:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack_library", + "nativeSrc": "7953:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8008:5:74", + "nodeType": "YulTypedName", + "src": "8008:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8015:3:74", + "nodeType": "YulTypedName", + "src": "8015:3:74", + "type": "" + } + ], + "src": "7953:117:74" + }, + { + "body": { + "nativeSrc": "8176:126:74", + "nodeType": "YulBlock", + "src": "8176:126:74", + "statements": [ + { + "nativeSrc": "8186:26:74", + "nodeType": "YulAssignment", + "src": "8186:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8198:9:74", + "nodeType": "YulIdentifier", + "src": "8198:9:74" + }, + { + "kind": "number", + "nativeSrc": "8209:2:74", + "nodeType": "YulLiteral", + "src": "8209:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8194:3:74", + "nodeType": "YulIdentifier", + "src": "8194:3:74" + }, + "nativeSrc": "8194:18:74", + "nodeType": "YulFunctionCall", + "src": "8194:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "8186:4:74", + "nodeType": "YulIdentifier", + "src": "8186:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "8268:6:74", + "nodeType": "YulIdentifier", + "src": "8268:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8281:9:74", + "nodeType": "YulIdentifier", + "src": "8281:9:74" + }, + { + "kind": "number", + "nativeSrc": "8292:1:74", + "nodeType": "YulLiteral", + "src": "8292:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8277:3:74", + "nodeType": "YulIdentifier", + "src": "8277:3:74" + }, + "nativeSrc": "8277:17:74", + "nodeType": "YulFunctionCall", + "src": "8277:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack_library", + "nativeSrc": "8222:45:74", + "nodeType": "YulIdentifier", + "src": "8222:45:74" + }, + "nativeSrc": "8222:73:74", + "nodeType": "YulFunctionCall", + "src": "8222:73:74" + }, + "nativeSrc": "8222:73:74", + "nodeType": "YulExpressionStatement", + "src": "8222:73:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed", + "nativeSrc": "8076:226:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8148:9:74", + "nodeType": "YulTypedName", + "src": "8148:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "8160:6:74", + "nodeType": "YulTypedName", + "src": "8160:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "8171:4:74", + "nodeType": "YulTypedName", + "src": "8171:4:74", + "type": "" + } + ], + "src": "8076:226:74" + }, + { + "body": { + "nativeSrc": "8374:263:74", + "nodeType": "YulBlock", + "src": "8374:263:74", + "statements": [ + { + "body": { + "nativeSrc": "8420:83:74", + "nodeType": "YulBlock", + "src": "8420:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "8422:77:74", + "nodeType": "YulIdentifier", + "src": "8422:77:74" + }, + "nativeSrc": "8422:79:74", + "nodeType": "YulFunctionCall", + "src": "8422:79:74" + }, + "nativeSrc": "8422:79:74", + "nodeType": "YulExpressionStatement", + "src": "8422:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "8395:7:74", + "nodeType": "YulIdentifier", + "src": "8395:7:74" + }, + { + "name": "headStart", + "nativeSrc": "8404:9:74", + "nodeType": "YulIdentifier", + "src": "8404:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8391:3:74", + "nodeType": "YulIdentifier", + "src": "8391:3:74" + }, + "nativeSrc": "8391:23:74", + "nodeType": "YulFunctionCall", + "src": "8391:23:74" + }, + { + "kind": "number", + "nativeSrc": "8416:2:74", + "nodeType": "YulLiteral", + "src": "8416:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8387:3:74", + "nodeType": "YulIdentifier", + "src": "8387:3:74" + }, + "nativeSrc": "8387:32:74", + "nodeType": "YulFunctionCall", + "src": "8387:32:74" + }, + "nativeSrc": "8384:119:74", + "nodeType": "YulIf", + "src": "8384:119:74" + }, + { + "nativeSrc": "8513:117:74", + "nodeType": "YulBlock", + "src": "8513:117:74", + "statements": [ + { + "nativeSrc": "8528:15:74", + "nodeType": "YulVariableDeclaration", + "src": "8528:15:74", + "value": { + "kind": "number", + "nativeSrc": "8542:1:74", + "nodeType": "YulLiteral", + "src": "8542:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8532:6:74", + "nodeType": "YulTypedName", + "src": "8532:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8557:63:74", + "nodeType": "YulAssignment", + "src": "8557:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8592:9:74", + "nodeType": "YulIdentifier", + "src": "8592:9:74" + }, + { + "name": "offset", + "nativeSrc": "8603:6:74", + "nodeType": "YulIdentifier", + "src": "8603:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8588:3:74", + "nodeType": "YulIdentifier", + "src": "8588:3:74" + }, + "nativeSrc": "8588:22:74", + "nodeType": "YulFunctionCall", + "src": "8588:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8612:7:74", + "nodeType": "YulIdentifier", + "src": "8612:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "8567:20:74", + "nodeType": "YulIdentifier", + "src": "8567:20:74" + }, + "nativeSrc": "8567:53:74", + "nodeType": "YulFunctionCall", + "src": "8567:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8557:6:74", + "nodeType": "YulIdentifier", + "src": "8557:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "8308:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8344:9:74", + "nodeType": "YulTypedName", + "src": "8344:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "8355:7:74", + "nodeType": "YulTypedName", + "src": "8355:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "8367:6:74", + "nodeType": "YulTypedName", + "src": "8367:6:74", + "type": "" + } + ], + "src": "8308:329:74" + }, + { + "body": { + "nativeSrc": "8706:52:74", + "nodeType": "YulBlock", + "src": "8706:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8723:3:74", + "nodeType": "YulIdentifier", + "src": "8723:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8745:5:74", + "nodeType": "YulIdentifier", + "src": "8745:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "8728:16:74", + "nodeType": "YulIdentifier", + "src": "8728:16:74" + }, + "nativeSrc": "8728:23:74", + "nodeType": "YulFunctionCall", + "src": "8728:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8716:6:74", + "nodeType": "YulIdentifier", + "src": "8716:6:74" + }, + "nativeSrc": "8716:36:74", + "nodeType": "YulFunctionCall", + "src": "8716:36:74" + }, + "nativeSrc": "8716:36:74", + "nodeType": "YulExpressionStatement", + "src": "8716:36:74" + } + ] + }, + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "8643:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8694:5:74", + "nodeType": "YulTypedName", + "src": "8694:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8701:3:74", + "nodeType": "YulTypedName", + "src": "8701:3:74", + "type": "" + } + ], + "src": "8643:115:74" + }, + { + "body": { + "nativeSrc": "8829:53:74", + "nodeType": "YulBlock", + "src": "8829:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8846:3:74", + "nodeType": "YulIdentifier", + "src": "8846:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8869:5:74", + "nodeType": "YulIdentifier", + "src": "8869:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "8851:17:74", + "nodeType": "YulIdentifier", + "src": "8851:17:74" + }, + "nativeSrc": "8851:24:74", + "nodeType": "YulFunctionCall", + "src": "8851:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8839:6:74", + "nodeType": "YulIdentifier", + "src": "8839:6:74" + }, + "nativeSrc": "8839:37:74", + "nodeType": "YulFunctionCall", + "src": "8839:37:74" + }, + "nativeSrc": "8839:37:74", + "nodeType": "YulExpressionStatement", + "src": "8839:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "8764:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8817:5:74", + "nodeType": "YulTypedName", + "src": "8817:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8824:3:74", + "nodeType": "YulTypedName", + "src": "8824:3:74", + "type": "" + } + ], + "src": "8764:118:74" + }, + { + "body": { + "nativeSrc": "8953:53:74", + "nodeType": "YulBlock", + "src": "8953:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8970:3:74", + "nodeType": "YulIdentifier", + "src": "8970:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8993:5:74", + "nodeType": "YulIdentifier", + "src": "8993:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "8975:17:74", + "nodeType": "YulIdentifier", + "src": "8975:17:74" + }, + "nativeSrc": "8975:24:74", + "nodeType": "YulFunctionCall", + "src": "8975:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8963:6:74", + "nodeType": "YulIdentifier", + "src": "8963:6:74" + }, + "nativeSrc": "8963:37:74", + "nodeType": "YulFunctionCall", + "src": "8963:37:74" + }, + "nativeSrc": "8963:37:74", + "nodeType": "YulExpressionStatement", + "src": "8963:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "8888:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8941:5:74", + "nodeType": "YulTypedName", + "src": "8941:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8948:3:74", + "nodeType": "YulTypedName", + "src": "8948:3:74", + "type": "" + } + ], + "src": "8888:118:74" + }, + { + "body": { + "nativeSrc": "9274:616:74", + "nodeType": "YulBlock", + "src": "9274:616:74", + "statements": [ + { + "nativeSrc": "9284:27:74", + "nodeType": "YulAssignment", + "src": "9284:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9296:9:74", + "nodeType": "YulIdentifier", + "src": "9296:9:74" + }, + { + "kind": "number", + "nativeSrc": "9307:3:74", + "nodeType": "YulLiteral", + "src": "9307:3:74", + "type": "", + "value": "224" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9292:3:74", + "nodeType": "YulIdentifier", + "src": "9292:3:74" + }, + "nativeSrc": "9292:19:74", + "nodeType": "YulFunctionCall", + "src": "9292:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "9284:4:74", + "nodeType": "YulIdentifier", + "src": "9284:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "9363:6:74", + "nodeType": "YulIdentifier", + "src": "9363:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9376:9:74", + "nodeType": "YulIdentifier", + "src": "9376:9:74" + }, + { + "kind": "number", + "nativeSrc": "9387:1:74", + "nodeType": "YulLiteral", + "src": "9387:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9372:3:74", + "nodeType": "YulIdentifier", + "src": "9372:3:74" + }, + "nativeSrc": "9372:17:74", + "nodeType": "YulFunctionCall", + "src": "9372:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "9321:41:74", + "nodeType": "YulIdentifier", + "src": "9321:41:74" + }, + "nativeSrc": "9321:69:74", + "nodeType": "YulFunctionCall", + "src": "9321:69:74" + }, + "nativeSrc": "9321:69:74", + "nodeType": "YulExpressionStatement", + "src": "9321:69:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "9444:6:74", + "nodeType": "YulIdentifier", + "src": "9444:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9457:9:74", + "nodeType": "YulIdentifier", + "src": "9457:9:74" + }, + { + "kind": "number", + "nativeSrc": "9468:2:74", + "nodeType": "YulLiteral", + "src": "9468:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9453:3:74", + "nodeType": "YulIdentifier", + "src": "9453:3:74" + }, + "nativeSrc": "9453:18:74", + "nodeType": "YulFunctionCall", + "src": "9453:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "9400:43:74", + "nodeType": "YulIdentifier", + "src": "9400:43:74" + }, + "nativeSrc": "9400:72:74", + "nodeType": "YulFunctionCall", + "src": "9400:72:74" + }, + "nativeSrc": "9400:72:74", + "nodeType": "YulExpressionStatement", + "src": "9400:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "9526:6:74", + "nodeType": "YulIdentifier", + "src": "9526:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9539:9:74", + "nodeType": "YulIdentifier", + "src": "9539:9:74" + }, + { + "kind": "number", + "nativeSrc": "9550:2:74", + "nodeType": "YulLiteral", + "src": "9550:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9535:3:74", + "nodeType": "YulIdentifier", + "src": "9535:3:74" + }, + "nativeSrc": "9535:18:74", + "nodeType": "YulFunctionCall", + "src": "9535:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "9482:43:74", + "nodeType": "YulIdentifier", + "src": "9482:43:74" + }, + "nativeSrc": "9482:72:74", + "nodeType": "YulFunctionCall", + "src": "9482:72:74" + }, + "nativeSrc": "9482:72:74", + "nodeType": "YulExpressionStatement", + "src": "9482:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "9608:6:74", + "nodeType": "YulIdentifier", + "src": "9608:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9621:9:74", + "nodeType": "YulIdentifier", + "src": "9621:9:74" + }, + { + "kind": "number", + "nativeSrc": "9632:2:74", + "nodeType": "YulLiteral", + "src": "9632:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9617:3:74", + "nodeType": "YulIdentifier", + "src": "9617:3:74" + }, + "nativeSrc": "9617:18:74", + "nodeType": "YulFunctionCall", + "src": "9617:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "9564:43:74", + "nodeType": "YulIdentifier", + "src": "9564:43:74" + }, + "nativeSrc": "9564:72:74", + "nodeType": "YulFunctionCall", + "src": "9564:72:74" + }, + "nativeSrc": "9564:72:74", + "nodeType": "YulExpressionStatement", + "src": "9564:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "9690:6:74", + "nodeType": "YulIdentifier", + "src": "9690:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9703:9:74", + "nodeType": "YulIdentifier", + "src": "9703:9:74" + }, + { + "kind": "number", + "nativeSrc": "9714:3:74", + "nodeType": "YulLiteral", + "src": "9714:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9699:3:74", + "nodeType": "YulIdentifier", + "src": "9699:3:74" + }, + "nativeSrc": "9699:19:74", + "nodeType": "YulFunctionCall", + "src": "9699:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "9646:43:74", + "nodeType": "YulIdentifier", + "src": "9646:43:74" + }, + "nativeSrc": "9646:73:74", + "nodeType": "YulFunctionCall", + "src": "9646:73:74" + }, + "nativeSrc": "9646:73:74", + "nodeType": "YulExpressionStatement", + "src": "9646:73:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value5", + "nativeSrc": "9773:6:74", + "nodeType": "YulIdentifier", + "src": "9773:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9786:9:74", + "nodeType": "YulIdentifier", + "src": "9786:9:74" + }, + { + "kind": "number", + "nativeSrc": "9797:3:74", + "nodeType": "YulLiteral", + "src": "9797:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9782:3:74", + "nodeType": "YulIdentifier", + "src": "9782:3:74" + }, + "nativeSrc": "9782:19:74", + "nodeType": "YulFunctionCall", + "src": "9782:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "9729:43:74", + "nodeType": "YulIdentifier", + "src": "9729:43:74" + }, + "nativeSrc": "9729:73:74", + "nodeType": "YulFunctionCall", + "src": "9729:73:74" + }, + "nativeSrc": "9729:73:74", + "nodeType": "YulExpressionStatement", + "src": "9729:73:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value6", + "nativeSrc": "9854:6:74", + "nodeType": "YulIdentifier", + "src": "9854:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9867:9:74", + "nodeType": "YulIdentifier", + "src": "9867:9:74" + }, + { + "kind": "number", + "nativeSrc": "9878:3:74", + "nodeType": "YulLiteral", + "src": "9878:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9863:3:74", + "nodeType": "YulIdentifier", + "src": "9863:3:74" + }, + "nativeSrc": "9863:19:74", + "nodeType": "YulFunctionCall", + "src": "9863:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "9812:41:74", + "nodeType": "YulIdentifier", + "src": "9812:41:74" + }, + "nativeSrc": "9812:71:74", + "nodeType": "YulFunctionCall", + "src": "9812:71:74" + }, + "nativeSrc": "9812:71:74", + "nodeType": "YulExpressionStatement", + "src": "9812:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__to_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__fromStack_reversed", + "nativeSrc": "9012:878:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9198:9:74", + "nodeType": "YulTypedName", + "src": "9198:9:74", + "type": "" + }, + { + "name": "value6", + "nativeSrc": "9210:6:74", + "nodeType": "YulTypedName", + "src": "9210:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "9218:6:74", + "nodeType": "YulTypedName", + "src": "9218:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "9226:6:74", + "nodeType": "YulTypedName", + "src": "9226:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "9234:6:74", + "nodeType": "YulTypedName", + "src": "9234:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "9242:6:74", + "nodeType": "YulTypedName", + "src": "9242:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "9250:6:74", + "nodeType": "YulTypedName", + "src": "9250:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "9258:6:74", + "nodeType": "YulTypedName", + "src": "9258:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "9269:4:74", + "nodeType": "YulTypedName", + "src": "9269:4:74", + "type": "" + } + ], + "src": "9012:878:74" + }, + { + "body": { + "nativeSrc": "9954:40:74", + "nodeType": "YulBlock", + "src": "9954:40:74", + "statements": [ + { + "nativeSrc": "9965:22:74", + "nodeType": "YulAssignment", + "src": "9965:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "9981:5:74", + "nodeType": "YulIdentifier", + "src": "9981:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9975:5:74", + "nodeType": "YulIdentifier", + "src": "9975:5:74" + }, + "nativeSrc": "9975:12:74", + "nodeType": "YulFunctionCall", + "src": "9975:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "9965:6:74", + "nodeType": "YulIdentifier", + "src": "9965:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "9896:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9937:5:74", + "nodeType": "YulTypedName", + "src": "9937:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "9947:6:74", + "nodeType": "YulTypedName", + "src": "9947:6:74", + "type": "" + } + ], + "src": "9896:98:74" + }, + { + "body": { + "nativeSrc": "10103:73:74", + "nodeType": "YulBlock", + "src": "10103:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10120:3:74", + "nodeType": "YulIdentifier", + "src": "10120:3:74" + }, + { + "name": "length", + "nativeSrc": "10125:6:74", + "nodeType": "YulIdentifier", + "src": "10125:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10113:6:74", + "nodeType": "YulIdentifier", + "src": "10113:6:74" + }, + "nativeSrc": "10113:19:74", + "nodeType": "YulFunctionCall", + "src": "10113:19:74" + }, + "nativeSrc": "10113:19:74", + "nodeType": "YulExpressionStatement", + "src": "10113:19:74" + }, + { + "nativeSrc": "10141:29:74", + "nodeType": "YulAssignment", + "src": "10141:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10160:3:74", + "nodeType": "YulIdentifier", + "src": "10160:3:74" + }, + { + "kind": "number", + "nativeSrc": "10165:4:74", + "nodeType": "YulLiteral", + "src": "10165:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10156:3:74", + "nodeType": "YulIdentifier", + "src": "10156:3:74" + }, + "nativeSrc": "10156:14:74", + "nodeType": "YulFunctionCall", + "src": "10156:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "10141:11:74", + "nodeType": "YulIdentifier", + "src": "10141:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "10000:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "10075:3:74", + "nodeType": "YulTypedName", + "src": "10075:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "10080:6:74", + "nodeType": "YulTypedName", + "src": "10080:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "10091:11:74", + "nodeType": "YulTypedName", + "src": "10091:11:74", + "type": "" + } + ], + "src": "10000:176:74" + }, + { + "body": { + "nativeSrc": "10244:186:74", + "nodeType": "YulBlock", + "src": "10244:186:74", + "statements": [ + { + "nativeSrc": "10255:10:74", + "nodeType": "YulVariableDeclaration", + "src": "10255:10:74", + "value": { + "kind": "number", + "nativeSrc": "10264:1:74", + "nodeType": "YulLiteral", + "src": "10264:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "10259:1:74", + "nodeType": "YulTypedName", + "src": "10259:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10324:63:74", + "nodeType": "YulBlock", + "src": "10324:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "10349:3:74", + "nodeType": "YulIdentifier", + "src": "10349:3:74" + }, + { + "name": "i", + "nativeSrc": "10354:1:74", + "nodeType": "YulIdentifier", + "src": "10354:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10345:3:74", + "nodeType": "YulIdentifier", + "src": "10345:3:74" + }, + "nativeSrc": "10345:11:74", + "nodeType": "YulFunctionCall", + "src": "10345:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10368:3:74", + "nodeType": "YulIdentifier", + "src": "10368:3:74" + }, + { + "name": "i", + "nativeSrc": "10373:1:74", + "nodeType": "YulIdentifier", + "src": "10373:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10364:3:74", + "nodeType": "YulIdentifier", + "src": "10364:3:74" + }, + "nativeSrc": "10364:11:74", + "nodeType": "YulFunctionCall", + "src": "10364:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "10358:5:74", + "nodeType": "YulIdentifier", + "src": "10358:5:74" + }, + "nativeSrc": "10358:18:74", + "nodeType": "YulFunctionCall", + "src": "10358:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10338:6:74", + "nodeType": "YulIdentifier", + "src": "10338:6:74" + }, + "nativeSrc": "10338:39:74", + "nodeType": "YulFunctionCall", + "src": "10338:39:74" + }, + "nativeSrc": "10338:39:74", + "nodeType": "YulExpressionStatement", + "src": "10338:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "10285:1:74", + "nodeType": "YulIdentifier", + "src": "10285:1:74" + }, + { + "name": "length", + "nativeSrc": "10288:6:74", + "nodeType": "YulIdentifier", + "src": "10288:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "10282:2:74", + "nodeType": "YulIdentifier", + "src": "10282:2:74" + }, + "nativeSrc": "10282:13:74", + "nodeType": "YulFunctionCall", + "src": "10282:13:74" + }, + "nativeSrc": "10274:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "10296:19:74", + "nodeType": "YulBlock", + "src": "10296:19:74", + "statements": [ + { + "nativeSrc": "10298:15:74", + "nodeType": "YulAssignment", + "src": "10298:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "10307:1:74", + "nodeType": "YulIdentifier", + "src": "10307:1:74" + }, + { + "kind": "number", + "nativeSrc": "10310:2:74", + "nodeType": "YulLiteral", + "src": "10310:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10303:3:74", + "nodeType": "YulIdentifier", + "src": "10303:3:74" + }, + "nativeSrc": "10303:10:74", + "nodeType": "YulFunctionCall", + "src": "10303:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "10298:1:74", + "nodeType": "YulIdentifier", + "src": "10298:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "10278:3:74", + "nodeType": "YulBlock", + "src": "10278:3:74", + "statements": [] + }, + "src": "10274:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "10407:3:74", + "nodeType": "YulIdentifier", + "src": "10407:3:74" + }, + { + "name": "length", + "nativeSrc": "10412:6:74", + "nodeType": "YulIdentifier", + "src": "10412:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10403:3:74", + "nodeType": "YulIdentifier", + "src": "10403:3:74" + }, + "nativeSrc": "10403:16:74", + "nodeType": "YulFunctionCall", + "src": "10403:16:74" + }, + { + "kind": "number", + "nativeSrc": "10421:1:74", + "nodeType": "YulLiteral", + "src": "10421:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10396:6:74", + "nodeType": "YulIdentifier", + "src": "10396:6:74" + }, + "nativeSrc": "10396:27:74", + "nodeType": "YulFunctionCall", + "src": "10396:27:74" + }, + "nativeSrc": "10396:27:74", + "nodeType": "YulExpressionStatement", + "src": "10396:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "10182:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "10226:3:74", + "nodeType": "YulTypedName", + "src": "10226:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "10231:3:74", + "nodeType": "YulTypedName", + "src": "10231:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "10236:6:74", + "nodeType": "YulTypedName", + "src": "10236:6:74", + "type": "" + } + ], + "src": "10182:248:74" + }, + { + "body": { + "nativeSrc": "10484:54:74", + "nodeType": "YulBlock", + "src": "10484:54:74", + "statements": [ + { + "nativeSrc": "10494:38:74", + "nodeType": "YulAssignment", + "src": "10494:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10512:5:74", + "nodeType": "YulIdentifier", + "src": "10512:5:74" + }, + { + "kind": "number", + "nativeSrc": "10519:2:74", + "nodeType": "YulLiteral", + "src": "10519:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10508:3:74", + "nodeType": "YulIdentifier", + "src": "10508:3:74" + }, + "nativeSrc": "10508:14:74", + "nodeType": "YulFunctionCall", + "src": "10508:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10528:2:74", + "nodeType": "YulLiteral", + "src": "10528:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "10524:3:74", + "nodeType": "YulIdentifier", + "src": "10524:3:74" + }, + "nativeSrc": "10524:7:74", + "nodeType": "YulFunctionCall", + "src": "10524:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10504:3:74", + "nodeType": "YulIdentifier", + "src": "10504:3:74" + }, + "nativeSrc": "10504:28:74", + "nodeType": "YulFunctionCall", + "src": "10504:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "10494:6:74", + "nodeType": "YulIdentifier", + "src": "10494:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "10436:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10467:5:74", + "nodeType": "YulTypedName", + "src": "10467:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "10477:6:74", + "nodeType": "YulTypedName", + "src": "10477:6:74", + "type": "" + } + ], + "src": "10436:102:74" + }, + { + "body": { + "nativeSrc": "10642:291:74", + "nodeType": "YulBlock", + "src": "10642:291:74", + "statements": [ + { + "nativeSrc": "10652:52:74", + "nodeType": "YulVariableDeclaration", + "src": "10652:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "10698:5:74", + "nodeType": "YulIdentifier", + "src": "10698:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "10666:31:74", + "nodeType": "YulIdentifier", + "src": "10666:31:74" + }, + "nativeSrc": "10666:38:74", + "nodeType": "YulFunctionCall", + "src": "10666:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "10656:6:74", + "nodeType": "YulTypedName", + "src": "10656:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10713:85:74", + "nodeType": "YulAssignment", + "src": "10713:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10786:3:74", + "nodeType": "YulIdentifier", + "src": "10786:3:74" + }, + { + "name": "length", + "nativeSrc": "10791:6:74", + "nodeType": "YulIdentifier", + "src": "10791:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "10720:65:74", + "nodeType": "YulIdentifier", + "src": "10720:65:74" + }, + "nativeSrc": "10720:78:74", + "nodeType": "YulFunctionCall", + "src": "10720:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "10713:3:74", + "nodeType": "YulIdentifier", + "src": "10713:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10846:5:74", + "nodeType": "YulIdentifier", + "src": "10846:5:74" + }, + { + "kind": "number", + "nativeSrc": "10853:4:74", + "nodeType": "YulLiteral", + "src": "10853:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10842:3:74", + "nodeType": "YulIdentifier", + "src": "10842:3:74" + }, + "nativeSrc": "10842:16:74", + "nodeType": "YulFunctionCall", + "src": "10842:16:74" + }, + { + "name": "pos", + "nativeSrc": "10860:3:74", + "nodeType": "YulIdentifier", + "src": "10860:3:74" + }, + { + "name": "length", + "nativeSrc": "10865:6:74", + "nodeType": "YulIdentifier", + "src": "10865:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "10807:34:74", + "nodeType": "YulIdentifier", + "src": "10807:34:74" + }, + "nativeSrc": "10807:65:74", + "nodeType": "YulFunctionCall", + "src": "10807:65:74" + }, + "nativeSrc": "10807:65:74", + "nodeType": "YulExpressionStatement", + "src": "10807:65:74" + }, + { + "nativeSrc": "10881:46:74", + "nodeType": "YulAssignment", + "src": "10881:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10892:3:74", + "nodeType": "YulIdentifier", + "src": "10892:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "10919:6:74", + "nodeType": "YulIdentifier", + "src": "10919:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "10897:21:74", + "nodeType": "YulIdentifier", + "src": "10897:21:74" + }, + "nativeSrc": "10897:29:74", + "nodeType": "YulFunctionCall", + "src": "10897:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10888:3:74", + "nodeType": "YulIdentifier", + "src": "10888:3:74" + }, + "nativeSrc": "10888:39:74", + "nodeType": "YulFunctionCall", + "src": "10888:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "10881:3:74", + "nodeType": "YulIdentifier", + "src": "10881:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "10544:389:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10623:5:74", + "nodeType": "YulTypedName", + "src": "10623:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "10630:3:74", + "nodeType": "YulTypedName", + "src": "10630:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "10638:3:74", + "nodeType": "YulTypedName", + "src": "10638:3:74", + "type": "" + } + ], + "src": "10544:389:74" + }, + { + "body": { + "nativeSrc": "11063:201:74", + "nodeType": "YulBlock", + "src": "11063:201:74", + "statements": [ + { + "nativeSrc": "11073:26:74", + "nodeType": "YulAssignment", + "src": "11073:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11085:9:74", + "nodeType": "YulIdentifier", + "src": "11085:9:74" + }, + { + "kind": "number", + "nativeSrc": "11096:2:74", + "nodeType": "YulLiteral", + "src": "11096:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11081:3:74", + "nodeType": "YulIdentifier", + "src": "11081:3:74" + }, + "nativeSrc": "11081:18:74", + "nodeType": "YulFunctionCall", + "src": "11081:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11073:4:74", + "nodeType": "YulIdentifier", + "src": "11073:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11120:9:74", + "nodeType": "YulIdentifier", + "src": "11120:9:74" + }, + { + "kind": "number", + "nativeSrc": "11131:1:74", + "nodeType": "YulLiteral", + "src": "11131:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11116:3:74", + "nodeType": "YulIdentifier", + "src": "11116:3:74" + }, + "nativeSrc": "11116:17:74", + "nodeType": "YulFunctionCall", + "src": "11116:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11139:4:74", + "nodeType": "YulIdentifier", + "src": "11139:4:74" + }, + { + "name": "headStart", + "nativeSrc": "11145:9:74", + "nodeType": "YulIdentifier", + "src": "11145:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11135:3:74", + "nodeType": "YulIdentifier", + "src": "11135:3:74" + }, + "nativeSrc": "11135:20:74", + "nodeType": "YulFunctionCall", + "src": "11135:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11109:6:74", + "nodeType": "YulIdentifier", + "src": "11109:6:74" + }, + "nativeSrc": "11109:47:74", + "nodeType": "YulFunctionCall", + "src": "11109:47:74" + }, + "nativeSrc": "11109:47:74", + "nodeType": "YulExpressionStatement", + "src": "11109:47:74" + }, + { + "nativeSrc": "11165:92:74", + "nodeType": "YulAssignment", + "src": "11165:92:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "11243:6:74", + "nodeType": "YulIdentifier", + "src": "11243:6:74" + }, + { + "name": "tail", + "nativeSrc": "11252:4:74", + "nodeType": "YulIdentifier", + "src": "11252:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "11173:69:74", + "nodeType": "YulIdentifier", + "src": "11173:69:74" + }, + "nativeSrc": "11173:84:74", + "nodeType": "YulFunctionCall", + "src": "11173:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11165:4:74", + "nodeType": "YulIdentifier", + "src": "11165:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "10939:325:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11035:9:74", + "nodeType": "YulTypedName", + "src": "11035:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "11047:6:74", + "nodeType": "YulTypedName", + "src": "11047:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11058:4:74", + "nodeType": "YulTypedName", + "src": "11058:4:74", + "type": "" + } + ], + "src": "10939:325:74" + }, + { + "body": { + "nativeSrc": "11333:80:74", + "nodeType": "YulBlock", + "src": "11333:80:74", + "statements": [ + { + "nativeSrc": "11343:22:74", + "nodeType": "YulAssignment", + "src": "11343:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11358:6:74", + "nodeType": "YulIdentifier", + "src": "11358:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "11352:5:74", + "nodeType": "YulIdentifier", + "src": "11352:5:74" + }, + "nativeSrc": "11352:13:74", + "nodeType": "YulFunctionCall", + "src": "11352:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "11343:5:74", + "nodeType": "YulIdentifier", + "src": "11343:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11401:5:74", + "nodeType": "YulIdentifier", + "src": "11401:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "11374:26:74", + "nodeType": "YulIdentifier", + "src": "11374:26:74" + }, + "nativeSrc": "11374:33:74", + "nodeType": "YulFunctionCall", + "src": "11374:33:74" + }, + "nativeSrc": "11374:33:74", + "nodeType": "YulExpressionStatement", + "src": "11374:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "11270:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "11311:6:74", + "nodeType": "YulTypedName", + "src": "11311:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "11319:3:74", + "nodeType": "YulTypedName", + "src": "11319:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "11327:5:74", + "nodeType": "YulTypedName", + "src": "11327:5:74", + "type": "" + } + ], + "src": "11270:143:74" + }, + { + "body": { + "nativeSrc": "11496:274:74", + "nodeType": "YulBlock", + "src": "11496:274:74", + "statements": [ + { + "body": { + "nativeSrc": "11542:83:74", + "nodeType": "YulBlock", + "src": "11542:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "11544:77:74", + "nodeType": "YulIdentifier", + "src": "11544:77:74" + }, + "nativeSrc": "11544:79:74", + "nodeType": "YulFunctionCall", + "src": "11544:79:74" + }, + "nativeSrc": "11544:79:74", + "nodeType": "YulExpressionStatement", + "src": "11544:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "11517:7:74", + "nodeType": "YulIdentifier", + "src": "11517:7:74" + }, + { + "name": "headStart", + "nativeSrc": "11526:9:74", + "nodeType": "YulIdentifier", + "src": "11526:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11513:3:74", + "nodeType": "YulIdentifier", + "src": "11513:3:74" + }, + "nativeSrc": "11513:23:74", + "nodeType": "YulFunctionCall", + "src": "11513:23:74" + }, + { + "kind": "number", + "nativeSrc": "11538:2:74", + "nodeType": "YulLiteral", + "src": "11538:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "11509:3:74", + "nodeType": "YulIdentifier", + "src": "11509:3:74" + }, + "nativeSrc": "11509:32:74", + "nodeType": "YulFunctionCall", + "src": "11509:32:74" + }, + "nativeSrc": "11506:119:74", + "nodeType": "YulIf", + "src": "11506:119:74" + }, + { + "nativeSrc": "11635:128:74", + "nodeType": "YulBlock", + "src": "11635:128:74", + "statements": [ + { + "nativeSrc": "11650:15:74", + "nodeType": "YulVariableDeclaration", + "src": "11650:15:74", + "value": { + "kind": "number", + "nativeSrc": "11664:1:74", + "nodeType": "YulLiteral", + "src": "11664:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11654:6:74", + "nodeType": "YulTypedName", + "src": "11654:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11679:74:74", + "nodeType": "YulAssignment", + "src": "11679:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11725:9:74", + "nodeType": "YulIdentifier", + "src": "11725:9:74" + }, + { + "name": "offset", + "nativeSrc": "11736:6:74", + "nodeType": "YulIdentifier", + "src": "11736:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11721:3:74", + "nodeType": "YulIdentifier", + "src": "11721:3:74" + }, + "nativeSrc": "11721:22:74", + "nodeType": "YulFunctionCall", + "src": "11721:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11745:7:74", + "nodeType": "YulIdentifier", + "src": "11745:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "11689:31:74", + "nodeType": "YulIdentifier", + "src": "11689:31:74" + }, + "nativeSrc": "11689:64:74", + "nodeType": "YulFunctionCall", + "src": "11689:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "11679:6:74", + "nodeType": "YulIdentifier", + "src": "11679:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "11419:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11466:9:74", + "nodeType": "YulTypedName", + "src": "11466:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "11477:7:74", + "nodeType": "YulTypedName", + "src": "11477:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "11489:6:74", + "nodeType": "YulTypedName", + "src": "11489:6:74", + "type": "" + } + ], + "src": "11419:351:74" + }, + { + "body": { + "nativeSrc": "11840:84:74", + "nodeType": "YulBlock", + "src": "11840:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "11864:3:74", + "nodeType": "YulIdentifier", + "src": "11864:3:74" + }, + { + "name": "src", + "nativeSrc": "11869:3:74", + "nodeType": "YulIdentifier", + "src": "11869:3:74" + }, + { + "name": "length", + "nativeSrc": "11874:6:74", + "nodeType": "YulIdentifier", + "src": "11874:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "11851:12:74", + "nodeType": "YulIdentifier", + "src": "11851:12:74" + }, + "nativeSrc": "11851:30:74", + "nodeType": "YulFunctionCall", + "src": "11851:30:74" + }, + "nativeSrc": "11851:30:74", + "nodeType": "YulExpressionStatement", + "src": "11851:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "11901:3:74", + "nodeType": "YulIdentifier", + "src": "11901:3:74" + }, + { + "name": "length", + "nativeSrc": "11906:6:74", + "nodeType": "YulIdentifier", + "src": "11906:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11897:3:74", + "nodeType": "YulIdentifier", + "src": "11897:3:74" + }, + "nativeSrc": "11897:16:74", + "nodeType": "YulFunctionCall", + "src": "11897:16:74" + }, + { + "kind": "number", + "nativeSrc": "11915:1:74", + "nodeType": "YulLiteral", + "src": "11915:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11890:6:74", + "nodeType": "YulIdentifier", + "src": "11890:6:74" + }, + "nativeSrc": "11890:27:74", + "nodeType": "YulFunctionCall", + "src": "11890:27:74" + }, + "nativeSrc": "11890:27:74", + "nodeType": "YulExpressionStatement", + "src": "11890:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "11776:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "11822:3:74", + "nodeType": "YulTypedName", + "src": "11822:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "11827:3:74", + "nodeType": "YulTypedName", + "src": "11827:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "11832:6:74", + "nodeType": "YulTypedName", + "src": "11832:6:74", + "type": "" + } + ], + "src": "11776:148:74" + }, + { + "body": { + "nativeSrc": "12060:222:74", + "nodeType": "YulBlock", + "src": "12060:222:74", + "statements": [ + { + "nativeSrc": "12070:85:74", + "nodeType": "YulAssignment", + "src": "12070:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12143:3:74", + "nodeType": "YulIdentifier", + "src": "12143:3:74" + }, + { + "name": "length", + "nativeSrc": "12148:6:74", + "nodeType": "YulIdentifier", + "src": "12148:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "12077:65:74", + "nodeType": "YulIdentifier", + "src": "12077:65:74" + }, + "nativeSrc": "12077:78:74", + "nodeType": "YulFunctionCall", + "src": "12077:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12070:3:74", + "nodeType": "YulIdentifier", + "src": "12070:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "12202:5:74", + "nodeType": "YulIdentifier", + "src": "12202:5:74" + }, + { + "name": "pos", + "nativeSrc": "12209:3:74", + "nodeType": "YulIdentifier", + "src": "12209:3:74" + }, + { + "name": "length", + "nativeSrc": "12214:6:74", + "nodeType": "YulIdentifier", + "src": "12214:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "12165:36:74", + "nodeType": "YulIdentifier", + "src": "12165:36:74" + }, + "nativeSrc": "12165:56:74", + "nodeType": "YulFunctionCall", + "src": "12165:56:74" + }, + "nativeSrc": "12165:56:74", + "nodeType": "YulExpressionStatement", + "src": "12165:56:74" + }, + { + "nativeSrc": "12230:46:74", + "nodeType": "YulAssignment", + "src": "12230:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12241:3:74", + "nodeType": "YulIdentifier", + "src": "12241:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "12268:6:74", + "nodeType": "YulIdentifier", + "src": "12268:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "12246:21:74", + "nodeType": "YulIdentifier", + "src": "12246:21:74" + }, + "nativeSrc": "12246:29:74", + "nodeType": "YulFunctionCall", + "src": "12246:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12237:3:74", + "nodeType": "YulIdentifier", + "src": "12237:3:74" + }, + "nativeSrc": "12237:39:74", + "nodeType": "YulFunctionCall", + "src": "12237:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "12230:3:74", + "nodeType": "YulIdentifier", + "src": "12230:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "11952:330:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "12033:5:74", + "nodeType": "YulTypedName", + "src": "12033:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "12040:6:74", + "nodeType": "YulTypedName", + "src": "12040:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "12048:3:74", + "nodeType": "YulTypedName", + "src": "12048:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "12056:3:74", + "nodeType": "YulTypedName", + "src": "12056:3:74", + "type": "" + } + ], + "src": "11952:330:74" + }, + { + "body": { + "nativeSrc": "12422:211:74", + "nodeType": "YulBlock", + "src": "12422:211:74", + "statements": [ + { + "nativeSrc": "12432:26:74", + "nodeType": "YulAssignment", + "src": "12432:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12444:9:74", + "nodeType": "YulIdentifier", + "src": "12444:9:74" + }, + { + "kind": "number", + "nativeSrc": "12455:2:74", + "nodeType": "YulLiteral", + "src": "12455:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12440:3:74", + "nodeType": "YulIdentifier", + "src": "12440:3:74" + }, + "nativeSrc": "12440:18:74", + "nodeType": "YulFunctionCall", + "src": "12440:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12432:4:74", + "nodeType": "YulIdentifier", + "src": "12432:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12479:9:74", + "nodeType": "YulIdentifier", + "src": "12479:9:74" + }, + { + "kind": "number", + "nativeSrc": "12490:1:74", + "nodeType": "YulLiteral", + "src": "12490:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12475:3:74", + "nodeType": "YulIdentifier", + "src": "12475:3:74" + }, + "nativeSrc": "12475:17:74", + "nodeType": "YulFunctionCall", + "src": "12475:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "12498:4:74", + "nodeType": "YulIdentifier", + "src": "12498:4:74" + }, + { + "name": "headStart", + "nativeSrc": "12504:9:74", + "nodeType": "YulIdentifier", + "src": "12504:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12494:3:74", + "nodeType": "YulIdentifier", + "src": "12494:3:74" + }, + "nativeSrc": "12494:20:74", + "nodeType": "YulFunctionCall", + "src": "12494:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12468:6:74", + "nodeType": "YulIdentifier", + "src": "12468:6:74" + }, + "nativeSrc": "12468:47:74", + "nodeType": "YulFunctionCall", + "src": "12468:47:74" + }, + "nativeSrc": "12468:47:74", + "nodeType": "YulExpressionStatement", + "src": "12468:47:74" + }, + { + "nativeSrc": "12524:102:74", + "nodeType": "YulAssignment", + "src": "12524:102:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12604:6:74", + "nodeType": "YulIdentifier", + "src": "12604:6:74" + }, + { + "name": "value1", + "nativeSrc": "12612:6:74", + "nodeType": "YulIdentifier", + "src": "12612:6:74" + }, + { + "name": "tail", + "nativeSrc": "12621:4:74", + "nodeType": "YulIdentifier", + "src": "12621:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "12532:71:74", + "nodeType": "YulIdentifier", + "src": "12532:71:74" + }, + "nativeSrc": "12532:94:74", + "nodeType": "YulFunctionCall", + "src": "12532:94:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12524:4:74", + "nodeType": "YulIdentifier", + "src": "12524:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "12288:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12386:9:74", + "nodeType": "YulTypedName", + "src": "12386:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12398:6:74", + "nodeType": "YulTypedName", + "src": "12398:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12406:6:74", + "nodeType": "YulTypedName", + "src": "12406:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12417:4:74", + "nodeType": "YulTypedName", + "src": "12417:4:74", + "type": "" + } + ], + "src": "12288:345:74" + }, + { + "body": { + "nativeSrc": "12765:206:74", + "nodeType": "YulBlock", + "src": "12765:206:74", + "statements": [ + { + "nativeSrc": "12775:26:74", + "nodeType": "YulAssignment", + "src": "12775:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12787:9:74", + "nodeType": "YulIdentifier", + "src": "12787:9:74" + }, + { + "kind": "number", + "nativeSrc": "12798:2:74", + "nodeType": "YulLiteral", + "src": "12798:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12783:3:74", + "nodeType": "YulIdentifier", + "src": "12783:3:74" + }, + "nativeSrc": "12783:18:74", + "nodeType": "YulFunctionCall", + "src": "12783:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12775:4:74", + "nodeType": "YulIdentifier", + "src": "12775:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12855:6:74", + "nodeType": "YulIdentifier", + "src": "12855:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12868:9:74", + "nodeType": "YulIdentifier", + "src": "12868:9:74" + }, + { + "kind": "number", + "nativeSrc": "12879:1:74", + "nodeType": "YulLiteral", + "src": "12879:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12864:3:74", + "nodeType": "YulIdentifier", + "src": "12864:3:74" + }, + "nativeSrc": "12864:17:74", + "nodeType": "YulFunctionCall", + "src": "12864:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "12811:43:74", + "nodeType": "YulIdentifier", + "src": "12811:43:74" + }, + "nativeSrc": "12811:71:74", + "nodeType": "YulFunctionCall", + "src": "12811:71:74" + }, + "nativeSrc": "12811:71:74", + "nodeType": "YulExpressionStatement", + "src": "12811:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "12936:6:74", + "nodeType": "YulIdentifier", + "src": "12936:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12949:9:74", + "nodeType": "YulIdentifier", + "src": "12949:9:74" + }, + { + "kind": "number", + "nativeSrc": "12960:2:74", + "nodeType": "YulLiteral", + "src": "12960:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12945:3:74", + "nodeType": "YulIdentifier", + "src": "12945:3:74" + }, + "nativeSrc": "12945:18:74", + "nodeType": "YulFunctionCall", + "src": "12945:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "12892:43:74", + "nodeType": "YulIdentifier", + "src": "12892:43:74" + }, + "nativeSrc": "12892:72:74", + "nodeType": "YulFunctionCall", + "src": "12892:72:74" + }, + "nativeSrc": "12892:72:74", + "nodeType": "YulExpressionStatement", + "src": "12892:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "12639:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12729:9:74", + "nodeType": "YulTypedName", + "src": "12729:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12741:6:74", + "nodeType": "YulTypedName", + "src": "12741:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12749:6:74", + "nodeType": "YulTypedName", + "src": "12749:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12760:4:74", + "nodeType": "YulTypedName", + "src": "12760:4:74", + "type": "" + } + ], + "src": "12639:332:74" + }, + { + "body": { + "nativeSrc": "13024:32:74", + "nodeType": "YulBlock", + "src": "13024:32:74", + "statements": [ + { + "nativeSrc": "13034:16:74", + "nodeType": "YulAssignment", + "src": "13034:16:74", + "value": { + "name": "value", + "nativeSrc": "13045:5:74", + "nodeType": "YulIdentifier", + "src": "13045:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "13034:7:74", + "nodeType": "YulIdentifier", + "src": "13034:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nativeSrc": "12977:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13006:5:74", + "nodeType": "YulTypedName", + "src": "13006:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "13016:7:74", + "nodeType": "YulTypedName", + "src": "13016:7:74", + "type": "" + } + ], + "src": "12977:79:74" + }, + { + "body": { + "nativeSrc": "13145:74:74", + "nodeType": "YulBlock", + "src": "13145:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13162:3:74", + "nodeType": "YulIdentifier", + "src": "13162:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "13205:5:74", + "nodeType": "YulIdentifier", + "src": "13205:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "13187:17:74", + "nodeType": "YulIdentifier", + "src": "13187:17:74" + }, + "nativeSrc": "13187:24:74", + "nodeType": "YulFunctionCall", + "src": "13187:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nativeSrc": "13167:19:74", + "nodeType": "YulIdentifier", + "src": "13167:19:74" + }, + "nativeSrc": "13167:45:74", + "nodeType": "YulFunctionCall", + "src": "13167:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13155:6:74", + "nodeType": "YulIdentifier", + "src": "13155:6:74" + }, + "nativeSrc": "13155:58:74", + "nodeType": "YulFunctionCall", + "src": "13155:58:74" + }, + "nativeSrc": "13155:58:74", + "nodeType": "YulExpressionStatement", + "src": "13155:58:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "13062:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13133:5:74", + "nodeType": "YulTypedName", + "src": "13133:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "13140:3:74", + "nodeType": "YulTypedName", + "src": "13140:3:74", + "type": "" + } + ], + "src": "13062:157:74" + }, + { + "body": { + "nativeSrc": "13369:253:74", + "nodeType": "YulBlock", + "src": "13369:253:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "13442:6:74", + "nodeType": "YulIdentifier", + "src": "13442:6:74" + }, + { + "name": "pos", + "nativeSrc": "13451:3:74", + "nodeType": "YulIdentifier", + "src": "13451:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "13380:61:74", + "nodeType": "YulIdentifier", + "src": "13380:61:74" + }, + "nativeSrc": "13380:75:74", + "nodeType": "YulFunctionCall", + "src": "13380:75:74" + }, + "nativeSrc": "13380:75:74", + "nodeType": "YulExpressionStatement", + "src": "13380:75:74" + }, + { + "nativeSrc": "13464:19:74", + "nodeType": "YulAssignment", + "src": "13464:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13475:3:74", + "nodeType": "YulIdentifier", + "src": "13475:3:74" + }, + { + "kind": "number", + "nativeSrc": "13480:2:74", + "nodeType": "YulLiteral", + "src": "13480:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13471:3:74", + "nodeType": "YulIdentifier", + "src": "13471:3:74" + }, + "nativeSrc": "13471:12:74", + "nodeType": "YulFunctionCall", + "src": "13471:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13464:3:74", + "nodeType": "YulIdentifier", + "src": "13464:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "13555:6:74", + "nodeType": "YulIdentifier", + "src": "13555:6:74" + }, + { + "name": "pos", + "nativeSrc": "13564:3:74", + "nodeType": "YulIdentifier", + "src": "13564:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "13493:61:74", + "nodeType": "YulIdentifier", + "src": "13493:61:74" + }, + "nativeSrc": "13493:75:74", + "nodeType": "YulFunctionCall", + "src": "13493:75:74" + }, + "nativeSrc": "13493:75:74", + "nodeType": "YulExpressionStatement", + "src": "13493:75:74" + }, + { + "nativeSrc": "13577:19:74", + "nodeType": "YulAssignment", + "src": "13577:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13588:3:74", + "nodeType": "YulIdentifier", + "src": "13588:3:74" + }, + { + "kind": "number", + "nativeSrc": "13593:2:74", + "nodeType": "YulLiteral", + "src": "13593:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13584:3:74", + "nodeType": "YulIdentifier", + "src": "13584:3:74" + }, + "nativeSrc": "13584:12:74", + "nodeType": "YulFunctionCall", + "src": "13584:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13577:3:74", + "nodeType": "YulIdentifier", + "src": "13577:3:74" + } + ] + }, + { + "nativeSrc": "13606:10:74", + "nodeType": "YulAssignment", + "src": "13606:10:74", + "value": { + "name": "pos", + "nativeSrc": "13613:3:74", + "nodeType": "YulIdentifier", + "src": "13613:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "13606:3:74", + "nodeType": "YulIdentifier", + "src": "13606:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "13225:397:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "13340:3:74", + "nodeType": "YulTypedName", + "src": "13340:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "13346:6:74", + "nodeType": "YulTypedName", + "src": "13346:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "13354:6:74", + "nodeType": "YulTypedName", + "src": "13354:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "13365:3:74", + "nodeType": "YulTypedName", + "src": "13365:3:74", + "type": "" + } + ], + "src": "13225:397:74" + }, + { + "body": { + "nativeSrc": "13683:32:74", + "nodeType": "YulBlock", + "src": "13683:32:74", + "statements": [ + { + "nativeSrc": "13693:16:74", + "nodeType": "YulAssignment", + "src": "13693:16:74", + "value": { + "name": "value", + "nativeSrc": "13704:5:74", + "nodeType": "YulIdentifier", + "src": "13704:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "13693:7:74", + "nodeType": "YulIdentifier", + "src": "13693:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_128_by_1", + "nativeSrc": "13628:87:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13665:5:74", + "nodeType": "YulTypedName", + "src": "13665:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "13675:7:74", + "nodeType": "YulTypedName", + "src": "13675:7:74", + "type": "" + } + ], + "src": "13628:87:74" + }, + { + "body": { + "nativeSrc": "13753:28:74", + "nodeType": "YulBlock", + "src": "13753:28:74", + "statements": [ + { + "nativeSrc": "13763:12:74", + "nodeType": "YulAssignment", + "src": "13763:12:74", + "value": { + "name": "value", + "nativeSrc": "13770:5:74", + "nodeType": "YulIdentifier", + "src": "13770:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "13763:3:74", + "nodeType": "YulIdentifier", + "src": "13763:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "13721:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13739:5:74", + "nodeType": "YulTypedName", + "src": "13739:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "13749:3:74", + "nodeType": "YulTypedName", + "src": "13749:3:74", + "type": "" + } + ], + "src": "13721:60:74" + }, + { + "body": { + "nativeSrc": "13857:92:74", + "nodeType": "YulBlock", + "src": "13857:92:74", + "statements": [ + { + "nativeSrc": "13867:76:74", + "nodeType": "YulAssignment", + "src": "13867:76:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "13935:5:74", + "nodeType": "YulIdentifier", + "src": "13935:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_128_by_1", + "nativeSrc": "13907:27:74", + "nodeType": "YulIdentifier", + "src": "13907:27:74" + }, + "nativeSrc": "13907:34:74", + "nodeType": "YulFunctionCall", + "src": "13907:34:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "13898:8:74", + "nodeType": "YulIdentifier", + "src": "13898:8:74" + }, + "nativeSrc": "13898:44:74", + "nodeType": "YulFunctionCall", + "src": "13898:44:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "13880:17:74", + "nodeType": "YulIdentifier", + "src": "13880:17:74" + }, + "nativeSrc": "13880:63:74", + "nodeType": "YulFunctionCall", + "src": "13880:63:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "13867:9:74", + "nodeType": "YulIdentifier", + "src": "13867:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_128_by_1_to_t_uint256", + "nativeSrc": "13787:162:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13837:5:74", + "nodeType": "YulTypedName", + "src": "13837:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "13847:9:74", + "nodeType": "YulTypedName", + "src": "13847:9:74", + "type": "" + } + ], + "src": "13787:162:74" + }, + { + "body": { + "nativeSrc": "14030:76:74", + "nodeType": "YulBlock", + "src": "14030:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14047:3:74", + "nodeType": "YulIdentifier", + "src": "14047:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "14093:5:74", + "nodeType": "YulIdentifier", + "src": "14093:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_128_by_1_to_t_uint256", + "nativeSrc": "14052:40:74", + "nodeType": "YulIdentifier", + "src": "14052:40:74" + }, + "nativeSrc": "14052:47:74", + "nodeType": "YulFunctionCall", + "src": "14052:47:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14040:6:74", + "nodeType": "YulIdentifier", + "src": "14040:6:74" + }, + "nativeSrc": "14040:60:74", + "nodeType": "YulFunctionCall", + "src": "14040:60:74" + }, + "nativeSrc": "14040:60:74", + "nodeType": "YulExpressionStatement", + "src": "14040:60:74" + } + ] + }, + "name": "abi_encode_t_rational_128_by_1_to_t_uint256_fromStack", + "nativeSrc": "13955:151:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "14018:5:74", + "nodeType": "YulTypedName", + "src": "14018:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "14025:3:74", + "nodeType": "YulTypedName", + "src": "14025:3:74", + "type": "" + } + ], + "src": "13955:151:74" + }, + { + "body": { + "nativeSrc": "14248:216:74", + "nodeType": "YulBlock", + "src": "14248:216:74", + "statements": [ + { + "nativeSrc": "14258:26:74", + "nodeType": "YulAssignment", + "src": "14258:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14270:9:74", + "nodeType": "YulIdentifier", + "src": "14270:9:74" + }, + { + "kind": "number", + "nativeSrc": "14281:2:74", + "nodeType": "YulLiteral", + "src": "14281:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14266:3:74", + "nodeType": "YulIdentifier", + "src": "14266:3:74" + }, + "nativeSrc": "14266:18:74", + "nodeType": "YulFunctionCall", + "src": "14266:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14258:4:74", + "nodeType": "YulIdentifier", + "src": "14258:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "14348:6:74", + "nodeType": "YulIdentifier", + "src": "14348:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14361:9:74", + "nodeType": "YulIdentifier", + "src": "14361:9:74" + }, + { + "kind": "number", + "nativeSrc": "14372:1:74", + "nodeType": "YulLiteral", + "src": "14372:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14357:3:74", + "nodeType": "YulIdentifier", + "src": "14357:3:74" + }, + "nativeSrc": "14357:17:74", + "nodeType": "YulFunctionCall", + "src": "14357:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_128_by_1_to_t_uint256_fromStack", + "nativeSrc": "14294:53:74", + "nodeType": "YulIdentifier", + "src": "14294:53:74" + }, + "nativeSrc": "14294:81:74", + "nodeType": "YulFunctionCall", + "src": "14294:81:74" + }, + "nativeSrc": "14294:81:74", + "nodeType": "YulExpressionStatement", + "src": "14294:81:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "14429:6:74", + "nodeType": "YulIdentifier", + "src": "14429:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14442:9:74", + "nodeType": "YulIdentifier", + "src": "14442:9:74" + }, + { + "kind": "number", + "nativeSrc": "14453:2:74", + "nodeType": "YulLiteral", + "src": "14453:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14438:3:74", + "nodeType": "YulIdentifier", + "src": "14438:3:74" + }, + "nativeSrc": "14438:18:74", + "nodeType": "YulFunctionCall", + "src": "14438:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "14385:43:74", + "nodeType": "YulIdentifier", + "src": "14385:43:74" + }, + "nativeSrc": "14385:72:74", + "nodeType": "YulFunctionCall", + "src": "14385:72:74" + }, + "nativeSrc": "14385:72:74", + "nodeType": "YulExpressionStatement", + "src": "14385:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_rational_128_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "14112:352:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14212:9:74", + "nodeType": "YulTypedName", + "src": "14212:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "14224:6:74", + "nodeType": "YulTypedName", + "src": "14224:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "14232:6:74", + "nodeType": "YulTypedName", + "src": "14232:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14243:4:74", + "nodeType": "YulTypedName", + "src": "14243:4:74", + "type": "" + } + ], + "src": "14112:352:74" + }, + { + "body": { + "nativeSrc": "14559:28:74", + "nodeType": "YulBlock", + "src": "14559:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "14576:1:74", + "nodeType": "YulLiteral", + "src": "14576:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "14579:1:74", + "nodeType": "YulLiteral", + "src": "14579:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "14569:6:74", + "nodeType": "YulIdentifier", + "src": "14569:6:74" + }, + "nativeSrc": "14569:12:74", + "nodeType": "YulFunctionCall", + "src": "14569:12:74" + }, + "nativeSrc": "14569:12:74", + "nodeType": "YulExpressionStatement", + "src": "14569:12:74" + } + ] + }, + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "14470:117:74", + "nodeType": "YulFunctionDefinition", + "src": "14470:117:74" + }, + { + "body": { + "nativeSrc": "14621:152:74", + "nodeType": "YulBlock", + "src": "14621:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "14638:1:74", + "nodeType": "YulLiteral", + "src": "14638:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "14641:77:74", + "nodeType": "YulLiteral", + "src": "14641:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14631:6:74", + "nodeType": "YulIdentifier", + "src": "14631:6:74" + }, + "nativeSrc": "14631:88:74", + "nodeType": "YulFunctionCall", + "src": "14631:88:74" + }, + "nativeSrc": "14631:88:74", + "nodeType": "YulExpressionStatement", + "src": "14631:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "14735:1:74", + "nodeType": "YulLiteral", + "src": "14735:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "14738:4:74", + "nodeType": "YulLiteral", + "src": "14738:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14728:6:74", + "nodeType": "YulIdentifier", + "src": "14728:6:74" + }, + "nativeSrc": "14728:15:74", + "nodeType": "YulFunctionCall", + "src": "14728:15:74" + }, + "nativeSrc": "14728:15:74", + "nodeType": "YulExpressionStatement", + "src": "14728:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "14759:1:74", + "nodeType": "YulLiteral", + "src": "14759:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "14762:4:74", + "nodeType": "YulLiteral", + "src": "14762:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "14752:6:74", + "nodeType": "YulIdentifier", + "src": "14752:6:74" + }, + "nativeSrc": "14752:15:74", + "nodeType": "YulFunctionCall", + "src": "14752:15:74" + }, + "nativeSrc": "14752:15:74", + "nodeType": "YulExpressionStatement", + "src": "14752:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "14593:180:74", + "nodeType": "YulFunctionDefinition", + "src": "14593:180:74" + }, + { + "body": { + "nativeSrc": "14822:238:74", + "nodeType": "YulBlock", + "src": "14822:238:74", + "statements": [ + { + "nativeSrc": "14832:58:74", + "nodeType": "YulVariableDeclaration", + "src": "14832:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14854:6:74", + "nodeType": "YulIdentifier", + "src": "14854:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "14884:4:74", + "nodeType": "YulIdentifier", + "src": "14884:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "14862:21:74", + "nodeType": "YulIdentifier", + "src": "14862:21:74" + }, + "nativeSrc": "14862:27:74", + "nodeType": "YulFunctionCall", + "src": "14862:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14850:3:74", + "nodeType": "YulIdentifier", + "src": "14850:3:74" + }, + "nativeSrc": "14850:40:74", + "nodeType": "YulFunctionCall", + "src": "14850:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "14836:10:74", + "nodeType": "YulTypedName", + "src": "14836:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "15001:22:74", + "nodeType": "YulBlock", + "src": "15001:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "15003:16:74", + "nodeType": "YulIdentifier", + "src": "15003:16:74" + }, + "nativeSrc": "15003:18:74", + "nodeType": "YulFunctionCall", + "src": "15003:18:74" + }, + "nativeSrc": "15003:18:74", + "nodeType": "YulExpressionStatement", + "src": "15003:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "14944:10:74", + "nodeType": "YulIdentifier", + "src": "14944:10:74" + }, + { + "kind": "number", + "nativeSrc": "14956:18:74", + "nodeType": "YulLiteral", + "src": "14956:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14941:2:74", + "nodeType": "YulIdentifier", + "src": "14941:2:74" + }, + "nativeSrc": "14941:34:74", + "nodeType": "YulFunctionCall", + "src": "14941:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "14980:10:74", + "nodeType": "YulIdentifier", + "src": "14980:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "14992:6:74", + "nodeType": "YulIdentifier", + "src": "14992:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "14977:2:74", + "nodeType": "YulIdentifier", + "src": "14977:2:74" + }, + "nativeSrc": "14977:22:74", + "nodeType": "YulFunctionCall", + "src": "14977:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "14938:2:74", + "nodeType": "YulIdentifier", + "src": "14938:2:74" + }, + "nativeSrc": "14938:62:74", + "nodeType": "YulFunctionCall", + "src": "14938:62:74" + }, + "nativeSrc": "14935:88:74", + "nodeType": "YulIf", + "src": "14935:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "15039:2:74", + "nodeType": "YulLiteral", + "src": "15039:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "15043:10:74", + "nodeType": "YulIdentifier", + "src": "15043:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15032:6:74", + "nodeType": "YulIdentifier", + "src": "15032:6:74" + }, + "nativeSrc": "15032:22:74", + "nodeType": "YulFunctionCall", + "src": "15032:22:74" + }, + "nativeSrc": "15032:22:74", + "nodeType": "YulExpressionStatement", + "src": "15032:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "14779:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "14808:6:74", + "nodeType": "YulTypedName", + "src": "14808:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "14816:4:74", + "nodeType": "YulTypedName", + "src": "14816:4:74", + "type": "" + } + ], + "src": "14779:281:74" + }, + { + "body": { + "nativeSrc": "15107:88:74", + "nodeType": "YulBlock", + "src": "15107:88:74", + "statements": [ + { + "nativeSrc": "15117:30:74", + "nodeType": "YulAssignment", + "src": "15117:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "15127:18:74", + "nodeType": "YulIdentifier", + "src": "15127:18:74" + }, + "nativeSrc": "15127:20:74", + "nodeType": "YulFunctionCall", + "src": "15127:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "15117:6:74", + "nodeType": "YulIdentifier", + "src": "15117:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15176:6:74", + "nodeType": "YulIdentifier", + "src": "15176:6:74" + }, + { + "name": "size", + "nativeSrc": "15184:4:74", + "nodeType": "YulIdentifier", + "src": "15184:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "15156:19:74", + "nodeType": "YulIdentifier", + "src": "15156:19:74" + }, + "nativeSrc": "15156:33:74", + "nodeType": "YulFunctionCall", + "src": "15156:33:74" + }, + "nativeSrc": "15156:33:74", + "nodeType": "YulExpressionStatement", + "src": "15156:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "15066:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "15091:4:74", + "nodeType": "YulTypedName", + "src": "15091:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "15100:6:74", + "nodeType": "YulTypedName", + "src": "15100:6:74", + "type": "" + } + ], + "src": "15066:129:74" + }, + { + "body": { + "nativeSrc": "15290:28:74", + "nodeType": "YulBlock", + "src": "15290:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "15307:1:74", + "nodeType": "YulLiteral", + "src": "15307:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "15310:1:74", + "nodeType": "YulLiteral", + "src": "15310:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "15300:6:74", + "nodeType": "YulIdentifier", + "src": "15300:6:74" + }, + "nativeSrc": "15300:12:74", + "nodeType": "YulFunctionCall", + "src": "15300:12:74" + }, + "nativeSrc": "15300:12:74", + "nodeType": "YulExpressionStatement", + "src": "15300:12:74" + } + ] + }, + "name": "revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421", + "nativeSrc": "15201:117:74", + "nodeType": "YulFunctionDefinition", + "src": "15201:117:74" + }, + { + "body": { + "nativeSrc": "15438:818:74", + "nodeType": "YulBlock", + "src": "15438:818:74", + "statements": [ + { + "body": { + "nativeSrc": "15482:83:74", + "nodeType": "YulBlock", + "src": "15482:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "15484:77:74", + "nodeType": "YulIdentifier", + "src": "15484:77:74" + }, + "nativeSrc": "15484:79:74", + "nodeType": "YulFunctionCall", + "src": "15484:79:74" + }, + "nativeSrc": "15484:79:74", + "nodeType": "YulExpressionStatement", + "src": "15484:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "15459:3:74", + "nodeType": "YulIdentifier", + "src": "15459:3:74" + }, + { + "name": "headStart", + "nativeSrc": "15464:9:74", + "nodeType": "YulIdentifier", + "src": "15464:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15455:3:74", + "nodeType": "YulIdentifier", + "src": "15455:3:74" + }, + "nativeSrc": "15455:19:74", + "nodeType": "YulFunctionCall", + "src": "15455:19:74" + }, + { + "kind": "number", + "nativeSrc": "15476:4:74", + "nodeType": "YulLiteral", + "src": "15476:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "15451:3:74", + "nodeType": "YulIdentifier", + "src": "15451:3:74" + }, + "nativeSrc": "15451:30:74", + "nodeType": "YulFunctionCall", + "src": "15451:30:74" + }, + "nativeSrc": "15448:117:74", + "nodeType": "YulIf", + "src": "15448:117:74" + }, + { + "nativeSrc": "15574:30:74", + "nodeType": "YulAssignment", + "src": "15574:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "15599:4:74", + "nodeType": "YulLiteral", + "src": "15599:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "15583:15:74", + "nodeType": "YulIdentifier", + "src": "15583:15:74" + }, + "nativeSrc": "15583:21:74", + "nodeType": "YulFunctionCall", + "src": "15583:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "15574:5:74", + "nodeType": "YulIdentifier", + "src": "15574:5:74" + } + ] + }, + { + "nativeSrc": "15614:150:74", + "nodeType": "YulBlock", + "src": "15614:150:74", + "statements": [ + { + "nativeSrc": "15649:15:74", + "nodeType": "YulVariableDeclaration", + "src": "15649:15:74", + "value": { + "kind": "number", + "nativeSrc": "15663:1:74", + "nodeType": "YulLiteral", + "src": "15663:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15653:6:74", + "nodeType": "YulTypedName", + "src": "15653:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "15689:5:74", + "nodeType": "YulIdentifier", + "src": "15689:5:74" + }, + { + "kind": "number", + "nativeSrc": "15696:4:74", + "nodeType": "YulLiteral", + "src": "15696:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15685:3:74", + "nodeType": "YulIdentifier", + "src": "15685:3:74" + }, + "nativeSrc": "15685:16:74", + "nodeType": "YulFunctionCall", + "src": "15685:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15728:9:74", + "nodeType": "YulIdentifier", + "src": "15728:9:74" + }, + { + "name": "offset", + "nativeSrc": "15739:6:74", + "nodeType": "YulIdentifier", + "src": "15739:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15724:3:74", + "nodeType": "YulIdentifier", + "src": "15724:3:74" + }, + "nativeSrc": "15724:22:74", + "nodeType": "YulFunctionCall", + "src": "15724:22:74" + }, + { + "name": "end", + "nativeSrc": "15748:3:74", + "nodeType": "YulIdentifier", + "src": "15748:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "15703:20:74", + "nodeType": "YulIdentifier", + "src": "15703:20:74" + }, + "nativeSrc": "15703:49:74", + "nodeType": "YulFunctionCall", + "src": "15703:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15678:6:74", + "nodeType": "YulIdentifier", + "src": "15678:6:74" + }, + "nativeSrc": "15678:75:74", + "nodeType": "YulFunctionCall", + "src": "15678:75:74" + }, + "nativeSrc": "15678:75:74", + "nodeType": "YulExpressionStatement", + "src": "15678:75:74" + } + ] + }, + { + "nativeSrc": "15774:151:74", + "nodeType": "YulBlock", + "src": "15774:151:74", + "statements": [ + { + "nativeSrc": "15809:16:74", + "nodeType": "YulVariableDeclaration", + "src": "15809:16:74", + "value": { + "kind": "number", + "nativeSrc": "15823:2:74", + "nodeType": "YulLiteral", + "src": "15823:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15813:6:74", + "nodeType": "YulTypedName", + "src": "15813:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "15850:5:74", + "nodeType": "YulIdentifier", + "src": "15850:5:74" + }, + { + "kind": "number", + "nativeSrc": "15857:4:74", + "nodeType": "YulLiteral", + "src": "15857:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15846:3:74", + "nodeType": "YulIdentifier", + "src": "15846:3:74" + }, + "nativeSrc": "15846:16:74", + "nodeType": "YulFunctionCall", + "src": "15846:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15889:9:74", + "nodeType": "YulIdentifier", + "src": "15889:9:74" + }, + { + "name": "offset", + "nativeSrc": "15900:6:74", + "nodeType": "YulIdentifier", + "src": "15900:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15885:3:74", + "nodeType": "YulIdentifier", + "src": "15885:3:74" + }, + "nativeSrc": "15885:22:74", + "nodeType": "YulFunctionCall", + "src": "15885:22:74" + }, + { + "name": "end", + "nativeSrc": "15909:3:74", + "nodeType": "YulIdentifier", + "src": "15909:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "15864:20:74", + "nodeType": "YulIdentifier", + "src": "15864:20:74" + }, + "nativeSrc": "15864:49:74", + "nodeType": "YulFunctionCall", + "src": "15864:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15839:6:74", + "nodeType": "YulIdentifier", + "src": "15839:6:74" + }, + "nativeSrc": "15839:75:74", + "nodeType": "YulFunctionCall", + "src": "15839:75:74" + }, + "nativeSrc": "15839:75:74", + "nodeType": "YulExpressionStatement", + "src": "15839:75:74" + } + ] + }, + { + "nativeSrc": "15935:151:74", + "nodeType": "YulBlock", + "src": "15935:151:74", + "statements": [ + { + "nativeSrc": "15970:16:74", + "nodeType": "YulVariableDeclaration", + "src": "15970:16:74", + "value": { + "kind": "number", + "nativeSrc": "15984:2:74", + "nodeType": "YulLiteral", + "src": "15984:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15974:6:74", + "nodeType": "YulTypedName", + "src": "15974:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16011:5:74", + "nodeType": "YulIdentifier", + "src": "16011:5:74" + }, + { + "kind": "number", + "nativeSrc": "16018:4:74", + "nodeType": "YulLiteral", + "src": "16018:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16007:3:74", + "nodeType": "YulIdentifier", + "src": "16007:3:74" + }, + "nativeSrc": "16007:16:74", + "nodeType": "YulFunctionCall", + "src": "16007:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16050:9:74", + "nodeType": "YulIdentifier", + "src": "16050:9:74" + }, + { + "name": "offset", + "nativeSrc": "16061:6:74", + "nodeType": "YulIdentifier", + "src": "16061:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16046:3:74", + "nodeType": "YulIdentifier", + "src": "16046:3:74" + }, + "nativeSrc": "16046:22:74", + "nodeType": "YulFunctionCall", + "src": "16046:22:74" + }, + { + "name": "end", + "nativeSrc": "16070:3:74", + "nodeType": "YulIdentifier", + "src": "16070:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "16025:20:74", + "nodeType": "YulIdentifier", + "src": "16025:20:74" + }, + "nativeSrc": "16025:49:74", + "nodeType": "YulFunctionCall", + "src": "16025:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16000:6:74", + "nodeType": "YulIdentifier", + "src": "16000:6:74" + }, + "nativeSrc": "16000:75:74", + "nodeType": "YulFunctionCall", + "src": "16000:75:74" + }, + "nativeSrc": "16000:75:74", + "nodeType": "YulExpressionStatement", + "src": "16000:75:74" + } + ] + }, + { + "nativeSrc": "16096:153:74", + "nodeType": "YulBlock", + "src": "16096:153:74", + "statements": [ + { + "nativeSrc": "16133:16:74", + "nodeType": "YulVariableDeclaration", + "src": "16133:16:74", + "value": { + "kind": "number", + "nativeSrc": "16147:2:74", + "nodeType": "YulLiteral", + "src": "16147:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16137:6:74", + "nodeType": "YulTypedName", + "src": "16137:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16174:5:74", + "nodeType": "YulIdentifier", + "src": "16174:5:74" + }, + { + "kind": "number", + "nativeSrc": "16181:4:74", + "nodeType": "YulLiteral", + "src": "16181:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16170:3:74", + "nodeType": "YulIdentifier", + "src": "16170:3:74" + }, + "nativeSrc": "16170:16:74", + "nodeType": "YulFunctionCall", + "src": "16170:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16213:9:74", + "nodeType": "YulIdentifier", + "src": "16213:9:74" + }, + { + "name": "offset", + "nativeSrc": "16224:6:74", + "nodeType": "YulIdentifier", + "src": "16224:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16209:3:74", + "nodeType": "YulIdentifier", + "src": "16209:3:74" + }, + "nativeSrc": "16209:22:74", + "nodeType": "YulFunctionCall", + "src": "16209:22:74" + }, + { + "name": "end", + "nativeSrc": "16233:3:74", + "nodeType": "YulIdentifier", + "src": "16233:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "16188:20:74", + "nodeType": "YulIdentifier", + "src": "16188:20:74" + }, + "nativeSrc": "16188:49:74", + "nodeType": "YulFunctionCall", + "src": "16188:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16163:6:74", + "nodeType": "YulIdentifier", + "src": "16163:6:74" + }, + "nativeSrc": "16163:75:74", + "nodeType": "YulFunctionCall", + "src": "16163:75:74" + }, + "nativeSrc": "16163:75:74", + "nodeType": "YulExpressionStatement", + "src": "16163:75:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_Leaf_$1784_memory_ptr", + "nativeSrc": "15361:895:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15413:9:74", + "nodeType": "YulTypedName", + "src": "15413:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "15424:3:74", + "nodeType": "YulTypedName", + "src": "15424:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "15432:5:74", + "nodeType": "YulTypedName", + "src": "15432:5:74", + "type": "" + } + ], + "src": "15361:895:74" + }, + { + "body": { + "nativeSrc": "16350:286:74", + "nodeType": "YulBlock", + "src": "16350:286:74", + "statements": [ + { + "body": { + "nativeSrc": "16397:83:74", + "nodeType": "YulBlock", + "src": "16397:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "16399:77:74", + "nodeType": "YulIdentifier", + "src": "16399:77:74" + }, + "nativeSrc": "16399:79:74", + "nodeType": "YulFunctionCall", + "src": "16399:79:74" + }, + "nativeSrc": "16399:79:74", + "nodeType": "YulExpressionStatement", + "src": "16399:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "16371:7:74", + "nodeType": "YulIdentifier", + "src": "16371:7:74" + }, + { + "name": "headStart", + "nativeSrc": "16380:9:74", + "nodeType": "YulIdentifier", + "src": "16380:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16367:3:74", + "nodeType": "YulIdentifier", + "src": "16367:3:74" + }, + "nativeSrc": "16367:23:74", + "nodeType": "YulFunctionCall", + "src": "16367:23:74" + }, + { + "kind": "number", + "nativeSrc": "16392:3:74", + "nodeType": "YulLiteral", + "src": "16392:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "16363:3:74", + "nodeType": "YulIdentifier", + "src": "16363:3:74" + }, + "nativeSrc": "16363:33:74", + "nodeType": "YulFunctionCall", + "src": "16363:33:74" + }, + "nativeSrc": "16360:120:74", + "nodeType": "YulIf", + "src": "16360:120:74" + }, + { + "nativeSrc": "16490:139:74", + "nodeType": "YulBlock", + "src": "16490:139:74", + "statements": [ + { + "nativeSrc": "16505:15:74", + "nodeType": "YulVariableDeclaration", + "src": "16505:15:74", + "value": { + "kind": "number", + "nativeSrc": "16519:1:74", + "nodeType": "YulLiteral", + "src": "16519:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16509:6:74", + "nodeType": "YulTypedName", + "src": "16509:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16534:85:74", + "nodeType": "YulAssignment", + "src": "16534:85:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16591:9:74", + "nodeType": "YulIdentifier", + "src": "16591:9:74" + }, + { + "name": "offset", + "nativeSrc": "16602:6:74", + "nodeType": "YulIdentifier", + "src": "16602:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16587:3:74", + "nodeType": "YulIdentifier", + "src": "16587:3:74" + }, + "nativeSrc": "16587:22:74", + "nodeType": "YulFunctionCall", + "src": "16587:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16611:7:74", + "nodeType": "YulIdentifier", + "src": "16611:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_Leaf_$1784_memory_ptr", + "nativeSrc": "16544:42:74", + "nodeType": "YulIdentifier", + "src": "16544:42:74" + }, + "nativeSrc": "16544:75:74", + "nodeType": "YulFunctionCall", + "src": "16544:75:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "16534:6:74", + "nodeType": "YulIdentifier", + "src": "16534:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr", + "nativeSrc": "16262:374:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16320:9:74", + "nodeType": "YulTypedName", + "src": "16320:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "16331:7:74", + "nodeType": "YulTypedName", + "src": "16331:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "16343:6:74", + "nodeType": "YulTypedName", + "src": "16343:6:74", + "type": "" + } + ], + "src": "16262:374:74" + }, + { + "body": { + "nativeSrc": "16697:32:74", + "nodeType": "YulBlock", + "src": "16697:32:74", + "statements": [ + { + "nativeSrc": "16707:16:74", + "nodeType": "YulAssignment", + "src": "16707:16:74", + "value": { + "name": "value", + "nativeSrc": "16718:5:74", + "nodeType": "YulIdentifier", + "src": "16718:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "16707:7:74", + "nodeType": "YulIdentifier", + "src": "16707:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_192_by_1", + "nativeSrc": "16642:87:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16679:5:74", + "nodeType": "YulTypedName", + "src": "16679:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "16689:7:74", + "nodeType": "YulTypedName", + "src": "16689:7:74", + "type": "" + } + ], + "src": "16642:87:74" + }, + { + "body": { + "nativeSrc": "16805:92:74", + "nodeType": "YulBlock", + "src": "16805:92:74", + "statements": [ + { + "nativeSrc": "16815:76:74", + "nodeType": "YulAssignment", + "src": "16815:76:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16883:5:74", + "nodeType": "YulIdentifier", + "src": "16883:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_192_by_1", + "nativeSrc": "16855:27:74", + "nodeType": "YulIdentifier", + "src": "16855:27:74" + }, + "nativeSrc": "16855:34:74", + "nodeType": "YulFunctionCall", + "src": "16855:34:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "16846:8:74", + "nodeType": "YulIdentifier", + "src": "16846:8:74" + }, + "nativeSrc": "16846:44:74", + "nodeType": "YulFunctionCall", + "src": "16846:44:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "16828:17:74", + "nodeType": "YulIdentifier", + "src": "16828:17:74" + }, + "nativeSrc": "16828:63:74", + "nodeType": "YulFunctionCall", + "src": "16828:63:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "16815:9:74", + "nodeType": "YulIdentifier", + "src": "16815:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_192_by_1_to_t_uint256", + "nativeSrc": "16735:162:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16785:5:74", + "nodeType": "YulTypedName", + "src": "16785:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "16795:9:74", + "nodeType": "YulTypedName", + "src": "16795:9:74", + "type": "" + } + ], + "src": "16735:162:74" + }, + { + "body": { + "nativeSrc": "16978:76:74", + "nodeType": "YulBlock", + "src": "16978:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16995:3:74", + "nodeType": "YulIdentifier", + "src": "16995:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17041:5:74", + "nodeType": "YulIdentifier", + "src": "17041:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_192_by_1_to_t_uint256", + "nativeSrc": "17000:40:74", + "nodeType": "YulIdentifier", + "src": "17000:40:74" + }, + "nativeSrc": "17000:47:74", + "nodeType": "YulFunctionCall", + "src": "17000:47:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16988:6:74", + "nodeType": "YulIdentifier", + "src": "16988:6:74" + }, + "nativeSrc": "16988:60:74", + "nodeType": "YulFunctionCall", + "src": "16988:60:74" + }, + "nativeSrc": "16988:60:74", + "nodeType": "YulExpressionStatement", + "src": "16988:60:74" + } + ] + }, + "name": "abi_encode_t_rational_192_by_1_to_t_uint256_fromStack", + "nativeSrc": "16903:151:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16966:5:74", + "nodeType": "YulTypedName", + "src": "16966:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "16973:3:74", + "nodeType": "YulTypedName", + "src": "16973:3:74", + "type": "" + } + ], + "src": "16903:151:74" + }, + { + "body": { + "nativeSrc": "17196:216:74", + "nodeType": "YulBlock", + "src": "17196:216:74", + "statements": [ + { + "nativeSrc": "17206:26:74", + "nodeType": "YulAssignment", + "src": "17206:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17218:9:74", + "nodeType": "YulIdentifier", + "src": "17218:9:74" + }, + { + "kind": "number", + "nativeSrc": "17229:2:74", + "nodeType": "YulLiteral", + "src": "17229:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17214:3:74", + "nodeType": "YulIdentifier", + "src": "17214:3:74" + }, + "nativeSrc": "17214:18:74", + "nodeType": "YulFunctionCall", + "src": "17214:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17206:4:74", + "nodeType": "YulIdentifier", + "src": "17206:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17296:6:74", + "nodeType": "YulIdentifier", + "src": "17296:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17309:9:74", + "nodeType": "YulIdentifier", + "src": "17309:9:74" + }, + { + "kind": "number", + "nativeSrc": "17320:1:74", + "nodeType": "YulLiteral", + "src": "17320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17305:3:74", + "nodeType": "YulIdentifier", + "src": "17305:3:74" + }, + "nativeSrc": "17305:17:74", + "nodeType": "YulFunctionCall", + "src": "17305:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_192_by_1_to_t_uint256_fromStack", + "nativeSrc": "17242:53:74", + "nodeType": "YulIdentifier", + "src": "17242:53:74" + }, + "nativeSrc": "17242:81:74", + "nodeType": "YulFunctionCall", + "src": "17242:81:74" + }, + "nativeSrc": "17242:81:74", + "nodeType": "YulExpressionStatement", + "src": "17242:81:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "17377:6:74", + "nodeType": "YulIdentifier", + "src": "17377:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17390:9:74", + "nodeType": "YulIdentifier", + "src": "17390:9:74" + }, + { + "kind": "number", + "nativeSrc": "17401:2:74", + "nodeType": "YulLiteral", + "src": "17401:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17386:3:74", + "nodeType": "YulIdentifier", + "src": "17386:3:74" + }, + "nativeSrc": "17386:18:74", + "nodeType": "YulFunctionCall", + "src": "17386:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "17333:43:74", + "nodeType": "YulIdentifier", + "src": "17333:43:74" + }, + "nativeSrc": "17333:72:74", + "nodeType": "YulFunctionCall", + "src": "17333:72:74" + }, + "nativeSrc": "17333:72:74", + "nodeType": "YulExpressionStatement", + "src": "17333:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_rational_192_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "17060:352:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17160:9:74", + "nodeType": "YulTypedName", + "src": "17160:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "17172:6:74", + "nodeType": "YulTypedName", + "src": "17172:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "17180:6:74", + "nodeType": "YulTypedName", + "src": "17180:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17191:4:74", + "nodeType": "YulTypedName", + "src": "17191:4:74", + "type": "" + } + ], + "src": "17060:352:74" + }, + { + "body": { + "nativeSrc": "17460:78:74", + "nodeType": "YulBlock", + "src": "17460:78:74", + "statements": [ + { + "body": { + "nativeSrc": "17516:16:74", + "nodeType": "YulBlock", + "src": "17516:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "17525:1:74", + "nodeType": "YulLiteral", + "src": "17525:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "17528:1:74", + "nodeType": "YulLiteral", + "src": "17528:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "17518:6:74", + "nodeType": "YulIdentifier", + "src": "17518:6:74" + }, + "nativeSrc": "17518:12:74", + "nodeType": "YulFunctionCall", + "src": "17518:12:74" + }, + "nativeSrc": "17518:12:74", + "nodeType": "YulExpressionStatement", + "src": "17518:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17483:5:74", + "nodeType": "YulIdentifier", + "src": "17483:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17507:5:74", + "nodeType": "YulIdentifier", + "src": "17507:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "17490:16:74", + "nodeType": "YulIdentifier", + "src": "17490:16:74" + }, + "nativeSrc": "17490:23:74", + "nodeType": "YulFunctionCall", + "src": "17490:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "17480:2:74", + "nodeType": "YulIdentifier", + "src": "17480:2:74" + }, + "nativeSrc": "17480:34:74", + "nodeType": "YulFunctionCall", + "src": "17480:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "17473:6:74", + "nodeType": "YulIdentifier", + "src": "17473:6:74" + }, + "nativeSrc": "17473:42:74", + "nodeType": "YulFunctionCall", + "src": "17473:42:74" + }, + "nativeSrc": "17470:62:74", + "nodeType": "YulIf", + "src": "17470:62:74" + } + ] + }, + "name": "validator_revert_t_uint64", + "nativeSrc": "17418:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17453:5:74", + "nodeType": "YulTypedName", + "src": "17453:5:74", + "type": "" + } + ], + "src": "17418:120:74" + }, + { + "body": { + "nativeSrc": "17595:86:74", + "nodeType": "YulBlock", + "src": "17595:86:74", + "statements": [ + { + "nativeSrc": "17605:29:74", + "nodeType": "YulAssignment", + "src": "17605:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17627:6:74", + "nodeType": "YulIdentifier", + "src": "17627:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "17614:12:74", + "nodeType": "YulIdentifier", + "src": "17614:12:74" + }, + "nativeSrc": "17614:20:74", + "nodeType": "YulFunctionCall", + "src": "17614:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "17605:5:74", + "nodeType": "YulIdentifier", + "src": "17605:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17669:5:74", + "nodeType": "YulIdentifier", + "src": "17669:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint64", + "nativeSrc": "17643:25:74", + "nodeType": "YulIdentifier", + "src": "17643:25:74" + }, + "nativeSrc": "17643:32:74", + "nodeType": "YulFunctionCall", + "src": "17643:32:74" + }, + "nativeSrc": "17643:32:74", + "nodeType": "YulExpressionStatement", + "src": "17643:32:74" + } + ] + }, + "name": "abi_decode_t_uint64", + "nativeSrc": "17544:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "17573:6:74", + "nodeType": "YulTypedName", + "src": "17573:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17581:3:74", + "nodeType": "YulTypedName", + "src": "17581:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "17589:5:74", + "nodeType": "YulTypedName", + "src": "17589:5:74", + "type": "" + } + ], + "src": "17544:137:74" + }, + { + "body": { + "nativeSrc": "17807:1171:74", + "nodeType": "YulBlock", + "src": "17807:1171:74", + "statements": [ + { + "body": { + "nativeSrc": "17851:83:74", + "nodeType": "YulBlock", + "src": "17851:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f", + "nativeSrc": "17853:77:74", + "nodeType": "YulIdentifier", + "src": "17853:77:74" + }, + "nativeSrc": "17853:79:74", + "nodeType": "YulFunctionCall", + "src": "17853:79:74" + }, + "nativeSrc": "17853:79:74", + "nodeType": "YulExpressionStatement", + "src": "17853:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "end", + "nativeSrc": "17828:3:74", + "nodeType": "YulIdentifier", + "src": "17828:3:74" + }, + { + "name": "headStart", + "nativeSrc": "17833:9:74", + "nodeType": "YulIdentifier", + "src": "17833:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17824:3:74", + "nodeType": "YulIdentifier", + "src": "17824:3:74" + }, + "nativeSrc": "17824:19:74", + "nodeType": "YulFunctionCall", + "src": "17824:19:74" + }, + { + "kind": "number", + "nativeSrc": "17845:4:74", + "nodeType": "YulLiteral", + "src": "17845:4:74", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "17820:3:74", + "nodeType": "YulIdentifier", + "src": "17820:3:74" + }, + "nativeSrc": "17820:30:74", + "nodeType": "YulFunctionCall", + "src": "17820:30:74" + }, + "nativeSrc": "17817:117:74", + "nodeType": "YulIf", + "src": "17817:117:74" + }, + { + "nativeSrc": "17943:30:74", + "nodeType": "YulAssignment", + "src": "17943:30:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "17968:4:74", + "nodeType": "YulLiteral", + "src": "17968:4:74", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "17952:15:74", + "nodeType": "YulIdentifier", + "src": "17952:15:74" + }, + "nativeSrc": "17952:21:74", + "nodeType": "YulFunctionCall", + "src": "17952:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "17943:5:74", + "nodeType": "YulIdentifier", + "src": "17943:5:74" + } + ] + }, + { + "nativeSrc": "17983:150:74", + "nodeType": "YulBlock", + "src": "17983:150:74", + "statements": [ + { + "nativeSrc": "18019:15:74", + "nodeType": "YulVariableDeclaration", + "src": "18019:15:74", + "value": { + "kind": "number", + "nativeSrc": "18033:1:74", + "nodeType": "YulLiteral", + "src": "18033:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18023:6:74", + "nodeType": "YulTypedName", + "src": "18023:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18059:5:74", + "nodeType": "YulIdentifier", + "src": "18059:5:74" + }, + { + "kind": "number", + "nativeSrc": "18066:4:74", + "nodeType": "YulLiteral", + "src": "18066:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18055:3:74", + "nodeType": "YulIdentifier", + "src": "18055:3:74" + }, + "nativeSrc": "18055:16:74", + "nodeType": "YulFunctionCall", + "src": "18055:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18097:9:74", + "nodeType": "YulIdentifier", + "src": "18097:9:74" + }, + { + "name": "offset", + "nativeSrc": "18108:6:74", + "nodeType": "YulIdentifier", + "src": "18108:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18093:3:74", + "nodeType": "YulIdentifier", + "src": "18093:3:74" + }, + "nativeSrc": "18093:22:74", + "nodeType": "YulFunctionCall", + "src": "18093:22:74" + }, + { + "name": "end", + "nativeSrc": "18117:3:74", + "nodeType": "YulIdentifier", + "src": "18117:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "18073:19:74", + "nodeType": "YulIdentifier", + "src": "18073:19:74" + }, + "nativeSrc": "18073:48:74", + "nodeType": "YulFunctionCall", + "src": "18073:48:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18048:6:74", + "nodeType": "YulIdentifier", + "src": "18048:6:74" + }, + "nativeSrc": "18048:74:74", + "nodeType": "YulFunctionCall", + "src": "18048:74:74" + }, + "nativeSrc": "18048:74:74", + "nodeType": "YulExpressionStatement", + "src": "18048:74:74" + } + ] + }, + { + "nativeSrc": "18143:154:74", + "nodeType": "YulBlock", + "src": "18143:154:74", + "statements": [ + { + "nativeSrc": "18181:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18181:16:74", + "value": { + "kind": "number", + "nativeSrc": "18195:2:74", + "nodeType": "YulLiteral", + "src": "18195:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18185:6:74", + "nodeType": "YulTypedName", + "src": "18185:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18222:5:74", + "nodeType": "YulIdentifier", + "src": "18222:5:74" + }, + { + "kind": "number", + "nativeSrc": "18229:4:74", + "nodeType": "YulLiteral", + "src": "18229:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18218:3:74", + "nodeType": "YulIdentifier", + "src": "18218:3:74" + }, + "nativeSrc": "18218:16:74", + "nodeType": "YulFunctionCall", + "src": "18218:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18261:9:74", + "nodeType": "YulIdentifier", + "src": "18261:9:74" + }, + { + "name": "offset", + "nativeSrc": "18272:6:74", + "nodeType": "YulIdentifier", + "src": "18272:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18257:3:74", + "nodeType": "YulIdentifier", + "src": "18257:3:74" + }, + "nativeSrc": "18257:22:74", + "nodeType": "YulFunctionCall", + "src": "18257:22:74" + }, + { + "name": "end", + "nativeSrc": "18281:3:74", + "nodeType": "YulIdentifier", + "src": "18281:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "18236:20:74", + "nodeType": "YulIdentifier", + "src": "18236:20:74" + }, + "nativeSrc": "18236:49:74", + "nodeType": "YulFunctionCall", + "src": "18236:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18211:6:74", + "nodeType": "YulIdentifier", + "src": "18211:6:74" + }, + "nativeSrc": "18211:75:74", + "nodeType": "YulFunctionCall", + "src": "18211:75:74" + }, + "nativeSrc": "18211:75:74", + "nodeType": "YulExpressionStatement", + "src": "18211:75:74" + } + ] + }, + { + "nativeSrc": "18307:158:74", + "nodeType": "YulBlock", + "src": "18307:158:74", + "statements": [ + { + "nativeSrc": "18349:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18349:16:74", + "value": { + "kind": "number", + "nativeSrc": "18363:2:74", + "nodeType": "YulLiteral", + "src": "18363:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18353:6:74", + "nodeType": "YulTypedName", + "src": "18353:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18390:5:74", + "nodeType": "YulIdentifier", + "src": "18390:5:74" + }, + { + "kind": "number", + "nativeSrc": "18397:4:74", + "nodeType": "YulLiteral", + "src": "18397:4:74", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18386:3:74", + "nodeType": "YulIdentifier", + "src": "18386:3:74" + }, + "nativeSrc": "18386:16:74", + "nodeType": "YulFunctionCall", + "src": "18386:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18429:9:74", + "nodeType": "YulIdentifier", + "src": "18429:9:74" + }, + { + "name": "offset", + "nativeSrc": "18440:6:74", + "nodeType": "YulIdentifier", + "src": "18440:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18425:3:74", + "nodeType": "YulIdentifier", + "src": "18425:3:74" + }, + "nativeSrc": "18425:22:74", + "nodeType": "YulFunctionCall", + "src": "18425:22:74" + }, + { + "name": "end", + "nativeSrc": "18449:3:74", + "nodeType": "YulIdentifier", + "src": "18449:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "18404:20:74", + "nodeType": "YulIdentifier", + "src": "18404:20:74" + }, + "nativeSrc": "18404:49:74", + "nodeType": "YulFunctionCall", + "src": "18404:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18379:6:74", + "nodeType": "YulIdentifier", + "src": "18379:6:74" + }, + "nativeSrc": "18379:75:74", + "nodeType": "YulFunctionCall", + "src": "18379:75:74" + }, + "nativeSrc": "18379:75:74", + "nodeType": "YulExpressionStatement", + "src": "18379:75:74" + } + ] + }, + { + "nativeSrc": "18475:159:74", + "nodeType": "YulBlock", + "src": "18475:159:74", + "statements": [ + { + "nativeSrc": "18518:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18518:16:74", + "value": { + "kind": "number", + "nativeSrc": "18532:2:74", + "nodeType": "YulLiteral", + "src": "18532:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18522:6:74", + "nodeType": "YulTypedName", + "src": "18522:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18559:5:74", + "nodeType": "YulIdentifier", + "src": "18559:5:74" + }, + { + "kind": "number", + "nativeSrc": "18566:4:74", + "nodeType": "YulLiteral", + "src": "18566:4:74", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18555:3:74", + "nodeType": "YulIdentifier", + "src": "18555:3:74" + }, + "nativeSrc": "18555:16:74", + "nodeType": "YulFunctionCall", + "src": "18555:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18598:9:74", + "nodeType": "YulIdentifier", + "src": "18598:9:74" + }, + { + "name": "offset", + "nativeSrc": "18609:6:74", + "nodeType": "YulIdentifier", + "src": "18609:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18594:3:74", + "nodeType": "YulIdentifier", + "src": "18594:3:74" + }, + "nativeSrc": "18594:22:74", + "nodeType": "YulFunctionCall", + "src": "18594:22:74" + }, + { + "name": "end", + "nativeSrc": "18618:3:74", + "nodeType": "YulIdentifier", + "src": "18618:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "18573:20:74", + "nodeType": "YulIdentifier", + "src": "18573:20:74" + }, + "nativeSrc": "18573:49:74", + "nodeType": "YulFunctionCall", + "src": "18573:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18548:6:74", + "nodeType": "YulIdentifier", + "src": "18548:6:74" + }, + "nativeSrc": "18548:75:74", + "nodeType": "YulFunctionCall", + "src": "18548:75:74" + }, + "nativeSrc": "18548:75:74", + "nodeType": "YulExpressionStatement", + "src": "18548:75:74" + } + ] + }, + { + "nativeSrc": "18644:162:74", + "nodeType": "YulBlock", + "src": "18644:162:74", + "statements": [ + { + "nativeSrc": "18689:17:74", + "nodeType": "YulVariableDeclaration", + "src": "18689:17:74", + "value": { + "kind": "number", + "nativeSrc": "18703:3:74", + "nodeType": "YulLiteral", + "src": "18703:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18693:6:74", + "nodeType": "YulTypedName", + "src": "18693:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18731:5:74", + "nodeType": "YulIdentifier", + "src": "18731:5:74" + }, + { + "kind": "number", + "nativeSrc": "18738:4:74", + "nodeType": "YulLiteral", + "src": "18738:4:74", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18727:3:74", + "nodeType": "YulIdentifier", + "src": "18727:3:74" + }, + "nativeSrc": "18727:16:74", + "nodeType": "YulFunctionCall", + "src": "18727:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18770:9:74", + "nodeType": "YulIdentifier", + "src": "18770:9:74" + }, + { + "name": "offset", + "nativeSrc": "18781:6:74", + "nodeType": "YulIdentifier", + "src": "18781:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18766:3:74", + "nodeType": "YulIdentifier", + "src": "18766:3:74" + }, + "nativeSrc": "18766:22:74", + "nodeType": "YulFunctionCall", + "src": "18766:22:74" + }, + { + "name": "end", + "nativeSrc": "18790:3:74", + "nodeType": "YulIdentifier", + "src": "18790:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "18745:20:74", + "nodeType": "YulIdentifier", + "src": "18745:20:74" + }, + "nativeSrc": "18745:49:74", + "nodeType": "YulFunctionCall", + "src": "18745:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18720:6:74", + "nodeType": "YulIdentifier", + "src": "18720:6:74" + }, + "nativeSrc": "18720:75:74", + "nodeType": "YulFunctionCall", + "src": "18720:75:74" + }, + "nativeSrc": "18720:75:74", + "nodeType": "YulExpressionStatement", + "src": "18720:75:74" + } + ] + }, + { + "nativeSrc": "18816:155:74", + "nodeType": "YulBlock", + "src": "18816:155:74", + "statements": [ + { + "nativeSrc": "18855:17:74", + "nodeType": "YulVariableDeclaration", + "src": "18855:17:74", + "value": { + "kind": "number", + "nativeSrc": "18869:3:74", + "nodeType": "YulLiteral", + "src": "18869:3:74", + "type": "", + "value": "160" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18859:6:74", + "nodeType": "YulTypedName", + "src": "18859:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18897:5:74", + "nodeType": "YulIdentifier", + "src": "18897:5:74" + }, + { + "kind": "number", + "nativeSrc": "18904:4:74", + "nodeType": "YulLiteral", + "src": "18904:4:74", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18893:3:74", + "nodeType": "YulIdentifier", + "src": "18893:3:74" + }, + "nativeSrc": "18893:16:74", + "nodeType": "YulFunctionCall", + "src": "18893:16:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18935:9:74", + "nodeType": "YulIdentifier", + "src": "18935:9:74" + }, + { + "name": "offset", + "nativeSrc": "18946:6:74", + "nodeType": "YulIdentifier", + "src": "18946:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18931:3:74", + "nodeType": "YulIdentifier", + "src": "18931:3:74" + }, + "nativeSrc": "18931:22:74", + "nodeType": "YulFunctionCall", + "src": "18931:22:74" + }, + { + "name": "end", + "nativeSrc": "18955:3:74", + "nodeType": "YulIdentifier", + "src": "18955:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "18911:19:74", + "nodeType": "YulIdentifier", + "src": "18911:19:74" + }, + "nativeSrc": "18911:48:74", + "nodeType": "YulFunctionCall", + "src": "18911:48:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18886:6:74", + "nodeType": "YulIdentifier", + "src": "18886:6:74" + }, + "nativeSrc": "18886:74:74", + "nodeType": "YulFunctionCall", + "src": "18886:74:74" + }, + "nativeSrc": "18886:74:74", + "nodeType": "YulExpressionStatement", + "src": "18886:74:74" + } + ] + } + ] + }, + "name": "abi_decode_t_struct$_Account_$1774_memory_ptr", + "nativeSrc": "17727:1251:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17782:9:74", + "nodeType": "YulTypedName", + "src": "17782:9:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17793:3:74", + "nodeType": "YulTypedName", + "src": "17793:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "17801:5:74", + "nodeType": "YulTypedName", + "src": "17801:5:74", + "type": "" + } + ], + "src": "17727:1251:74" + }, + { + "body": { + "nativeSrc": "19075:289:74", + "nodeType": "YulBlock", + "src": "19075:289:74", + "statements": [ + { + "body": { + "nativeSrc": "19122:83:74", + "nodeType": "YulBlock", + "src": "19122:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "19124:77:74", + "nodeType": "YulIdentifier", + "src": "19124:77:74" + }, + "nativeSrc": "19124:79:74", + "nodeType": "YulFunctionCall", + "src": "19124:79:74" + }, + "nativeSrc": "19124:79:74", + "nodeType": "YulExpressionStatement", + "src": "19124:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "19096:7:74", + "nodeType": "YulIdentifier", + "src": "19096:7:74" + }, + { + "name": "headStart", + "nativeSrc": "19105:9:74", + "nodeType": "YulIdentifier", + "src": "19105:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19092:3:74", + "nodeType": "YulIdentifier", + "src": "19092:3:74" + }, + "nativeSrc": "19092:23:74", + "nodeType": "YulFunctionCall", + "src": "19092:23:74" + }, + { + "kind": "number", + "nativeSrc": "19117:3:74", + "nodeType": "YulLiteral", + "src": "19117:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "19088:3:74", + "nodeType": "YulIdentifier", + "src": "19088:3:74" + }, + "nativeSrc": "19088:33:74", + "nodeType": "YulFunctionCall", + "src": "19088:33:74" + }, + "nativeSrc": "19085:120:74", + "nodeType": "YulIf", + "src": "19085:120:74" + }, + { + "nativeSrc": "19215:142:74", + "nodeType": "YulBlock", + "src": "19215:142:74", + "statements": [ + { + "nativeSrc": "19230:15:74", + "nodeType": "YulVariableDeclaration", + "src": "19230:15:74", + "value": { + "kind": "number", + "nativeSrc": "19244:1:74", + "nodeType": "YulLiteral", + "src": "19244:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "19234:6:74", + "nodeType": "YulTypedName", + "src": "19234:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19259:88:74", + "nodeType": "YulAssignment", + "src": "19259:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19319:9:74", + "nodeType": "YulIdentifier", + "src": "19319:9:74" + }, + { + "name": "offset", + "nativeSrc": "19330:6:74", + "nodeType": "YulIdentifier", + "src": "19330:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19315:3:74", + "nodeType": "YulIdentifier", + "src": "19315:3:74" + }, + "nativeSrc": "19315:22:74", + "nodeType": "YulFunctionCall", + "src": "19315:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "19339:7:74", + "nodeType": "YulIdentifier", + "src": "19339:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_struct$_Account_$1774_memory_ptr", + "nativeSrc": "19269:45:74", + "nodeType": "YulIdentifier", + "src": "19269:45:74" + }, + "nativeSrc": "19269:78:74", + "nodeType": "YulFunctionCall", + "src": "19269:78:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "19259:6:74", + "nodeType": "YulIdentifier", + "src": "19259:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_struct$_Account_$1774_memory_ptr", + "nativeSrc": "18984:380:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "19045:9:74", + "nodeType": "YulTypedName", + "src": "19045:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "19056:7:74", + "nodeType": "YulTypedName", + "src": "19056:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "19068:6:74", + "nodeType": "YulTypedName", + "src": "19068:6:74", + "type": "" + } + ], + "src": "18984:380:74" + }, + { + "body": { + "nativeSrc": "19398:152:74", + "nodeType": "YulBlock", + "src": "19398:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19415:1:74", + "nodeType": "YulLiteral", + "src": "19415:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19418:77:74", + "nodeType": "YulLiteral", + "src": "19418:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19408:6:74", + "nodeType": "YulIdentifier", + "src": "19408:6:74" + }, + "nativeSrc": "19408:88:74", + "nodeType": "YulFunctionCall", + "src": "19408:88:74" + }, + "nativeSrc": "19408:88:74", + "nodeType": "YulExpressionStatement", + "src": "19408:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19512:1:74", + "nodeType": "YulLiteral", + "src": "19512:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "19515:4:74", + "nodeType": "YulLiteral", + "src": "19515:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19505:6:74", + "nodeType": "YulIdentifier", + "src": "19505:6:74" + }, + "nativeSrc": "19505:15:74", + "nodeType": "YulFunctionCall", + "src": "19505:15:74" + }, + "nativeSrc": "19505:15:74", + "nodeType": "YulExpressionStatement", + "src": "19505:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19536:1:74", + "nodeType": "YulLiteral", + "src": "19536:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19539:4:74", + "nodeType": "YulLiteral", + "src": "19539:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "19529:6:74", + "nodeType": "YulIdentifier", + "src": "19529:6:74" + }, + "nativeSrc": "19529:15:74", + "nodeType": "YulFunctionCall", + "src": "19529:15:74" + }, + "nativeSrc": "19529:15:74", + "nodeType": "YulExpressionStatement", + "src": "19529:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "19370:180:74", + "nodeType": "YulFunctionDefinition", + "src": "19370:180:74" + }, + { + "body": { + "nativeSrc": "19601:149:74", + "nodeType": "YulBlock", + "src": "19601:149:74", + "statements": [ + { + "nativeSrc": "19611:25:74", + "nodeType": "YulAssignment", + "src": "19611:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "19634:1:74", + "nodeType": "YulIdentifier", + "src": "19634:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "19616:17:74", + "nodeType": "YulIdentifier", + "src": "19616:17:74" + }, + "nativeSrc": "19616:20:74", + "nodeType": "YulFunctionCall", + "src": "19616:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "19611:1:74", + "nodeType": "YulIdentifier", + "src": "19611:1:74" + } + ] + }, + { + "nativeSrc": "19645:25:74", + "nodeType": "YulAssignment", + "src": "19645:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "19668:1:74", + "nodeType": "YulIdentifier", + "src": "19668:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "19650:17:74", + "nodeType": "YulIdentifier", + "src": "19650:17:74" + }, + "nativeSrc": "19650:20:74", + "nodeType": "YulFunctionCall", + "src": "19650:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "19645:1:74", + "nodeType": "YulIdentifier", + "src": "19645:1:74" + } + ] + }, + { + "nativeSrc": "19679:17:74", + "nodeType": "YulAssignment", + "src": "19679:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "19691:1:74", + "nodeType": "YulIdentifier", + "src": "19691:1:74" + }, + { + "name": "y", + "nativeSrc": "19694:1:74", + "nodeType": "YulIdentifier", + "src": "19694:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19687:3:74", + "nodeType": "YulIdentifier", + "src": "19687:3:74" + }, + "nativeSrc": "19687:9:74", + "nodeType": "YulFunctionCall", + "src": "19687:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "19679:4:74", + "nodeType": "YulIdentifier", + "src": "19679:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "19721:22:74", + "nodeType": "YulBlock", + "src": "19721:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "19723:16:74", + "nodeType": "YulIdentifier", + "src": "19723:16:74" + }, + "nativeSrc": "19723:18:74", + "nodeType": "YulFunctionCall", + "src": "19723:18:74" + }, + "nativeSrc": "19723:18:74", + "nodeType": "YulExpressionStatement", + "src": "19723:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "19712:4:74", + "nodeType": "YulIdentifier", + "src": "19712:4:74" + }, + { + "name": "x", + "nativeSrc": "19718:1:74", + "nodeType": "YulIdentifier", + "src": "19718:1:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19709:2:74", + "nodeType": "YulIdentifier", + "src": "19709:2:74" + }, + "nativeSrc": "19709:11:74", + "nodeType": "YulFunctionCall", + "src": "19709:11:74" + }, + "nativeSrc": "19706:37:74", + "nodeType": "YulIf", + "src": "19706:37:74" + } + ] + }, + "name": "checked_sub_t_uint256", + "nativeSrc": "19556:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "19587:1:74", + "nodeType": "YulTypedName", + "src": "19587:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "19590:1:74", + "nodeType": "YulTypedName", + "src": "19590:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "19596:4:74", + "nodeType": "YulTypedName", + "src": "19596:4:74", + "type": "" + } + ], + "src": "19556:194:74" + }, + { + "body": { + "nativeSrc": "19784:152:74", + "nodeType": "YulBlock", + "src": "19784:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19801:1:74", + "nodeType": "YulLiteral", + "src": "19801:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19804:77:74", + "nodeType": "YulLiteral", + "src": "19804:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19794:6:74", + "nodeType": "YulIdentifier", + "src": "19794:6:74" + }, + "nativeSrc": "19794:88:74", + "nodeType": "YulFunctionCall", + "src": "19794:88:74" + }, + "nativeSrc": "19794:88:74", + "nodeType": "YulExpressionStatement", + "src": "19794:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19898:1:74", + "nodeType": "YulLiteral", + "src": "19898:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "19901:4:74", + "nodeType": "YulLiteral", + "src": "19901:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19891:6:74", + "nodeType": "YulIdentifier", + "src": "19891:6:74" + }, + "nativeSrc": "19891:15:74", + "nodeType": "YulFunctionCall", + "src": "19891:15:74" + }, + "nativeSrc": "19891:15:74", + "nodeType": "YulExpressionStatement", + "src": "19891:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19922:1:74", + "nodeType": "YulLiteral", + "src": "19922:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19925:4:74", + "nodeType": "YulLiteral", + "src": "19925:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "19915:6:74", + "nodeType": "YulIdentifier", + "src": "19915:6:74" + }, + "nativeSrc": "19915:15:74", + "nodeType": "YulFunctionCall", + "src": "19915:15:74" + }, + "nativeSrc": "19915:15:74", + "nodeType": "YulExpressionStatement", + "src": "19915:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "19756:180:74", + "nodeType": "YulFunctionDefinition", + "src": "19756:180:74" + }, + { + "body": { + "nativeSrc": "20031:28:74", + "nodeType": "YulBlock", + "src": "20031:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20048:1:74", + "nodeType": "YulLiteral", + "src": "20048:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "20051:1:74", + "nodeType": "YulLiteral", + "src": "20051:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "20041:6:74", + "nodeType": "YulIdentifier", + "src": "20041:6:74" + }, + "nativeSrc": "20041:12:74", + "nodeType": "YulFunctionCall", + "src": "20041:12:74" + }, + "nativeSrc": "20041:12:74", + "nodeType": "YulExpressionStatement", + "src": "20041:12:74" + } + ] + }, + "name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad", + "nativeSrc": "19942:117:74", + "nodeType": "YulFunctionDefinition", + "src": "19942:117:74" + }, + { + "body": { + "nativeSrc": "20154:28:74", + "nodeType": "YulBlock", + "src": "20154:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20171:1:74", + "nodeType": "YulLiteral", + "src": "20171:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "20174:1:74", + "nodeType": "YulLiteral", + "src": "20174:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "20164:6:74", + "nodeType": "YulIdentifier", + "src": "20164:6:74" + }, + "nativeSrc": "20164:12:74", + "nodeType": "YulFunctionCall", + "src": "20164:12:74" + }, + "nativeSrc": "20164:12:74", + "nodeType": "YulExpressionStatement", + "src": "20164:12:74" + } + ] + }, + "name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a", + "nativeSrc": "20065:117:74", + "nodeType": "YulFunctionDefinition", + "src": "20065:117:74" + }, + { + "body": { + "nativeSrc": "20277:28:74", + "nodeType": "YulBlock", + "src": "20277:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20294:1:74", + "nodeType": "YulLiteral", + "src": "20294:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "20297:1:74", + "nodeType": "YulLiteral", + "src": "20297:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "20287:6:74", + "nodeType": "YulIdentifier", + "src": "20287:6:74" + }, + "nativeSrc": "20287:12:74", + "nodeType": "YulFunctionCall", + "src": "20287:12:74" + }, + "nativeSrc": "20287:12:74", + "nodeType": "YulExpressionStatement", + "src": "20287:12:74" + } + ] + }, + "name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e", + "nativeSrc": "20188:117:74", + "nodeType": "YulFunctionDefinition", + "src": "20188:117:74" + }, + { + "body": { + "nativeSrc": "20401:634:74", + "nodeType": "YulBlock", + "src": "20401:634:74", + "statements": [ + { + "nativeSrc": "20411:51:74", + "nodeType": "YulVariableDeclaration", + "src": "20411:51:74", + "value": { + "arguments": [ + { + "name": "ptr_to_tail", + "nativeSrc": "20450:11:74", + "nodeType": "YulIdentifier", + "src": "20450:11:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20437:12:74", + "nodeType": "YulIdentifier", + "src": "20437:12:74" + }, + "nativeSrc": "20437:25:74", + "nodeType": "YulFunctionCall", + "src": "20437:25:74" + }, + "variables": [ + { + "name": "rel_offset_of_tail", + "nativeSrc": "20415:18:74", + "nodeType": "YulTypedName", + "src": "20415:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "20556:83:74", + "nodeType": "YulBlock", + "src": "20556:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad", + "nativeSrc": "20558:77:74", + "nodeType": "YulIdentifier", + "src": "20558:77:74" + }, + "nativeSrc": "20558:79:74", + "nodeType": "YulFunctionCall", + "src": "20558:79:74" + }, + "nativeSrc": "20558:79:74", + "nodeType": "YulExpressionStatement", + "src": "20558:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "rel_offset_of_tail", + "nativeSrc": "20485:18:74", + "nodeType": "YulIdentifier", + "src": "20485:18:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nativeSrc": "20513:12:74", + "nodeType": "YulIdentifier", + "src": "20513:12:74" + }, + "nativeSrc": "20513:14:74", + "nodeType": "YulFunctionCall", + "src": "20513:14:74" + }, + { + "name": "base_ref", + "nativeSrc": "20529:8:74", + "nodeType": "YulIdentifier", + "src": "20529:8:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20509:3:74", + "nodeType": "YulIdentifier", + "src": "20509:3:74" + }, + "nativeSrc": "20509:29:74", + "nodeType": "YulFunctionCall", + "src": "20509:29:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20544:4:74", + "nodeType": "YulLiteral", + "src": "20544:4:74", + "type": "", + "value": "0x20" + }, + { + "kind": "number", + "nativeSrc": "20550:1:74", + "nodeType": "YulLiteral", + "src": "20550:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20540:3:74", + "nodeType": "YulIdentifier", + "src": "20540:3:74" + }, + "nativeSrc": "20540:12:74", + "nodeType": "YulFunctionCall", + "src": "20540:12:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20505:3:74", + "nodeType": "YulIdentifier", + "src": "20505:3:74" + }, + "nativeSrc": "20505:48:74", + "nodeType": "YulFunctionCall", + "src": "20505:48:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20481:3:74", + "nodeType": "YulIdentifier", + "src": "20481:3:74" + }, + "nativeSrc": "20481:73:74", + "nodeType": "YulFunctionCall", + "src": "20481:73:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "20474:6:74", + "nodeType": "YulIdentifier", + "src": "20474:6:74" + }, + "nativeSrc": "20474:81:74", + "nodeType": "YulFunctionCall", + "src": "20474:81:74" + }, + "nativeSrc": "20471:168:74", + "nodeType": "YulIf", + "src": "20471:168:74" + }, + { + "nativeSrc": "20648:41:74", + "nodeType": "YulAssignment", + "src": "20648:41:74", + "value": { + "arguments": [ + { + "name": "base_ref", + "nativeSrc": "20660:8:74", + "nodeType": "YulIdentifier", + "src": "20660:8:74" + }, + { + "name": "rel_offset_of_tail", + "nativeSrc": "20670:18:74", + "nodeType": "YulIdentifier", + "src": "20670:18:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20656:3:74", + "nodeType": "YulIdentifier", + "src": "20656:3:74" + }, + "nativeSrc": "20656:33:74", + "nodeType": "YulFunctionCall", + "src": "20656:33:74" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "20648:4:74", + "nodeType": "YulIdentifier", + "src": "20648:4:74" + } + ] + }, + { + "nativeSrc": "20699:28:74", + "nodeType": "YulAssignment", + "src": "20699:28:74", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "20722:4:74", + "nodeType": "YulIdentifier", + "src": "20722:4:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20709:12:74", + "nodeType": "YulIdentifier", + "src": "20709:12:74" + }, + "nativeSrc": "20709:18:74", + "nodeType": "YulFunctionCall", + "src": "20709:18:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "20699:6:74", + "nodeType": "YulIdentifier", + "src": "20699:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "20770:83:74", + "nodeType": "YulBlock", + "src": "20770:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a", + "nativeSrc": "20772:77:74", + "nodeType": "YulIdentifier", + "src": "20772:77:74" + }, + "nativeSrc": "20772:79:74", + "nodeType": "YulFunctionCall", + "src": "20772:79:74" + }, + "nativeSrc": "20772:79:74", + "nodeType": "YulExpressionStatement", + "src": "20772:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "20742:6:74", + "nodeType": "YulIdentifier", + "src": "20742:6:74" + }, + { + "kind": "number", + "nativeSrc": "20750:18:74", + "nodeType": "YulLiteral", + "src": "20750:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20739:2:74", + "nodeType": "YulIdentifier", + "src": "20739:2:74" + }, + "nativeSrc": "20739:30:74", + "nodeType": "YulFunctionCall", + "src": "20739:30:74" + }, + "nativeSrc": "20736:117:74", + "nodeType": "YulIf", + "src": "20736:117:74" + }, + { + "nativeSrc": "20862:21:74", + "nodeType": "YulAssignment", + "src": "20862:21:74", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "20874:4:74", + "nodeType": "YulIdentifier", + "src": "20874:4:74" + }, + { + "kind": "number", + "nativeSrc": "20880:2:74", + "nodeType": "YulLiteral", + "src": "20880:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20870:3:74", + "nodeType": "YulIdentifier", + "src": "20870:3:74" + }, + "nativeSrc": "20870:13:74", + "nodeType": "YulFunctionCall", + "src": "20870:13:74" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "20862:4:74", + "nodeType": "YulIdentifier", + "src": "20862:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "20945:83:74", + "nodeType": "YulBlock", + "src": "20945:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e", + "nativeSrc": "20947:77:74", + "nodeType": "YulIdentifier", + "src": "20947:77:74" + }, + "nativeSrc": "20947:79:74", + "nodeType": "YulFunctionCall", + "src": "20947:79:74" + }, + "nativeSrc": "20947:79:74", + "nodeType": "YulExpressionStatement", + "src": "20947:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "20899:4:74", + "nodeType": "YulIdentifier", + "src": "20899:4:74" + }, + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nativeSrc": "20909:12:74", + "nodeType": "YulIdentifier", + "src": "20909:12:74" + }, + "nativeSrc": "20909:14:74", + "nodeType": "YulFunctionCall", + "src": "20909:14:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "20929:6:74", + "nodeType": "YulIdentifier", + "src": "20929:6:74" + }, + { + "kind": "number", + "nativeSrc": "20937:4:74", + "nodeType": "YulLiteral", + "src": "20937:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "20925:3:74", + "nodeType": "YulIdentifier", + "src": "20925:3:74" + }, + "nativeSrc": "20925:17:74", + "nodeType": "YulFunctionCall", + "src": "20925:17:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20905:3:74", + "nodeType": "YulIdentifier", + "src": "20905:3:74" + }, + "nativeSrc": "20905:38:74", + "nodeType": "YulFunctionCall", + "src": "20905:38:74" + } + ], + "functionName": { + "name": "sgt", + "nativeSrc": "20895:3:74", + "nodeType": "YulIdentifier", + "src": "20895:3:74" + }, + "nativeSrc": "20895:49:74", + "nodeType": "YulFunctionCall", + "src": "20895:49:74" + }, + "nativeSrc": "20892:136:74", + "nodeType": "YulIf", + "src": "20892:136:74" + } + ] + }, + "name": "access_calldata_tail_t_bytes_calldata_ptr", + "nativeSrc": "20311:724:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "base_ref", + "nativeSrc": "20362:8:74", + "nodeType": "YulTypedName", + "src": "20362:8:74", + "type": "" + }, + { + "name": "ptr_to_tail", + "nativeSrc": "20372:11:74", + "nodeType": "YulTypedName", + "src": "20372:11:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "addr", + "nativeSrc": "20388:4:74", + "nodeType": "YulTypedName", + "src": "20388:4:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "20394:6:74", + "nodeType": "YulTypedName", + "src": "20394:6:74", + "type": "" + } + ], + "src": "20311:724:74" + }, + { + "body": { + "nativeSrc": "21095:32:74", + "nodeType": "YulBlock", + "src": "21095:32:74", + "statements": [ + { + "nativeSrc": "21105:16:74", + "nodeType": "YulAssignment", + "src": "21105:16:74", + "value": { + "name": "value", + "nativeSrc": "21116:5:74", + "nodeType": "YulIdentifier", + "src": "21116:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "21105:7:74", + "nodeType": "YulIdentifier", + "src": "21105:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_64_by_1", + "nativeSrc": "21041:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21077:5:74", + "nodeType": "YulTypedName", + "src": "21077:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "21087:7:74", + "nodeType": "YulTypedName", + "src": "21087:7:74", + "type": "" + } + ], + "src": "21041:86:74" + }, + { + "body": { + "nativeSrc": "21202:91:74", + "nodeType": "YulBlock", + "src": "21202:91:74", + "statements": [ + { + "nativeSrc": "21212:75:74", + "nodeType": "YulAssignment", + "src": "21212:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "21279:5:74", + "nodeType": "YulIdentifier", + "src": "21279:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_64_by_1", + "nativeSrc": "21252:26:74", + "nodeType": "YulIdentifier", + "src": "21252:26:74" + }, + "nativeSrc": "21252:33:74", + "nodeType": "YulFunctionCall", + "src": "21252:33:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "21243:8:74", + "nodeType": "YulIdentifier", + "src": "21243:8:74" + }, + "nativeSrc": "21243:43:74", + "nodeType": "YulFunctionCall", + "src": "21243:43:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "21225:17:74", + "nodeType": "YulIdentifier", + "src": "21225:17:74" + }, + "nativeSrc": "21225:62:74", + "nodeType": "YulFunctionCall", + "src": "21225:62:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "21212:9:74", + "nodeType": "YulIdentifier", + "src": "21212:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_64_by_1_to_t_uint256", + "nativeSrc": "21133:160:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21182:5:74", + "nodeType": "YulTypedName", + "src": "21182:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "21192:9:74", + "nodeType": "YulTypedName", + "src": "21192:9:74", + "type": "" + } + ], + "src": "21133:160:74" + }, + { + "body": { + "nativeSrc": "21373:75:74", + "nodeType": "YulBlock", + "src": "21373:75:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21390:3:74", + "nodeType": "YulIdentifier", + "src": "21390:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "21435:5:74", + "nodeType": "YulIdentifier", + "src": "21435:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_64_by_1_to_t_uint256", + "nativeSrc": "21395:39:74", + "nodeType": "YulIdentifier", + "src": "21395:39:74" + }, + "nativeSrc": "21395:46:74", + "nodeType": "YulFunctionCall", + "src": "21395:46:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21383:6:74", + "nodeType": "YulIdentifier", + "src": "21383:6:74" + }, + "nativeSrc": "21383:59:74", + "nodeType": "YulFunctionCall", + "src": "21383:59:74" + }, + "nativeSrc": "21383:59:74", + "nodeType": "YulExpressionStatement", + "src": "21383:59:74" + } + ] + }, + "name": "abi_encode_t_rational_64_by_1_to_t_uint256_fromStack", + "nativeSrc": "21299:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21361:5:74", + "nodeType": "YulTypedName", + "src": "21361:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "21368:3:74", + "nodeType": "YulTypedName", + "src": "21368:3:74", + "type": "" + } + ], + "src": "21299:149:74" + }, + { + "body": { + "nativeSrc": "21589:215:74", + "nodeType": "YulBlock", + "src": "21589:215:74", + "statements": [ + { + "nativeSrc": "21599:26:74", + "nodeType": "YulAssignment", + "src": "21599:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21611:9:74", + "nodeType": "YulIdentifier", + "src": "21611:9:74" + }, + { + "kind": "number", + "nativeSrc": "21622:2:74", + "nodeType": "YulLiteral", + "src": "21622:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21607:3:74", + "nodeType": "YulIdentifier", + "src": "21607:3:74" + }, + "nativeSrc": "21607:18:74", + "nodeType": "YulFunctionCall", + "src": "21607:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "21599:4:74", + "nodeType": "YulIdentifier", + "src": "21599:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "21688:6:74", + "nodeType": "YulIdentifier", + "src": "21688:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21701:9:74", + "nodeType": "YulIdentifier", + "src": "21701:9:74" + }, + { + "kind": "number", + "nativeSrc": "21712:1:74", + "nodeType": "YulLiteral", + "src": "21712:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21697:3:74", + "nodeType": "YulIdentifier", + "src": "21697:3:74" + }, + "nativeSrc": "21697:17:74", + "nodeType": "YulFunctionCall", + "src": "21697:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_64_by_1_to_t_uint256_fromStack", + "nativeSrc": "21635:52:74", + "nodeType": "YulIdentifier", + "src": "21635:52:74" + }, + "nativeSrc": "21635:80:74", + "nodeType": "YulFunctionCall", + "src": "21635:80:74" + }, + "nativeSrc": "21635:80:74", + "nodeType": "YulExpressionStatement", + "src": "21635:80:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "21769:6:74", + "nodeType": "YulIdentifier", + "src": "21769:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21782:9:74", + "nodeType": "YulIdentifier", + "src": "21782:9:74" + }, + { + "kind": "number", + "nativeSrc": "21793:2:74", + "nodeType": "YulLiteral", + "src": "21793:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21778:3:74", + "nodeType": "YulIdentifier", + "src": "21778:3:74" + }, + "nativeSrc": "21778:18:74", + "nodeType": "YulFunctionCall", + "src": "21778:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "21725:43:74", + "nodeType": "YulIdentifier", + "src": "21725:43:74" + }, + "nativeSrc": "21725:72:74", + "nodeType": "YulFunctionCall", + "src": "21725:72:74" + }, + "nativeSrc": "21725:72:74", + "nodeType": "YulExpressionStatement", + "src": "21725:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_rational_64_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "21454:350:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "21553:9:74", + "nodeType": "YulTypedName", + "src": "21553:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "21565:6:74", + "nodeType": "YulTypedName", + "src": "21565:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "21573:6:74", + "nodeType": "YulTypedName", + "src": "21573:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "21584:4:74", + "nodeType": "YulTypedName", + "src": "21584:4:74", + "type": "" + } + ], + "src": "21454:350:74" + }, + { + "body": { + "nativeSrc": "21899:28:74", + "nodeType": "YulBlock", + "src": "21899:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21916:1:74", + "nodeType": "YulLiteral", + "src": "21916:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "21919:1:74", + "nodeType": "YulLiteral", + "src": "21919:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "21909:6:74", + "nodeType": "YulIdentifier", + "src": "21909:6:74" + }, + "nativeSrc": "21909:12:74", + "nodeType": "YulFunctionCall", + "src": "21909:12:74" + }, + "nativeSrc": "21909:12:74", + "nodeType": "YulExpressionStatement", + "src": "21909:12:74" + } + ] + }, + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "21810:117:74", + "nodeType": "YulFunctionDefinition", + "src": "21810:117:74" + }, + { + "body": { + "nativeSrc": "22022:28:74", + "nodeType": "YulBlock", + "src": "22022:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "22039:1:74", + "nodeType": "YulLiteral", + "src": "22039:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "22042:1:74", + "nodeType": "YulLiteral", + "src": "22042:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "22032:6:74", + "nodeType": "YulIdentifier", + "src": "22032:6:74" + }, + "nativeSrc": "22032:12:74", + "nodeType": "YulFunctionCall", + "src": "22032:12:74" + }, + "nativeSrc": "22032:12:74", + "nodeType": "YulExpressionStatement", + "src": "22032:12:74" + } + ] + }, + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "21933:117:74", + "nodeType": "YulFunctionDefinition", + "src": "21933:117:74" + }, + { + "body": { + "nativeSrc": "22182:343:74", + "nodeType": "YulBlock", + "src": "22182:343:74", + "statements": [ + { + "body": { + "nativeSrc": "22220:83:74", + "nodeType": "YulBlock", + "src": "22220:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "22222:77:74", + "nodeType": "YulIdentifier", + "src": "22222:77:74" + }, + "nativeSrc": "22222:79:74", + "nodeType": "YulFunctionCall", + "src": "22222:79:74" + }, + "nativeSrc": "22222:79:74", + "nodeType": "YulExpressionStatement", + "src": "22222:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "22198:10:74", + "nodeType": "YulIdentifier", + "src": "22198:10:74" + }, + { + "name": "endIndex", + "nativeSrc": "22210:8:74", + "nodeType": "YulIdentifier", + "src": "22210:8:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "22195:2:74", + "nodeType": "YulIdentifier", + "src": "22195:2:74" + }, + "nativeSrc": "22195:24:74", + "nodeType": "YulFunctionCall", + "src": "22195:24:74" + }, + "nativeSrc": "22192:111:74", + "nodeType": "YulIf", + "src": "22192:111:74" + }, + { + "body": { + "nativeSrc": "22336:83:74", + "nodeType": "YulBlock", + "src": "22336:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "22338:77:74", + "nodeType": "YulIdentifier", + "src": "22338:77:74" + }, + "nativeSrc": "22338:79:74", + "nodeType": "YulFunctionCall", + "src": "22338:79:74" + }, + "nativeSrc": "22338:79:74", + "nodeType": "YulExpressionStatement", + "src": "22338:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "22318:8:74", + "nodeType": "YulIdentifier", + "src": "22318:8:74" + }, + { + "name": "length", + "nativeSrc": "22328:6:74", + "nodeType": "YulIdentifier", + "src": "22328:6:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "22315:2:74", + "nodeType": "YulIdentifier", + "src": "22315:2:74" + }, + "nativeSrc": "22315:20:74", + "nodeType": "YulFunctionCall", + "src": "22315:20:74" + }, + "nativeSrc": "22312:107:74", + "nodeType": "YulIf", + "src": "22312:107:74" + }, + { + "nativeSrc": "22428:44:74", + "nodeType": "YulAssignment", + "src": "22428:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "22445:6:74", + "nodeType": "YulIdentifier", + "src": "22445:6:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "22457:10:74", + "nodeType": "YulIdentifier", + "src": "22457:10:74" + }, + { + "kind": "number", + "nativeSrc": "22469:1:74", + "nodeType": "YulLiteral", + "src": "22469:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "22453:3:74", + "nodeType": "YulIdentifier", + "src": "22453:3:74" + }, + "nativeSrc": "22453:18:74", + "nodeType": "YulFunctionCall", + "src": "22453:18:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22441:3:74", + "nodeType": "YulIdentifier", + "src": "22441:3:74" + }, + "nativeSrc": "22441:31:74", + "nodeType": "YulFunctionCall", + "src": "22441:31:74" + }, + "variableNames": [ + { + "name": "offsetOut", + "nativeSrc": "22428:9:74", + "nodeType": "YulIdentifier", + "src": "22428:9:74" + } + ] + }, + { + "nativeSrc": "22481:38:74", + "nodeType": "YulAssignment", + "src": "22481:38:74", + "value": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "22498:8:74", + "nodeType": "YulIdentifier", + "src": "22498:8:74" + }, + { + "name": "startIndex", + "nativeSrc": "22508:10:74", + "nodeType": "YulIdentifier", + "src": "22508:10:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22494:3:74", + "nodeType": "YulIdentifier", + "src": "22494:3:74" + }, + "nativeSrc": "22494:25:74", + "nodeType": "YulFunctionCall", + "src": "22494:25:74" + }, + "variableNames": [ + { + "name": "lengthOut", + "nativeSrc": "22481:9:74", + "nodeType": "YulIdentifier", + "src": "22481:9:74" + } + ] + } + ] + }, + "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", + "nativeSrc": "22056:469:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "22120:6:74", + "nodeType": "YulTypedName", + "src": "22120:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "22128:6:74", + "nodeType": "YulTypedName", + "src": "22128:6:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "22136:10:74", + "nodeType": "YulTypedName", + "src": "22136:10:74", + "type": "" + }, + { + "name": "endIndex", + "nativeSrc": "22148:8:74", + "nodeType": "YulTypedName", + "src": "22148:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "offsetOut", + "nativeSrc": "22161:9:74", + "nodeType": "YulTypedName", + "src": "22161:9:74", + "type": "" + }, + { + "name": "lengthOut", + "nativeSrc": "22172:9:74", + "nodeType": "YulTypedName", + "src": "22172:9:74", + "type": "" + } + ], + "src": "22056:469:74" + }, + { + "body": { + "nativeSrc": "22596:31:74", + "nodeType": "YulBlock", + "src": "22596:31:74", + "statements": [ + { + "nativeSrc": "22607:13:74", + "nodeType": "YulAssignment", + "src": "22607:13:74", + "value": { + "name": "len", + "nativeSrc": "22617:3:74", + "nodeType": "YulIdentifier", + "src": "22617:3:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "22607:6:74", + "nodeType": "YulIdentifier", + "src": "22607:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "22531:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22574:5:74", + "nodeType": "YulTypedName", + "src": "22574:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "22581:3:74", + "nodeType": "YulTypedName", + "src": "22581:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "22589:6:74", + "nodeType": "YulTypedName", + "src": "22589:6:74", + "type": "" + } + ], + "src": "22531:96:74" + }, + { + "body": { + "nativeSrc": "22691:28:74", + "nodeType": "YulBlock", + "src": "22691:28:74", + "statements": [ + { + "nativeSrc": "22701:11:74", + "nodeType": "YulAssignment", + "src": "22701:11:74", + "value": { + "name": "ptr", + "nativeSrc": "22709:3:74", + "nodeType": "YulIdentifier", + "src": "22709:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "22701:4:74", + "nodeType": "YulIdentifier", + "src": "22701:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_calldata_ptr", + "nativeSrc": "22633:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "22678:3:74", + "nodeType": "YulTypedName", + "src": "22678:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "22686:4:74", + "nodeType": "YulTypedName", + "src": "22686:4:74", + "type": "" + } + ], + "src": "22633:86:74" + }, + { + "body": { + "nativeSrc": "22778:54:74", + "nodeType": "YulBlock", + "src": "22778:54:74", + "statements": [ + { + "nativeSrc": "22788:37:74", + "nodeType": "YulAssignment", + "src": "22788:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "22813:4:74", + "nodeType": "YulIdentifier", + "src": "22813:4:74" + }, + { + "name": "value", + "nativeSrc": "22819:5:74", + "nodeType": "YulIdentifier", + "src": "22819:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "22809:3:74", + "nodeType": "YulIdentifier", + "src": "22809:3:74" + }, + "nativeSrc": "22809:16:74", + "nodeType": "YulFunctionCall", + "src": "22809:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "22788:8:74", + "nodeType": "YulIdentifier", + "src": "22788:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "22725:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "22753:4:74", + "nodeType": "YulTypedName", + "src": "22753:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "22759:5:74", + "nodeType": "YulTypedName", + "src": "22759:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "22769:8:74", + "nodeType": "YulTypedName", + "src": "22769:8:74", + "type": "" + } + ], + "src": "22725:107:74" + }, + { + "body": { + "nativeSrc": "22935:455:74", + "nodeType": "YulBlock", + "src": "22935:455:74", + "statements": [ + { + "nativeSrc": "22946:59:74", + "nodeType": "YulVariableDeclaration", + "src": "22946:59:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "22994:5:74", + "nodeType": "YulIdentifier", + "src": "22994:5:74" + }, + { + "name": "len", + "nativeSrc": "23001:3:74", + "nodeType": "YulIdentifier", + "src": "23001:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "22960:33:74", + "nodeType": "YulIdentifier", + "src": "22960:33:74" + }, + "nativeSrc": "22960:45:74", + "nodeType": "YulFunctionCall", + "src": "22960:45:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "22950:6:74", + "nodeType": "YulTypedName", + "src": "22950:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23014:21:74", + "nodeType": "YulVariableDeclaration", + "src": "23014:21:74", + "value": { + "name": "array", + "nativeSrc": "23030:5:74", + "nodeType": "YulIdentifier", + "src": "23030:5:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "23018:8:74", + "nodeType": "YulTypedName", + "src": "23018:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23045:50:74", + "nodeType": "YulAssignment", + "src": "23045:50:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "23085:8:74", + "nodeType": "YulIdentifier", + "src": "23085:8:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "23072:12:74", + "nodeType": "YulIdentifier", + "src": "23072:12:74" + }, + "nativeSrc": "23072:22:74", + "nodeType": "YulFunctionCall", + "src": "23072:22:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "23054:17:74", + "nodeType": "YulIdentifier", + "src": "23054:17:74" + }, + "nativeSrc": "23054:41:74", + "nodeType": "YulFunctionCall", + "src": "23054:41:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23045:5:74", + "nodeType": "YulIdentifier", + "src": "23045:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "23123:260:74", + "nodeType": "YulBlock", + "src": "23123:260:74", + "statements": [ + { + "nativeSrc": "23137:236:74", + "nodeType": "YulAssignment", + "src": "23137:236:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23167:5:74", + "nodeType": "YulIdentifier", + "src": "23167:5:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "23234:1:74", + "nodeType": "YulLiteral", + "src": "23234:1:74", + "type": "", + "value": "8" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "23241:2:74", + "nodeType": "YulLiteral", + "src": "23241:2:74", + "type": "", + "value": "32" + }, + { + "name": "length", + "nativeSrc": "23245:6:74", + "nodeType": "YulIdentifier", + "src": "23245:6:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23237:3:74", + "nodeType": "YulIdentifier", + "src": "23237:3:74" + }, + "nativeSrc": "23237:15:74", + "nodeType": "YulFunctionCall", + "src": "23237:15:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "23230:3:74", + "nodeType": "YulIdentifier", + "src": "23230:3:74" + }, + "nativeSrc": "23230:23:74", + "nodeType": "YulFunctionCall", + "src": "23230:23:74" + }, + { + "kind": "number", + "nativeSrc": "23275:66:74", + "nodeType": "YulLiteral", + "src": "23275:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "23190:18:74", + "nodeType": "YulIdentifier", + "src": "23190:18:74" + }, + "nativeSrc": "23190:169:74", + "nodeType": "YulFunctionCall", + "src": "23190:169:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "23146:3:74", + "nodeType": "YulIdentifier", + "src": "23146:3:74" + }, + "nativeSrc": "23146:227:74", + "nodeType": "YulFunctionCall", + "src": "23146:227:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23137:5:74", + "nodeType": "YulIdentifier", + "src": "23137:5:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "23111:6:74", + "nodeType": "YulIdentifier", + "src": "23111:6:74" + }, + { + "kind": "number", + "nativeSrc": "23119:2:74", + "nodeType": "YulLiteral", + "src": "23119:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "23108:2:74", + "nodeType": "YulIdentifier", + "src": "23108:2:74" + }, + "nativeSrc": "23108:14:74", + "nodeType": "YulFunctionCall", + "src": "23108:14:74" + }, + "nativeSrc": "23105:278:74", + "nodeType": "YulIf", + "src": "23105:278:74" + } + ] + }, + "name": "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32", + "nativeSrc": "22838:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "22914:5:74", + "nodeType": "YulTypedName", + "src": "22914:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "22921:3:74", + "nodeType": "YulTypedName", + "src": "22921:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "22929:5:74", + "nodeType": "YulTypedName", + "src": "22929:5:74", + "type": "" + } + ], + "src": "22838:552:74" + }, + { + "body": { + "nativeSrc": "23447:51:74", + "nodeType": "YulBlock", + "src": "23447:51:74", + "statements": [ + { + "nativeSrc": "23457:34:74", + "nodeType": "YulAssignment", + "src": "23457:34:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "23482:1:74", + "nodeType": "YulLiteral", + "src": "23482:1:74", + "type": "", + "value": "1" + }, + { + "name": "value", + "nativeSrc": "23485:5:74", + "nodeType": "YulIdentifier", + "src": "23485:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "23478:3:74", + "nodeType": "YulIdentifier", + "src": "23478:3:74" + }, + "nativeSrc": "23478:13:74", + "nodeType": "YulFunctionCall", + "src": "23478:13:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "23457:8:74", + "nodeType": "YulIdentifier", + "src": "23457:8:74" + } + ] + } + ] + }, + "name": "shift_right_1_unsigned", + "nativeSrc": "23396:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23428:5:74", + "nodeType": "YulTypedName", + "src": "23428:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "23438:8:74", + "nodeType": "YulTypedName", + "src": "23438:8:74", + "type": "" + } + ], + "src": "23396:102:74" + }, + { + "body": { + "nativeSrc": "23577:775:74", + "nodeType": "YulBlock", + "src": "23577:775:74", + "statements": [ + { + "nativeSrc": "23587:15:74", + "nodeType": "YulAssignment", + "src": "23587:15:74", + "value": { + "name": "_power", + "nativeSrc": "23596:6:74", + "nodeType": "YulIdentifier", + "src": "23596:6:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "23587:5:74", + "nodeType": "YulIdentifier", + "src": "23587:5:74" + } + ] + }, + { + "nativeSrc": "23611:14:74", + "nodeType": "YulAssignment", + "src": "23611:14:74", + "value": { + "name": "_base", + "nativeSrc": "23620:5:74", + "nodeType": "YulIdentifier", + "src": "23620:5:74" + }, + "variableNames": [ + { + "name": "base", + "nativeSrc": "23611:4:74", + "nodeType": "YulIdentifier", + "src": "23611:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "23669:677:74", + "nodeType": "YulBlock", + "src": "23669:677:74", + "statements": [ + { + "body": { + "nativeSrc": "23757:22:74", + "nodeType": "YulBlock", + "src": "23757:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "23759:16:74", + "nodeType": "YulIdentifier", + "src": "23759:16:74" + }, + "nativeSrc": "23759:18:74", + "nodeType": "YulFunctionCall", + "src": "23759:18:74" + }, + "nativeSrc": "23759:18:74", + "nodeType": "YulExpressionStatement", + "src": "23759:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "base", + "nativeSrc": "23735:4:74", + "nodeType": "YulIdentifier", + "src": "23735:4:74" + }, + { + "arguments": [ + { + "name": "max", + "nativeSrc": "23745:3:74", + "nodeType": "YulIdentifier", + "src": "23745:3:74" + }, + { + "name": "base", + "nativeSrc": "23750:4:74", + "nodeType": "YulIdentifier", + "src": "23750:4:74" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "23741:3:74", + "nodeType": "YulIdentifier", + "src": "23741:3:74" + }, + "nativeSrc": "23741:14:74", + "nodeType": "YulFunctionCall", + "src": "23741:14:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "23732:2:74", + "nodeType": "YulIdentifier", + "src": "23732:2:74" + }, + "nativeSrc": "23732:24:74", + "nodeType": "YulFunctionCall", + "src": "23732:24:74" + }, + "nativeSrc": "23729:50:74", + "nodeType": "YulIf", + "src": "23729:50:74" + }, + { + "body": { + "nativeSrc": "23824:419:74", + "nodeType": "YulBlock", + "src": "23824:419:74", + "statements": [ + { + "nativeSrc": "24204:25:74", + "nodeType": "YulAssignment", + "src": "24204:25:74", + "value": { + "arguments": [ + { + "name": "power", + "nativeSrc": "24217:5:74", + "nodeType": "YulIdentifier", + "src": "24217:5:74" + }, + { + "name": "base", + "nativeSrc": "24224:4:74", + "nodeType": "YulIdentifier", + "src": "24224:4:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "24213:3:74", + "nodeType": "YulIdentifier", + "src": "24213:3:74" + }, + "nativeSrc": "24213:16:74", + "nodeType": "YulFunctionCall", + "src": "24213:16:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "24204:5:74", + "nodeType": "YulIdentifier", + "src": "24204:5:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "23799:8:74", + "nodeType": "YulIdentifier", + "src": "23799:8:74" + }, + { + "kind": "number", + "nativeSrc": "23809:1:74", + "nodeType": "YulLiteral", + "src": "23809:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "23795:3:74", + "nodeType": "YulIdentifier", + "src": "23795:3:74" + }, + "nativeSrc": "23795:16:74", + "nodeType": "YulFunctionCall", + "src": "23795:16:74" + }, + "nativeSrc": "23792:451:74", + "nodeType": "YulIf", + "src": "23792:451:74" + }, + { + "nativeSrc": "24256:23:74", + "nodeType": "YulAssignment", + "src": "24256:23:74", + "value": { + "arguments": [ + { + "name": "base", + "nativeSrc": "24268:4:74", + "nodeType": "YulIdentifier", + "src": "24268:4:74" + }, + { + "name": "base", + "nativeSrc": "24274:4:74", + "nodeType": "YulIdentifier", + "src": "24274:4:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "24264:3:74", + "nodeType": "YulIdentifier", + "src": "24264:3:74" + }, + "nativeSrc": "24264:15:74", + "nodeType": "YulFunctionCall", + "src": "24264:15:74" + }, + "variableNames": [ + { + "name": "base", + "nativeSrc": "24256:4:74", + "nodeType": "YulIdentifier", + "src": "24256:4:74" + } + ] + }, + { + "nativeSrc": "24292:44:74", + "nodeType": "YulAssignment", + "src": "24292:44:74", + "value": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "24327:8:74", + "nodeType": "YulIdentifier", + "src": "24327:8:74" + } + ], + "functionName": { + "name": "shift_right_1_unsigned", + "nativeSrc": "24304:22:74", + "nodeType": "YulIdentifier", + "src": "24304:22:74" + }, + "nativeSrc": "24304:32:74", + "nodeType": "YulFunctionCall", + "src": "24304:32:74" + }, + "variableNames": [ + { + "name": "exponent", + "nativeSrc": "24292:8:74", + "nodeType": "YulIdentifier", + "src": "24292:8:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "23645:8:74", + "nodeType": "YulIdentifier", + "src": "23645:8:74" + }, + { + "kind": "number", + "nativeSrc": "23655:1:74", + "nodeType": "YulLiteral", + "src": "23655:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "23642:2:74", + "nodeType": "YulIdentifier", + "src": "23642:2:74" + }, + "nativeSrc": "23642:15:74", + "nodeType": "YulFunctionCall", + "src": "23642:15:74" + }, + "nativeSrc": "23634:712:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "23658:2:74", + "nodeType": "YulBlock", + "src": "23658:2:74", + "statements": [] + }, + "pre": { + "nativeSrc": "23638:3:74", + "nodeType": "YulBlock", + "src": "23638:3:74", + "statements": [] + }, + "src": "23634:712:74" + } + ] + }, + "name": "checked_exp_helper", + "nativeSrc": "23504:848:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "_power", + "nativeSrc": "23532:6:74", + "nodeType": "YulTypedName", + "src": "23532:6:74", + "type": "" + }, + { + "name": "_base", + "nativeSrc": "23540:5:74", + "nodeType": "YulTypedName", + "src": "23540:5:74", + "type": "" + }, + { + "name": "exponent", + "nativeSrc": "23547:8:74", + "nodeType": "YulTypedName", + "src": "23547:8:74", + "type": "" + }, + { + "name": "max", + "nativeSrc": "23557:3:74", + "nodeType": "YulTypedName", + "src": "23557:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "power", + "nativeSrc": "23565:5:74", + "nodeType": "YulTypedName", + "src": "23565:5:74", + "type": "" + }, + { + "name": "base", + "nativeSrc": "23572:4:74", + "nodeType": "YulTypedName", + "src": "23572:4:74", + "type": "" + } + ], + "src": "23504:848:74" + }, + { + "body": { + "nativeSrc": "24418:1013:74", + "nodeType": "YulBlock", + "src": "24418:1013:74", + "statements": [ + { + "body": { + "nativeSrc": "24613:20:74", + "nodeType": "YulBlock", + "src": "24613:20:74", + "statements": [ + { + "nativeSrc": "24615:10:74", + "nodeType": "YulAssignment", + "src": "24615:10:74", + "value": { + "kind": "number", + "nativeSrc": "24624:1:74", + "nodeType": "YulLiteral", + "src": "24624:1:74", + "type": "", + "value": "1" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "24615:5:74", + "nodeType": "YulIdentifier", + "src": "24615:5:74" + } + ] + }, + { + "nativeSrc": "24626:5:74", + "nodeType": "YulLeave", + "src": "24626:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "24603:8:74", + "nodeType": "YulIdentifier", + "src": "24603:8:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "24596:6:74", + "nodeType": "YulIdentifier", + "src": "24596:6:74" + }, + "nativeSrc": "24596:16:74", + "nodeType": "YulFunctionCall", + "src": "24596:16:74" + }, + "nativeSrc": "24593:40:74", + "nodeType": "YulIf", + "src": "24593:40:74" + }, + { + "body": { + "nativeSrc": "24658:20:74", + "nodeType": "YulBlock", + "src": "24658:20:74", + "statements": [ + { + "nativeSrc": "24660:10:74", + "nodeType": "YulAssignment", + "src": "24660:10:74", + "value": { + "kind": "number", + "nativeSrc": "24669:1:74", + "nodeType": "YulLiteral", + "src": "24669:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "24660:5:74", + "nodeType": "YulIdentifier", + "src": "24660:5:74" + } + ] + }, + { + "nativeSrc": "24671:5:74", + "nodeType": "YulLeave", + "src": "24671:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "base", + "nativeSrc": "24652:4:74", + "nodeType": "YulIdentifier", + "src": "24652:4:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "24645:6:74", + "nodeType": "YulIdentifier", + "src": "24645:6:74" + }, + "nativeSrc": "24645:12:74", + "nodeType": "YulFunctionCall", + "src": "24645:12:74" + }, + "nativeSrc": "24642:36:74", + "nodeType": "YulIf", + "src": "24642:36:74" + }, + { + "cases": [ + { + "body": { + "nativeSrc": "24788:20:74", + "nodeType": "YulBlock", + "src": "24788:20:74", + "statements": [ + { + "nativeSrc": "24790:10:74", + "nodeType": "YulAssignment", + "src": "24790:10:74", + "value": { + "kind": "number", + "nativeSrc": "24799:1:74", + "nodeType": "YulLiteral", + "src": "24799:1:74", + "type": "", + "value": "1" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "24790:5:74", + "nodeType": "YulIdentifier", + "src": "24790:5:74" + } + ] + }, + { + "nativeSrc": "24801:5:74", + "nodeType": "YulLeave", + "src": "24801:5:74" + } + ] + }, + "nativeSrc": "24781:27:74", + "nodeType": "YulCase", + "src": "24781:27:74", + "value": { + "kind": "number", + "nativeSrc": "24786:1:74", + "nodeType": "YulLiteral", + "src": "24786:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "24832:176:74", + "nodeType": "YulBlock", + "src": "24832:176:74", + "statements": [ + { + "body": { + "nativeSrc": "24867:22:74", + "nodeType": "YulBlock", + "src": "24867:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "24869:16:74", + "nodeType": "YulIdentifier", + "src": "24869:16:74" + }, + "nativeSrc": "24869:18:74", + "nodeType": "YulFunctionCall", + "src": "24869:18:74" + }, + "nativeSrc": "24869:18:74", + "nodeType": "YulExpressionStatement", + "src": "24869:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "24852:8:74", + "nodeType": "YulIdentifier", + "src": "24852:8:74" + }, + { + "kind": "number", + "nativeSrc": "24862:3:74", + "nodeType": "YulLiteral", + "src": "24862:3:74", + "type": "", + "value": "255" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "24849:2:74", + "nodeType": "YulIdentifier", + "src": "24849:2:74" + }, + "nativeSrc": "24849:17:74", + "nodeType": "YulFunctionCall", + "src": "24849:17:74" + }, + "nativeSrc": "24846:43:74", + "nodeType": "YulIf", + "src": "24846:43:74" + }, + { + "nativeSrc": "24902:25:74", + "nodeType": "YulAssignment", + "src": "24902:25:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "24915:1:74", + "nodeType": "YulLiteral", + "src": "24915:1:74", + "type": "", + "value": "2" + }, + { + "name": "exponent", + "nativeSrc": "24918:8:74", + "nodeType": "YulIdentifier", + "src": "24918:8:74" + } + ], + "functionName": { + "name": "exp", + "nativeSrc": "24911:3:74", + "nodeType": "YulIdentifier", + "src": "24911:3:74" + }, + "nativeSrc": "24911:16:74", + "nodeType": "YulFunctionCall", + "src": "24911:16:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "24902:5:74", + "nodeType": "YulIdentifier", + "src": "24902:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "24958:22:74", + "nodeType": "YulBlock", + "src": "24958:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "24960:16:74", + "nodeType": "YulIdentifier", + "src": "24960:16:74" + }, + "nativeSrc": "24960:18:74", + "nodeType": "YulFunctionCall", + "src": "24960:18:74" + }, + "nativeSrc": "24960:18:74", + "nodeType": "YulExpressionStatement", + "src": "24960:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "power", + "nativeSrc": "24946:5:74", + "nodeType": "YulIdentifier", + "src": "24946:5:74" + }, + { + "name": "max", + "nativeSrc": "24953:3:74", + "nodeType": "YulIdentifier", + "src": "24953:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "24943:2:74", + "nodeType": "YulIdentifier", + "src": "24943:2:74" + }, + "nativeSrc": "24943:14:74", + "nodeType": "YulFunctionCall", + "src": "24943:14:74" + }, + "nativeSrc": "24940:40:74", + "nodeType": "YulIf", + "src": "24940:40:74" + }, + { + "nativeSrc": "24993:5:74", + "nodeType": "YulLeave", + "src": "24993:5:74" + } + ] + }, + "nativeSrc": "24817:191:74", + "nodeType": "YulCase", + "src": "24817:191:74", + "value": { + "kind": "number", + "nativeSrc": "24822:1:74", + "nodeType": "YulLiteral", + "src": "24822:1:74", + "type": "", + "value": "2" + } + } + ], + "expression": { + "name": "base", + "nativeSrc": "24738:4:74", + "nodeType": "YulIdentifier", + "src": "24738:4:74" + }, + "nativeSrc": "24731:277:74", + "nodeType": "YulSwitch", + "src": "24731:277:74" + }, + { + "body": { + "nativeSrc": "25140:123:74", + "nodeType": "YulBlock", + "src": "25140:123:74", + "statements": [ + { + "nativeSrc": "25154:28:74", + "nodeType": "YulAssignment", + "src": "25154:28:74", + "value": { + "arguments": [ + { + "name": "base", + "nativeSrc": "25167:4:74", + "nodeType": "YulIdentifier", + "src": "25167:4:74" + }, + { + "name": "exponent", + "nativeSrc": "25173:8:74", + "nodeType": "YulIdentifier", + "src": "25173:8:74" + } + ], + "functionName": { + "name": "exp", + "nativeSrc": "25163:3:74", + "nodeType": "YulIdentifier", + "src": "25163:3:74" + }, + "nativeSrc": "25163:19:74", + "nodeType": "YulFunctionCall", + "src": "25163:19:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "25154:5:74", + "nodeType": "YulIdentifier", + "src": "25154:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "25213:22:74", + "nodeType": "YulBlock", + "src": "25213:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "25215:16:74", + "nodeType": "YulIdentifier", + "src": "25215:16:74" + }, + "nativeSrc": "25215:18:74", + "nodeType": "YulFunctionCall", + "src": "25215:18:74" + }, + "nativeSrc": "25215:18:74", + "nodeType": "YulExpressionStatement", + "src": "25215:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "power", + "nativeSrc": "25201:5:74", + "nodeType": "YulIdentifier", + "src": "25201:5:74" + }, + { + "name": "max", + "nativeSrc": "25208:3:74", + "nodeType": "YulIdentifier", + "src": "25208:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "25198:2:74", + "nodeType": "YulIdentifier", + "src": "25198:2:74" + }, + "nativeSrc": "25198:14:74", + "nodeType": "YulFunctionCall", + "src": "25198:14:74" + }, + "nativeSrc": "25195:40:74", + "nodeType": "YulIf", + "src": "25195:40:74" + }, + { + "nativeSrc": "25248:5:74", + "nodeType": "YulLeave", + "src": "25248:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "base", + "nativeSrc": "25043:4:74", + "nodeType": "YulIdentifier", + "src": "25043:4:74" + }, + { + "kind": "number", + "nativeSrc": "25049:2:74", + "nodeType": "YulLiteral", + "src": "25049:2:74", + "type": "", + "value": "11" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "25040:2:74", + "nodeType": "YulIdentifier", + "src": "25040:2:74" + }, + "nativeSrc": "25040:12:74", + "nodeType": "YulFunctionCall", + "src": "25040:12:74" + }, + { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "25057:8:74", + "nodeType": "YulIdentifier", + "src": "25057:8:74" + }, + { + "kind": "number", + "nativeSrc": "25067:2:74", + "nodeType": "YulLiteral", + "src": "25067:2:74", + "type": "", + "value": "78" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "25054:2:74", + "nodeType": "YulIdentifier", + "src": "25054:2:74" + }, + "nativeSrc": "25054:16:74", + "nodeType": "YulFunctionCall", + "src": "25054:16:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "25036:3:74", + "nodeType": "YulIdentifier", + "src": "25036:3:74" + }, + "nativeSrc": "25036:35:74", + "nodeType": "YulFunctionCall", + "src": "25036:35:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "base", + "nativeSrc": "25092:4:74", + "nodeType": "YulIdentifier", + "src": "25092:4:74" + }, + { + "kind": "number", + "nativeSrc": "25098:3:74", + "nodeType": "YulLiteral", + "src": "25098:3:74", + "type": "", + "value": "307" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "25089:2:74", + "nodeType": "YulIdentifier", + "src": "25089:2:74" + }, + "nativeSrc": "25089:13:74", + "nodeType": "YulFunctionCall", + "src": "25089:13:74" + }, + { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "25107:8:74", + "nodeType": "YulIdentifier", + "src": "25107:8:74" + }, + { + "kind": "number", + "nativeSrc": "25117:2:74", + "nodeType": "YulLiteral", + "src": "25117:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "25104:2:74", + "nodeType": "YulIdentifier", + "src": "25104:2:74" + }, + "nativeSrc": "25104:16:74", + "nodeType": "YulFunctionCall", + "src": "25104:16:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "25085:3:74", + "nodeType": "YulIdentifier", + "src": "25085:3:74" + }, + "nativeSrc": "25085:36:74", + "nodeType": "YulFunctionCall", + "src": "25085:36:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "25020:2:74", + "nodeType": "YulIdentifier", + "src": "25020:2:74" + }, + "nativeSrc": "25020:111:74", + "nodeType": "YulFunctionCall", + "src": "25020:111:74" + }, + "nativeSrc": "25017:246:74", + "nodeType": "YulIf", + "src": "25017:246:74" + }, + { + "nativeSrc": "25273:57:74", + "nodeType": "YulAssignment", + "src": "25273:57:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "25307:1:74", + "nodeType": "YulLiteral", + "src": "25307:1:74", + "type": "", + "value": "1" + }, + { + "name": "base", + "nativeSrc": "25310:4:74", + "nodeType": "YulIdentifier", + "src": "25310:4:74" + }, + { + "name": "exponent", + "nativeSrc": "25316:8:74", + "nodeType": "YulIdentifier", + "src": "25316:8:74" + }, + { + "name": "max", + "nativeSrc": "25326:3:74", + "nodeType": "YulIdentifier", + "src": "25326:3:74" + } + ], + "functionName": { + "name": "checked_exp_helper", + "nativeSrc": "25288:18:74", + "nodeType": "YulIdentifier", + "src": "25288:18:74" + }, + "nativeSrc": "25288:42:74", + "nodeType": "YulFunctionCall", + "src": "25288:42:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "25273:5:74", + "nodeType": "YulIdentifier", + "src": "25273:5:74" + }, + { + "name": "base", + "nativeSrc": "25280:4:74", + "nodeType": "YulIdentifier", + "src": "25280:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "25369:22:74", + "nodeType": "YulBlock", + "src": "25369:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "25371:16:74", + "nodeType": "YulIdentifier", + "src": "25371:16:74" + }, + "nativeSrc": "25371:18:74", + "nodeType": "YulFunctionCall", + "src": "25371:18:74" + }, + "nativeSrc": "25371:18:74", + "nodeType": "YulExpressionStatement", + "src": "25371:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "power", + "nativeSrc": "25346:5:74", + "nodeType": "YulIdentifier", + "src": "25346:5:74" + }, + { + "arguments": [ + { + "name": "max", + "nativeSrc": "25357:3:74", + "nodeType": "YulIdentifier", + "src": "25357:3:74" + }, + { + "name": "base", + "nativeSrc": "25362:4:74", + "nodeType": "YulIdentifier", + "src": "25362:4:74" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "25353:3:74", + "nodeType": "YulIdentifier", + "src": "25353:3:74" + }, + "nativeSrc": "25353:14:74", + "nodeType": "YulFunctionCall", + "src": "25353:14:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "25343:2:74", + "nodeType": "YulIdentifier", + "src": "25343:2:74" + }, + "nativeSrc": "25343:25:74", + "nodeType": "YulFunctionCall", + "src": "25343:25:74" + }, + "nativeSrc": "25340:51:74", + "nodeType": "YulIf", + "src": "25340:51:74" + }, + { + "nativeSrc": "25400:25:74", + "nodeType": "YulAssignment", + "src": "25400:25:74", + "value": { + "arguments": [ + { + "name": "power", + "nativeSrc": "25413:5:74", + "nodeType": "YulIdentifier", + "src": "25413:5:74" + }, + { + "name": "base", + "nativeSrc": "25420:4:74", + "nodeType": "YulIdentifier", + "src": "25420:4:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "25409:3:74", + "nodeType": "YulIdentifier", + "src": "25409:3:74" + }, + "nativeSrc": "25409:16:74", + "nodeType": "YulFunctionCall", + "src": "25409:16:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "25400:5:74", + "nodeType": "YulIdentifier", + "src": "25400:5:74" + } + ] + } + ] + }, + "name": "checked_exp_unsigned", + "nativeSrc": "24358:1073:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "base", + "nativeSrc": "24388:4:74", + "nodeType": "YulTypedName", + "src": "24388:4:74", + "type": "" + }, + { + "name": "exponent", + "nativeSrc": "24394:8:74", + "nodeType": "YulTypedName", + "src": "24394:8:74", + "type": "" + }, + { + "name": "max", + "nativeSrc": "24404:3:74", + "nodeType": "YulTypedName", + "src": "24404:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "power", + "nativeSrc": "24412:5:74", + "nodeType": "YulTypedName", + "src": "24412:5:74", + "type": "" + } + ], + "src": "24358:1073:74" + }, + { + "body": { + "nativeSrc": "25503:219:74", + "nodeType": "YulBlock", + "src": "25503:219:74", + "statements": [ + { + "nativeSrc": "25513:31:74", + "nodeType": "YulAssignment", + "src": "25513:31:74", + "value": { + "arguments": [ + { + "name": "base", + "nativeSrc": "25539:4:74", + "nodeType": "YulIdentifier", + "src": "25539:4:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "25521:17:74", + "nodeType": "YulIdentifier", + "src": "25521:17:74" + }, + "nativeSrc": "25521:23:74", + "nodeType": "YulFunctionCall", + "src": "25521:23:74" + }, + "variableNames": [ + { + "name": "base", + "nativeSrc": "25513:4:74", + "nodeType": "YulIdentifier", + "src": "25513:4:74" + } + ] + }, + { + "nativeSrc": "25553:39:74", + "nodeType": "YulAssignment", + "src": "25553:39:74", + "value": { + "arguments": [ + { + "name": "exponent", + "nativeSrc": "25583:8:74", + "nodeType": "YulIdentifier", + "src": "25583:8:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "25565:17:74", + "nodeType": "YulIdentifier", + "src": "25565:17:74" + }, + "nativeSrc": "25565:27:74", + "nodeType": "YulFunctionCall", + "src": "25565:27:74" + }, + "variableNames": [ + { + "name": "exponent", + "nativeSrc": "25553:8:74", + "nodeType": "YulIdentifier", + "src": "25553:8:74" + } + ] + }, + { + "nativeSrc": "25602:113:74", + "nodeType": "YulAssignment", + "src": "25602:113:74", + "value": { + "arguments": [ + { + "name": "base", + "nativeSrc": "25632:4:74", + "nodeType": "YulIdentifier", + "src": "25632:4:74" + }, + { + "name": "exponent", + "nativeSrc": "25638:8:74", + "nodeType": "YulIdentifier", + "src": "25638:8:74" + }, + { + "kind": "number", + "nativeSrc": "25648:66:74", + "nodeType": "YulLiteral", + "src": "25648:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "checked_exp_unsigned", + "nativeSrc": "25611:20:74", + "nodeType": "YulIdentifier", + "src": "25611:20:74" + }, + "nativeSrc": "25611:104:74", + "nodeType": "YulFunctionCall", + "src": "25611:104:74" + }, + "variableNames": [ + { + "name": "power", + "nativeSrc": "25602:5:74", + "nodeType": "YulIdentifier", + "src": "25602:5:74" + } + ] + } + ] + }, + "name": "checked_exp_t_uint256_t_uint256", + "nativeSrc": "25437:285:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "base", + "nativeSrc": "25478:4:74", + "nodeType": "YulTypedName", + "src": "25478:4:74", + "type": "" + }, + { + "name": "exponent", + "nativeSrc": "25484:8:74", + "nodeType": "YulTypedName", + "src": "25484:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "power", + "nativeSrc": "25497:5:74", + "nodeType": "YulTypedName", + "src": "25497:5:74", + "type": "" + } + ], + "src": "25437:285:74" + }, + { + "body": { + "nativeSrc": "25756:152:74", + "nodeType": "YulBlock", + "src": "25756:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "25773:1:74", + "nodeType": "YulLiteral", + "src": "25773:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "25776:77:74", + "nodeType": "YulLiteral", + "src": "25776:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25766:6:74", + "nodeType": "YulIdentifier", + "src": "25766:6:74" + }, + "nativeSrc": "25766:88:74", + "nodeType": "YulFunctionCall", + "src": "25766:88:74" + }, + "nativeSrc": "25766:88:74", + "nodeType": "YulExpressionStatement", + "src": "25766:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "25870:1:74", + "nodeType": "YulLiteral", + "src": "25870:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "25873:4:74", + "nodeType": "YulLiteral", + "src": "25873:4:74", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25863:6:74", + "nodeType": "YulIdentifier", + "src": "25863:6:74" + }, + "nativeSrc": "25863:15:74", + "nodeType": "YulFunctionCall", + "src": "25863:15:74" + }, + "nativeSrc": "25863:15:74", + "nodeType": "YulExpressionStatement", + "src": "25863:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "25894:1:74", + "nodeType": "YulLiteral", + "src": "25894:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "25897:4:74", + "nodeType": "YulLiteral", + "src": "25897:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "25887:6:74", + "nodeType": "YulIdentifier", + "src": "25887:6:74" + }, + "nativeSrc": "25887:15:74", + "nodeType": "YulFunctionCall", + "src": "25887:15:74" + }, + "nativeSrc": "25887:15:74", + "nodeType": "YulExpressionStatement", + "src": "25887:15:74" + } + ] + }, + "name": "panic_error_0x12", + "nativeSrc": "25728:180:74", + "nodeType": "YulFunctionDefinition", + "src": "25728:180:74" + }, + { + "body": { + "nativeSrc": "25948:142:74", + "nodeType": "YulBlock", + "src": "25948:142:74", + "statements": [ + { + "nativeSrc": "25958:25:74", + "nodeType": "YulAssignment", + "src": "25958:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "25981:1:74", + "nodeType": "YulIdentifier", + "src": "25981:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "25963:17:74", + "nodeType": "YulIdentifier", + "src": "25963:17:74" + }, + "nativeSrc": "25963:20:74", + "nodeType": "YulFunctionCall", + "src": "25963:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "25958:1:74", + "nodeType": "YulIdentifier", + "src": "25958:1:74" + } + ] + }, + { + "nativeSrc": "25992:25:74", + "nodeType": "YulAssignment", + "src": "25992:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "26015:1:74", + "nodeType": "YulIdentifier", + "src": "26015:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "25997:17:74", + "nodeType": "YulIdentifier", + "src": "25997:17:74" + }, + "nativeSrc": "25997:20:74", + "nodeType": "YulFunctionCall", + "src": "25997:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "25992:1:74", + "nodeType": "YulIdentifier", + "src": "25992:1:74" + } + ] + }, + { + "body": { + "nativeSrc": "26039:22:74", + "nodeType": "YulBlock", + "src": "26039:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nativeSrc": "26041:16:74", + "nodeType": "YulIdentifier", + "src": "26041:16:74" + }, + "nativeSrc": "26041:18:74", + "nodeType": "YulFunctionCall", + "src": "26041:18:74" + }, + "nativeSrc": "26041:18:74", + "nodeType": "YulExpressionStatement", + "src": "26041:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nativeSrc": "26036:1:74", + "nodeType": "YulIdentifier", + "src": "26036:1:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "26029:6:74", + "nodeType": "YulIdentifier", + "src": "26029:6:74" + }, + "nativeSrc": "26029:9:74", + "nodeType": "YulFunctionCall", + "src": "26029:9:74" + }, + "nativeSrc": "26026:35:74", + "nodeType": "YulIf", + "src": "26026:35:74" + }, + { + "nativeSrc": "26070:14:74", + "nodeType": "YulAssignment", + "src": "26070:14:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "26079:1:74", + "nodeType": "YulIdentifier", + "src": "26079:1:74" + }, + { + "name": "y", + "nativeSrc": "26082:1:74", + "nodeType": "YulIdentifier", + "src": "26082:1:74" + } + ], + "functionName": { + "name": "mod", + "nativeSrc": "26075:3:74", + "nodeType": "YulIdentifier", + "src": "26075:3:74" + }, + "nativeSrc": "26075:9:74", + "nodeType": "YulFunctionCall", + "src": "26075:9:74" + }, + "variableNames": [ + { + "name": "r", + "nativeSrc": "26070:1:74", + "nodeType": "YulIdentifier", + "src": "26070:1:74" + } + ] + } + ] + }, + "name": "mod_t_uint256", + "nativeSrc": "25914:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "25937:1:74", + "nodeType": "YulTypedName", + "src": "25937:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "25940:1:74", + "nodeType": "YulTypedName", + "src": "25940:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nativeSrc": "25946:1:74", + "nodeType": "YulTypedName", + "src": "25946:1:74", + "type": "" + } + ], + "src": "25914:176:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_library(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_library(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n // struct SparseMerkleProof.Leaf -> struct SparseMerkleProof.Leaf\n function abi_encode_t_struct$_Leaf_$1784_memory_ptr_to_t_struct$_Leaf_$1784_memory_ptr_fromStack_library(value, pos) {\n let tail := add(pos, 0x80)\n\n {\n // prev\n\n let memberValue0 := mload(add(value, 0x00))\n abi_encode_t_uint256_to_t_uint256_library(memberValue0, add(pos, 0x00))\n }\n\n {\n // next\n\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_t_uint256_to_t_uint256_library(memberValue0, add(pos, 0x20))\n }\n\n {\n // hKey\n\n let memberValue0 := mload(add(value, 0x40))\n abi_encode_t_bytes32_to_t_bytes32_library(memberValue0, add(pos, 0x40))\n }\n\n {\n // hValue\n\n let memberValue0 := mload(add(value, 0x60))\n abi_encode_t_bytes32_to_t_bytes32_library(memberValue0, add(pos, 0x60))\n }\n\n }\n\n function abi_encode_tuple_t_struct$_Leaf_$1784_memory_ptr__to_t_struct$_Leaf_$1784_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_struct$_Leaf_$1784_memory_ptr_to_t_struct$_Leaf_$1784_memory_ptr_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function abi_encode_t_uint64_to_t_uint64_library(value, pos) {\n mstore(pos, cleanup_t_uint64(value))\n }\n\n // struct SparseMerkleProof.Account -> struct SparseMerkleProof.Account\n function abi_encode_t_struct$_Account_$1774_memory_ptr_to_t_struct$_Account_$1774_memory_ptr_fromStack_library(value, pos) {\n let tail := add(pos, 0xc0)\n\n {\n // nonce\n\n let memberValue0 := mload(add(value, 0x00))\n abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x00))\n }\n\n {\n // balance\n\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_t_uint256_to_t_uint256_library(memberValue0, add(pos, 0x20))\n }\n\n {\n // storageRoot\n\n let memberValue0 := mload(add(value, 0x40))\n abi_encode_t_bytes32_to_t_bytes32_library(memberValue0, add(pos, 0x40))\n }\n\n {\n // mimcCodeHash\n\n let memberValue0 := mload(add(value, 0x60))\n abi_encode_t_bytes32_to_t_bytes32_library(memberValue0, add(pos, 0x60))\n }\n\n {\n // keccakCodeHash\n\n let memberValue0 := mload(add(value, 0x80))\n abi_encode_t_bytes32_to_t_bytes32_library(memberValue0, add(pos, 0x80))\n }\n\n {\n // codeSize\n\n let memberValue0 := mload(add(value, 0xa0))\n abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n }\n\n }\n\n function abi_encode_tuple_t_struct$_Account_$1774_memory_ptr__to_t_struct$_Account_$1774_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 192)\n\n abi_encode_t_struct$_Account_$1774_memory_ptr_to_t_struct$_Account_$1774_memory_ptr_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value0, add(headStart, 0))\n\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x20)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptrt_uint256t_bytes32(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint64(value))\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__to_t_uint64_t_uint256_t_bytes32_t_bytes32_t_bytes32_t_bytes32_t_uint64__fromStack_reversed(headStart , value6, value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 224)\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value4, add(headStart, 128))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value5, add(headStart, 160))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value6, add(headStart, 192))\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, tail)\n\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, value1, tail)\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function cleanup_t_rational_128_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_rational_128_by_1_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_rational_128_by_1(value)))\n }\n\n function abi_encode_t_rational_128_by_1_to_t_uint256_fromStack(value, pos) {\n mstore(pos, convert_t_rational_128_by_1_to_t_uint256(value))\n }\n\n function abi_encode_tuple_t_rational_128_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_rational_128_by_1_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n revert(0, 0)\n }\n\n // struct SparseMerkleProof.Leaf\n function abi_decode_t_struct$_Leaf_$1784_memory_ptr(headStart, end) -> value {\n if slt(sub(end, headStart), 0x80) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0x80)\n\n {\n // prev\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_uint256(add(headStart, offset), end))\n\n }\n\n {\n // next\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256(add(headStart, offset), end))\n\n }\n\n {\n // hKey\n\n let offset := 64\n\n mstore(add(value, 0x40), abi_decode_t_bytes32(add(headStart, offset), end))\n\n }\n\n {\n // hValue\n\n let offset := 96\n\n mstore(add(value, 0x60), abi_decode_t_bytes32(add(headStart, offset), end))\n\n }\n\n }\n\n function abi_decode_tuple_t_struct$_Leaf_$1784_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_struct$_Leaf_$1784_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_rational_192_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_rational_192_by_1_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_rational_192_by_1(value)))\n }\n\n function abi_encode_t_rational_192_by_1_to_t_uint256_fromStack(value, pos) {\n mstore(pos, convert_t_rational_192_by_1_to_t_uint256(value))\n }\n\n function abi_encode_tuple_t_rational_192_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_rational_192_by_1_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function validator_revert_t_uint64(value) {\n if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint64(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint64(value)\n }\n\n // struct SparseMerkleProof.Account\n function abi_decode_t_struct$_Account_$1774_memory_ptr(headStart, end) -> value {\n if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n value := allocate_memory(0xc0)\n\n {\n // nonce\n\n let offset := 0\n\n mstore(add(value, 0x00), abi_decode_t_uint64(add(headStart, offset), end))\n\n }\n\n {\n // balance\n\n let offset := 32\n\n mstore(add(value, 0x20), abi_decode_t_uint256(add(headStart, offset), end))\n\n }\n\n {\n // storageRoot\n\n let offset := 64\n\n mstore(add(value, 0x40), abi_decode_t_bytes32(add(headStart, offset), end))\n\n }\n\n {\n // mimcCodeHash\n\n let offset := 96\n\n mstore(add(value, 0x60), abi_decode_t_bytes32(add(headStart, offset), end))\n\n }\n\n {\n // keccakCodeHash\n\n let offset := 128\n\n mstore(add(value, 0x80), abi_decode_t_bytes32(add(headStart, offset), end))\n\n }\n\n {\n // codeSize\n\n let offset := 160\n\n mstore(add(value, 0xa0), abi_decode_t_uint64(add(headStart, offset), end))\n\n }\n\n }\n\n function abi_decode_tuple_t_struct$_Account_$1774_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 192) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_struct$_Account_$1774_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n diff := sub(x, y)\n\n if gt(diff, x) { panic_error_0x11() }\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad() {\n revert(0, 0)\n }\n\n function revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a() {\n revert(0, 0)\n }\n\n function revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e() {\n revert(0, 0)\n }\n\n function access_calldata_tail_t_bytes_calldata_ptr(base_ref, ptr_to_tail) -> addr, length {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, sub(sub(calldatasize(), base_ref), sub(0x20, 1)))) { revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad() }\n addr := add(base_ref, rel_offset_of_tail)\n\n length := calldataload(addr)\n if gt(length, 0xffffffffffffffff) { revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a() }\n addr := add(addr, 32)\n if sgt(addr, sub(calldatasize(), mul(length, 0x01))) { revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e() }\n\n }\n\n function cleanup_t_rational_64_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_rational_64_by_1_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_rational_64_by_1(value)))\n }\n\n function abi_encode_t_rational_64_by_1_to_t_uint256_fromStack(value, pos) {\n mstore(pos, convert_t_rational_64_by_1_to_t_uint256(value))\n }\n\n function abi_encode_tuple_t_rational_64_by_1_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_rational_64_by_1_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() {\n revert(0, 0)\n }\n\n function revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() {\n revert(0, 0)\n }\n\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut {\n if gt(startIndex, endIndex) { revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() }\n if gt(endIndex, length) { revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() }\n offsetOut := add(offset, mul(startIndex, 1))\n lengthOut := sub(endIndex, startIndex)\n }\n\n function array_length_t_bytes_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function array_dataslot_t_bytes_calldata_ptr(ptr) -> data {\n data := ptr\n\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32(array, len) -> value {\n\n let length := array_length_t_bytes_calldata_ptr(array, len)\n let dataArea := array\n\n value := cleanup_t_bytes32(calldataload(dataArea))\n\n if lt(length, 32) {\n value := and(\n value,\n shift_left_dynamic(\n mul(8, sub(32, length)),\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n )\n )\n }\n\n }\n\n function shift_right_1_unsigned(value) -> newValue {\n newValue :=\n\n shr(1, value)\n\n }\n\n function checked_exp_helper(_power, _base, exponent, max) -> power, base {\n power := _power\n base := _base\n for { } gt(exponent, 1) {}\n {\n // overflow check for base * base\n if gt(base, div(max, base)) { panic_error_0x11() }\n if and(exponent, 1)\n {\n // No checks for power := mul(power, base) needed, because the check\n // for base * base above is sufficient, since:\n // |power| <= base (proof by induction) and thus:\n // |power * base| <= base * base <= max <= |min| (for signed)\n // (this is equally true for signed and unsigned exp)\n power := mul(power, base)\n }\n base := mul(base, base)\n exponent := shift_right_1_unsigned(exponent)\n }\n }\n\n function checked_exp_unsigned(base, exponent, max) -> power {\n // This function currently cannot be inlined because of the\n // \"leave\" statements. We have to improve the optimizer.\n\n // Note that 0**0 == 1\n if iszero(exponent) { power := 1 leave }\n if iszero(base) { power := 0 leave }\n\n // Specializations for small bases\n switch base\n // 0 is handled above\n case 1 { power := 1 leave }\n case 2\n {\n if gt(exponent, 255) { panic_error_0x11() }\n power := exp(2, exponent)\n if gt(power, max) { panic_error_0x11() }\n leave\n }\n if or(\n and(lt(base, 11), lt(exponent, 78)),\n and(lt(base, 307), lt(exponent, 32))\n )\n {\n power := exp(base, exponent)\n if gt(power, max) { panic_error_0x11() }\n leave\n }\n\n power, base := checked_exp_helper(1, base, exponent, max)\n\n if gt(power, div(max, base)) { panic_error_0x11() }\n power := mul(power, base)\n }\n\n function checked_exp_t_uint256_t_uint256(base, exponent) -> power {\n base := cleanup_t_uint256(base)\n exponent := cleanup_t_uint256(exponent)\n\n power := checked_exp_unsigned(base, exponent, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function mod_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": { + "@consensys/linea-state-verifier/contracts/lib/Mimc.sol": { + "Mimc": [ + { + "length": 20, + "start": 490 + }, + { + "length": 20, + "start": 686 + }, + { + "length": 20, + "start": 961 + }, + { + "length": 20, + "start": 1706 + }, + { + "length": 20, + "start": 1892 + }, + { + "length": 20, + "start": 2194 + }, + { + "length": 20, + "start": 2524 + }, + { + "length": 20, + "start": 2710 + }, + { + "length": 20, + "start": 2905 + } + ] + } + }, + "object": "730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80635ea5a98f1461007157806360f0f00f146100a15780638c628e40146100d1578063b893e57914610101578063cc5c21ea14610131578063ceeef50414610161575b600080fd5b61008b60048036038101906100869190610d7c565b610191565b6040516100989190610e50565b60405180910390f35b6100bb60048036038101906100b69190610d7c565b6101ab565b6040516100c89190610f09565b60405180910390f35b6100eb60048036038101906100e69190610d7c565b6101c5565b6040516100f89190610f33565b60405180910390f35b61011b60048036038101906101169190610d7c565b6102aa565b6040516101289190610f33565b60405180910390f35b61014b60048036038101906101469190610ffc565b61032e565b604051610158919061108b565b60405180910390f35b61017b600480360381019061017691906110a6565b6103ad565b6040516101889190610f33565b60405180910390f35b610199610c82565b6101a38383610461565b905092915050565b6101b3610cb0565b6101bd83836104ce565b905092915050565b6000806101d284846104ce565b90506000806101e4836080015161053b565b9150915073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de846000015185602001518660400151876060015186888a60a001516040516020016102339796959493929190611100565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161025e91906111ff565b602060405180830381865af415801561027b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029f9190611236565b935050505092915050565b600073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de84846040518363ffffffff1660e01b81526004016102e592919061129f565b602060405180830381865af4158015610302573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103269190611236565b905092915050565b6000602a858590501461037e57602a858590506040517fe2d2ab0a0000000000000000000000000000000000000000000000000000000081526004016103759291906112c3565b60405180910390fd5b600080600061038d888861055e565b9250925092506103a08183888887610963565b9350505050949350505050565b60008060006103bb8461053b565b9150915073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de82846040516020016103ec92919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161041791906111ff565b602060405180830381865af4158015610434573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104589190611236565b92505050919050565b610469610c82565b608083839050146104b7576080838390506040517f7b45159f0000000000000000000000000000000000000000000000000000000081526004016104ae92919061137e565b60405180910390fd5b82828101906104c6919061149f565b905092915050565b6104d6610cb0565b60c083839050146105245760c0838390506040517f7b45159f00000000000000000000000000000000000000000000000000000000815260040161051b929190611507565b60405180910390fd5b828281019061053391906115fc565b905092915050565b6000808260801c91506fffffffffffffffffffffffffffffffff83169050915091565b60008060606000858590509050600060028261057a9190611658565b905060008167ffffffffffffffff811115610598576105976113ac565b5b6040519080825280602002602001820160405280156105c65781602001602082028036833780820191505090505b5090506040888860008181106105df576105de61168c565b5b90506020028101906105f191906116ca565b90501461065f5760408888600081811061060e5761060d61168c565b5b905060200281019061062091906116ca565b90506040517f7b45159f000000000000000000000000000000000000000000000000000000008152600401610656929190611768565b60405180910390fd5b6000888860008181106106755761067461168c565b5b905060200281019061068791906116ca565b6000906020926106999392919061179b565b906106a491906117ee565b9050600073__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8b8b6001896106d19190611658565b8181106106e1576106e061168c565b5b90506020028101906106f391906116ca565b6040518363ffffffff1660e01b815260040161071092919061129f565b602060405180830381865af415801561072d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107519190611236565b90506000600190505b848110156108345773__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8c8c8481811061078f5761078e61168c565b5b90506020028101906107a191906116ca565b6040518363ffffffff1660e01b81526004016107be92919061129f565b602060405180830381865af41580156107db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ff9190611236565b84828761080c9190611658565b8151811061081d5761081c61168c565b5b60200260200101818152505080600101905061075a565b506108628a8a8681811061084b5761084a61168c565b5b905060200281019061085d91906116ca565b610bfe565b15610890576000801b8360008151811061087f5761087e61168c565b5b60200260200101818152505061094e565b73__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8b8b878181106108bd576108bc61168c565b5b90506020028101906108cf91906116ca565b6040518363ffffffff1660e01b81526004016108ec92919061129f565b602060405180830381865af4158015610909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092d9190611236565b836000815181106109415761094061168c565b5b6020026020010181815250505b81818497509750975050505050509250925092565b600080859050600085905060016028600261097e9190611980565b6109889190611658565b8611156109c1576040517f382f093000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b6028811015610b55576001808284901c1603610a945773__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8a8381518110610a0757610a0661168c565b5b602002602001015185604051602001610a2192919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610a4c91906111ff565b602060405180830381865af4158015610a69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8d9190611236565b9250610b4a565b73__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de848b8481518110610ac257610ac161168c565b5b6020026020010151604051602001610adb92919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610b0691906111ff565b602060405180830381865af4158015610b23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b479190611236565b92505b8060010190506109c4565b508473__$caad386d6b64b8cf1e7ee71a6a4308c123$__63aa1e84de8685604051602001610b8492919061130d565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610baf91906111ff565b602060405180830381865af4158015610bcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf09190611236565b149250505095945050505050565b600080602084849050610c1191906119fa565b14610c48576040517fe61963f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001905082805b838201811015610c7a5780356000811503610c6e576000935050610c7a565b50602081019050610c4f565b505092915050565b6040518060800160405280600081526020016000815260200160008019168152602001600080191681525090565b6040518060c00160405280600067ffffffffffffffff16815260200160008152602001600080191681526020016000801916815260200160008019168152602001600067ffffffffffffffff1681525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610d3c57610d3b610d17565b5b8235905067ffffffffffffffff811115610d5957610d58610d1c565b5b602083019150836001820283011115610d7557610d74610d21565b5b9250929050565b60008060208385031215610d9357610d92610d0d565b5b600083013567ffffffffffffffff811115610db157610db0610d12565b5b610dbd85828601610d26565b92509250509250929050565b6000819050919050565b610ddc81610dc9565b82525050565b6000819050919050565b610df581610de2565b82525050565b608082016000820151610e116000850182610dd3565b506020820151610e246020850182610dd3565b506040820151610e376040850182610dec565b506060820151610e4a6060850182610dec565b50505050565b6000608082019050610e656000830184610dfb565b92915050565b600067ffffffffffffffff82169050919050565b610e8881610e6b565b82525050565b60c082016000820151610ea46000850182610e7f565b506020820151610eb76020850182610dd3565b506040820151610eca6040850182610dec565b506060820151610edd6060850182610dec565b506080820151610ef06080850182610dec565b5060a0820151610f0360a0850182610e7f565b50505050565b600060c082019050610f1e6000830184610e8e565b92915050565b610f2d81610de2565b82525050565b6000602082019050610f486000830184610f24565b92915050565b60008083601f840112610f6457610f63610d17565b5b8235905067ffffffffffffffff811115610f8157610f80610d1c565b5b602083019150836020820283011115610f9d57610f9c610d21565b5b9250929050565b610fad81610dc9565b8114610fb857600080fd5b50565b600081359050610fca81610fa4565b92915050565b610fd981610de2565b8114610fe457600080fd5b50565b600081359050610ff681610fd0565b92915050565b6000806000806060858703121561101657611015610d0d565b5b600085013567ffffffffffffffff81111561103457611033610d12565b5b61104087828801610f4e565b9450945050602061105387828801610fbb565b925050604061106487828801610fe7565b91505092959194509250565b60008115159050919050565b61108581611070565b82525050565b60006020820190506110a0600083018461107c565b92915050565b6000602082840312156110bc576110bb610d0d565b5b60006110ca84828501610fe7565b91505092915050565b6110dc81610e6b565b82525050565b6110eb81610dc9565b82525050565b6110fa81610de2565b82525050565b600060e082019050611115600083018a6110d3565b61112260208301896110e2565b61112f60408301886110f1565b61113c60608301876110f1565b61114960808301866110f1565b61115660a08301856110f1565b61116360c08301846110d3565b98975050505050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111a957808201518184015260208101905061118e565b60008484015250505050565b6000601f19601f8301169050919050565b60006111d18261116f565b6111db818561117a565b93506111eb81856020860161118b565b6111f4816111b5565b840191505092915050565b6000602082019050818103600083015261121981846111c6565b905092915050565b60008151905061123081610fd0565b92915050565b60006020828403121561124c5761124b610d0d565b5b600061125a84828501611221565b91505092915050565b82818337600083830152505050565b600061127e838561117a565b935061128b838584611263565b611294836111b5565b840190509392505050565b600060208201905081810360008301526112ba818486611272565b90509392505050565b60006040820190506112d860008301856110e2565b6112e560208301846110e2565b9392505050565b6000819050919050565b61130761130282610de2565b6112ec565b82525050565b600061131982856112f6565b60208201915061132982846112f6565b6020820191508190509392505050565b6000819050919050565b6000819050919050565b600061136861136361135e84611339565b611343565b610dc9565b9050919050565b6113788161134d565b82525050565b6000604082019050611393600083018561136f565b6113a060208301846110e2565b9392505050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6113e4826111b5565b810181811067ffffffffffffffff82111715611403576114026113ac565b5b80604052505050565b6000611416610d03565b905061142282826113db565b919050565b60006080828403121561143d5761143c6113a7565b5b611447608061140c565b9050600061145784828501610fbb565b600083015250602061146b84828501610fbb565b602083015250604061147f84828501610fe7565b604083015250606061149384828501610fe7565b60608301525092915050565b6000608082840312156114b5576114b4610d0d565b5b60006114c384828501611427565b91505092915050565b6000819050919050565b60006114f16114ec6114e7846114cc565b611343565b610dc9565b9050919050565b611501816114d6565b82525050565b600060408201905061151c60008301856114f8565b61152960208301846110e2565b9392505050565b61153981610e6b565b811461154457600080fd5b50565b60008135905061155681611530565b92915050565b600060c08284031215611572576115716113a7565b5b61157c60c061140c565b9050600061158c84828501611547565b60008301525060206115a084828501610fbb565b60208301525060406115b484828501610fe7565b60408301525060606115c884828501610fe7565b60608301525060806115dc84828501610fe7565b60808301525060a06115f084828501611547565b60a08301525092915050565b600060c0828403121561161257611611610d0d565b5b60006116208482850161155c565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061166382610dc9565b915061166e83610dc9565b925082820390508181111561168657611685611629565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126116e7576116e66116bb565b5b80840192508235915067ffffffffffffffff821115611709576117086116c0565b5b602083019250600182023603831315611725576117246116c5565b5b509250929050565b6000819050919050565b600061175261174d6117488461172d565b611343565b610dc9565b9050919050565b61176281611737565b82525050565b600060408201905061177d6000830185611759565b61178a60208301846110e2565b9392505050565b600080fd5b600080fd5b600080858511156117af576117ae611791565b5b838611156117c0576117bf611796565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b60006117fa83836117d6565b826118058135610de2565b92506020821015611845576118407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026117e1565b831692505b505092915050565b60008160011c9050919050565b6000808291508390505b60018511156118a4578086048111156118805761187f611629565b5b600185161561188f5780820291505b808102905061189d8561184d565b9450611864565b94509492505050565b6000826118bd5760019050611979565b816118cb5760009050611979565b81600181146118e157600281146118eb5761191a565b6001915050611979565b60ff8411156118fd576118fc611629565b5b8360020a91508482111561191457611913611629565b5b50611979565b5060208310610133831016604e8410600b841016171561194f5782820a90508381111561194a57611949611629565b5b611979565b61195c848484600161185a565b9250905081840481111561197357611972611629565b5b81810290505b9392505050565b600061198b82610dc9565b915061199683610dc9565b92506119c37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846118ad565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611a0582610dc9565b9150611a1083610dc9565b925082611a2057611a1f6119cb565b5b82820690509291505056fea26469706673582212201ad8833fcef5ec3ba5742b7c244b9c0029cb66362c037d239b6f986bc0df920964736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x6C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5EA5A98F EQ PUSH2 0x71 JUMPI DUP1 PUSH4 0x60F0F00F EQ PUSH2 0xA1 JUMPI DUP1 PUSH4 0x8C628E40 EQ PUSH2 0xD1 JUMPI DUP1 PUSH4 0xB893E579 EQ PUSH2 0x101 JUMPI DUP1 PUSH4 0xCC5C21EA EQ PUSH2 0x131 JUMPI DUP1 PUSH4 0xCEEEF504 EQ PUSH2 0x161 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x8B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x86 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x98 SWAP2 SWAP1 PUSH2 0xE50 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xBB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB6 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x1AB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC8 SWAP2 SWAP1 PUSH2 0xF09 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xEB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE6 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xF8 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x11B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x116 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x2AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x128 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x146 SWAP2 SWAP1 PUSH2 0xFFC JUMP JUMPDEST PUSH2 0x32E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x158 SWAP2 SWAP1 PUSH2 0x108B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x176 SWAP2 SWAP1 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x3AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0xF33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0xC82 JUMP JUMPDEST PUSH2 0x1A3 DUP4 DUP4 PUSH2 0x461 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1B3 PUSH2 0xCB0 JUMP JUMPDEST PUSH2 0x1BD DUP4 DUP4 PUSH2 0x4CE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1D2 DUP5 DUP5 PUSH2 0x4CE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x1E4 DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x53B JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x20 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD DUP8 PUSH1 0x60 ADD MLOAD DUP7 DUP9 DUP11 PUSH1 0xA0 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x233 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25E SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x27B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x29F SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5 SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x302 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x326 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2A DUP6 DUP6 SWAP1 POP EQ PUSH2 0x37E JUMPI PUSH1 0x2A DUP6 DUP6 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0xE2D2AB0A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x375 SWAP3 SWAP2 SWAP1 PUSH2 0x12C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x38D DUP9 DUP9 PUSH2 0x55E JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x3A0 DUP2 DUP4 DUP9 DUP9 DUP8 PUSH2 0x963 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3BB DUP5 PUSH2 0x53B JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH20 0x0 PUSH4 0xAA1E84DE DUP3 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x3EC SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x417 SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x434 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x458 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x469 PUSH2 0xC82 JUMP JUMPDEST PUSH1 0x80 DUP4 DUP4 SWAP1 POP EQ PUSH2 0x4B7 JUMPI PUSH1 0x80 DUP4 DUP4 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4AE SWAP3 SWAP2 SWAP1 PUSH2 0x137E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP3 DUP2 ADD SWAP1 PUSH2 0x4C6 SWAP2 SWAP1 PUSH2 0x149F JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4D6 PUSH2 0xCB0 JUMP JUMPDEST PUSH1 0xC0 DUP4 DUP4 SWAP1 POP EQ PUSH2 0x524 JUMPI PUSH1 0xC0 DUP4 DUP4 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP3 SWAP2 SWAP1 PUSH2 0x1507 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP3 DUP2 ADD SWAP1 PUSH2 0x533 SWAP2 SWAP1 PUSH2 0x15FC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x80 SHR SWAP2 POP PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND SWAP1 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x60 PUSH1 0x0 DUP6 DUP6 SWAP1 POP SWAP1 POP PUSH1 0x0 PUSH1 0x2 DUP3 PUSH2 0x57A SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x598 JUMPI PUSH2 0x597 PUSH2 0x13AC JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5C6 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x40 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x5DF JUMPI PUSH2 0x5DE PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x5F1 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x65F JUMPI PUSH1 0x40 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x60E JUMPI PUSH2 0x60D PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x620 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x7B45159F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x656 SWAP3 SWAP2 SWAP1 PUSH2 0x1768 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP9 DUP9 PUSH1 0x0 DUP2 DUP2 LT PUSH2 0x675 JUMPI PUSH2 0x674 PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x687 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x0 SWAP1 PUSH1 0x20 SWAP3 PUSH2 0x699 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x179B JUMP JUMPDEST SWAP1 PUSH2 0x6A4 SWAP2 SWAP1 PUSH2 0x17EE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0x0 PUSH4 0xAA1E84DE DUP12 DUP12 PUSH1 0x1 DUP10 PUSH2 0x6D1 SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP2 DUP2 LT PUSH2 0x6E1 JUMPI PUSH2 0x6E0 PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x6F3 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x710 SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x72D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x751 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP5 DUP2 LT ISZERO PUSH2 0x834 JUMPI PUSH20 0x0 PUSH4 0xAA1E84DE DUP13 DUP13 DUP5 DUP2 DUP2 LT PUSH2 0x78F JUMPI PUSH2 0x78E PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x7A1 SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7BE SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x7DB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7FF SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST DUP5 DUP3 DUP8 PUSH2 0x80C SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x81D JUMPI PUSH2 0x81C PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x75A JUMP JUMPDEST POP PUSH2 0x862 DUP11 DUP11 DUP7 DUP2 DUP2 LT PUSH2 0x84B JUMPI PUSH2 0x84A PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x85D SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH2 0xBFE JUMP JUMPDEST ISZERO PUSH2 0x890 JUMPI PUSH1 0x0 DUP1 SHL DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x87F JUMPI PUSH2 0x87E PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x94E JUMP JUMPDEST PUSH20 0x0 PUSH4 0xAA1E84DE DUP12 DUP12 DUP8 DUP2 DUP2 LT PUSH2 0x8BD JUMPI PUSH2 0x8BC PUSH2 0x168C JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8EC SWAP3 SWAP2 SWAP1 PUSH2 0x129F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x909 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x92D SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x941 JUMPI PUSH2 0x940 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP JUMPDEST DUP2 DUP2 DUP5 SWAP8 POP SWAP8 POP SWAP8 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 SWAP1 POP PUSH1 0x0 DUP6 SWAP1 POP PUSH1 0x1 PUSH1 0x28 PUSH1 0x2 PUSH2 0x97E SWAP2 SWAP1 PUSH2 0x1980 JUMP JUMPDEST PUSH2 0x988 SWAP2 SWAP1 PUSH2 0x1658 JUMP JUMPDEST DUP7 GT ISZERO PUSH2 0x9C1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x382F093000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x28 DUP2 LT ISZERO PUSH2 0xB55 JUMPI PUSH1 0x1 DUP1 DUP3 DUP5 SWAP1 SHR AND SUB PUSH2 0xA94 JUMPI PUSH20 0x0 PUSH4 0xAA1E84DE DUP11 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0xA07 JUMPI PUSH2 0xA06 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA21 SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA4C SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xA69 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA8D SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP PUSH2 0xB4A JUMP JUMPDEST PUSH20 0x0 PUSH4 0xAA1E84DE DUP5 DUP12 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0xAC2 JUMPI PUSH2 0xAC1 PUSH2 0x168C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xADB SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB06 SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xB23 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xB47 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST SWAP3 POP JUMPDEST DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x9C4 JUMP JUMPDEST POP DUP5 PUSH20 0x0 PUSH4 0xAA1E84DE DUP7 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB84 SWAP3 SWAP2 SWAP1 PUSH2 0x130D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBAF SWAP2 SWAP1 PUSH2 0x11FF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xBCC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBF0 SWAP2 SWAP1 PUSH2 0x1236 JUMP JUMPDEST EQ SWAP3 POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP5 DUP5 SWAP1 POP PUSH2 0xC11 SWAP2 SWAP1 PUSH2 0x19FA JUMP JUMPDEST EQ PUSH2 0xC48 JUMPI PUSH1 0x40 MLOAD PUSH32 0xE61963F400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 SWAP1 POP DUP3 DUP1 JUMPDEST DUP4 DUP3 ADD DUP2 LT ISZERO PUSH2 0xC7A JUMPI DUP1 CALLDATALOAD PUSH1 0x0 DUP2 ISZERO SUB PUSH2 0xC6E JUMPI PUSH1 0x0 SWAP4 POP POP PUSH2 0xC7A JUMP JUMPDEST POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xC4F JUMP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD3C JUMPI PUSH2 0xD3B PUSH2 0xD17 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD59 JUMPI PUSH2 0xD58 PUSH2 0xD1C JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0xD75 JUMPI PUSH2 0xD74 PUSH2 0xD21 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xD93 JUMPI PUSH2 0xD92 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xDB1 JUMPI PUSH2 0xDB0 PUSH2 0xD12 JUMP JUMPDEST JUMPDEST PUSH2 0xDBD DUP6 DUP3 DUP7 ADD PUSH2 0xD26 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDDC DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDF5 DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x80 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0xE11 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0xE24 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0xE37 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xE4A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0xE65 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xDFB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE88 DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0xC0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0xEA4 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0xE7F JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0xEB7 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0xDD3 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0xECA PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xEDD PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0xEF0 PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0xDEC JUMP JUMPDEST POP PUSH1 0xA0 DUP3 ADD MLOAD PUSH2 0xF03 PUSH1 0xA0 DUP6 ADD DUP3 PUSH2 0xE7F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0xF1E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xE8E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xF2D DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xF48 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xF24 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xF64 JUMPI PUSH2 0xF63 PUSH2 0xD17 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xF81 JUMPI PUSH2 0xF80 PUSH2 0xD1C JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0xF9D JUMPI PUSH2 0xF9C PUSH2 0xD21 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0xFAD DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP2 EQ PUSH2 0xFB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFCA DUP2 PUSH2 0xFA4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xFD9 DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP2 EQ PUSH2 0xFE4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF6 DUP2 PUSH2 0xFD0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1016 JUMPI PUSH2 0x1015 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1034 JUMPI PUSH2 0x1033 PUSH2 0xD12 JUMP JUMPDEST JUMPDEST PUSH2 0x1040 DUP8 DUP3 DUP9 ADD PUSH2 0xF4E JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 PUSH2 0x1053 DUP8 DUP3 DUP9 ADD PUSH2 0xFBB JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x1064 DUP8 DUP3 DUP9 ADD PUSH2 0xFE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1085 DUP2 PUSH2 0x1070 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x10A0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x107C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10BC JUMPI PUSH2 0x10BB PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x10CA DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x10DC DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x10EB DUP2 PUSH2 0xDC9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x10FA DUP2 PUSH2 0xDE2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x1115 PUSH1 0x0 DUP4 ADD DUP11 PUSH2 0x10D3 JUMP JUMPDEST PUSH2 0x1122 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x10E2 JUMP JUMPDEST PUSH2 0x112F PUSH1 0x40 DUP4 ADD DUP9 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x113C PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1149 PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1156 PUSH1 0xA0 DUP4 ADD DUP6 PUSH2 0x10F1 JUMP JUMPDEST PUSH2 0x1163 PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x10D3 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x11A9 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x118E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11D1 DUP3 PUSH2 0x116F JUMP JUMPDEST PUSH2 0x11DB DUP2 DUP6 PUSH2 0x117A JUMP JUMPDEST SWAP4 POP PUSH2 0x11EB DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x118B JUMP JUMPDEST PUSH2 0x11F4 DUP2 PUSH2 0x11B5 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1219 DUP2 DUP5 PUSH2 0x11C6 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1230 DUP2 PUSH2 0xFD0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x124C JUMPI PUSH2 0x124B PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x125A DUP5 DUP3 DUP6 ADD PUSH2 0x1221 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x127E DUP4 DUP6 PUSH2 0x117A JUMP JUMPDEST SWAP4 POP PUSH2 0x128B DUP4 DUP6 DUP5 PUSH2 0x1263 JUMP JUMPDEST PUSH2 0x1294 DUP4 PUSH2 0x11B5 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x12BA DUP2 DUP5 DUP7 PUSH2 0x1272 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12D8 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x10E2 JUMP JUMPDEST PUSH2 0x12E5 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1307 PUSH2 0x1302 DUP3 PUSH2 0xDE2 JUMP JUMPDEST PUSH2 0x12EC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1319 DUP3 DUP6 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1329 DUP3 DUP5 PUSH2 0x12F6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1368 PUSH2 0x1363 PUSH2 0x135E DUP5 PUSH2 0x1339 JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1378 DUP2 PUSH2 0x134D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1393 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x136F JUMP JUMPDEST PUSH2 0x13A0 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x13E4 DUP3 PUSH2 0x11B5 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1403 JUMPI PUSH2 0x1402 PUSH2 0x13AC JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1416 PUSH2 0xD03 JUMP JUMPDEST SWAP1 POP PUSH2 0x1422 DUP3 DUP3 PUSH2 0x13DB JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x143D JUMPI PUSH2 0x143C PUSH2 0x13A7 JUMP JUMPDEST JUMPDEST PUSH2 0x1447 PUSH1 0x80 PUSH2 0x140C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1457 DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x146B DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x147F DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1493 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x14B5 JUMPI PUSH2 0x14B4 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x14C3 DUP5 DUP3 DUP6 ADD PUSH2 0x1427 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14F1 PUSH2 0x14EC PUSH2 0x14E7 DUP5 PUSH2 0x14CC JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1501 DUP2 PUSH2 0x14D6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x151C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x14F8 JUMP JUMPDEST PUSH2 0x1529 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x1539 DUP2 PUSH2 0xE6B JUMP JUMPDEST DUP2 EQ PUSH2 0x1544 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1556 DUP2 PUSH2 0x1530 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1572 JUMPI PUSH2 0x1571 PUSH2 0x13A7 JUMP JUMPDEST JUMPDEST PUSH2 0x157C PUSH1 0xC0 PUSH2 0x140C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x158C DUP5 DUP3 DUP6 ADD PUSH2 0x1547 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x15A0 DUP5 DUP3 DUP6 ADD PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x15B4 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x15C8 DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x15DC DUP5 DUP3 DUP6 ADD PUSH2 0xFE7 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x15F0 DUP5 DUP3 DUP6 ADD PUSH2 0x1547 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1612 JUMPI PUSH2 0x1611 PUSH2 0xD0D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1620 DUP5 DUP3 DUP6 ADD PUSH2 0x155C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1663 DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x166E DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x1686 JUMPI PUSH2 0x1685 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1 PUSH1 0x20 SUB DUP5 CALLDATASIZE SUB SUB DUP2 SLT PUSH2 0x16E7 JUMPI PUSH2 0x16E6 PUSH2 0x16BB JUMP JUMPDEST JUMPDEST DUP1 DUP5 ADD SWAP3 POP DUP3 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1709 JUMPI PUSH2 0x1708 PUSH2 0x16C0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP3 POP PUSH1 0x1 DUP3 MUL CALLDATASIZE SUB DUP4 SGT ISZERO PUSH2 0x1725 JUMPI PUSH2 0x1724 PUSH2 0x16C5 JUMP JUMPDEST JUMPDEST POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1752 PUSH2 0x174D PUSH2 0x1748 DUP5 PUSH2 0x172D JUMP JUMPDEST PUSH2 0x1343 JUMP JUMPDEST PUSH2 0xDC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1762 DUP2 PUSH2 0x1737 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x177D PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1759 JUMP JUMPDEST PUSH2 0x178A PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x10E2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x17AF JUMPI PUSH2 0x17AE PUSH2 0x1791 JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x17C0 JUMPI PUSH2 0x17BF PUSH2 0x1796 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17FA DUP4 DUP4 PUSH2 0x17D6 JUMP JUMPDEST DUP3 PUSH2 0x1805 DUP2 CALLDATALOAD PUSH2 0xDE2 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x1845 JUMPI PUSH2 0x1840 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x17E1 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x18A4 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x1880 JUMPI PUSH2 0x187F PUSH2 0x1629 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x188F JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x189D DUP6 PUSH2 0x184D JUMP JUMPDEST SWAP5 POP PUSH2 0x1864 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x18BD JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x1979 JUMP JUMPDEST DUP2 PUSH2 0x18CB JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x1979 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x18E1 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x18EB JUMPI PUSH2 0x191A JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x1979 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x18FD JUMPI PUSH2 0x18FC PUSH2 0x1629 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x1914 JUMPI PUSH2 0x1913 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST POP PUSH2 0x1979 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x194F JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x194A JUMPI PUSH2 0x1949 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST PUSH2 0x1979 JUMP JUMPDEST PUSH2 0x195C DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x185A JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x1973 JUMPI PUSH2 0x1972 PUSH2 0x1629 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x198B DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x1996 DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP PUSH2 0x19C3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x18AD JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1A05 DUP3 PUSH2 0xDC9 JUMP JUMPDEST SWAP2 POP PUSH2 0x1A10 DUP4 PUSH2 0xDC9 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1A20 JUMPI PUSH2 0x1A1F PUSH2 0x19CB JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BYTE 0xD8 DUP4 EXTCODEHASH 0xCE CREATE2 0xEC EXTCODESIZE 0xA5 PUSH21 0x2B7C244B9C0029CB66362C037D239B6F986BC0DF92 MULMOD PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "283:9312:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3075:144;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3449:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3837:575;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2800:114;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2142:522;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4561:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3075:144;3158:11;;:::i;:::-;3188:24;3199:12;;3188:10;:24::i;:::-;3181:31;;3075:144;;;;:::o;3449:169::-;3543:14;;:::i;:::-;3576:35;3590:20;;3576:13;:35::i;:::-;3569:42;;3449:169;;;;:::o;3837:575::-;3923:7;3942:22;3967:21;3981:6;;3967:13;:21::i;:::-;3942:46;;3999:11;4012;4027:37;4041:7;:22;;;4027:13;:37::i;:::-;3998:66;;;;4093:4;:9;4152:7;:13;;;4187:7;:15;;;4224:7;:19;;;4265:7;:20;;;4307:3;4332;4357:7;:16;;;4120:271;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4093:312;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4074:331;;;;;3837:575;;;;:::o;2800:114::-;2864:7;2890:4;:9;2900:6;;2890:17;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2883:24;;2800:114;;;;:::o;2142:522::-;2279:4;1694:2;2299:9;;:16;;:44;2295:142;;1694:2;2409:9;;:16;;2366:60;;;;;;;;;;;;:::i;:::-;;;;;;;;2295:142;2461:20;2495:16;2525:22;2560:23;2573:9;;2560:12;:23::i;:::-;2447:136;;;;;;2600:57;2608:5;2615:8;2625:10;2637:5;2644:12;2600:7;:57::i;:::-;2593:64;;;;;2142:522;;;;;;:::o;4561:195::-;4626:7;4646:11;4659;4674:21;4688:6;4674:13;:21::i;:::-;4645:50;;;;4712:4;:9;4739:3;4744;4722:26;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4712:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4705:44;;;;4561:195;;;:::o;4927:269::-;5012:11;;:::i;:::-;5062:3;5039:12;;:19;;:26;5035:106;;5105:3;5110:12;;:19;;5088:42;;;;;;;;;;;;:::i;:::-;;;;;;;;5035:106;5168:12;;5157:32;;;;;;;:::i;:::-;5150:39;;4927:269;;;;:::o;5422:254::-;5504:14;;:::i;:::-;5551:3;5534:6;;:13;;:20;5530:94;;5594:3;5599:6;;:13;;5577:36;;;;;;;;;;;;:::i;:::-;;;;;;;;5530:94;5651:6;;5640:29;;;;;;;:::i;:::-;5633:36;;5422:254;;;;:::o;5915:228::-;5986:11;5999;6061:2;6056:3;6052:12;6045:19;;6092:34;6088:2;6084:43;6077:50;;5915:228;;;:::o;6337:1100::-;6423:7;6432;6441:16;6469:22;6494:9;;:16;;6469:41;;6520:28;6568:1;6551:14;:18;;;;:::i;:::-;6520:49;;6580:22;6619:20;6605:35;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6580:60;;6678:4;6655:9;;6665:1;6655:12;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;:19;;:27;6651:108;;6722:4;6728:9;;6738:1;6728:12;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;:19;;6705:43;;;;;;;;;;;;:::i;:::-;;;;;;;;6651:108;6769:20;6800:9;;6810:1;6800:12;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;:17;;6814:2;6800:17;;;;;;;:::i;:::-;6792:26;;;;;:::i;:::-;6769:49;;6828:16;6847:4;:9;6857;;6884:1;6867:14;:18;;;;:::i;:::-;6857:29;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;6847:40;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6828:59;;6903:9;6915:1;6903:13;;6898:189;6922:20;6918:1;:24;6898:189;;;6994:4;:9;7004;;7014:1;7004:12;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;6994:23;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6960:5;6989:1;6966:20;:24;;;;:::i;:::-;6960:31;;;;;;;;:::i;:::-;;;;;;;:57;;;;;7059:3;;;;;6898:189;;;;7206:45;7219:9;;7229:20;7219:31;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;7206:12;:45::i;:::-;7202:180;;;1740:3;7278:9;;7267:5;7273:1;7267:8;;;;;;;;:::i;:::-;;;;;;;:20;;;;;7202:180;;;7329:4;:9;7339;;7349:20;7339:31;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;7329:42;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7318:5;7324:1;7318:8;;;;;;;;:::i;:::-;;;;;;;:53;;;;;7202:180;7400:12;7414:8;7424:5;7392:38;;;;;;;;;;;6337:1100;;;;;:::o;8712:881::-;8899:4;8915:20;8938:9;8915:32;;8957:20;8980:10;8957:33;;1815:1;1633:2;1797:1;:15;;;;:::i;:::-;:19;;;;:::i;:::-;9005:10;:32;9001:94;;;9060:24;;;;;;;;;;;;;;9001:94;9110:14;9105:387;1633:2;9126:6;:19;9105:387;;;9207:1;9202;9192:6;9176:12;:22;;9175:28;:33;9171:310;;9241:4;:9;9289:6;9296;9289:14;;;;;;;;:::i;:::-;;;;;;;;9305:12;9272:46;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9241:95;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9226:110;;9171:310;;;9386:4;:9;9434:12;9448:6;9455;9448:14;;;;;;;;:::i;:::-;;;;;;;;9417:46;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9386:95;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9371:110;;9171:310;9147:8;;;;;9105:387;;;;9581:5;9521:4;:9;9548:13;9563:12;9531:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9521:56;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:65;9502:84;;;;8712:881;;;;;;;:::o;7651:682::-;7731:16;7786:1;7778:4;7763:5;;:12;;:19;;;;:::i;:::-;:24;7759:78;;7810:16;;;;;;;;;;;;;;7759:78;7861:4;7847:18;;7915:12;7981:9;7941:376;8035:12;8024:9;8020:28;8008:10;8005:44;7941:376;;;8165:10;8152:24;8218:1;8207:8;8200:16;8197:23;8194:109;;8258:1;8243:16;;8280:5;;;8194:109;8118:199;8098:4;8086:10;8082:21;8068:35;;7941:376;;;7945:59;7884:443;7651:682;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;716:552;773:8;783:6;833:3;826:4;818:6;814:17;810:27;800:122;;841:79;;:::i;:::-;800:122;954:6;941:20;931:30;;984:18;976:6;973:30;970:117;;;1006:79;;:::i;:::-;970:117;1120:4;1112:6;1108:17;1096:29;;1174:3;1166:4;1158:6;1154:17;1144:8;1140:32;1137:41;1134:128;;;1181:79;;:::i;:::-;1134:128;716:552;;;;;:::o;1274:527::-;1344:6;1352;1401:2;1389:9;1380:7;1376:23;1372:32;1369:119;;;1407:79;;:::i;:::-;1369:119;1555:1;1544:9;1540:17;1527:31;1585:18;1577:6;1574:30;1571:117;;;1607:79;;:::i;:::-;1571:117;1720:64;1776:7;1767:6;1756:9;1752:22;1720:64;:::i;:::-;1702:82;;;;1498:296;1274:527;;;;;:::o;1807:77::-;1844:7;1873:5;1862:16;;1807:77;;;:::o;1890:116::-;1975:24;1993:5;1975:24;:::i;:::-;1970:3;1963:37;1890:116;;:::o;2012:77::-;2049:7;2078:5;2067:16;;2012:77;;;:::o;2095:116::-;2180:24;2198:5;2180:24;:::i;:::-;2175:3;2168:37;2095:116;;:::o;2287:891::-;2436:4;2431:3;2427:14;2523:4;2516:5;2512:16;2506:23;2542:71;2607:4;2602:3;2598:14;2584:12;2542:71;:::i;:::-;2451:172;2705:4;2698:5;2694:16;2688:23;2724:71;2789:4;2784:3;2780:14;2766:12;2724:71;:::i;:::-;2633:172;2887:4;2880:5;2876:16;2870:23;2906:71;2971:4;2966:3;2962:14;2948:12;2906:71;:::i;:::-;2815:172;3071:4;3064:5;3060:16;3054:23;3090:71;3155:4;3150:3;3146:14;3132:12;3090:71;:::i;:::-;2997:174;2405:773;2287:891;;:::o;3184:327::-;3329:4;3367:3;3356:9;3352:19;3344:27;;3381:123;3501:1;3490:9;3486:17;3477:6;3381:123;:::i;:::-;3184:327;;;;:::o;3517:101::-;3553:7;3593:18;3586:5;3582:30;3571:41;;3517:101;;;:::o;3624:113::-;3707:23;3724:5;3707:23;:::i;:::-;3702:3;3695:36;3624:113;;:::o;3819:1288::-;3974:4;3969:3;3965:14;4062:4;4055:5;4051:16;4045:23;4081:69;4144:4;4139:3;4135:14;4121:12;4081:69;:::i;:::-;3989:171;4245:4;4238:5;4234:16;4228:23;4264:71;4329:4;4324:3;4320:14;4306:12;4264:71;:::i;:::-;4170:175;4434:4;4427:5;4423:16;4417:23;4453:71;4518:4;4513:3;4509:14;4495:12;4453:71;:::i;:::-;4355:179;4624:4;4617:5;4613:16;4607:23;4643:71;4708:4;4703:3;4699:14;4685:12;4643:71;:::i;:::-;4544:180;4816:4;4809:5;4805:16;4799:23;4835:71;4900:4;4895:3;4891:14;4877:12;4835:71;:::i;:::-;4734:182;5002:4;4995:5;4991:16;4985:23;5021:69;5084:4;5079:3;5075:14;5061:12;5021:69;:::i;:::-;4926:174;3943:1164;3819:1288;;:::o;5113:339::-;5264:4;5302:3;5291:9;5287:19;5279:27;;5316:129;5442:1;5431:9;5427:17;5418:6;5316:129;:::i;:::-;5113:339;;;;:::o;5458:126::-;5553:24;5571:5;5553:24;:::i;:::-;5548:3;5541:37;5458:126;;:::o;5590:238::-;5691:4;5729:2;5718:9;5714:18;5706:26;;5742:79;5818:1;5807:9;5803:17;5794:6;5742:79;:::i;:::-;5590:238;;;;:::o;5849:579::-;5933:8;5943:6;5993:3;5986:4;5978:6;5974:17;5970:27;5960:122;;6001:79;;:::i;:::-;5960:122;6114:6;6101:20;6091:30;;6144:18;6136:6;6133:30;6130:117;;;6166:79;;:::i;:::-;6130:117;6280:4;6272:6;6268:17;6256:29;;6334:3;6326:4;6318:6;6314:17;6304:8;6300:32;6297:41;6294:128;;;6341:79;;:::i;:::-;6294:128;5849:579;;;;;:::o;6434:122::-;6507:24;6525:5;6507:24;:::i;:::-;6500:5;6497:35;6487:63;;6546:1;6543;6536:12;6487:63;6434:122;:::o;6562:139::-;6608:5;6646:6;6633:20;6624:29;;6662:33;6689:5;6662:33;:::i;:::-;6562:139;;;;:::o;6707:122::-;6780:24;6798:5;6780:24;:::i;:::-;6773:5;6770:35;6760:63;;6819:1;6816;6809:12;6760:63;6707:122;:::o;6835:139::-;6881:5;6919:6;6906:20;6897:29;;6935:33;6962:5;6935:33;:::i;:::-;6835:139;;;;:::o;6980:871::-;7095:6;7103;7111;7119;7168:2;7156:9;7147:7;7143:23;7139:32;7136:119;;;7174:79;;:::i;:::-;7136:119;7322:1;7311:9;7307:17;7294:31;7352:18;7344:6;7341:30;7338:117;;;7374:79;;:::i;:::-;7338:117;7487:91;7570:7;7561:6;7550:9;7546:22;7487:91;:::i;:::-;7469:109;;;;7265:323;7627:2;7653:53;7698:7;7689:6;7678:9;7674:22;7653:53;:::i;:::-;7643:63;;7598:118;7755:2;7781:53;7826:7;7817:6;7806:9;7802:22;7781:53;:::i;:::-;7771:63;;7726:118;6980:871;;;;;;;:::o;7857:90::-;7891:7;7934:5;7927:13;7920:21;7909:32;;7857:90;;;:::o;7953:117::-;8042:21;8057:5;8042:21;:::i;:::-;8037:3;8030:34;7953:117;;:::o;8076:226::-;8171:4;8209:2;8198:9;8194:18;8186:26;;8222:73;8292:1;8281:9;8277:17;8268:6;8222:73;:::i;:::-;8076:226;;;;:::o;8308:329::-;8367:6;8416:2;8404:9;8395:7;8391:23;8387:32;8384:119;;;8422:79;;:::i;:::-;8384:119;8542:1;8567:53;8612:7;8603:6;8592:9;8588:22;8567:53;:::i;:::-;8557:63;;8513:117;8308:329;;;;:::o;8643:115::-;8728:23;8745:5;8728:23;:::i;:::-;8723:3;8716:36;8643:115;;:::o;8764:118::-;8851:24;8869:5;8851:24;:::i;:::-;8846:3;8839:37;8764:118;;:::o;8888:::-;8975:24;8993:5;8975:24;:::i;:::-;8970:3;8963:37;8888:118;;:::o;9012:878::-;9269:4;9307:3;9296:9;9292:19;9284:27;;9321:69;9387:1;9376:9;9372:17;9363:6;9321:69;:::i;:::-;9400:72;9468:2;9457:9;9453:18;9444:6;9400:72;:::i;:::-;9482;9550:2;9539:9;9535:18;9526:6;9482:72;:::i;:::-;9564;9632:2;9621:9;9617:18;9608:6;9564:72;:::i;:::-;9646:73;9714:3;9703:9;9699:19;9690:6;9646:73;:::i;:::-;9729;9797:3;9786:9;9782:19;9773:6;9729:73;:::i;:::-;9812:71;9878:3;9867:9;9863:19;9854:6;9812:71;:::i;:::-;9012:878;;;;;;;;;;:::o;9896:98::-;9947:6;9981:5;9975:12;9965:22;;9896:98;;;:::o;10000:176::-;10091:11;10125:6;10120:3;10113:19;10165:4;10160:3;10156:14;10141:29;;10000:176;;;;:::o;10182:248::-;10264:1;10274:113;10288:6;10285:1;10282:13;10274:113;;;10373:1;10368:3;10364:11;10358:18;10354:1;10349:3;10345:11;10338:39;10310:2;10307:1;10303:10;10298:15;;10274:113;;;10421:1;10412:6;10407:3;10403:16;10396:27;10244:186;10182:248;;;:::o;10436:102::-;10477:6;10528:2;10524:7;10519:2;10512:5;10508:14;10504:28;10494:38;;10436:102;;;:::o;10544:389::-;10638:3;10666:38;10698:5;10666:38;:::i;:::-;10720:78;10791:6;10786:3;10720:78;:::i;:::-;10713:85;;10807:65;10865:6;10860:3;10853:4;10846:5;10842:16;10807:65;:::i;:::-;10897:29;10919:6;10897:29;:::i;:::-;10892:3;10888:39;10881:46;;10642:291;10544:389;;;;:::o;10939:325::-;11058:4;11096:2;11085:9;11081:18;11073:26;;11145:9;11139:4;11135:20;11131:1;11120:9;11116:17;11109:47;11173:84;11252:4;11243:6;11173:84;:::i;:::-;11165:92;;10939:325;;;;:::o;11270:143::-;11327:5;11358:6;11352:13;11343:22;;11374:33;11401:5;11374:33;:::i;:::-;11270:143;;;;:::o;11419:351::-;11489:6;11538:2;11526:9;11517:7;11513:23;11509:32;11506:119;;;11544:79;;:::i;:::-;11506:119;11664:1;11689:64;11745:7;11736:6;11725:9;11721:22;11689:64;:::i;:::-;11679:74;;11635:128;11419:351;;;;:::o;11776:148::-;11874:6;11869:3;11864;11851:30;11915:1;11906:6;11901:3;11897:16;11890:27;11776:148;;;:::o;11952:330::-;12056:3;12077:78;12148:6;12143:3;12077:78;:::i;:::-;12070:85;;12165:56;12214:6;12209:3;12202:5;12165:56;:::i;:::-;12246:29;12268:6;12246:29;:::i;:::-;12241:3;12237:39;12230:46;;11952:330;;;;;:::o;12288:345::-;12417:4;12455:2;12444:9;12440:18;12432:26;;12504:9;12498:4;12494:20;12490:1;12479:9;12475:17;12468:47;12532:94;12621:4;12612:6;12604;12532:94;:::i;:::-;12524:102;;12288:345;;;;;:::o;12639:332::-;12760:4;12798:2;12787:9;12783:18;12775:26;;12811:71;12879:1;12868:9;12864:17;12855:6;12811:71;:::i;:::-;12892:72;12960:2;12949:9;12945:18;12936:6;12892:72;:::i;:::-;12639:332;;;;;:::o;12977:79::-;13016:7;13045:5;13034:16;;12977:79;;;:::o;13062:157::-;13167:45;13187:24;13205:5;13187:24;:::i;:::-;13167:45;:::i;:::-;13162:3;13155:58;13062:157;;:::o;13225:397::-;13365:3;13380:75;13451:3;13442:6;13380:75;:::i;:::-;13480:2;13475:3;13471:12;13464:19;;13493:75;13564:3;13555:6;13493:75;:::i;:::-;13593:2;13588:3;13584:12;13577:19;;13613:3;13606:10;;13225:397;;;;;:::o;13628:87::-;13675:7;13704:5;13693:16;;13628:87;;;:::o;13721:60::-;13749:3;13770:5;13763:12;;13721:60;;;:::o;13787:162::-;13847:9;13880:63;13898:44;13907:34;13935:5;13907:34;:::i;:::-;13898:44;:::i;:::-;13880:63;:::i;:::-;13867:76;;13787:162;;;:::o;13955:151::-;14052:47;14093:5;14052:47;:::i;:::-;14047:3;14040:60;13955:151;;:::o;14112:352::-;14243:4;14281:2;14270:9;14266:18;14258:26;;14294:81;14372:1;14361:9;14357:17;14348:6;14294:81;:::i;:::-;14385:72;14453:2;14442:9;14438:18;14429:6;14385:72;:::i;:::-;14112:352;;;;;:::o;14470:117::-;14579:1;14576;14569:12;14593:180;14641:77;14638:1;14631:88;14738:4;14735:1;14728:15;14762:4;14759:1;14752:15;14779:281;14862:27;14884:4;14862:27;:::i;:::-;14854:6;14850:40;14992:6;14980:10;14977:22;14956:18;14944:10;14941:34;14938:62;14935:88;;;15003:18;;:::i;:::-;14935:88;15043:10;15039:2;15032:22;14822:238;14779:281;;:::o;15066:129::-;15100:6;15127:20;;:::i;:::-;15117:30;;15156:33;15184:4;15176:6;15156:33;:::i;:::-;15066:129;;;:::o;15361:895::-;15432:5;15476:4;15464:9;15459:3;15455:19;15451:30;15448:117;;;15484:79;;:::i;:::-;15448:117;15583:21;15599:4;15583:21;:::i;:::-;15574:30;;15663:1;15703:49;15748:3;15739:6;15728:9;15724:22;15703:49;:::i;:::-;15696:4;15689:5;15685:16;15678:75;15614:150;15823:2;15864:49;15909:3;15900:6;15889:9;15885:22;15864:49;:::i;:::-;15857:4;15850:5;15846:16;15839:75;15774:151;15984:2;16025:49;16070:3;16061:6;16050:9;16046:22;16025:49;:::i;:::-;16018:4;16011:5;16007:16;16000:75;15935:151;16147:2;16188:49;16233:3;16224:6;16213:9;16209:22;16188:49;:::i;:::-;16181:4;16174:5;16170:16;16163:75;16096:153;15361:895;;;;:::o;16262:374::-;16343:6;16392:3;16380:9;16371:7;16367:23;16363:33;16360:120;;;16399:79;;:::i;:::-;16360:120;16519:1;16544:75;16611:7;16602:6;16591:9;16587:22;16544:75;:::i;:::-;16534:85;;16490:139;16262:374;;;;:::o;16642:87::-;16689:7;16718:5;16707:16;;16642:87;;;:::o;16735:162::-;16795:9;16828:63;16846:44;16855:34;16883:5;16855:34;:::i;:::-;16846:44;:::i;:::-;16828:63;:::i;:::-;16815:76;;16735:162;;;:::o;16903:151::-;17000:47;17041:5;17000:47;:::i;:::-;16995:3;16988:60;16903:151;;:::o;17060:352::-;17191:4;17229:2;17218:9;17214:18;17206:26;;17242:81;17320:1;17309:9;17305:17;17296:6;17242:81;:::i;:::-;17333:72;17401:2;17390:9;17386:18;17377:6;17333:72;:::i;:::-;17060:352;;;;;:::o;17418:120::-;17490:23;17507:5;17490:23;:::i;:::-;17483:5;17480:34;17470:62;;17528:1;17525;17518:12;17470:62;17418:120;:::o;17544:137::-;17589:5;17627:6;17614:20;17605:29;;17643:32;17669:5;17643:32;:::i;:::-;17544:137;;;;:::o;17727:1251::-;17801:5;17845:4;17833:9;17828:3;17824:19;17820:30;17817:117;;;17853:79;;:::i;:::-;17817:117;17952:21;17968:4;17952:21;:::i;:::-;17943:30;;18033:1;18073:48;18117:3;18108:6;18097:9;18093:22;18073:48;:::i;:::-;18066:4;18059:5;18055:16;18048:74;17983:150;18195:2;18236:49;18281:3;18272:6;18261:9;18257:22;18236:49;:::i;:::-;18229:4;18222:5;18218:16;18211:75;18143:154;18363:2;18404:49;18449:3;18440:6;18429:9;18425:22;18404:49;:::i;:::-;18397:4;18390:5;18386:16;18379:75;18307:158;18532:2;18573:49;18618:3;18609:6;18598:9;18594:22;18573:49;:::i;:::-;18566:4;18559:5;18555:16;18548:75;18475:159;18703:3;18745:49;18790:3;18781:6;18770:9;18766:22;18745:49;:::i;:::-;18738:4;18731:5;18727:16;18720:75;18644:162;18869:3;18911:48;18955:3;18946:6;18935:9;18931:22;18911:48;:::i;:::-;18904:4;18897:5;18893:16;18886:74;18816:155;17727:1251;;;;:::o;18984:380::-;19068:6;19117:3;19105:9;19096:7;19092:23;19088:33;19085:120;;;19124:79;;:::i;:::-;19085:120;19244:1;19269:78;19339:7;19330:6;19319:9;19315:22;19269:78;:::i;:::-;19259:88;;19215:142;18984:380;;;;:::o;19370:180::-;19418:77;19415:1;19408:88;19515:4;19512:1;19505:15;19539:4;19536:1;19529:15;19556:194;19596:4;19616:20;19634:1;19616:20;:::i;:::-;19611:25;;19650:20;19668:1;19650:20;:::i;:::-;19645:25;;19694:1;19691;19687:9;19679:17;;19718:1;19712:4;19709:11;19706:37;;;19723:18;;:::i;:::-;19706:37;19556:194;;;;:::o;19756:180::-;19804:77;19801:1;19794:88;19901:4;19898:1;19891:15;19925:4;19922:1;19915:15;19942:117;20051:1;20048;20041:12;20065:117;20174:1;20171;20164:12;20188:117;20297:1;20294;20287:12;20311:724;20388:4;20394:6;20450:11;20437:25;20550:1;20544:4;20540:12;20529:8;20513:14;20509:29;20505:48;20485:18;20481:73;20471:168;;20558:79;;:::i;:::-;20471:168;20670:18;20660:8;20656:33;20648:41;;20722:4;20709:18;20699:28;;20750:18;20742:6;20739:30;20736:117;;;20772:79;;:::i;:::-;20736:117;20880:2;20874:4;20870:13;20862:21;;20937:4;20929:6;20925:17;20909:14;20905:38;20899:4;20895:49;20892:136;;;20947:79;;:::i;:::-;20892:136;20401:634;20311:724;;;;;:::o;21041:86::-;21087:7;21116:5;21105:16;;21041:86;;;:::o;21133:160::-;21192:9;21225:62;21243:43;21252:33;21279:5;21252:33;:::i;:::-;21243:43;:::i;:::-;21225:62;:::i;:::-;21212:75;;21133:160;;;:::o;21299:149::-;21395:46;21435:5;21395:46;:::i;:::-;21390:3;21383:59;21299:149;;:::o;21454:350::-;21584:4;21622:2;21611:9;21607:18;21599:26;;21635:80;21712:1;21701:9;21697:17;21688:6;21635:80;:::i;:::-;21725:72;21793:2;21782:9;21778:18;21769:6;21725:72;:::i;:::-;21454:350;;;;;:::o;21810:117::-;21919:1;21916;21909:12;21933:117;22042:1;22039;22032:12;22056:469;22161:9;22172;22210:8;22198:10;22195:24;22192:111;;;22222:79;;:::i;:::-;22192:111;22328:6;22318:8;22315:20;22312:107;;;22338:79;;:::i;:::-;22312:107;22469:1;22457:10;22453:18;22445:6;22441:31;22428:44;;22508:10;22498:8;22494:25;22481:38;;22056:469;;;;;;;:::o;22531:96::-;22589:6;22617:3;22607:13;;22531:96;;;;:::o;22725:107::-;22769:8;22819:5;22813:4;22809:16;22788:37;;22725:107;;;;:::o;22838:552::-;22929:5;22960:45;23001:3;22994:5;22960:45;:::i;:::-;23030:5;23054:41;23085:8;23072:22;23054:41;:::i;:::-;23045:50;;23119:2;23111:6;23108:14;23105:278;;;23190:169;23275:66;23245:6;23241:2;23237:15;23234:1;23230:23;23190:169;:::i;:::-;23167:5;23146:227;23137:236;;23105:278;22935:455;;22838:552;;;;:::o;23396:102::-;23438:8;23485:5;23482:1;23478:13;23457:34;;23396:102;;;:::o;23504:848::-;23565:5;23572:4;23596:6;23587:15;;23620:5;23611:14;;23634:712;23655:1;23645:8;23642:15;23634:712;;;23750:4;23745:3;23741:14;23735:4;23732:24;23729:50;;;23759:18;;:::i;:::-;23729:50;23809:1;23799:8;23795:16;23792:451;;;24224:4;24217:5;24213:16;24204:25;;23792:451;24274:4;24268;24264:15;24256:23;;24304:32;24327:8;24304:32;:::i;:::-;24292:44;;23634:712;;;23504:848;;;;;;;:::o;24358:1073::-;24412:5;24603:8;24593:40;;24624:1;24615:10;;24626:5;;24593:40;24652:4;24642:36;;24669:1;24660:10;;24671:5;;24642:36;24738:4;24786:1;24781:27;;;;24822:1;24817:191;;;;24731:277;;24781:27;24799:1;24790:10;;24801:5;;;24817:191;24862:3;24852:8;24849:17;24846:43;;;24869:18;;:::i;:::-;24846:43;24918:8;24915:1;24911:16;24902:25;;24953:3;24946:5;24943:14;24940:40;;;24960:18;;:::i;:::-;24940:40;24993:5;;;24731:277;;25117:2;25107:8;25104:16;25098:3;25092:4;25089:13;25085:36;25067:2;25057:8;25054:16;25049:2;25043:4;25040:12;25036:35;25020:111;25017:246;;;25173:8;25167:4;25163:19;25154:28;;25208:3;25201:5;25198:14;25195:40;;;25215:18;;:::i;:::-;25195:40;25248:5;;25017:246;25288:42;25326:3;25316:8;25310:4;25307:1;25288:42;:::i;:::-;25273:57;;;;25362:4;25357:3;25353:14;25346:5;25343:25;25340:51;;;25371:18;;:::i;:::-;25340:51;25420:4;25413:5;25409:16;25400:25;;24358:1073;;;;;;:::o;25437:285::-;25497:5;25521:23;25539:4;25521:23;:::i;:::-;25513:31;;25565:27;25583:8;25565:27;:::i;:::-;25553:39;;25611:104;25648:66;25638:8;25632:4;25611:104;:::i;:::-;25602:113;;25437:285;;;;:::o;25728:180::-;25776:77;25773:1;25766:88;25873:4;25870:1;25863:15;25897:4;25894:1;25887:15;25914:176;25946:1;25963:20;25981:1;25963:20;:::i;:::-;25958:25;;25997:20;26015:1;25997:20;:::i;:::-;25992:25;;26036:1;26026:35;;26041:18;;:::i;:::-;26026:35;26082:1;26079;26075:9;26070:14;;25914:176;;;;:::o" + }, + "methodIdentifiers": { + "getAccount(bytes)": "60f0f00f", + "getLeaf(bytes)": "5ea5a98f", + "hashAccountValue(bytes)": "8c628e40", + "hashStorageValue(bytes32)": "ceeef504", + "mimcHash(bytes)": "b893e579", + "verifyProof(bytes[],uint256,bytes32)": "cc5c21ea" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"LengthNotMod32\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxTreeLeafIndexExceed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expectedLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bytesLength\",\"type\":\"uint256\"}],\"name\":\"WrongBytesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expectedLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"actualLength\",\"type\":\"uint256\"}],\"name\":\"WrongProofLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_encodedAccountValue\",\"type\":\"bytes\"}],\"name\":\"getAccount\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"},{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"storageRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"mimcCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"keccakCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"codeSize\",\"type\":\"uint64\"}],\"internalType\":\"struct SparseMerkleProof.Account\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_encodedLeaf\",\"type\":\"bytes\"}],\"name\":\"getLeaf\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"prev\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"next\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"hKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"hValue\",\"type\":\"bytes32\"}],\"internalType\":\"struct SparseMerkleProof.Leaf\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"}],\"name\":\"hashAccountValue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_value\",\"type\":\"bytes32\"}],\"name\":\"hashStorageValue\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_input\",\"type\":\"bytes\"}],\"name\":\"mimcHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"_rawProof\",\"type\":\"bytes[]\"},{\"internalType\":\"uint256\",\"name\":\"_leafIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_root\",\"type\":\"bytes32\"}],\"name\":\"verifyProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"ConsenSys Software Inc.\",\"custom:security-contact\":\"security-report@linea.build\",\"kind\":\"dev\",\"methods\":{\"getAccount(bytes)\":{\"params\":{\"_encodedAccountValue\":\"Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\"},\"returns\":{\"_0\":\"Account Formatted account struct\"}},\"getLeaf(bytes)\":{\"params\":{\"_encodedLeaf\":\"Encoded leaf bytes (prev, next, hKey, hValue)\"},\"returns\":{\"_0\":\"Leaf Formatted leaf struct\"}},\"hashAccountValue(bytes)\":{\"params\":{\"_value\":\"Encoded account value bytes (nonce, balance, storageRoot, mimcCodeHash, keccakCodeHash, codeSize)\"},\"returns\":{\"_0\":\"{bytes32} Account value hash\"}},\"hashStorageValue(bytes32)\":{\"params\":{\"_value\":\"Encoded storage value bytes\"},\"returns\":{\"_0\":\"{bytes32} Storage value hash\"}},\"mimcHash(bytes)\":{\"params\":{\"_input\":\"Value to hash\"},\"returns\":{\"_0\":\"{bytes32} Mimc hash\"}},\"verifyProof(bytes[],uint256,bytes32)\":{\"params\":{\"_leafIndex\":\"Index of the leaf\",\"_rawProof\":\"Raw sparse merkle tree proof\",\"_root\":\"Sparse merkle root\"},\"returns\":{\"_0\":\"If the computed merkle root matches the provided one\"}}},\"title\":\"Library to perform SparseMerkleProof actions using the MiMC hashing algorithm\",\"version\":1},\"userdoc\":{\"errors\":{\"LengthNotMod32()\":[{\"notice\":\"Thrown when the length of bytes is not in exactly 32 byte chunks\"}],\"MaxTreeLeafIndexExceed()\":[{\"notice\":\"Thrown when the leaf index is higher than the tree depth\"}],\"WrongBytesLength(uint256,uint256)\":[{\"notice\":\"Thrown when expected bytes length is incorrect\"}],\"WrongProofLength(uint256,uint256)\":[{\"notice\":\"Thrown when the length of the unformatted proof is not provided exactly as expected (UNFORMATTED_PROOF_LENGTH)\"}]},\"kind\":\"user\",\"methods\":{\"getAccount(bytes)\":{\"notice\":\"Get account\"},\"getLeaf(bytes)\":{\"notice\":\"Get leaf\"},\"hashAccountValue(bytes)\":{\"notice\":\"Hash account value\"},\"hashStorageValue(bytes32)\":{\"notice\":\"Hash storage value\"},\"mimcHash(bytes)\":{\"notice\":\"Hash a value using MIMC hash\"},\"verifyProof(bytes[],uint256,bytes32)\":{\"notice\":\"Formats input, computes root and returns true if it matches the provided merkle root\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol\":\"SparseMerkleProof\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/lib/Mimc.sol\":{\"keccak256\":\"0x7ce398ff779301fa880cfbe0c803f3955c1908cba02948b56e759173ecba0b52\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://25940ab3d3a3cd594bbeff12d43f54a11b389717f463aa0c2f8c505a37947f78\",\"dweb:/ipfs/QmbWz3GYdprM682MeMoXfkK5sDeewbMWhwUQ8sS84EpGBB\"]},\"@consensys/linea-state-verifier/contracts/lib/SparseMerkleProof.sol\":{\"keccak256\":\"0xd7738d73506bffcf02c5e4ce5761e3d429261e5c522c39cf43eb9b6c943154de\",\"license\":\"AGPL-3.0\",\"urls\":[\"bzz-raw://1b7801ce7f2495799c8de31e845f88aebae02226d9dc20e885228c4a22a6b07d\",\"dweb:/ipfs/QmREJ13mkEa4bWgsHvkeh9RW2NyYSn5NbcwKp6Rkk991tF\"]}},\"version\":1}" + } + }, + "@ensdomains/buffer/contracts/Buffer.sol": { + "Buffer": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122087369a879cb847de9626327608cbade0c4809ff8ceee93ebe6aca227637bacf964736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP8 CALLDATASIZE SWAP11 DUP8 SWAP13 0xB8 SELFBALANCE 0xDE SWAP7 0x26 ORIGIN PUSH23 0x8CBADE0C4809FF8CEEE93EBE6ACA227637BACF964736F PUSH13 0x63430008190033000000000000 ", + "sourceMap": "445:8435:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122087369a879cb847de9626327608cbade0c4809ff8ceee93ebe6aca227637bacf964736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP8 CALLDATASIZE SWAP11 DUP8 SWAP13 0xB8 SELFBALANCE 0xDE SWAP7 0x26 ORIGIN PUSH23 0x8CBADE0C4809FF8CEEE93EBE6ACA227637BACF964736F PUSH13 0x63430008190033000000000000 ", + "sourceMap": "445:8435:7:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"A library for working with mutable byte buffers in Solidity. Byte buffers are mutable and expandable, and provide a variety of primitives for appending to them. At any time you can fetch a bytes object containing the current contents of the buffer. The bytes object should not be stored between operations, as it may change due to resizing of the buffer.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/buffer/contracts/Buffer.sol\":\"Buffer\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/buffer/contracts/Buffer.sol\":{\"keccak256\":\"0xd6dd3b0b327288f8e1b711a609f4040fea602e2ad4bba9febdf2f33b4e56eb0c\",\"license\":\"BSD-2-Clause\",\"urls\":[\"bzz-raw://78a722152d40d778a97595e5224fac1d138f4e659dcb1a926148909ef4c4bdca\",\"dweb:/ipfs/QmRxScF53x5ywsChLNpMUCdg2TSoCWTfo8G65Mo3sGY55b\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol": { + "RRUtils": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208067596eae2e7b69f5d37e2e7d1257bbb1a3e7c220a4a88ce7ed7ea047698ad964736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP1 PUSH8 0x596EAE2E7B69F5D3 PUSH31 0x2E7D1257BBB1A3E7C220A4A88CE7ED7EA047698AD964736F6C634300081900 CALLER ", + "sourceMap": "236:13908:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208067596eae2e7b69f5d37e2e7d1257bbb1a3e7c220a4a88ce7ed7ea047698ad964736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP1 PUSH8 0x596EAE2E7B69F5D3 PUSH31 0x2E7D1257BBB1A3E7C220A4A88CE7ED7EA047698AD964736F6C634300081900 CALLER ", + "sourceMap": "236:13908:8:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"RRUtils is a library that provides utilities for parsing DNS resource records.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol\":\"RRUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/buffer/contracts/Buffer.sol\":{\"keccak256\":\"0xd6dd3b0b327288f8e1b711a609f4040fea602e2ad4bba9febdf2f33b4e56eb0c\",\"license\":\"BSD-2-Clause\",\"urls\":[\"bzz-raw://78a722152d40d778a97595e5224fac1d138f4e659dcb1a926148909ef4c4bdca\",\"dweb:/ipfs/QmRxScF53x5ywsChLNpMUCdg2TSoCWTfo8G65Mo3sGY55b\"]},\"@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol\":{\"keccak256\":\"0xe4470c1578b2ee78e64bd8925bf391ffe98d5497aeef15b593380c7fe905af5d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a224aea2aeda30b428ac48c27d9ed559ad8baa9eabe14008e6125e7ac471b2be\",\"dweb:/ipfs/QmWCVjSVAuiDPmX8Ldg4AgBsJR7TdUuMoNTQ8YVuQ2AhSh\"]},\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol": { + "BaseRegistrarImplementation": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract ENS", + "name": "_ens", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_baseNode", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "ControllerAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "ControllerRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameMigrated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameRegistered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameRenewed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "GRACE_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "addController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "available", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "baseNode", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "controllers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "nameExpires", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "reclaim", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "register", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "registerOnly", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "removeController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "renew", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_13486": { + "entryPoint": null, + "id": 13486, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_3955": { + "entryPoint": null, + "id": 3955, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 223, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 231, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 579, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 525, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_ENS_$4567t_bytes32_fromMemory": { + "entryPoint": 600, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 818, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 664, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 1115, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_address": { + "entryPoint": 466, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 546, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 484, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 434, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 950, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 1080, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 970, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 1256, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 839, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 769, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 1228, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "identity": { + "entryPoint": 960, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 1198, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 722, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 675, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 1004, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 429, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "shift_left_dynamic": { + "entryPoint": 855, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 1185, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 1056, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 868, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 1014, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 556, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 502, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 1051, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:7128:74", + "nodeType": "YulBlock", + "src": "0:7128:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "625:51:74", + "nodeType": "YulBlock", + "src": "625:51:74", + "statements": [ + { + "nativeSrc": "635:35:74", + "nodeType": "YulAssignment", + "src": "635:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "664:5:74", + "nodeType": "YulIdentifier", + "src": "664:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "646:17:74", + "nodeType": "YulIdentifier", + "src": "646:17:74" + }, + "nativeSrc": "646:24:74", + "nodeType": "YulFunctionCall", + "src": "646:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "635:7:74", + "nodeType": "YulIdentifier", + "src": "635:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "568:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulTypedName", + "src": "607:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "617:7:74", + "nodeType": "YulTypedName", + "src": "617:7:74", + "type": "" + } + ], + "src": "568:108:74" + }, + { + "body": { + "nativeSrc": "737:91:74", + "nodeType": "YulBlock", + "src": "737:91:74", + "statements": [ + { + "body": { + "nativeSrc": "806:16:74", + "nodeType": "YulBlock", + "src": "806:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "815:1:74", + "nodeType": "YulLiteral", + "src": "815:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "818:1:74", + "nodeType": "YulLiteral", + "src": "818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "808:6:74", + "nodeType": "YulIdentifier", + "src": "808:6:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulFunctionCall", + "src": "808:12:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulExpressionStatement", + "src": "808:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "797:5:74", + "nodeType": "YulIdentifier", + "src": "797:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "767:29:74", + "nodeType": "YulIdentifier", + "src": "767:29:74" + }, + "nativeSrc": "767:36:74", + "nodeType": "YulFunctionCall", + "src": "767:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "757:2:74", + "nodeType": "YulIdentifier", + "src": "757:2:74" + }, + "nativeSrc": "757:47:74", + "nodeType": "YulFunctionCall", + "src": "757:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "750:6:74", + "nodeType": "YulIdentifier", + "src": "750:6:74" + }, + "nativeSrc": "750:55:74", + "nodeType": "YulFunctionCall", + "src": "750:55:74" + }, + "nativeSrc": "747:75:74", + "nodeType": "YulIf", + "src": "747:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "682:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "730:5:74", + "nodeType": "YulTypedName", + "src": "730:5:74", + "type": "" + } + ], + "src": "682:146:74" + }, + { + "body": { + "nativeSrc": "909:92:74", + "nodeType": "YulBlock", + "src": "909:92:74", + "statements": [ + { + "nativeSrc": "919:22:74", + "nodeType": "YulAssignment", + "src": "919:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "934:6:74", + "nodeType": "YulIdentifier", + "src": "934:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "928:5:74", + "nodeType": "YulIdentifier", + "src": "928:5:74" + }, + "nativeSrc": "928:13:74", + "nodeType": "YulFunctionCall", + "src": "928:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "919:5:74", + "nodeType": "YulIdentifier", + "src": "919:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "950:38:74", + "nodeType": "YulIdentifier", + "src": "950:38:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulFunctionCall", + "src": "950:45:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulExpressionStatement", + "src": "950:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "834:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "887:6:74", + "nodeType": "YulTypedName", + "src": "887:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "895:3:74", + "nodeType": "YulTypedName", + "src": "895:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "903:5:74", + "nodeType": "YulTypedName", + "src": "903:5:74", + "type": "" + } + ], + "src": "834:167:74" + }, + { + "body": { + "nativeSrc": "1052:32:74", + "nodeType": "YulBlock", + "src": "1052:32:74", + "statements": [ + { + "nativeSrc": "1062:16:74", + "nodeType": "YulAssignment", + "src": "1062:16:74", + "value": { + "name": "value", + "nativeSrc": "1073:5:74", + "nodeType": "YulIdentifier", + "src": "1073:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1062:7:74", + "nodeType": "YulIdentifier", + "src": "1062:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1007:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1034:5:74", + "nodeType": "YulTypedName", + "src": "1034:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1044:7:74", + "nodeType": "YulTypedName", + "src": "1044:7:74", + "type": "" + } + ], + "src": "1007:77:74" + }, + { + "body": { + "nativeSrc": "1133:79:74", + "nodeType": "YulBlock", + "src": "1133:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1190:16:74", + "nodeType": "YulBlock", + "src": "1190:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1199:1:74", + "nodeType": "YulLiteral", + "src": "1199:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1202:1:74", + "nodeType": "YulLiteral", + "src": "1202:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1192:6:74", + "nodeType": "YulIdentifier", + "src": "1192:6:74" + }, + "nativeSrc": "1192:12:74", + "nodeType": "YulFunctionCall", + "src": "1192:12:74" + }, + "nativeSrc": "1192:12:74", + "nodeType": "YulExpressionStatement", + "src": "1192:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1156:5:74", + "nodeType": "YulIdentifier", + "src": "1156:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1181:5:74", + "nodeType": "YulIdentifier", + "src": "1181:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1163:17:74", + "nodeType": "YulIdentifier", + "src": "1163:17:74" + }, + "nativeSrc": "1163:24:74", + "nodeType": "YulFunctionCall", + "src": "1163:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1153:2:74", + "nodeType": "YulIdentifier", + "src": "1153:2:74" + }, + "nativeSrc": "1153:35:74", + "nodeType": "YulFunctionCall", + "src": "1153:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1146:6:74", + "nodeType": "YulIdentifier", + "src": "1146:6:74" + }, + "nativeSrc": "1146:43:74", + "nodeType": "YulFunctionCall", + "src": "1146:43:74" + }, + "nativeSrc": "1143:63:74", + "nodeType": "YulIf", + "src": "1143:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "1090:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1126:5:74", + "nodeType": "YulTypedName", + "src": "1126:5:74", + "type": "" + } + ], + "src": "1090:122:74" + }, + { + "body": { + "nativeSrc": "1281:80:74", + "nodeType": "YulBlock", + "src": "1281:80:74", + "statements": [ + { + "nativeSrc": "1291:22:74", + "nodeType": "YulAssignment", + "src": "1291:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1306:6:74", + "nodeType": "YulIdentifier", + "src": "1306:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1300:5:74", + "nodeType": "YulIdentifier", + "src": "1300:5:74" + }, + "nativeSrc": "1300:13:74", + "nodeType": "YulFunctionCall", + "src": "1300:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1291:5:74", + "nodeType": "YulIdentifier", + "src": "1291:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1349:5:74", + "nodeType": "YulIdentifier", + "src": "1349:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "1322:26:74", + "nodeType": "YulIdentifier", + "src": "1322:26:74" + }, + "nativeSrc": "1322:33:74", + "nodeType": "YulFunctionCall", + "src": "1322:33:74" + }, + "nativeSrc": "1322:33:74", + "nodeType": "YulExpressionStatement", + "src": "1322:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "1218:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1259:6:74", + "nodeType": "YulTypedName", + "src": "1259:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1267:3:74", + "nodeType": "YulTypedName", + "src": "1267:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1275:5:74", + "nodeType": "YulTypedName", + "src": "1275:5:74", + "type": "" + } + ], + "src": "1218:143:74" + }, + { + "body": { + "nativeSrc": "1473:425:74", + "nodeType": "YulBlock", + "src": "1473:425:74", + "statements": [ + { + "body": { + "nativeSrc": "1519:83:74", + "nodeType": "YulBlock", + "src": "1519:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1521:77:74", + "nodeType": "YulIdentifier", + "src": "1521:77:74" + }, + "nativeSrc": "1521:79:74", + "nodeType": "YulFunctionCall", + "src": "1521:79:74" + }, + "nativeSrc": "1521:79:74", + "nodeType": "YulExpressionStatement", + "src": "1521:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1494:7:74", + "nodeType": "YulIdentifier", + "src": "1494:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1503:9:74", + "nodeType": "YulIdentifier", + "src": "1503:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1490:3:74", + "nodeType": "YulIdentifier", + "src": "1490:3:74" + }, + "nativeSrc": "1490:23:74", + "nodeType": "YulFunctionCall", + "src": "1490:23:74" + }, + { + "kind": "number", + "nativeSrc": "1515:2:74", + "nodeType": "YulLiteral", + "src": "1515:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1486:3:74", + "nodeType": "YulIdentifier", + "src": "1486:3:74" + }, + "nativeSrc": "1486:32:74", + "nodeType": "YulFunctionCall", + "src": "1486:32:74" + }, + "nativeSrc": "1483:119:74", + "nodeType": "YulIf", + "src": "1483:119:74" + }, + { + "nativeSrc": "1612:140:74", + "nodeType": "YulBlock", + "src": "1612:140:74", + "statements": [ + { + "nativeSrc": "1627:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1627:15:74", + "value": { + "kind": "number", + "nativeSrc": "1641:1:74", + "nodeType": "YulLiteral", + "src": "1641:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1631:6:74", + "nodeType": "YulTypedName", + "src": "1631:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1656:86:74", + "nodeType": "YulAssignment", + "src": "1656:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1714:9:74", + "nodeType": "YulIdentifier", + "src": "1714:9:74" + }, + { + "name": "offset", + "nativeSrc": "1725:6:74", + "nodeType": "YulIdentifier", + "src": "1725:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1710:3:74", + "nodeType": "YulIdentifier", + "src": "1710:3:74" + }, + "nativeSrc": "1710:22:74", + "nodeType": "YulFunctionCall", + "src": "1710:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1734:7:74", + "nodeType": "YulIdentifier", + "src": "1734:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "1666:43:74", + "nodeType": "YulIdentifier", + "src": "1666:43:74" + }, + "nativeSrc": "1666:76:74", + "nodeType": "YulFunctionCall", + "src": "1666:76:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1656:6:74", + "nodeType": "YulIdentifier", + "src": "1656:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1762:129:74", + "nodeType": "YulBlock", + "src": "1762:129:74", + "statements": [ + { + "nativeSrc": "1777:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1777:16:74", + "value": { + "kind": "number", + "nativeSrc": "1791:2:74", + "nodeType": "YulLiteral", + "src": "1791:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1781:6:74", + "nodeType": "YulTypedName", + "src": "1781:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1807:74:74", + "nodeType": "YulAssignment", + "src": "1807:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1853:9:74", + "nodeType": "YulIdentifier", + "src": "1853:9:74" + }, + { + "name": "offset", + "nativeSrc": "1864:6:74", + "nodeType": "YulIdentifier", + "src": "1864:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1849:3:74", + "nodeType": "YulIdentifier", + "src": "1849:3:74" + }, + "nativeSrc": "1849:22:74", + "nodeType": "YulFunctionCall", + "src": "1849:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1873:7:74", + "nodeType": "YulIdentifier", + "src": "1873:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "1817:31:74", + "nodeType": "YulIdentifier", + "src": "1817:31:74" + }, + "nativeSrc": "1817:64:74", + "nodeType": "YulFunctionCall", + "src": "1817:64:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1807:6:74", + "nodeType": "YulIdentifier", + "src": "1807:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_ENS_$4567t_bytes32_fromMemory", + "nativeSrc": "1367:531:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1435:9:74", + "nodeType": "YulTypedName", + "src": "1435:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1446:7:74", + "nodeType": "YulTypedName", + "src": "1446:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1458:6:74", + "nodeType": "YulTypedName", + "src": "1458:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1466:6:74", + "nodeType": "YulTypedName", + "src": "1466:6:74", + "type": "" + } + ], + "src": "1367:531:74" + }, + { + "body": { + "nativeSrc": "1963:40:74", + "nodeType": "YulBlock", + "src": "1963:40:74", + "statements": [ + { + "nativeSrc": "1974:22:74", + "nodeType": "YulAssignment", + "src": "1974:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1990:5:74", + "nodeType": "YulIdentifier", + "src": "1990:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1984:5:74", + "nodeType": "YulIdentifier", + "src": "1984:5:74" + }, + "nativeSrc": "1984:12:74", + "nodeType": "YulFunctionCall", + "src": "1984:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "1974:6:74", + "nodeType": "YulIdentifier", + "src": "1974:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1904:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1946:5:74", + "nodeType": "YulTypedName", + "src": "1946:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "1956:6:74", + "nodeType": "YulTypedName", + "src": "1956:6:74", + "type": "" + } + ], + "src": "1904:99:74" + }, + { + "body": { + "nativeSrc": "2037:152:74", + "nodeType": "YulBlock", + "src": "2037:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2054:1:74", + "nodeType": "YulLiteral", + "src": "2054:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2057:77:74", + "nodeType": "YulLiteral", + "src": "2057:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2047:6:74", + "nodeType": "YulIdentifier", + "src": "2047:6:74" + }, + "nativeSrc": "2047:88:74", + "nodeType": "YulFunctionCall", + "src": "2047:88:74" + }, + "nativeSrc": "2047:88:74", + "nodeType": "YulExpressionStatement", + "src": "2047:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2151:1:74", + "nodeType": "YulLiteral", + "src": "2151:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "2154:4:74", + "nodeType": "YulLiteral", + "src": "2154:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2144:6:74", + "nodeType": "YulIdentifier", + "src": "2144:6:74" + }, + "nativeSrc": "2144:15:74", + "nodeType": "YulFunctionCall", + "src": "2144:15:74" + }, + "nativeSrc": "2144:15:74", + "nodeType": "YulExpressionStatement", + "src": "2144:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2175:1:74", + "nodeType": "YulLiteral", + "src": "2175:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2178:4:74", + "nodeType": "YulLiteral", + "src": "2178:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2168:6:74", + "nodeType": "YulIdentifier", + "src": "2168:6:74" + }, + "nativeSrc": "2168:15:74", + "nodeType": "YulFunctionCall", + "src": "2168:15:74" + }, + "nativeSrc": "2168:15:74", + "nodeType": "YulExpressionStatement", + "src": "2168:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "2009:180:74", + "nodeType": "YulFunctionDefinition", + "src": "2009:180:74" + }, + { + "body": { + "nativeSrc": "2223:152:74", + "nodeType": "YulBlock", + "src": "2223:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2240:1:74", + "nodeType": "YulLiteral", + "src": "2240:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2243:77:74", + "nodeType": "YulLiteral", + "src": "2243:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2233:6:74", + "nodeType": "YulIdentifier", + "src": "2233:6:74" + }, + "nativeSrc": "2233:88:74", + "nodeType": "YulFunctionCall", + "src": "2233:88:74" + }, + "nativeSrc": "2233:88:74", + "nodeType": "YulExpressionStatement", + "src": "2233:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2337:1:74", + "nodeType": "YulLiteral", + "src": "2337:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "2340:4:74", + "nodeType": "YulLiteral", + "src": "2340:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2330:6:74", + "nodeType": "YulIdentifier", + "src": "2330:6:74" + }, + "nativeSrc": "2330:15:74", + "nodeType": "YulFunctionCall", + "src": "2330:15:74" + }, + "nativeSrc": "2330:15:74", + "nodeType": "YulExpressionStatement", + "src": "2330:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2361:1:74", + "nodeType": "YulLiteral", + "src": "2361:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2364:4:74", + "nodeType": "YulLiteral", + "src": "2364:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2354:6:74", + "nodeType": "YulIdentifier", + "src": "2354:6:74" + }, + "nativeSrc": "2354:15:74", + "nodeType": "YulFunctionCall", + "src": "2354:15:74" + }, + "nativeSrc": "2354:15:74", + "nodeType": "YulExpressionStatement", + "src": "2354:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "2195:180:74", + "nodeType": "YulFunctionDefinition", + "src": "2195:180:74" + }, + { + "body": { + "nativeSrc": "2432:269:74", + "nodeType": "YulBlock", + "src": "2432:269:74", + "statements": [ + { + "nativeSrc": "2442:22:74", + "nodeType": "YulAssignment", + "src": "2442:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "2456:4:74", + "nodeType": "YulIdentifier", + "src": "2456:4:74" + }, + { + "kind": "number", + "nativeSrc": "2462:1:74", + "nodeType": "YulLiteral", + "src": "2462:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "2452:3:74", + "nodeType": "YulIdentifier", + "src": "2452:3:74" + }, + "nativeSrc": "2452:12:74", + "nodeType": "YulFunctionCall", + "src": "2452:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2442:6:74", + "nodeType": "YulIdentifier", + "src": "2442:6:74" + } + ] + }, + { + "nativeSrc": "2473:38:74", + "nodeType": "YulVariableDeclaration", + "src": "2473:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "2503:4:74", + "nodeType": "YulIdentifier", + "src": "2503:4:74" + }, + { + "kind": "number", + "nativeSrc": "2509:1:74", + "nodeType": "YulLiteral", + "src": "2509:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2499:3:74", + "nodeType": "YulIdentifier", + "src": "2499:3:74" + }, + "nativeSrc": "2499:12:74", + "nodeType": "YulFunctionCall", + "src": "2499:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2477:18:74", + "nodeType": "YulTypedName", + "src": "2477:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2550:51:74", + "nodeType": "YulBlock", + "src": "2550:51:74", + "statements": [ + { + "nativeSrc": "2564:27:74", + "nodeType": "YulAssignment", + "src": "2564:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "2578:6:74", + "nodeType": "YulIdentifier", + "src": "2578:6:74" + }, + { + "kind": "number", + "nativeSrc": "2586:4:74", + "nodeType": "YulLiteral", + "src": "2586:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2574:3:74", + "nodeType": "YulIdentifier", + "src": "2574:3:74" + }, + "nativeSrc": "2574:17:74", + "nodeType": "YulFunctionCall", + "src": "2574:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2564:6:74", + "nodeType": "YulIdentifier", + "src": "2564:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2530:18:74", + "nodeType": "YulIdentifier", + "src": "2530:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2523:6:74", + "nodeType": "YulIdentifier", + "src": "2523:6:74" + }, + "nativeSrc": "2523:26:74", + "nodeType": "YulFunctionCall", + "src": "2523:26:74" + }, + "nativeSrc": "2520:81:74", + "nodeType": "YulIf", + "src": "2520:81:74" + }, + { + "body": { + "nativeSrc": "2653:42:74", + "nodeType": "YulBlock", + "src": "2653:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "2667:16:74", + "nodeType": "YulIdentifier", + "src": "2667:16:74" + }, + "nativeSrc": "2667:18:74", + "nodeType": "YulFunctionCall", + "src": "2667:18:74" + }, + "nativeSrc": "2667:18:74", + "nodeType": "YulExpressionStatement", + "src": "2667:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2617:18:74", + "nodeType": "YulIdentifier", + "src": "2617:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2640:6:74", + "nodeType": "YulIdentifier", + "src": "2640:6:74" + }, + { + "kind": "number", + "nativeSrc": "2648:2:74", + "nodeType": "YulLiteral", + "src": "2648:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2637:2:74", + "nodeType": "YulIdentifier", + "src": "2637:2:74" + }, + "nativeSrc": "2637:14:74", + "nodeType": "YulFunctionCall", + "src": "2637:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2614:2:74", + "nodeType": "YulIdentifier", + "src": "2614:2:74" + }, + "nativeSrc": "2614:38:74", + "nodeType": "YulFunctionCall", + "src": "2614:38:74" + }, + "nativeSrc": "2611:84:74", + "nodeType": "YulIf", + "src": "2611:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "2381:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "2416:4:74", + "nodeType": "YulTypedName", + "src": "2416:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "2425:6:74", + "nodeType": "YulTypedName", + "src": "2425:6:74", + "type": "" + } + ], + "src": "2381:320:74" + }, + { + "body": { + "nativeSrc": "2761:87:74", + "nodeType": "YulBlock", + "src": "2761:87:74", + "statements": [ + { + "nativeSrc": "2771:11:74", + "nodeType": "YulAssignment", + "src": "2771:11:74", + "value": { + "name": "ptr", + "nativeSrc": "2779:3:74", + "nodeType": "YulIdentifier", + "src": "2779:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "2771:4:74", + "nodeType": "YulIdentifier", + "src": "2771:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2799:1:74", + "nodeType": "YulLiteral", + "src": "2799:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "2802:3:74", + "nodeType": "YulIdentifier", + "src": "2802:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2792:6:74", + "nodeType": "YulIdentifier", + "src": "2792:6:74" + }, + "nativeSrc": "2792:14:74", + "nodeType": "YulFunctionCall", + "src": "2792:14:74" + }, + "nativeSrc": "2792:14:74", + "nodeType": "YulExpressionStatement", + "src": "2792:14:74" + }, + { + "nativeSrc": "2815:26:74", + "nodeType": "YulAssignment", + "src": "2815:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2833:1:74", + "nodeType": "YulLiteral", + "src": "2833:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2836:4:74", + "nodeType": "YulLiteral", + "src": "2836:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "2823:9:74", + "nodeType": "YulIdentifier", + "src": "2823:9:74" + }, + "nativeSrc": "2823:18:74", + "nodeType": "YulFunctionCall", + "src": "2823:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "2815:4:74", + "nodeType": "YulIdentifier", + "src": "2815:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "2707:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "2748:3:74", + "nodeType": "YulTypedName", + "src": "2748:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "2756:4:74", + "nodeType": "YulTypedName", + "src": "2756:4:74", + "type": "" + } + ], + "src": "2707:141:74" + }, + { + "body": { + "nativeSrc": "2898:49:74", + "nodeType": "YulBlock", + "src": "2898:49:74", + "statements": [ + { + "nativeSrc": "2908:33:74", + "nodeType": "YulAssignment", + "src": "2908:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2926:5:74", + "nodeType": "YulIdentifier", + "src": "2926:5:74" + }, + { + "kind": "number", + "nativeSrc": "2933:2:74", + "nodeType": "YulLiteral", + "src": "2933:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2922:3:74", + "nodeType": "YulIdentifier", + "src": "2922:3:74" + }, + "nativeSrc": "2922:14:74", + "nodeType": "YulFunctionCall", + "src": "2922:14:74" + }, + { + "kind": "number", + "nativeSrc": "2938:2:74", + "nodeType": "YulLiteral", + "src": "2938:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "2918:3:74", + "nodeType": "YulIdentifier", + "src": "2918:3:74" + }, + "nativeSrc": "2918:23:74", + "nodeType": "YulFunctionCall", + "src": "2918:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "2908:6:74", + "nodeType": "YulIdentifier", + "src": "2908:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "2854:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2881:5:74", + "nodeType": "YulTypedName", + "src": "2881:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "2891:6:74", + "nodeType": "YulTypedName", + "src": "2891:6:74", + "type": "" + } + ], + "src": "2854:93:74" + }, + { + "body": { + "nativeSrc": "3006:54:74", + "nodeType": "YulBlock", + "src": "3006:54:74", + "statements": [ + { + "nativeSrc": "3016:37:74", + "nodeType": "YulAssignment", + "src": "3016:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "3041:4:74", + "nodeType": "YulIdentifier", + "src": "3041:4:74" + }, + { + "name": "value", + "nativeSrc": "3047:5:74", + "nodeType": "YulIdentifier", + "src": "3047:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "3037:3:74", + "nodeType": "YulIdentifier", + "src": "3037:3:74" + }, + "nativeSrc": "3037:16:74", + "nodeType": "YulFunctionCall", + "src": "3037:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "3016:8:74", + "nodeType": "YulIdentifier", + "src": "3016:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "2953:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "2981:4:74", + "nodeType": "YulTypedName", + "src": "2981:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "2987:5:74", + "nodeType": "YulTypedName", + "src": "2987:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "2997:8:74", + "nodeType": "YulTypedName", + "src": "2997:8:74", + "type": "" + } + ], + "src": "2953:107:74" + }, + { + "body": { + "nativeSrc": "3142:317:74", + "nodeType": "YulBlock", + "src": "3142:317:74", + "statements": [ + { + "nativeSrc": "3152:35:74", + "nodeType": "YulVariableDeclaration", + "src": "3152:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "3173:10:74", + "nodeType": "YulIdentifier", + "src": "3173:10:74" + }, + { + "kind": "number", + "nativeSrc": "3185:1:74", + "nodeType": "YulLiteral", + "src": "3185:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "3169:3:74", + "nodeType": "YulIdentifier", + "src": "3169:3:74" + }, + "nativeSrc": "3169:18:74", + "nodeType": "YulFunctionCall", + "src": "3169:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "3156:9:74", + "nodeType": "YulTypedName", + "src": "3156:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3196:109:74", + "nodeType": "YulVariableDeclaration", + "src": "3196:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "3227:9:74", + "nodeType": "YulIdentifier", + "src": "3227:9:74" + }, + { + "kind": "number", + "nativeSrc": "3238:66:74", + "nodeType": "YulLiteral", + "src": "3238:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "3208:18:74", + "nodeType": "YulIdentifier", + "src": "3208:18:74" + }, + "nativeSrc": "3208:97:74", + "nodeType": "YulFunctionCall", + "src": "3208:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "3200:4:74", + "nodeType": "YulTypedName", + "src": "3200:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3314:51:74", + "nodeType": "YulAssignment", + "src": "3314:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "3345:9:74", + "nodeType": "YulIdentifier", + "src": "3345:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "3356:8:74", + "nodeType": "YulIdentifier", + "src": "3356:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "3326:18:74", + "nodeType": "YulIdentifier", + "src": "3326:18:74" + }, + "nativeSrc": "3326:39:74", + "nodeType": "YulFunctionCall", + "src": "3326:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "3314:8:74", + "nodeType": "YulIdentifier", + "src": "3314:8:74" + } + ] + }, + { + "nativeSrc": "3374:30:74", + "nodeType": "YulAssignment", + "src": "3374:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3387:5:74", + "nodeType": "YulIdentifier", + "src": "3387:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "3398:4:74", + "nodeType": "YulIdentifier", + "src": "3398:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "3394:3:74", + "nodeType": "YulIdentifier", + "src": "3394:3:74" + }, + "nativeSrc": "3394:9:74", + "nodeType": "YulFunctionCall", + "src": "3394:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3383:3:74", + "nodeType": "YulIdentifier", + "src": "3383:3:74" + }, + "nativeSrc": "3383:21:74", + "nodeType": "YulFunctionCall", + "src": "3383:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3374:5:74", + "nodeType": "YulIdentifier", + "src": "3374:5:74" + } + ] + }, + { + "nativeSrc": "3413:40:74", + "nodeType": "YulAssignment", + "src": "3413:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3426:5:74", + "nodeType": "YulIdentifier", + "src": "3426:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "3437:8:74", + "nodeType": "YulIdentifier", + "src": "3437:8:74" + }, + { + "name": "mask", + "nativeSrc": "3447:4:74", + "nodeType": "YulIdentifier", + "src": "3447:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3433:3:74", + "nodeType": "YulIdentifier", + "src": "3433:3:74" + }, + "nativeSrc": "3433:19:74", + "nodeType": "YulFunctionCall", + "src": "3433:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "3423:2:74", + "nodeType": "YulIdentifier", + "src": "3423:2:74" + }, + "nativeSrc": "3423:30:74", + "nodeType": "YulFunctionCall", + "src": "3423:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "3413:6:74", + "nodeType": "YulIdentifier", + "src": "3413:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "3066:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3103:5:74", + "nodeType": "YulTypedName", + "src": "3103:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "3110:10:74", + "nodeType": "YulTypedName", + "src": "3110:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "3122:8:74", + "nodeType": "YulTypedName", + "src": "3122:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "3135:6:74", + "nodeType": "YulTypedName", + "src": "3135:6:74", + "type": "" + } + ], + "src": "3066:393:74" + }, + { + "body": { + "nativeSrc": "3510:32:74", + "nodeType": "YulBlock", + "src": "3510:32:74", + "statements": [ + { + "nativeSrc": "3520:16:74", + "nodeType": "YulAssignment", + "src": "3520:16:74", + "value": { + "name": "value", + "nativeSrc": "3531:5:74", + "nodeType": "YulIdentifier", + "src": "3531:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3520:7:74", + "nodeType": "YulIdentifier", + "src": "3520:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "3465:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3492:5:74", + "nodeType": "YulTypedName", + "src": "3492:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3502:7:74", + "nodeType": "YulTypedName", + "src": "3502:7:74", + "type": "" + } + ], + "src": "3465:77:74" + }, + { + "body": { + "nativeSrc": "3580:28:74", + "nodeType": "YulBlock", + "src": "3580:28:74", + "statements": [ + { + "nativeSrc": "3590:12:74", + "nodeType": "YulAssignment", + "src": "3590:12:74", + "value": { + "name": "value", + "nativeSrc": "3597:5:74", + "nodeType": "YulIdentifier", + "src": "3597:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "3590:3:74", + "nodeType": "YulIdentifier", + "src": "3590:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "3548:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3566:5:74", + "nodeType": "YulTypedName", + "src": "3566:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "3576:3:74", + "nodeType": "YulTypedName", + "src": "3576:3:74", + "type": "" + } + ], + "src": "3548:60:74" + }, + { + "body": { + "nativeSrc": "3674:82:74", + "nodeType": "YulBlock", + "src": "3674:82:74", + "statements": [ + { + "nativeSrc": "3684:66:74", + "nodeType": "YulAssignment", + "src": "3684:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3742:5:74", + "nodeType": "YulIdentifier", + "src": "3742:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3724:17:74", + "nodeType": "YulIdentifier", + "src": "3724:17:74" + }, + "nativeSrc": "3724:24:74", + "nodeType": "YulFunctionCall", + "src": "3724:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "3715:8:74", + "nodeType": "YulIdentifier", + "src": "3715:8:74" + }, + "nativeSrc": "3715:34:74", + "nodeType": "YulFunctionCall", + "src": "3715:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3697:17:74", + "nodeType": "YulIdentifier", + "src": "3697:17:74" + }, + "nativeSrc": "3697:53:74", + "nodeType": "YulFunctionCall", + "src": "3697:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "3684:9:74", + "nodeType": "YulIdentifier", + "src": "3684:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "3614:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3654:5:74", + "nodeType": "YulTypedName", + "src": "3654:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "3664:9:74", + "nodeType": "YulTypedName", + "src": "3664:9:74", + "type": "" + } + ], + "src": "3614:142:74" + }, + { + "body": { + "nativeSrc": "3809:28:74", + "nodeType": "YulBlock", + "src": "3809:28:74", + "statements": [ + { + "nativeSrc": "3819:12:74", + "nodeType": "YulAssignment", + "src": "3819:12:74", + "value": { + "name": "value", + "nativeSrc": "3826:5:74", + "nodeType": "YulIdentifier", + "src": "3826:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "3819:3:74", + "nodeType": "YulIdentifier", + "src": "3819:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "3762:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3795:5:74", + "nodeType": "YulTypedName", + "src": "3795:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "3805:3:74", + "nodeType": "YulTypedName", + "src": "3805:3:74", + "type": "" + } + ], + "src": "3762:75:74" + }, + { + "body": { + "nativeSrc": "3919:193:74", + "nodeType": "YulBlock", + "src": "3919:193:74", + "statements": [ + { + "nativeSrc": "3929:63:74", + "nodeType": "YulVariableDeclaration", + "src": "3929:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "3984:7:74", + "nodeType": "YulIdentifier", + "src": "3984:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "3953:30:74", + "nodeType": "YulIdentifier", + "src": "3953:30:74" + }, + "nativeSrc": "3953:39:74", + "nodeType": "YulFunctionCall", + "src": "3953:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "3933:16:74", + "nodeType": "YulTypedName", + "src": "3933:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4008:4:74", + "nodeType": "YulIdentifier", + "src": "4008:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4048:4:74", + "nodeType": "YulIdentifier", + "src": "4048:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "4042:5:74", + "nodeType": "YulIdentifier", + "src": "4042:5:74" + }, + "nativeSrc": "4042:11:74", + "nodeType": "YulFunctionCall", + "src": "4042:11:74" + }, + { + "name": "offset", + "nativeSrc": "4055:6:74", + "nodeType": "YulIdentifier", + "src": "4055:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "4087:16:74", + "nodeType": "YulIdentifier", + "src": "4087:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "4063:23:74", + "nodeType": "YulIdentifier", + "src": "4063:23:74" + }, + "nativeSrc": "4063:41:74", + "nodeType": "YulFunctionCall", + "src": "4063:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "4014:27:74", + "nodeType": "YulIdentifier", + "src": "4014:27:74" + }, + "nativeSrc": "4014:91:74", + "nodeType": "YulFunctionCall", + "src": "4014:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "4001:6:74", + "nodeType": "YulIdentifier", + "src": "4001:6:74" + }, + "nativeSrc": "4001:105:74", + "nodeType": "YulFunctionCall", + "src": "4001:105:74" + }, + "nativeSrc": "4001:105:74", + "nodeType": "YulExpressionStatement", + "src": "4001:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "3843:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "3896:4:74", + "nodeType": "YulTypedName", + "src": "3896:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "3902:6:74", + "nodeType": "YulTypedName", + "src": "3902:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "3910:7:74", + "nodeType": "YulTypedName", + "src": "3910:7:74", + "type": "" + } + ], + "src": "3843:269:74" + }, + { + "body": { + "nativeSrc": "4167:24:74", + "nodeType": "YulBlock", + "src": "4167:24:74", + "statements": [ + { + "nativeSrc": "4177:8:74", + "nodeType": "YulAssignment", + "src": "4177:8:74", + "value": { + "kind": "number", + "nativeSrc": "4184:1:74", + "nodeType": "YulLiteral", + "src": "4184:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "4177:3:74", + "nodeType": "YulIdentifier", + "src": "4177:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "4118:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "4163:3:74", + "nodeType": "YulTypedName", + "src": "4163:3:74", + "type": "" + } + ], + "src": "4118:73:74" + }, + { + "body": { + "nativeSrc": "4250:136:74", + "nodeType": "YulBlock", + "src": "4250:136:74", + "statements": [ + { + "nativeSrc": "4260:46:74", + "nodeType": "YulVariableDeclaration", + "src": "4260:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "4274:30:74", + "nodeType": "YulIdentifier", + "src": "4274:30:74" + }, + "nativeSrc": "4274:32:74", + "nodeType": "YulFunctionCall", + "src": "4274:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "4264:6:74", + "nodeType": "YulTypedName", + "src": "4264:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4359:4:74", + "nodeType": "YulIdentifier", + "src": "4359:4:74" + }, + { + "name": "offset", + "nativeSrc": "4365:6:74", + "nodeType": "YulIdentifier", + "src": "4365:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "4373:6:74", + "nodeType": "YulIdentifier", + "src": "4373:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "4315:43:74", + "nodeType": "YulIdentifier", + "src": "4315:43:74" + }, + "nativeSrc": "4315:65:74", + "nodeType": "YulFunctionCall", + "src": "4315:65:74" + }, + "nativeSrc": "4315:65:74", + "nodeType": "YulExpressionStatement", + "src": "4315:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "4197:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "4236:4:74", + "nodeType": "YulTypedName", + "src": "4236:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "4242:6:74", + "nodeType": "YulTypedName", + "src": "4242:6:74", + "type": "" + } + ], + "src": "4197:189:74" + }, + { + "body": { + "nativeSrc": "4442:136:74", + "nodeType": "YulBlock", + "src": "4442:136:74", + "statements": [ + { + "body": { + "nativeSrc": "4509:63:74", + "nodeType": "YulBlock", + "src": "4509:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "4553:5:74", + "nodeType": "YulIdentifier", + "src": "4553:5:74" + }, + { + "kind": "number", + "nativeSrc": "4560:1:74", + "nodeType": "YulLiteral", + "src": "4560:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "4523:29:74", + "nodeType": "YulIdentifier", + "src": "4523:29:74" + }, + "nativeSrc": "4523:39:74", + "nodeType": "YulFunctionCall", + "src": "4523:39:74" + }, + "nativeSrc": "4523:39:74", + "nodeType": "YulExpressionStatement", + "src": "4523:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "4462:5:74", + "nodeType": "YulIdentifier", + "src": "4462:5:74" + }, + { + "name": "end", + "nativeSrc": "4469:3:74", + "nodeType": "YulIdentifier", + "src": "4469:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4459:2:74", + "nodeType": "YulIdentifier", + "src": "4459:2:74" + }, + "nativeSrc": "4459:14:74", + "nodeType": "YulFunctionCall", + "src": "4459:14:74" + }, + "nativeSrc": "4452:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "4474:26:74", + "nodeType": "YulBlock", + "src": "4474:26:74", + "statements": [ + { + "nativeSrc": "4476:22:74", + "nodeType": "YulAssignment", + "src": "4476:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "4489:5:74", + "nodeType": "YulIdentifier", + "src": "4489:5:74" + }, + { + "kind": "number", + "nativeSrc": "4496:1:74", + "nodeType": "YulLiteral", + "src": "4496:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4485:3:74", + "nodeType": "YulIdentifier", + "src": "4485:3:74" + }, + "nativeSrc": "4485:13:74", + "nodeType": "YulFunctionCall", + "src": "4485:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "4476:5:74", + "nodeType": "YulIdentifier", + "src": "4476:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "4456:2:74", + "nodeType": "YulBlock", + "src": "4456:2:74", + "statements": [] + }, + "src": "4452:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "4392:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "4430:5:74", + "nodeType": "YulTypedName", + "src": "4430:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4437:3:74", + "nodeType": "YulTypedName", + "src": "4437:3:74", + "type": "" + } + ], + "src": "4392:186:74" + }, + { + "body": { + "nativeSrc": "4663:464:74", + "nodeType": "YulBlock", + "src": "4663:464:74", + "statements": [ + { + "body": { + "nativeSrc": "4689:431:74", + "nodeType": "YulBlock", + "src": "4689:431:74", + "statements": [ + { + "nativeSrc": "4703:54:74", + "nodeType": "YulVariableDeclaration", + "src": "4703:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "4751:5:74", + "nodeType": "YulIdentifier", + "src": "4751:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "4719:31:74", + "nodeType": "YulIdentifier", + "src": "4719:31:74" + }, + "nativeSrc": "4719:38:74", + "nodeType": "YulFunctionCall", + "src": "4719:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "4707:8:74", + "nodeType": "YulTypedName", + "src": "4707:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4770:63:74", + "nodeType": "YulVariableDeclaration", + "src": "4770:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "4793:8:74", + "nodeType": "YulIdentifier", + "src": "4793:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "4821:10:74", + "nodeType": "YulIdentifier", + "src": "4821:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "4803:17:74", + "nodeType": "YulIdentifier", + "src": "4803:17:74" + }, + "nativeSrc": "4803:29:74", + "nodeType": "YulFunctionCall", + "src": "4803:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4789:3:74", + "nodeType": "YulIdentifier", + "src": "4789:3:74" + }, + "nativeSrc": "4789:44:74", + "nodeType": "YulFunctionCall", + "src": "4789:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "4774:11:74", + "nodeType": "YulTypedName", + "src": "4774:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4990:27:74", + "nodeType": "YulBlock", + "src": "4990:27:74", + "statements": [ + { + "nativeSrc": "4992:23:74", + "nodeType": "YulAssignment", + "src": "4992:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "5007:8:74", + "nodeType": "YulIdentifier", + "src": "5007:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "4992:11:74", + "nodeType": "YulIdentifier", + "src": "4992:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "4974:10:74", + "nodeType": "YulIdentifier", + "src": "4974:10:74" + }, + { + "kind": "number", + "nativeSrc": "4986:2:74", + "nodeType": "YulLiteral", + "src": "4986:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4971:2:74", + "nodeType": "YulIdentifier", + "src": "4971:2:74" + }, + "nativeSrc": "4971:18:74", + "nodeType": "YulFunctionCall", + "src": "4971:18:74" + }, + "nativeSrc": "4968:49:74", + "nodeType": "YulIf", + "src": "4968:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "5059:11:74", + "nodeType": "YulIdentifier", + "src": "5059:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "5076:8:74", + "nodeType": "YulIdentifier", + "src": "5076:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "5104:3:74", + "nodeType": "YulIdentifier", + "src": "5104:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "5086:17:74", + "nodeType": "YulIdentifier", + "src": "5086:17:74" + }, + "nativeSrc": "5086:22:74", + "nodeType": "YulFunctionCall", + "src": "5086:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5072:3:74", + "nodeType": "YulIdentifier", + "src": "5072:3:74" + }, + "nativeSrc": "5072:37:74", + "nodeType": "YulFunctionCall", + "src": "5072:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "5030:28:74", + "nodeType": "YulIdentifier", + "src": "5030:28:74" + }, + "nativeSrc": "5030:80:74", + "nodeType": "YulFunctionCall", + "src": "5030:80:74" + }, + "nativeSrc": "5030:80:74", + "nodeType": "YulExpressionStatement", + "src": "5030:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "4680:3:74", + "nodeType": "YulIdentifier", + "src": "4680:3:74" + }, + { + "kind": "number", + "nativeSrc": "4685:2:74", + "nodeType": "YulLiteral", + "src": "4685:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4677:2:74", + "nodeType": "YulIdentifier", + "src": "4677:2:74" + }, + "nativeSrc": "4677:11:74", + "nodeType": "YulFunctionCall", + "src": "4677:11:74" + }, + "nativeSrc": "4674:446:74", + "nodeType": "YulIf", + "src": "4674:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "4584:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "4639:5:74", + "nodeType": "YulTypedName", + "src": "4639:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "4646:3:74", + "nodeType": "YulTypedName", + "src": "4646:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "4651:10:74", + "nodeType": "YulTypedName", + "src": "4651:10:74", + "type": "" + } + ], + "src": "4584:543:74" + }, + { + "body": { + "nativeSrc": "5196:54:74", + "nodeType": "YulBlock", + "src": "5196:54:74", + "statements": [ + { + "nativeSrc": "5206:37:74", + "nodeType": "YulAssignment", + "src": "5206:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "5231:4:74", + "nodeType": "YulIdentifier", + "src": "5231:4:74" + }, + { + "name": "value", + "nativeSrc": "5237:5:74", + "nodeType": "YulIdentifier", + "src": "5237:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "5227:3:74", + "nodeType": "YulIdentifier", + "src": "5227:3:74" + }, + "nativeSrc": "5227:16:74", + "nodeType": "YulFunctionCall", + "src": "5227:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "5206:8:74", + "nodeType": "YulIdentifier", + "src": "5206:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "5133:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "5171:4:74", + "nodeType": "YulTypedName", + "src": "5171:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "5177:5:74", + "nodeType": "YulTypedName", + "src": "5177:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "5187:8:74", + "nodeType": "YulTypedName", + "src": "5187:8:74", + "type": "" + } + ], + "src": "5133:117:74" + }, + { + "body": { + "nativeSrc": "5307:118:74", + "nodeType": "YulBlock", + "src": "5307:118:74", + "statements": [ + { + "nativeSrc": "5317:68:74", + "nodeType": "YulVariableDeclaration", + "src": "5317:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5366:1:74", + "nodeType": "YulLiteral", + "src": "5366:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "5369:5:74", + "nodeType": "YulIdentifier", + "src": "5369:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "5362:3:74", + "nodeType": "YulIdentifier", + "src": "5362:3:74" + }, + "nativeSrc": "5362:13:74", + "nodeType": "YulFunctionCall", + "src": "5362:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5381:1:74", + "nodeType": "YulLiteral", + "src": "5381:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "5377:3:74", + "nodeType": "YulIdentifier", + "src": "5377:3:74" + }, + "nativeSrc": "5377:6:74", + "nodeType": "YulFunctionCall", + "src": "5377:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "5333:28:74", + "nodeType": "YulIdentifier", + "src": "5333:28:74" + }, + "nativeSrc": "5333:51:74", + "nodeType": "YulFunctionCall", + "src": "5333:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "5329:3:74", + "nodeType": "YulIdentifier", + "src": "5329:3:74" + }, + "nativeSrc": "5329:56:74", + "nodeType": "YulFunctionCall", + "src": "5329:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "5321:4:74", + "nodeType": "YulTypedName", + "src": "5321:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5394:25:74", + "nodeType": "YulAssignment", + "src": "5394:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "5408:4:74", + "nodeType": "YulIdentifier", + "src": "5408:4:74" + }, + { + "name": "mask", + "nativeSrc": "5414:4:74", + "nodeType": "YulIdentifier", + "src": "5414:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5404:3:74", + "nodeType": "YulIdentifier", + "src": "5404:3:74" + }, + "nativeSrc": "5404:15:74", + "nodeType": "YulFunctionCall", + "src": "5404:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "5394:6:74", + "nodeType": "YulIdentifier", + "src": "5394:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "5256:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "5284:4:74", + "nodeType": "YulTypedName", + "src": "5284:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "5290:5:74", + "nodeType": "YulTypedName", + "src": "5290:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "5300:6:74", + "nodeType": "YulTypedName", + "src": "5300:6:74", + "type": "" + } + ], + "src": "5256:169:74" + }, + { + "body": { + "nativeSrc": "5511:214:74", + "nodeType": "YulBlock", + "src": "5511:214:74", + "statements": [ + { + "nativeSrc": "5644:37:74", + "nodeType": "YulAssignment", + "src": "5644:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "5671:4:74", + "nodeType": "YulIdentifier", + "src": "5671:4:74" + }, + { + "name": "len", + "nativeSrc": "5677:3:74", + "nodeType": "YulIdentifier", + "src": "5677:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "5652:18:74", + "nodeType": "YulIdentifier", + "src": "5652:18:74" + }, + "nativeSrc": "5652:29:74", + "nodeType": "YulFunctionCall", + "src": "5652:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "5644:4:74", + "nodeType": "YulIdentifier", + "src": "5644:4:74" + } + ] + }, + { + "nativeSrc": "5690:29:74", + "nodeType": "YulAssignment", + "src": "5690:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "5701:4:74", + "nodeType": "YulIdentifier", + "src": "5701:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5711:1:74", + "nodeType": "YulLiteral", + "src": "5711:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "5714:3:74", + "nodeType": "YulIdentifier", + "src": "5714:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "5707:3:74", + "nodeType": "YulIdentifier", + "src": "5707:3:74" + }, + "nativeSrc": "5707:11:74", + "nodeType": "YulFunctionCall", + "src": "5707:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "5698:2:74", + "nodeType": "YulIdentifier", + "src": "5698:2:74" + }, + "nativeSrc": "5698:21:74", + "nodeType": "YulFunctionCall", + "src": "5698:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "5690:4:74", + "nodeType": "YulIdentifier", + "src": "5690:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "5430:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "5492:4:74", + "nodeType": "YulTypedName", + "src": "5492:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "5498:3:74", + "nodeType": "YulTypedName", + "src": "5498:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "5506:4:74", + "nodeType": "YulTypedName", + "src": "5506:4:74", + "type": "" + } + ], + "src": "5430:295:74" + }, + { + "body": { + "nativeSrc": "5822:1303:74", + "nodeType": "YulBlock", + "src": "5822:1303:74", + "statements": [ + { + "nativeSrc": "5833:51:74", + "nodeType": "YulVariableDeclaration", + "src": "5833:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "5880:3:74", + "nodeType": "YulIdentifier", + "src": "5880:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "5847:32:74", + "nodeType": "YulIdentifier", + "src": "5847:32:74" + }, + "nativeSrc": "5847:37:74", + "nodeType": "YulFunctionCall", + "src": "5847:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "5837:6:74", + "nodeType": "YulTypedName", + "src": "5837:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "5969:22:74", + "nodeType": "YulBlock", + "src": "5969:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "5971:16:74", + "nodeType": "YulIdentifier", + "src": "5971:16:74" + }, + "nativeSrc": "5971:18:74", + "nodeType": "YulFunctionCall", + "src": "5971:18:74" + }, + "nativeSrc": "5971:18:74", + "nodeType": "YulExpressionStatement", + "src": "5971:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "5941:6:74", + "nodeType": "YulIdentifier", + "src": "5941:6:74" + }, + { + "kind": "number", + "nativeSrc": "5949:18:74", + "nodeType": "YulLiteral", + "src": "5949:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5938:2:74", + "nodeType": "YulIdentifier", + "src": "5938:2:74" + }, + "nativeSrc": "5938:30:74", + "nodeType": "YulFunctionCall", + "src": "5938:30:74" + }, + "nativeSrc": "5935:56:74", + "nodeType": "YulIf", + "src": "5935:56:74" + }, + { + "nativeSrc": "6001:52:74", + "nodeType": "YulVariableDeclaration", + "src": "6001:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6047:4:74", + "nodeType": "YulIdentifier", + "src": "6047:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "6041:5:74", + "nodeType": "YulIdentifier", + "src": "6041:5:74" + }, + "nativeSrc": "6041:11:74", + "nodeType": "YulFunctionCall", + "src": "6041:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "6015:25:74", + "nodeType": "YulIdentifier", + "src": "6015:25:74" + }, + "nativeSrc": "6015:38:74", + "nodeType": "YulFunctionCall", + "src": "6015:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "6005:6:74", + "nodeType": "YulTypedName", + "src": "6005:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6146:4:74", + "nodeType": "YulIdentifier", + "src": "6146:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "6152:6:74", + "nodeType": "YulIdentifier", + "src": "6152:6:74" + }, + { + "name": "newLen", + "nativeSrc": "6160:6:74", + "nodeType": "YulIdentifier", + "src": "6160:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "6100:45:74", + "nodeType": "YulIdentifier", + "src": "6100:45:74" + }, + "nativeSrc": "6100:67:74", + "nodeType": "YulFunctionCall", + "src": "6100:67:74" + }, + "nativeSrc": "6100:67:74", + "nodeType": "YulExpressionStatement", + "src": "6100:67:74" + }, + { + "nativeSrc": "6177:18:74", + "nodeType": "YulVariableDeclaration", + "src": "6177:18:74", + "value": { + "kind": "number", + "nativeSrc": "6194:1:74", + "nodeType": "YulLiteral", + "src": "6194:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "6181:9:74", + "nodeType": "YulTypedName", + "src": "6181:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6205:17:74", + "nodeType": "YulAssignment", + "src": "6205:17:74", + "value": { + "kind": "number", + "nativeSrc": "6218:4:74", + "nodeType": "YulLiteral", + "src": "6218:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "6205:9:74", + "nodeType": "YulIdentifier", + "src": "6205:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "6269:611:74", + "nodeType": "YulBlock", + "src": "6269:611:74", + "statements": [ + { + "nativeSrc": "6283:37:74", + "nodeType": "YulVariableDeclaration", + "src": "6283:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "6302:6:74", + "nodeType": "YulIdentifier", + "src": "6302:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6314:4:74", + "nodeType": "YulLiteral", + "src": "6314:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6310:3:74", + "nodeType": "YulIdentifier", + "src": "6310:3:74" + }, + "nativeSrc": "6310:9:74", + "nodeType": "YulFunctionCall", + "src": "6310:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6298:3:74", + "nodeType": "YulIdentifier", + "src": "6298:3:74" + }, + "nativeSrc": "6298:22:74", + "nodeType": "YulFunctionCall", + "src": "6298:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "6287:7:74", + "nodeType": "YulTypedName", + "src": "6287:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6334:51:74", + "nodeType": "YulVariableDeclaration", + "src": "6334:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6380:4:74", + "nodeType": "YulIdentifier", + "src": "6380:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "6348:31:74", + "nodeType": "YulIdentifier", + "src": "6348:31:74" + }, + "nativeSrc": "6348:37:74", + "nodeType": "YulFunctionCall", + "src": "6348:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "6338:6:74", + "nodeType": "YulTypedName", + "src": "6338:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6398:10:74", + "nodeType": "YulVariableDeclaration", + "src": "6398:10:74", + "value": { + "kind": "number", + "nativeSrc": "6407:1:74", + "nodeType": "YulLiteral", + "src": "6407:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "6402:1:74", + "nodeType": "YulTypedName", + "src": "6402:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6466:163:74", + "nodeType": "YulBlock", + "src": "6466:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "6491:6:74", + "nodeType": "YulIdentifier", + "src": "6491:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "6509:3:74", + "nodeType": "YulIdentifier", + "src": "6509:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "6514:9:74", + "nodeType": "YulIdentifier", + "src": "6514:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6505:3:74", + "nodeType": "YulIdentifier", + "src": "6505:3:74" + }, + "nativeSrc": "6505:19:74", + "nodeType": "YulFunctionCall", + "src": "6505:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6499:5:74", + "nodeType": "YulIdentifier", + "src": "6499:5:74" + }, + "nativeSrc": "6499:26:74", + "nodeType": "YulFunctionCall", + "src": "6499:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "6484:6:74", + "nodeType": "YulIdentifier", + "src": "6484:6:74" + }, + "nativeSrc": "6484:42:74", + "nodeType": "YulFunctionCall", + "src": "6484:42:74" + }, + "nativeSrc": "6484:42:74", + "nodeType": "YulExpressionStatement", + "src": "6484:42:74" + }, + { + "nativeSrc": "6543:24:74", + "nodeType": "YulAssignment", + "src": "6543:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "6557:6:74", + "nodeType": "YulIdentifier", + "src": "6557:6:74" + }, + { + "kind": "number", + "nativeSrc": "6565:1:74", + "nodeType": "YulLiteral", + "src": "6565:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6553:3:74", + "nodeType": "YulIdentifier", + "src": "6553:3:74" + }, + "nativeSrc": "6553:14:74", + "nodeType": "YulFunctionCall", + "src": "6553:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "6543:6:74", + "nodeType": "YulIdentifier", + "src": "6543:6:74" + } + ] + }, + { + "nativeSrc": "6584:31:74", + "nodeType": "YulAssignment", + "src": "6584:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "6601:9:74", + "nodeType": "YulIdentifier", + "src": "6601:9:74" + }, + { + "kind": "number", + "nativeSrc": "6612:2:74", + "nodeType": "YulLiteral", + "src": "6612:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6597:3:74", + "nodeType": "YulIdentifier", + "src": "6597:3:74" + }, + "nativeSrc": "6597:18:74", + "nodeType": "YulFunctionCall", + "src": "6597:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "6584:9:74", + "nodeType": "YulIdentifier", + "src": "6584:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "6432:1:74", + "nodeType": "YulIdentifier", + "src": "6432:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "6435:7:74", + "nodeType": "YulIdentifier", + "src": "6435:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6429:2:74", + "nodeType": "YulIdentifier", + "src": "6429:2:74" + }, + "nativeSrc": "6429:14:74", + "nodeType": "YulFunctionCall", + "src": "6429:14:74" + }, + "nativeSrc": "6421:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "6444:21:74", + "nodeType": "YulBlock", + "src": "6444:21:74", + "statements": [ + { + "nativeSrc": "6446:17:74", + "nodeType": "YulAssignment", + "src": "6446:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "6455:1:74", + "nodeType": "YulIdentifier", + "src": "6455:1:74" + }, + { + "kind": "number", + "nativeSrc": "6458:4:74", + "nodeType": "YulLiteral", + "src": "6458:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6451:3:74", + "nodeType": "YulIdentifier", + "src": "6451:3:74" + }, + "nativeSrc": "6451:12:74", + "nodeType": "YulFunctionCall", + "src": "6451:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "6446:1:74", + "nodeType": "YulIdentifier", + "src": "6446:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "6425:3:74", + "nodeType": "YulBlock", + "src": "6425:3:74", + "statements": [] + }, + "src": "6421:208:74" + }, + { + "body": { + "nativeSrc": "6665:156:74", + "nodeType": "YulBlock", + "src": "6665:156:74", + "statements": [ + { + "nativeSrc": "6683:43:74", + "nodeType": "YulVariableDeclaration", + "src": "6683:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "6710:3:74", + "nodeType": "YulIdentifier", + "src": "6710:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "6715:9:74", + "nodeType": "YulIdentifier", + "src": "6715:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6706:3:74", + "nodeType": "YulIdentifier", + "src": "6706:3:74" + }, + "nativeSrc": "6706:19:74", + "nodeType": "YulFunctionCall", + "src": "6706:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6700:5:74", + "nodeType": "YulIdentifier", + "src": "6700:5:74" + }, + "nativeSrc": "6700:26:74", + "nodeType": "YulFunctionCall", + "src": "6700:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "6687:9:74", + "nodeType": "YulTypedName", + "src": "6687:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "6750:6:74", + "nodeType": "YulIdentifier", + "src": "6750:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "6777:9:74", + "nodeType": "YulIdentifier", + "src": "6777:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "6792:6:74", + "nodeType": "YulIdentifier", + "src": "6792:6:74" + }, + { + "kind": "number", + "nativeSrc": "6800:4:74", + "nodeType": "YulLiteral", + "src": "6800:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6788:3:74", + "nodeType": "YulIdentifier", + "src": "6788:3:74" + }, + "nativeSrc": "6788:17:74", + "nodeType": "YulFunctionCall", + "src": "6788:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "6758:18:74", + "nodeType": "YulIdentifier", + "src": "6758:18:74" + }, + "nativeSrc": "6758:48:74", + "nodeType": "YulFunctionCall", + "src": "6758:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "6743:6:74", + "nodeType": "YulIdentifier", + "src": "6743:6:74" + }, + "nativeSrc": "6743:64:74", + "nodeType": "YulFunctionCall", + "src": "6743:64:74" + }, + "nativeSrc": "6743:64:74", + "nodeType": "YulExpressionStatement", + "src": "6743:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "6648:7:74", + "nodeType": "YulIdentifier", + "src": "6648:7:74" + }, + { + "name": "newLen", + "nativeSrc": "6657:6:74", + "nodeType": "YulIdentifier", + "src": "6657:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6645:2:74", + "nodeType": "YulIdentifier", + "src": "6645:2:74" + }, + "nativeSrc": "6645:19:74", + "nodeType": "YulFunctionCall", + "src": "6645:19:74" + }, + "nativeSrc": "6642:179:74", + "nodeType": "YulIf", + "src": "6642:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6841:4:74", + "nodeType": "YulIdentifier", + "src": "6841:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "6855:6:74", + "nodeType": "YulIdentifier", + "src": "6855:6:74" + }, + { + "kind": "number", + "nativeSrc": "6863:1:74", + "nodeType": "YulLiteral", + "src": "6863:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6851:3:74", + "nodeType": "YulIdentifier", + "src": "6851:3:74" + }, + "nativeSrc": "6851:14:74", + "nodeType": "YulFunctionCall", + "src": "6851:14:74" + }, + { + "kind": "number", + "nativeSrc": "6867:1:74", + "nodeType": "YulLiteral", + "src": "6867:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6847:3:74", + "nodeType": "YulIdentifier", + "src": "6847:3:74" + }, + "nativeSrc": "6847:22:74", + "nodeType": "YulFunctionCall", + "src": "6847:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "6834:6:74", + "nodeType": "YulIdentifier", + "src": "6834:6:74" + }, + "nativeSrc": "6834:36:74", + "nodeType": "YulFunctionCall", + "src": "6834:36:74" + }, + "nativeSrc": "6834:36:74", + "nodeType": "YulExpressionStatement", + "src": "6834:36:74" + } + ] + }, + "nativeSrc": "6262:618:74", + "nodeType": "YulCase", + "src": "6262:618:74", + "value": { + "kind": "number", + "nativeSrc": "6267:1:74", + "nodeType": "YulLiteral", + "src": "6267:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "6897:222:74", + "nodeType": "YulBlock", + "src": "6897:222:74", + "statements": [ + { + "nativeSrc": "6911:14:74", + "nodeType": "YulVariableDeclaration", + "src": "6911:14:74", + "value": { + "kind": "number", + "nativeSrc": "6924:1:74", + "nodeType": "YulLiteral", + "src": "6924:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "6915:5:74", + "nodeType": "YulTypedName", + "src": "6915:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6948:67:74", + "nodeType": "YulBlock", + "src": "6948:67:74", + "statements": [ + { + "nativeSrc": "6966:35:74", + "nodeType": "YulAssignment", + "src": "6966:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "6985:3:74", + "nodeType": "YulIdentifier", + "src": "6985:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "6990:9:74", + "nodeType": "YulIdentifier", + "src": "6990:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6981:3:74", + "nodeType": "YulIdentifier", + "src": "6981:3:74" + }, + "nativeSrc": "6981:19:74", + "nodeType": "YulFunctionCall", + "src": "6981:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "6975:5:74", + "nodeType": "YulIdentifier", + "src": "6975:5:74" + }, + "nativeSrc": "6975:26:74", + "nodeType": "YulFunctionCall", + "src": "6975:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6966:5:74", + "nodeType": "YulIdentifier", + "src": "6966:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "6941:6:74", + "nodeType": "YulIdentifier", + "src": "6941:6:74" + }, + "nativeSrc": "6938:77:74", + "nodeType": "YulIf", + "src": "6938:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7035:4:74", + "nodeType": "YulIdentifier", + "src": "7035:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7094:5:74", + "nodeType": "YulIdentifier", + "src": "7094:5:74" + }, + { + "name": "newLen", + "nativeSrc": "7101:6:74", + "nodeType": "YulIdentifier", + "src": "7101:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "7041:52:74", + "nodeType": "YulIdentifier", + "src": "7041:52:74" + }, + "nativeSrc": "7041:67:74", + "nodeType": "YulFunctionCall", + "src": "7041:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7028:6:74", + "nodeType": "YulIdentifier", + "src": "7028:6:74" + }, + "nativeSrc": "7028:81:74", + "nodeType": "YulFunctionCall", + "src": "7028:81:74" + }, + "nativeSrc": "7028:81:74", + "nodeType": "YulExpressionStatement", + "src": "7028:81:74" + } + ] + }, + "nativeSrc": "6889:230:74", + "nodeType": "YulCase", + "src": "6889:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "6242:6:74", + "nodeType": "YulIdentifier", + "src": "6242:6:74" + }, + { + "kind": "number", + "nativeSrc": "6250:2:74", + "nodeType": "YulLiteral", + "src": "6250:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6239:2:74", + "nodeType": "YulIdentifier", + "src": "6239:2:74" + }, + "nativeSrc": "6239:14:74", + "nodeType": "YulFunctionCall", + "src": "6239:14:74" + }, + "nativeSrc": "6232:887:74", + "nodeType": "YulSwitch", + "src": "6232:887:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nativeSrc": "5730:1395:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "5811:4:74", + "nodeType": "YulTypedName", + "src": "5811:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "5817:3:74", + "nodeType": "YulTypedName", + "src": "5817:3:74", + "type": "" + } + ], + "src": "5730:1395:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_contract$_ENS_$4567t_bytes32_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50604051613ebc380380613ebc83398181016040528101906100329190610258565b6040518060200160405280600081525060405180602001604052806000815250816000908161006191906104e8565b50806001908161007191906104e8565b5050506100906100856100df60201b60201c565b6100e760201b60201c565b81600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060098190555050506105ba565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101dd826101b2565b9050919050565b60006101ef826101d2565b9050919050565b6101ff816101e4565b811461020a57600080fd5b50565b60008151905061021c816101f6565b92915050565b6000819050919050565b61023581610222565b811461024057600080fd5b50565b6000815190506102528161022c565b92915050565b6000806040838503121561026f5761026e6101ad565b5b600061027d8582860161020d565b925050602061028e85828601610243565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061031957607f821691505b60208210810361032c5761032b6102d2565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026103947fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610357565b61039e8683610357565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006103e56103e06103db846103b6565b6103c0565b6103b6565b9050919050565b6000819050919050565b6103ff836103ca565b61041361040b826103ec565b848454610364565b825550505050565b600090565b61042861041b565b6104338184846103f6565b505050565b5b818110156104575761044c600082610420565b600181019050610439565b5050565b601f82111561049c5761046d81610332565b61047684610347565b81016020851015610485578190505b61049961049185610347565b830182610438565b50505b505050565b600082821c905092915050565b60006104bf600019846008026104a1565b1980831691505092915050565b60006104d883836104ae565b9150826002028217905092915050565b6104f182610298565b67ffffffffffffffff81111561050a576105096102a3565b5b6105148254610301565b61051f82828561045b565b600060209050601f8311600181146105525760008415610540578287015190505b61054a85826104cc565b8655506105b2565b601f19841661056086610332565b60005b8281101561058857848901518255600182019150602085019450602081019050610563565b868310156105a557848901516105a1601f8916826104ae565b8355505b6001600288020188555050505b505050505050565b6138f3806105c96000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c514610552578063f2fde38b14610582578063f6a74ed71461059e578063fca247ac146105ba576101cf565b8063c87b56dd146104a4578063d6e4fa86146104d4578063da8c229e14610504578063ddf7fcb014610534576101cf565b8063a7fc7a07116100de578063a7fc7a071461041e578063b88d4fde1461043a578063c1a287e214610456578063c475abff14610474576101cf565b806395d89b41146103b457806396e494e8146103d2578063a22cb46514610402576101cf565b80633f15457f116101715780636352211e1161014b5780636352211e1461032c57806370a082311461035c578063715018a61461038c5780638da5cb5b14610396576101cf565b80633f15457f146102d657806342842e0e146102f45780634e543b2614610310576101cf565b8063095ea7b3116101ad578063095ea7b3146102525780630e297b451461026e57806323b872dd1461029e57806328ed4f6c146102ba576101cf565b806301ffc9a7146101d457806306fdde0314610204578063081812fc14610222575b600080fd5b6101ee60048036038101906101e99190612812565b6105ea565b6040516101fb919061285a565b60405180910390f35b61020c610834565b6040516102199190612905565b60405180910390f35b61023c6004803603810190610237919061295d565b6108c6565b60405161024991906129cb565b60405180910390f35b61026c60048036038101906102679190612a12565b61090c565b005b61028860048036038101906102839190612a52565b610a23565b6040516102959190612ab4565b60405180910390f35b6102b860048036038101906102b39190612acf565b610a3b565b005b6102d460048036038101906102cf9190612b22565b610a9b565b005b6102de610c2f565b6040516102eb9190612bc1565b60405180910390f35b61030e60048036038101906103099190612acf565b610c55565b005b61032a60048036038101906103259190612bdc565b610c75565b005b6103466004803603810190610341919061295d565b610d11565b60405161035391906129cb565b60405180910390f35b61037660048036038101906103719190612bdc565b610d42565b6040516103839190612ab4565b60405180910390f35b610394610df9565b005b61039e610e0d565b6040516103ab91906129cb565b60405180910390f35b6103bc610e37565b6040516103c99190612905565b60405180910390f35b6103ec60048036038101906103e7919061295d565b610ec9565b6040516103f9919061285a565b60405180910390f35b61041c60048036038101906104179190612c35565b610ef6565b005b61043860048036038101906104339190612bdc565b610f0c565b005b610454600480360381019061044f9190612daa565b610fb2565b005b61045e611014565b60405161046b9190612ab4565b60405180910390f35b61048e60048036038101906104899190612e2d565b61101b565b60405161049b9190612ab4565b60405180910390f35b6104be60048036038101906104b9919061295d565b61124d565b6040516104cb9190612905565b60405180910390f35b6104ee60048036038101906104e9919061295d565b6112b5565b6040516104fb9190612ab4565b60405180910390f35b61051e60048036038101906105199190612bdc565b6112d2565b60405161052b919061285a565b60405180910390f35b61053c6112f2565b6040516105499190612e86565b60405180910390f35b61056c60048036038101906105679190612ea1565b6112f8565b604051610579919061285a565b60405180910390f35b61059c60048036038101906105979190612bdc565b61138c565b005b6105b860048036038101906105b39190612bdc565b61140f565b005b6105d460048036038101906105cf9190612a52565b6114b5565b6040516105e19190612ab4565b60405180910390f35b60007f01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e27bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107c557507fb88d4fde60196325a28bb7f99a2582e0b46de55b18761e960c14ad7a320994657f42842e0eb38857a7775b4e7364b2775df7325074d088e7fb39590cd6281184ed7f23b872dd7302113369cda2901243429419bec145408fa8b352b3dd92b66c680b7fe985e9c5c6636c6879256001057b28ccac7718ef0ac56553ff9b926452cab8a37fa22cb4651ab9570f89bb516380c40ce76762284fb1f21337ceaf6adab99e7d4a7f081812fc55e34fdc7cf5d8b5cf4e3621fa6423fde952ec6ab24afdc0d85c0b2e7f095ea7b334ae44009aa867bfb386f5c3b4b443ac6f0ee573fa91c4608fbadfba7f6352211e6566aa027e75ac9dbf2423197fbd9b82b9d981a3ab367d355866aa1c7f70a08231b98ef4ca268c9cc3f6b4590e4bfec28280db06bb5d45e689f2a360be18181818181818187bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061082d57507f28ed4f6c74b219a5819055dfbcd2f1837c046c364cf01fabb6799e4f440d6f137bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606000805461084390612f10565b80601f016020809104026020016040519081016040528092919081815260200182805461086f90612f10565b80156108bc5780601f10610891576101008083540402835291602001916108bc565b820191906000526020600020905b81548152906001019060200180831161089f57829003601f168201915b5050505050905090565b60006108d1826114cd565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061091782611518565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610987576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097e90612fb3565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109a661159e565b73ffffffffffffffffffffffffffffffffffffffff1614806109d557506109d4816109cf61159e565b6112f8565b5b610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90613045565b60405180910390fd5b610a1e83836115a6565b505050565b6000610a32848484600061165f565b90509392505050565b610a4c610a4661159e565b82611935565b610a8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a82906130d7565b60405180910390fd5b610a968383836119ca565b505050565b3073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b8152600401610b0f9190612e86565b602060405180830381865afa158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b50919061310c565b73ffffffffffffffffffffffffffffffffffffffff1614610b7057600080fd5b610b7a3383611935565b610b8357600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59236009548460001b846040518463ffffffff1660e01b8152600401610be793929190613139565b6020604051808303816000875af1158015610c06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2a919061319c565b505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610c7083838360405180602001604052806000815250610fb2565b505050565b610c7d611cc3565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a600954836040518363ffffffff1660e01b8152600401610cdc9291906131c9565b600060405180830381600087803b158015610cf657600080fd5b505af1158015610d0a573d6000803e3d6000fd5b5050505050565b600042600760008481526020019081526020016000205411610d3257600080fd5b610d3b82611518565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da990613264565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610e01611cc3565b610e0b6000611d41565b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610e4690612f10565b80601f0160208091040260200160405190810160405280929190818152602001828054610e7290612f10565b8015610ebf5780601f10610e9457610100808354040283529160200191610ebf565b820191906000526020600020905b815481529060010190602001808311610ea257829003601f168201915b5050505050905090565b6000426276a7006007600085815260200190815260200160002054610eee91906132b3565b109050919050565b610f08610f0161159e565b8383611e07565b5050565b610f14611cc3565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d747460405160405180910390a250565b610fc3610fbd61159e565b83611935565b611002576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff9906130d7565b60405180910390fd5b61100e84848484611f73565b50505050565b6276a70081565b60003073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b81526004016110919190612e86565b602060405180830381865afa1580156110ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d2919061310c565b73ffffffffffffffffffffffffffffffffffffffff16146110f257600080fd5b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661114857600080fd5b426276a700600760008681526020019081526020016000205461116b91906132b3565b101561117657600080fd5b6276a7008261118591906132b3565b6276a7008360076000878152602001908152602001600020546111a891906132b3565b6111b291906132b3565b116111bc57600080fd5b816007600085815260200190815260200160002060008282546111df91906132b3565b92505081905550827f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd660076000868152602001908152602001600020546040516112299190612ab4565b60405180910390a26007600084815260200190815260200160002054905092915050565b6060611258826114cd565b6000611262611fcf565b9050600081511161128257604051806020016040528060008152506112ad565b8061128c84611fe6565b60405160200161129d929190613323565b6040516020818303038152906040525b915050919050565b600060076000838152602001908152602001600020549050919050565b600a6020528060005260406000206000915054906101000a900460ff1681565b60095481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611394611cc3565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611403576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fa906133b9565b60405180910390fd5b61140c81611d41565b50565b611417611cc3565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e8111360405160405180910390a250565b60006114c4848484600161165f565b90509392505050565b6114d6816120b4565b611515576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150c90613425565b60405180910390fd5b50565b600080611524836120f5565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611595576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158c90613425565b60405180910390fd5b80915050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661161983611518565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b81526004016116d59190612e86565b602060405180830381865afa1580156116f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611716919061310c565b73ffffffffffffffffffffffffffffffffffffffff161461173657600080fd5b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661178c57600080fd5b61179585610ec9565b61179e57600080fd5b6276a700426117ad91906132b3565b6276a70084426117bd91906132b3565b6117c791906132b3565b116117d157600080fd5b82426117dd91906132b3565b60076000878152602001908152602001600020819055506117fd856120b4565b1561180c5761180b85612132565b5b6118168486612280565b81156118c557600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59236009548760001b876040518463ffffffff1660e01b815260040161188093929190613139565b6020604051808303816000875af115801561189f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c3919061319c565b505b8373ffffffffffffffffffffffffffffffffffffffff16857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9854261190a91906132b3565b6040516119179190612ab4565b60405180910390a3824261192b91906132b3565b9050949350505050565b60008061194183610d11565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806119b057508373ffffffffffffffffffffffffffffffffffffffff16611998846108c6565b73ffffffffffffffffffffffffffffffffffffffff16145b806119c157506119c081856112f8565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166119ea82611518565b73ffffffffffffffffffffffffffffffffffffffff1614611a40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a37906134b7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611aaf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa690613549565b60405180910390fd5b611abc838383600161249d565b8273ffffffffffffffffffffffffffffffffffffffff16611adc82611518565b73ffffffffffffffffffffffffffffffffffffffff1614611b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b29906134b7565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611cbe83838360016124a3565b505050565b611ccb61159e565b73ffffffffffffffffffffffffffffffffffffffff16611ce9610e0d565b73ffffffffffffffffffffffffffffffffffffffff1614611d3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d36906135b5565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6c90613621565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611f66919061285a565b60405180910390a3505050565b611f7e8484846119ca565b611f8a848484846124a9565b611fc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc0906136b3565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b606060006001611ff584612630565b01905060008167ffffffffffffffff81111561201457612013612c7f565b5b6040519080825280601f01601f1916602001820160405280156120465781602001600182028036833780820191505090505b509050600082602001820190505b6001156120a9578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161209d5761209c6136d3565b5b04945060008503612054575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166120d6836120f5565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061213d82611518565b905061214d81600084600161249d565b61215682611518565b90506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461227c8160008460016124a3565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036122ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e69061374e565b60405180910390fd5b6122f8816120b4565b15612338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232f906137ba565b60405180910390fd5b61234660008383600161249d565b61234f816120b4565b1561238f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612386906137ba565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46124996000838360016124a3565b5050565b50505050565b50505050565b60006124ca8473ffffffffffffffffffffffffffffffffffffffff16612783565b15612623578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026124f361159e565b8786866040518563ffffffff1660e01b8152600401612515949392919061382f565b6020604051808303816000875af192505050801561255157506040513d601f19601f8201168201806040525081019061254e9190613890565b60015b6125d3573d8060008114612581576040519150601f19603f3d011682016040523d82523d6000602084013e612586565b606091505b5060008151036125cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125c2906136b3565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612628565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061268e577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381612684576126836136d3565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106126cb576d04ee2d6d415b85acef810000000083816126c1576126c06136d3565b5b0492506020810190505b662386f26fc1000083106126fa57662386f26fc1000083816126f0576126ef6136d3565b5b0492506010810190505b6305f5e1008310612723576305f5e1008381612719576127186136d3565b5b0492506008810190505b612710831061274857612710838161273e5761273d6136d3565b5b0492506004810190505b6064831061276b5760648381612761576127606136d3565b5b0492506002810190505b600a831061277a576001810190505b80915050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6127ef816127ba565b81146127fa57600080fd5b50565b60008135905061280c816127e6565b92915050565b600060208284031215612828576128276127b0565b5b6000612836848285016127fd565b91505092915050565b60008115159050919050565b6128548161283f565b82525050565b600060208201905061286f600083018461284b565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156128af578082015181840152602081019050612894565b60008484015250505050565b6000601f19601f8301169050919050565b60006128d782612875565b6128e18185612880565b93506128f1818560208601612891565b6128fa816128bb565b840191505092915050565b6000602082019050818103600083015261291f81846128cc565b905092915050565b6000819050919050565b61293a81612927565b811461294557600080fd5b50565b60008135905061295781612931565b92915050565b600060208284031215612973576129726127b0565b5b600061298184828501612948565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006129b58261298a565b9050919050565b6129c5816129aa565b82525050565b60006020820190506129e060008301846129bc565b92915050565b6129ef816129aa565b81146129fa57600080fd5b50565b600081359050612a0c816129e6565b92915050565b60008060408385031215612a2957612a286127b0565b5b6000612a37858286016129fd565b9250506020612a4885828601612948565b9150509250929050565b600080600060608486031215612a6b57612a6a6127b0565b5b6000612a7986828701612948565b9350506020612a8a868287016129fd565b9250506040612a9b86828701612948565b9150509250925092565b612aae81612927565b82525050565b6000602082019050612ac96000830184612aa5565b92915050565b600080600060608486031215612ae857612ae76127b0565b5b6000612af6868287016129fd565b9350506020612b07868287016129fd565b9250506040612b1886828701612948565b9150509250925092565b60008060408385031215612b3957612b386127b0565b5b6000612b4785828601612948565b9250506020612b58858286016129fd565b9150509250929050565b6000819050919050565b6000612b87612b82612b7d8461298a565b612b62565b61298a565b9050919050565b6000612b9982612b6c565b9050919050565b6000612bab82612b8e565b9050919050565b612bbb81612ba0565b82525050565b6000602082019050612bd66000830184612bb2565b92915050565b600060208284031215612bf257612bf16127b0565b5b6000612c00848285016129fd565b91505092915050565b612c128161283f565b8114612c1d57600080fd5b50565b600081359050612c2f81612c09565b92915050565b60008060408385031215612c4c57612c4b6127b0565b5b6000612c5a858286016129fd565b9250506020612c6b85828601612c20565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612cb7826128bb565b810181811067ffffffffffffffff82111715612cd657612cd5612c7f565b5b80604052505050565b6000612ce96127a6565b9050612cf58282612cae565b919050565b600067ffffffffffffffff821115612d1557612d14612c7f565b5b612d1e826128bb565b9050602081019050919050565b82818337600083830152505050565b6000612d4d612d4884612cfa565b612cdf565b905082815260208101848484011115612d6957612d68612c7a565b5b612d74848285612d2b565b509392505050565b600082601f830112612d9157612d90612c75565b5b8135612da1848260208601612d3a565b91505092915050565b60008060008060808587031215612dc457612dc36127b0565b5b6000612dd2878288016129fd565b9450506020612de3878288016129fd565b9350506040612df487828801612948565b925050606085013567ffffffffffffffff811115612e1557612e146127b5565b5b612e2187828801612d7c565b91505092959194509250565b60008060408385031215612e4457612e436127b0565b5b6000612e5285828601612948565b9250506020612e6385828601612948565b9150509250929050565b6000819050919050565b612e8081612e6d565b82525050565b6000602082019050612e9b6000830184612e77565b92915050565b60008060408385031215612eb857612eb76127b0565b5b6000612ec6858286016129fd565b9250506020612ed7858286016129fd565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612f2857607f821691505b602082108103612f3b57612f3a612ee1565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f9d602183612880565b9150612fa882612f41565b604082019050919050565b60006020820190508181036000830152612fcc81612f90565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b600061302f603d83612880565b915061303a82612fd3565b604082019050919050565b6000602082019050818103600083015261305e81613022565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006130c1602d83612880565b91506130cc82613065565b604082019050919050565b600060208201905081810360008301526130f0816130b4565b9050919050565b600081519050613106816129e6565b92915050565b600060208284031215613122576131216127b0565b5b6000613130848285016130f7565b91505092915050565b600060608201905061314e6000830186612e77565b61315b6020830185612e77565b61316860408301846129bc565b949350505050565b61317981612e6d565b811461318457600080fd5b50565b60008151905061319681613170565b92915050565b6000602082840312156131b2576131b16127b0565b5b60006131c084828501613187565b91505092915050565b60006040820190506131de6000830185612e77565b6131eb60208301846129bc565b9392505050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600061324e602983612880565b9150613259826131f2565b604082019050919050565b6000602082019050818103600083015261327d81613241565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006132be82612927565b91506132c983612927565b92508282019050808211156132e1576132e0613284565b5b92915050565b600081905092915050565b60006132fd82612875565b61330781856132e7565b9350613317818560208601612891565b80840191505092915050565b600061332f82856132f2565b915061333b82846132f2565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006133a3602683612880565b91506133ae82613347565b604082019050919050565b600060208201905081810360008301526133d281613396565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b600061340f601883612880565b915061341a826133d9565b602082019050919050565b6000602082019050818103600083015261343e81613402565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006134a1602583612880565b91506134ac82613445565b604082019050919050565b600060208201905081810360008301526134d081613494565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613533602483612880565b915061353e826134d7565b604082019050919050565b6000602082019050818103600083015261356281613526565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061359f602083612880565b91506135aa82613569565b602082019050919050565b600060208201905081810360008301526135ce81613592565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b600061360b601983612880565b9150613616826135d5565b602082019050919050565b6000602082019050818103600083015261363a816135fe565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061369d603283612880565b91506136a882613641565b604082019050919050565b600060208201905081810360008301526136cc81613690565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000613738602083612880565b915061374382613702565b602082019050919050565b600060208201905081810360008301526137678161372b565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006137a4601c83612880565b91506137af8261376e565b602082019050919050565b600060208201905081810360008301526137d381613797565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000613801826137da565b61380b81856137e5565b935061381b818560208601612891565b613824816128bb565b840191505092915050565b600060808201905061384460008301876129bc565b61385160208301866129bc565b61385e6040830185612aa5565b818103606083015261387081846137f6565b905095945050505050565b60008151905061388a816127e6565b92915050565b6000602082840312156138a6576138a56127b0565b5b60006138b48482850161387b565b9150509291505056fea2646970667358221220ce6ed99a9396048c9a4eb4b22ae2e47f25583cd77aa5e03c8c8401ee6fcbde8c64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x3EBC CODESIZE SUB DUP1 PUSH2 0x3EBC DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x258 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x61 SWAP2 SWAP1 PUSH2 0x4E8 JUMP JUMPDEST POP DUP1 PUSH1 0x1 SWAP1 DUP2 PUSH2 0x71 SWAP2 SWAP1 PUSH2 0x4E8 JUMP JUMPDEST POP POP POP PUSH2 0x90 PUSH2 0x85 PUSH2 0xDF PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0xE7 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST DUP2 PUSH1 0x8 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH1 0x9 DUP2 SWAP1 SSTORE POP POP POP PUSH2 0x5BA JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x6 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DD DUP3 PUSH2 0x1B2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF DUP3 PUSH2 0x1D2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1FF DUP2 PUSH2 0x1E4 JUMP JUMPDEST DUP2 EQ PUSH2 0x20A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x21C DUP2 PUSH2 0x1F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x235 DUP2 PUSH2 0x222 JUMP JUMPDEST DUP2 EQ PUSH2 0x240 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x252 DUP2 PUSH2 0x22C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x26F JUMPI PUSH2 0x26E PUSH2 0x1AD JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x27D DUP6 DUP3 DUP7 ADD PUSH2 0x20D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x28E DUP6 DUP3 DUP7 ADD PUSH2 0x243 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x319 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x32C JUMPI PUSH2 0x32B PUSH2 0x2D2 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x394 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x357 JUMP JUMPDEST PUSH2 0x39E DUP7 DUP4 PUSH2 0x357 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3E5 PUSH2 0x3E0 PUSH2 0x3DB DUP5 PUSH2 0x3B6 JUMP JUMPDEST PUSH2 0x3C0 JUMP JUMPDEST PUSH2 0x3B6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3FF DUP4 PUSH2 0x3CA JUMP JUMPDEST PUSH2 0x413 PUSH2 0x40B DUP3 PUSH2 0x3EC JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x364 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x428 PUSH2 0x41B JUMP JUMPDEST PUSH2 0x433 DUP2 DUP5 DUP5 PUSH2 0x3F6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x457 JUMPI PUSH2 0x44C PUSH1 0x0 DUP3 PUSH2 0x420 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x439 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x49C JUMPI PUSH2 0x46D DUP2 PUSH2 0x332 JUMP JUMPDEST PUSH2 0x476 DUP5 PUSH2 0x347 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x485 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x499 PUSH2 0x491 DUP6 PUSH2 0x347 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x438 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4BF PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x4A1 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D8 DUP4 DUP4 PUSH2 0x4AE JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4F1 DUP3 PUSH2 0x298 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x50A JUMPI PUSH2 0x509 PUSH2 0x2A3 JUMP JUMPDEST JUMPDEST PUSH2 0x514 DUP3 SLOAD PUSH2 0x301 JUMP JUMPDEST PUSH2 0x51F DUP3 DUP3 DUP6 PUSH2 0x45B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x552 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x540 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x54A DUP6 DUP3 PUSH2 0x4CC JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x5B2 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x560 DUP7 PUSH2 0x332 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x588 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x563 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x5A5 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x5A1 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4AE JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x38F3 DUP1 PUSH2 0x5C9 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1CF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x95D89B41 GT PUSH2 0x104 JUMPI DUP1 PUSH4 0xC87B56DD GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE985E9C5 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x552 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x582 JUMPI DUP1 PUSH4 0xF6A74ED7 EQ PUSH2 0x59E JUMPI DUP1 PUSH4 0xFCA247AC EQ PUSH2 0x5BA JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x4A4 JUMPI DUP1 PUSH4 0xD6E4FA86 EQ PUSH2 0x4D4 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x504 JUMPI DUP1 PUSH4 0xDDF7FCB0 EQ PUSH2 0x534 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0xA7FC7A07 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA7FC7A07 EQ PUSH2 0x41E JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x43A JUMPI DUP1 PUSH4 0xC1A287E2 EQ PUSH2 0x456 JUMPI DUP1 PUSH4 0xC475ABFF EQ PUSH2 0x474 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x3B4 JUMPI DUP1 PUSH4 0x96E494E8 EQ PUSH2 0x3D2 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x402 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x3F15457F GT PUSH2 0x171 JUMPI DUP1 PUSH4 0x6352211E GT PUSH2 0x14B JUMPI DUP1 PUSH4 0x6352211E EQ PUSH2 0x32C JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x35C JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x38C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x396 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x3F15457F EQ PUSH2 0x2D6 JUMPI DUP1 PUSH4 0x42842E0E EQ PUSH2 0x2F4 JUMPI DUP1 PUSH4 0x4E543B26 EQ PUSH2 0x310 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x95EA7B3 GT PUSH2 0x1AD JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x252 JUMPI DUP1 PUSH4 0xE297B45 EQ PUSH2 0x26E JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x29E JUMPI DUP1 PUSH4 0x28ED4F6C EQ PUSH2 0x2BA JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x1D4 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x204 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x222 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E9 SWAP2 SWAP1 PUSH2 0x2812 JUMP JUMPDEST PUSH2 0x5EA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FB SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20C PUSH2 0x834 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x219 SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x237 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x8C6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x249 SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x267 SWAP2 SWAP1 PUSH2 0x2A12 JUMP JUMPDEST PUSH2 0x90C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x288 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x283 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST PUSH2 0xA23 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x295 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2B3 SWAP2 SWAP1 PUSH2 0x2ACF JUMP JUMPDEST PUSH2 0xA3B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2D4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2CF SWAP2 SWAP1 PUSH2 0x2B22 JUMP JUMPDEST PUSH2 0xA9B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DE PUSH2 0xC2F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EB SWAP2 SWAP1 PUSH2 0x2BC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x309 SWAP2 SWAP1 PUSH2 0x2ACF JUMP JUMPDEST PUSH2 0xC55 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x32A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x325 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xC75 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x346 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x341 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0xD11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x353 SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x376 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x371 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xD42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x383 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x394 PUSH2 0xDF9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x39E PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3AB SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3BC PUSH2 0xE37 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C9 SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E7 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0xEC9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F9 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x417 SWAP2 SWAP1 PUSH2 0x2C35 JUMP JUMPDEST PUSH2 0xEF6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x438 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x433 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xF0C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x454 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x44F SWAP2 SWAP1 PUSH2 0x2DAA JUMP JUMPDEST PUSH2 0xFB2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x45E PUSH2 0x1014 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x46B SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x48E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x489 SWAP2 SWAP1 PUSH2 0x2E2D JUMP JUMPDEST PUSH2 0x101B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x49B SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4BE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B9 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x124D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4CB SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4E9 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x12B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4FB SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x51E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x519 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x12D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x52B SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x53C PUSH2 0x12F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x549 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x56C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x567 SWAP2 SWAP1 PUSH2 0x2EA1 JUMP JUMPDEST PUSH2 0x12F8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x579 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x59C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x597 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x138C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B3 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x140F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5D4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5CF SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST PUSH2 0x14B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5E1 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A7A5CEF8BAA21ED3C5C0D7E23ACCB804B619E9333B597F47A0D84076E2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x7C5 JUMPI POP PUSH32 0xB88D4FDE60196325A28BB7F99A2582E0B46DE55B18761E960C14AD7A32099465 PUSH32 0x42842E0EB38857A7775B4E7364B2775DF7325074D088E7FB39590CD6281184ED PUSH32 0x23B872DD7302113369CDA2901243429419BEC145408FA8B352B3DD92B66C680B PUSH32 0xE985E9C5C6636C6879256001057B28CCAC7718EF0AC56553FF9B926452CAB8A3 PUSH32 0xA22CB4651AB9570F89BB516380C40CE76762284FB1F21337CEAF6ADAB99E7D4A PUSH32 0x81812FC55E34FDC7CF5D8B5CF4E3621FA6423FDE952EC6AB24AFDC0D85C0B2E PUSH32 0x95EA7B334AE44009AA867BFB386F5C3B4B443AC6F0EE573FA91C4608FBADFBA PUSH32 0x6352211E6566AA027E75AC9DBF2423197FBD9B82B9D981A3AB367D355866AA1C PUSH32 0x70A08231B98EF4CA268C9CC3F6B4590E4BFEC28280DB06BB5D45E689F2A360BE XOR XOR XOR XOR XOR XOR XOR XOR PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x82D JUMPI POP PUSH32 0x28ED4F6C74B219A5819055DFBCD2F1837C046C364CF01FABB6799E4F440D6F13 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x843 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x86F SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8BC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x891 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8BC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x89F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8D1 DUP3 PUSH2 0x14CD JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x917 DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x987 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x97E SWAP1 PUSH2 0x2FB3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x9A6 PUSH2 0x159E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x9D5 JUMPI POP PUSH2 0x9D4 DUP2 PUSH2 0x9CF PUSH2 0x159E JUMP JUMPDEST PUSH2 0x12F8 JUMP JUMPDEST JUMPDEST PUSH2 0xA14 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA0B SWAP1 PUSH2 0x3045 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA1E DUP4 DUP4 PUSH2 0x15A6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA32 DUP5 DUP5 DUP5 PUSH1 0x0 PUSH2 0x165F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xA4C PUSH2 0xA46 PUSH2 0x159E JUMP JUMPDEST DUP3 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0xA8B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA82 SWAP1 PUSH2 0x30D7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA96 DUP4 DUP4 DUP4 PUSH2 0x19CA JUMP JUMPDEST POP POP POP JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB0F SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB2C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xB50 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xB70 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB7A CALLER DUP4 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0xB83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 PUSH1 0x9 SLOAD DUP5 PUSH1 0x0 SHL DUP5 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBE7 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3139 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0xC06 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC2A SWAP2 SWAP1 PUSH2 0x319C JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0xC70 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0xFB2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0xC7D PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A PUSH1 0x9 SLOAD DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCDC SWAP3 SWAP2 SWAP1 PUSH2 0x31C9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xCF6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xD0A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH1 0x7 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD GT PUSH2 0xD32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3B DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xDB2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDA9 SWAP1 PUSH2 0x3264 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE01 PUSH2 0x1CC3 JUMP JUMPDEST PUSH2 0xE0B PUSH1 0x0 PUSH2 0x1D41 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0xE46 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xE72 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 ISZERO PUSH2 0xEBF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xE94 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xEBF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xEA2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH3 0x76A700 PUSH1 0x7 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xEEE SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST LT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF08 PUSH2 0xF01 PUSH2 0x159E JUMP JUMPDEST DUP4 DUP4 PUSH2 0x1E07 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0xF14 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x1 PUSH1 0xA PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xA8BB31534C0ED46F380CB867BD5C803A189CED9A764E30B3A4991A9901D7474 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH2 0xFC3 PUSH2 0xFBD PUSH2 0x159E JUMP JUMPDEST DUP4 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0x1002 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFF9 SWAP1 PUSH2 0x30D7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x100E DUP5 DUP5 DUP5 DUP5 PUSH2 0x1F73 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH3 0x76A700 DUP2 JUMP JUMPDEST PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1091 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x10AE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x10D2 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x10F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x1148 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST TIMESTAMP PUSH3 0x76A700 PUSH1 0x7 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x116B SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST LT ISZERO PUSH2 0x1176 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 DUP3 PUSH2 0x1185 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH3 0x76A700 DUP4 PUSH1 0x7 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x11A8 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH2 0x11B2 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST GT PUSH2 0x11BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x7 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x11DF SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 PUSH32 0x9B87A00E30F1AC65D898F070F8A3488FE60517182D0A2098E1B4B93A54AA9BD6 PUSH1 0x7 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH1 0x40 MLOAD PUSH2 0x1229 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x7 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1258 DUP3 PUSH2 0x14CD JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1262 PUSH2 0x1FCF JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x1282 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x12AD JUMP JUMPDEST DUP1 PUSH2 0x128C DUP5 PUSH2 0x1FE6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x129D SWAP3 SWAP2 SWAP1 PUSH2 0x3323 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1394 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1403 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FA SWAP1 PUSH2 0x33B9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x140C DUP2 PUSH2 0x1D41 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x1417 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x33D83959BE2573F5453B12EB9D43B3499BC57D96BD2F067BA44803C859E81113 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C4 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x165F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x14D6 DUP2 PUSH2 0x20B4 JUMP JUMPDEST PUSH2 0x1515 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150C SWAP1 PUSH2 0x3425 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1524 DUP4 PUSH2 0x20F5 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1595 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x158C SWAP1 PUSH2 0x3425 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1619 DUP4 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16D5 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x16F2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1716 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1736 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x178C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1795 DUP6 PUSH2 0xEC9 JUMP JUMPDEST PUSH2 0x179E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 TIMESTAMP PUSH2 0x17AD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH3 0x76A700 DUP5 TIMESTAMP PUSH2 0x17BD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH2 0x17C7 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST GT PUSH2 0x17D1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 TIMESTAMP PUSH2 0x17DD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x17FD DUP6 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x180C JUMPI PUSH2 0x180B DUP6 PUSH2 0x2132 JUMP JUMPDEST JUMPDEST PUSH2 0x1816 DUP5 DUP7 PUSH2 0x2280 JUMP JUMPDEST DUP2 ISZERO PUSH2 0x18C5 JUMPI PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 PUSH1 0x9 SLOAD DUP8 PUSH1 0x0 SHL DUP8 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1880 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3139 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x189F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x18C3 SWAP2 SWAP1 PUSH2 0x319C JUMP JUMPDEST POP JUMPDEST DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH32 0xB3D987963D01B2F68493B4BDB130988F157EA43070D4AD840FEE0466ED9370D9 DUP6 TIMESTAMP PUSH2 0x190A SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1917 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP3 TIMESTAMP PUSH2 0x192B SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1941 DUP4 PUSH2 0xD11 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x19B0 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1998 DUP5 PUSH2 0x8C6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST DUP1 PUSH2 0x19C1 JUMPI POP PUSH2 0x19C0 DUP2 DUP6 PUSH2 0x12F8 JUMP JUMPDEST JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x19EA DUP3 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1A40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A37 SWAP1 PUSH2 0x34B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1AAF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AA6 SWAP1 PUSH2 0x3549 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1ABC DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1ADC DUP3 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1B32 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B29 SWAP1 PUSH2 0x34B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1CBE DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x1CCB PUSH2 0x159E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1CE9 PUSH2 0xE0D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1D3F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D36 SWAP1 PUSH2 0x35B5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x6 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1E75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E6C SWAP1 PUSH2 0x3621 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1F66 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x1F7E DUP5 DUP5 DUP5 PUSH2 0x19CA JUMP JUMPDEST PUSH2 0x1F8A DUP5 DUP5 DUP5 DUP5 PUSH2 0x24A9 JUMP JUMPDEST PUSH2 0x1FC9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1FC0 SWAP1 PUSH2 0x36B3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x1FF5 DUP5 PUSH2 0x2630 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2014 JUMPI PUSH2 0x2013 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2046 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x20A9 JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x209D JUMPI PUSH2 0x209C PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x2054 JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x20D6 DUP4 PUSH2 0x20F5 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x213D DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP PUSH2 0x214D DUP2 PUSH1 0x0 DUP5 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST PUSH2 0x2156 DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE DUP2 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x227C DUP2 PUSH1 0x0 DUP5 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x22EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x22E6 SWAP1 PUSH2 0x374E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x22F8 DUP2 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x2338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x232F SWAP1 PUSH2 0x37BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x2346 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST PUSH2 0x234F DUP2 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x238F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2386 SWAP1 PUSH2 0x37BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x2499 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24CA DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2783 JUMP JUMPDEST ISZERO PUSH2 0x2623 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x24F3 PUSH2 0x159E JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2515 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x382F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2551 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x254E SWAP2 SWAP1 PUSH2 0x3890 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x25D3 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2581 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2586 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x25CB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25C2 SWAP1 PUSH2 0x36B3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x2628 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x268E JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x2684 JUMPI PUSH2 0x2683 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x26CB JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x26C1 JUMPI PUSH2 0x26C0 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x26FA JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x26F0 JUMPI PUSH2 0x26EF PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x2723 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x2719 JUMPI PUSH2 0x2718 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x2748 JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x273E JUMPI PUSH2 0x273D PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x276B JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x2761 JUMPI PUSH2 0x2760 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x277A JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x27EF DUP2 PUSH2 0x27BA JUMP JUMPDEST DUP2 EQ PUSH2 0x27FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x280C DUP2 PUSH2 0x27E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2828 JUMPI PUSH2 0x2827 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2836 DUP5 DUP3 DUP6 ADD PUSH2 0x27FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2854 DUP2 PUSH2 0x283F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x286F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x284B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x28AF JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28D7 DUP3 PUSH2 0x2875 JUMP JUMPDEST PUSH2 0x28E1 DUP2 DUP6 PUSH2 0x2880 JUMP JUMPDEST SWAP4 POP PUSH2 0x28F1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST PUSH2 0x28FA DUP2 PUSH2 0x28BB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x291F DUP2 DUP5 PUSH2 0x28CC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x293A DUP2 PUSH2 0x2927 JUMP JUMPDEST DUP2 EQ PUSH2 0x2945 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2957 DUP2 PUSH2 0x2931 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2973 JUMPI PUSH2 0x2972 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2981 DUP5 DUP3 DUP6 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29B5 DUP3 PUSH2 0x298A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29C5 DUP2 PUSH2 0x29AA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x29E0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x29EF DUP2 PUSH2 0x29AA JUMP JUMPDEST DUP2 EQ PUSH2 0x29FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2A0C DUP2 PUSH2 0x29E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2A29 JUMPI PUSH2 0x2A28 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2A37 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2A48 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2A6B JUMPI PUSH2 0x2A6A PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2A79 DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2A8A DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2A9B DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x2AAE DUP2 PUSH2 0x2927 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2AC9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2AA5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2AE8 JUMPI PUSH2 0x2AE7 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2AF6 DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2B07 DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2B18 DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2B39 JUMPI PUSH2 0x2B38 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2B47 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2B58 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B87 PUSH2 0x2B82 PUSH2 0x2B7D DUP5 PUSH2 0x298A JUMP JUMPDEST PUSH2 0x2B62 JUMP JUMPDEST PUSH2 0x298A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B99 DUP3 PUSH2 0x2B6C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BAB DUP3 PUSH2 0x2B8E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2BBB DUP2 PUSH2 0x2BA0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2BD6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2BB2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BF2 JUMPI PUSH2 0x2BF1 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2C00 DUP5 DUP3 DUP6 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2C12 DUP2 PUSH2 0x283F JUMP JUMPDEST DUP2 EQ PUSH2 0x2C1D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2C2F DUP2 PUSH2 0x2C09 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2C4C JUMPI PUSH2 0x2C4B PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2C5A DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2C6B DUP6 DUP3 DUP7 ADD PUSH2 0x2C20 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x2CB7 DUP3 PUSH2 0x28BB JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2CD6 JUMPI PUSH2 0x2CD5 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CE9 PUSH2 0x27A6 JUMP JUMPDEST SWAP1 POP PUSH2 0x2CF5 DUP3 DUP3 PUSH2 0x2CAE JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2D15 JUMPI PUSH2 0x2D14 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST PUSH2 0x2D1E DUP3 PUSH2 0x28BB JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D4D PUSH2 0x2D48 DUP5 PUSH2 0x2CFA JUMP JUMPDEST PUSH2 0x2CDF JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2D69 JUMPI PUSH2 0x2D68 PUSH2 0x2C7A JUMP JUMPDEST JUMPDEST PUSH2 0x2D74 DUP5 DUP3 DUP6 PUSH2 0x2D2B JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2D91 JUMPI PUSH2 0x2D90 PUSH2 0x2C75 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2DA1 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2D3A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x2DC4 JUMPI PUSH2 0x2DC3 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2DD2 DUP8 DUP3 DUP9 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x2DE3 DUP8 DUP3 DUP9 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x2DF4 DUP8 DUP3 DUP9 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2E15 JUMPI PUSH2 0x2E14 PUSH2 0x27B5 JUMP JUMPDEST JUMPDEST PUSH2 0x2E21 DUP8 DUP3 DUP9 ADD PUSH2 0x2D7C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2E44 JUMPI PUSH2 0x2E43 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2E52 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2E63 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E80 DUP2 PUSH2 0x2E6D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2E9B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2E77 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2EB8 JUMPI PUSH2 0x2EB7 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2EC6 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2ED7 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2F28 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x2F3B JUMPI PUSH2 0x2F3A PUSH2 0x2EE1 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F9D PUSH1 0x21 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x2FA8 DUP3 PUSH2 0x2F41 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2FCC DUP2 PUSH2 0x2F90 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x302F PUSH1 0x3D DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x303A DUP3 PUSH2 0x2FD3 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x305E DUP2 PUSH2 0x3022 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C1 PUSH1 0x2D DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x30CC DUP3 PUSH2 0x3065 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x30F0 DUP2 PUSH2 0x30B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3106 DUP2 PUSH2 0x29E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3122 JUMPI PUSH2 0x3121 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3130 DUP5 DUP3 DUP6 ADD PUSH2 0x30F7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x314E PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x315B PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x3168 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x3179 DUP2 PUSH2 0x2E6D JUMP JUMPDEST DUP2 EQ PUSH2 0x3184 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3196 DUP2 PUSH2 0x3170 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31B2 JUMPI PUSH2 0x31B1 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x31C0 DUP5 DUP3 DUP6 ADD PUSH2 0x3187 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x31DE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x31EB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324E PUSH1 0x29 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3259 DUP3 PUSH2 0x31F2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x327D DUP2 PUSH2 0x3241 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x32BE DUP3 PUSH2 0x2927 JUMP JUMPDEST SWAP2 POP PUSH2 0x32C9 DUP4 PUSH2 0x2927 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x32E1 JUMPI PUSH2 0x32E0 PUSH2 0x3284 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32FD DUP3 PUSH2 0x2875 JUMP JUMPDEST PUSH2 0x3307 DUP2 DUP6 PUSH2 0x32E7 JUMP JUMPDEST SWAP4 POP PUSH2 0x3317 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x332F DUP3 DUP6 PUSH2 0x32F2 JUMP JUMPDEST SWAP2 POP PUSH2 0x333B DUP3 DUP5 PUSH2 0x32F2 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33A3 PUSH1 0x26 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x33AE DUP3 PUSH2 0x3347 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x33D2 DUP2 PUSH2 0x3396 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x340F PUSH1 0x18 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x341A DUP3 PUSH2 0x33D9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x343E DUP2 PUSH2 0x3402 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34A1 PUSH1 0x25 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x34AC DUP3 PUSH2 0x3445 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x34D0 DUP2 PUSH2 0x3494 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3533 PUSH1 0x24 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x353E DUP3 PUSH2 0x34D7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3562 DUP2 PUSH2 0x3526 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x359F PUSH1 0x20 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x35AA DUP3 PUSH2 0x3569 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x35CE DUP2 PUSH2 0x3592 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x360B PUSH1 0x19 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3616 DUP3 PUSH2 0x35D5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x363A DUP2 PUSH2 0x35FE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x369D PUSH1 0x32 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x36A8 DUP3 PUSH2 0x3641 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x36CC DUP2 PUSH2 0x3690 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4552433732313A206D696E7420746F20746865207A65726F2061646472657373 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3738 PUSH1 0x20 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3743 DUP3 PUSH2 0x3702 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3767 DUP2 PUSH2 0x372B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20746F6B656E20616C7265616479206D696E74656400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x37A4 PUSH1 0x1C DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x37AF DUP3 PUSH2 0x376E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x37D3 DUP2 PUSH2 0x3797 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3801 DUP3 PUSH2 0x37DA JUMP JUMPDEST PUSH2 0x380B DUP2 DUP6 PUSH2 0x37E5 JUMP JUMPDEST SWAP4 POP PUSH2 0x381B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST PUSH2 0x3824 DUP2 PUSH2 0x28BB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x3844 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x29BC JUMP JUMPDEST PUSH2 0x3851 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x29BC JUMP JUMPDEST PUSH2 0x385E PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x2AA5 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x3870 DUP2 DUP5 PUSH2 0x37F6 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x388A DUP2 PUSH2 0x27E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x38A6 JUMPI PUSH2 0x38A5 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x38B4 DUP5 DUP3 DUP6 ADD PUSH2 0x387B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCE PUSH15 0xD99A9396048C9A4EB4B22AE2E47F25 PC EXTCODECOPY 0xD7 PUSH27 0xA5E03C8C8401EE6FCBDE8C64736F6C634300081900330000000000 ", + "sourceMap": "199:6817:9:-:0;;;2404:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1390::55;;;;;;;;;;;;;;;;;;;;;;;;1464:5;1456;:13;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;:::i;:::-;;1390:113;;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;2476:4:9::1;2470:3;;:10;;;;;;;;;;;;;;;;;;2501:9;2490:8;:20;;;;2404:113:::0;;199:6817;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;88:117:74:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:108::-;617:7;646:24;664:5;646:24;:::i;:::-;635:35;;568:108;;;:::o;682:146::-;767:36;797:5;767:36;:::i;:::-;760:5;757:47;747:75;;818:1;815;808:12;747:75;682:146;:::o;834:167::-;903:5;934:6;928:13;919:22;;950:45;989:5;950:45;:::i;:::-;834:167;;;;:::o;1007:77::-;1044:7;1073:5;1062:16;;1007:77;;;:::o;1090:122::-;1163:24;1181:5;1163:24;:::i;:::-;1156:5;1153:35;1143:63;;1202:1;1199;1192:12;1143:63;1090:122;:::o;1218:143::-;1275:5;1306:6;1300:13;1291:22;;1322:33;1349:5;1322:33;:::i;:::-;1218:143;;;;:::o;1367:531::-;1458:6;1466;1515:2;1503:9;1494:7;1490:23;1486:32;1483:119;;;1521:79;;:::i;:::-;1483:119;1641:1;1666:76;1734:7;1725:6;1714:9;1710:22;1666:76;:::i;:::-;1656:86;;1612:140;1791:2;1817:64;1873:7;1864:6;1853:9;1849:22;1817:64;:::i;:::-;1807:74;;1762:129;1367:531;;;;;:::o;1904:99::-;1956:6;1990:5;1984:12;1974:22;;1904:99;;;:::o;2009:180::-;2057:77;2054:1;2047:88;2154:4;2151:1;2144:15;2178:4;2175:1;2168:15;2195:180;2243:77;2240:1;2233:88;2340:4;2337:1;2330:15;2364:4;2361:1;2354:15;2381:320;2425:6;2462:1;2456:4;2452:12;2442:22;;2509:1;2503:4;2499:12;2530:18;2520:81;;2586:4;2578:6;2574:17;2564:27;;2520:81;2648:2;2640:6;2637:14;2617:18;2614:38;2611:84;;2667:18;;:::i;:::-;2611:84;2432:269;2381:320;;;:::o;2707:141::-;2756:4;2779:3;2771:11;;2802:3;2799:1;2792:14;2836:4;2833:1;2823:18;2815:26;;2707:141;;;:::o;2854:93::-;2891:6;2938:2;2933;2926:5;2922:14;2918:23;2908:33;;2854:93;;;:::o;2953:107::-;2997:8;3047:5;3041:4;3037:16;3016:37;;2953:107;;;;:::o;3066:393::-;3135:6;3185:1;3173:10;3169:18;3208:97;3238:66;3227:9;3208:97;:::i;:::-;3326:39;3356:8;3345:9;3326:39;:::i;:::-;3314:51;;3398:4;3394:9;3387:5;3383:21;3374:30;;3447:4;3437:8;3433:19;3426:5;3423:30;3413:40;;3142:317;;3066:393;;;;;:::o;3465:77::-;3502:7;3531:5;3520:16;;3465:77;;;:::o;3548:60::-;3576:3;3597:5;3590:12;;3548:60;;;:::o;3614:142::-;3664:9;3697:53;3715:34;3724:24;3742:5;3724:24;:::i;:::-;3715:34;:::i;:::-;3697:53;:::i;:::-;3684:66;;3614:142;;;:::o;3762:75::-;3805:3;3826:5;3819:12;;3762:75;;;:::o;3843:269::-;3953:39;3984:7;3953:39;:::i;:::-;4014:91;4063:41;4087:16;4063:41;:::i;:::-;4055:6;4048:4;4042:11;4014:91;:::i;:::-;4008:4;4001:105;3919:193;3843:269;;;:::o;4118:73::-;4163:3;4118:73;:::o;4197:189::-;4274:32;;:::i;:::-;4315:65;4373:6;4365;4359:4;4315:65;:::i;:::-;4250:136;4197:189;;:::o;4392:186::-;4452:120;4469:3;4462:5;4459:14;4452:120;;;4523:39;4560:1;4553:5;4523:39;:::i;:::-;4496:1;4489:5;4485:13;4476:22;;4452:120;;;4392:186;;:::o;4584:543::-;4685:2;4680:3;4677:11;4674:446;;;4719:38;4751:5;4719:38;:::i;:::-;4803:29;4821:10;4803:29;:::i;:::-;4793:8;4789:44;4986:2;4974:10;4971:18;4968:49;;;5007:8;4992:23;;4968:49;5030:80;5086:22;5104:3;5086:22;:::i;:::-;5076:8;5072:37;5059:11;5030:80;:::i;:::-;4689:431;;4674:446;4584:543;;;:::o;5133:117::-;5187:8;5237:5;5231:4;5227:16;5206:37;;5133:117;;;;:::o;5256:169::-;5300:6;5333:51;5381:1;5377:6;5369:5;5366:1;5362:13;5333:51;:::i;:::-;5329:56;5414:4;5408;5404:15;5394:25;;5307:118;5256:169;;;;:::o;5430:295::-;5506:4;5652:29;5677:3;5671:4;5652:29;:::i;:::-;5644:37;;5714:3;5711:1;5707:11;5701:4;5698:21;5690:29;;5430:295;;;;:::o;5730:1395::-;5847:37;5880:3;5847:37;:::i;:::-;5949:18;5941:6;5938:30;5935:56;;;5971:18;;:::i;:::-;5935:56;6015:38;6047:4;6041:11;6015:38;:::i;:::-;6100:67;6160:6;6152;6146:4;6100:67;:::i;:::-;6194:1;6218:4;6205:17;;6250:2;6242:6;6239:14;6267:1;6262:618;;;;6924:1;6941:6;6938:77;;;6990:9;6985:3;6981:19;6975:26;6966:35;;6938:77;7041:67;7101:6;7094:5;7041:67;:::i;:::-;7035:4;7028:81;6897:222;6232:887;;6262:618;6314:4;6310:9;6302:6;6298:22;6348:37;6380:4;6348:37;:::i;:::-;6407:1;6421:208;6435:7;6432:1;6429:14;6421:208;;;6514:9;6509:3;6505:19;6499:26;6491:6;6484:42;6565:1;6557:6;6553:14;6543:24;;6612:2;6601:9;6597:18;6584:31;;6458:4;6455:1;6451:12;6446:17;;6421:208;;;6657:6;6648:7;6645:19;6642:179;;;6715:9;6710:3;6706:19;6700:26;6758:48;6800:4;6792:6;6788:17;6777:9;6758:48;:::i;:::-;6750:6;6743:64;6665:156;6642:179;6867:1;6863;6855:6;6851:14;6847:22;6841:4;6834:36;6269:611;;;6232:887;;5822:1303;;;5730:1395;;:::o;199:6817:9:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@GRACE_PERIOD_3844": { + "entryPoint": 4116, + "id": 3844, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_afterTokenTransfer_14334": { + "entryPoint": 9379, + "id": 14334, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_approve_14200": { + "entryPoint": 5542, + "id": 14200, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_baseURI_13637": { + "entryPoint": 8143, + "id": 13637, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_beforeTokenTransfer_14321": { + "entryPoint": 9373, + "id": 14321, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_burn_14091": { + "entryPoint": 8498, + "id": 14091, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_checkOnERC721Received_14308": { + "entryPoint": 9385, + "id": 14308, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@_checkOwner_13109": { + "entryPoint": 7363, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_exists_13869": { + "entryPoint": 8372, + "id": 13869, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_isApprovedOrOwner_3934": { + "entryPoint": 6453, + "id": 3934, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_mint_14024": { + "entryPoint": 8832, + "id": 14024, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 5534, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_ownerOf_13851": { + "entryPoint": 8437, + "id": 13851, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_register_4223": { + "entryPoint": 5727, + "id": 4223, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@_requireMinted_14246": { + "entryPoint": 5325, + "id": 14246, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_safeTransfer_13838": { + "entryPoint": 8051, + "id": 13838, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_setApprovalForAll_14232": { + "entryPoint": 7687, + "id": 14232, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_transferOwnership_13166": { + "entryPoint": 7489, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_transfer_14176": { + "entryPoint": 6602, + "id": 14176, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@addController_4027": { + "entryPoint": 3852, + "id": 4027, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@approve_13680": { + "entryPoint": 2316, + "id": 13680, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@available_4093": { + "entryPoint": 3785, + "id": 4093, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@balanceOf_13541": { + "entryPoint": 3394, + "id": 13541, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@baseNode_3837": { + "entryPoint": 4850, + "id": 3837, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@controllers_3841": { + "entryPoint": 4818, + "id": 3841, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@ens_3835": { + "entryPoint": 3119, + "id": 3835, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@getApproved_13698": { + "entryPoint": 2246, + "id": 13698, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isApprovedForAll_13733": { + "entryPoint": 4856, + "id": 13733, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isContract_14529": { + "entryPoint": 10115, + "id": 14529, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@log10_15839": { + "entryPoint": 9776, + "id": 15839, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@nameExpires_4075": { + "entryPoint": 4789, + "id": 4075, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@name_13579": { + "entryPoint": 2100, + "id": 13579, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@ownerOf_13569": { + "entryPoint": 5400, + "id": 13569, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@ownerOf_4008": { + "entryPoint": 3345, + "id": 4008, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@owner_13095": { + "entryPoint": 3597, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@reclaim_4311": { + "entryPoint": 2715, + "id": 4311, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@registerOnly_4134": { + "entryPoint": 2595, + "id": 4134, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@register_4114": { + "entryPoint": 5301, + "id": 4114, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@removeController_4046": { + "entryPoint": 5135, + "id": 4046, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@renew_4280": { + "entryPoint": 4123, + "id": 4280, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@renounceOwnership_13123": { + "entryPoint": 3577, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@safeTransferFrom_13779": { + "entryPoint": 3157, + "id": 13779, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@safeTransferFrom_13809": { + "entryPoint": 4018, + "id": 13809, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setApprovalForAll_13715": { + "entryPoint": 3830, + "id": 13715, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setResolver_4062": { + "entryPoint": 3189, + "id": 4062, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@supportsInterface_4334": { + "entryPoint": 1514, + "id": 4334, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@symbol_13589": { + "entryPoint": 3639, + "id": 13589, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@toString_14930": { + "entryPoint": 8166, + "id": 14930, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@tokenURI_13628": { + "entryPoint": 4685, + "id": 13628, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@transferFrom_13760": { + "entryPoint": 2619, + "id": 13760, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@transferOwnership_13146": { + "entryPoint": 5004, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 11578, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 10749, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 12535, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 11296, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 12679, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 10237, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4_fromMemory": { + "entryPoint": 14459, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 11644, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 10568, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 11228, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 12556, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 11937, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 10959, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr": { + "entryPoint": 11690, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 11317, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 10770, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 12700, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 10258, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4_fromMemory": { + "entryPoint": 14480, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 10589, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256t_address": { + "entryPoint": 11042, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_uint256t_addresst_uint256": { + "entryPoint": 10834, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_uint256t_uint256": { + "entryPoint": 11821, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 10684, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 10315, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 11895, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 14326, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack": { + "entryPoint": 11186, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10444, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 13042, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack": { + "entryPoint": 12468, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13968, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13206, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13460, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack": { + "entryPoint": 14231, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13606, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13822, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack": { + "entryPoint": 12865, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack": { + "entryPoint": 14123, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13714, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13314, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack": { + "entryPoint": 12176, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack": { + "entryPoint": 12322, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 10917, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 13091, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 10699, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 14383, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 10330, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 11910, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed": { + "entryPoint": 12745, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed": { + "entryPoint": 12601, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed": { + "entryPoint": 11201, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10501, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 12503, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 14003, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13241, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13495, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 14266, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13641, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13857, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 12900, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 14158, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13749, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13349, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 12211, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 12357, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 10932, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 11487, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 10150, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 11514, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 14298, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 10357, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 14309, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 10368, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 13031, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 12979, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 10666, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 10303, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 11885, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 10170, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 10634, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 10535, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_ENS_$4567_to_t_address": { + "entryPoint": 11168, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_address": { + "entryPoint": 11150, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_uint160": { + "entryPoint": 11116, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 11563, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 10385, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 12048, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 11438, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 11106, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 12932, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x12": { + "entryPoint": 14035, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 12001, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 11391, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 11381, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 11386, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 10165, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 10160, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 10427, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af": { + "entryPoint": 12389, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e": { + "entryPoint": 13889, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 13127, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48": { + "entryPoint": 13381, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57": { + "entryPoint": 14190, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4": { + "entryPoint": 13527, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05": { + "entryPoint": 13781, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159": { + "entryPoint": 12786, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6": { + "entryPoint": 14082, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 13673, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f": { + "entryPoint": 13273, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942": { + "entryPoint": 12097, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83": { + "entryPoint": 12243, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 10726, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 11273, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 12656, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 10214, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 10545, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:32365:74", + "nodeType": "YulBlock", + "src": "0:32365:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "378:105:74", + "nodeType": "YulBlock", + "src": "378:105:74", + "statements": [ + { + "nativeSrc": "388:89:74", + "nodeType": "YulAssignment", + "src": "388:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "403:5:74", + "nodeType": "YulIdentifier", + "src": "403:5:74" + }, + { + "kind": "number", + "nativeSrc": "410:66:74", + "nodeType": "YulLiteral", + "src": "410:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "399:3:74", + "nodeType": "YulIdentifier", + "src": "399:3:74" + }, + "nativeSrc": "399:78:74", + "nodeType": "YulFunctionCall", + "src": "399:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "388:7:74", + "nodeType": "YulIdentifier", + "src": "388:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "334:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "360:5:74", + "nodeType": "YulTypedName", + "src": "360:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "370:7:74", + "nodeType": "YulTypedName", + "src": "370:7:74", + "type": "" + } + ], + "src": "334:149:74" + }, + { + "body": { + "nativeSrc": "531:78:74", + "nodeType": "YulBlock", + "src": "531:78:74", + "statements": [ + { + "body": { + "nativeSrc": "587:16:74", + "nodeType": "YulBlock", + "src": "587:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "596:1:74", + "nodeType": "YulLiteral", + "src": "596:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "599:1:74", + "nodeType": "YulLiteral", + "src": "599:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "589:6:74", + "nodeType": "YulIdentifier", + "src": "589:6:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulFunctionCall", + "src": "589:12:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulExpressionStatement", + "src": "589:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "554:5:74", + "nodeType": "YulIdentifier", + "src": "554:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "578:5:74", + "nodeType": "YulIdentifier", + "src": "578:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "561:16:74", + "nodeType": "YulIdentifier", + "src": "561:16:74" + }, + "nativeSrc": "561:23:74", + "nodeType": "YulFunctionCall", + "src": "561:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "551:2:74", + "nodeType": "YulIdentifier", + "src": "551:2:74" + }, + "nativeSrc": "551:34:74", + "nodeType": "YulFunctionCall", + "src": "551:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "544:6:74", + "nodeType": "YulIdentifier", + "src": "544:6:74" + }, + "nativeSrc": "544:42:74", + "nodeType": "YulFunctionCall", + "src": "544:42:74" + }, + "nativeSrc": "541:62:74", + "nodeType": "YulIf", + "src": "541:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "489:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "524:5:74", + "nodeType": "YulTypedName", + "src": "524:5:74", + "type": "" + } + ], + "src": "489:120:74" + }, + { + "body": { + "nativeSrc": "666:86:74", + "nodeType": "YulBlock", + "src": "666:86:74", + "statements": [ + { + "nativeSrc": "676:29:74", + "nodeType": "YulAssignment", + "src": "676:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "698:6:74", + "nodeType": "YulIdentifier", + "src": "698:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "685:12:74", + "nodeType": "YulIdentifier", + "src": "685:12:74" + }, + "nativeSrc": "685:20:74", + "nodeType": "YulFunctionCall", + "src": "685:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "676:5:74", + "nodeType": "YulIdentifier", + "src": "676:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "740:5:74", + "nodeType": "YulIdentifier", + "src": "740:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "714:25:74", + "nodeType": "YulIdentifier", + "src": "714:25:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulFunctionCall", + "src": "714:32:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulExpressionStatement", + "src": "714:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "615:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "644:6:74", + "nodeType": "YulTypedName", + "src": "644:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "652:3:74", + "nodeType": "YulTypedName", + "src": "652:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "660:5:74", + "nodeType": "YulTypedName", + "src": "660:5:74", + "type": "" + } + ], + "src": "615:137:74" + }, + { + "body": { + "nativeSrc": "823:262:74", + "nodeType": "YulBlock", + "src": "823:262:74", + "statements": [ + { + "body": { + "nativeSrc": "869:83:74", + "nodeType": "YulBlock", + "src": "869:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "871:77:74", + "nodeType": "YulIdentifier", + "src": "871:77:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulFunctionCall", + "src": "871:79:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulExpressionStatement", + "src": "871:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "844:7:74", + "nodeType": "YulIdentifier", + "src": "844:7:74" + }, + { + "name": "headStart", + "nativeSrc": "853:9:74", + "nodeType": "YulIdentifier", + "src": "853:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "840:3:74", + "nodeType": "YulIdentifier", + "src": "840:3:74" + }, + "nativeSrc": "840:23:74", + "nodeType": "YulFunctionCall", + "src": "840:23:74" + }, + { + "kind": "number", + "nativeSrc": "865:2:74", + "nodeType": "YulLiteral", + "src": "865:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "836:3:74", + "nodeType": "YulIdentifier", + "src": "836:3:74" + }, + "nativeSrc": "836:32:74", + "nodeType": "YulFunctionCall", + "src": "836:32:74" + }, + "nativeSrc": "833:119:74", + "nodeType": "YulIf", + "src": "833:119:74" + }, + { + "nativeSrc": "962:116:74", + "nodeType": "YulBlock", + "src": "962:116:74", + "statements": [ + { + "nativeSrc": "977:15:74", + "nodeType": "YulVariableDeclaration", + "src": "977:15:74", + "value": { + "kind": "number", + "nativeSrc": "991:1:74", + "nodeType": "YulLiteral", + "src": "991:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "981:6:74", + "nodeType": "YulTypedName", + "src": "981:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1006:62:74", + "nodeType": "YulAssignment", + "src": "1006:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1040:9:74", + "nodeType": "YulIdentifier", + "src": "1040:9:74" + }, + { + "name": "offset", + "nativeSrc": "1051:6:74", + "nodeType": "YulIdentifier", + "src": "1051:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1036:3:74", + "nodeType": "YulIdentifier", + "src": "1036:3:74" + }, + "nativeSrc": "1036:22:74", + "nodeType": "YulFunctionCall", + "src": "1036:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1060:7:74", + "nodeType": "YulIdentifier", + "src": "1060:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "1016:19:74", + "nodeType": "YulIdentifier", + "src": "1016:19:74" + }, + "nativeSrc": "1016:52:74", + "nodeType": "YulFunctionCall", + "src": "1016:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1006:6:74", + "nodeType": "YulIdentifier", + "src": "1006:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "758:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "793:9:74", + "nodeType": "YulTypedName", + "src": "793:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "804:7:74", + "nodeType": "YulTypedName", + "src": "804:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "816:6:74", + "nodeType": "YulTypedName", + "src": "816:6:74", + "type": "" + } + ], + "src": "758:327:74" + }, + { + "body": { + "nativeSrc": "1133:48:74", + "nodeType": "YulBlock", + "src": "1133:48:74", + "statements": [ + { + "nativeSrc": "1143:32:74", + "nodeType": "YulAssignment", + "src": "1143:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1168:5:74", + "nodeType": "YulIdentifier", + "src": "1168:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1161:6:74", + "nodeType": "YulIdentifier", + "src": "1161:6:74" + }, + "nativeSrc": "1161:13:74", + "nodeType": "YulFunctionCall", + "src": "1161:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1154:6:74", + "nodeType": "YulIdentifier", + "src": "1154:6:74" + }, + "nativeSrc": "1154:21:74", + "nodeType": "YulFunctionCall", + "src": "1154:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1143:7:74", + "nodeType": "YulIdentifier", + "src": "1143:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1091:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1115:5:74", + "nodeType": "YulTypedName", + "src": "1115:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1125:7:74", + "nodeType": "YulTypedName", + "src": "1125:7:74", + "type": "" + } + ], + "src": "1091:90:74" + }, + { + "body": { + "nativeSrc": "1246:50:74", + "nodeType": "YulBlock", + "src": "1246:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1263:3:74", + "nodeType": "YulIdentifier", + "src": "1263:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1283:5:74", + "nodeType": "YulIdentifier", + "src": "1283:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1268:14:74", + "nodeType": "YulIdentifier", + "src": "1268:14:74" + }, + "nativeSrc": "1268:21:74", + "nodeType": "YulFunctionCall", + "src": "1268:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1256:6:74", + "nodeType": "YulIdentifier", + "src": "1256:6:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulFunctionCall", + "src": "1256:34:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulExpressionStatement", + "src": "1256:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1187:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1234:5:74", + "nodeType": "YulTypedName", + "src": "1234:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1241:3:74", + "nodeType": "YulTypedName", + "src": "1241:3:74", + "type": "" + } + ], + "src": "1187:109:74" + }, + { + "body": { + "nativeSrc": "1394:118:74", + "nodeType": "YulBlock", + "src": "1394:118:74", + "statements": [ + { + "nativeSrc": "1404:26:74", + "nodeType": "YulAssignment", + "src": "1404:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1416:9:74", + "nodeType": "YulIdentifier", + "src": "1416:9:74" + }, + { + "kind": "number", + "nativeSrc": "1427:2:74", + "nodeType": "YulLiteral", + "src": "1427:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1412:3:74", + "nodeType": "YulIdentifier", + "src": "1412:3:74" + }, + "nativeSrc": "1412:18:74", + "nodeType": "YulFunctionCall", + "src": "1412:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1404:4:74", + "nodeType": "YulIdentifier", + "src": "1404:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1478:6:74", + "nodeType": "YulIdentifier", + "src": "1478:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1491:9:74", + "nodeType": "YulIdentifier", + "src": "1491:9:74" + }, + { + "kind": "number", + "nativeSrc": "1502:1:74", + "nodeType": "YulLiteral", + "src": "1502:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1487:3:74", + "nodeType": "YulIdentifier", + "src": "1487:3:74" + }, + "nativeSrc": "1487:17:74", + "nodeType": "YulFunctionCall", + "src": "1487:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1440:37:74", + "nodeType": "YulIdentifier", + "src": "1440:37:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulFunctionCall", + "src": "1440:65:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulExpressionStatement", + "src": "1440:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1302:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1366:9:74", + "nodeType": "YulTypedName", + "src": "1366:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1378:6:74", + "nodeType": "YulTypedName", + "src": "1378:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1389:4:74", + "nodeType": "YulTypedName", + "src": "1389:4:74", + "type": "" + } + ], + "src": "1302:210:74" + }, + { + "body": { + "nativeSrc": "1577:40:74", + "nodeType": "YulBlock", + "src": "1577:40:74", + "statements": [ + { + "nativeSrc": "1588:22:74", + "nodeType": "YulAssignment", + "src": "1588:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1604:5:74", + "nodeType": "YulIdentifier", + "src": "1604:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1598:5:74", + "nodeType": "YulIdentifier", + "src": "1598:5:74" + }, + "nativeSrc": "1598:12:74", + "nodeType": "YulFunctionCall", + "src": "1598:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "1588:6:74", + "nodeType": "YulIdentifier", + "src": "1588:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1518:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1560:5:74", + "nodeType": "YulTypedName", + "src": "1560:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "1570:6:74", + "nodeType": "YulTypedName", + "src": "1570:6:74", + "type": "" + } + ], + "src": "1518:99:74" + }, + { + "body": { + "nativeSrc": "1719:73:74", + "nodeType": "YulBlock", + "src": "1719:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1736:3:74", + "nodeType": "YulIdentifier", + "src": "1736:3:74" + }, + { + "name": "length", + "nativeSrc": "1741:6:74", + "nodeType": "YulIdentifier", + "src": "1741:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1729:6:74", + "nodeType": "YulIdentifier", + "src": "1729:6:74" + }, + "nativeSrc": "1729:19:74", + "nodeType": "YulFunctionCall", + "src": "1729:19:74" + }, + "nativeSrc": "1729:19:74", + "nodeType": "YulExpressionStatement", + "src": "1729:19:74" + }, + { + "nativeSrc": "1757:29:74", + "nodeType": "YulAssignment", + "src": "1757:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1776:3:74", + "nodeType": "YulIdentifier", + "src": "1776:3:74" + }, + { + "kind": "number", + "nativeSrc": "1781:4:74", + "nodeType": "YulLiteral", + "src": "1781:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1772:3:74", + "nodeType": "YulIdentifier", + "src": "1772:3:74" + }, + "nativeSrc": "1772:14:74", + "nodeType": "YulFunctionCall", + "src": "1772:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "1757:11:74", + "nodeType": "YulIdentifier", + "src": "1757:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "1623:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "1691:3:74", + "nodeType": "YulTypedName", + "src": "1691:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1696:6:74", + "nodeType": "YulTypedName", + "src": "1696:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "1707:11:74", + "nodeType": "YulTypedName", + "src": "1707:11:74", + "type": "" + } + ], + "src": "1623:169:74" + }, + { + "body": { + "nativeSrc": "1860:186:74", + "nodeType": "YulBlock", + "src": "1860:186:74", + "statements": [ + { + "nativeSrc": "1871:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1871:10:74", + "value": { + "kind": "number", + "nativeSrc": "1880:1:74", + "nodeType": "YulLiteral", + "src": "1880:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1875:1:74", + "nodeType": "YulTypedName", + "src": "1875:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1940:63:74", + "nodeType": "YulBlock", + "src": "1940:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1965:3:74", + "nodeType": "YulIdentifier", + "src": "1965:3:74" + }, + { + "name": "i", + "nativeSrc": "1970:1:74", + "nodeType": "YulIdentifier", + "src": "1970:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1961:3:74", + "nodeType": "YulIdentifier", + "src": "1961:3:74" + }, + "nativeSrc": "1961:11:74", + "nodeType": "YulFunctionCall", + "src": "1961:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1984:3:74", + "nodeType": "YulIdentifier", + "src": "1984:3:74" + }, + { + "name": "i", + "nativeSrc": "1989:1:74", + "nodeType": "YulIdentifier", + "src": "1989:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1980:3:74", + "nodeType": "YulIdentifier", + "src": "1980:3:74" + }, + "nativeSrc": "1980:11:74", + "nodeType": "YulFunctionCall", + "src": "1980:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1974:5:74", + "nodeType": "YulIdentifier", + "src": "1974:5:74" + }, + "nativeSrc": "1974:18:74", + "nodeType": "YulFunctionCall", + "src": "1974:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1954:6:74", + "nodeType": "YulIdentifier", + "src": "1954:6:74" + }, + "nativeSrc": "1954:39:74", + "nodeType": "YulFunctionCall", + "src": "1954:39:74" + }, + "nativeSrc": "1954:39:74", + "nodeType": "YulExpressionStatement", + "src": "1954:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1901:1:74", + "nodeType": "YulIdentifier", + "src": "1901:1:74" + }, + { + "name": "length", + "nativeSrc": "1904:6:74", + "nodeType": "YulIdentifier", + "src": "1904:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1898:2:74", + "nodeType": "YulIdentifier", + "src": "1898:2:74" + }, + "nativeSrc": "1898:13:74", + "nodeType": "YulFunctionCall", + "src": "1898:13:74" + }, + "nativeSrc": "1890:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1912:19:74", + "nodeType": "YulBlock", + "src": "1912:19:74", + "statements": [ + { + "nativeSrc": "1914:15:74", + "nodeType": "YulAssignment", + "src": "1914:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1923:1:74", + "nodeType": "YulIdentifier", + "src": "1923:1:74" + }, + { + "kind": "number", + "nativeSrc": "1926:2:74", + "nodeType": "YulLiteral", + "src": "1926:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1919:3:74", + "nodeType": "YulIdentifier", + "src": "1919:3:74" + }, + "nativeSrc": "1919:10:74", + "nodeType": "YulFunctionCall", + "src": "1919:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1914:1:74", + "nodeType": "YulIdentifier", + "src": "1914:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1894:3:74", + "nodeType": "YulBlock", + "src": "1894:3:74", + "statements": [] + }, + "src": "1890:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2023:3:74", + "nodeType": "YulIdentifier", + "src": "2023:3:74" + }, + { + "name": "length", + "nativeSrc": "2028:6:74", + "nodeType": "YulIdentifier", + "src": "2028:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2019:3:74", + "nodeType": "YulIdentifier", + "src": "2019:3:74" + }, + "nativeSrc": "2019:16:74", + "nodeType": "YulFunctionCall", + "src": "2019:16:74" + }, + { + "kind": "number", + "nativeSrc": "2037:1:74", + "nodeType": "YulLiteral", + "src": "2037:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2012:6:74", + "nodeType": "YulIdentifier", + "src": "2012:6:74" + }, + "nativeSrc": "2012:27:74", + "nodeType": "YulFunctionCall", + "src": "2012:27:74" + }, + "nativeSrc": "2012:27:74", + "nodeType": "YulExpressionStatement", + "src": "2012:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1798:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1842:3:74", + "nodeType": "YulTypedName", + "src": "1842:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1847:3:74", + "nodeType": "YulTypedName", + "src": "1847:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1852:6:74", + "nodeType": "YulTypedName", + "src": "1852:6:74", + "type": "" + } + ], + "src": "1798:248:74" + }, + { + "body": { + "nativeSrc": "2100:54:74", + "nodeType": "YulBlock", + "src": "2100:54:74", + "statements": [ + { + "nativeSrc": "2110:38:74", + "nodeType": "YulAssignment", + "src": "2110:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2128:5:74", + "nodeType": "YulIdentifier", + "src": "2128:5:74" + }, + { + "kind": "number", + "nativeSrc": "2135:2:74", + "nodeType": "YulLiteral", + "src": "2135:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2124:3:74", + "nodeType": "YulIdentifier", + "src": "2124:3:74" + }, + "nativeSrc": "2124:14:74", + "nodeType": "YulFunctionCall", + "src": "2124:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2144:2:74", + "nodeType": "YulLiteral", + "src": "2144:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "2140:3:74", + "nodeType": "YulIdentifier", + "src": "2140:3:74" + }, + "nativeSrc": "2140:7:74", + "nodeType": "YulFunctionCall", + "src": "2140:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2120:3:74", + "nodeType": "YulIdentifier", + "src": "2120:3:74" + }, + "nativeSrc": "2120:28:74", + "nodeType": "YulFunctionCall", + "src": "2120:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "2110:6:74", + "nodeType": "YulIdentifier", + "src": "2110:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "2052:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2083:5:74", + "nodeType": "YulTypedName", + "src": "2083:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "2093:6:74", + "nodeType": "YulTypedName", + "src": "2093:6:74", + "type": "" + } + ], + "src": "2052:102:74" + }, + { + "body": { + "nativeSrc": "2252:285:74", + "nodeType": "YulBlock", + "src": "2252:285:74", + "statements": [ + { + "nativeSrc": "2262:53:74", + "nodeType": "YulVariableDeclaration", + "src": "2262:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2309:5:74", + "nodeType": "YulIdentifier", + "src": "2309:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "2276:32:74", + "nodeType": "YulIdentifier", + "src": "2276:32:74" + }, + "nativeSrc": "2276:39:74", + "nodeType": "YulFunctionCall", + "src": "2276:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2266:6:74", + "nodeType": "YulTypedName", + "src": "2266:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2324:78:74", + "nodeType": "YulAssignment", + "src": "2324:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2390:3:74", + "nodeType": "YulIdentifier", + "src": "2390:3:74" + }, + { + "name": "length", + "nativeSrc": "2395:6:74", + "nodeType": "YulIdentifier", + "src": "2395:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2331:58:74", + "nodeType": "YulIdentifier", + "src": "2331:58:74" + }, + "nativeSrc": "2331:71:74", + "nodeType": "YulFunctionCall", + "src": "2331:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "2324:3:74", + "nodeType": "YulIdentifier", + "src": "2324:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2450:5:74", + "nodeType": "YulIdentifier", + "src": "2450:5:74" + }, + { + "kind": "number", + "nativeSrc": "2457:4:74", + "nodeType": "YulLiteral", + "src": "2457:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2446:3:74", + "nodeType": "YulIdentifier", + "src": "2446:3:74" + }, + "nativeSrc": "2446:16:74", + "nodeType": "YulFunctionCall", + "src": "2446:16:74" + }, + { + "name": "pos", + "nativeSrc": "2464:3:74", + "nodeType": "YulIdentifier", + "src": "2464:3:74" + }, + { + "name": "length", + "nativeSrc": "2469:6:74", + "nodeType": "YulIdentifier", + "src": "2469:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2411:34:74", + "nodeType": "YulIdentifier", + "src": "2411:34:74" + }, + "nativeSrc": "2411:65:74", + "nodeType": "YulFunctionCall", + "src": "2411:65:74" + }, + "nativeSrc": "2411:65:74", + "nodeType": "YulExpressionStatement", + "src": "2411:65:74" + }, + { + "nativeSrc": "2485:46:74", + "nodeType": "YulAssignment", + "src": "2485:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2496:3:74", + "nodeType": "YulIdentifier", + "src": "2496:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2523:6:74", + "nodeType": "YulIdentifier", + "src": "2523:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2501:21:74", + "nodeType": "YulIdentifier", + "src": "2501:21:74" + }, + "nativeSrc": "2501:29:74", + "nodeType": "YulFunctionCall", + "src": "2501:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2492:3:74", + "nodeType": "YulIdentifier", + "src": "2492:3:74" + }, + "nativeSrc": "2492:39:74", + "nodeType": "YulFunctionCall", + "src": "2492:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "2485:3:74", + "nodeType": "YulIdentifier", + "src": "2485:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2160:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2233:5:74", + "nodeType": "YulTypedName", + "src": "2233:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2240:3:74", + "nodeType": "YulTypedName", + "src": "2240:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "2248:3:74", + "nodeType": "YulTypedName", + "src": "2248:3:74", + "type": "" + } + ], + "src": "2160:377:74" + }, + { + "body": { + "nativeSrc": "2661:195:74", + "nodeType": "YulBlock", + "src": "2661:195:74", + "statements": [ + { + "nativeSrc": "2671:26:74", + "nodeType": "YulAssignment", + "src": "2671:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2683:9:74", + "nodeType": "YulIdentifier", + "src": "2683:9:74" + }, + { + "kind": "number", + "nativeSrc": "2694:2:74", + "nodeType": "YulLiteral", + "src": "2694:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2679:3:74", + "nodeType": "YulIdentifier", + "src": "2679:3:74" + }, + "nativeSrc": "2679:18:74", + "nodeType": "YulFunctionCall", + "src": "2679:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2671:4:74", + "nodeType": "YulIdentifier", + "src": "2671:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2718:9:74", + "nodeType": "YulIdentifier", + "src": "2718:9:74" + }, + { + "kind": "number", + "nativeSrc": "2729:1:74", + "nodeType": "YulLiteral", + "src": "2729:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2714:3:74", + "nodeType": "YulIdentifier", + "src": "2714:3:74" + }, + "nativeSrc": "2714:17:74", + "nodeType": "YulFunctionCall", + "src": "2714:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "2737:4:74", + "nodeType": "YulIdentifier", + "src": "2737:4:74" + }, + { + "name": "headStart", + "nativeSrc": "2743:9:74", + "nodeType": "YulIdentifier", + "src": "2743:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2733:3:74", + "nodeType": "YulIdentifier", + "src": "2733:3:74" + }, + "nativeSrc": "2733:20:74", + "nodeType": "YulFunctionCall", + "src": "2733:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2707:6:74", + "nodeType": "YulIdentifier", + "src": "2707:6:74" + }, + "nativeSrc": "2707:47:74", + "nodeType": "YulFunctionCall", + "src": "2707:47:74" + }, + "nativeSrc": "2707:47:74", + "nodeType": "YulExpressionStatement", + "src": "2707:47:74" + }, + { + "nativeSrc": "2763:86:74", + "nodeType": "YulAssignment", + "src": "2763:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2835:6:74", + "nodeType": "YulIdentifier", + "src": "2835:6:74" + }, + { + "name": "tail", + "nativeSrc": "2844:4:74", + "nodeType": "YulIdentifier", + "src": "2844:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2771:63:74", + "nodeType": "YulIdentifier", + "src": "2771:63:74" + }, + "nativeSrc": "2771:78:74", + "nodeType": "YulFunctionCall", + "src": "2771:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2763:4:74", + "nodeType": "YulIdentifier", + "src": "2763:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "2543:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2633:9:74", + "nodeType": "YulTypedName", + "src": "2633:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2645:6:74", + "nodeType": "YulTypedName", + "src": "2645:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2656:4:74", + "nodeType": "YulTypedName", + "src": "2656:4:74", + "type": "" + } + ], + "src": "2543:313:74" + }, + { + "body": { + "nativeSrc": "2907:32:74", + "nodeType": "YulBlock", + "src": "2907:32:74", + "statements": [ + { + "nativeSrc": "2917:16:74", + "nodeType": "YulAssignment", + "src": "2917:16:74", + "value": { + "name": "value", + "nativeSrc": "2928:5:74", + "nodeType": "YulIdentifier", + "src": "2928:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2917:7:74", + "nodeType": "YulIdentifier", + "src": "2917:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "2862:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2889:5:74", + "nodeType": "YulTypedName", + "src": "2889:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2899:7:74", + "nodeType": "YulTypedName", + "src": "2899:7:74", + "type": "" + } + ], + "src": "2862:77:74" + }, + { + "body": { + "nativeSrc": "2988:79:74", + "nodeType": "YulBlock", + "src": "2988:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3045:16:74", + "nodeType": "YulBlock", + "src": "3045:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3054:1:74", + "nodeType": "YulLiteral", + "src": "3054:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3057:1:74", + "nodeType": "YulLiteral", + "src": "3057:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3047:6:74", + "nodeType": "YulIdentifier", + "src": "3047:6:74" + }, + "nativeSrc": "3047:12:74", + "nodeType": "YulFunctionCall", + "src": "3047:12:74" + }, + "nativeSrc": "3047:12:74", + "nodeType": "YulExpressionStatement", + "src": "3047:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3011:5:74", + "nodeType": "YulIdentifier", + "src": "3011:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3036:5:74", + "nodeType": "YulIdentifier", + "src": "3036:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3018:17:74", + "nodeType": "YulIdentifier", + "src": "3018:17:74" + }, + "nativeSrc": "3018:24:74", + "nodeType": "YulFunctionCall", + "src": "3018:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3008:2:74", + "nodeType": "YulIdentifier", + "src": "3008:2:74" + }, + "nativeSrc": "3008:35:74", + "nodeType": "YulFunctionCall", + "src": "3008:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3001:6:74", + "nodeType": "YulIdentifier", + "src": "3001:6:74" + }, + "nativeSrc": "3001:43:74", + "nodeType": "YulFunctionCall", + "src": "3001:43:74" + }, + "nativeSrc": "2998:63:74", + "nodeType": "YulIf", + "src": "2998:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "2945:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2981:5:74", + "nodeType": "YulTypedName", + "src": "2981:5:74", + "type": "" + } + ], + "src": "2945:122:74" + }, + { + "body": { + "nativeSrc": "3125:87:74", + "nodeType": "YulBlock", + "src": "3125:87:74", + "statements": [ + { + "nativeSrc": "3135:29:74", + "nodeType": "YulAssignment", + "src": "3135:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3157:6:74", + "nodeType": "YulIdentifier", + "src": "3157:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3144:12:74", + "nodeType": "YulIdentifier", + "src": "3144:12:74" + }, + "nativeSrc": "3144:20:74", + "nodeType": "YulFunctionCall", + "src": "3144:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3135:5:74", + "nodeType": "YulIdentifier", + "src": "3135:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3200:5:74", + "nodeType": "YulIdentifier", + "src": "3200:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "3173:26:74", + "nodeType": "YulIdentifier", + "src": "3173:26:74" + }, + "nativeSrc": "3173:33:74", + "nodeType": "YulFunctionCall", + "src": "3173:33:74" + }, + "nativeSrc": "3173:33:74", + "nodeType": "YulExpressionStatement", + "src": "3173:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "3073:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3103:6:74", + "nodeType": "YulTypedName", + "src": "3103:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3111:3:74", + "nodeType": "YulTypedName", + "src": "3111:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3119:5:74", + "nodeType": "YulTypedName", + "src": "3119:5:74", + "type": "" + } + ], + "src": "3073:139:74" + }, + { + "body": { + "nativeSrc": "3284:263:74", + "nodeType": "YulBlock", + "src": "3284:263:74", + "statements": [ + { + "body": { + "nativeSrc": "3330:83:74", + "nodeType": "YulBlock", + "src": "3330:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3332:77:74", + "nodeType": "YulIdentifier", + "src": "3332:77:74" + }, + "nativeSrc": "3332:79:74", + "nodeType": "YulFunctionCall", + "src": "3332:79:74" + }, + "nativeSrc": "3332:79:74", + "nodeType": "YulExpressionStatement", + "src": "3332:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3305:7:74", + "nodeType": "YulIdentifier", + "src": "3305:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3314:9:74", + "nodeType": "YulIdentifier", + "src": "3314:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3301:3:74", + "nodeType": "YulIdentifier", + "src": "3301:3:74" + }, + "nativeSrc": "3301:23:74", + "nodeType": "YulFunctionCall", + "src": "3301:23:74" + }, + { + "kind": "number", + "nativeSrc": "3326:2:74", + "nodeType": "YulLiteral", + "src": "3326:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3297:3:74", + "nodeType": "YulIdentifier", + "src": "3297:3:74" + }, + "nativeSrc": "3297:32:74", + "nodeType": "YulFunctionCall", + "src": "3297:32:74" + }, + "nativeSrc": "3294:119:74", + "nodeType": "YulIf", + "src": "3294:119:74" + }, + { + "nativeSrc": "3423:117:74", + "nodeType": "YulBlock", + "src": "3423:117:74", + "statements": [ + { + "nativeSrc": "3438:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3438:15:74", + "value": { + "kind": "number", + "nativeSrc": "3452:1:74", + "nodeType": "YulLiteral", + "src": "3452:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3442:6:74", + "nodeType": "YulTypedName", + "src": "3442:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3467:63:74", + "nodeType": "YulAssignment", + "src": "3467:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3502:9:74", + "nodeType": "YulIdentifier", + "src": "3502:9:74" + }, + { + "name": "offset", + "nativeSrc": "3513:6:74", + "nodeType": "YulIdentifier", + "src": "3513:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3498:3:74", + "nodeType": "YulIdentifier", + "src": "3498:3:74" + }, + "nativeSrc": "3498:22:74", + "nodeType": "YulFunctionCall", + "src": "3498:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3522:7:74", + "nodeType": "YulIdentifier", + "src": "3522:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "3477:20:74", + "nodeType": "YulIdentifier", + "src": "3477:20:74" + }, + "nativeSrc": "3477:53:74", + "nodeType": "YulFunctionCall", + "src": "3477:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3467:6:74", + "nodeType": "YulIdentifier", + "src": "3467:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "3218:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3254:9:74", + "nodeType": "YulTypedName", + "src": "3254:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3265:7:74", + "nodeType": "YulTypedName", + "src": "3265:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3277:6:74", + "nodeType": "YulTypedName", + "src": "3277:6:74", + "type": "" + } + ], + "src": "3218:329:74" + }, + { + "body": { + "nativeSrc": "3598:81:74", + "nodeType": "YulBlock", + "src": "3598:81:74", + "statements": [ + { + "nativeSrc": "3608:65:74", + "nodeType": "YulAssignment", + "src": "3608:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3623:5:74", + "nodeType": "YulIdentifier", + "src": "3623:5:74" + }, + { + "kind": "number", + "nativeSrc": "3630:42:74", + "nodeType": "YulLiteral", + "src": "3630:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3619:3:74", + "nodeType": "YulIdentifier", + "src": "3619:3:74" + }, + "nativeSrc": "3619:54:74", + "nodeType": "YulFunctionCall", + "src": "3619:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3608:7:74", + "nodeType": "YulIdentifier", + "src": "3608:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "3553:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3580:5:74", + "nodeType": "YulTypedName", + "src": "3580:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3590:7:74", + "nodeType": "YulTypedName", + "src": "3590:7:74", + "type": "" + } + ], + "src": "3553:126:74" + }, + { + "body": { + "nativeSrc": "3730:51:74", + "nodeType": "YulBlock", + "src": "3730:51:74", + "statements": [ + { + "nativeSrc": "3740:35:74", + "nodeType": "YulAssignment", + "src": "3740:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3769:5:74", + "nodeType": "YulIdentifier", + "src": "3769:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "3751:17:74", + "nodeType": "YulIdentifier", + "src": "3751:17:74" + }, + "nativeSrc": "3751:24:74", + "nodeType": "YulFunctionCall", + "src": "3751:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3740:7:74", + "nodeType": "YulIdentifier", + "src": "3740:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "3685:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3712:5:74", + "nodeType": "YulTypedName", + "src": "3712:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3722:7:74", + "nodeType": "YulTypedName", + "src": "3722:7:74", + "type": "" + } + ], + "src": "3685:96:74" + }, + { + "body": { + "nativeSrc": "3852:53:74", + "nodeType": "YulBlock", + "src": "3852:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3869:3:74", + "nodeType": "YulIdentifier", + "src": "3869:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3892:5:74", + "nodeType": "YulIdentifier", + "src": "3892:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "3874:17:74", + "nodeType": "YulIdentifier", + "src": "3874:17:74" + }, + "nativeSrc": "3874:24:74", + "nodeType": "YulFunctionCall", + "src": "3874:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3862:6:74", + "nodeType": "YulIdentifier", + "src": "3862:6:74" + }, + "nativeSrc": "3862:37:74", + "nodeType": "YulFunctionCall", + "src": "3862:37:74" + }, + "nativeSrc": "3862:37:74", + "nodeType": "YulExpressionStatement", + "src": "3862:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3787:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3840:5:74", + "nodeType": "YulTypedName", + "src": "3840:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3847:3:74", + "nodeType": "YulTypedName", + "src": "3847:3:74", + "type": "" + } + ], + "src": "3787:118:74" + }, + { + "body": { + "nativeSrc": "4009:124:74", + "nodeType": "YulBlock", + "src": "4009:124:74", + "statements": [ + { + "nativeSrc": "4019:26:74", + "nodeType": "YulAssignment", + "src": "4019:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4031:9:74", + "nodeType": "YulIdentifier", + "src": "4031:9:74" + }, + { + "kind": "number", + "nativeSrc": "4042:2:74", + "nodeType": "YulLiteral", + "src": "4042:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4027:3:74", + "nodeType": "YulIdentifier", + "src": "4027:3:74" + }, + "nativeSrc": "4027:18:74", + "nodeType": "YulFunctionCall", + "src": "4027:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4019:4:74", + "nodeType": "YulIdentifier", + "src": "4019:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4099:6:74", + "nodeType": "YulIdentifier", + "src": "4099:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4112:9:74", + "nodeType": "YulIdentifier", + "src": "4112:9:74" + }, + { + "kind": "number", + "nativeSrc": "4123:1:74", + "nodeType": "YulLiteral", + "src": "4123:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4108:3:74", + "nodeType": "YulIdentifier", + "src": "4108:3:74" + }, + "nativeSrc": "4108:17:74", + "nodeType": "YulFunctionCall", + "src": "4108:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4055:43:74", + "nodeType": "YulIdentifier", + "src": "4055:43:74" + }, + "nativeSrc": "4055:71:74", + "nodeType": "YulFunctionCall", + "src": "4055:71:74" + }, + "nativeSrc": "4055:71:74", + "nodeType": "YulExpressionStatement", + "src": "4055:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "3911:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3981:9:74", + "nodeType": "YulTypedName", + "src": "3981:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3993:6:74", + "nodeType": "YulTypedName", + "src": "3993:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4004:4:74", + "nodeType": "YulTypedName", + "src": "4004:4:74", + "type": "" + } + ], + "src": "3911:222:74" + }, + { + "body": { + "nativeSrc": "4182:79:74", + "nodeType": "YulBlock", + "src": "4182:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4239:16:74", + "nodeType": "YulBlock", + "src": "4239:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4248:1:74", + "nodeType": "YulLiteral", + "src": "4248:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4251:1:74", + "nodeType": "YulLiteral", + "src": "4251:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4241:6:74", + "nodeType": "YulIdentifier", + "src": "4241:6:74" + }, + "nativeSrc": "4241:12:74", + "nodeType": "YulFunctionCall", + "src": "4241:12:74" + }, + "nativeSrc": "4241:12:74", + "nodeType": "YulExpressionStatement", + "src": "4241:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4205:5:74", + "nodeType": "YulIdentifier", + "src": "4205:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4230:5:74", + "nodeType": "YulIdentifier", + "src": "4230:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4212:17:74", + "nodeType": "YulIdentifier", + "src": "4212:17:74" + }, + "nativeSrc": "4212:24:74", + "nodeType": "YulFunctionCall", + "src": "4212:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4202:2:74", + "nodeType": "YulIdentifier", + "src": "4202:2:74" + }, + "nativeSrc": "4202:35:74", + "nodeType": "YulFunctionCall", + "src": "4202:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4195:6:74", + "nodeType": "YulIdentifier", + "src": "4195:6:74" + }, + "nativeSrc": "4195:43:74", + "nodeType": "YulFunctionCall", + "src": "4195:43:74" + }, + "nativeSrc": "4192:63:74", + "nodeType": "YulIf", + "src": "4192:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "4139:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4175:5:74", + "nodeType": "YulTypedName", + "src": "4175:5:74", + "type": "" + } + ], + "src": "4139:122:74" + }, + { + "body": { + "nativeSrc": "4319:87:74", + "nodeType": "YulBlock", + "src": "4319:87:74", + "statements": [ + { + "nativeSrc": "4329:29:74", + "nodeType": "YulAssignment", + "src": "4329:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4351:6:74", + "nodeType": "YulIdentifier", + "src": "4351:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4338:12:74", + "nodeType": "YulIdentifier", + "src": "4338:12:74" + }, + "nativeSrc": "4338:20:74", + "nodeType": "YulFunctionCall", + "src": "4338:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4329:5:74", + "nodeType": "YulIdentifier", + "src": "4329:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4394:5:74", + "nodeType": "YulIdentifier", + "src": "4394:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "4367:26:74", + "nodeType": "YulIdentifier", + "src": "4367:26:74" + }, + "nativeSrc": "4367:33:74", + "nodeType": "YulFunctionCall", + "src": "4367:33:74" + }, + "nativeSrc": "4367:33:74", + "nodeType": "YulExpressionStatement", + "src": "4367:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "4267:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4297:6:74", + "nodeType": "YulTypedName", + "src": "4297:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4305:3:74", + "nodeType": "YulTypedName", + "src": "4305:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4313:5:74", + "nodeType": "YulTypedName", + "src": "4313:5:74", + "type": "" + } + ], + "src": "4267:139:74" + }, + { + "body": { + "nativeSrc": "4495:391:74", + "nodeType": "YulBlock", + "src": "4495:391:74", + "statements": [ + { + "body": { + "nativeSrc": "4541:83:74", + "nodeType": "YulBlock", + "src": "4541:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4543:77:74", + "nodeType": "YulIdentifier", + "src": "4543:77:74" + }, + "nativeSrc": "4543:79:74", + "nodeType": "YulFunctionCall", + "src": "4543:79:74" + }, + "nativeSrc": "4543:79:74", + "nodeType": "YulExpressionStatement", + "src": "4543:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4516:7:74", + "nodeType": "YulIdentifier", + "src": "4516:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4525:9:74", + "nodeType": "YulIdentifier", + "src": "4525:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4512:3:74", + "nodeType": "YulIdentifier", + "src": "4512:3:74" + }, + "nativeSrc": "4512:23:74", + "nodeType": "YulFunctionCall", + "src": "4512:23:74" + }, + { + "kind": "number", + "nativeSrc": "4537:2:74", + "nodeType": "YulLiteral", + "src": "4537:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4508:3:74", + "nodeType": "YulIdentifier", + "src": "4508:3:74" + }, + "nativeSrc": "4508:32:74", + "nodeType": "YulFunctionCall", + "src": "4508:32:74" + }, + "nativeSrc": "4505:119:74", + "nodeType": "YulIf", + "src": "4505:119:74" + }, + { + "nativeSrc": "4634:117:74", + "nodeType": "YulBlock", + "src": "4634:117:74", + "statements": [ + { + "nativeSrc": "4649:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4649:15:74", + "value": { + "kind": "number", + "nativeSrc": "4663:1:74", + "nodeType": "YulLiteral", + "src": "4663:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4653:6:74", + "nodeType": "YulTypedName", + "src": "4653:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4678:63:74", + "nodeType": "YulAssignment", + "src": "4678:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4713:9:74", + "nodeType": "YulIdentifier", + "src": "4713:9:74" + }, + { + "name": "offset", + "nativeSrc": "4724:6:74", + "nodeType": "YulIdentifier", + "src": "4724:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4709:3:74", + "nodeType": "YulIdentifier", + "src": "4709:3:74" + }, + "nativeSrc": "4709:22:74", + "nodeType": "YulFunctionCall", + "src": "4709:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4733:7:74", + "nodeType": "YulIdentifier", + "src": "4733:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "4688:20:74", + "nodeType": "YulIdentifier", + "src": "4688:20:74" + }, + "nativeSrc": "4688:53:74", + "nodeType": "YulFunctionCall", + "src": "4688:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4678:6:74", + "nodeType": "YulIdentifier", + "src": "4678:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4761:118:74", + "nodeType": "YulBlock", + "src": "4761:118:74", + "statements": [ + { + "nativeSrc": "4776:16:74", + "nodeType": "YulVariableDeclaration", + "src": "4776:16:74", + "value": { + "kind": "number", + "nativeSrc": "4790:2:74", + "nodeType": "YulLiteral", + "src": "4790:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4780:6:74", + "nodeType": "YulTypedName", + "src": "4780:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4806:63:74", + "nodeType": "YulAssignment", + "src": "4806:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4841:9:74", + "nodeType": "YulIdentifier", + "src": "4841:9:74" + }, + { + "name": "offset", + "nativeSrc": "4852:6:74", + "nodeType": "YulIdentifier", + "src": "4852:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4837:3:74", + "nodeType": "YulIdentifier", + "src": "4837:3:74" + }, + "nativeSrc": "4837:22:74", + "nodeType": "YulFunctionCall", + "src": "4837:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4861:7:74", + "nodeType": "YulIdentifier", + "src": "4861:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "4816:20:74", + "nodeType": "YulIdentifier", + "src": "4816:20:74" + }, + "nativeSrc": "4816:53:74", + "nodeType": "YulFunctionCall", + "src": "4816:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "4806:6:74", + "nodeType": "YulIdentifier", + "src": "4806:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nativeSrc": "4412:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4457:9:74", + "nodeType": "YulTypedName", + "src": "4457:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4468:7:74", + "nodeType": "YulTypedName", + "src": "4468:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4480:6:74", + "nodeType": "YulTypedName", + "src": "4480:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4488:6:74", + "nodeType": "YulTypedName", + "src": "4488:6:74", + "type": "" + } + ], + "src": "4412:474:74" + }, + { + "body": { + "nativeSrc": "4992:519:74", + "nodeType": "YulBlock", + "src": "4992:519:74", + "statements": [ + { + "body": { + "nativeSrc": "5038:83:74", + "nodeType": "YulBlock", + "src": "5038:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5040:77:74", + "nodeType": "YulIdentifier", + "src": "5040:77:74" + }, + "nativeSrc": "5040:79:74", + "nodeType": "YulFunctionCall", + "src": "5040:79:74" + }, + "nativeSrc": "5040:79:74", + "nodeType": "YulExpressionStatement", + "src": "5040:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5013:7:74", + "nodeType": "YulIdentifier", + "src": "5013:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5022:9:74", + "nodeType": "YulIdentifier", + "src": "5022:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5009:3:74", + "nodeType": "YulIdentifier", + "src": "5009:3:74" + }, + "nativeSrc": "5009:23:74", + "nodeType": "YulFunctionCall", + "src": "5009:23:74" + }, + { + "kind": "number", + "nativeSrc": "5034:2:74", + "nodeType": "YulLiteral", + "src": "5034:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5005:3:74", + "nodeType": "YulIdentifier", + "src": "5005:3:74" + }, + "nativeSrc": "5005:32:74", + "nodeType": "YulFunctionCall", + "src": "5005:32:74" + }, + "nativeSrc": "5002:119:74", + "nodeType": "YulIf", + "src": "5002:119:74" + }, + { + "nativeSrc": "5131:117:74", + "nodeType": "YulBlock", + "src": "5131:117:74", + "statements": [ + { + "nativeSrc": "5146:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5146:15:74", + "value": { + "kind": "number", + "nativeSrc": "5160:1:74", + "nodeType": "YulLiteral", + "src": "5160:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5150:6:74", + "nodeType": "YulTypedName", + "src": "5150:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5175:63:74", + "nodeType": "YulAssignment", + "src": "5175:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5210:9:74", + "nodeType": "YulIdentifier", + "src": "5210:9:74" + }, + { + "name": "offset", + "nativeSrc": "5221:6:74", + "nodeType": "YulIdentifier", + "src": "5221:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5206:3:74", + "nodeType": "YulIdentifier", + "src": "5206:3:74" + }, + "nativeSrc": "5206:22:74", + "nodeType": "YulFunctionCall", + "src": "5206:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5230:7:74", + "nodeType": "YulIdentifier", + "src": "5230:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "5185:20:74", + "nodeType": "YulIdentifier", + "src": "5185:20:74" + }, + "nativeSrc": "5185:53:74", + "nodeType": "YulFunctionCall", + "src": "5185:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5175:6:74", + "nodeType": "YulIdentifier", + "src": "5175:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5258:118:74", + "nodeType": "YulBlock", + "src": "5258:118:74", + "statements": [ + { + "nativeSrc": "5273:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5273:16:74", + "value": { + "kind": "number", + "nativeSrc": "5287:2:74", + "nodeType": "YulLiteral", + "src": "5287:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5277:6:74", + "nodeType": "YulTypedName", + "src": "5277:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5303:63:74", + "nodeType": "YulAssignment", + "src": "5303:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5338:9:74", + "nodeType": "YulIdentifier", + "src": "5338:9:74" + }, + { + "name": "offset", + "nativeSrc": "5349:6:74", + "nodeType": "YulIdentifier", + "src": "5349:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5334:3:74", + "nodeType": "YulIdentifier", + "src": "5334:3:74" + }, + "nativeSrc": "5334:22:74", + "nodeType": "YulFunctionCall", + "src": "5334:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5358:7:74", + "nodeType": "YulIdentifier", + "src": "5358:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5313:20:74", + "nodeType": "YulIdentifier", + "src": "5313:20:74" + }, + "nativeSrc": "5313:53:74", + "nodeType": "YulFunctionCall", + "src": "5313:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5303:6:74", + "nodeType": "YulIdentifier", + "src": "5303:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5386:118:74", + "nodeType": "YulBlock", + "src": "5386:118:74", + "statements": [ + { + "nativeSrc": "5401:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5401:16:74", + "value": { + "kind": "number", + "nativeSrc": "5415:2:74", + "nodeType": "YulLiteral", + "src": "5415:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5405:6:74", + "nodeType": "YulTypedName", + "src": "5405:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5431:63:74", + "nodeType": "YulAssignment", + "src": "5431:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5466:9:74", + "nodeType": "YulIdentifier", + "src": "5466:9:74" + }, + { + "name": "offset", + "nativeSrc": "5477:6:74", + "nodeType": "YulIdentifier", + "src": "5477:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5462:3:74", + "nodeType": "YulIdentifier", + "src": "5462:3:74" + }, + "nativeSrc": "5462:22:74", + "nodeType": "YulFunctionCall", + "src": "5462:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5486:7:74", + "nodeType": "YulIdentifier", + "src": "5486:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "5441:20:74", + "nodeType": "YulIdentifier", + "src": "5441:20:74" + }, + "nativeSrc": "5441:53:74", + "nodeType": "YulFunctionCall", + "src": "5441:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "5431:6:74", + "nodeType": "YulIdentifier", + "src": "5431:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_addresst_uint256", + "nativeSrc": "4892:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4946:9:74", + "nodeType": "YulTypedName", + "src": "4946:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4957:7:74", + "nodeType": "YulTypedName", + "src": "4957:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4969:6:74", + "nodeType": "YulTypedName", + "src": "4969:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4977:6:74", + "nodeType": "YulTypedName", + "src": "4977:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "4985:6:74", + "nodeType": "YulTypedName", + "src": "4985:6:74", + "type": "" + } + ], + "src": "4892:619:74" + }, + { + "body": { + "nativeSrc": "5582:53:74", + "nodeType": "YulBlock", + "src": "5582:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5599:3:74", + "nodeType": "YulIdentifier", + "src": "5599:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5622:5:74", + "nodeType": "YulIdentifier", + "src": "5622:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5604:17:74", + "nodeType": "YulIdentifier", + "src": "5604:17:74" + }, + "nativeSrc": "5604:24:74", + "nodeType": "YulFunctionCall", + "src": "5604:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5592:6:74", + "nodeType": "YulIdentifier", + "src": "5592:6:74" + }, + "nativeSrc": "5592:37:74", + "nodeType": "YulFunctionCall", + "src": "5592:37:74" + }, + "nativeSrc": "5592:37:74", + "nodeType": "YulExpressionStatement", + "src": "5592:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "5517:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5570:5:74", + "nodeType": "YulTypedName", + "src": "5570:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "5577:3:74", + "nodeType": "YulTypedName", + "src": "5577:3:74", + "type": "" + } + ], + "src": "5517:118:74" + }, + { + "body": { + "nativeSrc": "5739:124:74", + "nodeType": "YulBlock", + "src": "5739:124:74", + "statements": [ + { + "nativeSrc": "5749:26:74", + "nodeType": "YulAssignment", + "src": "5749:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5761:9:74", + "nodeType": "YulIdentifier", + "src": "5761:9:74" + }, + { + "kind": "number", + "nativeSrc": "5772:2:74", + "nodeType": "YulLiteral", + "src": "5772:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5757:3:74", + "nodeType": "YulIdentifier", + "src": "5757:3:74" + }, + "nativeSrc": "5757:18:74", + "nodeType": "YulFunctionCall", + "src": "5757:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5749:4:74", + "nodeType": "YulIdentifier", + "src": "5749:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "5829:6:74", + "nodeType": "YulIdentifier", + "src": "5829:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5842:9:74", + "nodeType": "YulIdentifier", + "src": "5842:9:74" + }, + { + "kind": "number", + "nativeSrc": "5853:1:74", + "nodeType": "YulLiteral", + "src": "5853:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5838:3:74", + "nodeType": "YulIdentifier", + "src": "5838:3:74" + }, + "nativeSrc": "5838:17:74", + "nodeType": "YulFunctionCall", + "src": "5838:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "5785:43:74", + "nodeType": "YulIdentifier", + "src": "5785:43:74" + }, + "nativeSrc": "5785:71:74", + "nodeType": "YulFunctionCall", + "src": "5785:71:74" + }, + "nativeSrc": "5785:71:74", + "nodeType": "YulExpressionStatement", + "src": "5785:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "5641:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5711:9:74", + "nodeType": "YulTypedName", + "src": "5711:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "5723:6:74", + "nodeType": "YulTypedName", + "src": "5723:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5734:4:74", + "nodeType": "YulTypedName", + "src": "5734:4:74", + "type": "" + } + ], + "src": "5641:222:74" + }, + { + "body": { + "nativeSrc": "5969:519:74", + "nodeType": "YulBlock", + "src": "5969:519:74", + "statements": [ + { + "body": { + "nativeSrc": "6015:83:74", + "nodeType": "YulBlock", + "src": "6015:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6017:77:74", + "nodeType": "YulIdentifier", + "src": "6017:77:74" + }, + "nativeSrc": "6017:79:74", + "nodeType": "YulFunctionCall", + "src": "6017:79:74" + }, + "nativeSrc": "6017:79:74", + "nodeType": "YulExpressionStatement", + "src": "6017:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5990:7:74", + "nodeType": "YulIdentifier", + "src": "5990:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5999:9:74", + "nodeType": "YulIdentifier", + "src": "5999:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5986:3:74", + "nodeType": "YulIdentifier", + "src": "5986:3:74" + }, + "nativeSrc": "5986:23:74", + "nodeType": "YulFunctionCall", + "src": "5986:23:74" + }, + { + "kind": "number", + "nativeSrc": "6011:2:74", + "nodeType": "YulLiteral", + "src": "6011:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5982:3:74", + "nodeType": "YulIdentifier", + "src": "5982:3:74" + }, + "nativeSrc": "5982:32:74", + "nodeType": "YulFunctionCall", + "src": "5982:32:74" + }, + "nativeSrc": "5979:119:74", + "nodeType": "YulIf", + "src": "5979:119:74" + }, + { + "nativeSrc": "6108:117:74", + "nodeType": "YulBlock", + "src": "6108:117:74", + "statements": [ + { + "nativeSrc": "6123:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6123:15:74", + "value": { + "kind": "number", + "nativeSrc": "6137:1:74", + "nodeType": "YulLiteral", + "src": "6137:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6127:6:74", + "nodeType": "YulTypedName", + "src": "6127:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6152:63:74", + "nodeType": "YulAssignment", + "src": "6152:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6187:9:74", + "nodeType": "YulIdentifier", + "src": "6187:9:74" + }, + { + "name": "offset", + "nativeSrc": "6198:6:74", + "nodeType": "YulIdentifier", + "src": "6198:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6183:3:74", + "nodeType": "YulIdentifier", + "src": "6183:3:74" + }, + "nativeSrc": "6183:22:74", + "nodeType": "YulFunctionCall", + "src": "6183:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6207:7:74", + "nodeType": "YulIdentifier", + "src": "6207:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6162:20:74", + "nodeType": "YulIdentifier", + "src": "6162:20:74" + }, + "nativeSrc": "6162:53:74", + "nodeType": "YulFunctionCall", + "src": "6162:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6152:6:74", + "nodeType": "YulIdentifier", + "src": "6152:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6235:118:74", + "nodeType": "YulBlock", + "src": "6235:118:74", + "statements": [ + { + "nativeSrc": "6250:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6250:16:74", + "value": { + "kind": "number", + "nativeSrc": "6264:2:74", + "nodeType": "YulLiteral", + "src": "6264:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6254:6:74", + "nodeType": "YulTypedName", + "src": "6254:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6280:63:74", + "nodeType": "YulAssignment", + "src": "6280:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6315:9:74", + "nodeType": "YulIdentifier", + "src": "6315:9:74" + }, + { + "name": "offset", + "nativeSrc": "6326:6:74", + "nodeType": "YulIdentifier", + "src": "6326:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6311:3:74", + "nodeType": "YulIdentifier", + "src": "6311:3:74" + }, + "nativeSrc": "6311:22:74", + "nodeType": "YulFunctionCall", + "src": "6311:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6335:7:74", + "nodeType": "YulIdentifier", + "src": "6335:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6290:20:74", + "nodeType": "YulIdentifier", + "src": "6290:20:74" + }, + "nativeSrc": "6290:53:74", + "nodeType": "YulFunctionCall", + "src": "6290:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6280:6:74", + "nodeType": "YulIdentifier", + "src": "6280:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6363:118:74", + "nodeType": "YulBlock", + "src": "6363:118:74", + "statements": [ + { + "nativeSrc": "6378:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6378:16:74", + "value": { + "kind": "number", + "nativeSrc": "6392:2:74", + "nodeType": "YulLiteral", + "src": "6392:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6382:6:74", + "nodeType": "YulTypedName", + "src": "6382:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6408:63:74", + "nodeType": "YulAssignment", + "src": "6408:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6443:9:74", + "nodeType": "YulIdentifier", + "src": "6443:9:74" + }, + { + "name": "offset", + "nativeSrc": "6454:6:74", + "nodeType": "YulIdentifier", + "src": "6454:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6439:3:74", + "nodeType": "YulIdentifier", + "src": "6439:3:74" + }, + "nativeSrc": "6439:22:74", + "nodeType": "YulFunctionCall", + "src": "6439:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6463:7:74", + "nodeType": "YulIdentifier", + "src": "6463:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "6418:20:74", + "nodeType": "YulIdentifier", + "src": "6418:20:74" + }, + "nativeSrc": "6418:53:74", + "nodeType": "YulFunctionCall", + "src": "6418:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "6408:6:74", + "nodeType": "YulIdentifier", + "src": "6408:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nativeSrc": "5869:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5923:9:74", + "nodeType": "YulTypedName", + "src": "5923:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5934:7:74", + "nodeType": "YulTypedName", + "src": "5934:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5946:6:74", + "nodeType": "YulTypedName", + "src": "5946:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5954:6:74", + "nodeType": "YulTypedName", + "src": "5954:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "5962:6:74", + "nodeType": "YulTypedName", + "src": "5962:6:74", + "type": "" + } + ], + "src": "5869:619:74" + }, + { + "body": { + "nativeSrc": "6577:391:74", + "nodeType": "YulBlock", + "src": "6577:391:74", + "statements": [ + { + "body": { + "nativeSrc": "6623:83:74", + "nodeType": "YulBlock", + "src": "6623:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6625:77:74", + "nodeType": "YulIdentifier", + "src": "6625:77:74" + }, + "nativeSrc": "6625:79:74", + "nodeType": "YulFunctionCall", + "src": "6625:79:74" + }, + "nativeSrc": "6625:79:74", + "nodeType": "YulExpressionStatement", + "src": "6625:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6598:7:74", + "nodeType": "YulIdentifier", + "src": "6598:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6607:9:74", + "nodeType": "YulIdentifier", + "src": "6607:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6594:3:74", + "nodeType": "YulIdentifier", + "src": "6594:3:74" + }, + "nativeSrc": "6594:23:74", + "nodeType": "YulFunctionCall", + "src": "6594:23:74" + }, + { + "kind": "number", + "nativeSrc": "6619:2:74", + "nodeType": "YulLiteral", + "src": "6619:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6590:3:74", + "nodeType": "YulIdentifier", + "src": "6590:3:74" + }, + "nativeSrc": "6590:32:74", + "nodeType": "YulFunctionCall", + "src": "6590:32:74" + }, + "nativeSrc": "6587:119:74", + "nodeType": "YulIf", + "src": "6587:119:74" + }, + { + "nativeSrc": "6716:117:74", + "nodeType": "YulBlock", + "src": "6716:117:74", + "statements": [ + { + "nativeSrc": "6731:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6731:15:74", + "value": { + "kind": "number", + "nativeSrc": "6745:1:74", + "nodeType": "YulLiteral", + "src": "6745:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6735:6:74", + "nodeType": "YulTypedName", + "src": "6735:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6760:63:74", + "nodeType": "YulAssignment", + "src": "6760:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6795:9:74", + "nodeType": "YulIdentifier", + "src": "6795:9:74" + }, + { + "name": "offset", + "nativeSrc": "6806:6:74", + "nodeType": "YulIdentifier", + "src": "6806:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6791:3:74", + "nodeType": "YulIdentifier", + "src": "6791:3:74" + }, + "nativeSrc": "6791:22:74", + "nodeType": "YulFunctionCall", + "src": "6791:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6815:7:74", + "nodeType": "YulIdentifier", + "src": "6815:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "6770:20:74", + "nodeType": "YulIdentifier", + "src": "6770:20:74" + }, + "nativeSrc": "6770:53:74", + "nodeType": "YulFunctionCall", + "src": "6770:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6760:6:74", + "nodeType": "YulIdentifier", + "src": "6760:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6843:118:74", + "nodeType": "YulBlock", + "src": "6843:118:74", + "statements": [ + { + "nativeSrc": "6858:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6858:16:74", + "value": { + "kind": "number", + "nativeSrc": "6872:2:74", + "nodeType": "YulLiteral", + "src": "6872:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6862:6:74", + "nodeType": "YulTypedName", + "src": "6862:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6888:63:74", + "nodeType": "YulAssignment", + "src": "6888:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6923:9:74", + "nodeType": "YulIdentifier", + "src": "6923:9:74" + }, + { + "name": "offset", + "nativeSrc": "6934:6:74", + "nodeType": "YulIdentifier", + "src": "6934:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6919:3:74", + "nodeType": "YulIdentifier", + "src": "6919:3:74" + }, + "nativeSrc": "6919:22:74", + "nodeType": "YulFunctionCall", + "src": "6919:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6943:7:74", + "nodeType": "YulIdentifier", + "src": "6943:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6898:20:74", + "nodeType": "YulIdentifier", + "src": "6898:20:74" + }, + "nativeSrc": "6898:53:74", + "nodeType": "YulFunctionCall", + "src": "6898:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6888:6:74", + "nodeType": "YulIdentifier", + "src": "6888:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_address", + "nativeSrc": "6494:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6539:9:74", + "nodeType": "YulTypedName", + "src": "6539:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6550:7:74", + "nodeType": "YulTypedName", + "src": "6550:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6562:6:74", + "nodeType": "YulTypedName", + "src": "6562:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6570:6:74", + "nodeType": "YulTypedName", + "src": "6570:6:74", + "type": "" + } + ], + "src": "6494:474:74" + }, + { + "body": { + "nativeSrc": "7006:28:74", + "nodeType": "YulBlock", + "src": "7006:28:74", + "statements": [ + { + "nativeSrc": "7016:12:74", + "nodeType": "YulAssignment", + "src": "7016:12:74", + "value": { + "name": "value", + "nativeSrc": "7023:5:74", + "nodeType": "YulIdentifier", + "src": "7023:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7016:3:74", + "nodeType": "YulIdentifier", + "src": "7016:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "6974:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6992:5:74", + "nodeType": "YulTypedName", + "src": "6992:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7002:3:74", + "nodeType": "YulTypedName", + "src": "7002:3:74", + "type": "" + } + ], + "src": "6974:60:74" + }, + { + "body": { + "nativeSrc": "7100:82:74", + "nodeType": "YulBlock", + "src": "7100:82:74", + "statements": [ + { + "nativeSrc": "7110:66:74", + "nodeType": "YulAssignment", + "src": "7110:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7168:5:74", + "nodeType": "YulIdentifier", + "src": "7168:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "7150:17:74", + "nodeType": "YulIdentifier", + "src": "7150:17:74" + }, + "nativeSrc": "7150:24:74", + "nodeType": "YulFunctionCall", + "src": "7150:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "7141:8:74", + "nodeType": "YulIdentifier", + "src": "7141:8:74" + }, + "nativeSrc": "7141:34:74", + "nodeType": "YulFunctionCall", + "src": "7141:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "7123:17:74", + "nodeType": "YulIdentifier", + "src": "7123:17:74" + }, + "nativeSrc": "7123:53:74", + "nodeType": "YulFunctionCall", + "src": "7123:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7110:9:74", + "nodeType": "YulIdentifier", + "src": "7110:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "7040:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7080:5:74", + "nodeType": "YulTypedName", + "src": "7080:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7090:9:74", + "nodeType": "YulTypedName", + "src": "7090:9:74", + "type": "" + } + ], + "src": "7040:142:74" + }, + { + "body": { + "nativeSrc": "7248:66:74", + "nodeType": "YulBlock", + "src": "7248:66:74", + "statements": [ + { + "nativeSrc": "7258:50:74", + "nodeType": "YulAssignment", + "src": "7258:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7302:5:74", + "nodeType": "YulIdentifier", + "src": "7302:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "7271:30:74", + "nodeType": "YulIdentifier", + "src": "7271:30:74" + }, + "nativeSrc": "7271:37:74", + "nodeType": "YulFunctionCall", + "src": "7271:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7258:9:74", + "nodeType": "YulIdentifier", + "src": "7258:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "7188:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7228:5:74", + "nodeType": "YulTypedName", + "src": "7228:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7238:9:74", + "nodeType": "YulTypedName", + "src": "7238:9:74", + "type": "" + } + ], + "src": "7188:126:74" + }, + { + "body": { + "nativeSrc": "7392:66:74", + "nodeType": "YulBlock", + "src": "7392:66:74", + "statements": [ + { + "nativeSrc": "7402:50:74", + "nodeType": "YulAssignment", + "src": "7402:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7446:5:74", + "nodeType": "YulIdentifier", + "src": "7446:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "7415:30:74", + "nodeType": "YulIdentifier", + "src": "7415:30:74" + }, + "nativeSrc": "7415:37:74", + "nodeType": "YulFunctionCall", + "src": "7415:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7402:9:74", + "nodeType": "YulIdentifier", + "src": "7402:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "7320:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7372:5:74", + "nodeType": "YulTypedName", + "src": "7372:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7382:9:74", + "nodeType": "YulTypedName", + "src": "7382:9:74", + "type": "" + } + ], + "src": "7320:138:74" + }, + { + "body": { + "nativeSrc": "7541:78:74", + "nodeType": "YulBlock", + "src": "7541:78:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7558:3:74", + "nodeType": "YulIdentifier", + "src": "7558:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7606:5:74", + "nodeType": "YulIdentifier", + "src": "7606:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "7563:42:74", + "nodeType": "YulIdentifier", + "src": "7563:42:74" + }, + "nativeSrc": "7563:49:74", + "nodeType": "YulFunctionCall", + "src": "7563:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7551:6:74", + "nodeType": "YulIdentifier", + "src": "7551:6:74" + }, + "nativeSrc": "7551:62:74", + "nodeType": "YulFunctionCall", + "src": "7551:62:74" + }, + "nativeSrc": "7551:62:74", + "nodeType": "YulExpressionStatement", + "src": "7551:62:74" + } + ] + }, + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "7464:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7529:5:74", + "nodeType": "YulTypedName", + "src": "7529:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7536:3:74", + "nodeType": "YulTypedName", + "src": "7536:3:74", + "type": "" + } + ], + "src": "7464:155:74" + }, + { + "body": { + "nativeSrc": "7735:136:74", + "nodeType": "YulBlock", + "src": "7735:136:74", + "statements": [ + { + "nativeSrc": "7745:26:74", + "nodeType": "YulAssignment", + "src": "7745:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7757:9:74", + "nodeType": "YulIdentifier", + "src": "7757:9:74" + }, + { + "kind": "number", + "nativeSrc": "7768:2:74", + "nodeType": "YulLiteral", + "src": "7768:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7753:3:74", + "nodeType": "YulIdentifier", + "src": "7753:3:74" + }, + "nativeSrc": "7753:18:74", + "nodeType": "YulFunctionCall", + "src": "7753:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7745:4:74", + "nodeType": "YulIdentifier", + "src": "7745:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "7837:6:74", + "nodeType": "YulIdentifier", + "src": "7837:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7850:9:74", + "nodeType": "YulIdentifier", + "src": "7850:9:74" + }, + { + "kind": "number", + "nativeSrc": "7861:1:74", + "nodeType": "YulLiteral", + "src": "7861:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7846:3:74", + "nodeType": "YulIdentifier", + "src": "7846:3:74" + }, + "nativeSrc": "7846:17:74", + "nodeType": "YulFunctionCall", + "src": "7846:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "7781:55:74", + "nodeType": "YulIdentifier", + "src": "7781:55:74" + }, + "nativeSrc": "7781:83:74", + "nodeType": "YulFunctionCall", + "src": "7781:83:74" + }, + "nativeSrc": "7781:83:74", + "nodeType": "YulExpressionStatement", + "src": "7781:83:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed", + "nativeSrc": "7625:246:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7707:9:74", + "nodeType": "YulTypedName", + "src": "7707:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "7719:6:74", + "nodeType": "YulTypedName", + "src": "7719:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "7730:4:74", + "nodeType": "YulTypedName", + "src": "7730:4:74", + "type": "" + } + ], + "src": "7625:246:74" + }, + { + "body": { + "nativeSrc": "7943:263:74", + "nodeType": "YulBlock", + "src": "7943:263:74", + "statements": [ + { + "body": { + "nativeSrc": "7989:83:74", + "nodeType": "YulBlock", + "src": "7989:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "7991:77:74", + "nodeType": "YulIdentifier", + "src": "7991:77:74" + }, + "nativeSrc": "7991:79:74", + "nodeType": "YulFunctionCall", + "src": "7991:79:74" + }, + "nativeSrc": "7991:79:74", + "nodeType": "YulExpressionStatement", + "src": "7991:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "7964:7:74", + "nodeType": "YulIdentifier", + "src": "7964:7:74" + }, + { + "name": "headStart", + "nativeSrc": "7973:9:74", + "nodeType": "YulIdentifier", + "src": "7973:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7960:3:74", + "nodeType": "YulIdentifier", + "src": "7960:3:74" + }, + "nativeSrc": "7960:23:74", + "nodeType": "YulFunctionCall", + "src": "7960:23:74" + }, + { + "kind": "number", + "nativeSrc": "7985:2:74", + "nodeType": "YulLiteral", + "src": "7985:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "7956:3:74", + "nodeType": "YulIdentifier", + "src": "7956:3:74" + }, + "nativeSrc": "7956:32:74", + "nodeType": "YulFunctionCall", + "src": "7956:32:74" + }, + "nativeSrc": "7953:119:74", + "nodeType": "YulIf", + "src": "7953:119:74" + }, + { + "nativeSrc": "8082:117:74", + "nodeType": "YulBlock", + "src": "8082:117:74", + "statements": [ + { + "nativeSrc": "8097:15:74", + "nodeType": "YulVariableDeclaration", + "src": "8097:15:74", + "value": { + "kind": "number", + "nativeSrc": "8111:1:74", + "nodeType": "YulLiteral", + "src": "8111:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8101:6:74", + "nodeType": "YulTypedName", + "src": "8101:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8126:63:74", + "nodeType": "YulAssignment", + "src": "8126:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8161:9:74", + "nodeType": "YulIdentifier", + "src": "8161:9:74" + }, + { + "name": "offset", + "nativeSrc": "8172:6:74", + "nodeType": "YulIdentifier", + "src": "8172:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8157:3:74", + "nodeType": "YulIdentifier", + "src": "8157:3:74" + }, + "nativeSrc": "8157:22:74", + "nodeType": "YulFunctionCall", + "src": "8157:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8181:7:74", + "nodeType": "YulIdentifier", + "src": "8181:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "8136:20:74", + "nodeType": "YulIdentifier", + "src": "8136:20:74" + }, + "nativeSrc": "8136:53:74", + "nodeType": "YulFunctionCall", + "src": "8136:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8126:6:74", + "nodeType": "YulIdentifier", + "src": "8126:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "7877:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7913:9:74", + "nodeType": "YulTypedName", + "src": "7913:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "7924:7:74", + "nodeType": "YulTypedName", + "src": "7924:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "7936:6:74", + "nodeType": "YulTypedName", + "src": "7936:6:74", + "type": "" + } + ], + "src": "7877:329:74" + }, + { + "body": { + "nativeSrc": "8252:76:74", + "nodeType": "YulBlock", + "src": "8252:76:74", + "statements": [ + { + "body": { + "nativeSrc": "8306:16:74", + "nodeType": "YulBlock", + "src": "8306:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8315:1:74", + "nodeType": "YulLiteral", + "src": "8315:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "8318:1:74", + "nodeType": "YulLiteral", + "src": "8318:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "8308:6:74", + "nodeType": "YulIdentifier", + "src": "8308:6:74" + }, + "nativeSrc": "8308:12:74", + "nodeType": "YulFunctionCall", + "src": "8308:12:74" + }, + "nativeSrc": "8308:12:74", + "nodeType": "YulExpressionStatement", + "src": "8308:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8275:5:74", + "nodeType": "YulIdentifier", + "src": "8275:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8297:5:74", + "nodeType": "YulIdentifier", + "src": "8297:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "8282:14:74", + "nodeType": "YulIdentifier", + "src": "8282:14:74" + }, + "nativeSrc": "8282:21:74", + "nodeType": "YulFunctionCall", + "src": "8282:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "8272:2:74", + "nodeType": "YulIdentifier", + "src": "8272:2:74" + }, + "nativeSrc": "8272:32:74", + "nodeType": "YulFunctionCall", + "src": "8272:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8265:6:74", + "nodeType": "YulIdentifier", + "src": "8265:6:74" + }, + "nativeSrc": "8265:40:74", + "nodeType": "YulFunctionCall", + "src": "8265:40:74" + }, + "nativeSrc": "8262:60:74", + "nodeType": "YulIf", + "src": "8262:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "8212:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8245:5:74", + "nodeType": "YulTypedName", + "src": "8245:5:74", + "type": "" + } + ], + "src": "8212:116:74" + }, + { + "body": { + "nativeSrc": "8383:84:74", + "nodeType": "YulBlock", + "src": "8383:84:74", + "statements": [ + { + "nativeSrc": "8393:29:74", + "nodeType": "YulAssignment", + "src": "8393:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8415:6:74", + "nodeType": "YulIdentifier", + "src": "8415:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8402:12:74", + "nodeType": "YulIdentifier", + "src": "8402:12:74" + }, + "nativeSrc": "8402:20:74", + "nodeType": "YulFunctionCall", + "src": "8402:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "8393:5:74", + "nodeType": "YulIdentifier", + "src": "8393:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "8455:5:74", + "nodeType": "YulIdentifier", + "src": "8455:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "8431:23:74", + "nodeType": "YulIdentifier", + "src": "8431:23:74" + }, + "nativeSrc": "8431:30:74", + "nodeType": "YulFunctionCall", + "src": "8431:30:74" + }, + "nativeSrc": "8431:30:74", + "nodeType": "YulExpressionStatement", + "src": "8431:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "8334:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8361:6:74", + "nodeType": "YulTypedName", + "src": "8361:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8369:3:74", + "nodeType": "YulTypedName", + "src": "8369:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "8377:5:74", + "nodeType": "YulTypedName", + "src": "8377:5:74", + "type": "" + } + ], + "src": "8334:133:74" + }, + { + "body": { + "nativeSrc": "8553:388:74", + "nodeType": "YulBlock", + "src": "8553:388:74", + "statements": [ + { + "body": { + "nativeSrc": "8599:83:74", + "nodeType": "YulBlock", + "src": "8599:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "8601:77:74", + "nodeType": "YulIdentifier", + "src": "8601:77:74" + }, + "nativeSrc": "8601:79:74", + "nodeType": "YulFunctionCall", + "src": "8601:79:74" + }, + "nativeSrc": "8601:79:74", + "nodeType": "YulExpressionStatement", + "src": "8601:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "8574:7:74", + "nodeType": "YulIdentifier", + "src": "8574:7:74" + }, + { + "name": "headStart", + "nativeSrc": "8583:9:74", + "nodeType": "YulIdentifier", + "src": "8583:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8570:3:74", + "nodeType": "YulIdentifier", + "src": "8570:3:74" + }, + "nativeSrc": "8570:23:74", + "nodeType": "YulFunctionCall", + "src": "8570:23:74" + }, + { + "kind": "number", + "nativeSrc": "8595:2:74", + "nodeType": "YulLiteral", + "src": "8595:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8566:3:74", + "nodeType": "YulIdentifier", + "src": "8566:3:74" + }, + "nativeSrc": "8566:32:74", + "nodeType": "YulFunctionCall", + "src": "8566:32:74" + }, + "nativeSrc": "8563:119:74", + "nodeType": "YulIf", + "src": "8563:119:74" + }, + { + "nativeSrc": "8692:117:74", + "nodeType": "YulBlock", + "src": "8692:117:74", + "statements": [ + { + "nativeSrc": "8707:15:74", + "nodeType": "YulVariableDeclaration", + "src": "8707:15:74", + "value": { + "kind": "number", + "nativeSrc": "8721:1:74", + "nodeType": "YulLiteral", + "src": "8721:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8711:6:74", + "nodeType": "YulTypedName", + "src": "8711:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8736:63:74", + "nodeType": "YulAssignment", + "src": "8736:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8771:9:74", + "nodeType": "YulIdentifier", + "src": "8771:9:74" + }, + { + "name": "offset", + "nativeSrc": "8782:6:74", + "nodeType": "YulIdentifier", + "src": "8782:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8767:3:74", + "nodeType": "YulIdentifier", + "src": "8767:3:74" + }, + "nativeSrc": "8767:22:74", + "nodeType": "YulFunctionCall", + "src": "8767:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8791:7:74", + "nodeType": "YulIdentifier", + "src": "8791:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "8746:20:74", + "nodeType": "YulIdentifier", + "src": "8746:20:74" + }, + "nativeSrc": "8746:53:74", + "nodeType": "YulFunctionCall", + "src": "8746:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8736:6:74", + "nodeType": "YulIdentifier", + "src": "8736:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "8819:115:74", + "nodeType": "YulBlock", + "src": "8819:115:74", + "statements": [ + { + "nativeSrc": "8834:16:74", + "nodeType": "YulVariableDeclaration", + "src": "8834:16:74", + "value": { + "kind": "number", + "nativeSrc": "8848:2:74", + "nodeType": "YulLiteral", + "src": "8848:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8838:6:74", + "nodeType": "YulTypedName", + "src": "8838:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8864:60:74", + "nodeType": "YulAssignment", + "src": "8864:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8896:9:74", + "nodeType": "YulIdentifier", + "src": "8896:9:74" + }, + { + "name": "offset", + "nativeSrc": "8907:6:74", + "nodeType": "YulIdentifier", + "src": "8907:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8892:3:74", + "nodeType": "YulIdentifier", + "src": "8892:3:74" + }, + "nativeSrc": "8892:22:74", + "nodeType": "YulFunctionCall", + "src": "8892:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8916:7:74", + "nodeType": "YulIdentifier", + "src": "8916:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "8874:17:74", + "nodeType": "YulIdentifier", + "src": "8874:17:74" + }, + "nativeSrc": "8874:50:74", + "nodeType": "YulFunctionCall", + "src": "8874:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "8864:6:74", + "nodeType": "YulIdentifier", + "src": "8864:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "8473:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8515:9:74", + "nodeType": "YulTypedName", + "src": "8515:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "8526:7:74", + "nodeType": "YulTypedName", + "src": "8526:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "8538:6:74", + "nodeType": "YulTypedName", + "src": "8538:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8546:6:74", + "nodeType": "YulTypedName", + "src": "8546:6:74", + "type": "" + } + ], + "src": "8473:468:74" + }, + { + "body": { + "nativeSrc": "9036:28:74", + "nodeType": "YulBlock", + "src": "9036:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9053:1:74", + "nodeType": "YulLiteral", + "src": "9053:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "9056:1:74", + "nodeType": "YulLiteral", + "src": "9056:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "9046:6:74", + "nodeType": "YulIdentifier", + "src": "9046:6:74" + }, + "nativeSrc": "9046:12:74", + "nodeType": "YulFunctionCall", + "src": "9046:12:74" + }, + "nativeSrc": "9046:12:74", + "nodeType": "YulExpressionStatement", + "src": "9046:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "8947:117:74", + "nodeType": "YulFunctionDefinition", + "src": "8947:117:74" + }, + { + "body": { + "nativeSrc": "9159:28:74", + "nodeType": "YulBlock", + "src": "9159:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9176:1:74", + "nodeType": "YulLiteral", + "src": "9176:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "9179:1:74", + "nodeType": "YulLiteral", + "src": "9179:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "9169:6:74", + "nodeType": "YulIdentifier", + "src": "9169:6:74" + }, + "nativeSrc": "9169:12:74", + "nodeType": "YulFunctionCall", + "src": "9169:12:74" + }, + "nativeSrc": "9169:12:74", + "nodeType": "YulExpressionStatement", + "src": "9169:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "9070:117:74", + "nodeType": "YulFunctionDefinition", + "src": "9070:117:74" + }, + { + "body": { + "nativeSrc": "9221:152:74", + "nodeType": "YulBlock", + "src": "9221:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9238:1:74", + "nodeType": "YulLiteral", + "src": "9238:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "9241:77:74", + "nodeType": "YulLiteral", + "src": "9241:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9231:6:74", + "nodeType": "YulIdentifier", + "src": "9231:6:74" + }, + "nativeSrc": "9231:88:74", + "nodeType": "YulFunctionCall", + "src": "9231:88:74" + }, + "nativeSrc": "9231:88:74", + "nodeType": "YulExpressionStatement", + "src": "9231:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9335:1:74", + "nodeType": "YulLiteral", + "src": "9335:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "9338:4:74", + "nodeType": "YulLiteral", + "src": "9338:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9328:6:74", + "nodeType": "YulIdentifier", + "src": "9328:6:74" + }, + "nativeSrc": "9328:15:74", + "nodeType": "YulFunctionCall", + "src": "9328:15:74" + }, + "nativeSrc": "9328:15:74", + "nodeType": "YulExpressionStatement", + "src": "9328:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9359:1:74", + "nodeType": "YulLiteral", + "src": "9359:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "9362:4:74", + "nodeType": "YulLiteral", + "src": "9362:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "9352:6:74", + "nodeType": "YulIdentifier", + "src": "9352:6:74" + }, + "nativeSrc": "9352:15:74", + "nodeType": "YulFunctionCall", + "src": "9352:15:74" + }, + "nativeSrc": "9352:15:74", + "nodeType": "YulExpressionStatement", + "src": "9352:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "9193:180:74", + "nodeType": "YulFunctionDefinition", + "src": "9193:180:74" + }, + { + "body": { + "nativeSrc": "9422:238:74", + "nodeType": "YulBlock", + "src": "9422:238:74", + "statements": [ + { + "nativeSrc": "9432:58:74", + "nodeType": "YulVariableDeclaration", + "src": "9432:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "9454:6:74", + "nodeType": "YulIdentifier", + "src": "9454:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "9484:4:74", + "nodeType": "YulIdentifier", + "src": "9484:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "9462:21:74", + "nodeType": "YulIdentifier", + "src": "9462:21:74" + }, + "nativeSrc": "9462:27:74", + "nodeType": "YulFunctionCall", + "src": "9462:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9450:3:74", + "nodeType": "YulIdentifier", + "src": "9450:3:74" + }, + "nativeSrc": "9450:40:74", + "nodeType": "YulFunctionCall", + "src": "9450:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "9436:10:74", + "nodeType": "YulTypedName", + "src": "9436:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9601:22:74", + "nodeType": "YulBlock", + "src": "9601:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "9603:16:74", + "nodeType": "YulIdentifier", + "src": "9603:16:74" + }, + "nativeSrc": "9603:18:74", + "nodeType": "YulFunctionCall", + "src": "9603:18:74" + }, + "nativeSrc": "9603:18:74", + "nodeType": "YulExpressionStatement", + "src": "9603:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "9544:10:74", + "nodeType": "YulIdentifier", + "src": "9544:10:74" + }, + { + "kind": "number", + "nativeSrc": "9556:18:74", + "nodeType": "YulLiteral", + "src": "9556:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9541:2:74", + "nodeType": "YulIdentifier", + "src": "9541:2:74" + }, + "nativeSrc": "9541:34:74", + "nodeType": "YulFunctionCall", + "src": "9541:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "9580:10:74", + "nodeType": "YulIdentifier", + "src": "9580:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "9592:6:74", + "nodeType": "YulIdentifier", + "src": "9592:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "9577:2:74", + "nodeType": "YulIdentifier", + "src": "9577:2:74" + }, + "nativeSrc": "9577:22:74", + "nodeType": "YulFunctionCall", + "src": "9577:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "9538:2:74", + "nodeType": "YulIdentifier", + "src": "9538:2:74" + }, + "nativeSrc": "9538:62:74", + "nodeType": "YulFunctionCall", + "src": "9538:62:74" + }, + "nativeSrc": "9535:88:74", + "nodeType": "YulIf", + "src": "9535:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9639:2:74", + "nodeType": "YulLiteral", + "src": "9639:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "9643:10:74", + "nodeType": "YulIdentifier", + "src": "9643:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9632:6:74", + "nodeType": "YulIdentifier", + "src": "9632:6:74" + }, + "nativeSrc": "9632:22:74", + "nodeType": "YulFunctionCall", + "src": "9632:22:74" + }, + "nativeSrc": "9632:22:74", + "nodeType": "YulExpressionStatement", + "src": "9632:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "9379:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "9408:6:74", + "nodeType": "YulTypedName", + "src": "9408:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "9416:4:74", + "nodeType": "YulTypedName", + "src": "9416:4:74", + "type": "" + } + ], + "src": "9379:281:74" + }, + { + "body": { + "nativeSrc": "9707:88:74", + "nodeType": "YulBlock", + "src": "9707:88:74", + "statements": [ + { + "nativeSrc": "9717:30:74", + "nodeType": "YulAssignment", + "src": "9717:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "9727:18:74", + "nodeType": "YulIdentifier", + "src": "9727:18:74" + }, + "nativeSrc": "9727:20:74", + "nodeType": "YulFunctionCall", + "src": "9727:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "9717:6:74", + "nodeType": "YulIdentifier", + "src": "9717:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "9776:6:74", + "nodeType": "YulIdentifier", + "src": "9776:6:74" + }, + { + "name": "size", + "nativeSrc": "9784:4:74", + "nodeType": "YulIdentifier", + "src": "9784:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "9756:19:74", + "nodeType": "YulIdentifier", + "src": "9756:19:74" + }, + "nativeSrc": "9756:33:74", + "nodeType": "YulFunctionCall", + "src": "9756:33:74" + }, + "nativeSrc": "9756:33:74", + "nodeType": "YulExpressionStatement", + "src": "9756:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "9666:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "9691:4:74", + "nodeType": "YulTypedName", + "src": "9691:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "9700:6:74", + "nodeType": "YulTypedName", + "src": "9700:6:74", + "type": "" + } + ], + "src": "9666:129:74" + }, + { + "body": { + "nativeSrc": "9867:241:74", + "nodeType": "YulBlock", + "src": "9867:241:74", + "statements": [ + { + "body": { + "nativeSrc": "9972:22:74", + "nodeType": "YulBlock", + "src": "9972:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "9974:16:74", + "nodeType": "YulIdentifier", + "src": "9974:16:74" + }, + "nativeSrc": "9974:18:74", + "nodeType": "YulFunctionCall", + "src": "9974:18:74" + }, + "nativeSrc": "9974:18:74", + "nodeType": "YulExpressionStatement", + "src": "9974:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "9944:6:74", + "nodeType": "YulIdentifier", + "src": "9944:6:74" + }, + { + "kind": "number", + "nativeSrc": "9952:18:74", + "nodeType": "YulLiteral", + "src": "9952:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9941:2:74", + "nodeType": "YulIdentifier", + "src": "9941:2:74" + }, + "nativeSrc": "9941:30:74", + "nodeType": "YulFunctionCall", + "src": "9941:30:74" + }, + "nativeSrc": "9938:56:74", + "nodeType": "YulIf", + "src": "9938:56:74" + }, + { + "nativeSrc": "10004:37:74", + "nodeType": "YulAssignment", + "src": "10004:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "10034:6:74", + "nodeType": "YulIdentifier", + "src": "10034:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "10012:21:74", + "nodeType": "YulIdentifier", + "src": "10012:21:74" + }, + "nativeSrc": "10012:29:74", + "nodeType": "YulFunctionCall", + "src": "10012:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "10004:4:74", + "nodeType": "YulIdentifier", + "src": "10004:4:74" + } + ] + }, + { + "nativeSrc": "10078:23:74", + "nodeType": "YulAssignment", + "src": "10078:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "10090:4:74", + "nodeType": "YulIdentifier", + "src": "10090:4:74" + }, + { + "kind": "number", + "nativeSrc": "10096:4:74", + "nodeType": "YulLiteral", + "src": "10096:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10086:3:74", + "nodeType": "YulIdentifier", + "src": "10086:3:74" + }, + "nativeSrc": "10086:15:74", + "nodeType": "YulFunctionCall", + "src": "10086:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "10078:4:74", + "nodeType": "YulIdentifier", + "src": "10078:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "9801:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "9851:6:74", + "nodeType": "YulTypedName", + "src": "9851:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "9862:4:74", + "nodeType": "YulTypedName", + "src": "9862:4:74", + "type": "" + } + ], + "src": "9801:307:74" + }, + { + "body": { + "nativeSrc": "10178:84:74", + "nodeType": "YulBlock", + "src": "10178:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "10202:3:74", + "nodeType": "YulIdentifier", + "src": "10202:3:74" + }, + { + "name": "src", + "nativeSrc": "10207:3:74", + "nodeType": "YulIdentifier", + "src": "10207:3:74" + }, + { + "name": "length", + "nativeSrc": "10212:6:74", + "nodeType": "YulIdentifier", + "src": "10212:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "10189:12:74", + "nodeType": "YulIdentifier", + "src": "10189:12:74" + }, + "nativeSrc": "10189:30:74", + "nodeType": "YulFunctionCall", + "src": "10189:30:74" + }, + "nativeSrc": "10189:30:74", + "nodeType": "YulExpressionStatement", + "src": "10189:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "10239:3:74", + "nodeType": "YulIdentifier", + "src": "10239:3:74" + }, + { + "name": "length", + "nativeSrc": "10244:6:74", + "nodeType": "YulIdentifier", + "src": "10244:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10235:3:74", + "nodeType": "YulIdentifier", + "src": "10235:3:74" + }, + "nativeSrc": "10235:16:74", + "nodeType": "YulFunctionCall", + "src": "10235:16:74" + }, + { + "kind": "number", + "nativeSrc": "10253:1:74", + "nodeType": "YulLiteral", + "src": "10253:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10228:6:74", + "nodeType": "YulIdentifier", + "src": "10228:6:74" + }, + "nativeSrc": "10228:27:74", + "nodeType": "YulFunctionCall", + "src": "10228:27:74" + }, + "nativeSrc": "10228:27:74", + "nodeType": "YulExpressionStatement", + "src": "10228:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "10114:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "10160:3:74", + "nodeType": "YulTypedName", + "src": "10160:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "10165:3:74", + "nodeType": "YulTypedName", + "src": "10165:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "10170:6:74", + "nodeType": "YulTypedName", + "src": "10170:6:74", + "type": "" + } + ], + "src": "10114:148:74" + }, + { + "body": { + "nativeSrc": "10351:340:74", + "nodeType": "YulBlock", + "src": "10351:340:74", + "statements": [ + { + "nativeSrc": "10361:74:74", + "nodeType": "YulAssignment", + "src": "10361:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "10427:6:74", + "nodeType": "YulIdentifier", + "src": "10427:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "10386:40:74", + "nodeType": "YulIdentifier", + "src": "10386:40:74" + }, + "nativeSrc": "10386:48:74", + "nodeType": "YulFunctionCall", + "src": "10386:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "10370:15:74", + "nodeType": "YulIdentifier", + "src": "10370:15:74" + }, + "nativeSrc": "10370:65:74", + "nodeType": "YulFunctionCall", + "src": "10370:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "10361:5:74", + "nodeType": "YulIdentifier", + "src": "10361:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "10451:5:74", + "nodeType": "YulIdentifier", + "src": "10451:5:74" + }, + { + "name": "length", + "nativeSrc": "10458:6:74", + "nodeType": "YulIdentifier", + "src": "10458:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10444:6:74", + "nodeType": "YulIdentifier", + "src": "10444:6:74" + }, + "nativeSrc": "10444:21:74", + "nodeType": "YulFunctionCall", + "src": "10444:21:74" + }, + "nativeSrc": "10444:21:74", + "nodeType": "YulExpressionStatement", + "src": "10444:21:74" + }, + { + "nativeSrc": "10474:27:74", + "nodeType": "YulVariableDeclaration", + "src": "10474:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "10489:5:74", + "nodeType": "YulIdentifier", + "src": "10489:5:74" + }, + { + "kind": "number", + "nativeSrc": "10496:4:74", + "nodeType": "YulLiteral", + "src": "10496:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10485:3:74", + "nodeType": "YulIdentifier", + "src": "10485:3:74" + }, + "nativeSrc": "10485:16:74", + "nodeType": "YulFunctionCall", + "src": "10485:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "10478:3:74", + "nodeType": "YulTypedName", + "src": "10478:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10539:83:74", + "nodeType": "YulBlock", + "src": "10539:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "10541:77:74", + "nodeType": "YulIdentifier", + "src": "10541:77:74" + }, + "nativeSrc": "10541:79:74", + "nodeType": "YulFunctionCall", + "src": "10541:79:74" + }, + "nativeSrc": "10541:79:74", + "nodeType": "YulExpressionStatement", + "src": "10541:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "10520:3:74", + "nodeType": "YulIdentifier", + "src": "10520:3:74" + }, + { + "name": "length", + "nativeSrc": "10525:6:74", + "nodeType": "YulIdentifier", + "src": "10525:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10516:3:74", + "nodeType": "YulIdentifier", + "src": "10516:3:74" + }, + "nativeSrc": "10516:16:74", + "nodeType": "YulFunctionCall", + "src": "10516:16:74" + }, + { + "name": "end", + "nativeSrc": "10534:3:74", + "nodeType": "YulIdentifier", + "src": "10534:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "10513:2:74", + "nodeType": "YulIdentifier", + "src": "10513:2:74" + }, + "nativeSrc": "10513:25:74", + "nodeType": "YulFunctionCall", + "src": "10513:25:74" + }, + "nativeSrc": "10510:112:74", + "nodeType": "YulIf", + "src": "10510:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "10668:3:74", + "nodeType": "YulIdentifier", + "src": "10668:3:74" + }, + { + "name": "dst", + "nativeSrc": "10673:3:74", + "nodeType": "YulIdentifier", + "src": "10673:3:74" + }, + { + "name": "length", + "nativeSrc": "10678:6:74", + "nodeType": "YulIdentifier", + "src": "10678:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "10631:36:74", + "nodeType": "YulIdentifier", + "src": "10631:36:74" + }, + "nativeSrc": "10631:54:74", + "nodeType": "YulFunctionCall", + "src": "10631:54:74" + }, + "nativeSrc": "10631:54:74", + "nodeType": "YulExpressionStatement", + "src": "10631:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "10268:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "10324:3:74", + "nodeType": "YulTypedName", + "src": "10324:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "10329:6:74", + "nodeType": "YulTypedName", + "src": "10329:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "10337:3:74", + "nodeType": "YulTypedName", + "src": "10337:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "10345:5:74", + "nodeType": "YulTypedName", + "src": "10345:5:74", + "type": "" + } + ], + "src": "10268:423:74" + }, + { + "body": { + "nativeSrc": "10771:277:74", + "nodeType": "YulBlock", + "src": "10771:277:74", + "statements": [ + { + "body": { + "nativeSrc": "10820:83:74", + "nodeType": "YulBlock", + "src": "10820:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "10822:77:74", + "nodeType": "YulIdentifier", + "src": "10822:77:74" + }, + "nativeSrc": "10822:79:74", + "nodeType": "YulFunctionCall", + "src": "10822:79:74" + }, + "nativeSrc": "10822:79:74", + "nodeType": "YulExpressionStatement", + "src": "10822:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10799:6:74", + "nodeType": "YulIdentifier", + "src": "10799:6:74" + }, + { + "kind": "number", + "nativeSrc": "10807:4:74", + "nodeType": "YulLiteral", + "src": "10807:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10795:3:74", + "nodeType": "YulIdentifier", + "src": "10795:3:74" + }, + "nativeSrc": "10795:17:74", + "nodeType": "YulFunctionCall", + "src": "10795:17:74" + }, + { + "name": "end", + "nativeSrc": "10814:3:74", + "nodeType": "YulIdentifier", + "src": "10814:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10791:3:74", + "nodeType": "YulIdentifier", + "src": "10791:3:74" + }, + "nativeSrc": "10791:27:74", + "nodeType": "YulFunctionCall", + "src": "10791:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "10784:6:74", + "nodeType": "YulIdentifier", + "src": "10784:6:74" + }, + "nativeSrc": "10784:35:74", + "nodeType": "YulFunctionCall", + "src": "10784:35:74" + }, + "nativeSrc": "10781:122:74", + "nodeType": "YulIf", + "src": "10781:122:74" + }, + { + "nativeSrc": "10912:34:74", + "nodeType": "YulVariableDeclaration", + "src": "10912:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10939:6:74", + "nodeType": "YulIdentifier", + "src": "10939:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "10926:12:74", + "nodeType": "YulIdentifier", + "src": "10926:12:74" + }, + "nativeSrc": "10926:20:74", + "nodeType": "YulFunctionCall", + "src": "10926:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "10916:6:74", + "nodeType": "YulTypedName", + "src": "10916:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10955:87:74", + "nodeType": "YulAssignment", + "src": "10955:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11015:6:74", + "nodeType": "YulIdentifier", + "src": "11015:6:74" + }, + { + "kind": "number", + "nativeSrc": "11023:4:74", + "nodeType": "YulLiteral", + "src": "11023:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11011:3:74", + "nodeType": "YulIdentifier", + "src": "11011:3:74" + }, + "nativeSrc": "11011:17:74", + "nodeType": "YulFunctionCall", + "src": "11011:17:74" + }, + { + "name": "length", + "nativeSrc": "11030:6:74", + "nodeType": "YulIdentifier", + "src": "11030:6:74" + }, + { + "name": "end", + "nativeSrc": "11038:3:74", + "nodeType": "YulIdentifier", + "src": "11038:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "10964:46:74", + "nodeType": "YulIdentifier", + "src": "10964:46:74" + }, + "nativeSrc": "10964:78:74", + "nodeType": "YulFunctionCall", + "src": "10964:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "10955:5:74", + "nodeType": "YulIdentifier", + "src": "10955:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "10710:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "10749:6:74", + "nodeType": "YulTypedName", + "src": "10749:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "10757:3:74", + "nodeType": "YulTypedName", + "src": "10757:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "10765:5:74", + "nodeType": "YulTypedName", + "src": "10765:5:74", + "type": "" + } + ], + "src": "10710:338:74" + }, + { + "body": { + "nativeSrc": "11180:817:74", + "nodeType": "YulBlock", + "src": "11180:817:74", + "statements": [ + { + "body": { + "nativeSrc": "11227:83:74", + "nodeType": "YulBlock", + "src": "11227:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "11229:77:74", + "nodeType": "YulIdentifier", + "src": "11229:77:74" + }, + "nativeSrc": "11229:79:74", + "nodeType": "YulFunctionCall", + "src": "11229:79:74" + }, + "nativeSrc": "11229:79:74", + "nodeType": "YulExpressionStatement", + "src": "11229:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "11201:7:74", + "nodeType": "YulIdentifier", + "src": "11201:7:74" + }, + { + "name": "headStart", + "nativeSrc": "11210:9:74", + "nodeType": "YulIdentifier", + "src": "11210:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11197:3:74", + "nodeType": "YulIdentifier", + "src": "11197:3:74" + }, + "nativeSrc": "11197:23:74", + "nodeType": "YulFunctionCall", + "src": "11197:23:74" + }, + { + "kind": "number", + "nativeSrc": "11222:3:74", + "nodeType": "YulLiteral", + "src": "11222:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "11193:3:74", + "nodeType": "YulIdentifier", + "src": "11193:3:74" + }, + "nativeSrc": "11193:33:74", + "nodeType": "YulFunctionCall", + "src": "11193:33:74" + }, + "nativeSrc": "11190:120:74", + "nodeType": "YulIf", + "src": "11190:120:74" + }, + { + "nativeSrc": "11320:117:74", + "nodeType": "YulBlock", + "src": "11320:117:74", + "statements": [ + { + "nativeSrc": "11335:15:74", + "nodeType": "YulVariableDeclaration", + "src": "11335:15:74", + "value": { + "kind": "number", + "nativeSrc": "11349:1:74", + "nodeType": "YulLiteral", + "src": "11349:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11339:6:74", + "nodeType": "YulTypedName", + "src": "11339:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11364:63:74", + "nodeType": "YulAssignment", + "src": "11364:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11399:9:74", + "nodeType": "YulIdentifier", + "src": "11399:9:74" + }, + { + "name": "offset", + "nativeSrc": "11410:6:74", + "nodeType": "YulIdentifier", + "src": "11410:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11395:3:74", + "nodeType": "YulIdentifier", + "src": "11395:3:74" + }, + "nativeSrc": "11395:22:74", + "nodeType": "YulFunctionCall", + "src": "11395:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11419:7:74", + "nodeType": "YulIdentifier", + "src": "11419:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "11374:20:74", + "nodeType": "YulIdentifier", + "src": "11374:20:74" + }, + "nativeSrc": "11374:53:74", + "nodeType": "YulFunctionCall", + "src": "11374:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "11364:6:74", + "nodeType": "YulIdentifier", + "src": "11364:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11447:118:74", + "nodeType": "YulBlock", + "src": "11447:118:74", + "statements": [ + { + "nativeSrc": "11462:16:74", + "nodeType": "YulVariableDeclaration", + "src": "11462:16:74", + "value": { + "kind": "number", + "nativeSrc": "11476:2:74", + "nodeType": "YulLiteral", + "src": "11476:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11466:6:74", + "nodeType": "YulTypedName", + "src": "11466:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11492:63:74", + "nodeType": "YulAssignment", + "src": "11492:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11527:9:74", + "nodeType": "YulIdentifier", + "src": "11527:9:74" + }, + { + "name": "offset", + "nativeSrc": "11538:6:74", + "nodeType": "YulIdentifier", + "src": "11538:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11523:3:74", + "nodeType": "YulIdentifier", + "src": "11523:3:74" + }, + "nativeSrc": "11523:22:74", + "nodeType": "YulFunctionCall", + "src": "11523:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11547:7:74", + "nodeType": "YulIdentifier", + "src": "11547:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "11502:20:74", + "nodeType": "YulIdentifier", + "src": "11502:20:74" + }, + "nativeSrc": "11502:53:74", + "nodeType": "YulFunctionCall", + "src": "11502:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "11492:6:74", + "nodeType": "YulIdentifier", + "src": "11492:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11575:118:74", + "nodeType": "YulBlock", + "src": "11575:118:74", + "statements": [ + { + "nativeSrc": "11590:16:74", + "nodeType": "YulVariableDeclaration", + "src": "11590:16:74", + "value": { + "kind": "number", + "nativeSrc": "11604:2:74", + "nodeType": "YulLiteral", + "src": "11604:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11594:6:74", + "nodeType": "YulTypedName", + "src": "11594:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11620:63:74", + "nodeType": "YulAssignment", + "src": "11620:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11655:9:74", + "nodeType": "YulIdentifier", + "src": "11655:9:74" + }, + { + "name": "offset", + "nativeSrc": "11666:6:74", + "nodeType": "YulIdentifier", + "src": "11666:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11651:3:74", + "nodeType": "YulIdentifier", + "src": "11651:3:74" + }, + "nativeSrc": "11651:22:74", + "nodeType": "YulFunctionCall", + "src": "11651:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11675:7:74", + "nodeType": "YulIdentifier", + "src": "11675:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "11630:20:74", + "nodeType": "YulIdentifier", + "src": "11630:20:74" + }, + "nativeSrc": "11630:53:74", + "nodeType": "YulFunctionCall", + "src": "11630:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "11620:6:74", + "nodeType": "YulIdentifier", + "src": "11620:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11703:287:74", + "nodeType": "YulBlock", + "src": "11703:287:74", + "statements": [ + { + "nativeSrc": "11718:46:74", + "nodeType": "YulVariableDeclaration", + "src": "11718:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11749:9:74", + "nodeType": "YulIdentifier", + "src": "11749:9:74" + }, + { + "kind": "number", + "nativeSrc": "11760:2:74", + "nodeType": "YulLiteral", + "src": "11760:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11745:3:74", + "nodeType": "YulIdentifier", + "src": "11745:3:74" + }, + "nativeSrc": "11745:18:74", + "nodeType": "YulFunctionCall", + "src": "11745:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11732:12:74", + "nodeType": "YulIdentifier", + "src": "11732:12:74" + }, + "nativeSrc": "11732:32:74", + "nodeType": "YulFunctionCall", + "src": "11732:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11722:6:74", + "nodeType": "YulTypedName", + "src": "11722:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "11811:83:74", + "nodeType": "YulBlock", + "src": "11811:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "11813:77:74", + "nodeType": "YulIdentifier", + "src": "11813:77:74" + }, + "nativeSrc": "11813:79:74", + "nodeType": "YulFunctionCall", + "src": "11813:79:74" + }, + "nativeSrc": "11813:79:74", + "nodeType": "YulExpressionStatement", + "src": "11813:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11783:6:74", + "nodeType": "YulIdentifier", + "src": "11783:6:74" + }, + { + "kind": "number", + "nativeSrc": "11791:18:74", + "nodeType": "YulLiteral", + "src": "11791:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "11780:2:74", + "nodeType": "YulIdentifier", + "src": "11780:2:74" + }, + "nativeSrc": "11780:30:74", + "nodeType": "YulFunctionCall", + "src": "11780:30:74" + }, + "nativeSrc": "11777:117:74", + "nodeType": "YulIf", + "src": "11777:117:74" + }, + { + "nativeSrc": "11908:72:74", + "nodeType": "YulAssignment", + "src": "11908:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11952:9:74", + "nodeType": "YulIdentifier", + "src": "11952:9:74" + }, + { + "name": "offset", + "nativeSrc": "11963:6:74", + "nodeType": "YulIdentifier", + "src": "11963:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11948:3:74", + "nodeType": "YulIdentifier", + "src": "11948:3:74" + }, + "nativeSrc": "11948:22:74", + "nodeType": "YulFunctionCall", + "src": "11948:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11972:7:74", + "nodeType": "YulIdentifier", + "src": "11972:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "11918:29:74", + "nodeType": "YulIdentifier", + "src": "11918:29:74" + }, + "nativeSrc": "11918:62:74", + "nodeType": "YulFunctionCall", + "src": "11918:62:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "11908:6:74", + "nodeType": "YulIdentifier", + "src": "11908:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr", + "nativeSrc": "11054:943:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11126:9:74", + "nodeType": "YulTypedName", + "src": "11126:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "11137:7:74", + "nodeType": "YulTypedName", + "src": "11137:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "11149:6:74", + "nodeType": "YulTypedName", + "src": "11149:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "11157:6:74", + "nodeType": "YulTypedName", + "src": "11157:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "11165:6:74", + "nodeType": "YulTypedName", + "src": "11165:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "11173:6:74", + "nodeType": "YulTypedName", + "src": "11173:6:74", + "type": "" + } + ], + "src": "11054:943:74" + }, + { + "body": { + "nativeSrc": "12086:391:74", + "nodeType": "YulBlock", + "src": "12086:391:74", + "statements": [ + { + "body": { + "nativeSrc": "12132:83:74", + "nodeType": "YulBlock", + "src": "12132:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "12134:77:74", + "nodeType": "YulIdentifier", + "src": "12134:77:74" + }, + "nativeSrc": "12134:79:74", + "nodeType": "YulFunctionCall", + "src": "12134:79:74" + }, + "nativeSrc": "12134:79:74", + "nodeType": "YulExpressionStatement", + "src": "12134:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "12107:7:74", + "nodeType": "YulIdentifier", + "src": "12107:7:74" + }, + { + "name": "headStart", + "nativeSrc": "12116:9:74", + "nodeType": "YulIdentifier", + "src": "12116:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12103:3:74", + "nodeType": "YulIdentifier", + "src": "12103:3:74" + }, + "nativeSrc": "12103:23:74", + "nodeType": "YulFunctionCall", + "src": "12103:23:74" + }, + { + "kind": "number", + "nativeSrc": "12128:2:74", + "nodeType": "YulLiteral", + "src": "12128:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "12099:3:74", + "nodeType": "YulIdentifier", + "src": "12099:3:74" + }, + "nativeSrc": "12099:32:74", + "nodeType": "YulFunctionCall", + "src": "12099:32:74" + }, + "nativeSrc": "12096:119:74", + "nodeType": "YulIf", + "src": "12096:119:74" + }, + { + "nativeSrc": "12225:117:74", + "nodeType": "YulBlock", + "src": "12225:117:74", + "statements": [ + { + "nativeSrc": "12240:15:74", + "nodeType": "YulVariableDeclaration", + "src": "12240:15:74", + "value": { + "kind": "number", + "nativeSrc": "12254:1:74", + "nodeType": "YulLiteral", + "src": "12254:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "12244:6:74", + "nodeType": "YulTypedName", + "src": "12244:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12269:63:74", + "nodeType": "YulAssignment", + "src": "12269:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12304:9:74", + "nodeType": "YulIdentifier", + "src": "12304:9:74" + }, + { + "name": "offset", + "nativeSrc": "12315:6:74", + "nodeType": "YulIdentifier", + "src": "12315:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12300:3:74", + "nodeType": "YulIdentifier", + "src": "12300:3:74" + }, + "nativeSrc": "12300:22:74", + "nodeType": "YulFunctionCall", + "src": "12300:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12324:7:74", + "nodeType": "YulIdentifier", + "src": "12324:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "12279:20:74", + "nodeType": "YulIdentifier", + "src": "12279:20:74" + }, + "nativeSrc": "12279:53:74", + "nodeType": "YulFunctionCall", + "src": "12279:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "12269:6:74", + "nodeType": "YulIdentifier", + "src": "12269:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "12352:118:74", + "nodeType": "YulBlock", + "src": "12352:118:74", + "statements": [ + { + "nativeSrc": "12367:16:74", + "nodeType": "YulVariableDeclaration", + "src": "12367:16:74", + "value": { + "kind": "number", + "nativeSrc": "12381:2:74", + "nodeType": "YulLiteral", + "src": "12381:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "12371:6:74", + "nodeType": "YulTypedName", + "src": "12371:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12397:63:74", + "nodeType": "YulAssignment", + "src": "12397:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12432:9:74", + "nodeType": "YulIdentifier", + "src": "12432:9:74" + }, + { + "name": "offset", + "nativeSrc": "12443:6:74", + "nodeType": "YulIdentifier", + "src": "12443:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12428:3:74", + "nodeType": "YulIdentifier", + "src": "12428:3:74" + }, + "nativeSrc": "12428:22:74", + "nodeType": "YulFunctionCall", + "src": "12428:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12452:7:74", + "nodeType": "YulIdentifier", + "src": "12452:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "12407:20:74", + "nodeType": "YulIdentifier", + "src": "12407:20:74" + }, + "nativeSrc": "12407:53:74", + "nodeType": "YulFunctionCall", + "src": "12407:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "12397:6:74", + "nodeType": "YulIdentifier", + "src": "12397:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_uint256", + "nativeSrc": "12003:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12048:9:74", + "nodeType": "YulTypedName", + "src": "12048:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "12059:7:74", + "nodeType": "YulTypedName", + "src": "12059:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "12071:6:74", + "nodeType": "YulTypedName", + "src": "12071:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12079:6:74", + "nodeType": "YulTypedName", + "src": "12079:6:74", + "type": "" + } + ], + "src": "12003:474:74" + }, + { + "body": { + "nativeSrc": "12528:32:74", + "nodeType": "YulBlock", + "src": "12528:32:74", + "statements": [ + { + "nativeSrc": "12538:16:74", + "nodeType": "YulAssignment", + "src": "12538:16:74", + "value": { + "name": "value", + "nativeSrc": "12549:5:74", + "nodeType": "YulIdentifier", + "src": "12549:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "12538:7:74", + "nodeType": "YulIdentifier", + "src": "12538:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "12483:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12510:5:74", + "nodeType": "YulTypedName", + "src": "12510:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "12520:7:74", + "nodeType": "YulTypedName", + "src": "12520:7:74", + "type": "" + } + ], + "src": "12483:77:74" + }, + { + "body": { + "nativeSrc": "12631:53:74", + "nodeType": "YulBlock", + "src": "12631:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12648:3:74", + "nodeType": "YulIdentifier", + "src": "12648:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "12671:5:74", + "nodeType": "YulIdentifier", + "src": "12671:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "12653:17:74", + "nodeType": "YulIdentifier", + "src": "12653:17:74" + }, + "nativeSrc": "12653:24:74", + "nodeType": "YulFunctionCall", + "src": "12653:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12641:6:74", + "nodeType": "YulIdentifier", + "src": "12641:6:74" + }, + "nativeSrc": "12641:37:74", + "nodeType": "YulFunctionCall", + "src": "12641:37:74" + }, + "nativeSrc": "12641:37:74", + "nodeType": "YulExpressionStatement", + "src": "12641:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "12566:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12619:5:74", + "nodeType": "YulTypedName", + "src": "12619:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "12626:3:74", + "nodeType": "YulTypedName", + "src": "12626:3:74", + "type": "" + } + ], + "src": "12566:118:74" + }, + { + "body": { + "nativeSrc": "12788:124:74", + "nodeType": "YulBlock", + "src": "12788:124:74", + "statements": [ + { + "nativeSrc": "12798:26:74", + "nodeType": "YulAssignment", + "src": "12798:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12810:9:74", + "nodeType": "YulIdentifier", + "src": "12810:9:74" + }, + { + "kind": "number", + "nativeSrc": "12821:2:74", + "nodeType": "YulLiteral", + "src": "12821:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12806:3:74", + "nodeType": "YulIdentifier", + "src": "12806:3:74" + }, + "nativeSrc": "12806:18:74", + "nodeType": "YulFunctionCall", + "src": "12806:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12798:4:74", + "nodeType": "YulIdentifier", + "src": "12798:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12878:6:74", + "nodeType": "YulIdentifier", + "src": "12878:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12891:9:74", + "nodeType": "YulIdentifier", + "src": "12891:9:74" + }, + { + "kind": "number", + "nativeSrc": "12902:1:74", + "nodeType": "YulLiteral", + "src": "12902:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12887:3:74", + "nodeType": "YulIdentifier", + "src": "12887:3:74" + }, + "nativeSrc": "12887:17:74", + "nodeType": "YulFunctionCall", + "src": "12887:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "12834:43:74", + "nodeType": "YulIdentifier", + "src": "12834:43:74" + }, + "nativeSrc": "12834:71:74", + "nodeType": "YulFunctionCall", + "src": "12834:71:74" + }, + "nativeSrc": "12834:71:74", + "nodeType": "YulExpressionStatement", + "src": "12834:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "12690:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12760:9:74", + "nodeType": "YulTypedName", + "src": "12760:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12772:6:74", + "nodeType": "YulTypedName", + "src": "12772:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12783:4:74", + "nodeType": "YulTypedName", + "src": "12783:4:74", + "type": "" + } + ], + "src": "12690:222:74" + }, + { + "body": { + "nativeSrc": "13001:391:74", + "nodeType": "YulBlock", + "src": "13001:391:74", + "statements": [ + { + "body": { + "nativeSrc": "13047:83:74", + "nodeType": "YulBlock", + "src": "13047:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "13049:77:74", + "nodeType": "YulIdentifier", + "src": "13049:77:74" + }, + "nativeSrc": "13049:79:74", + "nodeType": "YulFunctionCall", + "src": "13049:79:74" + }, + "nativeSrc": "13049:79:74", + "nodeType": "YulExpressionStatement", + "src": "13049:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "13022:7:74", + "nodeType": "YulIdentifier", + "src": "13022:7:74" + }, + { + "name": "headStart", + "nativeSrc": "13031:9:74", + "nodeType": "YulIdentifier", + "src": "13031:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "13018:3:74", + "nodeType": "YulIdentifier", + "src": "13018:3:74" + }, + "nativeSrc": "13018:23:74", + "nodeType": "YulFunctionCall", + "src": "13018:23:74" + }, + { + "kind": "number", + "nativeSrc": "13043:2:74", + "nodeType": "YulLiteral", + "src": "13043:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "13014:3:74", + "nodeType": "YulIdentifier", + "src": "13014:3:74" + }, + "nativeSrc": "13014:32:74", + "nodeType": "YulFunctionCall", + "src": "13014:32:74" + }, + "nativeSrc": "13011:119:74", + "nodeType": "YulIf", + "src": "13011:119:74" + }, + { + "nativeSrc": "13140:117:74", + "nodeType": "YulBlock", + "src": "13140:117:74", + "statements": [ + { + "nativeSrc": "13155:15:74", + "nodeType": "YulVariableDeclaration", + "src": "13155:15:74", + "value": { + "kind": "number", + "nativeSrc": "13169:1:74", + "nodeType": "YulLiteral", + "src": "13169:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "13159:6:74", + "nodeType": "YulTypedName", + "src": "13159:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13184:63:74", + "nodeType": "YulAssignment", + "src": "13184:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13219:9:74", + "nodeType": "YulIdentifier", + "src": "13219:9:74" + }, + { + "name": "offset", + "nativeSrc": "13230:6:74", + "nodeType": "YulIdentifier", + "src": "13230:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13215:3:74", + "nodeType": "YulIdentifier", + "src": "13215:3:74" + }, + "nativeSrc": "13215:22:74", + "nodeType": "YulFunctionCall", + "src": "13215:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "13239:7:74", + "nodeType": "YulIdentifier", + "src": "13239:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "13194:20:74", + "nodeType": "YulIdentifier", + "src": "13194:20:74" + }, + "nativeSrc": "13194:53:74", + "nodeType": "YulFunctionCall", + "src": "13194:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "13184:6:74", + "nodeType": "YulIdentifier", + "src": "13184:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "13267:118:74", + "nodeType": "YulBlock", + "src": "13267:118:74", + "statements": [ + { + "nativeSrc": "13282:16:74", + "nodeType": "YulVariableDeclaration", + "src": "13282:16:74", + "value": { + "kind": "number", + "nativeSrc": "13296:2:74", + "nodeType": "YulLiteral", + "src": "13296:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "13286:6:74", + "nodeType": "YulTypedName", + "src": "13286:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13312:63:74", + "nodeType": "YulAssignment", + "src": "13312:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13347:9:74", + "nodeType": "YulIdentifier", + "src": "13347:9:74" + }, + { + "name": "offset", + "nativeSrc": "13358:6:74", + "nodeType": "YulIdentifier", + "src": "13358:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13343:3:74", + "nodeType": "YulIdentifier", + "src": "13343:3:74" + }, + "nativeSrc": "13343:22:74", + "nodeType": "YulFunctionCall", + "src": "13343:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "13367:7:74", + "nodeType": "YulIdentifier", + "src": "13367:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "13322:20:74", + "nodeType": "YulIdentifier", + "src": "13322:20:74" + }, + "nativeSrc": "13322:53:74", + "nodeType": "YulFunctionCall", + "src": "13322:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "13312:6:74", + "nodeType": "YulIdentifier", + "src": "13312:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "12918:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12963:9:74", + "nodeType": "YulTypedName", + "src": "12963:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "12974:7:74", + "nodeType": "YulTypedName", + "src": "12974:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "12986:6:74", + "nodeType": "YulTypedName", + "src": "12986:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12994:6:74", + "nodeType": "YulTypedName", + "src": "12994:6:74", + "type": "" + } + ], + "src": "12918:474:74" + }, + { + "body": { + "nativeSrc": "13426:152:74", + "nodeType": "YulBlock", + "src": "13426:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13443:1:74", + "nodeType": "YulLiteral", + "src": "13443:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13446:77:74", + "nodeType": "YulLiteral", + "src": "13446:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13436:6:74", + "nodeType": "YulIdentifier", + "src": "13436:6:74" + }, + "nativeSrc": "13436:88:74", + "nodeType": "YulFunctionCall", + "src": "13436:88:74" + }, + "nativeSrc": "13436:88:74", + "nodeType": "YulExpressionStatement", + "src": "13436:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13540:1:74", + "nodeType": "YulLiteral", + "src": "13540:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "13543:4:74", + "nodeType": "YulLiteral", + "src": "13543:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13533:6:74", + "nodeType": "YulIdentifier", + "src": "13533:6:74" + }, + "nativeSrc": "13533:15:74", + "nodeType": "YulFunctionCall", + "src": "13533:15:74" + }, + "nativeSrc": "13533:15:74", + "nodeType": "YulExpressionStatement", + "src": "13533:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13564:1:74", + "nodeType": "YulLiteral", + "src": "13564:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13567:4:74", + "nodeType": "YulLiteral", + "src": "13567:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13557:6:74", + "nodeType": "YulIdentifier", + "src": "13557:6:74" + }, + "nativeSrc": "13557:15:74", + "nodeType": "YulFunctionCall", + "src": "13557:15:74" + }, + "nativeSrc": "13557:15:74", + "nodeType": "YulExpressionStatement", + "src": "13557:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "13398:180:74", + "nodeType": "YulFunctionDefinition", + "src": "13398:180:74" + }, + { + "body": { + "nativeSrc": "13635:269:74", + "nodeType": "YulBlock", + "src": "13635:269:74", + "statements": [ + { + "nativeSrc": "13645:22:74", + "nodeType": "YulAssignment", + "src": "13645:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "13659:4:74", + "nodeType": "YulIdentifier", + "src": "13659:4:74" + }, + { + "kind": "number", + "nativeSrc": "13665:1:74", + "nodeType": "YulLiteral", + "src": "13665:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "13655:3:74", + "nodeType": "YulIdentifier", + "src": "13655:3:74" + }, + "nativeSrc": "13655:12:74", + "nodeType": "YulFunctionCall", + "src": "13655:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "13645:6:74", + "nodeType": "YulIdentifier", + "src": "13645:6:74" + } + ] + }, + { + "nativeSrc": "13676:38:74", + "nodeType": "YulVariableDeclaration", + "src": "13676:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "13706:4:74", + "nodeType": "YulIdentifier", + "src": "13706:4:74" + }, + { + "kind": "number", + "nativeSrc": "13712:1:74", + "nodeType": "YulLiteral", + "src": "13712:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "13702:3:74", + "nodeType": "YulIdentifier", + "src": "13702:3:74" + }, + "nativeSrc": "13702:12:74", + "nodeType": "YulFunctionCall", + "src": "13702:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "13680:18:74", + "nodeType": "YulTypedName", + "src": "13680:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13753:51:74", + "nodeType": "YulBlock", + "src": "13753:51:74", + "statements": [ + { + "nativeSrc": "13767:27:74", + "nodeType": "YulAssignment", + "src": "13767:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "13781:6:74", + "nodeType": "YulIdentifier", + "src": "13781:6:74" + }, + { + "kind": "number", + "nativeSrc": "13789:4:74", + "nodeType": "YulLiteral", + "src": "13789:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "13777:3:74", + "nodeType": "YulIdentifier", + "src": "13777:3:74" + }, + "nativeSrc": "13777:17:74", + "nodeType": "YulFunctionCall", + "src": "13777:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "13767:6:74", + "nodeType": "YulIdentifier", + "src": "13767:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "13733:18:74", + "nodeType": "YulIdentifier", + "src": "13733:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "13726:6:74", + "nodeType": "YulIdentifier", + "src": "13726:6:74" + }, + "nativeSrc": "13726:26:74", + "nodeType": "YulFunctionCall", + "src": "13726:26:74" + }, + "nativeSrc": "13723:81:74", + "nodeType": "YulIf", + "src": "13723:81:74" + }, + { + "body": { + "nativeSrc": "13856:42:74", + "nodeType": "YulBlock", + "src": "13856:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "13870:16:74", + "nodeType": "YulIdentifier", + "src": "13870:16:74" + }, + "nativeSrc": "13870:18:74", + "nodeType": "YulFunctionCall", + "src": "13870:18:74" + }, + "nativeSrc": "13870:18:74", + "nodeType": "YulExpressionStatement", + "src": "13870:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "13820:18:74", + "nodeType": "YulIdentifier", + "src": "13820:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "13843:6:74", + "nodeType": "YulIdentifier", + "src": "13843:6:74" + }, + { + "kind": "number", + "nativeSrc": "13851:2:74", + "nodeType": "YulLiteral", + "src": "13851:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "13840:2:74", + "nodeType": "YulIdentifier", + "src": "13840:2:74" + }, + "nativeSrc": "13840:14:74", + "nodeType": "YulFunctionCall", + "src": "13840:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "13817:2:74", + "nodeType": "YulIdentifier", + "src": "13817:2:74" + }, + "nativeSrc": "13817:38:74", + "nodeType": "YulFunctionCall", + "src": "13817:38:74" + }, + "nativeSrc": "13814:84:74", + "nodeType": "YulIf", + "src": "13814:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "13584:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "13619:4:74", + "nodeType": "YulTypedName", + "src": "13619:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "13628:6:74", + "nodeType": "YulTypedName", + "src": "13628:6:74", + "type": "" + } + ], + "src": "13584:320:74" + }, + { + "body": { + "nativeSrc": "14016:114:74", + "nodeType": "YulBlock", + "src": "14016:114:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14038:6:74", + "nodeType": "YulIdentifier", + "src": "14038:6:74" + }, + { + "kind": "number", + "nativeSrc": "14046:1:74", + "nodeType": "YulLiteral", + "src": "14046:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14034:3:74", + "nodeType": "YulIdentifier", + "src": "14034:3:74" + }, + "nativeSrc": "14034:14:74", + "nodeType": "YulFunctionCall", + "src": "14034:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", + "kind": "string", + "nativeSrc": "14050:34:74", + "nodeType": "YulLiteral", + "src": "14050:34:74", + "type": "", + "value": "ERC721: approval to current owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14027:6:74", + "nodeType": "YulIdentifier", + "src": "14027:6:74" + }, + "nativeSrc": "14027:58:74", + "nodeType": "YulFunctionCall", + "src": "14027:58:74" + }, + "nativeSrc": "14027:58:74", + "nodeType": "YulExpressionStatement", + "src": "14027:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14106:6:74", + "nodeType": "YulIdentifier", + "src": "14106:6:74" + }, + { + "kind": "number", + "nativeSrc": "14114:2:74", + "nodeType": "YulLiteral", + "src": "14114:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14102:3:74", + "nodeType": "YulIdentifier", + "src": "14102:3:74" + }, + "nativeSrc": "14102:15:74", + "nodeType": "YulFunctionCall", + "src": "14102:15:74" + }, + { + "hexValue": "72", + "kind": "string", + "nativeSrc": "14119:3:74", + "nodeType": "YulLiteral", + "src": "14119:3:74", + "type": "", + "value": "r" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14095:6:74", + "nodeType": "YulIdentifier", + "src": "14095:6:74" + }, + "nativeSrc": "14095:28:74", + "nodeType": "YulFunctionCall", + "src": "14095:28:74" + }, + "nativeSrc": "14095:28:74", + "nodeType": "YulExpressionStatement", + "src": "14095:28:74" + } + ] + }, + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "13910:220:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "14008:6:74", + "nodeType": "YulTypedName", + "src": "14008:6:74", + "type": "" + } + ], + "src": "13910:220:74" + }, + { + "body": { + "nativeSrc": "14282:220:74", + "nodeType": "YulBlock", + "src": "14282:220:74", + "statements": [ + { + "nativeSrc": "14292:74:74", + "nodeType": "YulAssignment", + "src": "14292:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14358:3:74", + "nodeType": "YulIdentifier", + "src": "14358:3:74" + }, + { + "kind": "number", + "nativeSrc": "14363:2:74", + "nodeType": "YulLiteral", + "src": "14363:2:74", + "type": "", + "value": "33" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "14299:58:74", + "nodeType": "YulIdentifier", + "src": "14299:58:74" + }, + "nativeSrc": "14299:67:74", + "nodeType": "YulFunctionCall", + "src": "14299:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14292:3:74", + "nodeType": "YulIdentifier", + "src": "14292:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14464:3:74", + "nodeType": "YulIdentifier", + "src": "14464:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "14375:88:74", + "nodeType": "YulIdentifier", + "src": "14375:88:74" + }, + "nativeSrc": "14375:93:74", + "nodeType": "YulFunctionCall", + "src": "14375:93:74" + }, + "nativeSrc": "14375:93:74", + "nodeType": "YulExpressionStatement", + "src": "14375:93:74" + }, + { + "nativeSrc": "14477:19:74", + "nodeType": "YulAssignment", + "src": "14477:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14488:3:74", + "nodeType": "YulIdentifier", + "src": "14488:3:74" + }, + { + "kind": "number", + "nativeSrc": "14493:2:74", + "nodeType": "YulLiteral", + "src": "14493:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14484:3:74", + "nodeType": "YulIdentifier", + "src": "14484:3:74" + }, + "nativeSrc": "14484:12:74", + "nodeType": "YulFunctionCall", + "src": "14484:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "14477:3:74", + "nodeType": "YulIdentifier", + "src": "14477:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14136:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "14270:3:74", + "nodeType": "YulTypedName", + "src": "14270:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "14278:3:74", + "nodeType": "YulTypedName", + "src": "14278:3:74", + "type": "" + } + ], + "src": "14136:366:74" + }, + { + "body": { + "nativeSrc": "14679:248:74", + "nodeType": "YulBlock", + "src": "14679:248:74", + "statements": [ + { + "nativeSrc": "14689:26:74", + "nodeType": "YulAssignment", + "src": "14689:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14701:9:74", + "nodeType": "YulIdentifier", + "src": "14701:9:74" + }, + { + "kind": "number", + "nativeSrc": "14712:2:74", + "nodeType": "YulLiteral", + "src": "14712:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14697:3:74", + "nodeType": "YulIdentifier", + "src": "14697:3:74" + }, + "nativeSrc": "14697:18:74", + "nodeType": "YulFunctionCall", + "src": "14697:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14689:4:74", + "nodeType": "YulIdentifier", + "src": "14689:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14736:9:74", + "nodeType": "YulIdentifier", + "src": "14736:9:74" + }, + { + "kind": "number", + "nativeSrc": "14747:1:74", + "nodeType": "YulLiteral", + "src": "14747:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14732:3:74", + "nodeType": "YulIdentifier", + "src": "14732:3:74" + }, + "nativeSrc": "14732:17:74", + "nodeType": "YulFunctionCall", + "src": "14732:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14755:4:74", + "nodeType": "YulIdentifier", + "src": "14755:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14761:9:74", + "nodeType": "YulIdentifier", + "src": "14761:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14751:3:74", + "nodeType": "YulIdentifier", + "src": "14751:3:74" + }, + "nativeSrc": "14751:20:74", + "nodeType": "YulFunctionCall", + "src": "14751:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14725:6:74", + "nodeType": "YulIdentifier", + "src": "14725:6:74" + }, + "nativeSrc": "14725:47:74", + "nodeType": "YulFunctionCall", + "src": "14725:47:74" + }, + "nativeSrc": "14725:47:74", + "nodeType": "YulExpressionStatement", + "src": "14725:47:74" + }, + { + "nativeSrc": "14781:139:74", + "nodeType": "YulAssignment", + "src": "14781:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14915:4:74", + "nodeType": "YulIdentifier", + "src": "14915:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14789:124:74", + "nodeType": "YulIdentifier", + "src": "14789:124:74" + }, + "nativeSrc": "14789:131:74", + "nodeType": "YulFunctionCall", + "src": "14789:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14781:4:74", + "nodeType": "YulIdentifier", + "src": "14781:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "14508:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14659:9:74", + "nodeType": "YulTypedName", + "src": "14659:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14674:4:74", + "nodeType": "YulTypedName", + "src": "14674:4:74", + "type": "" + } + ], + "src": "14508:419:74" + }, + { + "body": { + "nativeSrc": "15039:142:74", + "nodeType": "YulBlock", + "src": "15039:142:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15061:6:74", + "nodeType": "YulIdentifier", + "src": "15061:6:74" + }, + { + "kind": "number", + "nativeSrc": "15069:1:74", + "nodeType": "YulLiteral", + "src": "15069:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15057:3:74", + "nodeType": "YulIdentifier", + "src": "15057:3:74" + }, + "nativeSrc": "15057:14:74", + "nodeType": "YulFunctionCall", + "src": "15057:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f", + "kind": "string", + "nativeSrc": "15073:34:74", + "nodeType": "YulLiteral", + "src": "15073:34:74", + "type": "", + "value": "ERC721: approve caller is not to" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15050:6:74", + "nodeType": "YulIdentifier", + "src": "15050:6:74" + }, + "nativeSrc": "15050:58:74", + "nodeType": "YulFunctionCall", + "src": "15050:58:74" + }, + "nativeSrc": "15050:58:74", + "nodeType": "YulExpressionStatement", + "src": "15050:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15129:6:74", + "nodeType": "YulIdentifier", + "src": "15129:6:74" + }, + { + "kind": "number", + "nativeSrc": "15137:2:74", + "nodeType": "YulLiteral", + "src": "15137:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15125:3:74", + "nodeType": "YulIdentifier", + "src": "15125:3:74" + }, + "nativeSrc": "15125:15:74", + "nodeType": "YulFunctionCall", + "src": "15125:15:74" + }, + { + "hexValue": "6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "kind": "string", + "nativeSrc": "15142:31:74", + "nodeType": "YulLiteral", + "src": "15142:31:74", + "type": "", + "value": "ken owner or approved for all" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15118:6:74", + "nodeType": "YulIdentifier", + "src": "15118:6:74" + }, + "nativeSrc": "15118:56:74", + "nodeType": "YulFunctionCall", + "src": "15118:56:74" + }, + "nativeSrc": "15118:56:74", + "nodeType": "YulExpressionStatement", + "src": "15118:56:74" + } + ] + }, + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "14933:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "15031:6:74", + "nodeType": "YulTypedName", + "src": "15031:6:74", + "type": "" + } + ], + "src": "14933:248:74" + }, + { + "body": { + "nativeSrc": "15333:220:74", + "nodeType": "YulBlock", + "src": "15333:220:74", + "statements": [ + { + "nativeSrc": "15343:74:74", + "nodeType": "YulAssignment", + "src": "15343:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15409:3:74", + "nodeType": "YulIdentifier", + "src": "15409:3:74" + }, + { + "kind": "number", + "nativeSrc": "15414:2:74", + "nodeType": "YulLiteral", + "src": "15414:2:74", + "type": "", + "value": "61" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15350:58:74", + "nodeType": "YulIdentifier", + "src": "15350:58:74" + }, + "nativeSrc": "15350:67:74", + "nodeType": "YulFunctionCall", + "src": "15350:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15343:3:74", + "nodeType": "YulIdentifier", + "src": "15343:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15515:3:74", + "nodeType": "YulIdentifier", + "src": "15515:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "15426:88:74", + "nodeType": "YulIdentifier", + "src": "15426:88:74" + }, + "nativeSrc": "15426:93:74", + "nodeType": "YulFunctionCall", + "src": "15426:93:74" + }, + "nativeSrc": "15426:93:74", + "nodeType": "YulExpressionStatement", + "src": "15426:93:74" + }, + { + "nativeSrc": "15528:19:74", + "nodeType": "YulAssignment", + "src": "15528:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15539:3:74", + "nodeType": "YulIdentifier", + "src": "15539:3:74" + }, + { + "kind": "number", + "nativeSrc": "15544:2:74", + "nodeType": "YulLiteral", + "src": "15544:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15535:3:74", + "nodeType": "YulIdentifier", + "src": "15535:3:74" + }, + "nativeSrc": "15535:12:74", + "nodeType": "YulFunctionCall", + "src": "15535:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15528:3:74", + "nodeType": "YulIdentifier", + "src": "15528:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15187:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "15321:3:74", + "nodeType": "YulTypedName", + "src": "15321:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15329:3:74", + "nodeType": "YulTypedName", + "src": "15329:3:74", + "type": "" + } + ], + "src": "15187:366:74" + }, + { + "body": { + "nativeSrc": "15730:248:74", + "nodeType": "YulBlock", + "src": "15730:248:74", + "statements": [ + { + "nativeSrc": "15740:26:74", + "nodeType": "YulAssignment", + "src": "15740:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15752:9:74", + "nodeType": "YulIdentifier", + "src": "15752:9:74" + }, + { + "kind": "number", + "nativeSrc": "15763:2:74", + "nodeType": "YulLiteral", + "src": "15763:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15748:3:74", + "nodeType": "YulIdentifier", + "src": "15748:3:74" + }, + "nativeSrc": "15748:18:74", + "nodeType": "YulFunctionCall", + "src": "15748:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15740:4:74", + "nodeType": "YulIdentifier", + "src": "15740:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15787:9:74", + "nodeType": "YulIdentifier", + "src": "15787:9:74" + }, + { + "kind": "number", + "nativeSrc": "15798:1:74", + "nodeType": "YulLiteral", + "src": "15798:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15783:3:74", + "nodeType": "YulIdentifier", + "src": "15783:3:74" + }, + "nativeSrc": "15783:17:74", + "nodeType": "YulFunctionCall", + "src": "15783:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15806:4:74", + "nodeType": "YulIdentifier", + "src": "15806:4:74" + }, + { + "name": "headStart", + "nativeSrc": "15812:9:74", + "nodeType": "YulIdentifier", + "src": "15812:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15802:3:74", + "nodeType": "YulIdentifier", + "src": "15802:3:74" + }, + "nativeSrc": "15802:20:74", + "nodeType": "YulFunctionCall", + "src": "15802:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15776:6:74", + "nodeType": "YulIdentifier", + "src": "15776:6:74" + }, + "nativeSrc": "15776:47:74", + "nodeType": "YulFunctionCall", + "src": "15776:47:74" + }, + "nativeSrc": "15776:47:74", + "nodeType": "YulExpressionStatement", + "src": "15776:47:74" + }, + { + "nativeSrc": "15832:139:74", + "nodeType": "YulAssignment", + "src": "15832:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15966:4:74", + "nodeType": "YulIdentifier", + "src": "15966:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15840:124:74", + "nodeType": "YulIdentifier", + "src": "15840:124:74" + }, + "nativeSrc": "15840:131:74", + "nodeType": "YulFunctionCall", + "src": "15840:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15832:4:74", + "nodeType": "YulIdentifier", + "src": "15832:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "15559:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15710:9:74", + "nodeType": "YulTypedName", + "src": "15710:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15725:4:74", + "nodeType": "YulTypedName", + "src": "15725:4:74", + "type": "" + } + ], + "src": "15559:419:74" + }, + { + "body": { + "nativeSrc": "16090:126:74", + "nodeType": "YulBlock", + "src": "16090:126:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "16112:6:74", + "nodeType": "YulIdentifier", + "src": "16112:6:74" + }, + { + "kind": "number", + "nativeSrc": "16120:1:74", + "nodeType": "YulLiteral", + "src": "16120:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16108:3:74", + "nodeType": "YulIdentifier", + "src": "16108:3:74" + }, + "nativeSrc": "16108:14:74", + "nodeType": "YulFunctionCall", + "src": "16108:14:74" + }, + { + "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e65", + "kind": "string", + "nativeSrc": "16124:34:74", + "nodeType": "YulLiteral", + "src": "16124:34:74", + "type": "", + "value": "ERC721: caller is not token owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16101:6:74", + "nodeType": "YulIdentifier", + "src": "16101:6:74" + }, + "nativeSrc": "16101:58:74", + "nodeType": "YulFunctionCall", + "src": "16101:58:74" + }, + "nativeSrc": "16101:58:74", + "nodeType": "YulExpressionStatement", + "src": "16101:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "16180:6:74", + "nodeType": "YulIdentifier", + "src": "16180:6:74" + }, + { + "kind": "number", + "nativeSrc": "16188:2:74", + "nodeType": "YulLiteral", + "src": "16188:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16176:3:74", + "nodeType": "YulIdentifier", + "src": "16176:3:74" + }, + "nativeSrc": "16176:15:74", + "nodeType": "YulFunctionCall", + "src": "16176:15:74" + }, + { + "hexValue": "72206f7220617070726f766564", + "kind": "string", + "nativeSrc": "16193:15:74", + "nodeType": "YulLiteral", + "src": "16193:15:74", + "type": "", + "value": "r or approved" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16169:6:74", + "nodeType": "YulIdentifier", + "src": "16169:6:74" + }, + "nativeSrc": "16169:40:74", + "nodeType": "YulFunctionCall", + "src": "16169:40:74" + }, + "nativeSrc": "16169:40:74", + "nodeType": "YulExpressionStatement", + "src": "16169:40:74" + } + ] + }, + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "15984:232:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "16082:6:74", + "nodeType": "YulTypedName", + "src": "16082:6:74", + "type": "" + } + ], + "src": "15984:232:74" + }, + { + "body": { + "nativeSrc": "16368:220:74", + "nodeType": "YulBlock", + "src": "16368:220:74", + "statements": [ + { + "nativeSrc": "16378:74:74", + "nodeType": "YulAssignment", + "src": "16378:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16444:3:74", + "nodeType": "YulIdentifier", + "src": "16444:3:74" + }, + { + "kind": "number", + "nativeSrc": "16449:2:74", + "nodeType": "YulLiteral", + "src": "16449:2:74", + "type": "", + "value": "45" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "16385:58:74", + "nodeType": "YulIdentifier", + "src": "16385:58:74" + }, + "nativeSrc": "16385:67:74", + "nodeType": "YulFunctionCall", + "src": "16385:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "16378:3:74", + "nodeType": "YulIdentifier", + "src": "16378:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16550:3:74", + "nodeType": "YulIdentifier", + "src": "16550:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "16461:88:74", + "nodeType": "YulIdentifier", + "src": "16461:88:74" + }, + "nativeSrc": "16461:93:74", + "nodeType": "YulFunctionCall", + "src": "16461:93:74" + }, + "nativeSrc": "16461:93:74", + "nodeType": "YulExpressionStatement", + "src": "16461:93:74" + }, + { + "nativeSrc": "16563:19:74", + "nodeType": "YulAssignment", + "src": "16563:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16574:3:74", + "nodeType": "YulIdentifier", + "src": "16574:3:74" + }, + { + "kind": "number", + "nativeSrc": "16579:2:74", + "nodeType": "YulLiteral", + "src": "16579:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16570:3:74", + "nodeType": "YulIdentifier", + "src": "16570:3:74" + }, + "nativeSrc": "16570:12:74", + "nodeType": "YulFunctionCall", + "src": "16570:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "16563:3:74", + "nodeType": "YulIdentifier", + "src": "16563:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "16222:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "16356:3:74", + "nodeType": "YulTypedName", + "src": "16356:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "16364:3:74", + "nodeType": "YulTypedName", + "src": "16364:3:74", + "type": "" + } + ], + "src": "16222:366:74" + }, + { + "body": { + "nativeSrc": "16765:248:74", + "nodeType": "YulBlock", + "src": "16765:248:74", + "statements": [ + { + "nativeSrc": "16775:26:74", + "nodeType": "YulAssignment", + "src": "16775:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16787:9:74", + "nodeType": "YulIdentifier", + "src": "16787:9:74" + }, + { + "kind": "number", + "nativeSrc": "16798:2:74", + "nodeType": "YulLiteral", + "src": "16798:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16783:3:74", + "nodeType": "YulIdentifier", + "src": "16783:3:74" + }, + "nativeSrc": "16783:18:74", + "nodeType": "YulFunctionCall", + "src": "16783:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16775:4:74", + "nodeType": "YulIdentifier", + "src": "16775:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16822:9:74", + "nodeType": "YulIdentifier", + "src": "16822:9:74" + }, + { + "kind": "number", + "nativeSrc": "16833:1:74", + "nodeType": "YulLiteral", + "src": "16833:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16818:3:74", + "nodeType": "YulIdentifier", + "src": "16818:3:74" + }, + "nativeSrc": "16818:17:74", + "nodeType": "YulFunctionCall", + "src": "16818:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16841:4:74", + "nodeType": "YulIdentifier", + "src": "16841:4:74" + }, + { + "name": "headStart", + "nativeSrc": "16847:9:74", + "nodeType": "YulIdentifier", + "src": "16847:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16837:3:74", + "nodeType": "YulIdentifier", + "src": "16837:3:74" + }, + "nativeSrc": "16837:20:74", + "nodeType": "YulFunctionCall", + "src": "16837:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16811:6:74", + "nodeType": "YulIdentifier", + "src": "16811:6:74" + }, + "nativeSrc": "16811:47:74", + "nodeType": "YulFunctionCall", + "src": "16811:47:74" + }, + "nativeSrc": "16811:47:74", + "nodeType": "YulExpressionStatement", + "src": "16811:47:74" + }, + { + "nativeSrc": "16867:139:74", + "nodeType": "YulAssignment", + "src": "16867:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "17001:4:74", + "nodeType": "YulIdentifier", + "src": "17001:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "16875:124:74", + "nodeType": "YulIdentifier", + "src": "16875:124:74" + }, + "nativeSrc": "16875:131:74", + "nodeType": "YulFunctionCall", + "src": "16875:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16867:4:74", + "nodeType": "YulIdentifier", + "src": "16867:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "16594:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16745:9:74", + "nodeType": "YulTypedName", + "src": "16745:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "16760:4:74", + "nodeType": "YulTypedName", + "src": "16760:4:74", + "type": "" + } + ], + "src": "16594:419:74" + }, + { + "body": { + "nativeSrc": "17082:80:74", + "nodeType": "YulBlock", + "src": "17082:80:74", + "statements": [ + { + "nativeSrc": "17092:22:74", + "nodeType": "YulAssignment", + "src": "17092:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "17107:6:74", + "nodeType": "YulIdentifier", + "src": "17107:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "17101:5:74", + "nodeType": "YulIdentifier", + "src": "17101:5:74" + }, + "nativeSrc": "17101:13:74", + "nodeType": "YulFunctionCall", + "src": "17101:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "17092:5:74", + "nodeType": "YulIdentifier", + "src": "17092:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17150:5:74", + "nodeType": "YulIdentifier", + "src": "17150:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "17123:26:74", + "nodeType": "YulIdentifier", + "src": "17123:26:74" + }, + "nativeSrc": "17123:33:74", + "nodeType": "YulFunctionCall", + "src": "17123:33:74" + }, + "nativeSrc": "17123:33:74", + "nodeType": "YulExpressionStatement", + "src": "17123:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "17019:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "17060:6:74", + "nodeType": "YulTypedName", + "src": "17060:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17068:3:74", + "nodeType": "YulTypedName", + "src": "17068:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "17076:5:74", + "nodeType": "YulTypedName", + "src": "17076:5:74", + "type": "" + } + ], + "src": "17019:143:74" + }, + { + "body": { + "nativeSrc": "17245:274:74", + "nodeType": "YulBlock", + "src": "17245:274:74", + "statements": [ + { + "body": { + "nativeSrc": "17291:83:74", + "nodeType": "YulBlock", + "src": "17291:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "17293:77:74", + "nodeType": "YulIdentifier", + "src": "17293:77:74" + }, + "nativeSrc": "17293:79:74", + "nodeType": "YulFunctionCall", + "src": "17293:79:74" + }, + "nativeSrc": "17293:79:74", + "nodeType": "YulExpressionStatement", + "src": "17293:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "17266:7:74", + "nodeType": "YulIdentifier", + "src": "17266:7:74" + }, + { + "name": "headStart", + "nativeSrc": "17275:9:74", + "nodeType": "YulIdentifier", + "src": "17275:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17262:3:74", + "nodeType": "YulIdentifier", + "src": "17262:3:74" + }, + "nativeSrc": "17262:23:74", + "nodeType": "YulFunctionCall", + "src": "17262:23:74" + }, + { + "kind": "number", + "nativeSrc": "17287:2:74", + "nodeType": "YulLiteral", + "src": "17287:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "17258:3:74", + "nodeType": "YulIdentifier", + "src": "17258:3:74" + }, + "nativeSrc": "17258:32:74", + "nodeType": "YulFunctionCall", + "src": "17258:32:74" + }, + "nativeSrc": "17255:119:74", + "nodeType": "YulIf", + "src": "17255:119:74" + }, + { + "nativeSrc": "17384:128:74", + "nodeType": "YulBlock", + "src": "17384:128:74", + "statements": [ + { + "nativeSrc": "17399:15:74", + "nodeType": "YulVariableDeclaration", + "src": "17399:15:74", + "value": { + "kind": "number", + "nativeSrc": "17413:1:74", + "nodeType": "YulLiteral", + "src": "17413:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17403:6:74", + "nodeType": "YulTypedName", + "src": "17403:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17428:74:74", + "nodeType": "YulAssignment", + "src": "17428:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17474:9:74", + "nodeType": "YulIdentifier", + "src": "17474:9:74" + }, + { + "name": "offset", + "nativeSrc": "17485:6:74", + "nodeType": "YulIdentifier", + "src": "17485:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17470:3:74", + "nodeType": "YulIdentifier", + "src": "17470:3:74" + }, + "nativeSrc": "17470:22:74", + "nodeType": "YulFunctionCall", + "src": "17470:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17494:7:74", + "nodeType": "YulIdentifier", + "src": "17494:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "17438:31:74", + "nodeType": "YulIdentifier", + "src": "17438:31:74" + }, + "nativeSrc": "17438:64:74", + "nodeType": "YulFunctionCall", + "src": "17438:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "17428:6:74", + "nodeType": "YulIdentifier", + "src": "17428:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "17168:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17215:9:74", + "nodeType": "YulTypedName", + "src": "17215:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "17226:7:74", + "nodeType": "YulTypedName", + "src": "17226:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "17238:6:74", + "nodeType": "YulTypedName", + "src": "17238:6:74", + "type": "" + } + ], + "src": "17168:351:74" + }, + { + "body": { + "nativeSrc": "17679:288:74", + "nodeType": "YulBlock", + "src": "17679:288:74", + "statements": [ + { + "nativeSrc": "17689:26:74", + "nodeType": "YulAssignment", + "src": "17689:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17701:9:74", + "nodeType": "YulIdentifier", + "src": "17701:9:74" + }, + { + "kind": "number", + "nativeSrc": "17712:2:74", + "nodeType": "YulLiteral", + "src": "17712:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17697:3:74", + "nodeType": "YulIdentifier", + "src": "17697:3:74" + }, + "nativeSrc": "17697:18:74", + "nodeType": "YulFunctionCall", + "src": "17697:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17689:4:74", + "nodeType": "YulIdentifier", + "src": "17689:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17769:6:74", + "nodeType": "YulIdentifier", + "src": "17769:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17782:9:74", + "nodeType": "YulIdentifier", + "src": "17782:9:74" + }, + { + "kind": "number", + "nativeSrc": "17793:1:74", + "nodeType": "YulLiteral", + "src": "17793:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17778:3:74", + "nodeType": "YulIdentifier", + "src": "17778:3:74" + }, + "nativeSrc": "17778:17:74", + "nodeType": "YulFunctionCall", + "src": "17778:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "17725:43:74", + "nodeType": "YulIdentifier", + "src": "17725:43:74" + }, + "nativeSrc": "17725:71:74", + "nodeType": "YulFunctionCall", + "src": "17725:71:74" + }, + "nativeSrc": "17725:71:74", + "nodeType": "YulExpressionStatement", + "src": "17725:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "17850:6:74", + "nodeType": "YulIdentifier", + "src": "17850:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17863:9:74", + "nodeType": "YulIdentifier", + "src": "17863:9:74" + }, + { + "kind": "number", + "nativeSrc": "17874:2:74", + "nodeType": "YulLiteral", + "src": "17874:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17859:3:74", + "nodeType": "YulIdentifier", + "src": "17859:3:74" + }, + "nativeSrc": "17859:18:74", + "nodeType": "YulFunctionCall", + "src": "17859:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "17806:43:74", + "nodeType": "YulIdentifier", + "src": "17806:43:74" + }, + "nativeSrc": "17806:72:74", + "nodeType": "YulFunctionCall", + "src": "17806:72:74" + }, + "nativeSrc": "17806:72:74", + "nodeType": "YulExpressionStatement", + "src": "17806:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "17932:6:74", + "nodeType": "YulIdentifier", + "src": "17932:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17945:9:74", + "nodeType": "YulIdentifier", + "src": "17945:9:74" + }, + { + "kind": "number", + "nativeSrc": "17956:2:74", + "nodeType": "YulLiteral", + "src": "17956:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17941:3:74", + "nodeType": "YulIdentifier", + "src": "17941:3:74" + }, + "nativeSrc": "17941:18:74", + "nodeType": "YulFunctionCall", + "src": "17941:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "17888:43:74", + "nodeType": "YulIdentifier", + "src": "17888:43:74" + }, + "nativeSrc": "17888:72:74", + "nodeType": "YulFunctionCall", + "src": "17888:72:74" + }, + "nativeSrc": "17888:72:74", + "nodeType": "YulExpressionStatement", + "src": "17888:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed", + "nativeSrc": "17525:442:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17635:9:74", + "nodeType": "YulTypedName", + "src": "17635:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "17647:6:74", + "nodeType": "YulTypedName", + "src": "17647:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "17655:6:74", + "nodeType": "YulTypedName", + "src": "17655:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "17663:6:74", + "nodeType": "YulTypedName", + "src": "17663:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17674:4:74", + "nodeType": "YulTypedName", + "src": "17674:4:74", + "type": "" + } + ], + "src": "17525:442:74" + }, + { + "body": { + "nativeSrc": "18016:79:74", + "nodeType": "YulBlock", + "src": "18016:79:74", + "statements": [ + { + "body": { + "nativeSrc": "18073:16:74", + "nodeType": "YulBlock", + "src": "18073:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "18082:1:74", + "nodeType": "YulLiteral", + "src": "18082:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "18085:1:74", + "nodeType": "YulLiteral", + "src": "18085:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "18075:6:74", + "nodeType": "YulIdentifier", + "src": "18075:6:74" + }, + "nativeSrc": "18075:12:74", + "nodeType": "YulFunctionCall", + "src": "18075:12:74" + }, + "nativeSrc": "18075:12:74", + "nodeType": "YulExpressionStatement", + "src": "18075:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18039:5:74", + "nodeType": "YulIdentifier", + "src": "18039:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18064:5:74", + "nodeType": "YulIdentifier", + "src": "18064:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "18046:17:74", + "nodeType": "YulIdentifier", + "src": "18046:17:74" + }, + "nativeSrc": "18046:24:74", + "nodeType": "YulFunctionCall", + "src": "18046:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "18036:2:74", + "nodeType": "YulIdentifier", + "src": "18036:2:74" + }, + "nativeSrc": "18036:35:74", + "nodeType": "YulFunctionCall", + "src": "18036:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "18029:6:74", + "nodeType": "YulIdentifier", + "src": "18029:6:74" + }, + "nativeSrc": "18029:43:74", + "nodeType": "YulFunctionCall", + "src": "18029:43:74" + }, + "nativeSrc": "18026:63:74", + "nodeType": "YulIf", + "src": "18026:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "17973:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "18009:5:74", + "nodeType": "YulTypedName", + "src": "18009:5:74", + "type": "" + } + ], + "src": "17973:122:74" + }, + { + "body": { + "nativeSrc": "18164:80:74", + "nodeType": "YulBlock", + "src": "18164:80:74", + "statements": [ + { + "nativeSrc": "18174:22:74", + "nodeType": "YulAssignment", + "src": "18174:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18189:6:74", + "nodeType": "YulIdentifier", + "src": "18189:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "18183:5:74", + "nodeType": "YulIdentifier", + "src": "18183:5:74" + }, + "nativeSrc": "18183:13:74", + "nodeType": "YulFunctionCall", + "src": "18183:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "18174:5:74", + "nodeType": "YulIdentifier", + "src": "18174:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "18232:5:74", + "nodeType": "YulIdentifier", + "src": "18232:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "18205:26:74", + "nodeType": "YulIdentifier", + "src": "18205:26:74" + }, + "nativeSrc": "18205:33:74", + "nodeType": "YulFunctionCall", + "src": "18205:33:74" + }, + "nativeSrc": "18205:33:74", + "nodeType": "YulExpressionStatement", + "src": "18205:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "18101:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18142:6:74", + "nodeType": "YulTypedName", + "src": "18142:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18150:3:74", + "nodeType": "YulTypedName", + "src": "18150:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "18158:5:74", + "nodeType": "YulTypedName", + "src": "18158:5:74", + "type": "" + } + ], + "src": "18101:143:74" + }, + { + "body": { + "nativeSrc": "18327:274:74", + "nodeType": "YulBlock", + "src": "18327:274:74", + "statements": [ + { + "body": { + "nativeSrc": "18373:83:74", + "nodeType": "YulBlock", + "src": "18373:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "18375:77:74", + "nodeType": "YulIdentifier", + "src": "18375:77:74" + }, + "nativeSrc": "18375:79:74", + "nodeType": "YulFunctionCall", + "src": "18375:79:74" + }, + "nativeSrc": "18375:79:74", + "nodeType": "YulExpressionStatement", + "src": "18375:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "18348:7:74", + "nodeType": "YulIdentifier", + "src": "18348:7:74" + }, + { + "name": "headStart", + "nativeSrc": "18357:9:74", + "nodeType": "YulIdentifier", + "src": "18357:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18344:3:74", + "nodeType": "YulIdentifier", + "src": "18344:3:74" + }, + "nativeSrc": "18344:23:74", + "nodeType": "YulFunctionCall", + "src": "18344:23:74" + }, + { + "kind": "number", + "nativeSrc": "18369:2:74", + "nodeType": "YulLiteral", + "src": "18369:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "18340:3:74", + "nodeType": "YulIdentifier", + "src": "18340:3:74" + }, + "nativeSrc": "18340:32:74", + "nodeType": "YulFunctionCall", + "src": "18340:32:74" + }, + "nativeSrc": "18337:119:74", + "nodeType": "YulIf", + "src": "18337:119:74" + }, + { + "nativeSrc": "18466:128:74", + "nodeType": "YulBlock", + "src": "18466:128:74", + "statements": [ + { + "nativeSrc": "18481:15:74", + "nodeType": "YulVariableDeclaration", + "src": "18481:15:74", + "value": { + "kind": "number", + "nativeSrc": "18495:1:74", + "nodeType": "YulLiteral", + "src": "18495:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18485:6:74", + "nodeType": "YulTypedName", + "src": "18485:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "18510:74:74", + "nodeType": "YulAssignment", + "src": "18510:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18556:9:74", + "nodeType": "YulIdentifier", + "src": "18556:9:74" + }, + { + "name": "offset", + "nativeSrc": "18567:6:74", + "nodeType": "YulIdentifier", + "src": "18567:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18552:3:74", + "nodeType": "YulIdentifier", + "src": "18552:3:74" + }, + "nativeSrc": "18552:22:74", + "nodeType": "YulFunctionCall", + "src": "18552:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "18576:7:74", + "nodeType": "YulIdentifier", + "src": "18576:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "18520:31:74", + "nodeType": "YulIdentifier", + "src": "18520:31:74" + }, + "nativeSrc": "18520:64:74", + "nodeType": "YulFunctionCall", + "src": "18520:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "18510:6:74", + "nodeType": "YulIdentifier", + "src": "18510:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "18250:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18297:9:74", + "nodeType": "YulTypedName", + "src": "18297:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "18308:7:74", + "nodeType": "YulTypedName", + "src": "18308:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "18320:6:74", + "nodeType": "YulTypedName", + "src": "18320:6:74", + "type": "" + } + ], + "src": "18250:351:74" + }, + { + "body": { + "nativeSrc": "18733:206:74", + "nodeType": "YulBlock", + "src": "18733:206:74", + "statements": [ + { + "nativeSrc": "18743:26:74", + "nodeType": "YulAssignment", + "src": "18743:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18755:9:74", + "nodeType": "YulIdentifier", + "src": "18755:9:74" + }, + { + "kind": "number", + "nativeSrc": "18766:2:74", + "nodeType": "YulLiteral", + "src": "18766:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18751:3:74", + "nodeType": "YulIdentifier", + "src": "18751:3:74" + }, + "nativeSrc": "18751:18:74", + "nodeType": "YulFunctionCall", + "src": "18751:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "18743:4:74", + "nodeType": "YulIdentifier", + "src": "18743:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "18823:6:74", + "nodeType": "YulIdentifier", + "src": "18823:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18836:9:74", + "nodeType": "YulIdentifier", + "src": "18836:9:74" + }, + { + "kind": "number", + "nativeSrc": "18847:1:74", + "nodeType": "YulLiteral", + "src": "18847:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18832:3:74", + "nodeType": "YulIdentifier", + "src": "18832:3:74" + }, + "nativeSrc": "18832:17:74", + "nodeType": "YulFunctionCall", + "src": "18832:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "18779:43:74", + "nodeType": "YulIdentifier", + "src": "18779:43:74" + }, + "nativeSrc": "18779:71:74", + "nodeType": "YulFunctionCall", + "src": "18779:71:74" + }, + "nativeSrc": "18779:71:74", + "nodeType": "YulExpressionStatement", + "src": "18779:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "18904:6:74", + "nodeType": "YulIdentifier", + "src": "18904:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18917:9:74", + "nodeType": "YulIdentifier", + "src": "18917:9:74" + }, + { + "kind": "number", + "nativeSrc": "18928:2:74", + "nodeType": "YulLiteral", + "src": "18928:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18913:3:74", + "nodeType": "YulIdentifier", + "src": "18913:3:74" + }, + "nativeSrc": "18913:18:74", + "nodeType": "YulFunctionCall", + "src": "18913:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "18860:43:74", + "nodeType": "YulIdentifier", + "src": "18860:43:74" + }, + "nativeSrc": "18860:72:74", + "nodeType": "YulFunctionCall", + "src": "18860:72:74" + }, + "nativeSrc": "18860:72:74", + "nodeType": "YulExpressionStatement", + "src": "18860:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed", + "nativeSrc": "18607:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18697:9:74", + "nodeType": "YulTypedName", + "src": "18697:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "18709:6:74", + "nodeType": "YulTypedName", + "src": "18709:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "18717:6:74", + "nodeType": "YulTypedName", + "src": "18717:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "18728:4:74", + "nodeType": "YulTypedName", + "src": "18728:4:74", + "type": "" + } + ], + "src": "18607:332:74" + }, + { + "body": { + "nativeSrc": "19051:122:74", + "nodeType": "YulBlock", + "src": "19051:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "19073:6:74", + "nodeType": "YulIdentifier", + "src": "19073:6:74" + }, + { + "kind": "number", + "nativeSrc": "19081:1:74", + "nodeType": "YulLiteral", + "src": "19081:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19069:3:74", + "nodeType": "YulIdentifier", + "src": "19069:3:74" + }, + "nativeSrc": "19069:14:74", + "nodeType": "YulFunctionCall", + "src": "19069:14:74" + }, + { + "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f742061207661", + "kind": "string", + "nativeSrc": "19085:34:74", + "nodeType": "YulLiteral", + "src": "19085:34:74", + "type": "", + "value": "ERC721: address zero is not a va" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19062:6:74", + "nodeType": "YulIdentifier", + "src": "19062:6:74" + }, + "nativeSrc": "19062:58:74", + "nodeType": "YulFunctionCall", + "src": "19062:58:74" + }, + "nativeSrc": "19062:58:74", + "nodeType": "YulExpressionStatement", + "src": "19062:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "19141:6:74", + "nodeType": "YulIdentifier", + "src": "19141:6:74" + }, + { + "kind": "number", + "nativeSrc": "19149:2:74", + "nodeType": "YulLiteral", + "src": "19149:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19137:3:74", + "nodeType": "YulIdentifier", + "src": "19137:3:74" + }, + "nativeSrc": "19137:15:74", + "nodeType": "YulFunctionCall", + "src": "19137:15:74" + }, + { + "hexValue": "6c6964206f776e6572", + "kind": "string", + "nativeSrc": "19154:11:74", + "nodeType": "YulLiteral", + "src": "19154:11:74", + "type": "", + "value": "lid owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19130:6:74", + "nodeType": "YulIdentifier", + "src": "19130:6:74" + }, + "nativeSrc": "19130:36:74", + "nodeType": "YulFunctionCall", + "src": "19130:36:74" + }, + "nativeSrc": "19130:36:74", + "nodeType": "YulExpressionStatement", + "src": "19130:36:74" + } + ] + }, + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "18945:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "19043:6:74", + "nodeType": "YulTypedName", + "src": "19043:6:74", + "type": "" + } + ], + "src": "18945:228:74" + }, + { + "body": { + "nativeSrc": "19325:220:74", + "nodeType": "YulBlock", + "src": "19325:220:74", + "statements": [ + { + "nativeSrc": "19335:74:74", + "nodeType": "YulAssignment", + "src": "19335:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19401:3:74", + "nodeType": "YulIdentifier", + "src": "19401:3:74" + }, + { + "kind": "number", + "nativeSrc": "19406:2:74", + "nodeType": "YulLiteral", + "src": "19406:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "19342:58:74", + "nodeType": "YulIdentifier", + "src": "19342:58:74" + }, + "nativeSrc": "19342:67:74", + "nodeType": "YulFunctionCall", + "src": "19342:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "19335:3:74", + "nodeType": "YulIdentifier", + "src": "19335:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19507:3:74", + "nodeType": "YulIdentifier", + "src": "19507:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "19418:88:74", + "nodeType": "YulIdentifier", + "src": "19418:88:74" + }, + "nativeSrc": "19418:93:74", + "nodeType": "YulFunctionCall", + "src": "19418:93:74" + }, + "nativeSrc": "19418:93:74", + "nodeType": "YulExpressionStatement", + "src": "19418:93:74" + }, + { + "nativeSrc": "19520:19:74", + "nodeType": "YulAssignment", + "src": "19520:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19531:3:74", + "nodeType": "YulIdentifier", + "src": "19531:3:74" + }, + { + "kind": "number", + "nativeSrc": "19536:2:74", + "nodeType": "YulLiteral", + "src": "19536:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19527:3:74", + "nodeType": "YulIdentifier", + "src": "19527:3:74" + }, + "nativeSrc": "19527:12:74", + "nodeType": "YulFunctionCall", + "src": "19527:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "19520:3:74", + "nodeType": "YulIdentifier", + "src": "19520:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19179:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "19313:3:74", + "nodeType": "YulTypedName", + "src": "19313:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "19321:3:74", + "nodeType": "YulTypedName", + "src": "19321:3:74", + "type": "" + } + ], + "src": "19179:366:74" + }, + { + "body": { + "nativeSrc": "19722:248:74", + "nodeType": "YulBlock", + "src": "19722:248:74", + "statements": [ + { + "nativeSrc": "19732:26:74", + "nodeType": "YulAssignment", + "src": "19732:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19744:9:74", + "nodeType": "YulIdentifier", + "src": "19744:9:74" + }, + { + "kind": "number", + "nativeSrc": "19755:2:74", + "nodeType": "YulLiteral", + "src": "19755:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19740:3:74", + "nodeType": "YulIdentifier", + "src": "19740:3:74" + }, + "nativeSrc": "19740:18:74", + "nodeType": "YulFunctionCall", + "src": "19740:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19732:4:74", + "nodeType": "YulIdentifier", + "src": "19732:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19779:9:74", + "nodeType": "YulIdentifier", + "src": "19779:9:74" + }, + { + "kind": "number", + "nativeSrc": "19790:1:74", + "nodeType": "YulLiteral", + "src": "19790:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19775:3:74", + "nodeType": "YulIdentifier", + "src": "19775:3:74" + }, + "nativeSrc": "19775:17:74", + "nodeType": "YulFunctionCall", + "src": "19775:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19798:4:74", + "nodeType": "YulIdentifier", + "src": "19798:4:74" + }, + { + "name": "headStart", + "nativeSrc": "19804:9:74", + "nodeType": "YulIdentifier", + "src": "19804:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19794:3:74", + "nodeType": "YulIdentifier", + "src": "19794:3:74" + }, + "nativeSrc": "19794:20:74", + "nodeType": "YulFunctionCall", + "src": "19794:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19768:6:74", + "nodeType": "YulIdentifier", + "src": "19768:6:74" + }, + "nativeSrc": "19768:47:74", + "nodeType": "YulFunctionCall", + "src": "19768:47:74" + }, + "nativeSrc": "19768:47:74", + "nodeType": "YulExpressionStatement", + "src": "19768:47:74" + }, + { + "nativeSrc": "19824:139:74", + "nodeType": "YulAssignment", + "src": "19824:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19958:4:74", + "nodeType": "YulIdentifier", + "src": "19958:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19832:124:74", + "nodeType": "YulIdentifier", + "src": "19832:124:74" + }, + "nativeSrc": "19832:131:74", + "nodeType": "YulFunctionCall", + "src": "19832:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19824:4:74", + "nodeType": "YulIdentifier", + "src": "19824:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "19551:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "19702:9:74", + "nodeType": "YulTypedName", + "src": "19702:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "19717:4:74", + "nodeType": "YulTypedName", + "src": "19717:4:74", + "type": "" + } + ], + "src": "19551:419:74" + }, + { + "body": { + "nativeSrc": "20004:152:74", + "nodeType": "YulBlock", + "src": "20004:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20021:1:74", + "nodeType": "YulLiteral", + "src": "20021:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "20024:77:74", + "nodeType": "YulLiteral", + "src": "20024:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20014:6:74", + "nodeType": "YulIdentifier", + "src": "20014:6:74" + }, + "nativeSrc": "20014:88:74", + "nodeType": "YulFunctionCall", + "src": "20014:88:74" + }, + "nativeSrc": "20014:88:74", + "nodeType": "YulExpressionStatement", + "src": "20014:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20118:1:74", + "nodeType": "YulLiteral", + "src": "20118:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "20121:4:74", + "nodeType": "YulLiteral", + "src": "20121:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20111:6:74", + "nodeType": "YulIdentifier", + "src": "20111:6:74" + }, + "nativeSrc": "20111:15:74", + "nodeType": "YulFunctionCall", + "src": "20111:15:74" + }, + "nativeSrc": "20111:15:74", + "nodeType": "YulExpressionStatement", + "src": "20111:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "20142:1:74", + "nodeType": "YulLiteral", + "src": "20142:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "20145:4:74", + "nodeType": "YulLiteral", + "src": "20145:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "20135:6:74", + "nodeType": "YulIdentifier", + "src": "20135:6:74" + }, + "nativeSrc": "20135:15:74", + "nodeType": "YulFunctionCall", + "src": "20135:15:74" + }, + "nativeSrc": "20135:15:74", + "nodeType": "YulExpressionStatement", + "src": "20135:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "19976:180:74", + "nodeType": "YulFunctionDefinition", + "src": "19976:180:74" + }, + { + "body": { + "nativeSrc": "20206:147:74", + "nodeType": "YulBlock", + "src": "20206:147:74", + "statements": [ + { + "nativeSrc": "20216:25:74", + "nodeType": "YulAssignment", + "src": "20216:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "20239:1:74", + "nodeType": "YulIdentifier", + "src": "20239:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "20221:17:74", + "nodeType": "YulIdentifier", + "src": "20221:17:74" + }, + "nativeSrc": "20221:20:74", + "nodeType": "YulFunctionCall", + "src": "20221:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "20216:1:74", + "nodeType": "YulIdentifier", + "src": "20216:1:74" + } + ] + }, + { + "nativeSrc": "20250:25:74", + "nodeType": "YulAssignment", + "src": "20250:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "20273:1:74", + "nodeType": "YulIdentifier", + "src": "20273:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "20255:17:74", + "nodeType": "YulIdentifier", + "src": "20255:17:74" + }, + "nativeSrc": "20255:20:74", + "nodeType": "YulFunctionCall", + "src": "20255:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "20250:1:74", + "nodeType": "YulIdentifier", + "src": "20250:1:74" + } + ] + }, + { + "nativeSrc": "20284:16:74", + "nodeType": "YulAssignment", + "src": "20284:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "20295:1:74", + "nodeType": "YulIdentifier", + "src": "20295:1:74" + }, + { + "name": "y", + "nativeSrc": "20298:1:74", + "nodeType": "YulIdentifier", + "src": "20298:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20291:3:74", + "nodeType": "YulIdentifier", + "src": "20291:3:74" + }, + "nativeSrc": "20291:9:74", + "nodeType": "YulFunctionCall", + "src": "20291:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "20284:3:74", + "nodeType": "YulIdentifier", + "src": "20284:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "20324:22:74", + "nodeType": "YulBlock", + "src": "20324:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "20326:16:74", + "nodeType": "YulIdentifier", + "src": "20326:16:74" + }, + "nativeSrc": "20326:18:74", + "nodeType": "YulFunctionCall", + "src": "20326:18:74" + }, + "nativeSrc": "20326:18:74", + "nodeType": "YulExpressionStatement", + "src": "20326:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "20316:1:74", + "nodeType": "YulIdentifier", + "src": "20316:1:74" + }, + { + "name": "sum", + "nativeSrc": "20319:3:74", + "nodeType": "YulIdentifier", + "src": "20319:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20313:2:74", + "nodeType": "YulIdentifier", + "src": "20313:2:74" + }, + "nativeSrc": "20313:10:74", + "nodeType": "YulFunctionCall", + "src": "20313:10:74" + }, + "nativeSrc": "20310:36:74", + "nodeType": "YulIf", + "src": "20310:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "20162:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "20193:1:74", + "nodeType": "YulTypedName", + "src": "20193:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "20196:1:74", + "nodeType": "YulTypedName", + "src": "20196:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "20202:3:74", + "nodeType": "YulTypedName", + "src": "20202:3:74", + "type": "" + } + ], + "src": "20162:191:74" + }, + { + "body": { + "nativeSrc": "20473:34:74", + "nodeType": "YulBlock", + "src": "20473:34:74", + "statements": [ + { + "nativeSrc": "20483:18:74", + "nodeType": "YulAssignment", + "src": "20483:18:74", + "value": { + "name": "pos", + "nativeSrc": "20498:3:74", + "nodeType": "YulIdentifier", + "src": "20498:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "20483:11:74", + "nodeType": "YulIdentifier", + "src": "20483:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "20359:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "20445:3:74", + "nodeType": "YulTypedName", + "src": "20445:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "20450:6:74", + "nodeType": "YulTypedName", + "src": "20450:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "20461:11:74", + "nodeType": "YulTypedName", + "src": "20461:11:74", + "type": "" + } + ], + "src": "20359:148:74" + }, + { + "body": { + "nativeSrc": "20623:280:74", + "nodeType": "YulBlock", + "src": "20623:280:74", + "statements": [ + { + "nativeSrc": "20633:53:74", + "nodeType": "YulVariableDeclaration", + "src": "20633:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "20680:5:74", + "nodeType": "YulIdentifier", + "src": "20680:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "20647:32:74", + "nodeType": "YulIdentifier", + "src": "20647:32:74" + }, + "nativeSrc": "20647:39:74", + "nodeType": "YulFunctionCall", + "src": "20647:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "20637:6:74", + "nodeType": "YulTypedName", + "src": "20637:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "20695:96:74", + "nodeType": "YulAssignment", + "src": "20695:96:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20779:3:74", + "nodeType": "YulIdentifier", + "src": "20779:3:74" + }, + { + "name": "length", + "nativeSrc": "20784:6:74", + "nodeType": "YulIdentifier", + "src": "20784:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "20702:76:74", + "nodeType": "YulIdentifier", + "src": "20702:76:74" + }, + "nativeSrc": "20702:89:74", + "nodeType": "YulFunctionCall", + "src": "20702:89:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "20695:3:74", + "nodeType": "YulIdentifier", + "src": "20695:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "20839:5:74", + "nodeType": "YulIdentifier", + "src": "20839:5:74" + }, + { + "kind": "number", + "nativeSrc": "20846:4:74", + "nodeType": "YulLiteral", + "src": "20846:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20835:3:74", + "nodeType": "YulIdentifier", + "src": "20835:3:74" + }, + "nativeSrc": "20835:16:74", + "nodeType": "YulFunctionCall", + "src": "20835:16:74" + }, + { + "name": "pos", + "nativeSrc": "20853:3:74", + "nodeType": "YulIdentifier", + "src": "20853:3:74" + }, + { + "name": "length", + "nativeSrc": "20858:6:74", + "nodeType": "YulIdentifier", + "src": "20858:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "20800:34:74", + "nodeType": "YulIdentifier", + "src": "20800:34:74" + }, + "nativeSrc": "20800:65:74", + "nodeType": "YulFunctionCall", + "src": "20800:65:74" + }, + "nativeSrc": "20800:65:74", + "nodeType": "YulExpressionStatement", + "src": "20800:65:74" + }, + { + "nativeSrc": "20874:23:74", + "nodeType": "YulAssignment", + "src": "20874:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20885:3:74", + "nodeType": "YulIdentifier", + "src": "20885:3:74" + }, + { + "name": "length", + "nativeSrc": "20890:6:74", + "nodeType": "YulIdentifier", + "src": "20890:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20881:3:74", + "nodeType": "YulIdentifier", + "src": "20881:3:74" + }, + "nativeSrc": "20881:16:74", + "nodeType": "YulFunctionCall", + "src": "20881:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "20874:3:74", + "nodeType": "YulIdentifier", + "src": "20874:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "20513:390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "20604:5:74", + "nodeType": "YulTypedName", + "src": "20604:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "20611:3:74", + "nodeType": "YulTypedName", + "src": "20611:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "20619:3:74", + "nodeType": "YulTypedName", + "src": "20619:3:74", + "type": "" + } + ], + "src": "20513:390:74" + }, + { + "body": { + "nativeSrc": "21093:251:74", + "nodeType": "YulBlock", + "src": "21093:251:74", + "statements": [ + { + "nativeSrc": "21104:102:74", + "nodeType": "YulAssignment", + "src": "21104:102:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "21193:6:74", + "nodeType": "YulIdentifier", + "src": "21193:6:74" + }, + { + "name": "pos", + "nativeSrc": "21202:3:74", + "nodeType": "YulIdentifier", + "src": "21202:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "21111:81:74", + "nodeType": "YulIdentifier", + "src": "21111:81:74" + }, + "nativeSrc": "21111:95:74", + "nodeType": "YulFunctionCall", + "src": "21111:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "21104:3:74", + "nodeType": "YulIdentifier", + "src": "21104:3:74" + } + ] + }, + { + "nativeSrc": "21216:102:74", + "nodeType": "YulAssignment", + "src": "21216:102:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "21305:6:74", + "nodeType": "YulIdentifier", + "src": "21305:6:74" + }, + { + "name": "pos", + "nativeSrc": "21314:3:74", + "nodeType": "YulIdentifier", + "src": "21314:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "21223:81:74", + "nodeType": "YulIdentifier", + "src": "21223:81:74" + }, + "nativeSrc": "21223:95:74", + "nodeType": "YulFunctionCall", + "src": "21223:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "21216:3:74", + "nodeType": "YulIdentifier", + "src": "21216:3:74" + } + ] + }, + { + "nativeSrc": "21328:10:74", + "nodeType": "YulAssignment", + "src": "21328:10:74", + "value": { + "name": "pos", + "nativeSrc": "21335:3:74", + "nodeType": "YulIdentifier", + "src": "21335:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "21328:3:74", + "nodeType": "YulIdentifier", + "src": "21328:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "20909:435:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "21064:3:74", + "nodeType": "YulTypedName", + "src": "21064:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "21070:6:74", + "nodeType": "YulTypedName", + "src": "21070:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "21078:6:74", + "nodeType": "YulTypedName", + "src": "21078:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "21089:3:74", + "nodeType": "YulTypedName", + "src": "21089:3:74", + "type": "" + } + ], + "src": "20909:435:74" + }, + { + "body": { + "nativeSrc": "21456:119:74", + "nodeType": "YulBlock", + "src": "21456:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "21478:6:74", + "nodeType": "YulIdentifier", + "src": "21478:6:74" + }, + { + "kind": "number", + "nativeSrc": "21486:1:74", + "nodeType": "YulLiteral", + "src": "21486:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21474:3:74", + "nodeType": "YulIdentifier", + "src": "21474:3:74" + }, + "nativeSrc": "21474:14:74", + "nodeType": "YulFunctionCall", + "src": "21474:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "21490:34:74", + "nodeType": "YulLiteral", + "src": "21490:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21467:6:74", + "nodeType": "YulIdentifier", + "src": "21467:6:74" + }, + "nativeSrc": "21467:58:74", + "nodeType": "YulFunctionCall", + "src": "21467:58:74" + }, + "nativeSrc": "21467:58:74", + "nodeType": "YulExpressionStatement", + "src": "21467:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "21546:6:74", + "nodeType": "YulIdentifier", + "src": "21546:6:74" + }, + { + "kind": "number", + "nativeSrc": "21554:2:74", + "nodeType": "YulLiteral", + "src": "21554:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21542:3:74", + "nodeType": "YulIdentifier", + "src": "21542:3:74" + }, + "nativeSrc": "21542:15:74", + "nodeType": "YulFunctionCall", + "src": "21542:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "21559:8:74", + "nodeType": "YulLiteral", + "src": "21559:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21535:6:74", + "nodeType": "YulIdentifier", + "src": "21535:6:74" + }, + "nativeSrc": "21535:33:74", + "nodeType": "YulFunctionCall", + "src": "21535:33:74" + }, + "nativeSrc": "21535:33:74", + "nodeType": "YulExpressionStatement", + "src": "21535:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "21350:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "21448:6:74", + "nodeType": "YulTypedName", + "src": "21448:6:74", + "type": "" + } + ], + "src": "21350:225:74" + }, + { + "body": { + "nativeSrc": "21727:220:74", + "nodeType": "YulBlock", + "src": "21727:220:74", + "statements": [ + { + "nativeSrc": "21737:74:74", + "nodeType": "YulAssignment", + "src": "21737:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21803:3:74", + "nodeType": "YulIdentifier", + "src": "21803:3:74" + }, + { + "kind": "number", + "nativeSrc": "21808:2:74", + "nodeType": "YulLiteral", + "src": "21808:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "21744:58:74", + "nodeType": "YulIdentifier", + "src": "21744:58:74" + }, + "nativeSrc": "21744:67:74", + "nodeType": "YulFunctionCall", + "src": "21744:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "21737:3:74", + "nodeType": "YulIdentifier", + "src": "21737:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21909:3:74", + "nodeType": "YulIdentifier", + "src": "21909:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "21820:88:74", + "nodeType": "YulIdentifier", + "src": "21820:88:74" + }, + "nativeSrc": "21820:93:74", + "nodeType": "YulFunctionCall", + "src": "21820:93:74" + }, + "nativeSrc": "21820:93:74", + "nodeType": "YulExpressionStatement", + "src": "21820:93:74" + }, + { + "nativeSrc": "21922:19:74", + "nodeType": "YulAssignment", + "src": "21922:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21933:3:74", + "nodeType": "YulIdentifier", + "src": "21933:3:74" + }, + { + "kind": "number", + "nativeSrc": "21938:2:74", + "nodeType": "YulLiteral", + "src": "21938:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21929:3:74", + "nodeType": "YulIdentifier", + "src": "21929:3:74" + }, + "nativeSrc": "21929:12:74", + "nodeType": "YulFunctionCall", + "src": "21929:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "21922:3:74", + "nodeType": "YulIdentifier", + "src": "21922:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "21581:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "21715:3:74", + "nodeType": "YulTypedName", + "src": "21715:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "21723:3:74", + "nodeType": "YulTypedName", + "src": "21723:3:74", + "type": "" + } + ], + "src": "21581:366:74" + }, + { + "body": { + "nativeSrc": "22124:248:74", + "nodeType": "YulBlock", + "src": "22124:248:74", + "statements": [ + { + "nativeSrc": "22134:26:74", + "nodeType": "YulAssignment", + "src": "22134:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22146:9:74", + "nodeType": "YulIdentifier", + "src": "22146:9:74" + }, + { + "kind": "number", + "nativeSrc": "22157:2:74", + "nodeType": "YulLiteral", + "src": "22157:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22142:3:74", + "nodeType": "YulIdentifier", + "src": "22142:3:74" + }, + "nativeSrc": "22142:18:74", + "nodeType": "YulFunctionCall", + "src": "22142:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22134:4:74", + "nodeType": "YulIdentifier", + "src": "22134:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22181:9:74", + "nodeType": "YulIdentifier", + "src": "22181:9:74" + }, + { + "kind": "number", + "nativeSrc": "22192:1:74", + "nodeType": "YulLiteral", + "src": "22192:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22177:3:74", + "nodeType": "YulIdentifier", + "src": "22177:3:74" + }, + "nativeSrc": "22177:17:74", + "nodeType": "YulFunctionCall", + "src": "22177:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "22200:4:74", + "nodeType": "YulIdentifier", + "src": "22200:4:74" + }, + { + "name": "headStart", + "nativeSrc": "22206:9:74", + "nodeType": "YulIdentifier", + "src": "22206:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22196:3:74", + "nodeType": "YulIdentifier", + "src": "22196:3:74" + }, + "nativeSrc": "22196:20:74", + "nodeType": "YulFunctionCall", + "src": "22196:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22170:6:74", + "nodeType": "YulIdentifier", + "src": "22170:6:74" + }, + "nativeSrc": "22170:47:74", + "nodeType": "YulFunctionCall", + "src": "22170:47:74" + }, + "nativeSrc": "22170:47:74", + "nodeType": "YulExpressionStatement", + "src": "22170:47:74" + }, + { + "nativeSrc": "22226:139:74", + "nodeType": "YulAssignment", + "src": "22226:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "22360:4:74", + "nodeType": "YulIdentifier", + "src": "22360:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "22234:124:74", + "nodeType": "YulIdentifier", + "src": "22234:124:74" + }, + "nativeSrc": "22234:131:74", + "nodeType": "YulFunctionCall", + "src": "22234:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22226:4:74", + "nodeType": "YulIdentifier", + "src": "22226:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "21953:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22104:9:74", + "nodeType": "YulTypedName", + "src": "22104:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "22119:4:74", + "nodeType": "YulTypedName", + "src": "22119:4:74", + "type": "" + } + ], + "src": "21953:419:74" + }, + { + "body": { + "nativeSrc": "22484:68:74", + "nodeType": "YulBlock", + "src": "22484:68:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "22506:6:74", + "nodeType": "YulIdentifier", + "src": "22506:6:74" + }, + { + "kind": "number", + "nativeSrc": "22514:1:74", + "nodeType": "YulLiteral", + "src": "22514:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22502:3:74", + "nodeType": "YulIdentifier", + "src": "22502:3:74" + }, + "nativeSrc": "22502:14:74", + "nodeType": "YulFunctionCall", + "src": "22502:14:74" + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "kind": "string", + "nativeSrc": "22518:26:74", + "nodeType": "YulLiteral", + "src": "22518:26:74", + "type": "", + "value": "ERC721: invalid token ID" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22495:6:74", + "nodeType": "YulIdentifier", + "src": "22495:6:74" + }, + "nativeSrc": "22495:50:74", + "nodeType": "YulFunctionCall", + "src": "22495:50:74" + }, + "nativeSrc": "22495:50:74", + "nodeType": "YulExpressionStatement", + "src": "22495:50:74" + } + ] + }, + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "22378:174:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "22476:6:74", + "nodeType": "YulTypedName", + "src": "22476:6:74", + "type": "" + } + ], + "src": "22378:174:74" + }, + { + "body": { + "nativeSrc": "22704:220:74", + "nodeType": "YulBlock", + "src": "22704:220:74", + "statements": [ + { + "nativeSrc": "22714:74:74", + "nodeType": "YulAssignment", + "src": "22714:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22780:3:74", + "nodeType": "YulIdentifier", + "src": "22780:3:74" + }, + { + "kind": "number", + "nativeSrc": "22785:2:74", + "nodeType": "YulLiteral", + "src": "22785:2:74", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "22721:58:74", + "nodeType": "YulIdentifier", + "src": "22721:58:74" + }, + "nativeSrc": "22721:67:74", + "nodeType": "YulFunctionCall", + "src": "22721:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "22714:3:74", + "nodeType": "YulIdentifier", + "src": "22714:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22886:3:74", + "nodeType": "YulIdentifier", + "src": "22886:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "22797:88:74", + "nodeType": "YulIdentifier", + "src": "22797:88:74" + }, + "nativeSrc": "22797:93:74", + "nodeType": "YulFunctionCall", + "src": "22797:93:74" + }, + "nativeSrc": "22797:93:74", + "nodeType": "YulExpressionStatement", + "src": "22797:93:74" + }, + { + "nativeSrc": "22899:19:74", + "nodeType": "YulAssignment", + "src": "22899:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22910:3:74", + "nodeType": "YulIdentifier", + "src": "22910:3:74" + }, + { + "kind": "number", + "nativeSrc": "22915:2:74", + "nodeType": "YulLiteral", + "src": "22915:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22906:3:74", + "nodeType": "YulIdentifier", + "src": "22906:3:74" + }, + "nativeSrc": "22906:12:74", + "nodeType": "YulFunctionCall", + "src": "22906:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "22899:3:74", + "nodeType": "YulIdentifier", + "src": "22899:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "22558:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "22692:3:74", + "nodeType": "YulTypedName", + "src": "22692:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "22700:3:74", + "nodeType": "YulTypedName", + "src": "22700:3:74", + "type": "" + } + ], + "src": "22558:366:74" + }, + { + "body": { + "nativeSrc": "23101:248:74", + "nodeType": "YulBlock", + "src": "23101:248:74", + "statements": [ + { + "nativeSrc": "23111:26:74", + "nodeType": "YulAssignment", + "src": "23111:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23123:9:74", + "nodeType": "YulIdentifier", + "src": "23123:9:74" + }, + { + "kind": "number", + "nativeSrc": "23134:2:74", + "nodeType": "YulLiteral", + "src": "23134:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23119:3:74", + "nodeType": "YulIdentifier", + "src": "23119:3:74" + }, + "nativeSrc": "23119:18:74", + "nodeType": "YulFunctionCall", + "src": "23119:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23111:4:74", + "nodeType": "YulIdentifier", + "src": "23111:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23158:9:74", + "nodeType": "YulIdentifier", + "src": "23158:9:74" + }, + { + "kind": "number", + "nativeSrc": "23169:1:74", + "nodeType": "YulLiteral", + "src": "23169:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23154:3:74", + "nodeType": "YulIdentifier", + "src": "23154:3:74" + }, + "nativeSrc": "23154:17:74", + "nodeType": "YulFunctionCall", + "src": "23154:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "23177:4:74", + "nodeType": "YulIdentifier", + "src": "23177:4:74" + }, + { + "name": "headStart", + "nativeSrc": "23183:9:74", + "nodeType": "YulIdentifier", + "src": "23183:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23173:3:74", + "nodeType": "YulIdentifier", + "src": "23173:3:74" + }, + "nativeSrc": "23173:20:74", + "nodeType": "YulFunctionCall", + "src": "23173:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23147:6:74", + "nodeType": "YulIdentifier", + "src": "23147:6:74" + }, + "nativeSrc": "23147:47:74", + "nodeType": "YulFunctionCall", + "src": "23147:47:74" + }, + "nativeSrc": "23147:47:74", + "nodeType": "YulExpressionStatement", + "src": "23147:47:74" + }, + { + "nativeSrc": "23203:139:74", + "nodeType": "YulAssignment", + "src": "23203:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "23337:4:74", + "nodeType": "YulIdentifier", + "src": "23337:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "23211:124:74", + "nodeType": "YulIdentifier", + "src": "23211:124:74" + }, + "nativeSrc": "23211:131:74", + "nodeType": "YulFunctionCall", + "src": "23211:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23203:4:74", + "nodeType": "YulIdentifier", + "src": "23203:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "22930:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23081:9:74", + "nodeType": "YulTypedName", + "src": "23081:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "23096:4:74", + "nodeType": "YulTypedName", + "src": "23096:4:74", + "type": "" + } + ], + "src": "22930:419:74" + }, + { + "body": { + "nativeSrc": "23461:118:74", + "nodeType": "YulBlock", + "src": "23461:118:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "23483:6:74", + "nodeType": "YulIdentifier", + "src": "23483:6:74" + }, + { + "kind": "number", + "nativeSrc": "23491:1:74", + "nodeType": "YulLiteral", + "src": "23491:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23479:3:74", + "nodeType": "YulIdentifier", + "src": "23479:3:74" + }, + "nativeSrc": "23479:14:74", + "nodeType": "YulFunctionCall", + "src": "23479:14:74" + }, + { + "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", + "kind": "string", + "nativeSrc": "23495:34:74", + "nodeType": "YulLiteral", + "src": "23495:34:74", + "type": "", + "value": "ERC721: transfer from incorrect " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23472:6:74", + "nodeType": "YulIdentifier", + "src": "23472:6:74" + }, + "nativeSrc": "23472:58:74", + "nodeType": "YulFunctionCall", + "src": "23472:58:74" + }, + "nativeSrc": "23472:58:74", + "nodeType": "YulExpressionStatement", + "src": "23472:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "23551:6:74", + "nodeType": "YulIdentifier", + "src": "23551:6:74" + }, + { + "kind": "number", + "nativeSrc": "23559:2:74", + "nodeType": "YulLiteral", + "src": "23559:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23547:3:74", + "nodeType": "YulIdentifier", + "src": "23547:3:74" + }, + "nativeSrc": "23547:15:74", + "nodeType": "YulFunctionCall", + "src": "23547:15:74" + }, + { + "hexValue": "6f776e6572", + "kind": "string", + "nativeSrc": "23564:7:74", + "nodeType": "YulLiteral", + "src": "23564:7:74", + "type": "", + "value": "owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23540:6:74", + "nodeType": "YulIdentifier", + "src": "23540:6:74" + }, + "nativeSrc": "23540:32:74", + "nodeType": "YulFunctionCall", + "src": "23540:32:74" + }, + "nativeSrc": "23540:32:74", + "nodeType": "YulExpressionStatement", + "src": "23540:32:74" + } + ] + }, + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "23355:224:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "23453:6:74", + "nodeType": "YulTypedName", + "src": "23453:6:74", + "type": "" + } + ], + "src": "23355:224:74" + }, + { + "body": { + "nativeSrc": "23731:220:74", + "nodeType": "YulBlock", + "src": "23731:220:74", + "statements": [ + { + "nativeSrc": "23741:74:74", + "nodeType": "YulAssignment", + "src": "23741:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23807:3:74", + "nodeType": "YulIdentifier", + "src": "23807:3:74" + }, + { + "kind": "number", + "nativeSrc": "23812:2:74", + "nodeType": "YulLiteral", + "src": "23812:2:74", + "type": "", + "value": "37" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "23748:58:74", + "nodeType": "YulIdentifier", + "src": "23748:58:74" + }, + "nativeSrc": "23748:67:74", + "nodeType": "YulFunctionCall", + "src": "23748:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "23741:3:74", + "nodeType": "YulIdentifier", + "src": "23741:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23913:3:74", + "nodeType": "YulIdentifier", + "src": "23913:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "23824:88:74", + "nodeType": "YulIdentifier", + "src": "23824:88:74" + }, + "nativeSrc": "23824:93:74", + "nodeType": "YulFunctionCall", + "src": "23824:93:74" + }, + "nativeSrc": "23824:93:74", + "nodeType": "YulExpressionStatement", + "src": "23824:93:74" + }, + { + "nativeSrc": "23926:19:74", + "nodeType": "YulAssignment", + "src": "23926:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23937:3:74", + "nodeType": "YulIdentifier", + "src": "23937:3:74" + }, + { + "kind": "number", + "nativeSrc": "23942:2:74", + "nodeType": "YulLiteral", + "src": "23942:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23933:3:74", + "nodeType": "YulIdentifier", + "src": "23933:3:74" + }, + "nativeSrc": "23933:12:74", + "nodeType": "YulFunctionCall", + "src": "23933:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "23926:3:74", + "nodeType": "YulIdentifier", + "src": "23926:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "23585:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "23719:3:74", + "nodeType": "YulTypedName", + "src": "23719:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "23727:3:74", + "nodeType": "YulTypedName", + "src": "23727:3:74", + "type": "" + } + ], + "src": "23585:366:74" + }, + { + "body": { + "nativeSrc": "24128:248:74", + "nodeType": "YulBlock", + "src": "24128:248:74", + "statements": [ + { + "nativeSrc": "24138:26:74", + "nodeType": "YulAssignment", + "src": "24138:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24150:9:74", + "nodeType": "YulIdentifier", + "src": "24150:9:74" + }, + { + "kind": "number", + "nativeSrc": "24161:2:74", + "nodeType": "YulLiteral", + "src": "24161:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24146:3:74", + "nodeType": "YulIdentifier", + "src": "24146:3:74" + }, + "nativeSrc": "24146:18:74", + "nodeType": "YulFunctionCall", + "src": "24146:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24138:4:74", + "nodeType": "YulIdentifier", + "src": "24138:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24185:9:74", + "nodeType": "YulIdentifier", + "src": "24185:9:74" + }, + { + "kind": "number", + "nativeSrc": "24196:1:74", + "nodeType": "YulLiteral", + "src": "24196:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24181:3:74", + "nodeType": "YulIdentifier", + "src": "24181:3:74" + }, + "nativeSrc": "24181:17:74", + "nodeType": "YulFunctionCall", + "src": "24181:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "24204:4:74", + "nodeType": "YulIdentifier", + "src": "24204:4:74" + }, + { + "name": "headStart", + "nativeSrc": "24210:9:74", + "nodeType": "YulIdentifier", + "src": "24210:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "24200:3:74", + "nodeType": "YulIdentifier", + "src": "24200:3:74" + }, + "nativeSrc": "24200:20:74", + "nodeType": "YulFunctionCall", + "src": "24200:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24174:6:74", + "nodeType": "YulIdentifier", + "src": "24174:6:74" + }, + "nativeSrc": "24174:47:74", + "nodeType": "YulFunctionCall", + "src": "24174:47:74" + }, + "nativeSrc": "24174:47:74", + "nodeType": "YulExpressionStatement", + "src": "24174:47:74" + }, + { + "nativeSrc": "24230:139:74", + "nodeType": "YulAssignment", + "src": "24230:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "24364:4:74", + "nodeType": "YulIdentifier", + "src": "24364:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "24238:124:74", + "nodeType": "YulIdentifier", + "src": "24238:124:74" + }, + "nativeSrc": "24238:131:74", + "nodeType": "YulFunctionCall", + "src": "24238:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24230:4:74", + "nodeType": "YulIdentifier", + "src": "24230:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "23957:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "24108:9:74", + "nodeType": "YulTypedName", + "src": "24108:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "24123:4:74", + "nodeType": "YulTypedName", + "src": "24123:4:74", + "type": "" + } + ], + "src": "23957:419:74" + }, + { + "body": { + "nativeSrc": "24488:117:74", + "nodeType": "YulBlock", + "src": "24488:117:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "24510:6:74", + "nodeType": "YulIdentifier", + "src": "24510:6:74" + }, + { + "kind": "number", + "nativeSrc": "24518:1:74", + "nodeType": "YulLiteral", + "src": "24518:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24506:3:74", + "nodeType": "YulIdentifier", + "src": "24506:3:74" + }, + "nativeSrc": "24506:14:74", + "nodeType": "YulFunctionCall", + "src": "24506:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", + "kind": "string", + "nativeSrc": "24522:34:74", + "nodeType": "YulLiteral", + "src": "24522:34:74", + "type": "", + "value": "ERC721: transfer to the zero add" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24499:6:74", + "nodeType": "YulIdentifier", + "src": "24499:6:74" + }, + "nativeSrc": "24499:58:74", + "nodeType": "YulFunctionCall", + "src": "24499:58:74" + }, + "nativeSrc": "24499:58:74", + "nodeType": "YulExpressionStatement", + "src": "24499:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "24578:6:74", + "nodeType": "YulIdentifier", + "src": "24578:6:74" + }, + { + "kind": "number", + "nativeSrc": "24586:2:74", + "nodeType": "YulLiteral", + "src": "24586:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24574:3:74", + "nodeType": "YulIdentifier", + "src": "24574:3:74" + }, + "nativeSrc": "24574:15:74", + "nodeType": "YulFunctionCall", + "src": "24574:15:74" + }, + { + "hexValue": "72657373", + "kind": "string", + "nativeSrc": "24591:6:74", + "nodeType": "YulLiteral", + "src": "24591:6:74", + "type": "", + "value": "ress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24567:6:74", + "nodeType": "YulIdentifier", + "src": "24567:6:74" + }, + "nativeSrc": "24567:31:74", + "nodeType": "YulFunctionCall", + "src": "24567:31:74" + }, + "nativeSrc": "24567:31:74", + "nodeType": "YulExpressionStatement", + "src": "24567:31:74" + } + ] + }, + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "24382:223:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "24480:6:74", + "nodeType": "YulTypedName", + "src": "24480:6:74", + "type": "" + } + ], + "src": "24382:223:74" + }, + { + "body": { + "nativeSrc": "24757:220:74", + "nodeType": "YulBlock", + "src": "24757:220:74", + "statements": [ + { + "nativeSrc": "24767:74:74", + "nodeType": "YulAssignment", + "src": "24767:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24833:3:74", + "nodeType": "YulIdentifier", + "src": "24833:3:74" + }, + { + "kind": "number", + "nativeSrc": "24838:2:74", + "nodeType": "YulLiteral", + "src": "24838:2:74", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "24774:58:74", + "nodeType": "YulIdentifier", + "src": "24774:58:74" + }, + "nativeSrc": "24774:67:74", + "nodeType": "YulFunctionCall", + "src": "24774:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "24767:3:74", + "nodeType": "YulIdentifier", + "src": "24767:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24939:3:74", + "nodeType": "YulIdentifier", + "src": "24939:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "24850:88:74", + "nodeType": "YulIdentifier", + "src": "24850:88:74" + }, + "nativeSrc": "24850:93:74", + "nodeType": "YulFunctionCall", + "src": "24850:93:74" + }, + "nativeSrc": "24850:93:74", + "nodeType": "YulExpressionStatement", + "src": "24850:93:74" + }, + { + "nativeSrc": "24952:19:74", + "nodeType": "YulAssignment", + "src": "24952:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24963:3:74", + "nodeType": "YulIdentifier", + "src": "24963:3:74" + }, + { + "kind": "number", + "nativeSrc": "24968:2:74", + "nodeType": "YulLiteral", + "src": "24968:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24959:3:74", + "nodeType": "YulIdentifier", + "src": "24959:3:74" + }, + "nativeSrc": "24959:12:74", + "nodeType": "YulFunctionCall", + "src": "24959:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "24952:3:74", + "nodeType": "YulIdentifier", + "src": "24952:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "24611:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "24745:3:74", + "nodeType": "YulTypedName", + "src": "24745:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "24753:3:74", + "nodeType": "YulTypedName", + "src": "24753:3:74", + "type": "" + } + ], + "src": "24611:366:74" + }, + { + "body": { + "nativeSrc": "25154:248:74", + "nodeType": "YulBlock", + "src": "25154:248:74", + "statements": [ + { + "nativeSrc": "25164:26:74", + "nodeType": "YulAssignment", + "src": "25164:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25176:9:74", + "nodeType": "YulIdentifier", + "src": "25176:9:74" + }, + { + "kind": "number", + "nativeSrc": "25187:2:74", + "nodeType": "YulLiteral", + "src": "25187:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25172:3:74", + "nodeType": "YulIdentifier", + "src": "25172:3:74" + }, + "nativeSrc": "25172:18:74", + "nodeType": "YulFunctionCall", + "src": "25172:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "25164:4:74", + "nodeType": "YulIdentifier", + "src": "25164:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25211:9:74", + "nodeType": "YulIdentifier", + "src": "25211:9:74" + }, + { + "kind": "number", + "nativeSrc": "25222:1:74", + "nodeType": "YulLiteral", + "src": "25222:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25207:3:74", + "nodeType": "YulIdentifier", + "src": "25207:3:74" + }, + "nativeSrc": "25207:17:74", + "nodeType": "YulFunctionCall", + "src": "25207:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "25230:4:74", + "nodeType": "YulIdentifier", + "src": "25230:4:74" + }, + { + "name": "headStart", + "nativeSrc": "25236:9:74", + "nodeType": "YulIdentifier", + "src": "25236:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "25226:3:74", + "nodeType": "YulIdentifier", + "src": "25226:3:74" + }, + "nativeSrc": "25226:20:74", + "nodeType": "YulFunctionCall", + "src": "25226:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25200:6:74", + "nodeType": "YulIdentifier", + "src": "25200:6:74" + }, + "nativeSrc": "25200:47:74", + "nodeType": "YulFunctionCall", + "src": "25200:47:74" + }, + "nativeSrc": "25200:47:74", + "nodeType": "YulExpressionStatement", + "src": "25200:47:74" + }, + { + "nativeSrc": "25256:139:74", + "nodeType": "YulAssignment", + "src": "25256:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "25390:4:74", + "nodeType": "YulIdentifier", + "src": "25390:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "25264:124:74", + "nodeType": "YulIdentifier", + "src": "25264:124:74" + }, + "nativeSrc": "25264:131:74", + "nodeType": "YulFunctionCall", + "src": "25264:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "25256:4:74", + "nodeType": "YulIdentifier", + "src": "25256:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "24983:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "25134:9:74", + "nodeType": "YulTypedName", + "src": "25134:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "25149:4:74", + "nodeType": "YulTypedName", + "src": "25149:4:74", + "type": "" + } + ], + "src": "24983:419:74" + }, + { + "body": { + "nativeSrc": "25514:76:74", + "nodeType": "YulBlock", + "src": "25514:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "25536:6:74", + "nodeType": "YulIdentifier", + "src": "25536:6:74" + }, + { + "kind": "number", + "nativeSrc": "25544:1:74", + "nodeType": "YulLiteral", + "src": "25544:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25532:3:74", + "nodeType": "YulIdentifier", + "src": "25532:3:74" + }, + "nativeSrc": "25532:14:74", + "nodeType": "YulFunctionCall", + "src": "25532:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "25548:34:74", + "nodeType": "YulLiteral", + "src": "25548:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25525:6:74", + "nodeType": "YulIdentifier", + "src": "25525:6:74" + }, + "nativeSrc": "25525:58:74", + "nodeType": "YulFunctionCall", + "src": "25525:58:74" + }, + "nativeSrc": "25525:58:74", + "nodeType": "YulExpressionStatement", + "src": "25525:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "25408:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "25506:6:74", + "nodeType": "YulTypedName", + "src": "25506:6:74", + "type": "" + } + ], + "src": "25408:182:74" + }, + { + "body": { + "nativeSrc": "25742:220:74", + "nodeType": "YulBlock", + "src": "25742:220:74", + "statements": [ + { + "nativeSrc": "25752:74:74", + "nodeType": "YulAssignment", + "src": "25752:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25818:3:74", + "nodeType": "YulIdentifier", + "src": "25818:3:74" + }, + { + "kind": "number", + "nativeSrc": "25823:2:74", + "nodeType": "YulLiteral", + "src": "25823:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "25759:58:74", + "nodeType": "YulIdentifier", + "src": "25759:58:74" + }, + "nativeSrc": "25759:67:74", + "nodeType": "YulFunctionCall", + "src": "25759:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "25752:3:74", + "nodeType": "YulIdentifier", + "src": "25752:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25924:3:74", + "nodeType": "YulIdentifier", + "src": "25924:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "25835:88:74", + "nodeType": "YulIdentifier", + "src": "25835:88:74" + }, + "nativeSrc": "25835:93:74", + "nodeType": "YulFunctionCall", + "src": "25835:93:74" + }, + "nativeSrc": "25835:93:74", + "nodeType": "YulExpressionStatement", + "src": "25835:93:74" + }, + { + "nativeSrc": "25937:19:74", + "nodeType": "YulAssignment", + "src": "25937:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25948:3:74", + "nodeType": "YulIdentifier", + "src": "25948:3:74" + }, + { + "kind": "number", + "nativeSrc": "25953:2:74", + "nodeType": "YulLiteral", + "src": "25953:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25944:3:74", + "nodeType": "YulIdentifier", + "src": "25944:3:74" + }, + "nativeSrc": "25944:12:74", + "nodeType": "YulFunctionCall", + "src": "25944:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "25937:3:74", + "nodeType": "YulIdentifier", + "src": "25937:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "25596:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "25730:3:74", + "nodeType": "YulTypedName", + "src": "25730:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "25738:3:74", + "nodeType": "YulTypedName", + "src": "25738:3:74", + "type": "" + } + ], + "src": "25596:366:74" + }, + { + "body": { + "nativeSrc": "26139:248:74", + "nodeType": "YulBlock", + "src": "26139:248:74", + "statements": [ + { + "nativeSrc": "26149:26:74", + "nodeType": "YulAssignment", + "src": "26149:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26161:9:74", + "nodeType": "YulIdentifier", + "src": "26161:9:74" + }, + { + "kind": "number", + "nativeSrc": "26172:2:74", + "nodeType": "YulLiteral", + "src": "26172:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26157:3:74", + "nodeType": "YulIdentifier", + "src": "26157:3:74" + }, + "nativeSrc": "26157:18:74", + "nodeType": "YulFunctionCall", + "src": "26157:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "26149:4:74", + "nodeType": "YulIdentifier", + "src": "26149:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26196:9:74", + "nodeType": "YulIdentifier", + "src": "26196:9:74" + }, + { + "kind": "number", + "nativeSrc": "26207:1:74", + "nodeType": "YulLiteral", + "src": "26207:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26192:3:74", + "nodeType": "YulIdentifier", + "src": "26192:3:74" + }, + "nativeSrc": "26192:17:74", + "nodeType": "YulFunctionCall", + "src": "26192:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "26215:4:74", + "nodeType": "YulIdentifier", + "src": "26215:4:74" + }, + { + "name": "headStart", + "nativeSrc": "26221:9:74", + "nodeType": "YulIdentifier", + "src": "26221:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "26211:3:74", + "nodeType": "YulIdentifier", + "src": "26211:3:74" + }, + "nativeSrc": "26211:20:74", + "nodeType": "YulFunctionCall", + "src": "26211:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "26185:6:74", + "nodeType": "YulIdentifier", + "src": "26185:6:74" + }, + "nativeSrc": "26185:47:74", + "nodeType": "YulFunctionCall", + "src": "26185:47:74" + }, + "nativeSrc": "26185:47:74", + "nodeType": "YulExpressionStatement", + "src": "26185:47:74" + }, + { + "nativeSrc": "26241:139:74", + "nodeType": "YulAssignment", + "src": "26241:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "26375:4:74", + "nodeType": "YulIdentifier", + "src": "26375:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "26249:124:74", + "nodeType": "YulIdentifier", + "src": "26249:124:74" + }, + "nativeSrc": "26249:131:74", + "nodeType": "YulFunctionCall", + "src": "26249:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "26241:4:74", + "nodeType": "YulIdentifier", + "src": "26241:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "25968:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "26119:9:74", + "nodeType": "YulTypedName", + "src": "26119:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "26134:4:74", + "nodeType": "YulTypedName", + "src": "26134:4:74", + "type": "" + } + ], + "src": "25968:419:74" + }, + { + "body": { + "nativeSrc": "26499:69:74", + "nodeType": "YulBlock", + "src": "26499:69:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "26521:6:74", + "nodeType": "YulIdentifier", + "src": "26521:6:74" + }, + { + "kind": "number", + "nativeSrc": "26529:1:74", + "nodeType": "YulLiteral", + "src": "26529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26517:3:74", + "nodeType": "YulIdentifier", + "src": "26517:3:74" + }, + "nativeSrc": "26517:14:74", + "nodeType": "YulFunctionCall", + "src": "26517:14:74" + }, + { + "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", + "kind": "string", + "nativeSrc": "26533:27:74", + "nodeType": "YulLiteral", + "src": "26533:27:74", + "type": "", + "value": "ERC721: approve to caller" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "26510:6:74", + "nodeType": "YulIdentifier", + "src": "26510:6:74" + }, + "nativeSrc": "26510:51:74", + "nodeType": "YulFunctionCall", + "src": "26510:51:74" + }, + "nativeSrc": "26510:51:74", + "nodeType": "YulExpressionStatement", + "src": "26510:51:74" + } + ] + }, + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "26393:175:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "26491:6:74", + "nodeType": "YulTypedName", + "src": "26491:6:74", + "type": "" + } + ], + "src": "26393:175:74" + }, + { + "body": { + "nativeSrc": "26720:220:74", + "nodeType": "YulBlock", + "src": "26720:220:74", + "statements": [ + { + "nativeSrc": "26730:74:74", + "nodeType": "YulAssignment", + "src": "26730:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26796:3:74", + "nodeType": "YulIdentifier", + "src": "26796:3:74" + }, + { + "kind": "number", + "nativeSrc": "26801:2:74", + "nodeType": "YulLiteral", + "src": "26801:2:74", + "type": "", + "value": "25" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "26737:58:74", + "nodeType": "YulIdentifier", + "src": "26737:58:74" + }, + "nativeSrc": "26737:67:74", + "nodeType": "YulFunctionCall", + "src": "26737:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "26730:3:74", + "nodeType": "YulIdentifier", + "src": "26730:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26902:3:74", + "nodeType": "YulIdentifier", + "src": "26902:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "26813:88:74", + "nodeType": "YulIdentifier", + "src": "26813:88:74" + }, + "nativeSrc": "26813:93:74", + "nodeType": "YulFunctionCall", + "src": "26813:93:74" + }, + "nativeSrc": "26813:93:74", + "nodeType": "YulExpressionStatement", + "src": "26813:93:74" + }, + { + "nativeSrc": "26915:19:74", + "nodeType": "YulAssignment", + "src": "26915:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26926:3:74", + "nodeType": "YulIdentifier", + "src": "26926:3:74" + }, + { + "kind": "number", + "nativeSrc": "26931:2:74", + "nodeType": "YulLiteral", + "src": "26931:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26922:3:74", + "nodeType": "YulIdentifier", + "src": "26922:3:74" + }, + "nativeSrc": "26922:12:74", + "nodeType": "YulFunctionCall", + "src": "26922:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "26915:3:74", + "nodeType": "YulIdentifier", + "src": "26915:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "26574:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "26708:3:74", + "nodeType": "YulTypedName", + "src": "26708:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "26716:3:74", + "nodeType": "YulTypedName", + "src": "26716:3:74", + "type": "" + } + ], + "src": "26574:366:74" + }, + { + "body": { + "nativeSrc": "27117:248:74", + "nodeType": "YulBlock", + "src": "27117:248:74", + "statements": [ + { + "nativeSrc": "27127:26:74", + "nodeType": "YulAssignment", + "src": "27127:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27139:9:74", + "nodeType": "YulIdentifier", + "src": "27139:9:74" + }, + { + "kind": "number", + "nativeSrc": "27150:2:74", + "nodeType": "YulLiteral", + "src": "27150:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27135:3:74", + "nodeType": "YulIdentifier", + "src": "27135:3:74" + }, + "nativeSrc": "27135:18:74", + "nodeType": "YulFunctionCall", + "src": "27135:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27127:4:74", + "nodeType": "YulIdentifier", + "src": "27127:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27174:9:74", + "nodeType": "YulIdentifier", + "src": "27174:9:74" + }, + { + "kind": "number", + "nativeSrc": "27185:1:74", + "nodeType": "YulLiteral", + "src": "27185:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27170:3:74", + "nodeType": "YulIdentifier", + "src": "27170:3:74" + }, + "nativeSrc": "27170:17:74", + "nodeType": "YulFunctionCall", + "src": "27170:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "27193:4:74", + "nodeType": "YulIdentifier", + "src": "27193:4:74" + }, + { + "name": "headStart", + "nativeSrc": "27199:9:74", + "nodeType": "YulIdentifier", + "src": "27199:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27189:3:74", + "nodeType": "YulIdentifier", + "src": "27189:3:74" + }, + "nativeSrc": "27189:20:74", + "nodeType": "YulFunctionCall", + "src": "27189:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27163:6:74", + "nodeType": "YulIdentifier", + "src": "27163:6:74" + }, + "nativeSrc": "27163:47:74", + "nodeType": "YulFunctionCall", + "src": "27163:47:74" + }, + "nativeSrc": "27163:47:74", + "nodeType": "YulExpressionStatement", + "src": "27163:47:74" + }, + { + "nativeSrc": "27219:139:74", + "nodeType": "YulAssignment", + "src": "27219:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "27353:4:74", + "nodeType": "YulIdentifier", + "src": "27353:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "27227:124:74", + "nodeType": "YulIdentifier", + "src": "27227:124:74" + }, + "nativeSrc": "27227:131:74", + "nodeType": "YulFunctionCall", + "src": "27227:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27219:4:74", + "nodeType": "YulIdentifier", + "src": "27219:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "26946:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "27097:9:74", + "nodeType": "YulTypedName", + "src": "27097:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "27112:4:74", + "nodeType": "YulTypedName", + "src": "27112:4:74", + "type": "" + } + ], + "src": "26946:419:74" + }, + { + "body": { + "nativeSrc": "27477:131:74", + "nodeType": "YulBlock", + "src": "27477:131:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "27499:6:74", + "nodeType": "YulIdentifier", + "src": "27499:6:74" + }, + { + "kind": "number", + "nativeSrc": "27507:1:74", + "nodeType": "YulLiteral", + "src": "27507:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27495:3:74", + "nodeType": "YulIdentifier", + "src": "27495:3:74" + }, + "nativeSrc": "27495:14:74", + "nodeType": "YulFunctionCall", + "src": "27495:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", + "kind": "string", + "nativeSrc": "27511:34:74", + "nodeType": "YulLiteral", + "src": "27511:34:74", + "type": "", + "value": "ERC721: transfer to non ERC721Re" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27488:6:74", + "nodeType": "YulIdentifier", + "src": "27488:6:74" + }, + "nativeSrc": "27488:58:74", + "nodeType": "YulFunctionCall", + "src": "27488:58:74" + }, + "nativeSrc": "27488:58:74", + "nodeType": "YulExpressionStatement", + "src": "27488:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "27567:6:74", + "nodeType": "YulIdentifier", + "src": "27567:6:74" + }, + { + "kind": "number", + "nativeSrc": "27575:2:74", + "nodeType": "YulLiteral", + "src": "27575:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27563:3:74", + "nodeType": "YulIdentifier", + "src": "27563:3:74" + }, + "nativeSrc": "27563:15:74", + "nodeType": "YulFunctionCall", + "src": "27563:15:74" + }, + { + "hexValue": "63656976657220696d706c656d656e746572", + "kind": "string", + "nativeSrc": "27580:20:74", + "nodeType": "YulLiteral", + "src": "27580:20:74", + "type": "", + "value": "ceiver implementer" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27556:6:74", + "nodeType": "YulIdentifier", + "src": "27556:6:74" + }, + "nativeSrc": "27556:45:74", + "nodeType": "YulFunctionCall", + "src": "27556:45:74" + }, + "nativeSrc": "27556:45:74", + "nodeType": "YulExpressionStatement", + "src": "27556:45:74" + } + ] + }, + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "27371:237:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "27469:6:74", + "nodeType": "YulTypedName", + "src": "27469:6:74", + "type": "" + } + ], + "src": "27371:237:74" + }, + { + "body": { + "nativeSrc": "27760:220:74", + "nodeType": "YulBlock", + "src": "27760:220:74", + "statements": [ + { + "nativeSrc": "27770:74:74", + "nodeType": "YulAssignment", + "src": "27770:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27836:3:74", + "nodeType": "YulIdentifier", + "src": "27836:3:74" + }, + { + "kind": "number", + "nativeSrc": "27841:2:74", + "nodeType": "YulLiteral", + "src": "27841:2:74", + "type": "", + "value": "50" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "27777:58:74", + "nodeType": "YulIdentifier", + "src": "27777:58:74" + }, + "nativeSrc": "27777:67:74", + "nodeType": "YulFunctionCall", + "src": "27777:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "27770:3:74", + "nodeType": "YulIdentifier", + "src": "27770:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27942:3:74", + "nodeType": "YulIdentifier", + "src": "27942:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "27853:88:74", + "nodeType": "YulIdentifier", + "src": "27853:88:74" + }, + "nativeSrc": "27853:93:74", + "nodeType": "YulFunctionCall", + "src": "27853:93:74" + }, + "nativeSrc": "27853:93:74", + "nodeType": "YulExpressionStatement", + "src": "27853:93:74" + }, + { + "nativeSrc": "27955:19:74", + "nodeType": "YulAssignment", + "src": "27955:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27966:3:74", + "nodeType": "YulIdentifier", + "src": "27966:3:74" + }, + { + "kind": "number", + "nativeSrc": "27971:2:74", + "nodeType": "YulLiteral", + "src": "27971:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27962:3:74", + "nodeType": "YulIdentifier", + "src": "27962:3:74" + }, + "nativeSrc": "27962:12:74", + "nodeType": "YulFunctionCall", + "src": "27962:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "27955:3:74", + "nodeType": "YulIdentifier", + "src": "27955:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "27614:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "27748:3:74", + "nodeType": "YulTypedName", + "src": "27748:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "27756:3:74", + "nodeType": "YulTypedName", + "src": "27756:3:74", + "type": "" + } + ], + "src": "27614:366:74" + }, + { + "body": { + "nativeSrc": "28157:248:74", + "nodeType": "YulBlock", + "src": "28157:248:74", + "statements": [ + { + "nativeSrc": "28167:26:74", + "nodeType": "YulAssignment", + "src": "28167:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28179:9:74", + "nodeType": "YulIdentifier", + "src": "28179:9:74" + }, + { + "kind": "number", + "nativeSrc": "28190:2:74", + "nodeType": "YulLiteral", + "src": "28190:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28175:3:74", + "nodeType": "YulIdentifier", + "src": "28175:3:74" + }, + "nativeSrc": "28175:18:74", + "nodeType": "YulFunctionCall", + "src": "28175:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28167:4:74", + "nodeType": "YulIdentifier", + "src": "28167:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28214:9:74", + "nodeType": "YulIdentifier", + "src": "28214:9:74" + }, + { + "kind": "number", + "nativeSrc": "28225:1:74", + "nodeType": "YulLiteral", + "src": "28225:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28210:3:74", + "nodeType": "YulIdentifier", + "src": "28210:3:74" + }, + "nativeSrc": "28210:17:74", + "nodeType": "YulFunctionCall", + "src": "28210:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "28233:4:74", + "nodeType": "YulIdentifier", + "src": "28233:4:74" + }, + { + "name": "headStart", + "nativeSrc": "28239:9:74", + "nodeType": "YulIdentifier", + "src": "28239:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "28229:3:74", + "nodeType": "YulIdentifier", + "src": "28229:3:74" + }, + "nativeSrc": "28229:20:74", + "nodeType": "YulFunctionCall", + "src": "28229:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28203:6:74", + "nodeType": "YulIdentifier", + "src": "28203:6:74" + }, + "nativeSrc": "28203:47:74", + "nodeType": "YulFunctionCall", + "src": "28203:47:74" + }, + "nativeSrc": "28203:47:74", + "nodeType": "YulExpressionStatement", + "src": "28203:47:74" + }, + { + "nativeSrc": "28259:139:74", + "nodeType": "YulAssignment", + "src": "28259:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "28393:4:74", + "nodeType": "YulIdentifier", + "src": "28393:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "28267:124:74", + "nodeType": "YulIdentifier", + "src": "28267:124:74" + }, + "nativeSrc": "28267:131:74", + "nodeType": "YulFunctionCall", + "src": "28267:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28259:4:74", + "nodeType": "YulIdentifier", + "src": "28259:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "27986:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "28137:9:74", + "nodeType": "YulTypedName", + "src": "28137:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "28152:4:74", + "nodeType": "YulTypedName", + "src": "28152:4:74", + "type": "" + } + ], + "src": "27986:419:74" + }, + { + "body": { + "nativeSrc": "28439:152:74", + "nodeType": "YulBlock", + "src": "28439:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28456:1:74", + "nodeType": "YulLiteral", + "src": "28456:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "28459:77:74", + "nodeType": "YulLiteral", + "src": "28459:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28449:6:74", + "nodeType": "YulIdentifier", + "src": "28449:6:74" + }, + "nativeSrc": "28449:88:74", + "nodeType": "YulFunctionCall", + "src": "28449:88:74" + }, + "nativeSrc": "28449:88:74", + "nodeType": "YulExpressionStatement", + "src": "28449:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28553:1:74", + "nodeType": "YulLiteral", + "src": "28553:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "28556:4:74", + "nodeType": "YulLiteral", + "src": "28556:4:74", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28546:6:74", + "nodeType": "YulIdentifier", + "src": "28546:6:74" + }, + "nativeSrc": "28546:15:74", + "nodeType": "YulFunctionCall", + "src": "28546:15:74" + }, + "nativeSrc": "28546:15:74", + "nodeType": "YulExpressionStatement", + "src": "28546:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28577:1:74", + "nodeType": "YulLiteral", + "src": "28577:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "28580:4:74", + "nodeType": "YulLiteral", + "src": "28580:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "28570:6:74", + "nodeType": "YulIdentifier", + "src": "28570:6:74" + }, + "nativeSrc": "28570:15:74", + "nodeType": "YulFunctionCall", + "src": "28570:15:74" + }, + "nativeSrc": "28570:15:74", + "nodeType": "YulExpressionStatement", + "src": "28570:15:74" + } + ] + }, + "name": "panic_error_0x12", + "nativeSrc": "28411:180:74", + "nodeType": "YulFunctionDefinition", + "src": "28411:180:74" + }, + { + "body": { + "nativeSrc": "28703:76:74", + "nodeType": "YulBlock", + "src": "28703:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "28725:6:74", + "nodeType": "YulIdentifier", + "src": "28725:6:74" + }, + { + "kind": "number", + "nativeSrc": "28733:1:74", + "nodeType": "YulLiteral", + "src": "28733:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28721:3:74", + "nodeType": "YulIdentifier", + "src": "28721:3:74" + }, + "nativeSrc": "28721:14:74", + "nodeType": "YulFunctionCall", + "src": "28721:14:74" + }, + { + "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", + "kind": "string", + "nativeSrc": "28737:34:74", + "nodeType": "YulLiteral", + "src": "28737:34:74", + "type": "", + "value": "ERC721: mint to the zero address" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28714:6:74", + "nodeType": "YulIdentifier", + "src": "28714:6:74" + }, + "nativeSrc": "28714:58:74", + "nodeType": "YulFunctionCall", + "src": "28714:58:74" + }, + "nativeSrc": "28714:58:74", + "nodeType": "YulExpressionStatement", + "src": "28714:58:74" + } + ] + }, + "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "nativeSrc": "28597:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "28695:6:74", + "nodeType": "YulTypedName", + "src": "28695:6:74", + "type": "" + } + ], + "src": "28597:182:74" + }, + { + "body": { + "nativeSrc": "28931:220:74", + "nodeType": "YulBlock", + "src": "28931:220:74", + "statements": [ + { + "nativeSrc": "28941:74:74", + "nodeType": "YulAssignment", + "src": "28941:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "29007:3:74", + "nodeType": "YulIdentifier", + "src": "29007:3:74" + }, + { + "kind": "number", + "nativeSrc": "29012:2:74", + "nodeType": "YulLiteral", + "src": "29012:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "28948:58:74", + "nodeType": "YulIdentifier", + "src": "28948:58:74" + }, + "nativeSrc": "28948:67:74", + "nodeType": "YulFunctionCall", + "src": "28948:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "28941:3:74", + "nodeType": "YulIdentifier", + "src": "28941:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "29113:3:74", + "nodeType": "YulIdentifier", + "src": "29113:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "nativeSrc": "29024:88:74", + "nodeType": "YulIdentifier", + "src": "29024:88:74" + }, + "nativeSrc": "29024:93:74", + "nodeType": "YulFunctionCall", + "src": "29024:93:74" + }, + "nativeSrc": "29024:93:74", + "nodeType": "YulExpressionStatement", + "src": "29024:93:74" + }, + { + "nativeSrc": "29126:19:74", + "nodeType": "YulAssignment", + "src": "29126:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "29137:3:74", + "nodeType": "YulIdentifier", + "src": "29137:3:74" + }, + { + "kind": "number", + "nativeSrc": "29142:2:74", + "nodeType": "YulLiteral", + "src": "29142:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29133:3:74", + "nodeType": "YulIdentifier", + "src": "29133:3:74" + }, + "nativeSrc": "29133:12:74", + "nodeType": "YulFunctionCall", + "src": "29133:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "29126:3:74", + "nodeType": "YulIdentifier", + "src": "29126:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", + "nativeSrc": "28785:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "28919:3:74", + "nodeType": "YulTypedName", + "src": "28919:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "28927:3:74", + "nodeType": "YulTypedName", + "src": "28927:3:74", + "type": "" + } + ], + "src": "28785:366:74" + }, + { + "body": { + "nativeSrc": "29328:248:74", + "nodeType": "YulBlock", + "src": "29328:248:74", + "statements": [ + { + "nativeSrc": "29338:26:74", + "nodeType": "YulAssignment", + "src": "29338:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29350:9:74", + "nodeType": "YulIdentifier", + "src": "29350:9:74" + }, + { + "kind": "number", + "nativeSrc": "29361:2:74", + "nodeType": "YulLiteral", + "src": "29361:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29346:3:74", + "nodeType": "YulIdentifier", + "src": "29346:3:74" + }, + "nativeSrc": "29346:18:74", + "nodeType": "YulFunctionCall", + "src": "29346:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "29338:4:74", + "nodeType": "YulIdentifier", + "src": "29338:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29385:9:74", + "nodeType": "YulIdentifier", + "src": "29385:9:74" + }, + { + "kind": "number", + "nativeSrc": "29396:1:74", + "nodeType": "YulLiteral", + "src": "29396:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29381:3:74", + "nodeType": "YulIdentifier", + "src": "29381:3:74" + }, + "nativeSrc": "29381:17:74", + "nodeType": "YulFunctionCall", + "src": "29381:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "29404:4:74", + "nodeType": "YulIdentifier", + "src": "29404:4:74" + }, + { + "name": "headStart", + "nativeSrc": "29410:9:74", + "nodeType": "YulIdentifier", + "src": "29410:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "29400:3:74", + "nodeType": "YulIdentifier", + "src": "29400:3:74" + }, + "nativeSrc": "29400:20:74", + "nodeType": "YulFunctionCall", + "src": "29400:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "29374:6:74", + "nodeType": "YulIdentifier", + "src": "29374:6:74" + }, + "nativeSrc": "29374:47:74", + "nodeType": "YulFunctionCall", + "src": "29374:47:74" + }, + "nativeSrc": "29374:47:74", + "nodeType": "YulExpressionStatement", + "src": "29374:47:74" + }, + { + "nativeSrc": "29430:139:74", + "nodeType": "YulAssignment", + "src": "29430:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "29564:4:74", + "nodeType": "YulIdentifier", + "src": "29564:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", + "nativeSrc": "29438:124:74", + "nodeType": "YulIdentifier", + "src": "29438:124:74" + }, + "nativeSrc": "29438:131:74", + "nodeType": "YulFunctionCall", + "src": "29438:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "29430:4:74", + "nodeType": "YulIdentifier", + "src": "29430:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "29157:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29308:9:74", + "nodeType": "YulTypedName", + "src": "29308:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "29323:4:74", + "nodeType": "YulTypedName", + "src": "29323:4:74", + "type": "" + } + ], + "src": "29157:419:74" + }, + { + "body": { + "nativeSrc": "29688:72:74", + "nodeType": "YulBlock", + "src": "29688:72:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "29710:6:74", + "nodeType": "YulIdentifier", + "src": "29710:6:74" + }, + { + "kind": "number", + "nativeSrc": "29718:1:74", + "nodeType": "YulLiteral", + "src": "29718:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29706:3:74", + "nodeType": "YulIdentifier", + "src": "29706:3:74" + }, + "nativeSrc": "29706:14:74", + "nodeType": "YulFunctionCall", + "src": "29706:14:74" + }, + { + "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", + "kind": "string", + "nativeSrc": "29722:30:74", + "nodeType": "YulLiteral", + "src": "29722:30:74", + "type": "", + "value": "ERC721: token already minted" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "29699:6:74", + "nodeType": "YulIdentifier", + "src": "29699:6:74" + }, + "nativeSrc": "29699:54:74", + "nodeType": "YulFunctionCall", + "src": "29699:54:74" + }, + "nativeSrc": "29699:54:74", + "nodeType": "YulExpressionStatement", + "src": "29699:54:74" + } + ] + }, + "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "nativeSrc": "29582:178:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "29680:6:74", + "nodeType": "YulTypedName", + "src": "29680:6:74", + "type": "" + } + ], + "src": "29582:178:74" + }, + { + "body": { + "nativeSrc": "29912:220:74", + "nodeType": "YulBlock", + "src": "29912:220:74", + "statements": [ + { + "nativeSrc": "29922:74:74", + "nodeType": "YulAssignment", + "src": "29922:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "29988:3:74", + "nodeType": "YulIdentifier", + "src": "29988:3:74" + }, + { + "kind": "number", + "nativeSrc": "29993:2:74", + "nodeType": "YulLiteral", + "src": "29993:2:74", + "type": "", + "value": "28" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "29929:58:74", + "nodeType": "YulIdentifier", + "src": "29929:58:74" + }, + "nativeSrc": "29929:67:74", + "nodeType": "YulFunctionCall", + "src": "29929:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "29922:3:74", + "nodeType": "YulIdentifier", + "src": "29922:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30094:3:74", + "nodeType": "YulIdentifier", + "src": "30094:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "nativeSrc": "30005:88:74", + "nodeType": "YulIdentifier", + "src": "30005:88:74" + }, + "nativeSrc": "30005:93:74", + "nodeType": "YulFunctionCall", + "src": "30005:93:74" + }, + "nativeSrc": "30005:93:74", + "nodeType": "YulExpressionStatement", + "src": "30005:93:74" + }, + { + "nativeSrc": "30107:19:74", + "nodeType": "YulAssignment", + "src": "30107:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30118:3:74", + "nodeType": "YulIdentifier", + "src": "30118:3:74" + }, + { + "kind": "number", + "nativeSrc": "30123:2:74", + "nodeType": "YulLiteral", + "src": "30123:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30114:3:74", + "nodeType": "YulIdentifier", + "src": "30114:3:74" + }, + "nativeSrc": "30114:12:74", + "nodeType": "YulFunctionCall", + "src": "30114:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "30107:3:74", + "nodeType": "YulIdentifier", + "src": "30107:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", + "nativeSrc": "29766:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "29900:3:74", + "nodeType": "YulTypedName", + "src": "29900:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "29908:3:74", + "nodeType": "YulTypedName", + "src": "29908:3:74", + "type": "" + } + ], + "src": "29766:366:74" + }, + { + "body": { + "nativeSrc": "30309:248:74", + "nodeType": "YulBlock", + "src": "30309:248:74", + "statements": [ + { + "nativeSrc": "30319:26:74", + "nodeType": "YulAssignment", + "src": "30319:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30331:9:74", + "nodeType": "YulIdentifier", + "src": "30331:9:74" + }, + { + "kind": "number", + "nativeSrc": "30342:2:74", + "nodeType": "YulLiteral", + "src": "30342:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30327:3:74", + "nodeType": "YulIdentifier", + "src": "30327:3:74" + }, + "nativeSrc": "30327:18:74", + "nodeType": "YulFunctionCall", + "src": "30327:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30319:4:74", + "nodeType": "YulIdentifier", + "src": "30319:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30366:9:74", + "nodeType": "YulIdentifier", + "src": "30366:9:74" + }, + { + "kind": "number", + "nativeSrc": "30377:1:74", + "nodeType": "YulLiteral", + "src": "30377:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30362:3:74", + "nodeType": "YulIdentifier", + "src": "30362:3:74" + }, + "nativeSrc": "30362:17:74", + "nodeType": "YulFunctionCall", + "src": "30362:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30385:4:74", + "nodeType": "YulIdentifier", + "src": "30385:4:74" + }, + { + "name": "headStart", + "nativeSrc": "30391:9:74", + "nodeType": "YulIdentifier", + "src": "30391:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "30381:3:74", + "nodeType": "YulIdentifier", + "src": "30381:3:74" + }, + "nativeSrc": "30381:20:74", + "nodeType": "YulFunctionCall", + "src": "30381:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30355:6:74", + "nodeType": "YulIdentifier", + "src": "30355:6:74" + }, + "nativeSrc": "30355:47:74", + "nodeType": "YulFunctionCall", + "src": "30355:47:74" + }, + "nativeSrc": "30355:47:74", + "nodeType": "YulExpressionStatement", + "src": "30355:47:74" + }, + { + "nativeSrc": "30411:139:74", + "nodeType": "YulAssignment", + "src": "30411:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30545:4:74", + "nodeType": "YulIdentifier", + "src": "30545:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", + "nativeSrc": "30419:124:74", + "nodeType": "YulIdentifier", + "src": "30419:124:74" + }, + "nativeSrc": "30419:131:74", + "nodeType": "YulFunctionCall", + "src": "30419:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30411:4:74", + "nodeType": "YulIdentifier", + "src": "30411:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "30138:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "30289:9:74", + "nodeType": "YulTypedName", + "src": "30289:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "30304:4:74", + "nodeType": "YulTypedName", + "src": "30304:4:74", + "type": "" + } + ], + "src": "30138:419:74" + }, + { + "body": { + "nativeSrc": "30621:40:74", + "nodeType": "YulBlock", + "src": "30621:40:74", + "statements": [ + { + "nativeSrc": "30632:22:74", + "nodeType": "YulAssignment", + "src": "30632:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "30648:5:74", + "nodeType": "YulIdentifier", + "src": "30648:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "30642:5:74", + "nodeType": "YulIdentifier", + "src": "30642:5:74" + }, + "nativeSrc": "30642:12:74", + "nodeType": "YulFunctionCall", + "src": "30642:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "30632:6:74", + "nodeType": "YulIdentifier", + "src": "30632:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "30563:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "30604:5:74", + "nodeType": "YulTypedName", + "src": "30604:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "30614:6:74", + "nodeType": "YulTypedName", + "src": "30614:6:74", + "type": "" + } + ], + "src": "30563:98:74" + }, + { + "body": { + "nativeSrc": "30762:73:74", + "nodeType": "YulBlock", + "src": "30762:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30779:3:74", + "nodeType": "YulIdentifier", + "src": "30779:3:74" + }, + { + "name": "length", + "nativeSrc": "30784:6:74", + "nodeType": "YulIdentifier", + "src": "30784:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30772:6:74", + "nodeType": "YulIdentifier", + "src": "30772:6:74" + }, + "nativeSrc": "30772:19:74", + "nodeType": "YulFunctionCall", + "src": "30772:19:74" + }, + "nativeSrc": "30772:19:74", + "nodeType": "YulExpressionStatement", + "src": "30772:19:74" + }, + { + "nativeSrc": "30800:29:74", + "nodeType": "YulAssignment", + "src": "30800:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30819:3:74", + "nodeType": "YulIdentifier", + "src": "30819:3:74" + }, + { + "kind": "number", + "nativeSrc": "30824:4:74", + "nodeType": "YulLiteral", + "src": "30824:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30815:3:74", + "nodeType": "YulIdentifier", + "src": "30815:3:74" + }, + "nativeSrc": "30815:14:74", + "nodeType": "YulFunctionCall", + "src": "30815:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "30800:11:74", + "nodeType": "YulIdentifier", + "src": "30800:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "30667:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "30734:3:74", + "nodeType": "YulTypedName", + "src": "30734:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "30739:6:74", + "nodeType": "YulTypedName", + "src": "30739:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "30750:11:74", + "nodeType": "YulTypedName", + "src": "30750:11:74", + "type": "" + } + ], + "src": "30667:168:74" + }, + { + "body": { + "nativeSrc": "30931:283:74", + "nodeType": "YulBlock", + "src": "30931:283:74", + "statements": [ + { + "nativeSrc": "30941:52:74", + "nodeType": "YulVariableDeclaration", + "src": "30941:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "30987:5:74", + "nodeType": "YulIdentifier", + "src": "30987:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "30955:31:74", + "nodeType": "YulIdentifier", + "src": "30955:31:74" + }, + "nativeSrc": "30955:38:74", + "nodeType": "YulFunctionCall", + "src": "30955:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "30945:6:74", + "nodeType": "YulTypedName", + "src": "30945:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31002:77:74", + "nodeType": "YulAssignment", + "src": "31002:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31067:3:74", + "nodeType": "YulIdentifier", + "src": "31067:3:74" + }, + { + "name": "length", + "nativeSrc": "31072:6:74", + "nodeType": "YulIdentifier", + "src": "31072:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "31009:57:74", + "nodeType": "YulIdentifier", + "src": "31009:57:74" + }, + "nativeSrc": "31009:70:74", + "nodeType": "YulFunctionCall", + "src": "31009:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "31002:3:74", + "nodeType": "YulIdentifier", + "src": "31002:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "31127:5:74", + "nodeType": "YulIdentifier", + "src": "31127:5:74" + }, + { + "kind": "number", + "nativeSrc": "31134:4:74", + "nodeType": "YulLiteral", + "src": "31134:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31123:3:74", + "nodeType": "YulIdentifier", + "src": "31123:3:74" + }, + "nativeSrc": "31123:16:74", + "nodeType": "YulFunctionCall", + "src": "31123:16:74" + }, + { + "name": "pos", + "nativeSrc": "31141:3:74", + "nodeType": "YulIdentifier", + "src": "31141:3:74" + }, + { + "name": "length", + "nativeSrc": "31146:6:74", + "nodeType": "YulIdentifier", + "src": "31146:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "31088:34:74", + "nodeType": "YulIdentifier", + "src": "31088:34:74" + }, + "nativeSrc": "31088:65:74", + "nodeType": "YulFunctionCall", + "src": "31088:65:74" + }, + "nativeSrc": "31088:65:74", + "nodeType": "YulExpressionStatement", + "src": "31088:65:74" + }, + { + "nativeSrc": "31162:46:74", + "nodeType": "YulAssignment", + "src": "31162:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31173:3:74", + "nodeType": "YulIdentifier", + "src": "31173:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "31200:6:74", + "nodeType": "YulIdentifier", + "src": "31200:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "31178:21:74", + "nodeType": "YulIdentifier", + "src": "31178:21:74" + }, + "nativeSrc": "31178:29:74", + "nodeType": "YulFunctionCall", + "src": "31178:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31169:3:74", + "nodeType": "YulIdentifier", + "src": "31169:3:74" + }, + "nativeSrc": "31169:39:74", + "nodeType": "YulFunctionCall", + "src": "31169:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "31162:3:74", + "nodeType": "YulIdentifier", + "src": "31162:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "30841:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "30912:5:74", + "nodeType": "YulTypedName", + "src": "30912:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "30919:3:74", + "nodeType": "YulTypedName", + "src": "30919:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "30927:3:74", + "nodeType": "YulTypedName", + "src": "30927:3:74", + "type": "" + } + ], + "src": "30841:373:74" + }, + { + "body": { + "nativeSrc": "31420:440:74", + "nodeType": "YulBlock", + "src": "31420:440:74", + "statements": [ + { + "nativeSrc": "31430:27:74", + "nodeType": "YulAssignment", + "src": "31430:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31442:9:74", + "nodeType": "YulIdentifier", + "src": "31442:9:74" + }, + { + "kind": "number", + "nativeSrc": "31453:3:74", + "nodeType": "YulLiteral", + "src": "31453:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31438:3:74", + "nodeType": "YulIdentifier", + "src": "31438:3:74" + }, + "nativeSrc": "31438:19:74", + "nodeType": "YulFunctionCall", + "src": "31438:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31430:4:74", + "nodeType": "YulIdentifier", + "src": "31430:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "31511:6:74", + "nodeType": "YulIdentifier", + "src": "31511:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31524:9:74", + "nodeType": "YulIdentifier", + "src": "31524:9:74" + }, + { + "kind": "number", + "nativeSrc": "31535:1:74", + "nodeType": "YulLiteral", + "src": "31535:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31520:3:74", + "nodeType": "YulIdentifier", + "src": "31520:3:74" + }, + "nativeSrc": "31520:17:74", + "nodeType": "YulFunctionCall", + "src": "31520:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "31467:43:74", + "nodeType": "YulIdentifier", + "src": "31467:43:74" + }, + "nativeSrc": "31467:71:74", + "nodeType": "YulFunctionCall", + "src": "31467:71:74" + }, + "nativeSrc": "31467:71:74", + "nodeType": "YulExpressionStatement", + "src": "31467:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "31592:6:74", + "nodeType": "YulIdentifier", + "src": "31592:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31605:9:74", + "nodeType": "YulIdentifier", + "src": "31605:9:74" + }, + { + "kind": "number", + "nativeSrc": "31616:2:74", + "nodeType": "YulLiteral", + "src": "31616:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31601:3:74", + "nodeType": "YulIdentifier", + "src": "31601:3:74" + }, + "nativeSrc": "31601:18:74", + "nodeType": "YulFunctionCall", + "src": "31601:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "31548:43:74", + "nodeType": "YulIdentifier", + "src": "31548:43:74" + }, + "nativeSrc": "31548:72:74", + "nodeType": "YulFunctionCall", + "src": "31548:72:74" + }, + "nativeSrc": "31548:72:74", + "nodeType": "YulExpressionStatement", + "src": "31548:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "31674:6:74", + "nodeType": "YulIdentifier", + "src": "31674:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31687:9:74", + "nodeType": "YulIdentifier", + "src": "31687:9:74" + }, + { + "kind": "number", + "nativeSrc": "31698:2:74", + "nodeType": "YulLiteral", + "src": "31698:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31683:3:74", + "nodeType": "YulIdentifier", + "src": "31683:3:74" + }, + "nativeSrc": "31683:18:74", + "nodeType": "YulFunctionCall", + "src": "31683:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "31630:43:74", + "nodeType": "YulIdentifier", + "src": "31630:43:74" + }, + "nativeSrc": "31630:72:74", + "nodeType": "YulFunctionCall", + "src": "31630:72:74" + }, + "nativeSrc": "31630:72:74", + "nodeType": "YulExpressionStatement", + "src": "31630:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31723:9:74", + "nodeType": "YulIdentifier", + "src": "31723:9:74" + }, + { + "kind": "number", + "nativeSrc": "31734:2:74", + "nodeType": "YulLiteral", + "src": "31734:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31719:3:74", + "nodeType": "YulIdentifier", + "src": "31719:3:74" + }, + "nativeSrc": "31719:18:74", + "nodeType": "YulFunctionCall", + "src": "31719:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "31743:4:74", + "nodeType": "YulIdentifier", + "src": "31743:4:74" + }, + { + "name": "headStart", + "nativeSrc": "31749:9:74", + "nodeType": "YulIdentifier", + "src": "31749:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "31739:3:74", + "nodeType": "YulIdentifier", + "src": "31739:3:74" + }, + "nativeSrc": "31739:20:74", + "nodeType": "YulFunctionCall", + "src": "31739:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "31712:6:74", + "nodeType": "YulIdentifier", + "src": "31712:6:74" + }, + "nativeSrc": "31712:48:74", + "nodeType": "YulFunctionCall", + "src": "31712:48:74" + }, + "nativeSrc": "31712:48:74", + "nodeType": "YulExpressionStatement", + "src": "31712:48:74" + }, + { + "nativeSrc": "31769:84:74", + "nodeType": "YulAssignment", + "src": "31769:84:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "31839:6:74", + "nodeType": "YulIdentifier", + "src": "31839:6:74" + }, + { + "name": "tail", + "nativeSrc": "31848:4:74", + "nodeType": "YulIdentifier", + "src": "31848:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "31777:61:74", + "nodeType": "YulIdentifier", + "src": "31777:61:74" + }, + "nativeSrc": "31777:76:74", + "nodeType": "YulFunctionCall", + "src": "31777:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31769:4:74", + "nodeType": "YulIdentifier", + "src": "31769:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "31220:640:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "31368:9:74", + "nodeType": "YulTypedName", + "src": "31368:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "31380:6:74", + "nodeType": "YulTypedName", + "src": "31380:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "31388:6:74", + "nodeType": "YulTypedName", + "src": "31388:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "31396:6:74", + "nodeType": "YulTypedName", + "src": "31396:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "31404:6:74", + "nodeType": "YulTypedName", + "src": "31404:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "31415:4:74", + "nodeType": "YulTypedName", + "src": "31415:4:74", + "type": "" + } + ], + "src": "31220:640:74" + }, + { + "body": { + "nativeSrc": "31928:79:74", + "nodeType": "YulBlock", + "src": "31928:79:74", + "statements": [ + { + "nativeSrc": "31938:22:74", + "nodeType": "YulAssignment", + "src": "31938:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "31953:6:74", + "nodeType": "YulIdentifier", + "src": "31953:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "31947:5:74", + "nodeType": "YulIdentifier", + "src": "31947:5:74" + }, + "nativeSrc": "31947:13:74", + "nodeType": "YulFunctionCall", + "src": "31947:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "31938:5:74", + "nodeType": "YulIdentifier", + "src": "31938:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "31995:5:74", + "nodeType": "YulIdentifier", + "src": "31995:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "31969:25:74", + "nodeType": "YulIdentifier", + "src": "31969:25:74" + }, + "nativeSrc": "31969:32:74", + "nodeType": "YulFunctionCall", + "src": "31969:32:74" + }, + "nativeSrc": "31969:32:74", + "nodeType": "YulExpressionStatement", + "src": "31969:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "31866:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "31906:6:74", + "nodeType": "YulTypedName", + "src": "31906:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "31914:3:74", + "nodeType": "YulTypedName", + "src": "31914:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "31922:5:74", + "nodeType": "YulTypedName", + "src": "31922:5:74", + "type": "" + } + ], + "src": "31866:141:74" + }, + { + "body": { + "nativeSrc": "32089:273:74", + "nodeType": "YulBlock", + "src": "32089:273:74", + "statements": [ + { + "body": { + "nativeSrc": "32135:83:74", + "nodeType": "YulBlock", + "src": "32135:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "32137:77:74", + "nodeType": "YulIdentifier", + "src": "32137:77:74" + }, + "nativeSrc": "32137:79:74", + "nodeType": "YulFunctionCall", + "src": "32137:79:74" + }, + "nativeSrc": "32137:79:74", + "nodeType": "YulExpressionStatement", + "src": "32137:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "32110:7:74", + "nodeType": "YulIdentifier", + "src": "32110:7:74" + }, + { + "name": "headStart", + "nativeSrc": "32119:9:74", + "nodeType": "YulIdentifier", + "src": "32119:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "32106:3:74", + "nodeType": "YulIdentifier", + "src": "32106:3:74" + }, + "nativeSrc": "32106:23:74", + "nodeType": "YulFunctionCall", + "src": "32106:23:74" + }, + { + "kind": "number", + "nativeSrc": "32131:2:74", + "nodeType": "YulLiteral", + "src": "32131:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "32102:3:74", + "nodeType": "YulIdentifier", + "src": "32102:3:74" + }, + "nativeSrc": "32102:32:74", + "nodeType": "YulFunctionCall", + "src": "32102:32:74" + }, + "nativeSrc": "32099:119:74", + "nodeType": "YulIf", + "src": "32099:119:74" + }, + { + "nativeSrc": "32228:127:74", + "nodeType": "YulBlock", + "src": "32228:127:74", + "statements": [ + { + "nativeSrc": "32243:15:74", + "nodeType": "YulVariableDeclaration", + "src": "32243:15:74", + "value": { + "kind": "number", + "nativeSrc": "32257:1:74", + "nodeType": "YulLiteral", + "src": "32257:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32247:6:74", + "nodeType": "YulTypedName", + "src": "32247:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32272:73:74", + "nodeType": "YulAssignment", + "src": "32272:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32317:9:74", + "nodeType": "YulIdentifier", + "src": "32317:9:74" + }, + { + "name": "offset", + "nativeSrc": "32328:6:74", + "nodeType": "YulIdentifier", + "src": "32328:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32313:3:74", + "nodeType": "YulIdentifier", + "src": "32313:3:74" + }, + "nativeSrc": "32313:22:74", + "nodeType": "YulFunctionCall", + "src": "32313:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "32337:7:74", + "nodeType": "YulIdentifier", + "src": "32337:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "32282:30:74", + "nodeType": "YulIdentifier", + "src": "32282:30:74" + }, + "nativeSrc": "32282:63:74", + "nodeType": "YulFunctionCall", + "src": "32282:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "32272:6:74", + "nodeType": "YulIdentifier", + "src": "32272:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4_fromMemory", + "nativeSrc": "32013:349:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "32059:9:74", + "nodeType": "YulTypedName", + "src": "32059:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "32070:7:74", + "nodeType": "YulTypedName", + "src": "32070:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "32082:6:74", + "nodeType": "YulTypedName", + "src": "32082:6:74", + "type": "" + } + ], + "src": "32013:349:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256t_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_ENS_$4567_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ENS_$4567_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: caller is not token owne\")\n\n mstore(add(memPtr, 32), \"r or approved\")\n\n }\n\n function abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 64))\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: address zero is not a va\")\n\n mstore(add(memPtr, 32), \"lid owner\")\n\n }\n\n function abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: invalid token ID\")\n\n }\n\n function abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer from incorrect \")\n\n mstore(add(memPtr, 32), \"owner\")\n\n }\n\n function abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve to caller\")\n\n }\n\n function abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to non ERC721Re\")\n\n mstore(add(memPtr, 32), \"ceiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: mint to the zero address\")\n\n }\n\n function abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: token already minted\")\n\n }\n\n function abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c514610552578063f2fde38b14610582578063f6a74ed71461059e578063fca247ac146105ba576101cf565b8063c87b56dd146104a4578063d6e4fa86146104d4578063da8c229e14610504578063ddf7fcb014610534576101cf565b8063a7fc7a07116100de578063a7fc7a071461041e578063b88d4fde1461043a578063c1a287e214610456578063c475abff14610474576101cf565b806395d89b41146103b457806396e494e8146103d2578063a22cb46514610402576101cf565b80633f15457f116101715780636352211e1161014b5780636352211e1461032c57806370a082311461035c578063715018a61461038c5780638da5cb5b14610396576101cf565b80633f15457f146102d657806342842e0e146102f45780634e543b2614610310576101cf565b8063095ea7b3116101ad578063095ea7b3146102525780630e297b451461026e57806323b872dd1461029e57806328ed4f6c146102ba576101cf565b806301ffc9a7146101d457806306fdde0314610204578063081812fc14610222575b600080fd5b6101ee60048036038101906101e99190612812565b6105ea565b6040516101fb919061285a565b60405180910390f35b61020c610834565b6040516102199190612905565b60405180910390f35b61023c6004803603810190610237919061295d565b6108c6565b60405161024991906129cb565b60405180910390f35b61026c60048036038101906102679190612a12565b61090c565b005b61028860048036038101906102839190612a52565b610a23565b6040516102959190612ab4565b60405180910390f35b6102b860048036038101906102b39190612acf565b610a3b565b005b6102d460048036038101906102cf9190612b22565b610a9b565b005b6102de610c2f565b6040516102eb9190612bc1565b60405180910390f35b61030e60048036038101906103099190612acf565b610c55565b005b61032a60048036038101906103259190612bdc565b610c75565b005b6103466004803603810190610341919061295d565b610d11565b60405161035391906129cb565b60405180910390f35b61037660048036038101906103719190612bdc565b610d42565b6040516103839190612ab4565b60405180910390f35b610394610df9565b005b61039e610e0d565b6040516103ab91906129cb565b60405180910390f35b6103bc610e37565b6040516103c99190612905565b60405180910390f35b6103ec60048036038101906103e7919061295d565b610ec9565b6040516103f9919061285a565b60405180910390f35b61041c60048036038101906104179190612c35565b610ef6565b005b61043860048036038101906104339190612bdc565b610f0c565b005b610454600480360381019061044f9190612daa565b610fb2565b005b61045e611014565b60405161046b9190612ab4565b60405180910390f35b61048e60048036038101906104899190612e2d565b61101b565b60405161049b9190612ab4565b60405180910390f35b6104be60048036038101906104b9919061295d565b61124d565b6040516104cb9190612905565b60405180910390f35b6104ee60048036038101906104e9919061295d565b6112b5565b6040516104fb9190612ab4565b60405180910390f35b61051e60048036038101906105199190612bdc565b6112d2565b60405161052b919061285a565b60405180910390f35b61053c6112f2565b6040516105499190612e86565b60405180910390f35b61056c60048036038101906105679190612ea1565b6112f8565b604051610579919061285a565b60405180910390f35b61059c60048036038101906105979190612bdc565b61138c565b005b6105b860048036038101906105b39190612bdc565b61140f565b005b6105d460048036038101906105cf9190612a52565b6114b5565b6040516105e19190612ab4565b60405180910390f35b60007f01ffc9a7a5cef8baa21ed3c5c0d7e23accb804b619e9333b597f47a0d84076e27bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107c557507fb88d4fde60196325a28bb7f99a2582e0b46de55b18761e960c14ad7a320994657f42842e0eb38857a7775b4e7364b2775df7325074d088e7fb39590cd6281184ed7f23b872dd7302113369cda2901243429419bec145408fa8b352b3dd92b66c680b7fe985e9c5c6636c6879256001057b28ccac7718ef0ac56553ff9b926452cab8a37fa22cb4651ab9570f89bb516380c40ce76762284fb1f21337ceaf6adab99e7d4a7f081812fc55e34fdc7cf5d8b5cf4e3621fa6423fde952ec6ab24afdc0d85c0b2e7f095ea7b334ae44009aa867bfb386f5c3b4b443ac6f0ee573fa91c4608fbadfba7f6352211e6566aa027e75ac9dbf2423197fbd9b82b9d981a3ab367d355866aa1c7f70a08231b98ef4ca268c9cc3f6b4590e4bfec28280db06bb5d45e689f2a360be18181818181818187bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061082d57507f28ed4f6c74b219a5819055dfbcd2f1837c046c364cf01fabb6799e4f440d6f137bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606000805461084390612f10565b80601f016020809104026020016040519081016040528092919081815260200182805461086f90612f10565b80156108bc5780601f10610891576101008083540402835291602001916108bc565b820191906000526020600020905b81548152906001019060200180831161089f57829003601f168201915b5050505050905090565b60006108d1826114cd565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061091782611518565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610987576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097e90612fb3565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109a661159e565b73ffffffffffffffffffffffffffffffffffffffff1614806109d557506109d4816109cf61159e565b6112f8565b5b610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90613045565b60405180910390fd5b610a1e83836115a6565b505050565b6000610a32848484600061165f565b90509392505050565b610a4c610a4661159e565b82611935565b610a8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a82906130d7565b60405180910390fd5b610a968383836119ca565b505050565b3073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b8152600401610b0f9190612e86565b602060405180830381865afa158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b50919061310c565b73ffffffffffffffffffffffffffffffffffffffff1614610b7057600080fd5b610b7a3383611935565b610b8357600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59236009548460001b846040518463ffffffff1660e01b8152600401610be793929190613139565b6020604051808303816000875af1158015610c06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2a919061319c565b505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610c7083838360405180602001604052806000815250610fb2565b505050565b610c7d611cc3565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a600954836040518363ffffffff1660e01b8152600401610cdc9291906131c9565b600060405180830381600087803b158015610cf657600080fd5b505af1158015610d0a573d6000803e3d6000fd5b5050505050565b600042600760008481526020019081526020016000205411610d3257600080fd5b610d3b82611518565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da990613264565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610e01611cc3565b610e0b6000611d41565b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610e4690612f10565b80601f0160208091040260200160405190810160405280929190818152602001828054610e7290612f10565b8015610ebf5780601f10610e9457610100808354040283529160200191610ebf565b820191906000526020600020905b815481529060010190602001808311610ea257829003601f168201915b5050505050905090565b6000426276a7006007600085815260200190815260200160002054610eee91906132b3565b109050919050565b610f08610f0161159e565b8383611e07565b5050565b610f14611cc3565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d747460405160405180910390a250565b610fc3610fbd61159e565b83611935565b611002576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff9906130d7565b60405180910390fd5b61100e84848484611f73565b50505050565b6276a70081565b60003073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b81526004016110919190612e86565b602060405180830381865afa1580156110ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d2919061310c565b73ffffffffffffffffffffffffffffffffffffffff16146110f257600080fd5b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661114857600080fd5b426276a700600760008681526020019081526020016000205461116b91906132b3565b101561117657600080fd5b6276a7008261118591906132b3565b6276a7008360076000878152602001908152602001600020546111a891906132b3565b6111b291906132b3565b116111bc57600080fd5b816007600085815260200190815260200160002060008282546111df91906132b3565b92505081905550827f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd660076000868152602001908152602001600020546040516112299190612ab4565b60405180910390a26007600084815260200190815260200160002054905092915050565b6060611258826114cd565b6000611262611fcf565b9050600081511161128257604051806020016040528060008152506112ad565b8061128c84611fe6565b60405160200161129d929190613323565b6040516020818303038152906040525b915050919050565b600060076000838152602001908152602001600020549050919050565b600a6020528060005260406000206000915054906101000a900460ff1681565b60095481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611394611cc3565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611403576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fa906133b9565b60405180910390fd5b61140c81611d41565b50565b611417611cc3565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e8111360405160405180910390a250565b60006114c4848484600161165f565b90509392505050565b6114d6816120b4565b611515576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150c90613425565b60405180910390fd5b50565b600080611524836120f5565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611595576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158c90613425565b60405180910390fd5b80915050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661161983611518565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be36009546040518263ffffffff1660e01b81526004016116d59190612e86565b602060405180830381865afa1580156116f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611716919061310c565b73ffffffffffffffffffffffffffffffffffffffff161461173657600080fd5b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661178c57600080fd5b61179585610ec9565b61179e57600080fd5b6276a700426117ad91906132b3565b6276a70084426117bd91906132b3565b6117c791906132b3565b116117d157600080fd5b82426117dd91906132b3565b60076000878152602001908152602001600020819055506117fd856120b4565b1561180c5761180b85612132565b5b6118168486612280565b81156118c557600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59236009548760001b876040518463ffffffff1660e01b815260040161188093929190613139565b6020604051808303816000875af115801561189f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c3919061319c565b505b8373ffffffffffffffffffffffffffffffffffffffff16857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9854261190a91906132b3565b6040516119179190612ab4565b60405180910390a3824261192b91906132b3565b9050949350505050565b60008061194183610d11565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806119b057508373ffffffffffffffffffffffffffffffffffffffff16611998846108c6565b73ffffffffffffffffffffffffffffffffffffffff16145b806119c157506119c081856112f8565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166119ea82611518565b73ffffffffffffffffffffffffffffffffffffffff1614611a40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a37906134b7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611aaf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa690613549565b60405180910390fd5b611abc838383600161249d565b8273ffffffffffffffffffffffffffffffffffffffff16611adc82611518565b73ffffffffffffffffffffffffffffffffffffffff1614611b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b29906134b7565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611cbe83838360016124a3565b505050565b611ccb61159e565b73ffffffffffffffffffffffffffffffffffffffff16611ce9610e0d565b73ffffffffffffffffffffffffffffffffffffffff1614611d3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d36906135b5565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6c90613621565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611f66919061285a565b60405180910390a3505050565b611f7e8484846119ca565b611f8a848484846124a9565b611fc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc0906136b3565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b606060006001611ff584612630565b01905060008167ffffffffffffffff81111561201457612013612c7f565b5b6040519080825280601f01601f1916602001820160405280156120465781602001600182028036833780820191505090505b509050600082602001820190505b6001156120a9578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161209d5761209c6136d3565b5b04945060008503612054575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166120d6836120f5565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061213d82611518565b905061214d81600084600161249d565b61215682611518565b90506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461227c8160008460016124a3565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036122ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e69061374e565b60405180910390fd5b6122f8816120b4565b15612338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232f906137ba565b60405180910390fd5b61234660008383600161249d565b61234f816120b4565b1561238f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612386906137ba565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46124996000838360016124a3565b5050565b50505050565b50505050565b60006124ca8473ffffffffffffffffffffffffffffffffffffffff16612783565b15612623578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026124f361159e565b8786866040518563ffffffff1660e01b8152600401612515949392919061382f565b6020604051808303816000875af192505050801561255157506040513d601f19601f8201168201806040525081019061254e9190613890565b60015b6125d3573d8060008114612581576040519150601f19603f3d011682016040523d82523d6000602084013e612586565b606091505b5060008151036125cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125c2906136b3565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612628565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061268e577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381612684576126836136d3565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106126cb576d04ee2d6d415b85acef810000000083816126c1576126c06136d3565b5b0492506020810190505b662386f26fc1000083106126fa57662386f26fc1000083816126f0576126ef6136d3565b5b0492506010810190505b6305f5e1008310612723576305f5e1008381612719576127186136d3565b5b0492506008810190505b612710831061274857612710838161273e5761273d6136d3565b5b0492506004810190505b6064831061276b5760648381612761576127606136d3565b5b0492506002810190505b600a831061277a576001810190505b80915050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6127ef816127ba565b81146127fa57600080fd5b50565b60008135905061280c816127e6565b92915050565b600060208284031215612828576128276127b0565b5b6000612836848285016127fd565b91505092915050565b60008115159050919050565b6128548161283f565b82525050565b600060208201905061286f600083018461284b565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156128af578082015181840152602081019050612894565b60008484015250505050565b6000601f19601f8301169050919050565b60006128d782612875565b6128e18185612880565b93506128f1818560208601612891565b6128fa816128bb565b840191505092915050565b6000602082019050818103600083015261291f81846128cc565b905092915050565b6000819050919050565b61293a81612927565b811461294557600080fd5b50565b60008135905061295781612931565b92915050565b600060208284031215612973576129726127b0565b5b600061298184828501612948565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006129b58261298a565b9050919050565b6129c5816129aa565b82525050565b60006020820190506129e060008301846129bc565b92915050565b6129ef816129aa565b81146129fa57600080fd5b50565b600081359050612a0c816129e6565b92915050565b60008060408385031215612a2957612a286127b0565b5b6000612a37858286016129fd565b9250506020612a4885828601612948565b9150509250929050565b600080600060608486031215612a6b57612a6a6127b0565b5b6000612a7986828701612948565b9350506020612a8a868287016129fd565b9250506040612a9b86828701612948565b9150509250925092565b612aae81612927565b82525050565b6000602082019050612ac96000830184612aa5565b92915050565b600080600060608486031215612ae857612ae76127b0565b5b6000612af6868287016129fd565b9350506020612b07868287016129fd565b9250506040612b1886828701612948565b9150509250925092565b60008060408385031215612b3957612b386127b0565b5b6000612b4785828601612948565b9250506020612b58858286016129fd565b9150509250929050565b6000819050919050565b6000612b87612b82612b7d8461298a565b612b62565b61298a565b9050919050565b6000612b9982612b6c565b9050919050565b6000612bab82612b8e565b9050919050565b612bbb81612ba0565b82525050565b6000602082019050612bd66000830184612bb2565b92915050565b600060208284031215612bf257612bf16127b0565b5b6000612c00848285016129fd565b91505092915050565b612c128161283f565b8114612c1d57600080fd5b50565b600081359050612c2f81612c09565b92915050565b60008060408385031215612c4c57612c4b6127b0565b5b6000612c5a858286016129fd565b9250506020612c6b85828601612c20565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612cb7826128bb565b810181811067ffffffffffffffff82111715612cd657612cd5612c7f565b5b80604052505050565b6000612ce96127a6565b9050612cf58282612cae565b919050565b600067ffffffffffffffff821115612d1557612d14612c7f565b5b612d1e826128bb565b9050602081019050919050565b82818337600083830152505050565b6000612d4d612d4884612cfa565b612cdf565b905082815260208101848484011115612d6957612d68612c7a565b5b612d74848285612d2b565b509392505050565b600082601f830112612d9157612d90612c75565b5b8135612da1848260208601612d3a565b91505092915050565b60008060008060808587031215612dc457612dc36127b0565b5b6000612dd2878288016129fd565b9450506020612de3878288016129fd565b9350506040612df487828801612948565b925050606085013567ffffffffffffffff811115612e1557612e146127b5565b5b612e2187828801612d7c565b91505092959194509250565b60008060408385031215612e4457612e436127b0565b5b6000612e5285828601612948565b9250506020612e6385828601612948565b9150509250929050565b6000819050919050565b612e8081612e6d565b82525050565b6000602082019050612e9b6000830184612e77565b92915050565b60008060408385031215612eb857612eb76127b0565b5b6000612ec6858286016129fd565b9250506020612ed7858286016129fd565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612f2857607f821691505b602082108103612f3b57612f3a612ee1565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f9d602183612880565b9150612fa882612f41565b604082019050919050565b60006020820190508181036000830152612fcc81612f90565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b600061302f603d83612880565b915061303a82612fd3565b604082019050919050565b6000602082019050818103600083015261305e81613022565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006130c1602d83612880565b91506130cc82613065565b604082019050919050565b600060208201905081810360008301526130f0816130b4565b9050919050565b600081519050613106816129e6565b92915050565b600060208284031215613122576131216127b0565b5b6000613130848285016130f7565b91505092915050565b600060608201905061314e6000830186612e77565b61315b6020830185612e77565b61316860408301846129bc565b949350505050565b61317981612e6d565b811461318457600080fd5b50565b60008151905061319681613170565b92915050565b6000602082840312156131b2576131b16127b0565b5b60006131c084828501613187565b91505092915050565b60006040820190506131de6000830185612e77565b6131eb60208301846129bc565b9392505050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600061324e602983612880565b9150613259826131f2565b604082019050919050565b6000602082019050818103600083015261327d81613241565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006132be82612927565b91506132c983612927565b92508282019050808211156132e1576132e0613284565b5b92915050565b600081905092915050565b60006132fd82612875565b61330781856132e7565b9350613317818560208601612891565b80840191505092915050565b600061332f82856132f2565b915061333b82846132f2565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006133a3602683612880565b91506133ae82613347565b604082019050919050565b600060208201905081810360008301526133d281613396565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b600061340f601883612880565b915061341a826133d9565b602082019050919050565b6000602082019050818103600083015261343e81613402565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006134a1602583612880565b91506134ac82613445565b604082019050919050565b600060208201905081810360008301526134d081613494565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613533602483612880565b915061353e826134d7565b604082019050919050565b6000602082019050818103600083015261356281613526565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061359f602083612880565b91506135aa82613569565b602082019050919050565b600060208201905081810360008301526135ce81613592565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b600061360b601983612880565b9150613616826135d5565b602082019050919050565b6000602082019050818103600083015261363a816135fe565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061369d603283612880565b91506136a882613641565b604082019050919050565b600060208201905081810360008301526136cc81613690565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000613738602083612880565b915061374382613702565b602082019050919050565b600060208201905081810360008301526137678161372b565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006137a4601c83612880565b91506137af8261376e565b602082019050919050565b600060208201905081810360008301526137d381613797565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000613801826137da565b61380b81856137e5565b935061381b818560208601612891565b613824816128bb565b840191505092915050565b600060808201905061384460008301876129bc565b61385160208301866129bc565b61385e6040830185612aa5565b818103606083015261387081846137f6565b905095945050505050565b60008151905061388a816127e6565b92915050565b6000602082840312156138a6576138a56127b0565b5b60006138b48482850161387b565b9150509291505056fea2646970667358221220ce6ed99a9396048c9a4eb4b22ae2e47f25583cd77aa5e03c8c8401ee6fcbde8c64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1CF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x95D89B41 GT PUSH2 0x104 JUMPI DUP1 PUSH4 0xC87B56DD GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE985E9C5 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x552 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x582 JUMPI DUP1 PUSH4 0xF6A74ED7 EQ PUSH2 0x59E JUMPI DUP1 PUSH4 0xFCA247AC EQ PUSH2 0x5BA JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x4A4 JUMPI DUP1 PUSH4 0xD6E4FA86 EQ PUSH2 0x4D4 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x504 JUMPI DUP1 PUSH4 0xDDF7FCB0 EQ PUSH2 0x534 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0xA7FC7A07 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA7FC7A07 EQ PUSH2 0x41E JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x43A JUMPI DUP1 PUSH4 0xC1A287E2 EQ PUSH2 0x456 JUMPI DUP1 PUSH4 0xC475ABFF EQ PUSH2 0x474 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x3B4 JUMPI DUP1 PUSH4 0x96E494E8 EQ PUSH2 0x3D2 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x402 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x3F15457F GT PUSH2 0x171 JUMPI DUP1 PUSH4 0x6352211E GT PUSH2 0x14B JUMPI DUP1 PUSH4 0x6352211E EQ PUSH2 0x32C JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x35C JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x38C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x396 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x3F15457F EQ PUSH2 0x2D6 JUMPI DUP1 PUSH4 0x42842E0E EQ PUSH2 0x2F4 JUMPI DUP1 PUSH4 0x4E543B26 EQ PUSH2 0x310 JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x95EA7B3 GT PUSH2 0x1AD JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x252 JUMPI DUP1 PUSH4 0xE297B45 EQ PUSH2 0x26E JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x29E JUMPI DUP1 PUSH4 0x28ED4F6C EQ PUSH2 0x2BA JUMPI PUSH2 0x1CF JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x1D4 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x204 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x222 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E9 SWAP2 SWAP1 PUSH2 0x2812 JUMP JUMPDEST PUSH2 0x5EA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FB SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20C PUSH2 0x834 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x219 SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x237 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x8C6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x249 SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x267 SWAP2 SWAP1 PUSH2 0x2A12 JUMP JUMPDEST PUSH2 0x90C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x288 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x283 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST PUSH2 0xA23 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x295 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2B3 SWAP2 SWAP1 PUSH2 0x2ACF JUMP JUMPDEST PUSH2 0xA3B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2D4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2CF SWAP2 SWAP1 PUSH2 0x2B22 JUMP JUMPDEST PUSH2 0xA9B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DE PUSH2 0xC2F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EB SWAP2 SWAP1 PUSH2 0x2BC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x309 SWAP2 SWAP1 PUSH2 0x2ACF JUMP JUMPDEST PUSH2 0xC55 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x32A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x325 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xC75 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x346 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x341 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0xD11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x353 SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x376 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x371 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xD42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x383 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x394 PUSH2 0xDF9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x39E PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3AB SWAP2 SWAP1 PUSH2 0x29CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3BC PUSH2 0xE37 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C9 SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E7 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0xEC9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F9 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x417 SWAP2 SWAP1 PUSH2 0x2C35 JUMP JUMPDEST PUSH2 0xEF6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x438 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x433 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0xF0C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x454 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x44F SWAP2 SWAP1 PUSH2 0x2DAA JUMP JUMPDEST PUSH2 0xFB2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x45E PUSH2 0x1014 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x46B SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x48E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x489 SWAP2 SWAP1 PUSH2 0x2E2D JUMP JUMPDEST PUSH2 0x101B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x49B SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4BE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B9 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x124D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4CB SWAP2 SWAP1 PUSH2 0x2905 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4E9 SWAP2 SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH2 0x12B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4FB SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x51E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x519 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x12D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x52B SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x53C PUSH2 0x12F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x549 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x56C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x567 SWAP2 SWAP1 PUSH2 0x2EA1 JUMP JUMPDEST PUSH2 0x12F8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x579 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x59C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x597 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x138C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B3 SWAP2 SWAP1 PUSH2 0x2BDC JUMP JUMPDEST PUSH2 0x140F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5D4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5CF SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST PUSH2 0x14B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5E1 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A7A5CEF8BAA21ED3C5C0D7E23ACCB804B619E9333B597F47A0D84076E2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x7C5 JUMPI POP PUSH32 0xB88D4FDE60196325A28BB7F99A2582E0B46DE55B18761E960C14AD7A32099465 PUSH32 0x42842E0EB38857A7775B4E7364B2775DF7325074D088E7FB39590CD6281184ED PUSH32 0x23B872DD7302113369CDA2901243429419BEC145408FA8B352B3DD92B66C680B PUSH32 0xE985E9C5C6636C6879256001057B28CCAC7718EF0AC56553FF9B926452CAB8A3 PUSH32 0xA22CB4651AB9570F89BB516380C40CE76762284FB1F21337CEAF6ADAB99E7D4A PUSH32 0x81812FC55E34FDC7CF5D8B5CF4E3621FA6423FDE952EC6AB24AFDC0D85C0B2E PUSH32 0x95EA7B334AE44009AA867BFB386F5C3B4B443AC6F0EE573FA91C4608FBADFBA PUSH32 0x6352211E6566AA027E75AC9DBF2423197FBD9B82B9D981A3AB367D355866AA1C PUSH32 0x70A08231B98EF4CA268C9CC3F6B4590E4BFEC28280DB06BB5D45E689F2A360BE XOR XOR XOR XOR XOR XOR XOR XOR PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x82D JUMPI POP PUSH32 0x28ED4F6C74B219A5819055DFBCD2F1837C046C364CF01FABB6799E4F440D6F13 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x843 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x86F SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8BC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x891 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8BC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x89F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8D1 DUP3 PUSH2 0x14CD JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x917 DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x987 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x97E SWAP1 PUSH2 0x2FB3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x9A6 PUSH2 0x159E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x9D5 JUMPI POP PUSH2 0x9D4 DUP2 PUSH2 0x9CF PUSH2 0x159E JUMP JUMPDEST PUSH2 0x12F8 JUMP JUMPDEST JUMPDEST PUSH2 0xA14 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA0B SWAP1 PUSH2 0x3045 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA1E DUP4 DUP4 PUSH2 0x15A6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA32 DUP5 DUP5 DUP5 PUSH1 0x0 PUSH2 0x165F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xA4C PUSH2 0xA46 PUSH2 0x159E JUMP JUMPDEST DUP3 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0xA8B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA82 SWAP1 PUSH2 0x30D7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA96 DUP4 DUP4 DUP4 PUSH2 0x19CA JUMP JUMPDEST POP POP POP JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB0F SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB2C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xB50 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xB70 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB7A CALLER DUP4 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0xB83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 PUSH1 0x9 SLOAD DUP5 PUSH1 0x0 SHL DUP5 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBE7 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3139 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0xC06 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC2A SWAP2 SWAP1 PUSH2 0x319C JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0xC70 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0xFB2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0xC7D PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A PUSH1 0x9 SLOAD DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCDC SWAP3 SWAP2 SWAP1 PUSH2 0x31C9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xCF6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xD0A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH1 0x7 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD GT PUSH2 0xD32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3B DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xDB2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDA9 SWAP1 PUSH2 0x3264 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE01 PUSH2 0x1CC3 JUMP JUMPDEST PUSH2 0xE0B PUSH1 0x0 PUSH2 0x1D41 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0xE46 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xE72 SWAP1 PUSH2 0x2F10 JUMP JUMPDEST DUP1 ISZERO PUSH2 0xEBF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xE94 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xEBF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xEA2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH3 0x76A700 PUSH1 0x7 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xEEE SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST LT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF08 PUSH2 0xF01 PUSH2 0x159E JUMP JUMPDEST DUP4 DUP4 PUSH2 0x1E07 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0xF14 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x1 PUSH1 0xA PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xA8BB31534C0ED46F380CB867BD5C803A189CED9A764E30B3A4991A9901D7474 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH2 0xFC3 PUSH2 0xFBD PUSH2 0x159E JUMP JUMPDEST DUP4 PUSH2 0x1935 JUMP JUMPDEST PUSH2 0x1002 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFF9 SWAP1 PUSH2 0x30D7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x100E DUP5 DUP5 DUP5 DUP5 PUSH2 0x1F73 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH3 0x76A700 DUP2 JUMP JUMPDEST PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1091 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x10AE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x10D2 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x10F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x1148 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST TIMESTAMP PUSH3 0x76A700 PUSH1 0x7 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x116B SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST LT ISZERO PUSH2 0x1176 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 DUP3 PUSH2 0x1185 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH3 0x76A700 DUP4 PUSH1 0x7 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x11A8 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH2 0x11B2 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST GT PUSH2 0x11BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x7 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x11DF SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 PUSH32 0x9B87A00E30F1AC65D898F070F8A3488FE60517182D0A2098E1B4B93A54AA9BD6 PUSH1 0x7 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH1 0x40 MLOAD PUSH2 0x1229 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x7 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1258 DUP3 PUSH2 0x14CD JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1262 PUSH2 0x1FCF JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x1282 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x12AD JUMP JUMPDEST DUP1 PUSH2 0x128C DUP5 PUSH2 0x1FE6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x129D SWAP3 SWAP2 SWAP1 PUSH2 0x3323 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1394 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1403 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FA SWAP1 PUSH2 0x33B9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x140C DUP2 PUSH2 0x1D41 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x1417 PUSH2 0x1CC3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x33D83959BE2573F5453B12EB9D43B3499BC57D96BD2F067BA44803C859E81113 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C4 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x165F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x14D6 DUP2 PUSH2 0x20B4 JUMP JUMPDEST PUSH2 0x1515 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150C SWAP1 PUSH2 0x3425 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1524 DUP4 PUSH2 0x20F5 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1595 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x158C SWAP1 PUSH2 0x3425 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1619 DUP4 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH1 0x9 SLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16D5 SWAP2 SWAP1 PUSH2 0x2E86 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x16F2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1716 SWAP2 SWAP1 PUSH2 0x310C JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1736 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x178C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1795 DUP6 PUSH2 0xEC9 JUMP JUMPDEST PUSH2 0x179E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 TIMESTAMP PUSH2 0x17AD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH3 0x76A700 DUP5 TIMESTAMP PUSH2 0x17BD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH2 0x17C7 SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST GT PUSH2 0x17D1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 TIMESTAMP PUSH2 0x17DD SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x17FD DUP6 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x180C JUMPI PUSH2 0x180B DUP6 PUSH2 0x2132 JUMP JUMPDEST JUMPDEST PUSH2 0x1816 DUP5 DUP7 PUSH2 0x2280 JUMP JUMPDEST DUP2 ISZERO PUSH2 0x18C5 JUMPI PUSH1 0x8 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 PUSH1 0x9 SLOAD DUP8 PUSH1 0x0 SHL DUP8 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1880 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3139 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x189F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x18C3 SWAP2 SWAP1 PUSH2 0x319C JUMP JUMPDEST POP JUMPDEST DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH32 0xB3D987963D01B2F68493B4BDB130988F157EA43070D4AD840FEE0466ED9370D9 DUP6 TIMESTAMP PUSH2 0x190A SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1917 SWAP2 SWAP1 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP3 TIMESTAMP PUSH2 0x192B SWAP2 SWAP1 PUSH2 0x32B3 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1941 DUP4 PUSH2 0xD11 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x19B0 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1998 DUP5 PUSH2 0x8C6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST DUP1 PUSH2 0x19C1 JUMPI POP PUSH2 0x19C0 DUP2 DUP6 PUSH2 0x12F8 JUMP JUMPDEST JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x19EA DUP3 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1A40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A37 SWAP1 PUSH2 0x34B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1AAF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AA6 SWAP1 PUSH2 0x3549 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1ABC DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1ADC DUP3 PUSH2 0x1518 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1B32 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B29 SWAP1 PUSH2 0x34B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1CBE DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x1CCB PUSH2 0x159E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1CE9 PUSH2 0xE0D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1D3F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D36 SWAP1 PUSH2 0x35B5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x6 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1E75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E6C SWAP1 PUSH2 0x3621 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1F66 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x1F7E DUP5 DUP5 DUP5 PUSH2 0x19CA JUMP JUMPDEST PUSH2 0x1F8A DUP5 DUP5 DUP5 DUP5 PUSH2 0x24A9 JUMP JUMPDEST PUSH2 0x1FC9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1FC0 SWAP1 PUSH2 0x36B3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x1FF5 DUP5 PUSH2 0x2630 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2014 JUMPI PUSH2 0x2013 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2046 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x20A9 JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x209D JUMPI PUSH2 0x209C PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x2054 JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x20D6 DUP4 PUSH2 0x20F5 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x213D DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP PUSH2 0x214D DUP2 PUSH1 0x0 DUP5 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST PUSH2 0x2156 DUP3 PUSH2 0x1518 JUMP JUMPDEST SWAP1 POP PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE DUP2 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x227C DUP2 PUSH1 0x0 DUP5 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x22EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x22E6 SWAP1 PUSH2 0x374E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x22F8 DUP2 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x2338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x232F SWAP1 PUSH2 0x37BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x2346 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x249D JUMP JUMPDEST PUSH2 0x234F DUP2 PUSH2 0x20B4 JUMP JUMPDEST ISZERO PUSH2 0x238F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2386 SWAP1 PUSH2 0x37BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x2499 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x24A3 JUMP JUMPDEST POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24CA DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2783 JUMP JUMPDEST ISZERO PUSH2 0x2623 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x24F3 PUSH2 0x159E JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2515 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x382F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2551 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x254E SWAP2 SWAP1 PUSH2 0x3890 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x25D3 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2581 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2586 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x25CB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25C2 SWAP1 PUSH2 0x36B3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x2628 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x268E JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x2684 JUMPI PUSH2 0x2683 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x26CB JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x26C1 JUMPI PUSH2 0x26C0 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x26FA JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x26F0 JUMPI PUSH2 0x26EF PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x2723 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x2719 JUMPI PUSH2 0x2718 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x2748 JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x273E JUMPI PUSH2 0x273D PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x276B JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x2761 JUMPI PUSH2 0x2760 PUSH2 0x36D3 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x277A JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x27EF DUP2 PUSH2 0x27BA JUMP JUMPDEST DUP2 EQ PUSH2 0x27FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x280C DUP2 PUSH2 0x27E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2828 JUMPI PUSH2 0x2827 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2836 DUP5 DUP3 DUP6 ADD PUSH2 0x27FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2854 DUP2 PUSH2 0x283F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x286F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x284B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x28AF JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28D7 DUP3 PUSH2 0x2875 JUMP JUMPDEST PUSH2 0x28E1 DUP2 DUP6 PUSH2 0x2880 JUMP JUMPDEST SWAP4 POP PUSH2 0x28F1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST PUSH2 0x28FA DUP2 PUSH2 0x28BB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x291F DUP2 DUP5 PUSH2 0x28CC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x293A DUP2 PUSH2 0x2927 JUMP JUMPDEST DUP2 EQ PUSH2 0x2945 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2957 DUP2 PUSH2 0x2931 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2973 JUMPI PUSH2 0x2972 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2981 DUP5 DUP3 DUP6 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29B5 DUP3 PUSH2 0x298A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29C5 DUP2 PUSH2 0x29AA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x29E0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x29EF DUP2 PUSH2 0x29AA JUMP JUMPDEST DUP2 EQ PUSH2 0x29FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2A0C DUP2 PUSH2 0x29E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2A29 JUMPI PUSH2 0x2A28 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2A37 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2A48 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2A6B JUMPI PUSH2 0x2A6A PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2A79 DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2A8A DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2A9B DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x2AAE DUP2 PUSH2 0x2927 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2AC9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2AA5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2AE8 JUMPI PUSH2 0x2AE7 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2AF6 DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2B07 DUP7 DUP3 DUP8 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2B18 DUP7 DUP3 DUP8 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2B39 JUMPI PUSH2 0x2B38 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2B47 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2B58 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B87 PUSH2 0x2B82 PUSH2 0x2B7D DUP5 PUSH2 0x298A JUMP JUMPDEST PUSH2 0x2B62 JUMP JUMPDEST PUSH2 0x298A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B99 DUP3 PUSH2 0x2B6C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BAB DUP3 PUSH2 0x2B8E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2BBB DUP2 PUSH2 0x2BA0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2BD6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2BB2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BF2 JUMPI PUSH2 0x2BF1 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2C00 DUP5 DUP3 DUP6 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2C12 DUP2 PUSH2 0x283F JUMP JUMPDEST DUP2 EQ PUSH2 0x2C1D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2C2F DUP2 PUSH2 0x2C09 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2C4C JUMPI PUSH2 0x2C4B PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2C5A DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2C6B DUP6 DUP3 DUP7 ADD PUSH2 0x2C20 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x2CB7 DUP3 PUSH2 0x28BB JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2CD6 JUMPI PUSH2 0x2CD5 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CE9 PUSH2 0x27A6 JUMP JUMPDEST SWAP1 POP PUSH2 0x2CF5 DUP3 DUP3 PUSH2 0x2CAE JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2D15 JUMPI PUSH2 0x2D14 PUSH2 0x2C7F JUMP JUMPDEST JUMPDEST PUSH2 0x2D1E DUP3 PUSH2 0x28BB JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D4D PUSH2 0x2D48 DUP5 PUSH2 0x2CFA JUMP JUMPDEST PUSH2 0x2CDF JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2D69 JUMPI PUSH2 0x2D68 PUSH2 0x2C7A JUMP JUMPDEST JUMPDEST PUSH2 0x2D74 DUP5 DUP3 DUP6 PUSH2 0x2D2B JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2D91 JUMPI PUSH2 0x2D90 PUSH2 0x2C75 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2DA1 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2D3A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x2DC4 JUMPI PUSH2 0x2DC3 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2DD2 DUP8 DUP3 DUP9 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x2DE3 DUP8 DUP3 DUP9 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x2DF4 DUP8 DUP3 DUP9 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2E15 JUMPI PUSH2 0x2E14 PUSH2 0x27B5 JUMP JUMPDEST JUMPDEST PUSH2 0x2E21 DUP8 DUP3 DUP9 ADD PUSH2 0x2D7C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2E44 JUMPI PUSH2 0x2E43 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2E52 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2E63 DUP6 DUP3 DUP7 ADD PUSH2 0x2948 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E80 DUP2 PUSH2 0x2E6D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2E9B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2E77 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2EB8 JUMPI PUSH2 0x2EB7 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2EC6 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2ED7 DUP6 DUP3 DUP7 ADD PUSH2 0x29FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2F28 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x2F3B JUMPI PUSH2 0x2F3A PUSH2 0x2EE1 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F9D PUSH1 0x21 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x2FA8 DUP3 PUSH2 0x2F41 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2FCC DUP2 PUSH2 0x2F90 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x302F PUSH1 0x3D DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x303A DUP3 PUSH2 0x2FD3 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x305E DUP2 PUSH2 0x3022 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C1 PUSH1 0x2D DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x30CC DUP3 PUSH2 0x3065 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x30F0 DUP2 PUSH2 0x30B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3106 DUP2 PUSH2 0x29E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3122 JUMPI PUSH2 0x3121 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3130 DUP5 DUP3 DUP6 ADD PUSH2 0x30F7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x314E PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x315B PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x3168 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x3179 DUP2 PUSH2 0x2E6D JUMP JUMPDEST DUP2 EQ PUSH2 0x3184 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3196 DUP2 PUSH2 0x3170 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31B2 JUMPI PUSH2 0x31B1 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x31C0 DUP5 DUP3 DUP6 ADD PUSH2 0x3187 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x31DE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2E77 JUMP JUMPDEST PUSH2 0x31EB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x29BC JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324E PUSH1 0x29 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3259 DUP3 PUSH2 0x31F2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x327D DUP2 PUSH2 0x3241 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x32BE DUP3 PUSH2 0x2927 JUMP JUMPDEST SWAP2 POP PUSH2 0x32C9 DUP4 PUSH2 0x2927 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x32E1 JUMPI PUSH2 0x32E0 PUSH2 0x3284 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32FD DUP3 PUSH2 0x2875 JUMP JUMPDEST PUSH2 0x3307 DUP2 DUP6 PUSH2 0x32E7 JUMP JUMPDEST SWAP4 POP PUSH2 0x3317 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x332F DUP3 DUP6 PUSH2 0x32F2 JUMP JUMPDEST SWAP2 POP PUSH2 0x333B DUP3 DUP5 PUSH2 0x32F2 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33A3 PUSH1 0x26 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x33AE DUP3 PUSH2 0x3347 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x33D2 DUP2 PUSH2 0x3396 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x340F PUSH1 0x18 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x341A DUP3 PUSH2 0x33D9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x343E DUP2 PUSH2 0x3402 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34A1 PUSH1 0x25 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x34AC DUP3 PUSH2 0x3445 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x34D0 DUP2 PUSH2 0x3494 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3533 PUSH1 0x24 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x353E DUP3 PUSH2 0x34D7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3562 DUP2 PUSH2 0x3526 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x359F PUSH1 0x20 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x35AA DUP3 PUSH2 0x3569 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x35CE DUP2 PUSH2 0x3592 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x360B PUSH1 0x19 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3616 DUP3 PUSH2 0x35D5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x363A DUP2 PUSH2 0x35FE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x369D PUSH1 0x32 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x36A8 DUP3 PUSH2 0x3641 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x36CC DUP2 PUSH2 0x3690 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4552433732313A206D696E7420746F20746865207A65726F2061646472657373 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3738 PUSH1 0x20 DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x3743 DUP3 PUSH2 0x3702 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3767 DUP2 PUSH2 0x372B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20746F6B656E20616C7265616479206D696E74656400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x37A4 PUSH1 0x1C DUP4 PUSH2 0x2880 JUMP JUMPDEST SWAP2 POP PUSH2 0x37AF DUP3 PUSH2 0x376E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x37D3 DUP2 PUSH2 0x3797 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3801 DUP3 PUSH2 0x37DA JUMP JUMPDEST PUSH2 0x380B DUP2 DUP6 PUSH2 0x37E5 JUMP JUMPDEST SWAP4 POP PUSH2 0x381B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2891 JUMP JUMPDEST PUSH2 0x3824 DUP2 PUSH2 0x28BB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x3844 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x29BC JUMP JUMPDEST PUSH2 0x3851 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x29BC JUMP JUMPDEST PUSH2 0x385E PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x2AA5 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x3870 DUP2 DUP5 PUSH2 0x37F6 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x388A DUP2 PUSH2 0x27E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x38A6 JUMPI PUSH2 0x38A5 PUSH2 0x27B0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x38B4 DUP5 DUP3 DUP6 ADD PUSH2 0x387B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCE PUSH15 0xD99A9396048C9A4EB4B22AE2E47F25 PC EXTCODECOPY 0xD7 PUSH27 0xA5E03C8C8401EE6FCBDE8C64736F6C634300081900330000000000 ", + "sourceMap": "199:6817:9:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6751:263;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:98:55;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3935:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4999:185:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4612:296:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6559:186:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;372:14;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4974:149:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3717:119:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2989:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929::55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:50;;;:::i;:::-;;1201:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2633:102:55;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4093:209:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4169:153:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3267:160:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5189:276:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;607:46:9;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5971:486;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2801:276:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3903:110:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;558:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;454:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4388:162:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2074:198:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3485:166:9;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4540:189;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6751:263;6859:4;718:38;6894:32;;;:11;:32;;;;:72;;;;1303:60;1230:54;1161:50;1096:46;1033:44;981:33;925:37;877:29;827:31;:79;:135;:187;:250;:315;:384;:457;:536;6942:24;;;:11;:24;;;;6894:72;:113;;;;1431:37;6982:25;;;:11;:25;;;;6894:113;6875:132;;6751:263;;;:::o;2471:98:55:-;2525:13;2557:5;2550:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2471:98;:::o;3935:167::-;4011:7;4030:23;4045:7;4030:14;:23::i;:::-;4071:15;:24;4087:7;4071:24;;;;;;;;;;;;;;;;;;;;;4064:31;;3935:167;;;:::o;3468:406::-;3548:13;3564:23;3579:7;3564:14;:23::i;:::-;3548:39;;3611:5;3605:11;;:2;:11;;;3597:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3702:5;3686:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3711:37;3728:5;3735:12;:10;:12::i;:::-;3711:16;:37::i;:::-;3686:62;3665:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;3846:21;3855:2;3859:7;3846:8;:21::i;:::-;3538:336;3468:406;;:::o;4999:185:9:-;5114:7;5140:37;5150:2;5154:5;5161:8;5171:5;5140:9;:37::i;:::-;5133:44;;4999:185;;;;;:::o;4612:296:55:-;4771:41;4790:12;:10;:12::i;:::-;4804:7;4771:18;:41::i;:::-;4763:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;4873:28;4883:4;4889:2;4893:7;4873:9;:28::i;:::-;4612:296;;;:::o;6559:186:9:-;2588:4;2557:36;;:3;;;;;;;;;;;:9;;;2567:8;;2557:19;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:36;;;2549:45;;;;;;6644:34:::1;6663:10;6675:2;6644:18;:34::i;:::-;6636:43;;;::::0;::::1;;6689:3;;;;;;;;;;;:19;;;6709:8;;6727:2;6719:11;;6732:5;6689:49;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6559:186:::0;;:::o;372:14::-;;;;;;;;;;;;;:::o;4974:149:55:-;5077:39;5094:4;5100:2;5104:7;5077:39;;;;;;;;;;;;:16;:39::i;:::-;4974:149;;;:::o;3717:119:9:-;1094:13:50;:11;:13::i;:::-;3794:3:9::1;;;;;;;;;;;:15;;;3810:8;;3820;3794:35;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;3717:119:::0;:::o;2989:204::-;3084:7;3131:15;3111:8;:17;3120:7;3111:17;;;;;;;;;;;;:35;3103:44;;;;;;3164:22;3178:7;3164:13;:22::i;:::-;3157:29;;2989:204;;;:::o;1929::55:-;2001:7;2045:1;2028:19;;:5;:19;;;2020:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2110:9;:16;2120:5;2110:16;;;;;;;;;;;;;;;;2103:23;;1929:204;;;:::o;1824:101:50:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1201:85::-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;2633:102:55:-;2689:13;2721:7;2714:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:102;:::o;4093:209:9:-;4154:4;4280:15;646:7;4250:8;:12;4259:2;4250:12;;;;;;;;;;;;:27;;;;:::i;:::-;:45;4243:52;;4093:209;;;:::o;4169:153:55:-;4263:52;4282:12;:10;:12::i;:::-;4296:8;4306;4263:18;:52::i;:::-;4169:153;;:::o;3267:160:9:-;1094:13:50;:11;:13::i;:::-;3374:4:9::1;3348:11;:23;3360:10;3348:23;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;3409:10;3393:27;;;;;;;;;;;;3267:160:::0;:::o;5189:276:55:-;5319:41;5338:12;:10;:12::i;:::-;5352:7;5319:18;:41::i;:::-;5311:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;5420:38;5434:4;5440:2;5444:7;5453:4;5420:13;:38::i;:::-;5189:276;;;;:::o;607:46:9:-;646:7;607:46;:::o;5971:486::-;6085:7;2588:4;2557:36;;:3;;;;;;;;;;;:9;;;2567:8;;2557:19;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:36;;;2549:45;;;;;;2662:11:::1;:23;2674:10;2662:23;;;;;;;;;;;;;;;;;;;;;;;;;2654:32;;;::::0;::::1;;6143:15:::2;646:7;6112:8;:12;6121:2;6112:12;;;;;;;;;;;;:27;;;;:::i;:::-;:46;;6104:55;;;::::0;::::2;;646:7;6282:8;:23;;;;:::i;:::-;646:7;6256:8;6241;:12;6250:2;6241:12;;;;;;;;;;;;:23;;;;:::i;:::-;:38;;;;:::i;:::-;:64;6220:95;;;::::0;::::2;;6369:8;6353;:12;6362:2;6353:12;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;6404:2;6392:29;6408:8;:12;6417:2;6408:12;;;;;;;;;;;;6392:29;;;;;;:::i;:::-;;;;;;;;6438:8;:12;6447:2;6438:12;;;;;;;;;;;;6431:19;;5971:486:::0;;;;:::o;2801:276:55:-;2874:13;2899:23;2914:7;2899:14;:23::i;:::-;2933:21;2957:10;:8;:10::i;:::-;2933:34;;3008:1;2990:7;2984:21;:25;:86;;;;;;;;;;;;;;;;;3036:7;3045:18;:7;:16;:18::i;:::-;3019:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2984:86;2977:93;;;2801:276;;;:::o;3903:110:9:-;3968:7;3994:8;:12;4003:2;3994:12;;;;;;;;;;;;3987:19;;3903:110;;;:::o;558:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;454:23::-;;;;:::o;4388:162:55:-;4485:4;4508:18;:25;4527:5;4508:25;;;;;;;;;;;;;;;:35;4534:8;4508:35;;;;;;;;;;;;;;;;;;;;;;;;;4501:42;;4388:162;;;;:::o;2074:198:50:-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;3485:166:9:-;1094:13:50;:11;:13::i;:::-;3595:5:9::1;3569:11;:23;3581:10;3569:23;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;3633:10;3615:29;;;;;;;;;;;;3485:166:::0;:::o;4540:189::-;4660:7;4686:36;4696:2;4700:5;4707:8;4717:4;4686:9;:36::i;:::-;4679:43;;4540:189;;;;;:::o;13240:133:55:-;13321:16;13329:7;13321;:16::i;:::-;13313:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;13240:133;:::o;2190:219::-;2262:7;2281:13;2297:17;2306:7;2297:8;:17::i;:::-;2281:33;;2349:1;2332:19;;:5;:19;;;2324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2397:5;2390:12;;;2190:219;;;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;12572:171:55:-;12673:2;12646:15;:24;12662:7;12646:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12728:7;12724:2;12690:46;;12699:23;12714:7;12699:14;:23::i;:::-;12690:46;;;;;;;;;;;;12572:171;;:::o;5190:775:9:-;5351:7;2588:4;2557:36;;:3;;;;;;;;;;;:9;;;2567:8;;2557:19;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:36;;;2549:45;;;;;;2662:11:::1;:23;2674:10;2662:23;;;;;;;;;;;;;;;;;;;;;;;;;2654:32;;;::::0;::::1;;5378:13:::2;5388:2;5378:9;:13::i;:::-;5370:22;;;::::0;::::2;;646:7;5483:15;:30;;;;:::i;:::-;646:7;5441:8;5423:15;:26;;;;:::i;:::-;:41;;;;:::i;:::-;:90;5402:121;;;::::0;::::2;;5594:8;5576:15;:26;;;;:::i;:::-;5561:8;:12;5570:2;5561:12;;;;;;;;;;;:41;;;;5616:11;5624:2;5616:7;:11::i;:::-;5612:105;;;5697:9;5703:2;5697:5;:9::i;:::-;5612:105;5726:16;5732:5;5739:2;5726:5;:16::i;:::-;5756:14;5752:94;;;5786:3;;;;;;;;;;;:19;;;5806:8;;5824:2;5816:11;;5829:5;5786:49;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5752:94;5880:5;5861:53;;5876:2;5861:53;5905:8;5887:15;:26;;;;:::i;:::-;5861:53;;;;;;:::i;:::-;;;;;;;;5950:8;5932:15;:26;;;;:::i;:::-;5925:33;;5190:775:::0;;;;;;:::o;2097:301::-;2213:4;2229:13;2245:16;2253:7;2245;:16::i;:::-;2229:32;;2290:5;2279:16;;:7;:16;;;:63;;;;2335:7;2311:31;;:20;2323:7;2311:11;:20::i;:::-;:31;;;2279:63;:111;;;;2358:32;2375:5;2382:7;2358:16;:32::i;:::-;2279:111;2271:120;;;2097:301;;;;:::o;11257:1203:55:-;11381:4;11354:31;;:23;11369:7;11354:14;:23::i;:::-;:31;;;11346:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11459:1;11445:16;;:2;:16;;;11437:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;11513:42;11534:4;11540:2;11544:7;11553:1;11513:20;:42::i;:::-;11682:4;11655:31;;:23;11670:7;11655:14;:23::i;:::-;:31;;;11647:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11797:15;:24;11813:7;11797:24;;;;;;;;;;;;11790:31;;;;;;;;;;;12284:1;12265:9;:15;12275:4;12265:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;12316:1;12299:9;:13;12309:2;12299:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;12356:2;12337:7;:16;12345:7;12337:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12393:7;12389:2;12374:27;;12383:4;12374:27;;;;;;;;;;;;12412:41;12432:4;12438:2;12442:7;12451:1;12412:19;:41::i;:::-;11257:1203;;;:::o;1359:130:50:-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;2426:187::-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;12879:277:55:-;12999:8;12990:17;;:5;:17;;;12982:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13085:8;13047:18;:25;13066:5;13047:25;;;;;;;;;;;;;;;:35;13073:8;13047:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;13130:8;13108:41;;13123:5;13108:41;;;13140:8;13108:41;;;;;;:::i;:::-;;;;;;;;12879:277;;;:::o;6326:267::-;6438:28;6448:4;6454:2;6458:7;6438:9;:28::i;:::-;6484:47;6507:4;6513:2;6517:7;6526:4;6484:22;:47::i;:::-;6476:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;6326:267;;;;:::o;3319:92::-;3370:13;3395:9;;;;;;;;;;;;;;3319:92;:::o;447:696:61:-;503:13;552:14;589:1;569:17;580:5;569:10;:17::i;:::-;:21;552:38;;604:20;638:6;627:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;604:41;;659:11;785:6;781:2;777:15;769:6;765:28;758:35;;820:280;827:4;820:280;;;851:5;;;;;;;;990:8;985:2;978:5;974:14;969:30;964:3;956:44;1044:2;1035:11;;;;;;:::i;:::-;;;;;1077:1;1068:5;:10;820:280;1064:21;820:280;1120:6;1113:13;;;;;447:696;;;:::o;7120:126:55:-;7185:4;7237:1;7208:31;;:17;7217:7;7208:8;:17::i;:::-;:31;;;;7201:38;;7120:126;;;:::o;6702:115::-;6768:7;6794;:16;6802:7;6794:16;;;;;;;;;;;;;;;;;;;;;6787:23;;6702:115;;;:::o;10171:762::-;10230:13;10246:23;10261:7;10246:14;:23::i;:::-;10230:39;;10280:51;10301:5;10316:1;10320:7;10329:1;10280:20;:51::i;:::-;10441:23;10456:7;10441:14;:23::i;:::-;10433:31;;10509:15;:24;10525:7;10509:24;;;;;;;;;;;;10502:31;;;;;;;;;;;10769:1;10749:9;:16;10759:5;10749:16;;;;;;;;;;;;;;;;:21;;;;;;;;;;;10797:7;:16;10805:7;10797:16;;;;;;;;;;;;10790:23;;;;;;;;;;;10857:7;10853:1;10829:36;;10838:5;10829:36;;;;;;;;;;;;10876:50;10896:5;10911:1;10915:7;10924:1;10876:19;:50::i;:::-;10220:713;10171:762;:::o;8925:920::-;9018:1;9004:16;;:2;:16;;;8996:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9076:16;9084:7;9076;:16::i;:::-;9075:17;9067:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9136:48;9165:1;9169:2;9173:7;9182:1;9136:20;:48::i;:::-;9280:16;9288:7;9280;:16::i;:::-;9279:17;9271:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9688:1;9671:9;:13;9681:2;9671:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;9729:2;9710:7;:16;9718:7;9710:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9772:7;9768:2;9747:33;;9764:1;9747:33;;;;;;;;;;;;9791:47;9819:1;9823:2;9827:7;9836:1;9791:19;:47::i;:::-;8925:920;;:::o;15472:116::-;;;;;:::o;16294:115::-;;;;;:::o;13925:831::-;14074:4;14094:15;:2;:13;;;:15::i;:::-;14090:660;;;14145:2;14129:36;;;14166:12;:10;:12::i;:::-;14180:4;14186:7;14195:4;14129:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;14125:573;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14384:1;14367:6;:13;:18;14363:321;;14409:60;;;;;;;;;;:::i;:::-;;;;;;;;14363:321;14636:6;14630:13;14621:6;14617:2;14613:15;14606:38;14125:573;14260:41;;;14250:51;;;:6;:51;;;;14243:58;;;;;14090:660;14735:4;14728:11;;13925:831;;;;;;;:::o;10139:916:64:-;10192:7;10211:14;10228:1;10211:18;;10276:8;10267:5;:17;10263:103;;10313:8;10304:17;;;;;;:::i;:::-;;;;;10349:2;10339:12;;;;10263:103;10392:8;10383:5;:17;10379:103;;10429:8;10420:17;;;;;;:::i;:::-;;;;;10465:2;10455:12;;;;10379:103;10508:8;10499:5;:17;10495:103;;10545:8;10536:17;;;;;;:::i;:::-;;;;;10581:2;10571:12;;;;10495:103;10624:7;10615:5;:16;10611:100;;10660:7;10651:16;;;;;;:::i;:::-;;;;;10695:1;10685:11;;;;10611:100;10737:7;10728:5;:16;10724:100;;10773:7;10764:16;;;;;;:::i;:::-;;;;;10808:1;10798:11;;;;10724:100;10850:7;10841:5;:16;10837:100;;10886:7;10877:16;;;;;;:::i;:::-;;;;;10921:1;10911:11;;;;10837:100;10963:7;10954:5;:16;10950:66;;11000:1;10990:11;;;;10950:66;11042:6;11035:13;;;10139:916;;;:::o;1412:320:59:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:99::-;1570:6;1604:5;1598:12;1588:22;;1518:99;;;:::o;1623:169::-;1707:11;1741:6;1736:3;1729:19;1781:4;1776:3;1772:14;1757:29;;1623:169;;;;:::o;1798:248::-;1880:1;1890:113;1904:6;1901:1;1898:13;1890:113;;;1989:1;1984:3;1980:11;1974:18;1970:1;1965:3;1961:11;1954:39;1926:2;1923:1;1919:10;1914:15;;1890:113;;;2037:1;2028:6;2023:3;2019:16;2012:27;1860:186;1798:248;;;:::o;2052:102::-;2093:6;2144:2;2140:7;2135:2;2128:5;2124:14;2120:28;2110:38;;2052:102;;;:::o;2160:377::-;2248:3;2276:39;2309:5;2276:39;:::i;:::-;2331:71;2395:6;2390:3;2331:71;:::i;:::-;2324:78;;2411:65;2469:6;2464:3;2457:4;2450:5;2446:16;2411:65;:::i;:::-;2501:29;2523:6;2501:29;:::i;:::-;2496:3;2492:39;2485:46;;2252:285;2160:377;;;;:::o;2543:313::-;2656:4;2694:2;2683:9;2679:18;2671:26;;2743:9;2737:4;2733:20;2729:1;2718:9;2714:17;2707:47;2771:78;2844:4;2835:6;2771:78;:::i;:::-;2763:86;;2543:313;;;;:::o;2862:77::-;2899:7;2928:5;2917:16;;2862:77;;;:::o;2945:122::-;3018:24;3036:5;3018:24;:::i;:::-;3011:5;3008:35;2998:63;;3057:1;3054;3047:12;2998:63;2945:122;:::o;3073:139::-;3119:5;3157:6;3144:20;3135:29;;3173:33;3200:5;3173:33;:::i;:::-;3073:139;;;;:::o;3218:329::-;3277:6;3326:2;3314:9;3305:7;3301:23;3297:32;3294:119;;;3332:79;;:::i;:::-;3294:119;3452:1;3477:53;3522:7;3513:6;3502:9;3498:22;3477:53;:::i;:::-;3467:63;;3423:117;3218:329;;;;:::o;3553:126::-;3590:7;3630:42;3623:5;3619:54;3608:65;;3553:126;;;:::o;3685:96::-;3722:7;3751:24;3769:5;3751:24;:::i;:::-;3740:35;;3685:96;;;:::o;3787:118::-;3874:24;3892:5;3874:24;:::i;:::-;3869:3;3862:37;3787:118;;:::o;3911:222::-;4004:4;4042:2;4031:9;4027:18;4019:26;;4055:71;4123:1;4112:9;4108:17;4099:6;4055:71;:::i;:::-;3911:222;;;;:::o;4139:122::-;4212:24;4230:5;4212:24;:::i;:::-;4205:5;4202:35;4192:63;;4251:1;4248;4241:12;4192:63;4139:122;:::o;4267:139::-;4313:5;4351:6;4338:20;4329:29;;4367:33;4394:5;4367:33;:::i;:::-;4267:139;;;;:::o;4412:474::-;4480:6;4488;4537:2;4525:9;4516:7;4512:23;4508:32;4505:119;;;4543:79;;:::i;:::-;4505:119;4663:1;4688:53;4733:7;4724:6;4713:9;4709:22;4688:53;:::i;:::-;4678:63;;4634:117;4790:2;4816:53;4861:7;4852:6;4841:9;4837:22;4816:53;:::i;:::-;4806:63;;4761:118;4412:474;;;;;:::o;4892:619::-;4969:6;4977;4985;5034:2;5022:9;5013:7;5009:23;5005:32;5002:119;;;5040:79;;:::i;:::-;5002:119;5160:1;5185:53;5230:7;5221:6;5210:9;5206:22;5185:53;:::i;:::-;5175:63;;5131:117;5287:2;5313:53;5358:7;5349:6;5338:9;5334:22;5313:53;:::i;:::-;5303:63;;5258:118;5415:2;5441:53;5486:7;5477:6;5466:9;5462:22;5441:53;:::i;:::-;5431:63;;5386:118;4892:619;;;;;:::o;5517:118::-;5604:24;5622:5;5604:24;:::i;:::-;5599:3;5592:37;5517:118;;:::o;5641:222::-;5734:4;5772:2;5761:9;5757:18;5749:26;;5785:71;5853:1;5842:9;5838:17;5829:6;5785:71;:::i;:::-;5641:222;;;;:::o;5869:619::-;5946:6;5954;5962;6011:2;5999:9;5990:7;5986:23;5982:32;5979:119;;;6017:79;;:::i;:::-;5979:119;6137:1;6162:53;6207:7;6198:6;6187:9;6183:22;6162:53;:::i;:::-;6152:63;;6108:117;6264:2;6290:53;6335:7;6326:6;6315:9;6311:22;6290:53;:::i;:::-;6280:63;;6235:118;6392:2;6418:53;6463:7;6454:6;6443:9;6439:22;6418:53;:::i;:::-;6408:63;;6363:118;5869:619;;;;;:::o;6494:474::-;6562:6;6570;6619:2;6607:9;6598:7;6594:23;6590:32;6587:119;;;6625:79;;:::i;:::-;6587:119;6745:1;6770:53;6815:7;6806:6;6795:9;6791:22;6770:53;:::i;:::-;6760:63;;6716:117;6872:2;6898:53;6943:7;6934:6;6923:9;6919:22;6898:53;:::i;:::-;6888:63;;6843:118;6494:474;;;;;:::o;6974:60::-;7002:3;7023:5;7016:12;;6974:60;;;:::o;7040:142::-;7090:9;7123:53;7141:34;7150:24;7168:5;7150:24;:::i;:::-;7141:34;:::i;:::-;7123:53;:::i;:::-;7110:66;;7040:142;;;:::o;7188:126::-;7238:9;7271:37;7302:5;7271:37;:::i;:::-;7258:50;;7188:126;;;:::o;7320:138::-;7382:9;7415:37;7446:5;7415:37;:::i;:::-;7402:50;;7320:138;;;:::o;7464:155::-;7563:49;7606:5;7563:49;:::i;:::-;7558:3;7551:62;7464:155;;:::o;7625:246::-;7730:4;7768:2;7757:9;7753:18;7745:26;;7781:83;7861:1;7850:9;7846:17;7837:6;7781:83;:::i;:::-;7625:246;;;;:::o;7877:329::-;7936:6;7985:2;7973:9;7964:7;7960:23;7956:32;7953:119;;;7991:79;;:::i;:::-;7953:119;8111:1;8136:53;8181:7;8172:6;8161:9;8157:22;8136:53;:::i;:::-;8126:63;;8082:117;7877:329;;;;:::o;8212:116::-;8282:21;8297:5;8282:21;:::i;:::-;8275:5;8272:32;8262:60;;8318:1;8315;8308:12;8262:60;8212:116;:::o;8334:133::-;8377:5;8415:6;8402:20;8393:29;;8431:30;8455:5;8431:30;:::i;:::-;8334:133;;;;:::o;8473:468::-;8538:6;8546;8595:2;8583:9;8574:7;8570:23;8566:32;8563:119;;;8601:79;;:::i;:::-;8563:119;8721:1;8746:53;8791:7;8782:6;8771:9;8767:22;8746:53;:::i;:::-;8736:63;;8692:117;8848:2;8874:50;8916:7;8907:6;8896:9;8892:22;8874:50;:::i;:::-;8864:60;;8819:115;8473:468;;;;;:::o;8947:117::-;9056:1;9053;9046:12;9070:117;9179:1;9176;9169:12;9193:180;9241:77;9238:1;9231:88;9338:4;9335:1;9328:15;9362:4;9359:1;9352:15;9379:281;9462:27;9484:4;9462:27;:::i;:::-;9454:6;9450:40;9592:6;9580:10;9577:22;9556:18;9544:10;9541:34;9538:62;9535:88;;;9603:18;;:::i;:::-;9535:88;9643:10;9639:2;9632:22;9422:238;9379:281;;:::o;9666:129::-;9700:6;9727:20;;:::i;:::-;9717:30;;9756:33;9784:4;9776:6;9756:33;:::i;:::-;9666:129;;;:::o;9801:307::-;9862:4;9952:18;9944:6;9941:30;9938:56;;;9974:18;;:::i;:::-;9938:56;10012:29;10034:6;10012:29;:::i;:::-;10004:37;;10096:4;10090;10086:15;10078:23;;9801:307;;;:::o;10114:148::-;10212:6;10207:3;10202;10189:30;10253:1;10244:6;10239:3;10235:16;10228:27;10114:148;;;:::o;10268:423::-;10345:5;10370:65;10386:48;10427:6;10386:48;:::i;:::-;10370:65;:::i;:::-;10361:74;;10458:6;10451:5;10444:21;10496:4;10489:5;10485:16;10534:3;10525:6;10520:3;10516:16;10513:25;10510:112;;;10541:79;;:::i;:::-;10510:112;10631:54;10678:6;10673:3;10668;10631:54;:::i;:::-;10351:340;10268:423;;;;;:::o;10710:338::-;10765:5;10814:3;10807:4;10799:6;10795:17;10791:27;10781:122;;10822:79;;:::i;:::-;10781:122;10939:6;10926:20;10964:78;11038:3;11030:6;11023:4;11015:6;11011:17;10964:78;:::i;:::-;10955:87;;10771:277;10710:338;;;;:::o;11054:943::-;11149:6;11157;11165;11173;11222:3;11210:9;11201:7;11197:23;11193:33;11190:120;;;11229:79;;:::i;:::-;11190:120;11349:1;11374:53;11419:7;11410:6;11399:9;11395:22;11374:53;:::i;:::-;11364:63;;11320:117;11476:2;11502:53;11547:7;11538:6;11527:9;11523:22;11502:53;:::i;:::-;11492:63;;11447:118;11604:2;11630:53;11675:7;11666:6;11655:9;11651:22;11630:53;:::i;:::-;11620:63;;11575:118;11760:2;11749:9;11745:18;11732:32;11791:18;11783:6;11780:30;11777:117;;;11813:79;;:::i;:::-;11777:117;11918:62;11972:7;11963:6;11952:9;11948:22;11918:62;:::i;:::-;11908:72;;11703:287;11054:943;;;;;;;:::o;12003:474::-;12071:6;12079;12128:2;12116:9;12107:7;12103:23;12099:32;12096:119;;;12134:79;;:::i;:::-;12096:119;12254:1;12279:53;12324:7;12315:6;12304:9;12300:22;12279:53;:::i;:::-;12269:63;;12225:117;12381:2;12407:53;12452:7;12443:6;12432:9;12428:22;12407:53;:::i;:::-;12397:63;;12352:118;12003:474;;;;;:::o;12483:77::-;12520:7;12549:5;12538:16;;12483:77;;;:::o;12566:118::-;12653:24;12671:5;12653:24;:::i;:::-;12648:3;12641:37;12566:118;;:::o;12690:222::-;12783:4;12821:2;12810:9;12806:18;12798:26;;12834:71;12902:1;12891:9;12887:17;12878:6;12834:71;:::i;:::-;12690:222;;;;:::o;12918:474::-;12986:6;12994;13043:2;13031:9;13022:7;13018:23;13014:32;13011:119;;;13049:79;;:::i;:::-;13011:119;13169:1;13194:53;13239:7;13230:6;13219:9;13215:22;13194:53;:::i;:::-;13184:63;;13140:117;13296:2;13322:53;13367:7;13358:6;13347:9;13343:22;13322:53;:::i;:::-;13312:63;;13267:118;12918:474;;;;;:::o;13398:180::-;13446:77;13443:1;13436:88;13543:4;13540:1;13533:15;13567:4;13564:1;13557:15;13584:320;13628:6;13665:1;13659:4;13655:12;13645:22;;13712:1;13706:4;13702:12;13733:18;13723:81;;13789:4;13781:6;13777:17;13767:27;;13723:81;13851:2;13843:6;13840:14;13820:18;13817:38;13814:84;;13870:18;;:::i;:::-;13814:84;13635:269;13584:320;;;:::o;13910:220::-;14050:34;14046:1;14038:6;14034:14;14027:58;14119:3;14114:2;14106:6;14102:15;14095:28;13910:220;:::o;14136:366::-;14278:3;14299:67;14363:2;14358:3;14299:67;:::i;:::-;14292:74;;14375:93;14464:3;14375:93;:::i;:::-;14493:2;14488:3;14484:12;14477:19;;14136:366;;;:::o;14508:419::-;14674:4;14712:2;14701:9;14697:18;14689:26;;14761:9;14755:4;14751:20;14747:1;14736:9;14732:17;14725:47;14789:131;14915:4;14789:131;:::i;:::-;14781:139;;14508:419;;;:::o;14933:248::-;15073:34;15069:1;15061:6;15057:14;15050:58;15142:31;15137:2;15129:6;15125:15;15118:56;14933:248;:::o;15187:366::-;15329:3;15350:67;15414:2;15409:3;15350:67;:::i;:::-;15343:74;;15426:93;15515:3;15426:93;:::i;:::-;15544:2;15539:3;15535:12;15528:19;;15187:366;;;:::o;15559:419::-;15725:4;15763:2;15752:9;15748:18;15740:26;;15812:9;15806:4;15802:20;15798:1;15787:9;15783:17;15776:47;15840:131;15966:4;15840:131;:::i;:::-;15832:139;;15559:419;;;:::o;15984:232::-;16124:34;16120:1;16112:6;16108:14;16101:58;16193:15;16188:2;16180:6;16176:15;16169:40;15984:232;:::o;16222:366::-;16364:3;16385:67;16449:2;16444:3;16385:67;:::i;:::-;16378:74;;16461:93;16550:3;16461:93;:::i;:::-;16579:2;16574:3;16570:12;16563:19;;16222:366;;;:::o;16594:419::-;16760:4;16798:2;16787:9;16783:18;16775:26;;16847:9;16841:4;16837:20;16833:1;16822:9;16818:17;16811:47;16875:131;17001:4;16875:131;:::i;:::-;16867:139;;16594:419;;;:::o;17019:143::-;17076:5;17107:6;17101:13;17092:22;;17123:33;17150:5;17123:33;:::i;:::-;17019:143;;;;:::o;17168:351::-;17238:6;17287:2;17275:9;17266:7;17262:23;17258:32;17255:119;;;17293:79;;:::i;:::-;17255:119;17413:1;17438:64;17494:7;17485:6;17474:9;17470:22;17438:64;:::i;:::-;17428:74;;17384:128;17168:351;;;;:::o;17525:442::-;17674:4;17712:2;17701:9;17697:18;17689:26;;17725:71;17793:1;17782:9;17778:17;17769:6;17725:71;:::i;:::-;17806:72;17874:2;17863:9;17859:18;17850:6;17806:72;:::i;:::-;17888;17956:2;17945:9;17941:18;17932:6;17888:72;:::i;:::-;17525:442;;;;;;:::o;17973:122::-;18046:24;18064:5;18046:24;:::i;:::-;18039:5;18036:35;18026:63;;18085:1;18082;18075:12;18026:63;17973:122;:::o;18101:143::-;18158:5;18189:6;18183:13;18174:22;;18205:33;18232:5;18205:33;:::i;:::-;18101:143;;;;:::o;18250:351::-;18320:6;18369:2;18357:9;18348:7;18344:23;18340:32;18337:119;;;18375:79;;:::i;:::-;18337:119;18495:1;18520:64;18576:7;18567:6;18556:9;18552:22;18520:64;:::i;:::-;18510:74;;18466:128;18250:351;;;;:::o;18607:332::-;18728:4;18766:2;18755:9;18751:18;18743:26;;18779:71;18847:1;18836:9;18832:17;18823:6;18779:71;:::i;:::-;18860:72;18928:2;18917:9;18913:18;18904:6;18860:72;:::i;:::-;18607:332;;;;;:::o;18945:228::-;19085:34;19081:1;19073:6;19069:14;19062:58;19154:11;19149:2;19141:6;19137:15;19130:36;18945:228;:::o;19179:366::-;19321:3;19342:67;19406:2;19401:3;19342:67;:::i;:::-;19335:74;;19418:93;19507:3;19418:93;:::i;:::-;19536:2;19531:3;19527:12;19520:19;;19179:366;;;:::o;19551:419::-;19717:4;19755:2;19744:9;19740:18;19732:26;;19804:9;19798:4;19794:20;19790:1;19779:9;19775:17;19768:47;19832:131;19958:4;19832:131;:::i;:::-;19824:139;;19551:419;;;:::o;19976:180::-;20024:77;20021:1;20014:88;20121:4;20118:1;20111:15;20145:4;20142:1;20135:15;20162:191;20202:3;20221:20;20239:1;20221:20;:::i;:::-;20216:25;;20255:20;20273:1;20255:20;:::i;:::-;20250:25;;20298:1;20295;20291:9;20284:16;;20319:3;20316:1;20313:10;20310:36;;;20326:18;;:::i;:::-;20310:36;20162:191;;;;:::o;20359:148::-;20461:11;20498:3;20483:18;;20359:148;;;;:::o;20513:390::-;20619:3;20647:39;20680:5;20647:39;:::i;:::-;20702:89;20784:6;20779:3;20702:89;:::i;:::-;20695:96;;20800:65;20858:6;20853:3;20846:4;20839:5;20835:16;20800:65;:::i;:::-;20890:6;20885:3;20881:16;20874:23;;20623:280;20513:390;;;;:::o;20909:435::-;21089:3;21111:95;21202:3;21193:6;21111:95;:::i;:::-;21104:102;;21223:95;21314:3;21305:6;21223:95;:::i;:::-;21216:102;;21335:3;21328:10;;20909:435;;;;;:::o;21350:225::-;21490:34;21486:1;21478:6;21474:14;21467:58;21559:8;21554:2;21546:6;21542:15;21535:33;21350:225;:::o;21581:366::-;21723:3;21744:67;21808:2;21803:3;21744:67;:::i;:::-;21737:74;;21820:93;21909:3;21820:93;:::i;:::-;21938:2;21933:3;21929:12;21922:19;;21581:366;;;:::o;21953:419::-;22119:4;22157:2;22146:9;22142:18;22134:26;;22206:9;22200:4;22196:20;22192:1;22181:9;22177:17;22170:47;22234:131;22360:4;22234:131;:::i;:::-;22226:139;;21953:419;;;:::o;22378:174::-;22518:26;22514:1;22506:6;22502:14;22495:50;22378:174;:::o;22558:366::-;22700:3;22721:67;22785:2;22780:3;22721:67;:::i;:::-;22714:74;;22797:93;22886:3;22797:93;:::i;:::-;22915:2;22910:3;22906:12;22899:19;;22558:366;;;:::o;22930:419::-;23096:4;23134:2;23123:9;23119:18;23111:26;;23183:9;23177:4;23173:20;23169:1;23158:9;23154:17;23147:47;23211:131;23337:4;23211:131;:::i;:::-;23203:139;;22930:419;;;:::o;23355:224::-;23495:34;23491:1;23483:6;23479:14;23472:58;23564:7;23559:2;23551:6;23547:15;23540:32;23355:224;:::o;23585:366::-;23727:3;23748:67;23812:2;23807:3;23748:67;:::i;:::-;23741:74;;23824:93;23913:3;23824:93;:::i;:::-;23942:2;23937:3;23933:12;23926:19;;23585:366;;;:::o;23957:419::-;24123:4;24161:2;24150:9;24146:18;24138:26;;24210:9;24204:4;24200:20;24196:1;24185:9;24181:17;24174:47;24238:131;24364:4;24238:131;:::i;:::-;24230:139;;23957:419;;;:::o;24382:223::-;24522:34;24518:1;24510:6;24506:14;24499:58;24591:6;24586:2;24578:6;24574:15;24567:31;24382:223;:::o;24611:366::-;24753:3;24774:67;24838:2;24833:3;24774:67;:::i;:::-;24767:74;;24850:93;24939:3;24850:93;:::i;:::-;24968:2;24963:3;24959:12;24952:19;;24611:366;;;:::o;24983:419::-;25149:4;25187:2;25176:9;25172:18;25164:26;;25236:9;25230:4;25226:20;25222:1;25211:9;25207:17;25200:47;25264:131;25390:4;25264:131;:::i;:::-;25256:139;;24983:419;;;:::o;25408:182::-;25548:34;25544:1;25536:6;25532:14;25525:58;25408:182;:::o;25596:366::-;25738:3;25759:67;25823:2;25818:3;25759:67;:::i;:::-;25752:74;;25835:93;25924:3;25835:93;:::i;:::-;25953:2;25948:3;25944:12;25937:19;;25596:366;;;:::o;25968:419::-;26134:4;26172:2;26161:9;26157:18;26149:26;;26221:9;26215:4;26211:20;26207:1;26196:9;26192:17;26185:47;26249:131;26375:4;26249:131;:::i;:::-;26241:139;;25968:419;;;:::o;26393:175::-;26533:27;26529:1;26521:6;26517:14;26510:51;26393:175;:::o;26574:366::-;26716:3;26737:67;26801:2;26796:3;26737:67;:::i;:::-;26730:74;;26813:93;26902:3;26813:93;:::i;:::-;26931:2;26926:3;26922:12;26915:19;;26574:366;;;:::o;26946:419::-;27112:4;27150:2;27139:9;27135:18;27127:26;;27199:9;27193:4;27189:20;27185:1;27174:9;27170:17;27163:47;27227:131;27353:4;27227:131;:::i;:::-;27219:139;;26946:419;;;:::o;27371:237::-;27511:34;27507:1;27499:6;27495:14;27488:58;27580:20;27575:2;27567:6;27563:15;27556:45;27371:237;:::o;27614:366::-;27756:3;27777:67;27841:2;27836:3;27777:67;:::i;:::-;27770:74;;27853:93;27942:3;27853:93;:::i;:::-;27971:2;27966:3;27962:12;27955:19;;27614:366;;;:::o;27986:419::-;28152:4;28190:2;28179:9;28175:18;28167:26;;28239:9;28233:4;28229:20;28225:1;28214:9;28210:17;28203:47;28267:131;28393:4;28267:131;:::i;:::-;28259:139;;27986:419;;;:::o;28411:180::-;28459:77;28456:1;28449:88;28556:4;28553:1;28546:15;28580:4;28577:1;28570:15;28597:182;28737:34;28733:1;28725:6;28721:14;28714:58;28597:182;:::o;28785:366::-;28927:3;28948:67;29012:2;29007:3;28948:67;:::i;:::-;28941:74;;29024:93;29113:3;29024:93;:::i;:::-;29142:2;29137:3;29133:12;29126:19;;28785:366;;;:::o;29157:419::-;29323:4;29361:2;29350:9;29346:18;29338:26;;29410:9;29404:4;29400:20;29396:1;29385:9;29381:17;29374:47;29438:131;29564:4;29438:131;:::i;:::-;29430:139;;29157:419;;;:::o;29582:178::-;29722:30;29718:1;29710:6;29706:14;29699:54;29582:178;:::o;29766:366::-;29908:3;29929:67;29993:2;29988:3;29929:67;:::i;:::-;29922:74;;30005:93;30094:3;30005:93;:::i;:::-;30123:2;30118:3;30114:12;30107:19;;29766:366;;;:::o;30138:419::-;30304:4;30342:2;30331:9;30327:18;30319:26;;30391:9;30385:4;30381:20;30377:1;30366:9;30362:17;30355:47;30419:131;30545:4;30419:131;:::i;:::-;30411:139;;30138:419;;;:::o;30563:98::-;30614:6;30648:5;30642:12;30632:22;;30563:98;;;:::o;30667:168::-;30750:11;30784:6;30779:3;30772:19;30824:4;30819:3;30815:14;30800:29;;30667:168;;;;:::o;30841:373::-;30927:3;30955:38;30987:5;30955:38;:::i;:::-;31009:70;31072:6;31067:3;31009:70;:::i;:::-;31002:77;;31088:65;31146:6;31141:3;31134:4;31127:5;31123:16;31088:65;:::i;:::-;31178:29;31200:6;31178:29;:::i;:::-;31173:3;31169:39;31162:46;;30931:283;30841:373;;;;:::o;31220:640::-;31415:4;31453:3;31442:9;31438:19;31430:27;;31467:71;31535:1;31524:9;31520:17;31511:6;31467:71;:::i;:::-;31548:72;31616:2;31605:9;31601:18;31592:6;31548:72;:::i;:::-;31630;31698:2;31687:9;31683:18;31674:6;31630:72;:::i;:::-;31749:9;31743:4;31739:20;31734:2;31723:9;31719:18;31712:48;31777:76;31848:4;31839:6;31777:76;:::i;:::-;31769:84;;31220:640;;;;;;;:::o;31866:141::-;31922:5;31953:6;31947:13;31938:22;;31969:32;31995:5;31969:32;:::i;:::-;31866:141;;;;:::o;32013:349::-;32082:6;32131:2;32119:9;32110:7;32106:23;32102:32;32099:119;;;32137:79;;:::i;:::-;32099:119;32257:1;32282:63;32337:7;32328:6;32317:9;32313:22;32282:63;:::i;:::-;32272:73;;32228:127;32013:349;;;;:::o" + }, + "methodIdentifiers": { + "GRACE_PERIOD()": "c1a287e2", + "addController(address)": "a7fc7a07", + "approve(address,uint256)": "095ea7b3", + "available(uint256)": "96e494e8", + "balanceOf(address)": "70a08231", + "baseNode()": "ddf7fcb0", + "controllers(address)": "da8c229e", + "ens()": "3f15457f", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "name()": "06fdde03", + "nameExpires(uint256)": "d6e4fa86", + "owner()": "8da5cb5b", + "ownerOf(uint256)": "6352211e", + "reclaim(uint256,address)": "28ed4f6c", + "register(uint256,address,uint256)": "fca247ac", + "registerOnly(uint256,address,uint256)": "0e297b45", + "removeController(address)": "f6a74ed7", + "renew(uint256,uint256)": "c475abff", + "renounceOwnership()": "715018a6", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "setResolver(address)": "4e543b26", + "supportsInterface(bytes4)": "01ffc9a7", + "symbol()": "95d89b41", + "tokenURI(uint256)": "c87b56dd", + "transferFrom(address,address,uint256)": "23b872dd", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ENS\",\"name\":\"_ens\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_baseNode\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"ControllerAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"ControllerRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameMigrated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameRenewed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"GRACE_PERIOD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"addController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"available\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"baseNode\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"controllers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ens\",\"outputs\":[{\"internalType\":\"contract ENS\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"nameExpires\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"reclaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"registerOnly\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"removeController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"renew\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"ownerOf(uint256)\":{\"details\":\"Gets the owner of the specified token ID. Names become unowned when their registration expires.\",\"params\":{\"tokenId\":\"uint256 ID of the token to query the owner of\"},\"returns\":{\"_0\":\"address currently marked as the owner of the given token ID\"}},\"reclaim(uint256,address)\":{\"details\":\"Reclaim ownership of a name in ENS, if you own it in the registrar.\"},\"register(uint256,address,uint256)\":{\"details\":\"Register a name.\",\"params\":{\"duration\":\"Duration in seconds for the registration.\",\"id\":\"The token ID (keccak256 of the label).\",\"owner\":\"The address that should own the registration.\"}},\"registerOnly(uint256,address,uint256)\":{\"details\":\"Register a name, without modifying the registry.\",\"params\":{\"duration\":\"Duration in seconds for the registration.\",\"id\":\"The token ID (keccak256 of the label).\",\"owner\":\"The address that should own the registration.\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenURI(uint256)\":{\"details\":\"See {IERC721Metadata-tokenURI}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol\":\"BaseRegistrarImplementation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.sol\":{\"keccak256\":\"0xaee6eb36aead449d397b86a02e9c63bc46e3ef378d0a62bfd68beaae1150c9d0\",\"urls\":[\"bzz-raw://7dad6473e2caeacb93d5abe1d3d01d1f147a17becb7da0e2e485882e54d71538\",\"dweb:/ipfs/QmTkLTweVy6XDhUrgrYz143ucPSjU9PTEmkDSsUtbtE6tr\"]},\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x2c309e7df9e05e6ce15bedfe74f3c61b467fc37e0fae9eab496acf5ea0bbd7ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7063b5c98711a98018ba4635ac74cee1c1cfa2ea01099498e062699ed9530005\",\"dweb:/ipfs/QmeJ8rGXkcv7RrqLdAW8PCXPAykxVsddfYY6g5NaTwmRFE\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol": { + "IBaseRegistrar": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "ControllerAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "ControllerRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameMigrated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameRegistered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "name": "NameRenewed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "addController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "available", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "nameExpires", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "reclaim", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "register", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "removeController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "renew", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addController(address)": "a7fc7a07", + "approve(address,uint256)": "095ea7b3", + "available(uint256)": "96e494e8", + "balanceOf(address)": "70a08231", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "nameExpires(uint256)": "d6e4fa86", + "ownerOf(uint256)": "6352211e", + "reclaim(uint256,address)": "28ed4f6c", + "register(uint256,address,uint256)": "fca247ac", + "removeController(address)": "f6a74ed7", + "renew(uint256,uint256)": "c475abff", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "setResolver(address)": "4e543b26", + "supportsInterface(bytes4)": "01ffc9a7", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"ControllerAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"ControllerRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameMigrated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"name\":\"NameRenewed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"addController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"available\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"nameExpires\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"reclaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"removeController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"renew\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"reclaim(uint256,address)\":{\"details\":\"Reclaim ownership of a name in ENS, if you own it in the registrar.\"},\"register(uint256,address,uint256)\":{\"details\":\"Register a name.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must understand this adds an external call which potentially creates a reentrancy vulnerability. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":\"IBaseRegistrar\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/registry/ENS.sol": { + "ENS": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "NewOwner", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "NewResolver", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "NewTTL", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "recordExists", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "resolver", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "setOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "setSubnodeOwner", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setSubnodeRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setTTL", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "ttl", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "isApprovedForAll(address,address)": "e985e9c5", + "owner(bytes32)": "02571be3", + "recordExists(bytes32)": "f79fe538", + "resolver(bytes32)": "0178b8bf", + "setApprovalForAll(address,bool)": "a22cb465", + "setOwner(bytes32,address)": "5b0fc9c3", + "setRecord(bytes32,address,address,uint64)": "cf408823", + "setResolver(bytes32,address)": "1896f70a", + "setSubnodeOwner(bytes32,bytes32,address)": "06ab5923", + "setSubnodeRecord(bytes32,bytes32,address,address,uint64)": "5ef2c7f0", + "setTTL(bytes32,uint64)": "14ab9038", + "ttl(bytes32)": "16a25cbd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":\"ENS\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol": { + "ENSRegistry": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "NewOwner", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "NewResolver", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "NewTTL", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "recordExists", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "resolver", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "setOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "setSubnodeOwner", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setSubnodeRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setTTL", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "ttl", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_4631": { + "entryPoint": null, + "id": 4631, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [], + "linkReferences": {}, + "object": "6080604052348015600f57600080fd5b50336000808060001b815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061123d806100766000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101b15780635ef2c7f0146101cd578063a22cb465146101e9578063cf40882314610205578063e985e9c514610221578063f79fe53814610251576100b4565b80630178b8bf146100b957806302571be3146100e957806306ab59231461011957806314ab90381461014957806316a25cbd146101655780631896f70a14610195575b600080fd5b6100d360048036038101906100ce9190610dda565b610281565b6040516100e09190610e48565b60405180910390f35b61010360048036038101906100fe9190610dda565b6102c0565b6040516101109190610e48565b60405180910390f35b610133600480360381019061012e9190610e8f565b610342565b6040516101409190610ef1565b60405180910390f35b610163600480360381019061015e9190610f4c565b6104c5565b005b61017f600480360381019061017a9190610dda565b610643565b60405161018c9190610f9b565b60405180910390f35b6101af60048036038101906101aa9190610fb6565b610676565b005b6101cb60048036038101906101c69190610fb6565b61080c565b005b6101e760048036038101906101e29190610ff6565b610958565b005b61020360048036038101906101fe91906110a9565b61097a565b005b61021f600480360381019061021a91906110e9565b610a77565b005b61023b60048036038101906102369190611150565b610a92565b604051610248919061119f565b60405180910390f35b61026b60048036038101906102669190610dda565b610b26565b604051610278919061119f565b60405180910390f35b600080600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60008060008084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361033857600091505061033d565b809150505b919050565b600083600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061043f5750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61044857600080fd5b6000868660405160200161045d9291906111db565b60405160208183030381529060405280519060200120905061047f8186610b94565b85877fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82876040516104b09190610e48565b60405180910390a38093505050509392505050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806105c05750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6105c957600080fd5b837f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68846040516105f99190610f9b565b60405180910390a28260008086815260200190815260200160002060010160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050505050565b600080600083815260200190815260200160002060010160149054906101000a900467ffffffffffffffff169050919050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806107715750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61077a57600080fd5b837f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0846040516107aa9190610e48565b60405180910390a28260008086815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806109075750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61091057600080fd5b61091a8484610b94565b837fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2668460405161094a9190610e48565b60405180910390a250505050565b6000610965868686610342565b9050610972818484610bec565b505050505050565b80600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610a6b919061119f565b60405180910390a35050565b610a81848461080c565b610a8c848383610bec565b50505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b8060008084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610ce1578160008085815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550827f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a083604051610cd89190610e48565b60405180910390a25b60008084815260200190815260200160002060010160149054906101000a900467ffffffffffffffff1667ffffffffffffffff168167ffffffffffffffff1614610d9a578060008085815260200190815260200160002060010160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550827f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa6882604051610d919190610f9b565b60405180910390a25b505050565b600080fd5b6000819050919050565b610db781610da4565b8114610dc257600080fd5b50565b600081359050610dd481610dae565b92915050565b600060208284031215610df057610def610d9f565b5b6000610dfe84828501610dc5565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e3282610e07565b9050919050565b610e4281610e27565b82525050565b6000602082019050610e5d6000830184610e39565b92915050565b610e6c81610e27565b8114610e7757600080fd5b50565b600081359050610e8981610e63565b92915050565b600080600060608486031215610ea857610ea7610d9f565b5b6000610eb686828701610dc5565b9350506020610ec786828701610dc5565b9250506040610ed886828701610e7a565b9150509250925092565b610eeb81610da4565b82525050565b6000602082019050610f066000830184610ee2565b92915050565b600067ffffffffffffffff82169050919050565b610f2981610f0c565b8114610f3457600080fd5b50565b600081359050610f4681610f20565b92915050565b60008060408385031215610f6357610f62610d9f565b5b6000610f7185828601610dc5565b9250506020610f8285828601610f37565b9150509250929050565b610f9581610f0c565b82525050565b6000602082019050610fb06000830184610f8c565b92915050565b60008060408385031215610fcd57610fcc610d9f565b5b6000610fdb85828601610dc5565b9250506020610fec85828601610e7a565b9150509250929050565b600080600080600060a0868803121561101257611011610d9f565b5b600061102088828901610dc5565b955050602061103188828901610dc5565b945050604061104288828901610e7a565b935050606061105388828901610e7a565b925050608061106488828901610f37565b9150509295509295909350565b60008115159050919050565b61108681611071565b811461109157600080fd5b50565b6000813590506110a38161107d565b92915050565b600080604083850312156110c0576110bf610d9f565b5b60006110ce85828601610e7a565b92505060206110df85828601611094565b9150509250929050565b6000806000806080858703121561110357611102610d9f565b5b600061111187828801610dc5565b945050602061112287828801610e7a565b935050604061113387828801610e7a565b925050606061114487828801610f37565b91505092959194509250565b6000806040838503121561116757611166610d9f565b5b600061117585828601610e7a565b925050602061118685828601610e7a565b9150509250929050565b61119981611071565b82525050565b60006020820190506111b46000830184611190565b92915050565b6000819050919050565b6111d56111d082610da4565b6111ba565b82525050565b60006111e782856111c4565b6020820191506111f782846111c4565b602082019150819050939250505056fea264697066735822122043e57cf651ef70187099c519c3cea605ee62dddc2138da9b912df1fc3ef6163b64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 SHL DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x123D DUP1 PUSH2 0x76 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xB4 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5B0FC9C3 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0x5B0FC9C3 EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x5EF2C7F0 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x1E9 JUMPI DUP1 PUSH4 0xCF408823 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x221 JUMPI DUP1 PUSH4 0xF79FE538 EQ PUSH2 0x251 JUMPI PUSH2 0xB4 JUMP JUMPDEST DUP1 PUSH4 0x178B8BF EQ PUSH2 0xB9 JUMPI DUP1 PUSH4 0x2571BE3 EQ PUSH2 0xE9 JUMPI DUP1 PUSH4 0x6AB5923 EQ PUSH2 0x119 JUMPI DUP1 PUSH4 0x14AB9038 EQ PUSH2 0x149 JUMPI DUP1 PUSH4 0x16A25CBD EQ PUSH2 0x165 JUMPI DUP1 PUSH4 0x1896F70A EQ PUSH2 0x195 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCE SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x281 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE0 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x103 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xFE SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x2C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x110 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x133 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x12E SWAP2 SWAP1 PUSH2 0xE8F JUMP JUMPDEST PUSH2 0x342 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x140 SWAP2 SWAP1 PUSH2 0xEF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x163 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15E SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH2 0x4C5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17A SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x643 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18C SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0xFB6 JUMP JUMPDEST PUSH2 0x676 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1C6 SWAP2 SWAP1 PUSH2 0xFB6 JUMP JUMPDEST PUSH2 0x80C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1E7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0xFF6 JUMP JUMPDEST PUSH2 0x958 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x203 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1FE SWAP2 SWAP1 PUSH2 0x10A9 JUMP JUMPDEST PUSH2 0x97A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x21F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x21A SWAP2 SWAP1 PUSH2 0x10E9 JUMP JUMPDEST PUSH2 0xA77 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x23B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x236 SWAP2 SWAP1 PUSH2 0x1150 JUMP JUMPDEST PUSH2 0xA92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x248 SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x266 SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xB26 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x278 SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x338 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x33D JUMP JUMPDEST DUP1 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x43F JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x448 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x45D SWAP3 SWAP2 SWAP1 PUSH2 0x11DB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH2 0x47F DUP2 DUP7 PUSH2 0xB94 JUMP JUMPDEST DUP6 DUP8 PUSH32 0xCE0457FE73731F824CC272376169235128C118B49D344817417C6D108D155E82 DUP8 PUSH1 0x40 MLOAD PUSH2 0x4B0 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x5C0 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x5C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x1D4F9BBFC9CAB89D66E1A1562F2233CCBF1308CB4F63DE2EAD5787ADDDB8FA68 DUP5 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP3 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x77A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x335721B01866DC23FBEE8B6B2C7B1E14D6F05C28CD35A2C934239F94095602A0 DUP5 PUSH1 0x40 MLOAD PUSH2 0x7AA SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP3 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x907 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x910 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x91A DUP5 DUP5 PUSH2 0xB94 JUMP JUMPDEST DUP4 PUSH32 0xD4735D920B0F87494915F556DD9B54C8F309026070CAEA5C737245152564D266 DUP5 PUSH1 0x40 MLOAD PUSH2 0x94A SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x965 DUP7 DUP7 DUP7 PUSH2 0x342 JUMP JUMPDEST SWAP1 POP PUSH2 0x972 DUP2 DUP5 DUP5 PUSH2 0xBEC JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0xA6B SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0xA81 DUP5 DUP5 PUSH2 0x80C JUMP JUMPDEST PUSH2 0xA8C DUP5 DUP4 DUP4 PUSH2 0xBEC JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xCE1 JUMPI DUP2 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH32 0x335721B01866DC23FBEE8B6B2C7B1E14D6F05C28CD35A2C934239F94095602A0 DUP4 PUSH1 0x40 MLOAD PUSH2 0xCD8 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD9A JUMPI DUP1 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH32 0x1D4F9BBFC9CAB89D66E1A1562F2233CCBF1308CB4F63DE2EAD5787ADDDB8FA68 DUP3 PUSH1 0x40 MLOAD PUSH2 0xD91 SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDB7 DUP2 PUSH2 0xDA4 JUMP JUMPDEST DUP2 EQ PUSH2 0xDC2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xDD4 DUP2 PUSH2 0xDAE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xDF0 JUMPI PUSH2 0xDEF PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xDFE DUP5 DUP3 DUP6 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE32 DUP3 PUSH2 0xE07 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE42 DUP2 PUSH2 0xE27 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE5D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xE39 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xE6C DUP2 PUSH2 0xE27 JUMP JUMPDEST DUP2 EQ PUSH2 0xE77 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xE89 DUP2 PUSH2 0xE63 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xEA8 JUMPI PUSH2 0xEA7 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xEB6 DUP7 DUP3 DUP8 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0xEC7 DUP7 DUP3 DUP8 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0xED8 DUP7 DUP3 DUP8 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0xEEB DUP2 PUSH2 0xDA4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xF06 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xEE2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF29 DUP2 PUSH2 0xF0C JUMP JUMPDEST DUP2 EQ PUSH2 0xF34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xF46 DUP2 PUSH2 0xF20 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xF63 JUMPI PUSH2 0xF62 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xF71 DUP6 DUP3 DUP7 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xF82 DUP6 DUP3 DUP7 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0xF95 DUP2 PUSH2 0xF0C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xFB0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xF8C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xFCD JUMPI PUSH2 0xFCC PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xFDB DUP6 DUP3 DUP7 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xFEC DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x1012 JUMPI PUSH2 0x1011 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1020 DUP9 DUP3 DUP10 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x1031 DUP9 DUP3 DUP10 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x1042 DUP9 DUP3 DUP10 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x1053 DUP9 DUP3 DUP10 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1064 DUP9 DUP3 DUP10 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1086 DUP2 PUSH2 0x1071 JUMP JUMPDEST DUP2 EQ PUSH2 0x1091 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x10A3 DUP2 PUSH2 0x107D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10C0 JUMPI PUSH2 0x10BF PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x10CE DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10DF DUP6 DUP3 DUP7 ADD PUSH2 0x1094 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1103 JUMPI PUSH2 0x1102 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1111 DUP8 DUP3 DUP9 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x1122 DUP8 DUP3 DUP9 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1133 DUP8 DUP3 DUP9 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x1144 DUP8 DUP3 DUP9 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1175 DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1186 DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1199 DUP2 PUSH2 0x1071 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x11B4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1190 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x11D5 PUSH2 0x11D0 DUP3 PUSH2 0xDA4 JUMP JUMPDEST PUSH2 0x11BA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11E7 DUP3 DUP6 PUSH2 0x11C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x11F7 DUP3 DUP5 PUSH2 0x11C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 NUMBER 0xE5 PUSH29 0xF651EF70187099C519C3CEA605EE62DDDC2138DA9B912DF1FC3EF6163B PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "85:6342:12:-:0;;;618:69;;;;;;;;;;670:10;649:7;:12;657:3;649:12;;;;;;;;;;;;;:18;;;:31;;;;;;;;;;;;;;;;;;85:6342;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_setOwner_4940": { + "entryPoint": 2964, + "id": 4940, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_setResolverAndTTL_4990": { + "entryPoint": 3052, + "id": 4990, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@isApprovedForAll_4925": { + "entryPoint": 2706, + "id": 4925, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@owner_4857": { + "entryPoint": 704, + "id": 4857, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@recordExists_4907": { + "entryPoint": 2854, + "id": 4907, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@resolver_4872": { + "entryPoint": 641, + "id": 4872, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@setApprovalForAll_4825": { + "entryPoint": 2426, + "id": 4825, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setOwner_4709": { + "entryPoint": 2060, + "id": 4709, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setRecord_4656": { + "entryPoint": 2679, + "id": 4656, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setResolver_4774": { + "entryPoint": 1654, + "id": 4774, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setSubnodeOwner_4749": { + "entryPoint": 834, + "id": 4749, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@setSubnodeRecord_4686": { + "entryPoint": 2392, + "id": 4686, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@setTTL_4799": { + "entryPoint": 1221, + "id": 4799, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@ttl_4887": { + "entryPoint": 1603, + "id": 4887, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 3706, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 4244, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32": { + "entryPoint": 3525, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint64": { + "entryPoint": 3895, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 4432, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 4265, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 3546, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_address": { + "entryPoint": 4022, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_addresst_addresst_uint64": { + "entryPoint": 4329, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_address": { + "entryPoint": 3727, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_addresst_addresst_uint64": { + "entryPoint": 4086, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_bytes32t_uint64": { + "entryPoint": 3916, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 3641, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 4496, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 3810, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { + "entryPoint": 4548, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint64_to_t_uint64_fromStack": { + "entryPoint": 3980, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 4571, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 3656, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 4511, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 3825, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed": { + "entryPoint": 3995, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 3623, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 4209, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 3492, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 3591, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 3852, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_bytes32": { + "entryPoint": 4538, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 3487, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 3683, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 4221, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 3502, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint64": { + "entryPoint": 3872, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:8514:74", + "nodeType": "YulBlock", + "src": "0:8514:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:32:74", + "nodeType": "YulBlock", + "src": "379:32:74", + "statements": [ + { + "nativeSrc": "389:16:74", + "nodeType": "YulAssignment", + "src": "389:16:74", + "value": { + "name": "value", + "nativeSrc": "400:5:74", + "nodeType": "YulIdentifier", + "src": "400:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "334:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:77:74" + }, + { + "body": { + "nativeSrc": "460:79:74", + "nodeType": "YulBlock", + "src": "460:79:74", + "statements": [ + { + "body": { + "nativeSrc": "517:16:74", + "nodeType": "YulBlock", + "src": "517:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "526:1:74", + "nodeType": "YulLiteral", + "src": "526:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "529:1:74", + "nodeType": "YulLiteral", + "src": "529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "519:6:74", + "nodeType": "YulIdentifier", + "src": "519:6:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulFunctionCall", + "src": "519:12:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulExpressionStatement", + "src": "519:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "483:5:74", + "nodeType": "YulIdentifier", + "src": "483:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "508:5:74", + "nodeType": "YulIdentifier", + "src": "508:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "490:17:74", + "nodeType": "YulIdentifier", + "src": "490:17:74" + }, + "nativeSrc": "490:24:74", + "nodeType": "YulFunctionCall", + "src": "490:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "480:2:74", + "nodeType": "YulIdentifier", + "src": "480:2:74" + }, + "nativeSrc": "480:35:74", + "nodeType": "YulFunctionCall", + "src": "480:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "473:6:74", + "nodeType": "YulIdentifier", + "src": "473:6:74" + }, + "nativeSrc": "473:43:74", + "nodeType": "YulFunctionCall", + "src": "473:43:74" + }, + "nativeSrc": "470:63:74", + "nodeType": "YulIf", + "src": "470:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "417:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "453:5:74", + "nodeType": "YulTypedName", + "src": "453:5:74", + "type": "" + } + ], + "src": "417:122:74" + }, + { + "body": { + "nativeSrc": "597:87:74", + "nodeType": "YulBlock", + "src": "597:87:74", + "statements": [ + { + "nativeSrc": "607:29:74", + "nodeType": "YulAssignment", + "src": "607:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "629:6:74", + "nodeType": "YulIdentifier", + "src": "629:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "616:12:74", + "nodeType": "YulIdentifier", + "src": "616:12:74" + }, + "nativeSrc": "616:20:74", + "nodeType": "YulFunctionCall", + "src": "616:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulIdentifier", + "src": "607:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "672:5:74", + "nodeType": "YulIdentifier", + "src": "672:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "645:26:74", + "nodeType": "YulIdentifier", + "src": "645:26:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulFunctionCall", + "src": "645:33:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulExpressionStatement", + "src": "645:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "545:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "575:6:74", + "nodeType": "YulTypedName", + "src": "575:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "583:3:74", + "nodeType": "YulTypedName", + "src": "583:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "591:5:74", + "nodeType": "YulTypedName", + "src": "591:5:74", + "type": "" + } + ], + "src": "545:139:74" + }, + { + "body": { + "nativeSrc": "756:263:74", + "nodeType": "YulBlock", + "src": "756:263:74", + "statements": [ + { + "body": { + "nativeSrc": "802:83:74", + "nodeType": "YulBlock", + "src": "802:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "804:77:74", + "nodeType": "YulIdentifier", + "src": "804:77:74" + }, + "nativeSrc": "804:79:74", + "nodeType": "YulFunctionCall", + "src": "804:79:74" + }, + "nativeSrc": "804:79:74", + "nodeType": "YulExpressionStatement", + "src": "804:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "777:7:74", + "nodeType": "YulIdentifier", + "src": "777:7:74" + }, + { + "name": "headStart", + "nativeSrc": "786:9:74", + "nodeType": "YulIdentifier", + "src": "786:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "773:3:74", + "nodeType": "YulIdentifier", + "src": "773:3:74" + }, + "nativeSrc": "773:23:74", + "nodeType": "YulFunctionCall", + "src": "773:23:74" + }, + { + "kind": "number", + "nativeSrc": "798:2:74", + "nodeType": "YulLiteral", + "src": "798:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "769:3:74", + "nodeType": "YulIdentifier", + "src": "769:3:74" + }, + "nativeSrc": "769:32:74", + "nodeType": "YulFunctionCall", + "src": "769:32:74" + }, + "nativeSrc": "766:119:74", + "nodeType": "YulIf", + "src": "766:119:74" + }, + { + "nativeSrc": "895:117:74", + "nodeType": "YulBlock", + "src": "895:117:74", + "statements": [ + { + "nativeSrc": "910:15:74", + "nodeType": "YulVariableDeclaration", + "src": "910:15:74", + "value": { + "kind": "number", + "nativeSrc": "924:1:74", + "nodeType": "YulLiteral", + "src": "924:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "914:6:74", + "nodeType": "YulTypedName", + "src": "914:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "939:63:74", + "nodeType": "YulAssignment", + "src": "939:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "974:9:74", + "nodeType": "YulIdentifier", + "src": "974:9:74" + }, + { + "name": "offset", + "nativeSrc": "985:6:74", + "nodeType": "YulIdentifier", + "src": "985:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "970:3:74", + "nodeType": "YulIdentifier", + "src": "970:3:74" + }, + "nativeSrc": "970:22:74", + "nodeType": "YulFunctionCall", + "src": "970:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "994:7:74", + "nodeType": "YulIdentifier", + "src": "994:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "949:20:74", + "nodeType": "YulIdentifier", + "src": "949:20:74" + }, + "nativeSrc": "949:53:74", + "nodeType": "YulFunctionCall", + "src": "949:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "939:6:74", + "nodeType": "YulIdentifier", + "src": "939:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "690:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "726:9:74", + "nodeType": "YulTypedName", + "src": "726:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "737:7:74", + "nodeType": "YulTypedName", + "src": "737:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "749:6:74", + "nodeType": "YulTypedName", + "src": "749:6:74", + "type": "" + } + ], + "src": "690:329:74" + }, + { + "body": { + "nativeSrc": "1070:81:74", + "nodeType": "YulBlock", + "src": "1070:81:74", + "statements": [ + { + "nativeSrc": "1080:65:74", + "nodeType": "YulAssignment", + "src": "1080:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1095:5:74", + "nodeType": "YulIdentifier", + "src": "1095:5:74" + }, + { + "kind": "number", + "nativeSrc": "1102:42:74", + "nodeType": "YulLiteral", + "src": "1102:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1091:3:74", + "nodeType": "YulIdentifier", + "src": "1091:3:74" + }, + "nativeSrc": "1091:54:74", + "nodeType": "YulFunctionCall", + "src": "1091:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1080:7:74", + "nodeType": "YulIdentifier", + "src": "1080:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "1025:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1052:5:74", + "nodeType": "YulTypedName", + "src": "1052:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1062:7:74", + "nodeType": "YulTypedName", + "src": "1062:7:74", + "type": "" + } + ], + "src": "1025:126:74" + }, + { + "body": { + "nativeSrc": "1202:51:74", + "nodeType": "YulBlock", + "src": "1202:51:74", + "statements": [ + { + "nativeSrc": "1212:35:74", + "nodeType": "YulAssignment", + "src": "1212:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1241:5:74", + "nodeType": "YulIdentifier", + "src": "1241:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "1223:17:74", + "nodeType": "YulIdentifier", + "src": "1223:17:74" + }, + "nativeSrc": "1223:24:74", + "nodeType": "YulFunctionCall", + "src": "1223:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1212:7:74", + "nodeType": "YulIdentifier", + "src": "1212:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "1157:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1184:5:74", + "nodeType": "YulTypedName", + "src": "1184:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1194:7:74", + "nodeType": "YulTypedName", + "src": "1194:7:74", + "type": "" + } + ], + "src": "1157:96:74" + }, + { + "body": { + "nativeSrc": "1324:53:74", + "nodeType": "YulBlock", + "src": "1324:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1341:3:74", + "nodeType": "YulIdentifier", + "src": "1341:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1364:5:74", + "nodeType": "YulIdentifier", + "src": "1364:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1346:17:74", + "nodeType": "YulIdentifier", + "src": "1346:17:74" + }, + "nativeSrc": "1346:24:74", + "nodeType": "YulFunctionCall", + "src": "1346:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1334:6:74", + "nodeType": "YulIdentifier", + "src": "1334:6:74" + }, + "nativeSrc": "1334:37:74", + "nodeType": "YulFunctionCall", + "src": "1334:37:74" + }, + "nativeSrc": "1334:37:74", + "nodeType": "YulExpressionStatement", + "src": "1334:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "1259:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1312:5:74", + "nodeType": "YulTypedName", + "src": "1312:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1319:3:74", + "nodeType": "YulTypedName", + "src": "1319:3:74", + "type": "" + } + ], + "src": "1259:118:74" + }, + { + "body": { + "nativeSrc": "1481:124:74", + "nodeType": "YulBlock", + "src": "1481:124:74", + "statements": [ + { + "nativeSrc": "1491:26:74", + "nodeType": "YulAssignment", + "src": "1491:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1503:9:74", + "nodeType": "YulIdentifier", + "src": "1503:9:74" + }, + { + "kind": "number", + "nativeSrc": "1514:2:74", + "nodeType": "YulLiteral", + "src": "1514:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1499:3:74", + "nodeType": "YulIdentifier", + "src": "1499:3:74" + }, + "nativeSrc": "1499:18:74", + "nodeType": "YulFunctionCall", + "src": "1499:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1491:4:74", + "nodeType": "YulIdentifier", + "src": "1491:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1571:6:74", + "nodeType": "YulIdentifier", + "src": "1571:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1584:9:74", + "nodeType": "YulIdentifier", + "src": "1584:9:74" + }, + { + "kind": "number", + "nativeSrc": "1595:1:74", + "nodeType": "YulLiteral", + "src": "1595:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1580:3:74", + "nodeType": "YulIdentifier", + "src": "1580:3:74" + }, + "nativeSrc": "1580:17:74", + "nodeType": "YulFunctionCall", + "src": "1580:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "1527:43:74", + "nodeType": "YulIdentifier", + "src": "1527:43:74" + }, + "nativeSrc": "1527:71:74", + "nodeType": "YulFunctionCall", + "src": "1527:71:74" + }, + "nativeSrc": "1527:71:74", + "nodeType": "YulExpressionStatement", + "src": "1527:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "1383:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1453:9:74", + "nodeType": "YulTypedName", + "src": "1453:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1465:6:74", + "nodeType": "YulTypedName", + "src": "1465:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1476:4:74", + "nodeType": "YulTypedName", + "src": "1476:4:74", + "type": "" + } + ], + "src": "1383:222:74" + }, + { + "body": { + "nativeSrc": "1654:79:74", + "nodeType": "YulBlock", + "src": "1654:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1711:16:74", + "nodeType": "YulBlock", + "src": "1711:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1720:1:74", + "nodeType": "YulLiteral", + "src": "1720:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1723:1:74", + "nodeType": "YulLiteral", + "src": "1723:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1713:6:74", + "nodeType": "YulIdentifier", + "src": "1713:6:74" + }, + "nativeSrc": "1713:12:74", + "nodeType": "YulFunctionCall", + "src": "1713:12:74" + }, + "nativeSrc": "1713:12:74", + "nodeType": "YulExpressionStatement", + "src": "1713:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1677:5:74", + "nodeType": "YulIdentifier", + "src": "1677:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1702:5:74", + "nodeType": "YulIdentifier", + "src": "1702:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1684:17:74", + "nodeType": "YulIdentifier", + "src": "1684:17:74" + }, + "nativeSrc": "1684:24:74", + "nodeType": "YulFunctionCall", + "src": "1684:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1674:2:74", + "nodeType": "YulIdentifier", + "src": "1674:2:74" + }, + "nativeSrc": "1674:35:74", + "nodeType": "YulFunctionCall", + "src": "1674:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1667:6:74", + "nodeType": "YulIdentifier", + "src": "1667:6:74" + }, + "nativeSrc": "1667:43:74", + "nodeType": "YulFunctionCall", + "src": "1667:43:74" + }, + "nativeSrc": "1664:63:74", + "nodeType": "YulIf", + "src": "1664:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "1611:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1647:5:74", + "nodeType": "YulTypedName", + "src": "1647:5:74", + "type": "" + } + ], + "src": "1611:122:74" + }, + { + "body": { + "nativeSrc": "1791:87:74", + "nodeType": "YulBlock", + "src": "1791:87:74", + "statements": [ + { + "nativeSrc": "1801:29:74", + "nodeType": "YulAssignment", + "src": "1801:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1823:6:74", + "nodeType": "YulIdentifier", + "src": "1823:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1810:12:74", + "nodeType": "YulIdentifier", + "src": "1810:12:74" + }, + "nativeSrc": "1810:20:74", + "nodeType": "YulFunctionCall", + "src": "1810:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1801:5:74", + "nodeType": "YulIdentifier", + "src": "1801:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1866:5:74", + "nodeType": "YulIdentifier", + "src": "1866:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "1839:26:74", + "nodeType": "YulIdentifier", + "src": "1839:26:74" + }, + "nativeSrc": "1839:33:74", + "nodeType": "YulFunctionCall", + "src": "1839:33:74" + }, + "nativeSrc": "1839:33:74", + "nodeType": "YulExpressionStatement", + "src": "1839:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "1739:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1769:6:74", + "nodeType": "YulTypedName", + "src": "1769:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1777:3:74", + "nodeType": "YulTypedName", + "src": "1777:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1785:5:74", + "nodeType": "YulTypedName", + "src": "1785:5:74", + "type": "" + } + ], + "src": "1739:139:74" + }, + { + "body": { + "nativeSrc": "1984:519:74", + "nodeType": "YulBlock", + "src": "1984:519:74", + "statements": [ + { + "body": { + "nativeSrc": "2030:83:74", + "nodeType": "YulBlock", + "src": "2030:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2032:77:74", + "nodeType": "YulIdentifier", + "src": "2032:77:74" + }, + "nativeSrc": "2032:79:74", + "nodeType": "YulFunctionCall", + "src": "2032:79:74" + }, + "nativeSrc": "2032:79:74", + "nodeType": "YulExpressionStatement", + "src": "2032:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2005:7:74", + "nodeType": "YulIdentifier", + "src": "2005:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2014:9:74", + "nodeType": "YulIdentifier", + "src": "2014:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2001:3:74", + "nodeType": "YulIdentifier", + "src": "2001:3:74" + }, + "nativeSrc": "2001:23:74", + "nodeType": "YulFunctionCall", + "src": "2001:23:74" + }, + { + "kind": "number", + "nativeSrc": "2026:2:74", + "nodeType": "YulLiteral", + "src": "2026:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1997:3:74", + "nodeType": "YulIdentifier", + "src": "1997:3:74" + }, + "nativeSrc": "1997:32:74", + "nodeType": "YulFunctionCall", + "src": "1997:32:74" + }, + "nativeSrc": "1994:119:74", + "nodeType": "YulIf", + "src": "1994:119:74" + }, + { + "nativeSrc": "2123:117:74", + "nodeType": "YulBlock", + "src": "2123:117:74", + "statements": [ + { + "nativeSrc": "2138:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2138:15:74", + "value": { + "kind": "number", + "nativeSrc": "2152:1:74", + "nodeType": "YulLiteral", + "src": "2152:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2142:6:74", + "nodeType": "YulTypedName", + "src": "2142:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2167:63:74", + "nodeType": "YulAssignment", + "src": "2167:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2202:9:74", + "nodeType": "YulIdentifier", + "src": "2202:9:74" + }, + { + "name": "offset", + "nativeSrc": "2213:6:74", + "nodeType": "YulIdentifier", + "src": "2213:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2198:3:74", + "nodeType": "YulIdentifier", + "src": "2198:3:74" + }, + "nativeSrc": "2198:22:74", + "nodeType": "YulFunctionCall", + "src": "2198:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2222:7:74", + "nodeType": "YulIdentifier", + "src": "2222:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "2177:20:74", + "nodeType": "YulIdentifier", + "src": "2177:20:74" + }, + "nativeSrc": "2177:53:74", + "nodeType": "YulFunctionCall", + "src": "2177:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2167:6:74", + "nodeType": "YulIdentifier", + "src": "2167:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2250:118:74", + "nodeType": "YulBlock", + "src": "2250:118:74", + "statements": [ + { + "nativeSrc": "2265:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2265:16:74", + "value": { + "kind": "number", + "nativeSrc": "2279:2:74", + "nodeType": "YulLiteral", + "src": "2279:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2269:6:74", + "nodeType": "YulTypedName", + "src": "2269:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2295:63:74", + "nodeType": "YulAssignment", + "src": "2295:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2330:9:74", + "nodeType": "YulIdentifier", + "src": "2330:9:74" + }, + { + "name": "offset", + "nativeSrc": "2341:6:74", + "nodeType": "YulIdentifier", + "src": "2341:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2326:3:74", + "nodeType": "YulIdentifier", + "src": "2326:3:74" + }, + "nativeSrc": "2326:22:74", + "nodeType": "YulFunctionCall", + "src": "2326:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2350:7:74", + "nodeType": "YulIdentifier", + "src": "2350:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "2305:20:74", + "nodeType": "YulIdentifier", + "src": "2305:20:74" + }, + "nativeSrc": "2305:53:74", + "nodeType": "YulFunctionCall", + "src": "2305:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "2295:6:74", + "nodeType": "YulIdentifier", + "src": "2295:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2378:118:74", + "nodeType": "YulBlock", + "src": "2378:118:74", + "statements": [ + { + "nativeSrc": "2393:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2393:16:74", + "value": { + "kind": "number", + "nativeSrc": "2407:2:74", + "nodeType": "YulLiteral", + "src": "2407:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2397:6:74", + "nodeType": "YulTypedName", + "src": "2397:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2423:63:74", + "nodeType": "YulAssignment", + "src": "2423:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2458:9:74", + "nodeType": "YulIdentifier", + "src": "2458:9:74" + }, + { + "name": "offset", + "nativeSrc": "2469:6:74", + "nodeType": "YulIdentifier", + "src": "2469:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2454:3:74", + "nodeType": "YulIdentifier", + "src": "2454:3:74" + }, + "nativeSrc": "2454:22:74", + "nodeType": "YulFunctionCall", + "src": "2454:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2478:7:74", + "nodeType": "YulIdentifier", + "src": "2478:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "2433:20:74", + "nodeType": "YulIdentifier", + "src": "2433:20:74" + }, + "nativeSrc": "2433:53:74", + "nodeType": "YulFunctionCall", + "src": "2433:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "2423:6:74", + "nodeType": "YulIdentifier", + "src": "2423:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_address", + "nativeSrc": "1884:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1938:9:74", + "nodeType": "YulTypedName", + "src": "1938:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1949:7:74", + "nodeType": "YulTypedName", + "src": "1949:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1961:6:74", + "nodeType": "YulTypedName", + "src": "1961:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1969:6:74", + "nodeType": "YulTypedName", + "src": "1969:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "1977:6:74", + "nodeType": "YulTypedName", + "src": "1977:6:74", + "type": "" + } + ], + "src": "1884:619:74" + }, + { + "body": { + "nativeSrc": "2574:53:74", + "nodeType": "YulBlock", + "src": "2574:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2591:3:74", + "nodeType": "YulIdentifier", + "src": "2591:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2614:5:74", + "nodeType": "YulIdentifier", + "src": "2614:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2596:17:74", + "nodeType": "YulIdentifier", + "src": "2596:17:74" + }, + "nativeSrc": "2596:24:74", + "nodeType": "YulFunctionCall", + "src": "2596:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2584:6:74", + "nodeType": "YulIdentifier", + "src": "2584:6:74" + }, + "nativeSrc": "2584:37:74", + "nodeType": "YulFunctionCall", + "src": "2584:37:74" + }, + "nativeSrc": "2584:37:74", + "nodeType": "YulExpressionStatement", + "src": "2584:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2509:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2562:5:74", + "nodeType": "YulTypedName", + "src": "2562:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2569:3:74", + "nodeType": "YulTypedName", + "src": "2569:3:74", + "type": "" + } + ], + "src": "2509:118:74" + }, + { + "body": { + "nativeSrc": "2731:124:74", + "nodeType": "YulBlock", + "src": "2731:124:74", + "statements": [ + { + "nativeSrc": "2741:26:74", + "nodeType": "YulAssignment", + "src": "2741:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2753:9:74", + "nodeType": "YulIdentifier", + "src": "2753:9:74" + }, + { + "kind": "number", + "nativeSrc": "2764:2:74", + "nodeType": "YulLiteral", + "src": "2764:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2749:3:74", + "nodeType": "YulIdentifier", + "src": "2749:3:74" + }, + "nativeSrc": "2749:18:74", + "nodeType": "YulFunctionCall", + "src": "2749:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2741:4:74", + "nodeType": "YulIdentifier", + "src": "2741:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2821:6:74", + "nodeType": "YulIdentifier", + "src": "2821:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2834:9:74", + "nodeType": "YulIdentifier", + "src": "2834:9:74" + }, + { + "kind": "number", + "nativeSrc": "2845:1:74", + "nodeType": "YulLiteral", + "src": "2845:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2830:3:74", + "nodeType": "YulIdentifier", + "src": "2830:3:74" + }, + "nativeSrc": "2830:17:74", + "nodeType": "YulFunctionCall", + "src": "2830:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2777:43:74", + "nodeType": "YulIdentifier", + "src": "2777:43:74" + }, + "nativeSrc": "2777:71:74", + "nodeType": "YulFunctionCall", + "src": "2777:71:74" + }, + "nativeSrc": "2777:71:74", + "nodeType": "YulExpressionStatement", + "src": "2777:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "2633:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2703:9:74", + "nodeType": "YulTypedName", + "src": "2703:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2715:6:74", + "nodeType": "YulTypedName", + "src": "2715:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2726:4:74", + "nodeType": "YulTypedName", + "src": "2726:4:74", + "type": "" + } + ], + "src": "2633:222:74" + }, + { + "body": { + "nativeSrc": "2905:57:74", + "nodeType": "YulBlock", + "src": "2905:57:74", + "statements": [ + { + "nativeSrc": "2915:41:74", + "nodeType": "YulAssignment", + "src": "2915:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2930:5:74", + "nodeType": "YulIdentifier", + "src": "2930:5:74" + }, + { + "kind": "number", + "nativeSrc": "2937:18:74", + "nodeType": "YulLiteral", + "src": "2937:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2926:3:74", + "nodeType": "YulIdentifier", + "src": "2926:3:74" + }, + "nativeSrc": "2926:30:74", + "nodeType": "YulFunctionCall", + "src": "2926:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2915:7:74", + "nodeType": "YulIdentifier", + "src": "2915:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "2861:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2887:5:74", + "nodeType": "YulTypedName", + "src": "2887:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2897:7:74", + "nodeType": "YulTypedName", + "src": "2897:7:74", + "type": "" + } + ], + "src": "2861:101:74" + }, + { + "body": { + "nativeSrc": "3010:78:74", + "nodeType": "YulBlock", + "src": "3010:78:74", + "statements": [ + { + "body": { + "nativeSrc": "3066:16:74", + "nodeType": "YulBlock", + "src": "3066:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3075:1:74", + "nodeType": "YulLiteral", + "src": "3075:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3078:1:74", + "nodeType": "YulLiteral", + "src": "3078:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3068:6:74", + "nodeType": "YulIdentifier", + "src": "3068:6:74" + }, + "nativeSrc": "3068:12:74", + "nodeType": "YulFunctionCall", + "src": "3068:12:74" + }, + "nativeSrc": "3068:12:74", + "nodeType": "YulExpressionStatement", + "src": "3068:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3033:5:74", + "nodeType": "YulIdentifier", + "src": "3033:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3057:5:74", + "nodeType": "YulIdentifier", + "src": "3057:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "3040:16:74", + "nodeType": "YulIdentifier", + "src": "3040:16:74" + }, + "nativeSrc": "3040:23:74", + "nodeType": "YulFunctionCall", + "src": "3040:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3030:2:74", + "nodeType": "YulIdentifier", + "src": "3030:2:74" + }, + "nativeSrc": "3030:34:74", + "nodeType": "YulFunctionCall", + "src": "3030:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3023:6:74", + "nodeType": "YulIdentifier", + "src": "3023:6:74" + }, + "nativeSrc": "3023:42:74", + "nodeType": "YulFunctionCall", + "src": "3023:42:74" + }, + "nativeSrc": "3020:62:74", + "nodeType": "YulIf", + "src": "3020:62:74" + } + ] + }, + "name": "validator_revert_t_uint64", + "nativeSrc": "2968:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3003:5:74", + "nodeType": "YulTypedName", + "src": "3003:5:74", + "type": "" + } + ], + "src": "2968:120:74" + }, + { + "body": { + "nativeSrc": "3145:86:74", + "nodeType": "YulBlock", + "src": "3145:86:74", + "statements": [ + { + "nativeSrc": "3155:29:74", + "nodeType": "YulAssignment", + "src": "3155:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3177:6:74", + "nodeType": "YulIdentifier", + "src": "3177:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3164:12:74", + "nodeType": "YulIdentifier", + "src": "3164:12:74" + }, + "nativeSrc": "3164:20:74", + "nodeType": "YulFunctionCall", + "src": "3164:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3155:5:74", + "nodeType": "YulIdentifier", + "src": "3155:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3219:5:74", + "nodeType": "YulIdentifier", + "src": "3219:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint64", + "nativeSrc": "3193:25:74", + "nodeType": "YulIdentifier", + "src": "3193:25:74" + }, + "nativeSrc": "3193:32:74", + "nodeType": "YulFunctionCall", + "src": "3193:32:74" + }, + "nativeSrc": "3193:32:74", + "nodeType": "YulExpressionStatement", + "src": "3193:32:74" + } + ] + }, + "name": "abi_decode_t_uint64", + "nativeSrc": "3094:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3123:6:74", + "nodeType": "YulTypedName", + "src": "3123:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3131:3:74", + "nodeType": "YulTypedName", + "src": "3131:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3139:5:74", + "nodeType": "YulTypedName", + "src": "3139:5:74", + "type": "" + } + ], + "src": "3094:137:74" + }, + { + "body": { + "nativeSrc": "3319:390:74", + "nodeType": "YulBlock", + "src": "3319:390:74", + "statements": [ + { + "body": { + "nativeSrc": "3365:83:74", + "nodeType": "YulBlock", + "src": "3365:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3367:77:74", + "nodeType": "YulIdentifier", + "src": "3367:77:74" + }, + "nativeSrc": "3367:79:74", + "nodeType": "YulFunctionCall", + "src": "3367:79:74" + }, + "nativeSrc": "3367:79:74", + "nodeType": "YulExpressionStatement", + "src": "3367:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3340:7:74", + "nodeType": "YulIdentifier", + "src": "3340:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3349:9:74", + "nodeType": "YulIdentifier", + "src": "3349:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3336:3:74", + "nodeType": "YulIdentifier", + "src": "3336:3:74" + }, + "nativeSrc": "3336:23:74", + "nodeType": "YulFunctionCall", + "src": "3336:23:74" + }, + { + "kind": "number", + "nativeSrc": "3361:2:74", + "nodeType": "YulLiteral", + "src": "3361:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3332:3:74", + "nodeType": "YulIdentifier", + "src": "3332:3:74" + }, + "nativeSrc": "3332:32:74", + "nodeType": "YulFunctionCall", + "src": "3332:32:74" + }, + "nativeSrc": "3329:119:74", + "nodeType": "YulIf", + "src": "3329:119:74" + }, + { + "nativeSrc": "3458:117:74", + "nodeType": "YulBlock", + "src": "3458:117:74", + "statements": [ + { + "nativeSrc": "3473:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3473:15:74", + "value": { + "kind": "number", + "nativeSrc": "3487:1:74", + "nodeType": "YulLiteral", + "src": "3487:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3477:6:74", + "nodeType": "YulTypedName", + "src": "3477:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3502:63:74", + "nodeType": "YulAssignment", + "src": "3502:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3537:9:74", + "nodeType": "YulIdentifier", + "src": "3537:9:74" + }, + { + "name": "offset", + "nativeSrc": "3548:6:74", + "nodeType": "YulIdentifier", + "src": "3548:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3533:3:74", + "nodeType": "YulIdentifier", + "src": "3533:3:74" + }, + "nativeSrc": "3533:22:74", + "nodeType": "YulFunctionCall", + "src": "3533:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3557:7:74", + "nodeType": "YulIdentifier", + "src": "3557:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "3512:20:74", + "nodeType": "YulIdentifier", + "src": "3512:20:74" + }, + "nativeSrc": "3512:53:74", + "nodeType": "YulFunctionCall", + "src": "3512:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3502:6:74", + "nodeType": "YulIdentifier", + "src": "3502:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3585:117:74", + "nodeType": "YulBlock", + "src": "3585:117:74", + "statements": [ + { + "nativeSrc": "3600:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3600:16:74", + "value": { + "kind": "number", + "nativeSrc": "3614:2:74", + "nodeType": "YulLiteral", + "src": "3614:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3604:6:74", + "nodeType": "YulTypedName", + "src": "3604:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3630:62:74", + "nodeType": "YulAssignment", + "src": "3630:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3664:9:74", + "nodeType": "YulIdentifier", + "src": "3664:9:74" + }, + { + "name": "offset", + "nativeSrc": "3675:6:74", + "nodeType": "YulIdentifier", + "src": "3675:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3660:3:74", + "nodeType": "YulIdentifier", + "src": "3660:3:74" + }, + "nativeSrc": "3660:22:74", + "nodeType": "YulFunctionCall", + "src": "3660:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3684:7:74", + "nodeType": "YulIdentifier", + "src": "3684:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "3640:19:74", + "nodeType": "YulIdentifier", + "src": "3640:19:74" + }, + "nativeSrc": "3640:52:74", + "nodeType": "YulFunctionCall", + "src": "3640:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3630:6:74", + "nodeType": "YulIdentifier", + "src": "3630:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint64", + "nativeSrc": "3237:472:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3281:9:74", + "nodeType": "YulTypedName", + "src": "3281:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3292:7:74", + "nodeType": "YulTypedName", + "src": "3292:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3304:6:74", + "nodeType": "YulTypedName", + "src": "3304:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "3312:6:74", + "nodeType": "YulTypedName", + "src": "3312:6:74", + "type": "" + } + ], + "src": "3237:472:74" + }, + { + "body": { + "nativeSrc": "3778:52:74", + "nodeType": "YulBlock", + "src": "3778:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3795:3:74", + "nodeType": "YulIdentifier", + "src": "3795:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3817:5:74", + "nodeType": "YulIdentifier", + "src": "3817:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "3800:16:74", + "nodeType": "YulIdentifier", + "src": "3800:16:74" + }, + "nativeSrc": "3800:23:74", + "nodeType": "YulFunctionCall", + "src": "3800:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3788:6:74", + "nodeType": "YulIdentifier", + "src": "3788:6:74" + }, + "nativeSrc": "3788:36:74", + "nodeType": "YulFunctionCall", + "src": "3788:36:74" + }, + "nativeSrc": "3788:36:74", + "nodeType": "YulExpressionStatement", + "src": "3788:36:74" + } + ] + }, + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "3715:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3766:5:74", + "nodeType": "YulTypedName", + "src": "3766:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3773:3:74", + "nodeType": "YulTypedName", + "src": "3773:3:74", + "type": "" + } + ], + "src": "3715:115:74" + }, + { + "body": { + "nativeSrc": "3932:122:74", + "nodeType": "YulBlock", + "src": "3932:122:74", + "statements": [ + { + "nativeSrc": "3942:26:74", + "nodeType": "YulAssignment", + "src": "3942:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3954:9:74", + "nodeType": "YulIdentifier", + "src": "3954:9:74" + }, + { + "kind": "number", + "nativeSrc": "3965:2:74", + "nodeType": "YulLiteral", + "src": "3965:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3950:3:74", + "nodeType": "YulIdentifier", + "src": "3950:3:74" + }, + "nativeSrc": "3950:18:74", + "nodeType": "YulFunctionCall", + "src": "3950:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3942:4:74", + "nodeType": "YulIdentifier", + "src": "3942:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4020:6:74", + "nodeType": "YulIdentifier", + "src": "4020:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4033:9:74", + "nodeType": "YulIdentifier", + "src": "4033:9:74" + }, + { + "kind": "number", + "nativeSrc": "4044:1:74", + "nodeType": "YulLiteral", + "src": "4044:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4029:3:74", + "nodeType": "YulIdentifier", + "src": "4029:3:74" + }, + "nativeSrc": "4029:17:74", + "nodeType": "YulFunctionCall", + "src": "4029:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "3978:41:74", + "nodeType": "YulIdentifier", + "src": "3978:41:74" + }, + "nativeSrc": "3978:69:74", + "nodeType": "YulFunctionCall", + "src": "3978:69:74" + }, + "nativeSrc": "3978:69:74", + "nodeType": "YulExpressionStatement", + "src": "3978:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed", + "nativeSrc": "3836:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3904:9:74", + "nodeType": "YulTypedName", + "src": "3904:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3916:6:74", + "nodeType": "YulTypedName", + "src": "3916:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3927:4:74", + "nodeType": "YulTypedName", + "src": "3927:4:74", + "type": "" + } + ], + "src": "3836:218:74" + }, + { + "body": { + "nativeSrc": "4143:391:74", + "nodeType": "YulBlock", + "src": "4143:391:74", + "statements": [ + { + "body": { + "nativeSrc": "4189:83:74", + "nodeType": "YulBlock", + "src": "4189:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4191:77:74", + "nodeType": "YulIdentifier", + "src": "4191:77:74" + }, + "nativeSrc": "4191:79:74", + "nodeType": "YulFunctionCall", + "src": "4191:79:74" + }, + "nativeSrc": "4191:79:74", + "nodeType": "YulExpressionStatement", + "src": "4191:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4164:7:74", + "nodeType": "YulIdentifier", + "src": "4164:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4173:9:74", + "nodeType": "YulIdentifier", + "src": "4173:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4160:3:74", + "nodeType": "YulIdentifier", + "src": "4160:3:74" + }, + "nativeSrc": "4160:23:74", + "nodeType": "YulFunctionCall", + "src": "4160:23:74" + }, + { + "kind": "number", + "nativeSrc": "4185:2:74", + "nodeType": "YulLiteral", + "src": "4185:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4156:3:74", + "nodeType": "YulIdentifier", + "src": "4156:3:74" + }, + "nativeSrc": "4156:32:74", + "nodeType": "YulFunctionCall", + "src": "4156:32:74" + }, + "nativeSrc": "4153:119:74", + "nodeType": "YulIf", + "src": "4153:119:74" + }, + { + "nativeSrc": "4282:117:74", + "nodeType": "YulBlock", + "src": "4282:117:74", + "statements": [ + { + "nativeSrc": "4297:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4297:15:74", + "value": { + "kind": "number", + "nativeSrc": "4311:1:74", + "nodeType": "YulLiteral", + "src": "4311:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4301:6:74", + "nodeType": "YulTypedName", + "src": "4301:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4326:63:74", + "nodeType": "YulAssignment", + "src": "4326:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4361:9:74", + "nodeType": "YulIdentifier", + "src": "4361:9:74" + }, + { + "name": "offset", + "nativeSrc": "4372:6:74", + "nodeType": "YulIdentifier", + "src": "4372:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4357:3:74", + "nodeType": "YulIdentifier", + "src": "4357:3:74" + }, + "nativeSrc": "4357:22:74", + "nodeType": "YulFunctionCall", + "src": "4357:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4381:7:74", + "nodeType": "YulIdentifier", + "src": "4381:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "4336:20:74", + "nodeType": "YulIdentifier", + "src": "4336:20:74" + }, + "nativeSrc": "4336:53:74", + "nodeType": "YulFunctionCall", + "src": "4336:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4326:6:74", + "nodeType": "YulIdentifier", + "src": "4326:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4409:118:74", + "nodeType": "YulBlock", + "src": "4409:118:74", + "statements": [ + { + "nativeSrc": "4424:16:74", + "nodeType": "YulVariableDeclaration", + "src": "4424:16:74", + "value": { + "kind": "number", + "nativeSrc": "4438:2:74", + "nodeType": "YulLiteral", + "src": "4438:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4428:6:74", + "nodeType": "YulTypedName", + "src": "4428:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4454:63:74", + "nodeType": "YulAssignment", + "src": "4454:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4489:9:74", + "nodeType": "YulIdentifier", + "src": "4489:9:74" + }, + { + "name": "offset", + "nativeSrc": "4500:6:74", + "nodeType": "YulIdentifier", + "src": "4500:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4485:3:74", + "nodeType": "YulIdentifier", + "src": "4485:3:74" + }, + "nativeSrc": "4485:22:74", + "nodeType": "YulFunctionCall", + "src": "4485:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4509:7:74", + "nodeType": "YulIdentifier", + "src": "4509:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "4464:20:74", + "nodeType": "YulIdentifier", + "src": "4464:20:74" + }, + "nativeSrc": "4464:53:74", + "nodeType": "YulFunctionCall", + "src": "4464:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "4454:6:74", + "nodeType": "YulIdentifier", + "src": "4454:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_address", + "nativeSrc": "4060:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4105:9:74", + "nodeType": "YulTypedName", + "src": "4105:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4116:7:74", + "nodeType": "YulTypedName", + "src": "4116:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4128:6:74", + "nodeType": "YulTypedName", + "src": "4128:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4136:6:74", + "nodeType": "YulTypedName", + "src": "4136:6:74", + "type": "" + } + ], + "src": "4060:474:74" + }, + { + "body": { + "nativeSrc": "4673:776:74", + "nodeType": "YulBlock", + "src": "4673:776:74", + "statements": [ + { + "body": { + "nativeSrc": "4720:83:74", + "nodeType": "YulBlock", + "src": "4720:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4722:77:74", + "nodeType": "YulIdentifier", + "src": "4722:77:74" + }, + "nativeSrc": "4722:79:74", + "nodeType": "YulFunctionCall", + "src": "4722:79:74" + }, + "nativeSrc": "4722:79:74", + "nodeType": "YulExpressionStatement", + "src": "4722:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4694:7:74", + "nodeType": "YulIdentifier", + "src": "4694:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4703:9:74", + "nodeType": "YulIdentifier", + "src": "4703:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4690:3:74", + "nodeType": "YulIdentifier", + "src": "4690:3:74" + }, + "nativeSrc": "4690:23:74", + "nodeType": "YulFunctionCall", + "src": "4690:23:74" + }, + { + "kind": "number", + "nativeSrc": "4715:3:74", + "nodeType": "YulLiteral", + "src": "4715:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4686:3:74", + "nodeType": "YulIdentifier", + "src": "4686:3:74" + }, + "nativeSrc": "4686:33:74", + "nodeType": "YulFunctionCall", + "src": "4686:33:74" + }, + "nativeSrc": "4683:120:74", + "nodeType": "YulIf", + "src": "4683:120:74" + }, + { + "nativeSrc": "4813:117:74", + "nodeType": "YulBlock", + "src": "4813:117:74", + "statements": [ + { + "nativeSrc": "4828:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4828:15:74", + "value": { + "kind": "number", + "nativeSrc": "4842:1:74", + "nodeType": "YulLiteral", + "src": "4842:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4832:6:74", + "nodeType": "YulTypedName", + "src": "4832:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4857:63:74", + "nodeType": "YulAssignment", + "src": "4857:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4892:9:74", + "nodeType": "YulIdentifier", + "src": "4892:9:74" + }, + { + "name": "offset", + "nativeSrc": "4903:6:74", + "nodeType": "YulIdentifier", + "src": "4903:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4888:3:74", + "nodeType": "YulIdentifier", + "src": "4888:3:74" + }, + "nativeSrc": "4888:22:74", + "nodeType": "YulFunctionCall", + "src": "4888:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4912:7:74", + "nodeType": "YulIdentifier", + "src": "4912:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "4867:20:74", + "nodeType": "YulIdentifier", + "src": "4867:20:74" + }, + "nativeSrc": "4867:53:74", + "nodeType": "YulFunctionCall", + "src": "4867:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4857:6:74", + "nodeType": "YulIdentifier", + "src": "4857:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4940:118:74", + "nodeType": "YulBlock", + "src": "4940:118:74", + "statements": [ + { + "nativeSrc": "4955:16:74", + "nodeType": "YulVariableDeclaration", + "src": "4955:16:74", + "value": { + "kind": "number", + "nativeSrc": "4969:2:74", + "nodeType": "YulLiteral", + "src": "4969:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4959:6:74", + "nodeType": "YulTypedName", + "src": "4959:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4985:63:74", + "nodeType": "YulAssignment", + "src": "4985:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5020:9:74", + "nodeType": "YulIdentifier", + "src": "5020:9:74" + }, + { + "name": "offset", + "nativeSrc": "5031:6:74", + "nodeType": "YulIdentifier", + "src": "5031:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5016:3:74", + "nodeType": "YulIdentifier", + "src": "5016:3:74" + }, + "nativeSrc": "5016:22:74", + "nodeType": "YulFunctionCall", + "src": "5016:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5040:7:74", + "nodeType": "YulIdentifier", + "src": "5040:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "4995:20:74", + "nodeType": "YulIdentifier", + "src": "4995:20:74" + }, + "nativeSrc": "4995:53:74", + "nodeType": "YulFunctionCall", + "src": "4995:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "4985:6:74", + "nodeType": "YulIdentifier", + "src": "4985:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5068:118:74", + "nodeType": "YulBlock", + "src": "5068:118:74", + "statements": [ + { + "nativeSrc": "5083:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5083:16:74", + "value": { + "kind": "number", + "nativeSrc": "5097:2:74", + "nodeType": "YulLiteral", + "src": "5097:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5087:6:74", + "nodeType": "YulTypedName", + "src": "5087:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5113:63:74", + "nodeType": "YulAssignment", + "src": "5113:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5148:9:74", + "nodeType": "YulIdentifier", + "src": "5148:9:74" + }, + { + "name": "offset", + "nativeSrc": "5159:6:74", + "nodeType": "YulIdentifier", + "src": "5159:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5144:3:74", + "nodeType": "YulIdentifier", + "src": "5144:3:74" + }, + "nativeSrc": "5144:22:74", + "nodeType": "YulFunctionCall", + "src": "5144:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5168:7:74", + "nodeType": "YulIdentifier", + "src": "5168:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5123:20:74", + "nodeType": "YulIdentifier", + "src": "5123:20:74" + }, + "nativeSrc": "5123:53:74", + "nodeType": "YulFunctionCall", + "src": "5123:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "5113:6:74", + "nodeType": "YulIdentifier", + "src": "5113:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5196:118:74", + "nodeType": "YulBlock", + "src": "5196:118:74", + "statements": [ + { + "nativeSrc": "5211:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5211:16:74", + "value": { + "kind": "number", + "nativeSrc": "5225:2:74", + "nodeType": "YulLiteral", + "src": "5225:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5215:6:74", + "nodeType": "YulTypedName", + "src": "5215:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5241:63:74", + "nodeType": "YulAssignment", + "src": "5241:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5276:9:74", + "nodeType": "YulIdentifier", + "src": "5276:9:74" + }, + { + "name": "offset", + "nativeSrc": "5287:6:74", + "nodeType": "YulIdentifier", + "src": "5287:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5272:3:74", + "nodeType": "YulIdentifier", + "src": "5272:3:74" + }, + "nativeSrc": "5272:22:74", + "nodeType": "YulFunctionCall", + "src": "5272:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5296:7:74", + "nodeType": "YulIdentifier", + "src": "5296:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5251:20:74", + "nodeType": "YulIdentifier", + "src": "5251:20:74" + }, + "nativeSrc": "5251:53:74", + "nodeType": "YulFunctionCall", + "src": "5251:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "5241:6:74", + "nodeType": "YulIdentifier", + "src": "5241:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5324:118:74", + "nodeType": "YulBlock", + "src": "5324:118:74", + "statements": [ + { + "nativeSrc": "5339:17:74", + "nodeType": "YulVariableDeclaration", + "src": "5339:17:74", + "value": { + "kind": "number", + "nativeSrc": "5353:3:74", + "nodeType": "YulLiteral", + "src": "5353:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5343:6:74", + "nodeType": "YulTypedName", + "src": "5343:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5370:62:74", + "nodeType": "YulAssignment", + "src": "5370:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5404:9:74", + "nodeType": "YulIdentifier", + "src": "5404:9:74" + }, + { + "name": "offset", + "nativeSrc": "5415:6:74", + "nodeType": "YulIdentifier", + "src": "5415:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5400:3:74", + "nodeType": "YulIdentifier", + "src": "5400:3:74" + }, + "nativeSrc": "5400:22:74", + "nodeType": "YulFunctionCall", + "src": "5400:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5424:7:74", + "nodeType": "YulIdentifier", + "src": "5424:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "5380:19:74", + "nodeType": "YulIdentifier", + "src": "5380:19:74" + }, + "nativeSrc": "5380:52:74", + "nodeType": "YulFunctionCall", + "src": "5380:52:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "5370:6:74", + "nodeType": "YulIdentifier", + "src": "5370:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_addresst_addresst_uint64", + "nativeSrc": "4540:909:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4611:9:74", + "nodeType": "YulTypedName", + "src": "4611:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4622:7:74", + "nodeType": "YulTypedName", + "src": "4622:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4634:6:74", + "nodeType": "YulTypedName", + "src": "4634:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4642:6:74", + "nodeType": "YulTypedName", + "src": "4642:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "4650:6:74", + "nodeType": "YulTypedName", + "src": "4650:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "4658:6:74", + "nodeType": "YulTypedName", + "src": "4658:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "4666:6:74", + "nodeType": "YulTypedName", + "src": "4666:6:74", + "type": "" + } + ], + "src": "4540:909:74" + }, + { + "body": { + "nativeSrc": "5497:48:74", + "nodeType": "YulBlock", + "src": "5497:48:74", + "statements": [ + { + "nativeSrc": "5507:32:74", + "nodeType": "YulAssignment", + "src": "5507:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5532:5:74", + "nodeType": "YulIdentifier", + "src": "5532:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5525:6:74", + "nodeType": "YulIdentifier", + "src": "5525:6:74" + }, + "nativeSrc": "5525:13:74", + "nodeType": "YulFunctionCall", + "src": "5525:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5518:6:74", + "nodeType": "YulIdentifier", + "src": "5518:6:74" + }, + "nativeSrc": "5518:21:74", + "nodeType": "YulFunctionCall", + "src": "5518:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "5507:7:74", + "nodeType": "YulIdentifier", + "src": "5507:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "5455:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5479:5:74", + "nodeType": "YulTypedName", + "src": "5479:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "5489:7:74", + "nodeType": "YulTypedName", + "src": "5489:7:74", + "type": "" + } + ], + "src": "5455:90:74" + }, + { + "body": { + "nativeSrc": "5591:76:74", + "nodeType": "YulBlock", + "src": "5591:76:74", + "statements": [ + { + "body": { + "nativeSrc": "5645:16:74", + "nodeType": "YulBlock", + "src": "5645:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5654:1:74", + "nodeType": "YulLiteral", + "src": "5654:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5657:1:74", + "nodeType": "YulLiteral", + "src": "5657:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5647:6:74", + "nodeType": "YulIdentifier", + "src": "5647:6:74" + }, + "nativeSrc": "5647:12:74", + "nodeType": "YulFunctionCall", + "src": "5647:12:74" + }, + "nativeSrc": "5647:12:74", + "nodeType": "YulExpressionStatement", + "src": "5647:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5614:5:74", + "nodeType": "YulIdentifier", + "src": "5614:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5636:5:74", + "nodeType": "YulIdentifier", + "src": "5636:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "5621:14:74", + "nodeType": "YulIdentifier", + "src": "5621:14:74" + }, + "nativeSrc": "5621:21:74", + "nodeType": "YulFunctionCall", + "src": "5621:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "5611:2:74", + "nodeType": "YulIdentifier", + "src": "5611:2:74" + }, + "nativeSrc": "5611:32:74", + "nodeType": "YulFunctionCall", + "src": "5611:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5604:6:74", + "nodeType": "YulIdentifier", + "src": "5604:6:74" + }, + "nativeSrc": "5604:40:74", + "nodeType": "YulFunctionCall", + "src": "5604:40:74" + }, + "nativeSrc": "5601:60:74", + "nodeType": "YulIf", + "src": "5601:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "5551:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5584:5:74", + "nodeType": "YulTypedName", + "src": "5584:5:74", + "type": "" + } + ], + "src": "5551:116:74" + }, + { + "body": { + "nativeSrc": "5722:84:74", + "nodeType": "YulBlock", + "src": "5722:84:74", + "statements": [ + { + "nativeSrc": "5732:29:74", + "nodeType": "YulAssignment", + "src": "5732:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5754:6:74", + "nodeType": "YulIdentifier", + "src": "5754:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "5741:12:74", + "nodeType": "YulIdentifier", + "src": "5741:12:74" + }, + "nativeSrc": "5741:20:74", + "nodeType": "YulFunctionCall", + "src": "5741:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "5732:5:74", + "nodeType": "YulIdentifier", + "src": "5732:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5794:5:74", + "nodeType": "YulIdentifier", + "src": "5794:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "5770:23:74", + "nodeType": "YulIdentifier", + "src": "5770:23:74" + }, + "nativeSrc": "5770:30:74", + "nodeType": "YulFunctionCall", + "src": "5770:30:74" + }, + "nativeSrc": "5770:30:74", + "nodeType": "YulExpressionStatement", + "src": "5770:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "5673:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "5700:6:74", + "nodeType": "YulTypedName", + "src": "5700:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5708:3:74", + "nodeType": "YulTypedName", + "src": "5708:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "5716:5:74", + "nodeType": "YulTypedName", + "src": "5716:5:74", + "type": "" + } + ], + "src": "5673:133:74" + }, + { + "body": { + "nativeSrc": "5892:388:74", + "nodeType": "YulBlock", + "src": "5892:388:74", + "statements": [ + { + "body": { + "nativeSrc": "5938:83:74", + "nodeType": "YulBlock", + "src": "5938:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5940:77:74", + "nodeType": "YulIdentifier", + "src": "5940:77:74" + }, + "nativeSrc": "5940:79:74", + "nodeType": "YulFunctionCall", + "src": "5940:79:74" + }, + "nativeSrc": "5940:79:74", + "nodeType": "YulExpressionStatement", + "src": "5940:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5913:7:74", + "nodeType": "YulIdentifier", + "src": "5913:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5922:9:74", + "nodeType": "YulIdentifier", + "src": "5922:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5909:3:74", + "nodeType": "YulIdentifier", + "src": "5909:3:74" + }, + "nativeSrc": "5909:23:74", + "nodeType": "YulFunctionCall", + "src": "5909:23:74" + }, + { + "kind": "number", + "nativeSrc": "5934:2:74", + "nodeType": "YulLiteral", + "src": "5934:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5905:3:74", + "nodeType": "YulIdentifier", + "src": "5905:3:74" + }, + "nativeSrc": "5905:32:74", + "nodeType": "YulFunctionCall", + "src": "5905:32:74" + }, + "nativeSrc": "5902:119:74", + "nodeType": "YulIf", + "src": "5902:119:74" + }, + { + "nativeSrc": "6031:117:74", + "nodeType": "YulBlock", + "src": "6031:117:74", + "statements": [ + { + "nativeSrc": "6046:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6046:15:74", + "value": { + "kind": "number", + "nativeSrc": "6060:1:74", + "nodeType": "YulLiteral", + "src": "6060:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6050:6:74", + "nodeType": "YulTypedName", + "src": "6050:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6075:63:74", + "nodeType": "YulAssignment", + "src": "6075:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6110:9:74", + "nodeType": "YulIdentifier", + "src": "6110:9:74" + }, + { + "name": "offset", + "nativeSrc": "6121:6:74", + "nodeType": "YulIdentifier", + "src": "6121:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6106:3:74", + "nodeType": "YulIdentifier", + "src": "6106:3:74" + }, + "nativeSrc": "6106:22:74", + "nodeType": "YulFunctionCall", + "src": "6106:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6130:7:74", + "nodeType": "YulIdentifier", + "src": "6130:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6085:20:74", + "nodeType": "YulIdentifier", + "src": "6085:20:74" + }, + "nativeSrc": "6085:53:74", + "nodeType": "YulFunctionCall", + "src": "6085:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6075:6:74", + "nodeType": "YulIdentifier", + "src": "6075:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6158:115:74", + "nodeType": "YulBlock", + "src": "6158:115:74", + "statements": [ + { + "nativeSrc": "6173:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6173:16:74", + "value": { + "kind": "number", + "nativeSrc": "6187:2:74", + "nodeType": "YulLiteral", + "src": "6187:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6177:6:74", + "nodeType": "YulTypedName", + "src": "6177:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6203:60:74", + "nodeType": "YulAssignment", + "src": "6203:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6235:9:74", + "nodeType": "YulIdentifier", + "src": "6235:9:74" + }, + { + "name": "offset", + "nativeSrc": "6246:6:74", + "nodeType": "YulIdentifier", + "src": "6246:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6231:3:74", + "nodeType": "YulIdentifier", + "src": "6231:3:74" + }, + "nativeSrc": "6231:22:74", + "nodeType": "YulFunctionCall", + "src": "6231:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6255:7:74", + "nodeType": "YulIdentifier", + "src": "6255:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "6213:17:74", + "nodeType": "YulIdentifier", + "src": "6213:17:74" + }, + "nativeSrc": "6213:50:74", + "nodeType": "YulFunctionCall", + "src": "6213:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6203:6:74", + "nodeType": "YulIdentifier", + "src": "6203:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "5812:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5854:9:74", + "nodeType": "YulTypedName", + "src": "5854:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5865:7:74", + "nodeType": "YulTypedName", + "src": "5865:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5877:6:74", + "nodeType": "YulTypedName", + "src": "5877:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5885:6:74", + "nodeType": "YulTypedName", + "src": "5885:6:74", + "type": "" + } + ], + "src": "5812:468:74" + }, + { + "body": { + "nativeSrc": "6402:647:74", + "nodeType": "YulBlock", + "src": "6402:647:74", + "statements": [ + { + "body": { + "nativeSrc": "6449:83:74", + "nodeType": "YulBlock", + "src": "6449:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6451:77:74", + "nodeType": "YulIdentifier", + "src": "6451:77:74" + }, + "nativeSrc": "6451:79:74", + "nodeType": "YulFunctionCall", + "src": "6451:79:74" + }, + "nativeSrc": "6451:79:74", + "nodeType": "YulExpressionStatement", + "src": "6451:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6423:7:74", + "nodeType": "YulIdentifier", + "src": "6423:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6432:9:74", + "nodeType": "YulIdentifier", + "src": "6432:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6419:3:74", + "nodeType": "YulIdentifier", + "src": "6419:3:74" + }, + "nativeSrc": "6419:23:74", + "nodeType": "YulFunctionCall", + "src": "6419:23:74" + }, + { + "kind": "number", + "nativeSrc": "6444:3:74", + "nodeType": "YulLiteral", + "src": "6444:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6415:3:74", + "nodeType": "YulIdentifier", + "src": "6415:3:74" + }, + "nativeSrc": "6415:33:74", + "nodeType": "YulFunctionCall", + "src": "6415:33:74" + }, + "nativeSrc": "6412:120:74", + "nodeType": "YulIf", + "src": "6412:120:74" + }, + { + "nativeSrc": "6542:117:74", + "nodeType": "YulBlock", + "src": "6542:117:74", + "statements": [ + { + "nativeSrc": "6557:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6557:15:74", + "value": { + "kind": "number", + "nativeSrc": "6571:1:74", + "nodeType": "YulLiteral", + "src": "6571:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6561:6:74", + "nodeType": "YulTypedName", + "src": "6561:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6586:63:74", + "nodeType": "YulAssignment", + "src": "6586:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6621:9:74", + "nodeType": "YulIdentifier", + "src": "6621:9:74" + }, + { + "name": "offset", + "nativeSrc": "6632:6:74", + "nodeType": "YulIdentifier", + "src": "6632:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6617:3:74", + "nodeType": "YulIdentifier", + "src": "6617:3:74" + }, + "nativeSrc": "6617:22:74", + "nodeType": "YulFunctionCall", + "src": "6617:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6641:7:74", + "nodeType": "YulIdentifier", + "src": "6641:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "6596:20:74", + "nodeType": "YulIdentifier", + "src": "6596:20:74" + }, + "nativeSrc": "6596:53:74", + "nodeType": "YulFunctionCall", + "src": "6596:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6586:6:74", + "nodeType": "YulIdentifier", + "src": "6586:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6669:118:74", + "nodeType": "YulBlock", + "src": "6669:118:74", + "statements": [ + { + "nativeSrc": "6684:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6684:16:74", + "value": { + "kind": "number", + "nativeSrc": "6698:2:74", + "nodeType": "YulLiteral", + "src": "6698:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6688:6:74", + "nodeType": "YulTypedName", + "src": "6688:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6714:63:74", + "nodeType": "YulAssignment", + "src": "6714:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6749:9:74", + "nodeType": "YulIdentifier", + "src": "6749:9:74" + }, + { + "name": "offset", + "nativeSrc": "6760:6:74", + "nodeType": "YulIdentifier", + "src": "6760:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6745:3:74", + "nodeType": "YulIdentifier", + "src": "6745:3:74" + }, + "nativeSrc": "6745:22:74", + "nodeType": "YulFunctionCall", + "src": "6745:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6769:7:74", + "nodeType": "YulIdentifier", + "src": "6769:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6724:20:74", + "nodeType": "YulIdentifier", + "src": "6724:20:74" + }, + "nativeSrc": "6724:53:74", + "nodeType": "YulFunctionCall", + "src": "6724:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6714:6:74", + "nodeType": "YulIdentifier", + "src": "6714:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6797:118:74", + "nodeType": "YulBlock", + "src": "6797:118:74", + "statements": [ + { + "nativeSrc": "6812:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6812:16:74", + "value": { + "kind": "number", + "nativeSrc": "6826:2:74", + "nodeType": "YulLiteral", + "src": "6826:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6816:6:74", + "nodeType": "YulTypedName", + "src": "6816:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6842:63:74", + "nodeType": "YulAssignment", + "src": "6842:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6877:9:74", + "nodeType": "YulIdentifier", + "src": "6877:9:74" + }, + { + "name": "offset", + "nativeSrc": "6888:6:74", + "nodeType": "YulIdentifier", + "src": "6888:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6873:3:74", + "nodeType": "YulIdentifier", + "src": "6873:3:74" + }, + "nativeSrc": "6873:22:74", + "nodeType": "YulFunctionCall", + "src": "6873:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6897:7:74", + "nodeType": "YulIdentifier", + "src": "6897:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6852:20:74", + "nodeType": "YulIdentifier", + "src": "6852:20:74" + }, + "nativeSrc": "6852:53:74", + "nodeType": "YulFunctionCall", + "src": "6852:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "6842:6:74", + "nodeType": "YulIdentifier", + "src": "6842:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6925:117:74", + "nodeType": "YulBlock", + "src": "6925:117:74", + "statements": [ + { + "nativeSrc": "6940:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6940:16:74", + "value": { + "kind": "number", + "nativeSrc": "6954:2:74", + "nodeType": "YulLiteral", + "src": "6954:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6944:6:74", + "nodeType": "YulTypedName", + "src": "6944:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6970:62:74", + "nodeType": "YulAssignment", + "src": "6970:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7004:9:74", + "nodeType": "YulIdentifier", + "src": "7004:9:74" + }, + { + "name": "offset", + "nativeSrc": "7015:6:74", + "nodeType": "YulIdentifier", + "src": "7015:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7000:3:74", + "nodeType": "YulIdentifier", + "src": "7000:3:74" + }, + "nativeSrc": "7000:22:74", + "nodeType": "YulFunctionCall", + "src": "7000:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7024:7:74", + "nodeType": "YulIdentifier", + "src": "7024:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "6980:19:74", + "nodeType": "YulIdentifier", + "src": "6980:19:74" + }, + "nativeSrc": "6980:52:74", + "nodeType": "YulFunctionCall", + "src": "6980:52:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "6970:6:74", + "nodeType": "YulIdentifier", + "src": "6970:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_addresst_addresst_uint64", + "nativeSrc": "6286:763:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6348:9:74", + "nodeType": "YulTypedName", + "src": "6348:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6359:7:74", + "nodeType": "YulTypedName", + "src": "6359:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6371:6:74", + "nodeType": "YulTypedName", + "src": "6371:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6379:6:74", + "nodeType": "YulTypedName", + "src": "6379:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "6387:6:74", + "nodeType": "YulTypedName", + "src": "6387:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "6395:6:74", + "nodeType": "YulTypedName", + "src": "6395:6:74", + "type": "" + } + ], + "src": "6286:763:74" + }, + { + "body": { + "nativeSrc": "7138:391:74", + "nodeType": "YulBlock", + "src": "7138:391:74", + "statements": [ + { + "body": { + "nativeSrc": "7184:83:74", + "nodeType": "YulBlock", + "src": "7184:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "7186:77:74", + "nodeType": "YulIdentifier", + "src": "7186:77:74" + }, + "nativeSrc": "7186:79:74", + "nodeType": "YulFunctionCall", + "src": "7186:79:74" + }, + "nativeSrc": "7186:79:74", + "nodeType": "YulExpressionStatement", + "src": "7186:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "7159:7:74", + "nodeType": "YulIdentifier", + "src": "7159:7:74" + }, + { + "name": "headStart", + "nativeSrc": "7168:9:74", + "nodeType": "YulIdentifier", + "src": "7168:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7155:3:74", + "nodeType": "YulIdentifier", + "src": "7155:3:74" + }, + "nativeSrc": "7155:23:74", + "nodeType": "YulFunctionCall", + "src": "7155:23:74" + }, + { + "kind": "number", + "nativeSrc": "7180:2:74", + "nodeType": "YulLiteral", + "src": "7180:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "7151:3:74", + "nodeType": "YulIdentifier", + "src": "7151:3:74" + }, + "nativeSrc": "7151:32:74", + "nodeType": "YulFunctionCall", + "src": "7151:32:74" + }, + "nativeSrc": "7148:119:74", + "nodeType": "YulIf", + "src": "7148:119:74" + }, + { + "nativeSrc": "7277:117:74", + "nodeType": "YulBlock", + "src": "7277:117:74", + "statements": [ + { + "nativeSrc": "7292:15:74", + "nodeType": "YulVariableDeclaration", + "src": "7292:15:74", + "value": { + "kind": "number", + "nativeSrc": "7306:1:74", + "nodeType": "YulLiteral", + "src": "7306:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7296:6:74", + "nodeType": "YulTypedName", + "src": "7296:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7321:63:74", + "nodeType": "YulAssignment", + "src": "7321:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7356:9:74", + "nodeType": "YulIdentifier", + "src": "7356:9:74" + }, + { + "name": "offset", + "nativeSrc": "7367:6:74", + "nodeType": "YulIdentifier", + "src": "7367:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7352:3:74", + "nodeType": "YulIdentifier", + "src": "7352:3:74" + }, + "nativeSrc": "7352:22:74", + "nodeType": "YulFunctionCall", + "src": "7352:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7376:7:74", + "nodeType": "YulIdentifier", + "src": "7376:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "7331:20:74", + "nodeType": "YulIdentifier", + "src": "7331:20:74" + }, + "nativeSrc": "7331:53:74", + "nodeType": "YulFunctionCall", + "src": "7331:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "7321:6:74", + "nodeType": "YulIdentifier", + "src": "7321:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "7404:118:74", + "nodeType": "YulBlock", + "src": "7404:118:74", + "statements": [ + { + "nativeSrc": "7419:16:74", + "nodeType": "YulVariableDeclaration", + "src": "7419:16:74", + "value": { + "kind": "number", + "nativeSrc": "7433:2:74", + "nodeType": "YulLiteral", + "src": "7433:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7423:6:74", + "nodeType": "YulTypedName", + "src": "7423:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7449:63:74", + "nodeType": "YulAssignment", + "src": "7449:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7484:9:74", + "nodeType": "YulIdentifier", + "src": "7484:9:74" + }, + { + "name": "offset", + "nativeSrc": "7495:6:74", + "nodeType": "YulIdentifier", + "src": "7495:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7480:3:74", + "nodeType": "YulIdentifier", + "src": "7480:3:74" + }, + "nativeSrc": "7480:22:74", + "nodeType": "YulFunctionCall", + "src": "7480:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7504:7:74", + "nodeType": "YulIdentifier", + "src": "7504:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "7459:20:74", + "nodeType": "YulIdentifier", + "src": "7459:20:74" + }, + "nativeSrc": "7459:53:74", + "nodeType": "YulFunctionCall", + "src": "7459:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "7449:6:74", + "nodeType": "YulIdentifier", + "src": "7449:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "7055:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7100:9:74", + "nodeType": "YulTypedName", + "src": "7100:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "7111:7:74", + "nodeType": "YulTypedName", + "src": "7111:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "7123:6:74", + "nodeType": "YulTypedName", + "src": "7123:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "7131:6:74", + "nodeType": "YulTypedName", + "src": "7131:6:74", + "type": "" + } + ], + "src": "7055:474:74" + }, + { + "body": { + "nativeSrc": "7594:50:74", + "nodeType": "YulBlock", + "src": "7594:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7611:3:74", + "nodeType": "YulIdentifier", + "src": "7611:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7631:5:74", + "nodeType": "YulIdentifier", + "src": "7631:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "7616:14:74", + "nodeType": "YulIdentifier", + "src": "7616:14:74" + }, + "nativeSrc": "7616:21:74", + "nodeType": "YulFunctionCall", + "src": "7616:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7604:6:74", + "nodeType": "YulIdentifier", + "src": "7604:6:74" + }, + "nativeSrc": "7604:34:74", + "nodeType": "YulFunctionCall", + "src": "7604:34:74" + }, + "nativeSrc": "7604:34:74", + "nodeType": "YulExpressionStatement", + "src": "7604:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "7535:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7582:5:74", + "nodeType": "YulTypedName", + "src": "7582:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7589:3:74", + "nodeType": "YulTypedName", + "src": "7589:3:74", + "type": "" + } + ], + "src": "7535:109:74" + }, + { + "body": { + "nativeSrc": "7742:118:74", + "nodeType": "YulBlock", + "src": "7742:118:74", + "statements": [ + { + "nativeSrc": "7752:26:74", + "nodeType": "YulAssignment", + "src": "7752:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7764:9:74", + "nodeType": "YulIdentifier", + "src": "7764:9:74" + }, + { + "kind": "number", + "nativeSrc": "7775:2:74", + "nodeType": "YulLiteral", + "src": "7775:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7760:3:74", + "nodeType": "YulIdentifier", + "src": "7760:3:74" + }, + "nativeSrc": "7760:18:74", + "nodeType": "YulFunctionCall", + "src": "7760:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7752:4:74", + "nodeType": "YulIdentifier", + "src": "7752:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "7826:6:74", + "nodeType": "YulIdentifier", + "src": "7826:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7839:9:74", + "nodeType": "YulIdentifier", + "src": "7839:9:74" + }, + { + "kind": "number", + "nativeSrc": "7850:1:74", + "nodeType": "YulLiteral", + "src": "7850:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7835:3:74", + "nodeType": "YulIdentifier", + "src": "7835:3:74" + }, + "nativeSrc": "7835:17:74", + "nodeType": "YulFunctionCall", + "src": "7835:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "7788:37:74", + "nodeType": "YulIdentifier", + "src": "7788:37:74" + }, + "nativeSrc": "7788:65:74", + "nodeType": "YulFunctionCall", + "src": "7788:65:74" + }, + "nativeSrc": "7788:65:74", + "nodeType": "YulExpressionStatement", + "src": "7788:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "7650:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7714:9:74", + "nodeType": "YulTypedName", + "src": "7714:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "7726:6:74", + "nodeType": "YulTypedName", + "src": "7726:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "7737:4:74", + "nodeType": "YulTypedName", + "src": "7737:4:74", + "type": "" + } + ], + "src": "7650:210:74" + }, + { + "body": { + "nativeSrc": "7913:32:74", + "nodeType": "YulBlock", + "src": "7913:32:74", + "statements": [ + { + "nativeSrc": "7923:16:74", + "nodeType": "YulAssignment", + "src": "7923:16:74", + "value": { + "name": "value", + "nativeSrc": "7934:5:74", + "nodeType": "YulIdentifier", + "src": "7934:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "7923:7:74", + "nodeType": "YulIdentifier", + "src": "7923:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nativeSrc": "7866:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7895:5:74", + "nodeType": "YulTypedName", + "src": "7895:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "7905:7:74", + "nodeType": "YulTypedName", + "src": "7905:7:74", + "type": "" + } + ], + "src": "7866:79:74" + }, + { + "body": { + "nativeSrc": "8034:74:74", + "nodeType": "YulBlock", + "src": "8034:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8051:3:74", + "nodeType": "YulIdentifier", + "src": "8051:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8094:5:74", + "nodeType": "YulIdentifier", + "src": "8094:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "8076:17:74", + "nodeType": "YulIdentifier", + "src": "8076:17:74" + }, + "nativeSrc": "8076:24:74", + "nodeType": "YulFunctionCall", + "src": "8076:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nativeSrc": "8056:19:74", + "nodeType": "YulIdentifier", + "src": "8056:19:74" + }, + "nativeSrc": "8056:45:74", + "nodeType": "YulFunctionCall", + "src": "8056:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8044:6:74", + "nodeType": "YulIdentifier", + "src": "8044:6:74" + }, + "nativeSrc": "8044:58:74", + "nodeType": "YulFunctionCall", + "src": "8044:58:74" + }, + "nativeSrc": "8044:58:74", + "nodeType": "YulExpressionStatement", + "src": "8044:58:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "7951:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8022:5:74", + "nodeType": "YulTypedName", + "src": "8022:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8029:3:74", + "nodeType": "YulTypedName", + "src": "8029:3:74", + "type": "" + } + ], + "src": "7951:157:74" + }, + { + "body": { + "nativeSrc": "8258:253:74", + "nodeType": "YulBlock", + "src": "8258:253:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "8331:6:74", + "nodeType": "YulIdentifier", + "src": "8331:6:74" + }, + { + "name": "pos", + "nativeSrc": "8340:3:74", + "nodeType": "YulIdentifier", + "src": "8340:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "8269:61:74", + "nodeType": "YulIdentifier", + "src": "8269:61:74" + }, + "nativeSrc": "8269:75:74", + "nodeType": "YulFunctionCall", + "src": "8269:75:74" + }, + "nativeSrc": "8269:75:74", + "nodeType": "YulExpressionStatement", + "src": "8269:75:74" + }, + { + "nativeSrc": "8353:19:74", + "nodeType": "YulAssignment", + "src": "8353:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8364:3:74", + "nodeType": "YulIdentifier", + "src": "8364:3:74" + }, + { + "kind": "number", + "nativeSrc": "8369:2:74", + "nodeType": "YulLiteral", + "src": "8369:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8360:3:74", + "nodeType": "YulIdentifier", + "src": "8360:3:74" + }, + "nativeSrc": "8360:12:74", + "nodeType": "YulFunctionCall", + "src": "8360:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "8353:3:74", + "nodeType": "YulIdentifier", + "src": "8353:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "8444:6:74", + "nodeType": "YulIdentifier", + "src": "8444:6:74" + }, + { + "name": "pos", + "nativeSrc": "8453:3:74", + "nodeType": "YulIdentifier", + "src": "8453:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "8382:61:74", + "nodeType": "YulIdentifier", + "src": "8382:61:74" + }, + "nativeSrc": "8382:75:74", + "nodeType": "YulFunctionCall", + "src": "8382:75:74" + }, + "nativeSrc": "8382:75:74", + "nodeType": "YulExpressionStatement", + "src": "8382:75:74" + }, + { + "nativeSrc": "8466:19:74", + "nodeType": "YulAssignment", + "src": "8466:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8477:3:74", + "nodeType": "YulIdentifier", + "src": "8477:3:74" + }, + { + "kind": "number", + "nativeSrc": "8482:2:74", + "nodeType": "YulLiteral", + "src": "8482:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8473:3:74", + "nodeType": "YulIdentifier", + "src": "8473:3:74" + }, + "nativeSrc": "8473:12:74", + "nodeType": "YulFunctionCall", + "src": "8473:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "8466:3:74", + "nodeType": "YulIdentifier", + "src": "8466:3:74" + } + ] + }, + { + "nativeSrc": "8495:10:74", + "nodeType": "YulAssignment", + "src": "8495:10:74", + "value": { + "name": "pos", + "nativeSrc": "8502:3:74", + "nodeType": "YulIdentifier", + "src": "8502:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "8495:3:74", + "nodeType": "YulIdentifier", + "src": "8495:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "8114:397:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "8229:3:74", + "nodeType": "YulTypedName", + "src": "8229:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8235:6:74", + "nodeType": "YulTypedName", + "src": "8235:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "8243:6:74", + "nodeType": "YulTypedName", + "src": "8243:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "8254:3:74", + "nodeType": "YulTypedName", + "src": "8254:3:74", + "type": "" + } + ], + "src": "8114:397:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function validator_revert_t_uint64(value) {\n if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint64(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint64(value)\n }\n\n function abi_decode_tuple_t_bytes32t_uint64(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint64(value))\n }\n\n function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_addresst_addresst_uint64(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_addresst_addresst_uint64(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101b15780635ef2c7f0146101cd578063a22cb465146101e9578063cf40882314610205578063e985e9c514610221578063f79fe53814610251576100b4565b80630178b8bf146100b957806302571be3146100e957806306ab59231461011957806314ab90381461014957806316a25cbd146101655780631896f70a14610195575b600080fd5b6100d360048036038101906100ce9190610dda565b610281565b6040516100e09190610e48565b60405180910390f35b61010360048036038101906100fe9190610dda565b6102c0565b6040516101109190610e48565b60405180910390f35b610133600480360381019061012e9190610e8f565b610342565b6040516101409190610ef1565b60405180910390f35b610163600480360381019061015e9190610f4c565b6104c5565b005b61017f600480360381019061017a9190610dda565b610643565b60405161018c9190610f9b565b60405180910390f35b6101af60048036038101906101aa9190610fb6565b610676565b005b6101cb60048036038101906101c69190610fb6565b61080c565b005b6101e760048036038101906101e29190610ff6565b610958565b005b61020360048036038101906101fe91906110a9565b61097a565b005b61021f600480360381019061021a91906110e9565b610a77565b005b61023b60048036038101906102369190611150565b610a92565b604051610248919061119f565b60405180910390f35b61026b60048036038101906102669190610dda565b610b26565b604051610278919061119f565b60405180910390f35b600080600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60008060008084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361033857600091505061033d565b809150505b919050565b600083600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061043f5750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61044857600080fd5b6000868660405160200161045d9291906111db565b60405160208183030381529060405280519060200120905061047f8186610b94565b85877fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82876040516104b09190610e48565b60405180910390a38093505050509392505050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806105c05750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6105c957600080fd5b837f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68846040516105f99190610f9b565b60405180910390a28260008086815260200190815260200160002060010160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050505050565b600080600083815260200190815260200160002060010160149054906101000a900467ffffffffffffffff169050919050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806107715750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61077a57600080fd5b837f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0846040516107aa9190610e48565b60405180910390a28260008086815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806109075750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61091057600080fd5b61091a8484610b94565b837fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2668460405161094a9190610e48565b60405180910390a250505050565b6000610965868686610342565b9050610972818484610bec565b505050505050565b80600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610a6b919061119f565b60405180910390a35050565b610a81848461080c565b610a8c848383610bec565b50505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b8060008084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610ce1578160008085815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550827f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a083604051610cd89190610e48565b60405180910390a25b60008084815260200190815260200160002060010160149054906101000a900467ffffffffffffffff1667ffffffffffffffff168167ffffffffffffffff1614610d9a578060008085815260200190815260200160002060010160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550827f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa6882604051610d919190610f9b565b60405180910390a25b505050565b600080fd5b6000819050919050565b610db781610da4565b8114610dc257600080fd5b50565b600081359050610dd481610dae565b92915050565b600060208284031215610df057610def610d9f565b5b6000610dfe84828501610dc5565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e3282610e07565b9050919050565b610e4281610e27565b82525050565b6000602082019050610e5d6000830184610e39565b92915050565b610e6c81610e27565b8114610e7757600080fd5b50565b600081359050610e8981610e63565b92915050565b600080600060608486031215610ea857610ea7610d9f565b5b6000610eb686828701610dc5565b9350506020610ec786828701610dc5565b9250506040610ed886828701610e7a565b9150509250925092565b610eeb81610da4565b82525050565b6000602082019050610f066000830184610ee2565b92915050565b600067ffffffffffffffff82169050919050565b610f2981610f0c565b8114610f3457600080fd5b50565b600081359050610f4681610f20565b92915050565b60008060408385031215610f6357610f62610d9f565b5b6000610f7185828601610dc5565b9250506020610f8285828601610f37565b9150509250929050565b610f9581610f0c565b82525050565b6000602082019050610fb06000830184610f8c565b92915050565b60008060408385031215610fcd57610fcc610d9f565b5b6000610fdb85828601610dc5565b9250506020610fec85828601610e7a565b9150509250929050565b600080600080600060a0868803121561101257611011610d9f565b5b600061102088828901610dc5565b955050602061103188828901610dc5565b945050604061104288828901610e7a565b935050606061105388828901610e7a565b925050608061106488828901610f37565b9150509295509295909350565b60008115159050919050565b61108681611071565b811461109157600080fd5b50565b6000813590506110a38161107d565b92915050565b600080604083850312156110c0576110bf610d9f565b5b60006110ce85828601610e7a565b92505060206110df85828601611094565b9150509250929050565b6000806000806080858703121561110357611102610d9f565b5b600061111187828801610dc5565b945050602061112287828801610e7a565b935050604061113387828801610e7a565b925050606061114487828801610f37565b91505092959194509250565b6000806040838503121561116757611166610d9f565b5b600061117585828601610e7a565b925050602061118685828601610e7a565b9150509250929050565b61119981611071565b82525050565b60006020820190506111b46000830184611190565b92915050565b6000819050919050565b6111d56111d082610da4565b6111ba565b82525050565b60006111e782856111c4565b6020820191506111f782846111c4565b602082019150819050939250505056fea264697066735822122043e57cf651ef70187099c519c3cea605ee62dddc2138da9b912df1fc3ef6163b64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xB4 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5B0FC9C3 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0x5B0FC9C3 EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x5EF2C7F0 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x1E9 JUMPI DUP1 PUSH4 0xCF408823 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x221 JUMPI DUP1 PUSH4 0xF79FE538 EQ PUSH2 0x251 JUMPI PUSH2 0xB4 JUMP JUMPDEST DUP1 PUSH4 0x178B8BF EQ PUSH2 0xB9 JUMPI DUP1 PUSH4 0x2571BE3 EQ PUSH2 0xE9 JUMPI DUP1 PUSH4 0x6AB5923 EQ PUSH2 0x119 JUMPI DUP1 PUSH4 0x14AB9038 EQ PUSH2 0x149 JUMPI DUP1 PUSH4 0x16A25CBD EQ PUSH2 0x165 JUMPI DUP1 PUSH4 0x1896F70A EQ PUSH2 0x195 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCE SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x281 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE0 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x103 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xFE SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x2C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x110 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x133 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x12E SWAP2 SWAP1 PUSH2 0xE8F JUMP JUMPDEST PUSH2 0x342 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x140 SWAP2 SWAP1 PUSH2 0xEF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x163 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15E SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH2 0x4C5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17A SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0x643 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18C SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0xFB6 JUMP JUMPDEST PUSH2 0x676 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1C6 SWAP2 SWAP1 PUSH2 0xFB6 JUMP JUMPDEST PUSH2 0x80C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1E7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0xFF6 JUMP JUMPDEST PUSH2 0x958 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x203 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1FE SWAP2 SWAP1 PUSH2 0x10A9 JUMP JUMPDEST PUSH2 0x97A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x21F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x21A SWAP2 SWAP1 PUSH2 0x10E9 JUMP JUMPDEST PUSH2 0xA77 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x23B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x236 SWAP2 SWAP1 PUSH2 0x1150 JUMP JUMPDEST PUSH2 0xA92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x248 SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x266 SWAP2 SWAP1 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xB26 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x278 SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x338 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x33D JUMP JUMPDEST DUP1 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x43F JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x448 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x45D SWAP3 SWAP2 SWAP1 PUSH2 0x11DB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH2 0x47F DUP2 DUP7 PUSH2 0xB94 JUMP JUMPDEST DUP6 DUP8 PUSH32 0xCE0457FE73731F824CC272376169235128C118B49D344817417C6D108D155E82 DUP8 PUSH1 0x40 MLOAD PUSH2 0x4B0 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x5C0 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x5C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x1D4F9BBFC9CAB89D66E1A1562F2233CCBF1308CB4F63DE2EAD5787ADDDB8FA68 DUP5 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP3 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x77A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x335721B01866DC23FBEE8B6B2C7B1E14D6F05C28CD35A2C934239F94095602A0 DUP5 PUSH1 0x40 MLOAD PUSH2 0x7AA SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP3 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x907 JUMPI POP PUSH1 0x1 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x910 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x91A DUP5 DUP5 PUSH2 0xB94 JUMP JUMPDEST DUP4 PUSH32 0xD4735D920B0F87494915F556DD9B54C8F309026070CAEA5C737245152564D266 DUP5 PUSH1 0x40 MLOAD PUSH2 0x94A SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x965 DUP7 DUP7 DUP7 PUSH2 0x342 JUMP JUMPDEST SWAP1 POP PUSH2 0x972 DUP2 DUP5 DUP5 PUSH2 0xBEC JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0xA6B SWAP2 SWAP1 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0xA81 DUP5 DUP5 PUSH2 0x80C JUMP JUMPDEST PUSH2 0xA8C DUP5 DUP4 DUP4 PUSH2 0xBEC JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xCE1 JUMPI DUP2 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH32 0x335721B01866DC23FBEE8B6B2C7B1E14D6F05C28CD35A2C934239F94095602A0 DUP4 PUSH1 0x40 MLOAD PUSH2 0xCD8 SWAP2 SWAP1 PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD9A JUMPI DUP1 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH32 0x1D4F9BBFC9CAB89D66E1A1562F2233CCBF1308CB4F63DE2EAD5787ADDDB8FA68 DUP3 PUSH1 0x40 MLOAD PUSH2 0xD91 SWAP2 SWAP1 PUSH2 0xF9B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xDB7 DUP2 PUSH2 0xDA4 JUMP JUMPDEST DUP2 EQ PUSH2 0xDC2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xDD4 DUP2 PUSH2 0xDAE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xDF0 JUMPI PUSH2 0xDEF PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xDFE DUP5 DUP3 DUP6 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE32 DUP3 PUSH2 0xE07 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE42 DUP2 PUSH2 0xE27 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE5D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xE39 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xE6C DUP2 PUSH2 0xE27 JUMP JUMPDEST DUP2 EQ PUSH2 0xE77 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xE89 DUP2 PUSH2 0xE63 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xEA8 JUMPI PUSH2 0xEA7 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xEB6 DUP7 DUP3 DUP8 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0xEC7 DUP7 DUP3 DUP8 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0xED8 DUP7 DUP3 DUP8 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0xEEB DUP2 PUSH2 0xDA4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xF06 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xEE2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF29 DUP2 PUSH2 0xF0C JUMP JUMPDEST DUP2 EQ PUSH2 0xF34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xF46 DUP2 PUSH2 0xF20 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xF63 JUMPI PUSH2 0xF62 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xF71 DUP6 DUP3 DUP7 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xF82 DUP6 DUP3 DUP7 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0xF95 DUP2 PUSH2 0xF0C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xFB0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xF8C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xFCD JUMPI PUSH2 0xFCC PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xFDB DUP6 DUP3 DUP7 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xFEC DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x1012 JUMPI PUSH2 0x1011 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1020 DUP9 DUP3 DUP10 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x1031 DUP9 DUP3 DUP10 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x1042 DUP9 DUP3 DUP10 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x1053 DUP9 DUP3 DUP10 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1064 DUP9 DUP3 DUP10 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1086 DUP2 PUSH2 0x1071 JUMP JUMPDEST DUP2 EQ PUSH2 0x1091 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x10A3 DUP2 PUSH2 0x107D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10C0 JUMPI PUSH2 0x10BF PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x10CE DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10DF DUP6 DUP3 DUP7 ADD PUSH2 0x1094 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1103 JUMPI PUSH2 0x1102 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1111 DUP8 DUP3 DUP9 ADD PUSH2 0xDC5 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x1122 DUP8 DUP3 DUP9 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1133 DUP8 DUP3 DUP9 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x1144 DUP8 DUP3 DUP9 ADD PUSH2 0xF37 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0xD9F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1175 DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1186 DUP6 DUP3 DUP7 ADD PUSH2 0xE7A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1199 DUP2 PUSH2 0x1071 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x11B4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1190 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x11D5 PUSH2 0x11D0 DUP3 PUSH2 0xDA4 JUMP JUMPDEST PUSH2 0x11BA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11E7 DUP3 DUP6 PUSH2 0x11C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x11F7 DUP3 DUP5 PUSH2 0x11C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 NUMBER 0xE5 PUSH29 0xF651EF70187099C519C3CEA605EE62DDDC2138DA9B912DF1FC3EF6163B PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "85:6342:12:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4675:139;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4259:243;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2494:335;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3360:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4982:114;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3004:208;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1997:185;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1464:294;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3871:228;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;928:229;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5732:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5266:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4675:139;4759:7;4785;:13;4793:4;4785:13;;;;;;;;;;;:22;;;;;;;;;;;;4778:29;;4675:139;;;:::o;4259:243::-;4340:7;4359:12;4374:7;:13;4382:4;4374:13;;;;;;;;;;;:19;;;;;;;;;;;;4359:34;;4423:4;4407:21;;:4;:21;;;4403:71;;4459:3;4444:19;;;;;4403:71;4491:4;4484:11;;;4259:243;;;;:::o;2494:335::-;2643:7;2628:4;430:13;446:7;:13;454:4;446:13;;;;;;;;;;;:19;;;;;;;;;;;;430:35;;492:10;483:19;;:5;:19;;;:51;;;;506:9;:16;516:5;506:16;;;;;;;;;;;;;;;:28;523:10;506:28;;;;;;;;;;;;;;;;;;;;;;;;;483:51;475:60;;;;;;2662:15:::1;2707:4;2713:5;2690:29;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2680:40;;;;;;2662:58;;2730:25;2740:7;2749:5;2730:9;:25::i;:::-;2785:5;2779:4;2770:28;2792:5;2770:28;;;;;;:::i;:::-;;;;;;;;2815:7;2808:14;;;420:133:::0;2494:335;;;;;;:::o;3360:177::-;3459:4;430:13;446:7;:13;454:4;446:13;;;;;;;;;;;:19;;;;;;;;;;;;430:35;;492:10;483:19;;:5;:19;;;:51;;;;506:9;:16;516:5;506:16;;;;;;;;;;;;;;;:28;523:10;506:28;;;;;;;;;;;;;;;;;;;;;;;;;483:51;475:60;;;;;;3487:4:::1;3480:17;3493:3;3480:17;;;;;;:::i;:::-;;;;;;;;3527:3;3507:7;:13:::0;3515:4:::1;3507:13;;;;;;;;;;;:17;;;:23;;;;;;;;;;;;;;;;;;420:133:::0;3360:177;;;:::o;4982:114::-;5047:6;5072:7;:13;5080:4;5072:13;;;;;;;;;;;:17;;;;;;;;;;;;5065:24;;4982:114;;;:::o;3004:208::-;3114:4;430:13;446:7;:13;454:4;446:13;;;;;;;;;;;:19;;;;;;;;;;;;430:35;;492:10;483:19;;:5;:19;;;:51;;;;506:9;:16;516:5;506:16;;;;;;;;;;;;;;;:28;523:10;506:28;;;;;;;;;;;;;;;;;;;;;;;;;483:51;475:60;;;;;;3147:4:::1;3135:27;3153:8;3135:27;;;;;;:::i;:::-;;;;;;;;3197:8;3172:7;:13:::0;3180:4:::1;3172:13;;;;;;;;;;;:22;;;:33;;;;;;;;;;;;;;;;;;420:133:::0;3004:208;;;:::o;1997:185::-;2101:4;430:13;446:7;:13;454:4;446:13;;;;;;;;;;;:19;;;;;;;;;;;;430:35;;492:10;483:19;;:5;:19;;;:51;;;;506:9;:16;516:5;506:16;;;;;;;;;;;;;;;:28;523:10;506:28;;;;;;;;;;;;;;;;;;;;;;;;;483:51;475:60;;;;;;2117:22:::1;2127:4;2133:5;2117:9;:22::i;:::-;2163:4;2154:21;2169:5;2154:21;;;;;;:::i;:::-;;;;;;;;420:133:::0;1997:185;;;:::o;1464:294::-;1646:15;1664:35;1680:4;1686:5;1693;1664:15;:35::i;:::-;1646:53;;1709:42;1728:7;1737:8;1747:3;1709:18;:42::i;:::-;1636:122;1464:294;;;;;:::o;3871:228::-;4023:8;3989:9;:21;3999:10;3989:21;;;;;;;;;;;;;;;:31;4011:8;3989:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;4073:8;4046:46;;4061:10;4046:46;;;4083:8;4046:46;;;;;;:::i;:::-;;;;;;;;3871:228;;:::o;928:229::-;1080:21;1089:4;1095:5;1080:8;:21::i;:::-;1111:39;1130:4;1136:8;1146:3;1111:18;:39::i;:::-;928:229;;;;:::o;5732:177::-;5853:4;5876:9;:16;5886:5;5876:16;;;;;;;;;;;;;;;:26;5893:8;5876:26;;;;;;;;;;;;;;;;;;;;;;;;;5869:33;;5732:177;;;;:::o;5266:153::-;5354:4;5408:3;5377:35;;:7;:13;5385:4;5377:13;;;;;;;;;;;:19;;;;;;;;;;;;:35;;;;5370:42;;5266:153;;;:::o;5915:109::-;6012:5;5990:7;:13;5998:4;5990:13;;;;;;;;;;;:19;;;:27;;;;;;;;;;;;;;;;;;5915:109;;:::o;6030:395::-;6167:7;:13;6175:4;6167:13;;;;;;;;;;;:22;;;;;;;;;;;;6155:34;;:8;:34;;;6151:144;;6230:8;6205:7;:13;6213:4;6205:13;;;;;;;;;;;:22;;;:33;;;;;;;;;;;;;;;;;;6269:4;6257:27;6275:8;6257:27;;;;;;:::i;:::-;;;;;;;;6151:144;6316:7;:13;6324:4;6316:13;;;;;;;;;;;:17;;;;;;;;;;;;6309:24;;:3;:24;;;6305:114;;6369:3;6349:7;:13;6357:4;6349:13;;;;;;;;;;;:17;;;:23;;;;;;;;;;;;;;;;;;6398:4;6391:17;6404:3;6391:17;;;;;;:::i;:::-;;;;;;;;6305:114;6030:395;;;:::o;88:117:74:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:126::-;1062:7;1102:42;1095:5;1091:54;1080:65;;1025:126;;;:::o;1157:96::-;1194:7;1223:24;1241:5;1223:24;:::i;:::-;1212:35;;1157:96;;;:::o;1259:118::-;1346:24;1364:5;1346:24;:::i;:::-;1341:3;1334:37;1259:118;;:::o;1383:222::-;1476:4;1514:2;1503:9;1499:18;1491:26;;1527:71;1595:1;1584:9;1580:17;1571:6;1527:71;:::i;:::-;1383:222;;;;:::o;1611:122::-;1684:24;1702:5;1684:24;:::i;:::-;1677:5;1674:35;1664:63;;1723:1;1720;1713:12;1664:63;1611:122;:::o;1739:139::-;1785:5;1823:6;1810:20;1801:29;;1839:33;1866:5;1839:33;:::i;:::-;1739:139;;;;:::o;1884:619::-;1961:6;1969;1977;2026:2;2014:9;2005:7;2001:23;1997:32;1994:119;;;2032:79;;:::i;:::-;1994:119;2152:1;2177:53;2222:7;2213:6;2202:9;2198:22;2177:53;:::i;:::-;2167:63;;2123:117;2279:2;2305:53;2350:7;2341:6;2330:9;2326:22;2305:53;:::i;:::-;2295:63;;2250:118;2407:2;2433:53;2478:7;2469:6;2458:9;2454:22;2433:53;:::i;:::-;2423:63;;2378:118;1884:619;;;;;:::o;2509:118::-;2596:24;2614:5;2596:24;:::i;:::-;2591:3;2584:37;2509:118;;:::o;2633:222::-;2726:4;2764:2;2753:9;2749:18;2741:26;;2777:71;2845:1;2834:9;2830:17;2821:6;2777:71;:::i;:::-;2633:222;;;;:::o;2861:101::-;2897:7;2937:18;2930:5;2926:30;2915:41;;2861:101;;;:::o;2968:120::-;3040:23;3057:5;3040:23;:::i;:::-;3033:5;3030:34;3020:62;;3078:1;3075;3068:12;3020:62;2968:120;:::o;3094:137::-;3139:5;3177:6;3164:20;3155:29;;3193:32;3219:5;3193:32;:::i;:::-;3094:137;;;;:::o;3237:472::-;3304:6;3312;3361:2;3349:9;3340:7;3336:23;3332:32;3329:119;;;3367:79;;:::i;:::-;3329:119;3487:1;3512:53;3557:7;3548:6;3537:9;3533:22;3512:53;:::i;:::-;3502:63;;3458:117;3614:2;3640:52;3684:7;3675:6;3664:9;3660:22;3640:52;:::i;:::-;3630:62;;3585:117;3237:472;;;;;:::o;3715:115::-;3800:23;3817:5;3800:23;:::i;:::-;3795:3;3788:36;3715:115;;:::o;3836:218::-;3927:4;3965:2;3954:9;3950:18;3942:26;;3978:69;4044:1;4033:9;4029:17;4020:6;3978:69;:::i;:::-;3836:218;;;;:::o;4060:474::-;4128:6;4136;4185:2;4173:9;4164:7;4160:23;4156:32;4153:119;;;4191:79;;:::i;:::-;4153:119;4311:1;4336:53;4381:7;4372:6;4361:9;4357:22;4336:53;:::i;:::-;4326:63;;4282:117;4438:2;4464:53;4509:7;4500:6;4489:9;4485:22;4464:53;:::i;:::-;4454:63;;4409:118;4060:474;;;;;:::o;4540:909::-;4634:6;4642;4650;4658;4666;4715:3;4703:9;4694:7;4690:23;4686:33;4683:120;;;4722:79;;:::i;:::-;4683:120;4842:1;4867:53;4912:7;4903:6;4892:9;4888:22;4867:53;:::i;:::-;4857:63;;4813:117;4969:2;4995:53;5040:7;5031:6;5020:9;5016:22;4995:53;:::i;:::-;4985:63;;4940:118;5097:2;5123:53;5168:7;5159:6;5148:9;5144:22;5123:53;:::i;:::-;5113:63;;5068:118;5225:2;5251:53;5296:7;5287:6;5276:9;5272:22;5251:53;:::i;:::-;5241:63;;5196:118;5353:3;5380:52;5424:7;5415:6;5404:9;5400:22;5380:52;:::i;:::-;5370:62;;5324:118;4540:909;;;;;;;;:::o;5455:90::-;5489:7;5532:5;5525:13;5518:21;5507:32;;5455:90;;;:::o;5551:116::-;5621:21;5636:5;5621:21;:::i;:::-;5614:5;5611:32;5601:60;;5657:1;5654;5647:12;5601:60;5551:116;:::o;5673:133::-;5716:5;5754:6;5741:20;5732:29;;5770:30;5794:5;5770:30;:::i;:::-;5673:133;;;;:::o;5812:468::-;5877:6;5885;5934:2;5922:9;5913:7;5909:23;5905:32;5902:119;;;5940:79;;:::i;:::-;5902:119;6060:1;6085:53;6130:7;6121:6;6110:9;6106:22;6085:53;:::i;:::-;6075:63;;6031:117;6187:2;6213:50;6255:7;6246:6;6235:9;6231:22;6213:50;:::i;:::-;6203:60;;6158:115;5812:468;;;;;:::o;6286:763::-;6371:6;6379;6387;6395;6444:3;6432:9;6423:7;6419:23;6415:33;6412:120;;;6451:79;;:::i;:::-;6412:120;6571:1;6596:53;6641:7;6632:6;6621:9;6617:22;6596:53;:::i;:::-;6586:63;;6542:117;6698:2;6724:53;6769:7;6760:6;6749:9;6745:22;6724:53;:::i;:::-;6714:63;;6669:118;6826:2;6852:53;6897:7;6888:6;6877:9;6873:22;6852:53;:::i;:::-;6842:63;;6797:118;6954:2;6980:52;7024:7;7015:6;7004:9;7000:22;6980:52;:::i;:::-;6970:62;;6925:117;6286:763;;;;;;;:::o;7055:474::-;7123:6;7131;7180:2;7168:9;7159:7;7155:23;7151:32;7148:119;;;7186:79;;:::i;:::-;7148:119;7306:1;7331:53;7376:7;7367:6;7356:9;7352:22;7331:53;:::i;:::-;7321:63;;7277:117;7433:2;7459:53;7504:7;7495:6;7484:9;7480:22;7459:53;:::i;:::-;7449:63;;7404:118;7055:474;;;;;:::o;7535:109::-;7616:21;7631:5;7616:21;:::i;:::-;7611:3;7604:34;7535:109;;:::o;7650:210::-;7737:4;7775:2;7764:9;7760:18;7752:26;;7788:65;7850:1;7839:9;7835:17;7826:6;7788:65;:::i;:::-;7650:210;;;;:::o;7866:79::-;7905:7;7934:5;7923:16;;7866:79;;;:::o;7951:157::-;8056:45;8076:24;8094:5;8076:24;:::i;:::-;8056:45;:::i;:::-;8051:3;8044:58;7951:157;;:::o;8114:397::-;8254:3;8269:75;8340:3;8331:6;8269:75;:::i;:::-;8369:2;8364:3;8360:12;8353:19;;8382:75;8453:3;8444:6;8382:75;:::i;:::-;8482:2;8477:3;8473:12;8466:19;;8502:3;8495:10;;8114:397;;;;;:::o" + }, + "methodIdentifiers": { + "isApprovedForAll(address,address)": "e985e9c5", + "owner(bytes32)": "02571be3", + "recordExists(bytes32)": "f79fe538", + "resolver(bytes32)": "0178b8bf", + "setApprovalForAll(address,bool)": "a22cb465", + "setOwner(bytes32,address)": "5b0fc9c3", + "setRecord(bytes32,address,address,uint64)": "cf408823", + "setResolver(bytes32,address)": "1896f70a", + "setSubnodeOwner(bytes32,bytes32,address)": "06ab5923", + "setSubnodeRecord(bytes32,bytes32,address,address,uint64)": "5ef2c7f0", + "setTTL(bytes32,uint64)": "14ab9038", + "ttl(bytes32)": "16a25cbd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Constructs a new ENS registry.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Query if an address is an authorized operator for another address.\",\"params\":{\"operator\":\"The address that acts on behalf of the owner.\",\"owner\":\"The address that owns the records.\"},\"returns\":{\"_0\":\"True if `operator` is an approved operator for `owner`, false otherwise.\"}},\"owner(bytes32)\":{\"details\":\"Returns the address that owns the specified node.\",\"params\":{\"node\":\"The specified node.\"},\"returns\":{\"_0\":\"address of the owner.\"}},\"recordExists(bytes32)\":{\"details\":\"Returns whether a record has been imported to the registry.\",\"params\":{\"node\":\"The specified node.\"},\"returns\":{\"_0\":\"Bool if record exists\"}},\"resolver(bytes32)\":{\"details\":\"Returns the address of the resolver for the specified node.\",\"params\":{\"node\":\"The specified node.\"},\"returns\":{\"_0\":\"address of the resolver.\"}},\"setApprovalForAll(address,bool)\":{\"details\":\"Enable or disable approval for a third party (\\\"operator\\\") to manage all of `msg.sender`'s ENS records. Emits the ApprovalForAll event.\",\"params\":{\"approved\":\"True if the operator is approved, false to revoke approval.\",\"operator\":\"Address to add to the set of authorized operators.\"}},\"setOwner(bytes32,address)\":{\"details\":\"Transfers ownership of a node to a new address. May only be called by the current owner of the node.\",\"params\":{\"node\":\"The node to transfer ownership of.\",\"owner\":\"The address of the new owner.\"}},\"setRecord(bytes32,address,address,uint64)\":{\"details\":\"Sets the record for a node.\",\"params\":{\"node\":\"The node to update.\",\"owner\":\"The address of the new owner.\",\"resolver\":\"The address of the resolver.\",\"ttl\":\"The TTL in seconds.\"}},\"setResolver(bytes32,address)\":{\"details\":\"Sets the resolver address for the specified node.\",\"params\":{\"node\":\"The node to update.\",\"resolver\":\"The address of the resolver.\"}},\"setSubnodeOwner(bytes32,bytes32,address)\":{\"details\":\"Transfers ownership of a subnode keccak256(node, label) to a new address. May only be called by the owner of the parent node.\",\"params\":{\"label\":\"The hash of the label specifying the subnode.\",\"node\":\"The parent node.\",\"owner\":\"The address of the new owner.\"}},\"setSubnodeRecord(bytes32,bytes32,address,address,uint64)\":{\"details\":\"Sets the record for a subnode.\",\"params\":{\"label\":\"The hash of the label specifying the subnode.\",\"node\":\"The parent node.\",\"owner\":\"The address of the new owner.\",\"resolver\":\"The address of the resolver.\",\"ttl\":\"The TTL in seconds.\"}},\"setTTL(bytes32,uint64)\":{\"details\":\"Sets the TTL for the specified node.\",\"params\":{\"node\":\"The node to update.\",\"ttl\":\"The TTL in seconds.\"}},\"ttl(bytes32)\":{\"details\":\"Returns the TTL of a node, and any records associated with it.\",\"params\":{\"node\":\"The specified node.\"},\"returns\":{\"_0\":\"ttl of the node.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"The ENS registry contract.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol\":\"ENSRegistry\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol\":{\"keccak256\":\"0xa7a7a64fb980e521c991415e416fd4106a42f892479805e1daa51ecb0e2e5198\",\"urls\":[\"bzz-raw://9e38bcea7309c8d530266511936ba6aece79c8e892e6beb9cbe1b8e35cbd4bcc\",\"dweb:/ipfs/QmVRmcagSnoryJtcuiYnQgAcQcfm2MPVqsMadNYM89boEJ\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol": { + "IMulticallable": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicallWithNodeCheck", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "multicall(bytes[])": "ac9650d8", + "multicallWithNodeCheck(bytes32,bytes[])": "e32954eb" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicall\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicallWithNodeCheck\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol\":\"IMulticallable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol\":{\"keccak256\":\"0x0334202e20bb11995997083d05963f5e8e7ed6194cba494e7f9371ab7bf4e2c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908cca2deff3405d2dcfcbe913d2d75c380ac003b458696e202420ce1ee130\",\"dweb:/ipfs/QmYSTjaVyc5XxCkhMse8DdAbVFzYsijtoc9qgcDVPZhuqh\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol": { + "Multicallable": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "nodehash", + "type": "bytes32" + }, + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicallWithNodeCheck", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "multicall(bytes[])": "ac9650d8", + "multicallWithNodeCheck(bytes32,bytes[])": "e32954eb", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicall\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"nodehash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicallWithNodeCheck\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol\":\"Multicallable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol\":{\"keccak256\":\"0x0334202e20bb11995997083d05963f5e8e7ed6194cba494e7f9371ab7bf4e2c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908cca2deff3405d2dcfcbe913d2d75c380ac003b458696e202420ce1ee130\",\"dweb:/ipfs/QmYSTjaVyc5XxCkhMse8DdAbVFzYsijtoc9qgcDVPZhuqh\"]},\"@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol\":{\"keccak256\":\"0x1063a9dd3b94ba304624d5ec6deb43c1916640758ae970eece4d4e3ef8b2fcb1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0962655fff6e4eac6ed11e35caee12dbf3da2b88335abb879eb3bcf909df603\",\"dweb:/ipfs/QmPWMCApZQJ5YRJvsMDwYwFZJuMraJtF8MF4XiCaNSYMAi\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol": { + "PublicResolver": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract ENS", + "name": "_ens", + "type": "address" + }, + { + "internalType": "contract INameWrapper", + "name": "wrapperAddress", + "type": "address" + }, + { + "internalType": "address", + "name": "_trustedETHController", + "type": "address" + }, + { + "internalType": "address", + "name": "_trustedReverseRegistrar", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "contentType", + "type": "uint256" + } + ], + "name": "ABIChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "AddrChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "newAddress", + "type": "bytes" + } + ], + "name": "AddressChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegate", + "type": "address" + }, + { + "indexed": true, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "Approved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "ContenthashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "record", + "type": "bytes" + } + ], + "name": "DNSRecordChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "DNSRecordDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "lastzonehash", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "zonehash", + "type": "bytes" + } + ], + "name": "DNSZonehashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "address", + "name": "implementer", + "type": "address" + } + ], + "name": "InterfaceChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "NameChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "name": "PubkeyChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "string", + "name": "indexedKey", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "name": "TextChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "contentTypes", + "type": "uint256" + } + ], + "name": "ABI", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "delegate", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "contenthash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "name", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "dnsRecord", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "name", + "type": "bytes32" + } + ], + "name": "hasDNSRecords", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "interfaceImplementer", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "delegate", + "type": "address" + } + ], + "name": "isApprovedFor", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "nodehash", + "type": "bytes32" + }, + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicallWithNodeCheck", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "pubkey", + "outputs": [ + { + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "contentType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setABI", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "a", + "type": "bytes" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "setContenthash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setDNSRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + }, + { + "internalType": "address", + "name": "implementer", + "type": "address" + } + ], + "name": "setInterface", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "newName", + "type": "string" + } + ], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "name": "setPubkey", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "name": "setText", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "setZonehash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + } + ], + "name": "text", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "zonehash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_5283": { + "entryPoint": null, + "id": 5283, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_7272": { + "entryPoint": null, + "id": 7272, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 761, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 1047, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 655, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_INameWrapper_$10064_fromMemory": { + "entryPoint": 717, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 937, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 1068, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_addresst_address_fromMemory": { + "entryPoint": 782, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 982, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 895, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 997, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 910, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 596, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 885, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 614, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_INameWrapper_$10064": { + "entryPoint": 676, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 564, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 559, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 738, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 1024, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 632, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_INameWrapper_$10064": { + "entryPoint": 694, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:4442:74", + "nodeType": "YulBlock", + "src": "0:4442:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "625:51:74", + "nodeType": "YulBlock", + "src": "625:51:74", + "statements": [ + { + "nativeSrc": "635:35:74", + "nodeType": "YulAssignment", + "src": "635:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "664:5:74", + "nodeType": "YulIdentifier", + "src": "664:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "646:17:74", + "nodeType": "YulIdentifier", + "src": "646:17:74" + }, + "nativeSrc": "646:24:74", + "nodeType": "YulFunctionCall", + "src": "646:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "635:7:74", + "nodeType": "YulIdentifier", + "src": "635:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "568:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulTypedName", + "src": "607:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "617:7:74", + "nodeType": "YulTypedName", + "src": "617:7:74", + "type": "" + } + ], + "src": "568:108:74" + }, + { + "body": { + "nativeSrc": "737:91:74", + "nodeType": "YulBlock", + "src": "737:91:74", + "statements": [ + { + "body": { + "nativeSrc": "806:16:74", + "nodeType": "YulBlock", + "src": "806:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "815:1:74", + "nodeType": "YulLiteral", + "src": "815:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "818:1:74", + "nodeType": "YulLiteral", + "src": "818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "808:6:74", + "nodeType": "YulIdentifier", + "src": "808:6:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulFunctionCall", + "src": "808:12:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulExpressionStatement", + "src": "808:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "797:5:74", + "nodeType": "YulIdentifier", + "src": "797:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "767:29:74", + "nodeType": "YulIdentifier", + "src": "767:29:74" + }, + "nativeSrc": "767:36:74", + "nodeType": "YulFunctionCall", + "src": "767:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "757:2:74", + "nodeType": "YulIdentifier", + "src": "757:2:74" + }, + "nativeSrc": "757:47:74", + "nodeType": "YulFunctionCall", + "src": "757:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "750:6:74", + "nodeType": "YulIdentifier", + "src": "750:6:74" + }, + "nativeSrc": "750:55:74", + "nodeType": "YulFunctionCall", + "src": "750:55:74" + }, + "nativeSrc": "747:75:74", + "nodeType": "YulIf", + "src": "747:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "682:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "730:5:74", + "nodeType": "YulTypedName", + "src": "730:5:74", + "type": "" + } + ], + "src": "682:146:74" + }, + { + "body": { + "nativeSrc": "909:92:74", + "nodeType": "YulBlock", + "src": "909:92:74", + "statements": [ + { + "nativeSrc": "919:22:74", + "nodeType": "YulAssignment", + "src": "919:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "934:6:74", + "nodeType": "YulIdentifier", + "src": "934:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "928:5:74", + "nodeType": "YulIdentifier", + "src": "928:5:74" + }, + "nativeSrc": "928:13:74", + "nodeType": "YulFunctionCall", + "src": "928:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "919:5:74", + "nodeType": "YulIdentifier", + "src": "919:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "950:38:74", + "nodeType": "YulIdentifier", + "src": "950:38:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulFunctionCall", + "src": "950:45:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulExpressionStatement", + "src": "950:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "834:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "887:6:74", + "nodeType": "YulTypedName", + "src": "887:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "895:3:74", + "nodeType": "YulTypedName", + "src": "895:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "903:5:74", + "nodeType": "YulTypedName", + "src": "903:5:74", + "type": "" + } + ], + "src": "834:167:74" + }, + { + "body": { + "nativeSrc": "1074:51:74", + "nodeType": "YulBlock", + "src": "1074:51:74", + "statements": [ + { + "nativeSrc": "1084:35:74", + "nodeType": "YulAssignment", + "src": "1084:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1113:5:74", + "nodeType": "YulIdentifier", + "src": "1113:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1095:17:74", + "nodeType": "YulIdentifier", + "src": "1095:17:74" + }, + "nativeSrc": "1095:24:74", + "nodeType": "YulFunctionCall", + "src": "1095:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1084:7:74", + "nodeType": "YulIdentifier", + "src": "1084:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_INameWrapper_$10064", + "nativeSrc": "1007:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1056:5:74", + "nodeType": "YulTypedName", + "src": "1056:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1066:7:74", + "nodeType": "YulTypedName", + "src": "1066:7:74", + "type": "" + } + ], + "src": "1007:118:74" + }, + { + "body": { + "nativeSrc": "1196:101:74", + "nodeType": "YulBlock", + "src": "1196:101:74", + "statements": [ + { + "body": { + "nativeSrc": "1275:16:74", + "nodeType": "YulBlock", + "src": "1275:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1284:1:74", + "nodeType": "YulLiteral", + "src": "1284:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1287:1:74", + "nodeType": "YulLiteral", + "src": "1287:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1277:6:74", + "nodeType": "YulIdentifier", + "src": "1277:6:74" + }, + "nativeSrc": "1277:12:74", + "nodeType": "YulFunctionCall", + "src": "1277:12:74" + }, + "nativeSrc": "1277:12:74", + "nodeType": "YulExpressionStatement", + "src": "1277:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1219:5:74", + "nodeType": "YulIdentifier", + "src": "1219:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1266:5:74", + "nodeType": "YulIdentifier", + "src": "1266:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_INameWrapper_$10064", + "nativeSrc": "1226:39:74", + "nodeType": "YulIdentifier", + "src": "1226:39:74" + }, + "nativeSrc": "1226:46:74", + "nodeType": "YulFunctionCall", + "src": "1226:46:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1216:2:74", + "nodeType": "YulIdentifier", + "src": "1216:2:74" + }, + "nativeSrc": "1216:57:74", + "nodeType": "YulFunctionCall", + "src": "1216:57:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1209:6:74", + "nodeType": "YulIdentifier", + "src": "1209:6:74" + }, + "nativeSrc": "1209:65:74", + "nodeType": "YulFunctionCall", + "src": "1209:65:74" + }, + "nativeSrc": "1206:85:74", + "nodeType": "YulIf", + "src": "1206:85:74" + } + ] + }, + "name": "validator_revert_t_contract$_INameWrapper_$10064", + "nativeSrc": "1131:166:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1189:5:74", + "nodeType": "YulTypedName", + "src": "1189:5:74", + "type": "" + } + ], + "src": "1131:166:74" + }, + { + "body": { + "nativeSrc": "1388:102:74", + "nodeType": "YulBlock", + "src": "1388:102:74", + "statements": [ + { + "nativeSrc": "1398:22:74", + "nodeType": "YulAssignment", + "src": "1398:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1413:6:74", + "nodeType": "YulIdentifier", + "src": "1413:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1407:5:74", + "nodeType": "YulIdentifier", + "src": "1407:5:74" + }, + "nativeSrc": "1407:13:74", + "nodeType": "YulFunctionCall", + "src": "1407:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1398:5:74", + "nodeType": "YulIdentifier", + "src": "1398:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1478:5:74", + "nodeType": "YulIdentifier", + "src": "1478:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_INameWrapper_$10064", + "nativeSrc": "1429:48:74", + "nodeType": "YulIdentifier", + "src": "1429:48:74" + }, + "nativeSrc": "1429:55:74", + "nodeType": "YulFunctionCall", + "src": "1429:55:74" + }, + "nativeSrc": "1429:55:74", + "nodeType": "YulExpressionStatement", + "src": "1429:55:74" + } + ] + }, + "name": "abi_decode_t_contract$_INameWrapper_$10064_fromMemory", + "nativeSrc": "1303:187:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1366:6:74", + "nodeType": "YulTypedName", + "src": "1366:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1374:3:74", + "nodeType": "YulTypedName", + "src": "1374:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1382:5:74", + "nodeType": "YulTypedName", + "src": "1382:5:74", + "type": "" + } + ], + "src": "1303:187:74" + }, + { + "body": { + "nativeSrc": "1539:79:74", + "nodeType": "YulBlock", + "src": "1539:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1596:16:74", + "nodeType": "YulBlock", + "src": "1596:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1605:1:74", + "nodeType": "YulLiteral", + "src": "1605:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1608:1:74", + "nodeType": "YulLiteral", + "src": "1608:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1598:6:74", + "nodeType": "YulIdentifier", + "src": "1598:6:74" + }, + "nativeSrc": "1598:12:74", + "nodeType": "YulFunctionCall", + "src": "1598:12:74" + }, + "nativeSrc": "1598:12:74", + "nodeType": "YulExpressionStatement", + "src": "1598:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1562:5:74", + "nodeType": "YulIdentifier", + "src": "1562:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1587:5:74", + "nodeType": "YulIdentifier", + "src": "1587:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1569:17:74", + "nodeType": "YulIdentifier", + "src": "1569:17:74" + }, + "nativeSrc": "1569:24:74", + "nodeType": "YulFunctionCall", + "src": "1569:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1559:2:74", + "nodeType": "YulIdentifier", + "src": "1559:2:74" + }, + "nativeSrc": "1559:35:74", + "nodeType": "YulFunctionCall", + "src": "1559:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1552:6:74", + "nodeType": "YulIdentifier", + "src": "1552:6:74" + }, + "nativeSrc": "1552:43:74", + "nodeType": "YulFunctionCall", + "src": "1552:43:74" + }, + "nativeSrc": "1549:63:74", + "nodeType": "YulIf", + "src": "1549:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "1496:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1532:5:74", + "nodeType": "YulTypedName", + "src": "1532:5:74", + "type": "" + } + ], + "src": "1496:122:74" + }, + { + "body": { + "nativeSrc": "1687:80:74", + "nodeType": "YulBlock", + "src": "1687:80:74", + "statements": [ + { + "nativeSrc": "1697:22:74", + "nodeType": "YulAssignment", + "src": "1697:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1712:6:74", + "nodeType": "YulIdentifier", + "src": "1712:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1706:5:74", + "nodeType": "YulIdentifier", + "src": "1706:5:74" + }, + "nativeSrc": "1706:13:74", + "nodeType": "YulFunctionCall", + "src": "1706:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1697:5:74", + "nodeType": "YulIdentifier", + "src": "1697:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1755:5:74", + "nodeType": "YulIdentifier", + "src": "1755:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "1728:26:74", + "nodeType": "YulIdentifier", + "src": "1728:26:74" + }, + "nativeSrc": "1728:33:74", + "nodeType": "YulFunctionCall", + "src": "1728:33:74" + }, + "nativeSrc": "1728:33:74", + "nodeType": "YulExpressionStatement", + "src": "1728:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "1624:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1665:6:74", + "nodeType": "YulTypedName", + "src": "1665:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1673:3:74", + "nodeType": "YulTypedName", + "src": "1673:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1681:5:74", + "nodeType": "YulTypedName", + "src": "1681:5:74", + "type": "" + } + ], + "src": "1624:143:74" + }, + { + "body": { + "nativeSrc": "1935:726:74", + "nodeType": "YulBlock", + "src": "1935:726:74", + "statements": [ + { + "body": { + "nativeSrc": "1982:83:74", + "nodeType": "YulBlock", + "src": "1982:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1984:77:74", + "nodeType": "YulIdentifier", + "src": "1984:77:74" + }, + "nativeSrc": "1984:79:74", + "nodeType": "YulFunctionCall", + "src": "1984:79:74" + }, + "nativeSrc": "1984:79:74", + "nodeType": "YulExpressionStatement", + "src": "1984:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1956:7:74", + "nodeType": "YulIdentifier", + "src": "1956:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1965:9:74", + "nodeType": "YulIdentifier", + "src": "1965:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1952:3:74", + "nodeType": "YulIdentifier", + "src": "1952:3:74" + }, + "nativeSrc": "1952:23:74", + "nodeType": "YulFunctionCall", + "src": "1952:23:74" + }, + { + "kind": "number", + "nativeSrc": "1977:3:74", + "nodeType": "YulLiteral", + "src": "1977:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1948:3:74", + "nodeType": "YulIdentifier", + "src": "1948:3:74" + }, + "nativeSrc": "1948:33:74", + "nodeType": "YulFunctionCall", + "src": "1948:33:74" + }, + "nativeSrc": "1945:120:74", + "nodeType": "YulIf", + "src": "1945:120:74" + }, + { + "nativeSrc": "2075:140:74", + "nodeType": "YulBlock", + "src": "2075:140:74", + "statements": [ + { + "nativeSrc": "2090:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2090:15:74", + "value": { + "kind": "number", + "nativeSrc": "2104:1:74", + "nodeType": "YulLiteral", + "src": "2104:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2094:6:74", + "nodeType": "YulTypedName", + "src": "2094:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2119:86:74", + "nodeType": "YulAssignment", + "src": "2119:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2177:9:74", + "nodeType": "YulIdentifier", + "src": "2177:9:74" + }, + { + "name": "offset", + "nativeSrc": "2188:6:74", + "nodeType": "YulIdentifier", + "src": "2188:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2173:3:74", + "nodeType": "YulIdentifier", + "src": "2173:3:74" + }, + "nativeSrc": "2173:22:74", + "nodeType": "YulFunctionCall", + "src": "2173:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2197:7:74", + "nodeType": "YulIdentifier", + "src": "2197:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "2129:43:74", + "nodeType": "YulIdentifier", + "src": "2129:43:74" + }, + "nativeSrc": "2129:76:74", + "nodeType": "YulFunctionCall", + "src": "2129:76:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2119:6:74", + "nodeType": "YulIdentifier", + "src": "2119:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2225:151:74", + "nodeType": "YulBlock", + "src": "2225:151:74", + "statements": [ + { + "nativeSrc": "2240:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2240:16:74", + "value": { + "kind": "number", + "nativeSrc": "2254:2:74", + "nodeType": "YulLiteral", + "src": "2254:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2244:6:74", + "nodeType": "YulTypedName", + "src": "2244:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2270:96:74", + "nodeType": "YulAssignment", + "src": "2270:96:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2338:9:74", + "nodeType": "YulIdentifier", + "src": "2338:9:74" + }, + { + "name": "offset", + "nativeSrc": "2349:6:74", + "nodeType": "YulIdentifier", + "src": "2349:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2334:3:74", + "nodeType": "YulIdentifier", + "src": "2334:3:74" + }, + "nativeSrc": "2334:22:74", + "nodeType": "YulFunctionCall", + "src": "2334:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2358:7:74", + "nodeType": "YulIdentifier", + "src": "2358:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_INameWrapper_$10064_fromMemory", + "nativeSrc": "2280:53:74", + "nodeType": "YulIdentifier", + "src": "2280:53:74" + }, + "nativeSrc": "2280:86:74", + "nodeType": "YulFunctionCall", + "src": "2280:86:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "2270:6:74", + "nodeType": "YulIdentifier", + "src": "2270:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2386:129:74", + "nodeType": "YulBlock", + "src": "2386:129:74", + "statements": [ + { + "nativeSrc": "2401:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2401:16:74", + "value": { + "kind": "number", + "nativeSrc": "2415:2:74", + "nodeType": "YulLiteral", + "src": "2415:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2405:6:74", + "nodeType": "YulTypedName", + "src": "2405:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2431:74:74", + "nodeType": "YulAssignment", + "src": "2431:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2477:9:74", + "nodeType": "YulIdentifier", + "src": "2477:9:74" + }, + { + "name": "offset", + "nativeSrc": "2488:6:74", + "nodeType": "YulIdentifier", + "src": "2488:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2473:3:74", + "nodeType": "YulIdentifier", + "src": "2473:3:74" + }, + "nativeSrc": "2473:22:74", + "nodeType": "YulFunctionCall", + "src": "2473:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2497:7:74", + "nodeType": "YulIdentifier", + "src": "2497:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "2441:31:74", + "nodeType": "YulIdentifier", + "src": "2441:31:74" + }, + "nativeSrc": "2441:64:74", + "nodeType": "YulFunctionCall", + "src": "2441:64:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "2431:6:74", + "nodeType": "YulIdentifier", + "src": "2431:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2525:129:74", + "nodeType": "YulBlock", + "src": "2525:129:74", + "statements": [ + { + "nativeSrc": "2540:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2540:16:74", + "value": { + "kind": "number", + "nativeSrc": "2554:2:74", + "nodeType": "YulLiteral", + "src": "2554:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2544:6:74", + "nodeType": "YulTypedName", + "src": "2544:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2570:74:74", + "nodeType": "YulAssignment", + "src": "2570:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2616:9:74", + "nodeType": "YulIdentifier", + "src": "2616:9:74" + }, + { + "name": "offset", + "nativeSrc": "2627:6:74", + "nodeType": "YulIdentifier", + "src": "2627:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2612:3:74", + "nodeType": "YulIdentifier", + "src": "2612:3:74" + }, + "nativeSrc": "2612:22:74", + "nodeType": "YulFunctionCall", + "src": "2612:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2636:7:74", + "nodeType": "YulIdentifier", + "src": "2636:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "2580:31:74", + "nodeType": "YulIdentifier", + "src": "2580:31:74" + }, + "nativeSrc": "2580:64:74", + "nodeType": "YulFunctionCall", + "src": "2580:64:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "2570:6:74", + "nodeType": "YulIdentifier", + "src": "2570:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_addresst_address_fromMemory", + "nativeSrc": "1773:888:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1881:9:74", + "nodeType": "YulTypedName", + "src": "1881:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1892:7:74", + "nodeType": "YulTypedName", + "src": "1892:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1904:6:74", + "nodeType": "YulTypedName", + "src": "1904:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1912:6:74", + "nodeType": "YulTypedName", + "src": "1912:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "1920:6:74", + "nodeType": "YulTypedName", + "src": "1920:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "1928:6:74", + "nodeType": "YulTypedName", + "src": "1928:6:74", + "type": "" + } + ], + "src": "1773:888:74" + }, + { + "body": { + "nativeSrc": "2712:32:74", + "nodeType": "YulBlock", + "src": "2712:32:74", + "statements": [ + { + "nativeSrc": "2722:16:74", + "nodeType": "YulAssignment", + "src": "2722:16:74", + "value": { + "name": "value", + "nativeSrc": "2733:5:74", + "nodeType": "YulIdentifier", + "src": "2733:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2722:7:74", + "nodeType": "YulIdentifier", + "src": "2722:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "2667:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2694:5:74", + "nodeType": "YulTypedName", + "src": "2694:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2704:7:74", + "nodeType": "YulTypedName", + "src": "2704:7:74", + "type": "" + } + ], + "src": "2667:77:74" + }, + { + "body": { + "nativeSrc": "2815:53:74", + "nodeType": "YulBlock", + "src": "2815:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2832:3:74", + "nodeType": "YulIdentifier", + "src": "2832:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2855:5:74", + "nodeType": "YulIdentifier", + "src": "2855:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2837:17:74", + "nodeType": "YulIdentifier", + "src": "2837:17:74" + }, + "nativeSrc": "2837:24:74", + "nodeType": "YulFunctionCall", + "src": "2837:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2825:6:74", + "nodeType": "YulIdentifier", + "src": "2825:6:74" + }, + "nativeSrc": "2825:37:74", + "nodeType": "YulFunctionCall", + "src": "2825:37:74" + }, + "nativeSrc": "2825:37:74", + "nodeType": "YulExpressionStatement", + "src": "2825:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2750:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2803:5:74", + "nodeType": "YulTypedName", + "src": "2803:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2810:3:74", + "nodeType": "YulTypedName", + "src": "2810:3:74", + "type": "" + } + ], + "src": "2750:118:74" + }, + { + "body": { + "nativeSrc": "2972:124:74", + "nodeType": "YulBlock", + "src": "2972:124:74", + "statements": [ + { + "nativeSrc": "2982:26:74", + "nodeType": "YulAssignment", + "src": "2982:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2994:9:74", + "nodeType": "YulIdentifier", + "src": "2994:9:74" + }, + { + "kind": "number", + "nativeSrc": "3005:2:74", + "nodeType": "YulLiteral", + "src": "3005:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2990:3:74", + "nodeType": "YulIdentifier", + "src": "2990:3:74" + }, + "nativeSrc": "2990:18:74", + "nodeType": "YulFunctionCall", + "src": "2990:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2982:4:74", + "nodeType": "YulIdentifier", + "src": "2982:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3062:6:74", + "nodeType": "YulIdentifier", + "src": "3062:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3075:9:74", + "nodeType": "YulIdentifier", + "src": "3075:9:74" + }, + { + "kind": "number", + "nativeSrc": "3086:1:74", + "nodeType": "YulLiteral", + "src": "3086:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3071:3:74", + "nodeType": "YulIdentifier", + "src": "3071:3:74" + }, + "nativeSrc": "3071:17:74", + "nodeType": "YulFunctionCall", + "src": "3071:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "3018:43:74", + "nodeType": "YulIdentifier", + "src": "3018:43:74" + }, + "nativeSrc": "3018:71:74", + "nodeType": "YulFunctionCall", + "src": "3018:71:74" + }, + "nativeSrc": "3018:71:74", + "nodeType": "YulExpressionStatement", + "src": "3018:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "2874:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2944:9:74", + "nodeType": "YulTypedName", + "src": "2944:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2956:6:74", + "nodeType": "YulTypedName", + "src": "2956:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2967:4:74", + "nodeType": "YulTypedName", + "src": "2967:4:74", + "type": "" + } + ], + "src": "2874:222:74" + }, + { + "body": { + "nativeSrc": "3179:274:74", + "nodeType": "YulBlock", + "src": "3179:274:74", + "statements": [ + { + "body": { + "nativeSrc": "3225:83:74", + "nodeType": "YulBlock", + "src": "3225:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3227:77:74", + "nodeType": "YulIdentifier", + "src": "3227:77:74" + }, + "nativeSrc": "3227:79:74", + "nodeType": "YulFunctionCall", + "src": "3227:79:74" + }, + "nativeSrc": "3227:79:74", + "nodeType": "YulExpressionStatement", + "src": "3227:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3200:7:74", + "nodeType": "YulIdentifier", + "src": "3200:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3209:9:74", + "nodeType": "YulIdentifier", + "src": "3209:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3196:3:74", + "nodeType": "YulIdentifier", + "src": "3196:3:74" + }, + "nativeSrc": "3196:23:74", + "nodeType": "YulFunctionCall", + "src": "3196:23:74" + }, + { + "kind": "number", + "nativeSrc": "3221:2:74", + "nodeType": "YulLiteral", + "src": "3221:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3192:3:74", + "nodeType": "YulIdentifier", + "src": "3192:3:74" + }, + "nativeSrc": "3192:32:74", + "nodeType": "YulFunctionCall", + "src": "3192:32:74" + }, + "nativeSrc": "3189:119:74", + "nodeType": "YulIf", + "src": "3189:119:74" + }, + { + "nativeSrc": "3318:128:74", + "nodeType": "YulBlock", + "src": "3318:128:74", + "statements": [ + { + "nativeSrc": "3333:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3333:15:74", + "value": { + "kind": "number", + "nativeSrc": "3347:1:74", + "nodeType": "YulLiteral", + "src": "3347:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3337:6:74", + "nodeType": "YulTypedName", + "src": "3337:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3362:74:74", + "nodeType": "YulAssignment", + "src": "3362:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3408:9:74", + "nodeType": "YulIdentifier", + "src": "3408:9:74" + }, + { + "name": "offset", + "nativeSrc": "3419:6:74", + "nodeType": "YulIdentifier", + "src": "3419:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3404:3:74", + "nodeType": "YulIdentifier", + "src": "3404:3:74" + }, + "nativeSrc": "3404:22:74", + "nodeType": "YulFunctionCall", + "src": "3404:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3428:7:74", + "nodeType": "YulIdentifier", + "src": "3428:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "3372:31:74", + "nodeType": "YulIdentifier", + "src": "3372:31:74" + }, + "nativeSrc": "3372:64:74", + "nodeType": "YulFunctionCall", + "src": "3372:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3362:6:74", + "nodeType": "YulIdentifier", + "src": "3362:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "3102:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3149:9:74", + "nodeType": "YulTypedName", + "src": "3149:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3160:7:74", + "nodeType": "YulTypedName", + "src": "3160:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3172:6:74", + "nodeType": "YulTypedName", + "src": "3172:6:74", + "type": "" + } + ], + "src": "3102:351:74" + }, + { + "body": { + "nativeSrc": "3524:53:74", + "nodeType": "YulBlock", + "src": "3524:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3541:3:74", + "nodeType": "YulIdentifier", + "src": "3541:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3564:5:74", + "nodeType": "YulIdentifier", + "src": "3564:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "3546:17:74", + "nodeType": "YulIdentifier", + "src": "3546:17:74" + }, + "nativeSrc": "3546:24:74", + "nodeType": "YulFunctionCall", + "src": "3546:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3534:6:74", + "nodeType": "YulIdentifier", + "src": "3534:6:74" + }, + "nativeSrc": "3534:37:74", + "nodeType": "YulFunctionCall", + "src": "3534:37:74" + }, + "nativeSrc": "3534:37:74", + "nodeType": "YulExpressionStatement", + "src": "3534:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3459:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3512:5:74", + "nodeType": "YulTypedName", + "src": "3512:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3519:3:74", + "nodeType": "YulTypedName", + "src": "3519:3:74", + "type": "" + } + ], + "src": "3459:118:74" + }, + { + "body": { + "nativeSrc": "3681:124:74", + "nodeType": "YulBlock", + "src": "3681:124:74", + "statements": [ + { + "nativeSrc": "3691:26:74", + "nodeType": "YulAssignment", + "src": "3691:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3703:9:74", + "nodeType": "YulIdentifier", + "src": "3703:9:74" + }, + { + "kind": "number", + "nativeSrc": "3714:2:74", + "nodeType": "YulLiteral", + "src": "3714:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3699:3:74", + "nodeType": "YulIdentifier", + "src": "3699:3:74" + }, + "nativeSrc": "3699:18:74", + "nodeType": "YulFunctionCall", + "src": "3699:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3691:4:74", + "nodeType": "YulIdentifier", + "src": "3691:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3771:6:74", + "nodeType": "YulIdentifier", + "src": "3771:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3784:9:74", + "nodeType": "YulIdentifier", + "src": "3784:9:74" + }, + { + "kind": "number", + "nativeSrc": "3795:1:74", + "nodeType": "YulLiteral", + "src": "3795:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3780:3:74", + "nodeType": "YulIdentifier", + "src": "3780:3:74" + }, + "nativeSrc": "3780:17:74", + "nodeType": "YulFunctionCall", + "src": "3780:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3727:43:74", + "nodeType": "YulIdentifier", + "src": "3727:43:74" + }, + "nativeSrc": "3727:71:74", + "nodeType": "YulFunctionCall", + "src": "3727:71:74" + }, + "nativeSrc": "3727:71:74", + "nodeType": "YulExpressionStatement", + "src": "3727:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "3583:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3653:9:74", + "nodeType": "YulTypedName", + "src": "3653:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3665:6:74", + "nodeType": "YulTypedName", + "src": "3665:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3676:4:74", + "nodeType": "YulTypedName", + "src": "3676:4:74", + "type": "" + } + ], + "src": "3583:222:74" + }, + { + "body": { + "nativeSrc": "3854:79:74", + "nodeType": "YulBlock", + "src": "3854:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3911:16:74", + "nodeType": "YulBlock", + "src": "3911:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3920:1:74", + "nodeType": "YulLiteral", + "src": "3920:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3923:1:74", + "nodeType": "YulLiteral", + "src": "3923:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3913:6:74", + "nodeType": "YulIdentifier", + "src": "3913:6:74" + }, + "nativeSrc": "3913:12:74", + "nodeType": "YulFunctionCall", + "src": "3913:12:74" + }, + "nativeSrc": "3913:12:74", + "nodeType": "YulExpressionStatement", + "src": "3913:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3877:5:74", + "nodeType": "YulIdentifier", + "src": "3877:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3902:5:74", + "nodeType": "YulIdentifier", + "src": "3902:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "3884:17:74", + "nodeType": "YulIdentifier", + "src": "3884:17:74" + }, + "nativeSrc": "3884:24:74", + "nodeType": "YulFunctionCall", + "src": "3884:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3874:2:74", + "nodeType": "YulIdentifier", + "src": "3874:2:74" + }, + "nativeSrc": "3874:35:74", + "nodeType": "YulFunctionCall", + "src": "3874:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3867:6:74", + "nodeType": "YulIdentifier", + "src": "3867:6:74" + }, + "nativeSrc": "3867:43:74", + "nodeType": "YulFunctionCall", + "src": "3867:43:74" + }, + "nativeSrc": "3864:63:74", + "nodeType": "YulIf", + "src": "3864:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "3811:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3847:5:74", + "nodeType": "YulTypedName", + "src": "3847:5:74", + "type": "" + } + ], + "src": "3811:122:74" + }, + { + "body": { + "nativeSrc": "4002:80:74", + "nodeType": "YulBlock", + "src": "4002:80:74", + "statements": [ + { + "nativeSrc": "4012:22:74", + "nodeType": "YulAssignment", + "src": "4012:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4027:6:74", + "nodeType": "YulIdentifier", + "src": "4027:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4021:5:74", + "nodeType": "YulIdentifier", + "src": "4021:5:74" + }, + "nativeSrc": "4021:13:74", + "nodeType": "YulFunctionCall", + "src": "4021:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4012:5:74", + "nodeType": "YulIdentifier", + "src": "4012:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4070:5:74", + "nodeType": "YulIdentifier", + "src": "4070:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "4043:26:74", + "nodeType": "YulIdentifier", + "src": "4043:26:74" + }, + "nativeSrc": "4043:33:74", + "nodeType": "YulFunctionCall", + "src": "4043:33:74" + }, + "nativeSrc": "4043:33:74", + "nodeType": "YulExpressionStatement", + "src": "4043:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "3939:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3980:6:74", + "nodeType": "YulTypedName", + "src": "3980:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3988:3:74", + "nodeType": "YulTypedName", + "src": "3988:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3996:5:74", + "nodeType": "YulTypedName", + "src": "3996:5:74", + "type": "" + } + ], + "src": "3939:143:74" + }, + { + "body": { + "nativeSrc": "4165:274:74", + "nodeType": "YulBlock", + "src": "4165:274:74", + "statements": [ + { + "body": { + "nativeSrc": "4211:83:74", + "nodeType": "YulBlock", + "src": "4211:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4213:77:74", + "nodeType": "YulIdentifier", + "src": "4213:77:74" + }, + "nativeSrc": "4213:79:74", + "nodeType": "YulFunctionCall", + "src": "4213:79:74" + }, + "nativeSrc": "4213:79:74", + "nodeType": "YulExpressionStatement", + "src": "4213:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4186:7:74", + "nodeType": "YulIdentifier", + "src": "4186:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4195:9:74", + "nodeType": "YulIdentifier", + "src": "4195:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4182:3:74", + "nodeType": "YulIdentifier", + "src": "4182:3:74" + }, + "nativeSrc": "4182:23:74", + "nodeType": "YulFunctionCall", + "src": "4182:23:74" + }, + { + "kind": "number", + "nativeSrc": "4207:2:74", + "nodeType": "YulLiteral", + "src": "4207:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4178:3:74", + "nodeType": "YulIdentifier", + "src": "4178:3:74" + }, + "nativeSrc": "4178:32:74", + "nodeType": "YulFunctionCall", + "src": "4178:32:74" + }, + "nativeSrc": "4175:119:74", + "nodeType": "YulIf", + "src": "4175:119:74" + }, + { + "nativeSrc": "4304:128:74", + "nodeType": "YulBlock", + "src": "4304:128:74", + "statements": [ + { + "nativeSrc": "4319:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4319:15:74", + "value": { + "kind": "number", + "nativeSrc": "4333:1:74", + "nodeType": "YulLiteral", + "src": "4333:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4323:6:74", + "nodeType": "YulTypedName", + "src": "4323:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4348:74:74", + "nodeType": "YulAssignment", + "src": "4348:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4394:9:74", + "nodeType": "YulIdentifier", + "src": "4394:9:74" + }, + { + "name": "offset", + "nativeSrc": "4405:6:74", + "nodeType": "YulIdentifier", + "src": "4405:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4390:3:74", + "nodeType": "YulIdentifier", + "src": "4390:3:74" + }, + "nativeSrc": "4390:22:74", + "nodeType": "YulFunctionCall", + "src": "4390:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4414:7:74", + "nodeType": "YulIdentifier", + "src": "4414:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "4358:31:74", + "nodeType": "YulIdentifier", + "src": "4358:31:74" + }, + "nativeSrc": "4358:64:74", + "nodeType": "YulFunctionCall", + "src": "4358:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4348:6:74", + "nodeType": "YulIdentifier", + "src": "4348:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "4088:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4135:9:74", + "nodeType": "YulTypedName", + "src": "4135:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4146:7:74", + "nodeType": "YulTypedName", + "src": "4146:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4158:6:74", + "nodeType": "YulTypedName", + "src": "4158:6:74", + "type": "" + } + ], + "src": "4088:351:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function cleanup_t_contract$_INameWrapper_$10064(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_INameWrapper_$10064(value) {\n if iszero(eq(value, cleanup_t_contract$_INameWrapper_$10064(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_INameWrapper_$10064_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_INameWrapper_$10064(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_addresst_address_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_contract$_INameWrapper_$10064_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "61010060405234801561001157600080fd5b506040516156ac3803806156ac8339818101604052810190610033919061030e565b833360008273ffffffffffffffffffffffffffffffffffffffff166302571be37f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b6040518263ffffffff1660e01b8152600401610093919061038e565b602060405180830381865afa1580156100b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d491906103a9565b90508073ffffffffffffffffffffffffffffffffffffffff16631e83409a836040518263ffffffff1660e01b815260040161010f91906103e5565b6020604051808303816000875af115801561012e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610152919061042c565b505050508373ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff168152505050505050610459565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061025f82610234565b9050919050565b600061027182610254565b9050919050565b61028181610266565b811461028c57600080fd5b50565b60008151905061029e81610278565b92915050565b60006102af82610254565b9050919050565b6102bf816102a4565b81146102ca57600080fd5b50565b6000815190506102dc816102b6565b92915050565b6102eb81610254565b81146102f657600080fd5b50565b600081519050610308816102e2565b92915050565b600080600080608085870312156103285761032761022f565b5b60006103368782880161028f565b9450506020610347878288016102cd565b9350506040610358878288016102f9565b9250506060610369878288016102f9565b91505092959194509250565b6000819050919050565b61038881610375565b82525050565b60006020820190506103a3600083018461037f565b92915050565b6000602082840312156103bf576103be61022f565b5b60006103cd848285016102f9565b91505092915050565b6103df81610254565b82525050565b60006020820190506103fa60008301846103d6565b92915050565b61040981610375565b811461041457600080fd5b50565b60008151905061042681610400565b92915050565b6000602082840312156104425761044161022f565b5b600061045084828501610417565b91505092915050565b60805160a05160c05160e05161521361049960003960006124b30152600061245e0152600081816125af01526126020152600061251301526152136000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb146105d1578063e59d895d14610601578063e985e9c51461061d578063f1cb7e061461064d576101da565b8063c869023314610538578063ce3decdc14610569578063d5fa2b0014610585578063d700ff33146105a1576101da565b8063a8fa5682116100de578063a8fa568214610478578063a9784b3e146104a8578063ac9650d8146104d8578063bc1c58d114610508576101da565b80638b95dd7114610424578063a22cb46514610440578063a4b91a011461045c576101da565b80633603d7581161017c5780635c98042b1161014b5780635c98042b1461038c578063623195b0146103bc578063691f3431146103d85780637737221314610408576101da565b80633603d758146102e05780633b3b57de146102fc5780634cbf6ba41461032c57806359d1d43c1461035c576101da565b8063124a319c116101b8578063124a319c146102475780632203ab561461027757806329cd62ea146102a8578063304e6ade146102c4576101da565b806301ffc9a7146101df5780630af179d71461020f57806310f13a8c1461022b575b600080fd5b6101f960048036038101906101f491906137d3565b61067d565b604051610206919061381b565b60405180910390f35b610229600480360381019061022491906138d1565b61068f565b005b61024560048036038101906102409190613987565b6108ee565b005b610261600480360381019061025c9190613a1c565b6109eb565b60405161026e9190613a9d565b60405180910390f35b610291600480360381019061028c9190613aee565b610e46565b60405161029f929190613bcd565b60405180910390f35b6102c260048036038101906102bd9190613bfd565b610fc6565b005b6102de60048036038101906102d991906138d1565b6110a3565b005b6102fa60048036038101906102f59190613c50565b611164565b005b61031660048036038101906103119190613c50565b611236565b6040516103239190613c9e565b60405180910390f35b61034660048036038101906103419190613cb9565b61126b565b604051610353919061381b565b60405180910390f35b61037660048036038101906103719190613cf9565b6112fa565b6040516103839190613dae565b60405180910390f35b6103a660048036038101906103a19190613c50565b61140a565b6040516103b39190613dd0565b60405180910390f35b6103d660048036038101906103d19190613df2565b6114fa565b005b6103f260048036038101906103ed9190613c50565b6115dc565b6040516103ff9190613dae565b60405180910390f35b610422600480360381019061041d9190613cf9565b6116cc565b005b61043e60048036038101906104399190613f96565b61178d565b005b61045a6004803603810190610455919061405d565b6118a6565b005b6104766004803603810190610471919061409d565b611a11565b005b610492600480360381019061048d919061412a565b611b7b565b60405161049f9190613dd0565b60405180910390f35b6104c260048036038101906104bd919061417d565b611c97565b6040516104cf919061381b565b60405180910390f35b6104f260048036038101906104ed9190614226565b611d3d565b6040516104ff919061437f565b60405180910390f35b610522600480360381019061051d9190613c50565b611d55565b60405161052f9190613dd0565b60405180910390f35b610552600480360381019061054d9190613c50565b611e45565b6040516105609291906143b0565b60405180910390f35b610583600480360381019061057e91906138d1565b611ef5565b005b61059f600480360381019061059a91906143d9565b612084565b005b6105bb60048036038101906105b69190613c50565b6120b0565b6040516105c8919061443c565b60405180910390f35b6105eb60048036038101906105e69190614457565b6120d7565b6040516105f8919061437f565b60405180910390f35b61061b600480360381019061061691906144b7565b6120ed565b005b6106376004803603810190610632919061450a565b61224a565b604051610644919061381b565b60405180910390f35b61066760048036038101906106629190613aee565b6122de565b6040516106749190613dd0565b60405180910390f35b6000610688826123e0565b9050919050565b826106998161245a565b6106a257600080fd5b6000806060806000806000808b815260200190815260200160002060009054906101000a900467ffffffffffffffff169050600061072e60008b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506126fb90919063ffffffff16565b90505b61073a81612725565b6108705760008761ffff1603610795578060400151965061075a8161273b565b94508460405160200161076d9190614586565b60405160208183030381529060405280519060200120925061078e81612772565b9350610862565b60006107a08261273b565b9050816040015161ffff168861ffff161415806107cd57506107cb81876127ab90919063ffffffff16565b155b15610860576108398c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508b8c886020015161082e91906145cc565b60008c51148a6127d2565b81604001519750816020015196508095508580519060200120935061085d82612772565b94505b505b61086b81612b55565b610731565b506000845111156108e2576108e18a85888c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050898a8f8f90506108d691906145cc565b60008a5114886127d2565b5b50505050505050505050565b846108f88161245a565b61090157600080fd5b8282600a60008060008b815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008981526020019081526020016000208787604051610971929190614630565b9081526020016040518091039020918261098c929190614860565b50848460405161099d929190614630565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a1878787876040516109db949392919061495d565b60405180910390a3505050505050565b6000806007600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008581526020019081526020016000206000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610afb5780915050610e40565b6000610b0685611236565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b4757600092505050610e40565b6000808273ffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000604051602401610b9291906149a7565b6040516020818303038152906040527f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610c1c9190614586565b600060405180830381855afa9150503d8060008114610c57576040519150601f19603f3d011682016040523d82523d6000602084013e610c5c565b606091505b5091509150811580610c6f575060208151105b80610cbd5750600060f81b81601f81518110610c8e57610c8d6149c2565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610ccf576000945050505050610e40565b8273ffffffffffffffffffffffffffffffffffffffff1686604051602401610cf791906149a7565b6040516020818303038152906040527f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610d819190614586565b600060405180830381855afa9150503d8060008114610dbc576040519150601f19603f3d011682016040523d82523d6000602084013e610dc1565b606091505b508092508193505050811580610dd8575060208151105b80610e265750600060f81b81601f81518110610df757610df66149c2565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610e38576000945050505050610e40565b829450505050505b92915050565b6000606060006001600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020600086815260200190815260200160002090506000600190505b848111610fa657600085821614158015610eeb575060008260008381526020019081526020016000208054610ee790614683565b9050115b15610f9a5780826000838152602001908152602001600020808054610f0f90614683565b80601f0160208091040260200160405190810160405280929190818152602001828054610f3b90614683565b8015610f885780601f10610f5d57610100808354040283529160200191610f88565b820191906000526020600020905b815481529060010190602001808311610f6b57829003601f168201915b50505050509050935093505050610fbf565b600181901b9050610eb3565b5060006040518060200160405280600081525092509250505b9250929050565b82610fd08161245a565b610fd957600080fd5b6040518060400160405280848152602001838152506009600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000820151816000015560208201518160010155905050837f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4684846040516110959291906143b0565b60405180910390a250505050565b826110ad8161245a565b6110b657600080fd5b82826003600080600089815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008781526020019081526020016000209182611123929190614a57565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051611156929190614b54565b60405180910390a250505050565b8061116e8161245a565b61117757600080fd5b600080838152602001908152602001600020600081819054906101000a900467ffffffffffffffff16809291906111ad90614b78565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050817fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db44460008085815260200190815260200160002060009054906101000a900467ffffffffffffffff1660405161122a919061443c565b60405180910390a25050565b60008061124483603c6122de565b90506000815103611259576000915050611266565b61126281612c9b565b9150505b919050565b6000806006600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020600084815260200190815260200160002060009054906101000a900461ffff1661ffff161415905092915050565b6060600a600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020838360405161136a929190614630565b9081526020016040518091039020805461138390614683565b80601f01602080910402602001604051908101604052809291908181526020018280546113af90614683565b80156113fc5780601f106113d1576101008083540402835291602001916113fc565b820191906000526020600020905b8154815290600101906020018083116113df57829003601f168201915b505050505090509392505050565b60606004600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020805461147590614683565b80601f01602080910402602001604051908101604052809291908181526020018280546114a190614683565b80156114ee5780601f106114c3576101008083540402835291602001916114ee565b820191906000526020600020905b8154815290600101906020018083116114d157829003601f168201915b50505050509050919050565b836115048161245a565b61150d57600080fd5b60008460018661151d91906145cc565b161461152857600080fd5b8282600160008060008a815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000888152602001908152602001600020600087815260200190815260200160002091826115a6929190614a57565b5083857faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe360405160405180910390a35050505050565b60606008600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020805461164790614683565b80601f016020809104026020016040519081016040528092919081815260200182805461167390614683565b80156116c05780601f10611695576101008083540402835291602001916116c0565b820191906000526020600020905b8154815290600101906020018083116116a357829003601f168201915b50505050509050919050565b826116d68161245a565b6116df57600080fd5b82826008600080600089815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000878152602001908152602001600020918261174c929190614860565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7848460405161177f929190614ba8565b60405180910390a250505050565b826117978161245a565b6117a057600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516117d2929190613bcd565b60405180910390a2603c830361182357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261180d84612c9b565b60405161181a9190614c21565b60405180910390a25b816002600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000858152602001908152602001600020908161189f9190614c3c565b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603611914576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190b90614d80565b60405180910390fd5b80600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611a05919061381b565b60405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603611a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7690614dec565b60405180910390fd5b80600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff16847ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a033604051611b6e9190613a9d565b60405180910390a4505050565b60606005600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020600084815260200190815260200160002060008361ffff1661ffff1681526020019081526020016000208054611c1090614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611c3c90614683565b8015611c895780601f10611c5e57610100808354040283529160200191611c89565b820191906000526020600020905b815481529060010190602001808311611c6c57829003601f168201915b505050505090509392505050565b6000600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690509392505050565b6060611d4d6000801b8484612cbe565b905092915050565b60606003600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008381526020019081526020016000208054611dc090614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611dec90614683565b8015611e395780601f10611e0e57610100808354040283529160200191611e39565b820191906000526020600020905b815481529060010190602001808311611e1c57829003601f168201915b50505050509050919050565b600080600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff169050600960008267ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060000154600960008367ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000868152602001908152602001600020600101549250925050915091565b82611eff8161245a565b611f0857600080fd5b600080600086815260200190815260200160002060009054906101000a900467ffffffffffffffff1690506000600460008367ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008781526020019081526020016000208054611f7890614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611fa490614683565b8015611ff15780601f10611fc657610100808354040283529160200191611ff1565b820191906000526020600020905b815481529060010190602001808311611fd457829003601f168201915b505050505090508484600460008567ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000898152602001908152602001600020918261203f929190614a57565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161207493929190614e0c565b60405180910390a2505050505050565b8161208e8161245a565b61209757600080fd5b6120ab83603c6120a685612e87565b61178d565b505050565b60006020528060005260406000206000915054906101000a900467ffffffffffffffff1681565b60606120e4848484612cbe565b90509392505050565b826120f78161245a565b61210057600080fd5b816007600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa8460405161223c9190613a9d565b60405180910390a350505050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60606002600080600086815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008481526020019081526020016000206000838152602001908152602001600020805461235a90614683565b80601f016020809104026020016040519081016040528092919081815260200182805461238690614683565b80156123d35780601f106123a8576101008083540402835291602001916123d3565b820191906000526020600020905b8154815290600101906020018083116123b657829003601f168201915b5050505050905092915050565b60007f59d1d43c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612453575061245282612eeb565b5b9050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061250157507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1561250f57600190506126f6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b815260040161256a9190614e45565b602060405180830381865afa158015612587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ab9190614e75565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036126a0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b815260040161265c9190614ea2565b602060405180830381865afa158015612679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061269d9190614e75565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806126e057506126df813361224a565b5b806126f257506126f1818433611c97565b5b9150505b919050565b6127036136bf565b828160000181905250818160c001818152505061271f81612b55565b92915050565b6000816000015151826020015110159050919050565b606061276b826020015161275784600001518560200151612f65565b8460000151612fe19092919063ffffffff16565b9050919050565b60606127a48260a001518360a001518460c0015161279091906145cc565b8460000151612fe19092919063ffffffff16565b9050919050565b6000815183511480156127ca57506127c98360008460008751613076565b5b905092915050565b60008780519060200120905060006127f5868689612fe19092919063ffffffff16565b905083156129a3576000600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff168152602001908152602001600020805461286c90614683565b9050146128f657600660008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b81526020019081526020016000206000838152602001908152602001600020600081819054906101000a900461ffff16809291906128da90614ebd565b91906101000a81548161ffff021916908361ffff160217905550505b600560008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b8152602001908152602001600020600083815260200190815260200160002060008961ffff1661ffff1681526020019081526020016000206000612964919061370a565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051612996929190614ef5565b60405180910390a2612b49565b6000600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff1681526020019081526020016000208054612a1290614683565b905003612a9c57600660008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b81526020019081526020016000206000838152602001908152602001600020600081819054906101000a900461ffff1680929190612a8090614f25565b91906101000a81548161ffff021916908361ffff160217905550505b80600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff1681526020019081526020016000209081612b0b9190614c3c565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051612b4093929190614f4f565b60405180910390a25b50505050505050505050565b8060c0015181602001818152505080600001515181602001511015612c98576000612b8882600001518360200151612f65565b8260200151612b979190614f94565b9050612bb081836000015161309a90919063ffffffff16565b826040019061ffff16908161ffff1681525050600281612bd09190614f94565b9050612be981836000015161309a90919063ffffffff16565b826060019061ffff16908161ffff1681525050600281612c099190614f94565b9050612c228183600001516130c990919063ffffffff16565b826080019063ffffffff16908163ffffffff1681525050600481612c469190614f94565b90506000612c6182846000015161309a90919063ffffffff16565b61ffff169050600282612c749190614f94565b9150818360a00181815250508082612c8c9190614f94565b8360c001818152505050505b50565b60006014825114612cab57600080fd5b600c6101000a6020830151049050919050565b60608282905067ffffffffffffffff811115612cdd57612cdc613e6b565b5b604051908082528060200260200182016040528015612d1057816020015b6060815260200190600190039081612cfb5790505b50905060005b83839050811015612e7f576000801b8514612db5576000848483818110612d4057612d3f6149c2565b5b9050602002810190612d529190614fd7565b600490602492612d6493929190615044565b90612d6f919061507f565b9050858114612db3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612daa90615150565b60405180910390fd5b505b6000803073ffffffffffffffffffffffffffffffffffffffff16868685818110612de257612de16149c2565b5b9050602002810190612df49190614fd7565b604051612e02929190615195565b600060405180830381855af49150503d8060008114612e3d576040519150601f19603f3d011682016040523d82523d6000602084013e612e42565b606091505b509150915081612e5157600080fd5b80848481518110612e6557612e646149c2565b5b602002602001018190525050508080600101915050612d16565b509392505050565b6060601467ffffffffffffffff811115612ea457612ea3613e6b565b5b6040519080825280601f01601f191660200182016040528015612ed65781602001600182028036833780820191505090505b509050600c6101000a82026020820152919050565b60007fc8690233000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612f5e5750612f5d826130fa565b5b9050919050565b6000808290505b600115612fcc5783518110612f8457612f836151ae565b5b6000612f99828661317490919063ffffffff16565b60ff169050600181612fab9190614f94565b82612fb69190614f94565b915060008103612fc65750612fcc565b50612f6c565b8281612fd891906145cc565b91505092915050565b606083518284612ff19190614f94565b1115612ffc57600080fd5b60008267ffffffffffffffff81111561301857613017613e6b565b5b6040519080825280601f01601f19166020018201604052801561304a5781602001600182028036833780820191505090505b509050600080602083019150856020880101905061306982828761319f565b8293505050509392505050565b6000613083848484613203565b61308e878785613203565b14905095945050505050565b600082516002836130ab9190614f94565b11156130b657600080fd5b61ffff8260028501015116905092915050565b600082516004836130da9190614f94565b11156130e557600080fd5b63ffffffff8260048501015116905092915050565b60007f691f3431000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061316d575061316c8261322f565b5b9050919050565b6000828281518110613189576131886149c2565b5b602001015160f81c60f81b60f81c905092915050565b5b602081106131de57815183526020836131b99190614f94565b92506020826131c89190614f94565b91506020816131d791906145cc565b90506131a0565b60006001826020036101000a0390508019835116818551168181178652505050505050565b6000835182846132139190614f94565b111561321e57600080fd5b818360208601012090509392505050565b60007f124a319c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806132a257506132a1826132a9565b5b9050919050565b60007fa8fa5682000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061337457507f5c98042b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061338457506133838261338b565b5b9050919050565b60007fbc1c58d1000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806133fe57506133fd82613405565b5b9050919050565b60007f3b3b57de000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806134d057507ff1cb7e06000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806134e057506134df826134e7565b5b9050919050565b60007f2203ab56000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061355a575061355982613561565b5b9050919050565b60007fd700ff33000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806135d457506135d3826135db565b5b9050919050565b60007f4fbf0433000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061364e575061364d82613655565b5b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b50805461371690614683565b6000825580601f106137285750613747565b601f016020900490600052602060002090810190613746919061374a565b5b50565b5b8082111561376357600081600090555060010161374b565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6137b08161377b565b81146137bb57600080fd5b50565b6000813590506137cd816137a7565b92915050565b6000602082840312156137e9576137e8613771565b5b60006137f7848285016137be565b91505092915050565b60008115159050919050565b61381581613800565b82525050565b6000602082019050613830600083018461380c565b92915050565b6000819050919050565b61384981613836565b811461385457600080fd5b50565b60008135905061386681613840565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126138915761389061386c565b5b8235905067ffffffffffffffff8111156138ae576138ad613871565b5b6020830191508360018202830111156138ca576138c9613876565b5b9250929050565b6000806000604084860312156138ea576138e9613771565b5b60006138f886828701613857565b935050602084013567ffffffffffffffff81111561391957613918613776565b5b6139258682870161387b565b92509250509250925092565b60008083601f8401126139475761394661386c565b5b8235905067ffffffffffffffff81111561396457613963613871565b5b6020830191508360018202830111156139805761397f613876565b5b9250929050565b6000806000806000606086880312156139a3576139a2613771565b5b60006139b188828901613857565b955050602086013567ffffffffffffffff8111156139d2576139d1613776565b5b6139de88828901613931565b9450945050604086013567ffffffffffffffff811115613a0157613a00613776565b5b613a0d88828901613931565b92509250509295509295909350565b60008060408385031215613a3357613a32613771565b5b6000613a4185828601613857565b9250506020613a52858286016137be565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613a8782613a5c565b9050919050565b613a9781613a7c565b82525050565b6000602082019050613ab26000830184613a8e565b92915050565b6000819050919050565b613acb81613ab8565b8114613ad657600080fd5b50565b600081359050613ae881613ac2565b92915050565b60008060408385031215613b0557613b04613771565b5b6000613b1385828601613857565b9250506020613b2485828601613ad9565b9150509250929050565b613b3781613ab8565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613b77578082015181840152602081019050613b5c565b60008484015250505050565b6000601f19601f8301169050919050565b6000613b9f82613b3d565b613ba98185613b48565b9350613bb9818560208601613b59565b613bc281613b83565b840191505092915050565b6000604082019050613be26000830185613b2e565b8181036020830152613bf48184613b94565b90509392505050565b600080600060608486031215613c1657613c15613771565b5b6000613c2486828701613857565b9350506020613c3586828701613857565b9250506040613c4686828701613857565b9150509250925092565b600060208284031215613c6657613c65613771565b5b6000613c7484828501613857565b91505092915050565b6000613c8882613a5c565b9050919050565b613c9881613c7d565b82525050565b6000602082019050613cb36000830184613c8f565b92915050565b60008060408385031215613cd057613ccf613771565b5b6000613cde85828601613857565b9250506020613cef85828601613857565b9150509250929050565b600080600060408486031215613d1257613d11613771565b5b6000613d2086828701613857565b935050602084013567ffffffffffffffff811115613d4157613d40613776565b5b613d4d86828701613931565b92509250509250925092565b600081519050919050565b600082825260208201905092915050565b6000613d8082613d59565b613d8a8185613d64565b9350613d9a818560208601613b59565b613da381613b83565b840191505092915050565b60006020820190508181036000830152613dc88184613d75565b905092915050565b60006020820190508181036000830152613dea8184613b94565b905092915050565b60008060008060608587031215613e0c57613e0b613771565b5b6000613e1a87828801613857565b9450506020613e2b87828801613ad9565b935050604085013567ffffffffffffffff811115613e4c57613e4b613776565b5b613e588782880161387b565b925092505092959194509250565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613ea382613b83565b810181811067ffffffffffffffff82111715613ec257613ec1613e6b565b5b80604052505050565b6000613ed5613767565b9050613ee18282613e9a565b919050565b600067ffffffffffffffff821115613f0157613f00613e6b565b5b613f0a82613b83565b9050602081019050919050565b82818337600083830152505050565b6000613f39613f3484613ee6565b613ecb565b905082815260208101848484011115613f5557613f54613e66565b5b613f60848285613f17565b509392505050565b600082601f830112613f7d57613f7c61386c565b5b8135613f8d848260208601613f26565b91505092915050565b600080600060608486031215613faf57613fae613771565b5b6000613fbd86828701613857565b9350506020613fce86828701613ad9565b925050604084013567ffffffffffffffff811115613fef57613fee613776565b5b613ffb86828701613f68565b9150509250925092565b61400e81613a7c565b811461401957600080fd5b50565b60008135905061402b81614005565b92915050565b61403a81613800565b811461404557600080fd5b50565b60008135905061405781614031565b92915050565b6000806040838503121561407457614073613771565b5b60006140828582860161401c565b925050602061409385828601614048565b9150509250929050565b6000806000606084860312156140b6576140b5613771565b5b60006140c486828701613857565b93505060206140d58682870161401c565b92505060406140e686828701614048565b9150509250925092565b600061ffff82169050919050565b614107816140f0565b811461411257600080fd5b50565b600081359050614124816140fe565b92915050565b60008060006060848603121561414357614142613771565b5b600061415186828701613857565b935050602061416286828701613857565b925050604061417386828701614115565b9150509250925092565b60008060006060848603121561419657614195613771565b5b60006141a48682870161401c565b93505060206141b586828701613857565b92505060406141c68682870161401c565b9150509250925092565b60008083601f8401126141e6576141e561386c565b5b8235905067ffffffffffffffff81111561420357614202613871565b5b60208301915083602082028301111561421f5761421e613876565b5b9250929050565b6000806020838503121561423d5761423c613771565b5b600083013567ffffffffffffffff81111561425b5761425a613776565b5b614267858286016141d0565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b60006142bb82613b3d565b6142c5818561429f565b93506142d5818560208601613b59565b6142de81613b83565b840191505092915050565b60006142f583836142b0565b905092915050565b6000602082019050919050565b600061431582614273565b61431f818561427e565b9350836020820285016143318561428f565b8060005b8581101561436d578484038952815161434e85826142e9565b9450614359836142fd565b925060208a01995050600181019050614335565b50829750879550505050505092915050565b60006020820190508181036000830152614399818461430a565b905092915050565b6143aa81613836565b82525050565b60006040820190506143c560008301856143a1565b6143d260208301846143a1565b9392505050565b600080604083850312156143f0576143ef613771565b5b60006143fe85828601613857565b925050602061440f8582860161401c565b9150509250929050565b600067ffffffffffffffff82169050919050565b61443681614419565b82525050565b6000602082019050614451600083018461442d565b92915050565b6000806000604084860312156144705761446f613771565b5b600061447e86828701613857565b935050602084013567ffffffffffffffff81111561449f5761449e613776565b5b6144ab868287016141d0565b92509250509250925092565b6000806000606084860312156144d0576144cf613771565b5b60006144de86828701613857565b93505060206144ef868287016137be565b92505060406145008682870161401c565b9150509250925092565b6000806040838503121561452157614520613771565b5b600061452f8582860161401c565b92505060206145408582860161401c565b9150509250929050565b600081905092915050565b600061456082613b3d565b61456a818561454a565b935061457a818560208601613b59565b80840191505092915050565b60006145928284614555565b915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006145d782613ab8565b91506145e283613ab8565b92508282039050818111156145fa576145f961459d565b5b92915050565b600081905092915050565b60006146178385614600565b9350614624838584613f17565b82840190509392505050565b600061463d82848661460b565b91508190509392505050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061469b57607f821691505b6020821081036146ae576146ad614654565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026147167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826146d9565b61472086836146d9565b95508019841693508086168417925050509392505050565b6000819050919050565b600061475d61475861475384613ab8565b614738565b613ab8565b9050919050565b6000819050919050565b61477783614742565b61478b61478382614764565b8484546146e6565b825550505050565b600090565b6147a0614793565b6147ab81848461476e565b505050565b5b818110156147cf576147c4600082614798565b6001810190506147b1565b5050565b601f821115614814576147e5816146b4565b6147ee846146c9565b810160208510156147fd578190505b614811614809856146c9565b8301826147b0565b50505b505050565b600082821c905092915050565b600061483760001984600802614819565b1980831691505092915050565b60006148508383614826565b9150826002028217905092915050565b61486a8383614649565b67ffffffffffffffff81111561488357614882613e6b565b5b61488d8254614683565b6148988282856147d3565b6000601f8311600181146148c757600084156148b5578287013590505b6148bf8582614844565b865550614927565b601f1984166148d5866146b4565b60005b828110156148fd578489013582556001820191506020850194506020810190506148d8565b8683101561491a5784890135614916601f891682614826565b8355505b6001600288020188555050505b50505050505050565b600061493c8385613d64565b9350614949838584613f17565b61495283613b83565b840190509392505050565b60006040820190508181036000830152614978818688614930565b9050818103602083015261498d818486614930565b905095945050505050565b6149a18161377b565b82525050565b60006020820190506149bc6000830184614998565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082905092915050565b60008190508160005260206000209050919050565b601f821115614a5257614a23816149fc565b614a2c846146c9565b81016020851015614a3b578190505b614a4f614a47856146c9565b8301826147b0565b50505b505050565b614a6183836149f1565b67ffffffffffffffff811115614a7a57614a79613e6b565b5b614a848254614683565b614a8f828285614a11565b6000601f831160018114614abe5760008415614aac578287013590505b614ab68582614844565b865550614b1e565b601f198416614acc866149fc565b60005b82811015614af457848901358255600182019150602085019450602081019050614acf565b86831015614b115784890135614b0d601f891682614826565b8355505b6001600288020188555050505b50505050505050565b6000614b338385613b48565b9350614b40838584613f17565b614b4983613b83565b840190509392505050565b60006020820190508181036000830152614b6f818486614b27565b90509392505050565b6000614b8382614419565b915067ffffffffffffffff8203614b9d57614b9c61459d565b5b600182019050919050565b60006020820190508181036000830152614bc3818486614930565b90509392505050565b6000614be7614be2614bdd84613a5c565b614738565b613a5c565b9050919050565b6000614bf982614bcc565b9050919050565b6000614c0b82614bee565b9050919050565b614c1b81614c00565b82525050565b6000602082019050614c366000830184614c12565b92915050565b614c4582613b3d565b67ffffffffffffffff811115614c5e57614c5d613e6b565b5b614c688254614683565b614c73828285614a11565b600060209050601f831160018114614ca65760008415614c94578287015190505b614c9e8582614844565b865550614d06565b601f198416614cb4866149fc565b60005b82811015614cdc57848901518255600182019150602085019450602081019050614cb7565b86831015614cf95784890151614cf5601f891682614826565b8355505b6001600288020188555050505b505050505050565b7f455243313135353a2073657474696e6720617070726f76616c2073746174757360008201527f20666f722073656c660000000000000000000000000000000000000000000000602082015250565b6000614d6a602983613d64565b9150614d7582614d0e565b604082019050919050565b60006020820190508181036000830152614d9981614d5d565b9050919050565b7f53657474696e672064656c65676174652073746174757320666f722073656c66600082015250565b6000614dd6602083613d64565b9150614de182614da0565b602082019050919050565b60006020820190508181036000830152614e0581614dc9565b9050919050565b60006040820190508181036000830152614e268186613b94565b90508181036020830152614e3b818486614b27565b9050949350505050565b6000602082019050614e5a60008301846143a1565b92915050565b600081519050614e6f81614005565b92915050565b600060208284031215614e8b57614e8a613771565b5b6000614e9984828501614e60565b91505092915050565b6000602082019050614eb76000830184613b2e565b92915050565b6000614ec8826140f0565b915060008203614edb57614eda61459d565b5b600182039050919050565b614eef816140f0565b82525050565b60006040820190508181036000830152614f0f8185613b94565b9050614f1e6020830184614ee6565b9392505050565b6000614f30826140f0565b915061ffff8203614f4457614f4361459d565b5b600182019050919050565b60006060820190508181036000830152614f698186613b94565b9050614f786020830185614ee6565b8181036040830152614f8a8184613b94565b9050949350505050565b6000614f9f82613ab8565b9150614faa83613ab8565b9250828201905080821115614fc257614fc161459d565b5b92915050565b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112614ff457614ff3614fc8565b5b80840192508235915067ffffffffffffffff82111561501657615015614fcd565b5b60208301925060018202360383131561503257615031614fd2565b5b509250929050565b600080fd5b600080fd5b600080858511156150585761505761503a565b5b838611156150695761506861503f565b5b6001850283019150848603905094509492505050565b600061508b83836149f1565b826150968135613836565b925060208210156150d6576150d17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026146d9565b831692505b505092915050565b7f6d756c746963616c6c3a20416c6c207265636f726473206d757374206861766560008201527f2061206d61746368696e67206e616d6568617368000000000000000000000000602082015250565b600061513a603483613d64565b9150615145826150de565b604082019050919050565b600060208201905081810360008301526151698161512d565b9050919050565b600061517c838561454a565b9350615189838584613f17565b82840190509392505050565b60006151a2828486615170565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220b736a7783453517e20855927c0ae14ed7e53fa85e5e33b7627f2627a0b3069aa64736f6c63430008190033", + "opcodes": "PUSH2 0x100 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x56AC CODESIZE SUB DUP1 PUSH2 0x56AC DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x33 SWAP2 SWAP1 PUSH2 0x30E JUMP JUMPDEST DUP4 CALLER PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x93 SWAP2 SWAP1 PUSH2 0x38E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xD4 SWAP2 SWAP1 PUSH2 0x3A9 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1E83409A DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10F SWAP2 SWAP1 PUSH2 0x3E5 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x12E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x152 SWAP2 SWAP1 PUSH2 0x42C JUMP JUMPDEST POP POP POP POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xC0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xE0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP POP POP POP POP PUSH2 0x459 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F DUP3 PUSH2 0x234 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x271 DUP3 PUSH2 0x254 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x281 DUP2 PUSH2 0x266 JUMP JUMPDEST DUP2 EQ PUSH2 0x28C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x29E DUP2 PUSH2 0x278 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AF DUP3 PUSH2 0x254 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2BF DUP2 PUSH2 0x2A4 JUMP JUMPDEST DUP2 EQ PUSH2 0x2CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2DC DUP2 PUSH2 0x2B6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2EB DUP2 PUSH2 0x254 JUMP JUMPDEST DUP2 EQ PUSH2 0x2F6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x308 DUP2 PUSH2 0x2E2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x328 JUMPI PUSH2 0x327 PUSH2 0x22F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x336 DUP8 DUP3 DUP9 ADD PUSH2 0x28F JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x347 DUP8 DUP3 DUP9 ADD PUSH2 0x2CD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x358 DUP8 DUP3 DUP9 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x369 DUP8 DUP3 DUP9 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x388 DUP2 PUSH2 0x375 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3A3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x37F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3BF JUMPI PUSH2 0x3BE PUSH2 0x22F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3CD DUP5 DUP3 DUP6 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3DF DUP2 PUSH2 0x254 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3FA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3D6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x409 DUP2 PUSH2 0x375 JUMP JUMPDEST DUP2 EQ PUSH2 0x414 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x426 DUP2 PUSH2 0x400 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x442 JUMPI PUSH2 0x441 PUSH2 0x22F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x450 DUP5 DUP3 DUP6 ADD PUSH2 0x417 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH1 0xC0 MLOAD PUSH1 0xE0 MLOAD PUSH2 0x5213 PUSH2 0x499 PUSH1 0x0 CODECOPY PUSH1 0x0 PUSH2 0x24B3 ADD MSTORE PUSH1 0x0 PUSH2 0x245E ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x25AF ADD MSTORE PUSH2 0x2602 ADD MSTORE PUSH1 0x0 PUSH2 0x2513 ADD MSTORE PUSH2 0x5213 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1DA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8B95DD71 GT PUSH2 0x104 JUMPI DUP1 PUSH4 0xC8690233 GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE32954EB GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE32954EB EQ PUSH2 0x5D1 JUMPI DUP1 PUSH4 0xE59D895D EQ PUSH2 0x601 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x61D JUMPI DUP1 PUSH4 0xF1CB7E06 EQ PUSH2 0x64D JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0xC8690233 EQ PUSH2 0x538 JUMPI DUP1 PUSH4 0xCE3DECDC EQ PUSH2 0x569 JUMPI DUP1 PUSH4 0xD5FA2B00 EQ PUSH2 0x585 JUMPI DUP1 PUSH4 0xD700FF33 EQ PUSH2 0x5A1 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0xA8FA5682 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA8FA5682 EQ PUSH2 0x478 JUMPI DUP1 PUSH4 0xA9784B3E EQ PUSH2 0x4A8 JUMPI DUP1 PUSH4 0xAC9650D8 EQ PUSH2 0x4D8 JUMPI DUP1 PUSH4 0xBC1C58D1 EQ PUSH2 0x508 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x8B95DD71 EQ PUSH2 0x424 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x440 JUMPI DUP1 PUSH4 0xA4B91A01 EQ PUSH2 0x45C JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x3603D758 GT PUSH2 0x17C JUMPI DUP1 PUSH4 0x5C98042B GT PUSH2 0x14B JUMPI DUP1 PUSH4 0x5C98042B EQ PUSH2 0x38C JUMPI DUP1 PUSH4 0x623195B0 EQ PUSH2 0x3BC JUMPI DUP1 PUSH4 0x691F3431 EQ PUSH2 0x3D8 JUMPI DUP1 PUSH4 0x77372213 EQ PUSH2 0x408 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x3603D758 EQ PUSH2 0x2E0 JUMPI DUP1 PUSH4 0x3B3B57DE EQ PUSH2 0x2FC JUMPI DUP1 PUSH4 0x4CBF6BA4 EQ PUSH2 0x32C JUMPI DUP1 PUSH4 0x59D1D43C EQ PUSH2 0x35C JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x124A319C GT PUSH2 0x1B8 JUMPI DUP1 PUSH4 0x124A319C EQ PUSH2 0x247 JUMPI DUP1 PUSH4 0x2203AB56 EQ PUSH2 0x277 JUMPI DUP1 PUSH4 0x29CD62EA EQ PUSH2 0x2A8 JUMPI DUP1 PUSH4 0x304E6ADE EQ PUSH2 0x2C4 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x1DF JUMPI DUP1 PUSH4 0xAF179D7 EQ PUSH2 0x20F JUMPI DUP1 PUSH4 0x10F13A8C EQ PUSH2 0x22B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1F9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1F4 SWAP2 SWAP1 PUSH2 0x37D3 JUMP JUMPDEST PUSH2 0x67D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x206 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x229 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x224 SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x68F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x245 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x240 SWAP2 SWAP1 PUSH2 0x3987 JUMP JUMPDEST PUSH2 0x8EE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x261 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x25C SWAP2 SWAP1 PUSH2 0x3A1C JUMP JUMPDEST PUSH2 0x9EB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x28C SWAP2 SWAP1 PUSH2 0x3AEE JUMP JUMPDEST PUSH2 0xE46 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29F SWAP3 SWAP2 SWAP1 PUSH2 0x3BCD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BD SWAP2 SWAP1 PUSH2 0x3BFD JUMP JUMPDEST PUSH2 0xFC6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D9 SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x10A3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2FA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F5 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1164 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x316 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x311 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1236 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x323 SWAP2 SWAP1 PUSH2 0x3C9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x346 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x341 SWAP2 SWAP1 PUSH2 0x3CB9 JUMP JUMPDEST PUSH2 0x126B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x353 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x376 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x371 SWAP2 SWAP1 PUSH2 0x3CF9 JUMP JUMPDEST PUSH2 0x12FA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x383 SWAP2 SWAP1 PUSH2 0x3DAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3A6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A1 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x140A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3B3 SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3D6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3D1 SWAP2 SWAP1 PUSH2 0x3DF2 JUMP JUMPDEST PUSH2 0x14FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3ED SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x15DC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FF SWAP2 SWAP1 PUSH2 0x3DAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x422 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41D SWAP2 SWAP1 PUSH2 0x3CF9 JUMP JUMPDEST PUSH2 0x16CC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x43E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x439 SWAP2 SWAP1 PUSH2 0x3F96 JUMP JUMPDEST PUSH2 0x178D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x45A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x455 SWAP2 SWAP1 PUSH2 0x405D JUMP JUMPDEST PUSH2 0x18A6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x476 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0x409D JUMP JUMPDEST PUSH2 0x1A11 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x492 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x48D SWAP2 SWAP1 PUSH2 0x412A JUMP JUMPDEST PUSH2 0x1B7B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x49F SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4C2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4BD SWAP2 SWAP1 PUSH2 0x417D JUMP JUMPDEST PUSH2 0x1C97 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4CF SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4ED SWAP2 SWAP1 PUSH2 0x4226 JUMP JUMPDEST PUSH2 0x1D3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4FF SWAP2 SWAP1 PUSH2 0x437F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x522 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x51D SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1D55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x52F SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x552 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x54D SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1E45 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x560 SWAP3 SWAP2 SWAP1 PUSH2 0x43B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x583 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x57E SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x1EF5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x59F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x59A SWAP2 SWAP1 PUSH2 0x43D9 JUMP JUMPDEST PUSH2 0x2084 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B6 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x20B0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C8 SWAP2 SWAP1 PUSH2 0x443C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5EB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E6 SWAP2 SWAP1 PUSH2 0x4457 JUMP JUMPDEST PUSH2 0x20D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5F8 SWAP2 SWAP1 PUSH2 0x437F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x61B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x616 SWAP2 SWAP1 PUSH2 0x44B7 JUMP JUMPDEST PUSH2 0x20ED JUMP JUMPDEST STOP JUMPDEST PUSH2 0x637 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x632 SWAP2 SWAP1 PUSH2 0x450A JUMP JUMPDEST PUSH2 0x224A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x644 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x667 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x662 SWAP2 SWAP1 PUSH2 0x3AEE JUMP JUMPDEST PUSH2 0x22DE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x674 SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x688 DUP3 PUSH2 0x23E0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0x699 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x6A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x60 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH2 0x72E PUSH1 0x0 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x26FB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0x73A DUP2 PUSH2 0x2725 JUMP JUMPDEST PUSH2 0x870 JUMPI PUSH1 0x0 DUP8 PUSH2 0xFFFF AND SUB PUSH2 0x795 JUMPI DUP1 PUSH1 0x40 ADD MLOAD SWAP7 POP PUSH2 0x75A DUP2 PUSH2 0x273B JUMP JUMPDEST SWAP5 POP DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x76D SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP3 POP PUSH2 0x78E DUP2 PUSH2 0x2772 JUMP JUMPDEST SWAP4 POP PUSH2 0x862 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A0 DUP3 PUSH2 0x273B JUMP JUMPDEST SWAP1 POP DUP2 PUSH1 0x40 ADD MLOAD PUSH2 0xFFFF AND DUP9 PUSH2 0xFFFF AND EQ ISZERO DUP1 PUSH2 0x7CD JUMPI POP PUSH2 0x7CB DUP2 DUP8 PUSH2 0x27AB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x860 JUMPI PUSH2 0x839 DUP13 DUP8 DUP11 DUP15 DUP15 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP12 DUP13 DUP9 PUSH1 0x20 ADD MLOAD PUSH2 0x82E SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST PUSH1 0x0 DUP13 MLOAD EQ DUP11 PUSH2 0x27D2 JUMP JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD SWAP8 POP DUP2 PUSH1 0x20 ADD MLOAD SWAP7 POP DUP1 SWAP6 POP DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP4 POP PUSH2 0x85D DUP3 PUSH2 0x2772 JUMP JUMPDEST SWAP5 POP JUMPDEST POP JUMPDEST PUSH2 0x86B DUP2 PUSH2 0x2B55 JUMP JUMPDEST PUSH2 0x731 JUMP JUMPDEST POP PUSH1 0x0 DUP5 MLOAD GT ISZERO PUSH2 0x8E2 JUMPI PUSH2 0x8E1 DUP11 DUP6 DUP9 DUP13 DUP13 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP10 DUP11 DUP16 DUP16 SWAP1 POP PUSH2 0x8D6 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST PUSH1 0x0 DUP11 MLOAD EQ DUP9 PUSH2 0x27D2 JUMP JUMPDEST JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP5 PUSH2 0x8F8 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x901 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0xA PUSH1 0x0 DUP1 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x971 SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 SWAP2 DUP3 PUSH2 0x98C SWAP3 SWAP2 SWAP1 PUSH2 0x4860 JUMP JUMPDEST POP DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x99D SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP7 PUSH32 0x448BC014F1536726CF8D54FF3D6481ED3CBC683C2591CA204274009AFA09B1A1 DUP8 DUP8 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x9DB SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x495D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x7 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xAFB JUMPI DUP1 SWAP2 POP POP PUSH2 0xE40 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB06 DUP6 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xB47 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0xE40 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0xB92 SWAP2 SWAP1 PUSH2 0x49A7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0xC1C SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xC57 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xC5C JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 ISZERO DUP1 PUSH2 0xC6F JUMPI POP PUSH1 0x20 DUP2 MLOAD LT JUMPDEST DUP1 PUSH2 0xCBD JUMPI POP PUSH1 0x0 PUSH1 0xF8 SHL DUP2 PUSH1 0x1F DUP2 MLOAD DUP2 LT PUSH2 0xC8E JUMPI PUSH2 0xC8D PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST ISZERO PUSH2 0xCCF JUMPI PUSH1 0x0 SWAP5 POP POP POP POP POP PUSH2 0xE40 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0xCF7 SWAP2 SWAP1 PUSH2 0x49A7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0xD81 SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xDBC JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xDC1 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP DUP1 SWAP3 POP DUP2 SWAP4 POP POP POP DUP2 ISZERO DUP1 PUSH2 0xDD8 JUMPI POP PUSH1 0x20 DUP2 MLOAD LT JUMPDEST DUP1 PUSH2 0xE26 JUMPI POP PUSH1 0x0 PUSH1 0xF8 SHL DUP2 PUSH1 0x1F DUP2 MLOAD DUP2 LT PUSH2 0xDF7 JUMPI PUSH2 0xDF6 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST ISZERO PUSH2 0xE38 JUMPI PUSH1 0x0 SWAP5 POP POP POP POP POP PUSH2 0xE40 JUMP JUMPDEST DUP3 SWAP5 POP POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP5 DUP2 GT PUSH2 0xFA6 JUMPI PUSH1 0x0 DUP6 DUP3 AND EQ ISZERO DUP1 ISZERO PUSH2 0xEEB JUMPI POP PUSH1 0x0 DUP3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0xEE7 SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP GT JUMPDEST ISZERO PUSH2 0xF9A JUMPI DUP1 DUP3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 DUP1 SLOAD PUSH2 0xF0F SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xF3B SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0xF88 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xF5D JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xF88 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xF6B JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 POP SWAP4 POP POP POP PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SHL SWAP1 POP PUSH2 0xEB3 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0xFD0 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0xFD9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE POP PUSH1 0x9 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD SSTORE PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SSTORE SWAP1 POP POP DUP4 PUSH32 0x1D6F5E03D3F63EB58751986629A5439BAEE5079FF04F345BECB66E23EB154E46 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x1095 SWAP3 SWAP2 SWAP1 PUSH2 0x43B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x10AD DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x10B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x1123 SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP4 PUSH32 0xE379C1624ED7E714CC0937528A32359D69D5281337765313DBA4E081B72D7578 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x1156 SWAP3 SWAP2 SWAP1 PUSH2 0x4B54 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP1 PUSH2 0x116E DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x1177 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x11AD SWAP1 PUSH2 0x4B78 JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP DUP2 PUSH32 0xC6621CCB8F3F5A04BB6502154B2CAF6ADF5983FE76DFEF1CFC9C42E3579DB444 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x40 MLOAD PUSH2 0x122A SWAP2 SWAP1 PUSH2 0x443C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1244 DUP4 PUSH1 0x3C PUSH2 0x22DE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x1259 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1266 JUMP JUMPDEST PUSH2 0x1262 DUP2 PUSH2 0x2C9B JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x6 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND PUSH2 0xFFFF AND EQ ISZERO SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xA PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH2 0x136A SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP1 SLOAD PUSH2 0x1383 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x13AF SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13FC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13D1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13FC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x13DF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1475 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x14A1 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14EE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x14C3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14EE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x14D1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP4 PUSH2 0x1504 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x150D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 DUP7 PUSH2 0x151D SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST AND EQ PUSH2 0x1528 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP11 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x15A6 SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP4 DUP6 PUSH32 0xAA121BBEEF5F32F5961A2A28966E769023910FC9479059EE3495D4C1A696EFE3 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x8 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1647 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1673 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x16C0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1695 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x16C0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x16A3 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0x16D6 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x16DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x8 PUSH1 0x0 DUP1 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x174C SWAP3 SWAP2 SWAP1 PUSH2 0x4860 JUMP JUMPDEST POP DUP4 PUSH32 0xB7D29E911041E8D9B843369E890BCB72C9388692BA48B65AC54E7214C4C348F7 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x177F SWAP3 SWAP2 SWAP1 PUSH2 0x4BA8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x1797 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x17A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x65412581168E88A1E60C6459D7F44AE83AD0832E670826C05A4E2476B57AF752 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x17D2 SWAP3 SWAP2 SWAP1 PUSH2 0x3BCD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x3C DUP4 SUB PUSH2 0x1823 JUMPI DUP4 PUSH32 0x52D7D861F09AB3D26239D492E8968629F95E9E318CF0B73BFDDC441522A15FD2 PUSH2 0x180D DUP5 PUSH2 0x2C9B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x181A SWAP2 SWAP1 PUSH2 0x4C21 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST DUP2 PUSH1 0x2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x189F SWAP2 SWAP1 PUSH2 0x4C3C JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1914 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x190B SWAP1 PUSH2 0x4D80 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xB PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1A05 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1A7F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A76 SWAP1 PUSH2 0x4DEC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xC PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 ISZERO ISZERO DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH32 0xF0DDB3B04746704017F9AA8BD728FCC2C1D11675041205350018915F5E4750A0 CALLER PUSH1 0x40 MLOAD PUSH2 0x1B6E SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1C10 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1C3C SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1C89 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1C5E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1C89 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1C6C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1D4D PUSH1 0x0 DUP1 SHL DUP5 DUP5 PUSH2 0x2CBE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1DC0 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1DEC SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1E39 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1E0E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1E39 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1E1C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x9 PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x9 PUSH1 0x0 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD SWAP3 POP SWAP3 POP POP SWAP2 POP SWAP2 JUMP JUMPDEST DUP3 PUSH2 0x1EFF DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x1F08 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1F78 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1FA4 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1FF1 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1FC6 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1FF1 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1FD4 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP5 DUP5 PUSH1 0x4 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x203F SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP6 PUSH32 0x8F15ED4B723EF428F250961DA8315675B507046737E19319FC1A4D81BFE87F85 DUP3 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x2074 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4E0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH2 0x208E DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x2097 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x20AB DUP4 PUSH1 0x3C PUSH2 0x20A6 DUP6 PUSH2 0x2E87 JUMP JUMPDEST PUSH2 0x178D JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x20E4 DUP5 DUP5 DUP5 PUSH2 0x2CBE JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x20F7 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x2100 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x7 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP5 PUSH32 0x7C69F06BEA0BDEF565B709E93A147836B0063BA2DD89F02D0B7E8D931E6A6DAA DUP5 PUSH1 0x40 MLOAD PUSH2 0x223C SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xB PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x235A SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2386 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23D3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x23A8 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23D3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x23B6 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x59D1D43C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x2453 JUMPI POP PUSH2 0x2452 DUP3 PUSH2 0x2EEB JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x2501 JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x250F JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x26F6 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x256A SWAP2 SWAP1 PUSH2 0x4E45 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2587 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x25AB SWAP2 SWAP1 PUSH2 0x4E75 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x26A0 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP5 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x265C SWAP2 SWAP1 PUSH2 0x4EA2 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2679 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x269D SWAP2 SWAP1 PUSH2 0x4E75 JUMP JUMPDEST SWAP1 POP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x26E0 JUMPI POP PUSH2 0x26DF DUP2 CALLER PUSH2 0x224A JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x26F2 JUMPI POP PUSH2 0x26F1 DUP2 DUP5 CALLER PUSH2 0x1C97 JUMP JUMPDEST JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2703 PUSH2 0x36BF JUMP JUMPDEST DUP3 DUP2 PUSH1 0x0 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x271F DUP2 PUSH2 0x2B55 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD MLOAD DUP3 PUSH1 0x20 ADD MLOAD LT ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x276B DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x2757 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x20 ADD MLOAD PUSH2 0x2F65 JUMP JUMPDEST DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x27A4 DUP3 PUSH1 0xA0 ADD MLOAD DUP4 PUSH1 0xA0 ADD MLOAD DUP5 PUSH1 0xC0 ADD MLOAD PUSH2 0x2790 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP4 MLOAD EQ DUP1 ISZERO PUSH2 0x27CA JUMPI POP PUSH2 0x27C9 DUP4 PUSH1 0x0 DUP5 PUSH1 0x0 DUP8 MLOAD PUSH2 0x3076 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP8 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH1 0x0 PUSH2 0x27F5 DUP7 DUP7 DUP10 PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP4 ISZERO PUSH2 0x29A3 JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x286C SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x28F6 JUMPI PUSH1 0x6 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x28DA SWAP1 PUSH2 0x4EBD JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH2 0xFFFF MUL NOT AND SWAP1 DUP4 PUSH2 0xFFFF AND MUL OR SWAP1 SSTORE POP POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x2964 SWAP2 SWAP1 PUSH2 0x370A JUMP JUMPDEST DUP10 PUSH32 0x3528ED0C2A3EBC993B12CE3C16BB382F9C7D88EF7D8A1BF290EAF35955A1207 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH2 0x2996 SWAP3 SWAP2 SWAP1 PUSH2 0x4EF5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH2 0x2B49 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x2A12 SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP SUB PUSH2 0x2A9C JUMPI PUSH1 0x6 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x2A80 SWAP1 PUSH2 0x4F25 JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH2 0xFFFF MUL NOT AND SWAP1 DUP4 PUSH2 0xFFFF AND MUL OR SWAP1 SSTORE POP POP JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x2B0B SWAP2 SWAP1 PUSH2 0x4C3C JUMP JUMPDEST POP DUP10 PUSH32 0x52A608B3303A48862D07A73D82FA221318C0027FBBCFB1B2329BFACE3F19FF2B DUP11 DUP11 DUP5 PUSH1 0x40 MLOAD PUSH2 0x2B40 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4F4F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0xC0 ADD MLOAD DUP2 PUSH1 0x20 ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x0 ADD MLOAD MLOAD DUP2 PUSH1 0x20 ADD MLOAD LT ISZERO PUSH2 0x2C98 JUMPI PUSH1 0x0 PUSH2 0x2B88 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x20 ADD MLOAD PUSH2 0x2F65 JUMP JUMPDEST DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x2B97 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2BB0 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x40 ADD SWAP1 PUSH2 0xFFFF AND SWAP1 DUP2 PUSH2 0xFFFF AND DUP2 MSTORE POP POP PUSH1 0x2 DUP2 PUSH2 0x2BD0 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2BE9 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x60 ADD SWAP1 PUSH2 0xFFFF AND SWAP1 DUP2 PUSH2 0xFFFF AND DUP2 MSTORE POP POP PUSH1 0x2 DUP2 PUSH2 0x2C09 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2C22 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x30C9 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP PUSH1 0x4 DUP2 PUSH2 0x2C46 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2C61 DUP3 DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH1 0x2 DUP3 PUSH2 0x2C74 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP DUP2 DUP4 PUSH1 0xA0 ADD DUP2 DUP2 MSTORE POP POP DUP1 DUP3 PUSH2 0x2C8C SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST DUP4 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x14 DUP3 MLOAD EQ PUSH2 0x2CAB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xC PUSH2 0x100 EXP PUSH1 0x20 DUP4 ADD MLOAD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP3 DUP3 SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2CDD JUMPI PUSH2 0x2CDC PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2D10 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x2CFB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP4 SWAP1 POP DUP2 LT ISZERO PUSH2 0x2E7F JUMPI PUSH1 0x0 DUP1 SHL DUP6 EQ PUSH2 0x2DB5 JUMPI PUSH1 0x0 DUP5 DUP5 DUP4 DUP2 DUP2 LT PUSH2 0x2D40 JUMPI PUSH2 0x2D3F PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2D52 SWAP2 SWAP1 PUSH2 0x4FD7 JUMP JUMPDEST PUSH1 0x4 SWAP1 PUSH1 0x24 SWAP3 PUSH2 0x2D64 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x5044 JUMP JUMPDEST SWAP1 PUSH2 0x2D6F SWAP2 SWAP1 PUSH2 0x507F JUMP JUMPDEST SWAP1 POP DUP6 DUP2 EQ PUSH2 0x2DB3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DAA SWAP1 PUSH2 0x5150 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x0 DUP1 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 DUP7 DUP6 DUP2 DUP2 LT PUSH2 0x2DE2 JUMPI PUSH2 0x2DE1 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2DF4 SWAP2 SWAP1 PUSH2 0x4FD7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E02 SWAP3 SWAP2 SWAP1 PUSH2 0x5195 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2E3D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2E42 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x2E51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2E65 JUMPI PUSH2 0x2E64 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x2D16 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x14 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2EA4 JUMPI PUSH2 0x2EA3 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2ED6 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0xC PUSH2 0x100 EXP DUP3 MUL PUSH1 0x20 DUP3 ADD MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xC869023300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x2F5E JUMPI POP PUSH2 0x2F5D DUP3 PUSH2 0x30FA JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x2FCC JUMPI DUP4 MLOAD DUP2 LT PUSH2 0x2F84 JUMPI PUSH2 0x2F83 PUSH2 0x51AE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2F99 DUP3 DUP7 PUSH2 0x3174 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH1 0x1 DUP2 PUSH2 0x2FAB SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST DUP3 PUSH2 0x2FB6 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP2 SUB PUSH2 0x2FC6 JUMPI POP PUSH2 0x2FCC JUMP JUMPDEST POP PUSH2 0x2F6C JUMP JUMPDEST DUP3 DUP2 PUSH2 0x2FD8 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x2FF1 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x2FFC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3018 JUMPI PUSH2 0x3017 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x304A JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 ADD SWAP2 POP DUP6 PUSH1 0x20 DUP9 ADD ADD SWAP1 POP PUSH2 0x3069 DUP3 DUP3 DUP8 PUSH2 0x319F JUMP JUMPDEST DUP3 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3083 DUP5 DUP5 DUP5 PUSH2 0x3203 JUMP JUMPDEST PUSH2 0x308E DUP8 DUP8 DUP6 PUSH2 0x3203 JUMP JUMPDEST EQ SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH1 0x2 DUP4 PUSH2 0x30AB SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x30B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP3 PUSH1 0x2 DUP6 ADD ADD MLOAD AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH1 0x4 DUP4 PUSH2 0x30DA SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x30E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH4 0xFFFFFFFF DUP3 PUSH1 0x4 DUP6 ADD ADD MLOAD AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x691F343100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x316D JUMPI POP PUSH2 0x316C DUP3 PUSH2 0x322F JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3189 JUMPI PUSH2 0x3188 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP2 LT PUSH2 0x31DE JUMPI DUP2 MLOAD DUP4 MSTORE PUSH1 0x20 DUP4 PUSH2 0x31B9 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 PUSH2 0x31C8 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP2 PUSH2 0x31D7 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST SWAP1 POP PUSH2 0x31A0 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB SWAP1 POP DUP1 NOT DUP4 MLOAD AND DUP2 DUP6 MLOAD AND DUP2 DUP2 OR DUP7 MSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x3213 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x321E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x124A319C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x32A2 JUMPI POP PUSH2 0x32A1 DUP3 PUSH2 0x32A9 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xA8FA568200000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3374 JUMPI POP PUSH32 0x5C98042B00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x3384 JUMPI POP PUSH2 0x3383 DUP3 PUSH2 0x338B JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xBC1C58D100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x33FE JUMPI POP PUSH2 0x33FD DUP3 PUSH2 0x3405 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x3B3B57DE00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x34D0 JUMPI POP PUSH32 0xF1CB7E0600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x34E0 JUMPI POP PUSH2 0x34DF DUP3 PUSH2 0x34E7 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x2203AB5600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x355A JUMPI POP PUSH2 0x3559 DUP3 PUSH2 0x3561 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD700FF3300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x35D4 JUMPI POP PUSH2 0x35D3 DUP3 PUSH2 0x35DB JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x4FBF043300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x364E JUMPI POP PUSH2 0x364D DUP3 PUSH2 0x3655 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xE0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x3716 SWAP1 PUSH2 0x4683 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x3728 JUMPI POP PUSH2 0x3747 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x3746 SWAP2 SWAP1 PUSH2 0x374A JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x3763 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x374B JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x37B0 DUP2 PUSH2 0x377B JUMP JUMPDEST DUP2 EQ PUSH2 0x37BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x37CD DUP2 PUSH2 0x37A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37E9 JUMPI PUSH2 0x37E8 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x37F7 DUP5 DUP3 DUP6 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3815 DUP2 PUSH2 0x3800 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3830 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x380C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3849 DUP2 PUSH2 0x3836 JUMP JUMPDEST DUP2 EQ PUSH2 0x3854 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3866 DUP2 PUSH2 0x3840 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3891 JUMPI PUSH2 0x3890 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x38AE JUMPI PUSH2 0x38AD PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x38CA JUMPI PUSH2 0x38C9 PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x38EA JUMPI PUSH2 0x38E9 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x38F8 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3919 JUMPI PUSH2 0x3918 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3925 DUP7 DUP3 DUP8 ADD PUSH2 0x387B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3947 JUMPI PUSH2 0x3946 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3964 JUMPI PUSH2 0x3963 PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x3980 JUMPI PUSH2 0x397F PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x39A3 JUMPI PUSH2 0x39A2 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x39B1 DUP9 DUP3 DUP10 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39D2 JUMPI PUSH2 0x39D1 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x39DE DUP9 DUP3 DUP10 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3A01 JUMPI PUSH2 0x3A00 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3A0D DUP9 DUP3 DUP10 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3A33 JUMPI PUSH2 0x3A32 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3A41 DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3A52 DUP6 DUP3 DUP7 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A87 DUP3 PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3A97 DUP2 PUSH2 0x3A7C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3AB2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3A8E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3ACB DUP2 PUSH2 0x3AB8 JUMP JUMPDEST DUP2 EQ PUSH2 0x3AD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3AE8 DUP2 PUSH2 0x3AC2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3B05 JUMPI PUSH2 0x3B04 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3B13 DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3B24 DUP6 DUP3 DUP7 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x3B37 DUP2 PUSH2 0x3AB8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3B77 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3B5C JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3B9F DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x3BA9 DUP2 DUP6 PUSH2 0x3B48 JUMP JUMPDEST SWAP4 POP PUSH2 0x3BB9 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x3BC2 DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x3BE2 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x3B2E JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x3BF4 DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3C16 JUMPI PUSH2 0x3C15 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3C24 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x3C35 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x3C46 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3C66 JUMPI PUSH2 0x3C65 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3C74 DUP5 DUP3 DUP6 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3C88 DUP3 PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3C98 DUP2 PUSH2 0x3C7D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3CB3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3C8F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3CD0 JUMPI PUSH2 0x3CCF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3CDE DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3CEF DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3D12 JUMPI PUSH2 0x3D11 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3D20 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3D41 JUMPI PUSH2 0x3D40 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3D4D DUP7 DUP3 DUP8 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3D80 DUP3 PUSH2 0x3D59 JUMP JUMPDEST PUSH2 0x3D8A DUP2 DUP6 PUSH2 0x3D64 JUMP JUMPDEST SWAP4 POP PUSH2 0x3D9A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x3DA3 DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3DC8 DUP2 DUP5 PUSH2 0x3D75 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3DEA DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3E0C JUMPI PUSH2 0x3E0B PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3E1A DUP8 DUP3 DUP9 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x3E2B DUP8 DUP3 DUP9 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3E4C JUMPI PUSH2 0x3E4B PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3E58 DUP8 DUP3 DUP9 ADD PUSH2 0x387B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x3EA3 DUP3 PUSH2 0x3B83 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x3EC2 JUMPI PUSH2 0x3EC1 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3ED5 PUSH2 0x3767 JUMP JUMPDEST SWAP1 POP PUSH2 0x3EE1 DUP3 DUP3 PUSH2 0x3E9A JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x3F01 JUMPI PUSH2 0x3F00 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x3F0A DUP3 PUSH2 0x3B83 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F39 PUSH2 0x3F34 DUP5 PUSH2 0x3EE6 JUMP JUMPDEST PUSH2 0x3ECB JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x3F55 JUMPI PUSH2 0x3F54 PUSH2 0x3E66 JUMP JUMPDEST JUMPDEST PUSH2 0x3F60 DUP5 DUP3 DUP6 PUSH2 0x3F17 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x3F7D JUMPI PUSH2 0x3F7C PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x3F8D DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x3F26 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3FAF JUMPI PUSH2 0x3FAE PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3FBD DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x3FCE DUP7 DUP3 DUP8 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3FEF JUMPI PUSH2 0x3FEE PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3FFB DUP7 DUP3 DUP8 ADD PUSH2 0x3F68 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x400E DUP2 PUSH2 0x3A7C JUMP JUMPDEST DUP2 EQ PUSH2 0x4019 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x402B DUP2 PUSH2 0x4005 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x403A DUP2 PUSH2 0x3800 JUMP JUMPDEST DUP2 EQ PUSH2 0x4045 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4057 DUP2 PUSH2 0x4031 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4074 JUMPI PUSH2 0x4073 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4082 DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x4093 DUP6 DUP3 DUP7 ADD PUSH2 0x4048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x40B6 JUMPI PUSH2 0x40B5 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x40C4 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x40D5 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x40E6 DUP7 DUP3 DUP8 ADD PUSH2 0x4048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4107 DUP2 PUSH2 0x40F0 JUMP JUMPDEST DUP2 EQ PUSH2 0x4112 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4124 DUP2 PUSH2 0x40FE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4143 JUMPI PUSH2 0x4142 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4151 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x4162 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x4173 DUP7 DUP3 DUP8 ADD PUSH2 0x4115 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4196 JUMPI PUSH2 0x4195 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x41A4 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x41B5 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x41C6 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x41E6 JUMPI PUSH2 0x41E5 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4203 JUMPI PUSH2 0x4202 PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x421F JUMPI PUSH2 0x421E PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x423D JUMPI PUSH2 0x423C PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x425B JUMPI PUSH2 0x425A PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x4267 DUP6 DUP3 DUP7 ADD PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42BB DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x42C5 DUP2 DUP6 PUSH2 0x429F JUMP JUMPDEST SWAP4 POP PUSH2 0x42D5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x42DE DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42F5 DUP4 DUP4 PUSH2 0x42B0 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4315 DUP3 PUSH2 0x4273 JUMP JUMPDEST PUSH2 0x431F DUP2 DUP6 PUSH2 0x427E JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x4331 DUP6 PUSH2 0x428F JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x436D JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x434E DUP6 DUP3 PUSH2 0x42E9 JUMP JUMPDEST SWAP5 POP PUSH2 0x4359 DUP4 PUSH2 0x42FD JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4335 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4399 DUP2 DUP5 PUSH2 0x430A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x43AA DUP2 PUSH2 0x3836 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x43C5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x43A1 JUMP JUMPDEST PUSH2 0x43D2 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x43A1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x43F0 JUMPI PUSH2 0x43EF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x43FE DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x440F DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4436 DUP2 PUSH2 0x4419 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4451 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x442D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4470 JUMPI PUSH2 0x446F PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x447E DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x449F JUMPI PUSH2 0x449E PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x44AB DUP7 DUP3 DUP8 ADD PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x44D0 JUMPI PUSH2 0x44CF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x44DE DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x44EF DUP7 DUP3 DUP8 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x4500 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4521 JUMPI PUSH2 0x4520 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x452F DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x4540 DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4560 DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x456A DUP2 DUP6 PUSH2 0x454A JUMP JUMPDEST SWAP4 POP PUSH2 0x457A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4592 DUP3 DUP5 PUSH2 0x4555 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x45D7 DUP3 PUSH2 0x3AB8 JUMP JUMPDEST SWAP2 POP PUSH2 0x45E2 DUP4 PUSH2 0x3AB8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x45FA JUMPI PUSH2 0x45F9 PUSH2 0x459D JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4617 DUP4 DUP6 PUSH2 0x4600 JUMP JUMPDEST SWAP4 POP PUSH2 0x4624 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x463D DUP3 DUP5 DUP7 PUSH2 0x460B JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x469B JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x46AE JUMPI PUSH2 0x46AD PUSH2 0x4654 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x4716 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x46D9 JUMP JUMPDEST PUSH2 0x4720 DUP7 DUP4 PUSH2 0x46D9 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x475D PUSH2 0x4758 PUSH2 0x4753 DUP5 PUSH2 0x3AB8 JUMP JUMPDEST PUSH2 0x4738 JUMP JUMPDEST PUSH2 0x3AB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4777 DUP4 PUSH2 0x4742 JUMP JUMPDEST PUSH2 0x478B PUSH2 0x4783 DUP3 PUSH2 0x4764 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x46E6 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x47A0 PUSH2 0x4793 JUMP JUMPDEST PUSH2 0x47AB DUP2 DUP5 DUP5 PUSH2 0x476E JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x47CF JUMPI PUSH2 0x47C4 PUSH1 0x0 DUP3 PUSH2 0x4798 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x47B1 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x4814 JUMPI PUSH2 0x47E5 DUP2 PUSH2 0x46B4 JUMP JUMPDEST PUSH2 0x47EE DUP5 PUSH2 0x46C9 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x47FD JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x4811 PUSH2 0x4809 DUP6 PUSH2 0x46C9 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x47B0 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4837 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x4819 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4850 DUP4 DUP4 PUSH2 0x4826 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x486A DUP4 DUP4 PUSH2 0x4649 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4883 JUMPI PUSH2 0x4882 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x488D DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4898 DUP3 DUP3 DUP6 PUSH2 0x47D3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x48C7 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x48B5 JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x48BF DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4927 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x48D5 DUP7 PUSH2 0x46B4 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x48FD JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x48D8 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x491A JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x4916 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x493C DUP4 DUP6 PUSH2 0x3D64 JUMP JUMPDEST SWAP4 POP PUSH2 0x4949 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST PUSH2 0x4952 DUP4 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4978 DUP2 DUP7 DUP9 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x498D DUP2 DUP5 DUP7 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x49A1 DUP2 PUSH2 0x377B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x49BC PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x4998 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x4A52 JUMPI PUSH2 0x4A23 DUP2 PUSH2 0x49FC JUMP JUMPDEST PUSH2 0x4A2C DUP5 PUSH2 0x46C9 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x4A3B JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x4A4F PUSH2 0x4A47 DUP6 PUSH2 0x46C9 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x47B0 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x4A61 DUP4 DUP4 PUSH2 0x49F1 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4A7A JUMPI PUSH2 0x4A79 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x4A84 DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4A8F DUP3 DUP3 DUP6 PUSH2 0x4A11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4ABE JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4AAC JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x4AB6 DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4B1E JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x4ACC DUP7 PUSH2 0x49FC JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4AF4 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4ACF JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x4B11 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x4B0D PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B33 DUP4 DUP6 PUSH2 0x3B48 JUMP JUMPDEST SWAP4 POP PUSH2 0x4B40 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST PUSH2 0x4B49 DUP4 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B6F DUP2 DUP5 DUP7 PUSH2 0x4B27 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B83 DUP3 PUSH2 0x4419 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x4B9D JUMPI PUSH2 0x4B9C PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4BC3 DUP2 DUP5 DUP7 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4BE7 PUSH2 0x4BE2 PUSH2 0x4BDD DUP5 PUSH2 0x3A5C JUMP JUMPDEST PUSH2 0x4738 JUMP JUMPDEST PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4BF9 DUP3 PUSH2 0x4BCC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4C0B DUP3 PUSH2 0x4BEE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4C1B DUP2 PUSH2 0x4C00 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4C36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x4C12 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C45 DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4C5E JUMPI PUSH2 0x4C5D PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x4C68 DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4C73 DUP3 DUP3 DUP6 PUSH2 0x4A11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4CA6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4C94 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x4C9E DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4D06 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x4CB4 DUP7 PUSH2 0x49FC JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4CDC JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4CB7 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x4CF9 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x4CF5 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2073657474696E6720617070726F76616C20737461747573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20666F722073656C660000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D6A PUSH1 0x29 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x4D75 DUP3 PUSH2 0x4D0E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4D99 DUP2 PUSH2 0x4D5D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x53657474696E672064656C65676174652073746174757320666F722073656C66 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4DD6 PUSH1 0x20 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x4DE1 DUP3 PUSH2 0x4DA0 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4E05 DUP2 PUSH2 0x4DC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4E26 DUP2 DUP7 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x4E3B DUP2 DUP5 DUP7 PUSH2 0x4B27 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4E5A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x43A1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4E6F DUP2 PUSH2 0x4005 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E8B JUMPI PUSH2 0x4E8A PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4E99 DUP5 DUP3 DUP6 ADD PUSH2 0x4E60 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4EB7 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3B2E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4EC8 DUP3 PUSH2 0x40F0 JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP3 SUB PUSH2 0x4EDB JUMPI PUSH2 0x4EDA PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 SUB SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4EEF DUP2 PUSH2 0x40F0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4F0F DUP2 DUP6 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP PUSH2 0x4F1E PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x4EE6 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F30 DUP3 PUSH2 0x40F0 JUMP JUMPDEST SWAP2 POP PUSH2 0xFFFF DUP3 SUB PUSH2 0x4F44 JUMPI PUSH2 0x4F43 PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4F69 DUP2 DUP7 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP PUSH2 0x4F78 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x4EE6 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x4F8A DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F9F DUP3 PUSH2 0x3AB8 JUMP JUMPDEST SWAP2 POP PUSH2 0x4FAA DUP4 PUSH2 0x3AB8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x4FC2 JUMPI PUSH2 0x4FC1 PUSH2 0x459D JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1 PUSH1 0x20 SUB DUP5 CALLDATASIZE SUB SUB DUP2 SLT PUSH2 0x4FF4 JUMPI PUSH2 0x4FF3 PUSH2 0x4FC8 JUMP JUMPDEST JUMPDEST DUP1 DUP5 ADD SWAP3 POP DUP3 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x5016 JUMPI PUSH2 0x5015 PUSH2 0x4FCD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP3 POP PUSH1 0x1 DUP3 MUL CALLDATASIZE SUB DUP4 SGT ISZERO PUSH2 0x5032 JUMPI PUSH2 0x5031 PUSH2 0x4FD2 JUMP JUMPDEST JUMPDEST POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x5058 JUMPI PUSH2 0x5057 PUSH2 0x503A JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x5069 JUMPI PUSH2 0x5068 PUSH2 0x503F JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x508B DUP4 DUP4 PUSH2 0x49F1 JUMP JUMPDEST DUP3 PUSH2 0x5096 DUP2 CALLDATALOAD PUSH2 0x3836 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x50D6 JUMPI PUSH2 0x50D1 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x46D9 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x6D756C746963616C6C3A20416C6C207265636F726473206D7573742068617665 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2061206D61746368696E67206E616D6568617368000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x513A PUSH1 0x34 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x5145 DUP3 PUSH2 0x50DE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5169 DUP2 PUSH2 0x512D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x517C DUP4 DUP6 PUSH2 0x454A JUMP JUMPDEST SWAP4 POP PUSH2 0x5189 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x51A2 DUP3 DUP5 DUP7 PUSH2 0x5170 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB7 CALLDATASIZE 0xA7 PUSH25 0x3453517E20855927C0AE14ED7E53FA85E5E33B7627F2627A0B ADDRESS PUSH10 0xAA64736F6C6343000819 STOP CALLER ", + "sourceMap": "671:4115:15:-:0;;;2111:366;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2280:4;2286:10;381:34:38;449:3;:9;;;259:66;459:17;;449:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;381:106;;497:16;:22;;;520:8;497:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;371:165;332:204;;2314:4:15::1;2308:10;;;;;;;;::::0;::::1;2342:14;2328:28;;;;;;;;::::0;::::1;2389:21;2366:44;;;;;;;;::::0;::::1;2446:24;2420:50;;;;;;;;::::0;::::1;2111:366:::0;;;;671:4115;;88:117:74;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:108::-;617:7;646:24;664:5;646:24;:::i;:::-;635:35;;568:108;;;:::o;682:146::-;767:36;797:5;767:36;:::i;:::-;760:5;757:47;747:75;;818:1;815;808:12;747:75;682:146;:::o;834:167::-;903:5;934:6;928:13;919:22;;950:45;989:5;950:45;:::i;:::-;834:167;;;;:::o;1007:118::-;1066:7;1095:24;1113:5;1095:24;:::i;:::-;1084:35;;1007:118;;;:::o;1131:166::-;1226:46;1266:5;1226:46;:::i;:::-;1219:5;1216:57;1206:85;;1287:1;1284;1277:12;1206:85;1131:166;:::o;1303:187::-;1382:5;1413:6;1407:13;1398:22;;1429:55;1478:5;1429:55;:::i;:::-;1303:187;;;;:::o;1496:122::-;1569:24;1587:5;1569:24;:::i;:::-;1562:5;1559:35;1549:63;;1608:1;1605;1598:12;1549:63;1496:122;:::o;1624:143::-;1681:5;1712:6;1706:13;1697:22;;1728:33;1755:5;1728:33;:::i;:::-;1624:143;;;;:::o;1773:888::-;1904:6;1912;1920;1928;1977:3;1965:9;1956:7;1952:23;1948:33;1945:120;;;1984:79;;:::i;:::-;1945:120;2104:1;2129:76;2197:7;2188:6;2177:9;2173:22;2129:76;:::i;:::-;2119:86;;2075:140;2254:2;2280:86;2358:7;2349:6;2338:9;2334:22;2280:86;:::i;:::-;2270:96;;2225:151;2415:2;2441:64;2497:7;2488:6;2477:9;2473:22;2441:64;:::i;:::-;2431:74;;2386:129;2554:2;2580:64;2636:7;2627:6;2616:9;2612:22;2580:64;:::i;:::-;2570:74;;2525:129;1773:888;;;;;;;:::o;2667:77::-;2704:7;2733:5;2722:16;;2667:77;;;:::o;2750:118::-;2837:24;2855:5;2837:24;:::i;:::-;2832:3;2825:37;2750:118;;:::o;2874:222::-;2967:4;3005:2;2994:9;2990:18;2982:26;;3018:71;3086:1;3075:9;3071:17;3062:6;3018:71;:::i;:::-;2874:222;;;;:::o;3102:351::-;3172:6;3221:2;3209:9;3200:7;3196:23;3192:32;3189:119;;;3227:79;;:::i;:::-;3189:119;3347:1;3372:64;3428:7;3419:6;3408:9;3404:22;3372:64;:::i;:::-;3362:74;;3318:128;3102:351;;;;:::o;3459:118::-;3546:24;3564:5;3546:24;:::i;:::-;3541:3;3534:37;3459:118;;:::o;3583:222::-;3676:4;3714:2;3703:9;3699:18;3691:26;;3727:71;3795:1;3784:9;3780:17;3771:6;3727:71;:::i;:::-;3583:222;;;;:::o;3811:122::-;3884:24;3902:5;3884:24;:::i;:::-;3877:5;3874:35;3864:63;;3923:1;3920;3913:12;3864:63;3811:122;:::o;3939:143::-;3996:5;4027:6;4021:13;4012:22;;4043:33;4070:5;4043:33;:::i;:::-;3939:143;;;;:::o;4088:351::-;4158:6;4207:2;4195:9;4186:7;4182:23;4178:32;4175:119;;;4213:79;;:::i;:::-;4175:119;4333:1;4358:64;4414:7;4405:6;4394:9;4390:22;4358:64;:::i;:::-;4348:74;;4304:128;4088:351;;;;:::o;671:4115:15:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@ABI_5682": { + "entryPoint": 3654, + "id": 5682, + "parameterSlots": 2, + "returnSlots": 2 + }, + "@_multicall_5109": { + "entryPoint": 11454, + "id": 5109, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@addr_5778": { + "entryPoint": 4662, + "id": 5778, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@addr_5842": { + "entryPoint": 8926, + "id": 5842, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@addressToBytes_5902": { + "entryPoint": 11911, + "id": 5902, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@approve_5371": { + "entryPoint": 6673, + "id": 5371, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@bytesToAddress_5886": { + "entryPoint": 11419, + "id": 5886, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@clearRecords_5534": { + "entryPoint": 4452, + "id": 5534, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@contenthash_5962": { + "entryPoint": 7509, + "id": 5962, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@dnsRecord_6228": { + "entryPoint": 7035, + "id": 6228, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@done_3072": { + "entryPoint": 10021, + "id": 3072, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@equals_8041": { + "entryPoint": 12406, + "id": 8041, + "parameterSlots": 5, + "returnSlots": 1 + }, + "@equals_8127": { + "entryPoint": 10155, + "id": 8127, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@hasDNSRecords_6252": { + "entryPoint": 4715, + "id": 6252, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@interfaceImplementer_6873": { + "entryPoint": 2539, + "id": 6873, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isApprovedForAll_5333": { + "entryPoint": 8778, + "id": 5333, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isApprovedFor_5392": { + "entryPoint": 7319, + "id": 5392, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@isAuthorised_5457": { + "entryPoint": 9306, + "id": 5457, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@iterateRRs_3055": { + "entryPoint": 9979, + "id": 3055, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@keccak_7703": { + "entryPoint": 12803, + "id": 7703, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@memcpy_8294": { + "entryPoint": 12703, + "id": 8294, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@multicallWithNodeCheck_5126": { + "entryPoint": 8407, + "id": 5126, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@multicall_5145": { + "entryPoint": 7485, + "id": 5145, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@nameLength_2774": { + "entryPoint": 12133, + "id": 2774, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@name_3199": { + "entryPoint": 10043, + "id": 3199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@name_6954": { + "entryPoint": 5596, + "id": 6954, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@next_3176": { + "entryPoint": 11093, + "id": 3176, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@pubkey_7061": { + "entryPoint": 7749, + "id": 7061, + "parameterSlots": 1, + "returnSlots": 2 + }, + "@rdata_3221": { + "entryPoint": 10098, + "id": 3221, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@readUint16_8164": { + "entryPoint": 12442, + "id": 8164, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@readUint32_8184": { + "entryPoint": 12489, + "id": 8184, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@readUint8_8144": { + "entryPoint": 12660, + "id": 8144, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@recordVersions_5493": { + "entryPoint": 8368, + "id": 5493, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setABI_5615": { + "entryPoint": 5370, + "id": 5615, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setAddr_5746": { + "entryPoint": 8324, + "id": 5746, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setAddr_5821": { + "entryPoint": 6029, + "id": 5821, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setApprovalForAll_5316": { + "entryPoint": 6310, + "id": 5316, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setContenthash_5944": { + "entryPoint": 4259, + "id": 5944, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setDNSRRSet_6459": { + "entryPoint": 10194, + "id": 6459, + "parameterSlots": 8, + "returnSlots": 0 + }, + "@setDNSRecords_6202": { + "entryPoint": 1679, + "id": 6202, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setInterface_6749": { + "entryPoint": 8429, + "id": 6749, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setName_6936": { + "entryPoint": 5836, + "id": 6936, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setPubkey_7029": { + "entryPoint": 4038, + "id": 7029, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@setText_7132": { + "entryPoint": 2286, + "id": 7132, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@setZonehash_6292": { + "entryPoint": 7925, + "id": 6292, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@substring_8337": { + "entryPoint": 12257, + "id": 8337, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@supportsInterface_15123": { + "entryPoint": 13909, + "id": 15123, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5166": { + "entryPoint": 13787, + "id": 5166, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5480": { + "entryPoint": 1661, + "id": 5480, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5555": { + "entryPoint": 13665, + "id": 5555, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5703": { + "entryPoint": 13543, + "id": 5703, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5870": { + "entryPoint": 13317, + "id": 5870, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_5983": { + "entryPoint": 13195, + "id": 5983, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_6338": { + "entryPoint": 12969, + "id": 6338, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_6894": { + "entryPoint": 12847, + "id": 6894, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_6975": { + "entryPoint": 12538, + "id": 6975, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_7082": { + "entryPoint": 12011, + "id": 7082, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_7175": { + "entryPoint": 9184, + "id": 7175, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@text_7154": { + "entryPoint": 4858, + "id": 7154, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@zonehash_6310": { + "entryPoint": 5130, + "id": 6310, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 16166, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 16412, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 20064, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": { + "entryPoint": 16848, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_bool": { + "entryPoint": 16456, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32": { + "entryPoint": 14423, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 14270, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_calldata_ptr": { + "entryPoint": 14459, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 16232, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_calldata_ptr": { + "entryPoint": 14641, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_uint16": { + "entryPoint": 16661, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 15065, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 20085, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 17674, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 16477, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_bytes32t_address": { + "entryPoint": 16765, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": { + "entryPoint": 16934, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 15440, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_address": { + "entryPoint": 17369, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_addresst_bool": { + "entryPoint": 16541, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": { + "entryPoint": 17495, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes32": { + "entryPoint": 15545, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_bytes32": { + "entryPoint": 15357, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_uint16": { + "entryPoint": 16682, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes4": { + "entryPoint": 14876, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_bytes4t_address": { + "entryPoint": 17591, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes_calldata_ptr": { + "entryPoint": 14545, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptr": { + "entryPoint": 15609, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptr": { + "entryPoint": 14727, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_bytes32t_uint256": { + "entryPoint": 15086, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_uint256t_bytes_calldata_ptr": { + "entryPoint": 15858, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr": { + "entryPoint": 16278, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 14291, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 17129, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_payable_to_t_address_fromStack": { + "entryPoint": 19474, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_address_payable_to_t_address_payable_fromStack": { + "entryPoint": 15503, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 14990, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 17162, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 14348, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 17313, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes4_to_t_bytes4_fromStack": { + "entryPoint": 18840, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 19239, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 20848, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 17072, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 15252, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 17749, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 18736, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 17931, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 15733, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack": { + "entryPoint": 19805, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30_to_t_string_memory_ptr_fromStack": { + "entryPoint": 20781, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a_to_t_string_memory_ptr_fromStack": { + "entryPoint": 19913, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint16_to_t_uint16_fromStack": { + "entryPoint": 20198, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 15150, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint64_to_t_uint64_fromStack": { + "entryPoint": 17453, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 20885, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 17798, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_string_calldata_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 17968, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 15005, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_payable__to_t_address__fromStack_reversed": { + "entryPoint": 19489, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_payable__to_t_address_payable__fromStack_reversed": { + "entryPoint": 15518, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 17279, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 14363, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 20037, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed": { + "entryPoint": 17328, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed": { + "entryPoint": 18855, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 19284, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 15824, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 19980, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr_t_uint16__to_t_bytes_memory_ptr_t_uint16__fromStack_reversed": { + "entryPoint": 20213, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 20303, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 19368, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 18781, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 15790, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 19840, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 20816, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 19948, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 20130, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 15309, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed": { + "entryPoint": 17468, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "access_calldata_tail_t_bytes_calldata_ptr": { + "entryPoint": 20439, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "allocate_memory": { + "entryPoint": 16075, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 14183, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 16102, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 17039, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_calldata_ptr": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_storage": { + "entryPoint": 18940, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 18100, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 17011, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_calldata_ptr": { + "entryPoint": 18929, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 15165, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_calldata_ptr": { + "entryPoint": 17993, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 15705, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 17149, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 17022, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr": { + "entryPoint": 17055, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 15176, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 17738, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 15716, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 17920, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "calldata_array_index_range_access_t_bytes_calldata_ptr": { + "entryPoint": 20548, + "id": null, + "parameterSlots": 4, + "returnSlots": 2 + }, + "checked_add_t_uint256": { + "entryPoint": 20372, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 17868, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_bytes_storage": { + "entryPoint": 18961, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 18387, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_address": { + "entryPoint": 14972, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_address_payable": { + "entryPoint": 15485, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 14336, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 14390, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 14203, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint16": { + "entryPoint": 16624, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 14940, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 15032, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 17433, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 18352, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32": { + "entryPoint": 20607, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "convert_t_address_payable_to_t_address": { + "entryPoint": 19456, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_address": { + "entryPoint": 19438, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_uint160": { + "entryPoint": 19404, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 18242, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage": { + "entryPoint": 19031, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage": { + "entryPoint": 19516, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage": { + "entryPoint": 18528, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 16151, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 15193, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "decrement_t_uint16": { + "entryPoint": 20157, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "divide_by_32_ceil": { + "entryPoint": 18121, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 18051, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 18500, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 16026, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 18232, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "increment_t_uint16": { + "entryPoint": 20261, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "increment_t_uint64": { + "entryPoint": 19320, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 18470, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x01": { + "entryPoint": 20910, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x11": { + "entryPoint": 17821, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 18004, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 18882, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 15979, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 18276, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { + "entryPoint": 14449, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 14444, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a": { + "entryPoint": 20429, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad": { + "entryPoint": 20424, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c": { + "entryPoint": 20543, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a": { + "entryPoint": 20538, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 14454, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e": { + "entryPoint": 20434, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 15974, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 14198, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 14193, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 15235, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 18137, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 18457, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 18328, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2": { + "entryPoint": 19726, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30": { + "entryPoint": 20702, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a": { + "entryPoint": 19872, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 18150, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 18286, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 16389, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 16433, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 14400, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 14247, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint16": { + "entryPoint": 16638, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 15042, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 18323, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:50120:74", + "nodeType": "YulBlock", + "src": "0:50120:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "378:105:74", + "nodeType": "YulBlock", + "src": "378:105:74", + "statements": [ + { + "nativeSrc": "388:89:74", + "nodeType": "YulAssignment", + "src": "388:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "403:5:74", + "nodeType": "YulIdentifier", + "src": "403:5:74" + }, + { + "kind": "number", + "nativeSrc": "410:66:74", + "nodeType": "YulLiteral", + "src": "410:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "399:3:74", + "nodeType": "YulIdentifier", + "src": "399:3:74" + }, + "nativeSrc": "399:78:74", + "nodeType": "YulFunctionCall", + "src": "399:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "388:7:74", + "nodeType": "YulIdentifier", + "src": "388:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "334:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "360:5:74", + "nodeType": "YulTypedName", + "src": "360:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "370:7:74", + "nodeType": "YulTypedName", + "src": "370:7:74", + "type": "" + } + ], + "src": "334:149:74" + }, + { + "body": { + "nativeSrc": "531:78:74", + "nodeType": "YulBlock", + "src": "531:78:74", + "statements": [ + { + "body": { + "nativeSrc": "587:16:74", + "nodeType": "YulBlock", + "src": "587:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "596:1:74", + "nodeType": "YulLiteral", + "src": "596:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "599:1:74", + "nodeType": "YulLiteral", + "src": "599:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "589:6:74", + "nodeType": "YulIdentifier", + "src": "589:6:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulFunctionCall", + "src": "589:12:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulExpressionStatement", + "src": "589:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "554:5:74", + "nodeType": "YulIdentifier", + "src": "554:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "578:5:74", + "nodeType": "YulIdentifier", + "src": "578:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "561:16:74", + "nodeType": "YulIdentifier", + "src": "561:16:74" + }, + "nativeSrc": "561:23:74", + "nodeType": "YulFunctionCall", + "src": "561:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "551:2:74", + "nodeType": "YulIdentifier", + "src": "551:2:74" + }, + "nativeSrc": "551:34:74", + "nodeType": "YulFunctionCall", + "src": "551:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "544:6:74", + "nodeType": "YulIdentifier", + "src": "544:6:74" + }, + "nativeSrc": "544:42:74", + "nodeType": "YulFunctionCall", + "src": "544:42:74" + }, + "nativeSrc": "541:62:74", + "nodeType": "YulIf", + "src": "541:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "489:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "524:5:74", + "nodeType": "YulTypedName", + "src": "524:5:74", + "type": "" + } + ], + "src": "489:120:74" + }, + { + "body": { + "nativeSrc": "666:86:74", + "nodeType": "YulBlock", + "src": "666:86:74", + "statements": [ + { + "nativeSrc": "676:29:74", + "nodeType": "YulAssignment", + "src": "676:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "698:6:74", + "nodeType": "YulIdentifier", + "src": "698:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "685:12:74", + "nodeType": "YulIdentifier", + "src": "685:12:74" + }, + "nativeSrc": "685:20:74", + "nodeType": "YulFunctionCall", + "src": "685:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "676:5:74", + "nodeType": "YulIdentifier", + "src": "676:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "740:5:74", + "nodeType": "YulIdentifier", + "src": "740:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "714:25:74", + "nodeType": "YulIdentifier", + "src": "714:25:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulFunctionCall", + "src": "714:32:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulExpressionStatement", + "src": "714:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "615:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "644:6:74", + "nodeType": "YulTypedName", + "src": "644:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "652:3:74", + "nodeType": "YulTypedName", + "src": "652:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "660:5:74", + "nodeType": "YulTypedName", + "src": "660:5:74", + "type": "" + } + ], + "src": "615:137:74" + }, + { + "body": { + "nativeSrc": "823:262:74", + "nodeType": "YulBlock", + "src": "823:262:74", + "statements": [ + { + "body": { + "nativeSrc": "869:83:74", + "nodeType": "YulBlock", + "src": "869:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "871:77:74", + "nodeType": "YulIdentifier", + "src": "871:77:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulFunctionCall", + "src": "871:79:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulExpressionStatement", + "src": "871:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "844:7:74", + "nodeType": "YulIdentifier", + "src": "844:7:74" + }, + { + "name": "headStart", + "nativeSrc": "853:9:74", + "nodeType": "YulIdentifier", + "src": "853:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "840:3:74", + "nodeType": "YulIdentifier", + "src": "840:3:74" + }, + "nativeSrc": "840:23:74", + "nodeType": "YulFunctionCall", + "src": "840:23:74" + }, + { + "kind": "number", + "nativeSrc": "865:2:74", + "nodeType": "YulLiteral", + "src": "865:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "836:3:74", + "nodeType": "YulIdentifier", + "src": "836:3:74" + }, + "nativeSrc": "836:32:74", + "nodeType": "YulFunctionCall", + "src": "836:32:74" + }, + "nativeSrc": "833:119:74", + "nodeType": "YulIf", + "src": "833:119:74" + }, + { + "nativeSrc": "962:116:74", + "nodeType": "YulBlock", + "src": "962:116:74", + "statements": [ + { + "nativeSrc": "977:15:74", + "nodeType": "YulVariableDeclaration", + "src": "977:15:74", + "value": { + "kind": "number", + "nativeSrc": "991:1:74", + "nodeType": "YulLiteral", + "src": "991:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "981:6:74", + "nodeType": "YulTypedName", + "src": "981:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1006:62:74", + "nodeType": "YulAssignment", + "src": "1006:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1040:9:74", + "nodeType": "YulIdentifier", + "src": "1040:9:74" + }, + { + "name": "offset", + "nativeSrc": "1051:6:74", + "nodeType": "YulIdentifier", + "src": "1051:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1036:3:74", + "nodeType": "YulIdentifier", + "src": "1036:3:74" + }, + "nativeSrc": "1036:22:74", + "nodeType": "YulFunctionCall", + "src": "1036:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1060:7:74", + "nodeType": "YulIdentifier", + "src": "1060:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "1016:19:74", + "nodeType": "YulIdentifier", + "src": "1016:19:74" + }, + "nativeSrc": "1016:52:74", + "nodeType": "YulFunctionCall", + "src": "1016:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1006:6:74", + "nodeType": "YulIdentifier", + "src": "1006:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "758:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "793:9:74", + "nodeType": "YulTypedName", + "src": "793:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "804:7:74", + "nodeType": "YulTypedName", + "src": "804:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "816:6:74", + "nodeType": "YulTypedName", + "src": "816:6:74", + "type": "" + } + ], + "src": "758:327:74" + }, + { + "body": { + "nativeSrc": "1133:48:74", + "nodeType": "YulBlock", + "src": "1133:48:74", + "statements": [ + { + "nativeSrc": "1143:32:74", + "nodeType": "YulAssignment", + "src": "1143:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1168:5:74", + "nodeType": "YulIdentifier", + "src": "1168:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1161:6:74", + "nodeType": "YulIdentifier", + "src": "1161:6:74" + }, + "nativeSrc": "1161:13:74", + "nodeType": "YulFunctionCall", + "src": "1161:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1154:6:74", + "nodeType": "YulIdentifier", + "src": "1154:6:74" + }, + "nativeSrc": "1154:21:74", + "nodeType": "YulFunctionCall", + "src": "1154:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1143:7:74", + "nodeType": "YulIdentifier", + "src": "1143:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1091:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1115:5:74", + "nodeType": "YulTypedName", + "src": "1115:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1125:7:74", + "nodeType": "YulTypedName", + "src": "1125:7:74", + "type": "" + } + ], + "src": "1091:90:74" + }, + { + "body": { + "nativeSrc": "1246:50:74", + "nodeType": "YulBlock", + "src": "1246:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1263:3:74", + "nodeType": "YulIdentifier", + "src": "1263:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1283:5:74", + "nodeType": "YulIdentifier", + "src": "1283:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1268:14:74", + "nodeType": "YulIdentifier", + "src": "1268:14:74" + }, + "nativeSrc": "1268:21:74", + "nodeType": "YulFunctionCall", + "src": "1268:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1256:6:74", + "nodeType": "YulIdentifier", + "src": "1256:6:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulFunctionCall", + "src": "1256:34:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulExpressionStatement", + "src": "1256:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1187:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1234:5:74", + "nodeType": "YulTypedName", + "src": "1234:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1241:3:74", + "nodeType": "YulTypedName", + "src": "1241:3:74", + "type": "" + } + ], + "src": "1187:109:74" + }, + { + "body": { + "nativeSrc": "1394:118:74", + "nodeType": "YulBlock", + "src": "1394:118:74", + "statements": [ + { + "nativeSrc": "1404:26:74", + "nodeType": "YulAssignment", + "src": "1404:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1416:9:74", + "nodeType": "YulIdentifier", + "src": "1416:9:74" + }, + { + "kind": "number", + "nativeSrc": "1427:2:74", + "nodeType": "YulLiteral", + "src": "1427:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1412:3:74", + "nodeType": "YulIdentifier", + "src": "1412:3:74" + }, + "nativeSrc": "1412:18:74", + "nodeType": "YulFunctionCall", + "src": "1412:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1404:4:74", + "nodeType": "YulIdentifier", + "src": "1404:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1478:6:74", + "nodeType": "YulIdentifier", + "src": "1478:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1491:9:74", + "nodeType": "YulIdentifier", + "src": "1491:9:74" + }, + { + "kind": "number", + "nativeSrc": "1502:1:74", + "nodeType": "YulLiteral", + "src": "1502:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1487:3:74", + "nodeType": "YulIdentifier", + "src": "1487:3:74" + }, + "nativeSrc": "1487:17:74", + "nodeType": "YulFunctionCall", + "src": "1487:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1440:37:74", + "nodeType": "YulIdentifier", + "src": "1440:37:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulFunctionCall", + "src": "1440:65:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulExpressionStatement", + "src": "1440:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1302:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1366:9:74", + "nodeType": "YulTypedName", + "src": "1366:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1378:6:74", + "nodeType": "YulTypedName", + "src": "1378:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1389:4:74", + "nodeType": "YulTypedName", + "src": "1389:4:74", + "type": "" + } + ], + "src": "1302:210:74" + }, + { + "body": { + "nativeSrc": "1563:32:74", + "nodeType": "YulBlock", + "src": "1563:32:74", + "statements": [ + { + "nativeSrc": "1573:16:74", + "nodeType": "YulAssignment", + "src": "1573:16:74", + "value": { + "name": "value", + "nativeSrc": "1584:5:74", + "nodeType": "YulIdentifier", + "src": "1584:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1573:7:74", + "nodeType": "YulIdentifier", + "src": "1573:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1518:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1545:5:74", + "nodeType": "YulTypedName", + "src": "1545:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1555:7:74", + "nodeType": "YulTypedName", + "src": "1555:7:74", + "type": "" + } + ], + "src": "1518:77:74" + }, + { + "body": { + "nativeSrc": "1644:79:74", + "nodeType": "YulBlock", + "src": "1644:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1701:16:74", + "nodeType": "YulBlock", + "src": "1701:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1710:1:74", + "nodeType": "YulLiteral", + "src": "1710:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1713:1:74", + "nodeType": "YulLiteral", + "src": "1713:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1703:6:74", + "nodeType": "YulIdentifier", + "src": "1703:6:74" + }, + "nativeSrc": "1703:12:74", + "nodeType": "YulFunctionCall", + "src": "1703:12:74" + }, + "nativeSrc": "1703:12:74", + "nodeType": "YulExpressionStatement", + "src": "1703:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1667:5:74", + "nodeType": "YulIdentifier", + "src": "1667:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1692:5:74", + "nodeType": "YulIdentifier", + "src": "1692:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1674:17:74", + "nodeType": "YulIdentifier", + "src": "1674:17:74" + }, + "nativeSrc": "1674:24:74", + "nodeType": "YulFunctionCall", + "src": "1674:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1664:2:74", + "nodeType": "YulIdentifier", + "src": "1664:2:74" + }, + "nativeSrc": "1664:35:74", + "nodeType": "YulFunctionCall", + "src": "1664:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1657:6:74", + "nodeType": "YulIdentifier", + "src": "1657:6:74" + }, + "nativeSrc": "1657:43:74", + "nodeType": "YulFunctionCall", + "src": "1657:43:74" + }, + "nativeSrc": "1654:63:74", + "nodeType": "YulIf", + "src": "1654:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "1601:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1637:5:74", + "nodeType": "YulTypedName", + "src": "1637:5:74", + "type": "" + } + ], + "src": "1601:122:74" + }, + { + "body": { + "nativeSrc": "1781:87:74", + "nodeType": "YulBlock", + "src": "1781:87:74", + "statements": [ + { + "nativeSrc": "1791:29:74", + "nodeType": "YulAssignment", + "src": "1791:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1813:6:74", + "nodeType": "YulIdentifier", + "src": "1813:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1800:12:74", + "nodeType": "YulIdentifier", + "src": "1800:12:74" + }, + "nativeSrc": "1800:20:74", + "nodeType": "YulFunctionCall", + "src": "1800:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1791:5:74", + "nodeType": "YulIdentifier", + "src": "1791:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1856:5:74", + "nodeType": "YulIdentifier", + "src": "1856:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "1829:26:74", + "nodeType": "YulIdentifier", + "src": "1829:26:74" + }, + "nativeSrc": "1829:33:74", + "nodeType": "YulFunctionCall", + "src": "1829:33:74" + }, + "nativeSrc": "1829:33:74", + "nodeType": "YulExpressionStatement", + "src": "1829:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "1729:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1759:6:74", + "nodeType": "YulTypedName", + "src": "1759:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1767:3:74", + "nodeType": "YulTypedName", + "src": "1767:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1775:5:74", + "nodeType": "YulTypedName", + "src": "1775:5:74", + "type": "" + } + ], + "src": "1729:139:74" + }, + { + "body": { + "nativeSrc": "1963:28:74", + "nodeType": "YulBlock", + "src": "1963:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1980:1:74", + "nodeType": "YulLiteral", + "src": "1980:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1983:1:74", + "nodeType": "YulLiteral", + "src": "1983:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1973:6:74", + "nodeType": "YulIdentifier", + "src": "1973:6:74" + }, + "nativeSrc": "1973:12:74", + "nodeType": "YulFunctionCall", + "src": "1973:12:74" + }, + "nativeSrc": "1973:12:74", + "nodeType": "YulExpressionStatement", + "src": "1973:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "1874:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1874:117:74" + }, + { + "body": { + "nativeSrc": "2086:28:74", + "nodeType": "YulBlock", + "src": "2086:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2103:1:74", + "nodeType": "YulLiteral", + "src": "2103:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2106:1:74", + "nodeType": "YulLiteral", + "src": "2106:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2096:6:74", + "nodeType": "YulIdentifier", + "src": "2096:6:74" + }, + "nativeSrc": "2096:12:74", + "nodeType": "YulFunctionCall", + "src": "2096:12:74" + }, + "nativeSrc": "2096:12:74", + "nodeType": "YulExpressionStatement", + "src": "2096:12:74" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "1997:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1997:117:74" + }, + { + "body": { + "nativeSrc": "2209:28:74", + "nodeType": "YulBlock", + "src": "2209:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2226:1:74", + "nodeType": "YulLiteral", + "src": "2226:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2229:1:74", + "nodeType": "YulLiteral", + "src": "2229:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2219:6:74", + "nodeType": "YulIdentifier", + "src": "2219:6:74" + }, + "nativeSrc": "2219:12:74", + "nodeType": "YulFunctionCall", + "src": "2219:12:74" + }, + "nativeSrc": "2219:12:74", + "nodeType": "YulExpressionStatement", + "src": "2219:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "2120:117:74", + "nodeType": "YulFunctionDefinition", + "src": "2120:117:74" + }, + { + "body": { + "nativeSrc": "2330:478:74", + "nodeType": "YulBlock", + "src": "2330:478:74", + "statements": [ + { + "body": { + "nativeSrc": "2379:83:74", + "nodeType": "YulBlock", + "src": "2379:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2381:77:74", + "nodeType": "YulIdentifier", + "src": "2381:77:74" + }, + "nativeSrc": "2381:79:74", + "nodeType": "YulFunctionCall", + "src": "2381:79:74" + }, + "nativeSrc": "2381:79:74", + "nodeType": "YulExpressionStatement", + "src": "2381:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2358:6:74", + "nodeType": "YulIdentifier", + "src": "2358:6:74" + }, + { + "kind": "number", + "nativeSrc": "2366:4:74", + "nodeType": "YulLiteral", + "src": "2366:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2354:3:74", + "nodeType": "YulIdentifier", + "src": "2354:3:74" + }, + "nativeSrc": "2354:17:74", + "nodeType": "YulFunctionCall", + "src": "2354:17:74" + }, + { + "name": "end", + "nativeSrc": "2373:3:74", + "nodeType": "YulIdentifier", + "src": "2373:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2350:3:74", + "nodeType": "YulIdentifier", + "src": "2350:3:74" + }, + "nativeSrc": "2350:27:74", + "nodeType": "YulFunctionCall", + "src": "2350:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2343:6:74", + "nodeType": "YulIdentifier", + "src": "2343:6:74" + }, + "nativeSrc": "2343:35:74", + "nodeType": "YulFunctionCall", + "src": "2343:35:74" + }, + "nativeSrc": "2340:122:74", + "nodeType": "YulIf", + "src": "2340:122:74" + }, + { + "nativeSrc": "2471:30:74", + "nodeType": "YulAssignment", + "src": "2471:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2494:6:74", + "nodeType": "YulIdentifier", + "src": "2494:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2481:12:74", + "nodeType": "YulIdentifier", + "src": "2481:12:74" + }, + "nativeSrc": "2481:20:74", + "nodeType": "YulFunctionCall", + "src": "2481:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2471:6:74", + "nodeType": "YulIdentifier", + "src": "2471:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "2544:83:74", + "nodeType": "YulBlock", + "src": "2544:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "2546:77:74", + "nodeType": "YulIdentifier", + "src": "2546:77:74" + }, + "nativeSrc": "2546:79:74", + "nodeType": "YulFunctionCall", + "src": "2546:79:74" + }, + "nativeSrc": "2546:79:74", + "nodeType": "YulExpressionStatement", + "src": "2546:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "2516:6:74", + "nodeType": "YulIdentifier", + "src": "2516:6:74" + }, + { + "kind": "number", + "nativeSrc": "2524:18:74", + "nodeType": "YulLiteral", + "src": "2524:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2513:2:74", + "nodeType": "YulIdentifier", + "src": "2513:2:74" + }, + "nativeSrc": "2513:30:74", + "nodeType": "YulFunctionCall", + "src": "2513:30:74" + }, + "nativeSrc": "2510:117:74", + "nodeType": "YulIf", + "src": "2510:117:74" + }, + { + "nativeSrc": "2636:29:74", + "nodeType": "YulAssignment", + "src": "2636:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2652:6:74", + "nodeType": "YulIdentifier", + "src": "2652:6:74" + }, + { + "kind": "number", + "nativeSrc": "2660:4:74", + "nodeType": "YulLiteral", + "src": "2660:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2648:3:74", + "nodeType": "YulIdentifier", + "src": "2648:3:74" + }, + "nativeSrc": "2648:17:74", + "nodeType": "YulFunctionCall", + "src": "2648:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "2636:8:74", + "nodeType": "YulIdentifier", + "src": "2636:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "2719:83:74", + "nodeType": "YulBlock", + "src": "2719:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "2721:77:74", + "nodeType": "YulIdentifier", + "src": "2721:77:74" + }, + "nativeSrc": "2721:79:74", + "nodeType": "YulFunctionCall", + "src": "2721:79:74" + }, + "nativeSrc": "2721:79:74", + "nodeType": "YulExpressionStatement", + "src": "2721:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "2684:8:74", + "nodeType": "YulIdentifier", + "src": "2684:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2698:6:74", + "nodeType": "YulIdentifier", + "src": "2698:6:74" + }, + { + "kind": "number", + "nativeSrc": "2706:4:74", + "nodeType": "YulLiteral", + "src": "2706:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "2694:3:74", + "nodeType": "YulIdentifier", + "src": "2694:3:74" + }, + "nativeSrc": "2694:17:74", + "nodeType": "YulFunctionCall", + "src": "2694:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2680:3:74", + "nodeType": "YulIdentifier", + "src": "2680:3:74" + }, + "nativeSrc": "2680:32:74", + "nodeType": "YulFunctionCall", + "src": "2680:32:74" + }, + { + "name": "end", + "nativeSrc": "2714:3:74", + "nodeType": "YulIdentifier", + "src": "2714:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2677:2:74", + "nodeType": "YulIdentifier", + "src": "2677:2:74" + }, + "nativeSrc": "2677:41:74", + "nodeType": "YulFunctionCall", + "src": "2677:41:74" + }, + "nativeSrc": "2674:128:74", + "nodeType": "YulIf", + "src": "2674:128:74" + } + ] + }, + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "2256:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2297:6:74", + "nodeType": "YulTypedName", + "src": "2297:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2305:3:74", + "nodeType": "YulTypedName", + "src": "2305:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "2313:8:74", + "nodeType": "YulTypedName", + "src": "2313:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2323:6:74", + "nodeType": "YulTypedName", + "src": "2323:6:74", + "type": "" + } + ], + "src": "2256:552:74" + }, + { + "body": { + "nativeSrc": "2916:570:74", + "nodeType": "YulBlock", + "src": "2916:570:74", + "statements": [ + { + "body": { + "nativeSrc": "2962:83:74", + "nodeType": "YulBlock", + "src": "2962:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2964:77:74", + "nodeType": "YulIdentifier", + "src": "2964:77:74" + }, + "nativeSrc": "2964:79:74", + "nodeType": "YulFunctionCall", + "src": "2964:79:74" + }, + "nativeSrc": "2964:79:74", + "nodeType": "YulExpressionStatement", + "src": "2964:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2937:7:74", + "nodeType": "YulIdentifier", + "src": "2937:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2946:9:74", + "nodeType": "YulIdentifier", + "src": "2946:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2933:3:74", + "nodeType": "YulIdentifier", + "src": "2933:3:74" + }, + "nativeSrc": "2933:23:74", + "nodeType": "YulFunctionCall", + "src": "2933:23:74" + }, + { + "kind": "number", + "nativeSrc": "2958:2:74", + "nodeType": "YulLiteral", + "src": "2958:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2929:3:74", + "nodeType": "YulIdentifier", + "src": "2929:3:74" + }, + "nativeSrc": "2929:32:74", + "nodeType": "YulFunctionCall", + "src": "2929:32:74" + }, + "nativeSrc": "2926:119:74", + "nodeType": "YulIf", + "src": "2926:119:74" + }, + { + "nativeSrc": "3055:117:74", + "nodeType": "YulBlock", + "src": "3055:117:74", + "statements": [ + { + "nativeSrc": "3070:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3070:15:74", + "value": { + "kind": "number", + "nativeSrc": "3084:1:74", + "nodeType": "YulLiteral", + "src": "3084:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3074:6:74", + "nodeType": "YulTypedName", + "src": "3074:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3099:63:74", + "nodeType": "YulAssignment", + "src": "3099:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3134:9:74", + "nodeType": "YulIdentifier", + "src": "3134:9:74" + }, + { + "name": "offset", + "nativeSrc": "3145:6:74", + "nodeType": "YulIdentifier", + "src": "3145:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3130:3:74", + "nodeType": "YulIdentifier", + "src": "3130:3:74" + }, + "nativeSrc": "3130:22:74", + "nodeType": "YulFunctionCall", + "src": "3130:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3154:7:74", + "nodeType": "YulIdentifier", + "src": "3154:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "3109:20:74", + "nodeType": "YulIdentifier", + "src": "3109:20:74" + }, + "nativeSrc": "3109:53:74", + "nodeType": "YulFunctionCall", + "src": "3109:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3099:6:74", + "nodeType": "YulIdentifier", + "src": "3099:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3182:297:74", + "nodeType": "YulBlock", + "src": "3182:297:74", + "statements": [ + { + "nativeSrc": "3197:46:74", + "nodeType": "YulVariableDeclaration", + "src": "3197:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3228:9:74", + "nodeType": "YulIdentifier", + "src": "3228:9:74" + }, + { + "kind": "number", + "nativeSrc": "3239:2:74", + "nodeType": "YulLiteral", + "src": "3239:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3224:3:74", + "nodeType": "YulIdentifier", + "src": "3224:3:74" + }, + "nativeSrc": "3224:18:74", + "nodeType": "YulFunctionCall", + "src": "3224:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3211:12:74", + "nodeType": "YulIdentifier", + "src": "3211:12:74" + }, + "nativeSrc": "3211:32:74", + "nodeType": "YulFunctionCall", + "src": "3211:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3201:6:74", + "nodeType": "YulTypedName", + "src": "3201:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3290:83:74", + "nodeType": "YulBlock", + "src": "3290:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "3292:77:74", + "nodeType": "YulIdentifier", + "src": "3292:77:74" + }, + "nativeSrc": "3292:79:74", + "nodeType": "YulFunctionCall", + "src": "3292:79:74" + }, + "nativeSrc": "3292:79:74", + "nodeType": "YulExpressionStatement", + "src": "3292:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3262:6:74", + "nodeType": "YulIdentifier", + "src": "3262:6:74" + }, + { + "kind": "number", + "nativeSrc": "3270:18:74", + "nodeType": "YulLiteral", + "src": "3270:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3259:2:74", + "nodeType": "YulIdentifier", + "src": "3259:2:74" + }, + "nativeSrc": "3259:30:74", + "nodeType": "YulFunctionCall", + "src": "3259:30:74" + }, + "nativeSrc": "3256:117:74", + "nodeType": "YulIf", + "src": "3256:117:74" + }, + { + "nativeSrc": "3387:82:74", + "nodeType": "YulAssignment", + "src": "3387:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3441:9:74", + "nodeType": "YulIdentifier", + "src": "3441:9:74" + }, + { + "name": "offset", + "nativeSrc": "3452:6:74", + "nodeType": "YulIdentifier", + "src": "3452:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3437:3:74", + "nodeType": "YulIdentifier", + "src": "3437:3:74" + }, + "nativeSrc": "3437:22:74", + "nodeType": "YulFunctionCall", + "src": "3437:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3461:7:74", + "nodeType": "YulIdentifier", + "src": "3461:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "3405:31:74", + "nodeType": "YulIdentifier", + "src": "3405:31:74" + }, + "nativeSrc": "3405:64:74", + "nodeType": "YulFunctionCall", + "src": "3405:64:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3387:6:74", + "nodeType": "YulIdentifier", + "src": "3387:6:74" + }, + { + "name": "value2", + "nativeSrc": "3395:6:74", + "nodeType": "YulIdentifier", + "src": "3395:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes_calldata_ptr", + "nativeSrc": "2814:672:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2870:9:74", + "nodeType": "YulTypedName", + "src": "2870:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2881:7:74", + "nodeType": "YulTypedName", + "src": "2881:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2893:6:74", + "nodeType": "YulTypedName", + "src": "2893:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2901:6:74", + "nodeType": "YulTypedName", + "src": "2901:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "2909:6:74", + "nodeType": "YulTypedName", + "src": "2909:6:74", + "type": "" + } + ], + "src": "2814:672:74" + }, + { + "body": { + "nativeSrc": "3581:478:74", + "nodeType": "YulBlock", + "src": "3581:478:74", + "statements": [ + { + "body": { + "nativeSrc": "3630:83:74", + "nodeType": "YulBlock", + "src": "3630:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "3632:77:74", + "nodeType": "YulIdentifier", + "src": "3632:77:74" + }, + "nativeSrc": "3632:79:74", + "nodeType": "YulFunctionCall", + "src": "3632:79:74" + }, + "nativeSrc": "3632:79:74", + "nodeType": "YulExpressionStatement", + "src": "3632:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3609:6:74", + "nodeType": "YulIdentifier", + "src": "3609:6:74" + }, + { + "kind": "number", + "nativeSrc": "3617:4:74", + "nodeType": "YulLiteral", + "src": "3617:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3605:3:74", + "nodeType": "YulIdentifier", + "src": "3605:3:74" + }, + "nativeSrc": "3605:17:74", + "nodeType": "YulFunctionCall", + "src": "3605:17:74" + }, + { + "name": "end", + "nativeSrc": "3624:3:74", + "nodeType": "YulIdentifier", + "src": "3624:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3601:3:74", + "nodeType": "YulIdentifier", + "src": "3601:3:74" + }, + "nativeSrc": "3601:27:74", + "nodeType": "YulFunctionCall", + "src": "3601:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3594:6:74", + "nodeType": "YulIdentifier", + "src": "3594:6:74" + }, + "nativeSrc": "3594:35:74", + "nodeType": "YulFunctionCall", + "src": "3594:35:74" + }, + "nativeSrc": "3591:122:74", + "nodeType": "YulIf", + "src": "3591:122:74" + }, + { + "nativeSrc": "3722:30:74", + "nodeType": "YulAssignment", + "src": "3722:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3745:6:74", + "nodeType": "YulIdentifier", + "src": "3745:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3732:12:74", + "nodeType": "YulIdentifier", + "src": "3732:12:74" + }, + "nativeSrc": "3732:20:74", + "nodeType": "YulFunctionCall", + "src": "3732:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3722:6:74", + "nodeType": "YulIdentifier", + "src": "3722:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "3795:83:74", + "nodeType": "YulBlock", + "src": "3795:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "3797:77:74", + "nodeType": "YulIdentifier", + "src": "3797:77:74" + }, + "nativeSrc": "3797:79:74", + "nodeType": "YulFunctionCall", + "src": "3797:79:74" + }, + "nativeSrc": "3797:79:74", + "nodeType": "YulExpressionStatement", + "src": "3797:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "3767:6:74", + "nodeType": "YulIdentifier", + "src": "3767:6:74" + }, + { + "kind": "number", + "nativeSrc": "3775:18:74", + "nodeType": "YulLiteral", + "src": "3775:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3764:2:74", + "nodeType": "YulIdentifier", + "src": "3764:2:74" + }, + "nativeSrc": "3764:30:74", + "nodeType": "YulFunctionCall", + "src": "3764:30:74" + }, + "nativeSrc": "3761:117:74", + "nodeType": "YulIf", + "src": "3761:117:74" + }, + { + "nativeSrc": "3887:29:74", + "nodeType": "YulAssignment", + "src": "3887:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3903:6:74", + "nodeType": "YulIdentifier", + "src": "3903:6:74" + }, + { + "kind": "number", + "nativeSrc": "3911:4:74", + "nodeType": "YulLiteral", + "src": "3911:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3899:3:74", + "nodeType": "YulIdentifier", + "src": "3899:3:74" + }, + "nativeSrc": "3899:17:74", + "nodeType": "YulFunctionCall", + "src": "3899:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "3887:8:74", + "nodeType": "YulIdentifier", + "src": "3887:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "3970:83:74", + "nodeType": "YulBlock", + "src": "3970:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "3972:77:74", + "nodeType": "YulIdentifier", + "src": "3972:77:74" + }, + "nativeSrc": "3972:79:74", + "nodeType": "YulFunctionCall", + "src": "3972:79:74" + }, + "nativeSrc": "3972:79:74", + "nodeType": "YulExpressionStatement", + "src": "3972:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "3935:8:74", + "nodeType": "YulIdentifier", + "src": "3935:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "3949:6:74", + "nodeType": "YulIdentifier", + "src": "3949:6:74" + }, + { + "kind": "number", + "nativeSrc": "3957:4:74", + "nodeType": "YulLiteral", + "src": "3957:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "3945:3:74", + "nodeType": "YulIdentifier", + "src": "3945:3:74" + }, + "nativeSrc": "3945:17:74", + "nodeType": "YulFunctionCall", + "src": "3945:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3931:3:74", + "nodeType": "YulIdentifier", + "src": "3931:3:74" + }, + "nativeSrc": "3931:32:74", + "nodeType": "YulFunctionCall", + "src": "3931:32:74" + }, + { + "name": "end", + "nativeSrc": "3965:3:74", + "nodeType": "YulIdentifier", + "src": "3965:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3928:2:74", + "nodeType": "YulIdentifier", + "src": "3928:2:74" + }, + "nativeSrc": "3928:41:74", + "nodeType": "YulFunctionCall", + "src": "3928:41:74" + }, + "nativeSrc": "3925:128:74", + "nodeType": "YulIf", + "src": "3925:128:74" + } + ] + }, + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "3506:553:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3548:6:74", + "nodeType": "YulTypedName", + "src": "3548:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3556:3:74", + "nodeType": "YulTypedName", + "src": "3556:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "3564:8:74", + "nodeType": "YulTypedName", + "src": "3564:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3574:6:74", + "nodeType": "YulTypedName", + "src": "3574:6:74", + "type": "" + } + ], + "src": "3506:553:74" + }, + { + "body": { + "nativeSrc": "4205:879:74", + "nodeType": "YulBlock", + "src": "4205:879:74", + "statements": [ + { + "body": { + "nativeSrc": "4251:83:74", + "nodeType": "YulBlock", + "src": "4251:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4253:77:74", + "nodeType": "YulIdentifier", + "src": "4253:77:74" + }, + "nativeSrc": "4253:79:74", + "nodeType": "YulFunctionCall", + "src": "4253:79:74" + }, + "nativeSrc": "4253:79:74", + "nodeType": "YulExpressionStatement", + "src": "4253:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4226:7:74", + "nodeType": "YulIdentifier", + "src": "4226:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4235:9:74", + "nodeType": "YulIdentifier", + "src": "4235:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4222:3:74", + "nodeType": "YulIdentifier", + "src": "4222:3:74" + }, + "nativeSrc": "4222:23:74", + "nodeType": "YulFunctionCall", + "src": "4222:23:74" + }, + { + "kind": "number", + "nativeSrc": "4247:2:74", + "nodeType": "YulLiteral", + "src": "4247:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4218:3:74", + "nodeType": "YulIdentifier", + "src": "4218:3:74" + }, + "nativeSrc": "4218:32:74", + "nodeType": "YulFunctionCall", + "src": "4218:32:74" + }, + "nativeSrc": "4215:119:74", + "nodeType": "YulIf", + "src": "4215:119:74" + }, + { + "nativeSrc": "4344:117:74", + "nodeType": "YulBlock", + "src": "4344:117:74", + "statements": [ + { + "nativeSrc": "4359:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4359:15:74", + "value": { + "kind": "number", + "nativeSrc": "4373:1:74", + "nodeType": "YulLiteral", + "src": "4373:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4363:6:74", + "nodeType": "YulTypedName", + "src": "4363:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4388:63:74", + "nodeType": "YulAssignment", + "src": "4388:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4423:9:74", + "nodeType": "YulIdentifier", + "src": "4423:9:74" + }, + { + "name": "offset", + "nativeSrc": "4434:6:74", + "nodeType": "YulIdentifier", + "src": "4434:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4419:3:74", + "nodeType": "YulIdentifier", + "src": "4419:3:74" + }, + "nativeSrc": "4419:22:74", + "nodeType": "YulFunctionCall", + "src": "4419:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4443:7:74", + "nodeType": "YulIdentifier", + "src": "4443:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "4398:20:74", + "nodeType": "YulIdentifier", + "src": "4398:20:74" + }, + "nativeSrc": "4398:53:74", + "nodeType": "YulFunctionCall", + "src": "4398:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4388:6:74", + "nodeType": "YulIdentifier", + "src": "4388:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4471:298:74", + "nodeType": "YulBlock", + "src": "4471:298:74", + "statements": [ + { + "nativeSrc": "4486:46:74", + "nodeType": "YulVariableDeclaration", + "src": "4486:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4517:9:74", + "nodeType": "YulIdentifier", + "src": "4517:9:74" + }, + { + "kind": "number", + "nativeSrc": "4528:2:74", + "nodeType": "YulLiteral", + "src": "4528:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4513:3:74", + "nodeType": "YulIdentifier", + "src": "4513:3:74" + }, + "nativeSrc": "4513:18:74", + "nodeType": "YulFunctionCall", + "src": "4513:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4500:12:74", + "nodeType": "YulIdentifier", + "src": "4500:12:74" + }, + "nativeSrc": "4500:32:74", + "nodeType": "YulFunctionCall", + "src": "4500:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4490:6:74", + "nodeType": "YulTypedName", + "src": "4490:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4579:83:74", + "nodeType": "YulBlock", + "src": "4579:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "4581:77:74", + "nodeType": "YulIdentifier", + "src": "4581:77:74" + }, + "nativeSrc": "4581:79:74", + "nodeType": "YulFunctionCall", + "src": "4581:79:74" + }, + "nativeSrc": "4581:79:74", + "nodeType": "YulExpressionStatement", + "src": "4581:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4551:6:74", + "nodeType": "YulIdentifier", + "src": "4551:6:74" + }, + { + "kind": "number", + "nativeSrc": "4559:18:74", + "nodeType": "YulLiteral", + "src": "4559:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4548:2:74", + "nodeType": "YulIdentifier", + "src": "4548:2:74" + }, + "nativeSrc": "4548:30:74", + "nodeType": "YulFunctionCall", + "src": "4548:30:74" + }, + "nativeSrc": "4545:117:74", + "nodeType": "YulIf", + "src": "4545:117:74" + }, + { + "nativeSrc": "4676:83:74", + "nodeType": "YulAssignment", + "src": "4676:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4731:9:74", + "nodeType": "YulIdentifier", + "src": "4731:9:74" + }, + { + "name": "offset", + "nativeSrc": "4742:6:74", + "nodeType": "YulIdentifier", + "src": "4742:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4727:3:74", + "nodeType": "YulIdentifier", + "src": "4727:3:74" + }, + "nativeSrc": "4727:22:74", + "nodeType": "YulFunctionCall", + "src": "4727:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4751:7:74", + "nodeType": "YulIdentifier", + "src": "4751:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "4694:32:74", + "nodeType": "YulIdentifier", + "src": "4694:32:74" + }, + "nativeSrc": "4694:65:74", + "nodeType": "YulFunctionCall", + "src": "4694:65:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "4676:6:74", + "nodeType": "YulIdentifier", + "src": "4676:6:74" + }, + { + "name": "value2", + "nativeSrc": "4684:6:74", + "nodeType": "YulIdentifier", + "src": "4684:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4779:298:74", + "nodeType": "YulBlock", + "src": "4779:298:74", + "statements": [ + { + "nativeSrc": "4794:46:74", + "nodeType": "YulVariableDeclaration", + "src": "4794:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4825:9:74", + "nodeType": "YulIdentifier", + "src": "4825:9:74" + }, + { + "kind": "number", + "nativeSrc": "4836:2:74", + "nodeType": "YulLiteral", + "src": "4836:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4821:3:74", + "nodeType": "YulIdentifier", + "src": "4821:3:74" + }, + "nativeSrc": "4821:18:74", + "nodeType": "YulFunctionCall", + "src": "4821:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4808:12:74", + "nodeType": "YulIdentifier", + "src": "4808:12:74" + }, + "nativeSrc": "4808:32:74", + "nodeType": "YulFunctionCall", + "src": "4808:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4798:6:74", + "nodeType": "YulTypedName", + "src": "4798:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4887:83:74", + "nodeType": "YulBlock", + "src": "4887:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "4889:77:74", + "nodeType": "YulIdentifier", + "src": "4889:77:74" + }, + "nativeSrc": "4889:79:74", + "nodeType": "YulFunctionCall", + "src": "4889:79:74" + }, + "nativeSrc": "4889:79:74", + "nodeType": "YulExpressionStatement", + "src": "4889:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4859:6:74", + "nodeType": "YulIdentifier", + "src": "4859:6:74" + }, + { + "kind": "number", + "nativeSrc": "4867:18:74", + "nodeType": "YulLiteral", + "src": "4867:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4856:2:74", + "nodeType": "YulIdentifier", + "src": "4856:2:74" + }, + "nativeSrc": "4856:30:74", + "nodeType": "YulFunctionCall", + "src": "4856:30:74" + }, + "nativeSrc": "4853:117:74", + "nodeType": "YulIf", + "src": "4853:117:74" + }, + { + "nativeSrc": "4984:83:74", + "nodeType": "YulAssignment", + "src": "4984:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5039:9:74", + "nodeType": "YulIdentifier", + "src": "5039:9:74" + }, + { + "name": "offset", + "nativeSrc": "5050:6:74", + "nodeType": "YulIdentifier", + "src": "5050:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5035:3:74", + "nodeType": "YulIdentifier", + "src": "5035:3:74" + }, + "nativeSrc": "5035:22:74", + "nodeType": "YulFunctionCall", + "src": "5035:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5059:7:74", + "nodeType": "YulIdentifier", + "src": "5059:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "5002:32:74", + "nodeType": "YulIdentifier", + "src": "5002:32:74" + }, + "nativeSrc": "5002:65:74", + "nodeType": "YulFunctionCall", + "src": "5002:65:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "4984:6:74", + "nodeType": "YulIdentifier", + "src": "4984:6:74" + }, + { + "name": "value4", + "nativeSrc": "4992:6:74", + "nodeType": "YulIdentifier", + "src": "4992:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptr", + "nativeSrc": "4065:1019:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4143:9:74", + "nodeType": "YulTypedName", + "src": "4143:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4154:7:74", + "nodeType": "YulTypedName", + "src": "4154:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4166:6:74", + "nodeType": "YulTypedName", + "src": "4166:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4174:6:74", + "nodeType": "YulTypedName", + "src": "4174:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "4182:6:74", + "nodeType": "YulTypedName", + "src": "4182:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "4190:6:74", + "nodeType": "YulTypedName", + "src": "4190:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "4198:6:74", + "nodeType": "YulTypedName", + "src": "4198:6:74", + "type": "" + } + ], + "src": "4065:1019:74" + }, + { + "body": { + "nativeSrc": "5172:390:74", + "nodeType": "YulBlock", + "src": "5172:390:74", + "statements": [ + { + "body": { + "nativeSrc": "5218:83:74", + "nodeType": "YulBlock", + "src": "5218:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5220:77:74", + "nodeType": "YulIdentifier", + "src": "5220:77:74" + }, + "nativeSrc": "5220:79:74", + "nodeType": "YulFunctionCall", + "src": "5220:79:74" + }, + "nativeSrc": "5220:79:74", + "nodeType": "YulExpressionStatement", + "src": "5220:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5193:7:74", + "nodeType": "YulIdentifier", + "src": "5193:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5202:9:74", + "nodeType": "YulIdentifier", + "src": "5202:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5189:3:74", + "nodeType": "YulIdentifier", + "src": "5189:3:74" + }, + "nativeSrc": "5189:23:74", + "nodeType": "YulFunctionCall", + "src": "5189:23:74" + }, + { + "kind": "number", + "nativeSrc": "5214:2:74", + "nodeType": "YulLiteral", + "src": "5214:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5185:3:74", + "nodeType": "YulIdentifier", + "src": "5185:3:74" + }, + "nativeSrc": "5185:32:74", + "nodeType": "YulFunctionCall", + "src": "5185:32:74" + }, + "nativeSrc": "5182:119:74", + "nodeType": "YulIf", + "src": "5182:119:74" + }, + { + "nativeSrc": "5311:117:74", + "nodeType": "YulBlock", + "src": "5311:117:74", + "statements": [ + { + "nativeSrc": "5326:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5326:15:74", + "value": { + "kind": "number", + "nativeSrc": "5340:1:74", + "nodeType": "YulLiteral", + "src": "5340:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5330:6:74", + "nodeType": "YulTypedName", + "src": "5330:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5355:63:74", + "nodeType": "YulAssignment", + "src": "5355:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5390:9:74", + "nodeType": "YulIdentifier", + "src": "5390:9:74" + }, + { + "name": "offset", + "nativeSrc": "5401:6:74", + "nodeType": "YulIdentifier", + "src": "5401:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5386:3:74", + "nodeType": "YulIdentifier", + "src": "5386:3:74" + }, + "nativeSrc": "5386:22:74", + "nodeType": "YulFunctionCall", + "src": "5386:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5410:7:74", + "nodeType": "YulIdentifier", + "src": "5410:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "5365:20:74", + "nodeType": "YulIdentifier", + "src": "5365:20:74" + }, + "nativeSrc": "5365:53:74", + "nodeType": "YulFunctionCall", + "src": "5365:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5355:6:74", + "nodeType": "YulIdentifier", + "src": "5355:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5438:117:74", + "nodeType": "YulBlock", + "src": "5438:117:74", + "statements": [ + { + "nativeSrc": "5453:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5453:16:74", + "value": { + "kind": "number", + "nativeSrc": "5467:2:74", + "nodeType": "YulLiteral", + "src": "5467:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5457:6:74", + "nodeType": "YulTypedName", + "src": "5457:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5483:62:74", + "nodeType": "YulAssignment", + "src": "5483:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5517:9:74", + "nodeType": "YulIdentifier", + "src": "5517:9:74" + }, + { + "name": "offset", + "nativeSrc": "5528:6:74", + "nodeType": "YulIdentifier", + "src": "5528:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5513:3:74", + "nodeType": "YulIdentifier", + "src": "5513:3:74" + }, + "nativeSrc": "5513:22:74", + "nodeType": "YulFunctionCall", + "src": "5513:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5537:7:74", + "nodeType": "YulIdentifier", + "src": "5537:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "5493:19:74", + "nodeType": "YulIdentifier", + "src": "5493:19:74" + }, + "nativeSrc": "5493:52:74", + "nodeType": "YulFunctionCall", + "src": "5493:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5483:6:74", + "nodeType": "YulIdentifier", + "src": "5483:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes4", + "nativeSrc": "5090:472:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5134:9:74", + "nodeType": "YulTypedName", + "src": "5134:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5145:7:74", + "nodeType": "YulTypedName", + "src": "5145:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5157:6:74", + "nodeType": "YulTypedName", + "src": "5157:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5165:6:74", + "nodeType": "YulTypedName", + "src": "5165:6:74", + "type": "" + } + ], + "src": "5090:472:74" + }, + { + "body": { + "nativeSrc": "5613:81:74", + "nodeType": "YulBlock", + "src": "5613:81:74", + "statements": [ + { + "nativeSrc": "5623:65:74", + "nodeType": "YulAssignment", + "src": "5623:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5638:5:74", + "nodeType": "YulIdentifier", + "src": "5638:5:74" + }, + { + "kind": "number", + "nativeSrc": "5645:42:74", + "nodeType": "YulLiteral", + "src": "5645:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5634:3:74", + "nodeType": "YulIdentifier", + "src": "5634:3:74" + }, + "nativeSrc": "5634:54:74", + "nodeType": "YulFunctionCall", + "src": "5634:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "5623:7:74", + "nodeType": "YulIdentifier", + "src": "5623:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "5568:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5595:5:74", + "nodeType": "YulTypedName", + "src": "5595:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "5605:7:74", + "nodeType": "YulTypedName", + "src": "5605:7:74", + "type": "" + } + ], + "src": "5568:126:74" + }, + { + "body": { + "nativeSrc": "5745:51:74", + "nodeType": "YulBlock", + "src": "5745:51:74", + "statements": [ + { + "nativeSrc": "5755:35:74", + "nodeType": "YulAssignment", + "src": "5755:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5784:5:74", + "nodeType": "YulIdentifier", + "src": "5784:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "5766:17:74", + "nodeType": "YulIdentifier", + "src": "5766:17:74" + }, + "nativeSrc": "5766:24:74", + "nodeType": "YulFunctionCall", + "src": "5766:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "5755:7:74", + "nodeType": "YulIdentifier", + "src": "5755:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "5700:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5727:5:74", + "nodeType": "YulTypedName", + "src": "5727:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "5737:7:74", + "nodeType": "YulTypedName", + "src": "5737:7:74", + "type": "" + } + ], + "src": "5700:96:74" + }, + { + "body": { + "nativeSrc": "5867:53:74", + "nodeType": "YulBlock", + "src": "5867:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5884:3:74", + "nodeType": "YulIdentifier", + "src": "5884:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5907:5:74", + "nodeType": "YulIdentifier", + "src": "5907:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "5889:17:74", + "nodeType": "YulIdentifier", + "src": "5889:17:74" + }, + "nativeSrc": "5889:24:74", + "nodeType": "YulFunctionCall", + "src": "5889:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5877:6:74", + "nodeType": "YulIdentifier", + "src": "5877:6:74" + }, + "nativeSrc": "5877:37:74", + "nodeType": "YulFunctionCall", + "src": "5877:37:74" + }, + "nativeSrc": "5877:37:74", + "nodeType": "YulExpressionStatement", + "src": "5877:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "5802:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5855:5:74", + "nodeType": "YulTypedName", + "src": "5855:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "5862:3:74", + "nodeType": "YulTypedName", + "src": "5862:3:74", + "type": "" + } + ], + "src": "5802:118:74" + }, + { + "body": { + "nativeSrc": "6024:124:74", + "nodeType": "YulBlock", + "src": "6024:124:74", + "statements": [ + { + "nativeSrc": "6034:26:74", + "nodeType": "YulAssignment", + "src": "6034:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6046:9:74", + "nodeType": "YulIdentifier", + "src": "6046:9:74" + }, + { + "kind": "number", + "nativeSrc": "6057:2:74", + "nodeType": "YulLiteral", + "src": "6057:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6042:3:74", + "nodeType": "YulIdentifier", + "src": "6042:3:74" + }, + "nativeSrc": "6042:18:74", + "nodeType": "YulFunctionCall", + "src": "6042:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6034:4:74", + "nodeType": "YulIdentifier", + "src": "6034:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "6114:6:74", + "nodeType": "YulIdentifier", + "src": "6114:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6127:9:74", + "nodeType": "YulIdentifier", + "src": "6127:9:74" + }, + { + "kind": "number", + "nativeSrc": "6138:1:74", + "nodeType": "YulLiteral", + "src": "6138:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6123:3:74", + "nodeType": "YulIdentifier", + "src": "6123:3:74" + }, + "nativeSrc": "6123:17:74", + "nodeType": "YulFunctionCall", + "src": "6123:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "6070:43:74", + "nodeType": "YulIdentifier", + "src": "6070:43:74" + }, + "nativeSrc": "6070:71:74", + "nodeType": "YulFunctionCall", + "src": "6070:71:74" + }, + "nativeSrc": "6070:71:74", + "nodeType": "YulExpressionStatement", + "src": "6070:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "5926:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5996:9:74", + "nodeType": "YulTypedName", + "src": "5996:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "6008:6:74", + "nodeType": "YulTypedName", + "src": "6008:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6019:4:74", + "nodeType": "YulTypedName", + "src": "6019:4:74", + "type": "" + } + ], + "src": "5926:222:74" + }, + { + "body": { + "nativeSrc": "6199:32:74", + "nodeType": "YulBlock", + "src": "6199:32:74", + "statements": [ + { + "nativeSrc": "6209:16:74", + "nodeType": "YulAssignment", + "src": "6209:16:74", + "value": { + "name": "value", + "nativeSrc": "6220:5:74", + "nodeType": "YulIdentifier", + "src": "6220:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "6209:7:74", + "nodeType": "YulIdentifier", + "src": "6209:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "6154:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6181:5:74", + "nodeType": "YulTypedName", + "src": "6181:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "6191:7:74", + "nodeType": "YulTypedName", + "src": "6191:7:74", + "type": "" + } + ], + "src": "6154:77:74" + }, + { + "body": { + "nativeSrc": "6280:79:74", + "nodeType": "YulBlock", + "src": "6280:79:74", + "statements": [ + { + "body": { + "nativeSrc": "6337:16:74", + "nodeType": "YulBlock", + "src": "6337:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6346:1:74", + "nodeType": "YulLiteral", + "src": "6346:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6349:1:74", + "nodeType": "YulLiteral", + "src": "6349:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6339:6:74", + "nodeType": "YulIdentifier", + "src": "6339:6:74" + }, + "nativeSrc": "6339:12:74", + "nodeType": "YulFunctionCall", + "src": "6339:12:74" + }, + "nativeSrc": "6339:12:74", + "nodeType": "YulExpressionStatement", + "src": "6339:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6303:5:74", + "nodeType": "YulIdentifier", + "src": "6303:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6328:5:74", + "nodeType": "YulIdentifier", + "src": "6328:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "6310:17:74", + "nodeType": "YulIdentifier", + "src": "6310:17:74" + }, + "nativeSrc": "6310:24:74", + "nodeType": "YulFunctionCall", + "src": "6310:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6300:2:74", + "nodeType": "YulIdentifier", + "src": "6300:2:74" + }, + "nativeSrc": "6300:35:74", + "nodeType": "YulFunctionCall", + "src": "6300:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6293:6:74", + "nodeType": "YulIdentifier", + "src": "6293:6:74" + }, + "nativeSrc": "6293:43:74", + "nodeType": "YulFunctionCall", + "src": "6293:43:74" + }, + "nativeSrc": "6290:63:74", + "nodeType": "YulIf", + "src": "6290:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "6237:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6273:5:74", + "nodeType": "YulTypedName", + "src": "6273:5:74", + "type": "" + } + ], + "src": "6237:122:74" + }, + { + "body": { + "nativeSrc": "6417:87:74", + "nodeType": "YulBlock", + "src": "6417:87:74", + "statements": [ + { + "nativeSrc": "6427:29:74", + "nodeType": "YulAssignment", + "src": "6427:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6449:6:74", + "nodeType": "YulIdentifier", + "src": "6449:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6436:12:74", + "nodeType": "YulIdentifier", + "src": "6436:12:74" + }, + "nativeSrc": "6436:20:74", + "nodeType": "YulFunctionCall", + "src": "6436:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6427:5:74", + "nodeType": "YulIdentifier", + "src": "6427:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6492:5:74", + "nodeType": "YulIdentifier", + "src": "6492:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "6465:26:74", + "nodeType": "YulIdentifier", + "src": "6465:26:74" + }, + "nativeSrc": "6465:33:74", + "nodeType": "YulFunctionCall", + "src": "6465:33:74" + }, + "nativeSrc": "6465:33:74", + "nodeType": "YulExpressionStatement", + "src": "6465:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "6365:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6395:6:74", + "nodeType": "YulTypedName", + "src": "6395:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6403:3:74", + "nodeType": "YulTypedName", + "src": "6403:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6411:5:74", + "nodeType": "YulTypedName", + "src": "6411:5:74", + "type": "" + } + ], + "src": "6365:139:74" + }, + { + "body": { + "nativeSrc": "6593:391:74", + "nodeType": "YulBlock", + "src": "6593:391:74", + "statements": [ + { + "body": { + "nativeSrc": "6639:83:74", + "nodeType": "YulBlock", + "src": "6639:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6641:77:74", + "nodeType": "YulIdentifier", + "src": "6641:77:74" + }, + "nativeSrc": "6641:79:74", + "nodeType": "YulFunctionCall", + "src": "6641:79:74" + }, + "nativeSrc": "6641:79:74", + "nodeType": "YulExpressionStatement", + "src": "6641:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6614:7:74", + "nodeType": "YulIdentifier", + "src": "6614:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6623:9:74", + "nodeType": "YulIdentifier", + "src": "6623:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6610:3:74", + "nodeType": "YulIdentifier", + "src": "6610:3:74" + }, + "nativeSrc": "6610:23:74", + "nodeType": "YulFunctionCall", + "src": "6610:23:74" + }, + { + "kind": "number", + "nativeSrc": "6635:2:74", + "nodeType": "YulLiteral", + "src": "6635:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6606:3:74", + "nodeType": "YulIdentifier", + "src": "6606:3:74" + }, + "nativeSrc": "6606:32:74", + "nodeType": "YulFunctionCall", + "src": "6606:32:74" + }, + "nativeSrc": "6603:119:74", + "nodeType": "YulIf", + "src": "6603:119:74" + }, + { + "nativeSrc": "6732:117:74", + "nodeType": "YulBlock", + "src": "6732:117:74", + "statements": [ + { + "nativeSrc": "6747:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6747:15:74", + "value": { + "kind": "number", + "nativeSrc": "6761:1:74", + "nodeType": "YulLiteral", + "src": "6761:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6751:6:74", + "nodeType": "YulTypedName", + "src": "6751:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6776:63:74", + "nodeType": "YulAssignment", + "src": "6776:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6811:9:74", + "nodeType": "YulIdentifier", + "src": "6811:9:74" + }, + { + "name": "offset", + "nativeSrc": "6822:6:74", + "nodeType": "YulIdentifier", + "src": "6822:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6807:3:74", + "nodeType": "YulIdentifier", + "src": "6807:3:74" + }, + "nativeSrc": "6807:22:74", + "nodeType": "YulFunctionCall", + "src": "6807:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6831:7:74", + "nodeType": "YulIdentifier", + "src": "6831:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "6786:20:74", + "nodeType": "YulIdentifier", + "src": "6786:20:74" + }, + "nativeSrc": "6786:53:74", + "nodeType": "YulFunctionCall", + "src": "6786:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6776:6:74", + "nodeType": "YulIdentifier", + "src": "6776:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6859:118:74", + "nodeType": "YulBlock", + "src": "6859:118:74", + "statements": [ + { + "nativeSrc": "6874:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6874:16:74", + "value": { + "kind": "number", + "nativeSrc": "6888:2:74", + "nodeType": "YulLiteral", + "src": "6888:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6878:6:74", + "nodeType": "YulTypedName", + "src": "6878:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6904:63:74", + "nodeType": "YulAssignment", + "src": "6904:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6939:9:74", + "nodeType": "YulIdentifier", + "src": "6939:9:74" + }, + { + "name": "offset", + "nativeSrc": "6950:6:74", + "nodeType": "YulIdentifier", + "src": "6950:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6935:3:74", + "nodeType": "YulIdentifier", + "src": "6935:3:74" + }, + "nativeSrc": "6935:22:74", + "nodeType": "YulFunctionCall", + "src": "6935:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6959:7:74", + "nodeType": "YulIdentifier", + "src": "6959:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "6914:20:74", + "nodeType": "YulIdentifier", + "src": "6914:20:74" + }, + "nativeSrc": "6914:53:74", + "nodeType": "YulFunctionCall", + "src": "6914:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6904:6:74", + "nodeType": "YulIdentifier", + "src": "6904:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256", + "nativeSrc": "6510:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6555:9:74", + "nodeType": "YulTypedName", + "src": "6555:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6566:7:74", + "nodeType": "YulTypedName", + "src": "6566:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6578:6:74", + "nodeType": "YulTypedName", + "src": "6578:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6586:6:74", + "nodeType": "YulTypedName", + "src": "6586:6:74", + "type": "" + } + ], + "src": "6510:474:74" + }, + { + "body": { + "nativeSrc": "7055:53:74", + "nodeType": "YulBlock", + "src": "7055:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7072:3:74", + "nodeType": "YulIdentifier", + "src": "7072:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7095:5:74", + "nodeType": "YulIdentifier", + "src": "7095:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "7077:17:74", + "nodeType": "YulIdentifier", + "src": "7077:17:74" + }, + "nativeSrc": "7077:24:74", + "nodeType": "YulFunctionCall", + "src": "7077:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7065:6:74", + "nodeType": "YulIdentifier", + "src": "7065:6:74" + }, + "nativeSrc": "7065:37:74", + "nodeType": "YulFunctionCall", + "src": "7065:37:74" + }, + "nativeSrc": "7065:37:74", + "nodeType": "YulExpressionStatement", + "src": "7065:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "6990:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7043:5:74", + "nodeType": "YulTypedName", + "src": "7043:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7050:3:74", + "nodeType": "YulTypedName", + "src": "7050:3:74", + "type": "" + } + ], + "src": "6990:118:74" + }, + { + "body": { + "nativeSrc": "7172:40:74", + "nodeType": "YulBlock", + "src": "7172:40:74", + "statements": [ + { + "nativeSrc": "7183:22:74", + "nodeType": "YulAssignment", + "src": "7183:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7199:5:74", + "nodeType": "YulIdentifier", + "src": "7199:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "7193:5:74", + "nodeType": "YulIdentifier", + "src": "7193:5:74" + }, + "nativeSrc": "7193:12:74", + "nodeType": "YulFunctionCall", + "src": "7193:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "7183:6:74", + "nodeType": "YulIdentifier", + "src": "7183:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "7114:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7155:5:74", + "nodeType": "YulTypedName", + "src": "7155:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "7165:6:74", + "nodeType": "YulTypedName", + "src": "7165:6:74", + "type": "" + } + ], + "src": "7114:98:74" + }, + { + "body": { + "nativeSrc": "7313:73:74", + "nodeType": "YulBlock", + "src": "7313:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7330:3:74", + "nodeType": "YulIdentifier", + "src": "7330:3:74" + }, + { + "name": "length", + "nativeSrc": "7335:6:74", + "nodeType": "YulIdentifier", + "src": "7335:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7323:6:74", + "nodeType": "YulIdentifier", + "src": "7323:6:74" + }, + "nativeSrc": "7323:19:74", + "nodeType": "YulFunctionCall", + "src": "7323:19:74" + }, + "nativeSrc": "7323:19:74", + "nodeType": "YulExpressionStatement", + "src": "7323:19:74" + }, + { + "nativeSrc": "7351:29:74", + "nodeType": "YulAssignment", + "src": "7351:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7370:3:74", + "nodeType": "YulIdentifier", + "src": "7370:3:74" + }, + { + "kind": "number", + "nativeSrc": "7375:4:74", + "nodeType": "YulLiteral", + "src": "7375:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7366:3:74", + "nodeType": "YulIdentifier", + "src": "7366:3:74" + }, + "nativeSrc": "7366:14:74", + "nodeType": "YulFunctionCall", + "src": "7366:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "7351:11:74", + "nodeType": "YulIdentifier", + "src": "7351:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "7218:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "7285:3:74", + "nodeType": "YulTypedName", + "src": "7285:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "7290:6:74", + "nodeType": "YulTypedName", + "src": "7290:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "7301:11:74", + "nodeType": "YulTypedName", + "src": "7301:11:74", + "type": "" + } + ], + "src": "7218:168:74" + }, + { + "body": { + "nativeSrc": "7454:186:74", + "nodeType": "YulBlock", + "src": "7454:186:74", + "statements": [ + { + "nativeSrc": "7465:10:74", + "nodeType": "YulVariableDeclaration", + "src": "7465:10:74", + "value": { + "kind": "number", + "nativeSrc": "7474:1:74", + "nodeType": "YulLiteral", + "src": "7474:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "7469:1:74", + "nodeType": "YulTypedName", + "src": "7469:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7534:63:74", + "nodeType": "YulBlock", + "src": "7534:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "7559:3:74", + "nodeType": "YulIdentifier", + "src": "7559:3:74" + }, + { + "name": "i", + "nativeSrc": "7564:1:74", + "nodeType": "YulIdentifier", + "src": "7564:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7555:3:74", + "nodeType": "YulIdentifier", + "src": "7555:3:74" + }, + "nativeSrc": "7555:11:74", + "nodeType": "YulFunctionCall", + "src": "7555:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "7578:3:74", + "nodeType": "YulIdentifier", + "src": "7578:3:74" + }, + { + "name": "i", + "nativeSrc": "7583:1:74", + "nodeType": "YulIdentifier", + "src": "7583:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7574:3:74", + "nodeType": "YulIdentifier", + "src": "7574:3:74" + }, + "nativeSrc": "7574:11:74", + "nodeType": "YulFunctionCall", + "src": "7574:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "7568:5:74", + "nodeType": "YulIdentifier", + "src": "7568:5:74" + }, + "nativeSrc": "7568:18:74", + "nodeType": "YulFunctionCall", + "src": "7568:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7548:6:74", + "nodeType": "YulIdentifier", + "src": "7548:6:74" + }, + "nativeSrc": "7548:39:74", + "nodeType": "YulFunctionCall", + "src": "7548:39:74" + }, + "nativeSrc": "7548:39:74", + "nodeType": "YulExpressionStatement", + "src": "7548:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7495:1:74", + "nodeType": "YulIdentifier", + "src": "7495:1:74" + }, + { + "name": "length", + "nativeSrc": "7498:6:74", + "nodeType": "YulIdentifier", + "src": "7498:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7492:2:74", + "nodeType": "YulIdentifier", + "src": "7492:2:74" + }, + "nativeSrc": "7492:13:74", + "nodeType": "YulFunctionCall", + "src": "7492:13:74" + }, + "nativeSrc": "7484:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "7506:19:74", + "nodeType": "YulBlock", + "src": "7506:19:74", + "statements": [ + { + "nativeSrc": "7508:15:74", + "nodeType": "YulAssignment", + "src": "7508:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7517:1:74", + "nodeType": "YulIdentifier", + "src": "7517:1:74" + }, + { + "kind": "number", + "nativeSrc": "7520:2:74", + "nodeType": "YulLiteral", + "src": "7520:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7513:3:74", + "nodeType": "YulIdentifier", + "src": "7513:3:74" + }, + "nativeSrc": "7513:10:74", + "nodeType": "YulFunctionCall", + "src": "7513:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "7508:1:74", + "nodeType": "YulIdentifier", + "src": "7508:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "7488:3:74", + "nodeType": "YulBlock", + "src": "7488:3:74", + "statements": [] + }, + "src": "7484:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "7617:3:74", + "nodeType": "YulIdentifier", + "src": "7617:3:74" + }, + { + "name": "length", + "nativeSrc": "7622:6:74", + "nodeType": "YulIdentifier", + "src": "7622:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7613:3:74", + "nodeType": "YulIdentifier", + "src": "7613:3:74" + }, + "nativeSrc": "7613:16:74", + "nodeType": "YulFunctionCall", + "src": "7613:16:74" + }, + { + "kind": "number", + "nativeSrc": "7631:1:74", + "nodeType": "YulLiteral", + "src": "7631:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7606:6:74", + "nodeType": "YulIdentifier", + "src": "7606:6:74" + }, + "nativeSrc": "7606:27:74", + "nodeType": "YulFunctionCall", + "src": "7606:27:74" + }, + "nativeSrc": "7606:27:74", + "nodeType": "YulExpressionStatement", + "src": "7606:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "7392:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "7436:3:74", + "nodeType": "YulTypedName", + "src": "7436:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "7441:3:74", + "nodeType": "YulTypedName", + "src": "7441:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "7446:6:74", + "nodeType": "YulTypedName", + "src": "7446:6:74", + "type": "" + } + ], + "src": "7392:248:74" + }, + { + "body": { + "nativeSrc": "7694:54:74", + "nodeType": "YulBlock", + "src": "7694:54:74", + "statements": [ + { + "nativeSrc": "7704:38:74", + "nodeType": "YulAssignment", + "src": "7704:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7722:5:74", + "nodeType": "YulIdentifier", + "src": "7722:5:74" + }, + { + "kind": "number", + "nativeSrc": "7729:2:74", + "nodeType": "YulLiteral", + "src": "7729:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7718:3:74", + "nodeType": "YulIdentifier", + "src": "7718:3:74" + }, + "nativeSrc": "7718:14:74", + "nodeType": "YulFunctionCall", + "src": "7718:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7738:2:74", + "nodeType": "YulLiteral", + "src": "7738:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "7734:3:74", + "nodeType": "YulIdentifier", + "src": "7734:3:74" + }, + "nativeSrc": "7734:7:74", + "nodeType": "YulFunctionCall", + "src": "7734:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7714:3:74", + "nodeType": "YulIdentifier", + "src": "7714:3:74" + }, + "nativeSrc": "7714:28:74", + "nodeType": "YulFunctionCall", + "src": "7714:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "7704:6:74", + "nodeType": "YulIdentifier", + "src": "7704:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "7646:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7677:5:74", + "nodeType": "YulTypedName", + "src": "7677:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "7687:6:74", + "nodeType": "YulTypedName", + "src": "7687:6:74", + "type": "" + } + ], + "src": "7646:102:74" + }, + { + "body": { + "nativeSrc": "7844:283:74", + "nodeType": "YulBlock", + "src": "7844:283:74", + "statements": [ + { + "nativeSrc": "7854:52:74", + "nodeType": "YulVariableDeclaration", + "src": "7854:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7900:5:74", + "nodeType": "YulIdentifier", + "src": "7900:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "7868:31:74", + "nodeType": "YulIdentifier", + "src": "7868:31:74" + }, + "nativeSrc": "7868:38:74", + "nodeType": "YulFunctionCall", + "src": "7868:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "7858:6:74", + "nodeType": "YulTypedName", + "src": "7858:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7915:77:74", + "nodeType": "YulAssignment", + "src": "7915:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7980:3:74", + "nodeType": "YulIdentifier", + "src": "7980:3:74" + }, + { + "name": "length", + "nativeSrc": "7985:6:74", + "nodeType": "YulIdentifier", + "src": "7985:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "7922:57:74", + "nodeType": "YulIdentifier", + "src": "7922:57:74" + }, + "nativeSrc": "7922:70:74", + "nodeType": "YulFunctionCall", + "src": "7922:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "7915:3:74", + "nodeType": "YulIdentifier", + "src": "7915:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8040:5:74", + "nodeType": "YulIdentifier", + "src": "8040:5:74" + }, + { + "kind": "number", + "nativeSrc": "8047:4:74", + "nodeType": "YulLiteral", + "src": "8047:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8036:3:74", + "nodeType": "YulIdentifier", + "src": "8036:3:74" + }, + "nativeSrc": "8036:16:74", + "nodeType": "YulFunctionCall", + "src": "8036:16:74" + }, + { + "name": "pos", + "nativeSrc": "8054:3:74", + "nodeType": "YulIdentifier", + "src": "8054:3:74" + }, + { + "name": "length", + "nativeSrc": "8059:6:74", + "nodeType": "YulIdentifier", + "src": "8059:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "8001:34:74", + "nodeType": "YulIdentifier", + "src": "8001:34:74" + }, + "nativeSrc": "8001:65:74", + "nodeType": "YulFunctionCall", + "src": "8001:65:74" + }, + "nativeSrc": "8001:65:74", + "nodeType": "YulExpressionStatement", + "src": "8001:65:74" + }, + { + "nativeSrc": "8075:46:74", + "nodeType": "YulAssignment", + "src": "8075:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8086:3:74", + "nodeType": "YulIdentifier", + "src": "8086:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "8113:6:74", + "nodeType": "YulIdentifier", + "src": "8113:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "8091:21:74", + "nodeType": "YulIdentifier", + "src": "8091:21:74" + }, + "nativeSrc": "8091:29:74", + "nodeType": "YulFunctionCall", + "src": "8091:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8082:3:74", + "nodeType": "YulIdentifier", + "src": "8082:3:74" + }, + "nativeSrc": "8082:39:74", + "nodeType": "YulFunctionCall", + "src": "8082:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "8075:3:74", + "nodeType": "YulIdentifier", + "src": "8075:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "7754:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7825:5:74", + "nodeType": "YulTypedName", + "src": "7825:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7832:3:74", + "nodeType": "YulTypedName", + "src": "7832:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "7840:3:74", + "nodeType": "YulTypedName", + "src": "7840:3:74", + "type": "" + } + ], + "src": "7754:373:74" + }, + { + "body": { + "nativeSrc": "8277:275:74", + "nodeType": "YulBlock", + "src": "8277:275:74", + "statements": [ + { + "nativeSrc": "8287:26:74", + "nodeType": "YulAssignment", + "src": "8287:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8299:9:74", + "nodeType": "YulIdentifier", + "src": "8299:9:74" + }, + { + "kind": "number", + "nativeSrc": "8310:2:74", + "nodeType": "YulLiteral", + "src": "8310:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8295:3:74", + "nodeType": "YulIdentifier", + "src": "8295:3:74" + }, + "nativeSrc": "8295:18:74", + "nodeType": "YulFunctionCall", + "src": "8295:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "8287:4:74", + "nodeType": "YulIdentifier", + "src": "8287:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "8367:6:74", + "nodeType": "YulIdentifier", + "src": "8367:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8380:9:74", + "nodeType": "YulIdentifier", + "src": "8380:9:74" + }, + { + "kind": "number", + "nativeSrc": "8391:1:74", + "nodeType": "YulLiteral", + "src": "8391:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8376:3:74", + "nodeType": "YulIdentifier", + "src": "8376:3:74" + }, + "nativeSrc": "8376:17:74", + "nodeType": "YulFunctionCall", + "src": "8376:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "8323:43:74", + "nodeType": "YulIdentifier", + "src": "8323:43:74" + }, + "nativeSrc": "8323:71:74", + "nodeType": "YulFunctionCall", + "src": "8323:71:74" + }, + "nativeSrc": "8323:71:74", + "nodeType": "YulExpressionStatement", + "src": "8323:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8415:9:74", + "nodeType": "YulIdentifier", + "src": "8415:9:74" + }, + { + "kind": "number", + "nativeSrc": "8426:2:74", + "nodeType": "YulLiteral", + "src": "8426:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8411:3:74", + "nodeType": "YulIdentifier", + "src": "8411:3:74" + }, + "nativeSrc": "8411:18:74", + "nodeType": "YulFunctionCall", + "src": "8411:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "8435:4:74", + "nodeType": "YulIdentifier", + "src": "8435:4:74" + }, + { + "name": "headStart", + "nativeSrc": "8441:9:74", + "nodeType": "YulIdentifier", + "src": "8441:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8431:3:74", + "nodeType": "YulIdentifier", + "src": "8431:3:74" + }, + "nativeSrc": "8431:20:74", + "nodeType": "YulFunctionCall", + "src": "8431:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8404:6:74", + "nodeType": "YulIdentifier", + "src": "8404:6:74" + }, + "nativeSrc": "8404:48:74", + "nodeType": "YulFunctionCall", + "src": "8404:48:74" + }, + "nativeSrc": "8404:48:74", + "nodeType": "YulExpressionStatement", + "src": "8404:48:74" + }, + { + "nativeSrc": "8461:84:74", + "nodeType": "YulAssignment", + "src": "8461:84:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "8531:6:74", + "nodeType": "YulIdentifier", + "src": "8531:6:74" + }, + { + "name": "tail", + "nativeSrc": "8540:4:74", + "nodeType": "YulIdentifier", + "src": "8540:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "8469:61:74", + "nodeType": "YulIdentifier", + "src": "8469:61:74" + }, + "nativeSrc": "8469:76:74", + "nodeType": "YulFunctionCall", + "src": "8469:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "8461:4:74", + "nodeType": "YulIdentifier", + "src": "8461:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "8133:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8241:9:74", + "nodeType": "YulTypedName", + "src": "8241:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8253:6:74", + "nodeType": "YulTypedName", + "src": "8253:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "8261:6:74", + "nodeType": "YulTypedName", + "src": "8261:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "8272:4:74", + "nodeType": "YulTypedName", + "src": "8272:4:74", + "type": "" + } + ], + "src": "8133:419:74" + }, + { + "body": { + "nativeSrc": "8658:519:74", + "nodeType": "YulBlock", + "src": "8658:519:74", + "statements": [ + { + "body": { + "nativeSrc": "8704:83:74", + "nodeType": "YulBlock", + "src": "8704:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "8706:77:74", + "nodeType": "YulIdentifier", + "src": "8706:77:74" + }, + "nativeSrc": "8706:79:74", + "nodeType": "YulFunctionCall", + "src": "8706:79:74" + }, + "nativeSrc": "8706:79:74", + "nodeType": "YulExpressionStatement", + "src": "8706:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "8679:7:74", + "nodeType": "YulIdentifier", + "src": "8679:7:74" + }, + { + "name": "headStart", + "nativeSrc": "8688:9:74", + "nodeType": "YulIdentifier", + "src": "8688:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8675:3:74", + "nodeType": "YulIdentifier", + "src": "8675:3:74" + }, + "nativeSrc": "8675:23:74", + "nodeType": "YulFunctionCall", + "src": "8675:23:74" + }, + { + "kind": "number", + "nativeSrc": "8700:2:74", + "nodeType": "YulLiteral", + "src": "8700:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8671:3:74", + "nodeType": "YulIdentifier", + "src": "8671:3:74" + }, + "nativeSrc": "8671:32:74", + "nodeType": "YulFunctionCall", + "src": "8671:32:74" + }, + "nativeSrc": "8668:119:74", + "nodeType": "YulIf", + "src": "8668:119:74" + }, + { + "nativeSrc": "8797:117:74", + "nodeType": "YulBlock", + "src": "8797:117:74", + "statements": [ + { + "nativeSrc": "8812:15:74", + "nodeType": "YulVariableDeclaration", + "src": "8812:15:74", + "value": { + "kind": "number", + "nativeSrc": "8826:1:74", + "nodeType": "YulLiteral", + "src": "8826:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8816:6:74", + "nodeType": "YulTypedName", + "src": "8816:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8841:63:74", + "nodeType": "YulAssignment", + "src": "8841:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8876:9:74", + "nodeType": "YulIdentifier", + "src": "8876:9:74" + }, + { + "name": "offset", + "nativeSrc": "8887:6:74", + "nodeType": "YulIdentifier", + "src": "8887:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8872:3:74", + "nodeType": "YulIdentifier", + "src": "8872:3:74" + }, + "nativeSrc": "8872:22:74", + "nodeType": "YulFunctionCall", + "src": "8872:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8896:7:74", + "nodeType": "YulIdentifier", + "src": "8896:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "8851:20:74", + "nodeType": "YulIdentifier", + "src": "8851:20:74" + }, + "nativeSrc": "8851:53:74", + "nodeType": "YulFunctionCall", + "src": "8851:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8841:6:74", + "nodeType": "YulIdentifier", + "src": "8841:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "8924:118:74", + "nodeType": "YulBlock", + "src": "8924:118:74", + "statements": [ + { + "nativeSrc": "8939:16:74", + "nodeType": "YulVariableDeclaration", + "src": "8939:16:74", + "value": { + "kind": "number", + "nativeSrc": "8953:2:74", + "nodeType": "YulLiteral", + "src": "8953:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8943:6:74", + "nodeType": "YulTypedName", + "src": "8943:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8969:63:74", + "nodeType": "YulAssignment", + "src": "8969:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9004:9:74", + "nodeType": "YulIdentifier", + "src": "9004:9:74" + }, + { + "name": "offset", + "nativeSrc": "9015:6:74", + "nodeType": "YulIdentifier", + "src": "9015:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9000:3:74", + "nodeType": "YulIdentifier", + "src": "9000:3:74" + }, + "nativeSrc": "9000:22:74", + "nodeType": "YulFunctionCall", + "src": "9000:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9024:7:74", + "nodeType": "YulIdentifier", + "src": "9024:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "8979:20:74", + "nodeType": "YulIdentifier", + "src": "8979:20:74" + }, + "nativeSrc": "8979:53:74", + "nodeType": "YulFunctionCall", + "src": "8979:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "8969:6:74", + "nodeType": "YulIdentifier", + "src": "8969:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9052:118:74", + "nodeType": "YulBlock", + "src": "9052:118:74", + "statements": [ + { + "nativeSrc": "9067:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9067:16:74", + "value": { + "kind": "number", + "nativeSrc": "9081:2:74", + "nodeType": "YulLiteral", + "src": "9081:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9071:6:74", + "nodeType": "YulTypedName", + "src": "9071:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9097:63:74", + "nodeType": "YulAssignment", + "src": "9097:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9132:9:74", + "nodeType": "YulIdentifier", + "src": "9132:9:74" + }, + { + "name": "offset", + "nativeSrc": "9143:6:74", + "nodeType": "YulIdentifier", + "src": "9143:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9128:3:74", + "nodeType": "YulIdentifier", + "src": "9128:3:74" + }, + "nativeSrc": "9128:22:74", + "nodeType": "YulFunctionCall", + "src": "9128:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9152:7:74", + "nodeType": "YulIdentifier", + "src": "9152:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "9107:20:74", + "nodeType": "YulIdentifier", + "src": "9107:20:74" + }, + "nativeSrc": "9107:53:74", + "nodeType": "YulFunctionCall", + "src": "9107:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "9097:6:74", + "nodeType": "YulIdentifier", + "src": "9097:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_bytes32", + "nativeSrc": "8558:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8612:9:74", + "nodeType": "YulTypedName", + "src": "8612:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "8623:7:74", + "nodeType": "YulTypedName", + "src": "8623:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "8635:6:74", + "nodeType": "YulTypedName", + "src": "8635:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8643:6:74", + "nodeType": "YulTypedName", + "src": "8643:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "8651:6:74", + "nodeType": "YulTypedName", + "src": "8651:6:74", + "type": "" + } + ], + "src": "8558:619:74" + }, + { + "body": { + "nativeSrc": "9249:263:74", + "nodeType": "YulBlock", + "src": "9249:263:74", + "statements": [ + { + "body": { + "nativeSrc": "9295:83:74", + "nodeType": "YulBlock", + "src": "9295:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "9297:77:74", + "nodeType": "YulIdentifier", + "src": "9297:77:74" + }, + "nativeSrc": "9297:79:74", + "nodeType": "YulFunctionCall", + "src": "9297:79:74" + }, + "nativeSrc": "9297:79:74", + "nodeType": "YulExpressionStatement", + "src": "9297:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "9270:7:74", + "nodeType": "YulIdentifier", + "src": "9270:7:74" + }, + { + "name": "headStart", + "nativeSrc": "9279:9:74", + "nodeType": "YulIdentifier", + "src": "9279:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "9266:3:74", + "nodeType": "YulIdentifier", + "src": "9266:3:74" + }, + "nativeSrc": "9266:23:74", + "nodeType": "YulFunctionCall", + "src": "9266:23:74" + }, + { + "kind": "number", + "nativeSrc": "9291:2:74", + "nodeType": "YulLiteral", + "src": "9291:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9262:3:74", + "nodeType": "YulIdentifier", + "src": "9262:3:74" + }, + "nativeSrc": "9262:32:74", + "nodeType": "YulFunctionCall", + "src": "9262:32:74" + }, + "nativeSrc": "9259:119:74", + "nodeType": "YulIf", + "src": "9259:119:74" + }, + { + "nativeSrc": "9388:117:74", + "nodeType": "YulBlock", + "src": "9388:117:74", + "statements": [ + { + "nativeSrc": "9403:15:74", + "nodeType": "YulVariableDeclaration", + "src": "9403:15:74", + "value": { + "kind": "number", + "nativeSrc": "9417:1:74", + "nodeType": "YulLiteral", + "src": "9417:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9407:6:74", + "nodeType": "YulTypedName", + "src": "9407:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9432:63:74", + "nodeType": "YulAssignment", + "src": "9432:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9467:9:74", + "nodeType": "YulIdentifier", + "src": "9467:9:74" + }, + { + "name": "offset", + "nativeSrc": "9478:6:74", + "nodeType": "YulIdentifier", + "src": "9478:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9463:3:74", + "nodeType": "YulIdentifier", + "src": "9463:3:74" + }, + "nativeSrc": "9463:22:74", + "nodeType": "YulFunctionCall", + "src": "9463:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9487:7:74", + "nodeType": "YulIdentifier", + "src": "9487:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "9442:20:74", + "nodeType": "YulIdentifier", + "src": "9442:20:74" + }, + "nativeSrc": "9442:53:74", + "nodeType": "YulFunctionCall", + "src": "9442:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "9432:6:74", + "nodeType": "YulIdentifier", + "src": "9432:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "9183:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9219:9:74", + "nodeType": "YulTypedName", + "src": "9219:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "9230:7:74", + "nodeType": "YulTypedName", + "src": "9230:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "9242:6:74", + "nodeType": "YulTypedName", + "src": "9242:6:74", + "type": "" + } + ], + "src": "9183:329:74" + }, + { + "body": { + "nativeSrc": "9571:51:74", + "nodeType": "YulBlock", + "src": "9571:51:74", + "statements": [ + { + "nativeSrc": "9581:35:74", + "nodeType": "YulAssignment", + "src": "9581:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "9610:5:74", + "nodeType": "YulIdentifier", + "src": "9610:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "9592:17:74", + "nodeType": "YulIdentifier", + "src": "9592:17:74" + }, + "nativeSrc": "9592:24:74", + "nodeType": "YulFunctionCall", + "src": "9592:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "9581:7:74", + "nodeType": "YulIdentifier", + "src": "9581:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address_payable", + "nativeSrc": "9518:104:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9553:5:74", + "nodeType": "YulTypedName", + "src": "9553:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "9563:7:74", + "nodeType": "YulTypedName", + "src": "9563:7:74", + "type": "" + } + ], + "src": "9518:104:74" + }, + { + "body": { + "nativeSrc": "9709:61:74", + "nodeType": "YulBlock", + "src": "9709:61:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "9726:3:74", + "nodeType": "YulIdentifier", + "src": "9726:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "9757:5:74", + "nodeType": "YulIdentifier", + "src": "9757:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address_payable", + "nativeSrc": "9731:25:74", + "nodeType": "YulIdentifier", + "src": "9731:25:74" + }, + "nativeSrc": "9731:32:74", + "nodeType": "YulFunctionCall", + "src": "9731:32:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9719:6:74", + "nodeType": "YulIdentifier", + "src": "9719:6:74" + }, + "nativeSrc": "9719:45:74", + "nodeType": "YulFunctionCall", + "src": "9719:45:74" + }, + "nativeSrc": "9719:45:74", + "nodeType": "YulExpressionStatement", + "src": "9719:45:74" + } + ] + }, + "name": "abi_encode_t_address_payable_to_t_address_payable_fromStack", + "nativeSrc": "9628:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9697:5:74", + "nodeType": "YulTypedName", + "src": "9697:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "9704:3:74", + "nodeType": "YulTypedName", + "src": "9704:3:74", + "type": "" + } + ], + "src": "9628:142:74" + }, + { + "body": { + "nativeSrc": "9890:140:74", + "nodeType": "YulBlock", + "src": "9890:140:74", + "statements": [ + { + "nativeSrc": "9900:26:74", + "nodeType": "YulAssignment", + "src": "9900:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9912:9:74", + "nodeType": "YulIdentifier", + "src": "9912:9:74" + }, + { + "kind": "number", + "nativeSrc": "9923:2:74", + "nodeType": "YulLiteral", + "src": "9923:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9908:3:74", + "nodeType": "YulIdentifier", + "src": "9908:3:74" + }, + "nativeSrc": "9908:18:74", + "nodeType": "YulFunctionCall", + "src": "9908:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "9900:4:74", + "nodeType": "YulIdentifier", + "src": "9900:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "9996:6:74", + "nodeType": "YulIdentifier", + "src": "9996:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10009:9:74", + "nodeType": "YulIdentifier", + "src": "10009:9:74" + }, + { + "kind": "number", + "nativeSrc": "10020:1:74", + "nodeType": "YulLiteral", + "src": "10020:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10005:3:74", + "nodeType": "YulIdentifier", + "src": "10005:3:74" + }, + "nativeSrc": "10005:17:74", + "nodeType": "YulFunctionCall", + "src": "10005:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_payable_to_t_address_payable_fromStack", + "nativeSrc": "9936:59:74", + "nodeType": "YulIdentifier", + "src": "9936:59:74" + }, + "nativeSrc": "9936:87:74", + "nodeType": "YulFunctionCall", + "src": "9936:87:74" + }, + "nativeSrc": "9936:87:74", + "nodeType": "YulExpressionStatement", + "src": "9936:87:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_payable__to_t_address_payable__fromStack_reversed", + "nativeSrc": "9776:254:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9862:9:74", + "nodeType": "YulTypedName", + "src": "9862:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "9874:6:74", + "nodeType": "YulTypedName", + "src": "9874:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "9885:4:74", + "nodeType": "YulTypedName", + "src": "9885:4:74", + "type": "" + } + ], + "src": "9776:254:74" + }, + { + "body": { + "nativeSrc": "10119:391:74", + "nodeType": "YulBlock", + "src": "10119:391:74", + "statements": [ + { + "body": { + "nativeSrc": "10165:83:74", + "nodeType": "YulBlock", + "src": "10165:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10167:77:74", + "nodeType": "YulIdentifier", + "src": "10167:77:74" + }, + "nativeSrc": "10167:79:74", + "nodeType": "YulFunctionCall", + "src": "10167:79:74" + }, + "nativeSrc": "10167:79:74", + "nodeType": "YulExpressionStatement", + "src": "10167:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10140:7:74", + "nodeType": "YulIdentifier", + "src": "10140:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10149:9:74", + "nodeType": "YulIdentifier", + "src": "10149:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10136:3:74", + "nodeType": "YulIdentifier", + "src": "10136:3:74" + }, + "nativeSrc": "10136:23:74", + "nodeType": "YulFunctionCall", + "src": "10136:23:74" + }, + { + "kind": "number", + "nativeSrc": "10161:2:74", + "nodeType": "YulLiteral", + "src": "10161:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10132:3:74", + "nodeType": "YulIdentifier", + "src": "10132:3:74" + }, + "nativeSrc": "10132:32:74", + "nodeType": "YulFunctionCall", + "src": "10132:32:74" + }, + "nativeSrc": "10129:119:74", + "nodeType": "YulIf", + "src": "10129:119:74" + }, + { + "nativeSrc": "10258:117:74", + "nodeType": "YulBlock", + "src": "10258:117:74", + "statements": [ + { + "nativeSrc": "10273:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10273:15:74", + "value": { + "kind": "number", + "nativeSrc": "10287:1:74", + "nodeType": "YulLiteral", + "src": "10287:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10277:6:74", + "nodeType": "YulTypedName", + "src": "10277:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10302:63:74", + "nodeType": "YulAssignment", + "src": "10302:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10337:9:74", + "nodeType": "YulIdentifier", + "src": "10337:9:74" + }, + { + "name": "offset", + "nativeSrc": "10348:6:74", + "nodeType": "YulIdentifier", + "src": "10348:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10333:3:74", + "nodeType": "YulIdentifier", + "src": "10333:3:74" + }, + "nativeSrc": "10333:22:74", + "nodeType": "YulFunctionCall", + "src": "10333:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10357:7:74", + "nodeType": "YulIdentifier", + "src": "10357:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "10312:20:74", + "nodeType": "YulIdentifier", + "src": "10312:20:74" + }, + "nativeSrc": "10312:53:74", + "nodeType": "YulFunctionCall", + "src": "10312:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10302:6:74", + "nodeType": "YulIdentifier", + "src": "10302:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "10385:118:74", + "nodeType": "YulBlock", + "src": "10385:118:74", + "statements": [ + { + "nativeSrc": "10400:16:74", + "nodeType": "YulVariableDeclaration", + "src": "10400:16:74", + "value": { + "kind": "number", + "nativeSrc": "10414:2:74", + "nodeType": "YulLiteral", + "src": "10414:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10404:6:74", + "nodeType": "YulTypedName", + "src": "10404:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10430:63:74", + "nodeType": "YulAssignment", + "src": "10430:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10465:9:74", + "nodeType": "YulIdentifier", + "src": "10465:9:74" + }, + { + "name": "offset", + "nativeSrc": "10476:6:74", + "nodeType": "YulIdentifier", + "src": "10476:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10461:3:74", + "nodeType": "YulIdentifier", + "src": "10461:3:74" + }, + "nativeSrc": "10461:22:74", + "nodeType": "YulFunctionCall", + "src": "10461:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10485:7:74", + "nodeType": "YulIdentifier", + "src": "10485:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "10440:20:74", + "nodeType": "YulIdentifier", + "src": "10440:20:74" + }, + "nativeSrc": "10440:53:74", + "nodeType": "YulFunctionCall", + "src": "10440:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "10430:6:74", + "nodeType": "YulIdentifier", + "src": "10430:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32", + "nativeSrc": "10036:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10081:9:74", + "nodeType": "YulTypedName", + "src": "10081:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10092:7:74", + "nodeType": "YulTypedName", + "src": "10092:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10104:6:74", + "nodeType": "YulTypedName", + "src": "10104:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "10112:6:74", + "nodeType": "YulTypedName", + "src": "10112:6:74", + "type": "" + } + ], + "src": "10036:474:74" + }, + { + "body": { + "nativeSrc": "10619:571:74", + "nodeType": "YulBlock", + "src": "10619:571:74", + "statements": [ + { + "body": { + "nativeSrc": "10665:83:74", + "nodeType": "YulBlock", + "src": "10665:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10667:77:74", + "nodeType": "YulIdentifier", + "src": "10667:77:74" + }, + "nativeSrc": "10667:79:74", + "nodeType": "YulFunctionCall", + "src": "10667:79:74" + }, + "nativeSrc": "10667:79:74", + "nodeType": "YulExpressionStatement", + "src": "10667:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10640:7:74", + "nodeType": "YulIdentifier", + "src": "10640:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10649:9:74", + "nodeType": "YulIdentifier", + "src": "10649:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10636:3:74", + "nodeType": "YulIdentifier", + "src": "10636:3:74" + }, + "nativeSrc": "10636:23:74", + "nodeType": "YulFunctionCall", + "src": "10636:23:74" + }, + { + "kind": "number", + "nativeSrc": "10661:2:74", + "nodeType": "YulLiteral", + "src": "10661:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10632:3:74", + "nodeType": "YulIdentifier", + "src": "10632:3:74" + }, + "nativeSrc": "10632:32:74", + "nodeType": "YulFunctionCall", + "src": "10632:32:74" + }, + "nativeSrc": "10629:119:74", + "nodeType": "YulIf", + "src": "10629:119:74" + }, + { + "nativeSrc": "10758:117:74", + "nodeType": "YulBlock", + "src": "10758:117:74", + "statements": [ + { + "nativeSrc": "10773:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10773:15:74", + "value": { + "kind": "number", + "nativeSrc": "10787:1:74", + "nodeType": "YulLiteral", + "src": "10787:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10777:6:74", + "nodeType": "YulTypedName", + "src": "10777:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10802:63:74", + "nodeType": "YulAssignment", + "src": "10802:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10837:9:74", + "nodeType": "YulIdentifier", + "src": "10837:9:74" + }, + { + "name": "offset", + "nativeSrc": "10848:6:74", + "nodeType": "YulIdentifier", + "src": "10848:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10833:3:74", + "nodeType": "YulIdentifier", + "src": "10833:3:74" + }, + "nativeSrc": "10833:22:74", + "nodeType": "YulFunctionCall", + "src": "10833:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10857:7:74", + "nodeType": "YulIdentifier", + "src": "10857:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "10812:20:74", + "nodeType": "YulIdentifier", + "src": "10812:20:74" + }, + "nativeSrc": "10812:53:74", + "nodeType": "YulFunctionCall", + "src": "10812:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10802:6:74", + "nodeType": "YulIdentifier", + "src": "10802:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "10885:298:74", + "nodeType": "YulBlock", + "src": "10885:298:74", + "statements": [ + { + "nativeSrc": "10900:46:74", + "nodeType": "YulVariableDeclaration", + "src": "10900:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10931:9:74", + "nodeType": "YulIdentifier", + "src": "10931:9:74" + }, + { + "kind": "number", + "nativeSrc": "10942:2:74", + "nodeType": "YulLiteral", + "src": "10942:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10927:3:74", + "nodeType": "YulIdentifier", + "src": "10927:3:74" + }, + "nativeSrc": "10927:18:74", + "nodeType": "YulFunctionCall", + "src": "10927:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "10914:12:74", + "nodeType": "YulIdentifier", + "src": "10914:12:74" + }, + "nativeSrc": "10914:32:74", + "nodeType": "YulFunctionCall", + "src": "10914:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10904:6:74", + "nodeType": "YulTypedName", + "src": "10904:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10993:83:74", + "nodeType": "YulBlock", + "src": "10993:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "10995:77:74", + "nodeType": "YulIdentifier", + "src": "10995:77:74" + }, + "nativeSrc": "10995:79:74", + "nodeType": "YulFunctionCall", + "src": "10995:79:74" + }, + "nativeSrc": "10995:79:74", + "nodeType": "YulExpressionStatement", + "src": "10995:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10965:6:74", + "nodeType": "YulIdentifier", + "src": "10965:6:74" + }, + { + "kind": "number", + "nativeSrc": "10973:18:74", + "nodeType": "YulLiteral", + "src": "10973:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "10962:2:74", + "nodeType": "YulIdentifier", + "src": "10962:2:74" + }, + "nativeSrc": "10962:30:74", + "nodeType": "YulFunctionCall", + "src": "10962:30:74" + }, + "nativeSrc": "10959:117:74", + "nodeType": "YulIf", + "src": "10959:117:74" + }, + { + "nativeSrc": "11090:83:74", + "nodeType": "YulAssignment", + "src": "11090:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11145:9:74", + "nodeType": "YulIdentifier", + "src": "11145:9:74" + }, + { + "name": "offset", + "nativeSrc": "11156:6:74", + "nodeType": "YulIdentifier", + "src": "11156:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11141:3:74", + "nodeType": "YulIdentifier", + "src": "11141:3:74" + }, + "nativeSrc": "11141:22:74", + "nodeType": "YulFunctionCall", + "src": "11141:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11165:7:74", + "nodeType": "YulIdentifier", + "src": "11165:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "11108:32:74", + "nodeType": "YulIdentifier", + "src": "11108:32:74" + }, + "nativeSrc": "11108:65:74", + "nodeType": "YulFunctionCall", + "src": "11108:65:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "11090:6:74", + "nodeType": "YulIdentifier", + "src": "11090:6:74" + }, + { + "name": "value2", + "nativeSrc": "11098:6:74", + "nodeType": "YulIdentifier", + "src": "11098:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptr", + "nativeSrc": "10516:674:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10573:9:74", + "nodeType": "YulTypedName", + "src": "10573:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10584:7:74", + "nodeType": "YulTypedName", + "src": "10584:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10596:6:74", + "nodeType": "YulTypedName", + "src": "10596:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "10604:6:74", + "nodeType": "YulTypedName", + "src": "10604:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "10612:6:74", + "nodeType": "YulTypedName", + "src": "10612:6:74", + "type": "" + } + ], + "src": "10516:674:74" + }, + { + "body": { + "nativeSrc": "11255:40:74", + "nodeType": "YulBlock", + "src": "11255:40:74", + "statements": [ + { + "nativeSrc": "11266:22:74", + "nodeType": "YulAssignment", + "src": "11266:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11282:5:74", + "nodeType": "YulIdentifier", + "src": "11282:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "11276:5:74", + "nodeType": "YulIdentifier", + "src": "11276:5:74" + }, + "nativeSrc": "11276:12:74", + "nodeType": "YulFunctionCall", + "src": "11276:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "11266:6:74", + "nodeType": "YulIdentifier", + "src": "11266:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "11196:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11238:5:74", + "nodeType": "YulTypedName", + "src": "11238:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "11248:6:74", + "nodeType": "YulTypedName", + "src": "11248:6:74", + "type": "" + } + ], + "src": "11196:99:74" + }, + { + "body": { + "nativeSrc": "11397:73:74", + "nodeType": "YulBlock", + "src": "11397:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11414:3:74", + "nodeType": "YulIdentifier", + "src": "11414:3:74" + }, + { + "name": "length", + "nativeSrc": "11419:6:74", + "nodeType": "YulIdentifier", + "src": "11419:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11407:6:74", + "nodeType": "YulIdentifier", + "src": "11407:6:74" + }, + "nativeSrc": "11407:19:74", + "nodeType": "YulFunctionCall", + "src": "11407:19:74" + }, + "nativeSrc": "11407:19:74", + "nodeType": "YulExpressionStatement", + "src": "11407:19:74" + }, + { + "nativeSrc": "11435:29:74", + "nodeType": "YulAssignment", + "src": "11435:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11454:3:74", + "nodeType": "YulIdentifier", + "src": "11454:3:74" + }, + { + "kind": "number", + "nativeSrc": "11459:4:74", + "nodeType": "YulLiteral", + "src": "11459:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11450:3:74", + "nodeType": "YulIdentifier", + "src": "11450:3:74" + }, + "nativeSrc": "11450:14:74", + "nodeType": "YulFunctionCall", + "src": "11450:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "11435:11:74", + "nodeType": "YulIdentifier", + "src": "11435:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "11301:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "11369:3:74", + "nodeType": "YulTypedName", + "src": "11369:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "11374:6:74", + "nodeType": "YulTypedName", + "src": "11374:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "11385:11:74", + "nodeType": "YulTypedName", + "src": "11385:11:74", + "type": "" + } + ], + "src": "11301:169:74" + }, + { + "body": { + "nativeSrc": "11568:285:74", + "nodeType": "YulBlock", + "src": "11568:285:74", + "statements": [ + { + "nativeSrc": "11578:53:74", + "nodeType": "YulVariableDeclaration", + "src": "11578:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11625:5:74", + "nodeType": "YulIdentifier", + "src": "11625:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "11592:32:74", + "nodeType": "YulIdentifier", + "src": "11592:32:74" + }, + "nativeSrc": "11592:39:74", + "nodeType": "YulFunctionCall", + "src": "11592:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "11582:6:74", + "nodeType": "YulTypedName", + "src": "11582:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "11640:78:74", + "nodeType": "YulAssignment", + "src": "11640:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11706:3:74", + "nodeType": "YulIdentifier", + "src": "11706:3:74" + }, + { + "name": "length", + "nativeSrc": "11711:6:74", + "nodeType": "YulIdentifier", + "src": "11711:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "11647:58:74", + "nodeType": "YulIdentifier", + "src": "11647:58:74" + }, + "nativeSrc": "11647:71:74", + "nodeType": "YulFunctionCall", + "src": "11647:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "11640:3:74", + "nodeType": "YulIdentifier", + "src": "11640:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11766:5:74", + "nodeType": "YulIdentifier", + "src": "11766:5:74" + }, + { + "kind": "number", + "nativeSrc": "11773:4:74", + "nodeType": "YulLiteral", + "src": "11773:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11762:3:74", + "nodeType": "YulIdentifier", + "src": "11762:3:74" + }, + "nativeSrc": "11762:16:74", + "nodeType": "YulFunctionCall", + "src": "11762:16:74" + }, + { + "name": "pos", + "nativeSrc": "11780:3:74", + "nodeType": "YulIdentifier", + "src": "11780:3:74" + }, + { + "name": "length", + "nativeSrc": "11785:6:74", + "nodeType": "YulIdentifier", + "src": "11785:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "11727:34:74", + "nodeType": "YulIdentifier", + "src": "11727:34:74" + }, + "nativeSrc": "11727:65:74", + "nodeType": "YulFunctionCall", + "src": "11727:65:74" + }, + "nativeSrc": "11727:65:74", + "nodeType": "YulExpressionStatement", + "src": "11727:65:74" + }, + { + "nativeSrc": "11801:46:74", + "nodeType": "YulAssignment", + "src": "11801:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11812:3:74", + "nodeType": "YulIdentifier", + "src": "11812:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "11839:6:74", + "nodeType": "YulIdentifier", + "src": "11839:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "11817:21:74", + "nodeType": "YulIdentifier", + "src": "11817:21:74" + }, + "nativeSrc": "11817:29:74", + "nodeType": "YulFunctionCall", + "src": "11817:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11808:3:74", + "nodeType": "YulIdentifier", + "src": "11808:3:74" + }, + "nativeSrc": "11808:39:74", + "nodeType": "YulFunctionCall", + "src": "11808:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "11801:3:74", + "nodeType": "YulIdentifier", + "src": "11801:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11476:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11549:5:74", + "nodeType": "YulTypedName", + "src": "11549:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "11556:3:74", + "nodeType": "YulTypedName", + "src": "11556:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "11564:3:74", + "nodeType": "YulTypedName", + "src": "11564:3:74", + "type": "" + } + ], + "src": "11476:377:74" + }, + { + "body": { + "nativeSrc": "11977:195:74", + "nodeType": "YulBlock", + "src": "11977:195:74", + "statements": [ + { + "nativeSrc": "11987:26:74", + "nodeType": "YulAssignment", + "src": "11987:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11999:9:74", + "nodeType": "YulIdentifier", + "src": "11999:9:74" + }, + { + "kind": "number", + "nativeSrc": "12010:2:74", + "nodeType": "YulLiteral", + "src": "12010:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11995:3:74", + "nodeType": "YulIdentifier", + "src": "11995:3:74" + }, + "nativeSrc": "11995:18:74", + "nodeType": "YulFunctionCall", + "src": "11995:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11987:4:74", + "nodeType": "YulIdentifier", + "src": "11987:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12034:9:74", + "nodeType": "YulIdentifier", + "src": "12034:9:74" + }, + { + "kind": "number", + "nativeSrc": "12045:1:74", + "nodeType": "YulLiteral", + "src": "12045:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12030:3:74", + "nodeType": "YulIdentifier", + "src": "12030:3:74" + }, + "nativeSrc": "12030:17:74", + "nodeType": "YulFunctionCall", + "src": "12030:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "12053:4:74", + "nodeType": "YulIdentifier", + "src": "12053:4:74" + }, + { + "name": "headStart", + "nativeSrc": "12059:9:74", + "nodeType": "YulIdentifier", + "src": "12059:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12049:3:74", + "nodeType": "YulIdentifier", + "src": "12049:3:74" + }, + "nativeSrc": "12049:20:74", + "nodeType": "YulFunctionCall", + "src": "12049:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12023:6:74", + "nodeType": "YulIdentifier", + "src": "12023:6:74" + }, + "nativeSrc": "12023:47:74", + "nodeType": "YulFunctionCall", + "src": "12023:47:74" + }, + "nativeSrc": "12023:47:74", + "nodeType": "YulExpressionStatement", + "src": "12023:47:74" + }, + { + "nativeSrc": "12079:86:74", + "nodeType": "YulAssignment", + "src": "12079:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12151:6:74", + "nodeType": "YulIdentifier", + "src": "12151:6:74" + }, + { + "name": "tail", + "nativeSrc": "12160:4:74", + "nodeType": "YulIdentifier", + "src": "12160:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "12087:63:74", + "nodeType": "YulIdentifier", + "src": "12087:63:74" + }, + "nativeSrc": "12087:78:74", + "nodeType": "YulFunctionCall", + "src": "12087:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12079:4:74", + "nodeType": "YulIdentifier", + "src": "12079:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "11859:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11949:9:74", + "nodeType": "YulTypedName", + "src": "11949:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "11961:6:74", + "nodeType": "YulTypedName", + "src": "11961:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11972:4:74", + "nodeType": "YulTypedName", + "src": "11972:4:74", + "type": "" + } + ], + "src": "11859:313:74" + }, + { + "body": { + "nativeSrc": "12294:193:74", + "nodeType": "YulBlock", + "src": "12294:193:74", + "statements": [ + { + "nativeSrc": "12304:26:74", + "nodeType": "YulAssignment", + "src": "12304:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12316:9:74", + "nodeType": "YulIdentifier", + "src": "12316:9:74" + }, + { + "kind": "number", + "nativeSrc": "12327:2:74", + "nodeType": "YulLiteral", + "src": "12327:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12312:3:74", + "nodeType": "YulIdentifier", + "src": "12312:3:74" + }, + "nativeSrc": "12312:18:74", + "nodeType": "YulFunctionCall", + "src": "12312:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12304:4:74", + "nodeType": "YulIdentifier", + "src": "12304:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12351:9:74", + "nodeType": "YulIdentifier", + "src": "12351:9:74" + }, + { + "kind": "number", + "nativeSrc": "12362:1:74", + "nodeType": "YulLiteral", + "src": "12362:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12347:3:74", + "nodeType": "YulIdentifier", + "src": "12347:3:74" + }, + "nativeSrc": "12347:17:74", + "nodeType": "YulFunctionCall", + "src": "12347:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "12370:4:74", + "nodeType": "YulIdentifier", + "src": "12370:4:74" + }, + { + "name": "headStart", + "nativeSrc": "12376:9:74", + "nodeType": "YulIdentifier", + "src": "12376:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12366:3:74", + "nodeType": "YulIdentifier", + "src": "12366:3:74" + }, + "nativeSrc": "12366:20:74", + "nodeType": "YulFunctionCall", + "src": "12366:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12340:6:74", + "nodeType": "YulIdentifier", + "src": "12340:6:74" + }, + "nativeSrc": "12340:47:74", + "nodeType": "YulFunctionCall", + "src": "12340:47:74" + }, + "nativeSrc": "12340:47:74", + "nodeType": "YulExpressionStatement", + "src": "12340:47:74" + }, + { + "nativeSrc": "12396:84:74", + "nodeType": "YulAssignment", + "src": "12396:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12466:6:74", + "nodeType": "YulIdentifier", + "src": "12466:6:74" + }, + { + "name": "tail", + "nativeSrc": "12475:4:74", + "nodeType": "YulIdentifier", + "src": "12475:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "12404:61:74", + "nodeType": "YulIdentifier", + "src": "12404:61:74" + }, + "nativeSrc": "12404:76:74", + "nodeType": "YulFunctionCall", + "src": "12404:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12396:4:74", + "nodeType": "YulIdentifier", + "src": "12396:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "12178:309:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12266:9:74", + "nodeType": "YulTypedName", + "src": "12266:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12278:6:74", + "nodeType": "YulTypedName", + "src": "12278:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12289:4:74", + "nodeType": "YulTypedName", + "src": "12289:4:74", + "type": "" + } + ], + "src": "12178:309:74" + }, + { + "body": { + "nativeSrc": "12612:698:74", + "nodeType": "YulBlock", + "src": "12612:698:74", + "statements": [ + { + "body": { + "nativeSrc": "12658:83:74", + "nodeType": "YulBlock", + "src": "12658:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "12660:77:74", + "nodeType": "YulIdentifier", + "src": "12660:77:74" + }, + "nativeSrc": "12660:79:74", + "nodeType": "YulFunctionCall", + "src": "12660:79:74" + }, + "nativeSrc": "12660:79:74", + "nodeType": "YulExpressionStatement", + "src": "12660:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "12633:7:74", + "nodeType": "YulIdentifier", + "src": "12633:7:74" + }, + { + "name": "headStart", + "nativeSrc": "12642:9:74", + "nodeType": "YulIdentifier", + "src": "12642:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12629:3:74", + "nodeType": "YulIdentifier", + "src": "12629:3:74" + }, + "nativeSrc": "12629:23:74", + "nodeType": "YulFunctionCall", + "src": "12629:23:74" + }, + { + "kind": "number", + "nativeSrc": "12654:2:74", + "nodeType": "YulLiteral", + "src": "12654:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "12625:3:74", + "nodeType": "YulIdentifier", + "src": "12625:3:74" + }, + "nativeSrc": "12625:32:74", + "nodeType": "YulFunctionCall", + "src": "12625:32:74" + }, + "nativeSrc": "12622:119:74", + "nodeType": "YulIf", + "src": "12622:119:74" + }, + { + "nativeSrc": "12751:117:74", + "nodeType": "YulBlock", + "src": "12751:117:74", + "statements": [ + { + "nativeSrc": "12766:15:74", + "nodeType": "YulVariableDeclaration", + "src": "12766:15:74", + "value": { + "kind": "number", + "nativeSrc": "12780:1:74", + "nodeType": "YulLiteral", + "src": "12780:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "12770:6:74", + "nodeType": "YulTypedName", + "src": "12770:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12795:63:74", + "nodeType": "YulAssignment", + "src": "12795:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12830:9:74", + "nodeType": "YulIdentifier", + "src": "12830:9:74" + }, + { + "name": "offset", + "nativeSrc": "12841:6:74", + "nodeType": "YulIdentifier", + "src": "12841:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12826:3:74", + "nodeType": "YulIdentifier", + "src": "12826:3:74" + }, + "nativeSrc": "12826:22:74", + "nodeType": "YulFunctionCall", + "src": "12826:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12850:7:74", + "nodeType": "YulIdentifier", + "src": "12850:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "12805:20:74", + "nodeType": "YulIdentifier", + "src": "12805:20:74" + }, + "nativeSrc": "12805:53:74", + "nodeType": "YulFunctionCall", + "src": "12805:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "12795:6:74", + "nodeType": "YulIdentifier", + "src": "12795:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "12878:118:74", + "nodeType": "YulBlock", + "src": "12878:118:74", + "statements": [ + { + "nativeSrc": "12893:16:74", + "nodeType": "YulVariableDeclaration", + "src": "12893:16:74", + "value": { + "kind": "number", + "nativeSrc": "12907:2:74", + "nodeType": "YulLiteral", + "src": "12907:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "12897:6:74", + "nodeType": "YulTypedName", + "src": "12897:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12923:63:74", + "nodeType": "YulAssignment", + "src": "12923:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12958:9:74", + "nodeType": "YulIdentifier", + "src": "12958:9:74" + }, + { + "name": "offset", + "nativeSrc": "12969:6:74", + "nodeType": "YulIdentifier", + "src": "12969:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12954:3:74", + "nodeType": "YulIdentifier", + "src": "12954:3:74" + }, + "nativeSrc": "12954:22:74", + "nodeType": "YulFunctionCall", + "src": "12954:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12978:7:74", + "nodeType": "YulIdentifier", + "src": "12978:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "12933:20:74", + "nodeType": "YulIdentifier", + "src": "12933:20:74" + }, + "nativeSrc": "12933:53:74", + "nodeType": "YulFunctionCall", + "src": "12933:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "12923:6:74", + "nodeType": "YulIdentifier", + "src": "12923:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "13006:297:74", + "nodeType": "YulBlock", + "src": "13006:297:74", + "statements": [ + { + "nativeSrc": "13021:46:74", + "nodeType": "YulVariableDeclaration", + "src": "13021:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13052:9:74", + "nodeType": "YulIdentifier", + "src": "13052:9:74" + }, + { + "kind": "number", + "nativeSrc": "13063:2:74", + "nodeType": "YulLiteral", + "src": "13063:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13048:3:74", + "nodeType": "YulIdentifier", + "src": "13048:3:74" + }, + "nativeSrc": "13048:18:74", + "nodeType": "YulFunctionCall", + "src": "13048:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "13035:12:74", + "nodeType": "YulIdentifier", + "src": "13035:12:74" + }, + "nativeSrc": "13035:32:74", + "nodeType": "YulFunctionCall", + "src": "13035:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "13025:6:74", + "nodeType": "YulTypedName", + "src": "13025:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13114:83:74", + "nodeType": "YulBlock", + "src": "13114:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "13116:77:74", + "nodeType": "YulIdentifier", + "src": "13116:77:74" + }, + "nativeSrc": "13116:79:74", + "nodeType": "YulFunctionCall", + "src": "13116:79:74" + }, + "nativeSrc": "13116:79:74", + "nodeType": "YulExpressionStatement", + "src": "13116:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "13086:6:74", + "nodeType": "YulIdentifier", + "src": "13086:6:74" + }, + { + "kind": "number", + "nativeSrc": "13094:18:74", + "nodeType": "YulLiteral", + "src": "13094:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "13083:2:74", + "nodeType": "YulIdentifier", + "src": "13083:2:74" + }, + "nativeSrc": "13083:30:74", + "nodeType": "YulFunctionCall", + "src": "13083:30:74" + }, + "nativeSrc": "13080:117:74", + "nodeType": "YulIf", + "src": "13080:117:74" + }, + { + "nativeSrc": "13211:82:74", + "nodeType": "YulAssignment", + "src": "13211:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13265:9:74", + "nodeType": "YulIdentifier", + "src": "13265:9:74" + }, + { + "name": "offset", + "nativeSrc": "13276:6:74", + "nodeType": "YulIdentifier", + "src": "13276:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13261:3:74", + "nodeType": "YulIdentifier", + "src": "13261:3:74" + }, + "nativeSrc": "13261:22:74", + "nodeType": "YulFunctionCall", + "src": "13261:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "13285:7:74", + "nodeType": "YulIdentifier", + "src": "13285:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "13229:31:74", + "nodeType": "YulIdentifier", + "src": "13229:31:74" + }, + "nativeSrc": "13229:64:74", + "nodeType": "YulFunctionCall", + "src": "13229:64:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "13211:6:74", + "nodeType": "YulIdentifier", + "src": "13211:6:74" + }, + { + "name": "value3", + "nativeSrc": "13219:6:74", + "nodeType": "YulIdentifier", + "src": "13219:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256t_bytes_calldata_ptr", + "nativeSrc": "12493:817:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12558:9:74", + "nodeType": "YulTypedName", + "src": "12558:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "12569:7:74", + "nodeType": "YulTypedName", + "src": "12569:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "12581:6:74", + "nodeType": "YulTypedName", + "src": "12581:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12589:6:74", + "nodeType": "YulTypedName", + "src": "12589:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "12597:6:74", + "nodeType": "YulTypedName", + "src": "12597:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "12605:6:74", + "nodeType": "YulTypedName", + "src": "12605:6:74", + "type": "" + } + ], + "src": "12493:817:74" + }, + { + "body": { + "nativeSrc": "13405:28:74", + "nodeType": "YulBlock", + "src": "13405:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13422:1:74", + "nodeType": "YulLiteral", + "src": "13422:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13425:1:74", + "nodeType": "YulLiteral", + "src": "13425:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13415:6:74", + "nodeType": "YulIdentifier", + "src": "13415:6:74" + }, + "nativeSrc": "13415:12:74", + "nodeType": "YulFunctionCall", + "src": "13415:12:74" + }, + "nativeSrc": "13415:12:74", + "nodeType": "YulExpressionStatement", + "src": "13415:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "13316:117:74", + "nodeType": "YulFunctionDefinition", + "src": "13316:117:74" + }, + { + "body": { + "nativeSrc": "13467:152:74", + "nodeType": "YulBlock", + "src": "13467:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13484:1:74", + "nodeType": "YulLiteral", + "src": "13484:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13487:77:74", + "nodeType": "YulLiteral", + "src": "13487:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13477:6:74", + "nodeType": "YulIdentifier", + "src": "13477:6:74" + }, + "nativeSrc": "13477:88:74", + "nodeType": "YulFunctionCall", + "src": "13477:88:74" + }, + "nativeSrc": "13477:88:74", + "nodeType": "YulExpressionStatement", + "src": "13477:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13581:1:74", + "nodeType": "YulLiteral", + "src": "13581:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "13584:4:74", + "nodeType": "YulLiteral", + "src": "13584:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13574:6:74", + "nodeType": "YulIdentifier", + "src": "13574:6:74" + }, + "nativeSrc": "13574:15:74", + "nodeType": "YulFunctionCall", + "src": "13574:15:74" + }, + "nativeSrc": "13574:15:74", + "nodeType": "YulExpressionStatement", + "src": "13574:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13605:1:74", + "nodeType": "YulLiteral", + "src": "13605:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13608:4:74", + "nodeType": "YulLiteral", + "src": "13608:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13598:6:74", + "nodeType": "YulIdentifier", + "src": "13598:6:74" + }, + "nativeSrc": "13598:15:74", + "nodeType": "YulFunctionCall", + "src": "13598:15:74" + }, + "nativeSrc": "13598:15:74", + "nodeType": "YulExpressionStatement", + "src": "13598:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "13439:180:74", + "nodeType": "YulFunctionDefinition", + "src": "13439:180:74" + }, + { + "body": { + "nativeSrc": "13668:238:74", + "nodeType": "YulBlock", + "src": "13668:238:74", + "statements": [ + { + "nativeSrc": "13678:58:74", + "nodeType": "YulVariableDeclaration", + "src": "13678:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13700:6:74", + "nodeType": "YulIdentifier", + "src": "13700:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "13730:4:74", + "nodeType": "YulIdentifier", + "src": "13730:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "13708:21:74", + "nodeType": "YulIdentifier", + "src": "13708:21:74" + }, + "nativeSrc": "13708:27:74", + "nodeType": "YulFunctionCall", + "src": "13708:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13696:3:74", + "nodeType": "YulIdentifier", + "src": "13696:3:74" + }, + "nativeSrc": "13696:40:74", + "nodeType": "YulFunctionCall", + "src": "13696:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "13682:10:74", + "nodeType": "YulTypedName", + "src": "13682:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13847:22:74", + "nodeType": "YulBlock", + "src": "13847:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "13849:16:74", + "nodeType": "YulIdentifier", + "src": "13849:16:74" + }, + "nativeSrc": "13849:18:74", + "nodeType": "YulFunctionCall", + "src": "13849:18:74" + }, + "nativeSrc": "13849:18:74", + "nodeType": "YulExpressionStatement", + "src": "13849:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "13790:10:74", + "nodeType": "YulIdentifier", + "src": "13790:10:74" + }, + { + "kind": "number", + "nativeSrc": "13802:18:74", + "nodeType": "YulLiteral", + "src": "13802:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "13787:2:74", + "nodeType": "YulIdentifier", + "src": "13787:2:74" + }, + "nativeSrc": "13787:34:74", + "nodeType": "YulFunctionCall", + "src": "13787:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "13826:10:74", + "nodeType": "YulIdentifier", + "src": "13826:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "13838:6:74", + "nodeType": "YulIdentifier", + "src": "13838:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "13823:2:74", + "nodeType": "YulIdentifier", + "src": "13823:2:74" + }, + "nativeSrc": "13823:22:74", + "nodeType": "YulFunctionCall", + "src": "13823:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "13784:2:74", + "nodeType": "YulIdentifier", + "src": "13784:2:74" + }, + "nativeSrc": "13784:62:74", + "nodeType": "YulFunctionCall", + "src": "13784:62:74" + }, + "nativeSrc": "13781:88:74", + "nodeType": "YulIf", + "src": "13781:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13885:2:74", + "nodeType": "YulLiteral", + "src": "13885:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "13889:10:74", + "nodeType": "YulIdentifier", + "src": "13889:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13878:6:74", + "nodeType": "YulIdentifier", + "src": "13878:6:74" + }, + "nativeSrc": "13878:22:74", + "nodeType": "YulFunctionCall", + "src": "13878:22:74" + }, + "nativeSrc": "13878:22:74", + "nodeType": "YulExpressionStatement", + "src": "13878:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "13625:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "13654:6:74", + "nodeType": "YulTypedName", + "src": "13654:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "13662:4:74", + "nodeType": "YulTypedName", + "src": "13662:4:74", + "type": "" + } + ], + "src": "13625:281:74" + }, + { + "body": { + "nativeSrc": "13953:88:74", + "nodeType": "YulBlock", + "src": "13953:88:74", + "statements": [ + { + "nativeSrc": "13963:30:74", + "nodeType": "YulAssignment", + "src": "13963:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "13973:18:74", + "nodeType": "YulIdentifier", + "src": "13973:18:74" + }, + "nativeSrc": "13973:20:74", + "nodeType": "YulFunctionCall", + "src": "13973:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "13963:6:74", + "nodeType": "YulIdentifier", + "src": "13963:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14022:6:74", + "nodeType": "YulIdentifier", + "src": "14022:6:74" + }, + { + "name": "size", + "nativeSrc": "14030:4:74", + "nodeType": "YulIdentifier", + "src": "14030:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "14002:19:74", + "nodeType": "YulIdentifier", + "src": "14002:19:74" + }, + "nativeSrc": "14002:33:74", + "nodeType": "YulFunctionCall", + "src": "14002:33:74" + }, + "nativeSrc": "14002:33:74", + "nodeType": "YulExpressionStatement", + "src": "14002:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "13912:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "13937:4:74", + "nodeType": "YulTypedName", + "src": "13937:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "13946:6:74", + "nodeType": "YulTypedName", + "src": "13946:6:74", + "type": "" + } + ], + "src": "13912:129:74" + }, + { + "body": { + "nativeSrc": "14113:241:74", + "nodeType": "YulBlock", + "src": "14113:241:74", + "statements": [ + { + "body": { + "nativeSrc": "14218:22:74", + "nodeType": "YulBlock", + "src": "14218:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "14220:16:74", + "nodeType": "YulIdentifier", + "src": "14220:16:74" + }, + "nativeSrc": "14220:18:74", + "nodeType": "YulFunctionCall", + "src": "14220:18:74" + }, + "nativeSrc": "14220:18:74", + "nodeType": "YulExpressionStatement", + "src": "14220:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "14190:6:74", + "nodeType": "YulIdentifier", + "src": "14190:6:74" + }, + { + "kind": "number", + "nativeSrc": "14198:18:74", + "nodeType": "YulLiteral", + "src": "14198:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14187:2:74", + "nodeType": "YulIdentifier", + "src": "14187:2:74" + }, + "nativeSrc": "14187:30:74", + "nodeType": "YulFunctionCall", + "src": "14187:30:74" + }, + "nativeSrc": "14184:56:74", + "nodeType": "YulIf", + "src": "14184:56:74" + }, + { + "nativeSrc": "14250:37:74", + "nodeType": "YulAssignment", + "src": "14250:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "14280:6:74", + "nodeType": "YulIdentifier", + "src": "14280:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "14258:21:74", + "nodeType": "YulIdentifier", + "src": "14258:21:74" + }, + "nativeSrc": "14258:29:74", + "nodeType": "YulFunctionCall", + "src": "14258:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "14250:4:74", + "nodeType": "YulIdentifier", + "src": "14250:4:74" + } + ] + }, + { + "nativeSrc": "14324:23:74", + "nodeType": "YulAssignment", + "src": "14324:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "14336:4:74", + "nodeType": "YulIdentifier", + "src": "14336:4:74" + }, + { + "kind": "number", + "nativeSrc": "14342:4:74", + "nodeType": "YulLiteral", + "src": "14342:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14332:3:74", + "nodeType": "YulIdentifier", + "src": "14332:3:74" + }, + "nativeSrc": "14332:15:74", + "nodeType": "YulFunctionCall", + "src": "14332:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "14324:4:74", + "nodeType": "YulIdentifier", + "src": "14324:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "14047:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "14097:6:74", + "nodeType": "YulTypedName", + "src": "14097:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "14108:4:74", + "nodeType": "YulTypedName", + "src": "14108:4:74", + "type": "" + } + ], + "src": "14047:307:74" + }, + { + "body": { + "nativeSrc": "14424:84:74", + "nodeType": "YulBlock", + "src": "14424:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "14448:3:74", + "nodeType": "YulIdentifier", + "src": "14448:3:74" + }, + { + "name": "src", + "nativeSrc": "14453:3:74", + "nodeType": "YulIdentifier", + "src": "14453:3:74" + }, + { + "name": "length", + "nativeSrc": "14458:6:74", + "nodeType": "YulIdentifier", + "src": "14458:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "14435:12:74", + "nodeType": "YulIdentifier", + "src": "14435:12:74" + }, + "nativeSrc": "14435:30:74", + "nodeType": "YulFunctionCall", + "src": "14435:30:74" + }, + "nativeSrc": "14435:30:74", + "nodeType": "YulExpressionStatement", + "src": "14435:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "14485:3:74", + "nodeType": "YulIdentifier", + "src": "14485:3:74" + }, + { + "name": "length", + "nativeSrc": "14490:6:74", + "nodeType": "YulIdentifier", + "src": "14490:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14481:3:74", + "nodeType": "YulIdentifier", + "src": "14481:3:74" + }, + "nativeSrc": "14481:16:74", + "nodeType": "YulFunctionCall", + "src": "14481:16:74" + }, + { + "kind": "number", + "nativeSrc": "14499:1:74", + "nodeType": "YulLiteral", + "src": "14499:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14474:6:74", + "nodeType": "YulIdentifier", + "src": "14474:6:74" + }, + "nativeSrc": "14474:27:74", + "nodeType": "YulFunctionCall", + "src": "14474:27:74" + }, + "nativeSrc": "14474:27:74", + "nodeType": "YulExpressionStatement", + "src": "14474:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "14360:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "14406:3:74", + "nodeType": "YulTypedName", + "src": "14406:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "14411:3:74", + "nodeType": "YulTypedName", + "src": "14411:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "14416:6:74", + "nodeType": "YulTypedName", + "src": "14416:6:74", + "type": "" + } + ], + "src": "14360:148:74" + }, + { + "body": { + "nativeSrc": "14597:340:74", + "nodeType": "YulBlock", + "src": "14597:340:74", + "statements": [ + { + "nativeSrc": "14607:74:74", + "nodeType": "YulAssignment", + "src": "14607:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "14673:6:74", + "nodeType": "YulIdentifier", + "src": "14673:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "14632:40:74", + "nodeType": "YulIdentifier", + "src": "14632:40:74" + }, + "nativeSrc": "14632:48:74", + "nodeType": "YulFunctionCall", + "src": "14632:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "14616:15:74", + "nodeType": "YulIdentifier", + "src": "14616:15:74" + }, + "nativeSrc": "14616:65:74", + "nodeType": "YulFunctionCall", + "src": "14616:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "14607:5:74", + "nodeType": "YulIdentifier", + "src": "14607:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "14697:5:74", + "nodeType": "YulIdentifier", + "src": "14697:5:74" + }, + { + "name": "length", + "nativeSrc": "14704:6:74", + "nodeType": "YulIdentifier", + "src": "14704:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14690:6:74", + "nodeType": "YulIdentifier", + "src": "14690:6:74" + }, + "nativeSrc": "14690:21:74", + "nodeType": "YulFunctionCall", + "src": "14690:21:74" + }, + "nativeSrc": "14690:21:74", + "nodeType": "YulExpressionStatement", + "src": "14690:21:74" + }, + { + "nativeSrc": "14720:27:74", + "nodeType": "YulVariableDeclaration", + "src": "14720:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "14735:5:74", + "nodeType": "YulIdentifier", + "src": "14735:5:74" + }, + { + "kind": "number", + "nativeSrc": "14742:4:74", + "nodeType": "YulLiteral", + "src": "14742:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14731:3:74", + "nodeType": "YulIdentifier", + "src": "14731:3:74" + }, + "nativeSrc": "14731:16:74", + "nodeType": "YulFunctionCall", + "src": "14731:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "14724:3:74", + "nodeType": "YulTypedName", + "src": "14724:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "14785:83:74", + "nodeType": "YulBlock", + "src": "14785:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "14787:77:74", + "nodeType": "YulIdentifier", + "src": "14787:77:74" + }, + "nativeSrc": "14787:79:74", + "nodeType": "YulFunctionCall", + "src": "14787:79:74" + }, + "nativeSrc": "14787:79:74", + "nodeType": "YulExpressionStatement", + "src": "14787:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "14766:3:74", + "nodeType": "YulIdentifier", + "src": "14766:3:74" + }, + { + "name": "length", + "nativeSrc": "14771:6:74", + "nodeType": "YulIdentifier", + "src": "14771:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14762:3:74", + "nodeType": "YulIdentifier", + "src": "14762:3:74" + }, + "nativeSrc": "14762:16:74", + "nodeType": "YulFunctionCall", + "src": "14762:16:74" + }, + { + "name": "end", + "nativeSrc": "14780:3:74", + "nodeType": "YulIdentifier", + "src": "14780:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14759:2:74", + "nodeType": "YulIdentifier", + "src": "14759:2:74" + }, + "nativeSrc": "14759:25:74", + "nodeType": "YulFunctionCall", + "src": "14759:25:74" + }, + "nativeSrc": "14756:112:74", + "nodeType": "YulIf", + "src": "14756:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "14914:3:74", + "nodeType": "YulIdentifier", + "src": "14914:3:74" + }, + { + "name": "dst", + "nativeSrc": "14919:3:74", + "nodeType": "YulIdentifier", + "src": "14919:3:74" + }, + { + "name": "length", + "nativeSrc": "14924:6:74", + "nodeType": "YulIdentifier", + "src": "14924:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "14877:36:74", + "nodeType": "YulIdentifier", + "src": "14877:36:74" + }, + "nativeSrc": "14877:54:74", + "nodeType": "YulFunctionCall", + "src": "14877:54:74" + }, + "nativeSrc": "14877:54:74", + "nodeType": "YulExpressionStatement", + "src": "14877:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "14514:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "14570:3:74", + "nodeType": "YulTypedName", + "src": "14570:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "14575:6:74", + "nodeType": "YulTypedName", + "src": "14575:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "14583:3:74", + "nodeType": "YulTypedName", + "src": "14583:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "14591:5:74", + "nodeType": "YulTypedName", + "src": "14591:5:74", + "type": "" + } + ], + "src": "14514:423:74" + }, + { + "body": { + "nativeSrc": "15017:277:74", + "nodeType": "YulBlock", + "src": "15017:277:74", + "statements": [ + { + "body": { + "nativeSrc": "15066:83:74", + "nodeType": "YulBlock", + "src": "15066:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "15068:77:74", + "nodeType": "YulIdentifier", + "src": "15068:77:74" + }, + "nativeSrc": "15068:79:74", + "nodeType": "YulFunctionCall", + "src": "15068:79:74" + }, + "nativeSrc": "15068:79:74", + "nodeType": "YulExpressionStatement", + "src": "15068:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15045:6:74", + "nodeType": "YulIdentifier", + "src": "15045:6:74" + }, + { + "kind": "number", + "nativeSrc": "15053:4:74", + "nodeType": "YulLiteral", + "src": "15053:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15041:3:74", + "nodeType": "YulIdentifier", + "src": "15041:3:74" + }, + "nativeSrc": "15041:17:74", + "nodeType": "YulFunctionCall", + "src": "15041:17:74" + }, + { + "name": "end", + "nativeSrc": "15060:3:74", + "nodeType": "YulIdentifier", + "src": "15060:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "15037:3:74", + "nodeType": "YulIdentifier", + "src": "15037:3:74" + }, + "nativeSrc": "15037:27:74", + "nodeType": "YulFunctionCall", + "src": "15037:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "15030:6:74", + "nodeType": "YulIdentifier", + "src": "15030:6:74" + }, + "nativeSrc": "15030:35:74", + "nodeType": "YulFunctionCall", + "src": "15030:35:74" + }, + "nativeSrc": "15027:122:74", + "nodeType": "YulIf", + "src": "15027:122:74" + }, + { + "nativeSrc": "15158:34:74", + "nodeType": "YulVariableDeclaration", + "src": "15158:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15185:6:74", + "nodeType": "YulIdentifier", + "src": "15185:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "15172:12:74", + "nodeType": "YulIdentifier", + "src": "15172:12:74" + }, + "nativeSrc": "15172:20:74", + "nodeType": "YulFunctionCall", + "src": "15172:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "15162:6:74", + "nodeType": "YulTypedName", + "src": "15162:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15201:87:74", + "nodeType": "YulAssignment", + "src": "15201:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15261:6:74", + "nodeType": "YulIdentifier", + "src": "15261:6:74" + }, + { + "kind": "number", + "nativeSrc": "15269:4:74", + "nodeType": "YulLiteral", + "src": "15269:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15257:3:74", + "nodeType": "YulIdentifier", + "src": "15257:3:74" + }, + "nativeSrc": "15257:17:74", + "nodeType": "YulFunctionCall", + "src": "15257:17:74" + }, + { + "name": "length", + "nativeSrc": "15276:6:74", + "nodeType": "YulIdentifier", + "src": "15276:6:74" + }, + { + "name": "end", + "nativeSrc": "15284:3:74", + "nodeType": "YulIdentifier", + "src": "15284:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "15210:46:74", + "nodeType": "YulIdentifier", + "src": "15210:46:74" + }, + "nativeSrc": "15210:78:74", + "nodeType": "YulFunctionCall", + "src": "15210:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "15201:5:74", + "nodeType": "YulIdentifier", + "src": "15201:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "14956:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "14995:6:74", + "nodeType": "YulTypedName", + "src": "14995:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "15003:3:74", + "nodeType": "YulTypedName", + "src": "15003:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "15011:5:74", + "nodeType": "YulTypedName", + "src": "15011:5:74", + "type": "" + } + ], + "src": "14956:338:74" + }, + { + "body": { + "nativeSrc": "15409:688:74", + "nodeType": "YulBlock", + "src": "15409:688:74", + "statements": [ + { + "body": { + "nativeSrc": "15455:83:74", + "nodeType": "YulBlock", + "src": "15455:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "15457:77:74", + "nodeType": "YulIdentifier", + "src": "15457:77:74" + }, + "nativeSrc": "15457:79:74", + "nodeType": "YulFunctionCall", + "src": "15457:79:74" + }, + "nativeSrc": "15457:79:74", + "nodeType": "YulExpressionStatement", + "src": "15457:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "15430:7:74", + "nodeType": "YulIdentifier", + "src": "15430:7:74" + }, + { + "name": "headStart", + "nativeSrc": "15439:9:74", + "nodeType": "YulIdentifier", + "src": "15439:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15426:3:74", + "nodeType": "YulIdentifier", + "src": "15426:3:74" + }, + "nativeSrc": "15426:23:74", + "nodeType": "YulFunctionCall", + "src": "15426:23:74" + }, + { + "kind": "number", + "nativeSrc": "15451:2:74", + "nodeType": "YulLiteral", + "src": "15451:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "15422:3:74", + "nodeType": "YulIdentifier", + "src": "15422:3:74" + }, + "nativeSrc": "15422:32:74", + "nodeType": "YulFunctionCall", + "src": "15422:32:74" + }, + "nativeSrc": "15419:119:74", + "nodeType": "YulIf", + "src": "15419:119:74" + }, + { + "nativeSrc": "15548:117:74", + "nodeType": "YulBlock", + "src": "15548:117:74", + "statements": [ + { + "nativeSrc": "15563:15:74", + "nodeType": "YulVariableDeclaration", + "src": "15563:15:74", + "value": { + "kind": "number", + "nativeSrc": "15577:1:74", + "nodeType": "YulLiteral", + "src": "15577:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15567:6:74", + "nodeType": "YulTypedName", + "src": "15567:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15592:63:74", + "nodeType": "YulAssignment", + "src": "15592:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15627:9:74", + "nodeType": "YulIdentifier", + "src": "15627:9:74" + }, + { + "name": "offset", + "nativeSrc": "15638:6:74", + "nodeType": "YulIdentifier", + "src": "15638:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15623:3:74", + "nodeType": "YulIdentifier", + "src": "15623:3:74" + }, + "nativeSrc": "15623:22:74", + "nodeType": "YulFunctionCall", + "src": "15623:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "15647:7:74", + "nodeType": "YulIdentifier", + "src": "15647:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "15602:20:74", + "nodeType": "YulIdentifier", + "src": "15602:20:74" + }, + "nativeSrc": "15602:53:74", + "nodeType": "YulFunctionCall", + "src": "15602:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "15592:6:74", + "nodeType": "YulIdentifier", + "src": "15592:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "15675:118:74", + "nodeType": "YulBlock", + "src": "15675:118:74", + "statements": [ + { + "nativeSrc": "15690:16:74", + "nodeType": "YulVariableDeclaration", + "src": "15690:16:74", + "value": { + "kind": "number", + "nativeSrc": "15704:2:74", + "nodeType": "YulLiteral", + "src": "15704:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15694:6:74", + "nodeType": "YulTypedName", + "src": "15694:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15720:63:74", + "nodeType": "YulAssignment", + "src": "15720:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15755:9:74", + "nodeType": "YulIdentifier", + "src": "15755:9:74" + }, + { + "name": "offset", + "nativeSrc": "15766:6:74", + "nodeType": "YulIdentifier", + "src": "15766:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15751:3:74", + "nodeType": "YulIdentifier", + "src": "15751:3:74" + }, + "nativeSrc": "15751:22:74", + "nodeType": "YulFunctionCall", + "src": "15751:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "15775:7:74", + "nodeType": "YulIdentifier", + "src": "15775:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "15730:20:74", + "nodeType": "YulIdentifier", + "src": "15730:20:74" + }, + "nativeSrc": "15730:53:74", + "nodeType": "YulFunctionCall", + "src": "15730:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "15720:6:74", + "nodeType": "YulIdentifier", + "src": "15720:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "15803:287:74", + "nodeType": "YulBlock", + "src": "15803:287:74", + "statements": [ + { + "nativeSrc": "15818:46:74", + "nodeType": "YulVariableDeclaration", + "src": "15818:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15849:9:74", + "nodeType": "YulIdentifier", + "src": "15849:9:74" + }, + { + "kind": "number", + "nativeSrc": "15860:2:74", + "nodeType": "YulLiteral", + "src": "15860:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15845:3:74", + "nodeType": "YulIdentifier", + "src": "15845:3:74" + }, + "nativeSrc": "15845:18:74", + "nodeType": "YulFunctionCall", + "src": "15845:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "15832:12:74", + "nodeType": "YulIdentifier", + "src": "15832:12:74" + }, + "nativeSrc": "15832:32:74", + "nodeType": "YulFunctionCall", + "src": "15832:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15822:6:74", + "nodeType": "YulTypedName", + "src": "15822:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "15911:83:74", + "nodeType": "YulBlock", + "src": "15911:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "15913:77:74", + "nodeType": "YulIdentifier", + "src": "15913:77:74" + }, + "nativeSrc": "15913:79:74", + "nodeType": "YulFunctionCall", + "src": "15913:79:74" + }, + "nativeSrc": "15913:79:74", + "nodeType": "YulExpressionStatement", + "src": "15913:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15883:6:74", + "nodeType": "YulIdentifier", + "src": "15883:6:74" + }, + { + "kind": "number", + "nativeSrc": "15891:18:74", + "nodeType": "YulLiteral", + "src": "15891:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "15880:2:74", + "nodeType": "YulIdentifier", + "src": "15880:2:74" + }, + "nativeSrc": "15880:30:74", + "nodeType": "YulFunctionCall", + "src": "15880:30:74" + }, + "nativeSrc": "15877:117:74", + "nodeType": "YulIf", + "src": "15877:117:74" + }, + { + "nativeSrc": "16008:72:74", + "nodeType": "YulAssignment", + "src": "16008:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16052:9:74", + "nodeType": "YulIdentifier", + "src": "16052:9:74" + }, + { + "name": "offset", + "nativeSrc": "16063:6:74", + "nodeType": "YulIdentifier", + "src": "16063:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16048:3:74", + "nodeType": "YulIdentifier", + "src": "16048:3:74" + }, + "nativeSrc": "16048:22:74", + "nodeType": "YulFunctionCall", + "src": "16048:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16072:7:74", + "nodeType": "YulIdentifier", + "src": "16072:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "16018:29:74", + "nodeType": "YulIdentifier", + "src": "16018:29:74" + }, + "nativeSrc": "16018:62:74", + "nodeType": "YulFunctionCall", + "src": "16018:62:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "16008:6:74", + "nodeType": "YulIdentifier", + "src": "16008:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr", + "nativeSrc": "15300:797:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15363:9:74", + "nodeType": "YulTypedName", + "src": "15363:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "15374:7:74", + "nodeType": "YulTypedName", + "src": "15374:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "15386:6:74", + "nodeType": "YulTypedName", + "src": "15386:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "15394:6:74", + "nodeType": "YulTypedName", + "src": "15394:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "15402:6:74", + "nodeType": "YulTypedName", + "src": "15402:6:74", + "type": "" + } + ], + "src": "15300:797:74" + }, + { + "body": { + "nativeSrc": "16146:79:74", + "nodeType": "YulBlock", + "src": "16146:79:74", + "statements": [ + { + "body": { + "nativeSrc": "16203:16:74", + "nodeType": "YulBlock", + "src": "16203:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16212:1:74", + "nodeType": "YulLiteral", + "src": "16212:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "16215:1:74", + "nodeType": "YulLiteral", + "src": "16215:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "16205:6:74", + "nodeType": "YulIdentifier", + "src": "16205:6:74" + }, + "nativeSrc": "16205:12:74", + "nodeType": "YulFunctionCall", + "src": "16205:12:74" + }, + "nativeSrc": "16205:12:74", + "nodeType": "YulExpressionStatement", + "src": "16205:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16169:5:74", + "nodeType": "YulIdentifier", + "src": "16169:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16194:5:74", + "nodeType": "YulIdentifier", + "src": "16194:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "16176:17:74", + "nodeType": "YulIdentifier", + "src": "16176:17:74" + }, + "nativeSrc": "16176:24:74", + "nodeType": "YulFunctionCall", + "src": "16176:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "16166:2:74", + "nodeType": "YulIdentifier", + "src": "16166:2:74" + }, + "nativeSrc": "16166:35:74", + "nodeType": "YulFunctionCall", + "src": "16166:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "16159:6:74", + "nodeType": "YulIdentifier", + "src": "16159:6:74" + }, + "nativeSrc": "16159:43:74", + "nodeType": "YulFunctionCall", + "src": "16159:43:74" + }, + "nativeSrc": "16156:63:74", + "nodeType": "YulIf", + "src": "16156:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "16103:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16139:5:74", + "nodeType": "YulTypedName", + "src": "16139:5:74", + "type": "" + } + ], + "src": "16103:122:74" + }, + { + "body": { + "nativeSrc": "16283:87:74", + "nodeType": "YulBlock", + "src": "16283:87:74", + "statements": [ + { + "nativeSrc": "16293:29:74", + "nodeType": "YulAssignment", + "src": "16293:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16315:6:74", + "nodeType": "YulIdentifier", + "src": "16315:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "16302:12:74", + "nodeType": "YulIdentifier", + "src": "16302:12:74" + }, + "nativeSrc": "16302:20:74", + "nodeType": "YulFunctionCall", + "src": "16302:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "16293:5:74", + "nodeType": "YulIdentifier", + "src": "16293:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16358:5:74", + "nodeType": "YulIdentifier", + "src": "16358:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "16331:26:74", + "nodeType": "YulIdentifier", + "src": "16331:26:74" + }, + "nativeSrc": "16331:33:74", + "nodeType": "YulFunctionCall", + "src": "16331:33:74" + }, + "nativeSrc": "16331:33:74", + "nodeType": "YulExpressionStatement", + "src": "16331:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "16231:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "16261:6:74", + "nodeType": "YulTypedName", + "src": "16261:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "16269:3:74", + "nodeType": "YulTypedName", + "src": "16269:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "16277:5:74", + "nodeType": "YulTypedName", + "src": "16277:5:74", + "type": "" + } + ], + "src": "16231:139:74" + }, + { + "body": { + "nativeSrc": "16416:76:74", + "nodeType": "YulBlock", + "src": "16416:76:74", + "statements": [ + { + "body": { + "nativeSrc": "16470:16:74", + "nodeType": "YulBlock", + "src": "16470:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "16479:1:74", + "nodeType": "YulLiteral", + "src": "16479:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "16482:1:74", + "nodeType": "YulLiteral", + "src": "16482:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "16472:6:74", + "nodeType": "YulIdentifier", + "src": "16472:6:74" + }, + "nativeSrc": "16472:12:74", + "nodeType": "YulFunctionCall", + "src": "16472:12:74" + }, + "nativeSrc": "16472:12:74", + "nodeType": "YulExpressionStatement", + "src": "16472:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16439:5:74", + "nodeType": "YulIdentifier", + "src": "16439:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16461:5:74", + "nodeType": "YulIdentifier", + "src": "16461:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "16446:14:74", + "nodeType": "YulIdentifier", + "src": "16446:14:74" + }, + "nativeSrc": "16446:21:74", + "nodeType": "YulFunctionCall", + "src": "16446:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "16436:2:74", + "nodeType": "YulIdentifier", + "src": "16436:2:74" + }, + "nativeSrc": "16436:32:74", + "nodeType": "YulFunctionCall", + "src": "16436:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "16429:6:74", + "nodeType": "YulIdentifier", + "src": "16429:6:74" + }, + "nativeSrc": "16429:40:74", + "nodeType": "YulFunctionCall", + "src": "16429:40:74" + }, + "nativeSrc": "16426:60:74", + "nodeType": "YulIf", + "src": "16426:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "16376:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16409:5:74", + "nodeType": "YulTypedName", + "src": "16409:5:74", + "type": "" + } + ], + "src": "16376:116:74" + }, + { + "body": { + "nativeSrc": "16547:84:74", + "nodeType": "YulBlock", + "src": "16547:84:74", + "statements": [ + { + "nativeSrc": "16557:29:74", + "nodeType": "YulAssignment", + "src": "16557:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16579:6:74", + "nodeType": "YulIdentifier", + "src": "16579:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "16566:12:74", + "nodeType": "YulIdentifier", + "src": "16566:12:74" + }, + "nativeSrc": "16566:20:74", + "nodeType": "YulFunctionCall", + "src": "16566:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "16557:5:74", + "nodeType": "YulIdentifier", + "src": "16557:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16619:5:74", + "nodeType": "YulIdentifier", + "src": "16619:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "16595:23:74", + "nodeType": "YulIdentifier", + "src": "16595:23:74" + }, + "nativeSrc": "16595:30:74", + "nodeType": "YulFunctionCall", + "src": "16595:30:74" + }, + "nativeSrc": "16595:30:74", + "nodeType": "YulExpressionStatement", + "src": "16595:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "16498:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "16525:6:74", + "nodeType": "YulTypedName", + "src": "16525:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "16533:3:74", + "nodeType": "YulTypedName", + "src": "16533:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "16541:5:74", + "nodeType": "YulTypedName", + "src": "16541:5:74", + "type": "" + } + ], + "src": "16498:133:74" + }, + { + "body": { + "nativeSrc": "16717:388:74", + "nodeType": "YulBlock", + "src": "16717:388:74", + "statements": [ + { + "body": { + "nativeSrc": "16763:83:74", + "nodeType": "YulBlock", + "src": "16763:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "16765:77:74", + "nodeType": "YulIdentifier", + "src": "16765:77:74" + }, + "nativeSrc": "16765:79:74", + "nodeType": "YulFunctionCall", + "src": "16765:79:74" + }, + "nativeSrc": "16765:79:74", + "nodeType": "YulExpressionStatement", + "src": "16765:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "16738:7:74", + "nodeType": "YulIdentifier", + "src": "16738:7:74" + }, + { + "name": "headStart", + "nativeSrc": "16747:9:74", + "nodeType": "YulIdentifier", + "src": "16747:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16734:3:74", + "nodeType": "YulIdentifier", + "src": "16734:3:74" + }, + "nativeSrc": "16734:23:74", + "nodeType": "YulFunctionCall", + "src": "16734:23:74" + }, + { + "kind": "number", + "nativeSrc": "16759:2:74", + "nodeType": "YulLiteral", + "src": "16759:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "16730:3:74", + "nodeType": "YulIdentifier", + "src": "16730:3:74" + }, + "nativeSrc": "16730:32:74", + "nodeType": "YulFunctionCall", + "src": "16730:32:74" + }, + "nativeSrc": "16727:119:74", + "nodeType": "YulIf", + "src": "16727:119:74" + }, + { + "nativeSrc": "16856:117:74", + "nodeType": "YulBlock", + "src": "16856:117:74", + "statements": [ + { + "nativeSrc": "16871:15:74", + "nodeType": "YulVariableDeclaration", + "src": "16871:15:74", + "value": { + "kind": "number", + "nativeSrc": "16885:1:74", + "nodeType": "YulLiteral", + "src": "16885:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16875:6:74", + "nodeType": "YulTypedName", + "src": "16875:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16900:63:74", + "nodeType": "YulAssignment", + "src": "16900:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16935:9:74", + "nodeType": "YulIdentifier", + "src": "16935:9:74" + }, + { + "name": "offset", + "nativeSrc": "16946:6:74", + "nodeType": "YulIdentifier", + "src": "16946:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16931:3:74", + "nodeType": "YulIdentifier", + "src": "16931:3:74" + }, + "nativeSrc": "16931:22:74", + "nodeType": "YulFunctionCall", + "src": "16931:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16955:7:74", + "nodeType": "YulIdentifier", + "src": "16955:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "16910:20:74", + "nodeType": "YulIdentifier", + "src": "16910:20:74" + }, + "nativeSrc": "16910:53:74", + "nodeType": "YulFunctionCall", + "src": "16910:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "16900:6:74", + "nodeType": "YulIdentifier", + "src": "16900:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16983:115:74", + "nodeType": "YulBlock", + "src": "16983:115:74", + "statements": [ + { + "nativeSrc": "16998:16:74", + "nodeType": "YulVariableDeclaration", + "src": "16998:16:74", + "value": { + "kind": "number", + "nativeSrc": "17012:2:74", + "nodeType": "YulLiteral", + "src": "17012:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17002:6:74", + "nodeType": "YulTypedName", + "src": "17002:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17028:60:74", + "nodeType": "YulAssignment", + "src": "17028:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17060:9:74", + "nodeType": "YulIdentifier", + "src": "17060:9:74" + }, + { + "name": "offset", + "nativeSrc": "17071:6:74", + "nodeType": "YulIdentifier", + "src": "17071:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17056:3:74", + "nodeType": "YulIdentifier", + "src": "17056:3:74" + }, + "nativeSrc": "17056:22:74", + "nodeType": "YulFunctionCall", + "src": "17056:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17080:7:74", + "nodeType": "YulIdentifier", + "src": "17080:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "17038:17:74", + "nodeType": "YulIdentifier", + "src": "17038:17:74" + }, + "nativeSrc": "17038:50:74", + "nodeType": "YulFunctionCall", + "src": "17038:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "17028:6:74", + "nodeType": "YulIdentifier", + "src": "17028:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "16637:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16679:9:74", + "nodeType": "YulTypedName", + "src": "16679:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "16690:7:74", + "nodeType": "YulTypedName", + "src": "16690:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "16702:6:74", + "nodeType": "YulTypedName", + "src": "16702:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "16710:6:74", + "nodeType": "YulTypedName", + "src": "16710:6:74", + "type": "" + } + ], + "src": "16637:468:74" + }, + { + "body": { + "nativeSrc": "17208:516:74", + "nodeType": "YulBlock", + "src": "17208:516:74", + "statements": [ + { + "body": { + "nativeSrc": "17254:83:74", + "nodeType": "YulBlock", + "src": "17254:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "17256:77:74", + "nodeType": "YulIdentifier", + "src": "17256:77:74" + }, + "nativeSrc": "17256:79:74", + "nodeType": "YulFunctionCall", + "src": "17256:79:74" + }, + "nativeSrc": "17256:79:74", + "nodeType": "YulExpressionStatement", + "src": "17256:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "17229:7:74", + "nodeType": "YulIdentifier", + "src": "17229:7:74" + }, + { + "name": "headStart", + "nativeSrc": "17238:9:74", + "nodeType": "YulIdentifier", + "src": "17238:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17225:3:74", + "nodeType": "YulIdentifier", + "src": "17225:3:74" + }, + "nativeSrc": "17225:23:74", + "nodeType": "YulFunctionCall", + "src": "17225:23:74" + }, + { + "kind": "number", + "nativeSrc": "17250:2:74", + "nodeType": "YulLiteral", + "src": "17250:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "17221:3:74", + "nodeType": "YulIdentifier", + "src": "17221:3:74" + }, + "nativeSrc": "17221:32:74", + "nodeType": "YulFunctionCall", + "src": "17221:32:74" + }, + "nativeSrc": "17218:119:74", + "nodeType": "YulIf", + "src": "17218:119:74" + }, + { + "nativeSrc": "17347:117:74", + "nodeType": "YulBlock", + "src": "17347:117:74", + "statements": [ + { + "nativeSrc": "17362:15:74", + "nodeType": "YulVariableDeclaration", + "src": "17362:15:74", + "value": { + "kind": "number", + "nativeSrc": "17376:1:74", + "nodeType": "YulLiteral", + "src": "17376:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17366:6:74", + "nodeType": "YulTypedName", + "src": "17366:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17391:63:74", + "nodeType": "YulAssignment", + "src": "17391:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17426:9:74", + "nodeType": "YulIdentifier", + "src": "17426:9:74" + }, + { + "name": "offset", + "nativeSrc": "17437:6:74", + "nodeType": "YulIdentifier", + "src": "17437:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17422:3:74", + "nodeType": "YulIdentifier", + "src": "17422:3:74" + }, + "nativeSrc": "17422:22:74", + "nodeType": "YulFunctionCall", + "src": "17422:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17446:7:74", + "nodeType": "YulIdentifier", + "src": "17446:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "17401:20:74", + "nodeType": "YulIdentifier", + "src": "17401:20:74" + }, + "nativeSrc": "17401:53:74", + "nodeType": "YulFunctionCall", + "src": "17401:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "17391:6:74", + "nodeType": "YulIdentifier", + "src": "17391:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "17474:118:74", + "nodeType": "YulBlock", + "src": "17474:118:74", + "statements": [ + { + "nativeSrc": "17489:16:74", + "nodeType": "YulVariableDeclaration", + "src": "17489:16:74", + "value": { + "kind": "number", + "nativeSrc": "17503:2:74", + "nodeType": "YulLiteral", + "src": "17503:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17493:6:74", + "nodeType": "YulTypedName", + "src": "17493:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17519:63:74", + "nodeType": "YulAssignment", + "src": "17519:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17554:9:74", + "nodeType": "YulIdentifier", + "src": "17554:9:74" + }, + { + "name": "offset", + "nativeSrc": "17565:6:74", + "nodeType": "YulIdentifier", + "src": "17565:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17550:3:74", + "nodeType": "YulIdentifier", + "src": "17550:3:74" + }, + "nativeSrc": "17550:22:74", + "nodeType": "YulFunctionCall", + "src": "17550:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17574:7:74", + "nodeType": "YulIdentifier", + "src": "17574:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "17529:20:74", + "nodeType": "YulIdentifier", + "src": "17529:20:74" + }, + "nativeSrc": "17529:53:74", + "nodeType": "YulFunctionCall", + "src": "17529:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "17519:6:74", + "nodeType": "YulIdentifier", + "src": "17519:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "17602:115:74", + "nodeType": "YulBlock", + "src": "17602:115:74", + "statements": [ + { + "nativeSrc": "17617:16:74", + "nodeType": "YulVariableDeclaration", + "src": "17617:16:74", + "value": { + "kind": "number", + "nativeSrc": "17631:2:74", + "nodeType": "YulLiteral", + "src": "17631:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17621:6:74", + "nodeType": "YulTypedName", + "src": "17621:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17647:60:74", + "nodeType": "YulAssignment", + "src": "17647:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17679:9:74", + "nodeType": "YulIdentifier", + "src": "17679:9:74" + }, + { + "name": "offset", + "nativeSrc": "17690:6:74", + "nodeType": "YulIdentifier", + "src": "17690:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17675:3:74", + "nodeType": "YulIdentifier", + "src": "17675:3:74" + }, + "nativeSrc": "17675:22:74", + "nodeType": "YulFunctionCall", + "src": "17675:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17699:7:74", + "nodeType": "YulIdentifier", + "src": "17699:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "17657:17:74", + "nodeType": "YulIdentifier", + "src": "17657:17:74" + }, + "nativeSrc": "17657:50:74", + "nodeType": "YulFunctionCall", + "src": "17657:50:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "17647:6:74", + "nodeType": "YulIdentifier", + "src": "17647:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_addresst_bool", + "nativeSrc": "17111:613:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17162:9:74", + "nodeType": "YulTypedName", + "src": "17162:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "17173:7:74", + "nodeType": "YulTypedName", + "src": "17173:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "17185:6:74", + "nodeType": "YulTypedName", + "src": "17185:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "17193:6:74", + "nodeType": "YulTypedName", + "src": "17193:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "17201:6:74", + "nodeType": "YulTypedName", + "src": "17201:6:74", + "type": "" + } + ], + "src": "17111:613:74" + }, + { + "body": { + "nativeSrc": "17774:45:74", + "nodeType": "YulBlock", + "src": "17774:45:74", + "statements": [ + { + "nativeSrc": "17784:29:74", + "nodeType": "YulAssignment", + "src": "17784:29:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17799:5:74", + "nodeType": "YulIdentifier", + "src": "17799:5:74" + }, + { + "kind": "number", + "nativeSrc": "17806:6:74", + "nodeType": "YulLiteral", + "src": "17806:6:74", + "type": "", + "value": "0xffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "17795:3:74", + "nodeType": "YulIdentifier", + "src": "17795:3:74" + }, + "nativeSrc": "17795:18:74", + "nodeType": "YulFunctionCall", + "src": "17795:18:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "17784:7:74", + "nodeType": "YulIdentifier", + "src": "17784:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint16", + "nativeSrc": "17730:89:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17756:5:74", + "nodeType": "YulTypedName", + "src": "17756:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "17766:7:74", + "nodeType": "YulTypedName", + "src": "17766:7:74", + "type": "" + } + ], + "src": "17730:89:74" + }, + { + "body": { + "nativeSrc": "17867:78:74", + "nodeType": "YulBlock", + "src": "17867:78:74", + "statements": [ + { + "body": { + "nativeSrc": "17923:16:74", + "nodeType": "YulBlock", + "src": "17923:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "17932:1:74", + "nodeType": "YulLiteral", + "src": "17932:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "17935:1:74", + "nodeType": "YulLiteral", + "src": "17935:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "17925:6:74", + "nodeType": "YulIdentifier", + "src": "17925:6:74" + }, + "nativeSrc": "17925:12:74", + "nodeType": "YulFunctionCall", + "src": "17925:12:74" + }, + "nativeSrc": "17925:12:74", + "nodeType": "YulExpressionStatement", + "src": "17925:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17890:5:74", + "nodeType": "YulIdentifier", + "src": "17890:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17914:5:74", + "nodeType": "YulIdentifier", + "src": "17914:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint16", + "nativeSrc": "17897:16:74", + "nodeType": "YulIdentifier", + "src": "17897:16:74" + }, + "nativeSrc": "17897:23:74", + "nodeType": "YulFunctionCall", + "src": "17897:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "17887:2:74", + "nodeType": "YulIdentifier", + "src": "17887:2:74" + }, + "nativeSrc": "17887:34:74", + "nodeType": "YulFunctionCall", + "src": "17887:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "17880:6:74", + "nodeType": "YulIdentifier", + "src": "17880:6:74" + }, + "nativeSrc": "17880:42:74", + "nodeType": "YulFunctionCall", + "src": "17880:42:74" + }, + "nativeSrc": "17877:62:74", + "nodeType": "YulIf", + "src": "17877:62:74" + } + ] + }, + "name": "validator_revert_t_uint16", + "nativeSrc": "17825:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17860:5:74", + "nodeType": "YulTypedName", + "src": "17860:5:74", + "type": "" + } + ], + "src": "17825:120:74" + }, + { + "body": { + "nativeSrc": "18002:86:74", + "nodeType": "YulBlock", + "src": "18002:86:74", + "statements": [ + { + "nativeSrc": "18012:29:74", + "nodeType": "YulAssignment", + "src": "18012:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18034:6:74", + "nodeType": "YulIdentifier", + "src": "18034:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "18021:12:74", + "nodeType": "YulIdentifier", + "src": "18021:12:74" + }, + "nativeSrc": "18021:20:74", + "nodeType": "YulFunctionCall", + "src": "18021:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "18012:5:74", + "nodeType": "YulIdentifier", + "src": "18012:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "18076:5:74", + "nodeType": "YulIdentifier", + "src": "18076:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint16", + "nativeSrc": "18050:25:74", + "nodeType": "YulIdentifier", + "src": "18050:25:74" + }, + "nativeSrc": "18050:32:74", + "nodeType": "YulFunctionCall", + "src": "18050:32:74" + }, + "nativeSrc": "18050:32:74", + "nodeType": "YulExpressionStatement", + "src": "18050:32:74" + } + ] + }, + "name": "abi_decode_t_uint16", + "nativeSrc": "17951:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "17980:6:74", + "nodeType": "YulTypedName", + "src": "17980:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "17988:3:74", + "nodeType": "YulTypedName", + "src": "17988:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "17996:5:74", + "nodeType": "YulTypedName", + "src": "17996:5:74", + "type": "" + } + ], + "src": "17951:137:74" + }, + { + "body": { + "nativeSrc": "18193:518:74", + "nodeType": "YulBlock", + "src": "18193:518:74", + "statements": [ + { + "body": { + "nativeSrc": "18239:83:74", + "nodeType": "YulBlock", + "src": "18239:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "18241:77:74", + "nodeType": "YulIdentifier", + "src": "18241:77:74" + }, + "nativeSrc": "18241:79:74", + "nodeType": "YulFunctionCall", + "src": "18241:79:74" + }, + "nativeSrc": "18241:79:74", + "nodeType": "YulExpressionStatement", + "src": "18241:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "18214:7:74", + "nodeType": "YulIdentifier", + "src": "18214:7:74" + }, + { + "name": "headStart", + "nativeSrc": "18223:9:74", + "nodeType": "YulIdentifier", + "src": "18223:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18210:3:74", + "nodeType": "YulIdentifier", + "src": "18210:3:74" + }, + "nativeSrc": "18210:23:74", + "nodeType": "YulFunctionCall", + "src": "18210:23:74" + }, + { + "kind": "number", + "nativeSrc": "18235:2:74", + "nodeType": "YulLiteral", + "src": "18235:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "18206:3:74", + "nodeType": "YulIdentifier", + "src": "18206:3:74" + }, + "nativeSrc": "18206:32:74", + "nodeType": "YulFunctionCall", + "src": "18206:32:74" + }, + "nativeSrc": "18203:119:74", + "nodeType": "YulIf", + "src": "18203:119:74" + }, + { + "nativeSrc": "18332:117:74", + "nodeType": "YulBlock", + "src": "18332:117:74", + "statements": [ + { + "nativeSrc": "18347:15:74", + "nodeType": "YulVariableDeclaration", + "src": "18347:15:74", + "value": { + "kind": "number", + "nativeSrc": "18361:1:74", + "nodeType": "YulLiteral", + "src": "18361:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18351:6:74", + "nodeType": "YulTypedName", + "src": "18351:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "18376:63:74", + "nodeType": "YulAssignment", + "src": "18376:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18411:9:74", + "nodeType": "YulIdentifier", + "src": "18411:9:74" + }, + { + "name": "offset", + "nativeSrc": "18422:6:74", + "nodeType": "YulIdentifier", + "src": "18422:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18407:3:74", + "nodeType": "YulIdentifier", + "src": "18407:3:74" + }, + "nativeSrc": "18407:22:74", + "nodeType": "YulFunctionCall", + "src": "18407:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "18431:7:74", + "nodeType": "YulIdentifier", + "src": "18431:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "18386:20:74", + "nodeType": "YulIdentifier", + "src": "18386:20:74" + }, + "nativeSrc": "18386:53:74", + "nodeType": "YulFunctionCall", + "src": "18386:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "18376:6:74", + "nodeType": "YulIdentifier", + "src": "18376:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "18459:118:74", + "nodeType": "YulBlock", + "src": "18459:118:74", + "statements": [ + { + "nativeSrc": "18474:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18474:16:74", + "value": { + "kind": "number", + "nativeSrc": "18488:2:74", + "nodeType": "YulLiteral", + "src": "18488:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18478:6:74", + "nodeType": "YulTypedName", + "src": "18478:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "18504:63:74", + "nodeType": "YulAssignment", + "src": "18504:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18539:9:74", + "nodeType": "YulIdentifier", + "src": "18539:9:74" + }, + { + "name": "offset", + "nativeSrc": "18550:6:74", + "nodeType": "YulIdentifier", + "src": "18550:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18535:3:74", + "nodeType": "YulIdentifier", + "src": "18535:3:74" + }, + "nativeSrc": "18535:22:74", + "nodeType": "YulFunctionCall", + "src": "18535:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "18559:7:74", + "nodeType": "YulIdentifier", + "src": "18559:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "18514:20:74", + "nodeType": "YulIdentifier", + "src": "18514:20:74" + }, + "nativeSrc": "18514:53:74", + "nodeType": "YulFunctionCall", + "src": "18514:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "18504:6:74", + "nodeType": "YulIdentifier", + "src": "18504:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "18587:117:74", + "nodeType": "YulBlock", + "src": "18587:117:74", + "statements": [ + { + "nativeSrc": "18602:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18602:16:74", + "value": { + "kind": "number", + "nativeSrc": "18616:2:74", + "nodeType": "YulLiteral", + "src": "18616:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18606:6:74", + "nodeType": "YulTypedName", + "src": "18606:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "18632:62:74", + "nodeType": "YulAssignment", + "src": "18632:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18666:9:74", + "nodeType": "YulIdentifier", + "src": "18666:9:74" + }, + { + "name": "offset", + "nativeSrc": "18677:6:74", + "nodeType": "YulIdentifier", + "src": "18677:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18662:3:74", + "nodeType": "YulIdentifier", + "src": "18662:3:74" + }, + "nativeSrc": "18662:22:74", + "nodeType": "YulFunctionCall", + "src": "18662:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "18686:7:74", + "nodeType": "YulIdentifier", + "src": "18686:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint16", + "nativeSrc": "18642:19:74", + "nodeType": "YulIdentifier", + "src": "18642:19:74" + }, + "nativeSrc": "18642:52:74", + "nodeType": "YulFunctionCall", + "src": "18642:52:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "18632:6:74", + "nodeType": "YulIdentifier", + "src": "18632:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_uint16", + "nativeSrc": "18094:617:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18147:9:74", + "nodeType": "YulTypedName", + "src": "18147:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "18158:7:74", + "nodeType": "YulTypedName", + "src": "18158:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "18170:6:74", + "nodeType": "YulTypedName", + "src": "18170:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "18178:6:74", + "nodeType": "YulTypedName", + "src": "18178:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "18186:6:74", + "nodeType": "YulTypedName", + "src": "18186:6:74", + "type": "" + } + ], + "src": "18094:617:74" + }, + { + "body": { + "nativeSrc": "18817:519:74", + "nodeType": "YulBlock", + "src": "18817:519:74", + "statements": [ + { + "body": { + "nativeSrc": "18863:83:74", + "nodeType": "YulBlock", + "src": "18863:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "18865:77:74", + "nodeType": "YulIdentifier", + "src": "18865:77:74" + }, + "nativeSrc": "18865:79:74", + "nodeType": "YulFunctionCall", + "src": "18865:79:74" + }, + "nativeSrc": "18865:79:74", + "nodeType": "YulExpressionStatement", + "src": "18865:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "18838:7:74", + "nodeType": "YulIdentifier", + "src": "18838:7:74" + }, + { + "name": "headStart", + "nativeSrc": "18847:9:74", + "nodeType": "YulIdentifier", + "src": "18847:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18834:3:74", + "nodeType": "YulIdentifier", + "src": "18834:3:74" + }, + "nativeSrc": "18834:23:74", + "nodeType": "YulFunctionCall", + "src": "18834:23:74" + }, + { + "kind": "number", + "nativeSrc": "18859:2:74", + "nodeType": "YulLiteral", + "src": "18859:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "18830:3:74", + "nodeType": "YulIdentifier", + "src": "18830:3:74" + }, + "nativeSrc": "18830:32:74", + "nodeType": "YulFunctionCall", + "src": "18830:32:74" + }, + "nativeSrc": "18827:119:74", + "nodeType": "YulIf", + "src": "18827:119:74" + }, + { + "nativeSrc": "18956:117:74", + "nodeType": "YulBlock", + "src": "18956:117:74", + "statements": [ + { + "nativeSrc": "18971:15:74", + "nodeType": "YulVariableDeclaration", + "src": "18971:15:74", + "value": { + "kind": "number", + "nativeSrc": "18985:1:74", + "nodeType": "YulLiteral", + "src": "18985:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18975:6:74", + "nodeType": "YulTypedName", + "src": "18975:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19000:63:74", + "nodeType": "YulAssignment", + "src": "19000:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19035:9:74", + "nodeType": "YulIdentifier", + "src": "19035:9:74" + }, + { + "name": "offset", + "nativeSrc": "19046:6:74", + "nodeType": "YulIdentifier", + "src": "19046:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19031:3:74", + "nodeType": "YulIdentifier", + "src": "19031:3:74" + }, + "nativeSrc": "19031:22:74", + "nodeType": "YulFunctionCall", + "src": "19031:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "19055:7:74", + "nodeType": "YulIdentifier", + "src": "19055:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "19010:20:74", + "nodeType": "YulIdentifier", + "src": "19010:20:74" + }, + "nativeSrc": "19010:53:74", + "nodeType": "YulFunctionCall", + "src": "19010:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "19000:6:74", + "nodeType": "YulIdentifier", + "src": "19000:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "19083:118:74", + "nodeType": "YulBlock", + "src": "19083:118:74", + "statements": [ + { + "nativeSrc": "19098:16:74", + "nodeType": "YulVariableDeclaration", + "src": "19098:16:74", + "value": { + "kind": "number", + "nativeSrc": "19112:2:74", + "nodeType": "YulLiteral", + "src": "19112:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "19102:6:74", + "nodeType": "YulTypedName", + "src": "19102:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19128:63:74", + "nodeType": "YulAssignment", + "src": "19128:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19163:9:74", + "nodeType": "YulIdentifier", + "src": "19163:9:74" + }, + { + "name": "offset", + "nativeSrc": "19174:6:74", + "nodeType": "YulIdentifier", + "src": "19174:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19159:3:74", + "nodeType": "YulIdentifier", + "src": "19159:3:74" + }, + "nativeSrc": "19159:22:74", + "nodeType": "YulFunctionCall", + "src": "19159:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "19183:7:74", + "nodeType": "YulIdentifier", + "src": "19183:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "19138:20:74", + "nodeType": "YulIdentifier", + "src": "19138:20:74" + }, + "nativeSrc": "19138:53:74", + "nodeType": "YulFunctionCall", + "src": "19138:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "19128:6:74", + "nodeType": "YulIdentifier", + "src": "19128:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "19211:118:74", + "nodeType": "YulBlock", + "src": "19211:118:74", + "statements": [ + { + "nativeSrc": "19226:16:74", + "nodeType": "YulVariableDeclaration", + "src": "19226:16:74", + "value": { + "kind": "number", + "nativeSrc": "19240:2:74", + "nodeType": "YulLiteral", + "src": "19240:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "19230:6:74", + "nodeType": "YulTypedName", + "src": "19230:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19256:63:74", + "nodeType": "YulAssignment", + "src": "19256:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19291:9:74", + "nodeType": "YulIdentifier", + "src": "19291:9:74" + }, + { + "name": "offset", + "nativeSrc": "19302:6:74", + "nodeType": "YulIdentifier", + "src": "19302:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19287:3:74", + "nodeType": "YulIdentifier", + "src": "19287:3:74" + }, + "nativeSrc": "19287:22:74", + "nodeType": "YulFunctionCall", + "src": "19287:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "19311:7:74", + "nodeType": "YulIdentifier", + "src": "19311:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "19266:20:74", + "nodeType": "YulIdentifier", + "src": "19266:20:74" + }, + "nativeSrc": "19266:53:74", + "nodeType": "YulFunctionCall", + "src": "19266:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "19256:6:74", + "nodeType": "YulIdentifier", + "src": "19256:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bytes32t_address", + "nativeSrc": "18717:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18771:9:74", + "nodeType": "YulTypedName", + "src": "18771:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "18782:7:74", + "nodeType": "YulTypedName", + "src": "18782:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "18794:6:74", + "nodeType": "YulTypedName", + "src": "18794:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "18802:6:74", + "nodeType": "YulTypedName", + "src": "18802:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "18810:6:74", + "nodeType": "YulTypedName", + "src": "18810:6:74", + "type": "" + } + ], + "src": "18717:619:74" + }, + { + "body": { + "nativeSrc": "19458:478:74", + "nodeType": "YulBlock", + "src": "19458:478:74", + "statements": [ + { + "body": { + "nativeSrc": "19507:83:74", + "nodeType": "YulBlock", + "src": "19507:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "19509:77:74", + "nodeType": "YulIdentifier", + "src": "19509:77:74" + }, + "nativeSrc": "19509:79:74", + "nodeType": "YulFunctionCall", + "src": "19509:79:74" + }, + "nativeSrc": "19509:79:74", + "nodeType": "YulExpressionStatement", + "src": "19509:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19486:6:74", + "nodeType": "YulIdentifier", + "src": "19486:6:74" + }, + { + "kind": "number", + "nativeSrc": "19494:4:74", + "nodeType": "YulLiteral", + "src": "19494:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19482:3:74", + "nodeType": "YulIdentifier", + "src": "19482:3:74" + }, + "nativeSrc": "19482:17:74", + "nodeType": "YulFunctionCall", + "src": "19482:17:74" + }, + { + "name": "end", + "nativeSrc": "19501:3:74", + "nodeType": "YulIdentifier", + "src": "19501:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "19478:3:74", + "nodeType": "YulIdentifier", + "src": "19478:3:74" + }, + "nativeSrc": "19478:27:74", + "nodeType": "YulFunctionCall", + "src": "19478:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "19471:6:74", + "nodeType": "YulIdentifier", + "src": "19471:6:74" + }, + "nativeSrc": "19471:35:74", + "nodeType": "YulFunctionCall", + "src": "19471:35:74" + }, + "nativeSrc": "19468:122:74", + "nodeType": "YulIf", + "src": "19468:122:74" + }, + { + "nativeSrc": "19599:30:74", + "nodeType": "YulAssignment", + "src": "19599:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19622:6:74", + "nodeType": "YulIdentifier", + "src": "19622:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "19609:12:74", + "nodeType": "YulIdentifier", + "src": "19609:12:74" + }, + "nativeSrc": "19609:20:74", + "nodeType": "YulFunctionCall", + "src": "19609:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "19599:6:74", + "nodeType": "YulIdentifier", + "src": "19599:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "19672:83:74", + "nodeType": "YulBlock", + "src": "19672:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "19674:77:74", + "nodeType": "YulIdentifier", + "src": "19674:77:74" + }, + "nativeSrc": "19674:79:74", + "nodeType": "YulFunctionCall", + "src": "19674:79:74" + }, + "nativeSrc": "19674:79:74", + "nodeType": "YulExpressionStatement", + "src": "19674:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "19644:6:74", + "nodeType": "YulIdentifier", + "src": "19644:6:74" + }, + { + "kind": "number", + "nativeSrc": "19652:18:74", + "nodeType": "YulLiteral", + "src": "19652:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19641:2:74", + "nodeType": "YulIdentifier", + "src": "19641:2:74" + }, + "nativeSrc": "19641:30:74", + "nodeType": "YulFunctionCall", + "src": "19641:30:74" + }, + "nativeSrc": "19638:117:74", + "nodeType": "YulIf", + "src": "19638:117:74" + }, + { + "nativeSrc": "19764:29:74", + "nodeType": "YulAssignment", + "src": "19764:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19780:6:74", + "nodeType": "YulIdentifier", + "src": "19780:6:74" + }, + { + "kind": "number", + "nativeSrc": "19788:4:74", + "nodeType": "YulLiteral", + "src": "19788:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19776:3:74", + "nodeType": "YulIdentifier", + "src": "19776:3:74" + }, + "nativeSrc": "19776:17:74", + "nodeType": "YulFunctionCall", + "src": "19776:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "19764:8:74", + "nodeType": "YulIdentifier", + "src": "19764:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "19847:83:74", + "nodeType": "YulBlock", + "src": "19847:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "19849:77:74", + "nodeType": "YulIdentifier", + "src": "19849:77:74" + }, + "nativeSrc": "19849:79:74", + "nodeType": "YulFunctionCall", + "src": "19849:79:74" + }, + "nativeSrc": "19849:79:74", + "nodeType": "YulExpressionStatement", + "src": "19849:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "19812:8:74", + "nodeType": "YulIdentifier", + "src": "19812:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "19826:6:74", + "nodeType": "YulIdentifier", + "src": "19826:6:74" + }, + { + "kind": "number", + "nativeSrc": "19834:4:74", + "nodeType": "YulLiteral", + "src": "19834:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "19822:3:74", + "nodeType": "YulIdentifier", + "src": "19822:3:74" + }, + "nativeSrc": "19822:17:74", + "nodeType": "YulFunctionCall", + "src": "19822:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19808:3:74", + "nodeType": "YulIdentifier", + "src": "19808:3:74" + }, + "nativeSrc": "19808:32:74", + "nodeType": "YulFunctionCall", + "src": "19808:32:74" + }, + { + "name": "end", + "nativeSrc": "19842:3:74", + "nodeType": "YulIdentifier", + "src": "19842:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19805:2:74", + "nodeType": "YulIdentifier", + "src": "19805:2:74" + }, + "nativeSrc": "19805:41:74", + "nodeType": "YulFunctionCall", + "src": "19805:41:74" + }, + "nativeSrc": "19802:128:74", + "nodeType": "YulIf", + "src": "19802:128:74" + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "19357:579:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "19425:6:74", + "nodeType": "YulTypedName", + "src": "19425:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19433:3:74", + "nodeType": "YulTypedName", + "src": "19433:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "19441:8:74", + "nodeType": "YulTypedName", + "src": "19441:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "19451:6:74", + "nodeType": "YulTypedName", + "src": "19451:6:74", + "type": "" + } + ], + "src": "19357:579:74" + }, + { + "body": { + "nativeSrc": "20054:469:74", + "nodeType": "YulBlock", + "src": "20054:469:74", + "statements": [ + { + "body": { + "nativeSrc": "20100:83:74", + "nodeType": "YulBlock", + "src": "20100:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "20102:77:74", + "nodeType": "YulIdentifier", + "src": "20102:77:74" + }, + "nativeSrc": "20102:79:74", + "nodeType": "YulFunctionCall", + "src": "20102:79:74" + }, + "nativeSrc": "20102:79:74", + "nodeType": "YulExpressionStatement", + "src": "20102:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "20075:7:74", + "nodeType": "YulIdentifier", + "src": "20075:7:74" + }, + { + "name": "headStart", + "nativeSrc": "20084:9:74", + "nodeType": "YulIdentifier", + "src": "20084:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20071:3:74", + "nodeType": "YulIdentifier", + "src": "20071:3:74" + }, + "nativeSrc": "20071:23:74", + "nodeType": "YulFunctionCall", + "src": "20071:23:74" + }, + { + "kind": "number", + "nativeSrc": "20096:2:74", + "nodeType": "YulLiteral", + "src": "20096:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20067:3:74", + "nodeType": "YulIdentifier", + "src": "20067:3:74" + }, + "nativeSrc": "20067:32:74", + "nodeType": "YulFunctionCall", + "src": "20067:32:74" + }, + "nativeSrc": "20064:119:74", + "nodeType": "YulIf", + "src": "20064:119:74" + }, + { + "nativeSrc": "20193:323:74", + "nodeType": "YulBlock", + "src": "20193:323:74", + "statements": [ + { + "nativeSrc": "20208:45:74", + "nodeType": "YulVariableDeclaration", + "src": "20208:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20239:9:74", + "nodeType": "YulIdentifier", + "src": "20239:9:74" + }, + { + "kind": "number", + "nativeSrc": "20250:1:74", + "nodeType": "YulLiteral", + "src": "20250:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20235:3:74", + "nodeType": "YulIdentifier", + "src": "20235:3:74" + }, + "nativeSrc": "20235:17:74", + "nodeType": "YulFunctionCall", + "src": "20235:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20222:12:74", + "nodeType": "YulIdentifier", + "src": "20222:12:74" + }, + "nativeSrc": "20222:31:74", + "nodeType": "YulFunctionCall", + "src": "20222:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20212:6:74", + "nodeType": "YulTypedName", + "src": "20212:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "20300:83:74", + "nodeType": "YulBlock", + "src": "20300:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "20302:77:74", + "nodeType": "YulIdentifier", + "src": "20302:77:74" + }, + "nativeSrc": "20302:79:74", + "nodeType": "YulFunctionCall", + "src": "20302:79:74" + }, + "nativeSrc": "20302:79:74", + "nodeType": "YulExpressionStatement", + "src": "20302:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20272:6:74", + "nodeType": "YulIdentifier", + "src": "20272:6:74" + }, + { + "kind": "number", + "nativeSrc": "20280:18:74", + "nodeType": "YulLiteral", + "src": "20280:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20269:2:74", + "nodeType": "YulIdentifier", + "src": "20269:2:74" + }, + "nativeSrc": "20269:30:74", + "nodeType": "YulFunctionCall", + "src": "20269:30:74" + }, + "nativeSrc": "20266:117:74", + "nodeType": "YulIf", + "src": "20266:117:74" + }, + { + "nativeSrc": "20397:109:74", + "nodeType": "YulAssignment", + "src": "20397:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20478:9:74", + "nodeType": "YulIdentifier", + "src": "20478:9:74" + }, + { + "name": "offset", + "nativeSrc": "20489:6:74", + "nodeType": "YulIdentifier", + "src": "20489:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20474:3:74", + "nodeType": "YulIdentifier", + "src": "20474:3:74" + }, + "nativeSrc": "20474:22:74", + "nodeType": "YulFunctionCall", + "src": "20474:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "20498:7:74", + "nodeType": "YulIdentifier", + "src": "20498:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "20415:58:74", + "nodeType": "YulIdentifier", + "src": "20415:58:74" + }, + "nativeSrc": "20415:91:74", + "nodeType": "YulFunctionCall", + "src": "20415:91:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "20397:6:74", + "nodeType": "YulIdentifier", + "src": "20397:6:74" + }, + { + "name": "value1", + "nativeSrc": "20405:6:74", + "nodeType": "YulIdentifier", + "src": "20405:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "19942:581:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "20016:9:74", + "nodeType": "YulTypedName", + "src": "20016:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "20027:7:74", + "nodeType": "YulTypedName", + "src": "20027:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "20039:6:74", + "nodeType": "YulTypedName", + "src": "20039:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "20047:6:74", + "nodeType": "YulTypedName", + "src": "20047:6:74", + "type": "" + } + ], + "src": "19942:581:74" + }, + { + "body": { + "nativeSrc": "20612:40:74", + "nodeType": "YulBlock", + "src": "20612:40:74", + "statements": [ + { + "nativeSrc": "20623:22:74", + "nodeType": "YulAssignment", + "src": "20623:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "20639:5:74", + "nodeType": "YulIdentifier", + "src": "20639:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "20633:5:74", + "nodeType": "YulIdentifier", + "src": "20633:5:74" + }, + "nativeSrc": "20633:12:74", + "nodeType": "YulFunctionCall", + "src": "20633:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "20623:6:74", + "nodeType": "YulIdentifier", + "src": "20623:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "20529:123:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "20595:5:74", + "nodeType": "YulTypedName", + "src": "20595:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "20605:6:74", + "nodeType": "YulTypedName", + "src": "20605:6:74", + "type": "" + } + ], + "src": "20529:123:74" + }, + { + "body": { + "nativeSrc": "20778:73:74", + "nodeType": "YulBlock", + "src": "20778:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20795:3:74", + "nodeType": "YulIdentifier", + "src": "20795:3:74" + }, + { + "name": "length", + "nativeSrc": "20800:6:74", + "nodeType": "YulIdentifier", + "src": "20800:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20788:6:74", + "nodeType": "YulIdentifier", + "src": "20788:6:74" + }, + "nativeSrc": "20788:19:74", + "nodeType": "YulFunctionCall", + "src": "20788:19:74" + }, + "nativeSrc": "20788:19:74", + "nodeType": "YulExpressionStatement", + "src": "20788:19:74" + }, + { + "nativeSrc": "20816:29:74", + "nodeType": "YulAssignment", + "src": "20816:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20835:3:74", + "nodeType": "YulIdentifier", + "src": "20835:3:74" + }, + { + "kind": "number", + "nativeSrc": "20840:4:74", + "nodeType": "YulLiteral", + "src": "20840:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20831:3:74", + "nodeType": "YulIdentifier", + "src": "20831:3:74" + }, + "nativeSrc": "20831:14:74", + "nodeType": "YulFunctionCall", + "src": "20831:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "20816:11:74", + "nodeType": "YulIdentifier", + "src": "20816:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "20658:193:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "20750:3:74", + "nodeType": "YulTypedName", + "src": "20750:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "20755:6:74", + "nodeType": "YulTypedName", + "src": "20755:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "20766:11:74", + "nodeType": "YulTypedName", + "src": "20766:11:74", + "type": "" + } + ], + "src": "20658:193:74" + }, + { + "body": { + "nativeSrc": "20938:60:74", + "nodeType": "YulBlock", + "src": "20938:60:74", + "statements": [ + { + "nativeSrc": "20948:11:74", + "nodeType": "YulAssignment", + "src": "20948:11:74", + "value": { + "name": "ptr", + "nativeSrc": "20956:3:74", + "nodeType": "YulIdentifier", + "src": "20956:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "20948:4:74", + "nodeType": "YulIdentifier", + "src": "20948:4:74" + } + ] + }, + { + "nativeSrc": "20969:22:74", + "nodeType": "YulAssignment", + "src": "20969:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "20981:3:74", + "nodeType": "YulIdentifier", + "src": "20981:3:74" + }, + { + "kind": "number", + "nativeSrc": "20986:4:74", + "nodeType": "YulLiteral", + "src": "20986:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20977:3:74", + "nodeType": "YulIdentifier", + "src": "20977:3:74" + }, + "nativeSrc": "20977:14:74", + "nodeType": "YulFunctionCall", + "src": "20977:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "20969:4:74", + "nodeType": "YulIdentifier", + "src": "20969:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "20857:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "20925:3:74", + "nodeType": "YulTypedName", + "src": "20925:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "20933:4:74", + "nodeType": "YulTypedName", + "src": "20933:4:74", + "type": "" + } + ], + "src": "20857:141:74" + }, + { + "body": { + "nativeSrc": "21089:73:74", + "nodeType": "YulBlock", + "src": "21089:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21106:3:74", + "nodeType": "YulIdentifier", + "src": "21106:3:74" + }, + { + "name": "length", + "nativeSrc": "21111:6:74", + "nodeType": "YulIdentifier", + "src": "21111:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21099:6:74", + "nodeType": "YulIdentifier", + "src": "21099:6:74" + }, + "nativeSrc": "21099:19:74", + "nodeType": "YulFunctionCall", + "src": "21099:19:74" + }, + "nativeSrc": "21099:19:74", + "nodeType": "YulExpressionStatement", + "src": "21099:19:74" + }, + { + "nativeSrc": "21127:29:74", + "nodeType": "YulAssignment", + "src": "21127:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21146:3:74", + "nodeType": "YulIdentifier", + "src": "21146:3:74" + }, + { + "kind": "number", + "nativeSrc": "21151:4:74", + "nodeType": "YulLiteral", + "src": "21151:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21142:3:74", + "nodeType": "YulIdentifier", + "src": "21142:3:74" + }, + "nativeSrc": "21142:14:74", + "nodeType": "YulFunctionCall", + "src": "21142:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "21127:11:74", + "nodeType": "YulIdentifier", + "src": "21127:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "21004:158:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "21061:3:74", + "nodeType": "YulTypedName", + "src": "21061:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "21066:6:74", + "nodeType": "YulTypedName", + "src": "21066:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "21077:11:74", + "nodeType": "YulTypedName", + "src": "21077:11:74", + "type": "" + } + ], + "src": "21004:158:74" + }, + { + "body": { + "nativeSrc": "21248:273:74", + "nodeType": "YulBlock", + "src": "21248:273:74", + "statements": [ + { + "nativeSrc": "21258:52:74", + "nodeType": "YulVariableDeclaration", + "src": "21258:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "21304:5:74", + "nodeType": "YulIdentifier", + "src": "21304:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "21272:31:74", + "nodeType": "YulIdentifier", + "src": "21272:31:74" + }, + "nativeSrc": "21272:38:74", + "nodeType": "YulFunctionCall", + "src": "21272:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "21262:6:74", + "nodeType": "YulTypedName", + "src": "21262:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "21319:67:74", + "nodeType": "YulAssignment", + "src": "21319:67:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21374:3:74", + "nodeType": "YulIdentifier", + "src": "21374:3:74" + }, + { + "name": "length", + "nativeSrc": "21379:6:74", + "nodeType": "YulIdentifier", + "src": "21379:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "21326:47:74", + "nodeType": "YulIdentifier", + "src": "21326:47:74" + }, + "nativeSrc": "21326:60:74", + "nodeType": "YulFunctionCall", + "src": "21326:60:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "21319:3:74", + "nodeType": "YulIdentifier", + "src": "21319:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "21434:5:74", + "nodeType": "YulIdentifier", + "src": "21434:5:74" + }, + { + "kind": "number", + "nativeSrc": "21441:4:74", + "nodeType": "YulLiteral", + "src": "21441:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21430:3:74", + "nodeType": "YulIdentifier", + "src": "21430:3:74" + }, + "nativeSrc": "21430:16:74", + "nodeType": "YulFunctionCall", + "src": "21430:16:74" + }, + { + "name": "pos", + "nativeSrc": "21448:3:74", + "nodeType": "YulIdentifier", + "src": "21448:3:74" + }, + { + "name": "length", + "nativeSrc": "21453:6:74", + "nodeType": "YulIdentifier", + "src": "21453:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "21395:34:74", + "nodeType": "YulIdentifier", + "src": "21395:34:74" + }, + "nativeSrc": "21395:65:74", + "nodeType": "YulFunctionCall", + "src": "21395:65:74" + }, + "nativeSrc": "21395:65:74", + "nodeType": "YulExpressionStatement", + "src": "21395:65:74" + }, + { + "nativeSrc": "21469:46:74", + "nodeType": "YulAssignment", + "src": "21469:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21480:3:74", + "nodeType": "YulIdentifier", + "src": "21480:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "21507:6:74", + "nodeType": "YulIdentifier", + "src": "21507:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "21485:21:74", + "nodeType": "YulIdentifier", + "src": "21485:21:74" + }, + "nativeSrc": "21485:29:74", + "nodeType": "YulFunctionCall", + "src": "21485:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21476:3:74", + "nodeType": "YulIdentifier", + "src": "21476:3:74" + }, + "nativeSrc": "21476:39:74", + "nodeType": "YulFunctionCall", + "src": "21476:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "21469:3:74", + "nodeType": "YulIdentifier", + "src": "21469:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "21168:353:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21229:5:74", + "nodeType": "YulTypedName", + "src": "21229:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "21236:3:74", + "nodeType": "YulTypedName", + "src": "21236:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "21244:3:74", + "nodeType": "YulTypedName", + "src": "21244:3:74", + "type": "" + } + ], + "src": "21168:353:74" + }, + { + "body": { + "nativeSrc": "21625:94:74", + "nodeType": "YulBlock", + "src": "21625:94:74", + "statements": [ + { + "nativeSrc": "21635:78:74", + "nodeType": "YulAssignment", + "src": "21635:78:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "21701:6:74", + "nodeType": "YulIdentifier", + "src": "21701:6:74" + }, + { + "name": "pos", + "nativeSrc": "21709:3:74", + "nodeType": "YulIdentifier", + "src": "21709:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "21649:51:74", + "nodeType": "YulIdentifier", + "src": "21649:51:74" + }, + "nativeSrc": "21649:64:74", + "nodeType": "YulFunctionCall", + "src": "21649:64:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "21635:10:74", + "nodeType": "YulIdentifier", + "src": "21635:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "21527:192:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "21598:6:74", + "nodeType": "YulTypedName", + "src": "21598:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "21606:3:74", + "nodeType": "YulTypedName", + "src": "21606:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "21614:10:74", + "nodeType": "YulTypedName", + "src": "21614:10:74", + "type": "" + } + ], + "src": "21527:192:74" + }, + { + "body": { + "nativeSrc": "21809:38:74", + "nodeType": "YulBlock", + "src": "21809:38:74", + "statements": [ + { + "nativeSrc": "21819:22:74", + "nodeType": "YulAssignment", + "src": "21819:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "21831:3:74", + "nodeType": "YulIdentifier", + "src": "21831:3:74" + }, + { + "kind": "number", + "nativeSrc": "21836:4:74", + "nodeType": "YulLiteral", + "src": "21836:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21827:3:74", + "nodeType": "YulIdentifier", + "src": "21827:3:74" + }, + "nativeSrc": "21827:14:74", + "nodeType": "YulFunctionCall", + "src": "21827:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "21819:4:74", + "nodeType": "YulIdentifier", + "src": "21819:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "21725:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "21796:3:74", + "nodeType": "YulTypedName", + "src": "21796:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "21804:4:74", + "nodeType": "YulTypedName", + "src": "21804:4:74", + "type": "" + } + ], + "src": "21725:122:74" + }, + { + "body": { + "nativeSrc": "22021:841:74", + "nodeType": "YulBlock", + "src": "22021:841:74", + "statements": [ + { + "nativeSrc": "22031:77:74", + "nodeType": "YulVariableDeclaration", + "src": "22031:77:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22102:5:74", + "nodeType": "YulIdentifier", + "src": "22102:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "22045:56:74", + "nodeType": "YulIdentifier", + "src": "22045:56:74" + }, + "nativeSrc": "22045:63:74", + "nodeType": "YulFunctionCall", + "src": "22045:63:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "22035:6:74", + "nodeType": "YulTypedName", + "src": "22035:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22117:102:74", + "nodeType": "YulAssignment", + "src": "22117:102:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22207:3:74", + "nodeType": "YulIdentifier", + "src": "22207:3:74" + }, + { + "name": "length", + "nativeSrc": "22212:6:74", + "nodeType": "YulIdentifier", + "src": "22212:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "22124:82:74", + "nodeType": "YulIdentifier", + "src": "22124:82:74" + }, + "nativeSrc": "22124:95:74", + "nodeType": "YulFunctionCall", + "src": "22124:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "22117:3:74", + "nodeType": "YulIdentifier", + "src": "22117:3:74" + } + ] + }, + { + "nativeSrc": "22228:20:74", + "nodeType": "YulVariableDeclaration", + "src": "22228:20:74", + "value": { + "name": "pos", + "nativeSrc": "22245:3:74", + "nodeType": "YulIdentifier", + "src": "22245:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "22232:9:74", + "nodeType": "YulTypedName", + "src": "22232:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22257:39:74", + "nodeType": "YulVariableDeclaration", + "src": "22257:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22273:3:74", + "nodeType": "YulIdentifier", + "src": "22273:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "22282:6:74", + "nodeType": "YulIdentifier", + "src": "22282:6:74" + }, + { + "kind": "number", + "nativeSrc": "22290:4:74", + "nodeType": "YulLiteral", + "src": "22290:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "22278:3:74", + "nodeType": "YulIdentifier", + "src": "22278:3:74" + }, + "nativeSrc": "22278:17:74", + "nodeType": "YulFunctionCall", + "src": "22278:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22269:3:74", + "nodeType": "YulIdentifier", + "src": "22269:3:74" + }, + "nativeSrc": "22269:27:74", + "nodeType": "YulFunctionCall", + "src": "22269:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "22261:4:74", + "nodeType": "YulTypedName", + "src": "22261:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22305:80:74", + "nodeType": "YulVariableDeclaration", + "src": "22305:80:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22379:5:74", + "nodeType": "YulIdentifier", + "src": "22379:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "22320:58:74", + "nodeType": "YulIdentifier", + "src": "22320:58:74" + }, + "nativeSrc": "22320:65:74", + "nodeType": "YulFunctionCall", + "src": "22320:65:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "22309:7:74", + "nodeType": "YulTypedName", + "src": "22309:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22394:21:74", + "nodeType": "YulVariableDeclaration", + "src": "22394:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "22408:7:74", + "nodeType": "YulIdentifier", + "src": "22408:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "22398:6:74", + "nodeType": "YulTypedName", + "src": "22398:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "22484:333:74", + "nodeType": "YulBlock", + "src": "22484:333:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22505:3:74", + "nodeType": "YulIdentifier", + "src": "22505:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "22514:4:74", + "nodeType": "YulIdentifier", + "src": "22514:4:74" + }, + { + "name": "headStart", + "nativeSrc": "22520:9:74", + "nodeType": "YulIdentifier", + "src": "22520:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22510:3:74", + "nodeType": "YulIdentifier", + "src": "22510:3:74" + }, + "nativeSrc": "22510:20:74", + "nodeType": "YulFunctionCall", + "src": "22510:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22498:6:74", + "nodeType": "YulIdentifier", + "src": "22498:6:74" + }, + "nativeSrc": "22498:33:74", + "nodeType": "YulFunctionCall", + "src": "22498:33:74" + }, + "nativeSrc": "22498:33:74", + "nodeType": "YulExpressionStatement", + "src": "22498:33:74" + }, + { + "nativeSrc": "22544:34:74", + "nodeType": "YulVariableDeclaration", + "src": "22544:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "22571:6:74", + "nodeType": "YulIdentifier", + "src": "22571:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "22565:5:74", + "nodeType": "YulIdentifier", + "src": "22565:5:74" + }, + "nativeSrc": "22565:13:74", + "nodeType": "YulFunctionCall", + "src": "22565:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "22548:13:74", + "nodeType": "YulTypedName", + "src": "22548:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22591:90:74", + "nodeType": "YulAssignment", + "src": "22591:90:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "22661:13:74", + "nodeType": "YulIdentifier", + "src": "22661:13:74" + }, + { + "name": "tail", + "nativeSrc": "22676:4:74", + "nodeType": "YulIdentifier", + "src": "22676:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "22599:61:74", + "nodeType": "YulIdentifier", + "src": "22599:61:74" + }, + "nativeSrc": "22599:82:74", + "nodeType": "YulFunctionCall", + "src": "22599:82:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22591:4:74", + "nodeType": "YulIdentifier", + "src": "22591:4:74" + } + ] + }, + { + "nativeSrc": "22694:79:74", + "nodeType": "YulAssignment", + "src": "22694:79:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "22766:6:74", + "nodeType": "YulIdentifier", + "src": "22766:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "22704:61:74", + "nodeType": "YulIdentifier", + "src": "22704:61:74" + }, + "nativeSrc": "22704:69:74", + "nodeType": "YulFunctionCall", + "src": "22704:69:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "22694:6:74", + "nodeType": "YulIdentifier", + "src": "22694:6:74" + } + ] + }, + { + "nativeSrc": "22786:21:74", + "nodeType": "YulAssignment", + "src": "22786:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22797:3:74", + "nodeType": "YulIdentifier", + "src": "22797:3:74" + }, + { + "kind": "number", + "nativeSrc": "22802:4:74", + "nodeType": "YulLiteral", + "src": "22802:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22793:3:74", + "nodeType": "YulIdentifier", + "src": "22793:3:74" + }, + "nativeSrc": "22793:14:74", + "nodeType": "YulFunctionCall", + "src": "22793:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "22786:3:74", + "nodeType": "YulIdentifier", + "src": "22786:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "22446:1:74", + "nodeType": "YulIdentifier", + "src": "22446:1:74" + }, + { + "name": "length", + "nativeSrc": "22449:6:74", + "nodeType": "YulIdentifier", + "src": "22449:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "22443:2:74", + "nodeType": "YulIdentifier", + "src": "22443:2:74" + }, + "nativeSrc": "22443:13:74", + "nodeType": "YulFunctionCall", + "src": "22443:13:74" + }, + "nativeSrc": "22424:393:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "22457:18:74", + "nodeType": "YulBlock", + "src": "22457:18:74", + "statements": [ + { + "nativeSrc": "22459:14:74", + "nodeType": "YulAssignment", + "src": "22459:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "22468:1:74", + "nodeType": "YulIdentifier", + "src": "22468:1:74" + }, + { + "kind": "number", + "nativeSrc": "22471:1:74", + "nodeType": "YulLiteral", + "src": "22471:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22464:3:74", + "nodeType": "YulIdentifier", + "src": "22464:3:74" + }, + "nativeSrc": "22464:9:74", + "nodeType": "YulFunctionCall", + "src": "22464:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "22459:1:74", + "nodeType": "YulIdentifier", + "src": "22459:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "22428:14:74", + "nodeType": "YulBlock", + "src": "22428:14:74", + "statements": [ + { + "nativeSrc": "22430:10:74", + "nodeType": "YulVariableDeclaration", + "src": "22430:10:74", + "value": { + "kind": "number", + "nativeSrc": "22439:1:74", + "nodeType": "YulLiteral", + "src": "22439:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "22434:1:74", + "nodeType": "YulTypedName", + "src": "22434:1:74", + "type": "" + } + ] + } + ] + }, + "src": "22424:393:74" + }, + { + "nativeSrc": "22826:11:74", + "nodeType": "YulAssignment", + "src": "22826:11:74", + "value": { + "name": "tail", + "nativeSrc": "22833:4:74", + "nodeType": "YulIdentifier", + "src": "22833:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "22826:3:74", + "nodeType": "YulIdentifier", + "src": "22826:3:74" + } + ] + }, + { + "nativeSrc": "22846:10:74", + "nodeType": "YulAssignment", + "src": "22846:10:74", + "value": { + "name": "pos", + "nativeSrc": "22853:3:74", + "nodeType": "YulIdentifier", + "src": "22853:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "22846:3:74", + "nodeType": "YulIdentifier", + "src": "22846:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "21879:983:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22000:5:74", + "nodeType": "YulTypedName", + "src": "22000:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "22007:3:74", + "nodeType": "YulTypedName", + "src": "22007:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "22016:3:74", + "nodeType": "YulTypedName", + "src": "22016:3:74", + "type": "" + } + ], + "src": "21879:983:74" + }, + { + "body": { + "nativeSrc": "23034:243:74", + "nodeType": "YulBlock", + "src": "23034:243:74", + "statements": [ + { + "nativeSrc": "23044:26:74", + "nodeType": "YulAssignment", + "src": "23044:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23056:9:74", + "nodeType": "YulIdentifier", + "src": "23056:9:74" + }, + { + "kind": "number", + "nativeSrc": "23067:2:74", + "nodeType": "YulLiteral", + "src": "23067:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23052:3:74", + "nodeType": "YulIdentifier", + "src": "23052:3:74" + }, + "nativeSrc": "23052:18:74", + "nodeType": "YulFunctionCall", + "src": "23052:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23044:4:74", + "nodeType": "YulIdentifier", + "src": "23044:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23091:9:74", + "nodeType": "YulIdentifier", + "src": "23091:9:74" + }, + { + "kind": "number", + "nativeSrc": "23102:1:74", + "nodeType": "YulLiteral", + "src": "23102:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23087:3:74", + "nodeType": "YulIdentifier", + "src": "23087:3:74" + }, + "nativeSrc": "23087:17:74", + "nodeType": "YulFunctionCall", + "src": "23087:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "23110:4:74", + "nodeType": "YulIdentifier", + "src": "23110:4:74" + }, + { + "name": "headStart", + "nativeSrc": "23116:9:74", + "nodeType": "YulIdentifier", + "src": "23116:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23106:3:74", + "nodeType": "YulIdentifier", + "src": "23106:3:74" + }, + "nativeSrc": "23106:20:74", + "nodeType": "YulFunctionCall", + "src": "23106:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23080:6:74", + "nodeType": "YulIdentifier", + "src": "23080:6:74" + }, + "nativeSrc": "23080:47:74", + "nodeType": "YulFunctionCall", + "src": "23080:47:74" + }, + "nativeSrc": "23080:47:74", + "nodeType": "YulExpressionStatement", + "src": "23080:47:74" + }, + { + "nativeSrc": "23136:134:74", + "nodeType": "YulAssignment", + "src": "23136:134:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "23256:6:74", + "nodeType": "YulIdentifier", + "src": "23256:6:74" + }, + { + "name": "tail", + "nativeSrc": "23265:4:74", + "nodeType": "YulIdentifier", + "src": "23265:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "23144:111:74", + "nodeType": "YulIdentifier", + "src": "23144:111:74" + }, + "nativeSrc": "23144:126:74", + "nodeType": "YulFunctionCall", + "src": "23144:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23136:4:74", + "nodeType": "YulIdentifier", + "src": "23136:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "22868:409:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23006:9:74", + "nodeType": "YulTypedName", + "src": "23006:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "23018:6:74", + "nodeType": "YulTypedName", + "src": "23018:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "23029:4:74", + "nodeType": "YulTypedName", + "src": "23029:4:74", + "type": "" + } + ], + "src": "22868:409:74" + }, + { + "body": { + "nativeSrc": "23348:53:74", + "nodeType": "YulBlock", + "src": "23348:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23365:3:74", + "nodeType": "YulIdentifier", + "src": "23365:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23388:5:74", + "nodeType": "YulIdentifier", + "src": "23388:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "23370:17:74", + "nodeType": "YulIdentifier", + "src": "23370:17:74" + }, + "nativeSrc": "23370:24:74", + "nodeType": "YulFunctionCall", + "src": "23370:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23358:6:74", + "nodeType": "YulIdentifier", + "src": "23358:6:74" + }, + "nativeSrc": "23358:37:74", + "nodeType": "YulFunctionCall", + "src": "23358:37:74" + }, + "nativeSrc": "23358:37:74", + "nodeType": "YulExpressionStatement", + "src": "23358:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "23283:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23336:5:74", + "nodeType": "YulTypedName", + "src": "23336:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "23343:3:74", + "nodeType": "YulTypedName", + "src": "23343:3:74", + "type": "" + } + ], + "src": "23283:118:74" + }, + { + "body": { + "nativeSrc": "23533:206:74", + "nodeType": "YulBlock", + "src": "23533:206:74", + "statements": [ + { + "nativeSrc": "23543:26:74", + "nodeType": "YulAssignment", + "src": "23543:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23555:9:74", + "nodeType": "YulIdentifier", + "src": "23555:9:74" + }, + { + "kind": "number", + "nativeSrc": "23566:2:74", + "nodeType": "YulLiteral", + "src": "23566:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23551:3:74", + "nodeType": "YulIdentifier", + "src": "23551:3:74" + }, + "nativeSrc": "23551:18:74", + "nodeType": "YulFunctionCall", + "src": "23551:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23543:4:74", + "nodeType": "YulIdentifier", + "src": "23543:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "23623:6:74", + "nodeType": "YulIdentifier", + "src": "23623:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23636:9:74", + "nodeType": "YulIdentifier", + "src": "23636:9:74" + }, + { + "kind": "number", + "nativeSrc": "23647:1:74", + "nodeType": "YulLiteral", + "src": "23647:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23632:3:74", + "nodeType": "YulIdentifier", + "src": "23632:3:74" + }, + "nativeSrc": "23632:17:74", + "nodeType": "YulFunctionCall", + "src": "23632:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "23579:43:74", + "nodeType": "YulIdentifier", + "src": "23579:43:74" + }, + "nativeSrc": "23579:71:74", + "nodeType": "YulFunctionCall", + "src": "23579:71:74" + }, + "nativeSrc": "23579:71:74", + "nodeType": "YulExpressionStatement", + "src": "23579:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "23704:6:74", + "nodeType": "YulIdentifier", + "src": "23704:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23717:9:74", + "nodeType": "YulIdentifier", + "src": "23717:9:74" + }, + { + "kind": "number", + "nativeSrc": "23728:2:74", + "nodeType": "YulLiteral", + "src": "23728:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23713:3:74", + "nodeType": "YulIdentifier", + "src": "23713:3:74" + }, + "nativeSrc": "23713:18:74", + "nodeType": "YulFunctionCall", + "src": "23713:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "23660:43:74", + "nodeType": "YulIdentifier", + "src": "23660:43:74" + }, + "nativeSrc": "23660:72:74", + "nodeType": "YulFunctionCall", + "src": "23660:72:74" + }, + "nativeSrc": "23660:72:74", + "nodeType": "YulExpressionStatement", + "src": "23660:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed", + "nativeSrc": "23407:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23497:9:74", + "nodeType": "YulTypedName", + "src": "23497:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "23509:6:74", + "nodeType": "YulTypedName", + "src": "23509:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "23517:6:74", + "nodeType": "YulTypedName", + "src": "23517:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "23528:4:74", + "nodeType": "YulTypedName", + "src": "23528:4:74", + "type": "" + } + ], + "src": "23407:332:74" + }, + { + "body": { + "nativeSrc": "23828:391:74", + "nodeType": "YulBlock", + "src": "23828:391:74", + "statements": [ + { + "body": { + "nativeSrc": "23874:83:74", + "nodeType": "YulBlock", + "src": "23874:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "23876:77:74", + "nodeType": "YulIdentifier", + "src": "23876:77:74" + }, + "nativeSrc": "23876:79:74", + "nodeType": "YulFunctionCall", + "src": "23876:79:74" + }, + "nativeSrc": "23876:79:74", + "nodeType": "YulExpressionStatement", + "src": "23876:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "23849:7:74", + "nodeType": "YulIdentifier", + "src": "23849:7:74" + }, + { + "name": "headStart", + "nativeSrc": "23858:9:74", + "nodeType": "YulIdentifier", + "src": "23858:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23845:3:74", + "nodeType": "YulIdentifier", + "src": "23845:3:74" + }, + "nativeSrc": "23845:23:74", + "nodeType": "YulFunctionCall", + "src": "23845:23:74" + }, + { + "kind": "number", + "nativeSrc": "23870:2:74", + "nodeType": "YulLiteral", + "src": "23870:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "23841:3:74", + "nodeType": "YulIdentifier", + "src": "23841:3:74" + }, + "nativeSrc": "23841:32:74", + "nodeType": "YulFunctionCall", + "src": "23841:32:74" + }, + "nativeSrc": "23838:119:74", + "nodeType": "YulIf", + "src": "23838:119:74" + }, + { + "nativeSrc": "23967:117:74", + "nodeType": "YulBlock", + "src": "23967:117:74", + "statements": [ + { + "nativeSrc": "23982:15:74", + "nodeType": "YulVariableDeclaration", + "src": "23982:15:74", + "value": { + "kind": "number", + "nativeSrc": "23996:1:74", + "nodeType": "YulLiteral", + "src": "23996:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23986:6:74", + "nodeType": "YulTypedName", + "src": "23986:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "24011:63:74", + "nodeType": "YulAssignment", + "src": "24011:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24046:9:74", + "nodeType": "YulIdentifier", + "src": "24046:9:74" + }, + { + "name": "offset", + "nativeSrc": "24057:6:74", + "nodeType": "YulIdentifier", + "src": "24057:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24042:3:74", + "nodeType": "YulIdentifier", + "src": "24042:3:74" + }, + "nativeSrc": "24042:22:74", + "nodeType": "YulFunctionCall", + "src": "24042:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "24066:7:74", + "nodeType": "YulIdentifier", + "src": "24066:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "24021:20:74", + "nodeType": "YulIdentifier", + "src": "24021:20:74" + }, + "nativeSrc": "24021:53:74", + "nodeType": "YulFunctionCall", + "src": "24021:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "24011:6:74", + "nodeType": "YulIdentifier", + "src": "24011:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "24094:118:74", + "nodeType": "YulBlock", + "src": "24094:118:74", + "statements": [ + { + "nativeSrc": "24109:16:74", + "nodeType": "YulVariableDeclaration", + "src": "24109:16:74", + "value": { + "kind": "number", + "nativeSrc": "24123:2:74", + "nodeType": "YulLiteral", + "src": "24123:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "24113:6:74", + "nodeType": "YulTypedName", + "src": "24113:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "24139:63:74", + "nodeType": "YulAssignment", + "src": "24139:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24174:9:74", + "nodeType": "YulIdentifier", + "src": "24174:9:74" + }, + { + "name": "offset", + "nativeSrc": "24185:6:74", + "nodeType": "YulIdentifier", + "src": "24185:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24170:3:74", + "nodeType": "YulIdentifier", + "src": "24170:3:74" + }, + "nativeSrc": "24170:22:74", + "nodeType": "YulFunctionCall", + "src": "24170:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "24194:7:74", + "nodeType": "YulIdentifier", + "src": "24194:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "24149:20:74", + "nodeType": "YulIdentifier", + "src": "24149:20:74" + }, + "nativeSrc": "24149:53:74", + "nodeType": "YulFunctionCall", + "src": "24149:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "24139:6:74", + "nodeType": "YulIdentifier", + "src": "24139:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_address", + "nativeSrc": "23745:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23790:9:74", + "nodeType": "YulTypedName", + "src": "23790:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "23801:7:74", + "nodeType": "YulTypedName", + "src": "23801:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "23813:6:74", + "nodeType": "YulTypedName", + "src": "23813:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "23821:6:74", + "nodeType": "YulTypedName", + "src": "23821:6:74", + "type": "" + } + ], + "src": "23745:474:74" + }, + { + "body": { + "nativeSrc": "24269:57:74", + "nodeType": "YulBlock", + "src": "24269:57:74", + "statements": [ + { + "nativeSrc": "24279:41:74", + "nodeType": "YulAssignment", + "src": "24279:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "24294:5:74", + "nodeType": "YulIdentifier", + "src": "24294:5:74" + }, + { + "kind": "number", + "nativeSrc": "24301:18:74", + "nodeType": "YulLiteral", + "src": "24301:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "24290:3:74", + "nodeType": "YulIdentifier", + "src": "24290:3:74" + }, + "nativeSrc": "24290:30:74", + "nodeType": "YulFunctionCall", + "src": "24290:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "24279:7:74", + "nodeType": "YulIdentifier", + "src": "24279:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "24225:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "24251:5:74", + "nodeType": "YulTypedName", + "src": "24251:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "24261:7:74", + "nodeType": "YulTypedName", + "src": "24261:7:74", + "type": "" + } + ], + "src": "24225:101:74" + }, + { + "body": { + "nativeSrc": "24395:52:74", + "nodeType": "YulBlock", + "src": "24395:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24412:3:74", + "nodeType": "YulIdentifier", + "src": "24412:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "24434:5:74", + "nodeType": "YulIdentifier", + "src": "24434:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "24417:16:74", + "nodeType": "YulIdentifier", + "src": "24417:16:74" + }, + "nativeSrc": "24417:23:74", + "nodeType": "YulFunctionCall", + "src": "24417:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24405:6:74", + "nodeType": "YulIdentifier", + "src": "24405:6:74" + }, + "nativeSrc": "24405:36:74", + "nodeType": "YulFunctionCall", + "src": "24405:36:74" + }, + "nativeSrc": "24405:36:74", + "nodeType": "YulExpressionStatement", + "src": "24405:36:74" + } + ] + }, + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "24332:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "24383:5:74", + "nodeType": "YulTypedName", + "src": "24383:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "24390:3:74", + "nodeType": "YulTypedName", + "src": "24390:3:74", + "type": "" + } + ], + "src": "24332:115:74" + }, + { + "body": { + "nativeSrc": "24549:122:74", + "nodeType": "YulBlock", + "src": "24549:122:74", + "statements": [ + { + "nativeSrc": "24559:26:74", + "nodeType": "YulAssignment", + "src": "24559:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24571:9:74", + "nodeType": "YulIdentifier", + "src": "24571:9:74" + }, + { + "kind": "number", + "nativeSrc": "24582:2:74", + "nodeType": "YulLiteral", + "src": "24582:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24567:3:74", + "nodeType": "YulIdentifier", + "src": "24567:3:74" + }, + "nativeSrc": "24567:18:74", + "nodeType": "YulFunctionCall", + "src": "24567:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24559:4:74", + "nodeType": "YulIdentifier", + "src": "24559:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "24637:6:74", + "nodeType": "YulIdentifier", + "src": "24637:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24650:9:74", + "nodeType": "YulIdentifier", + "src": "24650:9:74" + }, + { + "kind": "number", + "nativeSrc": "24661:1:74", + "nodeType": "YulLiteral", + "src": "24661:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24646:3:74", + "nodeType": "YulIdentifier", + "src": "24646:3:74" + }, + "nativeSrc": "24646:17:74", + "nodeType": "YulFunctionCall", + "src": "24646:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "24595:41:74", + "nodeType": "YulIdentifier", + "src": "24595:41:74" + }, + "nativeSrc": "24595:69:74", + "nodeType": "YulFunctionCall", + "src": "24595:69:74" + }, + "nativeSrc": "24595:69:74", + "nodeType": "YulExpressionStatement", + "src": "24595:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed", + "nativeSrc": "24453:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "24521:9:74", + "nodeType": "YulTypedName", + "src": "24521:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "24533:6:74", + "nodeType": "YulTypedName", + "src": "24533:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "24544:4:74", + "nodeType": "YulTypedName", + "src": "24544:4:74", + "type": "" + } + ], + "src": "24453:218:74" + }, + { + "body": { + "nativeSrc": "24806:597:74", + "nodeType": "YulBlock", + "src": "24806:597:74", + "statements": [ + { + "body": { + "nativeSrc": "24852:83:74", + "nodeType": "YulBlock", + "src": "24852:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "24854:77:74", + "nodeType": "YulIdentifier", + "src": "24854:77:74" + }, + "nativeSrc": "24854:79:74", + "nodeType": "YulFunctionCall", + "src": "24854:79:74" + }, + "nativeSrc": "24854:79:74", + "nodeType": "YulExpressionStatement", + "src": "24854:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "24827:7:74", + "nodeType": "YulIdentifier", + "src": "24827:7:74" + }, + { + "name": "headStart", + "nativeSrc": "24836:9:74", + "nodeType": "YulIdentifier", + "src": "24836:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "24823:3:74", + "nodeType": "YulIdentifier", + "src": "24823:3:74" + }, + "nativeSrc": "24823:23:74", + "nodeType": "YulFunctionCall", + "src": "24823:23:74" + }, + { + "kind": "number", + "nativeSrc": "24848:2:74", + "nodeType": "YulLiteral", + "src": "24848:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "24819:3:74", + "nodeType": "YulIdentifier", + "src": "24819:3:74" + }, + "nativeSrc": "24819:32:74", + "nodeType": "YulFunctionCall", + "src": "24819:32:74" + }, + "nativeSrc": "24816:119:74", + "nodeType": "YulIf", + "src": "24816:119:74" + }, + { + "nativeSrc": "24945:117:74", + "nodeType": "YulBlock", + "src": "24945:117:74", + "statements": [ + { + "nativeSrc": "24960:15:74", + "nodeType": "YulVariableDeclaration", + "src": "24960:15:74", + "value": { + "kind": "number", + "nativeSrc": "24974:1:74", + "nodeType": "YulLiteral", + "src": "24974:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "24964:6:74", + "nodeType": "YulTypedName", + "src": "24964:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "24989:63:74", + "nodeType": "YulAssignment", + "src": "24989:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25024:9:74", + "nodeType": "YulIdentifier", + "src": "25024:9:74" + }, + { + "name": "offset", + "nativeSrc": "25035:6:74", + "nodeType": "YulIdentifier", + "src": "25035:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25020:3:74", + "nodeType": "YulIdentifier", + "src": "25020:3:74" + }, + "nativeSrc": "25020:22:74", + "nodeType": "YulFunctionCall", + "src": "25020:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "25044:7:74", + "nodeType": "YulIdentifier", + "src": "25044:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "24999:20:74", + "nodeType": "YulIdentifier", + "src": "24999:20:74" + }, + "nativeSrc": "24999:53:74", + "nodeType": "YulFunctionCall", + "src": "24999:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "24989:6:74", + "nodeType": "YulIdentifier", + "src": "24989:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "25072:324:74", + "nodeType": "YulBlock", + "src": "25072:324:74", + "statements": [ + { + "nativeSrc": "25087:46:74", + "nodeType": "YulVariableDeclaration", + "src": "25087:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25118:9:74", + "nodeType": "YulIdentifier", + "src": "25118:9:74" + }, + { + "kind": "number", + "nativeSrc": "25129:2:74", + "nodeType": "YulLiteral", + "src": "25129:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25114:3:74", + "nodeType": "YulIdentifier", + "src": "25114:3:74" + }, + "nativeSrc": "25114:18:74", + "nodeType": "YulFunctionCall", + "src": "25114:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "25101:12:74", + "nodeType": "YulIdentifier", + "src": "25101:12:74" + }, + "nativeSrc": "25101:32:74", + "nodeType": "YulFunctionCall", + "src": "25101:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "25091:6:74", + "nodeType": "YulTypedName", + "src": "25091:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "25180:83:74", + "nodeType": "YulBlock", + "src": "25180:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "25182:77:74", + "nodeType": "YulIdentifier", + "src": "25182:77:74" + }, + "nativeSrc": "25182:79:74", + "nodeType": "YulFunctionCall", + "src": "25182:79:74" + }, + "nativeSrc": "25182:79:74", + "nodeType": "YulExpressionStatement", + "src": "25182:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25152:6:74", + "nodeType": "YulIdentifier", + "src": "25152:6:74" + }, + { + "kind": "number", + "nativeSrc": "25160:18:74", + "nodeType": "YulLiteral", + "src": "25160:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "25149:2:74", + "nodeType": "YulIdentifier", + "src": "25149:2:74" + }, + "nativeSrc": "25149:30:74", + "nodeType": "YulFunctionCall", + "src": "25149:30:74" + }, + "nativeSrc": "25146:117:74", + "nodeType": "YulIf", + "src": "25146:117:74" + }, + { + "nativeSrc": "25277:109:74", + "nodeType": "YulAssignment", + "src": "25277:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25358:9:74", + "nodeType": "YulIdentifier", + "src": "25358:9:74" + }, + { + "name": "offset", + "nativeSrc": "25369:6:74", + "nodeType": "YulIdentifier", + "src": "25369:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25354:3:74", + "nodeType": "YulIdentifier", + "src": "25354:3:74" + }, + "nativeSrc": "25354:22:74", + "nodeType": "YulFunctionCall", + "src": "25354:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "25378:7:74", + "nodeType": "YulIdentifier", + "src": "25378:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "25295:58:74", + "nodeType": "YulIdentifier", + "src": "25295:58:74" + }, + "nativeSrc": "25295:91:74", + "nodeType": "YulFunctionCall", + "src": "25295:91:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "25277:6:74", + "nodeType": "YulIdentifier", + "src": "25277:6:74" + }, + { + "name": "value2", + "nativeSrc": "25285:6:74", + "nodeType": "YulIdentifier", + "src": "25285:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", + "nativeSrc": "24677:726:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "24760:9:74", + "nodeType": "YulTypedName", + "src": "24760:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "24771:7:74", + "nodeType": "YulTypedName", + "src": "24771:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "24783:6:74", + "nodeType": "YulTypedName", + "src": "24783:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "24791:6:74", + "nodeType": "YulTypedName", + "src": "24791:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "24799:6:74", + "nodeType": "YulTypedName", + "src": "24799:6:74", + "type": "" + } + ], + "src": "24677:726:74" + }, + { + "body": { + "nativeSrc": "25508:518:74", + "nodeType": "YulBlock", + "src": "25508:518:74", + "statements": [ + { + "body": { + "nativeSrc": "25554:83:74", + "nodeType": "YulBlock", + "src": "25554:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "25556:77:74", + "nodeType": "YulIdentifier", + "src": "25556:77:74" + }, + "nativeSrc": "25556:79:74", + "nodeType": "YulFunctionCall", + "src": "25556:79:74" + }, + "nativeSrc": "25556:79:74", + "nodeType": "YulExpressionStatement", + "src": "25556:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "25529:7:74", + "nodeType": "YulIdentifier", + "src": "25529:7:74" + }, + { + "name": "headStart", + "nativeSrc": "25538:9:74", + "nodeType": "YulIdentifier", + "src": "25538:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "25525:3:74", + "nodeType": "YulIdentifier", + "src": "25525:3:74" + }, + "nativeSrc": "25525:23:74", + "nodeType": "YulFunctionCall", + "src": "25525:23:74" + }, + { + "kind": "number", + "nativeSrc": "25550:2:74", + "nodeType": "YulLiteral", + "src": "25550:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "25521:3:74", + "nodeType": "YulIdentifier", + "src": "25521:3:74" + }, + "nativeSrc": "25521:32:74", + "nodeType": "YulFunctionCall", + "src": "25521:32:74" + }, + "nativeSrc": "25518:119:74", + "nodeType": "YulIf", + "src": "25518:119:74" + }, + { + "nativeSrc": "25647:117:74", + "nodeType": "YulBlock", + "src": "25647:117:74", + "statements": [ + { + "nativeSrc": "25662:15:74", + "nodeType": "YulVariableDeclaration", + "src": "25662:15:74", + "value": { + "kind": "number", + "nativeSrc": "25676:1:74", + "nodeType": "YulLiteral", + "src": "25676:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "25666:6:74", + "nodeType": "YulTypedName", + "src": "25666:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25691:63:74", + "nodeType": "YulAssignment", + "src": "25691:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25726:9:74", + "nodeType": "YulIdentifier", + "src": "25726:9:74" + }, + { + "name": "offset", + "nativeSrc": "25737:6:74", + "nodeType": "YulIdentifier", + "src": "25737:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25722:3:74", + "nodeType": "YulIdentifier", + "src": "25722:3:74" + }, + "nativeSrc": "25722:22:74", + "nodeType": "YulFunctionCall", + "src": "25722:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "25746:7:74", + "nodeType": "YulIdentifier", + "src": "25746:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "25701:20:74", + "nodeType": "YulIdentifier", + "src": "25701:20:74" + }, + "nativeSrc": "25701:53:74", + "nodeType": "YulFunctionCall", + "src": "25701:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "25691:6:74", + "nodeType": "YulIdentifier", + "src": "25691:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "25774:117:74", + "nodeType": "YulBlock", + "src": "25774:117:74", + "statements": [ + { + "nativeSrc": "25789:16:74", + "nodeType": "YulVariableDeclaration", + "src": "25789:16:74", + "value": { + "kind": "number", + "nativeSrc": "25803:2:74", + "nodeType": "YulLiteral", + "src": "25803:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "25793:6:74", + "nodeType": "YulTypedName", + "src": "25793:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25819:62:74", + "nodeType": "YulAssignment", + "src": "25819:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25853:9:74", + "nodeType": "YulIdentifier", + "src": "25853:9:74" + }, + { + "name": "offset", + "nativeSrc": "25864:6:74", + "nodeType": "YulIdentifier", + "src": "25864:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25849:3:74", + "nodeType": "YulIdentifier", + "src": "25849:3:74" + }, + "nativeSrc": "25849:22:74", + "nodeType": "YulFunctionCall", + "src": "25849:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "25873:7:74", + "nodeType": "YulIdentifier", + "src": "25873:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "25829:19:74", + "nodeType": "YulIdentifier", + "src": "25829:19:74" + }, + "nativeSrc": "25829:52:74", + "nodeType": "YulFunctionCall", + "src": "25829:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "25819:6:74", + "nodeType": "YulIdentifier", + "src": "25819:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "25901:118:74", + "nodeType": "YulBlock", + "src": "25901:118:74", + "statements": [ + { + "nativeSrc": "25916:16:74", + "nodeType": "YulVariableDeclaration", + "src": "25916:16:74", + "value": { + "kind": "number", + "nativeSrc": "25930:2:74", + "nodeType": "YulLiteral", + "src": "25930:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "25920:6:74", + "nodeType": "YulTypedName", + "src": "25920:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25946:63:74", + "nodeType": "YulAssignment", + "src": "25946:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25981:9:74", + "nodeType": "YulIdentifier", + "src": "25981:9:74" + }, + { + "name": "offset", + "nativeSrc": "25992:6:74", + "nodeType": "YulIdentifier", + "src": "25992:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25977:3:74", + "nodeType": "YulIdentifier", + "src": "25977:3:74" + }, + "nativeSrc": "25977:22:74", + "nodeType": "YulFunctionCall", + "src": "25977:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26001:7:74", + "nodeType": "YulIdentifier", + "src": "26001:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "25956:20:74", + "nodeType": "YulIdentifier", + "src": "25956:20:74" + }, + "nativeSrc": "25956:53:74", + "nodeType": "YulFunctionCall", + "src": "25956:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "25946:6:74", + "nodeType": "YulIdentifier", + "src": "25946:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes4t_address", + "nativeSrc": "25409:617:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "25462:9:74", + "nodeType": "YulTypedName", + "src": "25462:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "25473:7:74", + "nodeType": "YulTypedName", + "src": "25473:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "25485:6:74", + "nodeType": "YulTypedName", + "src": "25485:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "25493:6:74", + "nodeType": "YulTypedName", + "src": "25493:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "25501:6:74", + "nodeType": "YulTypedName", + "src": "25501:6:74", + "type": "" + } + ], + "src": "25409:617:74" + }, + { + "body": { + "nativeSrc": "26115:391:74", + "nodeType": "YulBlock", + "src": "26115:391:74", + "statements": [ + { + "body": { + "nativeSrc": "26161:83:74", + "nodeType": "YulBlock", + "src": "26161:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "26163:77:74", + "nodeType": "YulIdentifier", + "src": "26163:77:74" + }, + "nativeSrc": "26163:79:74", + "nodeType": "YulFunctionCall", + "src": "26163:79:74" + }, + "nativeSrc": "26163:79:74", + "nodeType": "YulExpressionStatement", + "src": "26163:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "26136:7:74", + "nodeType": "YulIdentifier", + "src": "26136:7:74" + }, + { + "name": "headStart", + "nativeSrc": "26145:9:74", + "nodeType": "YulIdentifier", + "src": "26145:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "26132:3:74", + "nodeType": "YulIdentifier", + "src": "26132:3:74" + }, + "nativeSrc": "26132:23:74", + "nodeType": "YulFunctionCall", + "src": "26132:23:74" + }, + { + "kind": "number", + "nativeSrc": "26157:2:74", + "nodeType": "YulLiteral", + "src": "26157:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "26128:3:74", + "nodeType": "YulIdentifier", + "src": "26128:3:74" + }, + "nativeSrc": "26128:32:74", + "nodeType": "YulFunctionCall", + "src": "26128:32:74" + }, + "nativeSrc": "26125:119:74", + "nodeType": "YulIf", + "src": "26125:119:74" + }, + { + "nativeSrc": "26254:117:74", + "nodeType": "YulBlock", + "src": "26254:117:74", + "statements": [ + { + "nativeSrc": "26269:15:74", + "nodeType": "YulVariableDeclaration", + "src": "26269:15:74", + "value": { + "kind": "number", + "nativeSrc": "26283:1:74", + "nodeType": "YulLiteral", + "src": "26283:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26273:6:74", + "nodeType": "YulTypedName", + "src": "26273:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26298:63:74", + "nodeType": "YulAssignment", + "src": "26298:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26333:9:74", + "nodeType": "YulIdentifier", + "src": "26333:9:74" + }, + { + "name": "offset", + "nativeSrc": "26344:6:74", + "nodeType": "YulIdentifier", + "src": "26344:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26329:3:74", + "nodeType": "YulIdentifier", + "src": "26329:3:74" + }, + "nativeSrc": "26329:22:74", + "nodeType": "YulFunctionCall", + "src": "26329:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26353:7:74", + "nodeType": "YulIdentifier", + "src": "26353:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "26308:20:74", + "nodeType": "YulIdentifier", + "src": "26308:20:74" + }, + "nativeSrc": "26308:53:74", + "nodeType": "YulFunctionCall", + "src": "26308:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "26298:6:74", + "nodeType": "YulIdentifier", + "src": "26298:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "26381:118:74", + "nodeType": "YulBlock", + "src": "26381:118:74", + "statements": [ + { + "nativeSrc": "26396:16:74", + "nodeType": "YulVariableDeclaration", + "src": "26396:16:74", + "value": { + "kind": "number", + "nativeSrc": "26410:2:74", + "nodeType": "YulLiteral", + "src": "26410:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26400:6:74", + "nodeType": "YulTypedName", + "src": "26400:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26426:63:74", + "nodeType": "YulAssignment", + "src": "26426:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26461:9:74", + "nodeType": "YulIdentifier", + "src": "26461:9:74" + }, + { + "name": "offset", + "nativeSrc": "26472:6:74", + "nodeType": "YulIdentifier", + "src": "26472:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26457:3:74", + "nodeType": "YulIdentifier", + "src": "26457:3:74" + }, + "nativeSrc": "26457:22:74", + "nodeType": "YulFunctionCall", + "src": "26457:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26481:7:74", + "nodeType": "YulIdentifier", + "src": "26481:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "26436:20:74", + "nodeType": "YulIdentifier", + "src": "26436:20:74" + }, + "nativeSrc": "26436:53:74", + "nodeType": "YulFunctionCall", + "src": "26436:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "26426:6:74", + "nodeType": "YulIdentifier", + "src": "26426:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "26032:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "26077:9:74", + "nodeType": "YulTypedName", + "src": "26077:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "26088:7:74", + "nodeType": "YulTypedName", + "src": "26088:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "26100:6:74", + "nodeType": "YulTypedName", + "src": "26100:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "26108:6:74", + "nodeType": "YulTypedName", + "src": "26108:6:74", + "type": "" + } + ], + "src": "26032:474:74" + }, + { + "body": { + "nativeSrc": "26625:34:74", + "nodeType": "YulBlock", + "src": "26625:34:74", + "statements": [ + { + "nativeSrc": "26635:18:74", + "nodeType": "YulAssignment", + "src": "26635:18:74", + "value": { + "name": "pos", + "nativeSrc": "26650:3:74", + "nodeType": "YulIdentifier", + "src": "26650:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "26635:11:74", + "nodeType": "YulIdentifier", + "src": "26635:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "26512:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "26597:3:74", + "nodeType": "YulTypedName", + "src": "26597:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "26602:6:74", + "nodeType": "YulTypedName", + "src": "26602:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "26613:11:74", + "nodeType": "YulTypedName", + "src": "26613:11:74", + "type": "" + } + ], + "src": "26512:147:74" + }, + { + "body": { + "nativeSrc": "26773:278:74", + "nodeType": "YulBlock", + "src": "26773:278:74", + "statements": [ + { + "nativeSrc": "26783:52:74", + "nodeType": "YulVariableDeclaration", + "src": "26783:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "26829:5:74", + "nodeType": "YulIdentifier", + "src": "26829:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "26797:31:74", + "nodeType": "YulIdentifier", + "src": "26797:31:74" + }, + "nativeSrc": "26797:38:74", + "nodeType": "YulFunctionCall", + "src": "26797:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "26787:6:74", + "nodeType": "YulTypedName", + "src": "26787:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26844:95:74", + "nodeType": "YulAssignment", + "src": "26844:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26927:3:74", + "nodeType": "YulIdentifier", + "src": "26927:3:74" + }, + { + "name": "length", + "nativeSrc": "26932:6:74", + "nodeType": "YulIdentifier", + "src": "26932:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "26851:75:74", + "nodeType": "YulIdentifier", + "src": "26851:75:74" + }, + "nativeSrc": "26851:88:74", + "nodeType": "YulFunctionCall", + "src": "26851:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "26844:3:74", + "nodeType": "YulIdentifier", + "src": "26844:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "26987:5:74", + "nodeType": "YulIdentifier", + "src": "26987:5:74" + }, + { + "kind": "number", + "nativeSrc": "26994:4:74", + "nodeType": "YulLiteral", + "src": "26994:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26983:3:74", + "nodeType": "YulIdentifier", + "src": "26983:3:74" + }, + "nativeSrc": "26983:16:74", + "nodeType": "YulFunctionCall", + "src": "26983:16:74" + }, + { + "name": "pos", + "nativeSrc": "27001:3:74", + "nodeType": "YulIdentifier", + "src": "27001:3:74" + }, + { + "name": "length", + "nativeSrc": "27006:6:74", + "nodeType": "YulIdentifier", + "src": "27006:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "26948:34:74", + "nodeType": "YulIdentifier", + "src": "26948:34:74" + }, + "nativeSrc": "26948:65:74", + "nodeType": "YulFunctionCall", + "src": "26948:65:74" + }, + "nativeSrc": "26948:65:74", + "nodeType": "YulExpressionStatement", + "src": "26948:65:74" + }, + { + "nativeSrc": "27022:23:74", + "nodeType": "YulAssignment", + "src": "27022:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27033:3:74", + "nodeType": "YulIdentifier", + "src": "27033:3:74" + }, + { + "name": "length", + "nativeSrc": "27038:6:74", + "nodeType": "YulIdentifier", + "src": "27038:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27029:3:74", + "nodeType": "YulIdentifier", + "src": "27029:3:74" + }, + "nativeSrc": "27029:16:74", + "nodeType": "YulFunctionCall", + "src": "27029:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "27022:3:74", + "nodeType": "YulIdentifier", + "src": "27022:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "26665:386:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "26754:5:74", + "nodeType": "YulTypedName", + "src": "26754:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "26761:3:74", + "nodeType": "YulTypedName", + "src": "26761:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "26769:3:74", + "nodeType": "YulTypedName", + "src": "26769:3:74", + "type": "" + } + ], + "src": "26665:386:74" + }, + { + "body": { + "nativeSrc": "27191:137:74", + "nodeType": "YulBlock", + "src": "27191:137:74", + "statements": [ + { + "nativeSrc": "27202:100:74", + "nodeType": "YulAssignment", + "src": "27202:100:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "27289:6:74", + "nodeType": "YulIdentifier", + "src": "27289:6:74" + }, + { + "name": "pos", + "nativeSrc": "27298:3:74", + "nodeType": "YulIdentifier", + "src": "27298:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "27209:79:74", + "nodeType": "YulIdentifier", + "src": "27209:79:74" + }, + "nativeSrc": "27209:93:74", + "nodeType": "YulFunctionCall", + "src": "27209:93:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "27202:3:74", + "nodeType": "YulIdentifier", + "src": "27202:3:74" + } + ] + }, + { + "nativeSrc": "27312:10:74", + "nodeType": "YulAssignment", + "src": "27312:10:74", + "value": { + "name": "pos", + "nativeSrc": "27319:3:74", + "nodeType": "YulIdentifier", + "src": "27319:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "27312:3:74", + "nodeType": "YulIdentifier", + "src": "27312:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "27057:271:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "27170:3:74", + "nodeType": "YulTypedName", + "src": "27170:3:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "27176:6:74", + "nodeType": "YulTypedName", + "src": "27176:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "27187:3:74", + "nodeType": "YulTypedName", + "src": "27187:3:74", + "type": "" + } + ], + "src": "27057:271:74" + }, + { + "body": { + "nativeSrc": "27362:152:74", + "nodeType": "YulBlock", + "src": "27362:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27379:1:74", + "nodeType": "YulLiteral", + "src": "27379:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "27382:77:74", + "nodeType": "YulLiteral", + "src": "27382:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27372:6:74", + "nodeType": "YulIdentifier", + "src": "27372:6:74" + }, + "nativeSrc": "27372:88:74", + "nodeType": "YulFunctionCall", + "src": "27372:88:74" + }, + "nativeSrc": "27372:88:74", + "nodeType": "YulExpressionStatement", + "src": "27372:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27476:1:74", + "nodeType": "YulLiteral", + "src": "27476:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "27479:4:74", + "nodeType": "YulLiteral", + "src": "27479:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27469:6:74", + "nodeType": "YulIdentifier", + "src": "27469:6:74" + }, + "nativeSrc": "27469:15:74", + "nodeType": "YulFunctionCall", + "src": "27469:15:74" + }, + "nativeSrc": "27469:15:74", + "nodeType": "YulExpressionStatement", + "src": "27469:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "27500:1:74", + "nodeType": "YulLiteral", + "src": "27500:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "27503:4:74", + "nodeType": "YulLiteral", + "src": "27503:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "27493:6:74", + "nodeType": "YulIdentifier", + "src": "27493:6:74" + }, + "nativeSrc": "27493:15:74", + "nodeType": "YulFunctionCall", + "src": "27493:15:74" + }, + "nativeSrc": "27493:15:74", + "nodeType": "YulExpressionStatement", + "src": "27493:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "27334:180:74", + "nodeType": "YulFunctionDefinition", + "src": "27334:180:74" + }, + { + "body": { + "nativeSrc": "27565:149:74", + "nodeType": "YulBlock", + "src": "27565:149:74", + "statements": [ + { + "nativeSrc": "27575:25:74", + "nodeType": "YulAssignment", + "src": "27575:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "27598:1:74", + "nodeType": "YulIdentifier", + "src": "27598:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "27580:17:74", + "nodeType": "YulIdentifier", + "src": "27580:17:74" + }, + "nativeSrc": "27580:20:74", + "nodeType": "YulFunctionCall", + "src": "27580:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "27575:1:74", + "nodeType": "YulIdentifier", + "src": "27575:1:74" + } + ] + }, + { + "nativeSrc": "27609:25:74", + "nodeType": "YulAssignment", + "src": "27609:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "27632:1:74", + "nodeType": "YulIdentifier", + "src": "27632:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "27614:17:74", + "nodeType": "YulIdentifier", + "src": "27614:17:74" + }, + "nativeSrc": "27614:20:74", + "nodeType": "YulFunctionCall", + "src": "27614:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "27609:1:74", + "nodeType": "YulIdentifier", + "src": "27609:1:74" + } + ] + }, + { + "nativeSrc": "27643:17:74", + "nodeType": "YulAssignment", + "src": "27643:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "27655:1:74", + "nodeType": "YulIdentifier", + "src": "27655:1:74" + }, + { + "name": "y", + "nativeSrc": "27658:1:74", + "nodeType": "YulIdentifier", + "src": "27658:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27651:3:74", + "nodeType": "YulIdentifier", + "src": "27651:3:74" + }, + "nativeSrc": "27651:9:74", + "nodeType": "YulFunctionCall", + "src": "27651:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "27643:4:74", + "nodeType": "YulIdentifier", + "src": "27643:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "27685:22:74", + "nodeType": "YulBlock", + "src": "27685:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "27687:16:74", + "nodeType": "YulIdentifier", + "src": "27687:16:74" + }, + "nativeSrc": "27687:18:74", + "nodeType": "YulFunctionCall", + "src": "27687:18:74" + }, + "nativeSrc": "27687:18:74", + "nodeType": "YulExpressionStatement", + "src": "27687:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "27676:4:74", + "nodeType": "YulIdentifier", + "src": "27676:4:74" + }, + { + "name": "x", + "nativeSrc": "27682:1:74", + "nodeType": "YulIdentifier", + "src": "27682:1:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "27673:2:74", + "nodeType": "YulIdentifier", + "src": "27673:2:74" + }, + "nativeSrc": "27673:11:74", + "nodeType": "YulFunctionCall", + "src": "27673:11:74" + }, + "nativeSrc": "27670:37:74", + "nodeType": "YulIf", + "src": "27670:37:74" + } + ] + }, + "name": "checked_sub_t_uint256", + "nativeSrc": "27520:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "27551:1:74", + "nodeType": "YulTypedName", + "src": "27551:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "27554:1:74", + "nodeType": "YulTypedName", + "src": "27554:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "27560:4:74", + "nodeType": "YulTypedName", + "src": "27560:4:74", + "type": "" + } + ], + "src": "27520:194:74" + }, + { + "body": { + "nativeSrc": "27834:34:74", + "nodeType": "YulBlock", + "src": "27834:34:74", + "statements": [ + { + "nativeSrc": "27844:18:74", + "nodeType": "YulAssignment", + "src": "27844:18:74", + "value": { + "name": "pos", + "nativeSrc": "27859:3:74", + "nodeType": "YulIdentifier", + "src": "27859:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "27844:11:74", + "nodeType": "YulIdentifier", + "src": "27844:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "27720:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "27806:3:74", + "nodeType": "YulTypedName", + "src": "27806:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "27811:6:74", + "nodeType": "YulTypedName", + "src": "27811:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "27822:11:74", + "nodeType": "YulTypedName", + "src": "27822:11:74", + "type": "" + } + ], + "src": "27720:148:74" + }, + { + "body": { + "nativeSrc": "28018:210:74", + "nodeType": "YulBlock", + "src": "28018:210:74", + "statements": [ + { + "nativeSrc": "28028:96:74", + "nodeType": "YulAssignment", + "src": "28028:96:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28112:3:74", + "nodeType": "YulIdentifier", + "src": "28112:3:74" + }, + { + "name": "length", + "nativeSrc": "28117:6:74", + "nodeType": "YulIdentifier", + "src": "28117:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "28035:76:74", + "nodeType": "YulIdentifier", + "src": "28035:76:74" + }, + "nativeSrc": "28035:89:74", + "nodeType": "YulFunctionCall", + "src": "28035:89:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "28028:3:74", + "nodeType": "YulIdentifier", + "src": "28028:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "28171:5:74", + "nodeType": "YulIdentifier", + "src": "28171:5:74" + }, + { + "name": "pos", + "nativeSrc": "28178:3:74", + "nodeType": "YulIdentifier", + "src": "28178:3:74" + }, + { + "name": "length", + "nativeSrc": "28183:6:74", + "nodeType": "YulIdentifier", + "src": "28183:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "28134:36:74", + "nodeType": "YulIdentifier", + "src": "28134:36:74" + }, + "nativeSrc": "28134:56:74", + "nodeType": "YulFunctionCall", + "src": "28134:56:74" + }, + "nativeSrc": "28134:56:74", + "nodeType": "YulExpressionStatement", + "src": "28134:56:74" + }, + { + "nativeSrc": "28199:23:74", + "nodeType": "YulAssignment", + "src": "28199:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28210:3:74", + "nodeType": "YulIdentifier", + "src": "28210:3:74" + }, + { + "name": "length", + "nativeSrc": "28215:6:74", + "nodeType": "YulIdentifier", + "src": "28215:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28206:3:74", + "nodeType": "YulIdentifier", + "src": "28206:3:74" + }, + "nativeSrc": "28206:16:74", + "nodeType": "YulFunctionCall", + "src": "28206:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "28199:3:74", + "nodeType": "YulIdentifier", + "src": "28199:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "27898:330:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "27991:5:74", + "nodeType": "YulTypedName", + "src": "27991:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "27998:6:74", + "nodeType": "YulTypedName", + "src": "27998:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "28006:3:74", + "nodeType": "YulTypedName", + "src": "28006:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "28014:3:74", + "nodeType": "YulTypedName", + "src": "28014:3:74", + "type": "" + } + ], + "src": "27898:330:74" + }, + { + "body": { + "nativeSrc": "28380:149:74", + "nodeType": "YulBlock", + "src": "28380:149:74", + "statements": [ + { + "nativeSrc": "28391:112:74", + "nodeType": "YulAssignment", + "src": "28391:112:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "28482:6:74", + "nodeType": "YulIdentifier", + "src": "28482:6:74" + }, + { + "name": "value1", + "nativeSrc": "28490:6:74", + "nodeType": "YulIdentifier", + "src": "28490:6:74" + }, + { + "name": "pos", + "nativeSrc": "28499:3:74", + "nodeType": "YulIdentifier", + "src": "28499:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "28398:83:74", + "nodeType": "YulIdentifier", + "src": "28398:83:74" + }, + "nativeSrc": "28398:105:74", + "nodeType": "YulFunctionCall", + "src": "28398:105:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "28391:3:74", + "nodeType": "YulIdentifier", + "src": "28391:3:74" + } + ] + }, + { + "nativeSrc": "28513:10:74", + "nodeType": "YulAssignment", + "src": "28513:10:74", + "value": { + "name": "pos", + "nativeSrc": "28520:3:74", + "nodeType": "YulIdentifier", + "src": "28520:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "28513:3:74", + "nodeType": "YulIdentifier", + "src": "28513:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_calldata_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "28234:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "28351:3:74", + "nodeType": "YulTypedName", + "src": "28351:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "28357:6:74", + "nodeType": "YulTypedName", + "src": "28357:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "28365:6:74", + "nodeType": "YulTypedName", + "src": "28365:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "28376:3:74", + "nodeType": "YulTypedName", + "src": "28376:3:74", + "type": "" + } + ], + "src": "28234:295:74" + }, + { + "body": { + "nativeSrc": "28601:31:74", + "nodeType": "YulBlock", + "src": "28601:31:74", + "statements": [ + { + "nativeSrc": "28612:13:74", + "nodeType": "YulAssignment", + "src": "28612:13:74", + "value": { + "name": "len", + "nativeSrc": "28622:3:74", + "nodeType": "YulIdentifier", + "src": "28622:3:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "28612:6:74", + "nodeType": "YulIdentifier", + "src": "28612:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_calldata_ptr", + "nativeSrc": "28535:97:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "28579:5:74", + "nodeType": "YulTypedName", + "src": "28579:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "28586:3:74", + "nodeType": "YulTypedName", + "src": "28586:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "28594:6:74", + "nodeType": "YulTypedName", + "src": "28594:6:74", + "type": "" + } + ], + "src": "28535:97:74" + }, + { + "body": { + "nativeSrc": "28666:152:74", + "nodeType": "YulBlock", + "src": "28666:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28683:1:74", + "nodeType": "YulLiteral", + "src": "28683:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "28686:77:74", + "nodeType": "YulLiteral", + "src": "28686:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28676:6:74", + "nodeType": "YulIdentifier", + "src": "28676:6:74" + }, + "nativeSrc": "28676:88:74", + "nodeType": "YulFunctionCall", + "src": "28676:88:74" + }, + "nativeSrc": "28676:88:74", + "nodeType": "YulExpressionStatement", + "src": "28676:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28780:1:74", + "nodeType": "YulLiteral", + "src": "28780:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "28783:4:74", + "nodeType": "YulLiteral", + "src": "28783:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28773:6:74", + "nodeType": "YulIdentifier", + "src": "28773:6:74" + }, + "nativeSrc": "28773:15:74", + "nodeType": "YulFunctionCall", + "src": "28773:15:74" + }, + "nativeSrc": "28773:15:74", + "nodeType": "YulExpressionStatement", + "src": "28773:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "28804:1:74", + "nodeType": "YulLiteral", + "src": "28804:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "28807:4:74", + "nodeType": "YulLiteral", + "src": "28807:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "28797:6:74", + "nodeType": "YulIdentifier", + "src": "28797:6:74" + }, + "nativeSrc": "28797:15:74", + "nodeType": "YulFunctionCall", + "src": "28797:15:74" + }, + "nativeSrc": "28797:15:74", + "nodeType": "YulExpressionStatement", + "src": "28797:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "28638:180:74", + "nodeType": "YulFunctionDefinition", + "src": "28638:180:74" + }, + { + "body": { + "nativeSrc": "28875:269:74", + "nodeType": "YulBlock", + "src": "28875:269:74", + "statements": [ + { + "nativeSrc": "28885:22:74", + "nodeType": "YulAssignment", + "src": "28885:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "28899:4:74", + "nodeType": "YulIdentifier", + "src": "28899:4:74" + }, + { + "kind": "number", + "nativeSrc": "28905:1:74", + "nodeType": "YulLiteral", + "src": "28905:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "28895:3:74", + "nodeType": "YulIdentifier", + "src": "28895:3:74" + }, + "nativeSrc": "28895:12:74", + "nodeType": "YulFunctionCall", + "src": "28895:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "28885:6:74", + "nodeType": "YulIdentifier", + "src": "28885:6:74" + } + ] + }, + { + "nativeSrc": "28916:38:74", + "nodeType": "YulVariableDeclaration", + "src": "28916:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "28946:4:74", + "nodeType": "YulIdentifier", + "src": "28946:4:74" + }, + { + "kind": "number", + "nativeSrc": "28952:1:74", + "nodeType": "YulLiteral", + "src": "28952:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "28942:3:74", + "nodeType": "YulIdentifier", + "src": "28942:3:74" + }, + "nativeSrc": "28942:12:74", + "nodeType": "YulFunctionCall", + "src": "28942:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "28920:18:74", + "nodeType": "YulTypedName", + "src": "28920:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "28993:51:74", + "nodeType": "YulBlock", + "src": "28993:51:74", + "statements": [ + { + "nativeSrc": "29007:27:74", + "nodeType": "YulAssignment", + "src": "29007:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "29021:6:74", + "nodeType": "YulIdentifier", + "src": "29021:6:74" + }, + { + "kind": "number", + "nativeSrc": "29029:4:74", + "nodeType": "YulLiteral", + "src": "29029:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "29017:3:74", + "nodeType": "YulIdentifier", + "src": "29017:3:74" + }, + "nativeSrc": "29017:17:74", + "nodeType": "YulFunctionCall", + "src": "29017:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "29007:6:74", + "nodeType": "YulIdentifier", + "src": "29007:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "28973:18:74", + "nodeType": "YulIdentifier", + "src": "28973:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "28966:6:74", + "nodeType": "YulIdentifier", + "src": "28966:6:74" + }, + "nativeSrc": "28966:26:74", + "nodeType": "YulFunctionCall", + "src": "28966:26:74" + }, + "nativeSrc": "28963:81:74", + "nodeType": "YulIf", + "src": "28963:81:74" + }, + { + "body": { + "nativeSrc": "29096:42:74", + "nodeType": "YulBlock", + "src": "29096:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "29110:16:74", + "nodeType": "YulIdentifier", + "src": "29110:16:74" + }, + "nativeSrc": "29110:18:74", + "nodeType": "YulFunctionCall", + "src": "29110:18:74" + }, + "nativeSrc": "29110:18:74", + "nodeType": "YulExpressionStatement", + "src": "29110:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "29060:18:74", + "nodeType": "YulIdentifier", + "src": "29060:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "29083:6:74", + "nodeType": "YulIdentifier", + "src": "29083:6:74" + }, + { + "kind": "number", + "nativeSrc": "29091:2:74", + "nodeType": "YulLiteral", + "src": "29091:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "29080:2:74", + "nodeType": "YulIdentifier", + "src": "29080:2:74" + }, + "nativeSrc": "29080:14:74", + "nodeType": "YulFunctionCall", + "src": "29080:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "29057:2:74", + "nodeType": "YulIdentifier", + "src": "29057:2:74" + }, + "nativeSrc": "29057:38:74", + "nodeType": "YulFunctionCall", + "src": "29057:38:74" + }, + "nativeSrc": "29054:84:74", + "nodeType": "YulIf", + "src": "29054:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "28824:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "28859:4:74", + "nodeType": "YulTypedName", + "src": "28859:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "28868:6:74", + "nodeType": "YulTypedName", + "src": "28868:6:74", + "type": "" + } + ], + "src": "28824:320:74" + }, + { + "body": { + "nativeSrc": "29204:87:74", + "nodeType": "YulBlock", + "src": "29204:87:74", + "statements": [ + { + "nativeSrc": "29214:11:74", + "nodeType": "YulAssignment", + "src": "29214:11:74", + "value": { + "name": "ptr", + "nativeSrc": "29222:3:74", + "nodeType": "YulIdentifier", + "src": "29222:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "29214:4:74", + "nodeType": "YulIdentifier", + "src": "29214:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "29242:1:74", + "nodeType": "YulLiteral", + "src": "29242:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "29245:3:74", + "nodeType": "YulIdentifier", + "src": "29245:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "29235:6:74", + "nodeType": "YulIdentifier", + "src": "29235:6:74" + }, + "nativeSrc": "29235:14:74", + "nodeType": "YulFunctionCall", + "src": "29235:14:74" + }, + "nativeSrc": "29235:14:74", + "nodeType": "YulExpressionStatement", + "src": "29235:14:74" + }, + { + "nativeSrc": "29258:26:74", + "nodeType": "YulAssignment", + "src": "29258:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "29276:1:74", + "nodeType": "YulLiteral", + "src": "29276:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "29279:4:74", + "nodeType": "YulLiteral", + "src": "29279:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "29266:9:74", + "nodeType": "YulIdentifier", + "src": "29266:9:74" + }, + "nativeSrc": "29266:18:74", + "nodeType": "YulFunctionCall", + "src": "29266:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "29258:4:74", + "nodeType": "YulIdentifier", + "src": "29258:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "29150:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "29191:3:74", + "nodeType": "YulTypedName", + "src": "29191:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "29199:4:74", + "nodeType": "YulTypedName", + "src": "29199:4:74", + "type": "" + } + ], + "src": "29150:141:74" + }, + { + "body": { + "nativeSrc": "29341:49:74", + "nodeType": "YulBlock", + "src": "29341:49:74", + "statements": [ + { + "nativeSrc": "29351:33:74", + "nodeType": "YulAssignment", + "src": "29351:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "29369:5:74", + "nodeType": "YulIdentifier", + "src": "29369:5:74" + }, + { + "kind": "number", + "nativeSrc": "29376:2:74", + "nodeType": "YulLiteral", + "src": "29376:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29365:3:74", + "nodeType": "YulIdentifier", + "src": "29365:3:74" + }, + "nativeSrc": "29365:14:74", + "nodeType": "YulFunctionCall", + "src": "29365:14:74" + }, + { + "kind": "number", + "nativeSrc": "29381:2:74", + "nodeType": "YulLiteral", + "src": "29381:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "29361:3:74", + "nodeType": "YulIdentifier", + "src": "29361:3:74" + }, + "nativeSrc": "29361:23:74", + "nodeType": "YulFunctionCall", + "src": "29361:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "29351:6:74", + "nodeType": "YulIdentifier", + "src": "29351:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "29297:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "29324:5:74", + "nodeType": "YulTypedName", + "src": "29324:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "29334:6:74", + "nodeType": "YulTypedName", + "src": "29334:6:74", + "type": "" + } + ], + "src": "29297:93:74" + }, + { + "body": { + "nativeSrc": "29449:54:74", + "nodeType": "YulBlock", + "src": "29449:54:74", + "statements": [ + { + "nativeSrc": "29459:37:74", + "nodeType": "YulAssignment", + "src": "29459:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "29484:4:74", + "nodeType": "YulIdentifier", + "src": "29484:4:74" + }, + { + "name": "value", + "nativeSrc": "29490:5:74", + "nodeType": "YulIdentifier", + "src": "29490:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "29480:3:74", + "nodeType": "YulIdentifier", + "src": "29480:3:74" + }, + "nativeSrc": "29480:16:74", + "nodeType": "YulFunctionCall", + "src": "29480:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "29459:8:74", + "nodeType": "YulIdentifier", + "src": "29459:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "29396:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "29424:4:74", + "nodeType": "YulTypedName", + "src": "29424:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "29430:5:74", + "nodeType": "YulTypedName", + "src": "29430:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "29440:8:74", + "nodeType": "YulTypedName", + "src": "29440:8:74", + "type": "" + } + ], + "src": "29396:107:74" + }, + { + "body": { + "nativeSrc": "29585:317:74", + "nodeType": "YulBlock", + "src": "29585:317:74", + "statements": [ + { + "nativeSrc": "29595:35:74", + "nodeType": "YulVariableDeclaration", + "src": "29595:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "29616:10:74", + "nodeType": "YulIdentifier", + "src": "29616:10:74" + }, + { + "kind": "number", + "nativeSrc": "29628:1:74", + "nodeType": "YulLiteral", + "src": "29628:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "29612:3:74", + "nodeType": "YulIdentifier", + "src": "29612:3:74" + }, + "nativeSrc": "29612:18:74", + "nodeType": "YulFunctionCall", + "src": "29612:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "29599:9:74", + "nodeType": "YulTypedName", + "src": "29599:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29639:109:74", + "nodeType": "YulVariableDeclaration", + "src": "29639:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "29670:9:74", + "nodeType": "YulIdentifier", + "src": "29670:9:74" + }, + { + "kind": "number", + "nativeSrc": "29681:66:74", + "nodeType": "YulLiteral", + "src": "29681:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "29651:18:74", + "nodeType": "YulIdentifier", + "src": "29651:18:74" + }, + "nativeSrc": "29651:97:74", + "nodeType": "YulFunctionCall", + "src": "29651:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "29643:4:74", + "nodeType": "YulTypedName", + "src": "29643:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29757:51:74", + "nodeType": "YulAssignment", + "src": "29757:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "29788:9:74", + "nodeType": "YulIdentifier", + "src": "29788:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "29799:8:74", + "nodeType": "YulIdentifier", + "src": "29799:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "29769:18:74", + "nodeType": "YulIdentifier", + "src": "29769:18:74" + }, + "nativeSrc": "29769:39:74", + "nodeType": "YulFunctionCall", + "src": "29769:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "29757:8:74", + "nodeType": "YulIdentifier", + "src": "29757:8:74" + } + ] + }, + { + "nativeSrc": "29817:30:74", + "nodeType": "YulAssignment", + "src": "29817:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "29830:5:74", + "nodeType": "YulIdentifier", + "src": "29830:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "29841:4:74", + "nodeType": "YulIdentifier", + "src": "29841:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "29837:3:74", + "nodeType": "YulIdentifier", + "src": "29837:3:74" + }, + "nativeSrc": "29837:9:74", + "nodeType": "YulFunctionCall", + "src": "29837:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "29826:3:74", + "nodeType": "YulIdentifier", + "src": "29826:3:74" + }, + "nativeSrc": "29826:21:74", + "nodeType": "YulFunctionCall", + "src": "29826:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "29817:5:74", + "nodeType": "YulIdentifier", + "src": "29817:5:74" + } + ] + }, + { + "nativeSrc": "29856:40:74", + "nodeType": "YulAssignment", + "src": "29856:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "29869:5:74", + "nodeType": "YulIdentifier", + "src": "29869:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "29880:8:74", + "nodeType": "YulIdentifier", + "src": "29880:8:74" + }, + { + "name": "mask", + "nativeSrc": "29890:4:74", + "nodeType": "YulIdentifier", + "src": "29890:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "29876:3:74", + "nodeType": "YulIdentifier", + "src": "29876:3:74" + }, + "nativeSrc": "29876:19:74", + "nodeType": "YulFunctionCall", + "src": "29876:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "29866:2:74", + "nodeType": "YulIdentifier", + "src": "29866:2:74" + }, + "nativeSrc": "29866:30:74", + "nodeType": "YulFunctionCall", + "src": "29866:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "29856:6:74", + "nodeType": "YulIdentifier", + "src": "29856:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "29509:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "29546:5:74", + "nodeType": "YulTypedName", + "src": "29546:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "29553:10:74", + "nodeType": "YulTypedName", + "src": "29553:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "29565:8:74", + "nodeType": "YulTypedName", + "src": "29565:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "29578:6:74", + "nodeType": "YulTypedName", + "src": "29578:6:74", + "type": "" + } + ], + "src": "29509:393:74" + }, + { + "body": { + "nativeSrc": "29940:28:74", + "nodeType": "YulBlock", + "src": "29940:28:74", + "statements": [ + { + "nativeSrc": "29950:12:74", + "nodeType": "YulAssignment", + "src": "29950:12:74", + "value": { + "name": "value", + "nativeSrc": "29957:5:74", + "nodeType": "YulIdentifier", + "src": "29957:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "29950:3:74", + "nodeType": "YulIdentifier", + "src": "29950:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "29908:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "29926:5:74", + "nodeType": "YulTypedName", + "src": "29926:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "29936:3:74", + "nodeType": "YulTypedName", + "src": "29936:3:74", + "type": "" + } + ], + "src": "29908:60:74" + }, + { + "body": { + "nativeSrc": "30034:82:74", + "nodeType": "YulBlock", + "src": "30034:82:74", + "statements": [ + { + "nativeSrc": "30044:66:74", + "nodeType": "YulAssignment", + "src": "30044:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "30102:5:74", + "nodeType": "YulIdentifier", + "src": "30102:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "30084:17:74", + "nodeType": "YulIdentifier", + "src": "30084:17:74" + }, + "nativeSrc": "30084:24:74", + "nodeType": "YulFunctionCall", + "src": "30084:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "30075:8:74", + "nodeType": "YulIdentifier", + "src": "30075:8:74" + }, + "nativeSrc": "30075:34:74", + "nodeType": "YulFunctionCall", + "src": "30075:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "30057:17:74", + "nodeType": "YulIdentifier", + "src": "30057:17:74" + }, + "nativeSrc": "30057:53:74", + "nodeType": "YulFunctionCall", + "src": "30057:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "30044:9:74", + "nodeType": "YulIdentifier", + "src": "30044:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "29974:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "30014:5:74", + "nodeType": "YulTypedName", + "src": "30014:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "30024:9:74", + "nodeType": "YulTypedName", + "src": "30024:9:74", + "type": "" + } + ], + "src": "29974:142:74" + }, + { + "body": { + "nativeSrc": "30169:28:74", + "nodeType": "YulBlock", + "src": "30169:28:74", + "statements": [ + { + "nativeSrc": "30179:12:74", + "nodeType": "YulAssignment", + "src": "30179:12:74", + "value": { + "name": "value", + "nativeSrc": "30186:5:74", + "nodeType": "YulIdentifier", + "src": "30186:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "30179:3:74", + "nodeType": "YulIdentifier", + "src": "30179:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "30122:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "30155:5:74", + "nodeType": "YulTypedName", + "src": "30155:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "30165:3:74", + "nodeType": "YulTypedName", + "src": "30165:3:74", + "type": "" + } + ], + "src": "30122:75:74" + }, + { + "body": { + "nativeSrc": "30279:193:74", + "nodeType": "YulBlock", + "src": "30279:193:74", + "statements": [ + { + "nativeSrc": "30289:63:74", + "nodeType": "YulVariableDeclaration", + "src": "30289:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "30344:7:74", + "nodeType": "YulIdentifier", + "src": "30344:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "30313:30:74", + "nodeType": "YulIdentifier", + "src": "30313:30:74" + }, + "nativeSrc": "30313:39:74", + "nodeType": "YulFunctionCall", + "src": "30313:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "30293:16:74", + "nodeType": "YulTypedName", + "src": "30293:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "30368:4:74", + "nodeType": "YulIdentifier", + "src": "30368:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "30408:4:74", + "nodeType": "YulIdentifier", + "src": "30408:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "30402:5:74", + "nodeType": "YulIdentifier", + "src": "30402:5:74" + }, + "nativeSrc": "30402:11:74", + "nodeType": "YulFunctionCall", + "src": "30402:11:74" + }, + { + "name": "offset", + "nativeSrc": "30415:6:74", + "nodeType": "YulIdentifier", + "src": "30415:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "30447:16:74", + "nodeType": "YulIdentifier", + "src": "30447:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "30423:23:74", + "nodeType": "YulIdentifier", + "src": "30423:23:74" + }, + "nativeSrc": "30423:41:74", + "nodeType": "YulFunctionCall", + "src": "30423:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "30374:27:74", + "nodeType": "YulIdentifier", + "src": "30374:27:74" + }, + "nativeSrc": "30374:91:74", + "nodeType": "YulFunctionCall", + "src": "30374:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "30361:6:74", + "nodeType": "YulIdentifier", + "src": "30361:6:74" + }, + "nativeSrc": "30361:105:74", + "nodeType": "YulFunctionCall", + "src": "30361:105:74" + }, + "nativeSrc": "30361:105:74", + "nodeType": "YulExpressionStatement", + "src": "30361:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "30203:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "30256:4:74", + "nodeType": "YulTypedName", + "src": "30256:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "30262:6:74", + "nodeType": "YulTypedName", + "src": "30262:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "30270:7:74", + "nodeType": "YulTypedName", + "src": "30270:7:74", + "type": "" + } + ], + "src": "30203:269:74" + }, + { + "body": { + "nativeSrc": "30527:24:74", + "nodeType": "YulBlock", + "src": "30527:24:74", + "statements": [ + { + "nativeSrc": "30537:8:74", + "nodeType": "YulAssignment", + "src": "30537:8:74", + "value": { + "kind": "number", + "nativeSrc": "30544:1:74", + "nodeType": "YulLiteral", + "src": "30544:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "30537:3:74", + "nodeType": "YulIdentifier", + "src": "30537:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "30478:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "30523:3:74", + "nodeType": "YulTypedName", + "src": "30523:3:74", + "type": "" + } + ], + "src": "30478:73:74" + }, + { + "body": { + "nativeSrc": "30610:136:74", + "nodeType": "YulBlock", + "src": "30610:136:74", + "statements": [ + { + "nativeSrc": "30620:46:74", + "nodeType": "YulVariableDeclaration", + "src": "30620:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "30634:30:74", + "nodeType": "YulIdentifier", + "src": "30634:30:74" + }, + "nativeSrc": "30634:32:74", + "nodeType": "YulFunctionCall", + "src": "30634:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "30624:6:74", + "nodeType": "YulTypedName", + "src": "30624:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "30719:4:74", + "nodeType": "YulIdentifier", + "src": "30719:4:74" + }, + { + "name": "offset", + "nativeSrc": "30725:6:74", + "nodeType": "YulIdentifier", + "src": "30725:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "30733:6:74", + "nodeType": "YulIdentifier", + "src": "30733:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "30675:43:74", + "nodeType": "YulIdentifier", + "src": "30675:43:74" + }, + "nativeSrc": "30675:65:74", + "nodeType": "YulFunctionCall", + "src": "30675:65:74" + }, + "nativeSrc": "30675:65:74", + "nodeType": "YulExpressionStatement", + "src": "30675:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "30557:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "30596:4:74", + "nodeType": "YulTypedName", + "src": "30596:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "30602:6:74", + "nodeType": "YulTypedName", + "src": "30602:6:74", + "type": "" + } + ], + "src": "30557:189:74" + }, + { + "body": { + "nativeSrc": "30802:136:74", + "nodeType": "YulBlock", + "src": "30802:136:74", + "statements": [ + { + "body": { + "nativeSrc": "30869:63:74", + "nodeType": "YulBlock", + "src": "30869:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "30913:5:74", + "nodeType": "YulIdentifier", + "src": "30913:5:74" + }, + { + "kind": "number", + "nativeSrc": "30920:1:74", + "nodeType": "YulLiteral", + "src": "30920:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "30883:29:74", + "nodeType": "YulIdentifier", + "src": "30883:29:74" + }, + "nativeSrc": "30883:39:74", + "nodeType": "YulFunctionCall", + "src": "30883:39:74" + }, + "nativeSrc": "30883:39:74", + "nodeType": "YulExpressionStatement", + "src": "30883:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "30822:5:74", + "nodeType": "YulIdentifier", + "src": "30822:5:74" + }, + { + "name": "end", + "nativeSrc": "30829:3:74", + "nodeType": "YulIdentifier", + "src": "30829:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "30819:2:74", + "nodeType": "YulIdentifier", + "src": "30819:2:74" + }, + "nativeSrc": "30819:14:74", + "nodeType": "YulFunctionCall", + "src": "30819:14:74" + }, + "nativeSrc": "30812:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "30834:26:74", + "nodeType": "YulBlock", + "src": "30834:26:74", + "statements": [ + { + "nativeSrc": "30836:22:74", + "nodeType": "YulAssignment", + "src": "30836:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "30849:5:74", + "nodeType": "YulIdentifier", + "src": "30849:5:74" + }, + { + "kind": "number", + "nativeSrc": "30856:1:74", + "nodeType": "YulLiteral", + "src": "30856:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30845:3:74", + "nodeType": "YulIdentifier", + "src": "30845:3:74" + }, + "nativeSrc": "30845:13:74", + "nodeType": "YulFunctionCall", + "src": "30845:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "30836:5:74", + "nodeType": "YulIdentifier", + "src": "30836:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "30816:2:74", + "nodeType": "YulBlock", + "src": "30816:2:74", + "statements": [] + }, + "src": "30812:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "30752:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "30790:5:74", + "nodeType": "YulTypedName", + "src": "30790:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "30797:3:74", + "nodeType": "YulTypedName", + "src": "30797:3:74", + "type": "" + } + ], + "src": "30752:186:74" + }, + { + "body": { + "nativeSrc": "31023:464:74", + "nodeType": "YulBlock", + "src": "31023:464:74", + "statements": [ + { + "body": { + "nativeSrc": "31049:431:74", + "nodeType": "YulBlock", + "src": "31049:431:74", + "statements": [ + { + "nativeSrc": "31063:54:74", + "nodeType": "YulVariableDeclaration", + "src": "31063:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "31111:5:74", + "nodeType": "YulIdentifier", + "src": "31111:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "31079:31:74", + "nodeType": "YulIdentifier", + "src": "31079:31:74" + }, + "nativeSrc": "31079:38:74", + "nodeType": "YulFunctionCall", + "src": "31079:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "31067:8:74", + "nodeType": "YulTypedName", + "src": "31067:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31130:63:74", + "nodeType": "YulVariableDeclaration", + "src": "31130:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "31153:8:74", + "nodeType": "YulIdentifier", + "src": "31153:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "31181:10:74", + "nodeType": "YulIdentifier", + "src": "31181:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "31163:17:74", + "nodeType": "YulIdentifier", + "src": "31163:17:74" + }, + "nativeSrc": "31163:29:74", + "nodeType": "YulFunctionCall", + "src": "31163:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31149:3:74", + "nodeType": "YulIdentifier", + "src": "31149:3:74" + }, + "nativeSrc": "31149:44:74", + "nodeType": "YulFunctionCall", + "src": "31149:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "31134:11:74", + "nodeType": "YulTypedName", + "src": "31134:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "31350:27:74", + "nodeType": "YulBlock", + "src": "31350:27:74", + "statements": [ + { + "nativeSrc": "31352:23:74", + "nodeType": "YulAssignment", + "src": "31352:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "31367:8:74", + "nodeType": "YulIdentifier", + "src": "31367:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "31352:11:74", + "nodeType": "YulIdentifier", + "src": "31352:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "31334:10:74", + "nodeType": "YulIdentifier", + "src": "31334:10:74" + }, + { + "kind": "number", + "nativeSrc": "31346:2:74", + "nodeType": "YulLiteral", + "src": "31346:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "31331:2:74", + "nodeType": "YulIdentifier", + "src": "31331:2:74" + }, + "nativeSrc": "31331:18:74", + "nodeType": "YulFunctionCall", + "src": "31331:18:74" + }, + "nativeSrc": "31328:49:74", + "nodeType": "YulIf", + "src": "31328:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "31419:11:74", + "nodeType": "YulIdentifier", + "src": "31419:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "31436:8:74", + "nodeType": "YulIdentifier", + "src": "31436:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "31464:3:74", + "nodeType": "YulIdentifier", + "src": "31464:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "31446:17:74", + "nodeType": "YulIdentifier", + "src": "31446:17:74" + }, + "nativeSrc": "31446:22:74", + "nodeType": "YulFunctionCall", + "src": "31446:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31432:3:74", + "nodeType": "YulIdentifier", + "src": "31432:3:74" + }, + "nativeSrc": "31432:37:74", + "nodeType": "YulFunctionCall", + "src": "31432:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "31390:28:74", + "nodeType": "YulIdentifier", + "src": "31390:28:74" + }, + "nativeSrc": "31390:80:74", + "nodeType": "YulFunctionCall", + "src": "31390:80:74" + }, + "nativeSrc": "31390:80:74", + "nodeType": "YulExpressionStatement", + "src": "31390:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "31040:3:74", + "nodeType": "YulIdentifier", + "src": "31040:3:74" + }, + { + "kind": "number", + "nativeSrc": "31045:2:74", + "nodeType": "YulLiteral", + "src": "31045:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "31037:2:74", + "nodeType": "YulIdentifier", + "src": "31037:2:74" + }, + "nativeSrc": "31037:11:74", + "nodeType": "YulFunctionCall", + "src": "31037:11:74" + }, + "nativeSrc": "31034:446:74", + "nodeType": "YulIf", + "src": "31034:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "30944:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "30999:5:74", + "nodeType": "YulTypedName", + "src": "30999:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "31006:3:74", + "nodeType": "YulTypedName", + "src": "31006:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "31011:10:74", + "nodeType": "YulTypedName", + "src": "31011:10:74", + "type": "" + } + ], + "src": "30944:543:74" + }, + { + "body": { + "nativeSrc": "31556:54:74", + "nodeType": "YulBlock", + "src": "31556:54:74", + "statements": [ + { + "nativeSrc": "31566:37:74", + "nodeType": "YulAssignment", + "src": "31566:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "31591:4:74", + "nodeType": "YulIdentifier", + "src": "31591:4:74" + }, + { + "name": "value", + "nativeSrc": "31597:5:74", + "nodeType": "YulIdentifier", + "src": "31597:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "31587:3:74", + "nodeType": "YulIdentifier", + "src": "31587:3:74" + }, + "nativeSrc": "31587:16:74", + "nodeType": "YulFunctionCall", + "src": "31587:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "31566:8:74", + "nodeType": "YulIdentifier", + "src": "31566:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "31493:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "31531:4:74", + "nodeType": "YulTypedName", + "src": "31531:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "31537:5:74", + "nodeType": "YulTypedName", + "src": "31537:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "31547:8:74", + "nodeType": "YulTypedName", + "src": "31547:8:74", + "type": "" + } + ], + "src": "31493:117:74" + }, + { + "body": { + "nativeSrc": "31667:118:74", + "nodeType": "YulBlock", + "src": "31667:118:74", + "statements": [ + { + "nativeSrc": "31677:68:74", + "nodeType": "YulVariableDeclaration", + "src": "31677:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "31726:1:74", + "nodeType": "YulLiteral", + "src": "31726:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "31729:5:74", + "nodeType": "YulIdentifier", + "src": "31729:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "31722:3:74", + "nodeType": "YulIdentifier", + "src": "31722:3:74" + }, + "nativeSrc": "31722:13:74", + "nodeType": "YulFunctionCall", + "src": "31722:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "31741:1:74", + "nodeType": "YulLiteral", + "src": "31741:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "31737:3:74", + "nodeType": "YulIdentifier", + "src": "31737:3:74" + }, + "nativeSrc": "31737:6:74", + "nodeType": "YulFunctionCall", + "src": "31737:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "31693:28:74", + "nodeType": "YulIdentifier", + "src": "31693:28:74" + }, + "nativeSrc": "31693:51:74", + "nodeType": "YulFunctionCall", + "src": "31693:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "31689:3:74", + "nodeType": "YulIdentifier", + "src": "31689:3:74" + }, + "nativeSrc": "31689:56:74", + "nodeType": "YulFunctionCall", + "src": "31689:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "31681:4:74", + "nodeType": "YulTypedName", + "src": "31681:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31754:25:74", + "nodeType": "YulAssignment", + "src": "31754:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "31768:4:74", + "nodeType": "YulIdentifier", + "src": "31768:4:74" + }, + { + "name": "mask", + "nativeSrc": "31774:4:74", + "nodeType": "YulIdentifier", + "src": "31774:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "31764:3:74", + "nodeType": "YulIdentifier", + "src": "31764:3:74" + }, + "nativeSrc": "31764:15:74", + "nodeType": "YulFunctionCall", + "src": "31764:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "31754:6:74", + "nodeType": "YulIdentifier", + "src": "31754:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "31616:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "31644:4:74", + "nodeType": "YulTypedName", + "src": "31644:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "31650:5:74", + "nodeType": "YulTypedName", + "src": "31650:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "31660:6:74", + "nodeType": "YulTypedName", + "src": "31660:6:74", + "type": "" + } + ], + "src": "31616:169:74" + }, + { + "body": { + "nativeSrc": "31871:214:74", + "nodeType": "YulBlock", + "src": "31871:214:74", + "statements": [ + { + "nativeSrc": "32004:37:74", + "nodeType": "YulAssignment", + "src": "32004:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "32031:4:74", + "nodeType": "YulIdentifier", + "src": "32031:4:74" + }, + { + "name": "len", + "nativeSrc": "32037:3:74", + "nodeType": "YulIdentifier", + "src": "32037:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "32012:18:74", + "nodeType": "YulIdentifier", + "src": "32012:18:74" + }, + "nativeSrc": "32012:29:74", + "nodeType": "YulFunctionCall", + "src": "32012:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "32004:4:74", + "nodeType": "YulIdentifier", + "src": "32004:4:74" + } + ] + }, + { + "nativeSrc": "32050:29:74", + "nodeType": "YulAssignment", + "src": "32050:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "32061:4:74", + "nodeType": "YulIdentifier", + "src": "32061:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32071:1:74", + "nodeType": "YulLiteral", + "src": "32071:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "32074:3:74", + "nodeType": "YulIdentifier", + "src": "32074:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "32067:3:74", + "nodeType": "YulIdentifier", + "src": "32067:3:74" + }, + "nativeSrc": "32067:11:74", + "nodeType": "YulFunctionCall", + "src": "32067:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "32058:2:74", + "nodeType": "YulIdentifier", + "src": "32058:2:74" + }, + "nativeSrc": "32058:21:74", + "nodeType": "YulFunctionCall", + "src": "32058:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "32050:4:74", + "nodeType": "YulIdentifier", + "src": "32050:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "31790:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "31852:4:74", + "nodeType": "YulTypedName", + "src": "31852:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "31858:3:74", + "nodeType": "YulTypedName", + "src": "31858:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "31866:4:74", + "nodeType": "YulTypedName", + "src": "31866:4:74", + "type": "" + } + ], + "src": "31790:295:74" + }, + { + "body": { + "nativeSrc": "32189:1304:74", + "nodeType": "YulBlock", + "src": "32189:1304:74", + "statements": [ + { + "nativeSrc": "32200:58:74", + "nodeType": "YulVariableDeclaration", + "src": "32200:58:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "32249:3:74", + "nodeType": "YulIdentifier", + "src": "32249:3:74" + }, + { + "name": "len", + "nativeSrc": "32254:3:74", + "nodeType": "YulIdentifier", + "src": "32254:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_calldata_ptr", + "nativeSrc": "32214:34:74", + "nodeType": "YulIdentifier", + "src": "32214:34:74" + }, + "nativeSrc": "32214:44:74", + "nodeType": "YulFunctionCall", + "src": "32214:44:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "32204:6:74", + "nodeType": "YulTypedName", + "src": "32204:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "32343:22:74", + "nodeType": "YulBlock", + "src": "32343:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "32345:16:74", + "nodeType": "YulIdentifier", + "src": "32345:16:74" + }, + "nativeSrc": "32345:18:74", + "nodeType": "YulFunctionCall", + "src": "32345:18:74" + }, + "nativeSrc": "32345:18:74", + "nodeType": "YulExpressionStatement", + "src": "32345:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "32315:6:74", + "nodeType": "YulIdentifier", + "src": "32315:6:74" + }, + { + "kind": "number", + "nativeSrc": "32323:18:74", + "nodeType": "YulLiteral", + "src": "32323:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "32312:2:74", + "nodeType": "YulIdentifier", + "src": "32312:2:74" + }, + "nativeSrc": "32312:30:74", + "nodeType": "YulFunctionCall", + "src": "32312:30:74" + }, + "nativeSrc": "32309:56:74", + "nodeType": "YulIf", + "src": "32309:56:74" + }, + { + "nativeSrc": "32375:52:74", + "nodeType": "YulVariableDeclaration", + "src": "32375:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "32421:4:74", + "nodeType": "YulIdentifier", + "src": "32421:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "32415:5:74", + "nodeType": "YulIdentifier", + "src": "32415:5:74" + }, + "nativeSrc": "32415:11:74", + "nodeType": "YulFunctionCall", + "src": "32415:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "32389:25:74", + "nodeType": "YulIdentifier", + "src": "32389:25:74" + }, + "nativeSrc": "32389:38:74", + "nodeType": "YulFunctionCall", + "src": "32389:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "32379:6:74", + "nodeType": "YulTypedName", + "src": "32379:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "32520:4:74", + "nodeType": "YulIdentifier", + "src": "32520:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "32526:6:74", + "nodeType": "YulIdentifier", + "src": "32526:6:74" + }, + { + "name": "newLen", + "nativeSrc": "32534:6:74", + "nodeType": "YulIdentifier", + "src": "32534:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "32474:45:74", + "nodeType": "YulIdentifier", + "src": "32474:45:74" + }, + "nativeSrc": "32474:67:74", + "nodeType": "YulFunctionCall", + "src": "32474:67:74" + }, + "nativeSrc": "32474:67:74", + "nodeType": "YulExpressionStatement", + "src": "32474:67:74" + }, + { + "nativeSrc": "32551:18:74", + "nodeType": "YulVariableDeclaration", + "src": "32551:18:74", + "value": { + "kind": "number", + "nativeSrc": "32568:1:74", + "nodeType": "YulLiteral", + "src": "32568:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "32555:9:74", + "nodeType": "YulTypedName", + "src": "32555:9:74", + "type": "" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "32616:625:74", + "nodeType": "YulBlock", + "src": "32616:625:74", + "statements": [ + { + "nativeSrc": "32630:37:74", + "nodeType": "YulVariableDeclaration", + "src": "32630:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "32649:6:74", + "nodeType": "YulIdentifier", + "src": "32649:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32661:4:74", + "nodeType": "YulLiteral", + "src": "32661:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "32657:3:74", + "nodeType": "YulIdentifier", + "src": "32657:3:74" + }, + "nativeSrc": "32657:9:74", + "nodeType": "YulFunctionCall", + "src": "32657:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "32645:3:74", + "nodeType": "YulIdentifier", + "src": "32645:3:74" + }, + "nativeSrc": "32645:22:74", + "nodeType": "YulFunctionCall", + "src": "32645:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "32634:7:74", + "nodeType": "YulTypedName", + "src": "32634:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32681:51:74", + "nodeType": "YulVariableDeclaration", + "src": "32681:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "32727:4:74", + "nodeType": "YulIdentifier", + "src": "32727:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "32695:31:74", + "nodeType": "YulIdentifier", + "src": "32695:31:74" + }, + "nativeSrc": "32695:37:74", + "nodeType": "YulFunctionCall", + "src": "32695:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "32685:6:74", + "nodeType": "YulTypedName", + "src": "32685:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32745:10:74", + "nodeType": "YulVariableDeclaration", + "src": "32745:10:74", + "value": { + "kind": "number", + "nativeSrc": "32754:1:74", + "nodeType": "YulLiteral", + "src": "32754:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "32749:1:74", + "nodeType": "YulTypedName", + "src": "32749:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "32813:170:74", + "nodeType": "YulBlock", + "src": "32813:170:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "32838:6:74", + "nodeType": "YulIdentifier", + "src": "32838:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "32863:3:74", + "nodeType": "YulIdentifier", + "src": "32863:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "32868:9:74", + "nodeType": "YulIdentifier", + "src": "32868:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32859:3:74", + "nodeType": "YulIdentifier", + "src": "32859:3:74" + }, + "nativeSrc": "32859:19:74", + "nodeType": "YulFunctionCall", + "src": "32859:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "32846:12:74", + "nodeType": "YulIdentifier", + "src": "32846:12:74" + }, + "nativeSrc": "32846:33:74", + "nodeType": "YulFunctionCall", + "src": "32846:33:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "32831:6:74", + "nodeType": "YulIdentifier", + "src": "32831:6:74" + }, + "nativeSrc": "32831:49:74", + "nodeType": "YulFunctionCall", + "src": "32831:49:74" + }, + "nativeSrc": "32831:49:74", + "nodeType": "YulExpressionStatement", + "src": "32831:49:74" + }, + { + "nativeSrc": "32897:24:74", + "nodeType": "YulAssignment", + "src": "32897:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "32911:6:74", + "nodeType": "YulIdentifier", + "src": "32911:6:74" + }, + { + "kind": "number", + "nativeSrc": "32919:1:74", + "nodeType": "YulLiteral", + "src": "32919:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32907:3:74", + "nodeType": "YulIdentifier", + "src": "32907:3:74" + }, + "nativeSrc": "32907:14:74", + "nodeType": "YulFunctionCall", + "src": "32907:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "32897:6:74", + "nodeType": "YulIdentifier", + "src": "32897:6:74" + } + ] + }, + { + "nativeSrc": "32938:31:74", + "nodeType": "YulAssignment", + "src": "32938:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "32955:9:74", + "nodeType": "YulIdentifier", + "src": "32955:9:74" + }, + { + "kind": "number", + "nativeSrc": "32966:2:74", + "nodeType": "YulLiteral", + "src": "32966:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32951:3:74", + "nodeType": "YulIdentifier", + "src": "32951:3:74" + }, + "nativeSrc": "32951:18:74", + "nodeType": "YulFunctionCall", + "src": "32951:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "32938:9:74", + "nodeType": "YulIdentifier", + "src": "32938:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "32779:1:74", + "nodeType": "YulIdentifier", + "src": "32779:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "32782:7:74", + "nodeType": "YulIdentifier", + "src": "32782:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "32776:2:74", + "nodeType": "YulIdentifier", + "src": "32776:2:74" + }, + "nativeSrc": "32776:14:74", + "nodeType": "YulFunctionCall", + "src": "32776:14:74" + }, + "nativeSrc": "32768:215:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "32791:21:74", + "nodeType": "YulBlock", + "src": "32791:21:74", + "statements": [ + { + "nativeSrc": "32793:17:74", + "nodeType": "YulAssignment", + "src": "32793:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "32802:1:74", + "nodeType": "YulIdentifier", + "src": "32802:1:74" + }, + { + "kind": "number", + "nativeSrc": "32805:4:74", + "nodeType": "YulLiteral", + "src": "32805:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32798:3:74", + "nodeType": "YulIdentifier", + "src": "32798:3:74" + }, + "nativeSrc": "32798:12:74", + "nodeType": "YulFunctionCall", + "src": "32798:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "32793:1:74", + "nodeType": "YulIdentifier", + "src": "32793:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "32772:3:74", + "nodeType": "YulBlock", + "src": "32772:3:74", + "statements": [] + }, + "src": "32768:215:74" + }, + { + "body": { + "nativeSrc": "33019:163:74", + "nodeType": "YulBlock", + "src": "33019:163:74", + "statements": [ + { + "nativeSrc": "33037:50:74", + "nodeType": "YulVariableDeclaration", + "src": "33037:50:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "33071:3:74", + "nodeType": "YulIdentifier", + "src": "33071:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "33076:9:74", + "nodeType": "YulIdentifier", + "src": "33076:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33067:3:74", + "nodeType": "YulIdentifier", + "src": "33067:3:74" + }, + "nativeSrc": "33067:19:74", + "nodeType": "YulFunctionCall", + "src": "33067:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "33054:12:74", + "nodeType": "YulIdentifier", + "src": "33054:12:74" + }, + "nativeSrc": "33054:33:74", + "nodeType": "YulFunctionCall", + "src": "33054:33:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "33041:9:74", + "nodeType": "YulTypedName", + "src": "33041:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "33111:6:74", + "nodeType": "YulIdentifier", + "src": "33111:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "33138:9:74", + "nodeType": "YulIdentifier", + "src": "33138:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "33153:6:74", + "nodeType": "YulIdentifier", + "src": "33153:6:74" + }, + { + "kind": "number", + "nativeSrc": "33161:4:74", + "nodeType": "YulLiteral", + "src": "33161:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "33149:3:74", + "nodeType": "YulIdentifier", + "src": "33149:3:74" + }, + "nativeSrc": "33149:17:74", + "nodeType": "YulFunctionCall", + "src": "33149:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "33119:18:74", + "nodeType": "YulIdentifier", + "src": "33119:18:74" + }, + "nativeSrc": "33119:48:74", + "nodeType": "YulFunctionCall", + "src": "33119:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "33104:6:74", + "nodeType": "YulIdentifier", + "src": "33104:6:74" + }, + "nativeSrc": "33104:64:74", + "nodeType": "YulFunctionCall", + "src": "33104:64:74" + }, + "nativeSrc": "33104:64:74", + "nodeType": "YulExpressionStatement", + "src": "33104:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "33002:7:74", + "nodeType": "YulIdentifier", + "src": "33002:7:74" + }, + { + "name": "newLen", + "nativeSrc": "33011:6:74", + "nodeType": "YulIdentifier", + "src": "33011:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "32999:2:74", + "nodeType": "YulIdentifier", + "src": "32999:2:74" + }, + "nativeSrc": "32999:19:74", + "nodeType": "YulFunctionCall", + "src": "32999:19:74" + }, + "nativeSrc": "32996:186:74", + "nodeType": "YulIf", + "src": "32996:186:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "33202:4:74", + "nodeType": "YulIdentifier", + "src": "33202:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "33216:6:74", + "nodeType": "YulIdentifier", + "src": "33216:6:74" + }, + { + "kind": "number", + "nativeSrc": "33224:1:74", + "nodeType": "YulLiteral", + "src": "33224:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "33212:3:74", + "nodeType": "YulIdentifier", + "src": "33212:3:74" + }, + "nativeSrc": "33212:14:74", + "nodeType": "YulFunctionCall", + "src": "33212:14:74" + }, + { + "kind": "number", + "nativeSrc": "33228:1:74", + "nodeType": "YulLiteral", + "src": "33228:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33208:3:74", + "nodeType": "YulIdentifier", + "src": "33208:3:74" + }, + "nativeSrc": "33208:22:74", + "nodeType": "YulFunctionCall", + "src": "33208:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "33195:6:74", + "nodeType": "YulIdentifier", + "src": "33195:6:74" + }, + "nativeSrc": "33195:36:74", + "nodeType": "YulFunctionCall", + "src": "33195:36:74" + }, + "nativeSrc": "33195:36:74", + "nodeType": "YulExpressionStatement", + "src": "33195:36:74" + } + ] + }, + "nativeSrc": "32609:632:74", + "nodeType": "YulCase", + "src": "32609:632:74", + "value": { + "kind": "number", + "nativeSrc": "32614:1:74", + "nodeType": "YulLiteral", + "src": "32614:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "33258:229:74", + "nodeType": "YulBlock", + "src": "33258:229:74", + "statements": [ + { + "nativeSrc": "33272:14:74", + "nodeType": "YulVariableDeclaration", + "src": "33272:14:74", + "value": { + "kind": "number", + "nativeSrc": "33285:1:74", + "nodeType": "YulLiteral", + "src": "33285:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "33276:5:74", + "nodeType": "YulTypedName", + "src": "33276:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "33309:74:74", + "nodeType": "YulBlock", + "src": "33309:74:74", + "statements": [ + { + "nativeSrc": "33327:42:74", + "nodeType": "YulAssignment", + "src": "33327:42:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "33353:3:74", + "nodeType": "YulIdentifier", + "src": "33353:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "33358:9:74", + "nodeType": "YulIdentifier", + "src": "33358:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33349:3:74", + "nodeType": "YulIdentifier", + "src": "33349:3:74" + }, + "nativeSrc": "33349:19:74", + "nodeType": "YulFunctionCall", + "src": "33349:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "33336:12:74", + "nodeType": "YulIdentifier", + "src": "33336:12:74" + }, + "nativeSrc": "33336:33:74", + "nodeType": "YulFunctionCall", + "src": "33336:33:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "33327:5:74", + "nodeType": "YulIdentifier", + "src": "33327:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "33302:6:74", + "nodeType": "YulIdentifier", + "src": "33302:6:74" + }, + "nativeSrc": "33299:84:74", + "nodeType": "YulIf", + "src": "33299:84:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "33403:4:74", + "nodeType": "YulIdentifier", + "src": "33403:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "33462:5:74", + "nodeType": "YulIdentifier", + "src": "33462:5:74" + }, + { + "name": "newLen", + "nativeSrc": "33469:6:74", + "nodeType": "YulIdentifier", + "src": "33469:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "33409:52:74", + "nodeType": "YulIdentifier", + "src": "33409:52:74" + }, + "nativeSrc": "33409:67:74", + "nodeType": "YulFunctionCall", + "src": "33409:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "33396:6:74", + "nodeType": "YulIdentifier", + "src": "33396:6:74" + }, + "nativeSrc": "33396:81:74", + "nodeType": "YulFunctionCall", + "src": "33396:81:74" + }, + "nativeSrc": "33396:81:74", + "nodeType": "YulExpressionStatement", + "src": "33396:81:74" + } + ] + }, + "nativeSrc": "33250:237:74", + "nodeType": "YulCase", + "src": "33250:237:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "32589:6:74", + "nodeType": "YulIdentifier", + "src": "32589:6:74" + }, + { + "kind": "number", + "nativeSrc": "32597:2:74", + "nodeType": "YulLiteral", + "src": "32597:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "32586:2:74", + "nodeType": "YulIdentifier", + "src": "32586:2:74" + }, + "nativeSrc": "32586:14:74", + "nodeType": "YulFunctionCall", + "src": "32586:14:74" + }, + "nativeSrc": "32579:908:74", + "nodeType": "YulSwitch", + "src": "32579:908:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage", + "nativeSrc": "32090:1403:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "32173:4:74", + "nodeType": "YulTypedName", + "src": "32173:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "32179:3:74", + "nodeType": "YulTypedName", + "src": "32179:3:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "32184:3:74", + "nodeType": "YulTypedName", + "src": "32184:3:74", + "type": "" + } + ], + "src": "32090:1403:74" + }, + { + "body": { + "nativeSrc": "33625:215:74", + "nodeType": "YulBlock", + "src": "33625:215:74", + "statements": [ + { + "nativeSrc": "33635:78:74", + "nodeType": "YulAssignment", + "src": "33635:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "33701:3:74", + "nodeType": "YulIdentifier", + "src": "33701:3:74" + }, + { + "name": "length", + "nativeSrc": "33706:6:74", + "nodeType": "YulIdentifier", + "src": "33706:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "33642:58:74", + "nodeType": "YulIdentifier", + "src": "33642:58:74" + }, + "nativeSrc": "33642:71:74", + "nodeType": "YulFunctionCall", + "src": "33642:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "33635:3:74", + "nodeType": "YulIdentifier", + "src": "33635:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "33760:5:74", + "nodeType": "YulIdentifier", + "src": "33760:5:74" + }, + { + "name": "pos", + "nativeSrc": "33767:3:74", + "nodeType": "YulIdentifier", + "src": "33767:3:74" + }, + { + "name": "length", + "nativeSrc": "33772:6:74", + "nodeType": "YulIdentifier", + "src": "33772:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "33723:36:74", + "nodeType": "YulIdentifier", + "src": "33723:36:74" + }, + "nativeSrc": "33723:56:74", + "nodeType": "YulFunctionCall", + "src": "33723:56:74" + }, + "nativeSrc": "33723:56:74", + "nodeType": "YulExpressionStatement", + "src": "33723:56:74" + }, + { + "nativeSrc": "33788:46:74", + "nodeType": "YulAssignment", + "src": "33788:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "33799:3:74", + "nodeType": "YulIdentifier", + "src": "33799:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "33826:6:74", + "nodeType": "YulIdentifier", + "src": "33826:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "33804:21:74", + "nodeType": "YulIdentifier", + "src": "33804:21:74" + }, + "nativeSrc": "33804:29:74", + "nodeType": "YulFunctionCall", + "src": "33804:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33795:3:74", + "nodeType": "YulIdentifier", + "src": "33795:3:74" + }, + "nativeSrc": "33795:39:74", + "nodeType": "YulFunctionCall", + "src": "33795:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "33788:3:74", + "nodeType": "YulIdentifier", + "src": "33788:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "33523:317:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "33598:5:74", + "nodeType": "YulTypedName", + "src": "33598:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "33605:6:74", + "nodeType": "YulTypedName", + "src": "33605:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "33613:3:74", + "nodeType": "YulTypedName", + "src": "33613:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "33621:3:74", + "nodeType": "YulTypedName", + "src": "33621:3:74", + "type": "" + } + ], + "src": "33523:317:74" + }, + { + "body": { + "nativeSrc": "34032:368:74", + "nodeType": "YulBlock", + "src": "34032:368:74", + "statements": [ + { + "nativeSrc": "34042:26:74", + "nodeType": "YulAssignment", + "src": "34042:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34054:9:74", + "nodeType": "YulIdentifier", + "src": "34054:9:74" + }, + { + "kind": "number", + "nativeSrc": "34065:2:74", + "nodeType": "YulLiteral", + "src": "34065:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34050:3:74", + "nodeType": "YulIdentifier", + "src": "34050:3:74" + }, + "nativeSrc": "34050:18:74", + "nodeType": "YulFunctionCall", + "src": "34050:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34042:4:74", + "nodeType": "YulIdentifier", + "src": "34042:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34089:9:74", + "nodeType": "YulIdentifier", + "src": "34089:9:74" + }, + { + "kind": "number", + "nativeSrc": "34100:1:74", + "nodeType": "YulLiteral", + "src": "34100:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34085:3:74", + "nodeType": "YulIdentifier", + "src": "34085:3:74" + }, + "nativeSrc": "34085:17:74", + "nodeType": "YulFunctionCall", + "src": "34085:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "34108:4:74", + "nodeType": "YulIdentifier", + "src": "34108:4:74" + }, + { + "name": "headStart", + "nativeSrc": "34114:9:74", + "nodeType": "YulIdentifier", + "src": "34114:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "34104:3:74", + "nodeType": "YulIdentifier", + "src": "34104:3:74" + }, + "nativeSrc": "34104:20:74", + "nodeType": "YulFunctionCall", + "src": "34104:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34078:6:74", + "nodeType": "YulIdentifier", + "src": "34078:6:74" + }, + "nativeSrc": "34078:47:74", + "nodeType": "YulFunctionCall", + "src": "34078:47:74" + }, + "nativeSrc": "34078:47:74", + "nodeType": "YulExpressionStatement", + "src": "34078:47:74" + }, + { + "nativeSrc": "34134:96:74", + "nodeType": "YulAssignment", + "src": "34134:96:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "34208:6:74", + "nodeType": "YulIdentifier", + "src": "34208:6:74" + }, + { + "name": "value1", + "nativeSrc": "34216:6:74", + "nodeType": "YulIdentifier", + "src": "34216:6:74" + }, + { + "name": "tail", + "nativeSrc": "34225:4:74", + "nodeType": "YulIdentifier", + "src": "34225:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "34142:65:74", + "nodeType": "YulIdentifier", + "src": "34142:65:74" + }, + "nativeSrc": "34142:88:74", + "nodeType": "YulFunctionCall", + "src": "34142:88:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34134:4:74", + "nodeType": "YulIdentifier", + "src": "34134:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34251:9:74", + "nodeType": "YulIdentifier", + "src": "34251:9:74" + }, + { + "kind": "number", + "nativeSrc": "34262:2:74", + "nodeType": "YulLiteral", + "src": "34262:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34247:3:74", + "nodeType": "YulIdentifier", + "src": "34247:3:74" + }, + "nativeSrc": "34247:18:74", + "nodeType": "YulFunctionCall", + "src": "34247:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "34271:4:74", + "nodeType": "YulIdentifier", + "src": "34271:4:74" + }, + { + "name": "headStart", + "nativeSrc": "34277:9:74", + "nodeType": "YulIdentifier", + "src": "34277:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "34267:3:74", + "nodeType": "YulIdentifier", + "src": "34267:3:74" + }, + "nativeSrc": "34267:20:74", + "nodeType": "YulFunctionCall", + "src": "34267:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34240:6:74", + "nodeType": "YulIdentifier", + "src": "34240:6:74" + }, + "nativeSrc": "34240:48:74", + "nodeType": "YulFunctionCall", + "src": "34240:48:74" + }, + "nativeSrc": "34240:48:74", + "nodeType": "YulExpressionStatement", + "src": "34240:48:74" + }, + { + "nativeSrc": "34297:96:74", + "nodeType": "YulAssignment", + "src": "34297:96:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "34371:6:74", + "nodeType": "YulIdentifier", + "src": "34371:6:74" + }, + { + "name": "value3", + "nativeSrc": "34379:6:74", + "nodeType": "YulIdentifier", + "src": "34379:6:74" + }, + { + "name": "tail", + "nativeSrc": "34388:4:74", + "nodeType": "YulIdentifier", + "src": "34388:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "34305:65:74", + "nodeType": "YulIdentifier", + "src": "34305:65:74" + }, + "nativeSrc": "34305:88:74", + "nodeType": "YulFunctionCall", + "src": "34305:88:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34297:4:74", + "nodeType": "YulIdentifier", + "src": "34297:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "33846:554:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "33980:9:74", + "nodeType": "YulTypedName", + "src": "33980:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "33992:6:74", + "nodeType": "YulTypedName", + "src": "33992:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "34000:6:74", + "nodeType": "YulTypedName", + "src": "34000:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "34008:6:74", + "nodeType": "YulTypedName", + "src": "34008:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "34016:6:74", + "nodeType": "YulTypedName", + "src": "34016:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "34027:4:74", + "nodeType": "YulTypedName", + "src": "34027:4:74", + "type": "" + } + ], + "src": "33846:554:74" + }, + { + "body": { + "nativeSrc": "34469:52:74", + "nodeType": "YulBlock", + "src": "34469:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "34486:3:74", + "nodeType": "YulIdentifier", + "src": "34486:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "34508:5:74", + "nodeType": "YulIdentifier", + "src": "34508:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "34491:16:74", + "nodeType": "YulIdentifier", + "src": "34491:16:74" + }, + "nativeSrc": "34491:23:74", + "nodeType": "YulFunctionCall", + "src": "34491:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34479:6:74", + "nodeType": "YulIdentifier", + "src": "34479:6:74" + }, + "nativeSrc": "34479:36:74", + "nodeType": "YulFunctionCall", + "src": "34479:36:74" + }, + "nativeSrc": "34479:36:74", + "nodeType": "YulExpressionStatement", + "src": "34479:36:74" + } + ] + }, + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "34406:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34457:5:74", + "nodeType": "YulTypedName", + "src": "34457:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "34464:3:74", + "nodeType": "YulTypedName", + "src": "34464:3:74", + "type": "" + } + ], + "src": "34406:115:74" + }, + { + "body": { + "nativeSrc": "34623:122:74", + "nodeType": "YulBlock", + "src": "34623:122:74", + "statements": [ + { + "nativeSrc": "34633:26:74", + "nodeType": "YulAssignment", + "src": "34633:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34645:9:74", + "nodeType": "YulIdentifier", + "src": "34645:9:74" + }, + { + "kind": "number", + "nativeSrc": "34656:2:74", + "nodeType": "YulLiteral", + "src": "34656:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34641:3:74", + "nodeType": "YulIdentifier", + "src": "34641:3:74" + }, + "nativeSrc": "34641:18:74", + "nodeType": "YulFunctionCall", + "src": "34641:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34633:4:74", + "nodeType": "YulIdentifier", + "src": "34633:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "34711:6:74", + "nodeType": "YulIdentifier", + "src": "34711:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34724:9:74", + "nodeType": "YulIdentifier", + "src": "34724:9:74" + }, + { + "kind": "number", + "nativeSrc": "34735:1:74", + "nodeType": "YulLiteral", + "src": "34735:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34720:3:74", + "nodeType": "YulIdentifier", + "src": "34720:3:74" + }, + "nativeSrc": "34720:17:74", + "nodeType": "YulFunctionCall", + "src": "34720:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "34669:41:74", + "nodeType": "YulIdentifier", + "src": "34669:41:74" + }, + "nativeSrc": "34669:69:74", + "nodeType": "YulFunctionCall", + "src": "34669:69:74" + }, + "nativeSrc": "34669:69:74", + "nodeType": "YulExpressionStatement", + "src": "34669:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed", + "nativeSrc": "34527:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "34595:9:74", + "nodeType": "YulTypedName", + "src": "34595:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "34607:6:74", + "nodeType": "YulTypedName", + "src": "34607:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "34618:4:74", + "nodeType": "YulTypedName", + "src": "34618:4:74", + "type": "" + } + ], + "src": "34527:218:74" + }, + { + "body": { + "nativeSrc": "34779:152:74", + "nodeType": "YulBlock", + "src": "34779:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34796:1:74", + "nodeType": "YulLiteral", + "src": "34796:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "34799:77:74", + "nodeType": "YulLiteral", + "src": "34799:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34789:6:74", + "nodeType": "YulIdentifier", + "src": "34789:6:74" + }, + "nativeSrc": "34789:88:74", + "nodeType": "YulFunctionCall", + "src": "34789:88:74" + }, + "nativeSrc": "34789:88:74", + "nodeType": "YulExpressionStatement", + "src": "34789:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34893:1:74", + "nodeType": "YulLiteral", + "src": "34893:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "34896:4:74", + "nodeType": "YulLiteral", + "src": "34896:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34886:6:74", + "nodeType": "YulIdentifier", + "src": "34886:6:74" + }, + "nativeSrc": "34886:15:74", + "nodeType": "YulFunctionCall", + "src": "34886:15:74" + }, + "nativeSrc": "34886:15:74", + "nodeType": "YulExpressionStatement", + "src": "34886:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "34917:1:74", + "nodeType": "YulLiteral", + "src": "34917:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "34920:4:74", + "nodeType": "YulLiteral", + "src": "34920:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "34910:6:74", + "nodeType": "YulIdentifier", + "src": "34910:6:74" + }, + "nativeSrc": "34910:15:74", + "nodeType": "YulFunctionCall", + "src": "34910:15:74" + }, + "nativeSrc": "34910:15:74", + "nodeType": "YulExpressionStatement", + "src": "34910:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "34751:180:74", + "nodeType": "YulFunctionDefinition", + "src": "34751:180:74" + }, + { + "body": { + "nativeSrc": "35002:31:74", + "nodeType": "YulBlock", + "src": "35002:31:74", + "statements": [ + { + "nativeSrc": "35013:13:74", + "nodeType": "YulAssignment", + "src": "35013:13:74", + "value": { + "name": "len", + "nativeSrc": "35023:3:74", + "nodeType": "YulIdentifier", + "src": "35023:3:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "35013:6:74", + "nodeType": "YulIdentifier", + "src": "35013:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "34937:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34980:5:74", + "nodeType": "YulTypedName", + "src": "34980:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "34987:3:74", + "nodeType": "YulTypedName", + "src": "34987:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "34995:6:74", + "nodeType": "YulTypedName", + "src": "34995:6:74", + "type": "" + } + ], + "src": "34937:96:74" + }, + { + "body": { + "nativeSrc": "35092:87:74", + "nodeType": "YulBlock", + "src": "35092:87:74", + "statements": [ + { + "nativeSrc": "35102:11:74", + "nodeType": "YulAssignment", + "src": "35102:11:74", + "value": { + "name": "ptr", + "nativeSrc": "35110:3:74", + "nodeType": "YulIdentifier", + "src": "35110:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "35102:4:74", + "nodeType": "YulIdentifier", + "src": "35102:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "35130:1:74", + "nodeType": "YulLiteral", + "src": "35130:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "35133:3:74", + "nodeType": "YulIdentifier", + "src": "35133:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "35123:6:74", + "nodeType": "YulIdentifier", + "src": "35123:6:74" + }, + "nativeSrc": "35123:14:74", + "nodeType": "YulFunctionCall", + "src": "35123:14:74" + }, + "nativeSrc": "35123:14:74", + "nodeType": "YulExpressionStatement", + "src": "35123:14:74" + }, + { + "nativeSrc": "35146:26:74", + "nodeType": "YulAssignment", + "src": "35146:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "35164:1:74", + "nodeType": "YulLiteral", + "src": "35164:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "35167:4:74", + "nodeType": "YulLiteral", + "src": "35167:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "35154:9:74", + "nodeType": "YulIdentifier", + "src": "35154:9:74" + }, + "nativeSrc": "35154:18:74", + "nodeType": "YulFunctionCall", + "src": "35154:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "35146:4:74", + "nodeType": "YulIdentifier", + "src": "35146:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "35039:140:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "35079:3:74", + "nodeType": "YulTypedName", + "src": "35079:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "35087:4:74", + "nodeType": "YulTypedName", + "src": "35087:4:74", + "type": "" + } + ], + "src": "35039:140:74" + }, + { + "body": { + "nativeSrc": "35263:463:74", + "nodeType": "YulBlock", + "src": "35263:463:74", + "statements": [ + { + "body": { + "nativeSrc": "35289:430:74", + "nodeType": "YulBlock", + "src": "35289:430:74", + "statements": [ + { + "nativeSrc": "35303:53:74", + "nodeType": "YulVariableDeclaration", + "src": "35303:53:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "35350:5:74", + "nodeType": "YulIdentifier", + "src": "35350:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "35319:30:74", + "nodeType": "YulIdentifier", + "src": "35319:30:74" + }, + "nativeSrc": "35319:37:74", + "nodeType": "YulFunctionCall", + "src": "35319:37:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "35307:8:74", + "nodeType": "YulTypedName", + "src": "35307:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "35369:63:74", + "nodeType": "YulVariableDeclaration", + "src": "35369:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "35392:8:74", + "nodeType": "YulIdentifier", + "src": "35392:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "35420:10:74", + "nodeType": "YulIdentifier", + "src": "35420:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "35402:17:74", + "nodeType": "YulIdentifier", + "src": "35402:17:74" + }, + "nativeSrc": "35402:29:74", + "nodeType": "YulFunctionCall", + "src": "35402:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35388:3:74", + "nodeType": "YulIdentifier", + "src": "35388:3:74" + }, + "nativeSrc": "35388:44:74", + "nodeType": "YulFunctionCall", + "src": "35388:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "35373:11:74", + "nodeType": "YulTypedName", + "src": "35373:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "35589:27:74", + "nodeType": "YulBlock", + "src": "35589:27:74", + "statements": [ + { + "nativeSrc": "35591:23:74", + "nodeType": "YulAssignment", + "src": "35591:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "35606:8:74", + "nodeType": "YulIdentifier", + "src": "35606:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "35591:11:74", + "nodeType": "YulIdentifier", + "src": "35591:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "35573:10:74", + "nodeType": "YulIdentifier", + "src": "35573:10:74" + }, + { + "kind": "number", + "nativeSrc": "35585:2:74", + "nodeType": "YulLiteral", + "src": "35585:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "35570:2:74", + "nodeType": "YulIdentifier", + "src": "35570:2:74" + }, + "nativeSrc": "35570:18:74", + "nodeType": "YulFunctionCall", + "src": "35570:18:74" + }, + "nativeSrc": "35567:49:74", + "nodeType": "YulIf", + "src": "35567:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "35658:11:74", + "nodeType": "YulIdentifier", + "src": "35658:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "35675:8:74", + "nodeType": "YulIdentifier", + "src": "35675:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "35703:3:74", + "nodeType": "YulIdentifier", + "src": "35703:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "35685:17:74", + "nodeType": "YulIdentifier", + "src": "35685:17:74" + }, + "nativeSrc": "35685:22:74", + "nodeType": "YulFunctionCall", + "src": "35685:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35671:3:74", + "nodeType": "YulIdentifier", + "src": "35671:3:74" + }, + "nativeSrc": "35671:37:74", + "nodeType": "YulFunctionCall", + "src": "35671:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "35629:28:74", + "nodeType": "YulIdentifier", + "src": "35629:28:74" + }, + "nativeSrc": "35629:80:74", + "nodeType": "YulFunctionCall", + "src": "35629:80:74" + }, + "nativeSrc": "35629:80:74", + "nodeType": "YulExpressionStatement", + "src": "35629:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "35280:3:74", + "nodeType": "YulIdentifier", + "src": "35280:3:74" + }, + { + "kind": "number", + "nativeSrc": "35285:2:74", + "nodeType": "YulLiteral", + "src": "35285:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "35277:2:74", + "nodeType": "YulIdentifier", + "src": "35277:2:74" + }, + "nativeSrc": "35277:11:74", + "nodeType": "YulFunctionCall", + "src": "35277:11:74" + }, + "nativeSrc": "35274:445:74", + "nodeType": "YulIf", + "src": "35274:445:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "35185:541:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "35239:5:74", + "nodeType": "YulTypedName", + "src": "35239:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "35246:3:74", + "nodeType": "YulTypedName", + "src": "35246:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "35251:10:74", + "nodeType": "YulTypedName", + "src": "35251:10:74", + "type": "" + } + ], + "src": "35185:541:74" + }, + { + "body": { + "nativeSrc": "35829:1301:74", + "nodeType": "YulBlock", + "src": "35829:1301:74", + "statements": [ + { + "nativeSrc": "35840:57:74", + "nodeType": "YulVariableDeclaration", + "src": "35840:57:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "35888:3:74", + "nodeType": "YulIdentifier", + "src": "35888:3:74" + }, + { + "name": "len", + "nativeSrc": "35893:3:74", + "nodeType": "YulIdentifier", + "src": "35893:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "35854:33:74", + "nodeType": "YulIdentifier", + "src": "35854:33:74" + }, + "nativeSrc": "35854:43:74", + "nodeType": "YulFunctionCall", + "src": "35854:43:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "35844:6:74", + "nodeType": "YulTypedName", + "src": "35844:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "35982:22:74", + "nodeType": "YulBlock", + "src": "35982:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "35984:16:74", + "nodeType": "YulIdentifier", + "src": "35984:16:74" + }, + "nativeSrc": "35984:18:74", + "nodeType": "YulFunctionCall", + "src": "35984:18:74" + }, + "nativeSrc": "35984:18:74", + "nodeType": "YulExpressionStatement", + "src": "35984:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "35954:6:74", + "nodeType": "YulIdentifier", + "src": "35954:6:74" + }, + { + "kind": "number", + "nativeSrc": "35962:18:74", + "nodeType": "YulLiteral", + "src": "35962:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "35951:2:74", + "nodeType": "YulIdentifier", + "src": "35951:2:74" + }, + "nativeSrc": "35951:30:74", + "nodeType": "YulFunctionCall", + "src": "35951:30:74" + }, + "nativeSrc": "35948:56:74", + "nodeType": "YulIf", + "src": "35948:56:74" + }, + { + "nativeSrc": "36014:52:74", + "nodeType": "YulVariableDeclaration", + "src": "36014:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "36060:4:74", + "nodeType": "YulIdentifier", + "src": "36060:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "36054:5:74", + "nodeType": "YulIdentifier", + "src": "36054:5:74" + }, + "nativeSrc": "36054:11:74", + "nodeType": "YulFunctionCall", + "src": "36054:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "36028:25:74", + "nodeType": "YulIdentifier", + "src": "36028:25:74" + }, + "nativeSrc": "36028:38:74", + "nodeType": "YulFunctionCall", + "src": "36028:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "36018:6:74", + "nodeType": "YulTypedName", + "src": "36018:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "36158:4:74", + "nodeType": "YulIdentifier", + "src": "36158:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "36164:6:74", + "nodeType": "YulIdentifier", + "src": "36164:6:74" + }, + { + "name": "newLen", + "nativeSrc": "36172:6:74", + "nodeType": "YulIdentifier", + "src": "36172:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "36113:44:74", + "nodeType": "YulIdentifier", + "src": "36113:44:74" + }, + "nativeSrc": "36113:66:74", + "nodeType": "YulFunctionCall", + "src": "36113:66:74" + }, + "nativeSrc": "36113:66:74", + "nodeType": "YulExpressionStatement", + "src": "36113:66:74" + }, + { + "nativeSrc": "36189:18:74", + "nodeType": "YulVariableDeclaration", + "src": "36189:18:74", + "value": { + "kind": "number", + "nativeSrc": "36206:1:74", + "nodeType": "YulLiteral", + "src": "36206:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "36193:9:74", + "nodeType": "YulTypedName", + "src": "36193:9:74", + "type": "" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "36254:624:74", + "nodeType": "YulBlock", + "src": "36254:624:74", + "statements": [ + { + "nativeSrc": "36268:37:74", + "nodeType": "YulVariableDeclaration", + "src": "36268:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "36287:6:74", + "nodeType": "YulIdentifier", + "src": "36287:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "36299:4:74", + "nodeType": "YulLiteral", + "src": "36299:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "36295:3:74", + "nodeType": "YulIdentifier", + "src": "36295:3:74" + }, + "nativeSrc": "36295:9:74", + "nodeType": "YulFunctionCall", + "src": "36295:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "36283:3:74", + "nodeType": "YulIdentifier", + "src": "36283:3:74" + }, + "nativeSrc": "36283:22:74", + "nodeType": "YulFunctionCall", + "src": "36283:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "36272:7:74", + "nodeType": "YulTypedName", + "src": "36272:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "36319:50:74", + "nodeType": "YulVariableDeclaration", + "src": "36319:50:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "36364:4:74", + "nodeType": "YulIdentifier", + "src": "36364:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "36333:30:74", + "nodeType": "YulIdentifier", + "src": "36333:30:74" + }, + "nativeSrc": "36333:36:74", + "nodeType": "YulFunctionCall", + "src": "36333:36:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "36323:6:74", + "nodeType": "YulTypedName", + "src": "36323:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "36382:10:74", + "nodeType": "YulVariableDeclaration", + "src": "36382:10:74", + "value": { + "kind": "number", + "nativeSrc": "36391:1:74", + "nodeType": "YulLiteral", + "src": "36391:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "36386:1:74", + "nodeType": "YulTypedName", + "src": "36386:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "36450:170:74", + "nodeType": "YulBlock", + "src": "36450:170:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "36475:6:74", + "nodeType": "YulIdentifier", + "src": "36475:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "36500:3:74", + "nodeType": "YulIdentifier", + "src": "36500:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "36505:9:74", + "nodeType": "YulIdentifier", + "src": "36505:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36496:3:74", + "nodeType": "YulIdentifier", + "src": "36496:3:74" + }, + "nativeSrc": "36496:19:74", + "nodeType": "YulFunctionCall", + "src": "36496:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "36483:12:74", + "nodeType": "YulIdentifier", + "src": "36483:12:74" + }, + "nativeSrc": "36483:33:74", + "nodeType": "YulFunctionCall", + "src": "36483:33:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "36468:6:74", + "nodeType": "YulIdentifier", + "src": "36468:6:74" + }, + "nativeSrc": "36468:49:74", + "nodeType": "YulFunctionCall", + "src": "36468:49:74" + }, + "nativeSrc": "36468:49:74", + "nodeType": "YulExpressionStatement", + "src": "36468:49:74" + }, + { + "nativeSrc": "36534:24:74", + "nodeType": "YulAssignment", + "src": "36534:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "36548:6:74", + "nodeType": "YulIdentifier", + "src": "36548:6:74" + }, + { + "kind": "number", + "nativeSrc": "36556:1:74", + "nodeType": "YulLiteral", + "src": "36556:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36544:3:74", + "nodeType": "YulIdentifier", + "src": "36544:3:74" + }, + "nativeSrc": "36544:14:74", + "nodeType": "YulFunctionCall", + "src": "36544:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "36534:6:74", + "nodeType": "YulIdentifier", + "src": "36534:6:74" + } + ] + }, + { + "nativeSrc": "36575:31:74", + "nodeType": "YulAssignment", + "src": "36575:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "36592:9:74", + "nodeType": "YulIdentifier", + "src": "36592:9:74" + }, + { + "kind": "number", + "nativeSrc": "36603:2:74", + "nodeType": "YulLiteral", + "src": "36603:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36588:3:74", + "nodeType": "YulIdentifier", + "src": "36588:3:74" + }, + "nativeSrc": "36588:18:74", + "nodeType": "YulFunctionCall", + "src": "36588:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "36575:9:74", + "nodeType": "YulIdentifier", + "src": "36575:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "36416:1:74", + "nodeType": "YulIdentifier", + "src": "36416:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "36419:7:74", + "nodeType": "YulIdentifier", + "src": "36419:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "36413:2:74", + "nodeType": "YulIdentifier", + "src": "36413:2:74" + }, + "nativeSrc": "36413:14:74", + "nodeType": "YulFunctionCall", + "src": "36413:14:74" + }, + "nativeSrc": "36405:215:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "36428:21:74", + "nodeType": "YulBlock", + "src": "36428:21:74", + "statements": [ + { + "nativeSrc": "36430:17:74", + "nodeType": "YulAssignment", + "src": "36430:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "36439:1:74", + "nodeType": "YulIdentifier", + "src": "36439:1:74" + }, + { + "kind": "number", + "nativeSrc": "36442:4:74", + "nodeType": "YulLiteral", + "src": "36442:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36435:3:74", + "nodeType": "YulIdentifier", + "src": "36435:3:74" + }, + "nativeSrc": "36435:12:74", + "nodeType": "YulFunctionCall", + "src": "36435:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "36430:1:74", + "nodeType": "YulIdentifier", + "src": "36430:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "36409:3:74", + "nodeType": "YulBlock", + "src": "36409:3:74", + "statements": [] + }, + "src": "36405:215:74" + }, + { + "body": { + "nativeSrc": "36656:163:74", + "nodeType": "YulBlock", + "src": "36656:163:74", + "statements": [ + { + "nativeSrc": "36674:50:74", + "nodeType": "YulVariableDeclaration", + "src": "36674:50:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "36708:3:74", + "nodeType": "YulIdentifier", + "src": "36708:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "36713:9:74", + "nodeType": "YulIdentifier", + "src": "36713:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36704:3:74", + "nodeType": "YulIdentifier", + "src": "36704:3:74" + }, + "nativeSrc": "36704:19:74", + "nodeType": "YulFunctionCall", + "src": "36704:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "36691:12:74", + "nodeType": "YulIdentifier", + "src": "36691:12:74" + }, + "nativeSrc": "36691:33:74", + "nodeType": "YulFunctionCall", + "src": "36691:33:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "36678:9:74", + "nodeType": "YulTypedName", + "src": "36678:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "36748:6:74", + "nodeType": "YulIdentifier", + "src": "36748:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "36775:9:74", + "nodeType": "YulIdentifier", + "src": "36775:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "36790:6:74", + "nodeType": "YulIdentifier", + "src": "36790:6:74" + }, + { + "kind": "number", + "nativeSrc": "36798:4:74", + "nodeType": "YulLiteral", + "src": "36798:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "36786:3:74", + "nodeType": "YulIdentifier", + "src": "36786:3:74" + }, + "nativeSrc": "36786:17:74", + "nodeType": "YulFunctionCall", + "src": "36786:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "36756:18:74", + "nodeType": "YulIdentifier", + "src": "36756:18:74" + }, + "nativeSrc": "36756:48:74", + "nodeType": "YulFunctionCall", + "src": "36756:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "36741:6:74", + "nodeType": "YulIdentifier", + "src": "36741:6:74" + }, + "nativeSrc": "36741:64:74", + "nodeType": "YulFunctionCall", + "src": "36741:64:74" + }, + "nativeSrc": "36741:64:74", + "nodeType": "YulExpressionStatement", + "src": "36741:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "36639:7:74", + "nodeType": "YulIdentifier", + "src": "36639:7:74" + }, + { + "name": "newLen", + "nativeSrc": "36648:6:74", + "nodeType": "YulIdentifier", + "src": "36648:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "36636:2:74", + "nodeType": "YulIdentifier", + "src": "36636:2:74" + }, + "nativeSrc": "36636:19:74", + "nodeType": "YulFunctionCall", + "src": "36636:19:74" + }, + "nativeSrc": "36633:186:74", + "nodeType": "YulIf", + "src": "36633:186:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "36839:4:74", + "nodeType": "YulIdentifier", + "src": "36839:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "36853:6:74", + "nodeType": "YulIdentifier", + "src": "36853:6:74" + }, + { + "kind": "number", + "nativeSrc": "36861:1:74", + "nodeType": "YulLiteral", + "src": "36861:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "36849:3:74", + "nodeType": "YulIdentifier", + "src": "36849:3:74" + }, + "nativeSrc": "36849:14:74", + "nodeType": "YulFunctionCall", + "src": "36849:14:74" + }, + { + "kind": "number", + "nativeSrc": "36865:1:74", + "nodeType": "YulLiteral", + "src": "36865:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36845:3:74", + "nodeType": "YulIdentifier", + "src": "36845:3:74" + }, + "nativeSrc": "36845:22:74", + "nodeType": "YulFunctionCall", + "src": "36845:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "36832:6:74", + "nodeType": "YulIdentifier", + "src": "36832:6:74" + }, + "nativeSrc": "36832:36:74", + "nodeType": "YulFunctionCall", + "src": "36832:36:74" + }, + "nativeSrc": "36832:36:74", + "nodeType": "YulExpressionStatement", + "src": "36832:36:74" + } + ] + }, + "nativeSrc": "36247:631:74", + "nodeType": "YulCase", + "src": "36247:631:74", + "value": { + "kind": "number", + "nativeSrc": "36252:1:74", + "nodeType": "YulLiteral", + "src": "36252:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "36895:229:74", + "nodeType": "YulBlock", + "src": "36895:229:74", + "statements": [ + { + "nativeSrc": "36909:14:74", + "nodeType": "YulVariableDeclaration", + "src": "36909:14:74", + "value": { + "kind": "number", + "nativeSrc": "36922:1:74", + "nodeType": "YulLiteral", + "src": "36922:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "36913:5:74", + "nodeType": "YulTypedName", + "src": "36913:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "36946:74:74", + "nodeType": "YulBlock", + "src": "36946:74:74", + "statements": [ + { + "nativeSrc": "36964:42:74", + "nodeType": "YulAssignment", + "src": "36964:42:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "36990:3:74", + "nodeType": "YulIdentifier", + "src": "36990:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "36995:9:74", + "nodeType": "YulIdentifier", + "src": "36995:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36986:3:74", + "nodeType": "YulIdentifier", + "src": "36986:3:74" + }, + "nativeSrc": "36986:19:74", + "nodeType": "YulFunctionCall", + "src": "36986:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "36973:12:74", + "nodeType": "YulIdentifier", + "src": "36973:12:74" + }, + "nativeSrc": "36973:33:74", + "nodeType": "YulFunctionCall", + "src": "36973:33:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "36964:5:74", + "nodeType": "YulIdentifier", + "src": "36964:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "36939:6:74", + "nodeType": "YulIdentifier", + "src": "36939:6:74" + }, + "nativeSrc": "36936:84:74", + "nodeType": "YulIf", + "src": "36936:84:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "37040:4:74", + "nodeType": "YulIdentifier", + "src": "37040:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "37099:5:74", + "nodeType": "YulIdentifier", + "src": "37099:5:74" + }, + { + "name": "newLen", + "nativeSrc": "37106:6:74", + "nodeType": "YulIdentifier", + "src": "37106:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "37046:52:74", + "nodeType": "YulIdentifier", + "src": "37046:52:74" + }, + "nativeSrc": "37046:67:74", + "nodeType": "YulFunctionCall", + "src": "37046:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "37033:6:74", + "nodeType": "YulIdentifier", + "src": "37033:6:74" + }, + "nativeSrc": "37033:81:74", + "nodeType": "YulFunctionCall", + "src": "37033:81:74" + }, + "nativeSrc": "37033:81:74", + "nodeType": "YulExpressionStatement", + "src": "37033:81:74" + } + ] + }, + "nativeSrc": "36887:237:74", + "nodeType": "YulCase", + "src": "36887:237:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "36227:6:74", + "nodeType": "YulIdentifier", + "src": "36227:6:74" + }, + { + "kind": "number", + "nativeSrc": "36235:2:74", + "nodeType": "YulLiteral", + "src": "36235:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "36224:2:74", + "nodeType": "YulIdentifier", + "src": "36224:2:74" + }, + "nativeSrc": "36224:14:74", + "nodeType": "YulFunctionCall", + "src": "36224:14:74" + }, + "nativeSrc": "36217:907:74", + "nodeType": "YulSwitch", + "src": "36217:907:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage", + "nativeSrc": "35732:1398:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "35813:4:74", + "nodeType": "YulTypedName", + "src": "35813:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "35819:3:74", + "nodeType": "YulTypedName", + "src": "35819:3:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "35824:3:74", + "nodeType": "YulTypedName", + "src": "35824:3:74", + "type": "" + } + ], + "src": "35732:1398:74" + }, + { + "body": { + "nativeSrc": "37258:214:74", + "nodeType": "YulBlock", + "src": "37258:214:74", + "statements": [ + { + "nativeSrc": "37268:77:74", + "nodeType": "YulAssignment", + "src": "37268:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "37333:3:74", + "nodeType": "YulIdentifier", + "src": "37333:3:74" + }, + { + "name": "length", + "nativeSrc": "37338:6:74", + "nodeType": "YulIdentifier", + "src": "37338:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "37275:57:74", + "nodeType": "YulIdentifier", + "src": "37275:57:74" + }, + "nativeSrc": "37275:70:74", + "nodeType": "YulFunctionCall", + "src": "37275:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "37268:3:74", + "nodeType": "YulIdentifier", + "src": "37268:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "37392:5:74", + "nodeType": "YulIdentifier", + "src": "37392:5:74" + }, + { + "name": "pos", + "nativeSrc": "37399:3:74", + "nodeType": "YulIdentifier", + "src": "37399:3:74" + }, + { + "name": "length", + "nativeSrc": "37404:6:74", + "nodeType": "YulIdentifier", + "src": "37404:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "37355:36:74", + "nodeType": "YulIdentifier", + "src": "37355:36:74" + }, + "nativeSrc": "37355:56:74", + "nodeType": "YulFunctionCall", + "src": "37355:56:74" + }, + "nativeSrc": "37355:56:74", + "nodeType": "YulExpressionStatement", + "src": "37355:56:74" + }, + { + "nativeSrc": "37420:46:74", + "nodeType": "YulAssignment", + "src": "37420:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "37431:3:74", + "nodeType": "YulIdentifier", + "src": "37431:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "37458:6:74", + "nodeType": "YulIdentifier", + "src": "37458:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "37436:21:74", + "nodeType": "YulIdentifier", + "src": "37436:21:74" + }, + "nativeSrc": "37436:29:74", + "nodeType": "YulFunctionCall", + "src": "37436:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37427:3:74", + "nodeType": "YulIdentifier", + "src": "37427:3:74" + }, + "nativeSrc": "37427:39:74", + "nodeType": "YulFunctionCall", + "src": "37427:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "37420:3:74", + "nodeType": "YulIdentifier", + "src": "37420:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "37158:314:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "37231:5:74", + "nodeType": "YulTypedName", + "src": "37231:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "37238:6:74", + "nodeType": "YulTypedName", + "src": "37238:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "37246:3:74", + "nodeType": "YulTypedName", + "src": "37246:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "37254:3:74", + "nodeType": "YulTypedName", + "src": "37254:3:74", + "type": "" + } + ], + "src": "37158:314:74" + }, + { + "body": { + "nativeSrc": "37604:203:74", + "nodeType": "YulBlock", + "src": "37604:203:74", + "statements": [ + { + "nativeSrc": "37614:26:74", + "nodeType": "YulAssignment", + "src": "37614:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37626:9:74", + "nodeType": "YulIdentifier", + "src": "37626:9:74" + }, + { + "kind": "number", + "nativeSrc": "37637:2:74", + "nodeType": "YulLiteral", + "src": "37637:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37622:3:74", + "nodeType": "YulIdentifier", + "src": "37622:3:74" + }, + "nativeSrc": "37622:18:74", + "nodeType": "YulFunctionCall", + "src": "37622:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "37614:4:74", + "nodeType": "YulIdentifier", + "src": "37614:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37661:9:74", + "nodeType": "YulIdentifier", + "src": "37661:9:74" + }, + { + "kind": "number", + "nativeSrc": "37672:1:74", + "nodeType": "YulLiteral", + "src": "37672:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37657:3:74", + "nodeType": "YulIdentifier", + "src": "37657:3:74" + }, + "nativeSrc": "37657:17:74", + "nodeType": "YulFunctionCall", + "src": "37657:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "37680:4:74", + "nodeType": "YulIdentifier", + "src": "37680:4:74" + }, + { + "name": "headStart", + "nativeSrc": "37686:9:74", + "nodeType": "YulIdentifier", + "src": "37686:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "37676:3:74", + "nodeType": "YulIdentifier", + "src": "37676:3:74" + }, + "nativeSrc": "37676:20:74", + "nodeType": "YulFunctionCall", + "src": "37676:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37650:6:74", + "nodeType": "YulIdentifier", + "src": "37650:6:74" + }, + "nativeSrc": "37650:47:74", + "nodeType": "YulFunctionCall", + "src": "37650:47:74" + }, + "nativeSrc": "37650:47:74", + "nodeType": "YulExpressionStatement", + "src": "37650:47:74" + }, + { + "nativeSrc": "37706:94:74", + "nodeType": "YulAssignment", + "src": "37706:94:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "37778:6:74", + "nodeType": "YulIdentifier", + "src": "37778:6:74" + }, + { + "name": "value1", + "nativeSrc": "37786:6:74", + "nodeType": "YulIdentifier", + "src": "37786:6:74" + }, + { + "name": "tail", + "nativeSrc": "37795:4:74", + "nodeType": "YulIdentifier", + "src": "37795:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "37714:63:74", + "nodeType": "YulIdentifier", + "src": "37714:63:74" + }, + "nativeSrc": "37714:86:74", + "nodeType": "YulFunctionCall", + "src": "37714:86:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "37706:4:74", + "nodeType": "YulIdentifier", + "src": "37706:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "37478:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "37568:9:74", + "nodeType": "YulTypedName", + "src": "37568:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "37580:6:74", + "nodeType": "YulTypedName", + "src": "37580:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "37588:6:74", + "nodeType": "YulTypedName", + "src": "37588:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "37599:4:74", + "nodeType": "YulTypedName", + "src": "37599:4:74", + "type": "" + } + ], + "src": "37478:329:74" + }, + { + "body": { + "nativeSrc": "37855:141:74", + "nodeType": "YulBlock", + "src": "37855:141:74", + "statements": [ + { + "nativeSrc": "37865:32:74", + "nodeType": "YulAssignment", + "src": "37865:32:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "37891:5:74", + "nodeType": "YulIdentifier", + "src": "37891:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "37874:16:74", + "nodeType": "YulIdentifier", + "src": "37874:16:74" + }, + "nativeSrc": "37874:23:74", + "nodeType": "YulFunctionCall", + "src": "37874:23:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "37865:5:74", + "nodeType": "YulIdentifier", + "src": "37865:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "37939:22:74", + "nodeType": "YulBlock", + "src": "37939:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "37941:16:74", + "nodeType": "YulIdentifier", + "src": "37941:16:74" + }, + "nativeSrc": "37941:18:74", + "nodeType": "YulFunctionCall", + "src": "37941:18:74" + }, + "nativeSrc": "37941:18:74", + "nodeType": "YulExpressionStatement", + "src": "37941:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "37912:5:74", + "nodeType": "YulIdentifier", + "src": "37912:5:74" + }, + { + "kind": "number", + "nativeSrc": "37919:18:74", + "nodeType": "YulLiteral", + "src": "37919:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "37909:2:74", + "nodeType": "YulIdentifier", + "src": "37909:2:74" + }, + "nativeSrc": "37909:29:74", + "nodeType": "YulFunctionCall", + "src": "37909:29:74" + }, + "nativeSrc": "37906:55:74", + "nodeType": "YulIf", + "src": "37906:55:74" + }, + { + "nativeSrc": "37970:20:74", + "nodeType": "YulAssignment", + "src": "37970:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "37981:5:74", + "nodeType": "YulIdentifier", + "src": "37981:5:74" + }, + { + "kind": "number", + "nativeSrc": "37988:1:74", + "nodeType": "YulLiteral", + "src": "37988:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37977:3:74", + "nodeType": "YulIdentifier", + "src": "37977:3:74" + }, + "nativeSrc": "37977:13:74", + "nodeType": "YulFunctionCall", + "src": "37977:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "37970:3:74", + "nodeType": "YulIdentifier", + "src": "37970:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint64", + "nativeSrc": "37813:183:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "37841:5:74", + "nodeType": "YulTypedName", + "src": "37841:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "37851:3:74", + "nodeType": "YulTypedName", + "src": "37851:3:74", + "type": "" + } + ], + "src": "37813:183:74" + }, + { + "body": { + "nativeSrc": "38130:205:74", + "nodeType": "YulBlock", + "src": "38130:205:74", + "statements": [ + { + "nativeSrc": "38140:26:74", + "nodeType": "YulAssignment", + "src": "38140:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38152:9:74", + "nodeType": "YulIdentifier", + "src": "38152:9:74" + }, + { + "kind": "number", + "nativeSrc": "38163:2:74", + "nodeType": "YulLiteral", + "src": "38163:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38148:3:74", + "nodeType": "YulIdentifier", + "src": "38148:3:74" + }, + "nativeSrc": "38148:18:74", + "nodeType": "YulFunctionCall", + "src": "38148:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "38140:4:74", + "nodeType": "YulIdentifier", + "src": "38140:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38187:9:74", + "nodeType": "YulIdentifier", + "src": "38187:9:74" + }, + { + "kind": "number", + "nativeSrc": "38198:1:74", + "nodeType": "YulLiteral", + "src": "38198:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38183:3:74", + "nodeType": "YulIdentifier", + "src": "38183:3:74" + }, + "nativeSrc": "38183:17:74", + "nodeType": "YulFunctionCall", + "src": "38183:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "38206:4:74", + "nodeType": "YulIdentifier", + "src": "38206:4:74" + }, + { + "name": "headStart", + "nativeSrc": "38212:9:74", + "nodeType": "YulIdentifier", + "src": "38212:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "38202:3:74", + "nodeType": "YulIdentifier", + "src": "38202:3:74" + }, + "nativeSrc": "38202:20:74", + "nodeType": "YulFunctionCall", + "src": "38202:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "38176:6:74", + "nodeType": "YulIdentifier", + "src": "38176:6:74" + }, + "nativeSrc": "38176:47:74", + "nodeType": "YulFunctionCall", + "src": "38176:47:74" + }, + "nativeSrc": "38176:47:74", + "nodeType": "YulExpressionStatement", + "src": "38176:47:74" + }, + { + "nativeSrc": "38232:96:74", + "nodeType": "YulAssignment", + "src": "38232:96:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "38306:6:74", + "nodeType": "YulIdentifier", + "src": "38306:6:74" + }, + { + "name": "value1", + "nativeSrc": "38314:6:74", + "nodeType": "YulIdentifier", + "src": "38314:6:74" + }, + { + "name": "tail", + "nativeSrc": "38323:4:74", + "nodeType": "YulIdentifier", + "src": "38323:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "38240:65:74", + "nodeType": "YulIdentifier", + "src": "38240:65:74" + }, + "nativeSrc": "38240:88:74", + "nodeType": "YulFunctionCall", + "src": "38240:88:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "38232:4:74", + "nodeType": "YulIdentifier", + "src": "38232:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "38002:333:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "38094:9:74", + "nodeType": "YulTypedName", + "src": "38094:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "38106:6:74", + "nodeType": "YulTypedName", + "src": "38106:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "38114:6:74", + "nodeType": "YulTypedName", + "src": "38114:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "38125:4:74", + "nodeType": "YulTypedName", + "src": "38125:4:74", + "type": "" + } + ], + "src": "38002:333:74" + }, + { + "body": { + "nativeSrc": "38401:82:74", + "nodeType": "YulBlock", + "src": "38401:82:74", + "statements": [ + { + "nativeSrc": "38411:66:74", + "nodeType": "YulAssignment", + "src": "38411:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "38469:5:74", + "nodeType": "YulIdentifier", + "src": "38469:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "38451:17:74", + "nodeType": "YulIdentifier", + "src": "38451:17:74" + }, + "nativeSrc": "38451:24:74", + "nodeType": "YulFunctionCall", + "src": "38451:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "38442:8:74", + "nodeType": "YulIdentifier", + "src": "38442:8:74" + }, + "nativeSrc": "38442:34:74", + "nodeType": "YulFunctionCall", + "src": "38442:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "38424:17:74", + "nodeType": "YulIdentifier", + "src": "38424:17:74" + }, + "nativeSrc": "38424:53:74", + "nodeType": "YulFunctionCall", + "src": "38424:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "38411:9:74", + "nodeType": "YulIdentifier", + "src": "38411:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "38341:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "38381:5:74", + "nodeType": "YulTypedName", + "src": "38381:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "38391:9:74", + "nodeType": "YulTypedName", + "src": "38391:9:74", + "type": "" + } + ], + "src": "38341:142:74" + }, + { + "body": { + "nativeSrc": "38549:66:74", + "nodeType": "YulBlock", + "src": "38549:66:74", + "statements": [ + { + "nativeSrc": "38559:50:74", + "nodeType": "YulAssignment", + "src": "38559:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "38603:5:74", + "nodeType": "YulIdentifier", + "src": "38603:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "38572:30:74", + "nodeType": "YulIdentifier", + "src": "38572:30:74" + }, + "nativeSrc": "38572:37:74", + "nodeType": "YulFunctionCall", + "src": "38572:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "38559:9:74", + "nodeType": "YulIdentifier", + "src": "38559:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "38489:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "38529:5:74", + "nodeType": "YulTypedName", + "src": "38529:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "38539:9:74", + "nodeType": "YulTypedName", + "src": "38539:9:74", + "type": "" + } + ], + "src": "38489:126:74" + }, + { + "body": { + "nativeSrc": "38689:66:74", + "nodeType": "YulBlock", + "src": "38689:66:74", + "statements": [ + { + "nativeSrc": "38699:50:74", + "nodeType": "YulAssignment", + "src": "38699:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "38743:5:74", + "nodeType": "YulIdentifier", + "src": "38743:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "38712:30:74", + "nodeType": "YulIdentifier", + "src": "38712:30:74" + }, + "nativeSrc": "38712:37:74", + "nodeType": "YulFunctionCall", + "src": "38712:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "38699:9:74", + "nodeType": "YulIdentifier", + "src": "38699:9:74" + } + ] + } + ] + }, + "name": "convert_t_address_payable_to_t_address", + "nativeSrc": "38621:134:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "38669:5:74", + "nodeType": "YulTypedName", + "src": "38669:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "38679:9:74", + "nodeType": "YulTypedName", + "src": "38679:9:74", + "type": "" + } + ], + "src": "38621:134:74" + }, + { + "body": { + "nativeSrc": "38834:74:74", + "nodeType": "YulBlock", + "src": "38834:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38851:3:74", + "nodeType": "YulIdentifier", + "src": "38851:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "38895:5:74", + "nodeType": "YulIdentifier", + "src": "38895:5:74" + } + ], + "functionName": { + "name": "convert_t_address_payable_to_t_address", + "nativeSrc": "38856:38:74", + "nodeType": "YulIdentifier", + "src": "38856:38:74" + }, + "nativeSrc": "38856:45:74", + "nodeType": "YulFunctionCall", + "src": "38856:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "38844:6:74", + "nodeType": "YulIdentifier", + "src": "38844:6:74" + }, + "nativeSrc": "38844:58:74", + "nodeType": "YulFunctionCall", + "src": "38844:58:74" + }, + "nativeSrc": "38844:58:74", + "nodeType": "YulExpressionStatement", + "src": "38844:58:74" + } + ] + }, + "name": "abi_encode_t_address_payable_to_t_address_fromStack", + "nativeSrc": "38761:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "38822:5:74", + "nodeType": "YulTypedName", + "src": "38822:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "38829:3:74", + "nodeType": "YulTypedName", + "src": "38829:3:74", + "type": "" + } + ], + "src": "38761:147:74" + }, + { + "body": { + "nativeSrc": "39020:132:74", + "nodeType": "YulBlock", + "src": "39020:132:74", + "statements": [ + { + "nativeSrc": "39030:26:74", + "nodeType": "YulAssignment", + "src": "39030:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39042:9:74", + "nodeType": "YulIdentifier", + "src": "39042:9:74" + }, + { + "kind": "number", + "nativeSrc": "39053:2:74", + "nodeType": "YulLiteral", + "src": "39053:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39038:3:74", + "nodeType": "YulIdentifier", + "src": "39038:3:74" + }, + "nativeSrc": "39038:18:74", + "nodeType": "YulFunctionCall", + "src": "39038:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "39030:4:74", + "nodeType": "YulIdentifier", + "src": "39030:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "39118:6:74", + "nodeType": "YulIdentifier", + "src": "39118:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39131:9:74", + "nodeType": "YulIdentifier", + "src": "39131:9:74" + }, + { + "kind": "number", + "nativeSrc": "39142:1:74", + "nodeType": "YulLiteral", + "src": "39142:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39127:3:74", + "nodeType": "YulIdentifier", + "src": "39127:3:74" + }, + "nativeSrc": "39127:17:74", + "nodeType": "YulFunctionCall", + "src": "39127:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_payable_to_t_address_fromStack", + "nativeSrc": "39066:51:74", + "nodeType": "YulIdentifier", + "src": "39066:51:74" + }, + "nativeSrc": "39066:79:74", + "nodeType": "YulFunctionCall", + "src": "39066:79:74" + }, + "nativeSrc": "39066:79:74", + "nodeType": "YulExpressionStatement", + "src": "39066:79:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_payable__to_t_address__fromStack_reversed", + "nativeSrc": "38914:238:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "38992:9:74", + "nodeType": "YulTypedName", + "src": "38992:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "39004:6:74", + "nodeType": "YulTypedName", + "src": "39004:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "39015:4:74", + "nodeType": "YulTypedName", + "src": "39015:4:74", + "type": "" + } + ], + "src": "38914:238:74" + }, + { + "body": { + "nativeSrc": "39248:1300:74", + "nodeType": "YulBlock", + "src": "39248:1300:74", + "statements": [ + { + "nativeSrc": "39259:50:74", + "nodeType": "YulVariableDeclaration", + "src": "39259:50:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "39305:3:74", + "nodeType": "YulIdentifier", + "src": "39305:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "39273:31:74", + "nodeType": "YulIdentifier", + "src": "39273:31:74" + }, + "nativeSrc": "39273:36:74", + "nodeType": "YulFunctionCall", + "src": "39273:36:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "39263:6:74", + "nodeType": "YulTypedName", + "src": "39263:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "39394:22:74", + "nodeType": "YulBlock", + "src": "39394:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "39396:16:74", + "nodeType": "YulIdentifier", + "src": "39396:16:74" + }, + "nativeSrc": "39396:18:74", + "nodeType": "YulFunctionCall", + "src": "39396:18:74" + }, + "nativeSrc": "39396:18:74", + "nodeType": "YulExpressionStatement", + "src": "39396:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "39366:6:74", + "nodeType": "YulIdentifier", + "src": "39366:6:74" + }, + { + "kind": "number", + "nativeSrc": "39374:18:74", + "nodeType": "YulLiteral", + "src": "39374:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "39363:2:74", + "nodeType": "YulIdentifier", + "src": "39363:2:74" + }, + "nativeSrc": "39363:30:74", + "nodeType": "YulFunctionCall", + "src": "39363:30:74" + }, + "nativeSrc": "39360:56:74", + "nodeType": "YulIf", + "src": "39360:56:74" + }, + { + "nativeSrc": "39426:52:74", + "nodeType": "YulVariableDeclaration", + "src": "39426:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "39472:4:74", + "nodeType": "YulIdentifier", + "src": "39472:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "39466:5:74", + "nodeType": "YulIdentifier", + "src": "39466:5:74" + }, + "nativeSrc": "39466:11:74", + "nodeType": "YulFunctionCall", + "src": "39466:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "39440:25:74", + "nodeType": "YulIdentifier", + "src": "39440:25:74" + }, + "nativeSrc": "39440:38:74", + "nodeType": "YulFunctionCall", + "src": "39440:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "39430:6:74", + "nodeType": "YulTypedName", + "src": "39430:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "39570:4:74", + "nodeType": "YulIdentifier", + "src": "39570:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "39576:6:74", + "nodeType": "YulIdentifier", + "src": "39576:6:74" + }, + { + "name": "newLen", + "nativeSrc": "39584:6:74", + "nodeType": "YulIdentifier", + "src": "39584:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "39525:44:74", + "nodeType": "YulIdentifier", + "src": "39525:44:74" + }, + "nativeSrc": "39525:66:74", + "nodeType": "YulFunctionCall", + "src": "39525:66:74" + }, + "nativeSrc": "39525:66:74", + "nodeType": "YulExpressionStatement", + "src": "39525:66:74" + }, + { + "nativeSrc": "39601:18:74", + "nodeType": "YulVariableDeclaration", + "src": "39601:18:74", + "value": { + "kind": "number", + "nativeSrc": "39618:1:74", + "nodeType": "YulLiteral", + "src": "39618:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "39605:9:74", + "nodeType": "YulTypedName", + "src": "39605:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39629:17:74", + "nodeType": "YulAssignment", + "src": "39629:17:74", + "value": { + "kind": "number", + "nativeSrc": "39642:4:74", + "nodeType": "YulLiteral", + "src": "39642:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "39629:9:74", + "nodeType": "YulIdentifier", + "src": "39629:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "39693:610:74", + "nodeType": "YulBlock", + "src": "39693:610:74", + "statements": [ + { + "nativeSrc": "39707:37:74", + "nodeType": "YulVariableDeclaration", + "src": "39707:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "39726:6:74", + "nodeType": "YulIdentifier", + "src": "39726:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "39738:4:74", + "nodeType": "YulLiteral", + "src": "39738:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "39734:3:74", + "nodeType": "YulIdentifier", + "src": "39734:3:74" + }, + "nativeSrc": "39734:9:74", + "nodeType": "YulFunctionCall", + "src": "39734:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "39722:3:74", + "nodeType": "YulIdentifier", + "src": "39722:3:74" + }, + "nativeSrc": "39722:22:74", + "nodeType": "YulFunctionCall", + "src": "39722:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "39711:7:74", + "nodeType": "YulTypedName", + "src": "39711:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39758:50:74", + "nodeType": "YulVariableDeclaration", + "src": "39758:50:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "39803:4:74", + "nodeType": "YulIdentifier", + "src": "39803:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "39772:30:74", + "nodeType": "YulIdentifier", + "src": "39772:30:74" + }, + "nativeSrc": "39772:36:74", + "nodeType": "YulFunctionCall", + "src": "39772:36:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "39762:6:74", + "nodeType": "YulTypedName", + "src": "39762:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39821:10:74", + "nodeType": "YulVariableDeclaration", + "src": "39821:10:74", + "value": { + "kind": "number", + "nativeSrc": "39830:1:74", + "nodeType": "YulLiteral", + "src": "39830:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "39825:1:74", + "nodeType": "YulTypedName", + "src": "39825:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "39889:163:74", + "nodeType": "YulBlock", + "src": "39889:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "39914:6:74", + "nodeType": "YulIdentifier", + "src": "39914:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "39932:3:74", + "nodeType": "YulIdentifier", + "src": "39932:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "39937:9:74", + "nodeType": "YulIdentifier", + "src": "39937:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39928:3:74", + "nodeType": "YulIdentifier", + "src": "39928:3:74" + }, + "nativeSrc": "39928:19:74", + "nodeType": "YulFunctionCall", + "src": "39928:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "39922:5:74", + "nodeType": "YulIdentifier", + "src": "39922:5:74" + }, + "nativeSrc": "39922:26:74", + "nodeType": "YulFunctionCall", + "src": "39922:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "39907:6:74", + "nodeType": "YulIdentifier", + "src": "39907:6:74" + }, + "nativeSrc": "39907:42:74", + "nodeType": "YulFunctionCall", + "src": "39907:42:74" + }, + "nativeSrc": "39907:42:74", + "nodeType": "YulExpressionStatement", + "src": "39907:42:74" + }, + { + "nativeSrc": "39966:24:74", + "nodeType": "YulAssignment", + "src": "39966:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "39980:6:74", + "nodeType": "YulIdentifier", + "src": "39980:6:74" + }, + { + "kind": "number", + "nativeSrc": "39988:1:74", + "nodeType": "YulLiteral", + "src": "39988:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39976:3:74", + "nodeType": "YulIdentifier", + "src": "39976:3:74" + }, + "nativeSrc": "39976:14:74", + "nodeType": "YulFunctionCall", + "src": "39976:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "39966:6:74", + "nodeType": "YulIdentifier", + "src": "39966:6:74" + } + ] + }, + { + "nativeSrc": "40007:31:74", + "nodeType": "YulAssignment", + "src": "40007:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "40024:9:74", + "nodeType": "YulIdentifier", + "src": "40024:9:74" + }, + { + "kind": "number", + "nativeSrc": "40035:2:74", + "nodeType": "YulLiteral", + "src": "40035:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40020:3:74", + "nodeType": "YulIdentifier", + "src": "40020:3:74" + }, + "nativeSrc": "40020:18:74", + "nodeType": "YulFunctionCall", + "src": "40020:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "40007:9:74", + "nodeType": "YulIdentifier", + "src": "40007:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "39855:1:74", + "nodeType": "YulIdentifier", + "src": "39855:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "39858:7:74", + "nodeType": "YulIdentifier", + "src": "39858:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "39852:2:74", + "nodeType": "YulIdentifier", + "src": "39852:2:74" + }, + "nativeSrc": "39852:14:74", + "nodeType": "YulFunctionCall", + "src": "39852:14:74" + }, + "nativeSrc": "39844:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "39867:21:74", + "nodeType": "YulBlock", + "src": "39867:21:74", + "statements": [ + { + "nativeSrc": "39869:17:74", + "nodeType": "YulAssignment", + "src": "39869:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "39878:1:74", + "nodeType": "YulIdentifier", + "src": "39878:1:74" + }, + { + "kind": "number", + "nativeSrc": "39881:4:74", + "nodeType": "YulLiteral", + "src": "39881:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39874:3:74", + "nodeType": "YulIdentifier", + "src": "39874:3:74" + }, + "nativeSrc": "39874:12:74", + "nodeType": "YulFunctionCall", + "src": "39874:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "39869:1:74", + "nodeType": "YulIdentifier", + "src": "39869:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "39848:3:74", + "nodeType": "YulBlock", + "src": "39848:3:74", + "statements": [] + }, + "src": "39844:208:74" + }, + { + "body": { + "nativeSrc": "40088:156:74", + "nodeType": "YulBlock", + "src": "40088:156:74", + "statements": [ + { + "nativeSrc": "40106:43:74", + "nodeType": "YulVariableDeclaration", + "src": "40106:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "40133:3:74", + "nodeType": "YulIdentifier", + "src": "40133:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "40138:9:74", + "nodeType": "YulIdentifier", + "src": "40138:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40129:3:74", + "nodeType": "YulIdentifier", + "src": "40129:3:74" + }, + "nativeSrc": "40129:19:74", + "nodeType": "YulFunctionCall", + "src": "40129:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "40123:5:74", + "nodeType": "YulIdentifier", + "src": "40123:5:74" + }, + "nativeSrc": "40123:26:74", + "nodeType": "YulFunctionCall", + "src": "40123:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "40110:9:74", + "nodeType": "YulTypedName", + "src": "40110:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "40173:6:74", + "nodeType": "YulIdentifier", + "src": "40173:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "40200:9:74", + "nodeType": "YulIdentifier", + "src": "40200:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "40215:6:74", + "nodeType": "YulIdentifier", + "src": "40215:6:74" + }, + { + "kind": "number", + "nativeSrc": "40223:4:74", + "nodeType": "YulLiteral", + "src": "40223:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "40211:3:74", + "nodeType": "YulIdentifier", + "src": "40211:3:74" + }, + "nativeSrc": "40211:17:74", + "nodeType": "YulFunctionCall", + "src": "40211:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "40181:18:74", + "nodeType": "YulIdentifier", + "src": "40181:18:74" + }, + "nativeSrc": "40181:48:74", + "nodeType": "YulFunctionCall", + "src": "40181:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "40166:6:74", + "nodeType": "YulIdentifier", + "src": "40166:6:74" + }, + "nativeSrc": "40166:64:74", + "nodeType": "YulFunctionCall", + "src": "40166:64:74" + }, + "nativeSrc": "40166:64:74", + "nodeType": "YulExpressionStatement", + "src": "40166:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "40071:7:74", + "nodeType": "YulIdentifier", + "src": "40071:7:74" + }, + { + "name": "newLen", + "nativeSrc": "40080:6:74", + "nodeType": "YulIdentifier", + "src": "40080:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "40068:2:74", + "nodeType": "YulIdentifier", + "src": "40068:2:74" + }, + "nativeSrc": "40068:19:74", + "nodeType": "YulFunctionCall", + "src": "40068:19:74" + }, + "nativeSrc": "40065:179:74", + "nodeType": "YulIf", + "src": "40065:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "40264:4:74", + "nodeType": "YulIdentifier", + "src": "40264:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "40278:6:74", + "nodeType": "YulIdentifier", + "src": "40278:6:74" + }, + { + "kind": "number", + "nativeSrc": "40286:1:74", + "nodeType": "YulLiteral", + "src": "40286:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "40274:3:74", + "nodeType": "YulIdentifier", + "src": "40274:3:74" + }, + "nativeSrc": "40274:14:74", + "nodeType": "YulFunctionCall", + "src": "40274:14:74" + }, + { + "kind": "number", + "nativeSrc": "40290:1:74", + "nodeType": "YulLiteral", + "src": "40290:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40270:3:74", + "nodeType": "YulIdentifier", + "src": "40270:3:74" + }, + "nativeSrc": "40270:22:74", + "nodeType": "YulFunctionCall", + "src": "40270:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "40257:6:74", + "nodeType": "YulIdentifier", + "src": "40257:6:74" + }, + "nativeSrc": "40257:36:74", + "nodeType": "YulFunctionCall", + "src": "40257:36:74" + }, + "nativeSrc": "40257:36:74", + "nodeType": "YulExpressionStatement", + "src": "40257:36:74" + } + ] + }, + "nativeSrc": "39686:617:74", + "nodeType": "YulCase", + "src": "39686:617:74", + "value": { + "kind": "number", + "nativeSrc": "39691:1:74", + "nodeType": "YulLiteral", + "src": "39691:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "40320:222:74", + "nodeType": "YulBlock", + "src": "40320:222:74", + "statements": [ + { + "nativeSrc": "40334:14:74", + "nodeType": "YulVariableDeclaration", + "src": "40334:14:74", + "value": { + "kind": "number", + "nativeSrc": "40347:1:74", + "nodeType": "YulLiteral", + "src": "40347:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "40338:5:74", + "nodeType": "YulTypedName", + "src": "40338:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "40371:67:74", + "nodeType": "YulBlock", + "src": "40371:67:74", + "statements": [ + { + "nativeSrc": "40389:35:74", + "nodeType": "YulAssignment", + "src": "40389:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "40408:3:74", + "nodeType": "YulIdentifier", + "src": "40408:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "40413:9:74", + "nodeType": "YulIdentifier", + "src": "40413:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40404:3:74", + "nodeType": "YulIdentifier", + "src": "40404:3:74" + }, + "nativeSrc": "40404:19:74", + "nodeType": "YulFunctionCall", + "src": "40404:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "40398:5:74", + "nodeType": "YulIdentifier", + "src": "40398:5:74" + }, + "nativeSrc": "40398:26:74", + "nodeType": "YulFunctionCall", + "src": "40398:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "40389:5:74", + "nodeType": "YulIdentifier", + "src": "40389:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "40364:6:74", + "nodeType": "YulIdentifier", + "src": "40364:6:74" + }, + "nativeSrc": "40361:77:74", + "nodeType": "YulIf", + "src": "40361:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "40458:4:74", + "nodeType": "YulIdentifier", + "src": "40458:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "40517:5:74", + "nodeType": "YulIdentifier", + "src": "40517:5:74" + }, + { + "name": "newLen", + "nativeSrc": "40524:6:74", + "nodeType": "YulIdentifier", + "src": "40524:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "40464:52:74", + "nodeType": "YulIdentifier", + "src": "40464:52:74" + }, + "nativeSrc": "40464:67:74", + "nodeType": "YulFunctionCall", + "src": "40464:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "40451:6:74", + "nodeType": "YulIdentifier", + "src": "40451:6:74" + }, + "nativeSrc": "40451:81:74", + "nodeType": "YulFunctionCall", + "src": "40451:81:74" + }, + "nativeSrc": "40451:81:74", + "nodeType": "YulExpressionStatement", + "src": "40451:81:74" + } + ] + }, + "nativeSrc": "40312:230:74", + "nodeType": "YulCase", + "src": "40312:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "39666:6:74", + "nodeType": "YulIdentifier", + "src": "39666:6:74" + }, + { + "kind": "number", + "nativeSrc": "39674:2:74", + "nodeType": "YulLiteral", + "src": "39674:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "39663:2:74", + "nodeType": "YulIdentifier", + "src": "39663:2:74" + }, + "nativeSrc": "39663:14:74", + "nodeType": "YulFunctionCall", + "src": "39663:14:74" + }, + "nativeSrc": "39656:886:74", + "nodeType": "YulSwitch", + "src": "39656:886:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage", + "nativeSrc": "39158:1390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "39237:4:74", + "nodeType": "YulTypedName", + "src": "39237:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "39243:3:74", + "nodeType": "YulTypedName", + "src": "39243:3:74", + "type": "" + } + ], + "src": "39158:1390:74" + }, + { + "body": { + "nativeSrc": "40660:122:74", + "nodeType": "YulBlock", + "src": "40660:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "40682:6:74", + "nodeType": "YulIdentifier", + "src": "40682:6:74" + }, + { + "kind": "number", + "nativeSrc": "40690:1:74", + "nodeType": "YulLiteral", + "src": "40690:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40678:3:74", + "nodeType": "YulIdentifier", + "src": "40678:3:74" + }, + "nativeSrc": "40678:14:74", + "nodeType": "YulFunctionCall", + "src": "40678:14:74" + }, + { + "hexValue": "455243313135353a2073657474696e6720617070726f76616c20737461747573", + "kind": "string", + "nativeSrc": "40694:34:74", + "nodeType": "YulLiteral", + "src": "40694:34:74", + "type": "", + "value": "ERC1155: setting approval status" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40671:6:74", + "nodeType": "YulIdentifier", + "src": "40671:6:74" + }, + "nativeSrc": "40671:58:74", + "nodeType": "YulFunctionCall", + "src": "40671:58:74" + }, + "nativeSrc": "40671:58:74", + "nodeType": "YulExpressionStatement", + "src": "40671:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "40750:6:74", + "nodeType": "YulIdentifier", + "src": "40750:6:74" + }, + { + "kind": "number", + "nativeSrc": "40758:2:74", + "nodeType": "YulLiteral", + "src": "40758:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40746:3:74", + "nodeType": "YulIdentifier", + "src": "40746:3:74" + }, + "nativeSrc": "40746:15:74", + "nodeType": "YulFunctionCall", + "src": "40746:15:74" + }, + { + "hexValue": "20666f722073656c66", + "kind": "string", + "nativeSrc": "40763:11:74", + "nodeType": "YulLiteral", + "src": "40763:11:74", + "type": "", + "value": " for self" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40739:6:74", + "nodeType": "YulIdentifier", + "src": "40739:6:74" + }, + "nativeSrc": "40739:36:74", + "nodeType": "YulFunctionCall", + "src": "40739:36:74" + }, + "nativeSrc": "40739:36:74", + "nodeType": "YulExpressionStatement", + "src": "40739:36:74" + } + ] + }, + "name": "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "nativeSrc": "40554:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "40652:6:74", + "nodeType": "YulTypedName", + "src": "40652:6:74", + "type": "" + } + ], + "src": "40554:228:74" + }, + { + "body": { + "nativeSrc": "40934:220:74", + "nodeType": "YulBlock", + "src": "40934:220:74", + "statements": [ + { + "nativeSrc": "40944:74:74", + "nodeType": "YulAssignment", + "src": "40944:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "41010:3:74", + "nodeType": "YulIdentifier", + "src": "41010:3:74" + }, + { + "kind": "number", + "nativeSrc": "41015:2:74", + "nodeType": "YulLiteral", + "src": "41015:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "40951:58:74", + "nodeType": "YulIdentifier", + "src": "40951:58:74" + }, + "nativeSrc": "40951:67:74", + "nodeType": "YulFunctionCall", + "src": "40951:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "40944:3:74", + "nodeType": "YulIdentifier", + "src": "40944:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "41116:3:74", + "nodeType": "YulIdentifier", + "src": "41116:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "nativeSrc": "41027:88:74", + "nodeType": "YulIdentifier", + "src": "41027:88:74" + }, + "nativeSrc": "41027:93:74", + "nodeType": "YulFunctionCall", + "src": "41027:93:74" + }, + "nativeSrc": "41027:93:74", + "nodeType": "YulExpressionStatement", + "src": "41027:93:74" + }, + { + "nativeSrc": "41129:19:74", + "nodeType": "YulAssignment", + "src": "41129:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "41140:3:74", + "nodeType": "YulIdentifier", + "src": "41140:3:74" + }, + { + "kind": "number", + "nativeSrc": "41145:2:74", + "nodeType": "YulLiteral", + "src": "41145:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41136:3:74", + "nodeType": "YulIdentifier", + "src": "41136:3:74" + }, + "nativeSrc": "41136:12:74", + "nodeType": "YulFunctionCall", + "src": "41136:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "41129:3:74", + "nodeType": "YulIdentifier", + "src": "41129:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "40788:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "40922:3:74", + "nodeType": "YulTypedName", + "src": "40922:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "40930:3:74", + "nodeType": "YulTypedName", + "src": "40930:3:74", + "type": "" + } + ], + "src": "40788:366:74" + }, + { + "body": { + "nativeSrc": "41331:248:74", + "nodeType": "YulBlock", + "src": "41331:248:74", + "statements": [ + { + "nativeSrc": "41341:26:74", + "nodeType": "YulAssignment", + "src": "41341:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41353:9:74", + "nodeType": "YulIdentifier", + "src": "41353:9:74" + }, + { + "kind": "number", + "nativeSrc": "41364:2:74", + "nodeType": "YulLiteral", + "src": "41364:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41349:3:74", + "nodeType": "YulIdentifier", + "src": "41349:3:74" + }, + "nativeSrc": "41349:18:74", + "nodeType": "YulFunctionCall", + "src": "41349:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41341:4:74", + "nodeType": "YulIdentifier", + "src": "41341:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41388:9:74", + "nodeType": "YulIdentifier", + "src": "41388:9:74" + }, + { + "kind": "number", + "nativeSrc": "41399:1:74", + "nodeType": "YulLiteral", + "src": "41399:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41384:3:74", + "nodeType": "YulIdentifier", + "src": "41384:3:74" + }, + "nativeSrc": "41384:17:74", + "nodeType": "YulFunctionCall", + "src": "41384:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "41407:4:74", + "nodeType": "YulIdentifier", + "src": "41407:4:74" + }, + { + "name": "headStart", + "nativeSrc": "41413:9:74", + "nodeType": "YulIdentifier", + "src": "41413:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "41403:3:74", + "nodeType": "YulIdentifier", + "src": "41403:3:74" + }, + "nativeSrc": "41403:20:74", + "nodeType": "YulFunctionCall", + "src": "41403:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "41377:6:74", + "nodeType": "YulIdentifier", + "src": "41377:6:74" + }, + "nativeSrc": "41377:47:74", + "nodeType": "YulFunctionCall", + "src": "41377:47:74" + }, + "nativeSrc": "41377:47:74", + "nodeType": "YulExpressionStatement", + "src": "41377:47:74" + }, + { + "nativeSrc": "41433:139:74", + "nodeType": "YulAssignment", + "src": "41433:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "41567:4:74", + "nodeType": "YulIdentifier", + "src": "41567:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "41441:124:74", + "nodeType": "YulIdentifier", + "src": "41441:124:74" + }, + "nativeSrc": "41441:131:74", + "nodeType": "YulFunctionCall", + "src": "41441:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41433:4:74", + "nodeType": "YulIdentifier", + "src": "41433:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "41160:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "41311:9:74", + "nodeType": "YulTypedName", + "src": "41311:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "41326:4:74", + "nodeType": "YulTypedName", + "src": "41326:4:74", + "type": "" + } + ], + "src": "41160:419:74" + }, + { + "body": { + "nativeSrc": "41691:76:74", + "nodeType": "YulBlock", + "src": "41691:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "41713:6:74", + "nodeType": "YulIdentifier", + "src": "41713:6:74" + }, + { + "kind": "number", + "nativeSrc": "41721:1:74", + "nodeType": "YulLiteral", + "src": "41721:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41709:3:74", + "nodeType": "YulIdentifier", + "src": "41709:3:74" + }, + "nativeSrc": "41709:14:74", + "nodeType": "YulFunctionCall", + "src": "41709:14:74" + }, + { + "hexValue": "53657474696e672064656c65676174652073746174757320666f722073656c66", + "kind": "string", + "nativeSrc": "41725:34:74", + "nodeType": "YulLiteral", + "src": "41725:34:74", + "type": "", + "value": "Setting delegate status for self" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "41702:6:74", + "nodeType": "YulIdentifier", + "src": "41702:6:74" + }, + "nativeSrc": "41702:58:74", + "nodeType": "YulFunctionCall", + "src": "41702:58:74" + }, + "nativeSrc": "41702:58:74", + "nodeType": "YulExpressionStatement", + "src": "41702:58:74" + } + ] + }, + "name": "store_literal_in_memory_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a", + "nativeSrc": "41585:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "41683:6:74", + "nodeType": "YulTypedName", + "src": "41683:6:74", + "type": "" + } + ], + "src": "41585:182:74" + }, + { + "body": { + "nativeSrc": "41919:220:74", + "nodeType": "YulBlock", + "src": "41919:220:74", + "statements": [ + { + "nativeSrc": "41929:74:74", + "nodeType": "YulAssignment", + "src": "41929:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "41995:3:74", + "nodeType": "YulIdentifier", + "src": "41995:3:74" + }, + { + "kind": "number", + "nativeSrc": "42000:2:74", + "nodeType": "YulLiteral", + "src": "42000:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "41936:58:74", + "nodeType": "YulIdentifier", + "src": "41936:58:74" + }, + "nativeSrc": "41936:67:74", + "nodeType": "YulFunctionCall", + "src": "41936:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "41929:3:74", + "nodeType": "YulIdentifier", + "src": "41929:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "42101:3:74", + "nodeType": "YulIdentifier", + "src": "42101:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a", + "nativeSrc": "42012:88:74", + "nodeType": "YulIdentifier", + "src": "42012:88:74" + }, + "nativeSrc": "42012:93:74", + "nodeType": "YulFunctionCall", + "src": "42012:93:74" + }, + "nativeSrc": "42012:93:74", + "nodeType": "YulExpressionStatement", + "src": "42012:93:74" + }, + { + "nativeSrc": "42114:19:74", + "nodeType": "YulAssignment", + "src": "42114:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "42125:3:74", + "nodeType": "YulIdentifier", + "src": "42125:3:74" + }, + { + "kind": "number", + "nativeSrc": "42130:2:74", + "nodeType": "YulLiteral", + "src": "42130:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42121:3:74", + "nodeType": "YulIdentifier", + "src": "42121:3:74" + }, + "nativeSrc": "42121:12:74", + "nodeType": "YulFunctionCall", + "src": "42121:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "42114:3:74", + "nodeType": "YulIdentifier", + "src": "42114:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "41773:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "41907:3:74", + "nodeType": "YulTypedName", + "src": "41907:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "41915:3:74", + "nodeType": "YulTypedName", + "src": "41915:3:74", + "type": "" + } + ], + "src": "41773:366:74" + }, + { + "body": { + "nativeSrc": "42316:248:74", + "nodeType": "YulBlock", + "src": "42316:248:74", + "statements": [ + { + "nativeSrc": "42326:26:74", + "nodeType": "YulAssignment", + "src": "42326:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42338:9:74", + "nodeType": "YulIdentifier", + "src": "42338:9:74" + }, + { + "kind": "number", + "nativeSrc": "42349:2:74", + "nodeType": "YulLiteral", + "src": "42349:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42334:3:74", + "nodeType": "YulIdentifier", + "src": "42334:3:74" + }, + "nativeSrc": "42334:18:74", + "nodeType": "YulFunctionCall", + "src": "42334:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42326:4:74", + "nodeType": "YulIdentifier", + "src": "42326:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42373:9:74", + "nodeType": "YulIdentifier", + "src": "42373:9:74" + }, + { + "kind": "number", + "nativeSrc": "42384:1:74", + "nodeType": "YulLiteral", + "src": "42384:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42369:3:74", + "nodeType": "YulIdentifier", + "src": "42369:3:74" + }, + "nativeSrc": "42369:17:74", + "nodeType": "YulFunctionCall", + "src": "42369:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42392:4:74", + "nodeType": "YulIdentifier", + "src": "42392:4:74" + }, + { + "name": "headStart", + "nativeSrc": "42398:9:74", + "nodeType": "YulIdentifier", + "src": "42398:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "42388:3:74", + "nodeType": "YulIdentifier", + "src": "42388:3:74" + }, + "nativeSrc": "42388:20:74", + "nodeType": "YulFunctionCall", + "src": "42388:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42362:6:74", + "nodeType": "YulIdentifier", + "src": "42362:6:74" + }, + "nativeSrc": "42362:47:74", + "nodeType": "YulFunctionCall", + "src": "42362:47:74" + }, + "nativeSrc": "42362:47:74", + "nodeType": "YulExpressionStatement", + "src": "42362:47:74" + }, + { + "nativeSrc": "42418:139:74", + "nodeType": "YulAssignment", + "src": "42418:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42552:4:74", + "nodeType": "YulIdentifier", + "src": "42552:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "42426:124:74", + "nodeType": "YulIdentifier", + "src": "42426:124:74" + }, + "nativeSrc": "42426:131:74", + "nodeType": "YulFunctionCall", + "src": "42426:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42418:4:74", + "nodeType": "YulIdentifier", + "src": "42418:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "42145:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "42296:9:74", + "nodeType": "YulTypedName", + "src": "42296:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "42311:4:74", + "nodeType": "YulTypedName", + "src": "42311:4:74", + "type": "" + } + ], + "src": "42145:419:74" + }, + { + "body": { + "nativeSrc": "42742:354:74", + "nodeType": "YulBlock", + "src": "42742:354:74", + "statements": [ + { + "nativeSrc": "42752:26:74", + "nodeType": "YulAssignment", + "src": "42752:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42764:9:74", + "nodeType": "YulIdentifier", + "src": "42764:9:74" + }, + { + "kind": "number", + "nativeSrc": "42775:2:74", + "nodeType": "YulLiteral", + "src": "42775:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42760:3:74", + "nodeType": "YulIdentifier", + "src": "42760:3:74" + }, + "nativeSrc": "42760:18:74", + "nodeType": "YulFunctionCall", + "src": "42760:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42752:4:74", + "nodeType": "YulIdentifier", + "src": "42752:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42799:9:74", + "nodeType": "YulIdentifier", + "src": "42799:9:74" + }, + { + "kind": "number", + "nativeSrc": "42810:1:74", + "nodeType": "YulLiteral", + "src": "42810:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42795:3:74", + "nodeType": "YulIdentifier", + "src": "42795:3:74" + }, + "nativeSrc": "42795:17:74", + "nodeType": "YulFunctionCall", + "src": "42795:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42818:4:74", + "nodeType": "YulIdentifier", + "src": "42818:4:74" + }, + { + "name": "headStart", + "nativeSrc": "42824:9:74", + "nodeType": "YulIdentifier", + "src": "42824:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "42814:3:74", + "nodeType": "YulIdentifier", + "src": "42814:3:74" + }, + "nativeSrc": "42814:20:74", + "nodeType": "YulFunctionCall", + "src": "42814:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42788:6:74", + "nodeType": "YulIdentifier", + "src": "42788:6:74" + }, + "nativeSrc": "42788:47:74", + "nodeType": "YulFunctionCall", + "src": "42788:47:74" + }, + "nativeSrc": "42788:47:74", + "nodeType": "YulExpressionStatement", + "src": "42788:47:74" + }, + { + "nativeSrc": "42844:84:74", + "nodeType": "YulAssignment", + "src": "42844:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "42914:6:74", + "nodeType": "YulIdentifier", + "src": "42914:6:74" + }, + { + "name": "tail", + "nativeSrc": "42923:4:74", + "nodeType": "YulIdentifier", + "src": "42923:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "42852:61:74", + "nodeType": "YulIdentifier", + "src": "42852:61:74" + }, + "nativeSrc": "42852:76:74", + "nodeType": "YulFunctionCall", + "src": "42852:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42844:4:74", + "nodeType": "YulIdentifier", + "src": "42844:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42949:9:74", + "nodeType": "YulIdentifier", + "src": "42949:9:74" + }, + { + "kind": "number", + "nativeSrc": "42960:2:74", + "nodeType": "YulLiteral", + "src": "42960:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42945:3:74", + "nodeType": "YulIdentifier", + "src": "42945:3:74" + }, + "nativeSrc": "42945:18:74", + "nodeType": "YulFunctionCall", + "src": "42945:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "42969:4:74", + "nodeType": "YulIdentifier", + "src": "42969:4:74" + }, + { + "name": "headStart", + "nativeSrc": "42975:9:74", + "nodeType": "YulIdentifier", + "src": "42975:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "42965:3:74", + "nodeType": "YulIdentifier", + "src": "42965:3:74" + }, + "nativeSrc": "42965:20:74", + "nodeType": "YulFunctionCall", + "src": "42965:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42938:6:74", + "nodeType": "YulIdentifier", + "src": "42938:6:74" + }, + "nativeSrc": "42938:48:74", + "nodeType": "YulFunctionCall", + "src": "42938:48:74" + }, + "nativeSrc": "42938:48:74", + "nodeType": "YulExpressionStatement", + "src": "42938:48:74" + }, + { + "nativeSrc": "42995:94:74", + "nodeType": "YulAssignment", + "src": "42995:94:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "43067:6:74", + "nodeType": "YulIdentifier", + "src": "43067:6:74" + }, + { + "name": "value2", + "nativeSrc": "43075:6:74", + "nodeType": "YulIdentifier", + "src": "43075:6:74" + }, + { + "name": "tail", + "nativeSrc": "43084:4:74", + "nodeType": "YulIdentifier", + "src": "43084:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "43003:63:74", + "nodeType": "YulIdentifier", + "src": "43003:63:74" + }, + "nativeSrc": "43003:86:74", + "nodeType": "YulFunctionCall", + "src": "43003:86:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "42995:4:74", + "nodeType": "YulIdentifier", + "src": "42995:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "42570:526:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "42698:9:74", + "nodeType": "YulTypedName", + "src": "42698:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "42710:6:74", + "nodeType": "YulTypedName", + "src": "42710:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "42718:6:74", + "nodeType": "YulTypedName", + "src": "42718:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "42726:6:74", + "nodeType": "YulTypedName", + "src": "42726:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "42737:4:74", + "nodeType": "YulTypedName", + "src": "42737:4:74", + "type": "" + } + ], + "src": "42570:526:74" + }, + { + "body": { + "nativeSrc": "43200:124:74", + "nodeType": "YulBlock", + "src": "43200:124:74", + "statements": [ + { + "nativeSrc": "43210:26:74", + "nodeType": "YulAssignment", + "src": "43210:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43222:9:74", + "nodeType": "YulIdentifier", + "src": "43222:9:74" + }, + { + "kind": "number", + "nativeSrc": "43233:2:74", + "nodeType": "YulLiteral", + "src": "43233:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43218:3:74", + "nodeType": "YulIdentifier", + "src": "43218:3:74" + }, + "nativeSrc": "43218:18:74", + "nodeType": "YulFunctionCall", + "src": "43218:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "43210:4:74", + "nodeType": "YulIdentifier", + "src": "43210:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "43290:6:74", + "nodeType": "YulIdentifier", + "src": "43290:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43303:9:74", + "nodeType": "YulIdentifier", + "src": "43303:9:74" + }, + { + "kind": "number", + "nativeSrc": "43314:1:74", + "nodeType": "YulLiteral", + "src": "43314:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43299:3:74", + "nodeType": "YulIdentifier", + "src": "43299:3:74" + }, + "nativeSrc": "43299:17:74", + "nodeType": "YulFunctionCall", + "src": "43299:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "43246:43:74", + "nodeType": "YulIdentifier", + "src": "43246:43:74" + }, + "nativeSrc": "43246:71:74", + "nodeType": "YulFunctionCall", + "src": "43246:71:74" + }, + "nativeSrc": "43246:71:74", + "nodeType": "YulExpressionStatement", + "src": "43246:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "43102:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "43172:9:74", + "nodeType": "YulTypedName", + "src": "43172:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "43184:6:74", + "nodeType": "YulTypedName", + "src": "43184:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "43195:4:74", + "nodeType": "YulTypedName", + "src": "43195:4:74", + "type": "" + } + ], + "src": "43102:222:74" + }, + { + "body": { + "nativeSrc": "43393:80:74", + "nodeType": "YulBlock", + "src": "43393:80:74", + "statements": [ + { + "nativeSrc": "43403:22:74", + "nodeType": "YulAssignment", + "src": "43403:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "43418:6:74", + "nodeType": "YulIdentifier", + "src": "43418:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "43412:5:74", + "nodeType": "YulIdentifier", + "src": "43412:5:74" + }, + "nativeSrc": "43412:13:74", + "nodeType": "YulFunctionCall", + "src": "43412:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "43403:5:74", + "nodeType": "YulIdentifier", + "src": "43403:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "43461:5:74", + "nodeType": "YulIdentifier", + "src": "43461:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "43434:26:74", + "nodeType": "YulIdentifier", + "src": "43434:26:74" + }, + "nativeSrc": "43434:33:74", + "nodeType": "YulFunctionCall", + "src": "43434:33:74" + }, + "nativeSrc": "43434:33:74", + "nodeType": "YulExpressionStatement", + "src": "43434:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "43330:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "43371:6:74", + "nodeType": "YulTypedName", + "src": "43371:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "43379:3:74", + "nodeType": "YulTypedName", + "src": "43379:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "43387:5:74", + "nodeType": "YulTypedName", + "src": "43387:5:74", + "type": "" + } + ], + "src": "43330:143:74" + }, + { + "body": { + "nativeSrc": "43556:274:74", + "nodeType": "YulBlock", + "src": "43556:274:74", + "statements": [ + { + "body": { + "nativeSrc": "43602:83:74", + "nodeType": "YulBlock", + "src": "43602:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "43604:77:74", + "nodeType": "YulIdentifier", + "src": "43604:77:74" + }, + "nativeSrc": "43604:79:74", + "nodeType": "YulFunctionCall", + "src": "43604:79:74" + }, + "nativeSrc": "43604:79:74", + "nodeType": "YulExpressionStatement", + "src": "43604:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "43577:7:74", + "nodeType": "YulIdentifier", + "src": "43577:7:74" + }, + { + "name": "headStart", + "nativeSrc": "43586:9:74", + "nodeType": "YulIdentifier", + "src": "43586:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "43573:3:74", + "nodeType": "YulIdentifier", + "src": "43573:3:74" + }, + "nativeSrc": "43573:23:74", + "nodeType": "YulFunctionCall", + "src": "43573:23:74" + }, + { + "kind": "number", + "nativeSrc": "43598:2:74", + "nodeType": "YulLiteral", + "src": "43598:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "43569:3:74", + "nodeType": "YulIdentifier", + "src": "43569:3:74" + }, + "nativeSrc": "43569:32:74", + "nodeType": "YulFunctionCall", + "src": "43569:32:74" + }, + "nativeSrc": "43566:119:74", + "nodeType": "YulIf", + "src": "43566:119:74" + }, + { + "nativeSrc": "43695:128:74", + "nodeType": "YulBlock", + "src": "43695:128:74", + "statements": [ + { + "nativeSrc": "43710:15:74", + "nodeType": "YulVariableDeclaration", + "src": "43710:15:74", + "value": { + "kind": "number", + "nativeSrc": "43724:1:74", + "nodeType": "YulLiteral", + "src": "43724:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "43714:6:74", + "nodeType": "YulTypedName", + "src": "43714:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "43739:74:74", + "nodeType": "YulAssignment", + "src": "43739:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43785:9:74", + "nodeType": "YulIdentifier", + "src": "43785:9:74" + }, + { + "name": "offset", + "nativeSrc": "43796:6:74", + "nodeType": "YulIdentifier", + "src": "43796:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43781:3:74", + "nodeType": "YulIdentifier", + "src": "43781:3:74" + }, + "nativeSrc": "43781:22:74", + "nodeType": "YulFunctionCall", + "src": "43781:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "43805:7:74", + "nodeType": "YulIdentifier", + "src": "43805:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "43749:31:74", + "nodeType": "YulIdentifier", + "src": "43749:31:74" + }, + "nativeSrc": "43749:64:74", + "nodeType": "YulFunctionCall", + "src": "43749:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "43739:6:74", + "nodeType": "YulIdentifier", + "src": "43739:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "43479:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "43526:9:74", + "nodeType": "YulTypedName", + "src": "43526:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "43537:7:74", + "nodeType": "YulTypedName", + "src": "43537:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "43549:6:74", + "nodeType": "YulTypedName", + "src": "43549:6:74", + "type": "" + } + ], + "src": "43479:351:74" + }, + { + "body": { + "nativeSrc": "43934:124:74", + "nodeType": "YulBlock", + "src": "43934:124:74", + "statements": [ + { + "nativeSrc": "43944:26:74", + "nodeType": "YulAssignment", + "src": "43944:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43956:9:74", + "nodeType": "YulIdentifier", + "src": "43956:9:74" + }, + { + "kind": "number", + "nativeSrc": "43967:2:74", + "nodeType": "YulLiteral", + "src": "43967:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43952:3:74", + "nodeType": "YulIdentifier", + "src": "43952:3:74" + }, + "nativeSrc": "43952:18:74", + "nodeType": "YulFunctionCall", + "src": "43952:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "43944:4:74", + "nodeType": "YulIdentifier", + "src": "43944:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "44024:6:74", + "nodeType": "YulIdentifier", + "src": "44024:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44037:9:74", + "nodeType": "YulIdentifier", + "src": "44037:9:74" + }, + { + "kind": "number", + "nativeSrc": "44048:1:74", + "nodeType": "YulLiteral", + "src": "44048:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44033:3:74", + "nodeType": "YulIdentifier", + "src": "44033:3:74" + }, + "nativeSrc": "44033:17:74", + "nodeType": "YulFunctionCall", + "src": "44033:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "43980:43:74", + "nodeType": "YulIdentifier", + "src": "43980:43:74" + }, + "nativeSrc": "43980:71:74", + "nodeType": "YulFunctionCall", + "src": "43980:71:74" + }, + "nativeSrc": "43980:71:74", + "nodeType": "YulExpressionStatement", + "src": "43980:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "43836:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "43906:9:74", + "nodeType": "YulTypedName", + "src": "43906:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "43918:6:74", + "nodeType": "YulTypedName", + "src": "43918:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "43929:4:74", + "nodeType": "YulTypedName", + "src": "43929:4:74", + "type": "" + } + ], + "src": "43836:222:74" + }, + { + "body": { + "nativeSrc": "44106:127:74", + "nodeType": "YulBlock", + "src": "44106:127:74", + "statements": [ + { + "nativeSrc": "44116:32:74", + "nodeType": "YulAssignment", + "src": "44116:32:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44142:5:74", + "nodeType": "YulIdentifier", + "src": "44142:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint16", + "nativeSrc": "44125:16:74", + "nodeType": "YulIdentifier", + "src": "44125:16:74" + }, + "nativeSrc": "44125:23:74", + "nodeType": "YulFunctionCall", + "src": "44125:23:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "44116:5:74", + "nodeType": "YulIdentifier", + "src": "44116:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "44176:22:74", + "nodeType": "YulBlock", + "src": "44176:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "44178:16:74", + "nodeType": "YulIdentifier", + "src": "44178:16:74" + }, + "nativeSrc": "44178:18:74", + "nodeType": "YulFunctionCall", + "src": "44178:18:74" + }, + "nativeSrc": "44178:18:74", + "nodeType": "YulExpressionStatement", + "src": "44178:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44163:5:74", + "nodeType": "YulIdentifier", + "src": "44163:5:74" + }, + { + "kind": "number", + "nativeSrc": "44170:4:74", + "nodeType": "YulLiteral", + "src": "44170:4:74", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "44160:2:74", + "nodeType": "YulIdentifier", + "src": "44160:2:74" + }, + "nativeSrc": "44160:15:74", + "nodeType": "YulFunctionCall", + "src": "44160:15:74" + }, + "nativeSrc": "44157:41:74", + "nodeType": "YulIf", + "src": "44157:41:74" + }, + { + "nativeSrc": "44207:20:74", + "nodeType": "YulAssignment", + "src": "44207:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44218:5:74", + "nodeType": "YulIdentifier", + "src": "44218:5:74" + }, + { + "kind": "number", + "nativeSrc": "44225:1:74", + "nodeType": "YulLiteral", + "src": "44225:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "44214:3:74", + "nodeType": "YulIdentifier", + "src": "44214:3:74" + }, + "nativeSrc": "44214:13:74", + "nodeType": "YulFunctionCall", + "src": "44214:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "44207:3:74", + "nodeType": "YulIdentifier", + "src": "44207:3:74" + } + ] + } + ] + }, + "name": "decrement_t_uint16", + "nativeSrc": "44064:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "44092:5:74", + "nodeType": "YulTypedName", + "src": "44092:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "44102:3:74", + "nodeType": "YulTypedName", + "src": "44102:3:74", + "type": "" + } + ], + "src": "44064:169:74" + }, + { + "body": { + "nativeSrc": "44302:52:74", + "nodeType": "YulBlock", + "src": "44302:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "44319:3:74", + "nodeType": "YulIdentifier", + "src": "44319:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "44341:5:74", + "nodeType": "YulIdentifier", + "src": "44341:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint16", + "nativeSrc": "44324:16:74", + "nodeType": "YulIdentifier", + "src": "44324:16:74" + }, + "nativeSrc": "44324:23:74", + "nodeType": "YulFunctionCall", + "src": "44324:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "44312:6:74", + "nodeType": "YulIdentifier", + "src": "44312:6:74" + }, + "nativeSrc": "44312:36:74", + "nodeType": "YulFunctionCall", + "src": "44312:36:74" + }, + "nativeSrc": "44312:36:74", + "nodeType": "YulExpressionStatement", + "src": "44312:36:74" + } + ] + }, + "name": "abi_encode_t_uint16_to_t_uint16_fromStack", + "nativeSrc": "44239:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "44290:5:74", + "nodeType": "YulTypedName", + "src": "44290:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "44297:3:74", + "nodeType": "YulTypedName", + "src": "44297:3:74", + "type": "" + } + ], + "src": "44239:115:74" + }, + { + "body": { + "nativeSrc": "44502:273:74", + "nodeType": "YulBlock", + "src": "44502:273:74", + "statements": [ + { + "nativeSrc": "44512:26:74", + "nodeType": "YulAssignment", + "src": "44512:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44524:9:74", + "nodeType": "YulIdentifier", + "src": "44524:9:74" + }, + { + "kind": "number", + "nativeSrc": "44535:2:74", + "nodeType": "YulLiteral", + "src": "44535:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44520:3:74", + "nodeType": "YulIdentifier", + "src": "44520:3:74" + }, + "nativeSrc": "44520:18:74", + "nodeType": "YulFunctionCall", + "src": "44520:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "44512:4:74", + "nodeType": "YulIdentifier", + "src": "44512:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44559:9:74", + "nodeType": "YulIdentifier", + "src": "44559:9:74" + }, + { + "kind": "number", + "nativeSrc": "44570:1:74", + "nodeType": "YulLiteral", + "src": "44570:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44555:3:74", + "nodeType": "YulIdentifier", + "src": "44555:3:74" + }, + "nativeSrc": "44555:17:74", + "nodeType": "YulFunctionCall", + "src": "44555:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "44578:4:74", + "nodeType": "YulIdentifier", + "src": "44578:4:74" + }, + { + "name": "headStart", + "nativeSrc": "44584:9:74", + "nodeType": "YulIdentifier", + "src": "44584:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "44574:3:74", + "nodeType": "YulIdentifier", + "src": "44574:3:74" + }, + "nativeSrc": "44574:20:74", + "nodeType": "YulFunctionCall", + "src": "44574:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "44548:6:74", + "nodeType": "YulIdentifier", + "src": "44548:6:74" + }, + "nativeSrc": "44548:47:74", + "nodeType": "YulFunctionCall", + "src": "44548:47:74" + }, + "nativeSrc": "44548:47:74", + "nodeType": "YulExpressionStatement", + "src": "44548:47:74" + }, + { + "nativeSrc": "44604:84:74", + "nodeType": "YulAssignment", + "src": "44604:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "44674:6:74", + "nodeType": "YulIdentifier", + "src": "44674:6:74" + }, + { + "name": "tail", + "nativeSrc": "44683:4:74", + "nodeType": "YulIdentifier", + "src": "44683:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "44612:61:74", + "nodeType": "YulIdentifier", + "src": "44612:61:74" + }, + "nativeSrc": "44612:76:74", + "nodeType": "YulFunctionCall", + "src": "44612:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "44604:4:74", + "nodeType": "YulIdentifier", + "src": "44604:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "44740:6:74", + "nodeType": "YulIdentifier", + "src": "44740:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44753:9:74", + "nodeType": "YulIdentifier", + "src": "44753:9:74" + }, + { + "kind": "number", + "nativeSrc": "44764:2:74", + "nodeType": "YulLiteral", + "src": "44764:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44749:3:74", + "nodeType": "YulIdentifier", + "src": "44749:3:74" + }, + "nativeSrc": "44749:18:74", + "nodeType": "YulFunctionCall", + "src": "44749:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint16_to_t_uint16_fromStack", + "nativeSrc": "44698:41:74", + "nodeType": "YulIdentifier", + "src": "44698:41:74" + }, + "nativeSrc": "44698:70:74", + "nodeType": "YulFunctionCall", + "src": "44698:70:74" + }, + "nativeSrc": "44698:70:74", + "nodeType": "YulExpressionStatement", + "src": "44698:70:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint16__to_t_bytes_memory_ptr_t_uint16__fromStack_reversed", + "nativeSrc": "44360:415:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "44466:9:74", + "nodeType": "YulTypedName", + "src": "44466:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "44478:6:74", + "nodeType": "YulTypedName", + "src": "44478:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "44486:6:74", + "nodeType": "YulTypedName", + "src": "44486:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "44497:4:74", + "nodeType": "YulTypedName", + "src": "44497:4:74", + "type": "" + } + ], + "src": "44360:415:74" + }, + { + "body": { + "nativeSrc": "44823:129:74", + "nodeType": "YulBlock", + "src": "44823:129:74", + "statements": [ + { + "nativeSrc": "44833:32:74", + "nodeType": "YulAssignment", + "src": "44833:32:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44859:5:74", + "nodeType": "YulIdentifier", + "src": "44859:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint16", + "nativeSrc": "44842:16:74", + "nodeType": "YulIdentifier", + "src": "44842:16:74" + }, + "nativeSrc": "44842:23:74", + "nodeType": "YulFunctionCall", + "src": "44842:23:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "44833:5:74", + "nodeType": "YulIdentifier", + "src": "44833:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "44895:22:74", + "nodeType": "YulBlock", + "src": "44895:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "44897:16:74", + "nodeType": "YulIdentifier", + "src": "44897:16:74" + }, + "nativeSrc": "44897:18:74", + "nodeType": "YulFunctionCall", + "src": "44897:18:74" + }, + "nativeSrc": "44897:18:74", + "nodeType": "YulExpressionStatement", + "src": "44897:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44880:5:74", + "nodeType": "YulIdentifier", + "src": "44880:5:74" + }, + { + "kind": "number", + "nativeSrc": "44887:6:74", + "nodeType": "YulLiteral", + "src": "44887:6:74", + "type": "", + "value": "0xffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "44877:2:74", + "nodeType": "YulIdentifier", + "src": "44877:2:74" + }, + "nativeSrc": "44877:17:74", + "nodeType": "YulFunctionCall", + "src": "44877:17:74" + }, + "nativeSrc": "44874:43:74", + "nodeType": "YulIf", + "src": "44874:43:74" + }, + { + "nativeSrc": "44926:20:74", + "nodeType": "YulAssignment", + "src": "44926:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "44937:5:74", + "nodeType": "YulIdentifier", + "src": "44937:5:74" + }, + { + "kind": "number", + "nativeSrc": "44944:1:74", + "nodeType": "YulLiteral", + "src": "44944:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44933:3:74", + "nodeType": "YulIdentifier", + "src": "44933:3:74" + }, + "nativeSrc": "44933:13:74", + "nodeType": "YulFunctionCall", + "src": "44933:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "44926:3:74", + "nodeType": "YulIdentifier", + "src": "44926:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint16", + "nativeSrc": "44781:171:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "44809:5:74", + "nodeType": "YulTypedName", + "src": "44809:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "44819:3:74", + "nodeType": "YulTypedName", + "src": "44819:3:74", + "type": "" + } + ], + "src": "44781:171:74" + }, + { + "body": { + "nativeSrc": "45146:424:74", + "nodeType": "YulBlock", + "src": "45146:424:74", + "statements": [ + { + "nativeSrc": "45156:26:74", + "nodeType": "YulAssignment", + "src": "45156:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45168:9:74", + "nodeType": "YulIdentifier", + "src": "45168:9:74" + }, + { + "kind": "number", + "nativeSrc": "45179:2:74", + "nodeType": "YulLiteral", + "src": "45179:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45164:3:74", + "nodeType": "YulIdentifier", + "src": "45164:3:74" + }, + "nativeSrc": "45164:18:74", + "nodeType": "YulFunctionCall", + "src": "45164:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45156:4:74", + "nodeType": "YulIdentifier", + "src": "45156:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45203:9:74", + "nodeType": "YulIdentifier", + "src": "45203:9:74" + }, + { + "kind": "number", + "nativeSrc": "45214:1:74", + "nodeType": "YulLiteral", + "src": "45214:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45199:3:74", + "nodeType": "YulIdentifier", + "src": "45199:3:74" + }, + "nativeSrc": "45199:17:74", + "nodeType": "YulFunctionCall", + "src": "45199:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "45222:4:74", + "nodeType": "YulIdentifier", + "src": "45222:4:74" + }, + { + "name": "headStart", + "nativeSrc": "45228:9:74", + "nodeType": "YulIdentifier", + "src": "45228:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "45218:3:74", + "nodeType": "YulIdentifier", + "src": "45218:3:74" + }, + "nativeSrc": "45218:20:74", + "nodeType": "YulFunctionCall", + "src": "45218:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45192:6:74", + "nodeType": "YulIdentifier", + "src": "45192:6:74" + }, + "nativeSrc": "45192:47:74", + "nodeType": "YulFunctionCall", + "src": "45192:47:74" + }, + "nativeSrc": "45192:47:74", + "nodeType": "YulExpressionStatement", + "src": "45192:47:74" + }, + { + "nativeSrc": "45248:84:74", + "nodeType": "YulAssignment", + "src": "45248:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "45318:6:74", + "nodeType": "YulIdentifier", + "src": "45318:6:74" + }, + { + "name": "tail", + "nativeSrc": "45327:4:74", + "nodeType": "YulIdentifier", + "src": "45327:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "45256:61:74", + "nodeType": "YulIdentifier", + "src": "45256:61:74" + }, + "nativeSrc": "45256:76:74", + "nodeType": "YulFunctionCall", + "src": "45256:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45248:4:74", + "nodeType": "YulIdentifier", + "src": "45248:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "45384:6:74", + "nodeType": "YulIdentifier", + "src": "45384:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45397:9:74", + "nodeType": "YulIdentifier", + "src": "45397:9:74" + }, + { + "kind": "number", + "nativeSrc": "45408:2:74", + "nodeType": "YulLiteral", + "src": "45408:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45393:3:74", + "nodeType": "YulIdentifier", + "src": "45393:3:74" + }, + "nativeSrc": "45393:18:74", + "nodeType": "YulFunctionCall", + "src": "45393:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint16_to_t_uint16_fromStack", + "nativeSrc": "45342:41:74", + "nodeType": "YulIdentifier", + "src": "45342:41:74" + }, + "nativeSrc": "45342:70:74", + "nodeType": "YulFunctionCall", + "src": "45342:70:74" + }, + "nativeSrc": "45342:70:74", + "nodeType": "YulExpressionStatement", + "src": "45342:70:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45433:9:74", + "nodeType": "YulIdentifier", + "src": "45433:9:74" + }, + { + "kind": "number", + "nativeSrc": "45444:2:74", + "nodeType": "YulLiteral", + "src": "45444:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45429:3:74", + "nodeType": "YulIdentifier", + "src": "45429:3:74" + }, + "nativeSrc": "45429:18:74", + "nodeType": "YulFunctionCall", + "src": "45429:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "45453:4:74", + "nodeType": "YulIdentifier", + "src": "45453:4:74" + }, + { + "name": "headStart", + "nativeSrc": "45459:9:74", + "nodeType": "YulIdentifier", + "src": "45459:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "45449:3:74", + "nodeType": "YulIdentifier", + "src": "45449:3:74" + }, + "nativeSrc": "45449:20:74", + "nodeType": "YulFunctionCall", + "src": "45449:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45422:6:74", + "nodeType": "YulIdentifier", + "src": "45422:6:74" + }, + "nativeSrc": "45422:48:74", + "nodeType": "YulFunctionCall", + "src": "45422:48:74" + }, + "nativeSrc": "45422:48:74", + "nodeType": "YulExpressionStatement", + "src": "45422:48:74" + }, + { + "nativeSrc": "45479:84:74", + "nodeType": "YulAssignment", + "src": "45479:84:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "45549:6:74", + "nodeType": "YulIdentifier", + "src": "45549:6:74" + }, + { + "name": "tail", + "nativeSrc": "45558:4:74", + "nodeType": "YulIdentifier", + "src": "45558:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "45487:61:74", + "nodeType": "YulIdentifier", + "src": "45487:61:74" + }, + "nativeSrc": "45487:76:74", + "nodeType": "YulFunctionCall", + "src": "45487:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45479:4:74", + "nodeType": "YulIdentifier", + "src": "45479:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "44958:612:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "45102:9:74", + "nodeType": "YulTypedName", + "src": "45102:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "45114:6:74", + "nodeType": "YulTypedName", + "src": "45114:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "45122:6:74", + "nodeType": "YulTypedName", + "src": "45122:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "45130:6:74", + "nodeType": "YulTypedName", + "src": "45130:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "45141:4:74", + "nodeType": "YulTypedName", + "src": "45141:4:74", + "type": "" + } + ], + "src": "44958:612:74" + }, + { + "body": { + "nativeSrc": "45620:147:74", + "nodeType": "YulBlock", + "src": "45620:147:74", + "statements": [ + { + "nativeSrc": "45630:25:74", + "nodeType": "YulAssignment", + "src": "45630:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "45653:1:74", + "nodeType": "YulIdentifier", + "src": "45653:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "45635:17:74", + "nodeType": "YulIdentifier", + "src": "45635:17:74" + }, + "nativeSrc": "45635:20:74", + "nodeType": "YulFunctionCall", + "src": "45635:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "45630:1:74", + "nodeType": "YulIdentifier", + "src": "45630:1:74" + } + ] + }, + { + "nativeSrc": "45664:25:74", + "nodeType": "YulAssignment", + "src": "45664:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "45687:1:74", + "nodeType": "YulIdentifier", + "src": "45687:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "45669:17:74", + "nodeType": "YulIdentifier", + "src": "45669:17:74" + }, + "nativeSrc": "45669:20:74", + "nodeType": "YulFunctionCall", + "src": "45669:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "45664:1:74", + "nodeType": "YulIdentifier", + "src": "45664:1:74" + } + ] + }, + { + "nativeSrc": "45698:16:74", + "nodeType": "YulAssignment", + "src": "45698:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "45709:1:74", + "nodeType": "YulIdentifier", + "src": "45709:1:74" + }, + { + "name": "y", + "nativeSrc": "45712:1:74", + "nodeType": "YulIdentifier", + "src": "45712:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45705:3:74", + "nodeType": "YulIdentifier", + "src": "45705:3:74" + }, + "nativeSrc": "45705:9:74", + "nodeType": "YulFunctionCall", + "src": "45705:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "45698:3:74", + "nodeType": "YulIdentifier", + "src": "45698:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "45738:22:74", + "nodeType": "YulBlock", + "src": "45738:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "45740:16:74", + "nodeType": "YulIdentifier", + "src": "45740:16:74" + }, + "nativeSrc": "45740:18:74", + "nodeType": "YulFunctionCall", + "src": "45740:18:74" + }, + "nativeSrc": "45740:18:74", + "nodeType": "YulExpressionStatement", + "src": "45740:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "45730:1:74", + "nodeType": "YulIdentifier", + "src": "45730:1:74" + }, + { + "name": "sum", + "nativeSrc": "45733:3:74", + "nodeType": "YulIdentifier", + "src": "45733:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "45727:2:74", + "nodeType": "YulIdentifier", + "src": "45727:2:74" + }, + "nativeSrc": "45727:10:74", + "nodeType": "YulFunctionCall", + "src": "45727:10:74" + }, + "nativeSrc": "45724:36:74", + "nodeType": "YulIf", + "src": "45724:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "45576:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "45607:1:74", + "nodeType": "YulTypedName", + "src": "45607:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "45610:1:74", + "nodeType": "YulTypedName", + "src": "45610:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "45616:3:74", + "nodeType": "YulTypedName", + "src": "45616:3:74", + "type": "" + } + ], + "src": "45576:191:74" + }, + { + "body": { + "nativeSrc": "45862:28:74", + "nodeType": "YulBlock", + "src": "45862:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "45879:1:74", + "nodeType": "YulLiteral", + "src": "45879:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "45882:1:74", + "nodeType": "YulLiteral", + "src": "45882:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "45872:6:74", + "nodeType": "YulIdentifier", + "src": "45872:6:74" + }, + "nativeSrc": "45872:12:74", + "nodeType": "YulFunctionCall", + "src": "45872:12:74" + }, + "nativeSrc": "45872:12:74", + "nodeType": "YulExpressionStatement", + "src": "45872:12:74" + } + ] + }, + "name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad", + "nativeSrc": "45773:117:74", + "nodeType": "YulFunctionDefinition", + "src": "45773:117:74" + }, + { + "body": { + "nativeSrc": "45985:28:74", + "nodeType": "YulBlock", + "src": "45985:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "46002:1:74", + "nodeType": "YulLiteral", + "src": "46002:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "46005:1:74", + "nodeType": "YulLiteral", + "src": "46005:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "45995:6:74", + "nodeType": "YulIdentifier", + "src": "45995:6:74" + }, + "nativeSrc": "45995:12:74", + "nodeType": "YulFunctionCall", + "src": "45995:12:74" + }, + "nativeSrc": "45995:12:74", + "nodeType": "YulExpressionStatement", + "src": "45995:12:74" + } + ] + }, + "name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a", + "nativeSrc": "45896:117:74", + "nodeType": "YulFunctionDefinition", + "src": "45896:117:74" + }, + { + "body": { + "nativeSrc": "46108:28:74", + "nodeType": "YulBlock", + "src": "46108:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "46125:1:74", + "nodeType": "YulLiteral", + "src": "46125:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "46128:1:74", + "nodeType": "YulLiteral", + "src": "46128:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "46118:6:74", + "nodeType": "YulIdentifier", + "src": "46118:6:74" + }, + "nativeSrc": "46118:12:74", + "nodeType": "YulFunctionCall", + "src": "46118:12:74" + }, + "nativeSrc": "46118:12:74", + "nodeType": "YulExpressionStatement", + "src": "46118:12:74" + } + ] + }, + "name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e", + "nativeSrc": "46019:117:74", + "nodeType": "YulFunctionDefinition", + "src": "46019:117:74" + }, + { + "body": { + "nativeSrc": "46232:634:74", + "nodeType": "YulBlock", + "src": "46232:634:74", + "statements": [ + { + "nativeSrc": "46242:51:74", + "nodeType": "YulVariableDeclaration", + "src": "46242:51:74", + "value": { + "arguments": [ + { + "name": "ptr_to_tail", + "nativeSrc": "46281:11:74", + "nodeType": "YulIdentifier", + "src": "46281:11:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "46268:12:74", + "nodeType": "YulIdentifier", + "src": "46268:12:74" + }, + "nativeSrc": "46268:25:74", + "nodeType": "YulFunctionCall", + "src": "46268:25:74" + }, + "variables": [ + { + "name": "rel_offset_of_tail", + "nativeSrc": "46246:18:74", + "nodeType": "YulTypedName", + "src": "46246:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "46387:83:74", + "nodeType": "YulBlock", + "src": "46387:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad", + "nativeSrc": "46389:77:74", + "nodeType": "YulIdentifier", + "src": "46389:77:74" + }, + "nativeSrc": "46389:79:74", + "nodeType": "YulFunctionCall", + "src": "46389:79:74" + }, + "nativeSrc": "46389:79:74", + "nodeType": "YulExpressionStatement", + "src": "46389:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "rel_offset_of_tail", + "nativeSrc": "46316:18:74", + "nodeType": "YulIdentifier", + "src": "46316:18:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nativeSrc": "46344:12:74", + "nodeType": "YulIdentifier", + "src": "46344:12:74" + }, + "nativeSrc": "46344:14:74", + "nodeType": "YulFunctionCall", + "src": "46344:14:74" + }, + { + "name": "base_ref", + "nativeSrc": "46360:8:74", + "nodeType": "YulIdentifier", + "src": "46360:8:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46340:3:74", + "nodeType": "YulIdentifier", + "src": "46340:3:74" + }, + "nativeSrc": "46340:29:74", + "nodeType": "YulFunctionCall", + "src": "46340:29:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "46375:4:74", + "nodeType": "YulLiteral", + "src": "46375:4:74", + "type": "", + "value": "0x20" + }, + { + "kind": "number", + "nativeSrc": "46381:1:74", + "nodeType": "YulLiteral", + "src": "46381:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46371:3:74", + "nodeType": "YulIdentifier", + "src": "46371:3:74" + }, + "nativeSrc": "46371:12:74", + "nodeType": "YulFunctionCall", + "src": "46371:12:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46336:3:74", + "nodeType": "YulIdentifier", + "src": "46336:3:74" + }, + "nativeSrc": "46336:48:74", + "nodeType": "YulFunctionCall", + "src": "46336:48:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "46312:3:74", + "nodeType": "YulIdentifier", + "src": "46312:3:74" + }, + "nativeSrc": "46312:73:74", + "nodeType": "YulFunctionCall", + "src": "46312:73:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "46305:6:74", + "nodeType": "YulIdentifier", + "src": "46305:6:74" + }, + "nativeSrc": "46305:81:74", + "nodeType": "YulFunctionCall", + "src": "46305:81:74" + }, + "nativeSrc": "46302:168:74", + "nodeType": "YulIf", + "src": "46302:168:74" + }, + { + "nativeSrc": "46479:41:74", + "nodeType": "YulAssignment", + "src": "46479:41:74", + "value": { + "arguments": [ + { + "name": "base_ref", + "nativeSrc": "46491:8:74", + "nodeType": "YulIdentifier", + "src": "46491:8:74" + }, + { + "name": "rel_offset_of_tail", + "nativeSrc": "46501:18:74", + "nodeType": "YulIdentifier", + "src": "46501:18:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46487:3:74", + "nodeType": "YulIdentifier", + "src": "46487:3:74" + }, + "nativeSrc": "46487:33:74", + "nodeType": "YulFunctionCall", + "src": "46487:33:74" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "46479:4:74", + "nodeType": "YulIdentifier", + "src": "46479:4:74" + } + ] + }, + { + "nativeSrc": "46530:28:74", + "nodeType": "YulAssignment", + "src": "46530:28:74", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "46553:4:74", + "nodeType": "YulIdentifier", + "src": "46553:4:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "46540:12:74", + "nodeType": "YulIdentifier", + "src": "46540:12:74" + }, + "nativeSrc": "46540:18:74", + "nodeType": "YulFunctionCall", + "src": "46540:18:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "46530:6:74", + "nodeType": "YulIdentifier", + "src": "46530:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "46601:83:74", + "nodeType": "YulBlock", + "src": "46601:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a", + "nativeSrc": "46603:77:74", + "nodeType": "YulIdentifier", + "src": "46603:77:74" + }, + "nativeSrc": "46603:79:74", + "nodeType": "YulFunctionCall", + "src": "46603:79:74" + }, + "nativeSrc": "46603:79:74", + "nodeType": "YulExpressionStatement", + "src": "46603:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "46573:6:74", + "nodeType": "YulIdentifier", + "src": "46573:6:74" + }, + { + "kind": "number", + "nativeSrc": "46581:18:74", + "nodeType": "YulLiteral", + "src": "46581:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "46570:2:74", + "nodeType": "YulIdentifier", + "src": "46570:2:74" + }, + "nativeSrc": "46570:30:74", + "nodeType": "YulFunctionCall", + "src": "46570:30:74" + }, + "nativeSrc": "46567:117:74", + "nodeType": "YulIf", + "src": "46567:117:74" + }, + { + "nativeSrc": "46693:21:74", + "nodeType": "YulAssignment", + "src": "46693:21:74", + "value": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "46705:4:74", + "nodeType": "YulIdentifier", + "src": "46705:4:74" + }, + { + "kind": "number", + "nativeSrc": "46711:2:74", + "nodeType": "YulLiteral", + "src": "46711:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46701:3:74", + "nodeType": "YulIdentifier", + "src": "46701:3:74" + }, + "nativeSrc": "46701:13:74", + "nodeType": "YulFunctionCall", + "src": "46701:13:74" + }, + "variableNames": [ + { + "name": "addr", + "nativeSrc": "46693:4:74", + "nodeType": "YulIdentifier", + "src": "46693:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "46776:83:74", + "nodeType": "YulBlock", + "src": "46776:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e", + "nativeSrc": "46778:77:74", + "nodeType": "YulIdentifier", + "src": "46778:77:74" + }, + "nativeSrc": "46778:79:74", + "nodeType": "YulFunctionCall", + "src": "46778:79:74" + }, + "nativeSrc": "46778:79:74", + "nodeType": "YulExpressionStatement", + "src": "46778:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "addr", + "nativeSrc": "46730:4:74", + "nodeType": "YulIdentifier", + "src": "46730:4:74" + }, + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nativeSrc": "46740:12:74", + "nodeType": "YulIdentifier", + "src": "46740:12:74" + }, + "nativeSrc": "46740:14:74", + "nodeType": "YulFunctionCall", + "src": "46740:14:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "46760:6:74", + "nodeType": "YulIdentifier", + "src": "46760:6:74" + }, + { + "kind": "number", + "nativeSrc": "46768:4:74", + "nodeType": "YulLiteral", + "src": "46768:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "46756:3:74", + "nodeType": "YulIdentifier", + "src": "46756:3:74" + }, + "nativeSrc": "46756:17:74", + "nodeType": "YulFunctionCall", + "src": "46756:17:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46736:3:74", + "nodeType": "YulIdentifier", + "src": "46736:3:74" + }, + "nativeSrc": "46736:38:74", + "nodeType": "YulFunctionCall", + "src": "46736:38:74" + } + ], + "functionName": { + "name": "sgt", + "nativeSrc": "46726:3:74", + "nodeType": "YulIdentifier", + "src": "46726:3:74" + }, + "nativeSrc": "46726:49:74", + "nodeType": "YulFunctionCall", + "src": "46726:49:74" + }, + "nativeSrc": "46723:136:74", + "nodeType": "YulIf", + "src": "46723:136:74" + } + ] + }, + "name": "access_calldata_tail_t_bytes_calldata_ptr", + "nativeSrc": "46142:724:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "base_ref", + "nativeSrc": "46193:8:74", + "nodeType": "YulTypedName", + "src": "46193:8:74", + "type": "" + }, + { + "name": "ptr_to_tail", + "nativeSrc": "46203:11:74", + "nodeType": "YulTypedName", + "src": "46203:11:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "addr", + "nativeSrc": "46219:4:74", + "nodeType": "YulTypedName", + "src": "46219:4:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "46225:6:74", + "nodeType": "YulTypedName", + "src": "46225:6:74", + "type": "" + } + ], + "src": "46142:724:74" + }, + { + "body": { + "nativeSrc": "46961:28:74", + "nodeType": "YulBlock", + "src": "46961:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "46978:1:74", + "nodeType": "YulLiteral", + "src": "46978:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "46981:1:74", + "nodeType": "YulLiteral", + "src": "46981:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "46971:6:74", + "nodeType": "YulIdentifier", + "src": "46971:6:74" + }, + "nativeSrc": "46971:12:74", + "nodeType": "YulFunctionCall", + "src": "46971:12:74" + }, + "nativeSrc": "46971:12:74", + "nodeType": "YulExpressionStatement", + "src": "46971:12:74" + } + ] + }, + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "46872:117:74", + "nodeType": "YulFunctionDefinition", + "src": "46872:117:74" + }, + { + "body": { + "nativeSrc": "47084:28:74", + "nodeType": "YulBlock", + "src": "47084:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "47101:1:74", + "nodeType": "YulLiteral", + "src": "47101:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "47104:1:74", + "nodeType": "YulLiteral", + "src": "47104:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "47094:6:74", + "nodeType": "YulIdentifier", + "src": "47094:6:74" + }, + "nativeSrc": "47094:12:74", + "nodeType": "YulFunctionCall", + "src": "47094:12:74" + }, + "nativeSrc": "47094:12:74", + "nodeType": "YulExpressionStatement", + "src": "47094:12:74" + } + ] + }, + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "46995:117:74", + "nodeType": "YulFunctionDefinition", + "src": "46995:117:74" + }, + { + "body": { + "nativeSrc": "47244:343:74", + "nodeType": "YulBlock", + "src": "47244:343:74", + "statements": [ + { + "body": { + "nativeSrc": "47282:83:74", + "nodeType": "YulBlock", + "src": "47282:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "47284:77:74", + "nodeType": "YulIdentifier", + "src": "47284:77:74" + }, + "nativeSrc": "47284:79:74", + "nodeType": "YulFunctionCall", + "src": "47284:79:74" + }, + "nativeSrc": "47284:79:74", + "nodeType": "YulExpressionStatement", + "src": "47284:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "47260:10:74", + "nodeType": "YulIdentifier", + "src": "47260:10:74" + }, + { + "name": "endIndex", + "nativeSrc": "47272:8:74", + "nodeType": "YulIdentifier", + "src": "47272:8:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "47257:2:74", + "nodeType": "YulIdentifier", + "src": "47257:2:74" + }, + "nativeSrc": "47257:24:74", + "nodeType": "YulFunctionCall", + "src": "47257:24:74" + }, + "nativeSrc": "47254:111:74", + "nodeType": "YulIf", + "src": "47254:111:74" + }, + { + "body": { + "nativeSrc": "47398:83:74", + "nodeType": "YulBlock", + "src": "47398:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "47400:77:74", + "nodeType": "YulIdentifier", + "src": "47400:77:74" + }, + "nativeSrc": "47400:79:74", + "nodeType": "YulFunctionCall", + "src": "47400:79:74" + }, + "nativeSrc": "47400:79:74", + "nodeType": "YulExpressionStatement", + "src": "47400:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "47380:8:74", + "nodeType": "YulIdentifier", + "src": "47380:8:74" + }, + { + "name": "length", + "nativeSrc": "47390:6:74", + "nodeType": "YulIdentifier", + "src": "47390:6:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "47377:2:74", + "nodeType": "YulIdentifier", + "src": "47377:2:74" + }, + "nativeSrc": "47377:20:74", + "nodeType": "YulFunctionCall", + "src": "47377:20:74" + }, + "nativeSrc": "47374:107:74", + "nodeType": "YulIf", + "src": "47374:107:74" + }, + { + "nativeSrc": "47490:44:74", + "nodeType": "YulAssignment", + "src": "47490:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "47507:6:74", + "nodeType": "YulIdentifier", + "src": "47507:6:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "47519:10:74", + "nodeType": "YulIdentifier", + "src": "47519:10:74" + }, + { + "kind": "number", + "nativeSrc": "47531:1:74", + "nodeType": "YulLiteral", + "src": "47531:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "47515:3:74", + "nodeType": "YulIdentifier", + "src": "47515:3:74" + }, + "nativeSrc": "47515:18:74", + "nodeType": "YulFunctionCall", + "src": "47515:18:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47503:3:74", + "nodeType": "YulIdentifier", + "src": "47503:3:74" + }, + "nativeSrc": "47503:31:74", + "nodeType": "YulFunctionCall", + "src": "47503:31:74" + }, + "variableNames": [ + { + "name": "offsetOut", + "nativeSrc": "47490:9:74", + "nodeType": "YulIdentifier", + "src": "47490:9:74" + } + ] + }, + { + "nativeSrc": "47543:38:74", + "nodeType": "YulAssignment", + "src": "47543:38:74", + "value": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "47560:8:74", + "nodeType": "YulIdentifier", + "src": "47560:8:74" + }, + { + "name": "startIndex", + "nativeSrc": "47570:10:74", + "nodeType": "YulIdentifier", + "src": "47570:10:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "47556:3:74", + "nodeType": "YulIdentifier", + "src": "47556:3:74" + }, + "nativeSrc": "47556:25:74", + "nodeType": "YulFunctionCall", + "src": "47556:25:74" + }, + "variableNames": [ + { + "name": "lengthOut", + "nativeSrc": "47543:9:74", + "nodeType": "YulIdentifier", + "src": "47543:9:74" + } + ] + } + ] + }, + "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", + "nativeSrc": "47118:469:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "47182:6:74", + "nodeType": "YulTypedName", + "src": "47182:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "47190:6:74", + "nodeType": "YulTypedName", + "src": "47190:6:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "47198:10:74", + "nodeType": "YulTypedName", + "src": "47198:10:74", + "type": "" + }, + { + "name": "endIndex", + "nativeSrc": "47210:8:74", + "nodeType": "YulTypedName", + "src": "47210:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "offsetOut", + "nativeSrc": "47223:9:74", + "nodeType": "YulTypedName", + "src": "47223:9:74", + "type": "" + }, + { + "name": "lengthOut", + "nativeSrc": "47234:9:74", + "nodeType": "YulTypedName", + "src": "47234:9:74", + "type": "" + } + ], + "src": "47118:469:74" + }, + { + "body": { + "nativeSrc": "47651:28:74", + "nodeType": "YulBlock", + "src": "47651:28:74", + "statements": [ + { + "nativeSrc": "47661:11:74", + "nodeType": "YulAssignment", + "src": "47661:11:74", + "value": { + "name": "ptr", + "nativeSrc": "47669:3:74", + "nodeType": "YulIdentifier", + "src": "47669:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "47661:4:74", + "nodeType": "YulIdentifier", + "src": "47661:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_calldata_ptr", + "nativeSrc": "47593:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "47638:3:74", + "nodeType": "YulTypedName", + "src": "47638:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "47646:4:74", + "nodeType": "YulTypedName", + "src": "47646:4:74", + "type": "" + } + ], + "src": "47593:86:74" + }, + { + "body": { + "nativeSrc": "47782:455:74", + "nodeType": "YulBlock", + "src": "47782:455:74", + "statements": [ + { + "nativeSrc": "47793:59:74", + "nodeType": "YulVariableDeclaration", + "src": "47793:59:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "47841:5:74", + "nodeType": "YulIdentifier", + "src": "47841:5:74" + }, + { + "name": "len", + "nativeSrc": "47848:3:74", + "nodeType": "YulIdentifier", + "src": "47848:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "47807:33:74", + "nodeType": "YulIdentifier", + "src": "47807:33:74" + }, + "nativeSrc": "47807:45:74", + "nodeType": "YulFunctionCall", + "src": "47807:45:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "47797:6:74", + "nodeType": "YulTypedName", + "src": "47797:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47861:21:74", + "nodeType": "YulVariableDeclaration", + "src": "47861:21:74", + "value": { + "name": "array", + "nativeSrc": "47877:5:74", + "nodeType": "YulIdentifier", + "src": "47877:5:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "47865:8:74", + "nodeType": "YulTypedName", + "src": "47865:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47892:50:74", + "nodeType": "YulAssignment", + "src": "47892:50:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "47932:8:74", + "nodeType": "YulIdentifier", + "src": "47932:8:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "47919:12:74", + "nodeType": "YulIdentifier", + "src": "47919:12:74" + }, + "nativeSrc": "47919:22:74", + "nodeType": "YulFunctionCall", + "src": "47919:22:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "47901:17:74", + "nodeType": "YulIdentifier", + "src": "47901:17:74" + }, + "nativeSrc": "47901:41:74", + "nodeType": "YulFunctionCall", + "src": "47901:41:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "47892:5:74", + "nodeType": "YulIdentifier", + "src": "47892:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "47970:260:74", + "nodeType": "YulBlock", + "src": "47970:260:74", + "statements": [ + { + "nativeSrc": "47984:236:74", + "nodeType": "YulAssignment", + "src": "47984:236:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "48014:5:74", + "nodeType": "YulIdentifier", + "src": "48014:5:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "48081:1:74", + "nodeType": "YulLiteral", + "src": "48081:1:74", + "type": "", + "value": "8" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "48088:2:74", + "nodeType": "YulLiteral", + "src": "48088:2:74", + "type": "", + "value": "32" + }, + { + "name": "length", + "nativeSrc": "48092:6:74", + "nodeType": "YulIdentifier", + "src": "48092:6:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "48084:3:74", + "nodeType": "YulIdentifier", + "src": "48084:3:74" + }, + "nativeSrc": "48084:15:74", + "nodeType": "YulFunctionCall", + "src": "48084:15:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "48077:3:74", + "nodeType": "YulIdentifier", + "src": "48077:3:74" + }, + "nativeSrc": "48077:23:74", + "nodeType": "YulFunctionCall", + "src": "48077:23:74" + }, + { + "kind": "number", + "nativeSrc": "48122:66:74", + "nodeType": "YulLiteral", + "src": "48122:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "48037:18:74", + "nodeType": "YulIdentifier", + "src": "48037:18:74" + }, + "nativeSrc": "48037:169:74", + "nodeType": "YulFunctionCall", + "src": "48037:169:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "47993:3:74", + "nodeType": "YulIdentifier", + "src": "47993:3:74" + }, + "nativeSrc": "47993:227:74", + "nodeType": "YulFunctionCall", + "src": "47993:227:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "47984:5:74", + "nodeType": "YulIdentifier", + "src": "47984:5:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "47958:6:74", + "nodeType": "YulIdentifier", + "src": "47958:6:74" + }, + { + "kind": "number", + "nativeSrc": "47966:2:74", + "nodeType": "YulLiteral", + "src": "47966:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "47955:2:74", + "nodeType": "YulIdentifier", + "src": "47955:2:74" + }, + "nativeSrc": "47955:14:74", + "nodeType": "YulFunctionCall", + "src": "47955:14:74" + }, + "nativeSrc": "47952:278:74", + "nodeType": "YulIf", + "src": "47952:278:74" + } + ] + }, + "name": "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32", + "nativeSrc": "47685:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "47761:5:74", + "nodeType": "YulTypedName", + "src": "47761:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "47768:3:74", + "nodeType": "YulTypedName", + "src": "47768:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "47776:5:74", + "nodeType": "YulTypedName", + "src": "47776:5:74", + "type": "" + } + ], + "src": "47685:552:74" + }, + { + "body": { + "nativeSrc": "48349:133:74", + "nodeType": "YulBlock", + "src": "48349:133:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "48371:6:74", + "nodeType": "YulIdentifier", + "src": "48371:6:74" + }, + { + "kind": "number", + "nativeSrc": "48379:1:74", + "nodeType": "YulLiteral", + "src": "48379:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48367:3:74", + "nodeType": "YulIdentifier", + "src": "48367:3:74" + }, + "nativeSrc": "48367:14:74", + "nodeType": "YulFunctionCall", + "src": "48367:14:74" + }, + { + "hexValue": "6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665", + "kind": "string", + "nativeSrc": "48383:34:74", + "nodeType": "YulLiteral", + "src": "48383:34:74", + "type": "", + "value": "multicall: All records must have" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48360:6:74", + "nodeType": "YulIdentifier", + "src": "48360:6:74" + }, + "nativeSrc": "48360:58:74", + "nodeType": "YulFunctionCall", + "src": "48360:58:74" + }, + "nativeSrc": "48360:58:74", + "nodeType": "YulExpressionStatement", + "src": "48360:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "48439:6:74", + "nodeType": "YulIdentifier", + "src": "48439:6:74" + }, + { + "kind": "number", + "nativeSrc": "48447:2:74", + "nodeType": "YulLiteral", + "src": "48447:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48435:3:74", + "nodeType": "YulIdentifier", + "src": "48435:3:74" + }, + "nativeSrc": "48435:15:74", + "nodeType": "YulFunctionCall", + "src": "48435:15:74" + }, + { + "hexValue": "2061206d61746368696e67206e616d6568617368", + "kind": "string", + "nativeSrc": "48452:22:74", + "nodeType": "YulLiteral", + "src": "48452:22:74", + "type": "", + "value": " a matching namehash" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48428:6:74", + "nodeType": "YulIdentifier", + "src": "48428:6:74" + }, + "nativeSrc": "48428:47:74", + "nodeType": "YulFunctionCall", + "src": "48428:47:74" + }, + "nativeSrc": "48428:47:74", + "nodeType": "YulExpressionStatement", + "src": "48428:47:74" + } + ] + }, + "name": "store_literal_in_memory_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30", + "nativeSrc": "48243:239:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "48341:6:74", + "nodeType": "YulTypedName", + "src": "48341:6:74", + "type": "" + } + ], + "src": "48243:239:74" + }, + { + "body": { + "nativeSrc": "48634:220:74", + "nodeType": "YulBlock", + "src": "48634:220:74", + "statements": [ + { + "nativeSrc": "48644:74:74", + "nodeType": "YulAssignment", + "src": "48644:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48710:3:74", + "nodeType": "YulIdentifier", + "src": "48710:3:74" + }, + { + "kind": "number", + "nativeSrc": "48715:2:74", + "nodeType": "YulLiteral", + "src": "48715:2:74", + "type": "", + "value": "52" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "48651:58:74", + "nodeType": "YulIdentifier", + "src": "48651:58:74" + }, + "nativeSrc": "48651:67:74", + "nodeType": "YulFunctionCall", + "src": "48651:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "48644:3:74", + "nodeType": "YulIdentifier", + "src": "48644:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48816:3:74", + "nodeType": "YulIdentifier", + "src": "48816:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30", + "nativeSrc": "48727:88:74", + "nodeType": "YulIdentifier", + "src": "48727:88:74" + }, + "nativeSrc": "48727:93:74", + "nodeType": "YulFunctionCall", + "src": "48727:93:74" + }, + "nativeSrc": "48727:93:74", + "nodeType": "YulExpressionStatement", + "src": "48727:93:74" + }, + { + "nativeSrc": "48829:19:74", + "nodeType": "YulAssignment", + "src": "48829:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48840:3:74", + "nodeType": "YulIdentifier", + "src": "48840:3:74" + }, + { + "kind": "number", + "nativeSrc": "48845:2:74", + "nodeType": "YulLiteral", + "src": "48845:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48836:3:74", + "nodeType": "YulIdentifier", + "src": "48836:3:74" + }, + "nativeSrc": "48836:12:74", + "nodeType": "YulFunctionCall", + "src": "48836:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "48829:3:74", + "nodeType": "YulIdentifier", + "src": "48829:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30_to_t_string_memory_ptr_fromStack", + "nativeSrc": "48488:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "48622:3:74", + "nodeType": "YulTypedName", + "src": "48622:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "48630:3:74", + "nodeType": "YulTypedName", + "src": "48630:3:74", + "type": "" + } + ], + "src": "48488:366:74" + }, + { + "body": { + "nativeSrc": "49031:248:74", + "nodeType": "YulBlock", + "src": "49031:248:74", + "statements": [ + { + "nativeSrc": "49041:26:74", + "nodeType": "YulAssignment", + "src": "49041:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49053:9:74", + "nodeType": "YulIdentifier", + "src": "49053:9:74" + }, + { + "kind": "number", + "nativeSrc": "49064:2:74", + "nodeType": "YulLiteral", + "src": "49064:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49049:3:74", + "nodeType": "YulIdentifier", + "src": "49049:3:74" + }, + "nativeSrc": "49049:18:74", + "nodeType": "YulFunctionCall", + "src": "49049:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49041:4:74", + "nodeType": "YulIdentifier", + "src": "49041:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49088:9:74", + "nodeType": "YulIdentifier", + "src": "49088:9:74" + }, + { + "kind": "number", + "nativeSrc": "49099:1:74", + "nodeType": "YulLiteral", + "src": "49099:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49084:3:74", + "nodeType": "YulIdentifier", + "src": "49084:3:74" + }, + "nativeSrc": "49084:17:74", + "nodeType": "YulFunctionCall", + "src": "49084:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49107:4:74", + "nodeType": "YulIdentifier", + "src": "49107:4:74" + }, + { + "name": "headStart", + "nativeSrc": "49113:9:74", + "nodeType": "YulIdentifier", + "src": "49113:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "49103:3:74", + "nodeType": "YulIdentifier", + "src": "49103:3:74" + }, + "nativeSrc": "49103:20:74", + "nodeType": "YulFunctionCall", + "src": "49103:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49077:6:74", + "nodeType": "YulIdentifier", + "src": "49077:6:74" + }, + "nativeSrc": "49077:47:74", + "nodeType": "YulFunctionCall", + "src": "49077:47:74" + }, + "nativeSrc": "49077:47:74", + "nodeType": "YulExpressionStatement", + "src": "49077:47:74" + }, + { + "nativeSrc": "49133:139:74", + "nodeType": "YulAssignment", + "src": "49133:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49267:4:74", + "nodeType": "YulIdentifier", + "src": "49267:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30_to_t_string_memory_ptr_fromStack", + "nativeSrc": "49141:124:74", + "nodeType": "YulIdentifier", + "src": "49141:124:74" + }, + "nativeSrc": "49141:131:74", + "nodeType": "YulFunctionCall", + "src": "49141:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49133:4:74", + "nodeType": "YulIdentifier", + "src": "49133:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "48860:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "49011:9:74", + "nodeType": "YulTypedName", + "src": "49011:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "49026:4:74", + "nodeType": "YulTypedName", + "src": "49026:4:74", + "type": "" + } + ], + "src": "48860:419:74" + }, + { + "body": { + "nativeSrc": "49425:209:74", + "nodeType": "YulBlock", + "src": "49425:209:74", + "statements": [ + { + "nativeSrc": "49435:95:74", + "nodeType": "YulAssignment", + "src": "49435:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "49518:3:74", + "nodeType": "YulIdentifier", + "src": "49518:3:74" + }, + { + "name": "length", + "nativeSrc": "49523:6:74", + "nodeType": "YulIdentifier", + "src": "49523:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "49442:75:74", + "nodeType": "YulIdentifier", + "src": "49442:75:74" + }, + "nativeSrc": "49442:88:74", + "nodeType": "YulFunctionCall", + "src": "49442:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "49435:3:74", + "nodeType": "YulIdentifier", + "src": "49435:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "49577:5:74", + "nodeType": "YulIdentifier", + "src": "49577:5:74" + }, + { + "name": "pos", + "nativeSrc": "49584:3:74", + "nodeType": "YulIdentifier", + "src": "49584:3:74" + }, + { + "name": "length", + "nativeSrc": "49589:6:74", + "nodeType": "YulIdentifier", + "src": "49589:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "49540:36:74", + "nodeType": "YulIdentifier", + "src": "49540:36:74" + }, + "nativeSrc": "49540:56:74", + "nodeType": "YulFunctionCall", + "src": "49540:56:74" + }, + "nativeSrc": "49540:56:74", + "nodeType": "YulExpressionStatement", + "src": "49540:56:74" + }, + { + "nativeSrc": "49605:23:74", + "nodeType": "YulAssignment", + "src": "49605:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "49616:3:74", + "nodeType": "YulIdentifier", + "src": "49616:3:74" + }, + { + "name": "length", + "nativeSrc": "49621:6:74", + "nodeType": "YulIdentifier", + "src": "49621:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49612:3:74", + "nodeType": "YulIdentifier", + "src": "49612:3:74" + }, + "nativeSrc": "49612:16:74", + "nodeType": "YulFunctionCall", + "src": "49612:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "49605:3:74", + "nodeType": "YulIdentifier", + "src": "49605:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "49307:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "49398:5:74", + "nodeType": "YulTypedName", + "src": "49398:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "49405:6:74", + "nodeType": "YulTypedName", + "src": "49405:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "49413:3:74", + "nodeType": "YulTypedName", + "src": "49413:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "49421:3:74", + "nodeType": "YulTypedName", + "src": "49421:3:74", + "type": "" + } + ], + "src": "49307:327:74" + }, + { + "body": { + "nativeSrc": "49784:147:74", + "nodeType": "YulBlock", + "src": "49784:147:74", + "statements": [ + { + "nativeSrc": "49795:110:74", + "nodeType": "YulAssignment", + "src": "49795:110:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "49884:6:74", + "nodeType": "YulIdentifier", + "src": "49884:6:74" + }, + { + "name": "value1", + "nativeSrc": "49892:6:74", + "nodeType": "YulIdentifier", + "src": "49892:6:74" + }, + { + "name": "pos", + "nativeSrc": "49901:3:74", + "nodeType": "YulIdentifier", + "src": "49901:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "49802:81:74", + "nodeType": "YulIdentifier", + "src": "49802:81:74" + }, + "nativeSrc": "49802:103:74", + "nodeType": "YulFunctionCall", + "src": "49802:103:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "49795:3:74", + "nodeType": "YulIdentifier", + "src": "49795:3:74" + } + ] + }, + { + "nativeSrc": "49915:10:74", + "nodeType": "YulAssignment", + "src": "49915:10:74", + "value": { + "name": "pos", + "nativeSrc": "49922:3:74", + "nodeType": "YulIdentifier", + "src": "49922:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "49915:3:74", + "nodeType": "YulIdentifier", + "src": "49915:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "49640:291:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "49755:3:74", + "nodeType": "YulTypedName", + "src": "49755:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "49761:6:74", + "nodeType": "YulTypedName", + "src": "49761:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "49769:6:74", + "nodeType": "YulTypedName", + "src": "49769:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "49780:3:74", + "nodeType": "YulTypedName", + "src": "49780:3:74", + "type": "" + } + ], + "src": "49640:291:74" + }, + { + "body": { + "nativeSrc": "49965:152:74", + "nodeType": "YulBlock", + "src": "49965:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "49982:1:74", + "nodeType": "YulLiteral", + "src": "49982:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "49985:77:74", + "nodeType": "YulLiteral", + "src": "49985:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49975:6:74", + "nodeType": "YulIdentifier", + "src": "49975:6:74" + }, + "nativeSrc": "49975:88:74", + "nodeType": "YulFunctionCall", + "src": "49975:88:74" + }, + "nativeSrc": "49975:88:74", + "nodeType": "YulExpressionStatement", + "src": "49975:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "50079:1:74", + "nodeType": "YulLiteral", + "src": "50079:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "50082:4:74", + "nodeType": "YulLiteral", + "src": "50082:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50072:6:74", + "nodeType": "YulIdentifier", + "src": "50072:6:74" + }, + "nativeSrc": "50072:15:74", + "nodeType": "YulFunctionCall", + "src": "50072:15:74" + }, + "nativeSrc": "50072:15:74", + "nodeType": "YulExpressionStatement", + "src": "50072:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "50103:1:74", + "nodeType": "YulLiteral", + "src": "50103:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "50106:4:74", + "nodeType": "YulLiteral", + "src": "50106:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "50096:6:74", + "nodeType": "YulIdentifier", + "src": "50096:6:74" + }, + "nativeSrc": "50096:15:74", + "nodeType": "YulFunctionCall", + "src": "50096:15:74" + }, + "nativeSrc": "50096:15:74", + "nodeType": "YulExpressionStatement", + "src": "50096:15:74" + } + ] + }, + "name": "panic_error_0x01", + "nativeSrc": "49937:180:74", + "nodeType": "YulFunctionDefinition", + "src": "49937:180:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_bytes32t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n // string\n function abi_decode_t_string_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3, value4 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes4(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_bytes32(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_payable_to_t_address_payable_fromStack(value, pos) {\n mstore(pos, cleanup_t_address_payable(value))\n }\n\n function abi_encode_tuple_t_address_payable__to_t_address_payable__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_payable_to_t_address_payable_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2, value3 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_addresst_bool(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint16(value) -> cleaned {\n cleaned := and(value, 0xffff)\n }\n\n function validator_revert_t_uint16(value) {\n if iszero(eq(value, cleanup_t_uint16(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint16(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint16(value)\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_uint16(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint16(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_bytes32t_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x20)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // bytes[] -> bytes[]\n function abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_decode_tuple_t_bytes32t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint64(value))\n }\n\n function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes4t_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n end := pos\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n diff := sub(x, y)\n\n if gt(diff, x) { panic_error_0x11() }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n // string -> string\n function abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_calldata_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, value1, pos)\n\n end := pos\n }\n\n function array_length_t_string_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage(slot, src, len) {\n\n let newLen := array_length_t_string_calldata_ptr(src, len)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, calldataload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := calldataload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := calldataload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n // string -> string\n function abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value0, value1, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value2, value3, tail)\n\n }\n\n function abi_encode_t_bytes4_to_t_bytes4_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes4(value))\n }\n\n function abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes4_to_t_bytes4_fromStack(value0, add(headStart, 0))\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function array_length_t_bytes_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function array_dataslot_t_bytes_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function clean_up_bytearray_end_slots_t_bytes_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_bytes_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage(slot, src, len) {\n\n let newLen := array_length_t_bytes_calldata_ptr(src, len)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_bytes_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_bytes_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, calldataload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := calldataload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := calldataload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value0, value1, tail)\n\n }\n\n function increment_t_uint64(value) -> ret {\n value := cleanup_t_uint64(value)\n if eq(value, 0xffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_calldata_ptr_to_t_string_memory_ptr_fromStack(value0, value1, tail)\n\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_address_payable_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_address_payable_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_address_payable_to_t_address(value))\n }\n\n function abi_encode_tuple_t_address_payable__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_payable_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src) {\n\n let newLen := array_length_t_bytes_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_bytes_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_bytes_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n function store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: setting approval status\")\n\n mstore(add(memPtr, 32), \" for self\")\n\n }\n\n function abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a(memPtr) {\n\n mstore(add(memPtr, 0), \"Setting delegate status for self\")\n\n }\n\n function abi_encode_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_fb190b006810059edc9ead724b9a58ef6d76fdad1e4f0c7d2965b67f98b3914a_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value1, value2, tail)\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function decrement_t_uint16(value) -> ret {\n value := cleanup_t_uint16(value)\n if eq(value, 0x00) { panic_error_0x11() }\n ret := sub(value, 1)\n }\n\n function abi_encode_t_uint16_to_t_uint16_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint16(value))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint16__to_t_bytes_memory_ptr_t_uint16__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n abi_encode_t_uint16_to_t_uint16_fromStack(value1, add(headStart, 32))\n\n }\n\n function increment_t_uint16(value) -> ret {\n value := cleanup_t_uint16(value)\n if eq(value, 0xffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_uint16_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n abi_encode_t_uint16_to_t_uint16_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad() {\n revert(0, 0)\n }\n\n function revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a() {\n revert(0, 0)\n }\n\n function revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e() {\n revert(0, 0)\n }\n\n function access_calldata_tail_t_bytes_calldata_ptr(base_ref, ptr_to_tail) -> addr, length {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, sub(sub(calldatasize(), base_ref), sub(0x20, 1)))) { revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad() }\n addr := add(base_ref, rel_offset_of_tail)\n\n length := calldataload(addr)\n if gt(length, 0xffffffffffffffff) { revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a() }\n addr := add(addr, 32)\n if sgt(addr, sub(calldatasize(), mul(length, 0x01))) { revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e() }\n\n }\n\n function revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() {\n revert(0, 0)\n }\n\n function revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() {\n revert(0, 0)\n }\n\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut {\n if gt(startIndex, endIndex) { revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() }\n if gt(endIndex, length) { revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() }\n offsetOut := add(offset, mul(startIndex, 1))\n lengthOut := sub(endIndex, startIndex)\n }\n\n function array_dataslot_t_bytes_calldata_ptr(ptr) -> data {\n data := ptr\n\n }\n\n function convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes32(array, len) -> value {\n\n let length := array_length_t_bytes_calldata_ptr(array, len)\n let dataArea := array\n\n value := cleanup_t_bytes32(calldataload(dataArea))\n\n if lt(length, 32) {\n value := and(\n value,\n shift_left_dynamic(\n mul(8, sub(32, length)),\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n )\n )\n }\n\n }\n\n function store_literal_in_memory_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30(memPtr) {\n\n mstore(add(memPtr, 0), \"multicall: All records must have\")\n\n mstore(add(memPtr, 32), \" a matching namehash\")\n\n }\n\n function abi_encode_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 52)\n store_literal_in_memory_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_e0f8a6e7bdab31ebf5fea1195446f6f12fddc8619df8ea22a3ed3edf179dde30_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0, value1, pos)\n\n end := pos\n }\n\n function panic_error_0x01() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x01)\n revert(0, 0x24)\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "5207": [ + { + "length": 32, + "start": 9491 + } + ], + "5210": [ + { + "length": 32, + "start": 9647 + }, + { + "length": 32, + "start": 9730 + } + ], + "5212": [ + { + "length": 32, + "start": 9310 + } + ], + "5214": [ + { + "length": 32, + "start": 9395 + } + ] + }, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb146105d1578063e59d895d14610601578063e985e9c51461061d578063f1cb7e061461064d576101da565b8063c869023314610538578063ce3decdc14610569578063d5fa2b0014610585578063d700ff33146105a1576101da565b8063a8fa5682116100de578063a8fa568214610478578063a9784b3e146104a8578063ac9650d8146104d8578063bc1c58d114610508576101da565b80638b95dd7114610424578063a22cb46514610440578063a4b91a011461045c576101da565b80633603d7581161017c5780635c98042b1161014b5780635c98042b1461038c578063623195b0146103bc578063691f3431146103d85780637737221314610408576101da565b80633603d758146102e05780633b3b57de146102fc5780634cbf6ba41461032c57806359d1d43c1461035c576101da565b8063124a319c116101b8578063124a319c146102475780632203ab561461027757806329cd62ea146102a8578063304e6ade146102c4576101da565b806301ffc9a7146101df5780630af179d71461020f57806310f13a8c1461022b575b600080fd5b6101f960048036038101906101f491906137d3565b61067d565b604051610206919061381b565b60405180910390f35b610229600480360381019061022491906138d1565b61068f565b005b61024560048036038101906102409190613987565b6108ee565b005b610261600480360381019061025c9190613a1c565b6109eb565b60405161026e9190613a9d565b60405180910390f35b610291600480360381019061028c9190613aee565b610e46565b60405161029f929190613bcd565b60405180910390f35b6102c260048036038101906102bd9190613bfd565b610fc6565b005b6102de60048036038101906102d991906138d1565b6110a3565b005b6102fa60048036038101906102f59190613c50565b611164565b005b61031660048036038101906103119190613c50565b611236565b6040516103239190613c9e565b60405180910390f35b61034660048036038101906103419190613cb9565b61126b565b604051610353919061381b565b60405180910390f35b61037660048036038101906103719190613cf9565b6112fa565b6040516103839190613dae565b60405180910390f35b6103a660048036038101906103a19190613c50565b61140a565b6040516103b39190613dd0565b60405180910390f35b6103d660048036038101906103d19190613df2565b6114fa565b005b6103f260048036038101906103ed9190613c50565b6115dc565b6040516103ff9190613dae565b60405180910390f35b610422600480360381019061041d9190613cf9565b6116cc565b005b61043e60048036038101906104399190613f96565b61178d565b005b61045a6004803603810190610455919061405d565b6118a6565b005b6104766004803603810190610471919061409d565b611a11565b005b610492600480360381019061048d919061412a565b611b7b565b60405161049f9190613dd0565b60405180910390f35b6104c260048036038101906104bd919061417d565b611c97565b6040516104cf919061381b565b60405180910390f35b6104f260048036038101906104ed9190614226565b611d3d565b6040516104ff919061437f565b60405180910390f35b610522600480360381019061051d9190613c50565b611d55565b60405161052f9190613dd0565b60405180910390f35b610552600480360381019061054d9190613c50565b611e45565b6040516105609291906143b0565b60405180910390f35b610583600480360381019061057e91906138d1565b611ef5565b005b61059f600480360381019061059a91906143d9565b612084565b005b6105bb60048036038101906105b69190613c50565b6120b0565b6040516105c8919061443c565b60405180910390f35b6105eb60048036038101906105e69190614457565b6120d7565b6040516105f8919061437f565b60405180910390f35b61061b600480360381019061061691906144b7565b6120ed565b005b6106376004803603810190610632919061450a565b61224a565b604051610644919061381b565b60405180910390f35b61066760048036038101906106629190613aee565b6122de565b6040516106749190613dd0565b60405180910390f35b6000610688826123e0565b9050919050565b826106998161245a565b6106a257600080fd5b6000806060806000806000808b815260200190815260200160002060009054906101000a900467ffffffffffffffff169050600061072e60008b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506126fb90919063ffffffff16565b90505b61073a81612725565b6108705760008761ffff1603610795578060400151965061075a8161273b565b94508460405160200161076d9190614586565b60405160208183030381529060405280519060200120925061078e81612772565b9350610862565b60006107a08261273b565b9050816040015161ffff168861ffff161415806107cd57506107cb81876127ab90919063ffffffff16565b155b15610860576108398c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508b8c886020015161082e91906145cc565b60008c51148a6127d2565b81604001519750816020015196508095508580519060200120935061085d82612772565b94505b505b61086b81612b55565b610731565b506000845111156108e2576108e18a85888c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050898a8f8f90506108d691906145cc565b60008a5114886127d2565b5b50505050505050505050565b846108f88161245a565b61090157600080fd5b8282600a60008060008b815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008981526020019081526020016000208787604051610971929190614630565b9081526020016040518091039020918261098c929190614860565b50848460405161099d929190614630565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a1878787876040516109db949392919061495d565b60405180910390a3505050505050565b6000806007600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008581526020019081526020016000206000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610afb5780915050610e40565b6000610b0685611236565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b4757600092505050610e40565b6000808273ffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000604051602401610b9291906149a7565b6040516020818303038152906040527f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610c1c9190614586565b600060405180830381855afa9150503d8060008114610c57576040519150601f19603f3d011682016040523d82523d6000602084013e610c5c565b606091505b5091509150811580610c6f575060208151105b80610cbd5750600060f81b81601f81518110610c8e57610c8d6149c2565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610ccf576000945050505050610e40565b8273ffffffffffffffffffffffffffffffffffffffff1686604051602401610cf791906149a7565b6040516020818303038152906040527f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610d819190614586565b600060405180830381855afa9150503d8060008114610dbc576040519150601f19603f3d011682016040523d82523d6000602084013e610dc1565b606091505b508092508193505050811580610dd8575060208151105b80610e265750600060f81b81601f81518110610df757610df66149c2565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610e38576000945050505050610e40565b829450505050505b92915050565b6000606060006001600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020600086815260200190815260200160002090506000600190505b848111610fa657600085821614158015610eeb575060008260008381526020019081526020016000208054610ee790614683565b9050115b15610f9a5780826000838152602001908152602001600020808054610f0f90614683565b80601f0160208091040260200160405190810160405280929190818152602001828054610f3b90614683565b8015610f885780601f10610f5d57610100808354040283529160200191610f88565b820191906000526020600020905b815481529060010190602001808311610f6b57829003601f168201915b50505050509050935093505050610fbf565b600181901b9050610eb3565b5060006040518060200160405280600081525092509250505b9250929050565b82610fd08161245a565b610fd957600080fd5b6040518060400160405280848152602001838152506009600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000820151816000015560208201518160010155905050837f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4684846040516110959291906143b0565b60405180910390a250505050565b826110ad8161245a565b6110b657600080fd5b82826003600080600089815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008781526020019081526020016000209182611123929190614a57565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051611156929190614b54565b60405180910390a250505050565b8061116e8161245a565b61117757600080fd5b600080838152602001908152602001600020600081819054906101000a900467ffffffffffffffff16809291906111ad90614b78565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050817fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db44460008085815260200190815260200160002060009054906101000a900467ffffffffffffffff1660405161122a919061443c565b60405180910390a25050565b60008061124483603c6122de565b90506000815103611259576000915050611266565b61126281612c9b565b9150505b919050565b6000806006600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020600084815260200190815260200160002060009054906101000a900461ffff1661ffff161415905092915050565b6060600a600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020838360405161136a929190614630565b9081526020016040518091039020805461138390614683565b80601f01602080910402602001604051908101604052809291908181526020018280546113af90614683565b80156113fc5780601f106113d1576101008083540402835291602001916113fc565b820191906000526020600020905b8154815290600101906020018083116113df57829003601f168201915b505050505090509392505050565b60606004600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020805461147590614683565b80601f01602080910402602001604051908101604052809291908181526020018280546114a190614683565b80156114ee5780601f106114c3576101008083540402835291602001916114ee565b820191906000526020600020905b8154815290600101906020018083116114d157829003601f168201915b50505050509050919050565b836115048161245a565b61150d57600080fd5b60008460018661151d91906145cc565b161461152857600080fd5b8282600160008060008a815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000888152602001908152602001600020600087815260200190815260200160002091826115a6929190614a57565b5083857faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe360405160405180910390a35050505050565b60606008600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000838152602001908152602001600020805461164790614683565b80601f016020809104026020016040519081016040528092919081815260200182805461167390614683565b80156116c05780601f10611695576101008083540402835291602001916116c0565b820191906000526020600020905b8154815290600101906020018083116116a357829003601f168201915b50505050509050919050565b826116d68161245a565b6116df57600080fd5b82826008600080600089815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000878152602001908152602001600020918261174c929190614860565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7848460405161177f929190614ba8565b60405180910390a250505050565b826117978161245a565b6117a057600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516117d2929190613bcd565b60405180910390a2603c830361182357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261180d84612c9b565b60405161181a9190614c21565b60405180910390a25b816002600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000858152602001908152602001600020908161189f9190614c3c565b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603611914576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190b90614d80565b60405180910390fd5b80600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611a05919061381b565b60405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603611a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7690614dec565b60405180910390fd5b80600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff16847ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a033604051611b6e9190613a9d565b60405180910390a4505050565b60606005600080600087815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020600084815260200190815260200160002060008361ffff1661ffff1681526020019081526020016000208054611c1090614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611c3c90614683565b8015611c895780601f10611c5e57610100808354040283529160200191611c89565b820191906000526020600020905b815481529060010190602001808311611c6c57829003601f168201915b505050505090509392505050565b6000600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690509392505050565b6060611d4d6000801b8484612cbe565b905092915050565b60606003600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008381526020019081526020016000208054611dc090614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611dec90614683565b8015611e395780601f10611e0e57610100808354040283529160200191611e39565b820191906000526020600020905b815481529060010190602001808311611e1c57829003601f168201915b50505050509050919050565b600080600080600085815260200190815260200160002060009054906101000a900467ffffffffffffffff169050600960008267ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060000154600960008367ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000868152602001908152602001600020600101549250925050915091565b82611eff8161245a565b611f0857600080fd5b600080600086815260200190815260200160002060009054906101000a900467ffffffffffffffff1690506000600460008367ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008781526020019081526020016000208054611f7890614683565b80601f0160208091040260200160405190810160405280929190818152602001828054611fa490614683565b8015611ff15780601f10611fc657610100808354040283529160200191611ff1565b820191906000526020600020905b815481529060010190602001808311611fd457829003601f168201915b505050505090508484600460008567ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206000898152602001908152602001600020918261203f929190614a57565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161207493929190614e0c565b60405180910390a2505050505050565b8161208e8161245a565b61209757600080fd5b6120ab83603c6120a685612e87565b61178d565b505050565b60006020528060005260406000206000915054906101000a900467ffffffffffffffff1681565b60606120e4848484612cbe565b90509392505050565b826120f78161245a565b61210057600080fd5b816007600080600088815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008681526020019081526020016000206000857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa8460405161223c9190613a9d565b60405180910390a350505050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60606002600080600086815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008481526020019081526020016000206000838152602001908152602001600020805461235a90614683565b80601f016020809104026020016040519081016040528092919081815260200182805461238690614683565b80156123d35780601f106123a8576101008083540402835291602001916123d3565b820191906000526020600020905b8154815290600101906020018083116123b657829003601f168201915b5050505050905092915050565b60007f59d1d43c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612453575061245282612eeb565b5b9050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061250157507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1561250f57600190506126f6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b815260040161256a9190614e45565b602060405180830381865afa158015612587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ab9190614e75565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036126a0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b815260040161265c9190614ea2565b602060405180830381865afa158015612679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061269d9190614e75565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806126e057506126df813361224a565b5b806126f257506126f1818433611c97565b5b9150505b919050565b6127036136bf565b828160000181905250818160c001818152505061271f81612b55565b92915050565b6000816000015151826020015110159050919050565b606061276b826020015161275784600001518560200151612f65565b8460000151612fe19092919063ffffffff16565b9050919050565b60606127a48260a001518360a001518460c0015161279091906145cc565b8460000151612fe19092919063ffffffff16565b9050919050565b6000815183511480156127ca57506127c98360008460008751613076565b5b905092915050565b60008780519060200120905060006127f5868689612fe19092919063ffffffff16565b905083156129a3576000600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff168152602001908152602001600020805461286c90614683565b9050146128f657600660008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b81526020019081526020016000206000838152602001908152602001600020600081819054906101000a900461ffff16809291906128da90614ebd565b91906101000a81548161ffff021916908361ffff160217905550505b600560008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b8152602001908152602001600020600083815260200190815260200160002060008961ffff1661ffff1681526020019081526020016000206000612964919061370a565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051612996929190614ef5565b60405180910390a2612b49565b6000600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff1681526020019081526020016000208054612a1290614683565b905003612a9c57600660008467ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008b81526020019081526020016000206000838152602001908152602001600020600081819054906101000a900461ffff1680929190612a8090614f25565b91906101000a81548161ffff021916908361ffff160217905550505b80600560008567ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008c8152602001908152602001600020600084815260200190815260200160002060008a61ffff1661ffff1681526020019081526020016000209081612b0b9190614c3c565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051612b4093929190614f4f565b60405180910390a25b50505050505050505050565b8060c0015181602001818152505080600001515181602001511015612c98576000612b8882600001518360200151612f65565b8260200151612b979190614f94565b9050612bb081836000015161309a90919063ffffffff16565b826040019061ffff16908161ffff1681525050600281612bd09190614f94565b9050612be981836000015161309a90919063ffffffff16565b826060019061ffff16908161ffff1681525050600281612c099190614f94565b9050612c228183600001516130c990919063ffffffff16565b826080019063ffffffff16908163ffffffff1681525050600481612c469190614f94565b90506000612c6182846000015161309a90919063ffffffff16565b61ffff169050600282612c749190614f94565b9150818360a00181815250508082612c8c9190614f94565b8360c001818152505050505b50565b60006014825114612cab57600080fd5b600c6101000a6020830151049050919050565b60608282905067ffffffffffffffff811115612cdd57612cdc613e6b565b5b604051908082528060200260200182016040528015612d1057816020015b6060815260200190600190039081612cfb5790505b50905060005b83839050811015612e7f576000801b8514612db5576000848483818110612d4057612d3f6149c2565b5b9050602002810190612d529190614fd7565b600490602492612d6493929190615044565b90612d6f919061507f565b9050858114612db3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612daa90615150565b60405180910390fd5b505b6000803073ffffffffffffffffffffffffffffffffffffffff16868685818110612de257612de16149c2565b5b9050602002810190612df49190614fd7565b604051612e02929190615195565b600060405180830381855af49150503d8060008114612e3d576040519150601f19603f3d011682016040523d82523d6000602084013e612e42565b606091505b509150915081612e5157600080fd5b80848481518110612e6557612e646149c2565b5b602002602001018190525050508080600101915050612d16565b509392505050565b6060601467ffffffffffffffff811115612ea457612ea3613e6b565b5b6040519080825280601f01601f191660200182016040528015612ed65781602001600182028036833780820191505090505b509050600c6101000a82026020820152919050565b60007fc8690233000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612f5e5750612f5d826130fa565b5b9050919050565b6000808290505b600115612fcc5783518110612f8457612f836151ae565b5b6000612f99828661317490919063ffffffff16565b60ff169050600181612fab9190614f94565b82612fb69190614f94565b915060008103612fc65750612fcc565b50612f6c565b8281612fd891906145cc565b91505092915050565b606083518284612ff19190614f94565b1115612ffc57600080fd5b60008267ffffffffffffffff81111561301857613017613e6b565b5b6040519080825280601f01601f19166020018201604052801561304a5781602001600182028036833780820191505090505b509050600080602083019150856020880101905061306982828761319f565b8293505050509392505050565b6000613083848484613203565b61308e878785613203565b14905095945050505050565b600082516002836130ab9190614f94565b11156130b657600080fd5b61ffff8260028501015116905092915050565b600082516004836130da9190614f94565b11156130e557600080fd5b63ffffffff8260048501015116905092915050565b60007f691f3431000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061316d575061316c8261322f565b5b9050919050565b6000828281518110613189576131886149c2565b5b602001015160f81c60f81b60f81c905092915050565b5b602081106131de57815183526020836131b99190614f94565b92506020826131c89190614f94565b91506020816131d791906145cc565b90506131a0565b60006001826020036101000a0390508019835116818551168181178652505050505050565b6000835182846132139190614f94565b111561321e57600080fd5b818360208601012090509392505050565b60007f124a319c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806132a257506132a1826132a9565b5b9050919050565b60007fa8fa5682000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061337457507f5c98042b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061338457506133838261338b565b5b9050919050565b60007fbc1c58d1000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806133fe57506133fd82613405565b5b9050919050565b60007f3b3b57de000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806134d057507ff1cb7e06000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806134e057506134df826134e7565b5b9050919050565b60007f2203ab56000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061355a575061355982613561565b5b9050919050565b60007fd700ff33000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806135d457506135d3826135db565b5b9050919050565b60007f4fbf0433000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061364e575061364d82613655565b5b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b50805461371690614683565b6000825580601f106137285750613747565b601f016020900490600052602060002090810190613746919061374a565b5b50565b5b8082111561376357600081600090555060010161374b565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6137b08161377b565b81146137bb57600080fd5b50565b6000813590506137cd816137a7565b92915050565b6000602082840312156137e9576137e8613771565b5b60006137f7848285016137be565b91505092915050565b60008115159050919050565b61381581613800565b82525050565b6000602082019050613830600083018461380c565b92915050565b6000819050919050565b61384981613836565b811461385457600080fd5b50565b60008135905061386681613840565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126138915761389061386c565b5b8235905067ffffffffffffffff8111156138ae576138ad613871565b5b6020830191508360018202830111156138ca576138c9613876565b5b9250929050565b6000806000604084860312156138ea576138e9613771565b5b60006138f886828701613857565b935050602084013567ffffffffffffffff81111561391957613918613776565b5b6139258682870161387b565b92509250509250925092565b60008083601f8401126139475761394661386c565b5b8235905067ffffffffffffffff81111561396457613963613871565b5b6020830191508360018202830111156139805761397f613876565b5b9250929050565b6000806000806000606086880312156139a3576139a2613771565b5b60006139b188828901613857565b955050602086013567ffffffffffffffff8111156139d2576139d1613776565b5b6139de88828901613931565b9450945050604086013567ffffffffffffffff811115613a0157613a00613776565b5b613a0d88828901613931565b92509250509295509295909350565b60008060408385031215613a3357613a32613771565b5b6000613a4185828601613857565b9250506020613a52858286016137be565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613a8782613a5c565b9050919050565b613a9781613a7c565b82525050565b6000602082019050613ab26000830184613a8e565b92915050565b6000819050919050565b613acb81613ab8565b8114613ad657600080fd5b50565b600081359050613ae881613ac2565b92915050565b60008060408385031215613b0557613b04613771565b5b6000613b1385828601613857565b9250506020613b2485828601613ad9565b9150509250929050565b613b3781613ab8565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613b77578082015181840152602081019050613b5c565b60008484015250505050565b6000601f19601f8301169050919050565b6000613b9f82613b3d565b613ba98185613b48565b9350613bb9818560208601613b59565b613bc281613b83565b840191505092915050565b6000604082019050613be26000830185613b2e565b8181036020830152613bf48184613b94565b90509392505050565b600080600060608486031215613c1657613c15613771565b5b6000613c2486828701613857565b9350506020613c3586828701613857565b9250506040613c4686828701613857565b9150509250925092565b600060208284031215613c6657613c65613771565b5b6000613c7484828501613857565b91505092915050565b6000613c8882613a5c565b9050919050565b613c9881613c7d565b82525050565b6000602082019050613cb36000830184613c8f565b92915050565b60008060408385031215613cd057613ccf613771565b5b6000613cde85828601613857565b9250506020613cef85828601613857565b9150509250929050565b600080600060408486031215613d1257613d11613771565b5b6000613d2086828701613857565b935050602084013567ffffffffffffffff811115613d4157613d40613776565b5b613d4d86828701613931565b92509250509250925092565b600081519050919050565b600082825260208201905092915050565b6000613d8082613d59565b613d8a8185613d64565b9350613d9a818560208601613b59565b613da381613b83565b840191505092915050565b60006020820190508181036000830152613dc88184613d75565b905092915050565b60006020820190508181036000830152613dea8184613b94565b905092915050565b60008060008060608587031215613e0c57613e0b613771565b5b6000613e1a87828801613857565b9450506020613e2b87828801613ad9565b935050604085013567ffffffffffffffff811115613e4c57613e4b613776565b5b613e588782880161387b565b925092505092959194509250565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613ea382613b83565b810181811067ffffffffffffffff82111715613ec257613ec1613e6b565b5b80604052505050565b6000613ed5613767565b9050613ee18282613e9a565b919050565b600067ffffffffffffffff821115613f0157613f00613e6b565b5b613f0a82613b83565b9050602081019050919050565b82818337600083830152505050565b6000613f39613f3484613ee6565b613ecb565b905082815260208101848484011115613f5557613f54613e66565b5b613f60848285613f17565b509392505050565b600082601f830112613f7d57613f7c61386c565b5b8135613f8d848260208601613f26565b91505092915050565b600080600060608486031215613faf57613fae613771565b5b6000613fbd86828701613857565b9350506020613fce86828701613ad9565b925050604084013567ffffffffffffffff811115613fef57613fee613776565b5b613ffb86828701613f68565b9150509250925092565b61400e81613a7c565b811461401957600080fd5b50565b60008135905061402b81614005565b92915050565b61403a81613800565b811461404557600080fd5b50565b60008135905061405781614031565b92915050565b6000806040838503121561407457614073613771565b5b60006140828582860161401c565b925050602061409385828601614048565b9150509250929050565b6000806000606084860312156140b6576140b5613771565b5b60006140c486828701613857565b93505060206140d58682870161401c565b92505060406140e686828701614048565b9150509250925092565b600061ffff82169050919050565b614107816140f0565b811461411257600080fd5b50565b600081359050614124816140fe565b92915050565b60008060006060848603121561414357614142613771565b5b600061415186828701613857565b935050602061416286828701613857565b925050604061417386828701614115565b9150509250925092565b60008060006060848603121561419657614195613771565b5b60006141a48682870161401c565b93505060206141b586828701613857565b92505060406141c68682870161401c565b9150509250925092565b60008083601f8401126141e6576141e561386c565b5b8235905067ffffffffffffffff81111561420357614202613871565b5b60208301915083602082028301111561421f5761421e613876565b5b9250929050565b6000806020838503121561423d5761423c613771565b5b600083013567ffffffffffffffff81111561425b5761425a613776565b5b614267858286016141d0565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b60006142bb82613b3d565b6142c5818561429f565b93506142d5818560208601613b59565b6142de81613b83565b840191505092915050565b60006142f583836142b0565b905092915050565b6000602082019050919050565b600061431582614273565b61431f818561427e565b9350836020820285016143318561428f565b8060005b8581101561436d578484038952815161434e85826142e9565b9450614359836142fd565b925060208a01995050600181019050614335565b50829750879550505050505092915050565b60006020820190508181036000830152614399818461430a565b905092915050565b6143aa81613836565b82525050565b60006040820190506143c560008301856143a1565b6143d260208301846143a1565b9392505050565b600080604083850312156143f0576143ef613771565b5b60006143fe85828601613857565b925050602061440f8582860161401c565b9150509250929050565b600067ffffffffffffffff82169050919050565b61443681614419565b82525050565b6000602082019050614451600083018461442d565b92915050565b6000806000604084860312156144705761446f613771565b5b600061447e86828701613857565b935050602084013567ffffffffffffffff81111561449f5761449e613776565b5b6144ab868287016141d0565b92509250509250925092565b6000806000606084860312156144d0576144cf613771565b5b60006144de86828701613857565b93505060206144ef868287016137be565b92505060406145008682870161401c565b9150509250925092565b6000806040838503121561452157614520613771565b5b600061452f8582860161401c565b92505060206145408582860161401c565b9150509250929050565b600081905092915050565b600061456082613b3d565b61456a818561454a565b935061457a818560208601613b59565b80840191505092915050565b60006145928284614555565b915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006145d782613ab8565b91506145e283613ab8565b92508282039050818111156145fa576145f961459d565b5b92915050565b600081905092915050565b60006146178385614600565b9350614624838584613f17565b82840190509392505050565b600061463d82848661460b565b91508190509392505050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061469b57607f821691505b6020821081036146ae576146ad614654565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026147167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826146d9565b61472086836146d9565b95508019841693508086168417925050509392505050565b6000819050919050565b600061475d61475861475384613ab8565b614738565b613ab8565b9050919050565b6000819050919050565b61477783614742565b61478b61478382614764565b8484546146e6565b825550505050565b600090565b6147a0614793565b6147ab81848461476e565b505050565b5b818110156147cf576147c4600082614798565b6001810190506147b1565b5050565b601f821115614814576147e5816146b4565b6147ee846146c9565b810160208510156147fd578190505b614811614809856146c9565b8301826147b0565b50505b505050565b600082821c905092915050565b600061483760001984600802614819565b1980831691505092915050565b60006148508383614826565b9150826002028217905092915050565b61486a8383614649565b67ffffffffffffffff81111561488357614882613e6b565b5b61488d8254614683565b6148988282856147d3565b6000601f8311600181146148c757600084156148b5578287013590505b6148bf8582614844565b865550614927565b601f1984166148d5866146b4565b60005b828110156148fd578489013582556001820191506020850194506020810190506148d8565b8683101561491a5784890135614916601f891682614826565b8355505b6001600288020188555050505b50505050505050565b600061493c8385613d64565b9350614949838584613f17565b61495283613b83565b840190509392505050565b60006040820190508181036000830152614978818688614930565b9050818103602083015261498d818486614930565b905095945050505050565b6149a18161377b565b82525050565b60006020820190506149bc6000830184614998565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082905092915050565b60008190508160005260206000209050919050565b601f821115614a5257614a23816149fc565b614a2c846146c9565b81016020851015614a3b578190505b614a4f614a47856146c9565b8301826147b0565b50505b505050565b614a6183836149f1565b67ffffffffffffffff811115614a7a57614a79613e6b565b5b614a848254614683565b614a8f828285614a11565b6000601f831160018114614abe5760008415614aac578287013590505b614ab68582614844565b865550614b1e565b601f198416614acc866149fc565b60005b82811015614af457848901358255600182019150602085019450602081019050614acf565b86831015614b115784890135614b0d601f891682614826565b8355505b6001600288020188555050505b50505050505050565b6000614b338385613b48565b9350614b40838584613f17565b614b4983613b83565b840190509392505050565b60006020820190508181036000830152614b6f818486614b27565b90509392505050565b6000614b8382614419565b915067ffffffffffffffff8203614b9d57614b9c61459d565b5b600182019050919050565b60006020820190508181036000830152614bc3818486614930565b90509392505050565b6000614be7614be2614bdd84613a5c565b614738565b613a5c565b9050919050565b6000614bf982614bcc565b9050919050565b6000614c0b82614bee565b9050919050565b614c1b81614c00565b82525050565b6000602082019050614c366000830184614c12565b92915050565b614c4582613b3d565b67ffffffffffffffff811115614c5e57614c5d613e6b565b5b614c688254614683565b614c73828285614a11565b600060209050601f831160018114614ca65760008415614c94578287015190505b614c9e8582614844565b865550614d06565b601f198416614cb4866149fc565b60005b82811015614cdc57848901518255600182019150602085019450602081019050614cb7565b86831015614cf95784890151614cf5601f891682614826565b8355505b6001600288020188555050505b505050505050565b7f455243313135353a2073657474696e6720617070726f76616c2073746174757360008201527f20666f722073656c660000000000000000000000000000000000000000000000602082015250565b6000614d6a602983613d64565b9150614d7582614d0e565b604082019050919050565b60006020820190508181036000830152614d9981614d5d565b9050919050565b7f53657474696e672064656c65676174652073746174757320666f722073656c66600082015250565b6000614dd6602083613d64565b9150614de182614da0565b602082019050919050565b60006020820190508181036000830152614e0581614dc9565b9050919050565b60006040820190508181036000830152614e268186613b94565b90508181036020830152614e3b818486614b27565b9050949350505050565b6000602082019050614e5a60008301846143a1565b92915050565b600081519050614e6f81614005565b92915050565b600060208284031215614e8b57614e8a613771565b5b6000614e9984828501614e60565b91505092915050565b6000602082019050614eb76000830184613b2e565b92915050565b6000614ec8826140f0565b915060008203614edb57614eda61459d565b5b600182039050919050565b614eef816140f0565b82525050565b60006040820190508181036000830152614f0f8185613b94565b9050614f1e6020830184614ee6565b9392505050565b6000614f30826140f0565b915061ffff8203614f4457614f4361459d565b5b600182019050919050565b60006060820190508181036000830152614f698186613b94565b9050614f786020830185614ee6565b8181036040830152614f8a8184613b94565b9050949350505050565b6000614f9f82613ab8565b9150614faa83613ab8565b9250828201905080821115614fc257614fc161459d565b5b92915050565b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112614ff457614ff3614fc8565b5b80840192508235915067ffffffffffffffff82111561501657615015614fcd565b5b60208301925060018202360383131561503257615031614fd2565b5b509250929050565b600080fd5b600080fd5b600080858511156150585761505761503a565b5b838611156150695761506861503f565b5b6001850283019150848603905094509492505050565b600061508b83836149f1565b826150968135613836565b925060208210156150d6576150d17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026146d9565b831692505b505092915050565b7f6d756c746963616c6c3a20416c6c207265636f726473206d757374206861766560008201527f2061206d61746368696e67206e616d6568617368000000000000000000000000602082015250565b600061513a603483613d64565b9150615145826150de565b604082019050919050565b600060208201905081810360008301526151698161512d565b9050919050565b600061517c838561454a565b9350615189838584613f17565b82840190509392505050565b60006151a2828486615170565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220b736a7783453517e20855927c0ae14ed7e53fa85e5e33b7627f2627a0b3069aa64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1DA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8B95DD71 GT PUSH2 0x104 JUMPI DUP1 PUSH4 0xC8690233 GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE32954EB GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE32954EB EQ PUSH2 0x5D1 JUMPI DUP1 PUSH4 0xE59D895D EQ PUSH2 0x601 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x61D JUMPI DUP1 PUSH4 0xF1CB7E06 EQ PUSH2 0x64D JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0xC8690233 EQ PUSH2 0x538 JUMPI DUP1 PUSH4 0xCE3DECDC EQ PUSH2 0x569 JUMPI DUP1 PUSH4 0xD5FA2B00 EQ PUSH2 0x585 JUMPI DUP1 PUSH4 0xD700FF33 EQ PUSH2 0x5A1 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0xA8FA5682 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA8FA5682 EQ PUSH2 0x478 JUMPI DUP1 PUSH4 0xA9784B3E EQ PUSH2 0x4A8 JUMPI DUP1 PUSH4 0xAC9650D8 EQ PUSH2 0x4D8 JUMPI DUP1 PUSH4 0xBC1C58D1 EQ PUSH2 0x508 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x8B95DD71 EQ PUSH2 0x424 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x440 JUMPI DUP1 PUSH4 0xA4B91A01 EQ PUSH2 0x45C JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x3603D758 GT PUSH2 0x17C JUMPI DUP1 PUSH4 0x5C98042B GT PUSH2 0x14B JUMPI DUP1 PUSH4 0x5C98042B EQ PUSH2 0x38C JUMPI DUP1 PUSH4 0x623195B0 EQ PUSH2 0x3BC JUMPI DUP1 PUSH4 0x691F3431 EQ PUSH2 0x3D8 JUMPI DUP1 PUSH4 0x77372213 EQ PUSH2 0x408 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x3603D758 EQ PUSH2 0x2E0 JUMPI DUP1 PUSH4 0x3B3B57DE EQ PUSH2 0x2FC JUMPI DUP1 PUSH4 0x4CBF6BA4 EQ PUSH2 0x32C JUMPI DUP1 PUSH4 0x59D1D43C EQ PUSH2 0x35C JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x124A319C GT PUSH2 0x1B8 JUMPI DUP1 PUSH4 0x124A319C EQ PUSH2 0x247 JUMPI DUP1 PUSH4 0x2203AB56 EQ PUSH2 0x277 JUMPI DUP1 PUSH4 0x29CD62EA EQ PUSH2 0x2A8 JUMPI DUP1 PUSH4 0x304E6ADE EQ PUSH2 0x2C4 JUMPI PUSH2 0x1DA JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x1DF JUMPI DUP1 PUSH4 0xAF179D7 EQ PUSH2 0x20F JUMPI DUP1 PUSH4 0x10F13A8C EQ PUSH2 0x22B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1F9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1F4 SWAP2 SWAP1 PUSH2 0x37D3 JUMP JUMPDEST PUSH2 0x67D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x206 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x229 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x224 SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x68F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x245 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x240 SWAP2 SWAP1 PUSH2 0x3987 JUMP JUMPDEST PUSH2 0x8EE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x261 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x25C SWAP2 SWAP1 PUSH2 0x3A1C JUMP JUMPDEST PUSH2 0x9EB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x28C SWAP2 SWAP1 PUSH2 0x3AEE JUMP JUMPDEST PUSH2 0xE46 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29F SWAP3 SWAP2 SWAP1 PUSH2 0x3BCD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BD SWAP2 SWAP1 PUSH2 0x3BFD JUMP JUMPDEST PUSH2 0xFC6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D9 SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x10A3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2FA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F5 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1164 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x316 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x311 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1236 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x323 SWAP2 SWAP1 PUSH2 0x3C9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x346 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x341 SWAP2 SWAP1 PUSH2 0x3CB9 JUMP JUMPDEST PUSH2 0x126B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x353 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x376 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x371 SWAP2 SWAP1 PUSH2 0x3CF9 JUMP JUMPDEST PUSH2 0x12FA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x383 SWAP2 SWAP1 PUSH2 0x3DAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3A6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A1 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x140A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3B3 SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3D6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3D1 SWAP2 SWAP1 PUSH2 0x3DF2 JUMP JUMPDEST PUSH2 0x14FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3ED SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x15DC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FF SWAP2 SWAP1 PUSH2 0x3DAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x422 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41D SWAP2 SWAP1 PUSH2 0x3CF9 JUMP JUMPDEST PUSH2 0x16CC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x43E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x439 SWAP2 SWAP1 PUSH2 0x3F96 JUMP JUMPDEST PUSH2 0x178D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x45A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x455 SWAP2 SWAP1 PUSH2 0x405D JUMP JUMPDEST PUSH2 0x18A6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x476 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0x409D JUMP JUMPDEST PUSH2 0x1A11 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x492 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x48D SWAP2 SWAP1 PUSH2 0x412A JUMP JUMPDEST PUSH2 0x1B7B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x49F SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4C2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4BD SWAP2 SWAP1 PUSH2 0x417D JUMP JUMPDEST PUSH2 0x1C97 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4CF SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4ED SWAP2 SWAP1 PUSH2 0x4226 JUMP JUMPDEST PUSH2 0x1D3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4FF SWAP2 SWAP1 PUSH2 0x437F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x522 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x51D SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1D55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x52F SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x552 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x54D SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x1E45 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x560 SWAP3 SWAP2 SWAP1 PUSH2 0x43B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x583 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x57E SWAP2 SWAP1 PUSH2 0x38D1 JUMP JUMPDEST PUSH2 0x1EF5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x59F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x59A SWAP2 SWAP1 PUSH2 0x43D9 JUMP JUMPDEST PUSH2 0x2084 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B6 SWAP2 SWAP1 PUSH2 0x3C50 JUMP JUMPDEST PUSH2 0x20B0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C8 SWAP2 SWAP1 PUSH2 0x443C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5EB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E6 SWAP2 SWAP1 PUSH2 0x4457 JUMP JUMPDEST PUSH2 0x20D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5F8 SWAP2 SWAP1 PUSH2 0x437F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x61B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x616 SWAP2 SWAP1 PUSH2 0x44B7 JUMP JUMPDEST PUSH2 0x20ED JUMP JUMPDEST STOP JUMPDEST PUSH2 0x637 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x632 SWAP2 SWAP1 PUSH2 0x450A JUMP JUMPDEST PUSH2 0x224A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x644 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x667 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x662 SWAP2 SWAP1 PUSH2 0x3AEE JUMP JUMPDEST PUSH2 0x22DE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x674 SWAP2 SWAP1 PUSH2 0x3DD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x688 DUP3 PUSH2 0x23E0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0x699 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x6A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x60 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH2 0x72E PUSH1 0x0 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x26FB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0x73A DUP2 PUSH2 0x2725 JUMP JUMPDEST PUSH2 0x870 JUMPI PUSH1 0x0 DUP8 PUSH2 0xFFFF AND SUB PUSH2 0x795 JUMPI DUP1 PUSH1 0x40 ADD MLOAD SWAP7 POP PUSH2 0x75A DUP2 PUSH2 0x273B JUMP JUMPDEST SWAP5 POP DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x76D SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP3 POP PUSH2 0x78E DUP2 PUSH2 0x2772 JUMP JUMPDEST SWAP4 POP PUSH2 0x862 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A0 DUP3 PUSH2 0x273B JUMP JUMPDEST SWAP1 POP DUP2 PUSH1 0x40 ADD MLOAD PUSH2 0xFFFF AND DUP9 PUSH2 0xFFFF AND EQ ISZERO DUP1 PUSH2 0x7CD JUMPI POP PUSH2 0x7CB DUP2 DUP8 PUSH2 0x27AB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x860 JUMPI PUSH2 0x839 DUP13 DUP8 DUP11 DUP15 DUP15 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP12 DUP13 DUP9 PUSH1 0x20 ADD MLOAD PUSH2 0x82E SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST PUSH1 0x0 DUP13 MLOAD EQ DUP11 PUSH2 0x27D2 JUMP JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD SWAP8 POP DUP2 PUSH1 0x20 ADD MLOAD SWAP7 POP DUP1 SWAP6 POP DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP4 POP PUSH2 0x85D DUP3 PUSH2 0x2772 JUMP JUMPDEST SWAP5 POP JUMPDEST POP JUMPDEST PUSH2 0x86B DUP2 PUSH2 0x2B55 JUMP JUMPDEST PUSH2 0x731 JUMP JUMPDEST POP PUSH1 0x0 DUP5 MLOAD GT ISZERO PUSH2 0x8E2 JUMPI PUSH2 0x8E1 DUP11 DUP6 DUP9 DUP13 DUP13 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP10 DUP11 DUP16 DUP16 SWAP1 POP PUSH2 0x8D6 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST PUSH1 0x0 DUP11 MLOAD EQ DUP9 PUSH2 0x27D2 JUMP JUMPDEST JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP5 PUSH2 0x8F8 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x901 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0xA PUSH1 0x0 DUP1 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x971 SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 SWAP2 DUP3 PUSH2 0x98C SWAP3 SWAP2 SWAP1 PUSH2 0x4860 JUMP JUMPDEST POP DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x99D SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP7 PUSH32 0x448BC014F1536726CF8D54FF3D6481ED3CBC683C2591CA204274009AFA09B1A1 DUP8 DUP8 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x9DB SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x495D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x7 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xAFB JUMPI DUP1 SWAP2 POP POP PUSH2 0xE40 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB06 DUP6 PUSH2 0x1236 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xB47 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0xE40 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0xB92 SWAP2 SWAP1 PUSH2 0x49A7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0xC1C SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xC57 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xC5C JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 ISZERO DUP1 PUSH2 0xC6F JUMPI POP PUSH1 0x20 DUP2 MLOAD LT JUMPDEST DUP1 PUSH2 0xCBD JUMPI POP PUSH1 0x0 PUSH1 0xF8 SHL DUP2 PUSH1 0x1F DUP2 MLOAD DUP2 LT PUSH2 0xC8E JUMPI PUSH2 0xC8D PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST ISZERO PUSH2 0xCCF JUMPI PUSH1 0x0 SWAP5 POP POP POP POP POP PUSH2 0xE40 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0xCF7 SWAP2 SWAP1 PUSH2 0x49A7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0xD81 SWAP2 SWAP1 PUSH2 0x4586 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xDBC JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xDC1 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP DUP1 SWAP3 POP DUP2 SWAP4 POP POP POP DUP2 ISZERO DUP1 PUSH2 0xDD8 JUMPI POP PUSH1 0x20 DUP2 MLOAD LT JUMPDEST DUP1 PUSH2 0xE26 JUMPI POP PUSH1 0x0 PUSH1 0xF8 SHL DUP2 PUSH1 0x1F DUP2 MLOAD DUP2 LT PUSH2 0xDF7 JUMPI PUSH2 0xDF6 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST ISZERO PUSH2 0xE38 JUMPI PUSH1 0x0 SWAP5 POP POP POP POP POP PUSH2 0xE40 JUMP JUMPDEST DUP3 SWAP5 POP POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP5 DUP2 GT PUSH2 0xFA6 JUMPI PUSH1 0x0 DUP6 DUP3 AND EQ ISZERO DUP1 ISZERO PUSH2 0xEEB JUMPI POP PUSH1 0x0 DUP3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0xEE7 SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP GT JUMPDEST ISZERO PUSH2 0xF9A JUMPI DUP1 DUP3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 DUP1 SLOAD PUSH2 0xF0F SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xF3B SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0xF88 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xF5D JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xF88 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xF6B JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 POP SWAP4 POP POP POP PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SHL SWAP1 POP PUSH2 0xEB3 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0xFD0 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0xFD9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE POP PUSH1 0x9 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD SSTORE PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SSTORE SWAP1 POP POP DUP4 PUSH32 0x1D6F5E03D3F63EB58751986629A5439BAEE5079FF04F345BECB66E23EB154E46 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x1095 SWAP3 SWAP2 SWAP1 PUSH2 0x43B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x10AD DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x10B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x1123 SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP4 PUSH32 0xE379C1624ED7E714CC0937528A32359D69D5281337765313DBA4E081B72D7578 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x1156 SWAP3 SWAP2 SWAP1 PUSH2 0x4B54 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP1 PUSH2 0x116E DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x1177 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x11AD SWAP1 PUSH2 0x4B78 JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP DUP2 PUSH32 0xC6621CCB8F3F5A04BB6502154B2CAF6ADF5983FE76DFEF1CFC9C42E3579DB444 PUSH1 0x0 DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x40 MLOAD PUSH2 0x122A SWAP2 SWAP1 PUSH2 0x443C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1244 DUP4 PUSH1 0x3C PUSH2 0x22DE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x1259 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1266 JUMP JUMPDEST PUSH2 0x1262 DUP2 PUSH2 0x2C9B JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x6 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND PUSH2 0xFFFF AND EQ ISZERO SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xA PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH2 0x136A SWAP3 SWAP2 SWAP1 PUSH2 0x4630 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP1 SLOAD PUSH2 0x1383 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x13AF SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13FC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13D1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13FC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x13DF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1475 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x14A1 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14EE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x14C3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14EE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x14D1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP4 PUSH2 0x1504 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x150D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 DUP7 PUSH2 0x151D SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST AND EQ PUSH2 0x1528 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP11 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x15A6 SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP4 DUP6 PUSH32 0xAA121BBEEF5F32F5961A2A28966E769023910FC9479059EE3495D4C1A696EFE3 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x8 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1647 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1673 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x16C0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1695 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x16C0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x16A3 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 PUSH2 0x16D6 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x16DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 DUP3 PUSH1 0x8 PUSH1 0x0 DUP1 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x174C SWAP3 SWAP2 SWAP1 PUSH2 0x4860 JUMP JUMPDEST POP DUP4 PUSH32 0xB7D29E911041E8D9B843369E890BCB72C9388692BA48B65AC54E7214C4C348F7 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x177F SWAP3 SWAP2 SWAP1 PUSH2 0x4BA8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x1797 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x17A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH32 0x65412581168E88A1E60C6459D7F44AE83AD0832E670826C05A4E2476B57AF752 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0x17D2 SWAP3 SWAP2 SWAP1 PUSH2 0x3BCD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x3C DUP4 SUB PUSH2 0x1823 JUMPI DUP4 PUSH32 0x52D7D861F09AB3D26239D492E8968629F95E9E318CF0B73BFDDC441522A15FD2 PUSH2 0x180D DUP5 PUSH2 0x2C9B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x181A SWAP2 SWAP1 PUSH2 0x4C21 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST DUP2 PUSH1 0x2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x189F SWAP2 SWAP1 PUSH2 0x4C3C JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1914 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x190B SWAP1 PUSH2 0x4D80 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xB PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1A05 SWAP2 SWAP1 PUSH2 0x381B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1A7F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A76 SWAP1 PUSH2 0x4DEC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xC PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 ISZERO ISZERO DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH32 0xF0DDB3B04746704017F9AA8BD728FCC2C1D11675041205350018915F5E4750A0 CALLER PUSH1 0x40 MLOAD PUSH2 0x1B6E SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1C10 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1C3C SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1C89 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1C5E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1C89 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1C6C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1D4D PUSH1 0x0 DUP1 SHL DUP5 DUP5 PUSH2 0x2CBE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1DC0 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1DEC SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1E39 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1E0E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1E39 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1E1C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x9 PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x9 PUSH1 0x0 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD SWAP3 POP SWAP3 POP POP SWAP2 POP SWAP2 JUMP JUMPDEST DUP3 PUSH2 0x1EFF DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x1F08 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1F78 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1FA4 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1FF1 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1FC6 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1FF1 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1FD4 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP5 DUP5 PUSH1 0x4 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x203F SWAP3 SWAP2 SWAP1 PUSH2 0x4A57 JUMP JUMPDEST POP DUP6 PUSH32 0x8F15ED4B723EF428F250961DA8315675B507046737E19319FC1A4D81BFE87F85 DUP3 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x2074 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4E0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP POP JUMP JUMPDEST DUP2 PUSH2 0x208E DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x2097 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x20AB DUP4 PUSH1 0x3C PUSH2 0x20A6 DUP6 PUSH2 0x2E87 JUMP JUMPDEST PUSH2 0x178D JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x20E4 DUP5 DUP5 DUP5 PUSH2 0x2CBE JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 PUSH2 0x20F7 DUP2 PUSH2 0x245A JUMP JUMPDEST PUSH2 0x2100 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x7 PUSH1 0x0 DUP1 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP6 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP5 PUSH32 0x7C69F06BEA0BDEF565B709E93A147836B0063BA2DD89F02D0B7E8D931E6A6DAA DUP5 PUSH1 0x40 MLOAD PUSH2 0x223C SWAP2 SWAP1 PUSH2 0x3A9D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xB PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x2 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x235A SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2386 SWAP1 PUSH2 0x4683 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23D3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x23A8 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23D3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x23B6 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x59D1D43C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x2453 JUMPI POP PUSH2 0x2452 DUP3 PUSH2 0x2EEB JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x2501 JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x250F JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x26F6 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x256A SWAP2 SWAP1 PUSH2 0x4E45 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2587 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x25AB SWAP2 SWAP1 PUSH2 0x4E75 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x26A0 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP5 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x265C SWAP2 SWAP1 PUSH2 0x4EA2 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2679 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x269D SWAP2 SWAP1 PUSH2 0x4E75 JUMP JUMPDEST SWAP1 POP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x26E0 JUMPI POP PUSH2 0x26DF DUP2 CALLER PUSH2 0x224A JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x26F2 JUMPI POP PUSH2 0x26F1 DUP2 DUP5 CALLER PUSH2 0x1C97 JUMP JUMPDEST JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2703 PUSH2 0x36BF JUMP JUMPDEST DUP3 DUP2 PUSH1 0x0 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x271F DUP2 PUSH2 0x2B55 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD MLOAD DUP3 PUSH1 0x20 ADD MLOAD LT ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x276B DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x2757 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x20 ADD MLOAD PUSH2 0x2F65 JUMP JUMPDEST DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x27A4 DUP3 PUSH1 0xA0 ADD MLOAD DUP4 PUSH1 0xA0 ADD MLOAD DUP5 PUSH1 0xC0 ADD MLOAD PUSH2 0x2790 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP4 MLOAD EQ DUP1 ISZERO PUSH2 0x27CA JUMPI POP PUSH2 0x27C9 DUP4 PUSH1 0x0 DUP5 PUSH1 0x0 DUP8 MLOAD PUSH2 0x3076 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP8 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH1 0x0 PUSH2 0x27F5 DUP7 DUP7 DUP10 PUSH2 0x2FE1 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP4 ISZERO PUSH2 0x29A3 JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x286C SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x28F6 JUMPI PUSH1 0x6 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x28DA SWAP1 PUSH2 0x4EBD JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH2 0xFFFF MUL NOT AND SWAP1 DUP4 PUSH2 0xFFFF AND MUL OR SWAP1 SSTORE POP POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP10 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x2964 SWAP2 SWAP1 PUSH2 0x370A JUMP JUMPDEST DUP10 PUSH32 0x3528ED0C2A3EBC993B12CE3C16BB382F9C7D88EF7D8A1BF290EAF35955A1207 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH2 0x2996 SWAP3 SWAP2 SWAP1 PUSH2 0x4EF5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH2 0x2B49 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x2A12 SWAP1 PUSH2 0x4683 JUMP JUMPDEST SWAP1 POP SUB PUSH2 0x2A9C JUMPI PUSH1 0x6 PUSH1 0x0 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP2 DUP2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH2 0xFFFF AND DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x2A80 SWAP1 PUSH2 0x4F25 JUMP JUMPDEST SWAP2 SWAP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH2 0xFFFF MUL NOT AND SWAP1 DUP4 PUSH2 0xFFFF AND MUL OR SWAP1 SSTORE POP POP JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP13 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP11 PUSH2 0xFFFF AND PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x2B0B SWAP2 SWAP1 PUSH2 0x4C3C JUMP JUMPDEST POP DUP10 PUSH32 0x52A608B3303A48862D07A73D82FA221318C0027FBBCFB1B2329BFACE3F19FF2B DUP11 DUP11 DUP5 PUSH1 0x40 MLOAD PUSH2 0x2B40 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4F4F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0xC0 ADD MLOAD DUP2 PUSH1 0x20 ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x0 ADD MLOAD MLOAD DUP2 PUSH1 0x20 ADD MLOAD LT ISZERO PUSH2 0x2C98 JUMPI PUSH1 0x0 PUSH2 0x2B88 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x20 ADD MLOAD PUSH2 0x2F65 JUMP JUMPDEST DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x2B97 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2BB0 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x40 ADD SWAP1 PUSH2 0xFFFF AND SWAP1 DUP2 PUSH2 0xFFFF AND DUP2 MSTORE POP POP PUSH1 0x2 DUP2 PUSH2 0x2BD0 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2BE9 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x60 ADD SWAP1 PUSH2 0xFFFF AND SWAP1 DUP2 PUSH2 0xFFFF AND DUP2 MSTORE POP POP PUSH1 0x2 DUP2 PUSH2 0x2C09 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH2 0x2C22 DUP2 DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x30C9 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP PUSH1 0x4 DUP2 PUSH2 0x2C46 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2C61 DUP3 DUP5 PUSH1 0x0 ADD MLOAD PUSH2 0x309A SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH1 0x2 DUP3 PUSH2 0x2C74 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP DUP2 DUP4 PUSH1 0xA0 ADD DUP2 DUP2 MSTORE POP POP DUP1 DUP3 PUSH2 0x2C8C SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST DUP4 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x14 DUP3 MLOAD EQ PUSH2 0x2CAB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xC PUSH2 0x100 EXP PUSH1 0x20 DUP4 ADD MLOAD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP3 DUP3 SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2CDD JUMPI PUSH2 0x2CDC PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2D10 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x2CFB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP4 SWAP1 POP DUP2 LT ISZERO PUSH2 0x2E7F JUMPI PUSH1 0x0 DUP1 SHL DUP6 EQ PUSH2 0x2DB5 JUMPI PUSH1 0x0 DUP5 DUP5 DUP4 DUP2 DUP2 LT PUSH2 0x2D40 JUMPI PUSH2 0x2D3F PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2D52 SWAP2 SWAP1 PUSH2 0x4FD7 JUMP JUMPDEST PUSH1 0x4 SWAP1 PUSH1 0x24 SWAP3 PUSH2 0x2D64 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x5044 JUMP JUMPDEST SWAP1 PUSH2 0x2D6F SWAP2 SWAP1 PUSH2 0x507F JUMP JUMPDEST SWAP1 POP DUP6 DUP2 EQ PUSH2 0x2DB3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DAA SWAP1 PUSH2 0x5150 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x0 DUP1 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 DUP7 DUP6 DUP2 DUP2 LT PUSH2 0x2DE2 JUMPI PUSH2 0x2DE1 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2DF4 SWAP2 SWAP1 PUSH2 0x4FD7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E02 SWAP3 SWAP2 SWAP1 PUSH2 0x5195 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2E3D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2E42 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x2E51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2E65 JUMPI PUSH2 0x2E64 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x2D16 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x14 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2EA4 JUMPI PUSH2 0x2EA3 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2ED6 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0xC PUSH2 0x100 EXP DUP3 MUL PUSH1 0x20 DUP3 ADD MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xC869023300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x2F5E JUMPI POP PUSH2 0x2F5D DUP3 PUSH2 0x30FA JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x2FCC JUMPI DUP4 MLOAD DUP2 LT PUSH2 0x2F84 JUMPI PUSH2 0x2F83 PUSH2 0x51AE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2F99 DUP3 DUP7 PUSH2 0x3174 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH1 0x1 DUP2 PUSH2 0x2FAB SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST DUP3 PUSH2 0x2FB6 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP2 SUB PUSH2 0x2FC6 JUMPI POP PUSH2 0x2FCC JUMP JUMPDEST POP PUSH2 0x2F6C JUMP JUMPDEST DUP3 DUP2 PUSH2 0x2FD8 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 MLOAD DUP3 DUP5 PUSH2 0x2FF1 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x2FFC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3018 JUMPI PUSH2 0x3017 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x304A JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 ADD SWAP2 POP DUP6 PUSH1 0x20 DUP9 ADD ADD SWAP1 POP PUSH2 0x3069 DUP3 DUP3 DUP8 PUSH2 0x319F JUMP JUMPDEST DUP3 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3083 DUP5 DUP5 DUP5 PUSH2 0x3203 JUMP JUMPDEST PUSH2 0x308E DUP8 DUP8 DUP6 PUSH2 0x3203 JUMP JUMPDEST EQ SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH1 0x2 DUP4 PUSH2 0x30AB SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x30B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP3 PUSH1 0x2 DUP6 ADD ADD MLOAD AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH1 0x4 DUP4 PUSH2 0x30DA SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x30E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH4 0xFFFFFFFF DUP3 PUSH1 0x4 DUP6 ADD ADD MLOAD AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x691F343100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x316D JUMPI POP PUSH2 0x316C DUP3 PUSH2 0x322F JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3189 JUMPI PUSH2 0x3188 PUSH2 0x49C2 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP2 LT PUSH2 0x31DE JUMPI DUP2 MLOAD DUP4 MSTORE PUSH1 0x20 DUP4 PUSH2 0x31B9 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 PUSH2 0x31C8 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP2 PUSH2 0x31D7 SWAP2 SWAP1 PUSH2 0x45CC JUMP JUMPDEST SWAP1 POP PUSH2 0x31A0 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB SWAP1 POP DUP1 NOT DUP4 MLOAD AND DUP2 DUP6 MLOAD AND DUP2 DUP2 OR DUP7 MSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x3213 SWAP2 SWAP1 PUSH2 0x4F94 JUMP JUMPDEST GT ISZERO PUSH2 0x321E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x124A319C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x32A2 JUMPI POP PUSH2 0x32A1 DUP3 PUSH2 0x32A9 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xA8FA568200000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3374 JUMPI POP PUSH32 0x5C98042B00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x3384 JUMPI POP PUSH2 0x3383 DUP3 PUSH2 0x338B JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xBC1C58D100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x33FE JUMPI POP PUSH2 0x33FD DUP3 PUSH2 0x3405 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x3B3B57DE00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x34D0 JUMPI POP PUSH32 0xF1CB7E0600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x34E0 JUMPI POP PUSH2 0x34DF DUP3 PUSH2 0x34E7 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x2203AB5600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x355A JUMPI POP PUSH2 0x3559 DUP3 PUSH2 0x3561 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD700FF3300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x35D4 JUMPI POP PUSH2 0x35D3 DUP3 PUSH2 0x35DB JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x4FBF043300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x364E JUMPI POP PUSH2 0x364D DUP3 PUSH2 0x3655 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xE0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x3716 SWAP1 PUSH2 0x4683 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x3728 JUMPI POP PUSH2 0x3747 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x3746 SWAP2 SWAP1 PUSH2 0x374A JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x3763 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x374B JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x37B0 DUP2 PUSH2 0x377B JUMP JUMPDEST DUP2 EQ PUSH2 0x37BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x37CD DUP2 PUSH2 0x37A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37E9 JUMPI PUSH2 0x37E8 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x37F7 DUP5 DUP3 DUP6 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3815 DUP2 PUSH2 0x3800 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3830 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x380C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3849 DUP2 PUSH2 0x3836 JUMP JUMPDEST DUP2 EQ PUSH2 0x3854 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3866 DUP2 PUSH2 0x3840 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3891 JUMPI PUSH2 0x3890 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x38AE JUMPI PUSH2 0x38AD PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x38CA JUMPI PUSH2 0x38C9 PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x38EA JUMPI PUSH2 0x38E9 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x38F8 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3919 JUMPI PUSH2 0x3918 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3925 DUP7 DUP3 DUP8 ADD PUSH2 0x387B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3947 JUMPI PUSH2 0x3946 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3964 JUMPI PUSH2 0x3963 PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x3980 JUMPI PUSH2 0x397F PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x39A3 JUMPI PUSH2 0x39A2 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x39B1 DUP9 DUP3 DUP10 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39D2 JUMPI PUSH2 0x39D1 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x39DE DUP9 DUP3 DUP10 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3A01 JUMPI PUSH2 0x3A00 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3A0D DUP9 DUP3 DUP10 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3A33 JUMPI PUSH2 0x3A32 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3A41 DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3A52 DUP6 DUP3 DUP7 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A87 DUP3 PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3A97 DUP2 PUSH2 0x3A7C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3AB2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3A8E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3ACB DUP2 PUSH2 0x3AB8 JUMP JUMPDEST DUP2 EQ PUSH2 0x3AD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3AE8 DUP2 PUSH2 0x3AC2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3B05 JUMPI PUSH2 0x3B04 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3B13 DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3B24 DUP6 DUP3 DUP7 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x3B37 DUP2 PUSH2 0x3AB8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3B77 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3B5C JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3B9F DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x3BA9 DUP2 DUP6 PUSH2 0x3B48 JUMP JUMPDEST SWAP4 POP PUSH2 0x3BB9 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x3BC2 DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x3BE2 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x3B2E JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x3BF4 DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3C16 JUMPI PUSH2 0x3C15 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3C24 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x3C35 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x3C46 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3C66 JUMPI PUSH2 0x3C65 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3C74 DUP5 DUP3 DUP6 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3C88 DUP3 PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3C98 DUP2 PUSH2 0x3C7D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3CB3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3C8F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3CD0 JUMPI PUSH2 0x3CCF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3CDE DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x3CEF DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3D12 JUMPI PUSH2 0x3D11 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3D20 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3D41 JUMPI PUSH2 0x3D40 PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3D4D DUP7 DUP3 DUP8 ADD PUSH2 0x3931 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3D80 DUP3 PUSH2 0x3D59 JUMP JUMPDEST PUSH2 0x3D8A DUP2 DUP6 PUSH2 0x3D64 JUMP JUMPDEST SWAP4 POP PUSH2 0x3D9A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x3DA3 DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3DC8 DUP2 DUP5 PUSH2 0x3D75 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3DEA DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3E0C JUMPI PUSH2 0x3E0B PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3E1A DUP8 DUP3 DUP9 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x3E2B DUP8 DUP3 DUP9 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3E4C JUMPI PUSH2 0x3E4B PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3E58 DUP8 DUP3 DUP9 ADD PUSH2 0x387B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x3EA3 DUP3 PUSH2 0x3B83 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x3EC2 JUMPI PUSH2 0x3EC1 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3ED5 PUSH2 0x3767 JUMP JUMPDEST SWAP1 POP PUSH2 0x3EE1 DUP3 DUP3 PUSH2 0x3E9A JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x3F01 JUMPI PUSH2 0x3F00 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x3F0A DUP3 PUSH2 0x3B83 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F39 PUSH2 0x3F34 DUP5 PUSH2 0x3EE6 JUMP JUMPDEST PUSH2 0x3ECB JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x3F55 JUMPI PUSH2 0x3F54 PUSH2 0x3E66 JUMP JUMPDEST JUMPDEST PUSH2 0x3F60 DUP5 DUP3 DUP6 PUSH2 0x3F17 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x3F7D JUMPI PUSH2 0x3F7C PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x3F8D DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x3F26 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3FAF JUMPI PUSH2 0x3FAE PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3FBD DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x3FCE DUP7 DUP3 DUP8 ADD PUSH2 0x3AD9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3FEF JUMPI PUSH2 0x3FEE PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x3FFB DUP7 DUP3 DUP8 ADD PUSH2 0x3F68 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x400E DUP2 PUSH2 0x3A7C JUMP JUMPDEST DUP2 EQ PUSH2 0x4019 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x402B DUP2 PUSH2 0x4005 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x403A DUP2 PUSH2 0x3800 JUMP JUMPDEST DUP2 EQ PUSH2 0x4045 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4057 DUP2 PUSH2 0x4031 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4074 JUMPI PUSH2 0x4073 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4082 DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x4093 DUP6 DUP3 DUP7 ADD PUSH2 0x4048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x40B6 JUMPI PUSH2 0x40B5 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x40C4 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x40D5 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x40E6 DUP7 DUP3 DUP8 ADD PUSH2 0x4048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4107 DUP2 PUSH2 0x40F0 JUMP JUMPDEST DUP2 EQ PUSH2 0x4112 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4124 DUP2 PUSH2 0x40FE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4143 JUMPI PUSH2 0x4142 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4151 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x4162 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x4173 DUP7 DUP3 DUP8 ADD PUSH2 0x4115 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4196 JUMPI PUSH2 0x4195 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x41A4 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x41B5 DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x41C6 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x41E6 JUMPI PUSH2 0x41E5 PUSH2 0x386C JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4203 JUMPI PUSH2 0x4202 PUSH2 0x3871 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x421F JUMPI PUSH2 0x421E PUSH2 0x3876 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x423D JUMPI PUSH2 0x423C PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x425B JUMPI PUSH2 0x425A PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x4267 DUP6 DUP3 DUP7 ADD PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42BB DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x42C5 DUP2 DUP6 PUSH2 0x429F JUMP JUMPDEST SWAP4 POP PUSH2 0x42D5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST PUSH2 0x42DE DUP2 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42F5 DUP4 DUP4 PUSH2 0x42B0 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4315 DUP3 PUSH2 0x4273 JUMP JUMPDEST PUSH2 0x431F DUP2 DUP6 PUSH2 0x427E JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x4331 DUP6 PUSH2 0x428F JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x436D JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x434E DUP6 DUP3 PUSH2 0x42E9 JUMP JUMPDEST SWAP5 POP PUSH2 0x4359 DUP4 PUSH2 0x42FD JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4335 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4399 DUP2 DUP5 PUSH2 0x430A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x43AA DUP2 PUSH2 0x3836 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x43C5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x43A1 JUMP JUMPDEST PUSH2 0x43D2 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x43A1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x43F0 JUMPI PUSH2 0x43EF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x43FE DUP6 DUP3 DUP7 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x440F DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4436 DUP2 PUSH2 0x4419 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4451 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x442D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4470 JUMPI PUSH2 0x446F PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x447E DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x449F JUMPI PUSH2 0x449E PUSH2 0x3776 JUMP JUMPDEST JUMPDEST PUSH2 0x44AB DUP7 DUP3 DUP8 ADD PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x44D0 JUMPI PUSH2 0x44CF PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x44DE DUP7 DUP3 DUP8 ADD PUSH2 0x3857 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x44EF DUP7 DUP3 DUP8 ADD PUSH2 0x37BE JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x4500 DUP7 DUP3 DUP8 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4521 JUMPI PUSH2 0x4520 PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x452F DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x4540 DUP6 DUP3 DUP7 ADD PUSH2 0x401C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4560 DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH2 0x456A DUP2 DUP6 PUSH2 0x454A JUMP JUMPDEST SWAP4 POP PUSH2 0x457A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3B59 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4592 DUP3 DUP5 PUSH2 0x4555 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x45D7 DUP3 PUSH2 0x3AB8 JUMP JUMPDEST SWAP2 POP PUSH2 0x45E2 DUP4 PUSH2 0x3AB8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x45FA JUMPI PUSH2 0x45F9 PUSH2 0x459D JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4617 DUP4 DUP6 PUSH2 0x4600 JUMP JUMPDEST SWAP4 POP PUSH2 0x4624 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x463D DUP3 DUP5 DUP7 PUSH2 0x460B JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x469B JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x46AE JUMPI PUSH2 0x46AD PUSH2 0x4654 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x4716 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x46D9 JUMP JUMPDEST PUSH2 0x4720 DUP7 DUP4 PUSH2 0x46D9 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x475D PUSH2 0x4758 PUSH2 0x4753 DUP5 PUSH2 0x3AB8 JUMP JUMPDEST PUSH2 0x4738 JUMP JUMPDEST PUSH2 0x3AB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4777 DUP4 PUSH2 0x4742 JUMP JUMPDEST PUSH2 0x478B PUSH2 0x4783 DUP3 PUSH2 0x4764 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x46E6 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x47A0 PUSH2 0x4793 JUMP JUMPDEST PUSH2 0x47AB DUP2 DUP5 DUP5 PUSH2 0x476E JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x47CF JUMPI PUSH2 0x47C4 PUSH1 0x0 DUP3 PUSH2 0x4798 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x47B1 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x4814 JUMPI PUSH2 0x47E5 DUP2 PUSH2 0x46B4 JUMP JUMPDEST PUSH2 0x47EE DUP5 PUSH2 0x46C9 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x47FD JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x4811 PUSH2 0x4809 DUP6 PUSH2 0x46C9 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x47B0 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4837 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x4819 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4850 DUP4 DUP4 PUSH2 0x4826 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x486A DUP4 DUP4 PUSH2 0x4649 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4883 JUMPI PUSH2 0x4882 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x488D DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4898 DUP3 DUP3 DUP6 PUSH2 0x47D3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x48C7 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x48B5 JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x48BF DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4927 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x48D5 DUP7 PUSH2 0x46B4 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x48FD JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x48D8 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x491A JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x4916 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x493C DUP4 DUP6 PUSH2 0x3D64 JUMP JUMPDEST SWAP4 POP PUSH2 0x4949 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST PUSH2 0x4952 DUP4 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4978 DUP2 DUP7 DUP9 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x498D DUP2 DUP5 DUP7 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x49A1 DUP2 PUSH2 0x377B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x49BC PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x4998 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x4A52 JUMPI PUSH2 0x4A23 DUP2 PUSH2 0x49FC JUMP JUMPDEST PUSH2 0x4A2C DUP5 PUSH2 0x46C9 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x4A3B JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x4A4F PUSH2 0x4A47 DUP6 PUSH2 0x46C9 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x47B0 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x4A61 DUP4 DUP4 PUSH2 0x49F1 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4A7A JUMPI PUSH2 0x4A79 PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x4A84 DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4A8F DUP3 DUP3 DUP6 PUSH2 0x4A11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4ABE JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4AAC JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x4AB6 DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4B1E JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x4ACC DUP7 PUSH2 0x49FC JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4AF4 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4ACF JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x4B11 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x4B0D PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B33 DUP4 DUP6 PUSH2 0x3B48 JUMP JUMPDEST SWAP4 POP PUSH2 0x4B40 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST PUSH2 0x4B49 DUP4 PUSH2 0x3B83 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B6F DUP2 DUP5 DUP7 PUSH2 0x4B27 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B83 DUP3 PUSH2 0x4419 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x4B9D JUMPI PUSH2 0x4B9C PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4BC3 DUP2 DUP5 DUP7 PUSH2 0x4930 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4BE7 PUSH2 0x4BE2 PUSH2 0x4BDD DUP5 PUSH2 0x3A5C JUMP JUMPDEST PUSH2 0x4738 JUMP JUMPDEST PUSH2 0x3A5C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4BF9 DUP3 PUSH2 0x4BCC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4C0B DUP3 PUSH2 0x4BEE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4C1B DUP2 PUSH2 0x4C00 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4C36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x4C12 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C45 DUP3 PUSH2 0x3B3D JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4C5E JUMPI PUSH2 0x4C5D PUSH2 0x3E6B JUMP JUMPDEST JUMPDEST PUSH2 0x4C68 DUP3 SLOAD PUSH2 0x4683 JUMP JUMPDEST PUSH2 0x4C73 DUP3 DUP3 DUP6 PUSH2 0x4A11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4CA6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4C94 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x4C9E DUP6 DUP3 PUSH2 0x4844 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4D06 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x4CB4 DUP7 PUSH2 0x49FC JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4CDC JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4CB7 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x4CF9 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x4CF5 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x4826 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2073657474696E6720617070726F76616C20737461747573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20666F722073656C660000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D6A PUSH1 0x29 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x4D75 DUP3 PUSH2 0x4D0E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4D99 DUP2 PUSH2 0x4D5D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x53657474696E672064656C65676174652073746174757320666F722073656C66 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4DD6 PUSH1 0x20 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x4DE1 DUP3 PUSH2 0x4DA0 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4E05 DUP2 PUSH2 0x4DC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4E26 DUP2 DUP7 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x4E3B DUP2 DUP5 DUP7 PUSH2 0x4B27 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4E5A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x43A1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4E6F DUP2 PUSH2 0x4005 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E8B JUMPI PUSH2 0x4E8A PUSH2 0x3771 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x4E99 DUP5 DUP3 DUP6 ADD PUSH2 0x4E60 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4EB7 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3B2E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4EC8 DUP3 PUSH2 0x40F0 JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP3 SUB PUSH2 0x4EDB JUMPI PUSH2 0x4EDA PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 SUB SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4EEF DUP2 PUSH2 0x40F0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4F0F DUP2 DUP6 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP PUSH2 0x4F1E PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x4EE6 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F30 DUP3 PUSH2 0x40F0 JUMP JUMPDEST SWAP2 POP PUSH2 0xFFFF DUP3 SUB PUSH2 0x4F44 JUMPI PUSH2 0x4F43 PUSH2 0x459D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4F69 DUP2 DUP7 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP PUSH2 0x4F78 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x4EE6 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x4F8A DUP2 DUP5 PUSH2 0x3B94 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F9F DUP3 PUSH2 0x3AB8 JUMP JUMPDEST SWAP2 POP PUSH2 0x4FAA DUP4 PUSH2 0x3AB8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x4FC2 JUMPI PUSH2 0x4FC1 PUSH2 0x459D JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1 PUSH1 0x20 SUB DUP5 CALLDATASIZE SUB SUB DUP2 SLT PUSH2 0x4FF4 JUMPI PUSH2 0x4FF3 PUSH2 0x4FC8 JUMP JUMPDEST JUMPDEST DUP1 DUP5 ADD SWAP3 POP DUP3 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x5016 JUMPI PUSH2 0x5015 PUSH2 0x4FCD JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP3 POP PUSH1 0x1 DUP3 MUL CALLDATASIZE SUB DUP4 SGT ISZERO PUSH2 0x5032 JUMPI PUSH2 0x5031 PUSH2 0x4FD2 JUMP JUMPDEST JUMPDEST POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x5058 JUMPI PUSH2 0x5057 PUSH2 0x503A JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x5069 JUMPI PUSH2 0x5068 PUSH2 0x503F JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x508B DUP4 DUP4 PUSH2 0x49F1 JUMP JUMPDEST DUP3 PUSH2 0x5096 DUP2 CALLDATALOAD PUSH2 0x3836 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 LT ISZERO PUSH2 0x50D6 JUMPI PUSH2 0x50D1 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 PUSH1 0x20 SUB PUSH1 0x8 MUL PUSH2 0x46D9 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x6D756C746963616C6C3A20416C6C207265636F726473206D7573742068617665 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2061206D61746368696E67206E616D6568617368000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x513A PUSH1 0x34 DUP4 PUSH2 0x3D64 JUMP JUMPDEST SWAP2 POP PUSH2 0x5145 DUP3 PUSH2 0x50DE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5169 DUP2 PUSH2 0x512D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x517C DUP4 DUP6 PUSH2 0x454A JUMP JUMPDEST SWAP4 POP PUSH2 0x5189 DUP4 DUP6 DUP5 PUSH2 0x3F17 JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x51A2 DUP3 DUP5 DUP7 PUSH2 0x5170 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB7 CALLDATASIZE 0xA7 PUSH25 0x3453517E20855927C0AE14ED7E53FA85E5E33B7627F2627A0B ADDRESS PUSH10 0xAA64736F6C6343000819 STOP CALLER ", + "sourceMap": "671:4115:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4334:450;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2069:1760:20;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;549:263:36;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1726:1150:33;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1253:643:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;603:241:35;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;505:230:19;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;662:164:16;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;931:260:18;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4678:223:20;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1029:200:36;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5680:174:20;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;568:364:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;881:166:34;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;456:225;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1197:361:18;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2545:319:15;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3196:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4231:233:20;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3587:189:15;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1329:157:14;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;902:173:19;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1149:326:35;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;5121:405:20;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;610:162:18;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;239:48:16;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1136:187:14;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;769:320:33;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2931:171:15;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1564:203:18;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4334:450:15;4714:4;4741:36;4765:11;4741:23;:36::i;:::-;4734:43;;4334:450;;;:::o;2069:1760:20:-;2177:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;2193:15:20::1;2222:14:::0;2250:17:::1;2277:18:::0;2305:16:::1;2331:14:::0;2348::::1;:20:::0;2363:4:::1;2348:20;;;;;;;;;;;;;;;;;;;;;2331:37;;2457:30;2490:18;2506:1;2490:4;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;;:::i;:::-;2457:51;;2439:1090;2523:11;:4;:9;:11::i;:::-;2439:1090;;2600:1;2588:8;:13;;::::0;2584:935:::1;;2632:4;:12;;;2621:23;;2669:11;:4;:9;:11::i;:::-;2662:18;;2736:4;2719:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;2709:33;;;;;;2698:44;;2774:12;:4;:10;:12::i;:::-;2760:27;;2584:935;;;2826:20;2849:11;:4;:9;:11::i;:::-;2826:34;;2894:4;:12;;;2882:24;;:8;:24;;;;:49;;;;2911:20;2923:7;2911:4;:11;;:20;;;;:::i;:::-;2910:21;2882:49;2878:627;;;2955:311;2992:4;3022;3052:8;3086:4;;2955:311;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3116:6;3162;3148:4;:11;;;:20;;;;:::i;:::-;3210:1;3194:5;:12;:17;3237:7;2955:11;:311::i;:::-;3299:4;:12;;;3288:23;;3342:4;:11;;;3333:20;;3382:7;3375:14;;3432:4;3422:15;;;;;;3411:26;;3473:12;:4;:10;:12::i;:::-;3459:27;;2878:627;2808:711;2584:935;2548:11;:4;:9;:11::i;:::-;2439:1090;;;;3556:1;3542:4;:11;:15;3538:285;;;3573:239;3602:4;3624;3646:8;3672:4;;3573:239;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3694:6;3732;3718:4;;:11;;:20;;;;:::i;:::-;3772:1;3756:5;:12;:17;3791:7;3573:11;:239::i;:::-;3538:285;2183:1646;;;;;;2069:1760:::0;;;;:::o;549:263:36:-;682:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;751:5:36::1;;698:17;:39;716:14:::0;:20:::1;731:4;716:20;;;;;;;;;;;;;;;;;;;;;698:39;;;;;;;;;;;;;;;:45;738:4;698:45;;;;;;;;;;;744:3;;698:50;;;;;;;:::i;:::-;;;;;;;;;;;;;:58;;;;;;;:::i;:::-;;789:3;;771:34;;;;;;;:::i;:::-;;;;;;;;783:4;771:34;794:3;;799:5;;771:34;;;;;;;;;:::i;:::-;;;;;;;;549:263:::0;;;;;;:::o;1726:1150:33:-;1852:7;1871:19;1893:22;:44;1916:14;:20;1931:4;1916:20;;;;;;;;;;;;;;;;;;;;;1893:44;;;;;;;;;;;;;;;:72;1951:4;1893:72;;;;;;;;;;;:85;1966:11;1893:85;;;;;;;;;;;;;;;;;;;;;;;;;;;1871:107;;2015:1;1992:25;;:11;:25;;;1988:74;;2040:11;2033:18;;;;;1988:74;2072:9;2084:10;2089:4;2084;:10::i;:::-;2072:22;;2121:1;2108:15;;:1;:15;;;2104:63;;2154:1;2139:17;;;;;;2104:63;2178:12;2192:23;2219:1;:12;;2331:25;2245:125;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2219:161;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2177:203;;;;2395:7;2394:8;:34;;;;2426:2;2406:10;:17;:22;2394:34;:57;;;;2450:1;2432:19;;:10;2443:2;2432:14;;;;;;;;:::i;:::-;;;;;;;;;;:19;;;;2394:57;2390:152;;;2529:1;2514:17;;;;;;;;2390:152;2576:1;:12;;2655:11;2602:65;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2576:101;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2552:125;;;;;;;;2692:7;2691:8;:34;;;;2723:2;2703:10;:17;:22;2691:34;:57;;;;2747:1;2729:19;;:10;2740:2;2729:14;;;;;;;;:::i;:::-;;;;;;;;;;:19;;;;2691:57;2687:164;;;2838:1;2823:17;;;;;;;;2687:164;2868:1;2861:8;;;;;;1726:1150;;;;;:::o;1253:643:17:-;1364:7;1373:12;1397:40;1440:16;:60;1470:14;:20;1485:4;1470:20;;;;;;;;;;;;;;;;;;;;;1440:60;;;;;;;;;;;;;;;:66;1501:4;1440:66;;;;;;;;;;;1397:109;;1535:19;1557:1;1535:23;;1517:341;1587:12;1572:11;:27;1517:341;;1708:1;1691:12;1677:11;:26;1676:33;;:83;;;;;1758:1;1729:6;:19;1736:11;1729:19;;;;;;;;;;;:26;;;;;:::i;:::-;;;:30;1676:83;1655:193;;;1800:11;1813:6;:19;1820:11;1813:19;;;;;;;;;;;1792:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1655:193;1629:1;1613:17;;;;;1517:341;;;;1876:1;1879:9;;;;;;;;;;;;1868:21;;;;;1253:643;;;;;;:::o;603:241:35:-;716:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;782:15:35::1;;;;;;;;792:1;782:15;;;;795:1;782:15;;::::0;732:19:::1;:41;752:14:::0;:20:::1;767:4;752:20;;;;;;;;;;;;;;;;;;;;;732:41;;;;;;;;;;;;;;;:47;774:4;732:47;;;;;;;;;;;:65;;;;;;;;;;;;;;;;;;;826:4;812:25;832:1;835;812:25;;;;;;;:::i;:::-;;;;;;;;603:241:::0;;;;:::o;505:230:19:-;614:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;679:4:19::1;;630:18;:40;649:14:::0;:20:::1;664:4;649:20;;;;;;;;;;;;;;;;;;;;;630:40;;;;;;;;;;;;;;;:46;671:4;630:46;;;;;;;;;;;:53;;;;;;;:::i;:::-;;717:4;698:30;723:4;;698:30;;;;;;;:::i;:::-;;;;;;;;505:230:::0;;;;:::o;662:164:16:-;724:4;425:18;438:4;425:12;:18::i;:::-;417:27;;;;;;740:14:::1;:20:::0;755:4:::1;740:20;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;792:4;777:42;798:14;:20:::0;813:4:::1;798:20;;;;;;;;;;;;;;;;;;;;;777:42;;;;;;:::i;:::-;;;;;;;;662:164:::0;;:::o;931:260:18:-;1011:15;1038:14;1055:25;1060:4;291:2;1055:4;:25::i;:::-;1038:42;;1106:1;1094;:8;:13;1090:61;;1138:1;1123:17;;;;;1090:61;1167:17;1182:1;1167:14;:17::i;:::-;1160:24;;;931:260;;;;:::o;4678:223:20:-;4780:4;4892:1;4804:28;:50;4833:14;:20;4848:4;4833:20;;;;;;;;;;;;;;;;;;;;;4804:50;;;;;;;;;;;;;;;:56;4855:4;4804:56;;;;;;;;;;;:84;4874:4;4804:84;;;;;;;;;;;;;;;;;;;;;:89;;;;4796:98;;4678:223;;;;:::o;1029:200:36:-;1140:13;1172:17;:39;1190:14;:20;1205:4;1190:20;;;;;;;;;;;;;;;;;;;;;1172:39;;;;;;;;;;;;;;;:45;1212:4;1172:45;;;;;;;;;;;1218:3;;1172:50;;;;;;;:::i;:::-;;;;;;;;;;;;;1165:57;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1029:200;;;;;:::o;5680:174:20:-;5766:12;5797:22;:44;5820:14;:20;5835:4;5820:20;;;;;;;;;;;;;;;;;;;;;5797:44;;;;;;;;;;;;;;;:50;5842:4;5797:50;;;;;;;;;;;5790:57;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5680:174;;;:::o;568:364:17:-;698:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;804:1:17::1;788:11;783:1;769:11;:15;;;;:::i;:::-;768:31;767:38;759:47;;;::::0;::::1;;877:4;;817:16;:38;834:14:::0;:20:::1;849:4;834:20;;;;;;;;;;;;;;;;;;;;;817:38;;;;;;;;;;;;;;;:44;856:4;817:44;;;;;;;;;;;:57;862:11;817:57;;;;;;;;;;;:64;;;;;;;:::i;:::-;;913:11;907:4;896:29;;;;;;;;;;568:364:::0;;;;;:::o;881:166:34:-;963:13;995:17;:39;1013:14;:20;1028:4;1013:20;;;;;;;;;;;;;;;;;;;;;995:39;;;;;;;;;;;;;;;:45;1035:4;995:45;;;;;;;;;;;988:52;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;881:166;;;:::o;456:225::-;562:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;626:7:34::1;;578:17;:39;596:14:::0;:20:::1;611:4;596:20;;;;;;;;;;;;;;;;;;;;;578:39;;;;;;;;;;;;;;;:45;618:4;578:45;;;;;;;;;;;:55;;;;;;;:::i;:::-;;660:4;648:26;666:7;;648:26;;;;;;;:::i;:::-;;;;;;;;456:225:::0;;;;:::o;1197:361:18:-;1318:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;1354:4:18::1;1339:33;1360:8;1370:1;1339:33;;;;;;;:::i;:::-;;;;;;;;291:2;1386:8;:25:::0;1382:97:::1;;1444:4;1432:36;1450:17;1465:1;1450:14;:17::i;:::-;1432:36;;;;;;:::i;:::-;;;;;;;;1382:97;1550:1;1488:21;:43;1510:14:::0;:20:::1;1525:4;1510:20;;;;;;;;;;;;;;;;;;;;;1488:43;;;;;;;;;;;;;;;:49;1532:4;1488:49;;;;;;;;;;;:59;1538:8;1488:59;;;;;;;;;;;:63;;;;;;:::i;:::-;;1197:361:::0;;;;:::o;2545:319:15:-;2659:8;2645:22;;:10;:22;;;2624:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;2788:8;2745:18;:30;2764:10;2745:30;;;;;;;;;;;;;;;:40;2776:8;2745:40;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;2838:8;2811:46;;2826:10;2811:46;;;2848:8;2811:46;;;;;;:::i;:::-;;;;;;;;2545:319;;:::o;3196:283::-;3301:8;3287:22;;:10;:22;;;3279:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3403:8;3357:15;:27;3373:10;3357:27;;;;;;;;;;;;;;;:33;3385:4;3357:33;;;;;;;;;;;:43;3391:8;3357:43;;;;;;;;;;;;;;;;:54;;;;;;;;;;;;;;;;;;3463:8;3426:46;;3453:8;3426:46;;3447:4;3426:46;3435:10;3426:46;;;;;;:::i;:::-;;;;;;;;3196:283;;;:::o;4231:233:20:-;4363:12;4394:19;:41;4414:14;:20;4429:4;4414:20;;;;;;;;;;;;;;;;;;;;;4394:41;;;;;;;;;;;;;;;:47;4436:4;4394:47;;;;;;;;;;;:53;4442:4;4394:53;;;;;;;;;;;:63;4448:8;4394:63;;;;;;;;;;;;;;;4387:70;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4231:233;;;;;:::o;3587:189:15:-;3708:4;3731:15;:22;3747:5;3731:22;;;;;;;;;;;;;;;:28;3754:4;3731:28;;;;;;;;;;;:38;3760:8;3731:38;;;;;;;;;;;;;;;;;;;;;;;;;3724:45;;3587:189;;;;;:::o;1329:157:14:-;1410:22;1451:28;1470:1;1462:10;;1474:4;;1451:10;:28::i;:::-;1444:35;;1329:157;;;;:::o;902:173:19:-;991:12;1022:18;:40;1041:14;:20;1056:4;1041:20;;;;;;;;;;;;;;;;;;;;;1022:40;;;;;;;;;;;;;;;:46;1063:4;1022:46;;;;;;;;;;;1015:53;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;902:173;;;:::o;1149:326:35:-;1233:9;1244;1265:27;1295:14;:20;1310:4;1295:20;;;;;;;;;;;;;;;;;;;;;1265:50;;1346:19;:41;1366:20;1346:41;;;;;;;;;;;;;;;:47;1388:4;1346:47;;;;;;;;;;;:49;;;1409:19;:41;1429:20;1409:41;;;;;;;;;;;;;;;:47;1451:4;1409:47;;;;;;;;;;;:49;;;1325:143;;;;;1149:326;;;:::o;5121:405:20:-;5227:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;5243::20::1;5273:14:::0;:20:::1;5288:4;5273:20;;;;;;;;;;;;;;;;;;;;;5243:50;;5303:20;5326:22;:44;5349:20;5326:44;;;;;;;;;;;;;;;:72;5384:4;5326:72;;;;;;;;;;;5303:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5461:4;;5408:22;:44;5431:20;5408:44;;;;;;;;;;;;;;;:50;5453:4;5408:50;;;;;;;;;;;:57;;;;;;;:::i;:::-;;5499:4;5480:39;5505:7;5514:4;;5480:39;;;;;;;;:::i;:::-;;;;;;;;5233:293;;5121:405:::0;;;;:::o;610:162:18:-;702:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;718:47:18::1;726:4;291:2;747:17;762:1;747:14;:17::i;:::-;718:7;:47::i;:::-;610:162:::0;;;:::o;239:48:16:-;;;;;;;;;;;;;;;;;;;;;;:::o;1136:187:14:-;1249:22;1290:26;1301:8;1311:4;;1290:10;:26::i;:::-;1283:33;;1136:187;;;;;:::o;769:320:33:-;904:4;425:18:16;438:4;425:12;:18::i;:::-;417:27;;;;;;1008:11:33::1;920:22;:44;943:14:::0;:20:::1;958:4;943:20;;;;;;;;;;;;;;;;;;;;;920:44;;;;;;;;;;;;;;;:50;965:4;920:50;;;;;;;;;;;:85;984:11;920:85;;;;;;;;;;;;;;;;;;:99;;;;;;;;;;;;;;;;;;1057:11;1034:48;;;1051:4;1034:48;1070:11;1034:48;;;;;;:::i;:::-;;;;;;;;769:320:::0;;;;:::o;2931:171:15:-;3035:4;3058:18;:27;3077:7;3058:27;;;;;;;;;;;;;;;:37;3086:8;3058:37;;;;;;;;;;;;;;;;;;;;;;;;;3051:44;;2931:171;;;;:::o;1564:203:18:-;1670:12;1701:21;:43;1723:14;:20;1738:4;1723:20;;;;;;;;;;;;;;;;;;;;;1701:43;;;;;;;;;;;;;;;:49;1745:4;1701:49;;;;;;;;;;;:59;1751:8;1701:59;;;;;;;;;;;1694:66;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1564:203;;;;:::o;1235:239:36:-;1334:4;1384:31;1369:46;;;:11;:46;;;;:98;;;;1431:36;1455:11;1431:23;:36::i;:::-;1369:98;1350:117;;1235:239;;;:::o;3782:546:15:-;3850:4;3897:20;3883:34;;:10;:34;;;:87;;;;3947:23;3933:37;;:10;:37;;;3883:87;3866:151;;;4002:4;3995:11;;;;3866:151;4026:13;4042:3;:9;;;4052:4;4042:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4026:31;;4088:11;4071:29;;:5;:29;;;4067:102;;4124:11;:19;;;4152:4;4144:13;;4124:34;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4116:42;;4067:102;4206:10;4197:19;;:5;:19;;;:70;;;;4232:35;4249:5;4256:10;4232:16;:35::i;:::-;4197:70;:124;;;;4283:38;4297:5;4304:4;4310:10;4283:13;:38::i;:::-;4197:124;4178:143;;;3782:546;;;;:::o;4089:207:8:-;4189:21;;:::i;:::-;4233:4;4222:3;:8;;:15;;;;4264:6;4247:3;:14;;:23;;;;;4280:9;4285:3;4280:4;:9::i;:::-;4089:207;;;;:::o;4471:122::-;4532:4;4570;:9;;;:16;4555:4;:11;;;:31;;4548:38;;4471:122;;;:::o;5587:225::-;5648:12;5691:114;5728:4;:11;;;5757:34;5768:4;:9;;;5779:4;:11;;;5757:10;:34::i;:::-;5691:4;:9;;;:19;;:114;;;;;:::i;:::-;5672:133;;5587:225;;;:::o;5989:245::-;6065:12;6108:119;6145:4;:16;;;6197:4;:16;;;6179:4;:15;;;:34;;;;:::i;:::-;6108:4;:9;;;:19;;:119;;;;;:::i;:::-;6089:138;;5989:245;;;:::o;7146:223:41:-;7246:4;7296:5;:12;7281:4;:11;:27;:81;;;;;7324:38;7331:4;7337:1;7340:5;7347:1;7350:4;:11;7324:6;:38::i;:::-;7281:81;7262:100;;7146:223;;;;:::o;6175:1113:20:-;6418:16;6447:4;6437:15;;;;;;6418:34;;6462:19;6484:28;6499:6;6507:4;6484;:14;;:28;;;;;:::i;:::-;6462:50;;6526:12;6522:760;;;6656:1;6575:19;:28;6595:7;6575:28;;;;;;;;;;;;;;;:34;6604:4;6575:34;;;;;;;;;;;:44;6610:8;6575:44;;;;;;;;;;;:54;6620:8;6575:54;;;;;;;;;;;;;;;:61;;;;;:::i;:::-;;;:82;6554:206;;6690:28;:37;6719:7;6690:37;;;;;;;;;;;;;;;:43;6728:4;6690:43;;;;;;;;;;;:53;6734:8;6690:53;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;6554:206;6781:19;:28;6801:7;6781:28;;;;;;;;;;;;;;;:34;6810:4;6781:34;;;;;;;;;;;:44;6816:8;6781:44;;;;;;;;;;;:54;6826:8;6781:54;;;;;;;;;;;;;;;;6773:63;;;;:::i;:::-;6872:4;6855:38;6878:4;6884:8;6855:38;;;;;;;:::i;:::-;;;;;;;;6522:760;;;7026:1;6945:19;:28;6965:7;6945:28;;;;;;;;;;;;;;;:34;6974:4;6945:34;;;;;;;;;;;:44;6980:8;6945:44;;;;;;;;;;;:54;6990:8;6945:54;;;;;;;;;;;;;;;:61;;;;;:::i;:::-;;;:82;6924:206;;7060:28;:37;7089:7;7060:37;;;;;;;;;;;;;;;:43;7098:4;7060:43;;;;;;;;;;;:53;7104:8;7060:53;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;6924:206;7200:6;7143:19;:28;7163:7;7143:28;;;;;;;;;;;;;;;:34;7172:4;7143:34;;;;;;;;;;;:44;7178:8;7143:44;;;;;;;;;;;:54;7188:8;7143:54;;;;;;;;;;;;;;;:63;;;;;;:::i;:::-;;7242:4;7225:46;7248:4;7254:8;7264:6;7225:46;;;;;;;;:::i;:::-;;;;;;;;6522:760;6408:880;;6175:1113;;;;;;;;:::o;4719:688:8:-;4795:4;:15;;;4781:4;:11;;:29;;;;;4839:4;:9;;;:16;4824:4;:11;;;:31;4820:68;4871:7;4820:68;4923:11;4951:34;4962:4;:9;;;4973:4;:11;;;4951:10;:34::i;:::-;4937:4;:11;;;:48;;;;:::i;:::-;4923:62;;5048:25;5069:3;5048:4;:9;;;:20;;:25;;;;:::i;:::-;5033:4;:12;;:40;;;;;;;;;;;5090:1;5083:8;;;;;:::i;:::-;;;5114:25;5135:3;5114:4;:9;;;:20;;:25;;;;:::i;:::-;5101:4;:10;;:38;;;;;;;;;;;5156:1;5149:8;;;;;:::i;:::-;;;5178:25;5199:3;5178:4;:9;;;:20;;:25;;;;:::i;:::-;5167:4;:8;;:36;;;;;;;;;;;5220:1;5213:8;;;;;:::i;:::-;;;5258:19;5280:25;5301:3;5280:4;:9;;;:20;;:25;;;;:::i;:::-;5258:47;;;;5322:1;5315:8;;;;;:::i;:::-;;;5352:3;5333:4;:16;;:22;;;;;5389:11;5383:3;:17;;;;:::i;:::-;5365:4;:15;;:35;;;;;4771:636;;4719:688;;:::o;2083:219:18:-;2160:17;2209:2;2197:1;:8;:14;2189:23;;;;;;2282:2;2277:3;2273:12;2267:2;2264:1;2260:10;2254:17;2250:36;2245:41;;2083:219;;;:::o;218:722:14:-;319:22;375:4;;:11;;363:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;353:34;;402:9;397:513;421:4;;:11;;417:1;:15;397:513;;;477:1;469:10;;457:8;:22;453:267;;499:18;528:4;;533:1;528:7;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;536:1;528:13;538:2;528:13;;;;;;;:::i;:::-;520:22;;;;;:::i;:::-;499:43;;603:8;589:10;:22;560:145;;;;;;;;;;;;:::i;:::-;;;;;;;;;481:239;453:267;734:12;748:19;779:4;771:26;;815:4;;820:1;815:7;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;771:65;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;733:103;;;;858:7;850:16;;;;;;893:6;880:7;888:1;880:10;;;;;;;;:::i;:::-;;;;;;;:19;;;;439:471;;434:3;;;;;;;397:513;;;;218:722;;;;;:::o;2308:190:18:-;2366:14;2406:2;2396:13;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2392:17;;2477:2;2472:3;2468:12;2465:1;2461:20;2456:2;2453:1;2449:10;2442:40;2308:190;;;:::o;1481:241:35:-;1580:4;1630:33;1615:48;;;:11;:48;;;;:100;;;;1679:36;1703:11;1679:23;:36::i;:::-;1615:100;1596:119;;1481:241;;;:::o;579:402:8:-;679:7;698:11;712:6;698:20;;728:218;735:4;728:218;;;768:4;:11;762:3;:17;755:25;;;;:::i;:::-;;794:16;813:19;828:3;813:4;:14;;:19;;;;:::i;:::-;794:38;;;;864:1;853:8;:12;;;;:::i;:::-;846:19;;;;;:::i;:::-;;;895:1;883:8;:13;879:57;;916:5;;;879:57;741:205;728:218;;;968:6;962:3;:12;;;;:::i;:::-;955:19;;;579:402;;;;:::o;11273:436:41:-;11393:12;11441:4;:11;11434:3;11425:6;:12;;;;:::i;:::-;:27;;11417:36;;;;;;11464:16;11493:3;11483:14;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11464:33;;11507:12;11529:11;11591:2;11586:3;11582:12;11574:20;;11633:6;11628:2;11622:4;11618:13;11614:26;11607:33;;11659:22;11666:4;11672:3;11677;11659:6;:22::i;:::-;11699:3;11692:10;;;;;11273:436;;;;;:::o;5311:264::-;5485:4;5537:31;5544:5;5551:11;5564:3;5537:6;:31::i;:::-;5508:25;5515:4;5521:6;5529:3;5508:6;:25::i;:::-;:60;5501:67;;5311:264;;;;;;;:::o;8012:248::-;8109:10;8150:4;:11;8145:1;8139:3;:7;;;;:::i;:::-;:22;;8131:31;;;;;;8237:6;8230:3;8226:1;8220:4;8216:12;8212:22;8206:29;8202:42;8195:49;;8012:248;;;;:::o;8509:252::-;8606:10;8647:4;:11;8642:1;8636:3;:7;;;;:::i;:::-;:22;;8628:31;;;;;;8734:10;8727:3;8723:1;8717:4;8713:12;8709:22;8703:29;8699:46;8692:53;;8509:252;;;;:::o;1053:239:34:-;1152:4;1202:31;1187:46;;;:11;:46;;;;:98;;;;1249:36;1273:11;1249:23;:36::i;:::-;1187:98;1168:117;;1053:239;;;:::o;7616:147:41:-;7712:9;7746:4;7751:3;7746:9;;;;;;;;:::i;:::-;;;;;;;;;;7740:16;;7733:23;;7616:147;;;;:::o;10431:617::-;10560:165;10574:2;10567:3;:9;10560:165;;10649:3;10643:10;10637:4;10630:24;10689:2;10681:10;;;;;:::i;:::-;;;10712:2;10705:9;;;;;:::i;:::-;;;10585:2;10578:9;;;;;:::i;:::-;;;10560:165;;;10791:12;10828:1;10820:3;10815:2;:8;10807:3;:17;10806:23;10791:38;;10905:4;10901:9;10895:3;10889:10;10885:26;10961:4;10954;10948:11;10944:22;11009:7;10999:8;10996:21;10990:4;10983:35;10852:180;;;10431:617;;;:::o;409:274::-;526:11;573:4;:11;566:3;557:6;:12;;;;:::i;:::-;:27;;549:36;;;;;;663:3;654:6;649:2;643:4;639:13;635:26;625:42;618:49;;409:274;;;;;:::o;2882:244:33:-;2981:4;3031:36;3016:51;;;:11;:51;;;;:103;;;;3083:36;3107:11;3083:23;:36::i;:::-;3016:103;2997:122;;2882:244;;;:::o;5860:309:20:-;5959:4;6009:36;5994:51;;;:11;:51;;;;:116;;;;6076:34;6061:49;;;:11;:49;;;;5994:116;:168;;;;6126:36;6150:11;6126:23;:36::i;:::-;5994:168;5975:187;;5860:309;;;:::o;1081:246:19:-;1180:4;1230:38;1215:53;;;:11;:53;;;;:105;;;;1284:36;1308:11;1284:23;:36::i;:::-;1215:105;1196:124;;1081:246;;;:::o;1773:304:18:-;1872:4;1922:31;1907:46;;;:11;:46;;;;:111;;;;1984:34;1969:49;;;:11;:49;;;;1907:111;:163;;;;2034:36;2058:11;2034:23;:36::i;:::-;1907:163;1888:182;;1773:304;;;:::o;1902:238:17:-;2001:4;2051:30;2036:45;;;:11;:45;;;;:97;;;;2097:36;2121:11;2097:23;:36::i;:::-;2036:97;2017:116;;1902:238;;;:::o;832:246:16:-;931:4;981:38;966:53;;;:11;:53;;;;:105;;;;1035:36;1059:11;1035:23;:36::i;:::-;966:105;947:124;;832:246;;;:::o;1492:240:14:-;1591:4;1641:32;1626:47;;;:11;:47;;;;:99;;;;1689:36;1713:11;1689:23;:36::i;:::-;1626:99;1607:118;;1492:240;;;:::o;829:155:62:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:77::-;1555:7;1584:5;1573:16;;1518:77;;;:::o;1601:122::-;1674:24;1692:5;1674:24;:::i;:::-;1667:5;1664:35;1654:63;;1713:1;1710;1703:12;1654:63;1601:122;:::o;1729:139::-;1775:5;1813:6;1800:20;1791:29;;1829:33;1856:5;1829:33;:::i;:::-;1729:139;;;;:::o;1874:117::-;1983:1;1980;1973:12;1997:117;2106:1;2103;2096:12;2120:117;2229:1;2226;2219:12;2256:552;2313:8;2323:6;2373:3;2366:4;2358:6;2354:17;2350:27;2340:122;;2381:79;;:::i;:::-;2340:122;2494:6;2481:20;2471:30;;2524:18;2516:6;2513:30;2510:117;;;2546:79;;:::i;:::-;2510:117;2660:4;2652:6;2648:17;2636:29;;2714:3;2706:4;2698:6;2694:17;2684:8;2680:32;2677:41;2674:128;;;2721:79;;:::i;:::-;2674:128;2256:552;;;;;:::o;2814:672::-;2893:6;2901;2909;2958:2;2946:9;2937:7;2933:23;2929:32;2926:119;;;2964:79;;:::i;:::-;2926:119;3084:1;3109:53;3154:7;3145:6;3134:9;3130:22;3109:53;:::i;:::-;3099:63;;3055:117;3239:2;3228:9;3224:18;3211:32;3270:18;3262:6;3259:30;3256:117;;;3292:79;;:::i;:::-;3256:117;3405:64;3461:7;3452:6;3441:9;3437:22;3405:64;:::i;:::-;3387:82;;;;3182:297;2814:672;;;;;:::o;3506:553::-;3564:8;3574:6;3624:3;3617:4;3609:6;3605:17;3601:27;3591:122;;3632:79;;:::i;:::-;3591:122;3745:6;3732:20;3722:30;;3775:18;3767:6;3764:30;3761:117;;;3797:79;;:::i;:::-;3761:117;3911:4;3903:6;3899:17;3887:29;;3965:3;3957:4;3949:6;3945:17;3935:8;3931:32;3928:41;3925:128;;;3972:79;;:::i;:::-;3925:128;3506:553;;;;;:::o;4065:1019::-;4166:6;4174;4182;4190;4198;4247:2;4235:9;4226:7;4222:23;4218:32;4215:119;;;4253:79;;:::i;:::-;4215:119;4373:1;4398:53;4443:7;4434:6;4423:9;4419:22;4398:53;:::i;:::-;4388:63;;4344:117;4528:2;4517:9;4513:18;4500:32;4559:18;4551:6;4548:30;4545:117;;;4581:79;;:::i;:::-;4545:117;4694:65;4751:7;4742:6;4731:9;4727:22;4694:65;:::i;:::-;4676:83;;;;4471:298;4836:2;4825:9;4821:18;4808:32;4867:18;4859:6;4856:30;4853:117;;;4889:79;;:::i;:::-;4853:117;5002:65;5059:7;5050:6;5039:9;5035:22;5002:65;:::i;:::-;4984:83;;;;4779:298;4065:1019;;;;;;;;:::o;5090:472::-;5157:6;5165;5214:2;5202:9;5193:7;5189:23;5185:32;5182:119;;;5220:79;;:::i;:::-;5182:119;5340:1;5365:53;5410:7;5401:6;5390:9;5386:22;5365:53;:::i;:::-;5355:63;;5311:117;5467:2;5493:52;5537:7;5528:6;5517:9;5513:22;5493:52;:::i;:::-;5483:62;;5438:117;5090:472;;;;;:::o;5568:126::-;5605:7;5645:42;5638:5;5634:54;5623:65;;5568:126;;;:::o;5700:96::-;5737:7;5766:24;5784:5;5766:24;:::i;:::-;5755:35;;5700:96;;;:::o;5802:118::-;5889:24;5907:5;5889:24;:::i;:::-;5884:3;5877:37;5802:118;;:::o;5926:222::-;6019:4;6057:2;6046:9;6042:18;6034:26;;6070:71;6138:1;6127:9;6123:17;6114:6;6070:71;:::i;:::-;5926:222;;;;:::o;6154:77::-;6191:7;6220:5;6209:16;;6154:77;;;:::o;6237:122::-;6310:24;6328:5;6310:24;:::i;:::-;6303:5;6300:35;6290:63;;6349:1;6346;6339:12;6290:63;6237:122;:::o;6365:139::-;6411:5;6449:6;6436:20;6427:29;;6465:33;6492:5;6465:33;:::i;:::-;6365:139;;;;:::o;6510:474::-;6578:6;6586;6635:2;6623:9;6614:7;6610:23;6606:32;6603:119;;;6641:79;;:::i;:::-;6603:119;6761:1;6786:53;6831:7;6822:6;6811:9;6807:22;6786:53;:::i;:::-;6776:63;;6732:117;6888:2;6914:53;6959:7;6950:6;6939:9;6935:22;6914:53;:::i;:::-;6904:63;;6859:118;6510:474;;;;;:::o;6990:118::-;7077:24;7095:5;7077:24;:::i;:::-;7072:3;7065:37;6990:118;;:::o;7114:98::-;7165:6;7199:5;7193:12;7183:22;;7114:98;;;:::o;7218:168::-;7301:11;7335:6;7330:3;7323:19;7375:4;7370:3;7366:14;7351:29;;7218:168;;;;:::o;7392:248::-;7474:1;7484:113;7498:6;7495:1;7492:13;7484:113;;;7583:1;7578:3;7574:11;7568:18;7564:1;7559:3;7555:11;7548:39;7520:2;7517:1;7513:10;7508:15;;7484:113;;;7631:1;7622:6;7617:3;7613:16;7606:27;7454:186;7392:248;;;:::o;7646:102::-;7687:6;7738:2;7734:7;7729:2;7722:5;7718:14;7714:28;7704:38;;7646:102;;;:::o;7754:373::-;7840:3;7868:38;7900:5;7868:38;:::i;:::-;7922:70;7985:6;7980:3;7922:70;:::i;:::-;7915:77;;8001:65;8059:6;8054:3;8047:4;8040:5;8036:16;8001:65;:::i;:::-;8091:29;8113:6;8091:29;:::i;:::-;8086:3;8082:39;8075:46;;7844:283;7754:373;;;;:::o;8133:419::-;8272:4;8310:2;8299:9;8295:18;8287:26;;8323:71;8391:1;8380:9;8376:17;8367:6;8323:71;:::i;:::-;8441:9;8435:4;8431:20;8426:2;8415:9;8411:18;8404:48;8469:76;8540:4;8531:6;8469:76;:::i;:::-;8461:84;;8133:419;;;;;:::o;8558:619::-;8635:6;8643;8651;8700:2;8688:9;8679:7;8675:23;8671:32;8668:119;;;8706:79;;:::i;:::-;8668:119;8826:1;8851:53;8896:7;8887:6;8876:9;8872:22;8851:53;:::i;:::-;8841:63;;8797:117;8953:2;8979:53;9024:7;9015:6;9004:9;9000:22;8979:53;:::i;:::-;8969:63;;8924:118;9081:2;9107:53;9152:7;9143:6;9132:9;9128:22;9107:53;:::i;:::-;9097:63;;9052:118;8558:619;;;;;:::o;9183:329::-;9242:6;9291:2;9279:9;9270:7;9266:23;9262:32;9259:119;;;9297:79;;:::i;:::-;9259:119;9417:1;9442:53;9487:7;9478:6;9467:9;9463:22;9442:53;:::i;:::-;9432:63;;9388:117;9183:329;;;;:::o;9518:104::-;9563:7;9592:24;9610:5;9592:24;:::i;:::-;9581:35;;9518:104;;;:::o;9628:142::-;9731:32;9757:5;9731:32;:::i;:::-;9726:3;9719:45;9628:142;;:::o;9776:254::-;9885:4;9923:2;9912:9;9908:18;9900:26;;9936:87;10020:1;10009:9;10005:17;9996:6;9936:87;:::i;:::-;9776:254;;;;:::o;10036:474::-;10104:6;10112;10161:2;10149:9;10140:7;10136:23;10132:32;10129:119;;;10167:79;;:::i;:::-;10129:119;10287:1;10312:53;10357:7;10348:6;10337:9;10333:22;10312:53;:::i;:::-;10302:63;;10258:117;10414:2;10440:53;10485:7;10476:6;10465:9;10461:22;10440:53;:::i;:::-;10430:63;;10385:118;10036:474;;;;;:::o;10516:674::-;10596:6;10604;10612;10661:2;10649:9;10640:7;10636:23;10632:32;10629:119;;;10667:79;;:::i;:::-;10629:119;10787:1;10812:53;10857:7;10848:6;10837:9;10833:22;10812:53;:::i;:::-;10802:63;;10758:117;10942:2;10931:9;10927:18;10914:32;10973:18;10965:6;10962:30;10959:117;;;10995:79;;:::i;:::-;10959:117;11108:65;11165:7;11156:6;11145:9;11141:22;11108:65;:::i;:::-;11090:83;;;;10885:298;10516:674;;;;;:::o;11196:99::-;11248:6;11282:5;11276:12;11266:22;;11196:99;;;:::o;11301:169::-;11385:11;11419:6;11414:3;11407:19;11459:4;11454:3;11450:14;11435:29;;11301:169;;;;:::o;11476:377::-;11564:3;11592:39;11625:5;11592:39;:::i;:::-;11647:71;11711:6;11706:3;11647:71;:::i;:::-;11640:78;;11727:65;11785:6;11780:3;11773:4;11766:5;11762:16;11727:65;:::i;:::-;11817:29;11839:6;11817:29;:::i;:::-;11812:3;11808:39;11801:46;;11568:285;11476:377;;;;:::o;11859:313::-;11972:4;12010:2;11999:9;11995:18;11987:26;;12059:9;12053:4;12049:20;12045:1;12034:9;12030:17;12023:47;12087:78;12160:4;12151:6;12087:78;:::i;:::-;12079:86;;11859:313;;;;:::o;12178:309::-;12289:4;12327:2;12316:9;12312:18;12304:26;;12376:9;12370:4;12366:20;12362:1;12351:9;12347:17;12340:47;12404:76;12475:4;12466:6;12404:76;:::i;:::-;12396:84;;12178:309;;;;:::o;12493:817::-;12581:6;12589;12597;12605;12654:2;12642:9;12633:7;12629:23;12625:32;12622:119;;;12660:79;;:::i;:::-;12622:119;12780:1;12805:53;12850:7;12841:6;12830:9;12826:22;12805:53;:::i;:::-;12795:63;;12751:117;12907:2;12933:53;12978:7;12969:6;12958:9;12954:22;12933:53;:::i;:::-;12923:63;;12878:118;13063:2;13052:9;13048:18;13035:32;13094:18;13086:6;13083:30;13080:117;;;13116:79;;:::i;:::-;13080:117;13229:64;13285:7;13276:6;13265:9;13261:22;13229:64;:::i;:::-;13211:82;;;;13006:297;12493:817;;;;;;;:::o;13316:117::-;13425:1;13422;13415:12;13439:180;13487:77;13484:1;13477:88;13584:4;13581:1;13574:15;13608:4;13605:1;13598:15;13625:281;13708:27;13730:4;13708:27;:::i;:::-;13700:6;13696:40;13838:6;13826:10;13823:22;13802:18;13790:10;13787:34;13784:62;13781:88;;;13849:18;;:::i;:::-;13781:88;13889:10;13885:2;13878:22;13668:238;13625:281;;:::o;13912:129::-;13946:6;13973:20;;:::i;:::-;13963:30;;14002:33;14030:4;14022:6;14002:33;:::i;:::-;13912:129;;;:::o;14047:307::-;14108:4;14198:18;14190:6;14187:30;14184:56;;;14220:18;;:::i;:::-;14184:56;14258:29;14280:6;14258:29;:::i;:::-;14250:37;;14342:4;14336;14332:15;14324:23;;14047:307;;;:::o;14360:148::-;14458:6;14453:3;14448;14435:30;14499:1;14490:6;14485:3;14481:16;14474:27;14360:148;;;:::o;14514:423::-;14591:5;14616:65;14632:48;14673:6;14632:48;:::i;:::-;14616:65;:::i;:::-;14607:74;;14704:6;14697:5;14690:21;14742:4;14735:5;14731:16;14780:3;14771:6;14766:3;14762:16;14759:25;14756:112;;;14787:79;;:::i;:::-;14756:112;14877:54;14924:6;14919:3;14914;14877:54;:::i;:::-;14597:340;14514:423;;;;;:::o;14956:338::-;15011:5;15060:3;15053:4;15045:6;15041:17;15037:27;15027:122;;15068:79;;:::i;:::-;15027:122;15185:6;15172:20;15210:78;15284:3;15276:6;15269:4;15261:6;15257:17;15210:78;:::i;:::-;15201:87;;15017:277;14956:338;;;;:::o;15300:797::-;15386:6;15394;15402;15451:2;15439:9;15430:7;15426:23;15422:32;15419:119;;;15457:79;;:::i;:::-;15419:119;15577:1;15602:53;15647:7;15638:6;15627:9;15623:22;15602:53;:::i;:::-;15592:63;;15548:117;15704:2;15730:53;15775:7;15766:6;15755:9;15751:22;15730:53;:::i;:::-;15720:63;;15675:118;15860:2;15849:9;15845:18;15832:32;15891:18;15883:6;15880:30;15877:117;;;15913:79;;:::i;:::-;15877:117;16018:62;16072:7;16063:6;16052:9;16048:22;16018:62;:::i;:::-;16008:72;;15803:287;15300:797;;;;;:::o;16103:122::-;16176:24;16194:5;16176:24;:::i;:::-;16169:5;16166:35;16156:63;;16215:1;16212;16205:12;16156:63;16103:122;:::o;16231:139::-;16277:5;16315:6;16302:20;16293:29;;16331:33;16358:5;16331:33;:::i;:::-;16231:139;;;;:::o;16376:116::-;16446:21;16461:5;16446:21;:::i;:::-;16439:5;16436:32;16426:60;;16482:1;16479;16472:12;16426:60;16376:116;:::o;16498:133::-;16541:5;16579:6;16566:20;16557:29;;16595:30;16619:5;16595:30;:::i;:::-;16498:133;;;;:::o;16637:468::-;16702:6;16710;16759:2;16747:9;16738:7;16734:23;16730:32;16727:119;;;16765:79;;:::i;:::-;16727:119;16885:1;16910:53;16955:7;16946:6;16935:9;16931:22;16910:53;:::i;:::-;16900:63;;16856:117;17012:2;17038:50;17080:7;17071:6;17060:9;17056:22;17038:50;:::i;:::-;17028:60;;16983:115;16637:468;;;;;:::o;17111:613::-;17185:6;17193;17201;17250:2;17238:9;17229:7;17225:23;17221:32;17218:119;;;17256:79;;:::i;:::-;17218:119;17376:1;17401:53;17446:7;17437:6;17426:9;17422:22;17401:53;:::i;:::-;17391:63;;17347:117;17503:2;17529:53;17574:7;17565:6;17554:9;17550:22;17529:53;:::i;:::-;17519:63;;17474:118;17631:2;17657:50;17699:7;17690:6;17679:9;17675:22;17657:50;:::i;:::-;17647:60;;17602:115;17111:613;;;;;:::o;17730:89::-;17766:7;17806:6;17799:5;17795:18;17784:29;;17730:89;;;:::o;17825:120::-;17897:23;17914:5;17897:23;:::i;:::-;17890:5;17887:34;17877:62;;17935:1;17932;17925:12;17877:62;17825:120;:::o;17951:137::-;17996:5;18034:6;18021:20;18012:29;;18050:32;18076:5;18050:32;:::i;:::-;17951:137;;;;:::o;18094:617::-;18170:6;18178;18186;18235:2;18223:9;18214:7;18210:23;18206:32;18203:119;;;18241:79;;:::i;:::-;18203:119;18361:1;18386:53;18431:7;18422:6;18411:9;18407:22;18386:53;:::i;:::-;18376:63;;18332:117;18488:2;18514:53;18559:7;18550:6;18539:9;18535:22;18514:53;:::i;:::-;18504:63;;18459:118;18616:2;18642:52;18686:7;18677:6;18666:9;18662:22;18642:52;:::i;:::-;18632:62;;18587:117;18094:617;;;;;:::o;18717:619::-;18794:6;18802;18810;18859:2;18847:9;18838:7;18834:23;18830:32;18827:119;;;18865:79;;:::i;:::-;18827:119;18985:1;19010:53;19055:7;19046:6;19035:9;19031:22;19010:53;:::i;:::-;19000:63;;18956:117;19112:2;19138:53;19183:7;19174:6;19163:9;19159:22;19138:53;:::i;:::-;19128:63;;19083:118;19240:2;19266:53;19311:7;19302:6;19291:9;19287:22;19266:53;:::i;:::-;19256:63;;19211:118;18717:619;;;;;:::o;19357:579::-;19441:8;19451:6;19501:3;19494:4;19486:6;19482:17;19478:27;19468:122;;19509:79;;:::i;:::-;19468:122;19622:6;19609:20;19599:30;;19652:18;19644:6;19641:30;19638:117;;;19674:79;;:::i;:::-;19638:117;19788:4;19780:6;19776:17;19764:29;;19842:3;19834:4;19826:6;19822:17;19812:8;19808:32;19805:41;19802:128;;;19849:79;;:::i;:::-;19802:128;19357:579;;;;;:::o;19942:581::-;20039:6;20047;20096:2;20084:9;20075:7;20071:23;20067:32;20064:119;;;20102:79;;:::i;:::-;20064:119;20250:1;20239:9;20235:17;20222:31;20280:18;20272:6;20269:30;20266:117;;;20302:79;;:::i;:::-;20266:117;20415:91;20498:7;20489:6;20478:9;20474:22;20415:91;:::i;:::-;20397:109;;;;20193:323;19942:581;;;;;:::o;20529:123::-;20605:6;20639:5;20633:12;20623:22;;20529:123;;;:::o;20658:193::-;20766:11;20800:6;20795:3;20788:19;20840:4;20835:3;20831:14;20816:29;;20658:193;;;;:::o;20857:141::-;20933:4;20956:3;20948:11;;20986:4;20981:3;20977:14;20969:22;;20857:141;;;:::o;21004:158::-;21077:11;21111:6;21106:3;21099:19;21151:4;21146:3;21142:14;21127:29;;21004:158;;;;:::o;21168:353::-;21244:3;21272:38;21304:5;21272:38;:::i;:::-;21326:60;21379:6;21374:3;21326:60;:::i;:::-;21319:67;;21395:65;21453:6;21448:3;21441:4;21434:5;21430:16;21395:65;:::i;:::-;21485:29;21507:6;21485:29;:::i;:::-;21480:3;21476:39;21469:46;;21248:273;21168:353;;;;:::o;21527:192::-;21614:10;21649:64;21709:3;21701:6;21649:64;:::i;:::-;21635:78;;21527:192;;;;:::o;21725:122::-;21804:4;21836;21831:3;21827:14;21819:22;;21725:122;;;:::o;21879:983::-;22016:3;22045:63;22102:5;22045:63;:::i;:::-;22124:95;22212:6;22207:3;22124:95;:::i;:::-;22117:102;;22245:3;22290:4;22282:6;22278:17;22273:3;22269:27;22320:65;22379:5;22320:65;:::i;:::-;22408:7;22439:1;22424:393;22449:6;22446:1;22443:13;22424:393;;;22520:9;22514:4;22510:20;22505:3;22498:33;22571:6;22565:13;22599:82;22676:4;22661:13;22599:82;:::i;:::-;22591:90;;22704:69;22766:6;22704:69;:::i;:::-;22694:79;;22802:4;22797:3;22793:14;22786:21;;22484:333;22471:1;22468;22464:9;22459:14;;22424:393;;;22428:14;22833:4;22826:11;;22853:3;22846:10;;22021:841;;;;;21879:983;;;;:::o;22868:409::-;23029:4;23067:2;23056:9;23052:18;23044:26;;23116:9;23110:4;23106:20;23102:1;23091:9;23087:17;23080:47;23144:126;23265:4;23256:6;23144:126;:::i;:::-;23136:134;;22868:409;;;;:::o;23283:118::-;23370:24;23388:5;23370:24;:::i;:::-;23365:3;23358:37;23283:118;;:::o;23407:332::-;23528:4;23566:2;23555:9;23551:18;23543:26;;23579:71;23647:1;23636:9;23632:17;23623:6;23579:71;:::i;:::-;23660:72;23728:2;23717:9;23713:18;23704:6;23660:72;:::i;:::-;23407:332;;;;;:::o;23745:474::-;23813:6;23821;23870:2;23858:9;23849:7;23845:23;23841:32;23838:119;;;23876:79;;:::i;:::-;23838:119;23996:1;24021:53;24066:7;24057:6;24046:9;24042:22;24021:53;:::i;:::-;24011:63;;23967:117;24123:2;24149:53;24194:7;24185:6;24174:9;24170:22;24149:53;:::i;:::-;24139:63;;24094:118;23745:474;;;;;:::o;24225:101::-;24261:7;24301:18;24294:5;24290:30;24279:41;;24225:101;;;:::o;24332:115::-;24417:23;24434:5;24417:23;:::i;:::-;24412:3;24405:36;24332:115;;:::o;24453:218::-;24544:4;24582:2;24571:9;24567:18;24559:26;;24595:69;24661:1;24650:9;24646:17;24637:6;24595:69;:::i;:::-;24453:218;;;;:::o;24677:726::-;24783:6;24791;24799;24848:2;24836:9;24827:7;24823:23;24819:32;24816:119;;;24854:79;;:::i;:::-;24816:119;24974:1;24999:53;25044:7;25035:6;25024:9;25020:22;24999:53;:::i;:::-;24989:63;;24945:117;25129:2;25118:9;25114:18;25101:32;25160:18;25152:6;25149:30;25146:117;;;25182:79;;:::i;:::-;25146:117;25295:91;25378:7;25369:6;25358:9;25354:22;25295:91;:::i;:::-;25277:109;;;;25072:324;24677:726;;;;;:::o;25409:617::-;25485:6;25493;25501;25550:2;25538:9;25529:7;25525:23;25521:32;25518:119;;;25556:79;;:::i;:::-;25518:119;25676:1;25701:53;25746:7;25737:6;25726:9;25722:22;25701:53;:::i;:::-;25691:63;;25647:117;25803:2;25829:52;25873:7;25864:6;25853:9;25849:22;25829:52;:::i;:::-;25819:62;;25774:117;25930:2;25956:53;26001:7;25992:6;25981:9;25977:22;25956:53;:::i;:::-;25946:63;;25901:118;25409:617;;;;;:::o;26032:474::-;26100:6;26108;26157:2;26145:9;26136:7;26132:23;26128:32;26125:119;;;26163:79;;:::i;:::-;26125:119;26283:1;26308:53;26353:7;26344:6;26333:9;26329:22;26308:53;:::i;:::-;26298:63;;26254:117;26410:2;26436:53;26481:7;26472:6;26461:9;26457:22;26436:53;:::i;:::-;26426:63;;26381:118;26032:474;;;;;:::o;26512:147::-;26613:11;26650:3;26635:18;;26512:147;;;;:::o;26665:386::-;26769:3;26797:38;26829:5;26797:38;:::i;:::-;26851:88;26932:6;26927:3;26851:88;:::i;:::-;26844:95;;26948:65;27006:6;27001:3;26994:4;26987:5;26983:16;26948:65;:::i;:::-;27038:6;27033:3;27029:16;27022:23;;26773:278;26665:386;;;;:::o;27057:271::-;27187:3;27209:93;27298:3;27289:6;27209:93;:::i;:::-;27202:100;;27319:3;27312:10;;27057:271;;;;:::o;27334:180::-;27382:77;27379:1;27372:88;27479:4;27476:1;27469:15;27503:4;27500:1;27493:15;27520:194;27560:4;27580:20;27598:1;27580:20;:::i;:::-;27575:25;;27614:20;27632:1;27614:20;:::i;:::-;27609:25;;27658:1;27655;27651:9;27643:17;;27682:1;27676:4;27673:11;27670:37;;;27687:18;;:::i;:::-;27670:37;27520:194;;;;:::o;27720:148::-;27822:11;27859:3;27844:18;;27720:148;;;;:::o;27898:330::-;28014:3;28035:89;28117:6;28112:3;28035:89;:::i;:::-;28028:96;;28134:56;28183:6;28178:3;28171:5;28134:56;:::i;:::-;28215:6;28210:3;28206:16;28199:23;;27898:330;;;;;:::o;28234:295::-;28376:3;28398:105;28499:3;28490:6;28482;28398:105;:::i;:::-;28391:112;;28520:3;28513:10;;28234:295;;;;;:::o;28535:97::-;28594:6;28622:3;28612:13;;28535:97;;;;:::o;28638:180::-;28686:77;28683:1;28676:88;28783:4;28780:1;28773:15;28807:4;28804:1;28797:15;28824:320;28868:6;28905:1;28899:4;28895:12;28885:22;;28952:1;28946:4;28942:12;28973:18;28963:81;;29029:4;29021:6;29017:17;29007:27;;28963:81;29091:2;29083:6;29080:14;29060:18;29057:38;29054:84;;29110:18;;:::i;:::-;29054:84;28875:269;28824:320;;;:::o;29150:141::-;29199:4;29222:3;29214:11;;29245:3;29242:1;29235:14;29279:4;29276:1;29266:18;29258:26;;29150:141;;;:::o;29297:93::-;29334:6;29381:2;29376;29369:5;29365:14;29361:23;29351:33;;29297:93;;;:::o;29396:107::-;29440:8;29490:5;29484:4;29480:16;29459:37;;29396:107;;;;:::o;29509:393::-;29578:6;29628:1;29616:10;29612:18;29651:97;29681:66;29670:9;29651:97;:::i;:::-;29769:39;29799:8;29788:9;29769:39;:::i;:::-;29757:51;;29841:4;29837:9;29830:5;29826:21;29817:30;;29890:4;29880:8;29876:19;29869:5;29866:30;29856:40;;29585:317;;29509:393;;;;;:::o;29908:60::-;29936:3;29957:5;29950:12;;29908:60;;;:::o;29974:142::-;30024:9;30057:53;30075:34;30084:24;30102:5;30084:24;:::i;:::-;30075:34;:::i;:::-;30057:53;:::i;:::-;30044:66;;29974:142;;;:::o;30122:75::-;30165:3;30186:5;30179:12;;30122:75;;;:::o;30203:269::-;30313:39;30344:7;30313:39;:::i;:::-;30374:91;30423:41;30447:16;30423:41;:::i;:::-;30415:6;30408:4;30402:11;30374:91;:::i;:::-;30368:4;30361:105;30279:193;30203:269;;;:::o;30478:73::-;30523:3;30478:73;:::o;30557:189::-;30634:32;;:::i;:::-;30675:65;30733:6;30725;30719:4;30675:65;:::i;:::-;30610:136;30557:189;;:::o;30752:186::-;30812:120;30829:3;30822:5;30819:14;30812:120;;;30883:39;30920:1;30913:5;30883:39;:::i;:::-;30856:1;30849:5;30845:13;30836:22;;30812:120;;;30752:186;;:::o;30944:543::-;31045:2;31040:3;31037:11;31034:446;;;31079:38;31111:5;31079:38;:::i;:::-;31163:29;31181:10;31163:29;:::i;:::-;31153:8;31149:44;31346:2;31334:10;31331:18;31328:49;;;31367:8;31352:23;;31328:49;31390:80;31446:22;31464:3;31446:22;:::i;:::-;31436:8;31432:37;31419:11;31390:80;:::i;:::-;31049:431;;31034:446;30944:543;;;:::o;31493:117::-;31547:8;31597:5;31591:4;31587:16;31566:37;;31493:117;;;;:::o;31616:169::-;31660:6;31693:51;31741:1;31737:6;31729:5;31726:1;31722:13;31693:51;:::i;:::-;31689:56;31774:4;31768;31764:15;31754:25;;31667:118;31616:169;;;;:::o;31790:295::-;31866:4;32012:29;32037:3;32031:4;32012:29;:::i;:::-;32004:37;;32074:3;32071:1;32067:11;32061:4;32058:21;32050:29;;31790:295;;;;:::o;32090:1403::-;32214:44;32254:3;32249;32214:44;:::i;:::-;32323:18;32315:6;32312:30;32309:56;;;32345:18;;:::i;:::-;32309:56;32389:38;32421:4;32415:11;32389:38;:::i;:::-;32474:67;32534:6;32526;32520:4;32474:67;:::i;:::-;32568:1;32597:2;32589:6;32586:14;32614:1;32609:632;;;;33285:1;33302:6;33299:84;;;33358:9;33353:3;33349:19;33336:33;33327:42;;33299:84;33409:67;33469:6;33462:5;33409:67;:::i;:::-;33403:4;33396:81;33258:229;32579:908;;32609:632;32661:4;32657:9;32649:6;32645:22;32695:37;32727:4;32695:37;:::i;:::-;32754:1;32768:215;32782:7;32779:1;32776:14;32768:215;;;32868:9;32863:3;32859:19;32846:33;32838:6;32831:49;32919:1;32911:6;32907:14;32897:24;;32966:2;32955:9;32951:18;32938:31;;32805:4;32802:1;32798:12;32793:17;;32768:215;;;33011:6;33002:7;32999:19;32996:186;;;33076:9;33071:3;33067:19;33054:33;33119:48;33161:4;33153:6;33149:17;33138:9;33119:48;:::i;:::-;33111:6;33104:64;33019:163;32996:186;33228:1;33224;33216:6;33212:14;33208:22;33202:4;33195:36;32616:625;;;32579:908;;32189:1304;;;32090:1403;;;:::o;33523:317::-;33621:3;33642:71;33706:6;33701:3;33642:71;:::i;:::-;33635:78;;33723:56;33772:6;33767:3;33760:5;33723:56;:::i;:::-;33804:29;33826:6;33804:29;:::i;:::-;33799:3;33795:39;33788:46;;33523:317;;;;;:::o;33846:554::-;34027:4;34065:2;34054:9;34050:18;34042:26;;34114:9;34108:4;34104:20;34100:1;34089:9;34085:17;34078:47;34142:88;34225:4;34216:6;34208;34142:88;:::i;:::-;34134:96;;34277:9;34271:4;34267:20;34262:2;34251:9;34247:18;34240:48;34305:88;34388:4;34379:6;34371;34305:88;:::i;:::-;34297:96;;33846:554;;;;;;;:::o;34406:115::-;34491:23;34508:5;34491:23;:::i;:::-;34486:3;34479:36;34406:115;;:::o;34527:218::-;34618:4;34656:2;34645:9;34641:18;34633:26;;34669:69;34735:1;34724:9;34720:17;34711:6;34669:69;:::i;:::-;34527:218;;;;:::o;34751:180::-;34799:77;34796:1;34789:88;34896:4;34893:1;34886:15;34920:4;34917:1;34910:15;34937:96;34995:6;35023:3;35013:13;;34937:96;;;;:::o;35039:140::-;35087:4;35110:3;35102:11;;35133:3;35130:1;35123:14;35167:4;35164:1;35154:18;35146:26;;35039:140;;;:::o;35185:541::-;35285:2;35280:3;35277:11;35274:445;;;35319:37;35350:5;35319:37;:::i;:::-;35402:29;35420:10;35402:29;:::i;:::-;35392:8;35388:44;35585:2;35573:10;35570:18;35567:49;;;35606:8;35591:23;;35567:49;35629:80;35685:22;35703:3;35685:22;:::i;:::-;35675:8;35671:37;35658:11;35629:80;:::i;:::-;35289:430;;35274:445;35185:541;;;:::o;35732:1398::-;35854:43;35893:3;35888;35854:43;:::i;:::-;35962:18;35954:6;35951:30;35948:56;;;35984:18;;:::i;:::-;35948:56;36028:38;36060:4;36054:11;36028:38;:::i;:::-;36113:66;36172:6;36164;36158:4;36113:66;:::i;:::-;36206:1;36235:2;36227:6;36224:14;36252:1;36247:631;;;;36922:1;36939:6;36936:84;;;36995:9;36990:3;36986:19;36973:33;36964:42;;36936:84;37046:67;37106:6;37099:5;37046:67;:::i;:::-;37040:4;37033:81;36895:229;36217:907;;36247:631;36299:4;36295:9;36287:6;36283:22;36333:36;36364:4;36333:36;:::i;:::-;36391:1;36405:215;36419:7;36416:1;36413:14;36405:215;;;36505:9;36500:3;36496:19;36483:33;36475:6;36468:49;36556:1;36548:6;36544:14;36534:24;;36603:2;36592:9;36588:18;36575:31;;36442:4;36439:1;36435:12;36430:17;;36405:215;;;36648:6;36639:7;36636:19;36633:186;;;36713:9;36708:3;36704:19;36691:33;36756:48;36798:4;36790:6;36786:17;36775:9;36756:48;:::i;:::-;36748:6;36741:64;36656:163;36633:186;36865:1;36861;36853:6;36849:14;36845:22;36839:4;36832:36;36254:624;;;36217:907;;35829:1301;;;35732:1398;;;:::o;37158:314::-;37254:3;37275:70;37338:6;37333:3;37275:70;:::i;:::-;37268:77;;37355:56;37404:6;37399:3;37392:5;37355:56;:::i;:::-;37436:29;37458:6;37436:29;:::i;:::-;37431:3;37427:39;37420:46;;37158:314;;;;;:::o;37478:329::-;37599:4;37637:2;37626:9;37622:18;37614:26;;37686:9;37680:4;37676:20;37672:1;37661:9;37657:17;37650:47;37714:86;37795:4;37786:6;37778;37714:86;:::i;:::-;37706:94;;37478:329;;;;;:::o;37813:183::-;37851:3;37874:23;37891:5;37874:23;:::i;:::-;37865:32;;37919:18;37912:5;37909:29;37906:55;;37941:18;;:::i;:::-;37906:55;37988:1;37981:5;37977:13;37970:20;;37813:183;;;:::o;38002:333::-;38125:4;38163:2;38152:9;38148:18;38140:26;;38212:9;38206:4;38202:20;38198:1;38187:9;38183:17;38176:47;38240:88;38323:4;38314:6;38306;38240:88;:::i;:::-;38232:96;;38002:333;;;;;:::o;38341:142::-;38391:9;38424:53;38442:34;38451:24;38469:5;38451:24;:::i;:::-;38442:34;:::i;:::-;38424:53;:::i;:::-;38411:66;;38341:142;;;:::o;38489:126::-;38539:9;38572:37;38603:5;38572:37;:::i;:::-;38559:50;;38489:126;;;:::o;38621:134::-;38679:9;38712:37;38743:5;38712:37;:::i;:::-;38699:50;;38621:134;;;:::o;38761:147::-;38856:45;38895:5;38856:45;:::i;:::-;38851:3;38844:58;38761:147;;:::o;38914:238::-;39015:4;39053:2;39042:9;39038:18;39030:26;;39066:79;39142:1;39131:9;39127:17;39118:6;39066:79;:::i;:::-;38914:238;;;;:::o;39158:1390::-;39273:36;39305:3;39273:36;:::i;:::-;39374:18;39366:6;39363:30;39360:56;;;39396:18;;:::i;:::-;39360:56;39440:38;39472:4;39466:11;39440:38;:::i;:::-;39525:66;39584:6;39576;39570:4;39525:66;:::i;:::-;39618:1;39642:4;39629:17;;39674:2;39666:6;39663:14;39691:1;39686:617;;;;40347:1;40364:6;40361:77;;;40413:9;40408:3;40404:19;40398:26;40389:35;;40361:77;40464:67;40524:6;40517:5;40464:67;:::i;:::-;40458:4;40451:81;40320:222;39656:886;;39686:617;39738:4;39734:9;39726:6;39722:22;39772:36;39803:4;39772:36;:::i;:::-;39830:1;39844:208;39858:7;39855:1;39852:14;39844:208;;;39937:9;39932:3;39928:19;39922:26;39914:6;39907:42;39988:1;39980:6;39976:14;39966:24;;40035:2;40024:9;40020:18;40007:31;;39881:4;39878:1;39874:12;39869:17;;39844:208;;;40080:6;40071:7;40068:19;40065:179;;;40138:9;40133:3;40129:19;40123:26;40181:48;40223:4;40215:6;40211:17;40200:9;40181:48;:::i;:::-;40173:6;40166:64;40088:156;40065:179;40290:1;40286;40278:6;40274:14;40270:22;40264:4;40257:36;39693:610;;;39656:886;;39248:1300;;;39158:1390;;:::o;40554:228::-;40694:34;40690:1;40682:6;40678:14;40671:58;40763:11;40758:2;40750:6;40746:15;40739:36;40554:228;:::o;40788:366::-;40930:3;40951:67;41015:2;41010:3;40951:67;:::i;:::-;40944:74;;41027:93;41116:3;41027:93;:::i;:::-;41145:2;41140:3;41136:12;41129:19;;40788:366;;;:::o;41160:419::-;41326:4;41364:2;41353:9;41349:18;41341:26;;41413:9;41407:4;41403:20;41399:1;41388:9;41384:17;41377:47;41441:131;41567:4;41441:131;:::i;:::-;41433:139;;41160:419;;;:::o;41585:182::-;41725:34;41721:1;41713:6;41709:14;41702:58;41585:182;:::o;41773:366::-;41915:3;41936:67;42000:2;41995:3;41936:67;:::i;:::-;41929:74;;42012:93;42101:3;42012:93;:::i;:::-;42130:2;42125:3;42121:12;42114:19;;41773:366;;;:::o;42145:419::-;42311:4;42349:2;42338:9;42334:18;42326:26;;42398:9;42392:4;42388:20;42384:1;42373:9;42369:17;42362:47;42426:131;42552:4;42426:131;:::i;:::-;42418:139;;42145:419;;;:::o;42570:526::-;42737:4;42775:2;42764:9;42760:18;42752:26;;42824:9;42818:4;42814:20;42810:1;42799:9;42795:17;42788:47;42852:76;42923:4;42914:6;42852:76;:::i;:::-;42844:84;;42975:9;42969:4;42965:20;42960:2;42949:9;42945:18;42938:48;43003:86;43084:4;43075:6;43067;43003:86;:::i;:::-;42995:94;;42570:526;;;;;;:::o;43102:222::-;43195:4;43233:2;43222:9;43218:18;43210:26;;43246:71;43314:1;43303:9;43299:17;43290:6;43246:71;:::i;:::-;43102:222;;;;:::o;43330:143::-;43387:5;43418:6;43412:13;43403:22;;43434:33;43461:5;43434:33;:::i;:::-;43330:143;;;;:::o;43479:351::-;43549:6;43598:2;43586:9;43577:7;43573:23;43569:32;43566:119;;;43604:79;;:::i;:::-;43566:119;43724:1;43749:64;43805:7;43796:6;43785:9;43781:22;43749:64;:::i;:::-;43739:74;;43695:128;43479:351;;;;:::o;43836:222::-;43929:4;43967:2;43956:9;43952:18;43944:26;;43980:71;44048:1;44037:9;44033:17;44024:6;43980:71;:::i;:::-;43836:222;;;;:::o;44064:169::-;44102:3;44125:23;44142:5;44125:23;:::i;:::-;44116:32;;44170:4;44163:5;44160:15;44157:41;;44178:18;;:::i;:::-;44157:41;44225:1;44218:5;44214:13;44207:20;;44064:169;;;:::o;44239:115::-;44324:23;44341:5;44324:23;:::i;:::-;44319:3;44312:36;44239:115;;:::o;44360:415::-;44497:4;44535:2;44524:9;44520:18;44512:26;;44584:9;44578:4;44574:20;44570:1;44559:9;44555:17;44548:47;44612:76;44683:4;44674:6;44612:76;:::i;:::-;44604:84;;44698:70;44764:2;44753:9;44749:18;44740:6;44698:70;:::i;:::-;44360:415;;;;;:::o;44781:171::-;44819:3;44842:23;44859:5;44842:23;:::i;:::-;44833:32;;44887:6;44880:5;44877:17;44874:43;;44897:18;;:::i;:::-;44874:43;44944:1;44937:5;44933:13;44926:20;;44781:171;;;:::o;44958:612::-;45141:4;45179:2;45168:9;45164:18;45156:26;;45228:9;45222:4;45218:20;45214:1;45203:9;45199:17;45192:47;45256:76;45327:4;45318:6;45256:76;:::i;:::-;45248:84;;45342:70;45408:2;45397:9;45393:18;45384:6;45342:70;:::i;:::-;45459:9;45453:4;45449:20;45444:2;45433:9;45429:18;45422:48;45487:76;45558:4;45549:6;45487:76;:::i;:::-;45479:84;;44958:612;;;;;;:::o;45576:191::-;45616:3;45635:20;45653:1;45635:20;:::i;:::-;45630:25;;45669:20;45687:1;45669:20;:::i;:::-;45664:25;;45712:1;45709;45705:9;45698:16;;45733:3;45730:1;45727:10;45724:36;;;45740:18;;:::i;:::-;45724:36;45576:191;;;;:::o;45773:117::-;45882:1;45879;45872:12;45896:117;46005:1;46002;45995:12;46019:117;46128:1;46125;46118:12;46142:724;46219:4;46225:6;46281:11;46268:25;46381:1;46375:4;46371:12;46360:8;46344:14;46340:29;46336:48;46316:18;46312:73;46302:168;;46389:79;;:::i;:::-;46302:168;46501:18;46491:8;46487:33;46479:41;;46553:4;46540:18;46530:28;;46581:18;46573:6;46570:30;46567:117;;;46603:79;;:::i;:::-;46567:117;46711:2;46705:4;46701:13;46693:21;;46768:4;46760:6;46756:17;46740:14;46736:38;46730:4;46726:49;46723:136;;;46778:79;;:::i;:::-;46723:136;46232:634;46142:724;;;;;:::o;46872:117::-;46981:1;46978;46971:12;46995:117;47104:1;47101;47094:12;47118:469;47223:9;47234;47272:8;47260:10;47257:24;47254:111;;;47284:79;;:::i;:::-;47254:111;47390:6;47380:8;47377:20;47374:107;;;47400:79;;:::i;:::-;47374:107;47531:1;47519:10;47515:18;47507:6;47503:31;47490:44;;47570:10;47560:8;47556:25;47543:38;;47118:469;;;;;;;:::o;47685:552::-;47776:5;47807:45;47848:3;47841:5;47807:45;:::i;:::-;47877:5;47901:41;47932:8;47919:22;47901:41;:::i;:::-;47892:50;;47966:2;47958:6;47955:14;47952:278;;;48037:169;48122:66;48092:6;48088:2;48084:15;48081:1;48077:23;48037:169;:::i;:::-;48014:5;47993:227;47984:236;;47952:278;47782:455;;47685:552;;;;:::o;48243:239::-;48383:34;48379:1;48371:6;48367:14;48360:58;48452:22;48447:2;48439:6;48435:15;48428:47;48243:239;:::o;48488:366::-;48630:3;48651:67;48715:2;48710:3;48651:67;:::i;:::-;48644:74;;48727:93;48816:3;48727:93;:::i;:::-;48845:2;48840:3;48836:12;48829:19;;48488:366;;;:::o;48860:419::-;49026:4;49064:2;49053:9;49049:18;49041:26;;49113:9;49107:4;49103:20;49099:1;49088:9;49084:17;49077:47;49141:131;49267:4;49141:131;:::i;:::-;49133:139;;48860:419;;;:::o;49307:327::-;49421:3;49442:88;49523:6;49518:3;49442:88;:::i;:::-;49435:95;;49540:56;49589:6;49584:3;49577:5;49540:56;:::i;:::-;49621:6;49616:3;49612:16;49605:23;;49307:327;;;;;:::o;49640:291::-;49780:3;49802:103;49901:3;49892:6;49884;49802:103;:::i;:::-;49795:110;;49922:3;49915:10;;49640:291;;;;;:::o;49937:180::-;49985:77;49982:1;49975:88;50082:4;50079:1;50072:15;50106:4;50103:1;50096:15" + }, + "methodIdentifiers": { + "ABI(bytes32,uint256)": "2203ab56", + "addr(bytes32)": "3b3b57de", + "addr(bytes32,uint256)": "f1cb7e06", + "approve(bytes32,address,bool)": "a4b91a01", + "clearRecords(bytes32)": "3603d758", + "contenthash(bytes32)": "bc1c58d1", + "dnsRecord(bytes32,bytes32,uint16)": "a8fa5682", + "hasDNSRecords(bytes32,bytes32)": "4cbf6ba4", + "interfaceImplementer(bytes32,bytes4)": "124a319c", + "isApprovedFor(address,bytes32,address)": "a9784b3e", + "isApprovedForAll(address,address)": "e985e9c5", + "multicall(bytes[])": "ac9650d8", + "multicallWithNodeCheck(bytes32,bytes[])": "e32954eb", + "name(bytes32)": "691f3431", + "pubkey(bytes32)": "c8690233", + "recordVersions(bytes32)": "d700ff33", + "setABI(bytes32,uint256,bytes)": "623195b0", + "setAddr(bytes32,address)": "d5fa2b00", + "setAddr(bytes32,uint256,bytes)": "8b95dd71", + "setApprovalForAll(address,bool)": "a22cb465", + "setContenthash(bytes32,bytes)": "304e6ade", + "setDNSRecords(bytes32,bytes)": "0af179d7", + "setInterface(bytes32,bytes4,address)": "e59d895d", + "setName(bytes32,string)": "77372213", + "setPubkey(bytes32,bytes32,bytes32)": "29cd62ea", + "setText(bytes32,string,string)": "10f13a8c", + "setZonehash(bytes32,bytes)": "ce3decdc", + "supportsInterface(bytes4)": "01ffc9a7", + "text(bytes32,string)": "59d1d43c", + "zonehash(bytes32)": "5c98042b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ENS\",\"name\":\"_ens\",\"type\":\"address\"},{\"internalType\":\"contract INameWrapper\",\"name\":\"wrapperAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_trustedETHController\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_trustedReverseRegistrar\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"contentType\",\"type\":\"uint256\"}],\"name\":\"ABIChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"Approved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"ContenthashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"record\",\"type\":\"bytes\"}],\"name\":\"DNSRecordChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"DNSRecordDeleted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"lastzonehash\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"zonehash\",\"type\":\"bytes\"}],\"name\":\"DNSZonehashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"InterfaceChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NameChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"PubkeyChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"indexedKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"TextChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"contentTypes\",\"type\":\"uint256\"}],\"name\":\"ABI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"contenthash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"dnsRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"}],\"name\":\"hasDNSRecords\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"interfaceImplementer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"}],\"name\":\"isApprovedFor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicall\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"nodehash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicallWithNodeCheck\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"results\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"pubkey\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"contentType\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setABI\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setContenthash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDNSRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"internalType\":\"address\",\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"setInterface\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"setPubkey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setText\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setZonehash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"text\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"zonehash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"ABI(bytes32,uint256)\":{\"params\":{\"contentTypes\":\"A bitwise OR of the ABI formats accepted by the caller.\",\"node\":\"The ENS node to query\"},\"returns\":{\"_0\":\"contentType The content type of the return value\",\"_1\":\"data The ABI data\"}},\"addr(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated address.\"}},\"approve(bytes32,address,bool)\":{\"details\":\"Approve a delegate to be able to updated records on a node.\"},\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"contenthash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}},\"dnsRecord(bytes32,bytes32,uint16)\":{\"params\":{\"name\":\"the keccak-256 hash of the fully-qualified name for which to fetch the record\",\"node\":\"the namehash of the node for which to fetch the record\",\"resource\":\"the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\"},\"returns\":{\"_0\":\"the DNS record in wire format if present, otherwise empty\"}},\"hasDNSRecords(bytes32,bytes32)\":{\"params\":{\"name\":\"the namehash of the node for which to check the records\",\"node\":\"the namehash of the node for which to check the records\"}},\"interfaceImplementer(bytes32,bytes4)\":{\"params\":{\"interfaceID\":\"The EIP 165 interface ID to check for.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The address that implements this interface, or 0 if the interface is unsupported.\"}},\"isApprovedFor(address,bytes32,address)\":{\"details\":\"Check to see if the delegate has been approved by the owner for the node.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC1155-isApprovedForAll}.\"},\"name(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated name.\"}},\"pubkey(bytes32)\":{\"params\":{\"node\":\"The ENS node to query\"},\"returns\":{\"x\":\"The X coordinate of the curve point for the public key.\",\"y\":\"The Y coordinate of the curve point for the public key.\"}},\"setABI(bytes32,uint256,bytes)\":{\"params\":{\"contentType\":\"The content type of the ABI\",\"data\":\"The ABI data.\",\"node\":\"The node to update.\"}},\"setAddr(bytes32,address)\":{\"params\":{\"a\":\"The address to set.\",\"node\":\"The node to update.\"}},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC1155-setApprovalForAll}.\"},\"setContenthash(bytes32,bytes)\":{\"params\":{\"hash\":\"The contenthash to set\",\"node\":\"The node to update.\"}},\"setDNSRecords(bytes32,bytes)\":{\"params\":{\"data\":\"the DNS wire format records to set\",\"node\":\"the namehash of the node for which to set the records\"}},\"setInterface(bytes32,bytes4,address)\":{\"params\":{\"implementer\":\"The address of a contract that implements this interface for this node.\",\"interfaceID\":\"The EIP 165 interface ID.\",\"node\":\"The node to update.\"}},\"setName(bytes32,string)\":{\"params\":{\"node\":\"The node to update.\"}},\"setPubkey(bytes32,bytes32,bytes32)\":{\"params\":{\"node\":\"The ENS node to query\",\"x\":\"the X coordinate of the curve point for the public key.\",\"y\":\"the Y coordinate of the curve point for the public key.\"}},\"setText(bytes32,string,string)\":{\"params\":{\"key\":\"The key to set.\",\"node\":\"The node to update.\",\"value\":\"The text data value to set.\"}},\"setZonehash(bytes32,bytes)\":{\"params\":{\"hash\":\"The zonehash to set\",\"node\":\"The node to update.\"}},\"text(bytes32,string)\":{\"params\":{\"key\":\"The text data key to query.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated text data.\"}},\"zonehash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"ABI(bytes32,uint256)\":{\"notice\":\"Returns the ABI associated with an ENS node. Defined in EIP205.\"},\"addr(bytes32)\":{\"notice\":\"Returns the address associated with an ENS node.\"},\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"contenthash(bytes32)\":{\"notice\":\"Returns the contenthash associated with an ENS node.\"},\"dnsRecord(bytes32,bytes32,uint16)\":{\"notice\":\"Obtain a DNS record.\"},\"hasDNSRecords(bytes32,bytes32)\":{\"notice\":\"Check if a given node has records.\"},\"interfaceImplementer(bytes32,bytes4)\":{\"notice\":\"Returns the address of a contract that implements the specified interface for this name. If an implementer has not been set for this interfaceID and name, the resolver will query the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that contract implements EIP165 and returns `true` for the specified interfaceID, its address will be returned.\"},\"name(bytes32)\":{\"notice\":\"Returns the name associated with an ENS node, for reverse records. Defined in EIP181.\"},\"pubkey(bytes32)\":{\"notice\":\"Returns the SECP256k1 public key associated with an ENS node. Defined in EIP 619.\"},\"setABI(bytes32,uint256,bytes)\":{\"notice\":\"Sets the ABI associated with an ENS node. Nodes may have one ABI of each content type. To remove an ABI, set it to the empty string.\"},\"setAddr(bytes32,address)\":{\"notice\":\"Sets the address associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setContenthash(bytes32,bytes)\":{\"notice\":\"Sets the contenthash associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setDNSRecords(bytes32,bytes)\":{\"notice\":\"Set one or more DNS records. Records are supplied in wire-format. Records with the same node/name/resource must be supplied one after the other to ensure the data is updated correctly. For example, if the data was supplied: a.example.com IN A 1.2.3.4 a.example.com IN A 5.6.7.8 www.example.com IN CNAME a.example.com. then this would store the two A records for a.example.com correctly as a single RRSET, however if the data was supplied: a.example.com IN A 1.2.3.4 www.example.com IN CNAME a.example.com. a.example.com IN A 5.6.7.8 then this would store the first A record, the CNAME, then the second A record which would overwrite the first.\"},\"setInterface(bytes32,bytes4,address)\":{\"notice\":\"Sets an interface associated with a name. Setting the address to 0 restores the default behaviour of querying the contract at `addr()` for interface support.\"},\"setName(bytes32,string)\":{\"notice\":\"Sets the name associated with an ENS node, for reverse records. May only be called by the owner of that node in the ENS registry.\"},\"setPubkey(bytes32,bytes32,bytes32)\":{\"notice\":\"Sets the SECP256k1 public key associated with an ENS node.\"},\"setText(bytes32,string,string)\":{\"notice\":\"Sets the text data associated with an ENS node and key. May only be called by the owner of that node in the ENS registry.\"},\"setZonehash(bytes32,bytes)\":{\"notice\":\"setZonehash sets the hash for the zone. May only be called by the owner of that node in the ENS registry.\"},\"text(bytes32,string)\":{\"notice\":\"Returns the text data associated with an ENS node and key.\"},\"zonehash(bytes32)\":{\"notice\":\"zonehash obtains the hash for the zone.\"}},\"notice\":\"A simple resolver anyone can use; only allows the owner of a node to set its address.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol\":\"PublicResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/buffer/contracts/Buffer.sol\":{\"keccak256\":\"0xd6dd3b0b327288f8e1b711a609f4040fea602e2ad4bba9febdf2f33b4e56eb0c\",\"license\":\"BSD-2-Clause\",\"urls\":[\"bzz-raw://78a722152d40d778a97595e5224fac1d138f4e659dcb1a926148909ef4c4bdca\",\"dweb:/ipfs/QmRxScF53x5ywsChLNpMUCdg2TSoCWTfo8G65Mo3sGY55b\"]},\"@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol\":{\"keccak256\":\"0xe4470c1578b2ee78e64bd8925bf391ffe98d5497aeef15b593380c7fe905af5d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a224aea2aeda30b428ac48c27d9ed559ad8baa9eabe14008e6125e7ac471b2be\",\"dweb:/ipfs/QmWCVjSVAuiDPmX8Ldg4AgBsJR7TdUuMoNTQ8YVuQ2AhSh\"]},\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.sol\":{\"keccak256\":\"0x0334202e20bb11995997083d05963f5e8e7ed6194cba494e7f9371ab7bf4e2c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908cca2deff3405d2dcfcbe913d2d75c380ac003b458696e202420ce1ee130\",\"dweb:/ipfs/QmYSTjaVyc5XxCkhMse8DdAbVFzYsijtoc9qgcDVPZhuqh\"]},\"@ensdomains/ens-contracts/contracts/resolvers/Multicallable.sol\":{\"keccak256\":\"0x1063a9dd3b94ba304624d5ec6deb43c1916640758ae970eece4d4e3ef8b2fcb1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f0962655fff6e4eac6ed11e35caee12dbf3da2b88335abb879eb3bcf909df603\",\"dweb:/ipfs/QmPWMCApZQJ5YRJvsMDwYwFZJuMraJtF8MF4XiCaNSYMAi\"]},\"@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.sol\":{\"keccak256\":\"0x24c839eb7118da8eea65d07401cc26bad0444a3e651b2cb19749c43065bd24de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e898391e74d9a368d1fce360321238d90fe4f343d79ce48d0052e24145483322\",\"dweb:/ipfs/QmXzErgpvVUyuCAkhgE9bnHhH689suBmR3xudABmuF3RHt\"]},\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol\":{\"keccak256\":\"0x2da96d7750786afe3be019fc6ff768e2d98a5e61d360bd92d8d7bc3c7c1dcc27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3df46177e2a9d7a52fab5d752b99cc8232a418231e42f850d2c7e555215d695c\",\"dweb:/ipfs/QmfZdRJXBkHsef3yVKdhtd6pCtP3JAevMQa6UNLvf43bh8\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol\":{\"keccak256\":\"0x7f6ebb3144530a02db03379f33ade869c8408eceed36dfbd751aaff198735b55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6ec26e51e39e1cbbf84fb7813a1613c90016474f9ed762a48e5834e25bb5a9eb\",\"dweb:/ipfs/QmbdHZTMvAT9hozT1rXPubMqZEAUnvPheWGmp7hkm3yYY9\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol\":{\"keccak256\":\"0xc9755bfb77985375ded880ecab5af41f2b9e8280f30d3e523fe5042ea59f93ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25d0d93c42d12f1ab7e87f4217d4b5f7ae6799d46f51f4a6f5fb41cc564dcb38\",\"dweb:/ipfs/QmU9hWCCPtjNPzG79fNW5NrT6qCNpFLGZpoXezSToxSH8G\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol\":{\"keccak256\":\"0x7233e4d2edca222ce6e1cdb07adf127ab52ecaea599fa5369971a7b28dbc59ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://08c9a76854349097477addeb40af1488455ba9c53a60140e0be1c4fc2ea16b43\",\"dweb:/ipfs/QmSHqh8SRVmRKqhSsAxEkuY2P4PDLXeXKtNLoh3Rou3QQY\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol\":{\"keccak256\":\"0x85b373d02d19374fe570af407f459768285704bf7f30ab17c30eabfb5a10e4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2046ce3d92d29806d7b447f7ab4227f19b0b2e5c75fd5b4a3fcaef7fe2442141\",\"dweb:/ipfs/QmRgnfWjFetrSJngkhU7Yui1ZcK1MeatvZDpvUTYNuYnND\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":{\"keccak256\":\"0x2ad7f2fc60ebe0f93745fe70247f6a854f66af732483fda2a3c5e055614445e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43922ba183ff20d87dce7fc5d715e626b26594151e36dcc8d7c6329b9a822963\",\"dweb:/ipfs/QmTg9uHTugTxzqddN68gnhNbGt4bGJBS9mQcss6GYggR4X\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":{\"keccak256\":\"0x411447c1e90c51e09702815a85ec725ffbbe37cf96e8cc4d2a8bd4ad8a59d73e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543aa2756447a428711b69aea79e9f4641c22f8330ba920b2a49fde8d9207f82\",\"dweb:/ipfs/QmTdpcYRWLH3BL7iytnqcSzRojTPe3YettKaTqeCvKPk54\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol\":{\"keccak256\":\"0xd95cd77684ba5752c428d7dceb4ecc6506ac94f4fbb910489637eb68dcd8e366\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://daf1fee7770679bd935b8b5686789a4ecc532caeef5a9b8e1b60ae0c285e743e\",\"dweb:/ipfs/QmSaHBAqtDdbQLH6QN4EbupMrq2ah8g6fqE7fLX1u4cjMZ\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol\":{\"keccak256\":\"0xcfa52200edd337f2c6c5bf402352600584da033b21323603e53de33051a3e25d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c8355211d58db82660140191678ee342eb8a7ac46fa097ae8e03eef008f592e\",\"dweb:/ipfs/QmYDNiECPd4fJ7Vk9Xywfpg73rUvDpcYqas95ofGcpt7fM\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol\":{\"keccak256\":\"0xca1b3a16e7005533f2800a3e66fcdccf7c574deac7913d8c810f40aec1d58dc0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4e38d5eb69e236c37e4a013628838070720c9e1923569650b01252868038c7a\",\"dweb:/ipfs/QmV397iZMRxtem79kJy5sueJadXoVL89gNViX2xciQHUrk\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol\":{\"keccak256\":\"0x390321fb58f7b927df9562450981e74b4be3907e7c09df321fd3b7409b63ae28\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://045d12c6e0e4596b3672614751a9e75188183a89765a6abd938294e0294e9c56\",\"dweb:/ipfs/QmazngvagEoKe29s4M9Rv8KygWD5hrAtNPkYDPJ2pK13yx\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol\":{\"keccak256\":\"0x9ec392b612447b1acbdc01114f2da2837a658d3f3157f60a99c5269f0b623346\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5b2cd9e5339b09f40e82bd91fed7d5f643dd031393eefb9aec588eaba8465049\",\"dweb:/ipfs/QmT2A8eswhJU9YadCs9BtwKNj6YGypntXmFepANQYyGw7x\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol\":{\"keccak256\":\"0x69748947093dd2fda9ddcebd0adf19a6d1e7600df1d4b1462a0417156caddca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2f86e50bd17c38fb10feb577d88d8970c585017a391ef10e3aaa3d50f81555\",\"dweb:/ipfs/QmaxLx2pqCUxf9W2dusfviZ9aSiTuVwuekGo73rjvmGifE\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol\":{\"keccak256\":\"0x7c5debb3c42cd9f5de2274ea7aa053f238608314b62db441c40e31cea2543fd5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://412e34ae2d84d542ffa6791486963f3fe04432a3ffd51877d441256dc2941914\",\"dweb:/ipfs/QmciS4mGAQ6KJtLiLcBFekHKhYAYMmubDWGkpZ3sUFtJPW\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol\":{\"keccak256\":\"0x820ec60183e7a49a4ee399cf4708acb776725c8e4ad275d1f316c152eace0a59\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ce8b732ae841183aba20b2c3e9f99dd545a2f5dbba0b888d0b2b804e0fb9751\",\"dweb:/ipfs/QmcNHXpnLRscbXUjAYAfE5dPG5c62m37NpQRq25rPTucTT\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol\":{\"keccak256\":\"0x52d0bbb8f9dd33fae471ef2f5f6b3118b221954e5bb7ba724885d4562e75b8e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ce4aac77e3e98119927a9cf87ec050393f187e05b0f9d25af5fdefd088558051\",\"dweb:/ipfs/QmZqtxCa8whU7VP4uKWJnw14XL4UhgZmREJf9HQMcpkvfe\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol\":{\"keccak256\":\"0x1a1f10a0e40520c998a9296fc81c092c81521e05a784e9bd9ee44cc4c62c8c78\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d182d50aae9798deeaae0f92af9bd6bc01ba42c36a999f6f711072ad9dc0e40e\",\"dweb:/ipfs/QmdmVMfmBAypd7cFJqkiHFH9D1UT8iQ5Bjg3VzynyMfVH2\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol\":{\"keccak256\":\"0xf9bedd807add38136779d84083ac2fa4f8c92d017c9e1a72fbc9003fa5074379\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c2629f9bf2644266d3d7d9c6dae35885fc264a5cb69dc63e8d176f8d523d5fd1\",\"dweb:/ipfs/QmXGJ1BAZRabEu11JafxWmEPm893SBGP9TYmKi1pX81B4u\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol\":{\"keccak256\":\"0x78a28627241535b595f6fff476a1fa7acc90c80684fe7784734920fc8af6fc22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://988e059f54bf387eab677161edf2e0746cc060fb6a2d34f20a283ee9e2e17bb3\",\"dweb:/ipfs/QmUVtTvZ3ijd2zi1pbPcMVyVrLVJwEhAnh5mK3MnJsHUZT\"]},\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":{\"keccak256\":\"0xb3f1cf6df01ed7b15e5f2318f6823afbdb586ca38c2124c67955c645647ae9a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71aa1053dd87829c5eb25d32840d7b0d33cd9d54d22e905a01436bf97cc32b8c\",\"dweb:/ipfs/QmeMNnGKqf3oZyYwDQzEuQhti58UCCMRCMAD2EBx5T8dSH\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\":{\"keccak256\":\"0x70310eb67146d7290731c31841399640ac3b6a949eadc6598bc150123d185c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a85d9e2d6b235900131129386047fae5fb77438806b681ac566119868be5a502\",\"dweb:/ipfs/Qmd9ys5jeRx77TDVeRqWUme7a5LUDT4k7wQ91wVSayDpTR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":{\"keccak256\":\"0x42e0cec6cd9d1a62d51d45b678f69d3e4ad5555e659b197e41257b308346bb8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5afeadfdf2232a2333afb5345b65a25f7199b62ed6fde403273b762c91f5e9af\",\"dweb:/ipfs/QmWKhi3FuqX2KgRrBdh65gB3pmiwA2QMYPeiDbsMKv6a88\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol": { + "ResolverBase": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "recordVersions(bytes32)": "d700ff33", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":\"ResolverBase\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol": { + "ABIResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "contentType", + "type": "uint256" + } + ], + "name": "ABIChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "contentTypes", + "type": "uint256" + } + ], + "name": "ABI", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "contentType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setABI", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "ABI(bytes32,uint256)": "2203ab56", + "clearRecords(bytes32)": "3603d758", + "recordVersions(bytes32)": "d700ff33", + "setABI(bytes32,uint256,bytes)": "623195b0", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"contentType\",\"type\":\"uint256\"}],\"name\":\"ABIChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"contentTypes\",\"type\":\"uint256\"}],\"name\":\"ABI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"contentType\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setABI\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"ABI(bytes32,uint256)\":{\"params\":{\"contentTypes\":\"A bitwise OR of the ABI formats accepted by the caller.\",\"node\":\"The ENS node to query\"},\"returns\":{\"_0\":\"contentType The content type of the return value\",\"_1\":\"data The ABI data\"}},\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"setABI(bytes32,uint256,bytes)\":{\"params\":{\"contentType\":\"The content type of the ABI\",\"data\":\"The ABI data.\",\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"ABI(bytes32,uint256)\":{\"notice\":\"Returns the ABI associated with an ENS node. Defined in EIP205.\"},\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setABI(bytes32,uint256,bytes)\":{\"notice\":\"Sets the ABI associated with an ENS node. Nodes may have one ABI of each content type. To remove an ABI, set it to the empty string.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol\":\"ABIResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.sol\":{\"keccak256\":\"0x2da96d7750786afe3be019fc6ff768e2d98a5e61d360bd92d8d7bc3c7c1dcc27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3df46177e2a9d7a52fab5d752b99cc8232a418231e42f850d2c7e555215d695c\",\"dweb:/ipfs/QmfZdRJXBkHsef3yVKdhtd6pCtP3JAevMQa6UNLvf43bh8\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol\":{\"keccak256\":\"0x85b373d02d19374fe570af407f459768285704bf7f30ab17c30eabfb5a10e4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2046ce3d92d29806d7b447f7ab4227f19b0b2e5c75fd5b4a3fcaef7fe2442141\",\"dweb:/ipfs/QmRgnfWjFetrSJngkhU7Yui1ZcK1MeatvZDpvUTYNuYnND\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol": { + "AddrResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "AddrChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "newAddress", + "type": "bytes" + } + ], + "name": "AddressChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "a", + "type": "bytes" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addr(bytes32)": "3b3b57de", + "addr(bytes32,uint256)": "f1cb7e06", + "clearRecords(bytes32)": "3603d758", + "recordVersions(bytes32)": "d700ff33", + "setAddr(bytes32,address)": "d5fa2b00", + "setAddr(bytes32,uint256,bytes)": "8b95dd71", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addr(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated address.\"}},\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"setAddr(bytes32,address)\":{\"params\":{\"a\":\"The address to set.\",\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addr(bytes32)\":{\"notice\":\"Returns the address associated with an ENS node.\"},\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setAddr(bytes32,address)\":{\"notice\":\"Sets the address associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol\":\"AddrResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol\":{\"keccak256\":\"0x7f6ebb3144530a02db03379f33ade869c8408eceed36dfbd751aaff198735b55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6ec26e51e39e1cbbf84fb7813a1613c90016474f9ed762a48e5834e25bb5a9eb\",\"dweb:/ipfs/QmbdHZTMvAT9hozT1rXPubMqZEAUnvPheWGmp7hkm3yYY9\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":{\"keccak256\":\"0x2ad7f2fc60ebe0f93745fe70247f6a854f66af732483fda2a3c5e055614445e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43922ba183ff20d87dce7fc5d715e626b26594151e36dcc8d7c6329b9a822963\",\"dweb:/ipfs/QmTg9uHTugTxzqddN68gnhNbGt4bGJBS9mQcss6GYggR4X\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":{\"keccak256\":\"0x411447c1e90c51e09702815a85ec725ffbbe37cf96e8cc4d2a8bd4ad8a59d73e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543aa2756447a428711b69aea79e9f4641c22f8330ba920b2a49fde8d9207f82\",\"dweb:/ipfs/QmTdpcYRWLH3BL7iytnqcSzRojTPe3YettKaTqeCvKPk54\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol": { + "ContentHashResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "ContenthashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "contenthash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "setContenthash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "contenthash(bytes32)": "bc1c58d1", + "recordVersions(bytes32)": "d700ff33", + "setContenthash(bytes32,bytes)": "304e6ade", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"ContenthashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"contenthash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setContenthash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"contenthash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}},\"setContenthash(bytes32,bytes)\":{\"params\":{\"hash\":\"The contenthash to set\",\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"contenthash(bytes32)\":{\"notice\":\"Returns the contenthash associated with an ENS node.\"},\"setContenthash(bytes32,bytes)\":{\"notice\":\"Sets the contenthash associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol\":\"ContentHashResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.sol\":{\"keccak256\":\"0xc9755bfb77985375ded880ecab5af41f2b9e8280f30d3e523fe5042ea59f93ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25d0d93c42d12f1ab7e87f4217d4b5f7ae6799d46f51f4a6f5fb41cc564dcb38\",\"dweb:/ipfs/QmU9hWCCPtjNPzG79fNW5NrT6qCNpFLGZpoXezSToxSH8G\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol\":{\"keccak256\":\"0xd95cd77684ba5752c428d7dceb4ecc6506ac94f4fbb910489637eb68dcd8e366\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://daf1fee7770679bd935b8b5686789a4ecc532caeef5a9b8e1b60ae0c285e743e\",\"dweb:/ipfs/QmSaHBAqtDdbQLH6QN4EbupMrq2ah8g6fqE7fLX1u4cjMZ\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol": { + "DNSResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "record", + "type": "bytes" + } + ], + "name": "DNSRecordChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "DNSRecordDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "lastzonehash", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "zonehash", + "type": "bytes" + } + ], + "name": "DNSZonehashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "name", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "dnsRecord", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "name", + "type": "bytes32" + } + ], + "name": "hasDNSRecords", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setDNSRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "setZonehash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "zonehash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "dnsRecord(bytes32,bytes32,uint16)": "a8fa5682", + "hasDNSRecords(bytes32,bytes32)": "4cbf6ba4", + "recordVersions(bytes32)": "d700ff33", + "setDNSRecords(bytes32,bytes)": "0af179d7", + "setZonehash(bytes32,bytes)": "ce3decdc", + "supportsInterface(bytes4)": "01ffc9a7", + "zonehash(bytes32)": "5c98042b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"record\",\"type\":\"bytes\"}],\"name\":\"DNSRecordChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"DNSRecordDeleted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"lastzonehash\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"zonehash\",\"type\":\"bytes\"}],\"name\":\"DNSZonehashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"dnsRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"}],\"name\":\"hasDNSRecords\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDNSRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setZonehash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"zonehash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"dnsRecord(bytes32,bytes32,uint16)\":{\"params\":{\"name\":\"the keccak-256 hash of the fully-qualified name for which to fetch the record\",\"node\":\"the namehash of the node for which to fetch the record\",\"resource\":\"the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\"},\"returns\":{\"_0\":\"the DNS record in wire format if present, otherwise empty\"}},\"hasDNSRecords(bytes32,bytes32)\":{\"params\":{\"name\":\"the namehash of the node for which to check the records\",\"node\":\"the namehash of the node for which to check the records\"}},\"setDNSRecords(bytes32,bytes)\":{\"params\":{\"data\":\"the DNS wire format records to set\",\"node\":\"the namehash of the node for which to set the records\"}},\"setZonehash(bytes32,bytes)\":{\"params\":{\"hash\":\"The zonehash to set\",\"node\":\"The node to update.\"}},\"zonehash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"dnsRecord(bytes32,bytes32,uint16)\":{\"notice\":\"Obtain a DNS record.\"},\"hasDNSRecords(bytes32,bytes32)\":{\"notice\":\"Check if a given node has records.\"},\"setDNSRecords(bytes32,bytes)\":{\"notice\":\"Set one or more DNS records. Records are supplied in wire-format. Records with the same node/name/resource must be supplied one after the other to ensure the data is updated correctly. For example, if the data was supplied: a.example.com IN A 1.2.3.4 a.example.com IN A 5.6.7.8 www.example.com IN CNAME a.example.com. then this would store the two A records for a.example.com correctly as a single RRSET, however if the data was supplied: a.example.com IN A 1.2.3.4 www.example.com IN CNAME a.example.com. a.example.com IN A 5.6.7.8 then this would store the first A record, the CNAME, then the second A record which would overwrite the first.\"},\"setZonehash(bytes32,bytes)\":{\"notice\":\"setZonehash sets the hash for the zone. May only be called by the owner of that node in the ENS registry.\"},\"zonehash(bytes32)\":{\"notice\":\"zonehash obtains the hash for the zone.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol\":\"DNSResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/buffer/contracts/Buffer.sol\":{\"keccak256\":\"0xd6dd3b0b327288f8e1b711a609f4040fea602e2ad4bba9febdf2f33b4e56eb0c\",\"license\":\"BSD-2-Clause\",\"urls\":[\"bzz-raw://78a722152d40d778a97595e5224fac1d138f4e659dcb1a926148909ef4c4bdca\",\"dweb:/ipfs/QmRxScF53x5ywsChLNpMUCdg2TSoCWTfo8G65Mo3sGY55b\"]},\"@ensdomains/ens-contracts/contracts/dnssec-oracle/RRUtils.sol\":{\"keccak256\":\"0xe4470c1578b2ee78e64bd8925bf391ffe98d5497aeef15b593380c7fe905af5d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a224aea2aeda30b428ac48c27d9ed559ad8baa9eabe14008e6125e7ac471b2be\",\"dweb:/ipfs/QmWCVjSVAuiDPmX8Ldg4AgBsJR7TdUuMoNTQ8YVuQ2AhSh\"]},\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.sol\":{\"keccak256\":\"0x7233e4d2edca222ce6e1cdb07adf127ab52ecaea599fa5369971a7b28dbc59ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://08c9a76854349097477addeb40af1488455ba9c53a60140e0be1c4fc2ea16b43\",\"dweb:/ipfs/QmSHqh8SRVmRKqhSsAxEkuY2P4PDLXeXKtNLoh3Rou3QQY\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol\":{\"keccak256\":\"0xcfa52200edd337f2c6c5bf402352600584da033b21323603e53de33051a3e25d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c8355211d58db82660140191678ee342eb8a7ac46fa097ae8e03eef008f592e\",\"dweb:/ipfs/QmYDNiECPd4fJ7Vk9Xywfpg73rUvDpcYqas95ofGcpt7fM\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol\":{\"keccak256\":\"0xca1b3a16e7005533f2800a3e66fcdccf7c574deac7913d8c810f40aec1d58dc0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4e38d5eb69e236c37e4a013628838070720c9e1923569650b01252868038c7a\",\"dweb:/ipfs/QmV397iZMRxtem79kJy5sueJadXoVL89gNViX2xciQHUrk\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol": { + "IABIResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "contentType", + "type": "uint256" + } + ], + "name": "ABIChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "contentTypes", + "type": "uint256" + } + ], + "name": "ABI", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "ABI(bytes32,uint256)": "2203ab56" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"contentType\",\"type\":\"uint256\"}],\"name\":\"ABIChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"contentTypes\",\"type\":\"uint256\"}],\"name\":\"ABI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"ABI(bytes32,uint256)\":{\"params\":{\"contentTypes\":\"A bitwise OR of the ABI formats accepted by the caller.\",\"node\":\"The ENS node to query\"},\"returns\":{\"_0\":\"contentType The content type of the return value\",\"_1\":\"data The ABI data\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"ABI(bytes32,uint256)\":{\"notice\":\"Returns the ABI associated with an ENS node. Defined in EIP205.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol\":\"IABIResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.sol\":{\"keccak256\":\"0x85b373d02d19374fe570af407f459768285704bf7f30ab17c30eabfb5a10e4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2046ce3d92d29806d7b447f7ab4227f19b0b2e5c75fd5b4a3fcaef7fe2442141\",\"dweb:/ipfs/QmRgnfWjFetrSJngkhU7Yui1ZcK1MeatvZDpvUTYNuYnND\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol": { + "IAddrResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "AddrChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addr(bytes32)": "3b3b57de" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addr(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated address.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addr(bytes32)\":{\"notice\":\"Returns the address associated with an ENS node.\"}},\"notice\":\"Interface for the legacy (ETH-only) addr function.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":\"IAddrResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":{\"keccak256\":\"0x2ad7f2fc60ebe0f93745fe70247f6a854f66af732483fda2a3c5e055614445e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43922ba183ff20d87dce7fc5d715e626b26594151e36dcc8d7c6329b9a822963\",\"dweb:/ipfs/QmTg9uHTugTxzqddN68gnhNbGt4bGJBS9mQcss6GYggR4X\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol": { + "IAddressResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "newAddress", + "type": "bytes" + } + ], + "name": "AddressChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addr(bytes32,uint256)": "f1cb7e06" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Interface for the new (multicoin) addr function.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":\"IAddressResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":{\"keccak256\":\"0x411447c1e90c51e09702815a85ec725ffbbe37cf96e8cc4d2a8bd4ad8a59d73e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543aa2756447a428711b69aea79e9f4641c22f8330ba920b2a49fde8d9207f82\",\"dweb:/ipfs/QmTdpcYRWLH3BL7iytnqcSzRojTPe3YettKaTqeCvKPk54\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol": { + "IContentHashResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "hash", + "type": "bytes" + } + ], + "name": "ContenthashChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "contenthash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "contenthash(bytes32)": "bc1c58d1" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"ContenthashChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"contenthash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contenthash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contenthash(bytes32)\":{\"notice\":\"Returns the contenthash associated with an ENS node.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol\":\"IContentHashResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.sol\":{\"keccak256\":\"0xd95cd77684ba5752c428d7dceb4ecc6506ac94f4fbb910489637eb68dcd8e366\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://daf1fee7770679bd935b8b5686789a4ecc532caeef5a9b8e1b60ae0c285e743e\",\"dweb:/ipfs/QmSaHBAqtDdbQLH6QN4EbupMrq2ah8g6fqE7fLX1u4cjMZ\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol": { + "IDNSRecordResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "record", + "type": "bytes" + } + ], + "name": "DNSRecordChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "DNSRecordDeleted", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "name", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "resource", + "type": "uint16" + } + ], + "name": "dnsRecord", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "dnsRecord(bytes32,bytes32,uint16)": "a8fa5682" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"record\",\"type\":\"bytes\"}],\"name\":\"DNSRecordChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"DNSRecordDeleted\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"name\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"dnsRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"dnsRecord(bytes32,bytes32,uint16)\":{\"params\":{\"name\":\"the keccak-256 hash of the fully-qualified name for which to fetch the record\",\"node\":\"the namehash of the node for which to fetch the record\",\"resource\":\"the ID of the resource as per https://en.wikipedia.org/wiki/List_of_DNS_record_types\"},\"returns\":{\"_0\":\"the DNS record in wire format if present, otherwise empty\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"dnsRecord(bytes32,bytes32,uint16)\":{\"notice\":\"Obtain a DNS record.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol\":\"IDNSRecordResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.sol\":{\"keccak256\":\"0xcfa52200edd337f2c6c5bf402352600584da033b21323603e53de33051a3e25d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c8355211d58db82660140191678ee342eb8a7ac46fa097ae8e03eef008f592e\",\"dweb:/ipfs/QmYDNiECPd4fJ7Vk9Xywfpg73rUvDpcYqas95ofGcpt7fM\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol": { + "IDNSZoneResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "lastzonehash", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "zonehash", + "type": "bytes" + } + ], + "name": "DNSZonehashChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "zonehash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "zonehash(bytes32)": "5c98042b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"lastzonehash\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"zonehash\",\"type\":\"bytes\"}],\"name\":\"DNSZonehashChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"zonehash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"zonehash(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated contenthash.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"zonehash(bytes32)\":{\"notice\":\"zonehash obtains the hash for the zone.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol\":\"IDNSZoneResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.sol\":{\"keccak256\":\"0xca1b3a16e7005533f2800a3e66fcdccf7c574deac7913d8c810f40aec1d58dc0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4e38d5eb69e236c37e4a013628838070720c9e1923569650b01252868038c7a\",\"dweb:/ipfs/QmV397iZMRxtem79kJy5sueJadXoVL89gNViX2xciQHUrk\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol": { + "IExtendedResolver": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "resolve", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "resolve(bytes,bytes)": "9061b923" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"resolve\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol\":\"IExtendedResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol\":{\"keccak256\":\"0x5d81521cfae7d9a4475d27533cd8ed0d3475d369eb0674fd90ffbdbdf292faa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d244d15588785044b54c453ab6dc51c616ab70cb8b9e687d3e54565bcae97760\",\"dweb:/ipfs/QmXz4ZZBTFogdkdTV1mcE3ywvL2agKVZHLNNeRHCKVruYM\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol": { + "IInterfaceResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "address", + "name": "implementer", + "type": "address" + } + ], + "name": "InterfaceChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "interfaceImplementer", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "interfaceImplementer(bytes32,bytes4)": "124a319c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"InterfaceChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"interfaceImplementer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"interfaceImplementer(bytes32,bytes4)\":{\"params\":{\"interfaceID\":\"The EIP 165 interface ID to check for.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The address that implements this interface, or 0 if the interface is unsupported.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"interfaceImplementer(bytes32,bytes4)\":{\"notice\":\"Returns the address of a contract that implements the specified interface for this name. If an implementer has not been set for this interfaceID and name, the resolver will query the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that contract implements EIP165 and returns `true` for the specified interfaceID, its address will be returned.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol\":\"IInterfaceResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol\":{\"keccak256\":\"0x390321fb58f7b927df9562450981e74b4be3907e7c09df321fd3b7409b63ae28\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://045d12c6e0e4596b3672614751a9e75188183a89765a6abd938294e0294e9c56\",\"dweb:/ipfs/QmazngvagEoKe29s4M9Rv8KygWD5hrAtNPkYDPJ2pK13yx\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol": { + "INameResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "NameChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "name(bytes32)": "691f3431" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NameChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"name(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated name.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"name(bytes32)\":{\"notice\":\"Returns the name associated with an ENS node, for reverse records. Defined in EIP181.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol\":\"INameResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol\":{\"keccak256\":\"0x9ec392b612447b1acbdc01114f2da2837a658d3f3157f60a99c5269f0b623346\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5b2cd9e5339b09f40e82bd91fed7d5f643dd031393eefb9aec588eaba8465049\",\"dweb:/ipfs/QmT2A8eswhJU9YadCs9BtwKNj6YGypntXmFepANQYyGw7x\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol": { + "IPubkeyResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "name": "PubkeyChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "pubkey", + "outputs": [ + { + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "pubkey(bytes32)": "c8690233" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"PubkeyChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"pubkey\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"pubkey(bytes32)\":{\"params\":{\"node\":\"The ENS node to query\"},\"returns\":{\"x\":\"The X coordinate of the curve point for the public key.\",\"y\":\"The Y coordinate of the curve point for the public key.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"pubkey(bytes32)\":{\"notice\":\"Returns the SECP256k1 public key associated with an ENS node. Defined in EIP 619.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol\":\"IPubkeyResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol\":{\"keccak256\":\"0x69748947093dd2fda9ddcebd0adf19a6d1e7600df1d4b1462a0417156caddca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2f86e50bd17c38fb10feb577d88d8970c585017a391ef10e3aaa3d50f81555\",\"dweb:/ipfs/QmaxLx2pqCUxf9W2dusfviZ9aSiTuVwuekGo73rjvmGifE\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol": { + "ITextResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "string", + "name": "indexedKey", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "name": "TextChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + } + ], + "name": "text", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "text(bytes32,string)": "59d1d43c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"indexedKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"TextChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"text\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"text(bytes32,string)\":{\"params\":{\"key\":\"The text data key to query.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated text data.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"text(bytes32,string)\":{\"notice\":\"Returns the text data associated with an ENS node and key.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol\":\"ITextResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol\":{\"keccak256\":\"0x7c5debb3c42cd9f5de2274ea7aa053f238608314b62db441c40e31cea2543fd5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://412e34ae2d84d542ffa6791486963f3fe04432a3ffd51877d441256dc2941914\",\"dweb:/ipfs/QmciS4mGAQ6KJtLiLcBFekHKhYAYMmubDWGkpZ3sUFtJPW\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol": { + "IVersionableResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "recordVersions(bytes32)": "d700ff33" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":\"IVersionableResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol": { + "InterfaceResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "AddrChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "newAddress", + "type": "bytes" + } + ], + "name": "AddressChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "address", + "name": "implementer", + "type": "address" + } + ], + "name": "InterfaceChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "interfaceImplementer", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "coinType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "a", + "type": "bytes" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "a", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + }, + { + "internalType": "address", + "name": "implementer", + "type": "address" + } + ], + "name": "setInterface", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addr(bytes32)": "3b3b57de", + "addr(bytes32,uint256)": "f1cb7e06", + "clearRecords(bytes32)": "3603d758", + "interfaceImplementer(bytes32,bytes4)": "124a319c", + "recordVersions(bytes32)": "d700ff33", + "setAddr(bytes32,address)": "d5fa2b00", + "setAddr(bytes32,uint256,bytes)": "8b95dd71", + "setInterface(bytes32,bytes4,address)": "e59d895d", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"InterfaceChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"interfaceImplementer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"coinType\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"internalType\":\"address\",\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"setInterface\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addr(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated address.\"}},\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"interfaceImplementer(bytes32,bytes4)\":{\"params\":{\"interfaceID\":\"The EIP 165 interface ID to check for.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The address that implements this interface, or 0 if the interface is unsupported.\"}},\"setAddr(bytes32,address)\":{\"params\":{\"a\":\"The address to set.\",\"node\":\"The node to update.\"}},\"setInterface(bytes32,bytes4,address)\":{\"params\":{\"implementer\":\"The address of a contract that implements this interface for this node.\",\"interfaceID\":\"The EIP 165 interface ID.\",\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addr(bytes32)\":{\"notice\":\"Returns the address associated with an ENS node.\"},\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"interfaceImplementer(bytes32,bytes4)\":{\"notice\":\"Returns the address of a contract that implements the specified interface for this name. If an implementer has not been set for this interfaceID and name, the resolver will query the contract at `addr()`. If `addr()` is set, a contract exists at that address, and that contract implements EIP165 and returns `true` for the specified interfaceID, its address will be returned.\"},\"setAddr(bytes32,address)\":{\"notice\":\"Sets the address associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setInterface(bytes32,bytes4,address)\":{\"notice\":\"Sets an interface associated with a name. Setting the address to 0 restores the default behaviour of querying the contract at `addr()` for interface support.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol\":\"InterfaceResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.sol\":{\"keccak256\":\"0x7f6ebb3144530a02db03379f33ade869c8408eceed36dfbd751aaff198735b55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6ec26e51e39e1cbbf84fb7813a1613c90016474f9ed762a48e5834e25bb5a9eb\",\"dweb:/ipfs/QmbdHZTMvAT9hozT1rXPubMqZEAUnvPheWGmp7hkm3yYY9\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":{\"keccak256\":\"0x2ad7f2fc60ebe0f93745fe70247f6a854f66af732483fda2a3c5e055614445e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43922ba183ff20d87dce7fc5d715e626b26594151e36dcc8d7c6329b9a822963\",\"dweb:/ipfs/QmTg9uHTugTxzqddN68gnhNbGt4bGJBS9mQcss6GYggR4X\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":{\"keccak256\":\"0x411447c1e90c51e09702815a85ec725ffbbe37cf96e8cc4d2a8bd4ad8a59d73e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543aa2756447a428711b69aea79e9f4641c22f8330ba920b2a49fde8d9207f82\",\"dweb:/ipfs/QmTdpcYRWLH3BL7iytnqcSzRojTPe3YettKaTqeCvKPk54\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.sol\":{\"keccak256\":\"0x390321fb58f7b927df9562450981e74b4be3907e7c09df321fd3b7409b63ae28\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://045d12c6e0e4596b3672614751a9e75188183a89765a6abd938294e0294e9c56\",\"dweb:/ipfs/QmazngvagEoKe29s4M9Rv8KygWD5hrAtNPkYDPJ2pK13yx\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.sol\":{\"keccak256\":\"0x820ec60183e7a49a4ee399cf4708acb776725c8e4ad275d1f316c152eace0a59\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ce8b732ae841183aba20b2c3e9f99dd545a2f5dbba0b888d0b2b804e0fb9751\",\"dweb:/ipfs/QmcNHXpnLRscbXUjAYAfE5dPG5c62m37NpQRq25rPTucTT\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol": { + "NameResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "NameChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "newName", + "type": "string" + } + ], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "name(bytes32)": "691f3431", + "recordVersions(bytes32)": "d700ff33", + "setName(bytes32,string)": "77372213", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NameChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"name(bytes32)\":{\"params\":{\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated name.\"}},\"setName(bytes32,string)\":{\"params\":{\"node\":\"The node to update.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"name(bytes32)\":{\"notice\":\"Returns the name associated with an ENS node, for reverse records. Defined in EIP181.\"},\"setName(bytes32,string)\":{\"notice\":\"Sets the name associated with an ENS node, for reverse records. May only be called by the owner of that node in the ENS registry.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol\":\"NameResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.sol\":{\"keccak256\":\"0x9ec392b612447b1acbdc01114f2da2837a658d3f3157f60a99c5269f0b623346\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5b2cd9e5339b09f40e82bd91fed7d5f643dd031393eefb9aec588eaba8465049\",\"dweb:/ipfs/QmT2A8eswhJU9YadCs9BtwKNj6YGypntXmFepANQYyGw7x\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.sol\":{\"keccak256\":\"0x52d0bbb8f9dd33fae471ef2f5f6b3118b221954e5bb7ba724885d4562e75b8e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ce4aac77e3e98119927a9cf87ec050393f187e05b0f9d25af5fdefd088558051\",\"dweb:/ipfs/QmZqtxCa8whU7VP4uKWJnw14XL4UhgZmREJf9HQMcpkvfe\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol": { + "PubkeyResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "name": "PubkeyChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "pubkey", + "outputs": [ + { + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "x", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "y", + "type": "bytes32" + } + ], + "name": "setPubkey", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "pubkey(bytes32)": "c8690233", + "recordVersions(bytes32)": "d700ff33", + "setPubkey(bytes32,bytes32,bytes32)": "29cd62ea", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"PubkeyChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"pubkey\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"setPubkey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"pubkey(bytes32)\":{\"params\":{\"node\":\"The ENS node to query\"},\"returns\":{\"x\":\"The X coordinate of the curve point for the public key.\",\"y\":\"The Y coordinate of the curve point for the public key.\"}},\"setPubkey(bytes32,bytes32,bytes32)\":{\"params\":{\"node\":\"The ENS node to query\",\"x\":\"the X coordinate of the curve point for the public key.\",\"y\":\"the Y coordinate of the curve point for the public key.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"pubkey(bytes32)\":{\"notice\":\"Returns the SECP256k1 public key associated with an ENS node. Defined in EIP 619.\"},\"setPubkey(bytes32,bytes32,bytes32)\":{\"notice\":\"Sets the SECP256k1 public key associated with an ENS node.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol\":\"PubkeyResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.sol\":{\"keccak256\":\"0x69748947093dd2fda9ddcebd0adf19a6d1e7600df1d4b1462a0417156caddca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2f86e50bd17c38fb10feb577d88d8970c585017a391ef10e3aaa3d50f81555\",\"dweb:/ipfs/QmaxLx2pqCUxf9W2dusfviZ9aSiTuVwuekGo73rjvmGifE\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.sol\":{\"keccak256\":\"0x1a1f10a0e40520c998a9296fc81c092c81521e05a784e9bd9ee44cc4c62c8c78\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d182d50aae9798deeaae0f92af9bd6bc01ba42c36a999f6f711072ad9dc0e40e\",\"dweb:/ipfs/QmdmVMfmBAypd7cFJqkiHFH9D1UT8iQ5Bjg3VzynyMfVH2\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol": { + "TextResolver": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "string", + "name": "indexedKey", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "name": "TextChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "newVersion", + "type": "uint64" + } + ], + "name": "VersionChanged", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "clearRecords", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "recordVersions", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "name": "setText", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + } + ], + "name": "text", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "clearRecords(bytes32)": "3603d758", + "recordVersions(bytes32)": "d700ff33", + "setText(bytes32,string,string)": "10f13a8c", + "supportsInterface(bytes4)": "01ffc9a7", + "text(bytes32,string)": "59d1d43c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"indexedKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"TextChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVersion\",\"type\":\"uint64\"}],\"name\":\"VersionChanged\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearRecords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"recordVersions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setText\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"text\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clearRecords(bytes32)\":{\"params\":{\"node\":\"The node to update.\"}},\"setText(bytes32,string,string)\":{\"params\":{\"key\":\"The key to set.\",\"node\":\"The node to update.\",\"value\":\"The text data value to set.\"}},\"text(bytes32,string)\":{\"params\":{\"key\":\"The text data key to query.\",\"node\":\"The ENS node to query.\"},\"returns\":{\"_0\":\"The associated text data.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clearRecords(bytes32)\":{\"notice\":\"Increments the record version associated with an ENS node. May only be called by the owner of that node in the ENS registry.\"},\"setText(bytes32,string,string)\":{\"notice\":\"Sets the text data associated with an ENS node and key. May only be called by the owner of that node in the ENS registry.\"},\"text(bytes32,string)\":{\"notice\":\"Returns the text data associated with an ENS node and key.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol\":\"TextResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.sol\":{\"keccak256\":\"0x893049fffd6feee06d7acef1680f6e26505bedff62a9f7a17e921c0ba2f66307\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37406bf001193809125c426348c3fc67559571dfb984e30c3c7a7c5fe04c60ad\",\"dweb:/ipfs/QmUn2Q78u4d7NZjCRN4hWdAU1CmysCvWYDjcUa571P3uue\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.sol\":{\"keccak256\":\"0x7c5debb3c42cd9f5de2274ea7aa053f238608314b62db441c40e31cea2543fd5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://412e34ae2d84d542ffa6791486963f3fe04432a3ffd51877d441256dc2941914\",\"dweb:/ipfs/QmciS4mGAQ6KJtLiLcBFekHKhYAYMmubDWGkpZ3sUFtJPW\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.sol\":{\"keccak256\":\"0xd0d09596f20c57bafb2ffa8521a8c57120e9af6c6b194f9c689d4da56f91a57c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e78ca35813a5eb02e6e61ad49102dfccd219ff7f9a81e54783582be2af1a0c0\",\"dweb:/ipfs/QmaCb9Bv9FnKMd6TVXsjhchq1F7ZdsSpLrqDhPYgp8j2qV\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.sol\":{\"keccak256\":\"0xf9bedd807add38136779d84083ac2fa4f8c92d017c9e1a72fbc9003fa5074379\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c2629f9bf2644266d3d7d9c6dae35885fc264a5cb69dc63e8d176f8d523d5fd1\",\"dweb:/ipfs/QmXGJ1BAZRabEu11JafxWmEPm893SBGP9TYmKi1pX81B4u\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol": { + "IReverseRegistrar": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "claim", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "claimForAddr", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "claimWithResolver", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "node", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setDefaultResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "setName", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "setNameForAddr", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "claim(address)": "1e83409a", + "claimForAddr(address,address,address)": "65669631", + "claimWithResolver(address,address)": "0f5a5466", + "node(address)": "bffbe61c", + "setDefaultResolver(address)": "c66485b2", + "setName(string)": "c47f0027", + "setNameForAddr(address,address,address,string)": "7a806d6b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"claim\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"claimForAddr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"claimWithResolver\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"node\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setDefaultResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setNameForAddr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":\"IReverseRegistrar\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol": { + "ReverseClaimer": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract ENS", + "name": "ens", + "type": "address" + }, + { + "internalType": "address", + "name": "claimant", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_7272": { + "entryPoint": null, + "id": 7272, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 484, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 731, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 440, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 621, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 752, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_ENS_$4567t_address_fromMemory": { + "entryPoint": 505, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 666, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 579, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 681, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 594, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 381, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 569, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 399, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 349, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 344, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 461, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 708, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 417, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:3596:74", + "nodeType": "YulBlock", + "src": "0:3596:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "625:51:74", + "nodeType": "YulBlock", + "src": "625:51:74", + "statements": [ + { + "nativeSrc": "635:35:74", + "nodeType": "YulAssignment", + "src": "635:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "664:5:74", + "nodeType": "YulIdentifier", + "src": "664:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "646:17:74", + "nodeType": "YulIdentifier", + "src": "646:17:74" + }, + "nativeSrc": "646:24:74", + "nodeType": "YulFunctionCall", + "src": "646:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "635:7:74", + "nodeType": "YulIdentifier", + "src": "635:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "568:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulTypedName", + "src": "607:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "617:7:74", + "nodeType": "YulTypedName", + "src": "617:7:74", + "type": "" + } + ], + "src": "568:108:74" + }, + { + "body": { + "nativeSrc": "737:91:74", + "nodeType": "YulBlock", + "src": "737:91:74", + "statements": [ + { + "body": { + "nativeSrc": "806:16:74", + "nodeType": "YulBlock", + "src": "806:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "815:1:74", + "nodeType": "YulLiteral", + "src": "815:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "818:1:74", + "nodeType": "YulLiteral", + "src": "818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "808:6:74", + "nodeType": "YulIdentifier", + "src": "808:6:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulFunctionCall", + "src": "808:12:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulExpressionStatement", + "src": "808:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "797:5:74", + "nodeType": "YulIdentifier", + "src": "797:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "767:29:74", + "nodeType": "YulIdentifier", + "src": "767:29:74" + }, + "nativeSrc": "767:36:74", + "nodeType": "YulFunctionCall", + "src": "767:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "757:2:74", + "nodeType": "YulIdentifier", + "src": "757:2:74" + }, + "nativeSrc": "757:47:74", + "nodeType": "YulFunctionCall", + "src": "757:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "750:6:74", + "nodeType": "YulIdentifier", + "src": "750:6:74" + }, + "nativeSrc": "750:55:74", + "nodeType": "YulFunctionCall", + "src": "750:55:74" + }, + "nativeSrc": "747:75:74", + "nodeType": "YulIf", + "src": "747:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "682:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "730:5:74", + "nodeType": "YulTypedName", + "src": "730:5:74", + "type": "" + } + ], + "src": "682:146:74" + }, + { + "body": { + "nativeSrc": "909:92:74", + "nodeType": "YulBlock", + "src": "909:92:74", + "statements": [ + { + "nativeSrc": "919:22:74", + "nodeType": "YulAssignment", + "src": "919:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "934:6:74", + "nodeType": "YulIdentifier", + "src": "934:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "928:5:74", + "nodeType": "YulIdentifier", + "src": "928:5:74" + }, + "nativeSrc": "928:13:74", + "nodeType": "YulFunctionCall", + "src": "928:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "919:5:74", + "nodeType": "YulIdentifier", + "src": "919:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "950:38:74", + "nodeType": "YulIdentifier", + "src": "950:38:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulFunctionCall", + "src": "950:45:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulExpressionStatement", + "src": "950:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "834:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "887:6:74", + "nodeType": "YulTypedName", + "src": "887:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "895:3:74", + "nodeType": "YulTypedName", + "src": "895:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "903:5:74", + "nodeType": "YulTypedName", + "src": "903:5:74", + "type": "" + } + ], + "src": "834:167:74" + }, + { + "body": { + "nativeSrc": "1050:79:74", + "nodeType": "YulBlock", + "src": "1050:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1107:16:74", + "nodeType": "YulBlock", + "src": "1107:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1116:1:74", + "nodeType": "YulLiteral", + "src": "1116:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1119:1:74", + "nodeType": "YulLiteral", + "src": "1119:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1109:6:74", + "nodeType": "YulIdentifier", + "src": "1109:6:74" + }, + "nativeSrc": "1109:12:74", + "nodeType": "YulFunctionCall", + "src": "1109:12:74" + }, + "nativeSrc": "1109:12:74", + "nodeType": "YulExpressionStatement", + "src": "1109:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1073:5:74", + "nodeType": "YulIdentifier", + "src": "1073:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1098:5:74", + "nodeType": "YulIdentifier", + "src": "1098:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1080:17:74", + "nodeType": "YulIdentifier", + "src": "1080:17:74" + }, + "nativeSrc": "1080:24:74", + "nodeType": "YulFunctionCall", + "src": "1080:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1070:2:74", + "nodeType": "YulIdentifier", + "src": "1070:2:74" + }, + "nativeSrc": "1070:35:74", + "nodeType": "YulFunctionCall", + "src": "1070:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1063:6:74", + "nodeType": "YulIdentifier", + "src": "1063:6:74" + }, + "nativeSrc": "1063:43:74", + "nodeType": "YulFunctionCall", + "src": "1063:43:74" + }, + "nativeSrc": "1060:63:74", + "nodeType": "YulIf", + "src": "1060:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "1007:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1043:5:74", + "nodeType": "YulTypedName", + "src": "1043:5:74", + "type": "" + } + ], + "src": "1007:122:74" + }, + { + "body": { + "nativeSrc": "1198:80:74", + "nodeType": "YulBlock", + "src": "1198:80:74", + "statements": [ + { + "nativeSrc": "1208:22:74", + "nodeType": "YulAssignment", + "src": "1208:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1223:6:74", + "nodeType": "YulIdentifier", + "src": "1223:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1217:5:74", + "nodeType": "YulIdentifier", + "src": "1217:5:74" + }, + "nativeSrc": "1217:13:74", + "nodeType": "YulFunctionCall", + "src": "1217:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1208:5:74", + "nodeType": "YulIdentifier", + "src": "1208:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1266:5:74", + "nodeType": "YulIdentifier", + "src": "1266:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "1239:26:74", + "nodeType": "YulIdentifier", + "src": "1239:26:74" + }, + "nativeSrc": "1239:33:74", + "nodeType": "YulFunctionCall", + "src": "1239:33:74" + }, + "nativeSrc": "1239:33:74", + "nodeType": "YulExpressionStatement", + "src": "1239:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "1135:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1176:6:74", + "nodeType": "YulTypedName", + "src": "1176:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1184:3:74", + "nodeType": "YulTypedName", + "src": "1184:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1192:5:74", + "nodeType": "YulTypedName", + "src": "1192:5:74", + "type": "" + } + ], + "src": "1135:143:74" + }, + { + "body": { + "nativeSrc": "1390:425:74", + "nodeType": "YulBlock", + "src": "1390:425:74", + "statements": [ + { + "body": { + "nativeSrc": "1436:83:74", + "nodeType": "YulBlock", + "src": "1436:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1438:77:74", + "nodeType": "YulIdentifier", + "src": "1438:77:74" + }, + "nativeSrc": "1438:79:74", + "nodeType": "YulFunctionCall", + "src": "1438:79:74" + }, + "nativeSrc": "1438:79:74", + "nodeType": "YulExpressionStatement", + "src": "1438:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1411:7:74", + "nodeType": "YulIdentifier", + "src": "1411:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1420:9:74", + "nodeType": "YulIdentifier", + "src": "1420:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1407:3:74", + "nodeType": "YulIdentifier", + "src": "1407:3:74" + }, + "nativeSrc": "1407:23:74", + "nodeType": "YulFunctionCall", + "src": "1407:23:74" + }, + { + "kind": "number", + "nativeSrc": "1432:2:74", + "nodeType": "YulLiteral", + "src": "1432:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1403:3:74", + "nodeType": "YulIdentifier", + "src": "1403:3:74" + }, + "nativeSrc": "1403:32:74", + "nodeType": "YulFunctionCall", + "src": "1403:32:74" + }, + "nativeSrc": "1400:119:74", + "nodeType": "YulIf", + "src": "1400:119:74" + }, + { + "nativeSrc": "1529:140:74", + "nodeType": "YulBlock", + "src": "1529:140:74", + "statements": [ + { + "nativeSrc": "1544:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1544:15:74", + "value": { + "kind": "number", + "nativeSrc": "1558:1:74", + "nodeType": "YulLiteral", + "src": "1558:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1548:6:74", + "nodeType": "YulTypedName", + "src": "1548:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1573:86:74", + "nodeType": "YulAssignment", + "src": "1573:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1631:9:74", + "nodeType": "YulIdentifier", + "src": "1631:9:74" + }, + { + "name": "offset", + "nativeSrc": "1642:6:74", + "nodeType": "YulIdentifier", + "src": "1642:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1627:3:74", + "nodeType": "YulIdentifier", + "src": "1627:3:74" + }, + "nativeSrc": "1627:22:74", + "nodeType": "YulFunctionCall", + "src": "1627:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1651:7:74", + "nodeType": "YulIdentifier", + "src": "1651:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "1583:43:74", + "nodeType": "YulIdentifier", + "src": "1583:43:74" + }, + "nativeSrc": "1583:76:74", + "nodeType": "YulFunctionCall", + "src": "1583:76:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1573:6:74", + "nodeType": "YulIdentifier", + "src": "1573:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1679:129:74", + "nodeType": "YulBlock", + "src": "1679:129:74", + "statements": [ + { + "nativeSrc": "1694:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1694:16:74", + "value": { + "kind": "number", + "nativeSrc": "1708:2:74", + "nodeType": "YulLiteral", + "src": "1708:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1698:6:74", + "nodeType": "YulTypedName", + "src": "1698:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1724:74:74", + "nodeType": "YulAssignment", + "src": "1724:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1770:9:74", + "nodeType": "YulIdentifier", + "src": "1770:9:74" + }, + { + "name": "offset", + "nativeSrc": "1781:6:74", + "nodeType": "YulIdentifier", + "src": "1781:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1766:3:74", + "nodeType": "YulIdentifier", + "src": "1766:3:74" + }, + "nativeSrc": "1766:22:74", + "nodeType": "YulFunctionCall", + "src": "1766:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1790:7:74", + "nodeType": "YulIdentifier", + "src": "1790:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "1734:31:74", + "nodeType": "YulIdentifier", + "src": "1734:31:74" + }, + "nativeSrc": "1734:64:74", + "nodeType": "YulFunctionCall", + "src": "1734:64:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1724:6:74", + "nodeType": "YulIdentifier", + "src": "1724:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_ENS_$4567t_address_fromMemory", + "nativeSrc": "1284:531:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1352:9:74", + "nodeType": "YulTypedName", + "src": "1352:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1363:7:74", + "nodeType": "YulTypedName", + "src": "1363:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1375:6:74", + "nodeType": "YulTypedName", + "src": "1375:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1383:6:74", + "nodeType": "YulTypedName", + "src": "1383:6:74", + "type": "" + } + ], + "src": "1284:531:74" + }, + { + "body": { + "nativeSrc": "1866:32:74", + "nodeType": "YulBlock", + "src": "1866:32:74", + "statements": [ + { + "nativeSrc": "1876:16:74", + "nodeType": "YulAssignment", + "src": "1876:16:74", + "value": { + "name": "value", + "nativeSrc": "1887:5:74", + "nodeType": "YulIdentifier", + "src": "1887:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1876:7:74", + "nodeType": "YulIdentifier", + "src": "1876:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1821:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1848:5:74", + "nodeType": "YulTypedName", + "src": "1848:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1858:7:74", + "nodeType": "YulTypedName", + "src": "1858:7:74", + "type": "" + } + ], + "src": "1821:77:74" + }, + { + "body": { + "nativeSrc": "1969:53:74", + "nodeType": "YulBlock", + "src": "1969:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1986:3:74", + "nodeType": "YulIdentifier", + "src": "1986:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2009:5:74", + "nodeType": "YulIdentifier", + "src": "2009:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1991:17:74", + "nodeType": "YulIdentifier", + "src": "1991:17:74" + }, + "nativeSrc": "1991:24:74", + "nodeType": "YulFunctionCall", + "src": "1991:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1979:6:74", + "nodeType": "YulIdentifier", + "src": "1979:6:74" + }, + "nativeSrc": "1979:37:74", + "nodeType": "YulFunctionCall", + "src": "1979:37:74" + }, + "nativeSrc": "1979:37:74", + "nodeType": "YulExpressionStatement", + "src": "1979:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "1904:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1957:5:74", + "nodeType": "YulTypedName", + "src": "1957:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1964:3:74", + "nodeType": "YulTypedName", + "src": "1964:3:74", + "type": "" + } + ], + "src": "1904:118:74" + }, + { + "body": { + "nativeSrc": "2126:124:74", + "nodeType": "YulBlock", + "src": "2126:124:74", + "statements": [ + { + "nativeSrc": "2136:26:74", + "nodeType": "YulAssignment", + "src": "2136:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2148:9:74", + "nodeType": "YulIdentifier", + "src": "2148:9:74" + }, + { + "kind": "number", + "nativeSrc": "2159:2:74", + "nodeType": "YulLiteral", + "src": "2159:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2144:3:74", + "nodeType": "YulIdentifier", + "src": "2144:3:74" + }, + "nativeSrc": "2144:18:74", + "nodeType": "YulFunctionCall", + "src": "2144:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2136:4:74", + "nodeType": "YulIdentifier", + "src": "2136:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2216:6:74", + "nodeType": "YulIdentifier", + "src": "2216:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2229:9:74", + "nodeType": "YulIdentifier", + "src": "2229:9:74" + }, + { + "kind": "number", + "nativeSrc": "2240:1:74", + "nodeType": "YulLiteral", + "src": "2240:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2225:3:74", + "nodeType": "YulIdentifier", + "src": "2225:3:74" + }, + "nativeSrc": "2225:17:74", + "nodeType": "YulFunctionCall", + "src": "2225:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2172:43:74", + "nodeType": "YulIdentifier", + "src": "2172:43:74" + }, + "nativeSrc": "2172:71:74", + "nodeType": "YulFunctionCall", + "src": "2172:71:74" + }, + "nativeSrc": "2172:71:74", + "nodeType": "YulExpressionStatement", + "src": "2172:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "2028:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2098:9:74", + "nodeType": "YulTypedName", + "src": "2098:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2110:6:74", + "nodeType": "YulTypedName", + "src": "2110:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2121:4:74", + "nodeType": "YulTypedName", + "src": "2121:4:74", + "type": "" + } + ], + "src": "2028:222:74" + }, + { + "body": { + "nativeSrc": "2333:274:74", + "nodeType": "YulBlock", + "src": "2333:274:74", + "statements": [ + { + "body": { + "nativeSrc": "2379:83:74", + "nodeType": "YulBlock", + "src": "2379:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2381:77:74", + "nodeType": "YulIdentifier", + "src": "2381:77:74" + }, + "nativeSrc": "2381:79:74", + "nodeType": "YulFunctionCall", + "src": "2381:79:74" + }, + "nativeSrc": "2381:79:74", + "nodeType": "YulExpressionStatement", + "src": "2381:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2354:7:74", + "nodeType": "YulIdentifier", + "src": "2354:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2363:9:74", + "nodeType": "YulIdentifier", + "src": "2363:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2350:3:74", + "nodeType": "YulIdentifier", + "src": "2350:3:74" + }, + "nativeSrc": "2350:23:74", + "nodeType": "YulFunctionCall", + "src": "2350:23:74" + }, + { + "kind": "number", + "nativeSrc": "2375:2:74", + "nodeType": "YulLiteral", + "src": "2375:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2346:3:74", + "nodeType": "YulIdentifier", + "src": "2346:3:74" + }, + "nativeSrc": "2346:32:74", + "nodeType": "YulFunctionCall", + "src": "2346:32:74" + }, + "nativeSrc": "2343:119:74", + "nodeType": "YulIf", + "src": "2343:119:74" + }, + { + "nativeSrc": "2472:128:74", + "nodeType": "YulBlock", + "src": "2472:128:74", + "statements": [ + { + "nativeSrc": "2487:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2487:15:74", + "value": { + "kind": "number", + "nativeSrc": "2501:1:74", + "nodeType": "YulLiteral", + "src": "2501:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2491:6:74", + "nodeType": "YulTypedName", + "src": "2491:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2516:74:74", + "nodeType": "YulAssignment", + "src": "2516:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2562:9:74", + "nodeType": "YulIdentifier", + "src": "2562:9:74" + }, + { + "name": "offset", + "nativeSrc": "2573:6:74", + "nodeType": "YulIdentifier", + "src": "2573:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2558:3:74", + "nodeType": "YulIdentifier", + "src": "2558:3:74" + }, + "nativeSrc": "2558:22:74", + "nodeType": "YulFunctionCall", + "src": "2558:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2582:7:74", + "nodeType": "YulIdentifier", + "src": "2582:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "2526:31:74", + "nodeType": "YulIdentifier", + "src": "2526:31:74" + }, + "nativeSrc": "2526:64:74", + "nodeType": "YulFunctionCall", + "src": "2526:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2516:6:74", + "nodeType": "YulIdentifier", + "src": "2516:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "2256:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2303:9:74", + "nodeType": "YulTypedName", + "src": "2303:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2314:7:74", + "nodeType": "YulTypedName", + "src": "2314:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2326:6:74", + "nodeType": "YulTypedName", + "src": "2326:6:74", + "type": "" + } + ], + "src": "2256:351:74" + }, + { + "body": { + "nativeSrc": "2678:53:74", + "nodeType": "YulBlock", + "src": "2678:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2695:3:74", + "nodeType": "YulIdentifier", + "src": "2695:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2718:5:74", + "nodeType": "YulIdentifier", + "src": "2718:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "2700:17:74", + "nodeType": "YulIdentifier", + "src": "2700:17:74" + }, + "nativeSrc": "2700:24:74", + "nodeType": "YulFunctionCall", + "src": "2700:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2688:6:74", + "nodeType": "YulIdentifier", + "src": "2688:6:74" + }, + "nativeSrc": "2688:37:74", + "nodeType": "YulFunctionCall", + "src": "2688:37:74" + }, + "nativeSrc": "2688:37:74", + "nodeType": "YulExpressionStatement", + "src": "2688:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2613:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2666:5:74", + "nodeType": "YulTypedName", + "src": "2666:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2673:3:74", + "nodeType": "YulTypedName", + "src": "2673:3:74", + "type": "" + } + ], + "src": "2613:118:74" + }, + { + "body": { + "nativeSrc": "2835:124:74", + "nodeType": "YulBlock", + "src": "2835:124:74", + "statements": [ + { + "nativeSrc": "2845:26:74", + "nodeType": "YulAssignment", + "src": "2845:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2857:9:74", + "nodeType": "YulIdentifier", + "src": "2857:9:74" + }, + { + "kind": "number", + "nativeSrc": "2868:2:74", + "nodeType": "YulLiteral", + "src": "2868:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2853:3:74", + "nodeType": "YulIdentifier", + "src": "2853:3:74" + }, + "nativeSrc": "2853:18:74", + "nodeType": "YulFunctionCall", + "src": "2853:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2845:4:74", + "nodeType": "YulIdentifier", + "src": "2845:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2925:6:74", + "nodeType": "YulIdentifier", + "src": "2925:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2938:9:74", + "nodeType": "YulIdentifier", + "src": "2938:9:74" + }, + { + "kind": "number", + "nativeSrc": "2949:1:74", + "nodeType": "YulLiteral", + "src": "2949:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2934:3:74", + "nodeType": "YulIdentifier", + "src": "2934:3:74" + }, + "nativeSrc": "2934:17:74", + "nodeType": "YulFunctionCall", + "src": "2934:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2881:43:74", + "nodeType": "YulIdentifier", + "src": "2881:43:74" + }, + "nativeSrc": "2881:71:74", + "nodeType": "YulFunctionCall", + "src": "2881:71:74" + }, + "nativeSrc": "2881:71:74", + "nodeType": "YulExpressionStatement", + "src": "2881:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "2737:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2807:9:74", + "nodeType": "YulTypedName", + "src": "2807:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2819:6:74", + "nodeType": "YulTypedName", + "src": "2819:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2830:4:74", + "nodeType": "YulTypedName", + "src": "2830:4:74", + "type": "" + } + ], + "src": "2737:222:74" + }, + { + "body": { + "nativeSrc": "3008:79:74", + "nodeType": "YulBlock", + "src": "3008:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3065:16:74", + "nodeType": "YulBlock", + "src": "3065:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3074:1:74", + "nodeType": "YulLiteral", + "src": "3074:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3077:1:74", + "nodeType": "YulLiteral", + "src": "3077:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3067:6:74", + "nodeType": "YulIdentifier", + "src": "3067:6:74" + }, + "nativeSrc": "3067:12:74", + "nodeType": "YulFunctionCall", + "src": "3067:12:74" + }, + "nativeSrc": "3067:12:74", + "nodeType": "YulExpressionStatement", + "src": "3067:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3031:5:74", + "nodeType": "YulIdentifier", + "src": "3031:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3056:5:74", + "nodeType": "YulIdentifier", + "src": "3056:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "3038:17:74", + "nodeType": "YulIdentifier", + "src": "3038:17:74" + }, + "nativeSrc": "3038:24:74", + "nodeType": "YulFunctionCall", + "src": "3038:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3028:2:74", + "nodeType": "YulIdentifier", + "src": "3028:2:74" + }, + "nativeSrc": "3028:35:74", + "nodeType": "YulFunctionCall", + "src": "3028:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3021:6:74", + "nodeType": "YulIdentifier", + "src": "3021:6:74" + }, + "nativeSrc": "3021:43:74", + "nodeType": "YulFunctionCall", + "src": "3021:43:74" + }, + "nativeSrc": "3018:63:74", + "nodeType": "YulIf", + "src": "3018:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "2965:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3001:5:74", + "nodeType": "YulTypedName", + "src": "3001:5:74", + "type": "" + } + ], + "src": "2965:122:74" + }, + { + "body": { + "nativeSrc": "3156:80:74", + "nodeType": "YulBlock", + "src": "3156:80:74", + "statements": [ + { + "nativeSrc": "3166:22:74", + "nodeType": "YulAssignment", + "src": "3166:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3181:6:74", + "nodeType": "YulIdentifier", + "src": "3181:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3175:5:74", + "nodeType": "YulIdentifier", + "src": "3175:5:74" + }, + "nativeSrc": "3175:13:74", + "nodeType": "YulFunctionCall", + "src": "3175:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3166:5:74", + "nodeType": "YulIdentifier", + "src": "3166:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3224:5:74", + "nodeType": "YulIdentifier", + "src": "3224:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "3197:26:74", + "nodeType": "YulIdentifier", + "src": "3197:26:74" + }, + "nativeSrc": "3197:33:74", + "nodeType": "YulFunctionCall", + "src": "3197:33:74" + }, + "nativeSrc": "3197:33:74", + "nodeType": "YulExpressionStatement", + "src": "3197:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "3093:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3134:6:74", + "nodeType": "YulTypedName", + "src": "3134:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3142:3:74", + "nodeType": "YulTypedName", + "src": "3142:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3150:5:74", + "nodeType": "YulTypedName", + "src": "3150:5:74", + "type": "" + } + ], + "src": "3093:143:74" + }, + { + "body": { + "nativeSrc": "3319:274:74", + "nodeType": "YulBlock", + "src": "3319:274:74", + "statements": [ + { + "body": { + "nativeSrc": "3365:83:74", + "nodeType": "YulBlock", + "src": "3365:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3367:77:74", + "nodeType": "YulIdentifier", + "src": "3367:77:74" + }, + "nativeSrc": "3367:79:74", + "nodeType": "YulFunctionCall", + "src": "3367:79:74" + }, + "nativeSrc": "3367:79:74", + "nodeType": "YulExpressionStatement", + "src": "3367:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3340:7:74", + "nodeType": "YulIdentifier", + "src": "3340:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3349:9:74", + "nodeType": "YulIdentifier", + "src": "3349:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3336:3:74", + "nodeType": "YulIdentifier", + "src": "3336:3:74" + }, + "nativeSrc": "3336:23:74", + "nodeType": "YulFunctionCall", + "src": "3336:23:74" + }, + { + "kind": "number", + "nativeSrc": "3361:2:74", + "nodeType": "YulLiteral", + "src": "3361:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3332:3:74", + "nodeType": "YulIdentifier", + "src": "3332:3:74" + }, + "nativeSrc": "3332:32:74", + "nodeType": "YulFunctionCall", + "src": "3332:32:74" + }, + "nativeSrc": "3329:119:74", + "nodeType": "YulIf", + "src": "3329:119:74" + }, + { + "nativeSrc": "3458:128:74", + "nodeType": "YulBlock", + "src": "3458:128:74", + "statements": [ + { + "nativeSrc": "3473:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3473:15:74", + "value": { + "kind": "number", + "nativeSrc": "3487:1:74", + "nodeType": "YulLiteral", + "src": "3487:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3477:6:74", + "nodeType": "YulTypedName", + "src": "3477:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3502:74:74", + "nodeType": "YulAssignment", + "src": "3502:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3548:9:74", + "nodeType": "YulIdentifier", + "src": "3548:9:74" + }, + { + "name": "offset", + "nativeSrc": "3559:6:74", + "nodeType": "YulIdentifier", + "src": "3559:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3544:3:74", + "nodeType": "YulIdentifier", + "src": "3544:3:74" + }, + "nativeSrc": "3544:22:74", + "nodeType": "YulFunctionCall", + "src": "3544:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3568:7:74", + "nodeType": "YulIdentifier", + "src": "3568:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "3512:31:74", + "nodeType": "YulIdentifier", + "src": "3512:31:74" + }, + "nativeSrc": "3512:64:74", + "nodeType": "YulFunctionCall", + "src": "3512:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3502:6:74", + "nodeType": "YulIdentifier", + "src": "3502:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "3242:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3289:9:74", + "nodeType": "YulTypedName", + "src": "3289:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3300:7:74", + "nodeType": "YulTypedName", + "src": "3300:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3312:6:74", + "nodeType": "YulTypedName", + "src": "3312:6:74", + "type": "" + } + ], + "src": "3242:351:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_contract$_ENS_$4567t_address_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b5060405161036a38038061036a833981810160405281019061003291906101f9565b60008273ffffffffffffffffffffffffffffffffffffffff166302571be37f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b6040518263ffffffff1660e01b81526004016100909190610252565b602060405180830381865afa1580156100ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d1919061026d565b90508073ffffffffffffffffffffffffffffffffffffffff16631e83409a836040518263ffffffff1660e01b815260040161010c91906102a9565b6020604051808303816000875af115801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f91906102f0565b5050505061031d565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101888261015d565b9050919050565b600061019a8261017d565b9050919050565b6101aa8161018f565b81146101b557600080fd5b50565b6000815190506101c7816101a1565b92915050565b6101d68161017d565b81146101e157600080fd5b50565b6000815190506101f3816101cd565b92915050565b600080604083850312156102105761020f610158565b5b600061021e858286016101b8565b925050602061022f858286016101e4565b9150509250929050565b6000819050919050565b61024c81610239565b82525050565b60006020820190506102676000830184610243565b92915050565b60006020828403121561028357610282610158565b5b6000610291848285016101e4565b91505092915050565b6102a38161017d565b82525050565b60006020820190506102be600083018461029a565b92915050565b6102cd81610239565b81146102d857600080fd5b50565b6000815190506102ea816102c4565b92915050565b60006020828403121561030657610305610158565b5b6000610314848285016102db565b91505092915050565b603f8061032b6000396000f3fe6080604052600080fdfea2646970667358221220ed841a828f867ff2349172d1373e99faea3190acf4958311ce0e726fc159bf9b64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x36A CODESIZE SUB DUP1 PUSH2 0x36A DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x1F9 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x90 SWAP2 SWAP1 PUSH2 0x252 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xAD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xD1 SWAP2 SWAP1 PUSH2 0x26D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1E83409A DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10C SWAP2 SWAP1 PUSH2 0x2A9 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x12B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x14F SWAP2 SWAP1 PUSH2 0x2F0 JUMP JUMPDEST POP POP POP POP PUSH2 0x31D JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x188 DUP3 PUSH2 0x15D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x19A DUP3 PUSH2 0x17D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1AA DUP2 PUSH2 0x18F JUMP JUMPDEST DUP2 EQ PUSH2 0x1B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C7 DUP2 PUSH2 0x1A1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1D6 DUP2 PUSH2 0x17D JUMP JUMPDEST DUP2 EQ PUSH2 0x1E1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F3 DUP2 PUSH2 0x1CD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x210 JUMPI PUSH2 0x20F PUSH2 0x158 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x21E DUP6 DUP3 DUP7 ADD PUSH2 0x1B8 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22F DUP6 DUP3 DUP7 ADD PUSH2 0x1E4 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x24C DUP2 PUSH2 0x239 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x267 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x243 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x283 JUMPI PUSH2 0x282 PUSH2 0x158 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x291 DUP5 DUP3 DUP6 ADD PUSH2 0x1E4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2A3 DUP2 PUSH2 0x17D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2BE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x29A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2CD DUP2 PUSH2 0x239 JUMP JUMPDEST DUP2 EQ PUSH2 0x2D8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2EA DUP2 PUSH2 0x2C4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x306 JUMPI PUSH2 0x305 PUSH2 0x158 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x314 DUP5 DUP3 DUP6 ADD PUSH2 0x2DB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x3F DUP1 PUSH2 0x32B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xED DUP5 BYTE DUP3 DUP16 DUP7 PUSH32 0xF2349172D1373E99FAEA3190ACF4958311CE0E726FC159BF9B64736F6C634300 ADDMOD NOT STOP CALLER ", + "sourceMap": "184:354:38:-:0;;;332:204;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;381:34;449:3;:9;;;259:66;459:17;;449:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;381:106;;497:16;:22;;;520:8;497:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;371:165;332:204;;184:354;;88:117:74;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:108::-;617:7;646:24;664:5;646:24;:::i;:::-;635:35;;568:108;;;:::o;682:146::-;767:36;797:5;767:36;:::i;:::-;760:5;757:47;747:75;;818:1;815;808:12;747:75;682:146;:::o;834:167::-;903:5;934:6;928:13;919:22;;950:45;989:5;950:45;:::i;:::-;834:167;;;;:::o;1007:122::-;1080:24;1098:5;1080:24;:::i;:::-;1073:5;1070:35;1060:63;;1119:1;1116;1109:12;1060:63;1007:122;:::o;1135:143::-;1192:5;1223:6;1217:13;1208:22;;1239:33;1266:5;1239:33;:::i;:::-;1135:143;;;;:::o;1284:531::-;1375:6;1383;1432:2;1420:9;1411:7;1407:23;1403:32;1400:119;;;1438:79;;:::i;:::-;1400:119;1558:1;1583:76;1651:7;1642:6;1631:9;1627:22;1583:76;:::i;:::-;1573:86;;1529:140;1708:2;1734:64;1790:7;1781:6;1770:9;1766:22;1734:64;:::i;:::-;1724:74;;1679:129;1284:531;;;;;:::o;1821:77::-;1858:7;1887:5;1876:16;;1821:77;;;:::o;1904:118::-;1991:24;2009:5;1991:24;:::i;:::-;1986:3;1979:37;1904:118;;:::o;2028:222::-;2121:4;2159:2;2148:9;2144:18;2136:26;;2172:71;2240:1;2229:9;2225:17;2216:6;2172:71;:::i;:::-;2028:222;;;;:::o;2256:351::-;2326:6;2375:2;2363:9;2354:7;2350:23;2346:32;2343:119;;;2381:79;;:::i;:::-;2343:119;2501:1;2526:64;2582:7;2573:6;2562:9;2558:22;2526:64;:::i;:::-;2516:74;;2472:128;2256:351;;;;:::o;2613:118::-;2700:24;2718:5;2700:24;:::i;:::-;2695:3;2688:37;2613:118;;:::o;2737:222::-;2830:4;2868:2;2857:9;2853:18;2845:26;;2881:71;2949:1;2938:9;2934:17;2925:6;2881:71;:::i;:::-;2737:222;;;;:::o;2965:122::-;3038:24;3056:5;3038:24;:::i;:::-;3031:5;3028:35;3018:63;;3077:1;3074;3067:12;3018:63;2965:122;:::o;3093:143::-;3150:5;3181:6;3175:13;3166:22;;3197:33;3224:5;3197:33;:::i;:::-;3093:143;;;;:::o;3242:351::-;3312:6;3361:2;3349:9;3340:7;3336:23;3332:32;3329:119;;;3367:79;;:::i;:::-;3329:119;3487:1;3512:64;3568:7;3559:6;3548:9;3544:22;3512:64;:::i;:::-;3502:74;;3458:128;3242:351;;;;:::o;184:354:38:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "6080604052600080fdfea2646970667358221220ed841a828f867ff2349172d1373e99faea3190acf4958311ce0e726fc159bf9b64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xED DUP5 BYTE DUP3 DUP16 DUP7 PUSH32 0xF2349172D1373E99FAEA3190ACF4958311CE0E726FC159BF9B64736F6C634300 ADDMOD NOT STOP CALLER ", + "sourceMap": "184:354:38:-:0;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ENS\",\"name\":\"ens\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"claimant\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol\":\"ReverseClaimer\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol\":{\"keccak256\":\"0x78a28627241535b595f6fff476a1fa7acc90c80684fe7784734920fc8af6fc22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://988e059f54bf387eab677161edf2e0746cc060fb6a2d34f20a283ee9e2e17bb3\",\"dweb:/ipfs/QmUVtTvZ3ijd2zi1pbPcMVyVrLVJwEhAnh5mK3MnJsHUZT\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol": { + "NameResolver": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "setName(bytes32,string)": "77372213" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\":\"NameResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\":{\"keccak256\":\"0xd57d28e5791b4b44650a00f5ef6c725af53698ec33faeeaa3591f0dbd939559a\",\"urls\":[\"bzz-raw://7f27cf1e6e67602c45cbf296d73cbea9382b3c6c9b3440475dd60a9da839ba49\",\"dweb:/ipfs/QmNSHz447MJgMTGb8MHxAPf2RbUQj5fmzBaVKvmD13bM6J\"]},\"@ensdomains/ens-contracts/contracts/root/Controllable.sol\":{\"keccak256\":\"0xb19b8c0fafe9ca2b4bf8aaafee486fa31437672e1e1977bdf84bfe03464969db\",\"urls\":[\"bzz-raw://cd365d76a131b89fa0f6b4097e63032337d2c071c082f5b9ca4af85cd16b3350\",\"dweb:/ipfs/QmXcgvgArVaK9k4wfzEj2rGu86W6U3BAY8mw8jVaAwJpFH\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + }, + "ReverseRegistrar": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract ENS", + "name": "ensAddr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "ControllerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "contract NameResolver", + "name": "resolver", + "type": "address" + } + ], + "name": "DefaultResolverChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "ReverseClaimed", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "claim", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "claimForAddr", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "claimWithResolver", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "controllers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "defaultResolver", + "outputs": [ + { + "internalType": "contract NameResolver", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "node", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setDefaultResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "setName", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "name": "setNameForAddr", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_7356": { + "entryPoint": null, + "id": 7356, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 476, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 484, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 917, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 1048, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 776, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 938, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 1069, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 797, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 983, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 852, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 998, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 867, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 717, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 842, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 735, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 685, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 680, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 894, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 1025, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 753, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:3440:74", + "nodeType": "YulBlock", + "src": "0:3440:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "625:51:74", + "nodeType": "YulBlock", + "src": "625:51:74", + "statements": [ + { + "nativeSrc": "635:35:74", + "nodeType": "YulAssignment", + "src": "635:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "664:5:74", + "nodeType": "YulIdentifier", + "src": "664:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "646:17:74", + "nodeType": "YulIdentifier", + "src": "646:17:74" + }, + "nativeSrc": "646:24:74", + "nodeType": "YulFunctionCall", + "src": "646:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "635:7:74", + "nodeType": "YulIdentifier", + "src": "635:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "568:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulTypedName", + "src": "607:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "617:7:74", + "nodeType": "YulTypedName", + "src": "617:7:74", + "type": "" + } + ], + "src": "568:108:74" + }, + { + "body": { + "nativeSrc": "737:91:74", + "nodeType": "YulBlock", + "src": "737:91:74", + "statements": [ + { + "body": { + "nativeSrc": "806:16:74", + "nodeType": "YulBlock", + "src": "806:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "815:1:74", + "nodeType": "YulLiteral", + "src": "815:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "818:1:74", + "nodeType": "YulLiteral", + "src": "818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "808:6:74", + "nodeType": "YulIdentifier", + "src": "808:6:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulFunctionCall", + "src": "808:12:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulExpressionStatement", + "src": "808:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "797:5:74", + "nodeType": "YulIdentifier", + "src": "797:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "767:29:74", + "nodeType": "YulIdentifier", + "src": "767:29:74" + }, + "nativeSrc": "767:36:74", + "nodeType": "YulFunctionCall", + "src": "767:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "757:2:74", + "nodeType": "YulIdentifier", + "src": "757:2:74" + }, + "nativeSrc": "757:47:74", + "nodeType": "YulFunctionCall", + "src": "757:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "750:6:74", + "nodeType": "YulIdentifier", + "src": "750:6:74" + }, + "nativeSrc": "750:55:74", + "nodeType": "YulFunctionCall", + "src": "750:55:74" + }, + "nativeSrc": "747:75:74", + "nodeType": "YulIf", + "src": "747:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "682:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "730:5:74", + "nodeType": "YulTypedName", + "src": "730:5:74", + "type": "" + } + ], + "src": "682:146:74" + }, + { + "body": { + "nativeSrc": "909:92:74", + "nodeType": "YulBlock", + "src": "909:92:74", + "statements": [ + { + "nativeSrc": "919:22:74", + "nodeType": "YulAssignment", + "src": "919:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "934:6:74", + "nodeType": "YulIdentifier", + "src": "934:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "928:5:74", + "nodeType": "YulIdentifier", + "src": "928:5:74" + }, + "nativeSrc": "928:13:74", + "nodeType": "YulFunctionCall", + "src": "928:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "919:5:74", + "nodeType": "YulIdentifier", + "src": "919:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "950:38:74", + "nodeType": "YulIdentifier", + "src": "950:38:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulFunctionCall", + "src": "950:45:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulExpressionStatement", + "src": "950:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "834:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "887:6:74", + "nodeType": "YulTypedName", + "src": "887:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "895:3:74", + "nodeType": "YulTypedName", + "src": "895:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "903:5:74", + "nodeType": "YulTypedName", + "src": "903:5:74", + "type": "" + } + ], + "src": "834:167:74" + }, + { + "body": { + "nativeSrc": "1096:286:74", + "nodeType": "YulBlock", + "src": "1096:286:74", + "statements": [ + { + "body": { + "nativeSrc": "1142:83:74", + "nodeType": "YulBlock", + "src": "1142:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1144:77:74", + "nodeType": "YulIdentifier", + "src": "1144:77:74" + }, + "nativeSrc": "1144:79:74", + "nodeType": "YulFunctionCall", + "src": "1144:79:74" + }, + "nativeSrc": "1144:79:74", + "nodeType": "YulExpressionStatement", + "src": "1144:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1117:7:74", + "nodeType": "YulIdentifier", + "src": "1117:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1126:9:74", + "nodeType": "YulIdentifier", + "src": "1126:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1113:3:74", + "nodeType": "YulIdentifier", + "src": "1113:3:74" + }, + "nativeSrc": "1113:23:74", + "nodeType": "YulFunctionCall", + "src": "1113:23:74" + }, + { + "kind": "number", + "nativeSrc": "1138:2:74", + "nodeType": "YulLiteral", + "src": "1138:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1109:3:74", + "nodeType": "YulIdentifier", + "src": "1109:3:74" + }, + "nativeSrc": "1109:32:74", + "nodeType": "YulFunctionCall", + "src": "1109:32:74" + }, + "nativeSrc": "1106:119:74", + "nodeType": "YulIf", + "src": "1106:119:74" + }, + { + "nativeSrc": "1235:140:74", + "nodeType": "YulBlock", + "src": "1235:140:74", + "statements": [ + { + "nativeSrc": "1250:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1250:15:74", + "value": { + "kind": "number", + "nativeSrc": "1264:1:74", + "nodeType": "YulLiteral", + "src": "1264:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1254:6:74", + "nodeType": "YulTypedName", + "src": "1254:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1279:86:74", + "nodeType": "YulAssignment", + "src": "1279:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1337:9:74", + "nodeType": "YulIdentifier", + "src": "1337:9:74" + }, + { + "name": "offset", + "nativeSrc": "1348:6:74", + "nodeType": "YulIdentifier", + "src": "1348:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1333:3:74", + "nodeType": "YulIdentifier", + "src": "1333:3:74" + }, + "nativeSrc": "1333:22:74", + "nodeType": "YulFunctionCall", + "src": "1333:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1357:7:74", + "nodeType": "YulIdentifier", + "src": "1357:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "1289:43:74", + "nodeType": "YulIdentifier", + "src": "1289:43:74" + }, + "nativeSrc": "1289:76:74", + "nodeType": "YulFunctionCall", + "src": "1289:76:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1279:6:74", + "nodeType": "YulIdentifier", + "src": "1279:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "1007:375:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1066:9:74", + "nodeType": "YulTypedName", + "src": "1066:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1077:7:74", + "nodeType": "YulTypedName", + "src": "1077:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1089:6:74", + "nodeType": "YulTypedName", + "src": "1089:6:74", + "type": "" + } + ], + "src": "1007:375:74" + }, + { + "body": { + "nativeSrc": "1433:32:74", + "nodeType": "YulBlock", + "src": "1433:32:74", + "statements": [ + { + "nativeSrc": "1443:16:74", + "nodeType": "YulAssignment", + "src": "1443:16:74", + "value": { + "name": "value", + "nativeSrc": "1454:5:74", + "nodeType": "YulIdentifier", + "src": "1454:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1443:7:74", + "nodeType": "YulIdentifier", + "src": "1443:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1388:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1415:5:74", + "nodeType": "YulTypedName", + "src": "1415:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1425:7:74", + "nodeType": "YulTypedName", + "src": "1425:7:74", + "type": "" + } + ], + "src": "1388:77:74" + }, + { + "body": { + "nativeSrc": "1536:53:74", + "nodeType": "YulBlock", + "src": "1536:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1553:3:74", + "nodeType": "YulIdentifier", + "src": "1553:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1576:5:74", + "nodeType": "YulIdentifier", + "src": "1576:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1558:17:74", + "nodeType": "YulIdentifier", + "src": "1558:17:74" + }, + "nativeSrc": "1558:24:74", + "nodeType": "YulFunctionCall", + "src": "1558:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1546:6:74", + "nodeType": "YulIdentifier", + "src": "1546:6:74" + }, + "nativeSrc": "1546:37:74", + "nodeType": "YulFunctionCall", + "src": "1546:37:74" + }, + "nativeSrc": "1546:37:74", + "nodeType": "YulExpressionStatement", + "src": "1546:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "1471:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1524:5:74", + "nodeType": "YulTypedName", + "src": "1524:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1531:3:74", + "nodeType": "YulTypedName", + "src": "1531:3:74", + "type": "" + } + ], + "src": "1471:118:74" + }, + { + "body": { + "nativeSrc": "1693:124:74", + "nodeType": "YulBlock", + "src": "1693:124:74", + "statements": [ + { + "nativeSrc": "1703:26:74", + "nodeType": "YulAssignment", + "src": "1703:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1715:9:74", + "nodeType": "YulIdentifier", + "src": "1715:9:74" + }, + { + "kind": "number", + "nativeSrc": "1726:2:74", + "nodeType": "YulLiteral", + "src": "1726:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1711:3:74", + "nodeType": "YulIdentifier", + "src": "1711:3:74" + }, + "nativeSrc": "1711:18:74", + "nodeType": "YulFunctionCall", + "src": "1711:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1703:4:74", + "nodeType": "YulIdentifier", + "src": "1703:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1783:6:74", + "nodeType": "YulIdentifier", + "src": "1783:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1796:9:74", + "nodeType": "YulIdentifier", + "src": "1796:9:74" + }, + { + "kind": "number", + "nativeSrc": "1807:1:74", + "nodeType": "YulLiteral", + "src": "1807:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1792:3:74", + "nodeType": "YulIdentifier", + "src": "1792:3:74" + }, + "nativeSrc": "1792:17:74", + "nodeType": "YulFunctionCall", + "src": "1792:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "1739:43:74", + "nodeType": "YulIdentifier", + "src": "1739:43:74" + }, + "nativeSrc": "1739:71:74", + "nodeType": "YulFunctionCall", + "src": "1739:71:74" + }, + "nativeSrc": "1739:71:74", + "nodeType": "YulExpressionStatement", + "src": "1739:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "1595:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1665:9:74", + "nodeType": "YulTypedName", + "src": "1665:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1677:6:74", + "nodeType": "YulTypedName", + "src": "1677:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1688:4:74", + "nodeType": "YulTypedName", + "src": "1688:4:74", + "type": "" + } + ], + "src": "1595:222:74" + }, + { + "body": { + "nativeSrc": "1866:79:74", + "nodeType": "YulBlock", + "src": "1866:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1923:16:74", + "nodeType": "YulBlock", + "src": "1923:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1932:1:74", + "nodeType": "YulLiteral", + "src": "1932:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1935:1:74", + "nodeType": "YulLiteral", + "src": "1935:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1925:6:74", + "nodeType": "YulIdentifier", + "src": "1925:6:74" + }, + "nativeSrc": "1925:12:74", + "nodeType": "YulFunctionCall", + "src": "1925:12:74" + }, + "nativeSrc": "1925:12:74", + "nodeType": "YulExpressionStatement", + "src": "1925:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1889:5:74", + "nodeType": "YulIdentifier", + "src": "1889:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1914:5:74", + "nodeType": "YulIdentifier", + "src": "1914:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1896:17:74", + "nodeType": "YulIdentifier", + "src": "1896:17:74" + }, + "nativeSrc": "1896:24:74", + "nodeType": "YulFunctionCall", + "src": "1896:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1886:2:74", + "nodeType": "YulIdentifier", + "src": "1886:2:74" + }, + "nativeSrc": "1886:35:74", + "nodeType": "YulFunctionCall", + "src": "1886:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1879:6:74", + "nodeType": "YulIdentifier", + "src": "1879:6:74" + }, + "nativeSrc": "1879:43:74", + "nodeType": "YulFunctionCall", + "src": "1879:43:74" + }, + "nativeSrc": "1876:63:74", + "nodeType": "YulIf", + "src": "1876:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "1823:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1859:5:74", + "nodeType": "YulTypedName", + "src": "1859:5:74", + "type": "" + } + ], + "src": "1823:122:74" + }, + { + "body": { + "nativeSrc": "2014:80:74", + "nodeType": "YulBlock", + "src": "2014:80:74", + "statements": [ + { + "nativeSrc": "2024:22:74", + "nodeType": "YulAssignment", + "src": "2024:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2039:6:74", + "nodeType": "YulIdentifier", + "src": "2039:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2033:5:74", + "nodeType": "YulIdentifier", + "src": "2033:5:74" + }, + "nativeSrc": "2033:13:74", + "nodeType": "YulFunctionCall", + "src": "2033:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2024:5:74", + "nodeType": "YulIdentifier", + "src": "2024:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2082:5:74", + "nodeType": "YulIdentifier", + "src": "2082:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "2055:26:74", + "nodeType": "YulIdentifier", + "src": "2055:26:74" + }, + "nativeSrc": "2055:33:74", + "nodeType": "YulFunctionCall", + "src": "2055:33:74" + }, + "nativeSrc": "2055:33:74", + "nodeType": "YulExpressionStatement", + "src": "2055:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "1951:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1992:6:74", + "nodeType": "YulTypedName", + "src": "1992:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2000:3:74", + "nodeType": "YulTypedName", + "src": "2000:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2008:5:74", + "nodeType": "YulTypedName", + "src": "2008:5:74", + "type": "" + } + ], + "src": "1951:143:74" + }, + { + "body": { + "nativeSrc": "2177:274:74", + "nodeType": "YulBlock", + "src": "2177:274:74", + "statements": [ + { + "body": { + "nativeSrc": "2223:83:74", + "nodeType": "YulBlock", + "src": "2223:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2225:77:74", + "nodeType": "YulIdentifier", + "src": "2225:77:74" + }, + "nativeSrc": "2225:79:74", + "nodeType": "YulFunctionCall", + "src": "2225:79:74" + }, + "nativeSrc": "2225:79:74", + "nodeType": "YulExpressionStatement", + "src": "2225:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2198:7:74", + "nodeType": "YulIdentifier", + "src": "2198:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2207:9:74", + "nodeType": "YulIdentifier", + "src": "2207:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2194:3:74", + "nodeType": "YulIdentifier", + "src": "2194:3:74" + }, + "nativeSrc": "2194:23:74", + "nodeType": "YulFunctionCall", + "src": "2194:23:74" + }, + { + "kind": "number", + "nativeSrc": "2219:2:74", + "nodeType": "YulLiteral", + "src": "2219:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2190:3:74", + "nodeType": "YulIdentifier", + "src": "2190:3:74" + }, + "nativeSrc": "2190:32:74", + "nodeType": "YulFunctionCall", + "src": "2190:32:74" + }, + "nativeSrc": "2187:119:74", + "nodeType": "YulIf", + "src": "2187:119:74" + }, + { + "nativeSrc": "2316:128:74", + "nodeType": "YulBlock", + "src": "2316:128:74", + "statements": [ + { + "nativeSrc": "2331:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2331:15:74", + "value": { + "kind": "number", + "nativeSrc": "2345:1:74", + "nodeType": "YulLiteral", + "src": "2345:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2335:6:74", + "nodeType": "YulTypedName", + "src": "2335:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2360:74:74", + "nodeType": "YulAssignment", + "src": "2360:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2406:9:74", + "nodeType": "YulIdentifier", + "src": "2406:9:74" + }, + { + "name": "offset", + "nativeSrc": "2417:6:74", + "nodeType": "YulIdentifier", + "src": "2417:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2402:3:74", + "nodeType": "YulIdentifier", + "src": "2402:3:74" + }, + "nativeSrc": "2402:22:74", + "nodeType": "YulFunctionCall", + "src": "2402:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2426:7:74", + "nodeType": "YulIdentifier", + "src": "2426:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "2370:31:74", + "nodeType": "YulIdentifier", + "src": "2370:31:74" + }, + "nativeSrc": "2370:64:74", + "nodeType": "YulFunctionCall", + "src": "2370:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2360:6:74", + "nodeType": "YulIdentifier", + "src": "2360:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "2100:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2147:9:74", + "nodeType": "YulTypedName", + "src": "2147:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2158:7:74", + "nodeType": "YulTypedName", + "src": "2158:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2170:6:74", + "nodeType": "YulTypedName", + "src": "2170:6:74", + "type": "" + } + ], + "src": "2100:351:74" + }, + { + "body": { + "nativeSrc": "2522:53:74", + "nodeType": "YulBlock", + "src": "2522:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2539:3:74", + "nodeType": "YulIdentifier", + "src": "2539:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2562:5:74", + "nodeType": "YulIdentifier", + "src": "2562:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "2544:17:74", + "nodeType": "YulIdentifier", + "src": "2544:17:74" + }, + "nativeSrc": "2544:24:74", + "nodeType": "YulFunctionCall", + "src": "2544:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2532:6:74", + "nodeType": "YulIdentifier", + "src": "2532:6:74" + }, + "nativeSrc": "2532:37:74", + "nodeType": "YulFunctionCall", + "src": "2532:37:74" + }, + "nativeSrc": "2532:37:74", + "nodeType": "YulExpressionStatement", + "src": "2532:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2457:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2510:5:74", + "nodeType": "YulTypedName", + "src": "2510:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2517:3:74", + "nodeType": "YulTypedName", + "src": "2517:3:74", + "type": "" + } + ], + "src": "2457:118:74" + }, + { + "body": { + "nativeSrc": "2679:124:74", + "nodeType": "YulBlock", + "src": "2679:124:74", + "statements": [ + { + "nativeSrc": "2689:26:74", + "nodeType": "YulAssignment", + "src": "2689:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2701:9:74", + "nodeType": "YulIdentifier", + "src": "2701:9:74" + }, + { + "kind": "number", + "nativeSrc": "2712:2:74", + "nodeType": "YulLiteral", + "src": "2712:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2697:3:74", + "nodeType": "YulIdentifier", + "src": "2697:3:74" + }, + "nativeSrc": "2697:18:74", + "nodeType": "YulFunctionCall", + "src": "2697:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2689:4:74", + "nodeType": "YulIdentifier", + "src": "2689:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2769:6:74", + "nodeType": "YulIdentifier", + "src": "2769:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2782:9:74", + "nodeType": "YulIdentifier", + "src": "2782:9:74" + }, + { + "kind": "number", + "nativeSrc": "2793:1:74", + "nodeType": "YulLiteral", + "src": "2793:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2778:3:74", + "nodeType": "YulIdentifier", + "src": "2778:3:74" + }, + "nativeSrc": "2778:17:74", + "nodeType": "YulFunctionCall", + "src": "2778:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2725:43:74", + "nodeType": "YulIdentifier", + "src": "2725:43:74" + }, + "nativeSrc": "2725:71:74", + "nodeType": "YulFunctionCall", + "src": "2725:71:74" + }, + "nativeSrc": "2725:71:74", + "nodeType": "YulExpressionStatement", + "src": "2725:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "2581:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2651:9:74", + "nodeType": "YulTypedName", + "src": "2651:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2663:6:74", + "nodeType": "YulTypedName", + "src": "2663:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2674:4:74", + "nodeType": "YulTypedName", + "src": "2674:4:74", + "type": "" + } + ], + "src": "2581:222:74" + }, + { + "body": { + "nativeSrc": "2852:79:74", + "nodeType": "YulBlock", + "src": "2852:79:74", + "statements": [ + { + "body": { + "nativeSrc": "2909:16:74", + "nodeType": "YulBlock", + "src": "2909:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2918:1:74", + "nodeType": "YulLiteral", + "src": "2918:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2921:1:74", + "nodeType": "YulLiteral", + "src": "2921:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2911:6:74", + "nodeType": "YulIdentifier", + "src": "2911:6:74" + }, + "nativeSrc": "2911:12:74", + "nodeType": "YulFunctionCall", + "src": "2911:12:74" + }, + "nativeSrc": "2911:12:74", + "nodeType": "YulExpressionStatement", + "src": "2911:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2875:5:74", + "nodeType": "YulIdentifier", + "src": "2875:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2900:5:74", + "nodeType": "YulIdentifier", + "src": "2900:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2882:17:74", + "nodeType": "YulIdentifier", + "src": "2882:17:74" + }, + "nativeSrc": "2882:24:74", + "nodeType": "YulFunctionCall", + "src": "2882:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2872:2:74", + "nodeType": "YulIdentifier", + "src": "2872:2:74" + }, + "nativeSrc": "2872:35:74", + "nodeType": "YulFunctionCall", + "src": "2872:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2865:6:74", + "nodeType": "YulIdentifier", + "src": "2865:6:74" + }, + "nativeSrc": "2865:43:74", + "nodeType": "YulFunctionCall", + "src": "2865:43:74" + }, + "nativeSrc": "2862:63:74", + "nodeType": "YulIf", + "src": "2862:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "2809:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2845:5:74", + "nodeType": "YulTypedName", + "src": "2845:5:74", + "type": "" + } + ], + "src": "2809:122:74" + }, + { + "body": { + "nativeSrc": "3000:80:74", + "nodeType": "YulBlock", + "src": "3000:80:74", + "statements": [ + { + "nativeSrc": "3010:22:74", + "nodeType": "YulAssignment", + "src": "3010:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3025:6:74", + "nodeType": "YulIdentifier", + "src": "3025:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3019:5:74", + "nodeType": "YulIdentifier", + "src": "3019:5:74" + }, + "nativeSrc": "3019:13:74", + "nodeType": "YulFunctionCall", + "src": "3019:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3010:5:74", + "nodeType": "YulIdentifier", + "src": "3010:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3068:5:74", + "nodeType": "YulIdentifier", + "src": "3068:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "3041:26:74", + "nodeType": "YulIdentifier", + "src": "3041:26:74" + }, + "nativeSrc": "3041:33:74", + "nodeType": "YulFunctionCall", + "src": "3041:33:74" + }, + "nativeSrc": "3041:33:74", + "nodeType": "YulExpressionStatement", + "src": "3041:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "2937:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2978:6:74", + "nodeType": "YulTypedName", + "src": "2978:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2986:3:74", + "nodeType": "YulTypedName", + "src": "2986:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2994:5:74", + "nodeType": "YulTypedName", + "src": "2994:5:74", + "type": "" + } + ], + "src": "2937:143:74" + }, + { + "body": { + "nativeSrc": "3163:274:74", + "nodeType": "YulBlock", + "src": "3163:274:74", + "statements": [ + { + "body": { + "nativeSrc": "3209:83:74", + "nodeType": "YulBlock", + "src": "3209:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3211:77:74", + "nodeType": "YulIdentifier", + "src": "3211:77:74" + }, + "nativeSrc": "3211:79:74", + "nodeType": "YulFunctionCall", + "src": "3211:79:74" + }, + "nativeSrc": "3211:79:74", + "nodeType": "YulExpressionStatement", + "src": "3211:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3184:7:74", + "nodeType": "YulIdentifier", + "src": "3184:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3193:9:74", + "nodeType": "YulIdentifier", + "src": "3193:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3180:3:74", + "nodeType": "YulIdentifier", + "src": "3180:3:74" + }, + "nativeSrc": "3180:23:74", + "nodeType": "YulFunctionCall", + "src": "3180:23:74" + }, + { + "kind": "number", + "nativeSrc": "3205:2:74", + "nodeType": "YulLiteral", + "src": "3205:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3176:3:74", + "nodeType": "YulIdentifier", + "src": "3176:3:74" + }, + "nativeSrc": "3176:32:74", + "nodeType": "YulFunctionCall", + "src": "3176:32:74" + }, + "nativeSrc": "3173:119:74", + "nodeType": "YulIf", + "src": "3173:119:74" + }, + { + "nativeSrc": "3302:128:74", + "nodeType": "YulBlock", + "src": "3302:128:74", + "statements": [ + { + "nativeSrc": "3317:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3317:15:74", + "value": { + "kind": "number", + "nativeSrc": "3331:1:74", + "nodeType": "YulLiteral", + "src": "3331:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3321:6:74", + "nodeType": "YulTypedName", + "src": "3321:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3346:74:74", + "nodeType": "YulAssignment", + "src": "3346:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3392:9:74", + "nodeType": "YulIdentifier", + "src": "3392:9:74" + }, + { + "name": "offset", + "nativeSrc": "3403:6:74", + "nodeType": "YulIdentifier", + "src": "3403:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3388:3:74", + "nodeType": "YulIdentifier", + "src": "3388:3:74" + }, + "nativeSrc": "3388:22:74", + "nodeType": "YulFunctionCall", + "src": "3388:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3412:7:74", + "nodeType": "YulIdentifier", + "src": "3412:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "3356:31:74", + "nodeType": "YulIdentifier", + "src": "3356:31:74" + }, + "nativeSrc": "3356:64:74", + "nodeType": "YulFunctionCall", + "src": "3356:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3346:6:74", + "nodeType": "YulIdentifier", + "src": "3346:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "3086:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3133:9:74", + "nodeType": "YulTypedName", + "src": "3133:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3144:7:74", + "nodeType": "YulTypedName", + "src": "3144:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3156:6:74", + "nodeType": "YulTypedName", + "src": "3156:6:74", + "type": "" + } + ], + "src": "3086:351:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function abi_decode_tuple_t_contract$_ENS_$4567_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60a060405234801561001057600080fd5b50604051611adc380380611adc8339818101604052810190610032919061031d565b61004e6100436101dc60201b60201c565b6101e460201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060008173ffffffffffffffffffffffffffffffffffffffff166302571be37f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b6040518263ffffffff1660e01b81526004016100e09190610363565b602060405180830381865afa1580156100fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012191906103aa565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146101d5578073ffffffffffffffffffffffffffffffffffffffff16631e83409a336040518263ffffffff1660e01b815260040161019091906103e6565b6020604051808303816000875af11580156101af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d3919061042d565b505b505061045a565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102d8826102ad565b9050919050565b60006102ea826102cd565b9050919050565b6102fa816102df565b811461030557600080fd5b50565b600081519050610317816102f1565b92915050565b600060208284031215610333576103326102a8565b5b600061034184828501610308565b91505092915050565b6000819050919050565b61035d8161034a565b82525050565b60006020820190506103786000830184610354565b92915050565b610387816102cd565b811461039257600080fd5b50565b6000815190506103a48161037e565b92915050565b6000602082840312156103c0576103bf6102a8565b5b60006103ce84828501610395565b91505092915050565b6103e0816102cd565b82525050565b60006020820190506103fb60008301846103d7565b92915050565b61040a8161034a565b811461041557600080fd5b50565b60008151905061042781610401565b92915050565b600060208284031215610443576104426102a8565b5b600061045184828501610418565b91505092915050565b60805161165961048360003960008181610344015281816103f4015261058101526116596000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b214610273578063da8c229e1461028f578063e0dba60f146102bf578063f2fde38b146102db576100ea565b80638da5cb5b146101f5578063bffbe61c14610213578063c47f002714610243576100ea565b806365669631116100c8578063656696311461016d578063715018a61461019d5780637a806d6b146101a7578063828eab0e146101d7576100ea565b80630f5a5466146100ef5780631e83409a1461011f5780633f15457f1461014f575b600080fd5b61010960048036038101906101049190610d08565b6102f7565b6040516101169190610d61565b60405180910390f35b61013960048036038101906101349190610d7c565b61030c565b6040516101469190610d61565b60405180910390f35b610157610342565b6040516101649190610e08565b60405180910390f35b61018760048036038101906101829190610e23565b610366565b6040516101949190610d61565b60405180910390f35b6101a5610643565b005b6101c160048036038101906101bc9190610fbc565b610657565b6040516101ce9190610d61565b60405180910390f35b6101df6106e0565b6040516101ec9190611060565b60405180910390f35b6101fd610706565b60405161020a919061108a565b60405180910390f35b61022d60048036038101906102289190610d7c565b61072f565b60405161023a9190610d61565b60405180910390f35b61025d600480360381019061025891906110a5565b61078c565b60405161026a9190610d61565b60405180910390f35b61028d60048036038101906102889190610d7c565b6107c3565b005b6102a960048036038101906102a49190610d7c565b6108c1565b6040516102b69190611109565b60405180910390f35b6102d960048036038101906102d49190611150565b6108e1565b005b6102f560048036038101906102f09190610d7c565b610992565b005b6000610304338484610366565b905092915050565b600061033b3383600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610366565b9050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000833373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806103ec5750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061048f57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b815260040161044d929190611190565b602060405180830381865afa15801561046a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048e91906111ce565b5b8061049f575061049e81610a15565b5b6104de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d5906112a4565b60405180910390fd5b60006104e986610ac4565b905060007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b826040516020016105239291906112e5565b604051602081830303815290604052805190602001209050808773ffffffffffffffffffffffffffffffffffffffff167f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9260405160405180910390a37f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f07f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b84898960006040518663ffffffff1660e01b8152600401610604959493929190611360565b600060405180830381600087803b15801561061e57600080fd5b505af1158015610632573d6000803e3d6000fd5b505050508093505050509392505050565b61064b610b4c565b6106556000610bca565b565b600080610665868686610366565b90508373ffffffffffffffffffffffffffffffffffffffff16637737221382856040518363ffffffff1660e01b81526004016106a2929190611421565b600060405180830381600087803b1580156106bc57600080fd5b505af11580156106d0573d6000803e3d6000fd5b5050505080915050949350505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b61075e83610ac4565b60405160200161076f9291906112e5565b604051602081830303815290604052805190602001209050919050565b60006107bc3333600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685610657565b9050919050565b6107cb610b4c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361083a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610831906114c3565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf60405160405180910390a250565b60016020528060005260406000206000915054906101000a900460ff1681565b6108e9610b4c565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516109869190611109565b60405180910390a25050565b61099a610b4c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0090611555565b60405180910390fd5b610a1281610bca565b50565b60008173ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a7f57506040513d601f19601f82011682018060405250810190610a7c919061158a565b60015b610a8c5760009050610abf565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16149150505b919050565b600060285b6000811115610b3f576001810390507f3031323334353637383961626364656600000000000000000000000000000000600f84161a81536010830492506001810390507f3031323334353637383961626364656600000000000000000000000000000000600f84161a8153601083049250610ac9565b5060286000209050919050565b610b54610c8e565b73ffffffffffffffffffffffffffffffffffffffff16610b72610706565b73ffffffffffffffffffffffffffffffffffffffff1614610bc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbf90611603565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610cd582610caa565b9050919050565b610ce581610cca565b8114610cf057600080fd5b50565b600081359050610d0281610cdc565b92915050565b60008060408385031215610d1f57610d1e610ca0565b5b6000610d2d85828601610cf3565b9250506020610d3e85828601610cf3565b9150509250929050565b6000819050919050565b610d5b81610d48565b82525050565b6000602082019050610d766000830184610d52565b92915050565b600060208284031215610d9257610d91610ca0565b5b6000610da084828501610cf3565b91505092915050565b6000819050919050565b6000610dce610dc9610dc484610caa565b610da9565b610caa565b9050919050565b6000610de082610db3565b9050919050565b6000610df282610dd5565b9050919050565b610e0281610de7565b82525050565b6000602082019050610e1d6000830184610df9565b92915050565b600080600060608486031215610e3c57610e3b610ca0565b5b6000610e4a86828701610cf3565b9350506020610e5b86828701610cf3565b9250506040610e6c86828701610cf3565b9150509250925092565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610ec982610e80565b810181811067ffffffffffffffff82111715610ee857610ee7610e91565b5b80604052505050565b6000610efb610c96565b9050610f078282610ec0565b919050565b600067ffffffffffffffff821115610f2757610f26610e91565b5b610f3082610e80565b9050602081019050919050565b82818337600083830152505050565b6000610f5f610f5a84610f0c565b610ef1565b905082815260208101848484011115610f7b57610f7a610e7b565b5b610f86848285610f3d565b509392505050565b600082601f830112610fa357610fa2610e76565b5b8135610fb3848260208601610f4c565b91505092915050565b60008060008060808587031215610fd657610fd5610ca0565b5b6000610fe487828801610cf3565b9450506020610ff587828801610cf3565b935050604061100687828801610cf3565b925050606085013567ffffffffffffffff81111561102757611026610ca5565b5b61103387828801610f8e565b91505092959194509250565b600061104a82610dd5565b9050919050565b61105a8161103f565b82525050565b60006020820190506110756000830184611051565b92915050565b61108481610cca565b82525050565b600060208201905061109f600083018461107b565b92915050565b6000602082840312156110bb576110ba610ca0565b5b600082013567ffffffffffffffff8111156110d9576110d8610ca5565b5b6110e584828501610f8e565b91505092915050565b60008115159050919050565b611103816110ee565b82525050565b600060208201905061111e60008301846110fa565b92915050565b61112d816110ee565b811461113857600080fd5b50565b60008135905061114a81611124565b92915050565b6000806040838503121561116757611166610ca0565b5b600061117585828601610cf3565b92505060206111868582860161113b565b9150509250929050565b60006040820190506111a5600083018561107b565b6111b2602083018461107b565b9392505050565b6000815190506111c881611124565b92915050565b6000602082840312156111e4576111e3610ca0565b5b60006111f2848285016111b9565b91505092915050565b600082825260208201905092915050565b7f526576657273655265676973747261723a2043616c6c6572206973206e6f742060008201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460208201527f6472657373206f7220746865206164647265737320697473656c660000000000604082015250565b600061128e605b836111fb565b91506112998261120c565b606082019050919050565b600060208201905081810360008301526112bd81611281565b9050919050565b6000819050919050565b6112df6112da82610d48565b6112c4565b82525050565b60006112f182856112ce565b60208201915061130182846112ce565b6020820191508190509392505050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600061134a61134561134084611311565b610da9565b61131b565b9050919050565b61135a8161132f565b82525050565b600060a0820190506113756000830188610d52565b6113826020830187610d52565b61138f604083018661107b565b61139c606083018561107b565b6113a96080830184611351565b9695505050505050565b600081519050919050565b60005b838110156113dc5780820151818401526020810190506113c1565b60008484015250505050565b60006113f3826113b3565b6113fd81856111fb565b935061140d8185602086016113be565b61141681610e80565b840191505092915050565b60006040820190506114366000830185610d52565b818103602083015261144881846113e8565b90509392505050565b7f526576657273655265676973747261723a205265736f6c76657220616464726560008201527f7373206d757374206e6f74206265203000000000000000000000000000000000602082015250565b60006114ad6030836111fb565b91506114b882611451565b604082019050919050565b600060208201905081810360008301526114dc816114a0565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061153f6026836111fb565b915061154a826114e3565b604082019050919050565b6000602082019050818103600083015261156e81611532565b9050919050565b60008151905061158481610cdc565b92915050565b6000602082840312156115a05761159f610ca0565b5b60006115ae84828501611575565b91505092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006115ed6020836111fb565b91506115f8826115b7565b602082019050919050565b6000602082019050818103600083015261161c816115e0565b905091905056fea264697066735822122051a207a41ea0e3ddace922d385d1b6dd40f82ecb472c3e9a2040c1f88ce2f78164736f6c63430008190033", + "opcodes": "PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x1ADC CODESIZE SUB DUP1 PUSH2 0x1ADC DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x31D JUMP JUMPDEST PUSH2 0x4E PUSH2 0x43 PUSH2 0x1DC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x1E4 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE0 SWAP2 SWAP1 PUSH2 0x363 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xFD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x3AA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1D5 JUMPI DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1E83409A CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x190 SWAP2 SWAP1 PUSH2 0x3E6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1AF JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1D3 SWAP2 SWAP1 PUSH2 0x42D JUMP JUMPDEST POP JUMPDEST POP POP PUSH2 0x45A JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D8 DUP3 PUSH2 0x2AD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2EA DUP3 PUSH2 0x2CD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2FA DUP2 PUSH2 0x2DF JUMP JUMPDEST DUP2 EQ PUSH2 0x305 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x317 DUP2 PUSH2 0x2F1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x333 JUMPI PUSH2 0x332 PUSH2 0x2A8 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x341 DUP5 DUP3 DUP6 ADD PUSH2 0x308 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x35D DUP2 PUSH2 0x34A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x378 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x354 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x387 DUP2 PUSH2 0x2CD JUMP JUMPDEST DUP2 EQ PUSH2 0x392 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3A4 DUP2 PUSH2 0x37E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3C0 JUMPI PUSH2 0x3BF PUSH2 0x2A8 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3CE DUP5 DUP3 DUP6 ADD PUSH2 0x395 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3E0 DUP2 PUSH2 0x2CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3FB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x40A DUP2 PUSH2 0x34A JUMP JUMPDEST DUP2 EQ PUSH2 0x415 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x427 DUP2 PUSH2 0x401 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x443 JUMPI PUSH2 0x442 PUSH2 0x2A8 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x451 DUP5 DUP3 DUP6 ADD PUSH2 0x418 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1659 PUSH2 0x483 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x344 ADD MSTORE DUP2 DUP2 PUSH2 0x3F4 ADD MSTORE PUSH2 0x581 ADD MSTORE PUSH2 0x1659 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xEA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xC66485B2 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xC66485B2 EQ PUSH2 0x273 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x28F JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0x2BF JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2DB JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F5 JUMPI DUP1 PUSH4 0xBFFBE61C EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xC47F0027 EQ PUSH2 0x243 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x65669631 GT PUSH2 0xC8 JUMPI DUP1 PUSH4 0x65669631 EQ PUSH2 0x16D JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x19D JUMPI DUP1 PUSH4 0x7A806D6B EQ PUSH2 0x1A7 JUMPI DUP1 PUSH4 0x828EAB0E EQ PUSH2 0x1D7 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0xF5A5466 EQ PUSH2 0xEF JUMPI DUP1 PUSH4 0x1E83409A EQ PUSH2 0x11F JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x14F JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x109 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x104 SWAP2 SWAP1 PUSH2 0xD08 JUMP JUMPDEST PUSH2 0x2F7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x116 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x139 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x134 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x30C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x146 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x157 PUSH2 0x342 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x164 SWAP2 SWAP1 PUSH2 0xE08 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x187 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x182 SWAP2 SWAP1 PUSH2 0xE23 JUMP JUMPDEST PUSH2 0x366 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x194 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1A5 PUSH2 0x643 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1BC SWAP2 SWAP1 PUSH2 0xFBC JUMP JUMPDEST PUSH2 0x657 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CE SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1DF PUSH2 0x6E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1EC SWAP2 SWAP1 PUSH2 0x1060 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1FD PUSH2 0x706 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x108A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x22D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x228 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x72F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x23A SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x25D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x258 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x78C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x26A SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x28D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x288 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x7C3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A4 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x8C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B6 SWAP2 SWAP1 PUSH2 0x1109 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2D9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D4 SWAP2 SWAP1 PUSH2 0x1150 JUMP JUMPDEST PUSH2 0x8E1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2F5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F0 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x992 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x304 CALLER DUP5 DUP5 PUSH2 0x366 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33B CALLER DUP4 PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x366 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP4 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x3EC JUMPI POP PUSH1 0x1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST DUP1 PUSH2 0x48F JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x44D SWAP3 SWAP2 SWAP1 PUSH2 0x1190 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x46A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x48E SWAP2 SWAP1 PUSH2 0x11CE JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x49F JUMPI POP PUSH2 0x49E DUP2 PUSH2 0xA15 JUMP JUMPDEST JUMPDEST PUSH2 0x4DE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D5 SWAP1 PUSH2 0x12A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x4E9 DUP7 PUSH2 0xAC4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x523 SWAP3 SWAP2 SWAP1 PUSH2 0x12E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x6ADA868DD3058CF77A48A74489FD7963688E5464B2B0FA957ACE976243270E92 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL DUP5 DUP10 DUP10 PUSH1 0x0 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x604 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1360 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x61E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x632 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x64B PUSH2 0xB4C JUMP JUMPDEST PUSH2 0x655 PUSH1 0x0 PUSH2 0xBCA JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x665 DUP7 DUP7 DUP7 PUSH2 0x366 JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77372213 DUP3 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP3 SWAP2 SWAP1 PUSH2 0x1421 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x6D0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 SWAP2 POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH2 0x75E DUP4 PUSH2 0xAC4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x76F SWAP3 SWAP2 SWAP1 PUSH2 0x12E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7BC CALLER CALLER PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH2 0x657 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7CB PUSH2 0xB4C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x83A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x831 SWAP1 PUSH2 0x14C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xEAE17A84D9EB83D8C8EB317F9E7D64857BC363FA51674D996C023F4340C577CF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x8E9 PUSH2 0xB4C JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x986 SWAP2 SWAP1 PUSH2 0x1109 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x99A PUSH2 0xB4C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA09 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA00 SWAP1 PUSH2 0x1555 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA12 DUP2 PUSH2 0xBCA JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8DA5CB5B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0xA7F JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA7C SWAP2 SWAP1 PUSH2 0x158A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0xA8C JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0xABF JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x28 JUMPDEST PUSH1 0x0 DUP2 GT ISZERO PUSH2 0xB3F JUMPI PUSH1 0x1 DUP2 SUB SWAP1 POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xF DUP5 AND BYTE DUP2 MSTORE8 PUSH1 0x10 DUP4 DIV SWAP3 POP PUSH1 0x1 DUP2 SUB SWAP1 POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xF DUP5 AND BYTE DUP2 MSTORE8 PUSH1 0x10 DUP4 DIV SWAP3 POP PUSH2 0xAC9 JUMP JUMPDEST POP PUSH1 0x28 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xB54 PUSH2 0xC8E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB72 PUSH2 0x706 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xBC8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBBF SWAP1 PUSH2 0x1603 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xCD5 DUP3 PUSH2 0xCAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xCE5 DUP2 PUSH2 0xCCA JUMP JUMPDEST DUP2 EQ PUSH2 0xCF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xD02 DUP2 PUSH2 0xCDC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xD1F JUMPI PUSH2 0xD1E PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xD2D DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xD3E DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xD5B DUP2 PUSH2 0xD48 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xD76 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xD52 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD92 JUMPI PUSH2 0xD91 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xDA0 DUP5 DUP3 DUP6 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDCE PUSH2 0xDC9 PUSH2 0xDC4 DUP5 PUSH2 0xCAA JUMP JUMPDEST PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0xCAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDE0 DUP3 PUSH2 0xDB3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDF2 DUP3 PUSH2 0xDD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE02 DUP2 PUSH2 0xDE7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE1D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xDF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xE3C JUMPI PUSH2 0xE3B PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xE4A DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0xE5B DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0xE6C DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0xEC9 DUP3 PUSH2 0xE80 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xEE8 JUMPI PUSH2 0xEE7 PUSH2 0xE91 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEFB PUSH2 0xC96 JUMP JUMPDEST SWAP1 POP PUSH2 0xF07 DUP3 DUP3 PUSH2 0xEC0 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0xF27 JUMPI PUSH2 0xF26 PUSH2 0xE91 JUMP JUMPDEST JUMPDEST PUSH2 0xF30 DUP3 PUSH2 0xE80 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF5F PUSH2 0xF5A DUP5 PUSH2 0xF0C JUMP JUMPDEST PUSH2 0xEF1 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF7B JUMPI PUSH2 0xF7A PUSH2 0xE7B JUMP JUMPDEST JUMPDEST PUSH2 0xF86 DUP5 DUP3 DUP6 PUSH2 0xF3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFA3 JUMPI PUSH2 0xFA2 PUSH2 0xE76 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0xFB3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF4C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xFD6 JUMPI PUSH2 0xFD5 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xFE4 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0xFF5 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1006 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1027 JUMPI PUSH2 0x1026 PUSH2 0xCA5 JUMP JUMPDEST JUMPDEST PUSH2 0x1033 DUP8 DUP3 DUP9 ADD PUSH2 0xF8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x104A DUP3 PUSH2 0xDD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x105A DUP2 PUSH2 0x103F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1075 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1051 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1084 DUP2 PUSH2 0xCCA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x109F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x107B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10BB JUMPI PUSH2 0x10BA PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x10D9 JUMPI PUSH2 0x10D8 PUSH2 0xCA5 JUMP JUMPDEST JUMPDEST PUSH2 0x10E5 DUP5 DUP3 DUP6 ADD PUSH2 0xF8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1103 DUP2 PUSH2 0x10EE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x111E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x10FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x112D DUP2 PUSH2 0x10EE JUMP JUMPDEST DUP2 EQ PUSH2 0x1138 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x114A DUP2 PUSH2 0x1124 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1175 DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1186 DUP6 DUP3 DUP7 ADD PUSH2 0x113B JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x11A5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x11B2 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x107B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x11C8 DUP2 PUSH2 0x1124 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x11E4 JUMPI PUSH2 0x11E3 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x11F2 DUP5 DUP3 DUP6 ADD PUSH2 0x11B9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x526576657273655265676973747261723A2043616C6C6572206973206E6F7420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6120636F6E74726F6C6C6572206F7220617574686F7269736564206279206164 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6472657373206F7220746865206164647265737320697473656C660000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x128E PUSH1 0x5B DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x1299 DUP3 PUSH2 0x120C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x12BD DUP2 PUSH2 0x1281 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12DF PUSH2 0x12DA DUP3 PUSH2 0xD48 JUMP JUMPDEST PUSH2 0x12C4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12F1 DUP3 DUP6 PUSH2 0x12CE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1301 DUP3 DUP5 PUSH2 0x12CE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x134A PUSH2 0x1345 PUSH2 0x1340 DUP5 PUSH2 0x1311 JUMP JUMPDEST PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0x131B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x135A DUP2 PUSH2 0x132F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x1375 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0xD52 JUMP JUMPDEST PUSH2 0x1382 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0xD52 JUMP JUMPDEST PUSH2 0x138F PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x139C PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x13A9 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x1351 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x13DC JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x13C1 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13F3 DUP3 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x13FD DUP2 DUP6 PUSH2 0x11FB JUMP JUMPDEST SWAP4 POP PUSH2 0x140D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x13BE JUMP JUMPDEST PUSH2 0x1416 DUP2 PUSH2 0xE80 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1436 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0xD52 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x1448 DUP2 DUP5 PUSH2 0x13E8 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x526576657273655265676973747261723A205265736F6C766572206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373206D757374206E6F74206265203000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14AD PUSH1 0x30 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x14B8 DUP3 PUSH2 0x1451 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x14DC DUP2 PUSH2 0x14A0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x153F PUSH1 0x26 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x154A DUP3 PUSH2 0x14E3 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x156E DUP2 PUSH2 0x1532 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1584 DUP2 PUSH2 0xCDC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x15A0 JUMPI PUSH2 0x159F PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15AE DUP5 DUP3 DUP6 ADD PUSH2 0x1575 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15ED PUSH1 0x20 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x15F8 DUP3 PUSH2 0x15B7 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x161C DUP2 PUSH2 0x15E0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MLOAD LOG2 SMOD LOG4 0x1E LOG0 0xE3 0xDD 0xAC 0xE9 0x22 0xD3 DUP6 0xD1 0xB6 0xDD BLOCKHASH 0xF8 0x2E 0xCB SELFBALANCE 0x2C RETURNDATACOPY SWAP11 KECCAK256 BLOCKHASH 0xC1 0xF8 DUP13 0xE2 0xF7 DUP2 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "516:5983:39:-:0;;;895:343;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;:7:39;930:13;;;;;;;;;;1020:29;1082:7;:13;;;418:66;1096:17;;1082:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1020:104;;1171:3;1138:37;;1146:12;1138:37;;;1134:98;;1191:12;:18;;;1210:10;1191:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1134:98;920:318;895:343;516:5983;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;88:117:74:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:108::-;617:7;646:24;664:5;646:24;:::i;:::-;635:35;;568:108;;;:::o;682:146::-;767:36;797:5;767:36;:::i;:::-;760:5;757:47;747:75;;818:1;815;808:12;747:75;682:146;:::o;834:167::-;903:5;934:6;928:13;919:22;;950:45;989:5;950:45;:::i;:::-;834:167;;;;:::o;1007:375::-;1089:6;1138:2;1126:9;1117:7;1113:23;1109:32;1106:119;;;1144:79;;:::i;:::-;1106:119;1264:1;1289:76;1357:7;1348:6;1337:9;1333:22;1289:76;:::i;:::-;1279:86;;1235:140;1007:375;;;;:::o;1388:77::-;1425:7;1454:5;1443:16;;1388:77;;;:::o;1471:118::-;1558:24;1576:5;1558:24;:::i;:::-;1553:3;1546:37;1471:118;;:::o;1595:222::-;1688:4;1726:2;1715:9;1711:18;1703:26;;1739:71;1807:1;1796:9;1792:17;1783:6;1739:71;:::i;:::-;1595:222;;;;:::o;1823:122::-;1896:24;1914:5;1896:24;:::i;:::-;1889:5;1886:35;1876:63;;1935:1;1932;1925:12;1876:63;1823:122;:::o;1951:143::-;2008:5;2039:6;2033:13;2024:22;;2055:33;2082:5;2055:33;:::i;:::-;1951:143;;;;:::o;2100:351::-;2170:6;2219:2;2207:9;2198:7;2194:23;2190:32;2187:119;;;2225:79;;:::i;:::-;2187:119;2345:1;2370:64;2426:7;2417:6;2406:9;2402:22;2370:64;:::i;:::-;2360:74;;2316:128;2100:351;;;;:::o;2457:118::-;2544:24;2562:5;2544:24;:::i;:::-;2539:3;2532:37;2457:118;;:::o;2581:222::-;2674:4;2712:2;2701:9;2697:18;2689:26;;2725:71;2793:1;2782:9;2778:17;2769:6;2725:71;:::i;:::-;2581:222;;;;:::o;2809:122::-;2882:24;2900:5;2882:24;:::i;:::-;2875:5;2872:35;2862:63;;2921:1;2918;2911:12;2862:63;2809:122;:::o;2937:143::-;2994:5;3025:6;3019:13;3010:22;;3041:33;3068:5;3041:33;:::i;:::-;2937:143;;;;:::o;3086:351::-;3156:6;3205:2;3193:9;3184:7;3180:23;3176:32;3173:119;;;3211:79;;:::i;:::-;3173:119;3331:1;3356:64;3412:7;3403:6;3392:9;3388:22;3356:64;:::i;:::-;3346:74;;3302:128;3086:351;;;;:::o;516:5983:39:-;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_checkOwner_13109": { + "entryPoint": 2892, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 3214, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 3018, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@claimForAddr_7490": { + "entryPoint": 870, + "id": 7490, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@claimWithResolver_7509": { + "entryPoint": 759, + "id": 7509, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@claim_7440": { + "entryPoint": 780, + "id": 7440, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@controllers_7633": { + "entryPoint": 2241, + "id": 7633, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@defaultResolver_7305": { + "entryPoint": 1760, + "id": 7305, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@ens_7302": { + "entryPoint": 834, + "id": 7302, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@node_7585": { + "entryPoint": 1839, + "id": 7585, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@owner_13095": { + "entryPoint": 1798, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@ownsContract_7623": { + "entryPoint": 2581, + "id": 7623, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@renounceOwnership_13123": { + "entryPoint": 1603, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setController_7672": { + "entryPoint": 2273, + "id": 7672, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setDefaultResolver_7420": { + "entryPoint": 1987, + "id": 7420, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@setNameForAddr_7565": { + "entryPoint": 1623, + "id": 7565, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@setName_7531": { + "entryPoint": 1932, + "id": 7531, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@sha3HexAddress_7595": { + "entryPoint": 2756, + "id": 7595, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@transferOwnership_13146": { + "entryPoint": 2450, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_available_length_t_string_memory_ptr": { + "entryPoint": 3916, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 3315, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 5493, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 4411, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool_fromMemory": { + "entryPoint": 4537, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr": { + "entryPoint": 3982, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 3452, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 5514, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 3336, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_addresst_address": { + "entryPoint": 3619, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_addresst_addresst_string_memory_ptr": { + "entryPoint": 4028, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 4432, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 4558, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_string_memory_ptr": { + "entryPoint": 4261, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 4219, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 4346, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 3410, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { + "entryPoint": 4814, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack": { + "entryPoint": 3577, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_NameResolver_$7287_to_t_address_fromStack": { + "entryPoint": 4177, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_rational_0_by_1_to_t_uint64_fromStack": { + "entryPoint": 4945, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 5096, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 5426, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 5600, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa_to_t_string_memory_ptr_fromStack": { + "entryPoint": 5280, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d_to_t_string_memory_ptr_fromStack": { + "entryPoint": 4737, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 4837, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 4234, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed": { + "entryPoint": 4496, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 4361, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 3425, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_rational_0_by_1__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed": { + "entryPoint": 4960, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_memory_ptr__to_t_bytes32_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5153, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed": { + "entryPoint": 3592, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_NameResolver_$7287__to_t_address__fromStack_reversed": { + "entryPoint": 4192, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5461, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5635, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5315, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 4772, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 3825, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 3222, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 3852, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 5043, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 4603, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 3274, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 4334, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 3400, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_0_by_1": { + "entryPoint": 4881, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 3242, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 4891, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_ENS_$4567_to_t_address": { + "entryPoint": 3559, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_NameResolver_$7287_to_t_address": { + "entryPoint": 4159, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_rational_0_by_1_to_t_uint64": { + "entryPoint": 4911, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_address": { + "entryPoint": 3541, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_uint160": { + "entryPoint": 3507, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 3901, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 5054, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "finalize_allocation": { + "entryPoint": 3776, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 3497, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_bytes32": { + "entryPoint": 4804, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x41": { + "entryPoint": 3729, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 3702, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 3707, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 3237, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 3232, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 3712, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 5347, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 5559, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa": { + "entryPoint": 5201, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d": { + "entryPoint": 4620, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 3292, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 4388, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:18118:74", + "nodeType": "YulBlock", + "src": "0:18118:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "611:79:74", + "nodeType": "YulBlock", + "src": "611:79:74", + "statements": [ + { + "body": { + "nativeSrc": "668:16:74", + "nodeType": "YulBlock", + "src": "668:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "677:1:74", + "nodeType": "YulLiteral", + "src": "677:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "680:1:74", + "nodeType": "YulLiteral", + "src": "680:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "670:6:74", + "nodeType": "YulIdentifier", + "src": "670:6:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulFunctionCall", + "src": "670:12:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulExpressionStatement", + "src": "670:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "634:5:74", + "nodeType": "YulIdentifier", + "src": "634:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "659:5:74", + "nodeType": "YulIdentifier", + "src": "659:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "641:17:74", + "nodeType": "YulIdentifier", + "src": "641:17:74" + }, + "nativeSrc": "641:24:74", + "nodeType": "YulFunctionCall", + "src": "641:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "631:2:74", + "nodeType": "YulIdentifier", + "src": "631:2:74" + }, + "nativeSrc": "631:35:74", + "nodeType": "YulFunctionCall", + "src": "631:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "624:6:74", + "nodeType": "YulIdentifier", + "src": "624:6:74" + }, + "nativeSrc": "624:43:74", + "nodeType": "YulFunctionCall", + "src": "624:43:74" + }, + "nativeSrc": "621:63:74", + "nodeType": "YulIf", + "src": "621:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "568:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "604:5:74", + "nodeType": "YulTypedName", + "src": "604:5:74", + "type": "" + } + ], + "src": "568:122:74" + }, + { + "body": { + "nativeSrc": "748:87:74", + "nodeType": "YulBlock", + "src": "748:87:74", + "statements": [ + { + "nativeSrc": "758:29:74", + "nodeType": "YulAssignment", + "src": "758:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "780:6:74", + "nodeType": "YulIdentifier", + "src": "780:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "767:12:74", + "nodeType": "YulIdentifier", + "src": "767:12:74" + }, + "nativeSrc": "767:20:74", + "nodeType": "YulFunctionCall", + "src": "767:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "758:5:74", + "nodeType": "YulIdentifier", + "src": "758:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "823:5:74", + "nodeType": "YulIdentifier", + "src": "823:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "796:26:74", + "nodeType": "YulIdentifier", + "src": "796:26:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulFunctionCall", + "src": "796:33:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulExpressionStatement", + "src": "796:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "696:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "726:6:74", + "nodeType": "YulTypedName", + "src": "726:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "734:3:74", + "nodeType": "YulTypedName", + "src": "734:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "742:5:74", + "nodeType": "YulTypedName", + "src": "742:5:74", + "type": "" + } + ], + "src": "696:139:74" + }, + { + "body": { + "nativeSrc": "924:391:74", + "nodeType": "YulBlock", + "src": "924:391:74", + "statements": [ + { + "body": { + "nativeSrc": "970:83:74", + "nodeType": "YulBlock", + "src": "970:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "972:77:74", + "nodeType": "YulIdentifier", + "src": "972:77:74" + }, + "nativeSrc": "972:79:74", + "nodeType": "YulFunctionCall", + "src": "972:79:74" + }, + "nativeSrc": "972:79:74", + "nodeType": "YulExpressionStatement", + "src": "972:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "945:7:74", + "nodeType": "YulIdentifier", + "src": "945:7:74" + }, + { + "name": "headStart", + "nativeSrc": "954:9:74", + "nodeType": "YulIdentifier", + "src": "954:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "941:3:74", + "nodeType": "YulIdentifier", + "src": "941:3:74" + }, + "nativeSrc": "941:23:74", + "nodeType": "YulFunctionCall", + "src": "941:23:74" + }, + { + "kind": "number", + "nativeSrc": "966:2:74", + "nodeType": "YulLiteral", + "src": "966:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "937:3:74", + "nodeType": "YulIdentifier", + "src": "937:3:74" + }, + "nativeSrc": "937:32:74", + "nodeType": "YulFunctionCall", + "src": "937:32:74" + }, + "nativeSrc": "934:119:74", + "nodeType": "YulIf", + "src": "934:119:74" + }, + { + "nativeSrc": "1063:117:74", + "nodeType": "YulBlock", + "src": "1063:117:74", + "statements": [ + { + "nativeSrc": "1078:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1078:15:74", + "value": { + "kind": "number", + "nativeSrc": "1092:1:74", + "nodeType": "YulLiteral", + "src": "1092:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1082:6:74", + "nodeType": "YulTypedName", + "src": "1082:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1107:63:74", + "nodeType": "YulAssignment", + "src": "1107:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1142:9:74", + "nodeType": "YulIdentifier", + "src": "1142:9:74" + }, + { + "name": "offset", + "nativeSrc": "1153:6:74", + "nodeType": "YulIdentifier", + "src": "1153:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1138:3:74", + "nodeType": "YulIdentifier", + "src": "1138:3:74" + }, + "nativeSrc": "1138:22:74", + "nodeType": "YulFunctionCall", + "src": "1138:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1162:7:74", + "nodeType": "YulIdentifier", + "src": "1162:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1117:20:74", + "nodeType": "YulIdentifier", + "src": "1117:20:74" + }, + "nativeSrc": "1117:53:74", + "nodeType": "YulFunctionCall", + "src": "1117:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1107:6:74", + "nodeType": "YulIdentifier", + "src": "1107:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1190:118:74", + "nodeType": "YulBlock", + "src": "1190:118:74", + "statements": [ + { + "nativeSrc": "1205:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1205:16:74", + "value": { + "kind": "number", + "nativeSrc": "1219:2:74", + "nodeType": "YulLiteral", + "src": "1219:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1209:6:74", + "nodeType": "YulTypedName", + "src": "1209:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1235:63:74", + "nodeType": "YulAssignment", + "src": "1235:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1270:9:74", + "nodeType": "YulIdentifier", + "src": "1270:9:74" + }, + { + "name": "offset", + "nativeSrc": "1281:6:74", + "nodeType": "YulIdentifier", + "src": "1281:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1266:3:74", + "nodeType": "YulIdentifier", + "src": "1266:3:74" + }, + "nativeSrc": "1266:22:74", + "nodeType": "YulFunctionCall", + "src": "1266:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1290:7:74", + "nodeType": "YulIdentifier", + "src": "1290:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1245:20:74", + "nodeType": "YulIdentifier", + "src": "1245:20:74" + }, + "nativeSrc": "1245:53:74", + "nodeType": "YulFunctionCall", + "src": "1245:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1235:6:74", + "nodeType": "YulIdentifier", + "src": "1235:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "841:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "886:9:74", + "nodeType": "YulTypedName", + "src": "886:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "897:7:74", + "nodeType": "YulTypedName", + "src": "897:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "909:6:74", + "nodeType": "YulTypedName", + "src": "909:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "917:6:74", + "nodeType": "YulTypedName", + "src": "917:6:74", + "type": "" + } + ], + "src": "841:474:74" + }, + { + "body": { + "nativeSrc": "1366:32:74", + "nodeType": "YulBlock", + "src": "1366:32:74", + "statements": [ + { + "nativeSrc": "1376:16:74", + "nodeType": "YulAssignment", + "src": "1376:16:74", + "value": { + "name": "value", + "nativeSrc": "1387:5:74", + "nodeType": "YulIdentifier", + "src": "1387:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1376:7:74", + "nodeType": "YulIdentifier", + "src": "1376:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "1321:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1348:5:74", + "nodeType": "YulTypedName", + "src": "1348:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1358:7:74", + "nodeType": "YulTypedName", + "src": "1358:7:74", + "type": "" + } + ], + "src": "1321:77:74" + }, + { + "body": { + "nativeSrc": "1469:53:74", + "nodeType": "YulBlock", + "src": "1469:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1486:3:74", + "nodeType": "YulIdentifier", + "src": "1486:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1509:5:74", + "nodeType": "YulIdentifier", + "src": "1509:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "1491:17:74", + "nodeType": "YulIdentifier", + "src": "1491:17:74" + }, + "nativeSrc": "1491:24:74", + "nodeType": "YulFunctionCall", + "src": "1491:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1479:6:74", + "nodeType": "YulIdentifier", + "src": "1479:6:74" + }, + "nativeSrc": "1479:37:74", + "nodeType": "YulFunctionCall", + "src": "1479:37:74" + }, + "nativeSrc": "1479:37:74", + "nodeType": "YulExpressionStatement", + "src": "1479:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "1404:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1457:5:74", + "nodeType": "YulTypedName", + "src": "1457:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1464:3:74", + "nodeType": "YulTypedName", + "src": "1464:3:74", + "type": "" + } + ], + "src": "1404:118:74" + }, + { + "body": { + "nativeSrc": "1626:124:74", + "nodeType": "YulBlock", + "src": "1626:124:74", + "statements": [ + { + "nativeSrc": "1636:26:74", + "nodeType": "YulAssignment", + "src": "1636:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1648:9:74", + "nodeType": "YulIdentifier", + "src": "1648:9:74" + }, + { + "kind": "number", + "nativeSrc": "1659:2:74", + "nodeType": "YulLiteral", + "src": "1659:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1644:3:74", + "nodeType": "YulIdentifier", + "src": "1644:3:74" + }, + "nativeSrc": "1644:18:74", + "nodeType": "YulFunctionCall", + "src": "1644:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1636:4:74", + "nodeType": "YulIdentifier", + "src": "1636:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1716:6:74", + "nodeType": "YulIdentifier", + "src": "1716:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1729:9:74", + "nodeType": "YulIdentifier", + "src": "1729:9:74" + }, + { + "kind": "number", + "nativeSrc": "1740:1:74", + "nodeType": "YulLiteral", + "src": "1740:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1725:3:74", + "nodeType": "YulIdentifier", + "src": "1725:3:74" + }, + "nativeSrc": "1725:17:74", + "nodeType": "YulFunctionCall", + "src": "1725:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "1672:43:74", + "nodeType": "YulIdentifier", + "src": "1672:43:74" + }, + "nativeSrc": "1672:71:74", + "nodeType": "YulFunctionCall", + "src": "1672:71:74" + }, + "nativeSrc": "1672:71:74", + "nodeType": "YulExpressionStatement", + "src": "1672:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "1528:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1598:9:74", + "nodeType": "YulTypedName", + "src": "1598:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1610:6:74", + "nodeType": "YulTypedName", + "src": "1610:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1621:4:74", + "nodeType": "YulTypedName", + "src": "1621:4:74", + "type": "" + } + ], + "src": "1528:222:74" + }, + { + "body": { + "nativeSrc": "1822:263:74", + "nodeType": "YulBlock", + "src": "1822:263:74", + "statements": [ + { + "body": { + "nativeSrc": "1868:83:74", + "nodeType": "YulBlock", + "src": "1868:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1870:77:74", + "nodeType": "YulIdentifier", + "src": "1870:77:74" + }, + "nativeSrc": "1870:79:74", + "nodeType": "YulFunctionCall", + "src": "1870:79:74" + }, + "nativeSrc": "1870:79:74", + "nodeType": "YulExpressionStatement", + "src": "1870:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1843:7:74", + "nodeType": "YulIdentifier", + "src": "1843:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1852:9:74", + "nodeType": "YulIdentifier", + "src": "1852:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1839:3:74", + "nodeType": "YulIdentifier", + "src": "1839:3:74" + }, + "nativeSrc": "1839:23:74", + "nodeType": "YulFunctionCall", + "src": "1839:23:74" + }, + { + "kind": "number", + "nativeSrc": "1864:2:74", + "nodeType": "YulLiteral", + "src": "1864:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1835:3:74", + "nodeType": "YulIdentifier", + "src": "1835:3:74" + }, + "nativeSrc": "1835:32:74", + "nodeType": "YulFunctionCall", + "src": "1835:32:74" + }, + "nativeSrc": "1832:119:74", + "nodeType": "YulIf", + "src": "1832:119:74" + }, + { + "nativeSrc": "1961:117:74", + "nodeType": "YulBlock", + "src": "1961:117:74", + "statements": [ + { + "nativeSrc": "1976:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1976:15:74", + "value": { + "kind": "number", + "nativeSrc": "1990:1:74", + "nodeType": "YulLiteral", + "src": "1990:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1980:6:74", + "nodeType": "YulTypedName", + "src": "1980:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2005:63:74", + "nodeType": "YulAssignment", + "src": "2005:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2040:9:74", + "nodeType": "YulIdentifier", + "src": "2040:9:74" + }, + { + "name": "offset", + "nativeSrc": "2051:6:74", + "nodeType": "YulIdentifier", + "src": "2051:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2036:3:74", + "nodeType": "YulIdentifier", + "src": "2036:3:74" + }, + "nativeSrc": "2036:22:74", + "nodeType": "YulFunctionCall", + "src": "2036:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2060:7:74", + "nodeType": "YulIdentifier", + "src": "2060:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "2015:20:74", + "nodeType": "YulIdentifier", + "src": "2015:20:74" + }, + "nativeSrc": "2015:53:74", + "nodeType": "YulFunctionCall", + "src": "2015:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2005:6:74", + "nodeType": "YulIdentifier", + "src": "2005:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "1756:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1792:9:74", + "nodeType": "YulTypedName", + "src": "1792:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1803:7:74", + "nodeType": "YulTypedName", + "src": "1803:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1815:6:74", + "nodeType": "YulTypedName", + "src": "1815:6:74", + "type": "" + } + ], + "src": "1756:329:74" + }, + { + "body": { + "nativeSrc": "2123:28:74", + "nodeType": "YulBlock", + "src": "2123:28:74", + "statements": [ + { + "nativeSrc": "2133:12:74", + "nodeType": "YulAssignment", + "src": "2133:12:74", + "value": { + "name": "value", + "nativeSrc": "2140:5:74", + "nodeType": "YulIdentifier", + "src": "2140:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "2133:3:74", + "nodeType": "YulIdentifier", + "src": "2133:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "2091:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2109:5:74", + "nodeType": "YulTypedName", + "src": "2109:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "2119:3:74", + "nodeType": "YulTypedName", + "src": "2119:3:74", + "type": "" + } + ], + "src": "2091:60:74" + }, + { + "body": { + "nativeSrc": "2217:82:74", + "nodeType": "YulBlock", + "src": "2217:82:74", + "statements": [ + { + "nativeSrc": "2227:66:74", + "nodeType": "YulAssignment", + "src": "2227:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2285:5:74", + "nodeType": "YulIdentifier", + "src": "2285:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "2267:17:74", + "nodeType": "YulIdentifier", + "src": "2267:17:74" + }, + "nativeSrc": "2267:24:74", + "nodeType": "YulFunctionCall", + "src": "2267:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "2258:8:74", + "nodeType": "YulIdentifier", + "src": "2258:8:74" + }, + "nativeSrc": "2258:34:74", + "nodeType": "YulFunctionCall", + "src": "2258:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "2240:17:74", + "nodeType": "YulIdentifier", + "src": "2240:17:74" + }, + "nativeSrc": "2240:53:74", + "nodeType": "YulFunctionCall", + "src": "2240:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "2227:9:74", + "nodeType": "YulIdentifier", + "src": "2227:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "2157:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2197:5:74", + "nodeType": "YulTypedName", + "src": "2197:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "2207:9:74", + "nodeType": "YulTypedName", + "src": "2207:9:74", + "type": "" + } + ], + "src": "2157:142:74" + }, + { + "body": { + "nativeSrc": "2365:66:74", + "nodeType": "YulBlock", + "src": "2365:66:74", + "statements": [ + { + "nativeSrc": "2375:50:74", + "nodeType": "YulAssignment", + "src": "2375:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2419:5:74", + "nodeType": "YulIdentifier", + "src": "2419:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "2388:30:74", + "nodeType": "YulIdentifier", + "src": "2388:30:74" + }, + "nativeSrc": "2388:37:74", + "nodeType": "YulFunctionCall", + "src": "2388:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "2375:9:74", + "nodeType": "YulIdentifier", + "src": "2375:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "2305:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2345:5:74", + "nodeType": "YulTypedName", + "src": "2345:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "2355:9:74", + "nodeType": "YulTypedName", + "src": "2355:9:74", + "type": "" + } + ], + "src": "2305:126:74" + }, + { + "body": { + "nativeSrc": "2509:66:74", + "nodeType": "YulBlock", + "src": "2509:66:74", + "statements": [ + { + "nativeSrc": "2519:50:74", + "nodeType": "YulAssignment", + "src": "2519:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2563:5:74", + "nodeType": "YulIdentifier", + "src": "2563:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "2532:30:74", + "nodeType": "YulIdentifier", + "src": "2532:30:74" + }, + "nativeSrc": "2532:37:74", + "nodeType": "YulFunctionCall", + "src": "2532:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "2519:9:74", + "nodeType": "YulIdentifier", + "src": "2519:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "2437:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2489:5:74", + "nodeType": "YulTypedName", + "src": "2489:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "2499:9:74", + "nodeType": "YulTypedName", + "src": "2499:9:74", + "type": "" + } + ], + "src": "2437:138:74" + }, + { + "body": { + "nativeSrc": "2658:78:74", + "nodeType": "YulBlock", + "src": "2658:78:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2675:3:74", + "nodeType": "YulIdentifier", + "src": "2675:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2723:5:74", + "nodeType": "YulIdentifier", + "src": "2723:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "2680:42:74", + "nodeType": "YulIdentifier", + "src": "2680:42:74" + }, + "nativeSrc": "2680:49:74", + "nodeType": "YulFunctionCall", + "src": "2680:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2668:6:74", + "nodeType": "YulIdentifier", + "src": "2668:6:74" + }, + "nativeSrc": "2668:62:74", + "nodeType": "YulFunctionCall", + "src": "2668:62:74" + }, + "nativeSrc": "2668:62:74", + "nodeType": "YulExpressionStatement", + "src": "2668:62:74" + } + ] + }, + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "2581:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2646:5:74", + "nodeType": "YulTypedName", + "src": "2646:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2653:3:74", + "nodeType": "YulTypedName", + "src": "2653:3:74", + "type": "" + } + ], + "src": "2581:155:74" + }, + { + "body": { + "nativeSrc": "2852:136:74", + "nodeType": "YulBlock", + "src": "2852:136:74", + "statements": [ + { + "nativeSrc": "2862:26:74", + "nodeType": "YulAssignment", + "src": "2862:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2874:9:74", + "nodeType": "YulIdentifier", + "src": "2874:9:74" + }, + { + "kind": "number", + "nativeSrc": "2885:2:74", + "nodeType": "YulLiteral", + "src": "2885:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2870:3:74", + "nodeType": "YulIdentifier", + "src": "2870:3:74" + }, + "nativeSrc": "2870:18:74", + "nodeType": "YulFunctionCall", + "src": "2870:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2862:4:74", + "nodeType": "YulIdentifier", + "src": "2862:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2954:6:74", + "nodeType": "YulIdentifier", + "src": "2954:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2967:9:74", + "nodeType": "YulIdentifier", + "src": "2967:9:74" + }, + { + "kind": "number", + "nativeSrc": "2978:1:74", + "nodeType": "YulLiteral", + "src": "2978:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2963:3:74", + "nodeType": "YulIdentifier", + "src": "2963:3:74" + }, + "nativeSrc": "2963:17:74", + "nodeType": "YulFunctionCall", + "src": "2963:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "2898:55:74", + "nodeType": "YulIdentifier", + "src": "2898:55:74" + }, + "nativeSrc": "2898:83:74", + "nodeType": "YulFunctionCall", + "src": "2898:83:74" + }, + "nativeSrc": "2898:83:74", + "nodeType": "YulExpressionStatement", + "src": "2898:83:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed", + "nativeSrc": "2742:246:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2824:9:74", + "nodeType": "YulTypedName", + "src": "2824:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2836:6:74", + "nodeType": "YulTypedName", + "src": "2836:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2847:4:74", + "nodeType": "YulTypedName", + "src": "2847:4:74", + "type": "" + } + ], + "src": "2742:246:74" + }, + { + "body": { + "nativeSrc": "3094:519:74", + "nodeType": "YulBlock", + "src": "3094:519:74", + "statements": [ + { + "body": { + "nativeSrc": "3140:83:74", + "nodeType": "YulBlock", + "src": "3140:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3142:77:74", + "nodeType": "YulIdentifier", + "src": "3142:77:74" + }, + "nativeSrc": "3142:79:74", + "nodeType": "YulFunctionCall", + "src": "3142:79:74" + }, + "nativeSrc": "3142:79:74", + "nodeType": "YulExpressionStatement", + "src": "3142:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3115:7:74", + "nodeType": "YulIdentifier", + "src": "3115:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3124:9:74", + "nodeType": "YulIdentifier", + "src": "3124:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3111:3:74", + "nodeType": "YulIdentifier", + "src": "3111:3:74" + }, + "nativeSrc": "3111:23:74", + "nodeType": "YulFunctionCall", + "src": "3111:23:74" + }, + { + "kind": "number", + "nativeSrc": "3136:2:74", + "nodeType": "YulLiteral", + "src": "3136:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3107:3:74", + "nodeType": "YulIdentifier", + "src": "3107:3:74" + }, + "nativeSrc": "3107:32:74", + "nodeType": "YulFunctionCall", + "src": "3107:32:74" + }, + "nativeSrc": "3104:119:74", + "nodeType": "YulIf", + "src": "3104:119:74" + }, + { + "nativeSrc": "3233:117:74", + "nodeType": "YulBlock", + "src": "3233:117:74", + "statements": [ + { + "nativeSrc": "3248:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3248:15:74", + "value": { + "kind": "number", + "nativeSrc": "3262:1:74", + "nodeType": "YulLiteral", + "src": "3262:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3252:6:74", + "nodeType": "YulTypedName", + "src": "3252:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3277:63:74", + "nodeType": "YulAssignment", + "src": "3277:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3312:9:74", + "nodeType": "YulIdentifier", + "src": "3312:9:74" + }, + { + "name": "offset", + "nativeSrc": "3323:6:74", + "nodeType": "YulIdentifier", + "src": "3323:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3308:3:74", + "nodeType": "YulIdentifier", + "src": "3308:3:74" + }, + "nativeSrc": "3308:22:74", + "nodeType": "YulFunctionCall", + "src": "3308:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3332:7:74", + "nodeType": "YulIdentifier", + "src": "3332:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "3287:20:74", + "nodeType": "YulIdentifier", + "src": "3287:20:74" + }, + "nativeSrc": "3287:53:74", + "nodeType": "YulFunctionCall", + "src": "3287:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3277:6:74", + "nodeType": "YulIdentifier", + "src": "3277:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3360:118:74", + "nodeType": "YulBlock", + "src": "3360:118:74", + "statements": [ + { + "nativeSrc": "3375:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3375:16:74", + "value": { + "kind": "number", + "nativeSrc": "3389:2:74", + "nodeType": "YulLiteral", + "src": "3389:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3379:6:74", + "nodeType": "YulTypedName", + "src": "3379:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3405:63:74", + "nodeType": "YulAssignment", + "src": "3405:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3440:9:74", + "nodeType": "YulIdentifier", + "src": "3440:9:74" + }, + { + "name": "offset", + "nativeSrc": "3451:6:74", + "nodeType": "YulIdentifier", + "src": "3451:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3436:3:74", + "nodeType": "YulIdentifier", + "src": "3436:3:74" + }, + "nativeSrc": "3436:22:74", + "nodeType": "YulFunctionCall", + "src": "3436:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3460:7:74", + "nodeType": "YulIdentifier", + "src": "3460:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "3415:20:74", + "nodeType": "YulIdentifier", + "src": "3415:20:74" + }, + "nativeSrc": "3415:53:74", + "nodeType": "YulFunctionCall", + "src": "3415:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3405:6:74", + "nodeType": "YulIdentifier", + "src": "3405:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3488:118:74", + "nodeType": "YulBlock", + "src": "3488:118:74", + "statements": [ + { + "nativeSrc": "3503:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3503:16:74", + "value": { + "kind": "number", + "nativeSrc": "3517:2:74", + "nodeType": "YulLiteral", + "src": "3517:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3507:6:74", + "nodeType": "YulTypedName", + "src": "3507:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3533:63:74", + "nodeType": "YulAssignment", + "src": "3533:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3568:9:74", + "nodeType": "YulIdentifier", + "src": "3568:9:74" + }, + { + "name": "offset", + "nativeSrc": "3579:6:74", + "nodeType": "YulIdentifier", + "src": "3579:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3564:3:74", + "nodeType": "YulIdentifier", + "src": "3564:3:74" + }, + "nativeSrc": "3564:22:74", + "nodeType": "YulFunctionCall", + "src": "3564:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3588:7:74", + "nodeType": "YulIdentifier", + "src": "3588:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "3543:20:74", + "nodeType": "YulIdentifier", + "src": "3543:20:74" + }, + "nativeSrc": "3543:53:74", + "nodeType": "YulFunctionCall", + "src": "3543:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "3533:6:74", + "nodeType": "YulIdentifier", + "src": "3533:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_address", + "nativeSrc": "2994:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3048:9:74", + "nodeType": "YulTypedName", + "src": "3048:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3059:7:74", + "nodeType": "YulTypedName", + "src": "3059:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3071:6:74", + "nodeType": "YulTypedName", + "src": "3071:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "3079:6:74", + "nodeType": "YulTypedName", + "src": "3079:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "3087:6:74", + "nodeType": "YulTypedName", + "src": "3087:6:74", + "type": "" + } + ], + "src": "2994:619:74" + }, + { + "body": { + "nativeSrc": "3708:28:74", + "nodeType": "YulBlock", + "src": "3708:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3725:1:74", + "nodeType": "YulLiteral", + "src": "3725:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3728:1:74", + "nodeType": "YulLiteral", + "src": "3728:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3718:6:74", + "nodeType": "YulIdentifier", + "src": "3718:6:74" + }, + "nativeSrc": "3718:12:74", + "nodeType": "YulFunctionCall", + "src": "3718:12:74" + }, + "nativeSrc": "3718:12:74", + "nodeType": "YulExpressionStatement", + "src": "3718:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "3619:117:74", + "nodeType": "YulFunctionDefinition", + "src": "3619:117:74" + }, + { + "body": { + "nativeSrc": "3831:28:74", + "nodeType": "YulBlock", + "src": "3831:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3848:1:74", + "nodeType": "YulLiteral", + "src": "3848:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3851:1:74", + "nodeType": "YulLiteral", + "src": "3851:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3841:6:74", + "nodeType": "YulIdentifier", + "src": "3841:6:74" + }, + "nativeSrc": "3841:12:74", + "nodeType": "YulFunctionCall", + "src": "3841:12:74" + }, + "nativeSrc": "3841:12:74", + "nodeType": "YulExpressionStatement", + "src": "3841:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "3742:117:74", + "nodeType": "YulFunctionDefinition", + "src": "3742:117:74" + }, + { + "body": { + "nativeSrc": "3913:54:74", + "nodeType": "YulBlock", + "src": "3913:54:74", + "statements": [ + { + "nativeSrc": "3923:38:74", + "nodeType": "YulAssignment", + "src": "3923:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3941:5:74", + "nodeType": "YulIdentifier", + "src": "3941:5:74" + }, + { + "kind": "number", + "nativeSrc": "3948:2:74", + "nodeType": "YulLiteral", + "src": "3948:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3937:3:74", + "nodeType": "YulIdentifier", + "src": "3937:3:74" + }, + "nativeSrc": "3937:14:74", + "nodeType": "YulFunctionCall", + "src": "3937:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3957:2:74", + "nodeType": "YulLiteral", + "src": "3957:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "3953:3:74", + "nodeType": "YulIdentifier", + "src": "3953:3:74" + }, + "nativeSrc": "3953:7:74", + "nodeType": "YulFunctionCall", + "src": "3953:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3933:3:74", + "nodeType": "YulIdentifier", + "src": "3933:3:74" + }, + "nativeSrc": "3933:28:74", + "nodeType": "YulFunctionCall", + "src": "3933:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "3923:6:74", + "nodeType": "YulIdentifier", + "src": "3923:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "3865:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3896:5:74", + "nodeType": "YulTypedName", + "src": "3896:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "3906:6:74", + "nodeType": "YulTypedName", + "src": "3906:6:74", + "type": "" + } + ], + "src": "3865:102:74" + }, + { + "body": { + "nativeSrc": "4001:152:74", + "nodeType": "YulBlock", + "src": "4001:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4018:1:74", + "nodeType": "YulLiteral", + "src": "4018:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4021:77:74", + "nodeType": "YulLiteral", + "src": "4021:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4011:6:74", + "nodeType": "YulIdentifier", + "src": "4011:6:74" + }, + "nativeSrc": "4011:88:74", + "nodeType": "YulFunctionCall", + "src": "4011:88:74" + }, + "nativeSrc": "4011:88:74", + "nodeType": "YulExpressionStatement", + "src": "4011:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4115:1:74", + "nodeType": "YulLiteral", + "src": "4115:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "4118:4:74", + "nodeType": "YulLiteral", + "src": "4118:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4108:6:74", + "nodeType": "YulIdentifier", + "src": "4108:6:74" + }, + "nativeSrc": "4108:15:74", + "nodeType": "YulFunctionCall", + "src": "4108:15:74" + }, + "nativeSrc": "4108:15:74", + "nodeType": "YulExpressionStatement", + "src": "4108:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4139:1:74", + "nodeType": "YulLiteral", + "src": "4139:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4142:4:74", + "nodeType": "YulLiteral", + "src": "4142:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4132:6:74", + "nodeType": "YulIdentifier", + "src": "4132:6:74" + }, + "nativeSrc": "4132:15:74", + "nodeType": "YulFunctionCall", + "src": "4132:15:74" + }, + "nativeSrc": "4132:15:74", + "nodeType": "YulExpressionStatement", + "src": "4132:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "3973:180:74", + "nodeType": "YulFunctionDefinition", + "src": "3973:180:74" + }, + { + "body": { + "nativeSrc": "4202:238:74", + "nodeType": "YulBlock", + "src": "4202:238:74", + "statements": [ + { + "nativeSrc": "4212:58:74", + "nodeType": "YulVariableDeclaration", + "src": "4212:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4234:6:74", + "nodeType": "YulIdentifier", + "src": "4234:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "4264:4:74", + "nodeType": "YulIdentifier", + "src": "4264:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "4242:21:74", + "nodeType": "YulIdentifier", + "src": "4242:21:74" + }, + "nativeSrc": "4242:27:74", + "nodeType": "YulFunctionCall", + "src": "4242:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4230:3:74", + "nodeType": "YulIdentifier", + "src": "4230:3:74" + }, + "nativeSrc": "4230:40:74", + "nodeType": "YulFunctionCall", + "src": "4230:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "4216:10:74", + "nodeType": "YulTypedName", + "src": "4216:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4381:22:74", + "nodeType": "YulBlock", + "src": "4381:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "4383:16:74", + "nodeType": "YulIdentifier", + "src": "4383:16:74" + }, + "nativeSrc": "4383:18:74", + "nodeType": "YulFunctionCall", + "src": "4383:18:74" + }, + "nativeSrc": "4383:18:74", + "nodeType": "YulExpressionStatement", + "src": "4383:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "4324:10:74", + "nodeType": "YulIdentifier", + "src": "4324:10:74" + }, + { + "kind": "number", + "nativeSrc": "4336:18:74", + "nodeType": "YulLiteral", + "src": "4336:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4321:2:74", + "nodeType": "YulIdentifier", + "src": "4321:2:74" + }, + "nativeSrc": "4321:34:74", + "nodeType": "YulFunctionCall", + "src": "4321:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "4360:10:74", + "nodeType": "YulIdentifier", + "src": "4360:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "4372:6:74", + "nodeType": "YulIdentifier", + "src": "4372:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4357:2:74", + "nodeType": "YulIdentifier", + "src": "4357:2:74" + }, + "nativeSrc": "4357:22:74", + "nodeType": "YulFunctionCall", + "src": "4357:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "4318:2:74", + "nodeType": "YulIdentifier", + "src": "4318:2:74" + }, + "nativeSrc": "4318:62:74", + "nodeType": "YulFunctionCall", + "src": "4318:62:74" + }, + "nativeSrc": "4315:88:74", + "nodeType": "YulIf", + "src": "4315:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4419:2:74", + "nodeType": "YulLiteral", + "src": "4419:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "4423:10:74", + "nodeType": "YulIdentifier", + "src": "4423:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4412:6:74", + "nodeType": "YulIdentifier", + "src": "4412:6:74" + }, + "nativeSrc": "4412:22:74", + "nodeType": "YulFunctionCall", + "src": "4412:22:74" + }, + "nativeSrc": "4412:22:74", + "nodeType": "YulExpressionStatement", + "src": "4412:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "4159:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "4188:6:74", + "nodeType": "YulTypedName", + "src": "4188:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "4196:4:74", + "nodeType": "YulTypedName", + "src": "4196:4:74", + "type": "" + } + ], + "src": "4159:281:74" + }, + { + "body": { + "nativeSrc": "4487:88:74", + "nodeType": "YulBlock", + "src": "4487:88:74", + "statements": [ + { + "nativeSrc": "4497:30:74", + "nodeType": "YulAssignment", + "src": "4497:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "4507:18:74", + "nodeType": "YulIdentifier", + "src": "4507:18:74" + }, + "nativeSrc": "4507:20:74", + "nodeType": "YulFunctionCall", + "src": "4507:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "4497:6:74", + "nodeType": "YulIdentifier", + "src": "4497:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4556:6:74", + "nodeType": "YulIdentifier", + "src": "4556:6:74" + }, + { + "name": "size", + "nativeSrc": "4564:4:74", + "nodeType": "YulIdentifier", + "src": "4564:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "4536:19:74", + "nodeType": "YulIdentifier", + "src": "4536:19:74" + }, + "nativeSrc": "4536:33:74", + "nodeType": "YulFunctionCall", + "src": "4536:33:74" + }, + "nativeSrc": "4536:33:74", + "nodeType": "YulExpressionStatement", + "src": "4536:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "4446:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "4471:4:74", + "nodeType": "YulTypedName", + "src": "4471:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "4480:6:74", + "nodeType": "YulTypedName", + "src": "4480:6:74", + "type": "" + } + ], + "src": "4446:129:74" + }, + { + "body": { + "nativeSrc": "4648:241:74", + "nodeType": "YulBlock", + "src": "4648:241:74", + "statements": [ + { + "body": { + "nativeSrc": "4753:22:74", + "nodeType": "YulBlock", + "src": "4753:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "4755:16:74", + "nodeType": "YulIdentifier", + "src": "4755:16:74" + }, + "nativeSrc": "4755:18:74", + "nodeType": "YulFunctionCall", + "src": "4755:18:74" + }, + "nativeSrc": "4755:18:74", + "nodeType": "YulExpressionStatement", + "src": "4755:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "4725:6:74", + "nodeType": "YulIdentifier", + "src": "4725:6:74" + }, + { + "kind": "number", + "nativeSrc": "4733:18:74", + "nodeType": "YulLiteral", + "src": "4733:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4722:2:74", + "nodeType": "YulIdentifier", + "src": "4722:2:74" + }, + "nativeSrc": "4722:30:74", + "nodeType": "YulFunctionCall", + "src": "4722:30:74" + }, + "nativeSrc": "4719:56:74", + "nodeType": "YulIf", + "src": "4719:56:74" + }, + { + "nativeSrc": "4785:37:74", + "nodeType": "YulAssignment", + "src": "4785:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "4815:6:74", + "nodeType": "YulIdentifier", + "src": "4815:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "4793:21:74", + "nodeType": "YulIdentifier", + "src": "4793:21:74" + }, + "nativeSrc": "4793:29:74", + "nodeType": "YulFunctionCall", + "src": "4793:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "4785:4:74", + "nodeType": "YulIdentifier", + "src": "4785:4:74" + } + ] + }, + { + "nativeSrc": "4859:23:74", + "nodeType": "YulAssignment", + "src": "4859:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "4871:4:74", + "nodeType": "YulIdentifier", + "src": "4871:4:74" + }, + { + "kind": "number", + "nativeSrc": "4877:4:74", + "nodeType": "YulLiteral", + "src": "4877:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4867:3:74", + "nodeType": "YulIdentifier", + "src": "4867:3:74" + }, + "nativeSrc": "4867:15:74", + "nodeType": "YulFunctionCall", + "src": "4867:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "4859:4:74", + "nodeType": "YulIdentifier", + "src": "4859:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "4581:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "4632:6:74", + "nodeType": "YulTypedName", + "src": "4632:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "4643:4:74", + "nodeType": "YulTypedName", + "src": "4643:4:74", + "type": "" + } + ], + "src": "4581:308:74" + }, + { + "body": { + "nativeSrc": "4959:84:74", + "nodeType": "YulBlock", + "src": "4959:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "4983:3:74", + "nodeType": "YulIdentifier", + "src": "4983:3:74" + }, + { + "name": "src", + "nativeSrc": "4988:3:74", + "nodeType": "YulIdentifier", + "src": "4988:3:74" + }, + { + "name": "length", + "nativeSrc": "4993:6:74", + "nodeType": "YulIdentifier", + "src": "4993:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "4970:12:74", + "nodeType": "YulIdentifier", + "src": "4970:12:74" + }, + "nativeSrc": "4970:30:74", + "nodeType": "YulFunctionCall", + "src": "4970:30:74" + }, + "nativeSrc": "4970:30:74", + "nodeType": "YulExpressionStatement", + "src": "4970:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "5020:3:74", + "nodeType": "YulIdentifier", + "src": "5020:3:74" + }, + { + "name": "length", + "nativeSrc": "5025:6:74", + "nodeType": "YulIdentifier", + "src": "5025:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5016:3:74", + "nodeType": "YulIdentifier", + "src": "5016:3:74" + }, + "nativeSrc": "5016:16:74", + "nodeType": "YulFunctionCall", + "src": "5016:16:74" + }, + { + "kind": "number", + "nativeSrc": "5034:1:74", + "nodeType": "YulLiteral", + "src": "5034:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5009:6:74", + "nodeType": "YulIdentifier", + "src": "5009:6:74" + }, + "nativeSrc": "5009:27:74", + "nodeType": "YulFunctionCall", + "src": "5009:27:74" + }, + "nativeSrc": "5009:27:74", + "nodeType": "YulExpressionStatement", + "src": "5009:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "4895:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "4941:3:74", + "nodeType": "YulTypedName", + "src": "4941:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "4946:3:74", + "nodeType": "YulTypedName", + "src": "4946:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "4951:6:74", + "nodeType": "YulTypedName", + "src": "4951:6:74", + "type": "" + } + ], + "src": "4895:148:74" + }, + { + "body": { + "nativeSrc": "5133:341:74", + "nodeType": "YulBlock", + "src": "5133:341:74", + "statements": [ + { + "nativeSrc": "5143:75:74", + "nodeType": "YulAssignment", + "src": "5143:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "5210:6:74", + "nodeType": "YulIdentifier", + "src": "5210:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "5168:41:74", + "nodeType": "YulIdentifier", + "src": "5168:41:74" + }, + "nativeSrc": "5168:49:74", + "nodeType": "YulFunctionCall", + "src": "5168:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "5152:15:74", + "nodeType": "YulIdentifier", + "src": "5152:15:74" + }, + "nativeSrc": "5152:66:74", + "nodeType": "YulFunctionCall", + "src": "5152:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "5143:5:74", + "nodeType": "YulIdentifier", + "src": "5143:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "5234:5:74", + "nodeType": "YulIdentifier", + "src": "5234:5:74" + }, + { + "name": "length", + "nativeSrc": "5241:6:74", + "nodeType": "YulIdentifier", + "src": "5241:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5227:6:74", + "nodeType": "YulIdentifier", + "src": "5227:6:74" + }, + "nativeSrc": "5227:21:74", + "nodeType": "YulFunctionCall", + "src": "5227:21:74" + }, + "nativeSrc": "5227:21:74", + "nodeType": "YulExpressionStatement", + "src": "5227:21:74" + }, + { + "nativeSrc": "5257:27:74", + "nodeType": "YulVariableDeclaration", + "src": "5257:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "5272:5:74", + "nodeType": "YulIdentifier", + "src": "5272:5:74" + }, + { + "kind": "number", + "nativeSrc": "5279:4:74", + "nodeType": "YulLiteral", + "src": "5279:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5268:3:74", + "nodeType": "YulIdentifier", + "src": "5268:3:74" + }, + "nativeSrc": "5268:16:74", + "nodeType": "YulFunctionCall", + "src": "5268:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "5261:3:74", + "nodeType": "YulTypedName", + "src": "5261:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "5322:83:74", + "nodeType": "YulBlock", + "src": "5322:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "5324:77:74", + "nodeType": "YulIdentifier", + "src": "5324:77:74" + }, + "nativeSrc": "5324:79:74", + "nodeType": "YulFunctionCall", + "src": "5324:79:74" + }, + "nativeSrc": "5324:79:74", + "nodeType": "YulExpressionStatement", + "src": "5324:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "5303:3:74", + "nodeType": "YulIdentifier", + "src": "5303:3:74" + }, + { + "name": "length", + "nativeSrc": "5308:6:74", + "nodeType": "YulIdentifier", + "src": "5308:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5299:3:74", + "nodeType": "YulIdentifier", + "src": "5299:3:74" + }, + "nativeSrc": "5299:16:74", + "nodeType": "YulFunctionCall", + "src": "5299:16:74" + }, + { + "name": "end", + "nativeSrc": "5317:3:74", + "nodeType": "YulIdentifier", + "src": "5317:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5296:2:74", + "nodeType": "YulIdentifier", + "src": "5296:2:74" + }, + "nativeSrc": "5296:25:74", + "nodeType": "YulFunctionCall", + "src": "5296:25:74" + }, + "nativeSrc": "5293:112:74", + "nodeType": "YulIf", + "src": "5293:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "5451:3:74", + "nodeType": "YulIdentifier", + "src": "5451:3:74" + }, + { + "name": "dst", + "nativeSrc": "5456:3:74", + "nodeType": "YulIdentifier", + "src": "5456:3:74" + }, + { + "name": "length", + "nativeSrc": "5461:6:74", + "nodeType": "YulIdentifier", + "src": "5461:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "5414:36:74", + "nodeType": "YulIdentifier", + "src": "5414:36:74" + }, + "nativeSrc": "5414:54:74", + "nodeType": "YulFunctionCall", + "src": "5414:54:74" + }, + "nativeSrc": "5414:54:74", + "nodeType": "YulExpressionStatement", + "src": "5414:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr", + "nativeSrc": "5049:425:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "5106:3:74", + "nodeType": "YulTypedName", + "src": "5106:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "5111:6:74", + "nodeType": "YulTypedName", + "src": "5111:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5119:3:74", + "nodeType": "YulTypedName", + "src": "5119:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "5127:5:74", + "nodeType": "YulTypedName", + "src": "5127:5:74", + "type": "" + } + ], + "src": "5049:425:74" + }, + { + "body": { + "nativeSrc": "5556:278:74", + "nodeType": "YulBlock", + "src": "5556:278:74", + "statements": [ + { + "body": { + "nativeSrc": "5605:83:74", + "nodeType": "YulBlock", + "src": "5605:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "5607:77:74", + "nodeType": "YulIdentifier", + "src": "5607:77:74" + }, + "nativeSrc": "5607:79:74", + "nodeType": "YulFunctionCall", + "src": "5607:79:74" + }, + "nativeSrc": "5607:79:74", + "nodeType": "YulExpressionStatement", + "src": "5607:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5584:6:74", + "nodeType": "YulIdentifier", + "src": "5584:6:74" + }, + { + "kind": "number", + "nativeSrc": "5592:4:74", + "nodeType": "YulLiteral", + "src": "5592:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5580:3:74", + "nodeType": "YulIdentifier", + "src": "5580:3:74" + }, + "nativeSrc": "5580:17:74", + "nodeType": "YulFunctionCall", + "src": "5580:17:74" + }, + { + "name": "end", + "nativeSrc": "5599:3:74", + "nodeType": "YulIdentifier", + "src": "5599:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5576:3:74", + "nodeType": "YulIdentifier", + "src": "5576:3:74" + }, + "nativeSrc": "5576:27:74", + "nodeType": "YulFunctionCall", + "src": "5576:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5569:6:74", + "nodeType": "YulIdentifier", + "src": "5569:6:74" + }, + "nativeSrc": "5569:35:74", + "nodeType": "YulFunctionCall", + "src": "5569:35:74" + }, + "nativeSrc": "5566:122:74", + "nodeType": "YulIf", + "src": "5566:122:74" + }, + { + "nativeSrc": "5697:34:74", + "nodeType": "YulVariableDeclaration", + "src": "5697:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5724:6:74", + "nodeType": "YulIdentifier", + "src": "5724:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "5711:12:74", + "nodeType": "YulIdentifier", + "src": "5711:12:74" + }, + "nativeSrc": "5711:20:74", + "nodeType": "YulFunctionCall", + "src": "5711:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "5701:6:74", + "nodeType": "YulTypedName", + "src": "5701:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5740:88:74", + "nodeType": "YulAssignment", + "src": "5740:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5801:6:74", + "nodeType": "YulIdentifier", + "src": "5801:6:74" + }, + { + "kind": "number", + "nativeSrc": "5809:4:74", + "nodeType": "YulLiteral", + "src": "5809:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5797:3:74", + "nodeType": "YulIdentifier", + "src": "5797:3:74" + }, + "nativeSrc": "5797:17:74", + "nodeType": "YulFunctionCall", + "src": "5797:17:74" + }, + { + "name": "length", + "nativeSrc": "5816:6:74", + "nodeType": "YulIdentifier", + "src": "5816:6:74" + }, + { + "name": "end", + "nativeSrc": "5824:3:74", + "nodeType": "YulIdentifier", + "src": "5824:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr", + "nativeSrc": "5749:47:74", + "nodeType": "YulIdentifier", + "src": "5749:47:74" + }, + "nativeSrc": "5749:79:74", + "nodeType": "YulFunctionCall", + "src": "5749:79:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "5740:5:74", + "nodeType": "YulIdentifier", + "src": "5740:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "5494:340:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "5534:6:74", + "nodeType": "YulTypedName", + "src": "5534:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5542:3:74", + "nodeType": "YulTypedName", + "src": "5542:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "5550:5:74", + "nodeType": "YulTypedName", + "src": "5550:5:74", + "type": "" + } + ], + "src": "5494:340:74" + }, + { + "body": { + "nativeSrc": "5967:818:74", + "nodeType": "YulBlock", + "src": "5967:818:74", + "statements": [ + { + "body": { + "nativeSrc": "6014:83:74", + "nodeType": "YulBlock", + "src": "6014:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6016:77:74", + "nodeType": "YulIdentifier", + "src": "6016:77:74" + }, + "nativeSrc": "6016:79:74", + "nodeType": "YulFunctionCall", + "src": "6016:79:74" + }, + "nativeSrc": "6016:79:74", + "nodeType": "YulExpressionStatement", + "src": "6016:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5988:7:74", + "nodeType": "YulIdentifier", + "src": "5988:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5997:9:74", + "nodeType": "YulIdentifier", + "src": "5997:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5984:3:74", + "nodeType": "YulIdentifier", + "src": "5984:3:74" + }, + "nativeSrc": "5984:23:74", + "nodeType": "YulFunctionCall", + "src": "5984:23:74" + }, + { + "kind": "number", + "nativeSrc": "6009:3:74", + "nodeType": "YulLiteral", + "src": "6009:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5980:3:74", + "nodeType": "YulIdentifier", + "src": "5980:3:74" + }, + "nativeSrc": "5980:33:74", + "nodeType": "YulFunctionCall", + "src": "5980:33:74" + }, + "nativeSrc": "5977:120:74", + "nodeType": "YulIf", + "src": "5977:120:74" + }, + { + "nativeSrc": "6107:117:74", + "nodeType": "YulBlock", + "src": "6107:117:74", + "statements": [ + { + "nativeSrc": "6122:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6122:15:74", + "value": { + "kind": "number", + "nativeSrc": "6136:1:74", + "nodeType": "YulLiteral", + "src": "6136:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6126:6:74", + "nodeType": "YulTypedName", + "src": "6126:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6151:63:74", + "nodeType": "YulAssignment", + "src": "6151:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6186:9:74", + "nodeType": "YulIdentifier", + "src": "6186:9:74" + }, + { + "name": "offset", + "nativeSrc": "6197:6:74", + "nodeType": "YulIdentifier", + "src": "6197:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6182:3:74", + "nodeType": "YulIdentifier", + "src": "6182:3:74" + }, + "nativeSrc": "6182:22:74", + "nodeType": "YulFunctionCall", + "src": "6182:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6206:7:74", + "nodeType": "YulIdentifier", + "src": "6206:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6161:20:74", + "nodeType": "YulIdentifier", + "src": "6161:20:74" + }, + "nativeSrc": "6161:53:74", + "nodeType": "YulFunctionCall", + "src": "6161:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6151:6:74", + "nodeType": "YulIdentifier", + "src": "6151:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6234:118:74", + "nodeType": "YulBlock", + "src": "6234:118:74", + "statements": [ + { + "nativeSrc": "6249:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6249:16:74", + "value": { + "kind": "number", + "nativeSrc": "6263:2:74", + "nodeType": "YulLiteral", + "src": "6263:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6253:6:74", + "nodeType": "YulTypedName", + "src": "6253:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6279:63:74", + "nodeType": "YulAssignment", + "src": "6279:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6314:9:74", + "nodeType": "YulIdentifier", + "src": "6314:9:74" + }, + { + "name": "offset", + "nativeSrc": "6325:6:74", + "nodeType": "YulIdentifier", + "src": "6325:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6310:3:74", + "nodeType": "YulIdentifier", + "src": "6310:3:74" + }, + "nativeSrc": "6310:22:74", + "nodeType": "YulFunctionCall", + "src": "6310:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6334:7:74", + "nodeType": "YulIdentifier", + "src": "6334:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6289:20:74", + "nodeType": "YulIdentifier", + "src": "6289:20:74" + }, + "nativeSrc": "6289:53:74", + "nodeType": "YulFunctionCall", + "src": "6289:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6279:6:74", + "nodeType": "YulIdentifier", + "src": "6279:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6362:118:74", + "nodeType": "YulBlock", + "src": "6362:118:74", + "statements": [ + { + "nativeSrc": "6377:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6377:16:74", + "value": { + "kind": "number", + "nativeSrc": "6391:2:74", + "nodeType": "YulLiteral", + "src": "6391:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6381:6:74", + "nodeType": "YulTypedName", + "src": "6381:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6407:63:74", + "nodeType": "YulAssignment", + "src": "6407:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6442:9:74", + "nodeType": "YulIdentifier", + "src": "6442:9:74" + }, + { + "name": "offset", + "nativeSrc": "6453:6:74", + "nodeType": "YulIdentifier", + "src": "6453:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6438:3:74", + "nodeType": "YulIdentifier", + "src": "6438:3:74" + }, + "nativeSrc": "6438:22:74", + "nodeType": "YulFunctionCall", + "src": "6438:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6462:7:74", + "nodeType": "YulIdentifier", + "src": "6462:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6417:20:74", + "nodeType": "YulIdentifier", + "src": "6417:20:74" + }, + "nativeSrc": "6417:53:74", + "nodeType": "YulFunctionCall", + "src": "6417:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "6407:6:74", + "nodeType": "YulIdentifier", + "src": "6407:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6490:288:74", + "nodeType": "YulBlock", + "src": "6490:288:74", + "statements": [ + { + "nativeSrc": "6505:46:74", + "nodeType": "YulVariableDeclaration", + "src": "6505:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6536:9:74", + "nodeType": "YulIdentifier", + "src": "6536:9:74" + }, + { + "kind": "number", + "nativeSrc": "6547:2:74", + "nodeType": "YulLiteral", + "src": "6547:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6532:3:74", + "nodeType": "YulIdentifier", + "src": "6532:3:74" + }, + "nativeSrc": "6532:18:74", + "nodeType": "YulFunctionCall", + "src": "6532:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6519:12:74", + "nodeType": "YulIdentifier", + "src": "6519:12:74" + }, + "nativeSrc": "6519:32:74", + "nodeType": "YulFunctionCall", + "src": "6519:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6509:6:74", + "nodeType": "YulTypedName", + "src": "6509:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6598:83:74", + "nodeType": "YulBlock", + "src": "6598:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "6600:77:74", + "nodeType": "YulIdentifier", + "src": "6600:77:74" + }, + "nativeSrc": "6600:79:74", + "nodeType": "YulFunctionCall", + "src": "6600:79:74" + }, + "nativeSrc": "6600:79:74", + "nodeType": "YulExpressionStatement", + "src": "6600:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6570:6:74", + "nodeType": "YulIdentifier", + "src": "6570:6:74" + }, + { + "kind": "number", + "nativeSrc": "6578:18:74", + "nodeType": "YulLiteral", + "src": "6578:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6567:2:74", + "nodeType": "YulIdentifier", + "src": "6567:2:74" + }, + "nativeSrc": "6567:30:74", + "nodeType": "YulFunctionCall", + "src": "6567:30:74" + }, + "nativeSrc": "6564:117:74", + "nodeType": "YulIf", + "src": "6564:117:74" + }, + { + "nativeSrc": "6695:73:74", + "nodeType": "YulAssignment", + "src": "6695:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6740:9:74", + "nodeType": "YulIdentifier", + "src": "6740:9:74" + }, + { + "name": "offset", + "nativeSrc": "6751:6:74", + "nodeType": "YulIdentifier", + "src": "6751:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6736:3:74", + "nodeType": "YulIdentifier", + "src": "6736:3:74" + }, + "nativeSrc": "6736:22:74", + "nodeType": "YulFunctionCall", + "src": "6736:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6760:7:74", + "nodeType": "YulIdentifier", + "src": "6760:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "6705:30:74", + "nodeType": "YulIdentifier", + "src": "6705:30:74" + }, + "nativeSrc": "6705:63:74", + "nodeType": "YulFunctionCall", + "src": "6705:63:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "6695:6:74", + "nodeType": "YulIdentifier", + "src": "6695:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_addresst_string_memory_ptr", + "nativeSrc": "5840:945:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5913:9:74", + "nodeType": "YulTypedName", + "src": "5913:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5924:7:74", + "nodeType": "YulTypedName", + "src": "5924:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5936:6:74", + "nodeType": "YulTypedName", + "src": "5936:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5944:6:74", + "nodeType": "YulTypedName", + "src": "5944:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "5952:6:74", + "nodeType": "YulTypedName", + "src": "5952:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "5960:6:74", + "nodeType": "YulTypedName", + "src": "5960:6:74", + "type": "" + } + ], + "src": "5840:945:74" + }, + { + "body": { + "nativeSrc": "6872:66:74", + "nodeType": "YulBlock", + "src": "6872:66:74", + "statements": [ + { + "nativeSrc": "6882:50:74", + "nodeType": "YulAssignment", + "src": "6882:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6926:5:74", + "nodeType": "YulIdentifier", + "src": "6926:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "6895:30:74", + "nodeType": "YulIdentifier", + "src": "6895:30:74" + }, + "nativeSrc": "6895:37:74", + "nodeType": "YulFunctionCall", + "src": "6895:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "6882:9:74", + "nodeType": "YulIdentifier", + "src": "6882:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_NameResolver_$7287_to_t_address", + "nativeSrc": "6791:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6852:5:74", + "nodeType": "YulTypedName", + "src": "6852:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "6862:9:74", + "nodeType": "YulTypedName", + "src": "6862:9:74", + "type": "" + } + ], + "src": "6791:147:74" + }, + { + "body": { + "nativeSrc": "7030:87:74", + "nodeType": "YulBlock", + "src": "7030:87:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7047:3:74", + "nodeType": "YulIdentifier", + "src": "7047:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7104:5:74", + "nodeType": "YulIdentifier", + "src": "7104:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_NameResolver_$7287_to_t_address", + "nativeSrc": "7052:51:74", + "nodeType": "YulIdentifier", + "src": "7052:51:74" + }, + "nativeSrc": "7052:58:74", + "nodeType": "YulFunctionCall", + "src": "7052:58:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7040:6:74", + "nodeType": "YulIdentifier", + "src": "7040:6:74" + }, + "nativeSrc": "7040:71:74", + "nodeType": "YulFunctionCall", + "src": "7040:71:74" + }, + "nativeSrc": "7040:71:74", + "nodeType": "YulExpressionStatement", + "src": "7040:71:74" + } + ] + }, + "name": "abi_encode_t_contract$_NameResolver_$7287_to_t_address_fromStack", + "nativeSrc": "6944:173:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7018:5:74", + "nodeType": "YulTypedName", + "src": "7018:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7025:3:74", + "nodeType": "YulTypedName", + "src": "7025:3:74", + "type": "" + } + ], + "src": "6944:173:74" + }, + { + "body": { + "nativeSrc": "7242:145:74", + "nodeType": "YulBlock", + "src": "7242:145:74", + "statements": [ + { + "nativeSrc": "7252:26:74", + "nodeType": "YulAssignment", + "src": "7252:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7264:9:74", + "nodeType": "YulIdentifier", + "src": "7264:9:74" + }, + { + "kind": "number", + "nativeSrc": "7275:2:74", + "nodeType": "YulLiteral", + "src": "7275:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7260:3:74", + "nodeType": "YulIdentifier", + "src": "7260:3:74" + }, + "nativeSrc": "7260:18:74", + "nodeType": "YulFunctionCall", + "src": "7260:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7252:4:74", + "nodeType": "YulIdentifier", + "src": "7252:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "7353:6:74", + "nodeType": "YulIdentifier", + "src": "7353:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7366:9:74", + "nodeType": "YulIdentifier", + "src": "7366:9:74" + }, + { + "kind": "number", + "nativeSrc": "7377:1:74", + "nodeType": "YulLiteral", + "src": "7377:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7362:3:74", + "nodeType": "YulIdentifier", + "src": "7362:3:74" + }, + "nativeSrc": "7362:17:74", + "nodeType": "YulFunctionCall", + "src": "7362:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_NameResolver_$7287_to_t_address_fromStack", + "nativeSrc": "7288:64:74", + "nodeType": "YulIdentifier", + "src": "7288:64:74" + }, + "nativeSrc": "7288:92:74", + "nodeType": "YulFunctionCall", + "src": "7288:92:74" + }, + "nativeSrc": "7288:92:74", + "nodeType": "YulExpressionStatement", + "src": "7288:92:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_NameResolver_$7287__to_t_address__fromStack_reversed", + "nativeSrc": "7123:264:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7214:9:74", + "nodeType": "YulTypedName", + "src": "7214:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "7226:6:74", + "nodeType": "YulTypedName", + "src": "7226:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "7237:4:74", + "nodeType": "YulTypedName", + "src": "7237:4:74", + "type": "" + } + ], + "src": "7123:264:74" + }, + { + "body": { + "nativeSrc": "7458:53:74", + "nodeType": "YulBlock", + "src": "7458:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7475:3:74", + "nodeType": "YulIdentifier", + "src": "7475:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7498:5:74", + "nodeType": "YulIdentifier", + "src": "7498:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "7480:17:74", + "nodeType": "YulIdentifier", + "src": "7480:17:74" + }, + "nativeSrc": "7480:24:74", + "nodeType": "YulFunctionCall", + "src": "7480:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7468:6:74", + "nodeType": "YulIdentifier", + "src": "7468:6:74" + }, + "nativeSrc": "7468:37:74", + "nodeType": "YulFunctionCall", + "src": "7468:37:74" + }, + "nativeSrc": "7468:37:74", + "nodeType": "YulExpressionStatement", + "src": "7468:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "7393:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7446:5:74", + "nodeType": "YulTypedName", + "src": "7446:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7453:3:74", + "nodeType": "YulTypedName", + "src": "7453:3:74", + "type": "" + } + ], + "src": "7393:118:74" + }, + { + "body": { + "nativeSrc": "7615:124:74", + "nodeType": "YulBlock", + "src": "7615:124:74", + "statements": [ + { + "nativeSrc": "7625:26:74", + "nodeType": "YulAssignment", + "src": "7625:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7637:9:74", + "nodeType": "YulIdentifier", + "src": "7637:9:74" + }, + { + "kind": "number", + "nativeSrc": "7648:2:74", + "nodeType": "YulLiteral", + "src": "7648:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7633:3:74", + "nodeType": "YulIdentifier", + "src": "7633:3:74" + }, + "nativeSrc": "7633:18:74", + "nodeType": "YulFunctionCall", + "src": "7633:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7625:4:74", + "nodeType": "YulIdentifier", + "src": "7625:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "7705:6:74", + "nodeType": "YulIdentifier", + "src": "7705:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7718:9:74", + "nodeType": "YulIdentifier", + "src": "7718:9:74" + }, + { + "kind": "number", + "nativeSrc": "7729:1:74", + "nodeType": "YulLiteral", + "src": "7729:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7714:3:74", + "nodeType": "YulIdentifier", + "src": "7714:3:74" + }, + "nativeSrc": "7714:17:74", + "nodeType": "YulFunctionCall", + "src": "7714:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "7661:43:74", + "nodeType": "YulIdentifier", + "src": "7661:43:74" + }, + "nativeSrc": "7661:71:74", + "nodeType": "YulFunctionCall", + "src": "7661:71:74" + }, + "nativeSrc": "7661:71:74", + "nodeType": "YulExpressionStatement", + "src": "7661:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "7517:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7587:9:74", + "nodeType": "YulTypedName", + "src": "7587:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "7599:6:74", + "nodeType": "YulTypedName", + "src": "7599:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "7610:4:74", + "nodeType": "YulTypedName", + "src": "7610:4:74", + "type": "" + } + ], + "src": "7517:222:74" + }, + { + "body": { + "nativeSrc": "7821:433:74", + "nodeType": "YulBlock", + "src": "7821:433:74", + "statements": [ + { + "body": { + "nativeSrc": "7867:83:74", + "nodeType": "YulBlock", + "src": "7867:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "7869:77:74", + "nodeType": "YulIdentifier", + "src": "7869:77:74" + }, + "nativeSrc": "7869:79:74", + "nodeType": "YulFunctionCall", + "src": "7869:79:74" + }, + "nativeSrc": "7869:79:74", + "nodeType": "YulExpressionStatement", + "src": "7869:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "7842:7:74", + "nodeType": "YulIdentifier", + "src": "7842:7:74" + }, + { + "name": "headStart", + "nativeSrc": "7851:9:74", + "nodeType": "YulIdentifier", + "src": "7851:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7838:3:74", + "nodeType": "YulIdentifier", + "src": "7838:3:74" + }, + "nativeSrc": "7838:23:74", + "nodeType": "YulFunctionCall", + "src": "7838:23:74" + }, + { + "kind": "number", + "nativeSrc": "7863:2:74", + "nodeType": "YulLiteral", + "src": "7863:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "7834:3:74", + "nodeType": "YulIdentifier", + "src": "7834:3:74" + }, + "nativeSrc": "7834:32:74", + "nodeType": "YulFunctionCall", + "src": "7834:32:74" + }, + "nativeSrc": "7831:119:74", + "nodeType": "YulIf", + "src": "7831:119:74" + }, + { + "nativeSrc": "7960:287:74", + "nodeType": "YulBlock", + "src": "7960:287:74", + "statements": [ + { + "nativeSrc": "7975:45:74", + "nodeType": "YulVariableDeclaration", + "src": "7975:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8006:9:74", + "nodeType": "YulIdentifier", + "src": "8006:9:74" + }, + { + "kind": "number", + "nativeSrc": "8017:1:74", + "nodeType": "YulLiteral", + "src": "8017:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8002:3:74", + "nodeType": "YulIdentifier", + "src": "8002:3:74" + }, + "nativeSrc": "8002:17:74", + "nodeType": "YulFunctionCall", + "src": "8002:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "7989:12:74", + "nodeType": "YulIdentifier", + "src": "7989:12:74" + }, + "nativeSrc": "7989:31:74", + "nodeType": "YulFunctionCall", + "src": "7989:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7979:6:74", + "nodeType": "YulTypedName", + "src": "7979:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8067:83:74", + "nodeType": "YulBlock", + "src": "8067:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "8069:77:74", + "nodeType": "YulIdentifier", + "src": "8069:77:74" + }, + "nativeSrc": "8069:79:74", + "nodeType": "YulFunctionCall", + "src": "8069:79:74" + }, + "nativeSrc": "8069:79:74", + "nodeType": "YulExpressionStatement", + "src": "8069:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8039:6:74", + "nodeType": "YulIdentifier", + "src": "8039:6:74" + }, + { + "kind": "number", + "nativeSrc": "8047:18:74", + "nodeType": "YulLiteral", + "src": "8047:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8036:2:74", + "nodeType": "YulIdentifier", + "src": "8036:2:74" + }, + "nativeSrc": "8036:30:74", + "nodeType": "YulFunctionCall", + "src": "8036:30:74" + }, + "nativeSrc": "8033:117:74", + "nodeType": "YulIf", + "src": "8033:117:74" + }, + { + "nativeSrc": "8164:73:74", + "nodeType": "YulAssignment", + "src": "8164:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8209:9:74", + "nodeType": "YulIdentifier", + "src": "8209:9:74" + }, + { + "name": "offset", + "nativeSrc": "8220:6:74", + "nodeType": "YulIdentifier", + "src": "8220:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8205:3:74", + "nodeType": "YulIdentifier", + "src": "8205:3:74" + }, + "nativeSrc": "8205:22:74", + "nodeType": "YulFunctionCall", + "src": "8205:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8229:7:74", + "nodeType": "YulIdentifier", + "src": "8229:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "8174:30:74", + "nodeType": "YulIdentifier", + "src": "8174:30:74" + }, + "nativeSrc": "8174:63:74", + "nodeType": "YulFunctionCall", + "src": "8174:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8164:6:74", + "nodeType": "YulIdentifier", + "src": "8164:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptr", + "nativeSrc": "7745:509:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7791:9:74", + "nodeType": "YulTypedName", + "src": "7791:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "7802:7:74", + "nodeType": "YulTypedName", + "src": "7802:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "7814:6:74", + "nodeType": "YulTypedName", + "src": "7814:6:74", + "type": "" + } + ], + "src": "7745:509:74" + }, + { + "body": { + "nativeSrc": "8302:48:74", + "nodeType": "YulBlock", + "src": "8302:48:74", + "statements": [ + { + "nativeSrc": "8312:32:74", + "nodeType": "YulAssignment", + "src": "8312:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8337:5:74", + "nodeType": "YulIdentifier", + "src": "8337:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8330:6:74", + "nodeType": "YulIdentifier", + "src": "8330:6:74" + }, + "nativeSrc": "8330:13:74", + "nodeType": "YulFunctionCall", + "src": "8330:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8323:6:74", + "nodeType": "YulIdentifier", + "src": "8323:6:74" + }, + "nativeSrc": "8323:21:74", + "nodeType": "YulFunctionCall", + "src": "8323:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "8312:7:74", + "nodeType": "YulIdentifier", + "src": "8312:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "8260:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8284:5:74", + "nodeType": "YulTypedName", + "src": "8284:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "8294:7:74", + "nodeType": "YulTypedName", + "src": "8294:7:74", + "type": "" + } + ], + "src": "8260:90:74" + }, + { + "body": { + "nativeSrc": "8415:50:74", + "nodeType": "YulBlock", + "src": "8415:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8432:3:74", + "nodeType": "YulIdentifier", + "src": "8432:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8452:5:74", + "nodeType": "YulIdentifier", + "src": "8452:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "8437:14:74", + "nodeType": "YulIdentifier", + "src": "8437:14:74" + }, + "nativeSrc": "8437:21:74", + "nodeType": "YulFunctionCall", + "src": "8437:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8425:6:74", + "nodeType": "YulIdentifier", + "src": "8425:6:74" + }, + "nativeSrc": "8425:34:74", + "nodeType": "YulFunctionCall", + "src": "8425:34:74" + }, + "nativeSrc": "8425:34:74", + "nodeType": "YulExpressionStatement", + "src": "8425:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "8356:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8403:5:74", + "nodeType": "YulTypedName", + "src": "8403:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8410:3:74", + "nodeType": "YulTypedName", + "src": "8410:3:74", + "type": "" + } + ], + "src": "8356:109:74" + }, + { + "body": { + "nativeSrc": "8563:118:74", + "nodeType": "YulBlock", + "src": "8563:118:74", + "statements": [ + { + "nativeSrc": "8573:26:74", + "nodeType": "YulAssignment", + "src": "8573:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8585:9:74", + "nodeType": "YulIdentifier", + "src": "8585:9:74" + }, + { + "kind": "number", + "nativeSrc": "8596:2:74", + "nodeType": "YulLiteral", + "src": "8596:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8581:3:74", + "nodeType": "YulIdentifier", + "src": "8581:3:74" + }, + "nativeSrc": "8581:18:74", + "nodeType": "YulFunctionCall", + "src": "8581:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "8573:4:74", + "nodeType": "YulIdentifier", + "src": "8573:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "8647:6:74", + "nodeType": "YulIdentifier", + "src": "8647:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8660:9:74", + "nodeType": "YulIdentifier", + "src": "8660:9:74" + }, + { + "kind": "number", + "nativeSrc": "8671:1:74", + "nodeType": "YulLiteral", + "src": "8671:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8656:3:74", + "nodeType": "YulIdentifier", + "src": "8656:3:74" + }, + "nativeSrc": "8656:17:74", + "nodeType": "YulFunctionCall", + "src": "8656:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "8609:37:74", + "nodeType": "YulIdentifier", + "src": "8609:37:74" + }, + "nativeSrc": "8609:65:74", + "nodeType": "YulFunctionCall", + "src": "8609:65:74" + }, + "nativeSrc": "8609:65:74", + "nodeType": "YulExpressionStatement", + "src": "8609:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "8471:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8535:9:74", + "nodeType": "YulTypedName", + "src": "8535:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "8547:6:74", + "nodeType": "YulTypedName", + "src": "8547:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "8558:4:74", + "nodeType": "YulTypedName", + "src": "8558:4:74", + "type": "" + } + ], + "src": "8471:210:74" + }, + { + "body": { + "nativeSrc": "8727:76:74", + "nodeType": "YulBlock", + "src": "8727:76:74", + "statements": [ + { + "body": { + "nativeSrc": "8781:16:74", + "nodeType": "YulBlock", + "src": "8781:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8790:1:74", + "nodeType": "YulLiteral", + "src": "8790:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "8793:1:74", + "nodeType": "YulLiteral", + "src": "8793:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "8783:6:74", + "nodeType": "YulIdentifier", + "src": "8783:6:74" + }, + "nativeSrc": "8783:12:74", + "nodeType": "YulFunctionCall", + "src": "8783:12:74" + }, + "nativeSrc": "8783:12:74", + "nodeType": "YulExpressionStatement", + "src": "8783:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8750:5:74", + "nodeType": "YulIdentifier", + "src": "8750:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8772:5:74", + "nodeType": "YulIdentifier", + "src": "8772:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "8757:14:74", + "nodeType": "YulIdentifier", + "src": "8757:14:74" + }, + "nativeSrc": "8757:21:74", + "nodeType": "YulFunctionCall", + "src": "8757:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "8747:2:74", + "nodeType": "YulIdentifier", + "src": "8747:2:74" + }, + "nativeSrc": "8747:32:74", + "nodeType": "YulFunctionCall", + "src": "8747:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8740:6:74", + "nodeType": "YulIdentifier", + "src": "8740:6:74" + }, + "nativeSrc": "8740:40:74", + "nodeType": "YulFunctionCall", + "src": "8740:40:74" + }, + "nativeSrc": "8737:60:74", + "nodeType": "YulIf", + "src": "8737:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "8687:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8720:5:74", + "nodeType": "YulTypedName", + "src": "8720:5:74", + "type": "" + } + ], + "src": "8687:116:74" + }, + { + "body": { + "nativeSrc": "8858:84:74", + "nodeType": "YulBlock", + "src": "8858:84:74", + "statements": [ + { + "nativeSrc": "8868:29:74", + "nodeType": "YulAssignment", + "src": "8868:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8890:6:74", + "nodeType": "YulIdentifier", + "src": "8890:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8877:12:74", + "nodeType": "YulIdentifier", + "src": "8877:12:74" + }, + "nativeSrc": "8877:20:74", + "nodeType": "YulFunctionCall", + "src": "8877:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "8868:5:74", + "nodeType": "YulIdentifier", + "src": "8868:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "8930:5:74", + "nodeType": "YulIdentifier", + "src": "8930:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "8906:23:74", + "nodeType": "YulIdentifier", + "src": "8906:23:74" + }, + "nativeSrc": "8906:30:74", + "nodeType": "YulFunctionCall", + "src": "8906:30:74" + }, + "nativeSrc": "8906:30:74", + "nodeType": "YulExpressionStatement", + "src": "8906:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "8809:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8836:6:74", + "nodeType": "YulTypedName", + "src": "8836:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8844:3:74", + "nodeType": "YulTypedName", + "src": "8844:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "8852:5:74", + "nodeType": "YulTypedName", + "src": "8852:5:74", + "type": "" + } + ], + "src": "8809:133:74" + }, + { + "body": { + "nativeSrc": "9028:388:74", + "nodeType": "YulBlock", + "src": "9028:388:74", + "statements": [ + { + "body": { + "nativeSrc": "9074:83:74", + "nodeType": "YulBlock", + "src": "9074:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "9076:77:74", + "nodeType": "YulIdentifier", + "src": "9076:77:74" + }, + "nativeSrc": "9076:79:74", + "nodeType": "YulFunctionCall", + "src": "9076:79:74" + }, + "nativeSrc": "9076:79:74", + "nodeType": "YulExpressionStatement", + "src": "9076:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "9049:7:74", + "nodeType": "YulIdentifier", + "src": "9049:7:74" + }, + { + "name": "headStart", + "nativeSrc": "9058:9:74", + "nodeType": "YulIdentifier", + "src": "9058:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "9045:3:74", + "nodeType": "YulIdentifier", + "src": "9045:3:74" + }, + "nativeSrc": "9045:23:74", + "nodeType": "YulFunctionCall", + "src": "9045:23:74" + }, + { + "kind": "number", + "nativeSrc": "9070:2:74", + "nodeType": "YulLiteral", + "src": "9070:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9041:3:74", + "nodeType": "YulIdentifier", + "src": "9041:3:74" + }, + "nativeSrc": "9041:32:74", + "nodeType": "YulFunctionCall", + "src": "9041:32:74" + }, + "nativeSrc": "9038:119:74", + "nodeType": "YulIf", + "src": "9038:119:74" + }, + { + "nativeSrc": "9167:117:74", + "nodeType": "YulBlock", + "src": "9167:117:74", + "statements": [ + { + "nativeSrc": "9182:15:74", + "nodeType": "YulVariableDeclaration", + "src": "9182:15:74", + "value": { + "kind": "number", + "nativeSrc": "9196:1:74", + "nodeType": "YulLiteral", + "src": "9196:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9186:6:74", + "nodeType": "YulTypedName", + "src": "9186:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9211:63:74", + "nodeType": "YulAssignment", + "src": "9211:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9246:9:74", + "nodeType": "YulIdentifier", + "src": "9246:9:74" + }, + { + "name": "offset", + "nativeSrc": "9257:6:74", + "nodeType": "YulIdentifier", + "src": "9257:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9242:3:74", + "nodeType": "YulIdentifier", + "src": "9242:3:74" + }, + "nativeSrc": "9242:22:74", + "nodeType": "YulFunctionCall", + "src": "9242:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9266:7:74", + "nodeType": "YulIdentifier", + "src": "9266:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9221:20:74", + "nodeType": "YulIdentifier", + "src": "9221:20:74" + }, + "nativeSrc": "9221:53:74", + "nodeType": "YulFunctionCall", + "src": "9221:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "9211:6:74", + "nodeType": "YulIdentifier", + "src": "9211:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9294:115:74", + "nodeType": "YulBlock", + "src": "9294:115:74", + "statements": [ + { + "nativeSrc": "9309:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9309:16:74", + "value": { + "kind": "number", + "nativeSrc": "9323:2:74", + "nodeType": "YulLiteral", + "src": "9323:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9313:6:74", + "nodeType": "YulTypedName", + "src": "9313:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9339:60:74", + "nodeType": "YulAssignment", + "src": "9339:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9371:9:74", + "nodeType": "YulIdentifier", + "src": "9371:9:74" + }, + { + "name": "offset", + "nativeSrc": "9382:6:74", + "nodeType": "YulIdentifier", + "src": "9382:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9367:3:74", + "nodeType": "YulIdentifier", + "src": "9367:3:74" + }, + "nativeSrc": "9367:22:74", + "nodeType": "YulFunctionCall", + "src": "9367:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9391:7:74", + "nodeType": "YulIdentifier", + "src": "9391:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "9349:17:74", + "nodeType": "YulIdentifier", + "src": "9349:17:74" + }, + "nativeSrc": "9349:50:74", + "nodeType": "YulFunctionCall", + "src": "9349:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "9339:6:74", + "nodeType": "YulIdentifier", + "src": "9339:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "8948:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8990:9:74", + "nodeType": "YulTypedName", + "src": "8990:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "9001:7:74", + "nodeType": "YulTypedName", + "src": "9001:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "9013:6:74", + "nodeType": "YulTypedName", + "src": "9013:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "9021:6:74", + "nodeType": "YulTypedName", + "src": "9021:6:74", + "type": "" + } + ], + "src": "8948:468:74" + }, + { + "body": { + "nativeSrc": "9548:206:74", + "nodeType": "YulBlock", + "src": "9548:206:74", + "statements": [ + { + "nativeSrc": "9558:26:74", + "nodeType": "YulAssignment", + "src": "9558:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9570:9:74", + "nodeType": "YulIdentifier", + "src": "9570:9:74" + }, + { + "kind": "number", + "nativeSrc": "9581:2:74", + "nodeType": "YulLiteral", + "src": "9581:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9566:3:74", + "nodeType": "YulIdentifier", + "src": "9566:3:74" + }, + "nativeSrc": "9566:18:74", + "nodeType": "YulFunctionCall", + "src": "9566:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "9558:4:74", + "nodeType": "YulIdentifier", + "src": "9558:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "9638:6:74", + "nodeType": "YulIdentifier", + "src": "9638:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9651:9:74", + "nodeType": "YulIdentifier", + "src": "9651:9:74" + }, + { + "kind": "number", + "nativeSrc": "9662:1:74", + "nodeType": "YulLiteral", + "src": "9662:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9647:3:74", + "nodeType": "YulIdentifier", + "src": "9647:3:74" + }, + "nativeSrc": "9647:17:74", + "nodeType": "YulFunctionCall", + "src": "9647:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "9594:43:74", + "nodeType": "YulIdentifier", + "src": "9594:43:74" + }, + "nativeSrc": "9594:71:74", + "nodeType": "YulFunctionCall", + "src": "9594:71:74" + }, + "nativeSrc": "9594:71:74", + "nodeType": "YulExpressionStatement", + "src": "9594:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "9719:6:74", + "nodeType": "YulIdentifier", + "src": "9719:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9732:9:74", + "nodeType": "YulIdentifier", + "src": "9732:9:74" + }, + { + "kind": "number", + "nativeSrc": "9743:2:74", + "nodeType": "YulLiteral", + "src": "9743:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9728:3:74", + "nodeType": "YulIdentifier", + "src": "9728:3:74" + }, + "nativeSrc": "9728:18:74", + "nodeType": "YulFunctionCall", + "src": "9728:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "9675:43:74", + "nodeType": "YulIdentifier", + "src": "9675:43:74" + }, + "nativeSrc": "9675:72:74", + "nodeType": "YulFunctionCall", + "src": "9675:72:74" + }, + "nativeSrc": "9675:72:74", + "nodeType": "YulExpressionStatement", + "src": "9675:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", + "nativeSrc": "9422:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9512:9:74", + "nodeType": "YulTypedName", + "src": "9512:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "9524:6:74", + "nodeType": "YulTypedName", + "src": "9524:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "9532:6:74", + "nodeType": "YulTypedName", + "src": "9532:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "9543:4:74", + "nodeType": "YulTypedName", + "src": "9543:4:74", + "type": "" + } + ], + "src": "9422:332:74" + }, + { + "body": { + "nativeSrc": "9820:77:74", + "nodeType": "YulBlock", + "src": "9820:77:74", + "statements": [ + { + "nativeSrc": "9830:22:74", + "nodeType": "YulAssignment", + "src": "9830:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9845:6:74", + "nodeType": "YulIdentifier", + "src": "9845:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9839:5:74", + "nodeType": "YulIdentifier", + "src": "9839:5:74" + }, + "nativeSrc": "9839:13:74", + "nodeType": "YulFunctionCall", + "src": "9839:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "9830:5:74", + "nodeType": "YulIdentifier", + "src": "9830:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "9885:5:74", + "nodeType": "YulIdentifier", + "src": "9885:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "9861:23:74", + "nodeType": "YulIdentifier", + "src": "9861:23:74" + }, + "nativeSrc": "9861:30:74", + "nodeType": "YulFunctionCall", + "src": "9861:30:74" + }, + "nativeSrc": "9861:30:74", + "nodeType": "YulExpressionStatement", + "src": "9861:30:74" + } + ] + }, + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "9760:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "9798:6:74", + "nodeType": "YulTypedName", + "src": "9798:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "9806:3:74", + "nodeType": "YulTypedName", + "src": "9806:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "9814:5:74", + "nodeType": "YulTypedName", + "src": "9814:5:74", + "type": "" + } + ], + "src": "9760:137:74" + }, + { + "body": { + "nativeSrc": "9977:271:74", + "nodeType": "YulBlock", + "src": "9977:271:74", + "statements": [ + { + "body": { + "nativeSrc": "10023:83:74", + "nodeType": "YulBlock", + "src": "10023:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10025:77:74", + "nodeType": "YulIdentifier", + "src": "10025:77:74" + }, + "nativeSrc": "10025:79:74", + "nodeType": "YulFunctionCall", + "src": "10025:79:74" + }, + "nativeSrc": "10025:79:74", + "nodeType": "YulExpressionStatement", + "src": "10025:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "9998:7:74", + "nodeType": "YulIdentifier", + "src": "9998:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10007:9:74", + "nodeType": "YulIdentifier", + "src": "10007:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "9994:3:74", + "nodeType": "YulIdentifier", + "src": "9994:3:74" + }, + "nativeSrc": "9994:23:74", + "nodeType": "YulFunctionCall", + "src": "9994:23:74" + }, + { + "kind": "number", + "nativeSrc": "10019:2:74", + "nodeType": "YulLiteral", + "src": "10019:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9990:3:74", + "nodeType": "YulIdentifier", + "src": "9990:3:74" + }, + "nativeSrc": "9990:32:74", + "nodeType": "YulFunctionCall", + "src": "9990:32:74" + }, + "nativeSrc": "9987:119:74", + "nodeType": "YulIf", + "src": "9987:119:74" + }, + { + "nativeSrc": "10116:125:74", + "nodeType": "YulBlock", + "src": "10116:125:74", + "statements": [ + { + "nativeSrc": "10131:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10131:15:74", + "value": { + "kind": "number", + "nativeSrc": "10145:1:74", + "nodeType": "YulLiteral", + "src": "10145:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10135:6:74", + "nodeType": "YulTypedName", + "src": "10135:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10160:71:74", + "nodeType": "YulAssignment", + "src": "10160:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10203:9:74", + "nodeType": "YulIdentifier", + "src": "10203:9:74" + }, + { + "name": "offset", + "nativeSrc": "10214:6:74", + "nodeType": "YulIdentifier", + "src": "10214:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10199:3:74", + "nodeType": "YulIdentifier", + "src": "10199:3:74" + }, + "nativeSrc": "10199:22:74", + "nodeType": "YulFunctionCall", + "src": "10199:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10223:7:74", + "nodeType": "YulIdentifier", + "src": "10223:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "10170:28:74", + "nodeType": "YulIdentifier", + "src": "10170:28:74" + }, + "nativeSrc": "10170:61:74", + "nodeType": "YulFunctionCall", + "src": "10170:61:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10160:6:74", + "nodeType": "YulIdentifier", + "src": "10160:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nativeSrc": "9903:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9947:9:74", + "nodeType": "YulTypedName", + "src": "9947:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "9958:7:74", + "nodeType": "YulTypedName", + "src": "9958:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "9970:6:74", + "nodeType": "YulTypedName", + "src": "9970:6:74", + "type": "" + } + ], + "src": "9903:345:74" + }, + { + "body": { + "nativeSrc": "10350:73:74", + "nodeType": "YulBlock", + "src": "10350:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10367:3:74", + "nodeType": "YulIdentifier", + "src": "10367:3:74" + }, + { + "name": "length", + "nativeSrc": "10372:6:74", + "nodeType": "YulIdentifier", + "src": "10372:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10360:6:74", + "nodeType": "YulIdentifier", + "src": "10360:6:74" + }, + "nativeSrc": "10360:19:74", + "nodeType": "YulFunctionCall", + "src": "10360:19:74" + }, + "nativeSrc": "10360:19:74", + "nodeType": "YulExpressionStatement", + "src": "10360:19:74" + }, + { + "nativeSrc": "10388:29:74", + "nodeType": "YulAssignment", + "src": "10388:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10407:3:74", + "nodeType": "YulIdentifier", + "src": "10407:3:74" + }, + { + "kind": "number", + "nativeSrc": "10412:4:74", + "nodeType": "YulLiteral", + "src": "10412:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10403:3:74", + "nodeType": "YulIdentifier", + "src": "10403:3:74" + }, + "nativeSrc": "10403:14:74", + "nodeType": "YulFunctionCall", + "src": "10403:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "10388:11:74", + "nodeType": "YulIdentifier", + "src": "10388:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "10254:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "10322:3:74", + "nodeType": "YulTypedName", + "src": "10322:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "10327:6:74", + "nodeType": "YulTypedName", + "src": "10327:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "10338:11:74", + "nodeType": "YulTypedName", + "src": "10338:11:74", + "type": "" + } + ], + "src": "10254:169:74" + }, + { + "body": { + "nativeSrc": "10535:209:74", + "nodeType": "YulBlock", + "src": "10535:209:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "10557:6:74", + "nodeType": "YulIdentifier", + "src": "10557:6:74" + }, + { + "kind": "number", + "nativeSrc": "10565:1:74", + "nodeType": "YulLiteral", + "src": "10565:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10553:3:74", + "nodeType": "YulIdentifier", + "src": "10553:3:74" + }, + "nativeSrc": "10553:14:74", + "nodeType": "YulFunctionCall", + "src": "10553:14:74" + }, + { + "hexValue": "526576657273655265676973747261723a2043616c6c6572206973206e6f7420", + "kind": "string", + "nativeSrc": "10569:34:74", + "nodeType": "YulLiteral", + "src": "10569:34:74", + "type": "", + "value": "ReverseRegistrar: Caller is not " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10546:6:74", + "nodeType": "YulIdentifier", + "src": "10546:6:74" + }, + "nativeSrc": "10546:58:74", + "nodeType": "YulFunctionCall", + "src": "10546:58:74" + }, + "nativeSrc": "10546:58:74", + "nodeType": "YulExpressionStatement", + "src": "10546:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "10625:6:74", + "nodeType": "YulIdentifier", + "src": "10625:6:74" + }, + { + "kind": "number", + "nativeSrc": "10633:2:74", + "nodeType": "YulLiteral", + "src": "10633:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10621:3:74", + "nodeType": "YulIdentifier", + "src": "10621:3:74" + }, + "nativeSrc": "10621:15:74", + "nodeType": "YulFunctionCall", + "src": "10621:15:74" + }, + { + "hexValue": "6120636f6e74726f6c6c6572206f7220617574686f7269736564206279206164", + "kind": "string", + "nativeSrc": "10638:34:74", + "nodeType": "YulLiteral", + "src": "10638:34:74", + "type": "", + "value": "a controller or authorised by ad" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10614:6:74", + "nodeType": "YulIdentifier", + "src": "10614:6:74" + }, + "nativeSrc": "10614:59:74", + "nodeType": "YulFunctionCall", + "src": "10614:59:74" + }, + "nativeSrc": "10614:59:74", + "nodeType": "YulExpressionStatement", + "src": "10614:59:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "10694:6:74", + "nodeType": "YulIdentifier", + "src": "10694:6:74" + }, + { + "kind": "number", + "nativeSrc": "10702:2:74", + "nodeType": "YulLiteral", + "src": "10702:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10690:3:74", + "nodeType": "YulIdentifier", + "src": "10690:3:74" + }, + "nativeSrc": "10690:15:74", + "nodeType": "YulFunctionCall", + "src": "10690:15:74" + }, + { + "hexValue": "6472657373206f7220746865206164647265737320697473656c66", + "kind": "string", + "nativeSrc": "10707:29:74", + "nodeType": "YulLiteral", + "src": "10707:29:74", + "type": "", + "value": "dress or the address itself" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10683:6:74", + "nodeType": "YulIdentifier", + "src": "10683:6:74" + }, + "nativeSrc": "10683:54:74", + "nodeType": "YulFunctionCall", + "src": "10683:54:74" + }, + "nativeSrc": "10683:54:74", + "nodeType": "YulExpressionStatement", + "src": "10683:54:74" + } + ] + }, + "name": "store_literal_in_memory_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d", + "nativeSrc": "10429:315:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "10527:6:74", + "nodeType": "YulTypedName", + "src": "10527:6:74", + "type": "" + } + ], + "src": "10429:315:74" + }, + { + "body": { + "nativeSrc": "10896:220:74", + "nodeType": "YulBlock", + "src": "10896:220:74", + "statements": [ + { + "nativeSrc": "10906:74:74", + "nodeType": "YulAssignment", + "src": "10906:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10972:3:74", + "nodeType": "YulIdentifier", + "src": "10972:3:74" + }, + { + "kind": "number", + "nativeSrc": "10977:2:74", + "nodeType": "YulLiteral", + "src": "10977:2:74", + "type": "", + "value": "91" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "10913:58:74", + "nodeType": "YulIdentifier", + "src": "10913:58:74" + }, + "nativeSrc": "10913:67:74", + "nodeType": "YulFunctionCall", + "src": "10913:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "10906:3:74", + "nodeType": "YulIdentifier", + "src": "10906:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11078:3:74", + "nodeType": "YulIdentifier", + "src": "11078:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d", + "nativeSrc": "10989:88:74", + "nodeType": "YulIdentifier", + "src": "10989:88:74" + }, + "nativeSrc": "10989:93:74", + "nodeType": "YulFunctionCall", + "src": "10989:93:74" + }, + "nativeSrc": "10989:93:74", + "nodeType": "YulExpressionStatement", + "src": "10989:93:74" + }, + { + "nativeSrc": "11091:19:74", + "nodeType": "YulAssignment", + "src": "11091:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11102:3:74", + "nodeType": "YulIdentifier", + "src": "11102:3:74" + }, + { + "kind": "number", + "nativeSrc": "11107:2:74", + "nodeType": "YulLiteral", + "src": "11107:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11098:3:74", + "nodeType": "YulIdentifier", + "src": "11098:3:74" + }, + "nativeSrc": "11098:12:74", + "nodeType": "YulFunctionCall", + "src": "11098:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "11091:3:74", + "nodeType": "YulIdentifier", + "src": "11091:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d_to_t_string_memory_ptr_fromStack", + "nativeSrc": "10750:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "10884:3:74", + "nodeType": "YulTypedName", + "src": "10884:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "10892:3:74", + "nodeType": "YulTypedName", + "src": "10892:3:74", + "type": "" + } + ], + "src": "10750:366:74" + }, + { + "body": { + "nativeSrc": "11293:248:74", + "nodeType": "YulBlock", + "src": "11293:248:74", + "statements": [ + { + "nativeSrc": "11303:26:74", + "nodeType": "YulAssignment", + "src": "11303:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11315:9:74", + "nodeType": "YulIdentifier", + "src": "11315:9:74" + }, + { + "kind": "number", + "nativeSrc": "11326:2:74", + "nodeType": "YulLiteral", + "src": "11326:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11311:3:74", + "nodeType": "YulIdentifier", + "src": "11311:3:74" + }, + "nativeSrc": "11311:18:74", + "nodeType": "YulFunctionCall", + "src": "11311:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11303:4:74", + "nodeType": "YulIdentifier", + "src": "11303:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11350:9:74", + "nodeType": "YulIdentifier", + "src": "11350:9:74" + }, + { + "kind": "number", + "nativeSrc": "11361:1:74", + "nodeType": "YulLiteral", + "src": "11361:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11346:3:74", + "nodeType": "YulIdentifier", + "src": "11346:3:74" + }, + "nativeSrc": "11346:17:74", + "nodeType": "YulFunctionCall", + "src": "11346:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11369:4:74", + "nodeType": "YulIdentifier", + "src": "11369:4:74" + }, + { + "name": "headStart", + "nativeSrc": "11375:9:74", + "nodeType": "YulIdentifier", + "src": "11375:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11365:3:74", + "nodeType": "YulIdentifier", + "src": "11365:3:74" + }, + "nativeSrc": "11365:20:74", + "nodeType": "YulFunctionCall", + "src": "11365:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11339:6:74", + "nodeType": "YulIdentifier", + "src": "11339:6:74" + }, + "nativeSrc": "11339:47:74", + "nodeType": "YulFunctionCall", + "src": "11339:47:74" + }, + "nativeSrc": "11339:47:74", + "nodeType": "YulExpressionStatement", + "src": "11339:47:74" + }, + { + "nativeSrc": "11395:139:74", + "nodeType": "YulAssignment", + "src": "11395:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11529:4:74", + "nodeType": "YulIdentifier", + "src": "11529:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11403:124:74", + "nodeType": "YulIdentifier", + "src": "11403:124:74" + }, + "nativeSrc": "11403:131:74", + "nodeType": "YulFunctionCall", + "src": "11403:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11395:4:74", + "nodeType": "YulIdentifier", + "src": "11395:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "11122:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11273:9:74", + "nodeType": "YulTypedName", + "src": "11273:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11288:4:74", + "nodeType": "YulTypedName", + "src": "11288:4:74", + "type": "" + } + ], + "src": "11122:419:74" + }, + { + "body": { + "nativeSrc": "11594:32:74", + "nodeType": "YulBlock", + "src": "11594:32:74", + "statements": [ + { + "nativeSrc": "11604:16:74", + "nodeType": "YulAssignment", + "src": "11604:16:74", + "value": { + "name": "value", + "nativeSrc": "11615:5:74", + "nodeType": "YulIdentifier", + "src": "11615:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "11604:7:74", + "nodeType": "YulIdentifier", + "src": "11604:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nativeSrc": "11547:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11576:5:74", + "nodeType": "YulTypedName", + "src": "11576:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "11586:7:74", + "nodeType": "YulTypedName", + "src": "11586:7:74", + "type": "" + } + ], + "src": "11547:79:74" + }, + { + "body": { + "nativeSrc": "11715:74:74", + "nodeType": "YulBlock", + "src": "11715:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11732:3:74", + "nodeType": "YulIdentifier", + "src": "11732:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11775:5:74", + "nodeType": "YulIdentifier", + "src": "11775:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "11757:17:74", + "nodeType": "YulIdentifier", + "src": "11757:17:74" + }, + "nativeSrc": "11757:24:74", + "nodeType": "YulFunctionCall", + "src": "11757:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nativeSrc": "11737:19:74", + "nodeType": "YulIdentifier", + "src": "11737:19:74" + }, + "nativeSrc": "11737:45:74", + "nodeType": "YulFunctionCall", + "src": "11737:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11725:6:74", + "nodeType": "YulIdentifier", + "src": "11725:6:74" + }, + "nativeSrc": "11725:58:74", + "nodeType": "YulFunctionCall", + "src": "11725:58:74" + }, + "nativeSrc": "11725:58:74", + "nodeType": "YulExpressionStatement", + "src": "11725:58:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "11632:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11703:5:74", + "nodeType": "YulTypedName", + "src": "11703:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "11710:3:74", + "nodeType": "YulTypedName", + "src": "11710:3:74", + "type": "" + } + ], + "src": "11632:157:74" + }, + { + "body": { + "nativeSrc": "11939:253:74", + "nodeType": "YulBlock", + "src": "11939:253:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "12012:6:74", + "nodeType": "YulIdentifier", + "src": "12012:6:74" + }, + { + "name": "pos", + "nativeSrc": "12021:3:74", + "nodeType": "YulIdentifier", + "src": "12021:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "11950:61:74", + "nodeType": "YulIdentifier", + "src": "11950:61:74" + }, + "nativeSrc": "11950:75:74", + "nodeType": "YulFunctionCall", + "src": "11950:75:74" + }, + "nativeSrc": "11950:75:74", + "nodeType": "YulExpressionStatement", + "src": "11950:75:74" + }, + { + "nativeSrc": "12034:19:74", + "nodeType": "YulAssignment", + "src": "12034:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12045:3:74", + "nodeType": "YulIdentifier", + "src": "12045:3:74" + }, + { + "kind": "number", + "nativeSrc": "12050:2:74", + "nodeType": "YulLiteral", + "src": "12050:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12041:3:74", + "nodeType": "YulIdentifier", + "src": "12041:3:74" + }, + "nativeSrc": "12041:12:74", + "nodeType": "YulFunctionCall", + "src": "12041:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12034:3:74", + "nodeType": "YulIdentifier", + "src": "12034:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "12125:6:74", + "nodeType": "YulIdentifier", + "src": "12125:6:74" + }, + { + "name": "pos", + "nativeSrc": "12134:3:74", + "nodeType": "YulIdentifier", + "src": "12134:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "12063:61:74", + "nodeType": "YulIdentifier", + "src": "12063:61:74" + }, + "nativeSrc": "12063:75:74", + "nodeType": "YulFunctionCall", + "src": "12063:75:74" + }, + "nativeSrc": "12063:75:74", + "nodeType": "YulExpressionStatement", + "src": "12063:75:74" + }, + { + "nativeSrc": "12147:19:74", + "nodeType": "YulAssignment", + "src": "12147:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12158:3:74", + "nodeType": "YulIdentifier", + "src": "12158:3:74" + }, + { + "kind": "number", + "nativeSrc": "12163:2:74", + "nodeType": "YulLiteral", + "src": "12163:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12154:3:74", + "nodeType": "YulIdentifier", + "src": "12154:3:74" + }, + "nativeSrc": "12154:12:74", + "nodeType": "YulFunctionCall", + "src": "12154:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12147:3:74", + "nodeType": "YulIdentifier", + "src": "12147:3:74" + } + ] + }, + { + "nativeSrc": "12176:10:74", + "nodeType": "YulAssignment", + "src": "12176:10:74", + "value": { + "name": "pos", + "nativeSrc": "12183:3:74", + "nodeType": "YulIdentifier", + "src": "12183:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "12176:3:74", + "nodeType": "YulIdentifier", + "src": "12176:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "11795:397:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "11910:3:74", + "nodeType": "YulTypedName", + "src": "11910:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "11916:6:74", + "nodeType": "YulTypedName", + "src": "11916:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "11924:6:74", + "nodeType": "YulTypedName", + "src": "11924:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "11935:3:74", + "nodeType": "YulTypedName", + "src": "11935:3:74", + "type": "" + } + ], + "src": "11795:397:74" + }, + { + "body": { + "nativeSrc": "12251:32:74", + "nodeType": "YulBlock", + "src": "12251:32:74", + "statements": [ + { + "nativeSrc": "12261:16:74", + "nodeType": "YulAssignment", + "src": "12261:16:74", + "value": { + "name": "value", + "nativeSrc": "12272:5:74", + "nodeType": "YulIdentifier", + "src": "12272:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "12261:7:74", + "nodeType": "YulIdentifier", + "src": "12261:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_0_by_1", + "nativeSrc": "12198:85:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12233:5:74", + "nodeType": "YulTypedName", + "src": "12233:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "12243:7:74", + "nodeType": "YulTypedName", + "src": "12243:7:74", + "type": "" + } + ], + "src": "12198:85:74" + }, + { + "body": { + "nativeSrc": "12333:57:74", + "nodeType": "YulBlock", + "src": "12333:57:74", + "statements": [ + { + "nativeSrc": "12343:41:74", + "nodeType": "YulAssignment", + "src": "12343:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12358:5:74", + "nodeType": "YulIdentifier", + "src": "12358:5:74" + }, + { + "kind": "number", + "nativeSrc": "12365:18:74", + "nodeType": "YulLiteral", + "src": "12365:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "12354:3:74", + "nodeType": "YulIdentifier", + "src": "12354:3:74" + }, + "nativeSrc": "12354:30:74", + "nodeType": "YulFunctionCall", + "src": "12354:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "12343:7:74", + "nodeType": "YulIdentifier", + "src": "12343:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "12289:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12315:5:74", + "nodeType": "YulTypedName", + "src": "12315:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "12325:7:74", + "nodeType": "YulTypedName", + "src": "12325:7:74", + "type": "" + } + ], + "src": "12289:101:74" + }, + { + "body": { + "nativeSrc": "12463:89:74", + "nodeType": "YulBlock", + "src": "12463:89:74", + "statements": [ + { + "nativeSrc": "12473:73:74", + "nodeType": "YulAssignment", + "src": "12473:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "12538:5:74", + "nodeType": "YulIdentifier", + "src": "12538:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_0_by_1", + "nativeSrc": "12512:25:74", + "nodeType": "YulIdentifier", + "src": "12512:25:74" + }, + "nativeSrc": "12512:32:74", + "nodeType": "YulFunctionCall", + "src": "12512:32:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "12503:8:74", + "nodeType": "YulIdentifier", + "src": "12503:8:74" + }, + "nativeSrc": "12503:42:74", + "nodeType": "YulFunctionCall", + "src": "12503:42:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "12486:16:74", + "nodeType": "YulIdentifier", + "src": "12486:16:74" + }, + "nativeSrc": "12486:60:74", + "nodeType": "YulFunctionCall", + "src": "12486:60:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "12473:9:74", + "nodeType": "YulIdentifier", + "src": "12473:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_0_by_1_to_t_uint64", + "nativeSrc": "12396:156:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12443:5:74", + "nodeType": "YulTypedName", + "src": "12443:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "12453:9:74", + "nodeType": "YulTypedName", + "src": "12453:9:74", + "type": "" + } + ], + "src": "12396:156:74" + }, + { + "body": { + "nativeSrc": "12630:73:74", + "nodeType": "YulBlock", + "src": "12630:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12647:3:74", + "nodeType": "YulIdentifier", + "src": "12647:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "12690:5:74", + "nodeType": "YulIdentifier", + "src": "12690:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_0_by_1_to_t_uint64", + "nativeSrc": "12652:37:74", + "nodeType": "YulIdentifier", + "src": "12652:37:74" + }, + "nativeSrc": "12652:44:74", + "nodeType": "YulFunctionCall", + "src": "12652:44:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12640:6:74", + "nodeType": "YulIdentifier", + "src": "12640:6:74" + }, + "nativeSrc": "12640:57:74", + "nodeType": "YulFunctionCall", + "src": "12640:57:74" + }, + "nativeSrc": "12640:57:74", + "nodeType": "YulExpressionStatement", + "src": "12640:57:74" + } + ] + }, + "name": "abi_encode_t_rational_0_by_1_to_t_uint64_fromStack", + "nativeSrc": "12558:145:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12618:5:74", + "nodeType": "YulTypedName", + "src": "12618:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "12625:3:74", + "nodeType": "YulTypedName", + "src": "12625:3:74", + "type": "" + } + ], + "src": "12558:145:74" + }, + { + "body": { + "nativeSrc": "12926:461:74", + "nodeType": "YulBlock", + "src": "12926:461:74", + "statements": [ + { + "nativeSrc": "12936:27:74", + "nodeType": "YulAssignment", + "src": "12936:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12948:9:74", + "nodeType": "YulIdentifier", + "src": "12948:9:74" + }, + { + "kind": "number", + "nativeSrc": "12959:3:74", + "nodeType": "YulLiteral", + "src": "12959:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12944:3:74", + "nodeType": "YulIdentifier", + "src": "12944:3:74" + }, + "nativeSrc": "12944:19:74", + "nodeType": "YulFunctionCall", + "src": "12944:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12936:4:74", + "nodeType": "YulIdentifier", + "src": "12936:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "13017:6:74", + "nodeType": "YulIdentifier", + "src": "13017:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13030:9:74", + "nodeType": "YulIdentifier", + "src": "13030:9:74" + }, + { + "kind": "number", + "nativeSrc": "13041:1:74", + "nodeType": "YulLiteral", + "src": "13041:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13026:3:74", + "nodeType": "YulIdentifier", + "src": "13026:3:74" + }, + "nativeSrc": "13026:17:74", + "nodeType": "YulFunctionCall", + "src": "13026:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "12973:43:74", + "nodeType": "YulIdentifier", + "src": "12973:43:74" + }, + "nativeSrc": "12973:71:74", + "nodeType": "YulFunctionCall", + "src": "12973:71:74" + }, + "nativeSrc": "12973:71:74", + "nodeType": "YulExpressionStatement", + "src": "12973:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "13098:6:74", + "nodeType": "YulIdentifier", + "src": "13098:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13111:9:74", + "nodeType": "YulIdentifier", + "src": "13111:9:74" + }, + { + "kind": "number", + "nativeSrc": "13122:2:74", + "nodeType": "YulLiteral", + "src": "13122:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13107:3:74", + "nodeType": "YulIdentifier", + "src": "13107:3:74" + }, + "nativeSrc": "13107:18:74", + "nodeType": "YulFunctionCall", + "src": "13107:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "13054:43:74", + "nodeType": "YulIdentifier", + "src": "13054:43:74" + }, + "nativeSrc": "13054:72:74", + "nodeType": "YulFunctionCall", + "src": "13054:72:74" + }, + "nativeSrc": "13054:72:74", + "nodeType": "YulExpressionStatement", + "src": "13054:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "13180:6:74", + "nodeType": "YulIdentifier", + "src": "13180:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13193:9:74", + "nodeType": "YulIdentifier", + "src": "13193:9:74" + }, + { + "kind": "number", + "nativeSrc": "13204:2:74", + "nodeType": "YulLiteral", + "src": "13204:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13189:3:74", + "nodeType": "YulIdentifier", + "src": "13189:3:74" + }, + "nativeSrc": "13189:18:74", + "nodeType": "YulFunctionCall", + "src": "13189:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "13136:43:74", + "nodeType": "YulIdentifier", + "src": "13136:43:74" + }, + "nativeSrc": "13136:72:74", + "nodeType": "YulFunctionCall", + "src": "13136:72:74" + }, + "nativeSrc": "13136:72:74", + "nodeType": "YulExpressionStatement", + "src": "13136:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "13262:6:74", + "nodeType": "YulIdentifier", + "src": "13262:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13275:9:74", + "nodeType": "YulIdentifier", + "src": "13275:9:74" + }, + { + "kind": "number", + "nativeSrc": "13286:2:74", + "nodeType": "YulLiteral", + "src": "13286:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13271:3:74", + "nodeType": "YulIdentifier", + "src": "13271:3:74" + }, + "nativeSrc": "13271:18:74", + "nodeType": "YulFunctionCall", + "src": "13271:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "13218:43:74", + "nodeType": "YulIdentifier", + "src": "13218:43:74" + }, + "nativeSrc": "13218:72:74", + "nodeType": "YulFunctionCall", + "src": "13218:72:74" + }, + "nativeSrc": "13218:72:74", + "nodeType": "YulExpressionStatement", + "src": "13218:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "13351:6:74", + "nodeType": "YulIdentifier", + "src": "13351:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13364:9:74", + "nodeType": "YulIdentifier", + "src": "13364:9:74" + }, + { + "kind": "number", + "nativeSrc": "13375:3:74", + "nodeType": "YulLiteral", + "src": "13375:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13360:3:74", + "nodeType": "YulIdentifier", + "src": "13360:3:74" + }, + "nativeSrc": "13360:19:74", + "nodeType": "YulFunctionCall", + "src": "13360:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_0_by_1_to_t_uint64_fromStack", + "nativeSrc": "13300:50:74", + "nodeType": "YulIdentifier", + "src": "13300:50:74" + }, + "nativeSrc": "13300:80:74", + "nodeType": "YulFunctionCall", + "src": "13300:80:74" + }, + "nativeSrc": "13300:80:74", + "nodeType": "YulExpressionStatement", + "src": "13300:80:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_rational_0_by_1__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed", + "nativeSrc": "12709:678:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12866:9:74", + "nodeType": "YulTypedName", + "src": "12866:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "12878:6:74", + "nodeType": "YulTypedName", + "src": "12878:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "12886:6:74", + "nodeType": "YulTypedName", + "src": "12886:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "12894:6:74", + "nodeType": "YulTypedName", + "src": "12894:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "12902:6:74", + "nodeType": "YulTypedName", + "src": "12902:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12910:6:74", + "nodeType": "YulTypedName", + "src": "12910:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12921:4:74", + "nodeType": "YulTypedName", + "src": "12921:4:74", + "type": "" + } + ], + "src": "12709:678:74" + }, + { + "body": { + "nativeSrc": "13452:40:74", + "nodeType": "YulBlock", + "src": "13452:40:74", + "statements": [ + { + "nativeSrc": "13463:22:74", + "nodeType": "YulAssignment", + "src": "13463:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13479:5:74", + "nodeType": "YulIdentifier", + "src": "13479:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "13473:5:74", + "nodeType": "YulIdentifier", + "src": "13473:5:74" + }, + "nativeSrc": "13473:12:74", + "nodeType": "YulFunctionCall", + "src": "13473:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "13463:6:74", + "nodeType": "YulIdentifier", + "src": "13463:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "13393:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13435:5:74", + "nodeType": "YulTypedName", + "src": "13435:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "13445:6:74", + "nodeType": "YulTypedName", + "src": "13445:6:74", + "type": "" + } + ], + "src": "13393:99:74" + }, + { + "body": { + "nativeSrc": "13560:186:74", + "nodeType": "YulBlock", + "src": "13560:186:74", + "statements": [ + { + "nativeSrc": "13571:10:74", + "nodeType": "YulVariableDeclaration", + "src": "13571:10:74", + "value": { + "kind": "number", + "nativeSrc": "13580:1:74", + "nodeType": "YulLiteral", + "src": "13580:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "13575:1:74", + "nodeType": "YulTypedName", + "src": "13575:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13640:63:74", + "nodeType": "YulBlock", + "src": "13640:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "13665:3:74", + "nodeType": "YulIdentifier", + "src": "13665:3:74" + }, + { + "name": "i", + "nativeSrc": "13670:1:74", + "nodeType": "YulIdentifier", + "src": "13670:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13661:3:74", + "nodeType": "YulIdentifier", + "src": "13661:3:74" + }, + "nativeSrc": "13661:11:74", + "nodeType": "YulFunctionCall", + "src": "13661:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "13684:3:74", + "nodeType": "YulIdentifier", + "src": "13684:3:74" + }, + { + "name": "i", + "nativeSrc": "13689:1:74", + "nodeType": "YulIdentifier", + "src": "13689:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13680:3:74", + "nodeType": "YulIdentifier", + "src": "13680:3:74" + }, + "nativeSrc": "13680:11:74", + "nodeType": "YulFunctionCall", + "src": "13680:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "13674:5:74", + "nodeType": "YulIdentifier", + "src": "13674:5:74" + }, + "nativeSrc": "13674:18:74", + "nodeType": "YulFunctionCall", + "src": "13674:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13654:6:74", + "nodeType": "YulIdentifier", + "src": "13654:6:74" + }, + "nativeSrc": "13654:39:74", + "nodeType": "YulFunctionCall", + "src": "13654:39:74" + }, + "nativeSrc": "13654:39:74", + "nodeType": "YulExpressionStatement", + "src": "13654:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "13601:1:74", + "nodeType": "YulIdentifier", + "src": "13601:1:74" + }, + { + "name": "length", + "nativeSrc": "13604:6:74", + "nodeType": "YulIdentifier", + "src": "13604:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "13598:2:74", + "nodeType": "YulIdentifier", + "src": "13598:2:74" + }, + "nativeSrc": "13598:13:74", + "nodeType": "YulFunctionCall", + "src": "13598:13:74" + }, + "nativeSrc": "13590:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "13612:19:74", + "nodeType": "YulBlock", + "src": "13612:19:74", + "statements": [ + { + "nativeSrc": "13614:15:74", + "nodeType": "YulAssignment", + "src": "13614:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "13623:1:74", + "nodeType": "YulIdentifier", + "src": "13623:1:74" + }, + { + "kind": "number", + "nativeSrc": "13626:2:74", + "nodeType": "YulLiteral", + "src": "13626:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13619:3:74", + "nodeType": "YulIdentifier", + "src": "13619:3:74" + }, + "nativeSrc": "13619:10:74", + "nodeType": "YulFunctionCall", + "src": "13619:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "13614:1:74", + "nodeType": "YulIdentifier", + "src": "13614:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "13594:3:74", + "nodeType": "YulBlock", + "src": "13594:3:74", + "statements": [] + }, + "src": "13590:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "13723:3:74", + "nodeType": "YulIdentifier", + "src": "13723:3:74" + }, + { + "name": "length", + "nativeSrc": "13728:6:74", + "nodeType": "YulIdentifier", + "src": "13728:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13719:3:74", + "nodeType": "YulIdentifier", + "src": "13719:3:74" + }, + "nativeSrc": "13719:16:74", + "nodeType": "YulFunctionCall", + "src": "13719:16:74" + }, + { + "kind": "number", + "nativeSrc": "13737:1:74", + "nodeType": "YulLiteral", + "src": "13737:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13712:6:74", + "nodeType": "YulIdentifier", + "src": "13712:6:74" + }, + "nativeSrc": "13712:27:74", + "nodeType": "YulFunctionCall", + "src": "13712:27:74" + }, + "nativeSrc": "13712:27:74", + "nodeType": "YulExpressionStatement", + "src": "13712:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "13498:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "13542:3:74", + "nodeType": "YulTypedName", + "src": "13542:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "13547:3:74", + "nodeType": "YulTypedName", + "src": "13547:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "13552:6:74", + "nodeType": "YulTypedName", + "src": "13552:6:74", + "type": "" + } + ], + "src": "13498:248:74" + }, + { + "body": { + "nativeSrc": "13844:285:74", + "nodeType": "YulBlock", + "src": "13844:285:74", + "statements": [ + { + "nativeSrc": "13854:53:74", + "nodeType": "YulVariableDeclaration", + "src": "13854:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13901:5:74", + "nodeType": "YulIdentifier", + "src": "13901:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "13868:32:74", + "nodeType": "YulIdentifier", + "src": "13868:32:74" + }, + "nativeSrc": "13868:39:74", + "nodeType": "YulFunctionCall", + "src": "13868:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "13858:6:74", + "nodeType": "YulTypedName", + "src": "13858:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13916:78:74", + "nodeType": "YulAssignment", + "src": "13916:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13982:3:74", + "nodeType": "YulIdentifier", + "src": "13982:3:74" + }, + { + "name": "length", + "nativeSrc": "13987:6:74", + "nodeType": "YulIdentifier", + "src": "13987:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "13923:58:74", + "nodeType": "YulIdentifier", + "src": "13923:58:74" + }, + "nativeSrc": "13923:71:74", + "nodeType": "YulFunctionCall", + "src": "13923:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13916:3:74", + "nodeType": "YulIdentifier", + "src": "13916:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "14042:5:74", + "nodeType": "YulIdentifier", + "src": "14042:5:74" + }, + { + "kind": "number", + "nativeSrc": "14049:4:74", + "nodeType": "YulLiteral", + "src": "14049:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14038:3:74", + "nodeType": "YulIdentifier", + "src": "14038:3:74" + }, + "nativeSrc": "14038:16:74", + "nodeType": "YulFunctionCall", + "src": "14038:16:74" + }, + { + "name": "pos", + "nativeSrc": "14056:3:74", + "nodeType": "YulIdentifier", + "src": "14056:3:74" + }, + { + "name": "length", + "nativeSrc": "14061:6:74", + "nodeType": "YulIdentifier", + "src": "14061:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "14003:34:74", + "nodeType": "YulIdentifier", + "src": "14003:34:74" + }, + "nativeSrc": "14003:65:74", + "nodeType": "YulFunctionCall", + "src": "14003:65:74" + }, + "nativeSrc": "14003:65:74", + "nodeType": "YulExpressionStatement", + "src": "14003:65:74" + }, + { + "nativeSrc": "14077:46:74", + "nodeType": "YulAssignment", + "src": "14077:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14088:3:74", + "nodeType": "YulIdentifier", + "src": "14088:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "14115:6:74", + "nodeType": "YulIdentifier", + "src": "14115:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "14093:21:74", + "nodeType": "YulIdentifier", + "src": "14093:21:74" + }, + "nativeSrc": "14093:29:74", + "nodeType": "YulFunctionCall", + "src": "14093:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14084:3:74", + "nodeType": "YulIdentifier", + "src": "14084:3:74" + }, + "nativeSrc": "14084:39:74", + "nodeType": "YulFunctionCall", + "src": "14084:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "14077:3:74", + "nodeType": "YulIdentifier", + "src": "14077:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "13752:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13825:5:74", + "nodeType": "YulTypedName", + "src": "13825:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "13832:3:74", + "nodeType": "YulTypedName", + "src": "13832:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "13840:3:74", + "nodeType": "YulTypedName", + "src": "13840:3:74", + "type": "" + } + ], + "src": "13752:377:74" + }, + { + "body": { + "nativeSrc": "14281:277:74", + "nodeType": "YulBlock", + "src": "14281:277:74", + "statements": [ + { + "nativeSrc": "14291:26:74", + "nodeType": "YulAssignment", + "src": "14291:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14303:9:74", + "nodeType": "YulIdentifier", + "src": "14303:9:74" + }, + { + "kind": "number", + "nativeSrc": "14314:2:74", + "nodeType": "YulLiteral", + "src": "14314:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14299:3:74", + "nodeType": "YulIdentifier", + "src": "14299:3:74" + }, + "nativeSrc": "14299:18:74", + "nodeType": "YulFunctionCall", + "src": "14299:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14291:4:74", + "nodeType": "YulIdentifier", + "src": "14291:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "14371:6:74", + "nodeType": "YulIdentifier", + "src": "14371:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14384:9:74", + "nodeType": "YulIdentifier", + "src": "14384:9:74" + }, + { + "kind": "number", + "nativeSrc": "14395:1:74", + "nodeType": "YulLiteral", + "src": "14395:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14380:3:74", + "nodeType": "YulIdentifier", + "src": "14380:3:74" + }, + "nativeSrc": "14380:17:74", + "nodeType": "YulFunctionCall", + "src": "14380:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "14327:43:74", + "nodeType": "YulIdentifier", + "src": "14327:43:74" + }, + "nativeSrc": "14327:71:74", + "nodeType": "YulFunctionCall", + "src": "14327:71:74" + }, + "nativeSrc": "14327:71:74", + "nodeType": "YulExpressionStatement", + "src": "14327:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14419:9:74", + "nodeType": "YulIdentifier", + "src": "14419:9:74" + }, + { + "kind": "number", + "nativeSrc": "14430:2:74", + "nodeType": "YulLiteral", + "src": "14430:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14415:3:74", + "nodeType": "YulIdentifier", + "src": "14415:3:74" + }, + "nativeSrc": "14415:18:74", + "nodeType": "YulFunctionCall", + "src": "14415:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14439:4:74", + "nodeType": "YulIdentifier", + "src": "14439:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14445:9:74", + "nodeType": "YulIdentifier", + "src": "14445:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14435:3:74", + "nodeType": "YulIdentifier", + "src": "14435:3:74" + }, + "nativeSrc": "14435:20:74", + "nodeType": "YulFunctionCall", + "src": "14435:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14408:6:74", + "nodeType": "YulIdentifier", + "src": "14408:6:74" + }, + "nativeSrc": "14408:48:74", + "nodeType": "YulFunctionCall", + "src": "14408:48:74" + }, + "nativeSrc": "14408:48:74", + "nodeType": "YulExpressionStatement", + "src": "14408:48:74" + }, + { + "nativeSrc": "14465:86:74", + "nodeType": "YulAssignment", + "src": "14465:86:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "14537:6:74", + "nodeType": "YulIdentifier", + "src": "14537:6:74" + }, + { + "name": "tail", + "nativeSrc": "14546:4:74", + "nodeType": "YulIdentifier", + "src": "14546:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14473:63:74", + "nodeType": "YulIdentifier", + "src": "14473:63:74" + }, + "nativeSrc": "14473:78:74", + "nodeType": "YulFunctionCall", + "src": "14473:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14465:4:74", + "nodeType": "YulIdentifier", + "src": "14465:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_memory_ptr__to_t_bytes32_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "14135:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14245:9:74", + "nodeType": "YulTypedName", + "src": "14245:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "14257:6:74", + "nodeType": "YulTypedName", + "src": "14257:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "14265:6:74", + "nodeType": "YulTypedName", + "src": "14265:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14276:4:74", + "nodeType": "YulTypedName", + "src": "14276:4:74", + "type": "" + } + ], + "src": "14135:423:74" + }, + { + "body": { + "nativeSrc": "14670:129:74", + "nodeType": "YulBlock", + "src": "14670:129:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14692:6:74", + "nodeType": "YulIdentifier", + "src": "14692:6:74" + }, + { + "kind": "number", + "nativeSrc": "14700:1:74", + "nodeType": "YulLiteral", + "src": "14700:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14688:3:74", + "nodeType": "YulIdentifier", + "src": "14688:3:74" + }, + "nativeSrc": "14688:14:74", + "nodeType": "YulFunctionCall", + "src": "14688:14:74" + }, + { + "hexValue": "526576657273655265676973747261723a205265736f6c766572206164647265", + "kind": "string", + "nativeSrc": "14704:34:74", + "nodeType": "YulLiteral", + "src": "14704:34:74", + "type": "", + "value": "ReverseRegistrar: Resolver addre" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14681:6:74", + "nodeType": "YulIdentifier", + "src": "14681:6:74" + }, + "nativeSrc": "14681:58:74", + "nodeType": "YulFunctionCall", + "src": "14681:58:74" + }, + "nativeSrc": "14681:58:74", + "nodeType": "YulExpressionStatement", + "src": "14681:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14760:6:74", + "nodeType": "YulIdentifier", + "src": "14760:6:74" + }, + { + "kind": "number", + "nativeSrc": "14768:2:74", + "nodeType": "YulLiteral", + "src": "14768:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14756:3:74", + "nodeType": "YulIdentifier", + "src": "14756:3:74" + }, + "nativeSrc": "14756:15:74", + "nodeType": "YulFunctionCall", + "src": "14756:15:74" + }, + { + "hexValue": "7373206d757374206e6f742062652030", + "kind": "string", + "nativeSrc": "14773:18:74", + "nodeType": "YulLiteral", + "src": "14773:18:74", + "type": "", + "value": "ss must not be 0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14749:6:74", + "nodeType": "YulIdentifier", + "src": "14749:6:74" + }, + "nativeSrc": "14749:43:74", + "nodeType": "YulFunctionCall", + "src": "14749:43:74" + }, + "nativeSrc": "14749:43:74", + "nodeType": "YulExpressionStatement", + "src": "14749:43:74" + } + ] + }, + "name": "store_literal_in_memory_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa", + "nativeSrc": "14564:235:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "14662:6:74", + "nodeType": "YulTypedName", + "src": "14662:6:74", + "type": "" + } + ], + "src": "14564:235:74" + }, + { + "body": { + "nativeSrc": "14951:220:74", + "nodeType": "YulBlock", + "src": "14951:220:74", + "statements": [ + { + "nativeSrc": "14961:74:74", + "nodeType": "YulAssignment", + "src": "14961:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15027:3:74", + "nodeType": "YulIdentifier", + "src": "15027:3:74" + }, + { + "kind": "number", + "nativeSrc": "15032:2:74", + "nodeType": "YulLiteral", + "src": "15032:2:74", + "type": "", + "value": "48" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "14968:58:74", + "nodeType": "YulIdentifier", + "src": "14968:58:74" + }, + "nativeSrc": "14968:67:74", + "nodeType": "YulFunctionCall", + "src": "14968:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14961:3:74", + "nodeType": "YulIdentifier", + "src": "14961:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15133:3:74", + "nodeType": "YulIdentifier", + "src": "15133:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa", + "nativeSrc": "15044:88:74", + "nodeType": "YulIdentifier", + "src": "15044:88:74" + }, + "nativeSrc": "15044:93:74", + "nodeType": "YulFunctionCall", + "src": "15044:93:74" + }, + "nativeSrc": "15044:93:74", + "nodeType": "YulExpressionStatement", + "src": "15044:93:74" + }, + { + "nativeSrc": "15146:19:74", + "nodeType": "YulAssignment", + "src": "15146:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15157:3:74", + "nodeType": "YulIdentifier", + "src": "15157:3:74" + }, + { + "kind": "number", + "nativeSrc": "15162:2:74", + "nodeType": "YulLiteral", + "src": "15162:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15153:3:74", + "nodeType": "YulIdentifier", + "src": "15153:3:74" + }, + "nativeSrc": "15153:12:74", + "nodeType": "YulFunctionCall", + "src": "15153:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15146:3:74", + "nodeType": "YulIdentifier", + "src": "15146:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14805:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "14939:3:74", + "nodeType": "YulTypedName", + "src": "14939:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "14947:3:74", + "nodeType": "YulTypedName", + "src": "14947:3:74", + "type": "" + } + ], + "src": "14805:366:74" + }, + { + "body": { + "nativeSrc": "15348:248:74", + "nodeType": "YulBlock", + "src": "15348:248:74", + "statements": [ + { + "nativeSrc": "15358:26:74", + "nodeType": "YulAssignment", + "src": "15358:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15370:9:74", + "nodeType": "YulIdentifier", + "src": "15370:9:74" + }, + { + "kind": "number", + "nativeSrc": "15381:2:74", + "nodeType": "YulLiteral", + "src": "15381:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15366:3:74", + "nodeType": "YulIdentifier", + "src": "15366:3:74" + }, + "nativeSrc": "15366:18:74", + "nodeType": "YulFunctionCall", + "src": "15366:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15358:4:74", + "nodeType": "YulIdentifier", + "src": "15358:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15405:9:74", + "nodeType": "YulIdentifier", + "src": "15405:9:74" + }, + { + "kind": "number", + "nativeSrc": "15416:1:74", + "nodeType": "YulLiteral", + "src": "15416:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15401:3:74", + "nodeType": "YulIdentifier", + "src": "15401:3:74" + }, + "nativeSrc": "15401:17:74", + "nodeType": "YulFunctionCall", + "src": "15401:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15424:4:74", + "nodeType": "YulIdentifier", + "src": "15424:4:74" + }, + { + "name": "headStart", + "nativeSrc": "15430:9:74", + "nodeType": "YulIdentifier", + "src": "15430:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15420:3:74", + "nodeType": "YulIdentifier", + "src": "15420:3:74" + }, + "nativeSrc": "15420:20:74", + "nodeType": "YulFunctionCall", + "src": "15420:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15394:6:74", + "nodeType": "YulIdentifier", + "src": "15394:6:74" + }, + "nativeSrc": "15394:47:74", + "nodeType": "YulFunctionCall", + "src": "15394:47:74" + }, + "nativeSrc": "15394:47:74", + "nodeType": "YulExpressionStatement", + "src": "15394:47:74" + }, + { + "nativeSrc": "15450:139:74", + "nodeType": "YulAssignment", + "src": "15450:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15584:4:74", + "nodeType": "YulIdentifier", + "src": "15584:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15458:124:74", + "nodeType": "YulIdentifier", + "src": "15458:124:74" + }, + "nativeSrc": "15458:131:74", + "nodeType": "YulFunctionCall", + "src": "15458:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15450:4:74", + "nodeType": "YulIdentifier", + "src": "15450:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "15177:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15328:9:74", + "nodeType": "YulTypedName", + "src": "15328:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15343:4:74", + "nodeType": "YulTypedName", + "src": "15343:4:74", + "type": "" + } + ], + "src": "15177:419:74" + }, + { + "body": { + "nativeSrc": "15708:119:74", + "nodeType": "YulBlock", + "src": "15708:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15730:6:74", + "nodeType": "YulIdentifier", + "src": "15730:6:74" + }, + { + "kind": "number", + "nativeSrc": "15738:1:74", + "nodeType": "YulLiteral", + "src": "15738:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15726:3:74", + "nodeType": "YulIdentifier", + "src": "15726:3:74" + }, + "nativeSrc": "15726:14:74", + "nodeType": "YulFunctionCall", + "src": "15726:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "15742:34:74", + "nodeType": "YulLiteral", + "src": "15742:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15719:6:74", + "nodeType": "YulIdentifier", + "src": "15719:6:74" + }, + "nativeSrc": "15719:58:74", + "nodeType": "YulFunctionCall", + "src": "15719:58:74" + }, + "nativeSrc": "15719:58:74", + "nodeType": "YulExpressionStatement", + "src": "15719:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15798:6:74", + "nodeType": "YulIdentifier", + "src": "15798:6:74" + }, + { + "kind": "number", + "nativeSrc": "15806:2:74", + "nodeType": "YulLiteral", + "src": "15806:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15794:3:74", + "nodeType": "YulIdentifier", + "src": "15794:3:74" + }, + "nativeSrc": "15794:15:74", + "nodeType": "YulFunctionCall", + "src": "15794:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "15811:8:74", + "nodeType": "YulLiteral", + "src": "15811:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15787:6:74", + "nodeType": "YulIdentifier", + "src": "15787:6:74" + }, + "nativeSrc": "15787:33:74", + "nodeType": "YulFunctionCall", + "src": "15787:33:74" + }, + "nativeSrc": "15787:33:74", + "nodeType": "YulExpressionStatement", + "src": "15787:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "15602:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "15700:6:74", + "nodeType": "YulTypedName", + "src": "15700:6:74", + "type": "" + } + ], + "src": "15602:225:74" + }, + { + "body": { + "nativeSrc": "15979:220:74", + "nodeType": "YulBlock", + "src": "15979:220:74", + "statements": [ + { + "nativeSrc": "15989:74:74", + "nodeType": "YulAssignment", + "src": "15989:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16055:3:74", + "nodeType": "YulIdentifier", + "src": "16055:3:74" + }, + { + "kind": "number", + "nativeSrc": "16060:2:74", + "nodeType": "YulLiteral", + "src": "16060:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15996:58:74", + "nodeType": "YulIdentifier", + "src": "15996:58:74" + }, + "nativeSrc": "15996:67:74", + "nodeType": "YulFunctionCall", + "src": "15996:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15989:3:74", + "nodeType": "YulIdentifier", + "src": "15989:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16161:3:74", + "nodeType": "YulIdentifier", + "src": "16161:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "16072:88:74", + "nodeType": "YulIdentifier", + "src": "16072:88:74" + }, + "nativeSrc": "16072:93:74", + "nodeType": "YulFunctionCall", + "src": "16072:93:74" + }, + "nativeSrc": "16072:93:74", + "nodeType": "YulExpressionStatement", + "src": "16072:93:74" + }, + { + "nativeSrc": "16174:19:74", + "nodeType": "YulAssignment", + "src": "16174:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16185:3:74", + "nodeType": "YulIdentifier", + "src": "16185:3:74" + }, + { + "kind": "number", + "nativeSrc": "16190:2:74", + "nodeType": "YulLiteral", + "src": "16190:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16181:3:74", + "nodeType": "YulIdentifier", + "src": "16181:3:74" + }, + "nativeSrc": "16181:12:74", + "nodeType": "YulFunctionCall", + "src": "16181:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "16174:3:74", + "nodeType": "YulIdentifier", + "src": "16174:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15833:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "15967:3:74", + "nodeType": "YulTypedName", + "src": "15967:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15975:3:74", + "nodeType": "YulTypedName", + "src": "15975:3:74", + "type": "" + } + ], + "src": "15833:366:74" + }, + { + "body": { + "nativeSrc": "16376:248:74", + "nodeType": "YulBlock", + "src": "16376:248:74", + "statements": [ + { + "nativeSrc": "16386:26:74", + "nodeType": "YulAssignment", + "src": "16386:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16398:9:74", + "nodeType": "YulIdentifier", + "src": "16398:9:74" + }, + { + "kind": "number", + "nativeSrc": "16409:2:74", + "nodeType": "YulLiteral", + "src": "16409:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16394:3:74", + "nodeType": "YulIdentifier", + "src": "16394:3:74" + }, + "nativeSrc": "16394:18:74", + "nodeType": "YulFunctionCall", + "src": "16394:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16386:4:74", + "nodeType": "YulIdentifier", + "src": "16386:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16433:9:74", + "nodeType": "YulIdentifier", + "src": "16433:9:74" + }, + { + "kind": "number", + "nativeSrc": "16444:1:74", + "nodeType": "YulLiteral", + "src": "16444:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16429:3:74", + "nodeType": "YulIdentifier", + "src": "16429:3:74" + }, + "nativeSrc": "16429:17:74", + "nodeType": "YulFunctionCall", + "src": "16429:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16452:4:74", + "nodeType": "YulIdentifier", + "src": "16452:4:74" + }, + { + "name": "headStart", + "nativeSrc": "16458:9:74", + "nodeType": "YulIdentifier", + "src": "16458:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16448:3:74", + "nodeType": "YulIdentifier", + "src": "16448:3:74" + }, + "nativeSrc": "16448:20:74", + "nodeType": "YulFunctionCall", + "src": "16448:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16422:6:74", + "nodeType": "YulIdentifier", + "src": "16422:6:74" + }, + "nativeSrc": "16422:47:74", + "nodeType": "YulFunctionCall", + "src": "16422:47:74" + }, + "nativeSrc": "16422:47:74", + "nodeType": "YulExpressionStatement", + "src": "16422:47:74" + }, + { + "nativeSrc": "16478:139:74", + "nodeType": "YulAssignment", + "src": "16478:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16612:4:74", + "nodeType": "YulIdentifier", + "src": "16612:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "16486:124:74", + "nodeType": "YulIdentifier", + "src": "16486:124:74" + }, + "nativeSrc": "16486:131:74", + "nodeType": "YulFunctionCall", + "src": "16486:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16478:4:74", + "nodeType": "YulIdentifier", + "src": "16478:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "16205:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16356:9:74", + "nodeType": "YulTypedName", + "src": "16356:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "16371:4:74", + "nodeType": "YulTypedName", + "src": "16371:4:74", + "type": "" + } + ], + "src": "16205:419:74" + }, + { + "body": { + "nativeSrc": "16693:80:74", + "nodeType": "YulBlock", + "src": "16693:80:74", + "statements": [ + { + "nativeSrc": "16703:22:74", + "nodeType": "YulAssignment", + "src": "16703:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16718:6:74", + "nodeType": "YulIdentifier", + "src": "16718:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "16712:5:74", + "nodeType": "YulIdentifier", + "src": "16712:5:74" + }, + "nativeSrc": "16712:13:74", + "nodeType": "YulFunctionCall", + "src": "16712:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "16703:5:74", + "nodeType": "YulIdentifier", + "src": "16703:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16761:5:74", + "nodeType": "YulIdentifier", + "src": "16761:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "16734:26:74", + "nodeType": "YulIdentifier", + "src": "16734:26:74" + }, + "nativeSrc": "16734:33:74", + "nodeType": "YulFunctionCall", + "src": "16734:33:74" + }, + "nativeSrc": "16734:33:74", + "nodeType": "YulExpressionStatement", + "src": "16734:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "16630:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "16671:6:74", + "nodeType": "YulTypedName", + "src": "16671:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "16679:3:74", + "nodeType": "YulTypedName", + "src": "16679:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "16687:5:74", + "nodeType": "YulTypedName", + "src": "16687:5:74", + "type": "" + } + ], + "src": "16630:143:74" + }, + { + "body": { + "nativeSrc": "16856:274:74", + "nodeType": "YulBlock", + "src": "16856:274:74", + "statements": [ + { + "body": { + "nativeSrc": "16902:83:74", + "nodeType": "YulBlock", + "src": "16902:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "16904:77:74", + "nodeType": "YulIdentifier", + "src": "16904:77:74" + }, + "nativeSrc": "16904:79:74", + "nodeType": "YulFunctionCall", + "src": "16904:79:74" + }, + "nativeSrc": "16904:79:74", + "nodeType": "YulExpressionStatement", + "src": "16904:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "16877:7:74", + "nodeType": "YulIdentifier", + "src": "16877:7:74" + }, + { + "name": "headStart", + "nativeSrc": "16886:9:74", + "nodeType": "YulIdentifier", + "src": "16886:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16873:3:74", + "nodeType": "YulIdentifier", + "src": "16873:3:74" + }, + "nativeSrc": "16873:23:74", + "nodeType": "YulFunctionCall", + "src": "16873:23:74" + }, + { + "kind": "number", + "nativeSrc": "16898:2:74", + "nodeType": "YulLiteral", + "src": "16898:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "16869:3:74", + "nodeType": "YulIdentifier", + "src": "16869:3:74" + }, + "nativeSrc": "16869:32:74", + "nodeType": "YulFunctionCall", + "src": "16869:32:74" + }, + "nativeSrc": "16866:119:74", + "nodeType": "YulIf", + "src": "16866:119:74" + }, + { + "nativeSrc": "16995:128:74", + "nodeType": "YulBlock", + "src": "16995:128:74", + "statements": [ + { + "nativeSrc": "17010:15:74", + "nodeType": "YulVariableDeclaration", + "src": "17010:15:74", + "value": { + "kind": "number", + "nativeSrc": "17024:1:74", + "nodeType": "YulLiteral", + "src": "17024:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "17014:6:74", + "nodeType": "YulTypedName", + "src": "17014:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17039:74:74", + "nodeType": "YulAssignment", + "src": "17039:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17085:9:74", + "nodeType": "YulIdentifier", + "src": "17085:9:74" + }, + { + "name": "offset", + "nativeSrc": "17096:6:74", + "nodeType": "YulIdentifier", + "src": "17096:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17081:3:74", + "nodeType": "YulIdentifier", + "src": "17081:3:74" + }, + "nativeSrc": "17081:22:74", + "nodeType": "YulFunctionCall", + "src": "17081:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17105:7:74", + "nodeType": "YulIdentifier", + "src": "17105:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "17049:31:74", + "nodeType": "YulIdentifier", + "src": "17049:31:74" + }, + "nativeSrc": "17049:64:74", + "nodeType": "YulFunctionCall", + "src": "17049:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "17039:6:74", + "nodeType": "YulIdentifier", + "src": "17039:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "16779:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16826:9:74", + "nodeType": "YulTypedName", + "src": "16826:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "16837:7:74", + "nodeType": "YulTypedName", + "src": "16837:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "16849:6:74", + "nodeType": "YulTypedName", + "src": "16849:6:74", + "type": "" + } + ], + "src": "16779:351:74" + }, + { + "body": { + "nativeSrc": "17242:76:74", + "nodeType": "YulBlock", + "src": "17242:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "17264:6:74", + "nodeType": "YulIdentifier", + "src": "17264:6:74" + }, + { + "kind": "number", + "nativeSrc": "17272:1:74", + "nodeType": "YulLiteral", + "src": "17272:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17260:3:74", + "nodeType": "YulIdentifier", + "src": "17260:3:74" + }, + "nativeSrc": "17260:14:74", + "nodeType": "YulFunctionCall", + "src": "17260:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "17276:34:74", + "nodeType": "YulLiteral", + "src": "17276:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17253:6:74", + "nodeType": "YulIdentifier", + "src": "17253:6:74" + }, + "nativeSrc": "17253:58:74", + "nodeType": "YulFunctionCall", + "src": "17253:58:74" + }, + "nativeSrc": "17253:58:74", + "nodeType": "YulExpressionStatement", + "src": "17253:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "17136:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "17234:6:74", + "nodeType": "YulTypedName", + "src": "17234:6:74", + "type": "" + } + ], + "src": "17136:182:74" + }, + { + "body": { + "nativeSrc": "17470:220:74", + "nodeType": "YulBlock", + "src": "17470:220:74", + "statements": [ + { + "nativeSrc": "17480:74:74", + "nodeType": "YulAssignment", + "src": "17480:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17546:3:74", + "nodeType": "YulIdentifier", + "src": "17546:3:74" + }, + { + "kind": "number", + "nativeSrc": "17551:2:74", + "nodeType": "YulLiteral", + "src": "17551:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "17487:58:74", + "nodeType": "YulIdentifier", + "src": "17487:58:74" + }, + "nativeSrc": "17487:67:74", + "nodeType": "YulFunctionCall", + "src": "17487:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17480:3:74", + "nodeType": "YulIdentifier", + "src": "17480:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17652:3:74", + "nodeType": "YulIdentifier", + "src": "17652:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "17563:88:74", + "nodeType": "YulIdentifier", + "src": "17563:88:74" + }, + "nativeSrc": "17563:93:74", + "nodeType": "YulFunctionCall", + "src": "17563:93:74" + }, + "nativeSrc": "17563:93:74", + "nodeType": "YulExpressionStatement", + "src": "17563:93:74" + }, + { + "nativeSrc": "17665:19:74", + "nodeType": "YulAssignment", + "src": "17665:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17676:3:74", + "nodeType": "YulIdentifier", + "src": "17676:3:74" + }, + { + "kind": "number", + "nativeSrc": "17681:2:74", + "nodeType": "YulLiteral", + "src": "17681:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17672:3:74", + "nodeType": "YulIdentifier", + "src": "17672:3:74" + }, + "nativeSrc": "17672:12:74", + "nodeType": "YulFunctionCall", + "src": "17672:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17665:3:74", + "nodeType": "YulIdentifier", + "src": "17665:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "17324:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "17458:3:74", + "nodeType": "YulTypedName", + "src": "17458:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "17466:3:74", + "nodeType": "YulTypedName", + "src": "17466:3:74", + "type": "" + } + ], + "src": "17324:366:74" + }, + { + "body": { + "nativeSrc": "17867:248:74", + "nodeType": "YulBlock", + "src": "17867:248:74", + "statements": [ + { + "nativeSrc": "17877:26:74", + "nodeType": "YulAssignment", + "src": "17877:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17889:9:74", + "nodeType": "YulIdentifier", + "src": "17889:9:74" + }, + { + "kind": "number", + "nativeSrc": "17900:2:74", + "nodeType": "YulLiteral", + "src": "17900:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17885:3:74", + "nodeType": "YulIdentifier", + "src": "17885:3:74" + }, + "nativeSrc": "17885:18:74", + "nodeType": "YulFunctionCall", + "src": "17885:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17877:4:74", + "nodeType": "YulIdentifier", + "src": "17877:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17924:9:74", + "nodeType": "YulIdentifier", + "src": "17924:9:74" + }, + { + "kind": "number", + "nativeSrc": "17935:1:74", + "nodeType": "YulLiteral", + "src": "17935:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17920:3:74", + "nodeType": "YulIdentifier", + "src": "17920:3:74" + }, + "nativeSrc": "17920:17:74", + "nodeType": "YulFunctionCall", + "src": "17920:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "17943:4:74", + "nodeType": "YulIdentifier", + "src": "17943:4:74" + }, + { + "name": "headStart", + "nativeSrc": "17949:9:74", + "nodeType": "YulIdentifier", + "src": "17949:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17939:3:74", + "nodeType": "YulIdentifier", + "src": "17939:3:74" + }, + "nativeSrc": "17939:20:74", + "nodeType": "YulFunctionCall", + "src": "17939:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17913:6:74", + "nodeType": "YulIdentifier", + "src": "17913:6:74" + }, + "nativeSrc": "17913:47:74", + "nodeType": "YulFunctionCall", + "src": "17913:47:74" + }, + "nativeSrc": "17913:47:74", + "nodeType": "YulExpressionStatement", + "src": "17913:47:74" + }, + { + "nativeSrc": "17969:139:74", + "nodeType": "YulAssignment", + "src": "17969:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "18103:4:74", + "nodeType": "YulIdentifier", + "src": "18103:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "17977:124:74", + "nodeType": "YulIdentifier", + "src": "17977:124:74" + }, + "nativeSrc": "17977:131:74", + "nodeType": "YulFunctionCall", + "src": "17977:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17969:4:74", + "nodeType": "YulIdentifier", + "src": "17969:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "17696:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17847:9:74", + "nodeType": "YulTypedName", + "src": "17847:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17862:4:74", + "nodeType": "YulTypedName", + "src": "17862:4:74", + "type": "" + } + ], + "src": "17696:419:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_ENS_$4567_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ENS_$4567_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_addresst_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function convert_t_contract$_NameResolver_$7287_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_NameResolver_$7287_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_NameResolver_$7287_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_NameResolver_$7287__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_NameResolver_$7287_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_decode_t_bool_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d(memPtr) {\n\n mstore(add(memPtr, 0), \"ReverseRegistrar: Caller is not \")\n\n mstore(add(memPtr, 32), \"a controller or authorised by ad\")\n\n mstore(add(memPtr, 64), \"dress or the address itself\")\n\n }\n\n function abi_encode_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 91)\n store_literal_in_memory_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d(pos)\n end := add(pos, 96)\n }\n\n function abi_encode_tuple_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_fe4e6cb0d911fbb084bbc1b17d0a5ac5b55e0dd119afa63b9e266f785db0c22d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function cleanup_t_rational_0_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function convert_t_rational_0_by_1_to_t_uint64(value) -> converted {\n converted := cleanup_t_uint64(identity(cleanup_t_rational_0_by_1(value)))\n }\n\n function abi_encode_t_rational_0_by_1_to_t_uint64_fromStack(value, pos) {\n mstore(pos, convert_t_rational_0_by_1_to_t_uint64(value))\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_rational_0_by_1__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_address_to_t_address_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_rational_0_by_1_to_t_uint64_fromStack(value4, add(headStart, 128))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes32_t_string_memory_ptr__to_t_bytes32_t_string_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value1, tail)\n\n }\n\n function store_literal_in_memory_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa(memPtr) {\n\n mstore(add(memPtr, 0), \"ReverseRegistrar: Resolver addre\")\n\n mstore(add(memPtr, 32), \"ss must not be 0\")\n\n }\n\n function abi_encode_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 48)\n store_literal_in_memory_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_eb02bca886b66c8cccb8ebdd5f9e523f0cb437ea36db9ae94c35db86f94aa5fa_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "7302": [ + { + "length": 32, + "start": 836 + }, + { + "length": 32, + "start": 1012 + }, + { + "length": 32, + "start": 1409 + } + ] + }, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b214610273578063da8c229e1461028f578063e0dba60f146102bf578063f2fde38b146102db576100ea565b80638da5cb5b146101f5578063bffbe61c14610213578063c47f002714610243576100ea565b806365669631116100c8578063656696311461016d578063715018a61461019d5780637a806d6b146101a7578063828eab0e146101d7576100ea565b80630f5a5466146100ef5780631e83409a1461011f5780633f15457f1461014f575b600080fd5b61010960048036038101906101049190610d08565b6102f7565b6040516101169190610d61565b60405180910390f35b61013960048036038101906101349190610d7c565b61030c565b6040516101469190610d61565b60405180910390f35b610157610342565b6040516101649190610e08565b60405180910390f35b61018760048036038101906101829190610e23565b610366565b6040516101949190610d61565b60405180910390f35b6101a5610643565b005b6101c160048036038101906101bc9190610fbc565b610657565b6040516101ce9190610d61565b60405180910390f35b6101df6106e0565b6040516101ec9190611060565b60405180910390f35b6101fd610706565b60405161020a919061108a565b60405180910390f35b61022d60048036038101906102289190610d7c565b61072f565b60405161023a9190610d61565b60405180910390f35b61025d600480360381019061025891906110a5565b61078c565b60405161026a9190610d61565b60405180910390f35b61028d60048036038101906102889190610d7c565b6107c3565b005b6102a960048036038101906102a49190610d7c565b6108c1565b6040516102b69190611109565b60405180910390f35b6102d960048036038101906102d49190611150565b6108e1565b005b6102f560048036038101906102f09190610d7c565b610992565b005b6000610304338484610366565b905092915050565b600061033b3383600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610366565b9050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000833373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806103ec5750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061048f57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b815260040161044d929190611190565b602060405180830381865afa15801561046a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048e91906111ce565b5b8061049f575061049e81610a15565b5b6104de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d5906112a4565b60405180910390fd5b60006104e986610ac4565b905060007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b826040516020016105239291906112e5565b604051602081830303815290604052805190602001209050808773ffffffffffffffffffffffffffffffffffffffff167f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9260405160405180910390a37f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f07f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b84898960006040518663ffffffff1660e01b8152600401610604959493929190611360565b600060405180830381600087803b15801561061e57600080fd5b505af1158015610632573d6000803e3d6000fd5b505050508093505050509392505050565b61064b610b4c565b6106556000610bca565b565b600080610665868686610366565b90508373ffffffffffffffffffffffffffffffffffffffff16637737221382856040518363ffffffff1660e01b81526004016106a2929190611421565b600060405180830381600087803b1580156106bc57600080fd5b505af11580156106d0573d6000803e3d6000fd5b5050505080915050949350505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b61075e83610ac4565b60405160200161076f9291906112e5565b604051602081830303815290604052805190602001209050919050565b60006107bc3333600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685610657565b9050919050565b6107cb610b4c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361083a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610831906114c3565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf60405160405180910390a250565b60016020528060005260406000206000915054906101000a900460ff1681565b6108e9610b4c565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516109869190611109565b60405180910390a25050565b61099a610b4c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0090611555565b60405180910390fd5b610a1281610bca565b50565b60008173ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a7f57506040513d601f19601f82011682018060405250810190610a7c919061158a565b60015b610a8c5760009050610abf565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16149150505b919050565b600060285b6000811115610b3f576001810390507f3031323334353637383961626364656600000000000000000000000000000000600f84161a81536010830492506001810390507f3031323334353637383961626364656600000000000000000000000000000000600f84161a8153601083049250610ac9565b5060286000209050919050565b610b54610c8e565b73ffffffffffffffffffffffffffffffffffffffff16610b72610706565b73ffffffffffffffffffffffffffffffffffffffff1614610bc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbf90611603565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610cd582610caa565b9050919050565b610ce581610cca565b8114610cf057600080fd5b50565b600081359050610d0281610cdc565b92915050565b60008060408385031215610d1f57610d1e610ca0565b5b6000610d2d85828601610cf3565b9250506020610d3e85828601610cf3565b9150509250929050565b6000819050919050565b610d5b81610d48565b82525050565b6000602082019050610d766000830184610d52565b92915050565b600060208284031215610d9257610d91610ca0565b5b6000610da084828501610cf3565b91505092915050565b6000819050919050565b6000610dce610dc9610dc484610caa565b610da9565b610caa565b9050919050565b6000610de082610db3565b9050919050565b6000610df282610dd5565b9050919050565b610e0281610de7565b82525050565b6000602082019050610e1d6000830184610df9565b92915050565b600080600060608486031215610e3c57610e3b610ca0565b5b6000610e4a86828701610cf3565b9350506020610e5b86828701610cf3565b9250506040610e6c86828701610cf3565b9150509250925092565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610ec982610e80565b810181811067ffffffffffffffff82111715610ee857610ee7610e91565b5b80604052505050565b6000610efb610c96565b9050610f078282610ec0565b919050565b600067ffffffffffffffff821115610f2757610f26610e91565b5b610f3082610e80565b9050602081019050919050565b82818337600083830152505050565b6000610f5f610f5a84610f0c565b610ef1565b905082815260208101848484011115610f7b57610f7a610e7b565b5b610f86848285610f3d565b509392505050565b600082601f830112610fa357610fa2610e76565b5b8135610fb3848260208601610f4c565b91505092915050565b60008060008060808587031215610fd657610fd5610ca0565b5b6000610fe487828801610cf3565b9450506020610ff587828801610cf3565b935050604061100687828801610cf3565b925050606085013567ffffffffffffffff81111561102757611026610ca5565b5b61103387828801610f8e565b91505092959194509250565b600061104a82610dd5565b9050919050565b61105a8161103f565b82525050565b60006020820190506110756000830184611051565b92915050565b61108481610cca565b82525050565b600060208201905061109f600083018461107b565b92915050565b6000602082840312156110bb576110ba610ca0565b5b600082013567ffffffffffffffff8111156110d9576110d8610ca5565b5b6110e584828501610f8e565b91505092915050565b60008115159050919050565b611103816110ee565b82525050565b600060208201905061111e60008301846110fa565b92915050565b61112d816110ee565b811461113857600080fd5b50565b60008135905061114a81611124565b92915050565b6000806040838503121561116757611166610ca0565b5b600061117585828601610cf3565b92505060206111868582860161113b565b9150509250929050565b60006040820190506111a5600083018561107b565b6111b2602083018461107b565b9392505050565b6000815190506111c881611124565b92915050565b6000602082840312156111e4576111e3610ca0565b5b60006111f2848285016111b9565b91505092915050565b600082825260208201905092915050565b7f526576657273655265676973747261723a2043616c6c6572206973206e6f742060008201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460208201527f6472657373206f7220746865206164647265737320697473656c660000000000604082015250565b600061128e605b836111fb565b91506112998261120c565b606082019050919050565b600060208201905081810360008301526112bd81611281565b9050919050565b6000819050919050565b6112df6112da82610d48565b6112c4565b82525050565b60006112f182856112ce565b60208201915061130182846112ce565b6020820191508190509392505050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600061134a61134561134084611311565b610da9565b61131b565b9050919050565b61135a8161132f565b82525050565b600060a0820190506113756000830188610d52565b6113826020830187610d52565b61138f604083018661107b565b61139c606083018561107b565b6113a96080830184611351565b9695505050505050565b600081519050919050565b60005b838110156113dc5780820151818401526020810190506113c1565b60008484015250505050565b60006113f3826113b3565b6113fd81856111fb565b935061140d8185602086016113be565b61141681610e80565b840191505092915050565b60006040820190506114366000830185610d52565b818103602083015261144881846113e8565b90509392505050565b7f526576657273655265676973747261723a205265736f6c76657220616464726560008201527f7373206d757374206e6f74206265203000000000000000000000000000000000602082015250565b60006114ad6030836111fb565b91506114b882611451565b604082019050919050565b600060208201905081810360008301526114dc816114a0565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061153f6026836111fb565b915061154a826114e3565b604082019050919050565b6000602082019050818103600083015261156e81611532565b9050919050565b60008151905061158481610cdc565b92915050565b6000602082840312156115a05761159f610ca0565b5b60006115ae84828501611575565b91505092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006115ed6020836111fb565b91506115f8826115b7565b602082019050919050565b6000602082019050818103600083015261161c816115e0565b905091905056fea264697066735822122051a207a41ea0e3ddace922d385d1b6dd40f82ecb472c3e9a2040c1f88ce2f78164736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xEA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xC66485B2 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xC66485B2 EQ PUSH2 0x273 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x28F JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0x2BF JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2DB JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F5 JUMPI DUP1 PUSH4 0xBFFBE61C EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xC47F0027 EQ PUSH2 0x243 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x65669631 GT PUSH2 0xC8 JUMPI DUP1 PUSH4 0x65669631 EQ PUSH2 0x16D JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x19D JUMPI DUP1 PUSH4 0x7A806D6B EQ PUSH2 0x1A7 JUMPI DUP1 PUSH4 0x828EAB0E EQ PUSH2 0x1D7 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0xF5A5466 EQ PUSH2 0xEF JUMPI DUP1 PUSH4 0x1E83409A EQ PUSH2 0x11F JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x14F JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x109 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x104 SWAP2 SWAP1 PUSH2 0xD08 JUMP JUMPDEST PUSH2 0x2F7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x116 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x139 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x134 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x30C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x146 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x157 PUSH2 0x342 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x164 SWAP2 SWAP1 PUSH2 0xE08 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x187 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x182 SWAP2 SWAP1 PUSH2 0xE23 JUMP JUMPDEST PUSH2 0x366 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x194 SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1A5 PUSH2 0x643 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1BC SWAP2 SWAP1 PUSH2 0xFBC JUMP JUMPDEST PUSH2 0x657 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CE SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1DF PUSH2 0x6E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1EC SWAP2 SWAP1 PUSH2 0x1060 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1FD PUSH2 0x706 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x108A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x22D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x228 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x72F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x23A SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x25D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x258 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x78C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x26A SWAP2 SWAP1 PUSH2 0xD61 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x28D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x288 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x7C3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A4 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x8C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B6 SWAP2 SWAP1 PUSH2 0x1109 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2D9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D4 SWAP2 SWAP1 PUSH2 0x1150 JUMP JUMPDEST PUSH2 0x8E1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2F5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F0 SWAP2 SWAP1 PUSH2 0xD7C JUMP JUMPDEST PUSH2 0x992 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x304 CALLER DUP5 DUP5 PUSH2 0x366 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33B CALLER DUP4 PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x366 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP4 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x3EC JUMPI POP PUSH1 0x1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST DUP1 PUSH2 0x48F JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x44D SWAP3 SWAP2 SWAP1 PUSH2 0x1190 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x46A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x48E SWAP2 SWAP1 PUSH2 0x11CE JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x49F JUMPI POP PUSH2 0x49E DUP2 PUSH2 0xA15 JUMP JUMPDEST JUMPDEST PUSH2 0x4DE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D5 SWAP1 PUSH2 0x12A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x4E9 DUP7 PUSH2 0xAC4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x523 SWAP3 SWAP2 SWAP1 PUSH2 0x12E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x6ADA868DD3058CF77A48A74489FD7963688E5464B2B0FA957ACE976243270E92 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL DUP5 DUP10 DUP10 PUSH1 0x0 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x604 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1360 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x61E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x632 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x64B PUSH2 0xB4C JUMP JUMPDEST PUSH2 0x655 PUSH1 0x0 PUSH2 0xBCA JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x665 DUP7 DUP7 DUP7 PUSH2 0x366 JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77372213 DUP3 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP3 SWAP2 SWAP1 PUSH2 0x1421 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x6D0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 SWAP2 POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH2 0x75E DUP4 PUSH2 0xAC4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x76F SWAP3 SWAP2 SWAP1 PUSH2 0x12E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7BC CALLER CALLER PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH2 0x657 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7CB PUSH2 0xB4C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x83A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x831 SWAP1 PUSH2 0x14C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xEAE17A84D9EB83D8C8EB317F9E7D64857BC363FA51674D996C023F4340C577CF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x8E9 PUSH2 0xB4C JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x986 SWAP2 SWAP1 PUSH2 0x1109 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x99A PUSH2 0xB4C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA09 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA00 SWAP1 PUSH2 0x1555 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xA12 DUP2 PUSH2 0xBCA JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8DA5CB5B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0xA7F JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA7C SWAP2 SWAP1 PUSH2 0x158A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0xA8C JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0xABF JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x28 JUMPDEST PUSH1 0x0 DUP2 GT ISZERO PUSH2 0xB3F JUMPI PUSH1 0x1 DUP2 SUB SWAP1 POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xF DUP5 AND BYTE DUP2 MSTORE8 PUSH1 0x10 DUP4 DIV SWAP3 POP PUSH1 0x1 DUP2 SUB SWAP1 POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xF DUP5 AND BYTE DUP2 MSTORE8 PUSH1 0x10 DUP4 DIV SWAP3 POP PUSH2 0xAC9 JUMP JUMPDEST POP PUSH1 0x28 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xB54 PUSH2 0xC8E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB72 PUSH2 0x706 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xBC8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBBF SWAP1 PUSH2 0x1603 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xCD5 DUP3 PUSH2 0xCAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xCE5 DUP2 PUSH2 0xCCA JUMP JUMPDEST DUP2 EQ PUSH2 0xCF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xD02 DUP2 PUSH2 0xCDC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xD1F JUMPI PUSH2 0xD1E PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xD2D DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0xD3E DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xD5B DUP2 PUSH2 0xD48 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xD76 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xD52 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD92 JUMPI PUSH2 0xD91 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xDA0 DUP5 DUP3 DUP6 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDCE PUSH2 0xDC9 PUSH2 0xDC4 DUP5 PUSH2 0xCAA JUMP JUMPDEST PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0xCAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDE0 DUP3 PUSH2 0xDB3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDF2 DUP3 PUSH2 0xDD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE02 DUP2 PUSH2 0xDE7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE1D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xDF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xE3C JUMPI PUSH2 0xE3B PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xE4A DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0xE5B DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0xE6C DUP7 DUP3 DUP8 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0xEC9 DUP3 PUSH2 0xE80 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xEE8 JUMPI PUSH2 0xEE7 PUSH2 0xE91 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEFB PUSH2 0xC96 JUMP JUMPDEST SWAP1 POP PUSH2 0xF07 DUP3 DUP3 PUSH2 0xEC0 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0xF27 JUMPI PUSH2 0xF26 PUSH2 0xE91 JUMP JUMPDEST JUMPDEST PUSH2 0xF30 DUP3 PUSH2 0xE80 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF5F PUSH2 0xF5A DUP5 PUSH2 0xF0C JUMP JUMPDEST PUSH2 0xEF1 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF7B JUMPI PUSH2 0xF7A PUSH2 0xE7B JUMP JUMPDEST JUMPDEST PUSH2 0xF86 DUP5 DUP3 DUP6 PUSH2 0xF3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFA3 JUMPI PUSH2 0xFA2 PUSH2 0xE76 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0xFB3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF4C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xFD6 JUMPI PUSH2 0xFD5 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xFE4 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0xFF5 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1006 DUP8 DUP3 DUP9 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1027 JUMPI PUSH2 0x1026 PUSH2 0xCA5 JUMP JUMPDEST JUMPDEST PUSH2 0x1033 DUP8 DUP3 DUP9 ADD PUSH2 0xF8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x104A DUP3 PUSH2 0xDD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x105A DUP2 PUSH2 0x103F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1075 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1051 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1084 DUP2 PUSH2 0xCCA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x109F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x107B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10BB JUMPI PUSH2 0x10BA PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x10D9 JUMPI PUSH2 0x10D8 PUSH2 0xCA5 JUMP JUMPDEST JUMPDEST PUSH2 0x10E5 DUP5 DUP3 DUP6 ADD PUSH2 0xF8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1103 DUP2 PUSH2 0x10EE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x111E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x10FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x112D DUP2 PUSH2 0x10EE JUMP JUMPDEST DUP2 EQ PUSH2 0x1138 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x114A DUP2 PUSH2 0x1124 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1175 DUP6 DUP3 DUP7 ADD PUSH2 0xCF3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1186 DUP6 DUP3 DUP7 ADD PUSH2 0x113B JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x11A5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x11B2 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x107B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x11C8 DUP2 PUSH2 0x1124 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x11E4 JUMPI PUSH2 0x11E3 PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x11F2 DUP5 DUP3 DUP6 ADD PUSH2 0x11B9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x526576657273655265676973747261723A2043616C6C6572206973206E6F7420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6120636F6E74726F6C6C6572206F7220617574686F7269736564206279206164 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6472657373206F7220746865206164647265737320697473656C660000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x128E PUSH1 0x5B DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x1299 DUP3 PUSH2 0x120C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x12BD DUP2 PUSH2 0x1281 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12DF PUSH2 0x12DA DUP3 PUSH2 0xD48 JUMP JUMPDEST PUSH2 0x12C4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12F1 DUP3 DUP6 PUSH2 0x12CE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1301 DUP3 DUP5 PUSH2 0x12CE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x134A PUSH2 0x1345 PUSH2 0x1340 DUP5 PUSH2 0x1311 JUMP JUMPDEST PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0x131B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x135A DUP2 PUSH2 0x132F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x1375 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0xD52 JUMP JUMPDEST PUSH2 0x1382 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0xD52 JUMP JUMPDEST PUSH2 0x138F PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x139C PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x107B JUMP JUMPDEST PUSH2 0x13A9 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x1351 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x13DC JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x13C1 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13F3 DUP3 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x13FD DUP2 DUP6 PUSH2 0x11FB JUMP JUMPDEST SWAP4 POP PUSH2 0x140D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x13BE JUMP JUMPDEST PUSH2 0x1416 DUP2 PUSH2 0xE80 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1436 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0xD52 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x1448 DUP2 DUP5 PUSH2 0x13E8 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x526576657273655265676973747261723A205265736F6C766572206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373206D757374206E6F74206265203000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14AD PUSH1 0x30 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x14B8 DUP3 PUSH2 0x1451 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x14DC DUP2 PUSH2 0x14A0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x153F PUSH1 0x26 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x154A DUP3 PUSH2 0x14E3 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x156E DUP2 PUSH2 0x1532 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1584 DUP2 PUSH2 0xCDC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x15A0 JUMPI PUSH2 0x159F PUSH2 0xCA0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15AE DUP5 DUP3 DUP6 ADD PUSH2 0x1575 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15ED PUSH1 0x20 DUP4 PUSH2 0x11FB JUMP JUMPDEST SWAP2 POP PUSH2 0x15F8 DUP3 PUSH2 0x15B7 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x161C DUP2 PUSH2 0x15E0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MLOAD LOG2 SMOD LOG4 0x1E LOG0 0xE3 0xDD 0xAC 0xE9 0x22 0xD3 DUP6 0xD1 0xB6 0xDD BLOCKHASH 0xF8 0x2E 0xCB SELFBALANCE 0x2C RETURNDATACOPY SWAP11 KECCAK256 BLOCKHASH 0xC1 0xF8 DUP13 0xE2 0xF7 DUP2 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "516:5983:39:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3535:181;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2200:145;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;592:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2713:474;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:50;;;:::i;:::-;;4784:303:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;622:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1201:85:50;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5255:201:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4035:255;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1607:326;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;118:43:40;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;410:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2074:198:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3535:181:39;3642:7;3668:41;3681:10;3693:5;3700:8;3668:12;:41::i;:::-;3661:48;;3535:181;;;;:::o;2200:145::-;2255:7;2281:57;2294:10;2306:5;2321:15;;;;;;;;;;;2281:12;:57::i;:::-;2274:64;;2200:145;;;:::o;592:24::-;;;:::o;2713:474::-;2854:7;2839:4;1317:10;1309:18;;:4;:18;;;:61;;;;1347:11;:23;1359:10;1347:23;;;;;;;;;;;;;;;;;;;;;;;;;1309:61;:119;;;;1390:3;:20;;;1411:4;1417:10;1390:38;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1309:119;:157;;;;1448:18;1461:4;1448:12;:18::i;:::-;1309:157;1288:295;;;;;;;;;;;;:::i;:::-;;;;;;;;;2873:17:::1;2893:20;2908:4;2893:14;:20::i;:::-;2873:40;;2923:19;418:66;2985:17;;3004:9;2968:46;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2945:79;;;;;;2923:101;;3060:11;3054:4;3039:33;;;;;;;;;;;;3082:3;:20;;;418:66;3103:17;;3122:9;3133:5;3140:8;3150:1;3082:70;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;3169:11;3162:18;;;;2713:474:::0;;;;;;:::o;1824:101:50:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;4784:303:39:-;4938:7;4957:12;4972:35;4985:4;4991:5;4998:8;4972:12;:35::i;:::-;4957:50;;5030:8;5017:30;;;5048:4;5054;5017:42;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5076:4;5069:11;;;4784:303;;;;;;:::o;622:35::-;;;;;;;;;;;;;:::o;1201:85:50:-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;5255:201:39:-;5313:7;418:66;5395:17;;5414:20;5429:4;5414:14;:20::i;:::-;5378:57;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5351:98;;;;;;5332:117;;5255:201;;;:::o;4035:255::-;4097:7;4135:148;4167:10;4195;4231:15;;;;;;;;;;;4265:4;4135:14;:148::i;:::-;4116:167;;4035:255;;;:::o;1607:326::-;1094:13:50;:11;:13::i;:::-;1739:1:39::1;1710:31;;1718:8;1710:31;;::::0;1689:126:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1856:8;1825:15;;:40;;;;;;;;;;;;;;;;;;1916:8;1880:46;;;;;;;;;;;;1607:326:::0;:::o;118:43:40:-;;;;;;;;;;;;;;;;;;;;;;:::o;410:177::-;1094:13:50;:11;:13::i;:::-;520:7:40::1;494:11;:23;506:10;494:23;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;560:10;542:38;;;572:7;542:38;;;;;;:::i;:::-;;;;;;;;410:177:::0;;:::o;2074:198:50:-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;6271:226:39:-;6330:4;6358;6350:19;;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;6346:145;;6475:5;6468:12;;;;6346:145;6426:10;6417:19;;:5;:19;;;6410:26;;;6271:226;;;;:::o;5761:504::-;5821:11;5898:2;5867:345;5921:1;5918;5915:8;5867:345;;;5971:1;5968;5964:9;5959:14;;6022:6;6016:3;6010:4;6006:14;6001:28;5998:1;5990:40;6065:4;6059;6055:15;6047:23;;6099:1;6096;6092:9;6087:14;;6150:6;6144:3;6138:4;6134:14;6129:28;6126:1;6118:40;6193:4;6187;6183:15;6175:23;;5867:345;;;5871:43;6246:2;6243:1;6233:16;6226:23;;5761:504;;;:::o;1359:130:50:-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;2426:187::-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:474::-;909:6;917;966:2;954:9;945:7;941:23;937:32;934:119;;;972:79;;:::i;:::-;934:119;1092:1;1117:53;1162:7;1153:6;1142:9;1138:22;1117:53;:::i;:::-;1107:63;;1063:117;1219:2;1245:53;1290:7;1281:6;1270:9;1266:22;1245:53;:::i;:::-;1235:63;;1190:118;841:474;;;;;:::o;1321:77::-;1358:7;1387:5;1376:16;;1321:77;;;:::o;1404:118::-;1491:24;1509:5;1491:24;:::i;:::-;1486:3;1479:37;1404:118;;:::o;1528:222::-;1621:4;1659:2;1648:9;1644:18;1636:26;;1672:71;1740:1;1729:9;1725:17;1716:6;1672:71;:::i;:::-;1528:222;;;;:::o;1756:329::-;1815:6;1864:2;1852:9;1843:7;1839:23;1835:32;1832:119;;;1870:79;;:::i;:::-;1832:119;1990:1;2015:53;2060:7;2051:6;2040:9;2036:22;2015:53;:::i;:::-;2005:63;;1961:117;1756:329;;;;:::o;2091:60::-;2119:3;2140:5;2133:12;;2091:60;;;:::o;2157:142::-;2207:9;2240:53;2258:34;2267:24;2285:5;2267:24;:::i;:::-;2258:34;:::i;:::-;2240:53;:::i;:::-;2227:66;;2157:142;;;:::o;2305:126::-;2355:9;2388:37;2419:5;2388:37;:::i;:::-;2375:50;;2305:126;;;:::o;2437:138::-;2499:9;2532:37;2563:5;2532:37;:::i;:::-;2519:50;;2437:138;;;:::o;2581:155::-;2680:49;2723:5;2680:49;:::i;:::-;2675:3;2668:62;2581:155;;:::o;2742:246::-;2847:4;2885:2;2874:9;2870:18;2862:26;;2898:83;2978:1;2967:9;2963:17;2954:6;2898:83;:::i;:::-;2742:246;;;;:::o;2994:619::-;3071:6;3079;3087;3136:2;3124:9;3115:7;3111:23;3107:32;3104:119;;;3142:79;;:::i;:::-;3104:119;3262:1;3287:53;3332:7;3323:6;3312:9;3308:22;3287:53;:::i;:::-;3277:63;;3233:117;3389:2;3415:53;3460:7;3451:6;3440:9;3436:22;3415:53;:::i;:::-;3405:63;;3360:118;3517:2;3543:53;3588:7;3579:6;3568:9;3564:22;3543:53;:::i;:::-;3533:63;;3488:118;2994:619;;;;;:::o;3619:117::-;3728:1;3725;3718:12;3742:117;3851:1;3848;3841:12;3865:102;3906:6;3957:2;3953:7;3948:2;3941:5;3937:14;3933:28;3923:38;;3865:102;;;:::o;3973:180::-;4021:77;4018:1;4011:88;4118:4;4115:1;4108:15;4142:4;4139:1;4132:15;4159:281;4242:27;4264:4;4242:27;:::i;:::-;4234:6;4230:40;4372:6;4360:10;4357:22;4336:18;4324:10;4321:34;4318:62;4315:88;;;4383:18;;:::i;:::-;4315:88;4423:10;4419:2;4412:22;4202:238;4159:281;;:::o;4446:129::-;4480:6;4507:20;;:::i;:::-;4497:30;;4536:33;4564:4;4556:6;4536:33;:::i;:::-;4446:129;;;:::o;4581:308::-;4643:4;4733:18;4725:6;4722:30;4719:56;;;4755:18;;:::i;:::-;4719:56;4793:29;4815:6;4793:29;:::i;:::-;4785:37;;4877:4;4871;4867:15;4859:23;;4581:308;;;:::o;4895:148::-;4993:6;4988:3;4983;4970:30;5034:1;5025:6;5020:3;5016:16;5009:27;4895:148;;;:::o;5049:425::-;5127:5;5152:66;5168:49;5210:6;5168:49;:::i;:::-;5152:66;:::i;:::-;5143:75;;5241:6;5234:5;5227:21;5279:4;5272:5;5268:16;5317:3;5308:6;5303:3;5299:16;5296:25;5293:112;;;5324:79;;:::i;:::-;5293:112;5414:54;5461:6;5456:3;5451;5414:54;:::i;:::-;5133:341;5049:425;;;;;:::o;5494:340::-;5550:5;5599:3;5592:4;5584:6;5580:17;5576:27;5566:122;;5607:79;;:::i;:::-;5566:122;5724:6;5711:20;5749:79;5824:3;5816:6;5809:4;5801:6;5797:17;5749:79;:::i;:::-;5740:88;;5556:278;5494:340;;;;:::o;5840:945::-;5936:6;5944;5952;5960;6009:3;5997:9;5988:7;5984:23;5980:33;5977:120;;;6016:79;;:::i;:::-;5977:120;6136:1;6161:53;6206:7;6197:6;6186:9;6182:22;6161:53;:::i;:::-;6151:63;;6107:117;6263:2;6289:53;6334:7;6325:6;6314:9;6310:22;6289:53;:::i;:::-;6279:63;;6234:118;6391:2;6417:53;6462:7;6453:6;6442:9;6438:22;6417:53;:::i;:::-;6407:63;;6362:118;6547:2;6536:9;6532:18;6519:32;6578:18;6570:6;6567:30;6564:117;;;6600:79;;:::i;:::-;6564:117;6705:63;6760:7;6751:6;6740:9;6736:22;6705:63;:::i;:::-;6695:73;;6490:288;5840:945;;;;;;;:::o;6791:147::-;6862:9;6895:37;6926:5;6895:37;:::i;:::-;6882:50;;6791:147;;;:::o;6944:173::-;7052:58;7104:5;7052:58;:::i;:::-;7047:3;7040:71;6944:173;;:::o;7123:264::-;7237:4;7275:2;7264:9;7260:18;7252:26;;7288:92;7377:1;7366:9;7362:17;7353:6;7288:92;:::i;:::-;7123:264;;;;:::o;7393:118::-;7480:24;7498:5;7480:24;:::i;:::-;7475:3;7468:37;7393:118;;:::o;7517:222::-;7610:4;7648:2;7637:9;7633:18;7625:26;;7661:71;7729:1;7718:9;7714:17;7705:6;7661:71;:::i;:::-;7517:222;;;;:::o;7745:509::-;7814:6;7863:2;7851:9;7842:7;7838:23;7834:32;7831:119;;;7869:79;;:::i;:::-;7831:119;8017:1;8006:9;8002:17;7989:31;8047:18;8039:6;8036:30;8033:117;;;8069:79;;:::i;:::-;8033:117;8174:63;8229:7;8220:6;8209:9;8205:22;8174:63;:::i;:::-;8164:73;;7960:287;7745:509;;;;:::o;8260:90::-;8294:7;8337:5;8330:13;8323:21;8312:32;;8260:90;;;:::o;8356:109::-;8437:21;8452:5;8437:21;:::i;:::-;8432:3;8425:34;8356:109;;:::o;8471:210::-;8558:4;8596:2;8585:9;8581:18;8573:26;;8609:65;8671:1;8660:9;8656:17;8647:6;8609:65;:::i;:::-;8471:210;;;;:::o;8687:116::-;8757:21;8772:5;8757:21;:::i;:::-;8750:5;8747:32;8737:60;;8793:1;8790;8783:12;8737:60;8687:116;:::o;8809:133::-;8852:5;8890:6;8877:20;8868:29;;8906:30;8930:5;8906:30;:::i;:::-;8809:133;;;;:::o;8948:468::-;9013:6;9021;9070:2;9058:9;9049:7;9045:23;9041:32;9038:119;;;9076:79;;:::i;:::-;9038:119;9196:1;9221:53;9266:7;9257:6;9246:9;9242:22;9221:53;:::i;:::-;9211:63;;9167:117;9323:2;9349:50;9391:7;9382:6;9371:9;9367:22;9349:50;:::i;:::-;9339:60;;9294:115;8948:468;;;;;:::o;9422:332::-;9543:4;9581:2;9570:9;9566:18;9558:26;;9594:71;9662:1;9651:9;9647:17;9638:6;9594:71;:::i;:::-;9675:72;9743:2;9732:9;9728:18;9719:6;9675:72;:::i;:::-;9422:332;;;;;:::o;9760:137::-;9814:5;9845:6;9839:13;9830:22;;9861:30;9885:5;9861:30;:::i;:::-;9760:137;;;;:::o;9903:345::-;9970:6;10019:2;10007:9;9998:7;9994:23;9990:32;9987:119;;;10025:79;;:::i;:::-;9987:119;10145:1;10170:61;10223:7;10214:6;10203:9;10199:22;10170:61;:::i;:::-;10160:71;;10116:125;9903:345;;;;:::o;10254:169::-;10338:11;10372:6;10367:3;10360:19;10412:4;10407:3;10403:14;10388:29;;10254:169;;;;:::o;10429:315::-;10569:34;10565:1;10557:6;10553:14;10546:58;10638:34;10633:2;10625:6;10621:15;10614:59;10707:29;10702:2;10694:6;10690:15;10683:54;10429:315;:::o;10750:366::-;10892:3;10913:67;10977:2;10972:3;10913:67;:::i;:::-;10906:74;;10989:93;11078:3;10989:93;:::i;:::-;11107:2;11102:3;11098:12;11091:19;;10750:366;;;:::o;11122:419::-;11288:4;11326:2;11315:9;11311:18;11303:26;;11375:9;11369:4;11365:20;11361:1;11350:9;11346:17;11339:47;11403:131;11529:4;11403:131;:::i;:::-;11395:139;;11122:419;;;:::o;11547:79::-;11586:7;11615:5;11604:16;;11547:79;;;:::o;11632:157::-;11737:45;11757:24;11775:5;11757:24;:::i;:::-;11737:45;:::i;:::-;11732:3;11725:58;11632:157;;:::o;11795:397::-;11935:3;11950:75;12021:3;12012:6;11950:75;:::i;:::-;12050:2;12045:3;12041:12;12034:19;;12063:75;12134:3;12125:6;12063:75;:::i;:::-;12163:2;12158:3;12154:12;12147:19;;12183:3;12176:10;;11795:397;;;;;:::o;12198:85::-;12243:7;12272:5;12261:16;;12198:85;;;:::o;12289:101::-;12325:7;12365:18;12358:5;12354:30;12343:41;;12289:101;;;:::o;12396:156::-;12453:9;12486:60;12503:42;12512:32;12538:5;12512:32;:::i;:::-;12503:42;:::i;:::-;12486:60;:::i;:::-;12473:73;;12396:156;;;:::o;12558:145::-;12652:44;12690:5;12652:44;:::i;:::-;12647:3;12640:57;12558:145;;:::o;12709:678::-;12921:4;12959:3;12948:9;12944:19;12936:27;;12973:71;13041:1;13030:9;13026:17;13017:6;12973:71;:::i;:::-;13054:72;13122:2;13111:9;13107:18;13098:6;13054:72;:::i;:::-;13136;13204:2;13193:9;13189:18;13180:6;13136:72;:::i;:::-;13218;13286:2;13275:9;13271:18;13262:6;13218:72;:::i;:::-;13300:80;13375:3;13364:9;13360:19;13351:6;13300:80;:::i;:::-;12709:678;;;;;;;;:::o;13393:99::-;13445:6;13479:5;13473:12;13463:22;;13393:99;;;:::o;13498:248::-;13580:1;13590:113;13604:6;13601:1;13598:13;13590:113;;;13689:1;13684:3;13680:11;13674:18;13670:1;13665:3;13661:11;13654:39;13626:2;13623:1;13619:10;13614:15;;13590:113;;;13737:1;13728:6;13723:3;13719:16;13712:27;13560:186;13498:248;;;:::o;13752:377::-;13840:3;13868:39;13901:5;13868:39;:::i;:::-;13923:71;13987:6;13982:3;13923:71;:::i;:::-;13916:78;;14003:65;14061:6;14056:3;14049:4;14042:5;14038:16;14003:65;:::i;:::-;14093:29;14115:6;14093:29;:::i;:::-;14088:3;14084:39;14077:46;;13844:285;13752:377;;;;:::o;14135:423::-;14276:4;14314:2;14303:9;14299:18;14291:26;;14327:71;14395:1;14384:9;14380:17;14371:6;14327:71;:::i;:::-;14445:9;14439:4;14435:20;14430:2;14419:9;14415:18;14408:48;14473:78;14546:4;14537:6;14473:78;:::i;:::-;14465:86;;14135:423;;;;;:::o;14564:235::-;14704:34;14700:1;14692:6;14688:14;14681:58;14773:18;14768:2;14760:6;14756:15;14749:43;14564:235;:::o;14805:366::-;14947:3;14968:67;15032:2;15027:3;14968:67;:::i;:::-;14961:74;;15044:93;15133:3;15044:93;:::i;:::-;15162:2;15157:3;15153:12;15146:19;;14805:366;;;:::o;15177:419::-;15343:4;15381:2;15370:9;15366:18;15358:26;;15430:9;15424:4;15420:20;15416:1;15405:9;15401:17;15394:47;15458:131;15584:4;15458:131;:::i;:::-;15450:139;;15177:419;;;:::o;15602:225::-;15742:34;15738:1;15730:6;15726:14;15719:58;15811:8;15806:2;15798:6;15794:15;15787:33;15602:225;:::o;15833:366::-;15975:3;15996:67;16060:2;16055:3;15996:67;:::i;:::-;15989:74;;16072:93;16161:3;16072:93;:::i;:::-;16190:2;16185:3;16181:12;16174:19;;15833:366;;;:::o;16205:419::-;16371:4;16409:2;16398:9;16394:18;16386:26;;16458:9;16452:4;16448:20;16444:1;16433:9;16429:17;16422:47;16486:131;16612:4;16486:131;:::i;:::-;16478:139;;16205:419;;;:::o;16630:143::-;16687:5;16718:6;16712:13;16703:22;;16734:33;16761:5;16734:33;:::i;:::-;16630:143;;;;:::o;16779:351::-;16849:6;16898:2;16886:9;16877:7;16873:23;16869:32;16866:119;;;16904:79;;:::i;:::-;16866:119;17024:1;17049:64;17105:7;17096:6;17085:9;17081:22;17049:64;:::i;:::-;17039:74;;16995:128;16779:351;;;;:::o;17136:182::-;17276:34;17272:1;17264:6;17260:14;17253:58;17136:182;:::o;17324:366::-;17466:3;17487:67;17551:2;17546:3;17487:67;:::i;:::-;17480:74;;17563:93;17652:3;17563:93;:::i;:::-;17681:2;17676:3;17672:12;17665:19;;17324:366;;;:::o;17696:419::-;17862:4;17900:2;17889:9;17885:18;17877:26;;17949:9;17943:4;17939:20;17935:1;17924:9;17920:17;17913:47;17977:131;18103:4;17977:131;:::i;:::-;17969:139;;17696:419;;;:::o" + }, + "methodIdentifiers": { + "claim(address)": "1e83409a", + "claimForAddr(address,address,address)": "65669631", + "claimWithResolver(address,address)": "0f5a5466", + "controllers(address)": "da8c229e", + "defaultResolver()": "828eab0e", + "ens()": "3f15457f", + "node(address)": "bffbe61c", + "owner()": "8da5cb5b", + "renounceOwnership()": "715018a6", + "setController(address,bool)": "e0dba60f", + "setDefaultResolver(address)": "c66485b2", + "setName(string)": "c47f0027", + "setNameForAddr(address,address,address,string)": "7a806d6b", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ENS\",\"name\":\"ensAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"}],\"name\":\"ControllerChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract NameResolver\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"DefaultResolverChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ReverseClaimed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"claim\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"claimForAddr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"claimWithResolver\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"controllers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"defaultResolver\",\"outputs\":[{\"internalType\":\"contract NameResolver\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ens\",\"outputs\":[{\"internalType\":\"contract ENS\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"node\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"}],\"name\":\"setController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setDefaultResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setNameForAddr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"claim(address)\":{\"details\":\"Transfers ownership of the reverse ENS record associated with the calling account.\",\"params\":{\"owner\":\"The address to set as the owner of the reverse record in ENS.\"},\"returns\":{\"_0\":\"The ENS node hash of the reverse record.\"}},\"claimForAddr(address,address,address)\":{\"details\":\"Transfers ownership of the reverse ENS record associated with the calling account.\",\"params\":{\"addr\":\"The reverse record to set\",\"owner\":\"The address to set as the owner of the reverse record in ENS.\",\"resolver\":\"The resolver of the reverse node\"},\"returns\":{\"_0\":\"The ENS node hash of the reverse record.\"}},\"claimWithResolver(address,address)\":{\"details\":\"Transfers ownership of the reverse ENS record associated with the calling account.\",\"params\":{\"owner\":\"The address to set as the owner of the reverse record in ENS.\",\"resolver\":\"The address of the resolver to set; 0 to leave unchanged.\"},\"returns\":{\"_0\":\"The ENS node hash of the reverse record.\"}},\"constructor\":{\"details\":\"Constructor\",\"params\":{\"ensAddr\":\"The address of the ENS registry.\"}},\"node(address)\":{\"details\":\"Returns the node hash for a given account's reverse records.\",\"params\":{\"addr\":\"The address to hash\"},\"returns\":{\"_0\":\"The ENS node hash.\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"setName(string)\":{\"details\":\"Sets the `name()` record for the reverse ENS record associated with the calling account. First updates the resolver to the default reverse resolver if necessary.\",\"params\":{\"name\":\"The name to set for this address.\"},\"returns\":{\"_0\":\"The ENS node hash of the reverse record.\"}},\"setNameForAddr(address,address,address,string)\":{\"details\":\"Sets the `name()` record for the reverse ENS record associated with the account provided. Updates the resolver to a designated resolver Only callable by controllers and authorised users\",\"params\":{\"addr\":\"The reverse record to set\",\"name\":\"The name to set for this address.\",\"owner\":\"The owner of the reverse node\",\"resolver\":\"The resolver of the reverse node\"},\"returns\":{\"_0\":\"The ENS node hash of the reverse record.\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\":\"ReverseRegistrar\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol\":{\"keccak256\":\"0xd57d28e5791b4b44650a00f5ef6c725af53698ec33faeeaa3591f0dbd939559a\",\"urls\":[\"bzz-raw://7f27cf1e6e67602c45cbf296d73cbea9382b3c6c9b3440475dd60a9da839ba49\",\"dweb:/ipfs/QmNSHz447MJgMTGb8MHxAPf2RbUQj5fmzBaVKvmD13bM6J\"]},\"@ensdomains/ens-contracts/contracts/root/Controllable.sol\":{\"keccak256\":\"0xb19b8c0fafe9ca2b4bf8aaafee486fa31437672e1e1977bdf84bfe03464969db\",\"urls\":[\"bzz-raw://cd365d76a131b89fa0f6b4097e63032337d2c071c082f5b9ca4af85cd16b3350\",\"dweb:/ipfs/QmXcgvgArVaK9k4wfzEj2rGu86W6U3BAY8mw8jVaAwJpFH\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/root/Controllable.sol": { + "Controllable": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "ControllerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "controllers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 50, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 58, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b5061002d61002261003260201b60201c565b61003a60201b60201c565b6100fe565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6106688061010d6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610084578063e0dba60f146100b4578063f2fde38b146100d0575b600080fd5b6100646100ec565b005b61006e610100565b60405161007b9190610408565b60405180910390f35b61009e60048036038101906100999190610454565b610129565b6040516100ab919061049c565b60405180910390f35b6100ce60048036038101906100c991906104e3565b610149565b005b6100ea60048036038101906100e59190610454565b6101fa565b005b6100f461027d565b6100fe60006102fb565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60016020528060005260406000206000915054906101000a900460ff1681565b61015161027d565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516101ee919061049c565b60405180910390a25050565b61020261027d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610268906105a6565b60405180910390fd5b61027a816102fb565b50565b6102856103bf565b73ffffffffffffffffffffffffffffffffffffffff166102a3610100565b73ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102f090610612565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103f2826103c7565b9050919050565b610402816103e7565b82525050565b600060208201905061041d60008301846103f9565b92915050565b600080fd5b610431816103e7565b811461043c57600080fd5b50565b60008135905061044e81610428565b92915050565b60006020828403121561046a57610469610423565b5b60006104788482850161043f565b91505092915050565b60008115159050919050565b61049681610481565b82525050565b60006020820190506104b1600083018461048d565b92915050565b6104c081610481565b81146104cb57600080fd5b50565b6000813590506104dd816104b7565b92915050565b600080604083850312156104fa576104f9610423565b5b60006105088582860161043f565b9250506020610519858286016104ce565b9150509250929050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610590602683610523565b915061059b82610534565b604082019050919050565b600060208201905081810360008301526105bf81610583565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006105fc602083610523565b9150610607826105c6565b602082019050919050565b6000602082019050818103600083015261062b816105ef565b905091905056fea2646970667358221220da781f2e50869f2ebea1b0a87186e99c0ed2d303ce56933c5616ddcfcde426ad64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2D PUSH2 0x22 PUSH2 0x32 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x3A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0xFE JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0x668 DUP1 PUSH2 0x10D PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x715018A6 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x84 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0xB4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xD0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0xEC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH2 0x100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x408 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x99 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x129 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAB SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xCE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC9 SWAP2 SWAP1 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x149 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x1FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF4 PUSH2 0x27D JUMP JUMPDEST PUSH2 0xFE PUSH1 0x0 PUSH2 0x2FB JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x151 PUSH2 0x27D JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1EE SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x202 PUSH2 0x27D JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x271 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x268 SWAP1 PUSH2 0x5A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x27A DUP2 PUSH2 0x2FB JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x285 PUSH2 0x3BF JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2A3 PUSH2 0x100 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F0 SWAP1 PUSH2 0x612 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F2 DUP3 PUSH2 0x3C7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x402 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x431 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x43C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x44E DUP2 PUSH2 0x428 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x46A JUMPI PUSH2 0x469 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x478 DUP5 DUP3 DUP6 ADD PUSH2 0x43F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x496 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4B1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x48D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C0 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP2 EQ PUSH2 0x4CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4DD DUP2 PUSH2 0x4B7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4FA JUMPI PUSH2 0x4F9 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x508 DUP6 DUP3 DUP7 ADD PUSH2 0x43F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x519 DUP6 DUP3 DUP7 ADD PUSH2 0x4CE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x590 PUSH1 0x26 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x59B DUP3 PUSH2 0x534 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5BF DUP2 PUSH2 0x583 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FC PUSH1 0x20 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x607 DUP3 PUSH2 0x5C6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62B DUP2 PUSH2 0x5EF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDA PUSH25 0x1F2E50869F2EBEA1B0A87186E99C0ED2D303CE56933C5616DD 0xCF 0xCD 0xE4 0x26 0xAD PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "79:510:40:-:0;;;;;;;;;;;;;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;79:510:40;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;79:510:40:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_checkOwner_13109": { + "entryPoint": 637, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 959, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 763, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@controllers_7633": { + "entryPoint": 297, + "id": 7633, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@owner_13095": { + "entryPoint": 256, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@renounceOwnership_13123": { + "entryPoint": 236, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setController_7672": { + "entryPoint": 329, + "id": 7672, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@transferOwnership_13146": { + "entryPoint": 506, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_address": { + "entryPoint": 1087, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 1230, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 1108, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 1251, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 1017, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 1165, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1411, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1519, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 1032, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 1180, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1446, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1554, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1315, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 999, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 1153, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 967, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 1059, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 1332, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 1478, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 1064, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 1207, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:4875:74", + "nodeType": "YulBlock", + "src": "0:4875:74", + "statements": [ + { + "body": { + "nativeSrc": "52:81:74", + "nodeType": "YulBlock", + "src": "52:81:74", + "statements": [ + { + "nativeSrc": "62:65:74", + "nodeType": "YulAssignment", + "src": "62:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "77:5:74", + "nodeType": "YulIdentifier", + "src": "77:5:74" + }, + { + "kind": "number", + "nativeSrc": "84:42:74", + "nodeType": "YulLiteral", + "src": "84:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "73:3:74", + "nodeType": "YulIdentifier", + "src": "73:3:74" + }, + "nativeSrc": "73:54:74", + "nodeType": "YulFunctionCall", + "src": "73:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "62:7:74", + "nodeType": "YulIdentifier", + "src": "62:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "7:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34:5:74", + "nodeType": "YulTypedName", + "src": "34:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "44:7:74", + "nodeType": "YulTypedName", + "src": "44:7:74", + "type": "" + } + ], + "src": "7:126:74" + }, + { + "body": { + "nativeSrc": "184:51:74", + "nodeType": "YulBlock", + "src": "184:51:74", + "statements": [ + { + "nativeSrc": "194:35:74", + "nodeType": "YulAssignment", + "src": "194:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "223:5:74", + "nodeType": "YulIdentifier", + "src": "223:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "205:17:74", + "nodeType": "YulIdentifier", + "src": "205:17:74" + }, + "nativeSrc": "205:24:74", + "nodeType": "YulFunctionCall", + "src": "205:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "194:7:74", + "nodeType": "YulIdentifier", + "src": "194:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "139:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "166:5:74", + "nodeType": "YulTypedName", + "src": "166:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "176:7:74", + "nodeType": "YulTypedName", + "src": "176:7:74", + "type": "" + } + ], + "src": "139:96:74" + }, + { + "body": { + "nativeSrc": "306:53:74", + "nodeType": "YulBlock", + "src": "306:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "323:3:74", + "nodeType": "YulIdentifier", + "src": "323:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "346:5:74", + "nodeType": "YulIdentifier", + "src": "346:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "328:17:74", + "nodeType": "YulIdentifier", + "src": "328:17:74" + }, + "nativeSrc": "328:24:74", + "nodeType": "YulFunctionCall", + "src": "328:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "316:6:74", + "nodeType": "YulIdentifier", + "src": "316:6:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulFunctionCall", + "src": "316:37:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulExpressionStatement", + "src": "316:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "241:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "294:5:74", + "nodeType": "YulTypedName", + "src": "294:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "301:3:74", + "nodeType": "YulTypedName", + "src": "301:3:74", + "type": "" + } + ], + "src": "241:118:74" + }, + { + "body": { + "nativeSrc": "463:124:74", + "nodeType": "YulBlock", + "src": "463:124:74", + "statements": [ + { + "nativeSrc": "473:26:74", + "nodeType": "YulAssignment", + "src": "473:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "485:9:74", + "nodeType": "YulIdentifier", + "src": "485:9:74" + }, + { + "kind": "number", + "nativeSrc": "496:2:74", + "nodeType": "YulLiteral", + "src": "496:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "481:3:74", + "nodeType": "YulIdentifier", + "src": "481:3:74" + }, + "nativeSrc": "481:18:74", + "nodeType": "YulFunctionCall", + "src": "481:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "473:4:74", + "nodeType": "YulIdentifier", + "src": "473:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "553:6:74", + "nodeType": "YulIdentifier", + "src": "553:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "566:9:74", + "nodeType": "YulIdentifier", + "src": "566:9:74" + }, + { + "kind": "number", + "nativeSrc": "577:1:74", + "nodeType": "YulLiteral", + "src": "577:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "562:3:74", + "nodeType": "YulIdentifier", + "src": "562:3:74" + }, + "nativeSrc": "562:17:74", + "nodeType": "YulFunctionCall", + "src": "562:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "509:43:74", + "nodeType": "YulIdentifier", + "src": "509:43:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulFunctionCall", + "src": "509:71:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulExpressionStatement", + "src": "509:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "365:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "435:9:74", + "nodeType": "YulTypedName", + "src": "435:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "447:6:74", + "nodeType": "YulTypedName", + "src": "447:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "458:4:74", + "nodeType": "YulTypedName", + "src": "458:4:74", + "type": "" + } + ], + "src": "365:222:74" + }, + { + "body": { + "nativeSrc": "633:35:74", + "nodeType": "YulBlock", + "src": "633:35:74", + "statements": [ + { + "nativeSrc": "643:19:74", + "nodeType": "YulAssignment", + "src": "643:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "659:2:74", + "nodeType": "YulLiteral", + "src": "659:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "653:5:74", + "nodeType": "YulIdentifier", + "src": "653:5:74" + }, + "nativeSrc": "653:9:74", + "nodeType": "YulFunctionCall", + "src": "653:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "643:6:74", + "nodeType": "YulIdentifier", + "src": "643:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "593:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "626:6:74", + "nodeType": "YulTypedName", + "src": "626:6:74", + "type": "" + } + ], + "src": "593:75:74" + }, + { + "body": { + "nativeSrc": "763:28:74", + "nodeType": "YulBlock", + "src": "763:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "780:1:74", + "nodeType": "YulLiteral", + "src": "780:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "783:1:74", + "nodeType": "YulLiteral", + "src": "783:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "773:6:74", + "nodeType": "YulIdentifier", + "src": "773:6:74" + }, + "nativeSrc": "773:12:74", + "nodeType": "YulFunctionCall", + "src": "773:12:74" + }, + "nativeSrc": "773:12:74", + "nodeType": "YulExpressionStatement", + "src": "773:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "674:117:74", + "nodeType": "YulFunctionDefinition", + "src": "674:117:74" + }, + { + "body": { + "nativeSrc": "886:28:74", + "nodeType": "YulBlock", + "src": "886:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "903:1:74", + "nodeType": "YulLiteral", + "src": "903:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "906:1:74", + "nodeType": "YulLiteral", + "src": "906:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "896:6:74", + "nodeType": "YulIdentifier", + "src": "896:6:74" + }, + "nativeSrc": "896:12:74", + "nodeType": "YulFunctionCall", + "src": "896:12:74" + }, + "nativeSrc": "896:12:74", + "nodeType": "YulExpressionStatement", + "src": "896:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "797:117:74", + "nodeType": "YulFunctionDefinition", + "src": "797:117:74" + }, + { + "body": { + "nativeSrc": "963:79:74", + "nodeType": "YulBlock", + "src": "963:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1020:16:74", + "nodeType": "YulBlock", + "src": "1020:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1029:1:74", + "nodeType": "YulLiteral", + "src": "1029:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1032:1:74", + "nodeType": "YulLiteral", + "src": "1032:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1022:6:74", + "nodeType": "YulIdentifier", + "src": "1022:6:74" + }, + "nativeSrc": "1022:12:74", + "nodeType": "YulFunctionCall", + "src": "1022:12:74" + }, + "nativeSrc": "1022:12:74", + "nodeType": "YulExpressionStatement", + "src": "1022:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "986:5:74", + "nodeType": "YulIdentifier", + "src": "986:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1011:5:74", + "nodeType": "YulIdentifier", + "src": "1011:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "993:17:74", + "nodeType": "YulIdentifier", + "src": "993:17:74" + }, + "nativeSrc": "993:24:74", + "nodeType": "YulFunctionCall", + "src": "993:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "983:2:74", + "nodeType": "YulIdentifier", + "src": "983:2:74" + }, + "nativeSrc": "983:35:74", + "nodeType": "YulFunctionCall", + "src": "983:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "976:6:74", + "nodeType": "YulIdentifier", + "src": "976:6:74" + }, + "nativeSrc": "976:43:74", + "nodeType": "YulFunctionCall", + "src": "976:43:74" + }, + "nativeSrc": "973:63:74", + "nodeType": "YulIf", + "src": "973:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "920:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "956:5:74", + "nodeType": "YulTypedName", + "src": "956:5:74", + "type": "" + } + ], + "src": "920:122:74" + }, + { + "body": { + "nativeSrc": "1100:87:74", + "nodeType": "YulBlock", + "src": "1100:87:74", + "statements": [ + { + "nativeSrc": "1110:29:74", + "nodeType": "YulAssignment", + "src": "1110:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1132:6:74", + "nodeType": "YulIdentifier", + "src": "1132:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1119:12:74", + "nodeType": "YulIdentifier", + "src": "1119:12:74" + }, + "nativeSrc": "1119:20:74", + "nodeType": "YulFunctionCall", + "src": "1119:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1110:5:74", + "nodeType": "YulIdentifier", + "src": "1110:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1175:5:74", + "nodeType": "YulIdentifier", + "src": "1175:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "1148:26:74", + "nodeType": "YulIdentifier", + "src": "1148:26:74" + }, + "nativeSrc": "1148:33:74", + "nodeType": "YulFunctionCall", + "src": "1148:33:74" + }, + "nativeSrc": "1148:33:74", + "nodeType": "YulExpressionStatement", + "src": "1148:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "1048:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1078:6:74", + "nodeType": "YulTypedName", + "src": "1078:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1086:3:74", + "nodeType": "YulTypedName", + "src": "1086:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1094:5:74", + "nodeType": "YulTypedName", + "src": "1094:5:74", + "type": "" + } + ], + "src": "1048:139:74" + }, + { + "body": { + "nativeSrc": "1259:263:74", + "nodeType": "YulBlock", + "src": "1259:263:74", + "statements": [ + { + "body": { + "nativeSrc": "1305:83:74", + "nodeType": "YulBlock", + "src": "1305:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1307:77:74", + "nodeType": "YulIdentifier", + "src": "1307:77:74" + }, + "nativeSrc": "1307:79:74", + "nodeType": "YulFunctionCall", + "src": "1307:79:74" + }, + "nativeSrc": "1307:79:74", + "nodeType": "YulExpressionStatement", + "src": "1307:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1280:7:74", + "nodeType": "YulIdentifier", + "src": "1280:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1289:9:74", + "nodeType": "YulIdentifier", + "src": "1289:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1276:3:74", + "nodeType": "YulIdentifier", + "src": "1276:3:74" + }, + "nativeSrc": "1276:23:74", + "nodeType": "YulFunctionCall", + "src": "1276:23:74" + }, + { + "kind": "number", + "nativeSrc": "1301:2:74", + "nodeType": "YulLiteral", + "src": "1301:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1272:3:74", + "nodeType": "YulIdentifier", + "src": "1272:3:74" + }, + "nativeSrc": "1272:32:74", + "nodeType": "YulFunctionCall", + "src": "1272:32:74" + }, + "nativeSrc": "1269:119:74", + "nodeType": "YulIf", + "src": "1269:119:74" + }, + { + "nativeSrc": "1398:117:74", + "nodeType": "YulBlock", + "src": "1398:117:74", + "statements": [ + { + "nativeSrc": "1413:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1413:15:74", + "value": { + "kind": "number", + "nativeSrc": "1427:1:74", + "nodeType": "YulLiteral", + "src": "1427:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1417:6:74", + "nodeType": "YulTypedName", + "src": "1417:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1442:63:74", + "nodeType": "YulAssignment", + "src": "1442:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1477:9:74", + "nodeType": "YulIdentifier", + "src": "1477:9:74" + }, + { + "name": "offset", + "nativeSrc": "1488:6:74", + "nodeType": "YulIdentifier", + "src": "1488:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1473:3:74", + "nodeType": "YulIdentifier", + "src": "1473:3:74" + }, + "nativeSrc": "1473:22:74", + "nodeType": "YulFunctionCall", + "src": "1473:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1497:7:74", + "nodeType": "YulIdentifier", + "src": "1497:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1452:20:74", + "nodeType": "YulIdentifier", + "src": "1452:20:74" + }, + "nativeSrc": "1452:53:74", + "nodeType": "YulFunctionCall", + "src": "1452:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1442:6:74", + "nodeType": "YulIdentifier", + "src": "1442:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "1193:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1229:9:74", + "nodeType": "YulTypedName", + "src": "1229:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1240:7:74", + "nodeType": "YulTypedName", + "src": "1240:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1252:6:74", + "nodeType": "YulTypedName", + "src": "1252:6:74", + "type": "" + } + ], + "src": "1193:329:74" + }, + { + "body": { + "nativeSrc": "1570:48:74", + "nodeType": "YulBlock", + "src": "1570:48:74", + "statements": [ + { + "nativeSrc": "1580:32:74", + "nodeType": "YulAssignment", + "src": "1580:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1605:5:74", + "nodeType": "YulIdentifier", + "src": "1605:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1598:6:74", + "nodeType": "YulIdentifier", + "src": "1598:6:74" + }, + "nativeSrc": "1598:13:74", + "nodeType": "YulFunctionCall", + "src": "1598:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1591:6:74", + "nodeType": "YulIdentifier", + "src": "1591:6:74" + }, + "nativeSrc": "1591:21:74", + "nodeType": "YulFunctionCall", + "src": "1591:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1580:7:74", + "nodeType": "YulIdentifier", + "src": "1580:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1528:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1552:5:74", + "nodeType": "YulTypedName", + "src": "1552:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1562:7:74", + "nodeType": "YulTypedName", + "src": "1562:7:74", + "type": "" + } + ], + "src": "1528:90:74" + }, + { + "body": { + "nativeSrc": "1683:50:74", + "nodeType": "YulBlock", + "src": "1683:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1700:3:74", + "nodeType": "YulIdentifier", + "src": "1700:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1720:5:74", + "nodeType": "YulIdentifier", + "src": "1720:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1705:14:74", + "nodeType": "YulIdentifier", + "src": "1705:14:74" + }, + "nativeSrc": "1705:21:74", + "nodeType": "YulFunctionCall", + "src": "1705:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1693:6:74", + "nodeType": "YulIdentifier", + "src": "1693:6:74" + }, + "nativeSrc": "1693:34:74", + "nodeType": "YulFunctionCall", + "src": "1693:34:74" + }, + "nativeSrc": "1693:34:74", + "nodeType": "YulExpressionStatement", + "src": "1693:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1624:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1671:5:74", + "nodeType": "YulTypedName", + "src": "1671:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1678:3:74", + "nodeType": "YulTypedName", + "src": "1678:3:74", + "type": "" + } + ], + "src": "1624:109:74" + }, + { + "body": { + "nativeSrc": "1831:118:74", + "nodeType": "YulBlock", + "src": "1831:118:74", + "statements": [ + { + "nativeSrc": "1841:26:74", + "nodeType": "YulAssignment", + "src": "1841:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1853:9:74", + "nodeType": "YulIdentifier", + "src": "1853:9:74" + }, + { + "kind": "number", + "nativeSrc": "1864:2:74", + "nodeType": "YulLiteral", + "src": "1864:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1849:3:74", + "nodeType": "YulIdentifier", + "src": "1849:3:74" + }, + "nativeSrc": "1849:18:74", + "nodeType": "YulFunctionCall", + "src": "1849:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1841:4:74", + "nodeType": "YulIdentifier", + "src": "1841:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1915:6:74", + "nodeType": "YulIdentifier", + "src": "1915:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1928:9:74", + "nodeType": "YulIdentifier", + "src": "1928:9:74" + }, + { + "kind": "number", + "nativeSrc": "1939:1:74", + "nodeType": "YulLiteral", + "src": "1939:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1924:3:74", + "nodeType": "YulIdentifier", + "src": "1924:3:74" + }, + "nativeSrc": "1924:17:74", + "nodeType": "YulFunctionCall", + "src": "1924:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1877:37:74", + "nodeType": "YulIdentifier", + "src": "1877:37:74" + }, + "nativeSrc": "1877:65:74", + "nodeType": "YulFunctionCall", + "src": "1877:65:74" + }, + "nativeSrc": "1877:65:74", + "nodeType": "YulExpressionStatement", + "src": "1877:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1739:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1803:9:74", + "nodeType": "YulTypedName", + "src": "1803:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1815:6:74", + "nodeType": "YulTypedName", + "src": "1815:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1826:4:74", + "nodeType": "YulTypedName", + "src": "1826:4:74", + "type": "" + } + ], + "src": "1739:210:74" + }, + { + "body": { + "nativeSrc": "1995:76:74", + "nodeType": "YulBlock", + "src": "1995:76:74", + "statements": [ + { + "body": { + "nativeSrc": "2049:16:74", + "nodeType": "YulBlock", + "src": "2049:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2058:1:74", + "nodeType": "YulLiteral", + "src": "2058:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2061:1:74", + "nodeType": "YulLiteral", + "src": "2061:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2051:6:74", + "nodeType": "YulIdentifier", + "src": "2051:6:74" + }, + "nativeSrc": "2051:12:74", + "nodeType": "YulFunctionCall", + "src": "2051:12:74" + }, + "nativeSrc": "2051:12:74", + "nodeType": "YulExpressionStatement", + "src": "2051:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2018:5:74", + "nodeType": "YulIdentifier", + "src": "2018:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2040:5:74", + "nodeType": "YulIdentifier", + "src": "2040:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "2025:14:74", + "nodeType": "YulIdentifier", + "src": "2025:14:74" + }, + "nativeSrc": "2025:21:74", + "nodeType": "YulFunctionCall", + "src": "2025:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2015:2:74", + "nodeType": "YulIdentifier", + "src": "2015:2:74" + }, + "nativeSrc": "2015:32:74", + "nodeType": "YulFunctionCall", + "src": "2015:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2008:6:74", + "nodeType": "YulIdentifier", + "src": "2008:6:74" + }, + "nativeSrc": "2008:40:74", + "nodeType": "YulFunctionCall", + "src": "2008:40:74" + }, + "nativeSrc": "2005:60:74", + "nodeType": "YulIf", + "src": "2005:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "1955:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1988:5:74", + "nodeType": "YulTypedName", + "src": "1988:5:74", + "type": "" + } + ], + "src": "1955:116:74" + }, + { + "body": { + "nativeSrc": "2126:84:74", + "nodeType": "YulBlock", + "src": "2126:84:74", + "statements": [ + { + "nativeSrc": "2136:29:74", + "nodeType": "YulAssignment", + "src": "2136:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2158:6:74", + "nodeType": "YulIdentifier", + "src": "2158:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2145:12:74", + "nodeType": "YulIdentifier", + "src": "2145:12:74" + }, + "nativeSrc": "2145:20:74", + "nodeType": "YulFunctionCall", + "src": "2145:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2136:5:74", + "nodeType": "YulIdentifier", + "src": "2136:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2198:5:74", + "nodeType": "YulIdentifier", + "src": "2198:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "2174:23:74", + "nodeType": "YulIdentifier", + "src": "2174:23:74" + }, + "nativeSrc": "2174:30:74", + "nodeType": "YulFunctionCall", + "src": "2174:30:74" + }, + "nativeSrc": "2174:30:74", + "nodeType": "YulExpressionStatement", + "src": "2174:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "2077:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2104:6:74", + "nodeType": "YulTypedName", + "src": "2104:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2112:3:74", + "nodeType": "YulTypedName", + "src": "2112:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2120:5:74", + "nodeType": "YulTypedName", + "src": "2120:5:74", + "type": "" + } + ], + "src": "2077:133:74" + }, + { + "body": { + "nativeSrc": "2296:388:74", + "nodeType": "YulBlock", + "src": "2296:388:74", + "statements": [ + { + "body": { + "nativeSrc": "2342:83:74", + "nodeType": "YulBlock", + "src": "2342:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2344:77:74", + "nodeType": "YulIdentifier", + "src": "2344:77:74" + }, + "nativeSrc": "2344:79:74", + "nodeType": "YulFunctionCall", + "src": "2344:79:74" + }, + "nativeSrc": "2344:79:74", + "nodeType": "YulExpressionStatement", + "src": "2344:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2317:7:74", + "nodeType": "YulIdentifier", + "src": "2317:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2326:9:74", + "nodeType": "YulIdentifier", + "src": "2326:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2313:3:74", + "nodeType": "YulIdentifier", + "src": "2313:3:74" + }, + "nativeSrc": "2313:23:74", + "nodeType": "YulFunctionCall", + "src": "2313:23:74" + }, + { + "kind": "number", + "nativeSrc": "2338:2:74", + "nodeType": "YulLiteral", + "src": "2338:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2309:3:74", + "nodeType": "YulIdentifier", + "src": "2309:3:74" + }, + "nativeSrc": "2309:32:74", + "nodeType": "YulFunctionCall", + "src": "2309:32:74" + }, + "nativeSrc": "2306:119:74", + "nodeType": "YulIf", + "src": "2306:119:74" + }, + { + "nativeSrc": "2435:117:74", + "nodeType": "YulBlock", + "src": "2435:117:74", + "statements": [ + { + "nativeSrc": "2450:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2450:15:74", + "value": { + "kind": "number", + "nativeSrc": "2464:1:74", + "nodeType": "YulLiteral", + "src": "2464:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2454:6:74", + "nodeType": "YulTypedName", + "src": "2454:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2479:63:74", + "nodeType": "YulAssignment", + "src": "2479:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2514:9:74", + "nodeType": "YulIdentifier", + "src": "2514:9:74" + }, + { + "name": "offset", + "nativeSrc": "2525:6:74", + "nodeType": "YulIdentifier", + "src": "2525:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2510:3:74", + "nodeType": "YulIdentifier", + "src": "2510:3:74" + }, + "nativeSrc": "2510:22:74", + "nodeType": "YulFunctionCall", + "src": "2510:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2534:7:74", + "nodeType": "YulIdentifier", + "src": "2534:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "2489:20:74", + "nodeType": "YulIdentifier", + "src": "2489:20:74" + }, + "nativeSrc": "2489:53:74", + "nodeType": "YulFunctionCall", + "src": "2489:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2479:6:74", + "nodeType": "YulIdentifier", + "src": "2479:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2562:115:74", + "nodeType": "YulBlock", + "src": "2562:115:74", + "statements": [ + { + "nativeSrc": "2577:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2577:16:74", + "value": { + "kind": "number", + "nativeSrc": "2591:2:74", + "nodeType": "YulLiteral", + "src": "2591:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2581:6:74", + "nodeType": "YulTypedName", + "src": "2581:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2607:60:74", + "nodeType": "YulAssignment", + "src": "2607:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2639:9:74", + "nodeType": "YulIdentifier", + "src": "2639:9:74" + }, + { + "name": "offset", + "nativeSrc": "2650:6:74", + "nodeType": "YulIdentifier", + "src": "2650:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2635:3:74", + "nodeType": "YulIdentifier", + "src": "2635:3:74" + }, + "nativeSrc": "2635:22:74", + "nodeType": "YulFunctionCall", + "src": "2635:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2659:7:74", + "nodeType": "YulIdentifier", + "src": "2659:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "2617:17:74", + "nodeType": "YulIdentifier", + "src": "2617:17:74" + }, + "nativeSrc": "2617:50:74", + "nodeType": "YulFunctionCall", + "src": "2617:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "2607:6:74", + "nodeType": "YulIdentifier", + "src": "2607:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "2216:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2258:9:74", + "nodeType": "YulTypedName", + "src": "2258:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2269:7:74", + "nodeType": "YulTypedName", + "src": "2269:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2281:6:74", + "nodeType": "YulTypedName", + "src": "2281:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2289:6:74", + "nodeType": "YulTypedName", + "src": "2289:6:74", + "type": "" + } + ], + "src": "2216:468:74" + }, + { + "body": { + "nativeSrc": "2786:73:74", + "nodeType": "YulBlock", + "src": "2786:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2803:3:74", + "nodeType": "YulIdentifier", + "src": "2803:3:74" + }, + { + "name": "length", + "nativeSrc": "2808:6:74", + "nodeType": "YulIdentifier", + "src": "2808:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2796:6:74", + "nodeType": "YulIdentifier", + "src": "2796:6:74" + }, + "nativeSrc": "2796:19:74", + "nodeType": "YulFunctionCall", + "src": "2796:19:74" + }, + "nativeSrc": "2796:19:74", + "nodeType": "YulExpressionStatement", + "src": "2796:19:74" + }, + { + "nativeSrc": "2824:29:74", + "nodeType": "YulAssignment", + "src": "2824:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2843:3:74", + "nodeType": "YulIdentifier", + "src": "2843:3:74" + }, + { + "kind": "number", + "nativeSrc": "2848:4:74", + "nodeType": "YulLiteral", + "src": "2848:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2839:3:74", + "nodeType": "YulIdentifier", + "src": "2839:3:74" + }, + "nativeSrc": "2839:14:74", + "nodeType": "YulFunctionCall", + "src": "2839:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "2824:11:74", + "nodeType": "YulIdentifier", + "src": "2824:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2690:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "2758:3:74", + "nodeType": "YulTypedName", + "src": "2758:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2763:6:74", + "nodeType": "YulTypedName", + "src": "2763:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "2774:11:74", + "nodeType": "YulTypedName", + "src": "2774:11:74", + "type": "" + } + ], + "src": "2690:169:74" + }, + { + "body": { + "nativeSrc": "2971:119:74", + "nodeType": "YulBlock", + "src": "2971:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "2993:6:74", + "nodeType": "YulIdentifier", + "src": "2993:6:74" + }, + { + "kind": "number", + "nativeSrc": "3001:1:74", + "nodeType": "YulLiteral", + "src": "3001:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2989:3:74", + "nodeType": "YulIdentifier", + "src": "2989:3:74" + }, + "nativeSrc": "2989:14:74", + "nodeType": "YulFunctionCall", + "src": "2989:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "3005:34:74", + "nodeType": "YulLiteral", + "src": "3005:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2982:6:74", + "nodeType": "YulIdentifier", + "src": "2982:6:74" + }, + "nativeSrc": "2982:58:74", + "nodeType": "YulFunctionCall", + "src": "2982:58:74" + }, + "nativeSrc": "2982:58:74", + "nodeType": "YulExpressionStatement", + "src": "2982:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "3061:6:74", + "nodeType": "YulIdentifier", + "src": "3061:6:74" + }, + { + "kind": "number", + "nativeSrc": "3069:2:74", + "nodeType": "YulLiteral", + "src": "3069:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3057:3:74", + "nodeType": "YulIdentifier", + "src": "3057:3:74" + }, + "nativeSrc": "3057:15:74", + "nodeType": "YulFunctionCall", + "src": "3057:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "3074:8:74", + "nodeType": "YulLiteral", + "src": "3074:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3050:6:74", + "nodeType": "YulIdentifier", + "src": "3050:6:74" + }, + "nativeSrc": "3050:33:74", + "nodeType": "YulFunctionCall", + "src": "3050:33:74" + }, + "nativeSrc": "3050:33:74", + "nodeType": "YulExpressionStatement", + "src": "3050:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "2865:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "2963:6:74", + "nodeType": "YulTypedName", + "src": "2963:6:74", + "type": "" + } + ], + "src": "2865:225:74" + }, + { + "body": { + "nativeSrc": "3242:220:74", + "nodeType": "YulBlock", + "src": "3242:220:74", + "statements": [ + { + "nativeSrc": "3252:74:74", + "nodeType": "YulAssignment", + "src": "3252:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3318:3:74", + "nodeType": "YulIdentifier", + "src": "3318:3:74" + }, + { + "kind": "number", + "nativeSrc": "3323:2:74", + "nodeType": "YulLiteral", + "src": "3323:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "3259:58:74", + "nodeType": "YulIdentifier", + "src": "3259:58:74" + }, + "nativeSrc": "3259:67:74", + "nodeType": "YulFunctionCall", + "src": "3259:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "3252:3:74", + "nodeType": "YulIdentifier", + "src": "3252:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3424:3:74", + "nodeType": "YulIdentifier", + "src": "3424:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "3335:88:74", + "nodeType": "YulIdentifier", + "src": "3335:88:74" + }, + "nativeSrc": "3335:93:74", + "nodeType": "YulFunctionCall", + "src": "3335:93:74" + }, + "nativeSrc": "3335:93:74", + "nodeType": "YulExpressionStatement", + "src": "3335:93:74" + }, + { + "nativeSrc": "3437:19:74", + "nodeType": "YulAssignment", + "src": "3437:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3448:3:74", + "nodeType": "YulIdentifier", + "src": "3448:3:74" + }, + { + "kind": "number", + "nativeSrc": "3453:2:74", + "nodeType": "YulLiteral", + "src": "3453:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3444:3:74", + "nodeType": "YulIdentifier", + "src": "3444:3:74" + }, + "nativeSrc": "3444:12:74", + "nodeType": "YulFunctionCall", + "src": "3444:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "3437:3:74", + "nodeType": "YulIdentifier", + "src": "3437:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "3096:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3230:3:74", + "nodeType": "YulTypedName", + "src": "3230:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "3238:3:74", + "nodeType": "YulTypedName", + "src": "3238:3:74", + "type": "" + } + ], + "src": "3096:366:74" + }, + { + "body": { + "nativeSrc": "3639:248:74", + "nodeType": "YulBlock", + "src": "3639:248:74", + "statements": [ + { + "nativeSrc": "3649:26:74", + "nodeType": "YulAssignment", + "src": "3649:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3661:9:74", + "nodeType": "YulIdentifier", + "src": "3661:9:74" + }, + { + "kind": "number", + "nativeSrc": "3672:2:74", + "nodeType": "YulLiteral", + "src": "3672:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3657:3:74", + "nodeType": "YulIdentifier", + "src": "3657:3:74" + }, + "nativeSrc": "3657:18:74", + "nodeType": "YulFunctionCall", + "src": "3657:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3649:4:74", + "nodeType": "YulIdentifier", + "src": "3649:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3696:9:74", + "nodeType": "YulIdentifier", + "src": "3696:9:74" + }, + { + "kind": "number", + "nativeSrc": "3707:1:74", + "nodeType": "YulLiteral", + "src": "3707:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3692:3:74", + "nodeType": "YulIdentifier", + "src": "3692:3:74" + }, + "nativeSrc": "3692:17:74", + "nodeType": "YulFunctionCall", + "src": "3692:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3715:4:74", + "nodeType": "YulIdentifier", + "src": "3715:4:74" + }, + { + "name": "headStart", + "nativeSrc": "3721:9:74", + "nodeType": "YulIdentifier", + "src": "3721:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3711:3:74", + "nodeType": "YulIdentifier", + "src": "3711:3:74" + }, + "nativeSrc": "3711:20:74", + "nodeType": "YulFunctionCall", + "src": "3711:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3685:6:74", + "nodeType": "YulIdentifier", + "src": "3685:6:74" + }, + "nativeSrc": "3685:47:74", + "nodeType": "YulFunctionCall", + "src": "3685:47:74" + }, + "nativeSrc": "3685:47:74", + "nodeType": "YulExpressionStatement", + "src": "3685:47:74" + }, + { + "nativeSrc": "3741:139:74", + "nodeType": "YulAssignment", + "src": "3741:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3875:4:74", + "nodeType": "YulIdentifier", + "src": "3875:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "3749:124:74", + "nodeType": "YulIdentifier", + "src": "3749:124:74" + }, + "nativeSrc": "3749:131:74", + "nodeType": "YulFunctionCall", + "src": "3749:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3741:4:74", + "nodeType": "YulIdentifier", + "src": "3741:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "3468:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3619:9:74", + "nodeType": "YulTypedName", + "src": "3619:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3634:4:74", + "nodeType": "YulTypedName", + "src": "3634:4:74", + "type": "" + } + ], + "src": "3468:419:74" + }, + { + "body": { + "nativeSrc": "3999:76:74", + "nodeType": "YulBlock", + "src": "3999:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4021:6:74", + "nodeType": "YulIdentifier", + "src": "4021:6:74" + }, + { + "kind": "number", + "nativeSrc": "4029:1:74", + "nodeType": "YulLiteral", + "src": "4029:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4017:3:74", + "nodeType": "YulIdentifier", + "src": "4017:3:74" + }, + "nativeSrc": "4017:14:74", + "nodeType": "YulFunctionCall", + "src": "4017:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "4033:34:74", + "nodeType": "YulLiteral", + "src": "4033:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4010:6:74", + "nodeType": "YulIdentifier", + "src": "4010:6:74" + }, + "nativeSrc": "4010:58:74", + "nodeType": "YulFunctionCall", + "src": "4010:58:74" + }, + "nativeSrc": "4010:58:74", + "nodeType": "YulExpressionStatement", + "src": "4010:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "3893:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "3991:6:74", + "nodeType": "YulTypedName", + "src": "3991:6:74", + "type": "" + } + ], + "src": "3893:182:74" + }, + { + "body": { + "nativeSrc": "4227:220:74", + "nodeType": "YulBlock", + "src": "4227:220:74", + "statements": [ + { + "nativeSrc": "4237:74:74", + "nodeType": "YulAssignment", + "src": "4237:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4303:3:74", + "nodeType": "YulIdentifier", + "src": "4303:3:74" + }, + { + "kind": "number", + "nativeSrc": "4308:2:74", + "nodeType": "YulLiteral", + "src": "4308:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "4244:58:74", + "nodeType": "YulIdentifier", + "src": "4244:58:74" + }, + "nativeSrc": "4244:67:74", + "nodeType": "YulFunctionCall", + "src": "4244:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4237:3:74", + "nodeType": "YulIdentifier", + "src": "4237:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4409:3:74", + "nodeType": "YulIdentifier", + "src": "4409:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "4320:88:74", + "nodeType": "YulIdentifier", + "src": "4320:88:74" + }, + "nativeSrc": "4320:93:74", + "nodeType": "YulFunctionCall", + "src": "4320:93:74" + }, + "nativeSrc": "4320:93:74", + "nodeType": "YulExpressionStatement", + "src": "4320:93:74" + }, + { + "nativeSrc": "4422:19:74", + "nodeType": "YulAssignment", + "src": "4422:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4433:3:74", + "nodeType": "YulIdentifier", + "src": "4433:3:74" + }, + { + "kind": "number", + "nativeSrc": "4438:2:74", + "nodeType": "YulLiteral", + "src": "4438:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4429:3:74", + "nodeType": "YulIdentifier", + "src": "4429:3:74" + }, + "nativeSrc": "4429:12:74", + "nodeType": "YulFunctionCall", + "src": "4429:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4422:3:74", + "nodeType": "YulIdentifier", + "src": "4422:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4081:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "4215:3:74", + "nodeType": "YulTypedName", + "src": "4215:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4223:3:74", + "nodeType": "YulTypedName", + "src": "4223:3:74", + "type": "" + } + ], + "src": "4081:366:74" + }, + { + "body": { + "nativeSrc": "4624:248:74", + "nodeType": "YulBlock", + "src": "4624:248:74", + "statements": [ + { + "nativeSrc": "4634:26:74", + "nodeType": "YulAssignment", + "src": "4634:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4646:9:74", + "nodeType": "YulIdentifier", + "src": "4646:9:74" + }, + { + "kind": "number", + "nativeSrc": "4657:2:74", + "nodeType": "YulLiteral", + "src": "4657:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4642:3:74", + "nodeType": "YulIdentifier", + "src": "4642:3:74" + }, + "nativeSrc": "4642:18:74", + "nodeType": "YulFunctionCall", + "src": "4642:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4634:4:74", + "nodeType": "YulIdentifier", + "src": "4634:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4681:9:74", + "nodeType": "YulIdentifier", + "src": "4681:9:74" + }, + { + "kind": "number", + "nativeSrc": "4692:1:74", + "nodeType": "YulLiteral", + "src": "4692:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4677:3:74", + "nodeType": "YulIdentifier", + "src": "4677:3:74" + }, + "nativeSrc": "4677:17:74", + "nodeType": "YulFunctionCall", + "src": "4677:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4700:4:74", + "nodeType": "YulIdentifier", + "src": "4700:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4706:9:74", + "nodeType": "YulIdentifier", + "src": "4706:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4696:3:74", + "nodeType": "YulIdentifier", + "src": "4696:3:74" + }, + "nativeSrc": "4696:20:74", + "nodeType": "YulFunctionCall", + "src": "4696:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4670:6:74", + "nodeType": "YulIdentifier", + "src": "4670:6:74" + }, + "nativeSrc": "4670:47:74", + "nodeType": "YulFunctionCall", + "src": "4670:47:74" + }, + "nativeSrc": "4670:47:74", + "nodeType": "YulExpressionStatement", + "src": "4670:47:74" + }, + { + "nativeSrc": "4726:139:74", + "nodeType": "YulAssignment", + "src": "4726:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4860:4:74", + "nodeType": "YulIdentifier", + "src": "4860:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4734:124:74", + "nodeType": "YulIdentifier", + "src": "4734:124:74" + }, + "nativeSrc": "4734:131:74", + "nodeType": "YulFunctionCall", + "src": "4734:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4726:4:74", + "nodeType": "YulIdentifier", + "src": "4726:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "4453:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4604:9:74", + "nodeType": "YulTypedName", + "src": "4604:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4619:4:74", + "nodeType": "YulTypedName", + "src": "4619:4:74", + "type": "" + } + ], + "src": "4453:419:74" + } + ] + }, + "contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610084578063e0dba60f146100b4578063f2fde38b146100d0575b600080fd5b6100646100ec565b005b61006e610100565b60405161007b9190610408565b60405180910390f35b61009e60048036038101906100999190610454565b610129565b6040516100ab919061049c565b60405180910390f35b6100ce60048036038101906100c991906104e3565b610149565b005b6100ea60048036038101906100e59190610454565b6101fa565b005b6100f461027d565b6100fe60006102fb565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60016020528060005260406000206000915054906101000a900460ff1681565b61015161027d565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516101ee919061049c565b60405180910390a25050565b61020261027d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610268906105a6565b60405180910390fd5b61027a816102fb565b50565b6102856103bf565b73ffffffffffffffffffffffffffffffffffffffff166102a3610100565b73ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102f090610612565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103f2826103c7565b9050919050565b610402816103e7565b82525050565b600060208201905061041d60008301846103f9565b92915050565b600080fd5b610431816103e7565b811461043c57600080fd5b50565b60008135905061044e81610428565b92915050565b60006020828403121561046a57610469610423565b5b60006104788482850161043f565b91505092915050565b60008115159050919050565b61049681610481565b82525050565b60006020820190506104b1600083018461048d565b92915050565b6104c081610481565b81146104cb57600080fd5b50565b6000813590506104dd816104b7565b92915050565b600080604083850312156104fa576104f9610423565b5b60006105088582860161043f565b9250506020610519858286016104ce565b9150509250929050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610590602683610523565b915061059b82610534565b604082019050919050565b600060208201905081810360008301526105bf81610583565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006105fc602083610523565b9150610607826105c6565b602082019050919050565b6000602082019050818103600083015261062b816105ef565b905091905056fea2646970667358221220da781f2e50869f2ebea1b0a87186e99c0ed2d303ce56933c5616ddcfcde426ad64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x715018A6 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x84 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0xB4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xD0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0xEC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH2 0x100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x408 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x99 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x129 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAB SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xCE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC9 SWAP2 SWAP1 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x149 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x1FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF4 PUSH2 0x27D JUMP JUMPDEST PUSH2 0xFE PUSH1 0x0 PUSH2 0x2FB JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x151 PUSH2 0x27D JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1EE SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x202 PUSH2 0x27D JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x271 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x268 SWAP1 PUSH2 0x5A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x27A DUP2 PUSH2 0x2FB JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x285 PUSH2 0x3BF JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2A3 PUSH2 0x100 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F0 SWAP1 PUSH2 0x612 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F2 DUP3 PUSH2 0x3C7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x402 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x431 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x43C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x44E DUP2 PUSH2 0x428 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x46A JUMPI PUSH2 0x469 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x478 DUP5 DUP3 DUP6 ADD PUSH2 0x43F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x496 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4B1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x48D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C0 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP2 EQ PUSH2 0x4CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4DD DUP2 PUSH2 0x4B7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4FA JUMPI PUSH2 0x4F9 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x508 DUP6 DUP3 DUP7 ADD PUSH2 0x43F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x519 DUP6 DUP3 DUP7 ADD PUSH2 0x4CE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x590 PUSH1 0x26 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x59B DUP3 PUSH2 0x534 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5BF DUP2 PUSH2 0x583 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FC PUSH1 0x20 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x607 DUP3 PUSH2 0x5C6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62B DUP2 PUSH2 0x5EF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDA PUSH25 0x1F2E50869F2EBEA1B0A87186E99C0ED2D303CE56933C5616DD 0xCF 0xCD 0xE4 0x26 0xAD PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "79:510:40:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1824:101:50;;;:::i;:::-;;1201:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;118:43:40;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;410:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2074:198:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1824:101;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1201:85::-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;118:43:40:-;;;;;;;;;;;;;;;;;;;;;;:::o;410:177::-;1094:13:50;:11;:13::i;:::-;520:7:40::1;494:11;:23;506:10;494:23;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;560:10;542:38;;;572:7;542:38;;;;;;:::i;:::-;;;;;;;;410:177:::0;;:::o;2074:198:50:-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1359:130::-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;2426:187::-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;7:126:74:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;674:117::-;783:1;780;773:12;920:122;993:24;1011:5;993:24;:::i;:::-;986:5;983:35;973:63;;1032:1;1029;1022:12;973:63;920:122;:::o;1048:139::-;1094:5;1132:6;1119:20;1110:29;;1148:33;1175:5;1148:33;:::i;:::-;1048:139;;;;:::o;1193:329::-;1252:6;1301:2;1289:9;1280:7;1276:23;1272:32;1269:119;;;1307:79;;:::i;:::-;1269:119;1427:1;1452:53;1497:7;1488:6;1477:9;1473:22;1452:53;:::i;:::-;1442:63;;1398:117;1193:329;;;;:::o;1528:90::-;1562:7;1605:5;1598:13;1591:21;1580:32;;1528:90;;;:::o;1624:109::-;1705:21;1720:5;1705:21;:::i;:::-;1700:3;1693:34;1624:109;;:::o;1739:210::-;1826:4;1864:2;1853:9;1849:18;1841:26;;1877:65;1939:1;1928:9;1924:17;1915:6;1877:65;:::i;:::-;1739:210;;;;:::o;1955:116::-;2025:21;2040:5;2025:21;:::i;:::-;2018:5;2015:32;2005:60;;2061:1;2058;2051:12;2005:60;1955:116;:::o;2077:133::-;2120:5;2158:6;2145:20;2136:29;;2174:30;2198:5;2174:30;:::i;:::-;2077:133;;;;:::o;2216:468::-;2281:6;2289;2338:2;2326:9;2317:7;2313:23;2309:32;2306:119;;;2344:79;;:::i;:::-;2306:119;2464:1;2489:53;2534:7;2525:6;2514:9;2510:22;2489:53;:::i;:::-;2479:63;;2435:117;2591:2;2617:50;2659:7;2650:6;2639:9;2635:22;2617:50;:::i;:::-;2607:60;;2562:115;2216:468;;;;;:::o;2690:169::-;2774:11;2808:6;2803:3;2796:19;2848:4;2843:3;2839:14;2824:29;;2690:169;;;;:::o;2865:225::-;3005:34;3001:1;2993:6;2989:14;2982:58;3074:8;3069:2;3061:6;3057:15;3050:33;2865:225;:::o;3096:366::-;3238:3;3259:67;3323:2;3318:3;3259:67;:::i;:::-;3252:74;;3335:93;3424:3;3335:93;:::i;:::-;3453:2;3448:3;3444:12;3437:19;;3096:366;;;:::o;3468:419::-;3634:4;3672:2;3661:9;3657:18;3649:26;;3721:9;3715:4;3711:20;3707:1;3696:9;3692:17;3685:47;3749:131;3875:4;3749:131;:::i;:::-;3741:139;;3468:419;;;:::o;3893:182::-;4033:34;4029:1;4021:6;4017:14;4010:58;3893:182;:::o;4081:366::-;4223:3;4244:67;4308:2;4303:3;4244:67;:::i;:::-;4237:74;;4320:93;4409:3;4320:93;:::i;:::-;4438:2;4433:3;4429:12;4422:19;;4081:366;;;:::o;4453:419::-;4619:4;4657:2;4646:9;4642:18;4634:26;;4706:9;4700:4;4696:20;4692:1;4681:9;4677:17;4670:47;4734:131;4860:4;4734:131;:::i;:::-;4726:139;;4453:419;;;:::o" + }, + "methodIdentifiers": { + "controllers(address)": "da8c229e", + "owner()": "8da5cb5b", + "renounceOwnership()": "715018a6", + "setController(address,bool)": "e0dba60f", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"}],\"name\":\"ControllerChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"controllers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"}],\"name\":\"setController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/root/Controllable.sol\":\"Controllable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/root/Controllable.sol\":{\"keccak256\":\"0xb19b8c0fafe9ca2b4bf8aaafee486fa31437672e1e1977bdf84bfe03464969db\",\"urls\":[\"bzz-raw://cd365d76a131b89fa0f6b4097e63032337d2c071c082f5b9ca4af85cd16b3350\",\"dweb:/ipfs/QmXcgvgArVaK9k4wfzEj2rGu86W6U3BAY8mw8jVaAwJpFH\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol": { + "BytesUtils": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "offset", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "OffsetOutOfBoundsError", + "type": "error" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212204acb2974e647688365e59eb823df60697e87194afe21a5cbe38e555e054ae4c564736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBBASEFEE 0xCB 0x29 PUSH21 0xE647688365E59EB823DF60697E87194AFE21A5CBE3 DUP15 SSTORE MCOPY SDIV BLOBBASEFEE 0xE4 0xC5 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "56:14399:41:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212204acb2974e647688365e59eb823df60697e87194afe21a5cbe38e555e054ae4c564736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBBASEFEE 0xCB 0x29 PUSH21 0xE647688365E59EB823DF60697E87194AFE21A5CBE3 DUP15 SSTORE MCOPY SDIV BLOBBASEFEE 0xE4 0xC5 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "56:14399:41:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"offset\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"OffsetOutOfBoundsError\",\"type\":\"error\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":\"BytesUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol": { + "ERC20Recoverable": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "recoverFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 50, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 58, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b5061002d61002261003260201b60201c565b61003a60201b60201c565b6100fe565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61066c8061010d6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a61461006d5780638da5cb5b14610077578063f2fde38b14610095575b600080fd5b61006b600480360381019061006691906103e0565b6100b1565b005b61007561013d565b005b61007f610151565b60405161008c9190610442565b60405180910390f35b6100af60048036038101906100aa919061045d565b61017a565b005b6100b96101fd565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016100f4929190610499565b6020604051808303816000875af1158015610113573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013791906104fa565b50505050565b6101456101fd565b61014f600061027b565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6101826101fd565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101e8906105aa565b60405180910390fd5b6101fa8161027b565b50565b61020561033f565b73ffffffffffffffffffffffffffffffffffffffff16610223610151565b73ffffffffffffffffffffffffffffffffffffffff1614610279576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027090610616565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103778261034c565b9050919050565b6103878161036c565b811461039257600080fd5b50565b6000813590506103a48161037e565b92915050565b6000819050919050565b6103bd816103aa565b81146103c857600080fd5b50565b6000813590506103da816103b4565b92915050565b6000806000606084860312156103f9576103f8610347565b5b600061040786828701610395565b935050602061041886828701610395565b9250506040610429868287016103cb565b9150509250925092565b61043c8161036c565b82525050565b60006020820190506104576000830184610433565b92915050565b60006020828403121561047357610472610347565b5b600061048184828501610395565b91505092915050565b610493816103aa565b82525050565b60006040820190506104ae6000830185610433565b6104bb602083018461048a565b9392505050565b60008115159050919050565b6104d7816104c2565b81146104e257600080fd5b50565b6000815190506104f4816104ce565b92915050565b6000602082840312156105105761050f610347565b5b600061051e848285016104e5565b91505092915050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610594602683610527565b915061059f82610538565b604082019050919050565b600060208201905081810360008301526105c381610587565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610600602083610527565b915061060b826105ca565b602082019050919050565b6000602082019050818103600083015261062f816105f3565b905091905056fea2646970667358221220367af58b2dff766a57537ade1c9d714011704d382c6bbd7645a8171602d2c46364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2D PUSH2 0x22 PUSH2 0x32 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x3A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0xFE JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0x66C DUP1 PUSH2 0x10D PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5D3590D5 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x77 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x3E0 JUMP JUMPDEST PUSH2 0xB1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x13D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7F PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8C SWAP2 SWAP1 PUSH2 0x442 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xAF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x45D JUMP JUMPDEST PUSH2 0x17A JUMP JUMPDEST STOP JUMPDEST PUSH2 0xB9 PUSH2 0x1FD JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF4 SWAP3 SWAP2 SWAP1 PUSH2 0x499 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x113 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x137 SWAP2 SWAP1 PUSH2 0x4FA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x145 PUSH2 0x1FD JUMP JUMPDEST PUSH2 0x14F PUSH1 0x0 PUSH2 0x27B JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x182 PUSH2 0x1FD JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1F1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E8 SWAP1 PUSH2 0x5AA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1FA DUP2 PUSH2 0x27B JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x205 PUSH2 0x33F JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x223 PUSH2 0x151 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x279 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x270 SWAP1 PUSH2 0x616 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x377 DUP3 PUSH2 0x34C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x387 DUP2 PUSH2 0x36C JUMP JUMPDEST DUP2 EQ PUSH2 0x392 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3A4 DUP2 PUSH2 0x37E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3BD DUP2 PUSH2 0x3AA JUMP JUMPDEST DUP2 EQ PUSH2 0x3C8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3DA DUP2 PUSH2 0x3B4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3F9 JUMPI PUSH2 0x3F8 PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x407 DUP7 DUP3 DUP8 ADD PUSH2 0x395 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x418 DUP7 DUP3 DUP8 ADD PUSH2 0x395 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x429 DUP7 DUP3 DUP8 ADD PUSH2 0x3CB JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x43C DUP2 PUSH2 0x36C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x457 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x433 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x473 JUMPI PUSH2 0x472 PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x481 DUP5 DUP3 DUP6 ADD PUSH2 0x395 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x493 DUP2 PUSH2 0x3AA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x4AE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x433 JUMP JUMPDEST PUSH2 0x4BB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x48A JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4D7 DUP2 PUSH2 0x4C2 JUMP JUMPDEST DUP2 EQ PUSH2 0x4E2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4F4 DUP2 PUSH2 0x4CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x510 JUMPI PUSH2 0x50F PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x51E DUP5 DUP3 DUP6 ADD PUSH2 0x4E5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x594 PUSH1 0x26 DUP4 PUSH2 0x527 JUMP JUMPDEST SWAP2 POP PUSH2 0x59F DUP3 PUSH2 0x538 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5C3 DUP2 PUSH2 0x587 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x600 PUSH1 0x20 DUP4 PUSH2 0x527 JUMP JUMPDEST SWAP2 POP PUSH2 0x60B DUP3 PUSH2 0x5CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62F DUP2 PUSH2 0x5F3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLDATASIZE PUSH27 0xF58B2DFF766A57537ADE1C9D714011704D382C6BBD7645A8171602 0xD2 0xC4 PUSH4 0x64736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "271:535:42:-:0;;;;;;;;;;;;;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;271:535:42;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;271:535:42:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_checkOwner_13109": { + "entryPoint": 509, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 831, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 635, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@owner_13095": { + "entryPoint": 337, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@recoverFunds_8637": { + "entryPoint": 177, + "id": 8637, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@renounceOwnership_13123": { + "entryPoint": 317, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@transferOwnership_13146": { + "entryPoint": 378, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_address": { + "entryPoint": 917, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool_fromMemory": { + "entryPoint": 1253, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 971, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 1117, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 992, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 1274, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 1075, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1415, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1523, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 1162, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 1090, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed": { + "entryPoint": 1177, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1450, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1558, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1319, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 876, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 1218, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 844, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 938, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 839, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 1336, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 1482, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 894, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 1230, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 948, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:5868:74", + "nodeType": "YulBlock", + "src": "0:5868:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "611:79:74", + "nodeType": "YulBlock", + "src": "611:79:74", + "statements": [ + { + "body": { + "nativeSrc": "668:16:74", + "nodeType": "YulBlock", + "src": "668:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "677:1:74", + "nodeType": "YulLiteral", + "src": "677:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "680:1:74", + "nodeType": "YulLiteral", + "src": "680:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "670:6:74", + "nodeType": "YulIdentifier", + "src": "670:6:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulFunctionCall", + "src": "670:12:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulExpressionStatement", + "src": "670:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "634:5:74", + "nodeType": "YulIdentifier", + "src": "634:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "659:5:74", + "nodeType": "YulIdentifier", + "src": "659:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "641:17:74", + "nodeType": "YulIdentifier", + "src": "641:17:74" + }, + "nativeSrc": "641:24:74", + "nodeType": "YulFunctionCall", + "src": "641:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "631:2:74", + "nodeType": "YulIdentifier", + "src": "631:2:74" + }, + "nativeSrc": "631:35:74", + "nodeType": "YulFunctionCall", + "src": "631:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "624:6:74", + "nodeType": "YulIdentifier", + "src": "624:6:74" + }, + "nativeSrc": "624:43:74", + "nodeType": "YulFunctionCall", + "src": "624:43:74" + }, + "nativeSrc": "621:63:74", + "nodeType": "YulIf", + "src": "621:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "568:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "604:5:74", + "nodeType": "YulTypedName", + "src": "604:5:74", + "type": "" + } + ], + "src": "568:122:74" + }, + { + "body": { + "nativeSrc": "748:87:74", + "nodeType": "YulBlock", + "src": "748:87:74", + "statements": [ + { + "nativeSrc": "758:29:74", + "nodeType": "YulAssignment", + "src": "758:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "780:6:74", + "nodeType": "YulIdentifier", + "src": "780:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "767:12:74", + "nodeType": "YulIdentifier", + "src": "767:12:74" + }, + "nativeSrc": "767:20:74", + "nodeType": "YulFunctionCall", + "src": "767:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "758:5:74", + "nodeType": "YulIdentifier", + "src": "758:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "823:5:74", + "nodeType": "YulIdentifier", + "src": "823:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "796:26:74", + "nodeType": "YulIdentifier", + "src": "796:26:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulFunctionCall", + "src": "796:33:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulExpressionStatement", + "src": "796:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "696:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "726:6:74", + "nodeType": "YulTypedName", + "src": "726:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "734:3:74", + "nodeType": "YulTypedName", + "src": "734:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "742:5:74", + "nodeType": "YulTypedName", + "src": "742:5:74", + "type": "" + } + ], + "src": "696:139:74" + }, + { + "body": { + "nativeSrc": "886:32:74", + "nodeType": "YulBlock", + "src": "886:32:74", + "statements": [ + { + "nativeSrc": "896:16:74", + "nodeType": "YulAssignment", + "src": "896:16:74", + "value": { + "name": "value", + "nativeSrc": "907:5:74", + "nodeType": "YulIdentifier", + "src": "907:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "896:7:74", + "nodeType": "YulIdentifier", + "src": "896:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "841:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "868:5:74", + "nodeType": "YulTypedName", + "src": "868:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "878:7:74", + "nodeType": "YulTypedName", + "src": "878:7:74", + "type": "" + } + ], + "src": "841:77:74" + }, + { + "body": { + "nativeSrc": "967:79:74", + "nodeType": "YulBlock", + "src": "967:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1024:16:74", + "nodeType": "YulBlock", + "src": "1024:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1033:1:74", + "nodeType": "YulLiteral", + "src": "1033:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1036:1:74", + "nodeType": "YulLiteral", + "src": "1036:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1026:6:74", + "nodeType": "YulIdentifier", + "src": "1026:6:74" + }, + "nativeSrc": "1026:12:74", + "nodeType": "YulFunctionCall", + "src": "1026:12:74" + }, + "nativeSrc": "1026:12:74", + "nodeType": "YulExpressionStatement", + "src": "1026:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "990:5:74", + "nodeType": "YulIdentifier", + "src": "990:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1015:5:74", + "nodeType": "YulIdentifier", + "src": "1015:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "997:17:74", + "nodeType": "YulIdentifier", + "src": "997:17:74" + }, + "nativeSrc": "997:24:74", + "nodeType": "YulFunctionCall", + "src": "997:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "987:2:74", + "nodeType": "YulIdentifier", + "src": "987:2:74" + }, + "nativeSrc": "987:35:74", + "nodeType": "YulFunctionCall", + "src": "987:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "980:6:74", + "nodeType": "YulIdentifier", + "src": "980:6:74" + }, + "nativeSrc": "980:43:74", + "nodeType": "YulFunctionCall", + "src": "980:43:74" + }, + "nativeSrc": "977:63:74", + "nodeType": "YulIf", + "src": "977:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "924:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "960:5:74", + "nodeType": "YulTypedName", + "src": "960:5:74", + "type": "" + } + ], + "src": "924:122:74" + }, + { + "body": { + "nativeSrc": "1104:87:74", + "nodeType": "YulBlock", + "src": "1104:87:74", + "statements": [ + { + "nativeSrc": "1114:29:74", + "nodeType": "YulAssignment", + "src": "1114:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1136:6:74", + "nodeType": "YulIdentifier", + "src": "1136:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1123:12:74", + "nodeType": "YulIdentifier", + "src": "1123:12:74" + }, + "nativeSrc": "1123:20:74", + "nodeType": "YulFunctionCall", + "src": "1123:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1114:5:74", + "nodeType": "YulIdentifier", + "src": "1114:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1179:5:74", + "nodeType": "YulIdentifier", + "src": "1179:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "1152:26:74", + "nodeType": "YulIdentifier", + "src": "1152:26:74" + }, + "nativeSrc": "1152:33:74", + "nodeType": "YulFunctionCall", + "src": "1152:33:74" + }, + "nativeSrc": "1152:33:74", + "nodeType": "YulExpressionStatement", + "src": "1152:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "1052:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1082:6:74", + "nodeType": "YulTypedName", + "src": "1082:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1090:3:74", + "nodeType": "YulTypedName", + "src": "1090:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1098:5:74", + "nodeType": "YulTypedName", + "src": "1098:5:74", + "type": "" + } + ], + "src": "1052:139:74" + }, + { + "body": { + "nativeSrc": "1297:519:74", + "nodeType": "YulBlock", + "src": "1297:519:74", + "statements": [ + { + "body": { + "nativeSrc": "1343:83:74", + "nodeType": "YulBlock", + "src": "1343:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1345:77:74", + "nodeType": "YulIdentifier", + "src": "1345:77:74" + }, + "nativeSrc": "1345:79:74", + "nodeType": "YulFunctionCall", + "src": "1345:79:74" + }, + "nativeSrc": "1345:79:74", + "nodeType": "YulExpressionStatement", + "src": "1345:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1318:7:74", + "nodeType": "YulIdentifier", + "src": "1318:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1327:9:74", + "nodeType": "YulIdentifier", + "src": "1327:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1314:3:74", + "nodeType": "YulIdentifier", + "src": "1314:3:74" + }, + "nativeSrc": "1314:23:74", + "nodeType": "YulFunctionCall", + "src": "1314:23:74" + }, + { + "kind": "number", + "nativeSrc": "1339:2:74", + "nodeType": "YulLiteral", + "src": "1339:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1310:3:74", + "nodeType": "YulIdentifier", + "src": "1310:3:74" + }, + "nativeSrc": "1310:32:74", + "nodeType": "YulFunctionCall", + "src": "1310:32:74" + }, + "nativeSrc": "1307:119:74", + "nodeType": "YulIf", + "src": "1307:119:74" + }, + { + "nativeSrc": "1436:117:74", + "nodeType": "YulBlock", + "src": "1436:117:74", + "statements": [ + { + "nativeSrc": "1451:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1451:15:74", + "value": { + "kind": "number", + "nativeSrc": "1465:1:74", + "nodeType": "YulLiteral", + "src": "1465:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1455:6:74", + "nodeType": "YulTypedName", + "src": "1455:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1480:63:74", + "nodeType": "YulAssignment", + "src": "1480:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1515:9:74", + "nodeType": "YulIdentifier", + "src": "1515:9:74" + }, + { + "name": "offset", + "nativeSrc": "1526:6:74", + "nodeType": "YulIdentifier", + "src": "1526:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1511:3:74", + "nodeType": "YulIdentifier", + "src": "1511:3:74" + }, + "nativeSrc": "1511:22:74", + "nodeType": "YulFunctionCall", + "src": "1511:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1535:7:74", + "nodeType": "YulIdentifier", + "src": "1535:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1490:20:74", + "nodeType": "YulIdentifier", + "src": "1490:20:74" + }, + "nativeSrc": "1490:53:74", + "nodeType": "YulFunctionCall", + "src": "1490:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1480:6:74", + "nodeType": "YulIdentifier", + "src": "1480:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1563:118:74", + "nodeType": "YulBlock", + "src": "1563:118:74", + "statements": [ + { + "nativeSrc": "1578:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1578:16:74", + "value": { + "kind": "number", + "nativeSrc": "1592:2:74", + "nodeType": "YulLiteral", + "src": "1592:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1582:6:74", + "nodeType": "YulTypedName", + "src": "1582:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1608:63:74", + "nodeType": "YulAssignment", + "src": "1608:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1643:9:74", + "nodeType": "YulIdentifier", + "src": "1643:9:74" + }, + { + "name": "offset", + "nativeSrc": "1654:6:74", + "nodeType": "YulIdentifier", + "src": "1654:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1639:3:74", + "nodeType": "YulIdentifier", + "src": "1639:3:74" + }, + "nativeSrc": "1639:22:74", + "nodeType": "YulFunctionCall", + "src": "1639:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1663:7:74", + "nodeType": "YulIdentifier", + "src": "1663:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1618:20:74", + "nodeType": "YulIdentifier", + "src": "1618:20:74" + }, + "nativeSrc": "1618:53:74", + "nodeType": "YulFunctionCall", + "src": "1618:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1608:6:74", + "nodeType": "YulIdentifier", + "src": "1608:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1691:118:74", + "nodeType": "YulBlock", + "src": "1691:118:74", + "statements": [ + { + "nativeSrc": "1706:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1706:16:74", + "value": { + "kind": "number", + "nativeSrc": "1720:2:74", + "nodeType": "YulLiteral", + "src": "1720:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1710:6:74", + "nodeType": "YulTypedName", + "src": "1710:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1736:63:74", + "nodeType": "YulAssignment", + "src": "1736:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1771:9:74", + "nodeType": "YulIdentifier", + "src": "1771:9:74" + }, + { + "name": "offset", + "nativeSrc": "1782:6:74", + "nodeType": "YulIdentifier", + "src": "1782:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1767:3:74", + "nodeType": "YulIdentifier", + "src": "1767:3:74" + }, + "nativeSrc": "1767:22:74", + "nodeType": "YulFunctionCall", + "src": "1767:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1791:7:74", + "nodeType": "YulIdentifier", + "src": "1791:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "1746:20:74", + "nodeType": "YulIdentifier", + "src": "1746:20:74" + }, + "nativeSrc": "1746:53:74", + "nodeType": "YulFunctionCall", + "src": "1746:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "1736:6:74", + "nodeType": "YulIdentifier", + "src": "1736:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nativeSrc": "1197:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1251:9:74", + "nodeType": "YulTypedName", + "src": "1251:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1262:7:74", + "nodeType": "YulTypedName", + "src": "1262:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1274:6:74", + "nodeType": "YulTypedName", + "src": "1274:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1282:6:74", + "nodeType": "YulTypedName", + "src": "1282:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "1290:6:74", + "nodeType": "YulTypedName", + "src": "1290:6:74", + "type": "" + } + ], + "src": "1197:619:74" + }, + { + "body": { + "nativeSrc": "1887:53:74", + "nodeType": "YulBlock", + "src": "1887:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1904:3:74", + "nodeType": "YulIdentifier", + "src": "1904:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1927:5:74", + "nodeType": "YulIdentifier", + "src": "1927:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1909:17:74", + "nodeType": "YulIdentifier", + "src": "1909:17:74" + }, + "nativeSrc": "1909:24:74", + "nodeType": "YulFunctionCall", + "src": "1909:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1897:6:74", + "nodeType": "YulIdentifier", + "src": "1897:6:74" + }, + "nativeSrc": "1897:37:74", + "nodeType": "YulFunctionCall", + "src": "1897:37:74" + }, + "nativeSrc": "1897:37:74", + "nodeType": "YulExpressionStatement", + "src": "1897:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "1822:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1875:5:74", + "nodeType": "YulTypedName", + "src": "1875:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1882:3:74", + "nodeType": "YulTypedName", + "src": "1882:3:74", + "type": "" + } + ], + "src": "1822:118:74" + }, + { + "body": { + "nativeSrc": "2044:124:74", + "nodeType": "YulBlock", + "src": "2044:124:74", + "statements": [ + { + "nativeSrc": "2054:26:74", + "nodeType": "YulAssignment", + "src": "2054:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2066:9:74", + "nodeType": "YulIdentifier", + "src": "2066:9:74" + }, + { + "kind": "number", + "nativeSrc": "2077:2:74", + "nodeType": "YulLiteral", + "src": "2077:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2062:3:74", + "nodeType": "YulIdentifier", + "src": "2062:3:74" + }, + "nativeSrc": "2062:18:74", + "nodeType": "YulFunctionCall", + "src": "2062:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2054:4:74", + "nodeType": "YulIdentifier", + "src": "2054:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2134:6:74", + "nodeType": "YulIdentifier", + "src": "2134:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2147:9:74", + "nodeType": "YulIdentifier", + "src": "2147:9:74" + }, + { + "kind": "number", + "nativeSrc": "2158:1:74", + "nodeType": "YulLiteral", + "src": "2158:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2143:3:74", + "nodeType": "YulIdentifier", + "src": "2143:3:74" + }, + "nativeSrc": "2143:17:74", + "nodeType": "YulFunctionCall", + "src": "2143:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2090:43:74", + "nodeType": "YulIdentifier", + "src": "2090:43:74" + }, + "nativeSrc": "2090:71:74", + "nodeType": "YulFunctionCall", + "src": "2090:71:74" + }, + "nativeSrc": "2090:71:74", + "nodeType": "YulExpressionStatement", + "src": "2090:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "1946:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2016:9:74", + "nodeType": "YulTypedName", + "src": "2016:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2028:6:74", + "nodeType": "YulTypedName", + "src": "2028:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2039:4:74", + "nodeType": "YulTypedName", + "src": "2039:4:74", + "type": "" + } + ], + "src": "1946:222:74" + }, + { + "body": { + "nativeSrc": "2240:263:74", + "nodeType": "YulBlock", + "src": "2240:263:74", + "statements": [ + { + "body": { + "nativeSrc": "2286:83:74", + "nodeType": "YulBlock", + "src": "2286:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2288:77:74", + "nodeType": "YulIdentifier", + "src": "2288:77:74" + }, + "nativeSrc": "2288:79:74", + "nodeType": "YulFunctionCall", + "src": "2288:79:74" + }, + "nativeSrc": "2288:79:74", + "nodeType": "YulExpressionStatement", + "src": "2288:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2261:7:74", + "nodeType": "YulIdentifier", + "src": "2261:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2270:9:74", + "nodeType": "YulIdentifier", + "src": "2270:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2257:3:74", + "nodeType": "YulIdentifier", + "src": "2257:3:74" + }, + "nativeSrc": "2257:23:74", + "nodeType": "YulFunctionCall", + "src": "2257:23:74" + }, + { + "kind": "number", + "nativeSrc": "2282:2:74", + "nodeType": "YulLiteral", + "src": "2282:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2253:3:74", + "nodeType": "YulIdentifier", + "src": "2253:3:74" + }, + "nativeSrc": "2253:32:74", + "nodeType": "YulFunctionCall", + "src": "2253:32:74" + }, + "nativeSrc": "2250:119:74", + "nodeType": "YulIf", + "src": "2250:119:74" + }, + { + "nativeSrc": "2379:117:74", + "nodeType": "YulBlock", + "src": "2379:117:74", + "statements": [ + { + "nativeSrc": "2394:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2394:15:74", + "value": { + "kind": "number", + "nativeSrc": "2408:1:74", + "nodeType": "YulLiteral", + "src": "2408:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2398:6:74", + "nodeType": "YulTypedName", + "src": "2398:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2423:63:74", + "nodeType": "YulAssignment", + "src": "2423:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2458:9:74", + "nodeType": "YulIdentifier", + "src": "2458:9:74" + }, + { + "name": "offset", + "nativeSrc": "2469:6:74", + "nodeType": "YulIdentifier", + "src": "2469:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2454:3:74", + "nodeType": "YulIdentifier", + "src": "2454:3:74" + }, + "nativeSrc": "2454:22:74", + "nodeType": "YulFunctionCall", + "src": "2454:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2478:7:74", + "nodeType": "YulIdentifier", + "src": "2478:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "2433:20:74", + "nodeType": "YulIdentifier", + "src": "2433:20:74" + }, + "nativeSrc": "2433:53:74", + "nodeType": "YulFunctionCall", + "src": "2433:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2423:6:74", + "nodeType": "YulIdentifier", + "src": "2423:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "2174:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2210:9:74", + "nodeType": "YulTypedName", + "src": "2210:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2221:7:74", + "nodeType": "YulTypedName", + "src": "2221:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2233:6:74", + "nodeType": "YulTypedName", + "src": "2233:6:74", + "type": "" + } + ], + "src": "2174:329:74" + }, + { + "body": { + "nativeSrc": "2574:53:74", + "nodeType": "YulBlock", + "src": "2574:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2591:3:74", + "nodeType": "YulIdentifier", + "src": "2591:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2614:5:74", + "nodeType": "YulIdentifier", + "src": "2614:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "2596:17:74", + "nodeType": "YulIdentifier", + "src": "2596:17:74" + }, + "nativeSrc": "2596:24:74", + "nodeType": "YulFunctionCall", + "src": "2596:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2584:6:74", + "nodeType": "YulIdentifier", + "src": "2584:6:74" + }, + "nativeSrc": "2584:37:74", + "nodeType": "YulFunctionCall", + "src": "2584:37:74" + }, + "nativeSrc": "2584:37:74", + "nodeType": "YulExpressionStatement", + "src": "2584:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "2509:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2562:5:74", + "nodeType": "YulTypedName", + "src": "2562:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2569:3:74", + "nodeType": "YulTypedName", + "src": "2569:3:74", + "type": "" + } + ], + "src": "2509:118:74" + }, + { + "body": { + "nativeSrc": "2759:206:74", + "nodeType": "YulBlock", + "src": "2759:206:74", + "statements": [ + { + "nativeSrc": "2769:26:74", + "nodeType": "YulAssignment", + "src": "2769:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2781:9:74", + "nodeType": "YulIdentifier", + "src": "2781:9:74" + }, + { + "kind": "number", + "nativeSrc": "2792:2:74", + "nodeType": "YulLiteral", + "src": "2792:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2777:3:74", + "nodeType": "YulIdentifier", + "src": "2777:3:74" + }, + "nativeSrc": "2777:18:74", + "nodeType": "YulFunctionCall", + "src": "2777:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2769:4:74", + "nodeType": "YulIdentifier", + "src": "2769:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2849:6:74", + "nodeType": "YulIdentifier", + "src": "2849:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2862:9:74", + "nodeType": "YulIdentifier", + "src": "2862:9:74" + }, + { + "kind": "number", + "nativeSrc": "2873:1:74", + "nodeType": "YulLiteral", + "src": "2873:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2858:3:74", + "nodeType": "YulIdentifier", + "src": "2858:3:74" + }, + "nativeSrc": "2858:17:74", + "nodeType": "YulFunctionCall", + "src": "2858:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2805:43:74", + "nodeType": "YulIdentifier", + "src": "2805:43:74" + }, + "nativeSrc": "2805:71:74", + "nodeType": "YulFunctionCall", + "src": "2805:71:74" + }, + "nativeSrc": "2805:71:74", + "nodeType": "YulExpressionStatement", + "src": "2805:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "2930:6:74", + "nodeType": "YulIdentifier", + "src": "2930:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2943:9:74", + "nodeType": "YulIdentifier", + "src": "2943:9:74" + }, + { + "kind": "number", + "nativeSrc": "2954:2:74", + "nodeType": "YulLiteral", + "src": "2954:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2939:3:74", + "nodeType": "YulIdentifier", + "src": "2939:3:74" + }, + "nativeSrc": "2939:18:74", + "nodeType": "YulFunctionCall", + "src": "2939:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "2886:43:74", + "nodeType": "YulIdentifier", + "src": "2886:43:74" + }, + "nativeSrc": "2886:72:74", + "nodeType": "YulFunctionCall", + "src": "2886:72:74" + }, + "nativeSrc": "2886:72:74", + "nodeType": "YulExpressionStatement", + "src": "2886:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", + "nativeSrc": "2633:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2723:9:74", + "nodeType": "YulTypedName", + "src": "2723:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2735:6:74", + "nodeType": "YulTypedName", + "src": "2735:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2743:6:74", + "nodeType": "YulTypedName", + "src": "2743:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2754:4:74", + "nodeType": "YulTypedName", + "src": "2754:4:74", + "type": "" + } + ], + "src": "2633:332:74" + }, + { + "body": { + "nativeSrc": "3013:48:74", + "nodeType": "YulBlock", + "src": "3013:48:74", + "statements": [ + { + "nativeSrc": "3023:32:74", + "nodeType": "YulAssignment", + "src": "3023:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3048:5:74", + "nodeType": "YulIdentifier", + "src": "3048:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3041:6:74", + "nodeType": "YulIdentifier", + "src": "3041:6:74" + }, + "nativeSrc": "3041:13:74", + "nodeType": "YulFunctionCall", + "src": "3041:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3034:6:74", + "nodeType": "YulIdentifier", + "src": "3034:6:74" + }, + "nativeSrc": "3034:21:74", + "nodeType": "YulFunctionCall", + "src": "3034:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3023:7:74", + "nodeType": "YulIdentifier", + "src": "3023:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "2971:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2995:5:74", + "nodeType": "YulTypedName", + "src": "2995:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3005:7:74", + "nodeType": "YulTypedName", + "src": "3005:7:74", + "type": "" + } + ], + "src": "2971:90:74" + }, + { + "body": { + "nativeSrc": "3107:76:74", + "nodeType": "YulBlock", + "src": "3107:76:74", + "statements": [ + { + "body": { + "nativeSrc": "3161:16:74", + "nodeType": "YulBlock", + "src": "3161:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3170:1:74", + "nodeType": "YulLiteral", + "src": "3170:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3173:1:74", + "nodeType": "YulLiteral", + "src": "3173:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3163:6:74", + "nodeType": "YulIdentifier", + "src": "3163:6:74" + }, + "nativeSrc": "3163:12:74", + "nodeType": "YulFunctionCall", + "src": "3163:12:74" + }, + "nativeSrc": "3163:12:74", + "nodeType": "YulExpressionStatement", + "src": "3163:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3130:5:74", + "nodeType": "YulIdentifier", + "src": "3130:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3152:5:74", + "nodeType": "YulIdentifier", + "src": "3152:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "3137:14:74", + "nodeType": "YulIdentifier", + "src": "3137:14:74" + }, + "nativeSrc": "3137:21:74", + "nodeType": "YulFunctionCall", + "src": "3137:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3127:2:74", + "nodeType": "YulIdentifier", + "src": "3127:2:74" + }, + "nativeSrc": "3127:32:74", + "nodeType": "YulFunctionCall", + "src": "3127:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3120:6:74", + "nodeType": "YulIdentifier", + "src": "3120:6:74" + }, + "nativeSrc": "3120:40:74", + "nodeType": "YulFunctionCall", + "src": "3120:40:74" + }, + "nativeSrc": "3117:60:74", + "nodeType": "YulIf", + "src": "3117:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "3067:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3100:5:74", + "nodeType": "YulTypedName", + "src": "3100:5:74", + "type": "" + } + ], + "src": "3067:116:74" + }, + { + "body": { + "nativeSrc": "3249:77:74", + "nodeType": "YulBlock", + "src": "3249:77:74", + "statements": [ + { + "nativeSrc": "3259:22:74", + "nodeType": "YulAssignment", + "src": "3259:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3274:6:74", + "nodeType": "YulIdentifier", + "src": "3274:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3268:5:74", + "nodeType": "YulIdentifier", + "src": "3268:5:74" + }, + "nativeSrc": "3268:13:74", + "nodeType": "YulFunctionCall", + "src": "3268:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3259:5:74", + "nodeType": "YulIdentifier", + "src": "3259:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3314:5:74", + "nodeType": "YulIdentifier", + "src": "3314:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "3290:23:74", + "nodeType": "YulIdentifier", + "src": "3290:23:74" + }, + "nativeSrc": "3290:30:74", + "nodeType": "YulFunctionCall", + "src": "3290:30:74" + }, + "nativeSrc": "3290:30:74", + "nodeType": "YulExpressionStatement", + "src": "3290:30:74" + } + ] + }, + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "3189:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3227:6:74", + "nodeType": "YulTypedName", + "src": "3227:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3235:3:74", + "nodeType": "YulTypedName", + "src": "3235:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3243:5:74", + "nodeType": "YulTypedName", + "src": "3243:5:74", + "type": "" + } + ], + "src": "3189:137:74" + }, + { + "body": { + "nativeSrc": "3406:271:74", + "nodeType": "YulBlock", + "src": "3406:271:74", + "statements": [ + { + "body": { + "nativeSrc": "3452:83:74", + "nodeType": "YulBlock", + "src": "3452:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3454:77:74", + "nodeType": "YulIdentifier", + "src": "3454:77:74" + }, + "nativeSrc": "3454:79:74", + "nodeType": "YulFunctionCall", + "src": "3454:79:74" + }, + "nativeSrc": "3454:79:74", + "nodeType": "YulExpressionStatement", + "src": "3454:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3427:7:74", + "nodeType": "YulIdentifier", + "src": "3427:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3436:9:74", + "nodeType": "YulIdentifier", + "src": "3436:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3423:3:74", + "nodeType": "YulIdentifier", + "src": "3423:3:74" + }, + "nativeSrc": "3423:23:74", + "nodeType": "YulFunctionCall", + "src": "3423:23:74" + }, + { + "kind": "number", + "nativeSrc": "3448:2:74", + "nodeType": "YulLiteral", + "src": "3448:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3419:3:74", + "nodeType": "YulIdentifier", + "src": "3419:3:74" + }, + "nativeSrc": "3419:32:74", + "nodeType": "YulFunctionCall", + "src": "3419:32:74" + }, + "nativeSrc": "3416:119:74", + "nodeType": "YulIf", + "src": "3416:119:74" + }, + { + "nativeSrc": "3545:125:74", + "nodeType": "YulBlock", + "src": "3545:125:74", + "statements": [ + { + "nativeSrc": "3560:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3560:15:74", + "value": { + "kind": "number", + "nativeSrc": "3574:1:74", + "nodeType": "YulLiteral", + "src": "3574:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3564:6:74", + "nodeType": "YulTypedName", + "src": "3564:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3589:71:74", + "nodeType": "YulAssignment", + "src": "3589:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3632:9:74", + "nodeType": "YulIdentifier", + "src": "3632:9:74" + }, + { + "name": "offset", + "nativeSrc": "3643:6:74", + "nodeType": "YulIdentifier", + "src": "3643:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3628:3:74", + "nodeType": "YulIdentifier", + "src": "3628:3:74" + }, + "nativeSrc": "3628:22:74", + "nodeType": "YulFunctionCall", + "src": "3628:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3652:7:74", + "nodeType": "YulIdentifier", + "src": "3652:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "3599:28:74", + "nodeType": "YulIdentifier", + "src": "3599:28:74" + }, + "nativeSrc": "3599:61:74", + "nodeType": "YulFunctionCall", + "src": "3599:61:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3589:6:74", + "nodeType": "YulIdentifier", + "src": "3589:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nativeSrc": "3332:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3376:9:74", + "nodeType": "YulTypedName", + "src": "3376:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3387:7:74", + "nodeType": "YulTypedName", + "src": "3387:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3399:6:74", + "nodeType": "YulTypedName", + "src": "3399:6:74", + "type": "" + } + ], + "src": "3332:345:74" + }, + { + "body": { + "nativeSrc": "3779:73:74", + "nodeType": "YulBlock", + "src": "3779:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3796:3:74", + "nodeType": "YulIdentifier", + "src": "3796:3:74" + }, + { + "name": "length", + "nativeSrc": "3801:6:74", + "nodeType": "YulIdentifier", + "src": "3801:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3789:6:74", + "nodeType": "YulIdentifier", + "src": "3789:6:74" + }, + "nativeSrc": "3789:19:74", + "nodeType": "YulFunctionCall", + "src": "3789:19:74" + }, + "nativeSrc": "3789:19:74", + "nodeType": "YulExpressionStatement", + "src": "3789:19:74" + }, + { + "nativeSrc": "3817:29:74", + "nodeType": "YulAssignment", + "src": "3817:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3836:3:74", + "nodeType": "YulIdentifier", + "src": "3836:3:74" + }, + { + "kind": "number", + "nativeSrc": "3841:4:74", + "nodeType": "YulLiteral", + "src": "3841:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3832:3:74", + "nodeType": "YulIdentifier", + "src": "3832:3:74" + }, + "nativeSrc": "3832:14:74", + "nodeType": "YulFunctionCall", + "src": "3832:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "3817:11:74", + "nodeType": "YulIdentifier", + "src": "3817:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "3683:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3751:3:74", + "nodeType": "YulTypedName", + "src": "3751:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3756:6:74", + "nodeType": "YulTypedName", + "src": "3756:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "3767:11:74", + "nodeType": "YulTypedName", + "src": "3767:11:74", + "type": "" + } + ], + "src": "3683:169:74" + }, + { + "body": { + "nativeSrc": "3964:119:74", + "nodeType": "YulBlock", + "src": "3964:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "3986:6:74", + "nodeType": "YulIdentifier", + "src": "3986:6:74" + }, + { + "kind": "number", + "nativeSrc": "3994:1:74", + "nodeType": "YulLiteral", + "src": "3994:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3982:3:74", + "nodeType": "YulIdentifier", + "src": "3982:3:74" + }, + "nativeSrc": "3982:14:74", + "nodeType": "YulFunctionCall", + "src": "3982:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "3998:34:74", + "nodeType": "YulLiteral", + "src": "3998:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3975:6:74", + "nodeType": "YulIdentifier", + "src": "3975:6:74" + }, + "nativeSrc": "3975:58:74", + "nodeType": "YulFunctionCall", + "src": "3975:58:74" + }, + "nativeSrc": "3975:58:74", + "nodeType": "YulExpressionStatement", + "src": "3975:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4054:6:74", + "nodeType": "YulIdentifier", + "src": "4054:6:74" + }, + { + "kind": "number", + "nativeSrc": "4062:2:74", + "nodeType": "YulLiteral", + "src": "4062:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4050:3:74", + "nodeType": "YulIdentifier", + "src": "4050:3:74" + }, + "nativeSrc": "4050:15:74", + "nodeType": "YulFunctionCall", + "src": "4050:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "4067:8:74", + "nodeType": "YulLiteral", + "src": "4067:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4043:6:74", + "nodeType": "YulIdentifier", + "src": "4043:6:74" + }, + "nativeSrc": "4043:33:74", + "nodeType": "YulFunctionCall", + "src": "4043:33:74" + }, + "nativeSrc": "4043:33:74", + "nodeType": "YulExpressionStatement", + "src": "4043:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "3858:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "3956:6:74", + "nodeType": "YulTypedName", + "src": "3956:6:74", + "type": "" + } + ], + "src": "3858:225:74" + }, + { + "body": { + "nativeSrc": "4235:220:74", + "nodeType": "YulBlock", + "src": "4235:220:74", + "statements": [ + { + "nativeSrc": "4245:74:74", + "nodeType": "YulAssignment", + "src": "4245:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4311:3:74", + "nodeType": "YulIdentifier", + "src": "4311:3:74" + }, + { + "kind": "number", + "nativeSrc": "4316:2:74", + "nodeType": "YulLiteral", + "src": "4316:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "4252:58:74", + "nodeType": "YulIdentifier", + "src": "4252:58:74" + }, + "nativeSrc": "4252:67:74", + "nodeType": "YulFunctionCall", + "src": "4252:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4245:3:74", + "nodeType": "YulIdentifier", + "src": "4245:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4417:3:74", + "nodeType": "YulIdentifier", + "src": "4417:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "4328:88:74", + "nodeType": "YulIdentifier", + "src": "4328:88:74" + }, + "nativeSrc": "4328:93:74", + "nodeType": "YulFunctionCall", + "src": "4328:93:74" + }, + "nativeSrc": "4328:93:74", + "nodeType": "YulExpressionStatement", + "src": "4328:93:74" + }, + { + "nativeSrc": "4430:19:74", + "nodeType": "YulAssignment", + "src": "4430:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4441:3:74", + "nodeType": "YulIdentifier", + "src": "4441:3:74" + }, + { + "kind": "number", + "nativeSrc": "4446:2:74", + "nodeType": "YulLiteral", + "src": "4446:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4437:3:74", + "nodeType": "YulIdentifier", + "src": "4437:3:74" + }, + "nativeSrc": "4437:12:74", + "nodeType": "YulFunctionCall", + "src": "4437:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4430:3:74", + "nodeType": "YulIdentifier", + "src": "4430:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4089:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "4223:3:74", + "nodeType": "YulTypedName", + "src": "4223:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4231:3:74", + "nodeType": "YulTypedName", + "src": "4231:3:74", + "type": "" + } + ], + "src": "4089:366:74" + }, + { + "body": { + "nativeSrc": "4632:248:74", + "nodeType": "YulBlock", + "src": "4632:248:74", + "statements": [ + { + "nativeSrc": "4642:26:74", + "nodeType": "YulAssignment", + "src": "4642:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4654:9:74", + "nodeType": "YulIdentifier", + "src": "4654:9:74" + }, + { + "kind": "number", + "nativeSrc": "4665:2:74", + "nodeType": "YulLiteral", + "src": "4665:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4650:3:74", + "nodeType": "YulIdentifier", + "src": "4650:3:74" + }, + "nativeSrc": "4650:18:74", + "nodeType": "YulFunctionCall", + "src": "4650:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4642:4:74", + "nodeType": "YulIdentifier", + "src": "4642:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4689:9:74", + "nodeType": "YulIdentifier", + "src": "4689:9:74" + }, + { + "kind": "number", + "nativeSrc": "4700:1:74", + "nodeType": "YulLiteral", + "src": "4700:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4685:3:74", + "nodeType": "YulIdentifier", + "src": "4685:3:74" + }, + "nativeSrc": "4685:17:74", + "nodeType": "YulFunctionCall", + "src": "4685:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4708:4:74", + "nodeType": "YulIdentifier", + "src": "4708:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4714:9:74", + "nodeType": "YulIdentifier", + "src": "4714:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4704:3:74", + "nodeType": "YulIdentifier", + "src": "4704:3:74" + }, + "nativeSrc": "4704:20:74", + "nodeType": "YulFunctionCall", + "src": "4704:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4678:6:74", + "nodeType": "YulIdentifier", + "src": "4678:6:74" + }, + "nativeSrc": "4678:47:74", + "nodeType": "YulFunctionCall", + "src": "4678:47:74" + }, + "nativeSrc": "4678:47:74", + "nodeType": "YulExpressionStatement", + "src": "4678:47:74" + }, + { + "nativeSrc": "4734:139:74", + "nodeType": "YulAssignment", + "src": "4734:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4868:4:74", + "nodeType": "YulIdentifier", + "src": "4868:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4742:124:74", + "nodeType": "YulIdentifier", + "src": "4742:124:74" + }, + "nativeSrc": "4742:131:74", + "nodeType": "YulFunctionCall", + "src": "4742:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4734:4:74", + "nodeType": "YulIdentifier", + "src": "4734:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "4461:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4612:9:74", + "nodeType": "YulTypedName", + "src": "4612:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4627:4:74", + "nodeType": "YulTypedName", + "src": "4627:4:74", + "type": "" + } + ], + "src": "4461:419:74" + }, + { + "body": { + "nativeSrc": "4992:76:74", + "nodeType": "YulBlock", + "src": "4992:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "5014:6:74", + "nodeType": "YulIdentifier", + "src": "5014:6:74" + }, + { + "kind": "number", + "nativeSrc": "5022:1:74", + "nodeType": "YulLiteral", + "src": "5022:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5010:3:74", + "nodeType": "YulIdentifier", + "src": "5010:3:74" + }, + "nativeSrc": "5010:14:74", + "nodeType": "YulFunctionCall", + "src": "5010:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "5026:34:74", + "nodeType": "YulLiteral", + "src": "5026:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5003:6:74", + "nodeType": "YulIdentifier", + "src": "5003:6:74" + }, + "nativeSrc": "5003:58:74", + "nodeType": "YulFunctionCall", + "src": "5003:58:74" + }, + "nativeSrc": "5003:58:74", + "nodeType": "YulExpressionStatement", + "src": "5003:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "4886:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "4984:6:74", + "nodeType": "YulTypedName", + "src": "4984:6:74", + "type": "" + } + ], + "src": "4886:182:74" + }, + { + "body": { + "nativeSrc": "5220:220:74", + "nodeType": "YulBlock", + "src": "5220:220:74", + "statements": [ + { + "nativeSrc": "5230:74:74", + "nodeType": "YulAssignment", + "src": "5230:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5296:3:74", + "nodeType": "YulIdentifier", + "src": "5296:3:74" + }, + { + "kind": "number", + "nativeSrc": "5301:2:74", + "nodeType": "YulLiteral", + "src": "5301:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "5237:58:74", + "nodeType": "YulIdentifier", + "src": "5237:58:74" + }, + "nativeSrc": "5237:67:74", + "nodeType": "YulFunctionCall", + "src": "5237:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "5230:3:74", + "nodeType": "YulIdentifier", + "src": "5230:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5402:3:74", + "nodeType": "YulIdentifier", + "src": "5402:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "5313:88:74", + "nodeType": "YulIdentifier", + "src": "5313:88:74" + }, + "nativeSrc": "5313:93:74", + "nodeType": "YulFunctionCall", + "src": "5313:93:74" + }, + "nativeSrc": "5313:93:74", + "nodeType": "YulExpressionStatement", + "src": "5313:93:74" + }, + { + "nativeSrc": "5415:19:74", + "nodeType": "YulAssignment", + "src": "5415:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5426:3:74", + "nodeType": "YulIdentifier", + "src": "5426:3:74" + }, + { + "kind": "number", + "nativeSrc": "5431:2:74", + "nodeType": "YulLiteral", + "src": "5431:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5422:3:74", + "nodeType": "YulIdentifier", + "src": "5422:3:74" + }, + "nativeSrc": "5422:12:74", + "nodeType": "YulFunctionCall", + "src": "5422:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "5415:3:74", + "nodeType": "YulIdentifier", + "src": "5415:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5074:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "5208:3:74", + "nodeType": "YulTypedName", + "src": "5208:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "5216:3:74", + "nodeType": "YulTypedName", + "src": "5216:3:74", + "type": "" + } + ], + "src": "5074:366:74" + }, + { + "body": { + "nativeSrc": "5617:248:74", + "nodeType": "YulBlock", + "src": "5617:248:74", + "statements": [ + { + "nativeSrc": "5627:26:74", + "nodeType": "YulAssignment", + "src": "5627:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5639:9:74", + "nodeType": "YulIdentifier", + "src": "5639:9:74" + }, + { + "kind": "number", + "nativeSrc": "5650:2:74", + "nodeType": "YulLiteral", + "src": "5650:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5635:3:74", + "nodeType": "YulIdentifier", + "src": "5635:3:74" + }, + "nativeSrc": "5635:18:74", + "nodeType": "YulFunctionCall", + "src": "5635:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5627:4:74", + "nodeType": "YulIdentifier", + "src": "5627:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5674:9:74", + "nodeType": "YulIdentifier", + "src": "5674:9:74" + }, + { + "kind": "number", + "nativeSrc": "5685:1:74", + "nodeType": "YulLiteral", + "src": "5685:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5670:3:74", + "nodeType": "YulIdentifier", + "src": "5670:3:74" + }, + "nativeSrc": "5670:17:74", + "nodeType": "YulFunctionCall", + "src": "5670:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "5693:4:74", + "nodeType": "YulIdentifier", + "src": "5693:4:74" + }, + { + "name": "headStart", + "nativeSrc": "5699:9:74", + "nodeType": "YulIdentifier", + "src": "5699:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5689:3:74", + "nodeType": "YulIdentifier", + "src": "5689:3:74" + }, + "nativeSrc": "5689:20:74", + "nodeType": "YulFunctionCall", + "src": "5689:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5663:6:74", + "nodeType": "YulIdentifier", + "src": "5663:6:74" + }, + "nativeSrc": "5663:47:74", + "nodeType": "YulFunctionCall", + "src": "5663:47:74" + }, + "nativeSrc": "5663:47:74", + "nodeType": "YulExpressionStatement", + "src": "5663:47:74" + }, + { + "nativeSrc": "5719:139:74", + "nodeType": "YulAssignment", + "src": "5719:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "5853:4:74", + "nodeType": "YulIdentifier", + "src": "5853:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5727:124:74", + "nodeType": "YulIdentifier", + "src": "5727:124:74" + }, + "nativeSrc": "5727:131:74", + "nodeType": "YulFunctionCall", + "src": "5727:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5719:4:74", + "nodeType": "YulIdentifier", + "src": "5719:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "5446:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5597:9:74", + "nodeType": "YulTypedName", + "src": "5597:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5612:4:74", + "nodeType": "YulTypedName", + "src": "5612:4:74", + "type": "" + } + ], + "src": "5446:419:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a61461006d5780638da5cb5b14610077578063f2fde38b14610095575b600080fd5b61006b600480360381019061006691906103e0565b6100b1565b005b61007561013d565b005b61007f610151565b60405161008c9190610442565b60405180910390f35b6100af60048036038101906100aa919061045d565b61017a565b005b6100b96101fd565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016100f4929190610499565b6020604051808303816000875af1158015610113573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013791906104fa565b50505050565b6101456101fd565b61014f600061027b565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6101826101fd565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101e8906105aa565b60405180910390fd5b6101fa8161027b565b50565b61020561033f565b73ffffffffffffffffffffffffffffffffffffffff16610223610151565b73ffffffffffffffffffffffffffffffffffffffff1614610279576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027090610616565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103778261034c565b9050919050565b6103878161036c565b811461039257600080fd5b50565b6000813590506103a48161037e565b92915050565b6000819050919050565b6103bd816103aa565b81146103c857600080fd5b50565b6000813590506103da816103b4565b92915050565b6000806000606084860312156103f9576103f8610347565b5b600061040786828701610395565b935050602061041886828701610395565b9250506040610429868287016103cb565b9150509250925092565b61043c8161036c565b82525050565b60006020820190506104576000830184610433565b92915050565b60006020828403121561047357610472610347565b5b600061048184828501610395565b91505092915050565b610493816103aa565b82525050565b60006040820190506104ae6000830185610433565b6104bb602083018461048a565b9392505050565b60008115159050919050565b6104d7816104c2565b81146104e257600080fd5b50565b6000815190506104f4816104ce565b92915050565b6000602082840312156105105761050f610347565b5b600061051e848285016104e5565b91505092915050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610594602683610527565b915061059f82610538565b604082019050919050565b600060208201905081810360008301526105c381610587565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610600602083610527565b915061060b826105ca565b602082019050919050565b6000602082019050818103600083015261062f816105f3565b905091905056fea2646970667358221220367af58b2dff766a57537ade1c9d714011704d382c6bbd7645a8171602d2c46364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5D3590D5 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x77 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x3E0 JUMP JUMPDEST PUSH2 0xB1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x13D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7F PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8C SWAP2 SWAP1 PUSH2 0x442 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xAF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x45D JUMP JUMPDEST PUSH2 0x17A JUMP JUMPDEST STOP JUMPDEST PUSH2 0xB9 PUSH2 0x1FD JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF4 SWAP3 SWAP2 SWAP1 PUSH2 0x499 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x113 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x137 SWAP2 SWAP1 PUSH2 0x4FA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x145 PUSH2 0x1FD JUMP JUMPDEST PUSH2 0x14F PUSH1 0x0 PUSH2 0x27B JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x182 PUSH2 0x1FD JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1F1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E8 SWAP1 PUSH2 0x5AA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1FA DUP2 PUSH2 0x27B JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x205 PUSH2 0x33F JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x223 PUSH2 0x151 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x279 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x270 SWAP1 PUSH2 0x616 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x377 DUP3 PUSH2 0x34C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x387 DUP2 PUSH2 0x36C JUMP JUMPDEST DUP2 EQ PUSH2 0x392 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3A4 DUP2 PUSH2 0x37E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3BD DUP2 PUSH2 0x3AA JUMP JUMPDEST DUP2 EQ PUSH2 0x3C8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x3DA DUP2 PUSH2 0x3B4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3F9 JUMPI PUSH2 0x3F8 PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x407 DUP7 DUP3 DUP8 ADD PUSH2 0x395 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x418 DUP7 DUP3 DUP8 ADD PUSH2 0x395 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x429 DUP7 DUP3 DUP8 ADD PUSH2 0x3CB JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x43C DUP2 PUSH2 0x36C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x457 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x433 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x473 JUMPI PUSH2 0x472 PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x481 DUP5 DUP3 DUP6 ADD PUSH2 0x395 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x493 DUP2 PUSH2 0x3AA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x4AE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x433 JUMP JUMPDEST PUSH2 0x4BB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x48A JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4D7 DUP2 PUSH2 0x4C2 JUMP JUMPDEST DUP2 EQ PUSH2 0x4E2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4F4 DUP2 PUSH2 0x4CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x510 JUMPI PUSH2 0x50F PUSH2 0x347 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x51E DUP5 DUP3 DUP6 ADD PUSH2 0x4E5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x594 PUSH1 0x26 DUP4 PUSH2 0x527 JUMP JUMPDEST SWAP2 POP PUSH2 0x59F DUP3 PUSH2 0x538 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5C3 DUP2 PUSH2 0x587 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x600 PUSH1 0x20 DUP4 PUSH2 0x527 JUMP JUMPDEST SWAP2 POP PUSH2 0x60B DUP3 PUSH2 0x5CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62F DUP2 PUSH2 0x5F3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLDATASIZE PUSH27 0xF58B2DFF766A57537ADE1C9D714011704D382C6BBD7645A8171602 0xD2 0xC4 PUSH4 0x64736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "271:535:42:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;633:171;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1824:101:50;;;:::i;:::-;;1201:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2074:198;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;633:171:42;1094:13:50;:11;:13::i;:::-;767:6:42::1;760:23;;;784:3;789:7;760:37;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;633:171:::0;;;:::o;1824:101:50:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1201:85::-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;2074:198::-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1359:130::-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;2426:187::-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;88:117:74:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:77::-;878:7;907:5;896:16;;841:77;;;:::o;924:122::-;997:24;1015:5;997:24;:::i;:::-;990:5;987:35;977:63;;1036:1;1033;1026:12;977:63;924:122;:::o;1052:139::-;1098:5;1136:6;1123:20;1114:29;;1152:33;1179:5;1152:33;:::i;:::-;1052:139;;;;:::o;1197:619::-;1274:6;1282;1290;1339:2;1327:9;1318:7;1314:23;1310:32;1307:119;;;1345:79;;:::i;:::-;1307:119;1465:1;1490:53;1535:7;1526:6;1515:9;1511:22;1490:53;:::i;:::-;1480:63;;1436:117;1592:2;1618:53;1663:7;1654:6;1643:9;1639:22;1618:53;:::i;:::-;1608:63;;1563:118;1720:2;1746:53;1791:7;1782:6;1771:9;1767:22;1746:53;:::i;:::-;1736:63;;1691:118;1197:619;;;;;:::o;1822:118::-;1909:24;1927:5;1909:24;:::i;:::-;1904:3;1897:37;1822:118;;:::o;1946:222::-;2039:4;2077:2;2066:9;2062:18;2054:26;;2090:71;2158:1;2147:9;2143:17;2134:6;2090:71;:::i;:::-;1946:222;;;;:::o;2174:329::-;2233:6;2282:2;2270:9;2261:7;2257:23;2253:32;2250:119;;;2288:79;;:::i;:::-;2250:119;2408:1;2433:53;2478:7;2469:6;2458:9;2454:22;2433:53;:::i;:::-;2423:63;;2379:117;2174:329;;;;:::o;2509:118::-;2596:24;2614:5;2596:24;:::i;:::-;2591:3;2584:37;2509:118;;:::o;2633:332::-;2754:4;2792:2;2781:9;2777:18;2769:26;;2805:71;2873:1;2862:9;2858:17;2849:6;2805:71;:::i;:::-;2886:72;2954:2;2943:9;2939:18;2930:6;2886:72;:::i;:::-;2633:332;;;;;:::o;2971:90::-;3005:7;3048:5;3041:13;3034:21;3023:32;;2971:90;;;:::o;3067:116::-;3137:21;3152:5;3137:21;:::i;:::-;3130:5;3127:32;3117:60;;3173:1;3170;3163:12;3117:60;3067:116;:::o;3189:137::-;3243:5;3274:6;3268:13;3259:22;;3290:30;3314:5;3290:30;:::i;:::-;3189:137;;;;:::o;3332:345::-;3399:6;3448:2;3436:9;3427:7;3423:23;3419:32;3416:119;;;3454:79;;:::i;:::-;3416:119;3574:1;3599:61;3652:7;3643:6;3632:9;3628:22;3599:61;:::i;:::-;3589:71;;3545:125;3332:345;;;;:::o;3683:169::-;3767:11;3801:6;3796:3;3789:19;3841:4;3836:3;3832:14;3817:29;;3683:169;;;;:::o;3858:225::-;3998:34;3994:1;3986:6;3982:14;3975:58;4067:8;4062:2;4054:6;4050:15;4043:33;3858:225;:::o;4089:366::-;4231:3;4252:67;4316:2;4311:3;4252:67;:::i;:::-;4245:74;;4328:93;4417:3;4328:93;:::i;:::-;4446:2;4441:3;4437:12;4430:19;;4089:366;;;:::o;4461:419::-;4627:4;4665:2;4654:9;4650:18;4642:26;;4714:9;4708:4;4704:20;4700:1;4689:9;4685:17;4678:47;4742:131;4868:4;4742:131;:::i;:::-;4734:139;;4461:419;;;:::o;4886:182::-;5026:34;5022:1;5014:6;5010:14;5003:58;4886:182;:::o;5074:366::-;5216:3;5237:67;5301:2;5296:3;5237:67;:::i;:::-;5230:74;;5313:93;5402:3;5313:93;:::i;:::-;5431:2;5426:3;5422:12;5415:19;;5074:366;;;:::o;5446:419::-;5612:4;5650:2;5639:9;5635:18;5627:26;;5699:9;5693:4;5689:20;5685:1;5674:9;5670:17;5663:47;5727:131;5853:4;5727:131;:::i;:::-;5719:139;;5446:419;;;:::o" + }, + "methodIdentifiers": { + "owner()": "8da5cb5b", + "recoverFunds(address,address,uint256)": "5d3590d5", + "renounceOwnership()": "715018a6", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"recoverFunds(address,address,uint256)\":{\"details\":\"The contract is Ownable and only the owner can call the recover function.\",\"params\":{\"_amount\":\"The amount of tokens to recover.\",\"_to\":\"The address to send the tokens to.\",\"_token\":\"The address of the ERC20 token to recover\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"recoverFunds(address,address,uint256)\":{\"notice\":\"Recover ERC20 tokens sent to the contract by mistake.\"}},\"notice\":\"Contract is used to recover ERC20 tokens sent to the contract by mistake.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol\":\"ERC20Recoverable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol\":{\"keccak256\":\"0x793a38091e1f81499a29ddba82c2b2f3cdd07071b81a832886e8e02a45ff352a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41d435f84b1d03daa8a934967d6b01246548b52441c108e48e0fd6a7ade4a0c7\",\"dweb:/ipfs/QmQZX6rurGhMqJuH1GjZ7QC8a8Gvtn2rVBmKwdbM9GPnNb\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol": { + "Controllable": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "active", + "type": "bool" + } + ], + "name": "ControllerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "controllers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "bool", + "name": "active", + "type": "bool" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 50, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 58, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b5061002d61002261003260201b60201c565b61003a60201b60201c565b6100fe565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6106688061010d6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610084578063e0dba60f146100b4578063f2fde38b146100d0575b600080fd5b6100646100ec565b005b61006e610100565b60405161007b9190610408565b60405180910390f35b61009e60048036038101906100999190610454565b610129565b6040516100ab919061049c565b60405180910390f35b6100ce60048036038101906100c991906104e3565b610149565b005b6100ea60048036038101906100e59190610454565b6101fa565b005b6100f461027d565b6100fe60006102fb565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60016020528060005260406000206000915054906101000a900460ff1681565b61015161027d565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516101ee919061049c565b60405180910390a25050565b61020261027d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610268906105a6565b60405180910390fd5b61027a816102fb565b50565b6102856103bf565b73ffffffffffffffffffffffffffffffffffffffff166102a3610100565b73ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102f090610612565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103f2826103c7565b9050919050565b610402816103e7565b82525050565b600060208201905061041d60008301846103f9565b92915050565b600080fd5b610431816103e7565b811461043c57600080fd5b50565b60008135905061044e81610428565b92915050565b60006020828403121561046a57610469610423565b5b60006104788482850161043f565b91505092915050565b60008115159050919050565b61049681610481565b82525050565b60006020820190506104b1600083018461048d565b92915050565b6104c081610481565b81146104cb57600080fd5b50565b6000813590506104dd816104b7565b92915050565b600080604083850312156104fa576104f9610423565b5b60006105088582860161043f565b9250506020610519858286016104ce565b9150509250929050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610590602683610523565b915061059b82610534565b604082019050919050565b600060208201905081810360008301526105bf81610583565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006105fc602083610523565b9150610607826105c6565b602082019050919050565b6000602082019050818103600083015261062b816105ef565b905091905056fea2646970667358221220dc259d39943d4664e2c1d791d0e2cf928cac90bd2481a86beae8c23b2118984364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2D PUSH2 0x22 PUSH2 0x32 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x3A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0xFE JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0x668 DUP1 PUSH2 0x10D PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x715018A6 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x84 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0xB4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xD0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0xEC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH2 0x100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x408 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x99 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x129 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAB SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xCE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC9 SWAP2 SWAP1 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x149 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x1FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF4 PUSH2 0x27D JUMP JUMPDEST PUSH2 0xFE PUSH1 0x0 PUSH2 0x2FB JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x151 PUSH2 0x27D JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1EE SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x202 PUSH2 0x27D JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x271 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x268 SWAP1 PUSH2 0x5A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x27A DUP2 PUSH2 0x2FB JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x285 PUSH2 0x3BF JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2A3 PUSH2 0x100 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F0 SWAP1 PUSH2 0x612 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F2 DUP3 PUSH2 0x3C7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x402 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x431 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x43C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x44E DUP2 PUSH2 0x428 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x46A JUMPI PUSH2 0x469 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x478 DUP5 DUP3 DUP6 ADD PUSH2 0x43F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x496 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4B1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x48D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C0 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP2 EQ PUSH2 0x4CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4DD DUP2 PUSH2 0x4B7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4FA JUMPI PUSH2 0x4F9 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x508 DUP6 DUP3 DUP7 ADD PUSH2 0x43F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x519 DUP6 DUP3 DUP7 ADD PUSH2 0x4CE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x590 PUSH1 0x26 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x59B DUP3 PUSH2 0x534 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5BF DUP2 PUSH2 0x583 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FC PUSH1 0x20 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x607 DUP3 PUSH2 0x5C6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62B DUP2 PUSH2 0x5EF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDC 0x25 SWAP14 CODECOPY SWAP5 RETURNDATASIZE CHAINID PUSH5 0xE2C1D791D0 0xE2 0xCF SWAP3 DUP13 0xAC SWAP1 0xBD 0x24 DUP2 0xA8 PUSH12 0xEAE8C23B2118984364736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "111:506:43:-:0;;;;;;;;;;;;;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;111:506:43;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;111:506:43:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_checkOwner_13109": { + "entryPoint": 637, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 959, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_transferOwnership_13166": { + "entryPoint": 763, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@controllers_8647": { + "entryPoint": 297, + "id": 8647, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@owner_13095": { + "entryPoint": 256, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@renounceOwnership_13123": { + "entryPoint": 236, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setController_8674": { + "entryPoint": 329, + "id": 8674, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@transferOwnership_13146": { + "entryPoint": 506, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_address": { + "entryPoint": 1087, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 1230, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 1108, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 1251, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 1017, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 1165, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1411, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1519, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 1032, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 1180, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1446, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1554, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1315, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 999, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 1153, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 967, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 1059, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 1332, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 1478, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 1064, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 1207, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:4875:74", + "nodeType": "YulBlock", + "src": "0:4875:74", + "statements": [ + { + "body": { + "nativeSrc": "52:81:74", + "nodeType": "YulBlock", + "src": "52:81:74", + "statements": [ + { + "nativeSrc": "62:65:74", + "nodeType": "YulAssignment", + "src": "62:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "77:5:74", + "nodeType": "YulIdentifier", + "src": "77:5:74" + }, + { + "kind": "number", + "nativeSrc": "84:42:74", + "nodeType": "YulLiteral", + "src": "84:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "73:3:74", + "nodeType": "YulIdentifier", + "src": "73:3:74" + }, + "nativeSrc": "73:54:74", + "nodeType": "YulFunctionCall", + "src": "73:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "62:7:74", + "nodeType": "YulIdentifier", + "src": "62:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "7:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34:5:74", + "nodeType": "YulTypedName", + "src": "34:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "44:7:74", + "nodeType": "YulTypedName", + "src": "44:7:74", + "type": "" + } + ], + "src": "7:126:74" + }, + { + "body": { + "nativeSrc": "184:51:74", + "nodeType": "YulBlock", + "src": "184:51:74", + "statements": [ + { + "nativeSrc": "194:35:74", + "nodeType": "YulAssignment", + "src": "194:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "223:5:74", + "nodeType": "YulIdentifier", + "src": "223:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "205:17:74", + "nodeType": "YulIdentifier", + "src": "205:17:74" + }, + "nativeSrc": "205:24:74", + "nodeType": "YulFunctionCall", + "src": "205:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "194:7:74", + "nodeType": "YulIdentifier", + "src": "194:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "139:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "166:5:74", + "nodeType": "YulTypedName", + "src": "166:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "176:7:74", + "nodeType": "YulTypedName", + "src": "176:7:74", + "type": "" + } + ], + "src": "139:96:74" + }, + { + "body": { + "nativeSrc": "306:53:74", + "nodeType": "YulBlock", + "src": "306:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "323:3:74", + "nodeType": "YulIdentifier", + "src": "323:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "346:5:74", + "nodeType": "YulIdentifier", + "src": "346:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "328:17:74", + "nodeType": "YulIdentifier", + "src": "328:17:74" + }, + "nativeSrc": "328:24:74", + "nodeType": "YulFunctionCall", + "src": "328:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "316:6:74", + "nodeType": "YulIdentifier", + "src": "316:6:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulFunctionCall", + "src": "316:37:74" + }, + "nativeSrc": "316:37:74", + "nodeType": "YulExpressionStatement", + "src": "316:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "241:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "294:5:74", + "nodeType": "YulTypedName", + "src": "294:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "301:3:74", + "nodeType": "YulTypedName", + "src": "301:3:74", + "type": "" + } + ], + "src": "241:118:74" + }, + { + "body": { + "nativeSrc": "463:124:74", + "nodeType": "YulBlock", + "src": "463:124:74", + "statements": [ + { + "nativeSrc": "473:26:74", + "nodeType": "YulAssignment", + "src": "473:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "485:9:74", + "nodeType": "YulIdentifier", + "src": "485:9:74" + }, + { + "kind": "number", + "nativeSrc": "496:2:74", + "nodeType": "YulLiteral", + "src": "496:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "481:3:74", + "nodeType": "YulIdentifier", + "src": "481:3:74" + }, + "nativeSrc": "481:18:74", + "nodeType": "YulFunctionCall", + "src": "481:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "473:4:74", + "nodeType": "YulIdentifier", + "src": "473:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "553:6:74", + "nodeType": "YulIdentifier", + "src": "553:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "566:9:74", + "nodeType": "YulIdentifier", + "src": "566:9:74" + }, + { + "kind": "number", + "nativeSrc": "577:1:74", + "nodeType": "YulLiteral", + "src": "577:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "562:3:74", + "nodeType": "YulIdentifier", + "src": "562:3:74" + }, + "nativeSrc": "562:17:74", + "nodeType": "YulFunctionCall", + "src": "562:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "509:43:74", + "nodeType": "YulIdentifier", + "src": "509:43:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulFunctionCall", + "src": "509:71:74" + }, + "nativeSrc": "509:71:74", + "nodeType": "YulExpressionStatement", + "src": "509:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "365:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "435:9:74", + "nodeType": "YulTypedName", + "src": "435:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "447:6:74", + "nodeType": "YulTypedName", + "src": "447:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "458:4:74", + "nodeType": "YulTypedName", + "src": "458:4:74", + "type": "" + } + ], + "src": "365:222:74" + }, + { + "body": { + "nativeSrc": "633:35:74", + "nodeType": "YulBlock", + "src": "633:35:74", + "statements": [ + { + "nativeSrc": "643:19:74", + "nodeType": "YulAssignment", + "src": "643:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "659:2:74", + "nodeType": "YulLiteral", + "src": "659:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "653:5:74", + "nodeType": "YulIdentifier", + "src": "653:5:74" + }, + "nativeSrc": "653:9:74", + "nodeType": "YulFunctionCall", + "src": "653:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "643:6:74", + "nodeType": "YulIdentifier", + "src": "643:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "593:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "626:6:74", + "nodeType": "YulTypedName", + "src": "626:6:74", + "type": "" + } + ], + "src": "593:75:74" + }, + { + "body": { + "nativeSrc": "763:28:74", + "nodeType": "YulBlock", + "src": "763:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "780:1:74", + "nodeType": "YulLiteral", + "src": "780:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "783:1:74", + "nodeType": "YulLiteral", + "src": "783:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "773:6:74", + "nodeType": "YulIdentifier", + "src": "773:6:74" + }, + "nativeSrc": "773:12:74", + "nodeType": "YulFunctionCall", + "src": "773:12:74" + }, + "nativeSrc": "773:12:74", + "nodeType": "YulExpressionStatement", + "src": "773:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "674:117:74", + "nodeType": "YulFunctionDefinition", + "src": "674:117:74" + }, + { + "body": { + "nativeSrc": "886:28:74", + "nodeType": "YulBlock", + "src": "886:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "903:1:74", + "nodeType": "YulLiteral", + "src": "903:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "906:1:74", + "nodeType": "YulLiteral", + "src": "906:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "896:6:74", + "nodeType": "YulIdentifier", + "src": "896:6:74" + }, + "nativeSrc": "896:12:74", + "nodeType": "YulFunctionCall", + "src": "896:12:74" + }, + "nativeSrc": "896:12:74", + "nodeType": "YulExpressionStatement", + "src": "896:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "797:117:74", + "nodeType": "YulFunctionDefinition", + "src": "797:117:74" + }, + { + "body": { + "nativeSrc": "963:79:74", + "nodeType": "YulBlock", + "src": "963:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1020:16:74", + "nodeType": "YulBlock", + "src": "1020:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1029:1:74", + "nodeType": "YulLiteral", + "src": "1029:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1032:1:74", + "nodeType": "YulLiteral", + "src": "1032:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1022:6:74", + "nodeType": "YulIdentifier", + "src": "1022:6:74" + }, + "nativeSrc": "1022:12:74", + "nodeType": "YulFunctionCall", + "src": "1022:12:74" + }, + "nativeSrc": "1022:12:74", + "nodeType": "YulExpressionStatement", + "src": "1022:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "986:5:74", + "nodeType": "YulIdentifier", + "src": "986:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1011:5:74", + "nodeType": "YulIdentifier", + "src": "1011:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "993:17:74", + "nodeType": "YulIdentifier", + "src": "993:17:74" + }, + "nativeSrc": "993:24:74", + "nodeType": "YulFunctionCall", + "src": "993:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "983:2:74", + "nodeType": "YulIdentifier", + "src": "983:2:74" + }, + "nativeSrc": "983:35:74", + "nodeType": "YulFunctionCall", + "src": "983:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "976:6:74", + "nodeType": "YulIdentifier", + "src": "976:6:74" + }, + "nativeSrc": "976:43:74", + "nodeType": "YulFunctionCall", + "src": "976:43:74" + }, + "nativeSrc": "973:63:74", + "nodeType": "YulIf", + "src": "973:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "920:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "956:5:74", + "nodeType": "YulTypedName", + "src": "956:5:74", + "type": "" + } + ], + "src": "920:122:74" + }, + { + "body": { + "nativeSrc": "1100:87:74", + "nodeType": "YulBlock", + "src": "1100:87:74", + "statements": [ + { + "nativeSrc": "1110:29:74", + "nodeType": "YulAssignment", + "src": "1110:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1132:6:74", + "nodeType": "YulIdentifier", + "src": "1132:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1119:12:74", + "nodeType": "YulIdentifier", + "src": "1119:12:74" + }, + "nativeSrc": "1119:20:74", + "nodeType": "YulFunctionCall", + "src": "1119:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1110:5:74", + "nodeType": "YulIdentifier", + "src": "1110:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1175:5:74", + "nodeType": "YulIdentifier", + "src": "1175:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "1148:26:74", + "nodeType": "YulIdentifier", + "src": "1148:26:74" + }, + "nativeSrc": "1148:33:74", + "nodeType": "YulFunctionCall", + "src": "1148:33:74" + }, + "nativeSrc": "1148:33:74", + "nodeType": "YulExpressionStatement", + "src": "1148:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "1048:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1078:6:74", + "nodeType": "YulTypedName", + "src": "1078:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1086:3:74", + "nodeType": "YulTypedName", + "src": "1086:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1094:5:74", + "nodeType": "YulTypedName", + "src": "1094:5:74", + "type": "" + } + ], + "src": "1048:139:74" + }, + { + "body": { + "nativeSrc": "1259:263:74", + "nodeType": "YulBlock", + "src": "1259:263:74", + "statements": [ + { + "body": { + "nativeSrc": "1305:83:74", + "nodeType": "YulBlock", + "src": "1305:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1307:77:74", + "nodeType": "YulIdentifier", + "src": "1307:77:74" + }, + "nativeSrc": "1307:79:74", + "nodeType": "YulFunctionCall", + "src": "1307:79:74" + }, + "nativeSrc": "1307:79:74", + "nodeType": "YulExpressionStatement", + "src": "1307:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1280:7:74", + "nodeType": "YulIdentifier", + "src": "1280:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1289:9:74", + "nodeType": "YulIdentifier", + "src": "1289:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1276:3:74", + "nodeType": "YulIdentifier", + "src": "1276:3:74" + }, + "nativeSrc": "1276:23:74", + "nodeType": "YulFunctionCall", + "src": "1276:23:74" + }, + { + "kind": "number", + "nativeSrc": "1301:2:74", + "nodeType": "YulLiteral", + "src": "1301:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1272:3:74", + "nodeType": "YulIdentifier", + "src": "1272:3:74" + }, + "nativeSrc": "1272:32:74", + "nodeType": "YulFunctionCall", + "src": "1272:32:74" + }, + "nativeSrc": "1269:119:74", + "nodeType": "YulIf", + "src": "1269:119:74" + }, + { + "nativeSrc": "1398:117:74", + "nodeType": "YulBlock", + "src": "1398:117:74", + "statements": [ + { + "nativeSrc": "1413:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1413:15:74", + "value": { + "kind": "number", + "nativeSrc": "1427:1:74", + "nodeType": "YulLiteral", + "src": "1427:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1417:6:74", + "nodeType": "YulTypedName", + "src": "1417:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1442:63:74", + "nodeType": "YulAssignment", + "src": "1442:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1477:9:74", + "nodeType": "YulIdentifier", + "src": "1477:9:74" + }, + { + "name": "offset", + "nativeSrc": "1488:6:74", + "nodeType": "YulIdentifier", + "src": "1488:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1473:3:74", + "nodeType": "YulIdentifier", + "src": "1473:3:74" + }, + "nativeSrc": "1473:22:74", + "nodeType": "YulFunctionCall", + "src": "1473:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1497:7:74", + "nodeType": "YulIdentifier", + "src": "1497:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1452:20:74", + "nodeType": "YulIdentifier", + "src": "1452:20:74" + }, + "nativeSrc": "1452:53:74", + "nodeType": "YulFunctionCall", + "src": "1452:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1442:6:74", + "nodeType": "YulIdentifier", + "src": "1442:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "1193:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1229:9:74", + "nodeType": "YulTypedName", + "src": "1229:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1240:7:74", + "nodeType": "YulTypedName", + "src": "1240:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1252:6:74", + "nodeType": "YulTypedName", + "src": "1252:6:74", + "type": "" + } + ], + "src": "1193:329:74" + }, + { + "body": { + "nativeSrc": "1570:48:74", + "nodeType": "YulBlock", + "src": "1570:48:74", + "statements": [ + { + "nativeSrc": "1580:32:74", + "nodeType": "YulAssignment", + "src": "1580:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1605:5:74", + "nodeType": "YulIdentifier", + "src": "1605:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1598:6:74", + "nodeType": "YulIdentifier", + "src": "1598:6:74" + }, + "nativeSrc": "1598:13:74", + "nodeType": "YulFunctionCall", + "src": "1598:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1591:6:74", + "nodeType": "YulIdentifier", + "src": "1591:6:74" + }, + "nativeSrc": "1591:21:74", + "nodeType": "YulFunctionCall", + "src": "1591:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1580:7:74", + "nodeType": "YulIdentifier", + "src": "1580:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1528:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1552:5:74", + "nodeType": "YulTypedName", + "src": "1552:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1562:7:74", + "nodeType": "YulTypedName", + "src": "1562:7:74", + "type": "" + } + ], + "src": "1528:90:74" + }, + { + "body": { + "nativeSrc": "1683:50:74", + "nodeType": "YulBlock", + "src": "1683:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1700:3:74", + "nodeType": "YulIdentifier", + "src": "1700:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1720:5:74", + "nodeType": "YulIdentifier", + "src": "1720:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1705:14:74", + "nodeType": "YulIdentifier", + "src": "1705:14:74" + }, + "nativeSrc": "1705:21:74", + "nodeType": "YulFunctionCall", + "src": "1705:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1693:6:74", + "nodeType": "YulIdentifier", + "src": "1693:6:74" + }, + "nativeSrc": "1693:34:74", + "nodeType": "YulFunctionCall", + "src": "1693:34:74" + }, + "nativeSrc": "1693:34:74", + "nodeType": "YulExpressionStatement", + "src": "1693:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1624:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1671:5:74", + "nodeType": "YulTypedName", + "src": "1671:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1678:3:74", + "nodeType": "YulTypedName", + "src": "1678:3:74", + "type": "" + } + ], + "src": "1624:109:74" + }, + { + "body": { + "nativeSrc": "1831:118:74", + "nodeType": "YulBlock", + "src": "1831:118:74", + "statements": [ + { + "nativeSrc": "1841:26:74", + "nodeType": "YulAssignment", + "src": "1841:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1853:9:74", + "nodeType": "YulIdentifier", + "src": "1853:9:74" + }, + { + "kind": "number", + "nativeSrc": "1864:2:74", + "nodeType": "YulLiteral", + "src": "1864:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1849:3:74", + "nodeType": "YulIdentifier", + "src": "1849:3:74" + }, + "nativeSrc": "1849:18:74", + "nodeType": "YulFunctionCall", + "src": "1849:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1841:4:74", + "nodeType": "YulIdentifier", + "src": "1841:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1915:6:74", + "nodeType": "YulIdentifier", + "src": "1915:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1928:9:74", + "nodeType": "YulIdentifier", + "src": "1928:9:74" + }, + { + "kind": "number", + "nativeSrc": "1939:1:74", + "nodeType": "YulLiteral", + "src": "1939:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1924:3:74", + "nodeType": "YulIdentifier", + "src": "1924:3:74" + }, + "nativeSrc": "1924:17:74", + "nodeType": "YulFunctionCall", + "src": "1924:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1877:37:74", + "nodeType": "YulIdentifier", + "src": "1877:37:74" + }, + "nativeSrc": "1877:65:74", + "nodeType": "YulFunctionCall", + "src": "1877:65:74" + }, + "nativeSrc": "1877:65:74", + "nodeType": "YulExpressionStatement", + "src": "1877:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1739:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1803:9:74", + "nodeType": "YulTypedName", + "src": "1803:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1815:6:74", + "nodeType": "YulTypedName", + "src": "1815:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1826:4:74", + "nodeType": "YulTypedName", + "src": "1826:4:74", + "type": "" + } + ], + "src": "1739:210:74" + }, + { + "body": { + "nativeSrc": "1995:76:74", + "nodeType": "YulBlock", + "src": "1995:76:74", + "statements": [ + { + "body": { + "nativeSrc": "2049:16:74", + "nodeType": "YulBlock", + "src": "2049:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2058:1:74", + "nodeType": "YulLiteral", + "src": "2058:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2061:1:74", + "nodeType": "YulLiteral", + "src": "2061:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2051:6:74", + "nodeType": "YulIdentifier", + "src": "2051:6:74" + }, + "nativeSrc": "2051:12:74", + "nodeType": "YulFunctionCall", + "src": "2051:12:74" + }, + "nativeSrc": "2051:12:74", + "nodeType": "YulExpressionStatement", + "src": "2051:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2018:5:74", + "nodeType": "YulIdentifier", + "src": "2018:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2040:5:74", + "nodeType": "YulIdentifier", + "src": "2040:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "2025:14:74", + "nodeType": "YulIdentifier", + "src": "2025:14:74" + }, + "nativeSrc": "2025:21:74", + "nodeType": "YulFunctionCall", + "src": "2025:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2015:2:74", + "nodeType": "YulIdentifier", + "src": "2015:2:74" + }, + "nativeSrc": "2015:32:74", + "nodeType": "YulFunctionCall", + "src": "2015:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2008:6:74", + "nodeType": "YulIdentifier", + "src": "2008:6:74" + }, + "nativeSrc": "2008:40:74", + "nodeType": "YulFunctionCall", + "src": "2008:40:74" + }, + "nativeSrc": "2005:60:74", + "nodeType": "YulIf", + "src": "2005:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "1955:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1988:5:74", + "nodeType": "YulTypedName", + "src": "1988:5:74", + "type": "" + } + ], + "src": "1955:116:74" + }, + { + "body": { + "nativeSrc": "2126:84:74", + "nodeType": "YulBlock", + "src": "2126:84:74", + "statements": [ + { + "nativeSrc": "2136:29:74", + "nodeType": "YulAssignment", + "src": "2136:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2158:6:74", + "nodeType": "YulIdentifier", + "src": "2158:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2145:12:74", + "nodeType": "YulIdentifier", + "src": "2145:12:74" + }, + "nativeSrc": "2145:20:74", + "nodeType": "YulFunctionCall", + "src": "2145:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2136:5:74", + "nodeType": "YulIdentifier", + "src": "2136:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2198:5:74", + "nodeType": "YulIdentifier", + "src": "2198:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "2174:23:74", + "nodeType": "YulIdentifier", + "src": "2174:23:74" + }, + "nativeSrc": "2174:30:74", + "nodeType": "YulFunctionCall", + "src": "2174:30:74" + }, + "nativeSrc": "2174:30:74", + "nodeType": "YulExpressionStatement", + "src": "2174:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "2077:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2104:6:74", + "nodeType": "YulTypedName", + "src": "2104:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2112:3:74", + "nodeType": "YulTypedName", + "src": "2112:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2120:5:74", + "nodeType": "YulTypedName", + "src": "2120:5:74", + "type": "" + } + ], + "src": "2077:133:74" + }, + { + "body": { + "nativeSrc": "2296:388:74", + "nodeType": "YulBlock", + "src": "2296:388:74", + "statements": [ + { + "body": { + "nativeSrc": "2342:83:74", + "nodeType": "YulBlock", + "src": "2342:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2344:77:74", + "nodeType": "YulIdentifier", + "src": "2344:77:74" + }, + "nativeSrc": "2344:79:74", + "nodeType": "YulFunctionCall", + "src": "2344:79:74" + }, + "nativeSrc": "2344:79:74", + "nodeType": "YulExpressionStatement", + "src": "2344:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2317:7:74", + "nodeType": "YulIdentifier", + "src": "2317:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2326:9:74", + "nodeType": "YulIdentifier", + "src": "2326:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2313:3:74", + "nodeType": "YulIdentifier", + "src": "2313:3:74" + }, + "nativeSrc": "2313:23:74", + "nodeType": "YulFunctionCall", + "src": "2313:23:74" + }, + { + "kind": "number", + "nativeSrc": "2338:2:74", + "nodeType": "YulLiteral", + "src": "2338:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2309:3:74", + "nodeType": "YulIdentifier", + "src": "2309:3:74" + }, + "nativeSrc": "2309:32:74", + "nodeType": "YulFunctionCall", + "src": "2309:32:74" + }, + "nativeSrc": "2306:119:74", + "nodeType": "YulIf", + "src": "2306:119:74" + }, + { + "nativeSrc": "2435:117:74", + "nodeType": "YulBlock", + "src": "2435:117:74", + "statements": [ + { + "nativeSrc": "2450:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2450:15:74", + "value": { + "kind": "number", + "nativeSrc": "2464:1:74", + "nodeType": "YulLiteral", + "src": "2464:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2454:6:74", + "nodeType": "YulTypedName", + "src": "2454:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2479:63:74", + "nodeType": "YulAssignment", + "src": "2479:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2514:9:74", + "nodeType": "YulIdentifier", + "src": "2514:9:74" + }, + { + "name": "offset", + "nativeSrc": "2525:6:74", + "nodeType": "YulIdentifier", + "src": "2525:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2510:3:74", + "nodeType": "YulIdentifier", + "src": "2510:3:74" + }, + "nativeSrc": "2510:22:74", + "nodeType": "YulFunctionCall", + "src": "2510:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2534:7:74", + "nodeType": "YulIdentifier", + "src": "2534:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "2489:20:74", + "nodeType": "YulIdentifier", + "src": "2489:20:74" + }, + "nativeSrc": "2489:53:74", + "nodeType": "YulFunctionCall", + "src": "2489:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2479:6:74", + "nodeType": "YulIdentifier", + "src": "2479:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2562:115:74", + "nodeType": "YulBlock", + "src": "2562:115:74", + "statements": [ + { + "nativeSrc": "2577:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2577:16:74", + "value": { + "kind": "number", + "nativeSrc": "2591:2:74", + "nodeType": "YulLiteral", + "src": "2591:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2581:6:74", + "nodeType": "YulTypedName", + "src": "2581:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2607:60:74", + "nodeType": "YulAssignment", + "src": "2607:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2639:9:74", + "nodeType": "YulIdentifier", + "src": "2639:9:74" + }, + { + "name": "offset", + "nativeSrc": "2650:6:74", + "nodeType": "YulIdentifier", + "src": "2650:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2635:3:74", + "nodeType": "YulIdentifier", + "src": "2635:3:74" + }, + "nativeSrc": "2635:22:74", + "nodeType": "YulFunctionCall", + "src": "2635:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2659:7:74", + "nodeType": "YulIdentifier", + "src": "2659:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "2617:17:74", + "nodeType": "YulIdentifier", + "src": "2617:17:74" + }, + "nativeSrc": "2617:50:74", + "nodeType": "YulFunctionCall", + "src": "2617:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "2607:6:74", + "nodeType": "YulIdentifier", + "src": "2607:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "2216:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2258:9:74", + "nodeType": "YulTypedName", + "src": "2258:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2269:7:74", + "nodeType": "YulTypedName", + "src": "2269:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2281:6:74", + "nodeType": "YulTypedName", + "src": "2281:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2289:6:74", + "nodeType": "YulTypedName", + "src": "2289:6:74", + "type": "" + } + ], + "src": "2216:468:74" + }, + { + "body": { + "nativeSrc": "2786:73:74", + "nodeType": "YulBlock", + "src": "2786:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2803:3:74", + "nodeType": "YulIdentifier", + "src": "2803:3:74" + }, + { + "name": "length", + "nativeSrc": "2808:6:74", + "nodeType": "YulIdentifier", + "src": "2808:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2796:6:74", + "nodeType": "YulIdentifier", + "src": "2796:6:74" + }, + "nativeSrc": "2796:19:74", + "nodeType": "YulFunctionCall", + "src": "2796:19:74" + }, + "nativeSrc": "2796:19:74", + "nodeType": "YulExpressionStatement", + "src": "2796:19:74" + }, + { + "nativeSrc": "2824:29:74", + "nodeType": "YulAssignment", + "src": "2824:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2843:3:74", + "nodeType": "YulIdentifier", + "src": "2843:3:74" + }, + { + "kind": "number", + "nativeSrc": "2848:4:74", + "nodeType": "YulLiteral", + "src": "2848:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2839:3:74", + "nodeType": "YulIdentifier", + "src": "2839:3:74" + }, + "nativeSrc": "2839:14:74", + "nodeType": "YulFunctionCall", + "src": "2839:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "2824:11:74", + "nodeType": "YulIdentifier", + "src": "2824:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2690:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "2758:3:74", + "nodeType": "YulTypedName", + "src": "2758:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2763:6:74", + "nodeType": "YulTypedName", + "src": "2763:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "2774:11:74", + "nodeType": "YulTypedName", + "src": "2774:11:74", + "type": "" + } + ], + "src": "2690:169:74" + }, + { + "body": { + "nativeSrc": "2971:119:74", + "nodeType": "YulBlock", + "src": "2971:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "2993:6:74", + "nodeType": "YulIdentifier", + "src": "2993:6:74" + }, + { + "kind": "number", + "nativeSrc": "3001:1:74", + "nodeType": "YulLiteral", + "src": "3001:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2989:3:74", + "nodeType": "YulIdentifier", + "src": "2989:3:74" + }, + "nativeSrc": "2989:14:74", + "nodeType": "YulFunctionCall", + "src": "2989:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "3005:34:74", + "nodeType": "YulLiteral", + "src": "3005:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2982:6:74", + "nodeType": "YulIdentifier", + "src": "2982:6:74" + }, + "nativeSrc": "2982:58:74", + "nodeType": "YulFunctionCall", + "src": "2982:58:74" + }, + "nativeSrc": "2982:58:74", + "nodeType": "YulExpressionStatement", + "src": "2982:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "3061:6:74", + "nodeType": "YulIdentifier", + "src": "3061:6:74" + }, + { + "kind": "number", + "nativeSrc": "3069:2:74", + "nodeType": "YulLiteral", + "src": "3069:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3057:3:74", + "nodeType": "YulIdentifier", + "src": "3057:3:74" + }, + "nativeSrc": "3057:15:74", + "nodeType": "YulFunctionCall", + "src": "3057:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "3074:8:74", + "nodeType": "YulLiteral", + "src": "3074:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3050:6:74", + "nodeType": "YulIdentifier", + "src": "3050:6:74" + }, + "nativeSrc": "3050:33:74", + "nodeType": "YulFunctionCall", + "src": "3050:33:74" + }, + "nativeSrc": "3050:33:74", + "nodeType": "YulExpressionStatement", + "src": "3050:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "2865:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "2963:6:74", + "nodeType": "YulTypedName", + "src": "2963:6:74", + "type": "" + } + ], + "src": "2865:225:74" + }, + { + "body": { + "nativeSrc": "3242:220:74", + "nodeType": "YulBlock", + "src": "3242:220:74", + "statements": [ + { + "nativeSrc": "3252:74:74", + "nodeType": "YulAssignment", + "src": "3252:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3318:3:74", + "nodeType": "YulIdentifier", + "src": "3318:3:74" + }, + { + "kind": "number", + "nativeSrc": "3323:2:74", + "nodeType": "YulLiteral", + "src": "3323:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "3259:58:74", + "nodeType": "YulIdentifier", + "src": "3259:58:74" + }, + "nativeSrc": "3259:67:74", + "nodeType": "YulFunctionCall", + "src": "3259:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "3252:3:74", + "nodeType": "YulIdentifier", + "src": "3252:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3424:3:74", + "nodeType": "YulIdentifier", + "src": "3424:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "3335:88:74", + "nodeType": "YulIdentifier", + "src": "3335:88:74" + }, + "nativeSrc": "3335:93:74", + "nodeType": "YulFunctionCall", + "src": "3335:93:74" + }, + "nativeSrc": "3335:93:74", + "nodeType": "YulExpressionStatement", + "src": "3335:93:74" + }, + { + "nativeSrc": "3437:19:74", + "nodeType": "YulAssignment", + "src": "3437:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3448:3:74", + "nodeType": "YulIdentifier", + "src": "3448:3:74" + }, + { + "kind": "number", + "nativeSrc": "3453:2:74", + "nodeType": "YulLiteral", + "src": "3453:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3444:3:74", + "nodeType": "YulIdentifier", + "src": "3444:3:74" + }, + "nativeSrc": "3444:12:74", + "nodeType": "YulFunctionCall", + "src": "3444:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "3437:3:74", + "nodeType": "YulIdentifier", + "src": "3437:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "3096:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3230:3:74", + "nodeType": "YulTypedName", + "src": "3230:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "3238:3:74", + "nodeType": "YulTypedName", + "src": "3238:3:74", + "type": "" + } + ], + "src": "3096:366:74" + }, + { + "body": { + "nativeSrc": "3639:248:74", + "nodeType": "YulBlock", + "src": "3639:248:74", + "statements": [ + { + "nativeSrc": "3649:26:74", + "nodeType": "YulAssignment", + "src": "3649:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3661:9:74", + "nodeType": "YulIdentifier", + "src": "3661:9:74" + }, + { + "kind": "number", + "nativeSrc": "3672:2:74", + "nodeType": "YulLiteral", + "src": "3672:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3657:3:74", + "nodeType": "YulIdentifier", + "src": "3657:3:74" + }, + "nativeSrc": "3657:18:74", + "nodeType": "YulFunctionCall", + "src": "3657:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3649:4:74", + "nodeType": "YulIdentifier", + "src": "3649:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3696:9:74", + "nodeType": "YulIdentifier", + "src": "3696:9:74" + }, + { + "kind": "number", + "nativeSrc": "3707:1:74", + "nodeType": "YulLiteral", + "src": "3707:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3692:3:74", + "nodeType": "YulIdentifier", + "src": "3692:3:74" + }, + "nativeSrc": "3692:17:74", + "nodeType": "YulFunctionCall", + "src": "3692:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3715:4:74", + "nodeType": "YulIdentifier", + "src": "3715:4:74" + }, + { + "name": "headStart", + "nativeSrc": "3721:9:74", + "nodeType": "YulIdentifier", + "src": "3721:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3711:3:74", + "nodeType": "YulIdentifier", + "src": "3711:3:74" + }, + "nativeSrc": "3711:20:74", + "nodeType": "YulFunctionCall", + "src": "3711:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3685:6:74", + "nodeType": "YulIdentifier", + "src": "3685:6:74" + }, + "nativeSrc": "3685:47:74", + "nodeType": "YulFunctionCall", + "src": "3685:47:74" + }, + "nativeSrc": "3685:47:74", + "nodeType": "YulExpressionStatement", + "src": "3685:47:74" + }, + { + "nativeSrc": "3741:139:74", + "nodeType": "YulAssignment", + "src": "3741:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3875:4:74", + "nodeType": "YulIdentifier", + "src": "3875:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "3749:124:74", + "nodeType": "YulIdentifier", + "src": "3749:124:74" + }, + "nativeSrc": "3749:131:74", + "nodeType": "YulFunctionCall", + "src": "3749:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3741:4:74", + "nodeType": "YulIdentifier", + "src": "3741:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "3468:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3619:9:74", + "nodeType": "YulTypedName", + "src": "3619:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3634:4:74", + "nodeType": "YulTypedName", + "src": "3634:4:74", + "type": "" + } + ], + "src": "3468:419:74" + }, + { + "body": { + "nativeSrc": "3999:76:74", + "nodeType": "YulBlock", + "src": "3999:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4021:6:74", + "nodeType": "YulIdentifier", + "src": "4021:6:74" + }, + { + "kind": "number", + "nativeSrc": "4029:1:74", + "nodeType": "YulLiteral", + "src": "4029:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4017:3:74", + "nodeType": "YulIdentifier", + "src": "4017:3:74" + }, + "nativeSrc": "4017:14:74", + "nodeType": "YulFunctionCall", + "src": "4017:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "4033:34:74", + "nodeType": "YulLiteral", + "src": "4033:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4010:6:74", + "nodeType": "YulIdentifier", + "src": "4010:6:74" + }, + "nativeSrc": "4010:58:74", + "nodeType": "YulFunctionCall", + "src": "4010:58:74" + }, + "nativeSrc": "4010:58:74", + "nodeType": "YulExpressionStatement", + "src": "4010:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "3893:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "3991:6:74", + "nodeType": "YulTypedName", + "src": "3991:6:74", + "type": "" + } + ], + "src": "3893:182:74" + }, + { + "body": { + "nativeSrc": "4227:220:74", + "nodeType": "YulBlock", + "src": "4227:220:74", + "statements": [ + { + "nativeSrc": "4237:74:74", + "nodeType": "YulAssignment", + "src": "4237:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4303:3:74", + "nodeType": "YulIdentifier", + "src": "4303:3:74" + }, + { + "kind": "number", + "nativeSrc": "4308:2:74", + "nodeType": "YulLiteral", + "src": "4308:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "4244:58:74", + "nodeType": "YulIdentifier", + "src": "4244:58:74" + }, + "nativeSrc": "4244:67:74", + "nodeType": "YulFunctionCall", + "src": "4244:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4237:3:74", + "nodeType": "YulIdentifier", + "src": "4237:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4409:3:74", + "nodeType": "YulIdentifier", + "src": "4409:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "4320:88:74", + "nodeType": "YulIdentifier", + "src": "4320:88:74" + }, + "nativeSrc": "4320:93:74", + "nodeType": "YulFunctionCall", + "src": "4320:93:74" + }, + "nativeSrc": "4320:93:74", + "nodeType": "YulExpressionStatement", + "src": "4320:93:74" + }, + { + "nativeSrc": "4422:19:74", + "nodeType": "YulAssignment", + "src": "4422:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4433:3:74", + "nodeType": "YulIdentifier", + "src": "4433:3:74" + }, + { + "kind": "number", + "nativeSrc": "4438:2:74", + "nodeType": "YulLiteral", + "src": "4438:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4429:3:74", + "nodeType": "YulIdentifier", + "src": "4429:3:74" + }, + "nativeSrc": "4429:12:74", + "nodeType": "YulFunctionCall", + "src": "4429:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4422:3:74", + "nodeType": "YulIdentifier", + "src": "4422:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4081:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "4215:3:74", + "nodeType": "YulTypedName", + "src": "4215:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4223:3:74", + "nodeType": "YulTypedName", + "src": "4223:3:74", + "type": "" + } + ], + "src": "4081:366:74" + }, + { + "body": { + "nativeSrc": "4624:248:74", + "nodeType": "YulBlock", + "src": "4624:248:74", + "statements": [ + { + "nativeSrc": "4634:26:74", + "nodeType": "YulAssignment", + "src": "4634:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4646:9:74", + "nodeType": "YulIdentifier", + "src": "4646:9:74" + }, + { + "kind": "number", + "nativeSrc": "4657:2:74", + "nodeType": "YulLiteral", + "src": "4657:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4642:3:74", + "nodeType": "YulIdentifier", + "src": "4642:3:74" + }, + "nativeSrc": "4642:18:74", + "nodeType": "YulFunctionCall", + "src": "4642:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4634:4:74", + "nodeType": "YulIdentifier", + "src": "4634:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4681:9:74", + "nodeType": "YulIdentifier", + "src": "4681:9:74" + }, + { + "kind": "number", + "nativeSrc": "4692:1:74", + "nodeType": "YulLiteral", + "src": "4692:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4677:3:74", + "nodeType": "YulIdentifier", + "src": "4677:3:74" + }, + "nativeSrc": "4677:17:74", + "nodeType": "YulFunctionCall", + "src": "4677:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4700:4:74", + "nodeType": "YulIdentifier", + "src": "4700:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4706:9:74", + "nodeType": "YulIdentifier", + "src": "4706:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4696:3:74", + "nodeType": "YulIdentifier", + "src": "4696:3:74" + }, + "nativeSrc": "4696:20:74", + "nodeType": "YulFunctionCall", + "src": "4696:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4670:6:74", + "nodeType": "YulIdentifier", + "src": "4670:6:74" + }, + "nativeSrc": "4670:47:74", + "nodeType": "YulFunctionCall", + "src": "4670:47:74" + }, + "nativeSrc": "4670:47:74", + "nodeType": "YulExpressionStatement", + "src": "4670:47:74" + }, + { + "nativeSrc": "4726:139:74", + "nodeType": "YulAssignment", + "src": "4726:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4860:4:74", + "nodeType": "YulIdentifier", + "src": "4860:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4734:124:74", + "nodeType": "YulIdentifier", + "src": "4734:124:74" + }, + "nativeSrc": "4734:131:74", + "nodeType": "YulFunctionCall", + "src": "4734:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4726:4:74", + "nodeType": "YulIdentifier", + "src": "4726:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "4453:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4604:9:74", + "nodeType": "YulTypedName", + "src": "4604:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4619:4:74", + "nodeType": "YulTypedName", + "src": "4619:4:74", + "type": "" + } + ], + "src": "4453:419:74" + } + ] + }, + "contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610084578063e0dba60f146100b4578063f2fde38b146100d0575b600080fd5b6100646100ec565b005b61006e610100565b60405161007b9190610408565b60405180910390f35b61009e60048036038101906100999190610454565b610129565b6040516100ab919061049c565b60405180910390f35b6100ce60048036038101906100c991906104e3565b610149565b005b6100ea60048036038101906100e59190610454565b6101fa565b005b6100f461027d565b6100fe60006102fb565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60016020528060005260406000206000915054906101000a900460ff1681565b61015161027d565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87826040516101ee919061049c565b60405180910390a25050565b61020261027d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610268906105a6565b60405180910390fd5b61027a816102fb565b50565b6102856103bf565b73ffffffffffffffffffffffffffffffffffffffff166102a3610100565b73ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102f090610612565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103f2826103c7565b9050919050565b610402816103e7565b82525050565b600060208201905061041d60008301846103f9565b92915050565b600080fd5b610431816103e7565b811461043c57600080fd5b50565b60008135905061044e81610428565b92915050565b60006020828403121561046a57610469610423565b5b60006104788482850161043f565b91505092915050565b60008115159050919050565b61049681610481565b82525050565b60006020820190506104b1600083018461048d565b92915050565b6104c081610481565b81146104cb57600080fd5b50565b6000813590506104dd816104b7565b92915050565b600080604083850312156104fa576104f9610423565b5b60006105088582860161043f565b9250506020610519858286016104ce565b9150509250929050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610590602683610523565b915061059b82610534565b604082019050919050565b600060208201905081810360008301526105bf81610583565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006105fc602083610523565b9150610607826105c6565b602082019050919050565b6000602082019050818103600083015261062b816105ef565b905091905056fea2646970667358221220dc259d39943d4664e2c1d791d0e2cf928cac90bd2481a86beae8c23b2118984364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x715018A6 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x84 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0xB4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xD0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0xEC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH2 0x100 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x408 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x99 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x129 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAB SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xCE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC9 SWAP2 SWAP1 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x149 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x454 JUMP JUMPDEST PUSH2 0x1FA JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF4 PUSH2 0x27D JUMP JUMPDEST PUSH2 0xFE PUSH1 0x0 PUSH2 0x2FB JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x151 PUSH2 0x27D JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1EE SWAP2 SWAP1 PUSH2 0x49C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x202 PUSH2 0x27D JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x271 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x268 SWAP1 PUSH2 0x5A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x27A DUP2 PUSH2 0x2FB JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x285 PUSH2 0x3BF JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2A3 PUSH2 0x100 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F0 SWAP1 PUSH2 0x612 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F2 DUP3 PUSH2 0x3C7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x402 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x431 DUP2 PUSH2 0x3E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x43C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x44E DUP2 PUSH2 0x428 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x46A JUMPI PUSH2 0x469 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x478 DUP5 DUP3 DUP6 ADD PUSH2 0x43F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x496 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4B1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x48D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4C0 DUP2 PUSH2 0x481 JUMP JUMPDEST DUP2 EQ PUSH2 0x4CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4DD DUP2 PUSH2 0x4B7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4FA JUMPI PUSH2 0x4F9 PUSH2 0x423 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x508 DUP6 DUP3 DUP7 ADD PUSH2 0x43F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x519 DUP6 DUP3 DUP7 ADD PUSH2 0x4CE JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x590 PUSH1 0x26 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x59B DUP3 PUSH2 0x534 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x5BF DUP2 PUSH2 0x583 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FC PUSH1 0x20 DUP4 PUSH2 0x523 JUMP JUMPDEST SWAP2 POP PUSH2 0x607 DUP3 PUSH2 0x5C6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x62B DUP2 PUSH2 0x5EF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDC 0x25 SWAP14 CODECOPY SWAP5 RETURNDATASIZE CHAINID PUSH5 0xE2C1D791D0 0xE2 0xCF SWAP3 DUP13 0xAC SWAP1 0xBD 0x24 DUP2 0xA8 PUSH12 0xEAE8C23B2118984364736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "111:506:43:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1824:101:50;;;:::i;:::-;;1201:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;150:43:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;271:174;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2074:198:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1824:101;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1201:85::-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;150:43:43:-;;;;;;;;;;;;;;;;;;;;;;:::o;271:174::-;1094:13:50;:11;:13::i;:::-;380:6:43::1;354:11;:23;366:10;354:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;419:10;401:37;;;431:6;401:37;;;;;;:::i;:::-;;;;;;;;271:174:::0;;:::o;2074:198:50:-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1359:130::-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;2426:187::-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;7:126:74:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;674:117::-;783:1;780;773:12;920:122;993:24;1011:5;993:24;:::i;:::-;986:5;983:35;973:63;;1032:1;1029;1022:12;973:63;920:122;:::o;1048:139::-;1094:5;1132:6;1119:20;1110:29;;1148:33;1175:5;1148:33;:::i;:::-;1048:139;;;;:::o;1193:329::-;1252:6;1301:2;1289:9;1280:7;1276:23;1272:32;1269:119;;;1307:79;;:::i;:::-;1269:119;1427:1;1452:53;1497:7;1488:6;1477:9;1473:22;1452:53;:::i;:::-;1442:63;;1398:117;1193:329;;;;:::o;1528:90::-;1562:7;1605:5;1598:13;1591:21;1580:32;;1528:90;;;:::o;1624:109::-;1705:21;1720:5;1705:21;:::i;:::-;1700:3;1693:34;1624:109;;:::o;1739:210::-;1826:4;1864:2;1853:9;1849:18;1841:26;;1877:65;1939:1;1928:9;1924:17;1915:6;1877:65;:::i;:::-;1739:210;;;;:::o;1955:116::-;2025:21;2040:5;2025:21;:::i;:::-;2018:5;2015:32;2005:60;;2061:1;2058;2051:12;2005:60;1955:116;:::o;2077:133::-;2120:5;2158:6;2145:20;2136:29;;2174:30;2198:5;2174:30;:::i;:::-;2077:133;;;;:::o;2216:468::-;2281:6;2289;2338:2;2326:9;2317:7;2313:23;2309:32;2306:119;;;2344:79;;:::i;:::-;2306:119;2464:1;2489:53;2534:7;2525:6;2514:9;2510:22;2489:53;:::i;:::-;2479:63;;2435:117;2591:2;2617:50;2659:7;2650:6;2639:9;2635:22;2617:50;:::i;:::-;2607:60;;2562:115;2216:468;;;;;:::o;2690:169::-;2774:11;2808:6;2803:3;2796:19;2848:4;2843:3;2839:14;2824:29;;2690:169;;;;:::o;2865:225::-;3005:34;3001:1;2993:6;2989:14;2982:58;3074:8;3069:2;3061:6;3057:15;3050:33;2865:225;:::o;3096:366::-;3238:3;3259:67;3323:2;3318:3;3259:67;:::i;:::-;3252:74;;3335:93;3424:3;3335:93;:::i;:::-;3453:2;3448:3;3444:12;3437:19;;3096:366;;;:::o;3468:419::-;3634:4;3672:2;3661:9;3657:18;3649:26;;3721:9;3715:4;3711:20;3707:1;3696:9;3692:17;3685:47;3749:131;3875:4;3749:131;:::i;:::-;3741:139;;3468:419;;;:::o;3893:182::-;4033:34;4029:1;4021:6;4017:14;4010:58;3893:182;:::o;4081:366::-;4223:3;4244:67;4308:2;4303:3;4244:67;:::i;:::-;4237:74;;4320:93;4409:3;4320:93;:::i;:::-;4438:2;4433:3;4429:12;4422:19;;4081:366;;;:::o;4453:419::-;4619:4;4657:2;4646:9;4642:18;4634:26;;4706:9;4700:4;4696:20;4692:1;4681:9;4677:17;4670:47;4734:131;4860:4;4734:131;:::i;:::-;4726:139;;4453:419;;;:::o" + }, + "methodIdentifiers": { + "controllers(address)": "da8c229e", + "owner()": "8da5cb5b", + "renounceOwnership()": "715018a6", + "setController(address,bool)": "e0dba60f", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"ControllerChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"controllers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"setController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol\":\"Controllable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol\":{\"keccak256\":\"0x9a9191656a82eda6763cda29ce893ddbfddb6c43559ff3b90c00a184e14e1fa1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e62f72db49a31b27ecb0ced7b66807c68c759be0e0a2b186b0a259c7b38bbc3c\",\"dweb:/ipfs/QmS1S93ApCFfSUk9h7R9zirzN2P9ZexkjktargHC3n3GBS\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol": { + "ERC1155Fuse": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "_tokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getData", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "_tokens(uint256)": "ed70554d", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address,uint256)": "00fdd58e", + "balanceOfBatch(address[],uint256[])": "4e1273f4", + "getApproved(uint256)": "081812fc", + "getData(uint256)": "0178fe3f", + "isApprovedForAll(address,address)": "e985e9c5", + "ownerOf(uint256)": "6352211e", + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": "2eb2c2d6", + "safeTransferFrom(address,address,uint256,uint256,bytes)": "f242432a", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "uri(uint256)": "0e89341c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"_tokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to `approved`.\"},\"TransferBatch(address,address,address,uint256[],uint256[])\":{\"details\":\"Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all transfers.\"},\"TransferSingle(address,address,address,uint256,uint256)\":{\"details\":\"Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\"},\"URI(string,uint256)\":{\"details\":\"Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. If an {URI} event was emitted for `id`, the standard https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value returned by {IERC1155MetadataURI-uri}.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address,uint256)\":{\"details\":\"See {IERC1155-balanceOf}. Requirements: - `account` cannot be the zero address.\"},\"balanceOfBatch(address[],uint256[])\":{\"details\":\"See {IERC1155-balanceOfBatch}. Requirements: - `accounts` and `ids` must have the same length.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"getData(uint256)\":{\"details\":\"Returns the Name's owner address and fuses\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC1155-isApprovedForAll}.\"},\"safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)\":{\"details\":\"See {IERC1155-safeBatchTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,uint256,bytes)\":{\"details\":\"See {IERC1155-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC1155-setApprovalForAll}.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"uri(uint256)\":{\"details\":\"Returns the URI for token type `id`. If the `\\\\{id\\\\}` substring is present in the URI, it must be replaced by clients with the actual token type ID.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol\":\"ERC1155Fuse\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol\":{\"keccak256\":\"0xfbbd36e7f5df0fe7a8e9199783af99ac61ab24122e4a9fdb072bbd4cd676a88b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b15c5e1e4c9d57d7a1e32281618ec59c3f8e50a129c0f340009bb3579d1ab09b\",\"dweb:/ipfs/QmYsSq9JC37XiaPXA2cayVoxCsz2N5DF9TQX6rMTx9PY8w\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol\":{\"keccak256\":\"0xa66d18b9a85458d28fc3304717964502ae36f7f8a2ff35bc83f6f85d74b03574\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e46c80ea068989111d6103e5521223f9ef337e93de76deed8b03f75c6f7b2797\",\"dweb:/ipfs/QmNoSE6knNfFncdDDLTb3fGR6oSQty1srG96Vsx3E9wQdw\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol": { + "IMetadataService": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "uri(uint256)": "0e89341c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":\"IMetadataService\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":{\"keccak256\":\"0xb3f1cf6df01ed7b15e5f2318f6823afbdb586ca38c2124c67955c645647ae9a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71aa1053dd87829c5eb25d32840d7b0d33cd9d54d22e905a01436bf97cc32b8c\",\"dweb:/ipfs/QmeMNnGKqf3oZyYwDQzEuQhti58UCCMRCMAD2EBx5T8dSH\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol": { + "INameWrapper": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "ExpiryExtended", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + } + ], + "name": "FusesSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "NameUnwrapped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "NameWrapped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint32", + "name": "fuseMask", + "type": "uint32" + } + ], + "name": "allFusesBurned", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "canModifyName", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "extendExpiry", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "getData", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint32", + "name": "", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "isWrapped", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "isWrapped", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "metadataService", + "outputs": [ + { + "internalType": "contract IMetadataService", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "names", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + } + ], + "name": "registerAndWrapETH2LD", + "outputs": [ + { + "internalType": "uint256", + "name": "registrarExpiry", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "registrar", + "outputs": [ + { + "internalType": "contract IBaseRegistrar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "labelHash", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "renew", + "outputs": [ + { + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setChildFuses", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + } + ], + "name": "setFuses", + "outputs": [ + { + "internalType": "uint32", + "name": "newFuses", + "type": "uint32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IMetadataService", + "name": "_metadataService", + "type": "address" + } + ], + "name": "setMetadataService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "newOwner", + "type": "address" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setSubnodeOwner", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setSubnodeRecord", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setTTL", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract INameWrapperUpgrade", + "name": "_upgradeAddress", + "type": "address" + } + ], + "name": "setUpgradeContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceID", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "unwrap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "label", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "newRegistrant", + "type": "address" + }, + { + "internalType": "address", + "name": "newController", + "type": "address" + } + ], + "name": "unwrapETH2LD", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "upgradeContract", + "outputs": [ + { + "internalType": "contract INameWrapperUpgrade", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "wrap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "wrapETH2LD", + "outputs": [ + { + "internalType": "uint64", + "name": "expires", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "allFusesBurned(bytes32,uint32)": "adf4960a", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address,uint256)": "00fdd58e", + "balanceOfBatch(address[],uint256[])": "4e1273f4", + "canModifyName(bytes32,address)": "41415eab", + "ens()": "3f15457f", + "extendExpiry(bytes32,bytes32,uint64)": "6e5d6ad2", + "getApproved(uint256)": "081812fc", + "getData(uint256)": "0178fe3f", + "isApprovedForAll(address,address)": "e985e9c5", + "isWrapped(bytes32)": "fd0cd0d9", + "isWrapped(bytes32,bytes32)": "d9a50c12", + "metadataService()": "53095467", + "name()": "06fdde03", + "names(bytes32)": "20c38e2b", + "ownerOf(uint256)": "6352211e", + "registerAndWrapETH2LD(string,address,uint256,address,uint16)": "a4014982", + "registrar()": "2b20e397", + "renew(uint256,uint256)": "c475abff", + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": "2eb2c2d6", + "safeTransferFrom(address,address,uint256,uint256,bytes)": "f242432a", + "setApprovalForAll(address,bool)": "a22cb465", + "setChildFuses(bytes32,bytes32,uint32,uint64)": "33c69ea9", + "setFuses(bytes32,uint16)": "402906fc", + "setMetadataService(address)": "1534e177", + "setRecord(bytes32,address,address,uint64)": "cf408823", + "setResolver(bytes32,address)": "1896f70a", + "setSubnodeOwner(bytes32,string,address,uint32,uint64)": "c658e086", + "setSubnodeRecord(bytes32,string,address,address,uint64,uint32,uint64)": "24c1af44", + "setTTL(bytes32,uint64)": "14ab9038", + "setUpgradeContract(address)": "b6bcad26", + "supportsInterface(bytes4)": "01ffc9a7", + "unwrap(bytes32,bytes32,address)": "d8c9921a", + "unwrapETH2LD(bytes32,address,address)": "8b4dfa75", + "upgrade(bytes,bytes)": "c93ab3fd", + "upgradeContract()": "1f4e1504", + "uri(uint256)": "0e89341c", + "wrap(bytes,address,address)": "eb8ae530", + "wrapETH2LD(string,address,uint16,address)": "8cf8b41e" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"ExpiryExtended\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"}],\"name\":\"FusesSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NameUnwrapped\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"NameWrapped\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint32\",\"name\":\"fuseMask\",\"type\":\"uint32\"}],\"name\":\"allFusesBurned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"canModifyName\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ens\",\"outputs\":[{\"internalType\":\"contract ENS\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"extendExpiry\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"getData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"isWrapped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"isWrapped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadataService\",\"outputs\":[{\"internalType\":\"contract IMetadataService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"names\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"}],\"name\":\"registerAndWrapETH2LD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"registrarExpiry\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registrar\",\"outputs\":[{\"internalType\":\"contract IBaseRegistrar\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"labelHash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"renew\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setChildFuses\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"}],\"name\":\"setFuses\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"newFuses\",\"type\":\"uint32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IMetadataService\",\"name\":\"_metadataService\",\"type\":\"address\"}],\"name\":\"setMetadataService\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract INameWrapperUpgrade\",\"name\":\"_upgradeAddress\",\"type\":\"address\"}],\"name\":\"setUpgradeContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"unwrap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"newRegistrant\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"newController\",\"type\":\"address\"}],\"name\":\"unwrapETH2LD\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"upgradeContract\",\"outputs\":[{\"internalType\":\"contract INameWrapperUpgrade\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"wrap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"wrapETH2LD\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"expires\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to `approved`.\"},\"TransferBatch(address,address,address,uint256[],uint256[])\":{\"details\":\"Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all transfers.\"},\"TransferSingle(address,address,address,uint256,uint256)\":{\"details\":\"Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\"},\"URI(string,uint256)\":{\"details\":\"Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. If an {URI} event was emitted for `id`, the standard https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value returned by {IERC1155MetadataURI-uri}.\"}},\"kind\":\"dev\",\"methods\":{\"balanceOf(address,uint256)\":{\"details\":\"Returns the amount of tokens of token type `id` owned by `account`. Requirements: - `account` cannot be the zero address.\"},\"balanceOfBatch(address[],uint256[])\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}. Requirements: - `accounts` and `ids` must have the same length.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns true if `operator` is approved to transfer ``account``'s tokens. See {setApprovalForAll}.\"},\"safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}. Emits a {TransferBatch} event. Requirements: - `ids` and `amounts` must have the same length. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the acceptance magic value.\"},\"safeTransferFrom(address,address,uint256,uint256,bytes)\":{\"details\":\"Transfers `amount` tokens of token type `id` from `from` to `to`. Emits a {TransferSingle} event. Requirements: - `to` cannot be the zero address. - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}. - `from` must have a balance of tokens of type `id` of at least `amount`. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the acceptance magic value.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`, Emits an {ApprovalForAll} event. Requirements: - `operator` cannot be the caller.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\":\"INameWrapper\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":{\"keccak256\":\"0xb3f1cf6df01ed7b15e5f2318f6823afbdb586ca38c2124c67955c645647ae9a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71aa1053dd87829c5eb25d32840d7b0d33cd9d54d22e905a01436bf97cc32b8c\",\"dweb:/ipfs/QmeMNnGKqf3oZyYwDQzEuQhti58UCCMRCMAD2EBx5T8dSH\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\":{\"keccak256\":\"0x70310eb67146d7290731c31841399640ac3b6a949eadc6598bc150123d185c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a85d9e2d6b235900131129386047fae5fb77438806b681ac566119868be5a502\",\"dweb:/ipfs/Qmd9ys5jeRx77TDVeRqWUme7a5LUDT4k7wQ91wVSayDpTR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":{\"keccak256\":\"0x42e0cec6cd9d1a62d51d45b678f69d3e4ad5555e659b197e41257b308346bb8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5afeadfdf2232a2333afb5345b65a25f7199b62ed6fde403273b762c91f5e9af\",\"dweb:/ipfs/QmWKhi3FuqX2KgRrBdh65gB3pmiwA2QMYPeiDbsMKv6a88\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol": { + "INameWrapperUpgrade": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + }, + { + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "wrapFromUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "wrapFromUpgrade(bytes,address,uint32,uint64,address,bytes)": "9198c276" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"wrapFromUpgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":\"INameWrapperUpgrade\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":{\"keccak256\":\"0x42e0cec6cd9d1a62d51d45b678f69d3e4ad5555e659b197e41257b308346bb8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5afeadfdf2232a2333afb5345b65a25f7199b62ed6fde403273b762c91f5e9af\",\"dweb:/ipfs/QmWKhi3FuqX2KgRrBdh65gB3pmiwA2QMYPeiDbsMKv6a88\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol": { + "NameWrapper": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract ENS", + "name": "_ens", + "type": "address" + }, + { + "internalType": "contract IBaseRegistrar", + "name": "_registrar", + "type": "address" + }, + { + "internalType": "contract IMetadataService", + "name": "_metadataService", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "CannotUpgrade", + "type": "error" + }, + { + "inputs": [], + "name": "IncompatibleParent", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "IncorrectTargetOwner", + "type": "error" + }, + { + "inputs": [], + "name": "IncorrectTokenType", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "labelHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "expectedLabelhash", + "type": "bytes32" + } + ], + "name": "LabelMismatch", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "label", + "type": "string" + } + ], + "name": "LabelTooLong", + "type": "error" + }, + { + "inputs": [], + "name": "LabelTooShort", + "type": "error" + }, + { + "inputs": [], + "name": "NameIsNotWrapped", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "OperationProhibited", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "Unauthorised", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "active", + "type": "bool" + } + ], + "name": "ControllerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "ExpiryExtended", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + } + ], + "name": "FusesSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "NameUnwrapped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "NameWrapped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "_tokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint32", + "name": "fuseMask", + "type": "uint32" + } + ], + "name": "allFusesBurned", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "canExtendSubnames", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "canModifyName", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "controllers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "extendExpiry", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "getData", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + } + ], + "name": "isWrapped", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "name": "isWrapped", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "metadataService", + "outputs": [ + { + "internalType": "contract IMetadataService", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "names", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "recoverFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + } + ], + "name": "registerAndWrapETH2LD", + "outputs": [ + { + "internalType": "uint256", + "name": "registrarExpiry", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "registrar", + "outputs": [ + { + "internalType": "contract IBaseRegistrar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "renew", + "outputs": [ + { + "internalType": "uint256", + "name": "expires", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setChildFuses", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "bool", + "name": "active", + "type": "bool" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + } + ], + "name": "setFuses", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IMetadataService", + "name": "_metadataService", + "type": "address" + } + ], + "name": "setMetadataService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setRecord", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "setResolver", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setSubnodeOwner", + "outputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "fuses", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "name": "setSubnodeRecord", + "outputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "ttl", + "type": "uint64" + } + ], + "name": "setTTL", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract INameWrapperUpgrade", + "name": "_upgradeAddress", + "type": "address" + } + ], + "name": "setUpgradeContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "parentNode", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "unwrap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "labelhash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "registrant", + "type": "address" + }, + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "unwrapETH2LD", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "upgradeContract", + "outputs": [ + { + "internalType": "contract INameWrapperUpgrade", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "wrap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "label", + "type": "string" + }, + { + "internalType": "address", + "name": "wrappedOwner", + "type": "address" + }, + { + "internalType": "uint16", + "name": "ownerControlledFuses", + "type": "uint16" + }, + { + "internalType": "address", + "name": "resolver", + "type": "address" + } + ], + "name": "wrapETH2LD", + "outputs": [ + { + "internalType": "uint64", + "name": "expiry", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_10296": { + "entryPoint": null, + "id": 10296, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_13078": { + "entryPoint": null, + "id": 13078, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_7272": { + "entryPoint": null, + "id": 7272, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 835, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_setData_9245": { + "entryPoint": 1039, + "id": 9245, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_transferOwnership_13166": { + "entryPoint": 843, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 1518, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 1649, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 1215, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_IBaseRegistrar_$4430_fromMemory": { + "entryPoint": 1277, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_IMetadataService_$9690_fromMemory": { + "entryPoint": 1339, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 1539, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 1670, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_ENS_$4567t_contract$_IBaseRegistrar_$4430t_contract$_IMetadataService_$9690_fromMemory": { + "entryPoint": 1360, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 1584, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 1453, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 1599, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 1468, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_storage": { + "entryPoint": 1869, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 1715, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_bytes_storage": { + "entryPoint": 2166, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_address": { + "entryPoint": 1156, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 1443, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 1174, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_IBaseRegistrar_$4430": { + "entryPoint": 1236, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_IMetadataService_$9690": { + "entryPoint": 1298, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 1124, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 2001, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 2131, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 2021, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_bytes_storage": { + "entryPoint": 2307, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 1890, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 1820, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 2279, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "identity": { + "entryPoint": 2011, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 2249, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 1773, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 1726, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 2055, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 1119, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "shift_left_dynamic": { + "entryPoint": 1906, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 2236, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 2107, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 1919, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 2065, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 1495, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 1626, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 1192, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_IBaseRegistrar_$4430": { + "entryPoint": 1254, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_IMetadataService_$9690": { + "entryPoint": 1316, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 2102, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:10067:74", + "nodeType": "YulBlock", + "src": "0:10067:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "625:51:74", + "nodeType": "YulBlock", + "src": "625:51:74", + "statements": [ + { + "nativeSrc": "635:35:74", + "nodeType": "YulAssignment", + "src": "635:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "664:5:74", + "nodeType": "YulIdentifier", + "src": "664:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "646:17:74", + "nodeType": "YulIdentifier", + "src": "646:17:74" + }, + "nativeSrc": "646:24:74", + "nodeType": "YulFunctionCall", + "src": "646:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "635:7:74", + "nodeType": "YulIdentifier", + "src": "635:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "568:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulTypedName", + "src": "607:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "617:7:74", + "nodeType": "YulTypedName", + "src": "617:7:74", + "type": "" + } + ], + "src": "568:108:74" + }, + { + "body": { + "nativeSrc": "737:91:74", + "nodeType": "YulBlock", + "src": "737:91:74", + "statements": [ + { + "body": { + "nativeSrc": "806:16:74", + "nodeType": "YulBlock", + "src": "806:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "815:1:74", + "nodeType": "YulLiteral", + "src": "815:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "818:1:74", + "nodeType": "YulLiteral", + "src": "818:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "808:6:74", + "nodeType": "YulIdentifier", + "src": "808:6:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulFunctionCall", + "src": "808:12:74" + }, + "nativeSrc": "808:12:74", + "nodeType": "YulExpressionStatement", + "src": "808:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "797:5:74", + "nodeType": "YulIdentifier", + "src": "797:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "767:29:74", + "nodeType": "YulIdentifier", + "src": "767:29:74" + }, + "nativeSrc": "767:36:74", + "nodeType": "YulFunctionCall", + "src": "767:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "757:2:74", + "nodeType": "YulIdentifier", + "src": "757:2:74" + }, + "nativeSrc": "757:47:74", + "nodeType": "YulFunctionCall", + "src": "757:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "750:6:74", + "nodeType": "YulIdentifier", + "src": "750:6:74" + }, + "nativeSrc": "750:55:74", + "nodeType": "YulFunctionCall", + "src": "750:55:74" + }, + "nativeSrc": "747:75:74", + "nodeType": "YulIf", + "src": "747:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "682:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "730:5:74", + "nodeType": "YulTypedName", + "src": "730:5:74", + "type": "" + } + ], + "src": "682:146:74" + }, + { + "body": { + "nativeSrc": "909:92:74", + "nodeType": "YulBlock", + "src": "909:92:74", + "statements": [ + { + "nativeSrc": "919:22:74", + "nodeType": "YulAssignment", + "src": "919:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "934:6:74", + "nodeType": "YulIdentifier", + "src": "934:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "928:5:74", + "nodeType": "YulIdentifier", + "src": "928:5:74" + }, + "nativeSrc": "928:13:74", + "nodeType": "YulFunctionCall", + "src": "928:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "919:5:74", + "nodeType": "YulIdentifier", + "src": "919:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "950:38:74", + "nodeType": "YulIdentifier", + "src": "950:38:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulFunctionCall", + "src": "950:45:74" + }, + "nativeSrc": "950:45:74", + "nodeType": "YulExpressionStatement", + "src": "950:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "834:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "887:6:74", + "nodeType": "YulTypedName", + "src": "887:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "895:3:74", + "nodeType": "YulTypedName", + "src": "895:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "903:5:74", + "nodeType": "YulTypedName", + "src": "903:5:74", + "type": "" + } + ], + "src": "834:167:74" + }, + { + "body": { + "nativeSrc": "1075:51:74", + "nodeType": "YulBlock", + "src": "1075:51:74", + "statements": [ + { + "nativeSrc": "1085:35:74", + "nodeType": "YulAssignment", + "src": "1085:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1114:5:74", + "nodeType": "YulIdentifier", + "src": "1114:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1096:17:74", + "nodeType": "YulIdentifier", + "src": "1096:17:74" + }, + "nativeSrc": "1096:24:74", + "nodeType": "YulFunctionCall", + "src": "1096:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1085:7:74", + "nodeType": "YulIdentifier", + "src": "1085:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_IBaseRegistrar_$4430", + "nativeSrc": "1007:119:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1057:5:74", + "nodeType": "YulTypedName", + "src": "1057:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1067:7:74", + "nodeType": "YulTypedName", + "src": "1067:7:74", + "type": "" + } + ], + "src": "1007:119:74" + }, + { + "body": { + "nativeSrc": "1198:102:74", + "nodeType": "YulBlock", + "src": "1198:102:74", + "statements": [ + { + "body": { + "nativeSrc": "1278:16:74", + "nodeType": "YulBlock", + "src": "1278:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1287:1:74", + "nodeType": "YulLiteral", + "src": "1287:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1290:1:74", + "nodeType": "YulLiteral", + "src": "1290:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1280:6:74", + "nodeType": "YulIdentifier", + "src": "1280:6:74" + }, + "nativeSrc": "1280:12:74", + "nodeType": "YulFunctionCall", + "src": "1280:12:74" + }, + "nativeSrc": "1280:12:74", + "nodeType": "YulExpressionStatement", + "src": "1280:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1221:5:74", + "nodeType": "YulIdentifier", + "src": "1221:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1269:5:74", + "nodeType": "YulIdentifier", + "src": "1269:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_IBaseRegistrar_$4430", + "nativeSrc": "1228:40:74", + "nodeType": "YulIdentifier", + "src": "1228:40:74" + }, + "nativeSrc": "1228:47:74", + "nodeType": "YulFunctionCall", + "src": "1228:47:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1218:2:74", + "nodeType": "YulIdentifier", + "src": "1218:2:74" + }, + "nativeSrc": "1218:58:74", + "nodeType": "YulFunctionCall", + "src": "1218:58:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1211:6:74", + "nodeType": "YulIdentifier", + "src": "1211:6:74" + }, + "nativeSrc": "1211:66:74", + "nodeType": "YulFunctionCall", + "src": "1211:66:74" + }, + "nativeSrc": "1208:86:74", + "nodeType": "YulIf", + "src": "1208:86:74" + } + ] + }, + "name": "validator_revert_t_contract$_IBaseRegistrar_$4430", + "nativeSrc": "1132:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1191:5:74", + "nodeType": "YulTypedName", + "src": "1191:5:74", + "type": "" + } + ], + "src": "1132:168:74" + }, + { + "body": { + "nativeSrc": "1392:103:74", + "nodeType": "YulBlock", + "src": "1392:103:74", + "statements": [ + { + "nativeSrc": "1402:22:74", + "nodeType": "YulAssignment", + "src": "1402:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1417:6:74", + "nodeType": "YulIdentifier", + "src": "1417:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1411:5:74", + "nodeType": "YulIdentifier", + "src": "1411:5:74" + }, + "nativeSrc": "1411:13:74", + "nodeType": "YulFunctionCall", + "src": "1411:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1402:5:74", + "nodeType": "YulIdentifier", + "src": "1402:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1483:5:74", + "nodeType": "YulIdentifier", + "src": "1483:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_IBaseRegistrar_$4430", + "nativeSrc": "1433:49:74", + "nodeType": "YulIdentifier", + "src": "1433:49:74" + }, + "nativeSrc": "1433:56:74", + "nodeType": "YulFunctionCall", + "src": "1433:56:74" + }, + "nativeSrc": "1433:56:74", + "nodeType": "YulExpressionStatement", + "src": "1433:56:74" + } + ] + }, + "name": "abi_decode_t_contract$_IBaseRegistrar_$4430_fromMemory", + "nativeSrc": "1306:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1370:6:74", + "nodeType": "YulTypedName", + "src": "1370:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1378:3:74", + "nodeType": "YulTypedName", + "src": "1378:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1386:5:74", + "nodeType": "YulTypedName", + "src": "1386:5:74", + "type": "" + } + ], + "src": "1306:189:74" + }, + { + "body": { + "nativeSrc": "1571:51:74", + "nodeType": "YulBlock", + "src": "1571:51:74", + "statements": [ + { + "nativeSrc": "1581:35:74", + "nodeType": "YulAssignment", + "src": "1581:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1610:5:74", + "nodeType": "YulIdentifier", + "src": "1610:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1592:17:74", + "nodeType": "YulIdentifier", + "src": "1592:17:74" + }, + "nativeSrc": "1592:24:74", + "nodeType": "YulFunctionCall", + "src": "1592:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1581:7:74", + "nodeType": "YulIdentifier", + "src": "1581:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_IMetadataService_$9690", + "nativeSrc": "1501:121:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1553:5:74", + "nodeType": "YulTypedName", + "src": "1553:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1563:7:74", + "nodeType": "YulTypedName", + "src": "1563:7:74", + "type": "" + } + ], + "src": "1501:121:74" + }, + { + "body": { + "nativeSrc": "1696:104:74", + "nodeType": "YulBlock", + "src": "1696:104:74", + "statements": [ + { + "body": { + "nativeSrc": "1778:16:74", + "nodeType": "YulBlock", + "src": "1778:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1787:1:74", + "nodeType": "YulLiteral", + "src": "1787:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1790:1:74", + "nodeType": "YulLiteral", + "src": "1790:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1780:6:74", + "nodeType": "YulIdentifier", + "src": "1780:6:74" + }, + "nativeSrc": "1780:12:74", + "nodeType": "YulFunctionCall", + "src": "1780:12:74" + }, + "nativeSrc": "1780:12:74", + "nodeType": "YulExpressionStatement", + "src": "1780:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1719:5:74", + "nodeType": "YulIdentifier", + "src": "1719:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1769:5:74", + "nodeType": "YulIdentifier", + "src": "1769:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_IMetadataService_$9690", + "nativeSrc": "1726:42:74", + "nodeType": "YulIdentifier", + "src": "1726:42:74" + }, + "nativeSrc": "1726:49:74", + "nodeType": "YulFunctionCall", + "src": "1726:49:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1716:2:74", + "nodeType": "YulIdentifier", + "src": "1716:2:74" + }, + "nativeSrc": "1716:60:74", + "nodeType": "YulFunctionCall", + "src": "1716:60:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1709:6:74", + "nodeType": "YulIdentifier", + "src": "1709:6:74" + }, + "nativeSrc": "1709:68:74", + "nodeType": "YulFunctionCall", + "src": "1709:68:74" + }, + "nativeSrc": "1706:88:74", + "nodeType": "YulIf", + "src": "1706:88:74" + } + ] + }, + "name": "validator_revert_t_contract$_IMetadataService_$9690", + "nativeSrc": "1628:172:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1689:5:74", + "nodeType": "YulTypedName", + "src": "1689:5:74", + "type": "" + } + ], + "src": "1628:172:74" + }, + { + "body": { + "nativeSrc": "1894:105:74", + "nodeType": "YulBlock", + "src": "1894:105:74", + "statements": [ + { + "nativeSrc": "1904:22:74", + "nodeType": "YulAssignment", + "src": "1904:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1919:6:74", + "nodeType": "YulIdentifier", + "src": "1919:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1913:5:74", + "nodeType": "YulIdentifier", + "src": "1913:5:74" + }, + "nativeSrc": "1913:13:74", + "nodeType": "YulFunctionCall", + "src": "1913:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1904:5:74", + "nodeType": "YulIdentifier", + "src": "1904:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1987:5:74", + "nodeType": "YulIdentifier", + "src": "1987:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_IMetadataService_$9690", + "nativeSrc": "1935:51:74", + "nodeType": "YulIdentifier", + "src": "1935:51:74" + }, + "nativeSrc": "1935:58:74", + "nodeType": "YulFunctionCall", + "src": "1935:58:74" + }, + "nativeSrc": "1935:58:74", + "nodeType": "YulExpressionStatement", + "src": "1935:58:74" + } + ] + }, + "name": "abi_decode_t_contract$_IMetadataService_$9690_fromMemory", + "nativeSrc": "1806:193:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1872:6:74", + "nodeType": "YulTypedName", + "src": "1872:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1880:3:74", + "nodeType": "YulTypedName", + "src": "1880:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1888:5:74", + "nodeType": "YulTypedName", + "src": "1888:5:74", + "type": "" + } + ], + "src": "1806:193:74" + }, + { + "body": { + "nativeSrc": "2176:612:74", + "nodeType": "YulBlock", + "src": "2176:612:74", + "statements": [ + { + "body": { + "nativeSrc": "2222:83:74", + "nodeType": "YulBlock", + "src": "2222:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2224:77:74", + "nodeType": "YulIdentifier", + "src": "2224:77:74" + }, + "nativeSrc": "2224:79:74", + "nodeType": "YulFunctionCall", + "src": "2224:79:74" + }, + "nativeSrc": "2224:79:74", + "nodeType": "YulExpressionStatement", + "src": "2224:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2197:7:74", + "nodeType": "YulIdentifier", + "src": "2197:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2206:9:74", + "nodeType": "YulIdentifier", + "src": "2206:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2193:3:74", + "nodeType": "YulIdentifier", + "src": "2193:3:74" + }, + "nativeSrc": "2193:23:74", + "nodeType": "YulFunctionCall", + "src": "2193:23:74" + }, + { + "kind": "number", + "nativeSrc": "2218:2:74", + "nodeType": "YulLiteral", + "src": "2218:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2189:3:74", + "nodeType": "YulIdentifier", + "src": "2189:3:74" + }, + "nativeSrc": "2189:32:74", + "nodeType": "YulFunctionCall", + "src": "2189:32:74" + }, + "nativeSrc": "2186:119:74", + "nodeType": "YulIf", + "src": "2186:119:74" + }, + { + "nativeSrc": "2315:140:74", + "nodeType": "YulBlock", + "src": "2315:140:74", + "statements": [ + { + "nativeSrc": "2330:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2330:15:74", + "value": { + "kind": "number", + "nativeSrc": "2344:1:74", + "nodeType": "YulLiteral", + "src": "2344:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2334:6:74", + "nodeType": "YulTypedName", + "src": "2334:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2359:86:74", + "nodeType": "YulAssignment", + "src": "2359:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2417:9:74", + "nodeType": "YulIdentifier", + "src": "2417:9:74" + }, + { + "name": "offset", + "nativeSrc": "2428:6:74", + "nodeType": "YulIdentifier", + "src": "2428:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2413:3:74", + "nodeType": "YulIdentifier", + "src": "2413:3:74" + }, + "nativeSrc": "2413:22:74", + "nodeType": "YulFunctionCall", + "src": "2413:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2437:7:74", + "nodeType": "YulIdentifier", + "src": "2437:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "2369:43:74", + "nodeType": "YulIdentifier", + "src": "2369:43:74" + }, + "nativeSrc": "2369:76:74", + "nodeType": "YulFunctionCall", + "src": "2369:76:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2359:6:74", + "nodeType": "YulIdentifier", + "src": "2359:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2465:152:74", + "nodeType": "YulBlock", + "src": "2465:152:74", + "statements": [ + { + "nativeSrc": "2480:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2480:16:74", + "value": { + "kind": "number", + "nativeSrc": "2494:2:74", + "nodeType": "YulLiteral", + "src": "2494:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2484:6:74", + "nodeType": "YulTypedName", + "src": "2484:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2510:97:74", + "nodeType": "YulAssignment", + "src": "2510:97:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2579:9:74", + "nodeType": "YulIdentifier", + "src": "2579:9:74" + }, + { + "name": "offset", + "nativeSrc": "2590:6:74", + "nodeType": "YulIdentifier", + "src": "2590:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2575:3:74", + "nodeType": "YulIdentifier", + "src": "2575:3:74" + }, + "nativeSrc": "2575:22:74", + "nodeType": "YulFunctionCall", + "src": "2575:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2599:7:74", + "nodeType": "YulIdentifier", + "src": "2599:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_IBaseRegistrar_$4430_fromMemory", + "nativeSrc": "2520:54:74", + "nodeType": "YulIdentifier", + "src": "2520:54:74" + }, + "nativeSrc": "2520:87:74", + "nodeType": "YulFunctionCall", + "src": "2520:87:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "2510:6:74", + "nodeType": "YulIdentifier", + "src": "2510:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "2627:154:74", + "nodeType": "YulBlock", + "src": "2627:154:74", + "statements": [ + { + "nativeSrc": "2642:16:74", + "nodeType": "YulVariableDeclaration", + "src": "2642:16:74", + "value": { + "kind": "number", + "nativeSrc": "2656:2:74", + "nodeType": "YulLiteral", + "src": "2656:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2646:6:74", + "nodeType": "YulTypedName", + "src": "2646:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2672:99:74", + "nodeType": "YulAssignment", + "src": "2672:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2743:9:74", + "nodeType": "YulIdentifier", + "src": "2743:9:74" + }, + { + "name": "offset", + "nativeSrc": "2754:6:74", + "nodeType": "YulIdentifier", + "src": "2754:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2739:3:74", + "nodeType": "YulIdentifier", + "src": "2739:3:74" + }, + "nativeSrc": "2739:22:74", + "nodeType": "YulFunctionCall", + "src": "2739:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2763:7:74", + "nodeType": "YulIdentifier", + "src": "2763:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_IMetadataService_$9690_fromMemory", + "nativeSrc": "2682:56:74", + "nodeType": "YulIdentifier", + "src": "2682:56:74" + }, + "nativeSrc": "2682:89:74", + "nodeType": "YulFunctionCall", + "src": "2682:89:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "2672:6:74", + "nodeType": "YulIdentifier", + "src": "2672:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_ENS_$4567t_contract$_IBaseRegistrar_$4430t_contract$_IMetadataService_$9690_fromMemory", + "nativeSrc": "2005:783:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2130:9:74", + "nodeType": "YulTypedName", + "src": "2130:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2141:7:74", + "nodeType": "YulTypedName", + "src": "2141:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2153:6:74", + "nodeType": "YulTypedName", + "src": "2153:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2161:6:74", + "nodeType": "YulTypedName", + "src": "2161:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "2169:6:74", + "nodeType": "YulTypedName", + "src": "2169:6:74", + "type": "" + } + ], + "src": "2005:783:74" + }, + { + "body": { + "nativeSrc": "2839:32:74", + "nodeType": "YulBlock", + "src": "2839:32:74", + "statements": [ + { + "nativeSrc": "2849:16:74", + "nodeType": "YulAssignment", + "src": "2849:16:74", + "value": { + "name": "value", + "nativeSrc": "2860:5:74", + "nodeType": "YulIdentifier", + "src": "2860:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2849:7:74", + "nodeType": "YulIdentifier", + "src": "2849:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "2794:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2821:5:74", + "nodeType": "YulTypedName", + "src": "2821:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2831:7:74", + "nodeType": "YulTypedName", + "src": "2831:7:74", + "type": "" + } + ], + "src": "2794:77:74" + }, + { + "body": { + "nativeSrc": "2942:53:74", + "nodeType": "YulBlock", + "src": "2942:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2959:3:74", + "nodeType": "YulIdentifier", + "src": "2959:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2982:5:74", + "nodeType": "YulIdentifier", + "src": "2982:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2964:17:74", + "nodeType": "YulIdentifier", + "src": "2964:17:74" + }, + "nativeSrc": "2964:24:74", + "nodeType": "YulFunctionCall", + "src": "2964:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2952:6:74", + "nodeType": "YulIdentifier", + "src": "2952:6:74" + }, + "nativeSrc": "2952:37:74", + "nodeType": "YulFunctionCall", + "src": "2952:37:74" + }, + "nativeSrc": "2952:37:74", + "nodeType": "YulExpressionStatement", + "src": "2952:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2877:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2930:5:74", + "nodeType": "YulTypedName", + "src": "2930:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2937:3:74", + "nodeType": "YulTypedName", + "src": "2937:3:74", + "type": "" + } + ], + "src": "2877:118:74" + }, + { + "body": { + "nativeSrc": "3099:124:74", + "nodeType": "YulBlock", + "src": "3099:124:74", + "statements": [ + { + "nativeSrc": "3109:26:74", + "nodeType": "YulAssignment", + "src": "3109:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3121:9:74", + "nodeType": "YulIdentifier", + "src": "3121:9:74" + }, + { + "kind": "number", + "nativeSrc": "3132:2:74", + "nodeType": "YulLiteral", + "src": "3132:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3117:3:74", + "nodeType": "YulIdentifier", + "src": "3117:3:74" + }, + "nativeSrc": "3117:18:74", + "nodeType": "YulFunctionCall", + "src": "3117:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3109:4:74", + "nodeType": "YulIdentifier", + "src": "3109:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3189:6:74", + "nodeType": "YulIdentifier", + "src": "3189:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3202:9:74", + "nodeType": "YulIdentifier", + "src": "3202:9:74" + }, + { + "kind": "number", + "nativeSrc": "3213:1:74", + "nodeType": "YulLiteral", + "src": "3213:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3198:3:74", + "nodeType": "YulIdentifier", + "src": "3198:3:74" + }, + "nativeSrc": "3198:17:74", + "nodeType": "YulFunctionCall", + "src": "3198:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "3145:43:74", + "nodeType": "YulIdentifier", + "src": "3145:43:74" + }, + "nativeSrc": "3145:71:74", + "nodeType": "YulFunctionCall", + "src": "3145:71:74" + }, + "nativeSrc": "3145:71:74", + "nodeType": "YulExpressionStatement", + "src": "3145:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "3001:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3071:9:74", + "nodeType": "YulTypedName", + "src": "3071:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3083:6:74", + "nodeType": "YulTypedName", + "src": "3083:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3094:4:74", + "nodeType": "YulTypedName", + "src": "3094:4:74", + "type": "" + } + ], + "src": "3001:222:74" + }, + { + "body": { + "nativeSrc": "3272:79:74", + "nodeType": "YulBlock", + "src": "3272:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3329:16:74", + "nodeType": "YulBlock", + "src": "3329:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3338:1:74", + "nodeType": "YulLiteral", + "src": "3338:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3341:1:74", + "nodeType": "YulLiteral", + "src": "3341:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3331:6:74", + "nodeType": "YulIdentifier", + "src": "3331:6:74" + }, + "nativeSrc": "3331:12:74", + "nodeType": "YulFunctionCall", + "src": "3331:12:74" + }, + "nativeSrc": "3331:12:74", + "nodeType": "YulExpressionStatement", + "src": "3331:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3295:5:74", + "nodeType": "YulIdentifier", + "src": "3295:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3320:5:74", + "nodeType": "YulIdentifier", + "src": "3320:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "3302:17:74", + "nodeType": "YulIdentifier", + "src": "3302:17:74" + }, + "nativeSrc": "3302:24:74", + "nodeType": "YulFunctionCall", + "src": "3302:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3292:2:74", + "nodeType": "YulIdentifier", + "src": "3292:2:74" + }, + "nativeSrc": "3292:35:74", + "nodeType": "YulFunctionCall", + "src": "3292:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3285:6:74", + "nodeType": "YulIdentifier", + "src": "3285:6:74" + }, + "nativeSrc": "3285:43:74", + "nodeType": "YulFunctionCall", + "src": "3285:43:74" + }, + "nativeSrc": "3282:63:74", + "nodeType": "YulIf", + "src": "3282:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "3229:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3265:5:74", + "nodeType": "YulTypedName", + "src": "3265:5:74", + "type": "" + } + ], + "src": "3229:122:74" + }, + { + "body": { + "nativeSrc": "3420:80:74", + "nodeType": "YulBlock", + "src": "3420:80:74", + "statements": [ + { + "nativeSrc": "3430:22:74", + "nodeType": "YulAssignment", + "src": "3430:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3445:6:74", + "nodeType": "YulIdentifier", + "src": "3445:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3439:5:74", + "nodeType": "YulIdentifier", + "src": "3439:5:74" + }, + "nativeSrc": "3439:13:74", + "nodeType": "YulFunctionCall", + "src": "3439:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3430:5:74", + "nodeType": "YulIdentifier", + "src": "3430:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3488:5:74", + "nodeType": "YulIdentifier", + "src": "3488:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "3461:26:74", + "nodeType": "YulIdentifier", + "src": "3461:26:74" + }, + "nativeSrc": "3461:33:74", + "nodeType": "YulFunctionCall", + "src": "3461:33:74" + }, + "nativeSrc": "3461:33:74", + "nodeType": "YulExpressionStatement", + "src": "3461:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "3357:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3398:6:74", + "nodeType": "YulTypedName", + "src": "3398:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3406:3:74", + "nodeType": "YulTypedName", + "src": "3406:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3414:5:74", + "nodeType": "YulTypedName", + "src": "3414:5:74", + "type": "" + } + ], + "src": "3357:143:74" + }, + { + "body": { + "nativeSrc": "3583:274:74", + "nodeType": "YulBlock", + "src": "3583:274:74", + "statements": [ + { + "body": { + "nativeSrc": "3629:83:74", + "nodeType": "YulBlock", + "src": "3629:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3631:77:74", + "nodeType": "YulIdentifier", + "src": "3631:77:74" + }, + "nativeSrc": "3631:79:74", + "nodeType": "YulFunctionCall", + "src": "3631:79:74" + }, + "nativeSrc": "3631:79:74", + "nodeType": "YulExpressionStatement", + "src": "3631:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3604:7:74", + "nodeType": "YulIdentifier", + "src": "3604:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3613:9:74", + "nodeType": "YulIdentifier", + "src": "3613:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3600:3:74", + "nodeType": "YulIdentifier", + "src": "3600:3:74" + }, + "nativeSrc": "3600:23:74", + "nodeType": "YulFunctionCall", + "src": "3600:23:74" + }, + { + "kind": "number", + "nativeSrc": "3625:2:74", + "nodeType": "YulLiteral", + "src": "3625:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3596:3:74", + "nodeType": "YulIdentifier", + "src": "3596:3:74" + }, + "nativeSrc": "3596:32:74", + "nodeType": "YulFunctionCall", + "src": "3596:32:74" + }, + "nativeSrc": "3593:119:74", + "nodeType": "YulIf", + "src": "3593:119:74" + }, + { + "nativeSrc": "3722:128:74", + "nodeType": "YulBlock", + "src": "3722:128:74", + "statements": [ + { + "nativeSrc": "3737:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3737:15:74", + "value": { + "kind": "number", + "nativeSrc": "3751:1:74", + "nodeType": "YulLiteral", + "src": "3751:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3741:6:74", + "nodeType": "YulTypedName", + "src": "3741:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3766:74:74", + "nodeType": "YulAssignment", + "src": "3766:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3812:9:74", + "nodeType": "YulIdentifier", + "src": "3812:9:74" + }, + { + "name": "offset", + "nativeSrc": "3823:6:74", + "nodeType": "YulIdentifier", + "src": "3823:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3808:3:74", + "nodeType": "YulIdentifier", + "src": "3808:3:74" + }, + "nativeSrc": "3808:22:74", + "nodeType": "YulFunctionCall", + "src": "3808:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3832:7:74", + "nodeType": "YulIdentifier", + "src": "3832:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "3776:31:74", + "nodeType": "YulIdentifier", + "src": "3776:31:74" + }, + "nativeSrc": "3776:64:74", + "nodeType": "YulFunctionCall", + "src": "3776:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3766:6:74", + "nodeType": "YulIdentifier", + "src": "3766:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "3506:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3553:9:74", + "nodeType": "YulTypedName", + "src": "3553:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3564:7:74", + "nodeType": "YulTypedName", + "src": "3564:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3576:6:74", + "nodeType": "YulTypedName", + "src": "3576:6:74", + "type": "" + } + ], + "src": "3506:351:74" + }, + { + "body": { + "nativeSrc": "3928:53:74", + "nodeType": "YulBlock", + "src": "3928:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3945:3:74", + "nodeType": "YulIdentifier", + "src": "3945:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3968:5:74", + "nodeType": "YulIdentifier", + "src": "3968:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "3950:17:74", + "nodeType": "YulIdentifier", + "src": "3950:17:74" + }, + "nativeSrc": "3950:24:74", + "nodeType": "YulFunctionCall", + "src": "3950:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3938:6:74", + "nodeType": "YulIdentifier", + "src": "3938:6:74" + }, + "nativeSrc": "3938:37:74", + "nodeType": "YulFunctionCall", + "src": "3938:37:74" + }, + "nativeSrc": "3938:37:74", + "nodeType": "YulExpressionStatement", + "src": "3938:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3863:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3916:5:74", + "nodeType": "YulTypedName", + "src": "3916:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3923:3:74", + "nodeType": "YulTypedName", + "src": "3923:3:74", + "type": "" + } + ], + "src": "3863:118:74" + }, + { + "body": { + "nativeSrc": "4085:124:74", + "nodeType": "YulBlock", + "src": "4085:124:74", + "statements": [ + { + "nativeSrc": "4095:26:74", + "nodeType": "YulAssignment", + "src": "4095:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4107:9:74", + "nodeType": "YulIdentifier", + "src": "4107:9:74" + }, + { + "kind": "number", + "nativeSrc": "4118:2:74", + "nodeType": "YulLiteral", + "src": "4118:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4103:3:74", + "nodeType": "YulIdentifier", + "src": "4103:3:74" + }, + "nativeSrc": "4103:18:74", + "nodeType": "YulFunctionCall", + "src": "4103:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4095:4:74", + "nodeType": "YulIdentifier", + "src": "4095:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4175:6:74", + "nodeType": "YulIdentifier", + "src": "4175:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4188:9:74", + "nodeType": "YulIdentifier", + "src": "4188:9:74" + }, + { + "kind": "number", + "nativeSrc": "4199:1:74", + "nodeType": "YulLiteral", + "src": "4199:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4184:3:74", + "nodeType": "YulIdentifier", + "src": "4184:3:74" + }, + "nativeSrc": "4184:17:74", + "nodeType": "YulFunctionCall", + "src": "4184:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4131:43:74", + "nodeType": "YulIdentifier", + "src": "4131:43:74" + }, + "nativeSrc": "4131:71:74", + "nodeType": "YulFunctionCall", + "src": "4131:71:74" + }, + "nativeSrc": "4131:71:74", + "nodeType": "YulExpressionStatement", + "src": "4131:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "3987:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4057:9:74", + "nodeType": "YulTypedName", + "src": "4057:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4069:6:74", + "nodeType": "YulTypedName", + "src": "4069:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4080:4:74", + "nodeType": "YulTypedName", + "src": "4080:4:74", + "type": "" + } + ], + "src": "3987:222:74" + }, + { + "body": { + "nativeSrc": "4258:79:74", + "nodeType": "YulBlock", + "src": "4258:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4315:16:74", + "nodeType": "YulBlock", + "src": "4315:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4324:1:74", + "nodeType": "YulLiteral", + "src": "4324:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4327:1:74", + "nodeType": "YulLiteral", + "src": "4327:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4317:6:74", + "nodeType": "YulIdentifier", + "src": "4317:6:74" + }, + "nativeSrc": "4317:12:74", + "nodeType": "YulFunctionCall", + "src": "4317:12:74" + }, + "nativeSrc": "4317:12:74", + "nodeType": "YulExpressionStatement", + "src": "4317:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4281:5:74", + "nodeType": "YulIdentifier", + "src": "4281:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4306:5:74", + "nodeType": "YulIdentifier", + "src": "4306:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "4288:17:74", + "nodeType": "YulIdentifier", + "src": "4288:17:74" + }, + "nativeSrc": "4288:24:74", + "nodeType": "YulFunctionCall", + "src": "4288:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4278:2:74", + "nodeType": "YulIdentifier", + "src": "4278:2:74" + }, + "nativeSrc": "4278:35:74", + "nodeType": "YulFunctionCall", + "src": "4278:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4271:6:74", + "nodeType": "YulIdentifier", + "src": "4271:6:74" + }, + "nativeSrc": "4271:43:74", + "nodeType": "YulFunctionCall", + "src": "4271:43:74" + }, + "nativeSrc": "4268:63:74", + "nodeType": "YulIf", + "src": "4268:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "4215:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4251:5:74", + "nodeType": "YulTypedName", + "src": "4251:5:74", + "type": "" + } + ], + "src": "4215:122:74" + }, + { + "body": { + "nativeSrc": "4406:80:74", + "nodeType": "YulBlock", + "src": "4406:80:74", + "statements": [ + { + "nativeSrc": "4416:22:74", + "nodeType": "YulAssignment", + "src": "4416:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4431:6:74", + "nodeType": "YulIdentifier", + "src": "4431:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4425:5:74", + "nodeType": "YulIdentifier", + "src": "4425:5:74" + }, + "nativeSrc": "4425:13:74", + "nodeType": "YulFunctionCall", + "src": "4425:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4416:5:74", + "nodeType": "YulIdentifier", + "src": "4416:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4474:5:74", + "nodeType": "YulIdentifier", + "src": "4474:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "4447:26:74", + "nodeType": "YulIdentifier", + "src": "4447:26:74" + }, + "nativeSrc": "4447:33:74", + "nodeType": "YulFunctionCall", + "src": "4447:33:74" + }, + "nativeSrc": "4447:33:74", + "nodeType": "YulExpressionStatement", + "src": "4447:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "4343:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4384:6:74", + "nodeType": "YulTypedName", + "src": "4384:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4392:3:74", + "nodeType": "YulTypedName", + "src": "4392:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4400:5:74", + "nodeType": "YulTypedName", + "src": "4400:5:74", + "type": "" + } + ], + "src": "4343:143:74" + }, + { + "body": { + "nativeSrc": "4569:274:74", + "nodeType": "YulBlock", + "src": "4569:274:74", + "statements": [ + { + "body": { + "nativeSrc": "4615:83:74", + "nodeType": "YulBlock", + "src": "4615:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4617:77:74", + "nodeType": "YulIdentifier", + "src": "4617:77:74" + }, + "nativeSrc": "4617:79:74", + "nodeType": "YulFunctionCall", + "src": "4617:79:74" + }, + "nativeSrc": "4617:79:74", + "nodeType": "YulExpressionStatement", + "src": "4617:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4590:7:74", + "nodeType": "YulIdentifier", + "src": "4590:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4599:9:74", + "nodeType": "YulIdentifier", + "src": "4599:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4586:3:74", + "nodeType": "YulIdentifier", + "src": "4586:3:74" + }, + "nativeSrc": "4586:23:74", + "nodeType": "YulFunctionCall", + "src": "4586:23:74" + }, + { + "kind": "number", + "nativeSrc": "4611:2:74", + "nodeType": "YulLiteral", + "src": "4611:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4582:3:74", + "nodeType": "YulIdentifier", + "src": "4582:3:74" + }, + "nativeSrc": "4582:32:74", + "nodeType": "YulFunctionCall", + "src": "4582:32:74" + }, + "nativeSrc": "4579:119:74", + "nodeType": "YulIf", + "src": "4579:119:74" + }, + { + "nativeSrc": "4708:128:74", + "nodeType": "YulBlock", + "src": "4708:128:74", + "statements": [ + { + "nativeSrc": "4723:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4723:15:74", + "value": { + "kind": "number", + "nativeSrc": "4737:1:74", + "nodeType": "YulLiteral", + "src": "4737:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4727:6:74", + "nodeType": "YulTypedName", + "src": "4727:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4752:74:74", + "nodeType": "YulAssignment", + "src": "4752:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4798:9:74", + "nodeType": "YulIdentifier", + "src": "4798:9:74" + }, + { + "name": "offset", + "nativeSrc": "4809:6:74", + "nodeType": "YulIdentifier", + "src": "4809:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4794:3:74", + "nodeType": "YulIdentifier", + "src": "4794:3:74" + }, + "nativeSrc": "4794:22:74", + "nodeType": "YulFunctionCall", + "src": "4794:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4818:7:74", + "nodeType": "YulIdentifier", + "src": "4818:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "4762:31:74", + "nodeType": "YulIdentifier", + "src": "4762:31:74" + }, + "nativeSrc": "4762:64:74", + "nodeType": "YulFunctionCall", + "src": "4762:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4752:6:74", + "nodeType": "YulIdentifier", + "src": "4752:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "4492:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4539:9:74", + "nodeType": "YulTypedName", + "src": "4539:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4550:7:74", + "nodeType": "YulTypedName", + "src": "4550:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4562:6:74", + "nodeType": "YulTypedName", + "src": "4562:6:74", + "type": "" + } + ], + "src": "4492:351:74" + }, + { + "body": { + "nativeSrc": "4908:40:74", + "nodeType": "YulBlock", + "src": "4908:40:74", + "statements": [ + { + "nativeSrc": "4919:22:74", + "nodeType": "YulAssignment", + "src": "4919:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4935:5:74", + "nodeType": "YulIdentifier", + "src": "4935:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4929:5:74", + "nodeType": "YulIdentifier", + "src": "4929:5:74" + }, + "nativeSrc": "4929:12:74", + "nodeType": "YulFunctionCall", + "src": "4929:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "4919:6:74", + "nodeType": "YulIdentifier", + "src": "4919:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "4849:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4891:5:74", + "nodeType": "YulTypedName", + "src": "4891:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "4901:6:74", + "nodeType": "YulTypedName", + "src": "4901:6:74", + "type": "" + } + ], + "src": "4849:99:74" + }, + { + "body": { + "nativeSrc": "4982:152:74", + "nodeType": "YulBlock", + "src": "4982:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4999:1:74", + "nodeType": "YulLiteral", + "src": "4999:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5002:77:74", + "nodeType": "YulLiteral", + "src": "5002:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4992:6:74", + "nodeType": "YulIdentifier", + "src": "4992:6:74" + }, + "nativeSrc": "4992:88:74", + "nodeType": "YulFunctionCall", + "src": "4992:88:74" + }, + "nativeSrc": "4992:88:74", + "nodeType": "YulExpressionStatement", + "src": "4992:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5096:1:74", + "nodeType": "YulLiteral", + "src": "5096:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "5099:4:74", + "nodeType": "YulLiteral", + "src": "5099:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5089:6:74", + "nodeType": "YulIdentifier", + "src": "5089:6:74" + }, + "nativeSrc": "5089:15:74", + "nodeType": "YulFunctionCall", + "src": "5089:15:74" + }, + "nativeSrc": "5089:15:74", + "nodeType": "YulExpressionStatement", + "src": "5089:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5120:1:74", + "nodeType": "YulLiteral", + "src": "5120:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5123:4:74", + "nodeType": "YulLiteral", + "src": "5123:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5113:6:74", + "nodeType": "YulIdentifier", + "src": "5113:6:74" + }, + "nativeSrc": "5113:15:74", + "nodeType": "YulFunctionCall", + "src": "5113:15:74" + }, + "nativeSrc": "5113:15:74", + "nodeType": "YulExpressionStatement", + "src": "5113:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "4954:180:74", + "nodeType": "YulFunctionDefinition", + "src": "4954:180:74" + }, + { + "body": { + "nativeSrc": "5168:152:74", + "nodeType": "YulBlock", + "src": "5168:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5185:1:74", + "nodeType": "YulLiteral", + "src": "5185:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5188:77:74", + "nodeType": "YulLiteral", + "src": "5188:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5178:6:74", + "nodeType": "YulIdentifier", + "src": "5178:6:74" + }, + "nativeSrc": "5178:88:74", + "nodeType": "YulFunctionCall", + "src": "5178:88:74" + }, + "nativeSrc": "5178:88:74", + "nodeType": "YulExpressionStatement", + "src": "5178:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5282:1:74", + "nodeType": "YulLiteral", + "src": "5282:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "5285:4:74", + "nodeType": "YulLiteral", + "src": "5285:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5275:6:74", + "nodeType": "YulIdentifier", + "src": "5275:6:74" + }, + "nativeSrc": "5275:15:74", + "nodeType": "YulFunctionCall", + "src": "5275:15:74" + }, + "nativeSrc": "5275:15:74", + "nodeType": "YulExpressionStatement", + "src": "5275:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5306:1:74", + "nodeType": "YulLiteral", + "src": "5306:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5309:4:74", + "nodeType": "YulLiteral", + "src": "5309:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5299:6:74", + "nodeType": "YulIdentifier", + "src": "5299:6:74" + }, + "nativeSrc": "5299:15:74", + "nodeType": "YulFunctionCall", + "src": "5299:15:74" + }, + "nativeSrc": "5299:15:74", + "nodeType": "YulExpressionStatement", + "src": "5299:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "5140:180:74", + "nodeType": "YulFunctionDefinition", + "src": "5140:180:74" + }, + { + "body": { + "nativeSrc": "5377:269:74", + "nodeType": "YulBlock", + "src": "5377:269:74", + "statements": [ + { + "nativeSrc": "5387:22:74", + "nodeType": "YulAssignment", + "src": "5387:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "5401:4:74", + "nodeType": "YulIdentifier", + "src": "5401:4:74" + }, + { + "kind": "number", + "nativeSrc": "5407:1:74", + "nodeType": "YulLiteral", + "src": "5407:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "5397:3:74", + "nodeType": "YulIdentifier", + "src": "5397:3:74" + }, + "nativeSrc": "5397:12:74", + "nodeType": "YulFunctionCall", + "src": "5397:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "5387:6:74", + "nodeType": "YulIdentifier", + "src": "5387:6:74" + } + ] + }, + { + "nativeSrc": "5418:38:74", + "nodeType": "YulVariableDeclaration", + "src": "5418:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "5448:4:74", + "nodeType": "YulIdentifier", + "src": "5448:4:74" + }, + { + "kind": "number", + "nativeSrc": "5454:1:74", + "nodeType": "YulLiteral", + "src": "5454:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5444:3:74", + "nodeType": "YulIdentifier", + "src": "5444:3:74" + }, + "nativeSrc": "5444:12:74", + "nodeType": "YulFunctionCall", + "src": "5444:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "5422:18:74", + "nodeType": "YulTypedName", + "src": "5422:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "5495:51:74", + "nodeType": "YulBlock", + "src": "5495:51:74", + "statements": [ + { + "nativeSrc": "5509:27:74", + "nodeType": "YulAssignment", + "src": "5509:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "5523:6:74", + "nodeType": "YulIdentifier", + "src": "5523:6:74" + }, + { + "kind": "number", + "nativeSrc": "5531:4:74", + "nodeType": "YulLiteral", + "src": "5531:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5519:3:74", + "nodeType": "YulIdentifier", + "src": "5519:3:74" + }, + "nativeSrc": "5519:17:74", + "nodeType": "YulFunctionCall", + "src": "5519:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "5509:6:74", + "nodeType": "YulIdentifier", + "src": "5509:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "5475:18:74", + "nodeType": "YulIdentifier", + "src": "5475:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5468:6:74", + "nodeType": "YulIdentifier", + "src": "5468:6:74" + }, + "nativeSrc": "5468:26:74", + "nodeType": "YulFunctionCall", + "src": "5468:26:74" + }, + "nativeSrc": "5465:81:74", + "nodeType": "YulIf", + "src": "5465:81:74" + }, + { + "body": { + "nativeSrc": "5598:42:74", + "nodeType": "YulBlock", + "src": "5598:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "5612:16:74", + "nodeType": "YulIdentifier", + "src": "5612:16:74" + }, + "nativeSrc": "5612:18:74", + "nodeType": "YulFunctionCall", + "src": "5612:18:74" + }, + "nativeSrc": "5612:18:74", + "nodeType": "YulExpressionStatement", + "src": "5612:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "5562:18:74", + "nodeType": "YulIdentifier", + "src": "5562:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "5585:6:74", + "nodeType": "YulIdentifier", + "src": "5585:6:74" + }, + { + "kind": "number", + "nativeSrc": "5593:2:74", + "nodeType": "YulLiteral", + "src": "5593:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "5582:2:74", + "nodeType": "YulIdentifier", + "src": "5582:2:74" + }, + "nativeSrc": "5582:14:74", + "nodeType": "YulFunctionCall", + "src": "5582:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "5559:2:74", + "nodeType": "YulIdentifier", + "src": "5559:2:74" + }, + "nativeSrc": "5559:38:74", + "nodeType": "YulFunctionCall", + "src": "5559:38:74" + }, + "nativeSrc": "5556:84:74", + "nodeType": "YulIf", + "src": "5556:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "5326:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "5361:4:74", + "nodeType": "YulTypedName", + "src": "5361:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "5370:6:74", + "nodeType": "YulTypedName", + "src": "5370:6:74", + "type": "" + } + ], + "src": "5326:320:74" + }, + { + "body": { + "nativeSrc": "5705:87:74", + "nodeType": "YulBlock", + "src": "5705:87:74", + "statements": [ + { + "nativeSrc": "5715:11:74", + "nodeType": "YulAssignment", + "src": "5715:11:74", + "value": { + "name": "ptr", + "nativeSrc": "5723:3:74", + "nodeType": "YulIdentifier", + "src": "5723:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "5715:4:74", + "nodeType": "YulIdentifier", + "src": "5715:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5743:1:74", + "nodeType": "YulLiteral", + "src": "5743:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "5746:3:74", + "nodeType": "YulIdentifier", + "src": "5746:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5736:6:74", + "nodeType": "YulIdentifier", + "src": "5736:6:74" + }, + "nativeSrc": "5736:14:74", + "nodeType": "YulFunctionCall", + "src": "5736:14:74" + }, + "nativeSrc": "5736:14:74", + "nodeType": "YulExpressionStatement", + "src": "5736:14:74" + }, + { + "nativeSrc": "5759:26:74", + "nodeType": "YulAssignment", + "src": "5759:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5777:1:74", + "nodeType": "YulLiteral", + "src": "5777:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5780:4:74", + "nodeType": "YulLiteral", + "src": "5780:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "5767:9:74", + "nodeType": "YulIdentifier", + "src": "5767:9:74" + }, + "nativeSrc": "5767:18:74", + "nodeType": "YulFunctionCall", + "src": "5767:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "5759:4:74", + "nodeType": "YulIdentifier", + "src": "5759:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "5652:140:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "5692:3:74", + "nodeType": "YulTypedName", + "src": "5692:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "5700:4:74", + "nodeType": "YulTypedName", + "src": "5700:4:74", + "type": "" + } + ], + "src": "5652:140:74" + }, + { + "body": { + "nativeSrc": "5842:49:74", + "nodeType": "YulBlock", + "src": "5842:49:74", + "statements": [ + { + "nativeSrc": "5852:33:74", + "nodeType": "YulAssignment", + "src": "5852:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5870:5:74", + "nodeType": "YulIdentifier", + "src": "5870:5:74" + }, + { + "kind": "number", + "nativeSrc": "5877:2:74", + "nodeType": "YulLiteral", + "src": "5877:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5866:3:74", + "nodeType": "YulIdentifier", + "src": "5866:3:74" + }, + "nativeSrc": "5866:14:74", + "nodeType": "YulFunctionCall", + "src": "5866:14:74" + }, + { + "kind": "number", + "nativeSrc": "5882:2:74", + "nodeType": "YulLiteral", + "src": "5882:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "5862:3:74", + "nodeType": "YulIdentifier", + "src": "5862:3:74" + }, + "nativeSrc": "5862:23:74", + "nodeType": "YulFunctionCall", + "src": "5862:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "5852:6:74", + "nodeType": "YulIdentifier", + "src": "5852:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "5798:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5825:5:74", + "nodeType": "YulTypedName", + "src": "5825:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "5835:6:74", + "nodeType": "YulTypedName", + "src": "5835:6:74", + "type": "" + } + ], + "src": "5798:93:74" + }, + { + "body": { + "nativeSrc": "5950:54:74", + "nodeType": "YulBlock", + "src": "5950:54:74", + "statements": [ + { + "nativeSrc": "5960:37:74", + "nodeType": "YulAssignment", + "src": "5960:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "5985:4:74", + "nodeType": "YulIdentifier", + "src": "5985:4:74" + }, + { + "name": "value", + "nativeSrc": "5991:5:74", + "nodeType": "YulIdentifier", + "src": "5991:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "5981:3:74", + "nodeType": "YulIdentifier", + "src": "5981:3:74" + }, + "nativeSrc": "5981:16:74", + "nodeType": "YulFunctionCall", + "src": "5981:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "5960:8:74", + "nodeType": "YulIdentifier", + "src": "5960:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "5897:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "5925:4:74", + "nodeType": "YulTypedName", + "src": "5925:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "5931:5:74", + "nodeType": "YulTypedName", + "src": "5931:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "5941:8:74", + "nodeType": "YulTypedName", + "src": "5941:8:74", + "type": "" + } + ], + "src": "5897:107:74" + }, + { + "body": { + "nativeSrc": "6086:317:74", + "nodeType": "YulBlock", + "src": "6086:317:74", + "statements": [ + { + "nativeSrc": "6096:35:74", + "nodeType": "YulVariableDeclaration", + "src": "6096:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "6117:10:74", + "nodeType": "YulIdentifier", + "src": "6117:10:74" + }, + { + "kind": "number", + "nativeSrc": "6129:1:74", + "nodeType": "YulLiteral", + "src": "6129:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6113:3:74", + "nodeType": "YulIdentifier", + "src": "6113:3:74" + }, + "nativeSrc": "6113:18:74", + "nodeType": "YulFunctionCall", + "src": "6113:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "6100:9:74", + "nodeType": "YulTypedName", + "src": "6100:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6140:109:74", + "nodeType": "YulVariableDeclaration", + "src": "6140:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "6171:9:74", + "nodeType": "YulIdentifier", + "src": "6171:9:74" + }, + { + "kind": "number", + "nativeSrc": "6182:66:74", + "nodeType": "YulLiteral", + "src": "6182:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "6152:18:74", + "nodeType": "YulIdentifier", + "src": "6152:18:74" + }, + "nativeSrc": "6152:97:74", + "nodeType": "YulFunctionCall", + "src": "6152:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "6144:4:74", + "nodeType": "YulTypedName", + "src": "6144:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6258:51:74", + "nodeType": "YulAssignment", + "src": "6258:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "6289:9:74", + "nodeType": "YulIdentifier", + "src": "6289:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "6300:8:74", + "nodeType": "YulIdentifier", + "src": "6300:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "6270:18:74", + "nodeType": "YulIdentifier", + "src": "6270:18:74" + }, + "nativeSrc": "6270:39:74", + "nodeType": "YulFunctionCall", + "src": "6270:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "6258:8:74", + "nodeType": "YulIdentifier", + "src": "6258:8:74" + } + ] + }, + { + "nativeSrc": "6318:30:74", + "nodeType": "YulAssignment", + "src": "6318:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6331:5:74", + "nodeType": "YulIdentifier", + "src": "6331:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "6342:4:74", + "nodeType": "YulIdentifier", + "src": "6342:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6338:3:74", + "nodeType": "YulIdentifier", + "src": "6338:3:74" + }, + "nativeSrc": "6338:9:74", + "nodeType": "YulFunctionCall", + "src": "6338:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6327:3:74", + "nodeType": "YulIdentifier", + "src": "6327:3:74" + }, + "nativeSrc": "6327:21:74", + "nodeType": "YulFunctionCall", + "src": "6327:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6318:5:74", + "nodeType": "YulIdentifier", + "src": "6318:5:74" + } + ] + }, + { + "nativeSrc": "6357:40:74", + "nodeType": "YulAssignment", + "src": "6357:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6370:5:74", + "nodeType": "YulIdentifier", + "src": "6370:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "6381:8:74", + "nodeType": "YulIdentifier", + "src": "6381:8:74" + }, + { + "name": "mask", + "nativeSrc": "6391:4:74", + "nodeType": "YulIdentifier", + "src": "6391:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6377:3:74", + "nodeType": "YulIdentifier", + "src": "6377:3:74" + }, + "nativeSrc": "6377:19:74", + "nodeType": "YulFunctionCall", + "src": "6377:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "6367:2:74", + "nodeType": "YulIdentifier", + "src": "6367:2:74" + }, + "nativeSrc": "6367:30:74", + "nodeType": "YulFunctionCall", + "src": "6367:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "6357:6:74", + "nodeType": "YulIdentifier", + "src": "6357:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "6010:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6047:5:74", + "nodeType": "YulTypedName", + "src": "6047:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "6054:10:74", + "nodeType": "YulTypedName", + "src": "6054:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "6066:8:74", + "nodeType": "YulTypedName", + "src": "6066:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "6079:6:74", + "nodeType": "YulTypedName", + "src": "6079:6:74", + "type": "" + } + ], + "src": "6010:393:74" + }, + { + "body": { + "nativeSrc": "6454:32:74", + "nodeType": "YulBlock", + "src": "6454:32:74", + "statements": [ + { + "nativeSrc": "6464:16:74", + "nodeType": "YulAssignment", + "src": "6464:16:74", + "value": { + "name": "value", + "nativeSrc": "6475:5:74", + "nodeType": "YulIdentifier", + "src": "6475:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "6464:7:74", + "nodeType": "YulIdentifier", + "src": "6464:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "6409:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6436:5:74", + "nodeType": "YulTypedName", + "src": "6436:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "6446:7:74", + "nodeType": "YulTypedName", + "src": "6446:7:74", + "type": "" + } + ], + "src": "6409:77:74" + }, + { + "body": { + "nativeSrc": "6524:28:74", + "nodeType": "YulBlock", + "src": "6524:28:74", + "statements": [ + { + "nativeSrc": "6534:12:74", + "nodeType": "YulAssignment", + "src": "6534:12:74", + "value": { + "name": "value", + "nativeSrc": "6541:5:74", + "nodeType": "YulIdentifier", + "src": "6541:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "6534:3:74", + "nodeType": "YulIdentifier", + "src": "6534:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "6492:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6510:5:74", + "nodeType": "YulTypedName", + "src": "6510:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "6520:3:74", + "nodeType": "YulTypedName", + "src": "6520:3:74", + "type": "" + } + ], + "src": "6492:60:74" + }, + { + "body": { + "nativeSrc": "6618:82:74", + "nodeType": "YulBlock", + "src": "6618:82:74", + "statements": [ + { + "nativeSrc": "6628:66:74", + "nodeType": "YulAssignment", + "src": "6628:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6686:5:74", + "nodeType": "YulIdentifier", + "src": "6686:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "6668:17:74", + "nodeType": "YulIdentifier", + "src": "6668:17:74" + }, + "nativeSrc": "6668:24:74", + "nodeType": "YulFunctionCall", + "src": "6668:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "6659:8:74", + "nodeType": "YulIdentifier", + "src": "6659:8:74" + }, + "nativeSrc": "6659:34:74", + "nodeType": "YulFunctionCall", + "src": "6659:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "6641:17:74", + "nodeType": "YulIdentifier", + "src": "6641:17:74" + }, + "nativeSrc": "6641:53:74", + "nodeType": "YulFunctionCall", + "src": "6641:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "6628:9:74", + "nodeType": "YulIdentifier", + "src": "6628:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "6558:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6598:5:74", + "nodeType": "YulTypedName", + "src": "6598:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "6608:9:74", + "nodeType": "YulTypedName", + "src": "6608:9:74", + "type": "" + } + ], + "src": "6558:142:74" + }, + { + "body": { + "nativeSrc": "6753:28:74", + "nodeType": "YulBlock", + "src": "6753:28:74", + "statements": [ + { + "nativeSrc": "6763:12:74", + "nodeType": "YulAssignment", + "src": "6763:12:74", + "value": { + "name": "value", + "nativeSrc": "6770:5:74", + "nodeType": "YulIdentifier", + "src": "6770:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "6763:3:74", + "nodeType": "YulIdentifier", + "src": "6763:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "6706:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6739:5:74", + "nodeType": "YulTypedName", + "src": "6739:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "6749:3:74", + "nodeType": "YulTypedName", + "src": "6749:3:74", + "type": "" + } + ], + "src": "6706:75:74" + }, + { + "body": { + "nativeSrc": "6863:193:74", + "nodeType": "YulBlock", + "src": "6863:193:74", + "statements": [ + { + "nativeSrc": "6873:63:74", + "nodeType": "YulVariableDeclaration", + "src": "6873:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "6928:7:74", + "nodeType": "YulIdentifier", + "src": "6928:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "6897:30:74", + "nodeType": "YulIdentifier", + "src": "6897:30:74" + }, + "nativeSrc": "6897:39:74", + "nodeType": "YulFunctionCall", + "src": "6897:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "6877:16:74", + "nodeType": "YulTypedName", + "src": "6877:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6952:4:74", + "nodeType": "YulIdentifier", + "src": "6952:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "6992:4:74", + "nodeType": "YulIdentifier", + "src": "6992:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "6986:5:74", + "nodeType": "YulIdentifier", + "src": "6986:5:74" + }, + "nativeSrc": "6986:11:74", + "nodeType": "YulFunctionCall", + "src": "6986:11:74" + }, + { + "name": "offset", + "nativeSrc": "6999:6:74", + "nodeType": "YulIdentifier", + "src": "6999:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "7031:16:74", + "nodeType": "YulIdentifier", + "src": "7031:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "7007:23:74", + "nodeType": "YulIdentifier", + "src": "7007:23:74" + }, + "nativeSrc": "7007:41:74", + "nodeType": "YulFunctionCall", + "src": "7007:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "6958:27:74", + "nodeType": "YulIdentifier", + "src": "6958:27:74" + }, + "nativeSrc": "6958:91:74", + "nodeType": "YulFunctionCall", + "src": "6958:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "6945:6:74", + "nodeType": "YulIdentifier", + "src": "6945:6:74" + }, + "nativeSrc": "6945:105:74", + "nodeType": "YulFunctionCall", + "src": "6945:105:74" + }, + "nativeSrc": "6945:105:74", + "nodeType": "YulExpressionStatement", + "src": "6945:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "6787:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "6840:4:74", + "nodeType": "YulTypedName", + "src": "6840:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "6846:6:74", + "nodeType": "YulTypedName", + "src": "6846:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "6854:7:74", + "nodeType": "YulTypedName", + "src": "6854:7:74", + "type": "" + } + ], + "src": "6787:269:74" + }, + { + "body": { + "nativeSrc": "7111:24:74", + "nodeType": "YulBlock", + "src": "7111:24:74", + "statements": [ + { + "nativeSrc": "7121:8:74", + "nodeType": "YulAssignment", + "src": "7121:8:74", + "value": { + "kind": "number", + "nativeSrc": "7128:1:74", + "nodeType": "YulLiteral", + "src": "7128:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7121:3:74", + "nodeType": "YulIdentifier", + "src": "7121:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "7062:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7107:3:74", + "nodeType": "YulTypedName", + "src": "7107:3:74", + "type": "" + } + ], + "src": "7062:73:74" + }, + { + "body": { + "nativeSrc": "7194:136:74", + "nodeType": "YulBlock", + "src": "7194:136:74", + "statements": [ + { + "nativeSrc": "7204:46:74", + "nodeType": "YulVariableDeclaration", + "src": "7204:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "7218:30:74", + "nodeType": "YulIdentifier", + "src": "7218:30:74" + }, + "nativeSrc": "7218:32:74", + "nodeType": "YulFunctionCall", + "src": "7218:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "7208:6:74", + "nodeType": "YulTypedName", + "src": "7208:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7303:4:74", + "nodeType": "YulIdentifier", + "src": "7303:4:74" + }, + { + "name": "offset", + "nativeSrc": "7309:6:74", + "nodeType": "YulIdentifier", + "src": "7309:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "7317:6:74", + "nodeType": "YulIdentifier", + "src": "7317:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "7259:43:74", + "nodeType": "YulIdentifier", + "src": "7259:43:74" + }, + "nativeSrc": "7259:65:74", + "nodeType": "YulFunctionCall", + "src": "7259:65:74" + }, + "nativeSrc": "7259:65:74", + "nodeType": "YulExpressionStatement", + "src": "7259:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "7141:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "7180:4:74", + "nodeType": "YulTypedName", + "src": "7180:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "7186:6:74", + "nodeType": "YulTypedName", + "src": "7186:6:74", + "type": "" + } + ], + "src": "7141:189:74" + }, + { + "body": { + "nativeSrc": "7386:136:74", + "nodeType": "YulBlock", + "src": "7386:136:74", + "statements": [ + { + "body": { + "nativeSrc": "7453:63:74", + "nodeType": "YulBlock", + "src": "7453:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "7497:5:74", + "nodeType": "YulIdentifier", + "src": "7497:5:74" + }, + { + "kind": "number", + "nativeSrc": "7504:1:74", + "nodeType": "YulLiteral", + "src": "7504:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "7467:29:74", + "nodeType": "YulIdentifier", + "src": "7467:29:74" + }, + "nativeSrc": "7467:39:74", + "nodeType": "YulFunctionCall", + "src": "7467:39:74" + }, + "nativeSrc": "7467:39:74", + "nodeType": "YulExpressionStatement", + "src": "7467:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "7406:5:74", + "nodeType": "YulIdentifier", + "src": "7406:5:74" + }, + { + "name": "end", + "nativeSrc": "7413:3:74", + "nodeType": "YulIdentifier", + "src": "7413:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7403:2:74", + "nodeType": "YulIdentifier", + "src": "7403:2:74" + }, + "nativeSrc": "7403:14:74", + "nodeType": "YulFunctionCall", + "src": "7403:14:74" + }, + "nativeSrc": "7396:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "7418:26:74", + "nodeType": "YulBlock", + "src": "7418:26:74", + "statements": [ + { + "nativeSrc": "7420:22:74", + "nodeType": "YulAssignment", + "src": "7420:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "7433:5:74", + "nodeType": "YulIdentifier", + "src": "7433:5:74" + }, + { + "kind": "number", + "nativeSrc": "7440:1:74", + "nodeType": "YulLiteral", + "src": "7440:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7429:3:74", + "nodeType": "YulIdentifier", + "src": "7429:3:74" + }, + "nativeSrc": "7429:13:74", + "nodeType": "YulFunctionCall", + "src": "7429:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "7420:5:74", + "nodeType": "YulIdentifier", + "src": "7420:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "7400:2:74", + "nodeType": "YulBlock", + "src": "7400:2:74", + "statements": [] + }, + "src": "7396:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "7336:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "7374:5:74", + "nodeType": "YulTypedName", + "src": "7374:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "7381:3:74", + "nodeType": "YulTypedName", + "src": "7381:3:74", + "type": "" + } + ], + "src": "7336:186:74" + }, + { + "body": { + "nativeSrc": "7606:463:74", + "nodeType": "YulBlock", + "src": "7606:463:74", + "statements": [ + { + "body": { + "nativeSrc": "7632:430:74", + "nodeType": "YulBlock", + "src": "7632:430:74", + "statements": [ + { + "nativeSrc": "7646:53:74", + "nodeType": "YulVariableDeclaration", + "src": "7646:53:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "7693:5:74", + "nodeType": "YulIdentifier", + "src": "7693:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "7662:30:74", + "nodeType": "YulIdentifier", + "src": "7662:30:74" + }, + "nativeSrc": "7662:37:74", + "nodeType": "YulFunctionCall", + "src": "7662:37:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "7650:8:74", + "nodeType": "YulTypedName", + "src": "7650:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7712:63:74", + "nodeType": "YulVariableDeclaration", + "src": "7712:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "7735:8:74", + "nodeType": "YulIdentifier", + "src": "7735:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "7763:10:74", + "nodeType": "YulIdentifier", + "src": "7763:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "7745:17:74", + "nodeType": "YulIdentifier", + "src": "7745:17:74" + }, + "nativeSrc": "7745:29:74", + "nodeType": "YulFunctionCall", + "src": "7745:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7731:3:74", + "nodeType": "YulIdentifier", + "src": "7731:3:74" + }, + "nativeSrc": "7731:44:74", + "nodeType": "YulFunctionCall", + "src": "7731:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "7716:11:74", + "nodeType": "YulTypedName", + "src": "7716:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7932:27:74", + "nodeType": "YulBlock", + "src": "7932:27:74", + "statements": [ + { + "nativeSrc": "7934:23:74", + "nodeType": "YulAssignment", + "src": "7934:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "7949:8:74", + "nodeType": "YulIdentifier", + "src": "7949:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "7934:11:74", + "nodeType": "YulIdentifier", + "src": "7934:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "7916:10:74", + "nodeType": "YulIdentifier", + "src": "7916:10:74" + }, + { + "kind": "number", + "nativeSrc": "7928:2:74", + "nodeType": "YulLiteral", + "src": "7928:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7913:2:74", + "nodeType": "YulIdentifier", + "src": "7913:2:74" + }, + "nativeSrc": "7913:18:74", + "nodeType": "YulFunctionCall", + "src": "7913:18:74" + }, + "nativeSrc": "7910:49:74", + "nodeType": "YulIf", + "src": "7910:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "8001:11:74", + "nodeType": "YulIdentifier", + "src": "8001:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "8018:8:74", + "nodeType": "YulIdentifier", + "src": "8018:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "8046:3:74", + "nodeType": "YulIdentifier", + "src": "8046:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "8028:17:74", + "nodeType": "YulIdentifier", + "src": "8028:17:74" + }, + "nativeSrc": "8028:22:74", + "nodeType": "YulFunctionCall", + "src": "8028:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8014:3:74", + "nodeType": "YulIdentifier", + "src": "8014:3:74" + }, + "nativeSrc": "8014:37:74", + "nodeType": "YulFunctionCall", + "src": "8014:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "7972:28:74", + "nodeType": "YulIdentifier", + "src": "7972:28:74" + }, + "nativeSrc": "7972:80:74", + "nodeType": "YulFunctionCall", + "src": "7972:80:74" + }, + "nativeSrc": "7972:80:74", + "nodeType": "YulExpressionStatement", + "src": "7972:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "7623:3:74", + "nodeType": "YulIdentifier", + "src": "7623:3:74" + }, + { + "kind": "number", + "nativeSrc": "7628:2:74", + "nodeType": "YulLiteral", + "src": "7628:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7620:2:74", + "nodeType": "YulIdentifier", + "src": "7620:2:74" + }, + "nativeSrc": "7620:11:74", + "nodeType": "YulFunctionCall", + "src": "7620:11:74" + }, + "nativeSrc": "7617:445:74", + "nodeType": "YulIf", + "src": "7617:445:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "7528:541:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "7582:5:74", + "nodeType": "YulTypedName", + "src": "7582:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "7589:3:74", + "nodeType": "YulTypedName", + "src": "7589:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "7594:10:74", + "nodeType": "YulTypedName", + "src": "7594:10:74", + "type": "" + } + ], + "src": "7528:541:74" + }, + { + "body": { + "nativeSrc": "8138:54:74", + "nodeType": "YulBlock", + "src": "8138:54:74", + "statements": [ + { + "nativeSrc": "8148:37:74", + "nodeType": "YulAssignment", + "src": "8148:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "8173:4:74", + "nodeType": "YulIdentifier", + "src": "8173:4:74" + }, + { + "name": "value", + "nativeSrc": "8179:5:74", + "nodeType": "YulIdentifier", + "src": "8179:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "8169:3:74", + "nodeType": "YulIdentifier", + "src": "8169:3:74" + }, + "nativeSrc": "8169:16:74", + "nodeType": "YulFunctionCall", + "src": "8169:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "8148:8:74", + "nodeType": "YulIdentifier", + "src": "8148:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "8075:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "8113:4:74", + "nodeType": "YulTypedName", + "src": "8113:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "8119:5:74", + "nodeType": "YulTypedName", + "src": "8119:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "8129:8:74", + "nodeType": "YulTypedName", + "src": "8129:8:74", + "type": "" + } + ], + "src": "8075:117:74" + }, + { + "body": { + "nativeSrc": "8249:118:74", + "nodeType": "YulBlock", + "src": "8249:118:74", + "statements": [ + { + "nativeSrc": "8259:68:74", + "nodeType": "YulVariableDeclaration", + "src": "8259:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8308:1:74", + "nodeType": "YulLiteral", + "src": "8308:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "8311:5:74", + "nodeType": "YulIdentifier", + "src": "8311:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "8304:3:74", + "nodeType": "YulIdentifier", + "src": "8304:3:74" + }, + "nativeSrc": "8304:13:74", + "nodeType": "YulFunctionCall", + "src": "8304:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8323:1:74", + "nodeType": "YulLiteral", + "src": "8323:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "8319:3:74", + "nodeType": "YulIdentifier", + "src": "8319:3:74" + }, + "nativeSrc": "8319:6:74", + "nodeType": "YulFunctionCall", + "src": "8319:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "8275:28:74", + "nodeType": "YulIdentifier", + "src": "8275:28:74" + }, + "nativeSrc": "8275:51:74", + "nodeType": "YulFunctionCall", + "src": "8275:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "8271:3:74", + "nodeType": "YulIdentifier", + "src": "8271:3:74" + }, + "nativeSrc": "8271:56:74", + "nodeType": "YulFunctionCall", + "src": "8271:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "8263:4:74", + "nodeType": "YulTypedName", + "src": "8263:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8336:25:74", + "nodeType": "YulAssignment", + "src": "8336:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "8350:4:74", + "nodeType": "YulIdentifier", + "src": "8350:4:74" + }, + { + "name": "mask", + "nativeSrc": "8356:4:74", + "nodeType": "YulIdentifier", + "src": "8356:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "8346:3:74", + "nodeType": "YulIdentifier", + "src": "8346:3:74" + }, + "nativeSrc": "8346:15:74", + "nodeType": "YulFunctionCall", + "src": "8346:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "8336:6:74", + "nodeType": "YulIdentifier", + "src": "8336:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "8198:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "8226:4:74", + "nodeType": "YulTypedName", + "src": "8226:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "8232:5:74", + "nodeType": "YulTypedName", + "src": "8232:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "8242:6:74", + "nodeType": "YulTypedName", + "src": "8242:6:74", + "type": "" + } + ], + "src": "8198:169:74" + }, + { + "body": { + "nativeSrc": "8453:214:74", + "nodeType": "YulBlock", + "src": "8453:214:74", + "statements": [ + { + "nativeSrc": "8586:37:74", + "nodeType": "YulAssignment", + "src": "8586:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "8613:4:74", + "nodeType": "YulIdentifier", + "src": "8613:4:74" + }, + { + "name": "len", + "nativeSrc": "8619:3:74", + "nodeType": "YulIdentifier", + "src": "8619:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "8594:18:74", + "nodeType": "YulIdentifier", + "src": "8594:18:74" + }, + "nativeSrc": "8594:29:74", + "nodeType": "YulFunctionCall", + "src": "8594:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "8586:4:74", + "nodeType": "YulIdentifier", + "src": "8586:4:74" + } + ] + }, + { + "nativeSrc": "8632:29:74", + "nodeType": "YulAssignment", + "src": "8632:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "8643:4:74", + "nodeType": "YulIdentifier", + "src": "8643:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8653:1:74", + "nodeType": "YulLiteral", + "src": "8653:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "8656:3:74", + "nodeType": "YulIdentifier", + "src": "8656:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "8649:3:74", + "nodeType": "YulIdentifier", + "src": "8649:3:74" + }, + "nativeSrc": "8649:11:74", + "nodeType": "YulFunctionCall", + "src": "8649:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "8640:2:74", + "nodeType": "YulIdentifier", + "src": "8640:2:74" + }, + "nativeSrc": "8640:21:74", + "nodeType": "YulFunctionCall", + "src": "8640:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "8632:4:74", + "nodeType": "YulIdentifier", + "src": "8632:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "8372:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "8434:4:74", + "nodeType": "YulTypedName", + "src": "8434:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "8440:3:74", + "nodeType": "YulTypedName", + "src": "8440:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "8448:4:74", + "nodeType": "YulTypedName", + "src": "8448:4:74", + "type": "" + } + ], + "src": "8372:295:74" + }, + { + "body": { + "nativeSrc": "8763:1301:74", + "nodeType": "YulBlock", + "src": "8763:1301:74", + "statements": [ + { + "nativeSrc": "8774:51:74", + "nodeType": "YulVariableDeclaration", + "src": "8774:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "8821:3:74", + "nodeType": "YulIdentifier", + "src": "8821:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "8788:32:74", + "nodeType": "YulIdentifier", + "src": "8788:32:74" + }, + "nativeSrc": "8788:37:74", + "nodeType": "YulFunctionCall", + "src": "8788:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "8778:6:74", + "nodeType": "YulTypedName", + "src": "8778:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8910:22:74", + "nodeType": "YulBlock", + "src": "8910:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "8912:16:74", + "nodeType": "YulIdentifier", + "src": "8912:16:74" + }, + "nativeSrc": "8912:18:74", + "nodeType": "YulFunctionCall", + "src": "8912:18:74" + }, + "nativeSrc": "8912:18:74", + "nodeType": "YulExpressionStatement", + "src": "8912:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "8882:6:74", + "nodeType": "YulIdentifier", + "src": "8882:6:74" + }, + { + "kind": "number", + "nativeSrc": "8890:18:74", + "nodeType": "YulLiteral", + "src": "8890:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8879:2:74", + "nodeType": "YulIdentifier", + "src": "8879:2:74" + }, + "nativeSrc": "8879:30:74", + "nodeType": "YulFunctionCall", + "src": "8879:30:74" + }, + "nativeSrc": "8876:56:74", + "nodeType": "YulIf", + "src": "8876:56:74" + }, + { + "nativeSrc": "8942:52:74", + "nodeType": "YulVariableDeclaration", + "src": "8942:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "8988:4:74", + "nodeType": "YulIdentifier", + "src": "8988:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "8982:5:74", + "nodeType": "YulIdentifier", + "src": "8982:5:74" + }, + "nativeSrc": "8982:11:74", + "nodeType": "YulFunctionCall", + "src": "8982:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "8956:25:74", + "nodeType": "YulIdentifier", + "src": "8956:25:74" + }, + "nativeSrc": "8956:38:74", + "nodeType": "YulFunctionCall", + "src": "8956:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "8946:6:74", + "nodeType": "YulTypedName", + "src": "8946:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9086:4:74", + "nodeType": "YulIdentifier", + "src": "9086:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "9092:6:74", + "nodeType": "YulIdentifier", + "src": "9092:6:74" + }, + { + "name": "newLen", + "nativeSrc": "9100:6:74", + "nodeType": "YulIdentifier", + "src": "9100:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "9041:44:74", + "nodeType": "YulIdentifier", + "src": "9041:44:74" + }, + "nativeSrc": "9041:66:74", + "nodeType": "YulFunctionCall", + "src": "9041:66:74" + }, + "nativeSrc": "9041:66:74", + "nodeType": "YulExpressionStatement", + "src": "9041:66:74" + }, + { + "nativeSrc": "9117:18:74", + "nodeType": "YulVariableDeclaration", + "src": "9117:18:74", + "value": { + "kind": "number", + "nativeSrc": "9134:1:74", + "nodeType": "YulLiteral", + "src": "9134:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "9121:9:74", + "nodeType": "YulTypedName", + "src": "9121:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9145:17:74", + "nodeType": "YulAssignment", + "src": "9145:17:74", + "value": { + "kind": "number", + "nativeSrc": "9158:4:74", + "nodeType": "YulLiteral", + "src": "9158:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "9145:9:74", + "nodeType": "YulIdentifier", + "src": "9145:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "9209:610:74", + "nodeType": "YulBlock", + "src": "9209:610:74", + "statements": [ + { + "nativeSrc": "9223:37:74", + "nodeType": "YulVariableDeclaration", + "src": "9223:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9242:6:74", + "nodeType": "YulIdentifier", + "src": "9242:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "9254:4:74", + "nodeType": "YulLiteral", + "src": "9254:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "9250:3:74", + "nodeType": "YulIdentifier", + "src": "9250:3:74" + }, + "nativeSrc": "9250:9:74", + "nodeType": "YulFunctionCall", + "src": "9250:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "9238:3:74", + "nodeType": "YulIdentifier", + "src": "9238:3:74" + }, + "nativeSrc": "9238:22:74", + "nodeType": "YulFunctionCall", + "src": "9238:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "9227:7:74", + "nodeType": "YulTypedName", + "src": "9227:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9274:50:74", + "nodeType": "YulVariableDeclaration", + "src": "9274:50:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9319:4:74", + "nodeType": "YulIdentifier", + "src": "9319:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "9288:30:74", + "nodeType": "YulIdentifier", + "src": "9288:30:74" + }, + "nativeSrc": "9288:36:74", + "nodeType": "YulFunctionCall", + "src": "9288:36:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "9278:6:74", + "nodeType": "YulTypedName", + "src": "9278:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9337:10:74", + "nodeType": "YulVariableDeclaration", + "src": "9337:10:74", + "value": { + "kind": "number", + "nativeSrc": "9346:1:74", + "nodeType": "YulLiteral", + "src": "9346:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "9341:1:74", + "nodeType": "YulTypedName", + "src": "9341:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9405:163:74", + "nodeType": "YulBlock", + "src": "9405:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "9430:6:74", + "nodeType": "YulIdentifier", + "src": "9430:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "9448:3:74", + "nodeType": "YulIdentifier", + "src": "9448:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "9453:9:74", + "nodeType": "YulIdentifier", + "src": "9453:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9444:3:74", + "nodeType": "YulIdentifier", + "src": "9444:3:74" + }, + "nativeSrc": "9444:19:74", + "nodeType": "YulFunctionCall", + "src": "9444:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9438:5:74", + "nodeType": "YulIdentifier", + "src": "9438:5:74" + }, + "nativeSrc": "9438:26:74", + "nodeType": "YulFunctionCall", + "src": "9438:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "9423:6:74", + "nodeType": "YulIdentifier", + "src": "9423:6:74" + }, + "nativeSrc": "9423:42:74", + "nodeType": "YulFunctionCall", + "src": "9423:42:74" + }, + "nativeSrc": "9423:42:74", + "nodeType": "YulExpressionStatement", + "src": "9423:42:74" + }, + { + "nativeSrc": "9482:24:74", + "nodeType": "YulAssignment", + "src": "9482:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "9496:6:74", + "nodeType": "YulIdentifier", + "src": "9496:6:74" + }, + { + "kind": "number", + "nativeSrc": "9504:1:74", + "nodeType": "YulLiteral", + "src": "9504:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9492:3:74", + "nodeType": "YulIdentifier", + "src": "9492:3:74" + }, + "nativeSrc": "9492:14:74", + "nodeType": "YulFunctionCall", + "src": "9492:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "9482:6:74", + "nodeType": "YulIdentifier", + "src": "9482:6:74" + } + ] + }, + { + "nativeSrc": "9523:31:74", + "nodeType": "YulAssignment", + "src": "9523:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "9540:9:74", + "nodeType": "YulIdentifier", + "src": "9540:9:74" + }, + { + "kind": "number", + "nativeSrc": "9551:2:74", + "nodeType": "YulLiteral", + "src": "9551:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9536:3:74", + "nodeType": "YulIdentifier", + "src": "9536:3:74" + }, + "nativeSrc": "9536:18:74", + "nodeType": "YulFunctionCall", + "src": "9536:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "9523:9:74", + "nodeType": "YulIdentifier", + "src": "9523:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "9371:1:74", + "nodeType": "YulIdentifier", + "src": "9371:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "9374:7:74", + "nodeType": "YulIdentifier", + "src": "9374:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "9368:2:74", + "nodeType": "YulIdentifier", + "src": "9368:2:74" + }, + "nativeSrc": "9368:14:74", + "nodeType": "YulFunctionCall", + "src": "9368:14:74" + }, + "nativeSrc": "9360:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "9383:21:74", + "nodeType": "YulBlock", + "src": "9383:21:74", + "statements": [ + { + "nativeSrc": "9385:17:74", + "nodeType": "YulAssignment", + "src": "9385:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "9394:1:74", + "nodeType": "YulIdentifier", + "src": "9394:1:74" + }, + { + "kind": "number", + "nativeSrc": "9397:4:74", + "nodeType": "YulLiteral", + "src": "9397:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9390:3:74", + "nodeType": "YulIdentifier", + "src": "9390:3:74" + }, + "nativeSrc": "9390:12:74", + "nodeType": "YulFunctionCall", + "src": "9390:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "9385:1:74", + "nodeType": "YulIdentifier", + "src": "9385:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "9364:3:74", + "nodeType": "YulBlock", + "src": "9364:3:74", + "statements": [] + }, + "src": "9360:208:74" + }, + { + "body": { + "nativeSrc": "9604:156:74", + "nodeType": "YulBlock", + "src": "9604:156:74", + "statements": [ + { + "nativeSrc": "9622:43:74", + "nodeType": "YulVariableDeclaration", + "src": "9622:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "9649:3:74", + "nodeType": "YulIdentifier", + "src": "9649:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "9654:9:74", + "nodeType": "YulIdentifier", + "src": "9654:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9645:3:74", + "nodeType": "YulIdentifier", + "src": "9645:3:74" + }, + "nativeSrc": "9645:19:74", + "nodeType": "YulFunctionCall", + "src": "9645:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9639:5:74", + "nodeType": "YulIdentifier", + "src": "9639:5:74" + }, + "nativeSrc": "9639:26:74", + "nodeType": "YulFunctionCall", + "src": "9639:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "9626:9:74", + "nodeType": "YulTypedName", + "src": "9626:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "9689:6:74", + "nodeType": "YulIdentifier", + "src": "9689:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "9716:9:74", + "nodeType": "YulIdentifier", + "src": "9716:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9731:6:74", + "nodeType": "YulIdentifier", + "src": "9731:6:74" + }, + { + "kind": "number", + "nativeSrc": "9739:4:74", + "nodeType": "YulLiteral", + "src": "9739:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "9727:3:74", + "nodeType": "YulIdentifier", + "src": "9727:3:74" + }, + "nativeSrc": "9727:17:74", + "nodeType": "YulFunctionCall", + "src": "9727:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "9697:18:74", + "nodeType": "YulIdentifier", + "src": "9697:18:74" + }, + "nativeSrc": "9697:48:74", + "nodeType": "YulFunctionCall", + "src": "9697:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "9682:6:74", + "nodeType": "YulIdentifier", + "src": "9682:6:74" + }, + "nativeSrc": "9682:64:74", + "nodeType": "YulFunctionCall", + "src": "9682:64:74" + }, + "nativeSrc": "9682:64:74", + "nodeType": "YulExpressionStatement", + "src": "9682:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "9587:7:74", + "nodeType": "YulIdentifier", + "src": "9587:7:74" + }, + { + "name": "newLen", + "nativeSrc": "9596:6:74", + "nodeType": "YulIdentifier", + "src": "9596:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "9584:2:74", + "nodeType": "YulIdentifier", + "src": "9584:2:74" + }, + "nativeSrc": "9584:19:74", + "nodeType": "YulFunctionCall", + "src": "9584:19:74" + }, + "nativeSrc": "9581:179:74", + "nodeType": "YulIf", + "src": "9581:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9780:4:74", + "nodeType": "YulIdentifier", + "src": "9780:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9794:6:74", + "nodeType": "YulIdentifier", + "src": "9794:6:74" + }, + { + "kind": "number", + "nativeSrc": "9802:1:74", + "nodeType": "YulLiteral", + "src": "9802:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "9790:3:74", + "nodeType": "YulIdentifier", + "src": "9790:3:74" + }, + "nativeSrc": "9790:14:74", + "nodeType": "YulFunctionCall", + "src": "9790:14:74" + }, + { + "kind": "number", + "nativeSrc": "9806:1:74", + "nodeType": "YulLiteral", + "src": "9806:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9786:3:74", + "nodeType": "YulIdentifier", + "src": "9786:3:74" + }, + "nativeSrc": "9786:22:74", + "nodeType": "YulFunctionCall", + "src": "9786:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "9773:6:74", + "nodeType": "YulIdentifier", + "src": "9773:6:74" + }, + "nativeSrc": "9773:36:74", + "nodeType": "YulFunctionCall", + "src": "9773:36:74" + }, + "nativeSrc": "9773:36:74", + "nodeType": "YulExpressionStatement", + "src": "9773:36:74" + } + ] + }, + "nativeSrc": "9202:617:74", + "nodeType": "YulCase", + "src": "9202:617:74", + "value": { + "kind": "number", + "nativeSrc": "9207:1:74", + "nodeType": "YulLiteral", + "src": "9207:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "9836:222:74", + "nodeType": "YulBlock", + "src": "9836:222:74", + "statements": [ + { + "nativeSrc": "9850:14:74", + "nodeType": "YulVariableDeclaration", + "src": "9850:14:74", + "value": { + "kind": "number", + "nativeSrc": "9863:1:74", + "nodeType": "YulLiteral", + "src": "9863:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "9854:5:74", + "nodeType": "YulTypedName", + "src": "9854:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9887:67:74", + "nodeType": "YulBlock", + "src": "9887:67:74", + "statements": [ + { + "nativeSrc": "9905:35:74", + "nodeType": "YulAssignment", + "src": "9905:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "9924:3:74", + "nodeType": "YulIdentifier", + "src": "9924:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "9929:9:74", + "nodeType": "YulIdentifier", + "src": "9929:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9920:3:74", + "nodeType": "YulIdentifier", + "src": "9920:3:74" + }, + "nativeSrc": "9920:19:74", + "nodeType": "YulFunctionCall", + "src": "9920:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9914:5:74", + "nodeType": "YulIdentifier", + "src": "9914:5:74" + }, + "nativeSrc": "9914:26:74", + "nodeType": "YulFunctionCall", + "src": "9914:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "9905:5:74", + "nodeType": "YulIdentifier", + "src": "9905:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "9880:6:74", + "nodeType": "YulIdentifier", + "src": "9880:6:74" + }, + "nativeSrc": "9877:77:74", + "nodeType": "YulIf", + "src": "9877:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "9974:4:74", + "nodeType": "YulIdentifier", + "src": "9974:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10033:5:74", + "nodeType": "YulIdentifier", + "src": "10033:5:74" + }, + { + "name": "newLen", + "nativeSrc": "10040:6:74", + "nodeType": "YulIdentifier", + "src": "10040:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "9980:52:74", + "nodeType": "YulIdentifier", + "src": "9980:52:74" + }, + "nativeSrc": "9980:67:74", + "nodeType": "YulFunctionCall", + "src": "9980:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "9967:6:74", + "nodeType": "YulIdentifier", + "src": "9967:6:74" + }, + "nativeSrc": "9967:81:74", + "nodeType": "YulFunctionCall", + "src": "9967:81:74" + }, + "nativeSrc": "9967:81:74", + "nodeType": "YulExpressionStatement", + "src": "9967:81:74" + } + ] + }, + "nativeSrc": "9828:230:74", + "nodeType": "YulCase", + "src": "9828:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "9182:6:74", + "nodeType": "YulIdentifier", + "src": "9182:6:74" + }, + { + "kind": "number", + "nativeSrc": "9190:2:74", + "nodeType": "YulLiteral", + "src": "9190:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9179:2:74", + "nodeType": "YulIdentifier", + "src": "9179:2:74" + }, + "nativeSrc": "9179:14:74", + "nodeType": "YulFunctionCall", + "src": "9179:14:74" + }, + "nativeSrc": "9172:886:74", + "nodeType": "YulSwitch", + "src": "9172:886:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_bytes_storage", + "nativeSrc": "8672:1392:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "8752:4:74", + "nodeType": "YulTypedName", + "src": "8752:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "8758:3:74", + "nodeType": "YulTypedName", + "src": "8758:3:74", + "type": "" + } + ], + "src": "8672:1392:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function cleanup_t_contract$_IBaseRegistrar_$4430(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_IBaseRegistrar_$4430(value) {\n if iszero(eq(value, cleanup_t_contract$_IBaseRegistrar_$4430(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_IBaseRegistrar_$4430_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_IBaseRegistrar_$4430(value)\n }\n\n function cleanup_t_contract$_IMetadataService_$9690(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_IMetadataService_$9690(value) {\n if iszero(eq(value, cleanup_t_contract$_IMetadataService_$9690(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_IMetadataService_$9690_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_IMetadataService_$9690(value)\n }\n\n function abi_decode_tuple_t_contract$_ENS_$4567t_contract$_IBaseRegistrar_$4430t_contract$_IMetadataService_$9690_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_contract$_IBaseRegistrar_$4430_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_contract$_IMetadataService_$9690_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_bytes_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_bytes_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_bytes_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_bytes_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_bytes_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_bytes_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60c060405234801561001057600080fd5b50604051619c70380380619c7083398181016040528101906100329190610550565b823361005061004561034360201b60201c565b61034b60201b60201c565b60008273ffffffffffffffffffffffffffffffffffffffff166302571be37f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260001b6040518263ffffffff1660e01b81526004016100ae91906105bc565b602060405180830381865afa1580156100cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ef9190610603565b90508073ffffffffffffffffffffffffffffffffffffffff16631e83409a836040518263ffffffff1660e01b815260040161012a919061063f565b6020604051808303816000875af1158015610149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061016d9190610686565b505050508273ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff168152505080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102617f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b60001c60006001620100001767ffffffffffffffff61040f60201b60201c565b6102886000801b60001c60006001620100001767ffffffffffffffff61040f60201b60201c565b6040518060400160405280600181526020016000815250600660008060001b815260200190815260200160002090816102c19190610903565b506040518060400160405280600581526020017f0365746800000000000000000000000000000000000000000000000000000000815250600660007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8152602001908152602001600020908161033a9190610903565b505050506109d5565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60c08167ffffffffffffffff16901b60a08363ffffffff16901b8473ffffffffffffffffffffffffffffffffffffffff161717600160008681526020019081526020016000208190555050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061048f82610464565b9050919050565b60006104a182610484565b9050919050565b6104b181610496565b81146104bc57600080fd5b50565b6000815190506104ce816104a8565b92915050565b60006104df82610484565b9050919050565b6104ef816104d4565b81146104fa57600080fd5b50565b60008151905061050c816104e6565b92915050565b600061051d82610484565b9050919050565b61052d81610512565b811461053857600080fd5b50565b60008151905061054a81610524565b92915050565b6000806000606084860312156105695761056861045f565b5b6000610577868287016104bf565b9350506020610588868287016104fd565b92505060406105998682870161053b565b9150509250925092565b6000819050919050565b6105b6816105a3565b82525050565b60006020820190506105d160008301846105ad565b92915050565b6105e081610484565b81146105eb57600080fd5b50565b6000815190506105fd816105d7565b92915050565b6000602082840312156106195761061861045f565b5b6000610627848285016105ee565b91505092915050565b61063981610484565b82525050565b60006020820190506106546000830184610630565b92915050565b610663816105a3565b811461066e57600080fd5b50565b6000815190506106808161065a565b92915050565b60006020828403121561069c5761069b61045f565b5b60006106aa84828501610671565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061073457607f821691505b602082108103610747576107466106ed565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026107af7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610772565b6107b98683610772565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006108006107fb6107f6846107d1565b6107db565b6107d1565b9050919050565b6000819050919050565b61081a836107e5565b61082e61082682610807565b84845461077f565b825550505050565b600090565b610843610836565b61084e818484610811565b505050565b5b818110156108725761086760008261083b565b600181019050610854565b5050565b601f8211156108b7576108888161074d565b61089184610762565b810160208510156108a0578190505b6108b46108ac85610762565b830182610853565b50505b505050565b600082821c905092915050565b60006108da600019846008026108bc565b1980831691505092915050565b60006108f383836108c9565b9150826002028217905092915050565b61090c826106b3565b67ffffffffffffffff811115610925576109246106be565b5b61092f825461071c565b61093a828285610876565b600060209050601f83116001811461096d576000841561095b578287015190505b61096585826108e7565b8655506109cd565b601f19841661097b8661074d565b60005b828110156109a35784890151825560018201915060208501945060208101905061097e565b868310156109c057848901516109bc601f8916826108c9565b8355505b6001600288020188555050505b505050505050565b60805160a05161918f610ae160003960008181610f520152818161104e015281816110e401528181611604015281816121de015281816122980152818161236b0152818161247c0152818161250b0152818161259c015281816128e301528181612a7e01528181612c7601528181612e9e01528181612f3e015261393f015260008181610ebb015281816112b1015281816114af015281816115550152818161196901528181611bb301528181612b2e01528181612d260152818161302c0152818161322c015281816135ff01528181613ccd01528181613da001528181613eb601528181613f440152818161469c0152818161486301528181614bb401526154c5015261918f6000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146108dc578063eb8ae5301461090c578063ed70554d14610928578063f242432a14610958578063f2fde38b14610974578063fd0cd0d9146109905761029f565b8063c93ab3fd1461080c578063cf40882314610828578063d8c9921a14610844578063d9a50c1214610860578063da8c229e14610890578063e0dba60f146108c05761029f565b8063a22cb46511610120578063a22cb46514610714578063a401498214610730578063adf4960a14610760578063b6bcad2614610790578063c475abff146107ac578063c658e086146107dc5761029f565b80636352211e146106405780636e5d6ad214610670578063715018a6146106a05780638b4dfa75146106aa5780638cf8b41e146106c65780638da5cb5b146106f65761029f565b80631f4e15041161020b5780633f15457f116101c45780633f15457f14610558578063402906fc1461057657806341415eab146105a65780634e1273f4146105d657806353095467146106065780635d3590d5146106245761029f565b80631f4e15041461048457806320c38e2b146104a257806324c1af44146104d25780632b20e397146105025780632eb2c2d61461052057806333c69ea91461053c5761029f565b80630e4cd7251161025d5780630e4cd725146103a05780630e89341c146103d057806314ab903814610400578063150b7a021461041c5780631534e1771461044c5780631896f70a146104685761029f565b8062fdd58e146102a45780630178fe3f146102d457806301ffc9a71461030657806306fdde0314610336578063081812fc14610354578063095ea7b314610384575b600080fd5b6102be60048036038101906102b991906161f5565b6109c0565b6040516102cb9190616244565b60405180910390f35b6102ee60048036038101906102e9919061625f565b610a86565b6040516102fd939291906162dd565b60405180910390f35b610320600480360381019061031b919061636c565b610aba565b60405161032d91906163b4565b60405180910390f35b61033e610b9c565b60405161034b919061645f565b60405180910390f35b61036e6004803603810190610369919061625f565b610bd5565b60405161037b9190616481565b60405180910390f35b61039e600480360381019061039991906161f5565b610c33565b005b6103ba60048036038101906103b591906164d2565b610ca8565b6040516103c791906163b4565b60405180910390f35b6103ea60048036038101906103e5919061625f565b610d5f565b6040516103f7919061645f565b60405180910390f35b61041a6004803603810190610415919061653e565b610e09565b005b610436600480360381019061043191906165e3565b610f4e565b604051610443919061667a565b60405180910390f35b610466600480360381019061046191906166d3565b6111b3565b005b610482600480360381019061047d91906164d2565b6111ff565b005b61048c611344565b604051610499919061675f565b60405180910390f35b6104bc60048036038101906104b7919061677a565b61136a565b6040516104c991906167fc565b60405180910390f35b6104ec60048036038101906104e7919061697a565b61140a565b6040516104f99190616a47565b60405180910390f35b61050a611602565b6040516105179190616a83565b60405180910390f35b61053a60048036038101906105359190616c02565b611626565b005b61055660048036038101906105519190616cd1565b6118eb565b005b610560611bb1565b60405161056d9190616d59565b60405180910390f35b610590600480360381019061058b9190616dae565b611bd5565b60405161059d9190616dee565b60405180910390f35b6105c060048036038101906105bb91906164d2565b611cc1565b6040516105cd91906163b4565b60405180910390f35b6105f060048036038101906105eb9190616ecc565b611d37565b6040516105fd9190617002565b60405180910390f35b61060e611e4a565b60405161061b9190617045565b60405180910390f35b61063e60048036038101906106399190617060565b611e70565b005b61065a6004803603810190610655919061625f565b611efc565b6040516106679190616481565b60405180910390f35b61068a600480360381019061068591906170b3565b611f0e565b6040516106979190617106565b60405180910390f35b6106a86120a8565b005b6106c460048036038101906106bf9190617121565b6120bc565b005b6106e060048036038101906106db91906171ca565b612274565b6040516106ed9190617106565b60405180910390f35b6106fe6126a0565b60405161070b9190616481565b60405180910390f35b61072e6004803603810190610729919061727e565b6126c9565b005b61074a600480360381019061074591906172be565b612834565b6040516107579190616244565b60405180910390f35b61077a60048036038101906107759190617358565b6129f1565b60405161078791906163b4565b60405180910390f35b6107aa60048036038101906107a591906173d6565b612a1e565b005b6107c660048036038101906107c19190617403565b612dd8565b6040516107d39190616244565b60405180910390f35b6107f660048036038101906107f19190617443565b613130565b6040516108039190616a47565b60405180910390f35b610826600480360381019061082191906174dd565b61333d565b005b610842600480360381019061083d919061755e565b613547565b005b61085e600480360381019061085991906175c5565b613779565b005b61087a60048036038101906108759190617618565b6138ed565b60405161088791906163b4565b60405180910390f35b6108aa60048036038101906108a59190617658565b613a1d565b6040516108b791906163b4565b60405180910390f35b6108da60048036038101906108d5919061727e565b613a3d565b005b6108f660048036038101906108f19190617685565b613aee565b60405161090391906163b4565b60405180910390f35b610926600480360381019061092191906176c5565b613b82565b005b610942600480360381019061093d919061625f565b61402c565b60405161094f9190616244565b60405180910390f35b610972600480360381019061096d9190617739565b614044565b005b61098e60048036038101906109899190617658565b614146565b005b6109aa60048036038101906109a5919061677a565b6141c9565b6040516109b791906163b4565b60405180910390f35b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2790617842565b60405180910390fd5b6000610a3b83611efc565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a7a576001915050610a80565b60009150505b92915050565b6000806000610a94846142c5565b809350819450829550505050610aab8383836142fa565b80935081945050509193909250565b60007fd82c42d8000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610b8557507f150b7a02000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610b955750610b9482614342565b5b9050919050565b6040518060400160405280600b81526020017f4e616d655772617070657200000000000000000000000000000000000000000081525081565b600080610be183611efc565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c21576000915050610c2e565b610c2a83614424565b9150505b919050565b6000610c3e82610a86565b50915050604063ffffffff166040821663ffffffff1603610c99578160001b6040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401610c909190616a47565b60405180910390fd5b610ca38383614461565b505050565b600080600080610cba8660001c610a86565b9250925092508473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610d005750610cff8386613aee565b5b80610d4157508473ffffffffffffffffffffffffffffffffffffffff16610d298760001c610bd5565b73ffffffffffffffffffffffffffffffffffffffff16145b8015610d545750610d52828261456a565b155b935050505092915050565b6060600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e89341c836040518263ffffffff1660e01b8152600401610dbc9190616244565b600060405180830381865afa158015610dd9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610e0291906178d2565b9050919050565b81610e148133611cc1565b610e575780336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401610e4e92919061791b565b60405180910390fd5b8260106000610e688360001c610a86565b50915050600082821663ffffffff1614610eb957826040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401610eb09190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166314ab903887876040518363ffffffff1660e01b8152600401610f14929190617944565b600060405180830381600087803b158015610f2e57600080fd5b505af1158015610f42573d6000803e3d6000fd5b50505050505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fd5576040517f1931a53800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806000808686810190610fea91906179ab565b935093509350935060008860001b905060008580519060200120905081811461104c5780826040517fc65c3ccc000000000000000000000000000000000000000000000000000000008152600401611043929190617a2e565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166328ed4f6c8360001c306040518363ffffffff1660e01b81526004016110aa929190617a57565b600060405180830381600087803b1580156110c457600080fd5b505af11580156110d8573d6000803e3d6000fd5b5050505060006276a7007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d6e4fa868d6040518263ffffffff1660e01b815260040161113b9190616244565b602060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c9190617a95565b6111869190617af1565b905061119987878761ffff1684886145ae565b63150b7a0260e01b97505050505050505095945050505050565b6111bb614732565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b8161120a8133611cc1565b61124d5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161124492919061791b565b60405180910390fd5b826008600061125e8360001c610a86565b50915050600082821663ffffffff16146112af57826040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016112a69190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a87876040518363ffffffff1660e01b815260040161130a92919061791b565b600060405180830381600087803b15801561132457600080fd5b505af1158015611338573d6000803e3d6000fd5b50505050505050505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6006602052806000526040600020600091509050805461138990617b5c565b80601f01602080910402602001604051908101604052809291908181526020018280546113b590617b5c565b80156114025780601f106113d757610100808354040283529160200191611402565b820191906000526020600020905b8154815290600101906020018083116113e557829003601f168201915b505050505081565b6000876114178133611cc1565b61145a5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161145192919061791b565b60405180910390fd5b6000888051906020012090506114708a826147b0565b925061147c8a846147e3565b61148683866149d8565b6114918a848b614a36565b5061149e8a848787614b0d565b93506114a983614b57565b611553577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f08b83308b8b6040518663ffffffff1660e01b815260040161150e959493929190617b8d565b600060405180830381600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b5050505061154e8a848b8b8989614c6b565b6115f5565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f08b83308b8b6040518663ffffffff1660e01b81526004016115b4959493929190617b8d565b600060405180830381600087803b1580156115ce57600080fd5b505af11580156115e2573d6000803e3d6000fd5b505050506115f48a848b8b8989614d2a565b5b5050979650505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b815183511461166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166190617c52565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036116d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d090617ce4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148061171957506117188533613aee565b5b611758576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174f90617d76565b60405180910390fd5b60005b835181101561185757600084828151811061177957611778617d96565b5b60200260200101519050600084838151811061179857611797617d96565b5b6020026020010151905060008060006117b085610a86565b9250925092506117c1858383614eb3565b6001841480156117fc57508a73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61183b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183290617e37565b60405180910390fd5b611847858b8484614fe4565b505050505080600101905061175b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516118ce929190617e57565b60405180910390a46118e4338686868686615034565b5050505050565b60006118f785856147b0565b905061190381846149d8565b60008060006119148460001c610a86565b925092509250600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611a1a57503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3866040518263ffffffff1660e01b81526004016119c09190616a47565b602060405180830381865afa1580156119dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a019190617ea3565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611a51576040517f5374b59900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080611a608a60001c610a86565b92509250506000801b8a03611ac157611a798633611cc1565b611abc5785336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611ab392919061791b565b60405180910390fd5b611b0f565b611acb8a33611cc1565b611b0e5789336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611b0592919061791b565b60405180910390fd5b5b611b1a86898461520b565b611b25878483615282565b9650600062010000851663ffffffff1614158015611b5157508363ffffffff1688851763ffffffff1614155b15611b9357856040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401611b8a9190616a47565b60405180910390fd5b8388179750611ba586868a868b6152ce565b50505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600082611be28133611cc1565b611c255780336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611c1c92919061791b565b60405180910390fd5b8360026000611c368360001c610a86565b50915050600082821663ffffffff1614611c8757826040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401611c7e9190616a47565b60405180910390fd5b6000806000611c988a60001c610a86565b925092509250611cb18a84848c61ffff161784856152ce565b8197505050505050505092915050565b600080600080611cd38660001c610a86565b9250925092508473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611d195750611d188386613aee565b5b8015611d2c5750611d2a828261456a565b155b935050505092915050565b60608151835114611d7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7490617f42565b60405180910390fd5b6000835167ffffffffffffffff811115611d9a57611d99616823565b5b604051908082528060200260200182016040528015611dc85781602001602082028036833780820191505090505b50905060005b8451811015611e3f57611e15858281518110611ded57611dec617d96565b5b6020026020010151858381518110611e0857611e07617d96565b5b60200260200101516109c0565b828281518110611e2857611e27617d96565b5b602002602001018181525050806001019050611dce565b508091505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611e78614732565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401611eb3929190617f62565b6020604051808303816000875af1158015611ed2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ef69190617fa0565b50505050565b6000611f078261536e565b9050919050565b600080611f1b85856147b0565b9050611f2681614b57565b611f5c576040517f5374b59900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611f688633610ca8565b905080158015611f7f5750611f7d8233611cc1565b155b15611fc35781336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611fba92919061791b565b60405180910390fd5b6000806000611fd48560001c610a86565b92509250925083158015611ff35750600062040000831663ffffffff16145b1561203557846040517fa2a7201300000000000000000000000000000000000000000000000000000000815260040161202c9190616a47565b60405180910390fd5b60006120438a60001c610a86565b92505050612052888383615282565b97506120608685858b615387565b857ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132896040516120909190617106565b60405180910390a28796505050505050509392505050565b6120b0614732565b6120ba60006153a6565b565b6120e97f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b846147b0565b6120f38133611cc1565b6121365780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161212d92919061791b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121a657826040517f5949361a00000000000000000000000000000000000000000000000000000000815260040161219d9190616481565b60405180910390fd5b6121dc6121d67f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b866147b0565b8361546a565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166342842e0e30858760001c6040518463ffffffff1660e01b815260040161223c93929190617fcd565b600060405180830381600087803b15801561225657600080fd5b505af115801561226a573d6000803e3d6000fd5b5050505050505050565b6000808686604051612287929190618034565b604051809103902060001c905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e836040518263ffffffff1660e01b81526004016122ef9190616244565b602060405180830381865afa15801561230c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123309190617ea3565b90503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415801561240757507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b81526004016123c492919061804d565b602060405180830381865afa1580156123e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124059190617fa0565b155b1561247a5761243c7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8360001b6147b0565b336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161247192919061791b565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166323b872dd8230856040518463ffffffff1660e01b81526004016124d793929190617fcd565b600060405180830381600087803b1580156124f157600080fd5b505af1158015612505573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166328ed4f6c83306040518363ffffffff1660e01b8152600401612564929190617a57565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b505050506276a7007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d6e4fa86846040518263ffffffff1660e01b81526004016125f39190616244565b602060405180830381865afa158015612610573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126349190617a95565b61263e9190617af1565b925061269588888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050878761ffff1686886145ae565b505095945050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603612737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161272e906180e8565b60405180910390fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161282891906163b4565b60405180910390a35050565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166128c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128b99061817a565b60405180910390fd5b600087876040516128d4929190618034565b604051809103902060001c90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663fca247ac8230886040518463ffffffff1660e01b815260040161293e9392919061819a565b6020604051808303816000875af115801561295d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129819190617a95565b91506129e688888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050878561ffff166276a700866129e09190617af1565b886145ae565b509695505050505050565b600080612a008460001c610a86565b509150508263ffffffff1683821663ffffffff161491505092915050565b612a26614732565b600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612bdd577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660006040518363ffffffff1660e01b8152600401612afa9291906181d1565b600060405180830381600087803b158015612b1457600080fd5b505af1158015612b28573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660006040518363ffffffff1660e01b8152600401612baa9291906181d1565b600060405180830381600087803b158015612bc457600080fd5b505af1158015612bd8573d6000803e3d6000fd5b505050505b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612dd5577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016040518363ffffffff1660e01b8152600401612cf29291906181d1565b600060405180830381600087803b158015612d0c57600080fd5b505af1158015612d20573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016040518363ffffffff1660e01b8152600401612da29291906181d1565b600060405180830381600087803b158015612dbc57600080fd5b505af1158015612dd0573d6000803e3d6000fd5b505050505b50565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612e66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e5d9061817a565b60405180910390fd5b6000612e987f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8560001b6147b0565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c475abff86866040518363ffffffff1660e01b8152600401612ef79291906181fa565b6020604051808303816000875af1158015612f16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f3a9190617a95565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e866040518263ffffffff1660e01b8152600401612f959190616244565b602060405180830381865afa925050508015612fcf57506040513d601f19601f82011682018060405250810190612fcc9190617ea3565b60015b612fdd57809250505061312a565b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415806130dd57503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3856040518263ffffffff1660e01b81526004016130839190616a47565b602060405180830381865afa1580156130a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130c49190617ea3565b73ffffffffffffffffffffffffffffffffffffffff1614155b156130ed5781935050505061312a565b5060006276a700826130ff9190617af1565b90506000806131108560001c6142c5565b509150915061312185838386615387565b83955050505050505b92915050565b60008661313d8133611cc1565b6131805780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161317792919061791b565b60405180910390fd5b60008787604051613192929190618034565b604051809103902090506131a689826147b0565b92506131b289846147e3565b6131bc83866149d8565b600061320d8a858b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614a36565b905061321b8a858888614b0d565b945061322684614b57565b6132dd577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166306ab59238b84306040518463ffffffff1660e01b815260040161328793929190618223565b6020604051808303816000875af11580156132a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132ca919061826f565b506132d8848289898961558c565b613330565b61332f8a858b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508a8a8a614d2a565b5b5050509695505050505050565b6000613397600086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506155dd90919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603613421576040517f24c1d6d400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61342b8133611cc1565b61346e5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161346592919061791b565b60405180910390fd5b600080600061347f8460001c610a86565b92509250925060006134938560001c610bd5565b90506134a18560001c615693565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161350a9897969594939291906182c9565b600060405180830381600087803b15801561352457600080fd5b505af1158015613538573d6000803e3d6000fd5b50505050505050505050505050565b836135528133611cc1565b6135955780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161358c92919061791b565b60405180910390fd5b84601060086004171760006135ac8360001c610a86565b50915050600082821663ffffffff16146135fd57826040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016135f49190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663cf408823893089896040518563ffffffff1660e01b815260040161365c949392919061833c565b600060405180830381600087803b15801561367657600080fd5b505af115801561368a573d6000803e3d6000fd5b50505050600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361373d5760006136d08960001c610a86565b509150506202000063ffffffff1662020000821663ffffffff160361372c57876040517f5949361a0000000000000000000000000000000000000000000000000000000081526004016137239190616481565b60405180910390fd5b61373789600061546a565b5061376f565b600061374b8960001c611efc565b905061376d81898b60001c600160405180602001604052806000815250615781565b505b5050505050505050565b61378383836147b0565b61378d8133611cc1565b6137d05780336040517fb455aae80000000000000000000000000000000000000000000000000000000081526004016137c792919061791b565b60405180910390fd5b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b840361382c576040517f615a470300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148061389257503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156138d457816040517f5949361a0000000000000000000000000000000000000000000000000000000081526004016138cb9190616481565b60405180910390fd5b6138e76138e185856147b0565b8361546a565b50505050565b6000806138fa84846147b0565b9050600061390782614b57565b90507f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b851461393d578092505050613a17565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8560001c6040518263ffffffff1660e01b81526004016139999190616244565b602060405180830381865afa9250505080156139d357506040513d601f19601f820116820180604052508101906139d09190617ea3565b60015b6139e257600092505050613a17565b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161493505050505b92915050565b60046020528060005260406000206000915054906101000a900460ff1681565b613a45614732565b80600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8782604051613ae291906163b4565b60405180910390a25050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080613bdd600087878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506158f890919063ffffffff16565b915091506000613c3a8288888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506155dd90919063ffffffff16565b90506000613c4882856147b0565b90508787600660008481526020019081526020016000209182613c6c92919061852e565b507f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8203613cc9576040517f615a470300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3836040518263ffffffff1660e01b8152600401613d249190616a47565b602060405180830381865afa158015613d41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d659190617ea3565b90503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015613e3c57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b8152600401613df992919061804d565b602060405180830381865afa158015613e16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e3a9190617fa0565b155b15613e805781336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401613e7792919061791b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614613f42577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a83886040518363ffffffff1660e01b8152600401613f0f92919061791b565b600060405180830381600087803b158015613f2957600080fd5b505af1158015613f3d573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383306040518363ffffffff1660e01b8152600401613f9d92919061791b565b600060405180830381600087803b158015613fb757600080fd5b505af1158015613fcb573d6000803e3d6000fd5b50505050614021828a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508960008061558c565b505050505050505050565b60016020528060005260406000206000915090505481565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036140b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016140aa90617ce4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614806140f357506140f28533613aee565b5b614132576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161412990618670565b60405180910390fd5b61413f8585858585615781565b5050505050565b61414e614732565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036141bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016141b490618702565b60405180910390fd5b6141c6816153a6565b50565b6000806006600084815260200190815260200160002080546141ea90617b5c565b80601f016020809104026020016040519081016040528092919081815260200182805461421690617b5c565b80156142635780601f1061423857610100808354040283529160200191614263565b820191906000526020600020905b81548152906001019060200180831161424657829003601f168201915b50505050509050600081510361427d5760009150506142c0565b6000806142946000846158f890919063ffffffff16565b9150915060006142ad82856155dd90919063ffffffff16565b90506142b981846138ed565b9450505050505b919050565b6000806000806001600086815260200190815260200160002054905080935060c081901c915060a081901c9250509193909250565b600080428367ffffffffffffffff161015614334576201000063ffffffff1662010000851663ffffffff160361432f57600094505b600093505b848491509150935093915050565b60007fd9b67a26000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061440d57507f0e89341c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061441d575061441c826159b6565b5b9050919050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061446c82611efc565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036144dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016144d390618794565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061451c575061451b8133613aee565b5b61455b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161455290618826565b60405180910390fd5b6145658383615a20565b505050565b60006202000063ffffffff1662020000841663ffffffff161480156145a65750426276a7008361459a9190618846565b67ffffffffffffffff16105b905092915050565b60008580519060200120905060006145e97f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b836147b0565b9050600061462c886040518060400160405280600581526020017f0365746800000000000000000000000000000000000000000000000000000000815250615ad9565b90508060066000848152602001908152602001600020908161464e9190618882565b5061466682828962020000620100008b17178961558c565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614614728577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a83866040518363ffffffff1660e01b81526004016146f592919061791b565b600060405180830381600087803b15801561470f57600080fd5b505af1158015614723573d6000803e3d6000fd5b505050505b5050505050505050565b61473a615b8b565b73ffffffffffffffffffffffffffffffffffffffff166147586126a0565b73ffffffffffffffffffffffffffffffffffffffff16146147ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016147a5906189a0565b60405180910390fd5b565b600082826040516020016147c59291906189e1565b60405160208183030381529060405280519060200120905092915050565b60008060006147f48460001c610a86565b9250925092506000428267ffffffffffffffff161090508080156149145750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806149135750600073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3876040518263ffffffff1660e01b81526004016148ba9190616a47565b602060405180830381865afa1580156148d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148fb9190617ea3565b73ffffffffffffffffffffffffffffffffffffffff16145b5b1561497f5760006149278760001c610a86565b5091505060006020821663ffffffff161461497957856040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016149709190616a47565b60405180910390fd5b506149d0565b600062010000841663ffffffff16146149cf57846040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016149c69190616a47565b60405180910390fd5b5b505050505050565b63fffdffff63ffffffff1663fffdffff821763ffffffff1614614a3257816040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401614a299190616a47565b60405180910390fd5b5050565b60606000614adf83600660008881526020019081526020016000208054614a5c90617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614a8890617b5c565b8015614ad55780601f10614aaa57610100808354040283529160200191614ad5565b820191906000526020600020905b815481529060010190602001808311614ab857829003601f168201915b5050505050615ad9565b905080600660008681526020019081526020016000209081614b019190618882565b50809150509392505050565b600080614b1c8560001c610a86565b92505050600080614b2f8860001c610a86565b9250925050614b3f87878461520b565b614b4a858483615282565b9350505050949350505050565b60008073ffffffffffffffffffffffffffffffffffffffff16614b7c8360001c611efc565b73ffffffffffffffffffffffffffffffffffffffff1614158015614c6457503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b8152600401614c0b9190616a47565b602060405180830381865afa158015614c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614c4c9190617ea3565b73ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b6000614d1285600660008a81526020019081526020016000208054614c8f90617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614cbb90617b5c565b8015614d085780601f10614cdd57610100808354040283529160200191614d08565b820191906000526020600020905b815481529060010190602001808311614ceb57829003601f168201915b5050505050615ad9565b9050614d21868286868661558c565b50505050505050565b6000806000614d3b8860001c610a86565b9250925092506000614de888600660008d81526020019081526020016000208054614d6590617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614d9190617b5c565b8015614dde5780601f10614db357610100808354040283529160200191614dde565b820191906000526020600020905b815481529060010190602001808311614dc157829003601f168201915b5050505050615ad9565b90506000600660008b81526020019081526020016000208054614e0a90617b5c565b905003614e335780600660008b81526020019081526020016000209081614e319190618882565b505b614e42898588861785896152ce565b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1603614e8657614e8189600061546a565b614ea7565b614ea684888b60001c600160405180602001604052806000815250615781565b5b50505050505050505050565b6202000063ffffffff1662020000831663ffffffff1603614ee0576276a70081614edd9190618846565b90505b428167ffffffffffffffff161015614f4557600062010000831663ffffffff1614614f40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401614f3790617e37565b60405180910390fd5b614f97565b60006004831663ffffffff1614614f96578260001b6040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401614f8d9190616a47565b60405180910390fd5b5b60006040831663ffffffff1603614fdf576003600084815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b505050565b60c08167ffffffffffffffff16901b60a08363ffffffff16901b8473ffffffffffffffffffffffffffffffffffffffff161717600160008681526020019081526020016000208190555050505050565b6150538473ffffffffffffffffffffffffffffffffffffffff16615b93565b15615203578373ffffffffffffffffffffffffffffffffffffffff1663bc197c8187878686866040518663ffffffff1660e01b8152600401615099959493929190618a0d565b6020604051808303816000875af19250505080156150d557506040513d601f19601f820116820180604052508101906150d29190618a8a565b60015b61517a576150e1618ac4565b806308c379a00361513d57506150f5618ae6565b80615100575061513f565b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615134919061645f565b60405180910390fd5b505b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161517190618be8565b60405180910390fd5b63bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614615201576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016151f890618c7a565b60405180910390fd5b505b505050505050565b60008063ffff0000841663ffffffff16141590506000806001841663ffffffff161490508180156152395750805b1561527b57846040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016152729190616a47565b60405180910390fd5b5050505050565b60008167ffffffffffffffff168467ffffffffffffffff1611156152a4578193505b8267ffffffffffffffff168467ffffffffffffffff1610156152c4578293505b8390509392505050565b6152da85858584615387565b847f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b8460405161530a9190616dee565b60405180910390a28167ffffffffffffffff168167ffffffffffffffff16111561536757847ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1328260405161535e9190617106565b60405180910390a25b5050505050565b60008061537a83610a86565b5050905080915050919050565b6153918483615bb6565b6153a08460001c848484614fe4565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6154758260016129f1565b156154b757816040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016154ae9190616a47565b60405180910390fd5b6154c38260001c615693565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383836040518363ffffffff1660e01b815260040161551e92919061791b565b600060405180830381600087803b15801561553857600080fd5b505af115801561554c573d6000803e3d6000fd5b50505050817fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c4826040516155809190616481565b60405180910390a25050565b61559885848484615c34565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd340858585856040516155ce9493929190618c9a565b60405180910390a25050505050565b60008060006155ec85856158f8565b915091506000801b820361565657600185516156089190618ce6565b8414615649576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161564090618d66565b60405180910390fd5b6000801b9250505061568d565b61566085826155dd565b826040516020016156729291906189e1565b60405160208183030381529060405280519060200120925050505b92915050565b60008060006156a1846142c5565b9250925092506156b28383836142fa565b9050809250506003600085815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556156fb8460008484614fe4565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62876001604051615773929190618dc1565b60405180910390a450505050565b600080600061578f86610a86565b9250925092506157a0868383614eb3565b6001851480156157db57508773ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61581a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161581190617e37565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603615855575050506158f1565b61586186888484614fe4565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6289896040516158d79291906181fa565b60405180910390a46158ed338989898989615cdd565b5050505b5050505050565b6000808351831061593e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161593590618e36565b60405180910390fd5b600084848151811061595357615952617d96565b5b602001015160f81c60f81b60f81c60ff169050600081111561598d57615986856001866159809190618e56565b83615eb4565b9250615994565b6000801b92505b600181856159a29190618e56565b6159ac9190618e56565b9150509250929050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16615a9383611efc565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015615b17576040517f280dacb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff83511115615b5e57826040517fe3ba295f000000000000000000000000000000000000000000000000000000008152600401615b55919061645f565b60405180910390fd5b82518383604051602001615b7493929190618f3a565b604051602081830303815290604052905092915050565b600033905090565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600063ffff000019821663ffffffff1614158015615bee57506001620100001763ffffffff1660016201000017821663ffffffff1614155b15615c3057816040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401615c279190616a47565b60405180910390fd5b5050565b615c3e8483615bb6565b6000615c4c8560001c6142c5565b50509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614615cca57615c908560001c615693565b847fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c46000604051615cc19190616481565b60405180910390a25b615cd685858585615ee0565b5050505050565b615cfc8473ffffffffffffffffffffffffffffffffffffffff16615b93565b15615eac578373ffffffffffffffffffffffffffffffffffffffff1663f23a6e6187878686866040518663ffffffff1660e01b8152600401615d42959493929190618f6f565b6020604051808303816000875af1925050508015615d7e57506040513d601f19601f82011682018060405250810190615d7b9190618a8a565b60015b615e2357615d8a618ac4565b806308c379a003615de65750615d9e618ae6565b80615da95750615de8565b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615ddd919061645f565b60405180910390fd5b505b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615e1a90618be8565b60405180910390fd5b63f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614615eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615ea190618c7a565b60405180910390fd5b505b505050505050565b600083518284615ec49190618e56565b1115615ecf57600080fd5b818360208601012090509392505050565b60008460001c90506000806000615ef98860001c610a86565b925092509250600082601061ffff801663ffffffff16901b1690508567ffffffffffffffff168267ffffffffffffffff161115615f34578195505b428267ffffffffffffffff1610615f4b5780871796505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614615fba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615fb190619015565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1603616029576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401616020906190a7565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1603616097576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161608e90619139565b60405180910390fd5b6160a385898989614fe4565b8773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6288600160405161611b929190618dc1565b60405180910390a46161423360008a88600160405180602001604052806000815250615cdd565b505050505050505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061618c82616161565b9050919050565b61619c81616181565b81146161a757600080fd5b50565b6000813590506161b981616193565b92915050565b6000819050919050565b6161d2816161bf565b81146161dd57600080fd5b50565b6000813590506161ef816161c9565b92915050565b6000806040838503121561620c5761620b616157565b5b600061621a858286016161aa565b925050602061622b858286016161e0565b9150509250929050565b61623e816161bf565b82525050565b60006020820190506162596000830184616235565b92915050565b60006020828403121561627557616274616157565b5b6000616283848285016161e0565b91505092915050565b61629581616181565b82525050565b600063ffffffff82169050919050565b6162b48161629b565b82525050565b600067ffffffffffffffff82169050919050565b6162d7816162ba565b82525050565b60006060820190506162f2600083018661628c565b6162ff60208301856162ab565b61630c60408301846162ce565b949350505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61634981616314565b811461635457600080fd5b50565b60008135905061636681616340565b92915050565b60006020828403121561638257616381616157565b5b600061639084828501616357565b91505092915050565b60008115159050919050565b6163ae81616399565b82525050565b60006020820190506163c960008301846163a5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156164095780820151818401526020810190506163ee565b60008484015250505050565b6000601f19601f8301169050919050565b6000616431826163cf565b61643b81856163da565b935061644b8185602086016163eb565b61645481616415565b840191505092915050565b600060208201905081810360008301526164798184616426565b905092915050565b6000602082019050616496600083018461628c565b92915050565b6000819050919050565b6164af8161649c565b81146164ba57600080fd5b50565b6000813590506164cc816164a6565b92915050565b600080604083850312156164e9576164e8616157565b5b60006164f7858286016164bd565b9250506020616508858286016161aa565b9150509250929050565b61651b816162ba565b811461652657600080fd5b50565b60008135905061653881616512565b92915050565b6000806040838503121561655557616554616157565b5b6000616563858286016164bd565b925050602061657485828601616529565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f8401126165a3576165a261657e565b5b8235905067ffffffffffffffff8111156165c0576165bf616583565b5b6020830191508360018202830111156165dc576165db616588565b5b9250929050565b6000806000806000608086880312156165ff576165fe616157565b5b600061660d888289016161aa565b955050602061661e888289016161aa565b945050604061662f888289016161e0565b935050606086013567ffffffffffffffff8111156166505761664f61615c565b5b61665c8882890161658d565b92509250509295509295909350565b61667481616314565b82525050565b600060208201905061668f600083018461666b565b92915050565b60006166a082616181565b9050919050565b6166b081616695565b81146166bb57600080fd5b50565b6000813590506166cd816166a7565b92915050565b6000602082840312156166e9576166e8616157565b5b60006166f7848285016166be565b91505092915050565b6000819050919050565b600061672561672061671b84616161565b616700565b616161565b9050919050565b60006167378261670a565b9050919050565b60006167498261672c565b9050919050565b6167598161673e565b82525050565b60006020820190506167746000830184616750565b92915050565b6000602082840312156167905761678f616157565b5b600061679e848285016164bd565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60006167ce826167a7565b6167d881856167b2565b93506167e88185602086016163eb565b6167f181616415565b840191505092915050565b6000602082019050818103600083015261681681846167c3565b905092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61685b82616415565b810181811067ffffffffffffffff8211171561687a57616879616823565b5b80604052505050565b600061688d61614d565b90506168998282616852565b919050565b600067ffffffffffffffff8211156168b9576168b8616823565b5b6168c282616415565b9050602081019050919050565b82818337600083830152505050565b60006168f16168ec8461689e565b616883565b90508281526020810184848401111561690d5761690c61681e565b5b6169188482856168cf565b509392505050565b600082601f8301126169355761693461657e565b5b81356169458482602086016168de565b91505092915050565b6169578161629b565b811461696257600080fd5b50565b6000813590506169748161694e565b92915050565b600080600080600080600060e0888a03121561699957616998616157565b5b60006169a78a828b016164bd565b975050602088013567ffffffffffffffff8111156169c8576169c761615c565b5b6169d48a828b01616920565b96505060406169e58a828b016161aa565b95505060606169f68a828b016161aa565b9450506080616a078a828b01616529565b93505060a0616a188a828b01616965565b92505060c0616a298a828b01616529565b91505092959891949750929550565b616a418161649c565b82525050565b6000602082019050616a5c6000830184616a38565b92915050565b6000616a6d8261672c565b9050919050565b616a7d81616a62565b82525050565b6000602082019050616a986000830184616a74565b92915050565b600067ffffffffffffffff821115616ab957616ab8616823565b5b602082029050602081019050919050565b6000616add616ad884616a9e565b616883565b90508083825260208201905060208402830185811115616b0057616aff616588565b5b835b81811015616b295780616b1588826161e0565b845260208401935050602081019050616b02565b5050509392505050565b600082601f830112616b4857616b4761657e565b5b8135616b58848260208601616aca565b91505092915050565b600067ffffffffffffffff821115616b7c57616b7b616823565b5b616b8582616415565b9050602081019050919050565b6000616ba5616ba084616b61565b616883565b905082815260208101848484011115616bc157616bc061681e565b5b616bcc8482856168cf565b509392505050565b600082601f830112616be957616be861657e565b5b8135616bf9848260208601616b92565b91505092915050565b600080600080600060a08688031215616c1e57616c1d616157565b5b6000616c2c888289016161aa565b9550506020616c3d888289016161aa565b945050604086013567ffffffffffffffff811115616c5e57616c5d61615c565b5b616c6a88828901616b33565b935050606086013567ffffffffffffffff811115616c8b57616c8a61615c565b5b616c9788828901616b33565b925050608086013567ffffffffffffffff811115616cb857616cb761615c565b5b616cc488828901616bd4565b9150509295509295909350565b60008060008060808587031215616ceb57616cea616157565b5b6000616cf9878288016164bd565b9450506020616d0a878288016164bd565b9350506040616d1b87828801616965565b9250506060616d2c87828801616529565b91505092959194509250565b6000616d438261672c565b9050919050565b616d5381616d38565b82525050565b6000602082019050616d6e6000830184616d4a565b92915050565b600061ffff82169050919050565b616d8b81616d74565b8114616d9657600080fd5b50565b600081359050616da881616d82565b92915050565b60008060408385031215616dc557616dc4616157565b5b6000616dd3858286016164bd565b9250506020616de485828601616d99565b9150509250929050565b6000602082019050616e0360008301846162ab565b92915050565b600067ffffffffffffffff821115616e2457616e23616823565b5b602082029050602081019050919050565b6000616e48616e4384616e09565b616883565b90508083825260208201905060208402830185811115616e6b57616e6a616588565b5b835b81811015616e945780616e8088826161aa565b845260208401935050602081019050616e6d565b5050509392505050565b600082601f830112616eb357616eb261657e565b5b8135616ec3848260208601616e35565b91505092915050565b60008060408385031215616ee357616ee2616157565b5b600083013567ffffffffffffffff811115616f0157616f0061615c565b5b616f0d85828601616e9e565b925050602083013567ffffffffffffffff811115616f2e57616f2d61615c565b5b616f3a85828601616b33565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b616f79816161bf565b82525050565b6000616f8b8383616f70565b60208301905092915050565b6000602082019050919050565b6000616faf82616f44565b616fb98185616f4f565b9350616fc483616f60565b8060005b83811015616ff5578151616fdc8882616f7f565b9750616fe783616f97565b925050600181019050616fc8565b5085935050505092915050565b6000602082019050818103600083015261701c8184616fa4565b905092915050565b600061702f8261672c565b9050919050565b61703f81617024565b82525050565b600060208201905061705a6000830184617036565b92915050565b60008060006060848603121561707957617078616157565b5b6000617087868287016161aa565b9350506020617098868287016161aa565b92505060406170a9868287016161e0565b9150509250925092565b6000806000606084860312156170cc576170cb616157565b5b60006170da868287016164bd565b93505060206170eb868287016164bd565b92505060406170fc86828701616529565b9150509250925092565b600060208201905061711b60008301846162ce565b92915050565b60008060006060848603121561713a57617139616157565b5b6000617148868287016164bd565b9350506020617159868287016161aa565b925050604061716a868287016161aa565b9150509250925092565b60008083601f84011261718a5761718961657e565b5b8235905067ffffffffffffffff8111156171a7576171a6616583565b5b6020830191508360018202830111156171c3576171c2616588565b5b9250929050565b6000806000806000608086880312156171e6576171e5616157565b5b600086013567ffffffffffffffff8111156172045761720361615c565b5b61721088828901617174565b95509550506020617223888289016161aa565b935050604061723488828901616d99565b9250506060617245888289016161aa565b9150509295509295909350565b61725b81616399565b811461726657600080fd5b50565b60008135905061727881617252565b92915050565b6000806040838503121561729557617294616157565b5b60006172a3858286016161aa565b92505060206172b485828601617269565b9150509250929050565b60008060008060008060a087890312156172db576172da616157565b5b600087013567ffffffffffffffff8111156172f9576172f861615c565b5b61730589828a01617174565b9650965050602061731889828a016161aa565b945050604061732989828a016161e0565b935050606061733a89828a016161aa565b925050608061734b89828a01616d99565b9150509295509295509295565b6000806040838503121561736f5761736e616157565b5b600061737d858286016164bd565b925050602061738e85828601616965565b9150509250929050565b60006173a382616181565b9050919050565b6173b381617398565b81146173be57600080fd5b50565b6000813590506173d0816173aa565b92915050565b6000602082840312156173ec576173eb616157565b5b60006173fa848285016173c1565b91505092915050565b6000806040838503121561741a57617419616157565b5b6000617428858286016161e0565b9250506020617439858286016161e0565b9150509250929050565b60008060008060008060a087890312156174605761745f616157565b5b600061746e89828a016164bd565b965050602087013567ffffffffffffffff81111561748f5761748e61615c565b5b61749b89828a01617174565b955095505060406174ae89828a016161aa565b93505060606174bf89828a01616965565b92505060806174d089828a01616529565b9150509295509295509295565b600080600080604085870312156174f7576174f6616157565b5b600085013567ffffffffffffffff8111156175155761751461615c565b5b6175218782880161658d565b9450945050602085013567ffffffffffffffff8111156175445761754361615c565b5b6175508782880161658d565b925092505092959194509250565b6000806000806080858703121561757857617577616157565b5b6000617586878288016164bd565b9450506020617597878288016161aa565b93505060406175a8878288016161aa565b92505060606175b987828801616529565b91505092959194509250565b6000806000606084860312156175de576175dd616157565b5b60006175ec868287016164bd565b93505060206175fd868287016164bd565b925050604061760e868287016161aa565b9150509250925092565b6000806040838503121561762f5761762e616157565b5b600061763d858286016164bd565b925050602061764e858286016164bd565b9150509250929050565b60006020828403121561766e5761766d616157565b5b600061767c848285016161aa565b91505092915050565b6000806040838503121561769c5761769b616157565b5b60006176aa858286016161aa565b92505060206176bb858286016161aa565b9150509250929050565b600080600080606085870312156176df576176de616157565b5b600085013567ffffffffffffffff8111156176fd576176fc61615c565b5b6177098782880161658d565b9450945050602061771c878288016161aa565b925050604061772d878288016161aa565b91505092959194509250565b600080600080600060a0868803121561775557617754616157565b5b6000617763888289016161aa565b9550506020617774888289016161aa565b9450506040617785888289016161e0565b9350506060617796888289016161e0565b925050608086013567ffffffffffffffff8111156177b7576177b661615c565b5b6177c388828901616bd4565b9150509295509295909350565b7f455243313135353a2062616c616e636520717565727920666f7220746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b600061782c602b836163da565b9150617837826177d0565b604082019050919050565b6000602082019050818103600083015261785b8161781f565b9050919050565b60006178756178708461689e565b616883565b9050828152602081018484840111156178915761789061681e565b5b61789c8482856163eb565b509392505050565b600082601f8301126178b9576178b861657e565b5b81516178c9848260208601617862565b91505092915050565b6000602082840312156178e8576178e7616157565b5b600082015167ffffffffffffffff8111156179065761790561615c565b5b617912848285016178a4565b91505092915050565b60006040820190506179306000830185616a38565b61793d602083018461628c565b9392505050565b60006040820190506179596000830185616a38565b61796660208301846162ce565b9392505050565b600061797882616161565b9050919050565b6179888161796d565b811461799357600080fd5b50565b6000813590506179a58161797f565b92915050565b600080600080608085870312156179c5576179c4616157565b5b600085013567ffffffffffffffff8111156179e3576179e261615c565b5b6179ef87828801616920565b9450506020617a0087828801617996565b9350506040617a1187828801616d99565b9250506060617a2287828801617996565b91505092959194509250565b6000604082019050617a436000830185616a38565b617a506020830184616a38565b9392505050565b6000604082019050617a6c6000830185616235565b617a79602083018461628c565b9392505050565b600081519050617a8f816161c9565b92915050565b600060208284031215617aab57617aaa616157565b5b6000617ab984828501617a80565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000617afc826162ba565b9150617b07836162ba565b9250828201905067ffffffffffffffff811115617b2757617b26617ac2565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680617b7457607f821691505b602082108103617b8757617b86617b2d565b5b50919050565b600060a082019050617ba26000830188616a38565b617baf6020830187616a38565b617bbc604083018661628c565b617bc9606083018561628c565b617bd660808301846162ce565b9695505050505050565b7f455243313135353a2069647320616e6420616d6f756e7473206c656e6774682060008201527f6d69736d61746368000000000000000000000000000000000000000000000000602082015250565b6000617c3c6028836163da565b9150617c4782617be0565b604082019050919050565b60006020820190508181036000830152617c6b81617c2f565b9050919050565b7f455243313135353a207472616e7366657220746f20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000617cce6025836163da565b9150617cd982617c72565b604082019050919050565b60006020820190508181036000830152617cfd81617cc1565b9050919050565b7f455243313135353a207472616e736665722063616c6c6572206973206e6f742060008201527f6f776e6572206e6f7220617070726f7665640000000000000000000000000000602082015250565b6000617d606032836163da565b9150617d6b82617d04565b604082019050919050565b60006020820190508181036000830152617d8f81617d53565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f455243313135353a20696e73756666696369656e742062616c616e636520666f60008201527f72207472616e7366657200000000000000000000000000000000000000000000602082015250565b6000617e21602a836163da565b9150617e2c82617dc5565b604082019050919050565b60006020820190508181036000830152617e5081617e14565b9050919050565b60006040820190508181036000830152617e718185616fa4565b90508181036020830152617e858184616fa4565b90509392505050565b600081519050617e9d81616193565b92915050565b600060208284031215617eb957617eb8616157565b5b6000617ec784828501617e8e565b91505092915050565b7f455243313135353a206163636f756e747320616e6420696473206c656e67746860008201527f206d69736d617463680000000000000000000000000000000000000000000000602082015250565b6000617f2c6029836163da565b9150617f3782617ed0565b604082019050919050565b60006020820190508181036000830152617f5b81617f1f565b9050919050565b6000604082019050617f77600083018561628c565b617f846020830184616235565b9392505050565b600081519050617f9a81617252565b92915050565b600060208284031215617fb657617fb5616157565b5b6000617fc484828501617f8b565b91505092915050565b6000606082019050617fe2600083018661628c565b617fef602083018561628c565b617ffc6040830184616235565b949350505050565b600081905092915050565b600061801b8385618004565b93506180288385846168cf565b82840190509392505050565b600061804182848661800f565b91508190509392505050565b6000604082019050618062600083018561628c565b61806f602083018461628c565b9392505050565b7f455243313135353a2073657474696e6720617070726f76616c2073746174757360008201527f20666f722073656c660000000000000000000000000000000000000000000000602082015250565b60006180d26029836163da565b91506180dd82618076565b604082019050919050565b60006020820190508181036000830152618101816180c5565b9050919050565b7f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f60008201527f6e74726f6c6c6572000000000000000000000000000000000000000000000000602082015250565b60006181646028836163da565b915061816f82618108565b604082019050919050565b6000602082019050818103600083015261819381618157565b9050919050565b60006060820190506181af6000830186616235565b6181bc602083018561628c565b6181c96040830184616235565b949350505050565b60006040820190506181e6600083018561628c565b6181f360208301846163a5565b9392505050565b600060408201905061820f6000830185616235565b61821c6020830184616235565b9392505050565b60006060820190506182386000830186616a38565b6182456020830185616a38565b618252604083018461628c565b949350505050565b600081519050618269816164a6565b92915050565b60006020828403121561828557618284616157565b5b60006182938482850161825a565b91505092915050565b60006182a883856167b2565b93506182b58385846168cf565b6182be83616415565b840190509392505050565b600060c08201905081810360008301526182e4818a8c61829c565b90506182f3602083018961628c565b61830060408301886162ab565b61830d60608301876162ce565b61831a608083018661628c565b81810360a083015261832d81848661829c565b90509998505050505050505050565b60006080820190506183516000830187616a38565b61835e602083018661628c565b61836b604083018561628c565b61837860608301846162ce565b95945050505050565b600082905092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026183ee7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826183b1565b6183f886836183b1565b95508019841693508086168417925050509392505050565b600061842b618426618421846161bf565b616700565b6161bf565b9050919050565b6000819050919050565b61844583618410565b61845961845182618432565b8484546183be565b825550505050565b600090565b61846e618461565b61847981848461843c565b505050565b5b8181101561849d57618492600082618466565b60018101905061847f565b5050565b601f8211156184e2576184b38161838c565b6184bc846183a1565b810160208510156184cb578190505b6184df6184d7856183a1565b83018261847e565b50505b505050565b600082821c905092915050565b6000618505600019846008026184e7565b1980831691505092915050565b600061851e83836184f4565b9150826002028217905092915050565b6185388383618381565b67ffffffffffffffff81111561855157618550616823565b5b61855b8254617b5c565b6185668282856184a1565b6000601f8311600181146185955760008415618583578287013590505b61858d8582618512565b8655506185f5565b601f1984166185a38661838c565b60005b828110156185cb578489013582556001820191506020850194506020810190506185a6565b868310156185e857848901356185e4601f8916826184f4565b8355505b6001600288020188555050505b50505050505050565b7f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260008201527f20617070726f7665640000000000000000000000000000000000000000000000602082015250565b600061865a6029836163da565b9150618665826185fe565b604082019050919050565b600060208201905081810360008301526186898161864d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006186ec6026836163da565b91506186f782618690565b604082019050919050565b6000602082019050818103600083015261871b816186df565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600061877e6021836163da565b915061878982618722565b604082019050919050565b600060208201905081810360008301526187ad81618771565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000618810603d836163da565b915061881b826187b4565b604082019050919050565b6000602082019050818103600083015261883f81618803565b9050919050565b6000618851826162ba565b915061885c836162ba565b9250828203905067ffffffffffffffff81111561887c5761887b617ac2565b5b92915050565b61888b826167a7565b67ffffffffffffffff8111156188a4576188a3616823565b5b6188ae8254617b5c565b6188b98282856184a1565b600060209050601f8311600181146188ec57600084156188da578287015190505b6188e48582618512565b86555061894c565b601f1984166188fa8661838c565b60005b82811015618922578489015182556001820191506020850194506020810190506188fd565b8683101561893f578489015161893b601f8916826184f4565b8355505b6001600288020188555050505b505050505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061898a6020836163da565b915061899582618954565b602082019050919050565b600060208201905081810360008301526189b98161897d565b9050919050565b6000819050919050565b6189db6189d68261649c565b6189c0565b82525050565b60006189ed82856189ca565b6020820191506189fd82846189ca565b6020820191508190509392505050565b600060a082019050618a22600083018861628c565b618a2f602083018761628c565b8181036040830152618a418186616fa4565b90508181036060830152618a558185616fa4565b90508181036080830152618a6981846167c3565b90509695505050505050565b600081519050618a8481616340565b92915050565b600060208284031215618aa057618a9f616157565b5b6000618aae84828501618a75565b91505092915050565b60008160e01c9050919050565b600060033d1115618ae35760046000803e618ae0600051618ab7565b90505b90565b600060443d10618b7357618af861614d565b60043d036004823e80513d602482011167ffffffffffffffff82111715618b20575050618b73565b808201805167ffffffffffffffff811115618b3e5750505050618b73565b80602083010160043d038501811115618b5b575050505050618b73565b618b6a82602001850186616852565b82955050505050505b90565b7f455243313135353a207472616e7366657220746f206e6f6e204552433131353560008201527f526563656976657220696d706c656d656e746572000000000000000000000000602082015250565b6000618bd26034836163da565b9150618bdd82618b76565b604082019050919050565b60006020820190508181036000830152618c0181618bc5565b9050919050565b7f455243313135353a204552433131353552656365697665722072656a6563746560008201527f6420746f6b656e73000000000000000000000000000000000000000000000000602082015250565b6000618c646028836163da565b9150618c6f82618c08565b604082019050919050565b60006020820190508181036000830152618c9381618c57565b9050919050565b60006080820190508181036000830152618cb481876167c3565b9050618cc3602083018661628c565b618cd060408301856162ab565b618cdd60608301846162ce565b95945050505050565b6000618cf1826161bf565b9150618cfc836161bf565b9250828203905081811115618d1457618d13617ac2565b5b92915050565b7f6e616d65686173683a204a756e6b20617420656e64206f66206e616d65000000600082015250565b6000618d50601d836163da565b9150618d5b82618d1a565b602082019050919050565b60006020820190508181036000830152618d7f81618d43565b9050919050565b6000819050919050565b6000618dab618da6618da184618d86565b616700565b6161bf565b9050919050565b618dbb81618d90565b82525050565b6000604082019050618dd66000830185616235565b618de36020830184618db2565b9392505050565b7f726561644c6162656c3a20496e646578206f7574206f6620626f756e64730000600082015250565b6000618e20601e836163da565b9150618e2b82618dea565b602082019050919050565b60006020820190508181036000830152618e4f81618e13565b9050919050565b6000618e61826161bf565b9150618e6c836161bf565b9250828201905080821115618e8457618e83617ac2565b5b92915050565b600060ff82169050919050565b60008160f81b9050919050565b6000618eaf82618e97565b9050919050565b618ec7618ec282618e8a565b618ea4565b82525050565b600081905092915050565b6000618ee3826163cf565b618eed8185618ecd565b9350618efd8185602086016163eb565b80840191505092915050565b6000618f14826167a7565b618f1e8185618004565b9350618f2e8185602086016163eb565b80840191505092915050565b6000618f468286618eb6565b600182019150618f568285618ed8565b9150618f628284618f09565b9150819050949350505050565b600060a082019050618f84600083018861628c565b618f91602083018761628c565b618f9e6040830186616235565b618fab6060830185616235565b8181036080830152618fbd81846167c3565b90509695505050505050565b7f455243313135353a206d696e74206f66206578697374696e6720746f6b656e00600082015250565b6000618fff601f836163da565b915061900a82618fc9565b602082019050919050565b6000602082019050818103600083015261902e81618ff2565b9050919050565b7f455243313135353a206d696e7420746f20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006190916021836163da565b915061909c82619035565b604082019050919050565b600060208201905081810360008301526190c081619084565b9050919050565b7f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060008201527f4e616d655772617070657220636f6e7472616374000000000000000000000000602082015250565b60006191236034836163da565b915061912e826190c7565b604082019050919050565b6000602082019050818103600083015261915281619116565b905091905056fea26469706673582212206cca2714ad798ebccb9d77630ae621bcfe24d874cccd2e65aaefd2678512999464736f6c63430008190033", + "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x9C70 CODESIZE SUB DUP1 PUSH2 0x9C70 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x550 JUMP JUMPDEST DUP3 CALLER PUSH2 0x50 PUSH2 0x45 PUSH2 0x343 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x34B PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 PUSH32 0x91D1777781884D03A6757A803996E38DE2A42967FB37EEACA72729271025A9E2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAE SWAP2 SWAP1 PUSH2 0x5BC JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEF SWAP2 SWAP1 PUSH2 0x603 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1E83409A DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A SWAP2 SWAP1 PUSH2 0x63F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x149 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x16D SWAP2 SWAP1 PUSH2 0x686 JUMP JUMPDEST POP POP POP POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP1 PUSH1 0x5 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x261 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL PUSH1 0x0 SHR PUSH1 0x0 PUSH1 0x1 PUSH3 0x10000 OR PUSH8 0xFFFFFFFFFFFFFFFF PUSH2 0x40F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH2 0x288 PUSH1 0x0 DUP1 SHL PUSH1 0x0 SHR PUSH1 0x0 PUSH1 0x1 PUSH3 0x10000 OR PUSH8 0xFFFFFFFFFFFFFFFF PUSH2 0x40F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP1 PUSH1 0x0 SHL DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x2C1 SWAP2 SWAP1 PUSH2 0x903 JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x365746800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x33A SWAP2 SWAP1 PUSH2 0x903 JUMP JUMPDEST POP POP POP POP PUSH2 0x9D5 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0xC0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHL PUSH1 0xA0 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHL DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND OR OR PUSH1 0x1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x48F DUP3 PUSH2 0x464 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4A1 DUP3 PUSH2 0x484 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4B1 DUP2 PUSH2 0x496 JUMP JUMPDEST DUP2 EQ PUSH2 0x4BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4CE DUP2 PUSH2 0x4A8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4DF DUP3 PUSH2 0x484 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x4EF DUP2 PUSH2 0x4D4 JUMP JUMPDEST DUP2 EQ PUSH2 0x4FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x50C DUP2 PUSH2 0x4E6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x51D DUP3 PUSH2 0x484 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x52D DUP2 PUSH2 0x512 JUMP JUMPDEST DUP2 EQ PUSH2 0x538 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x54A DUP2 PUSH2 0x524 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x569 JUMPI PUSH2 0x568 PUSH2 0x45F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x577 DUP7 DUP3 DUP8 ADD PUSH2 0x4BF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x588 DUP7 DUP3 DUP8 ADD PUSH2 0x4FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x599 DUP7 DUP3 DUP8 ADD PUSH2 0x53B JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5B6 DUP2 PUSH2 0x5A3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x5D1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5AD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x5E0 DUP2 PUSH2 0x484 JUMP JUMPDEST DUP2 EQ PUSH2 0x5EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x5FD DUP2 PUSH2 0x5D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x619 JUMPI PUSH2 0x618 PUSH2 0x45F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x627 DUP5 DUP3 DUP6 ADD PUSH2 0x5EE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x639 DUP2 PUSH2 0x484 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x654 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x630 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x663 DUP2 PUSH2 0x5A3 JUMP JUMPDEST DUP2 EQ PUSH2 0x66E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x680 DUP2 PUSH2 0x65A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x69C JUMPI PUSH2 0x69B PUSH2 0x45F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6AA DUP5 DUP3 DUP6 ADD PUSH2 0x671 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x734 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x747 JUMPI PUSH2 0x746 PUSH2 0x6ED JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x7AF PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x772 JUMP JUMPDEST PUSH2 0x7B9 DUP7 DUP4 PUSH2 0x772 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x800 PUSH2 0x7FB PUSH2 0x7F6 DUP5 PUSH2 0x7D1 JUMP JUMPDEST PUSH2 0x7DB JUMP JUMPDEST PUSH2 0x7D1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x81A DUP4 PUSH2 0x7E5 JUMP JUMPDEST PUSH2 0x82E PUSH2 0x826 DUP3 PUSH2 0x807 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x77F JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x843 PUSH2 0x836 JUMP JUMPDEST PUSH2 0x84E DUP2 DUP5 DUP5 PUSH2 0x811 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x872 JUMPI PUSH2 0x867 PUSH1 0x0 DUP3 PUSH2 0x83B JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x854 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x8B7 JUMPI PUSH2 0x888 DUP2 PUSH2 0x74D JUMP JUMPDEST PUSH2 0x891 DUP5 PUSH2 0x762 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x8A0 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x8B4 PUSH2 0x8AC DUP6 PUSH2 0x762 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x853 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8DA PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x8BC JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F3 DUP4 DUP4 PUSH2 0x8C9 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x90C DUP3 PUSH2 0x6B3 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x925 JUMPI PUSH2 0x924 PUSH2 0x6BE JUMP JUMPDEST JUMPDEST PUSH2 0x92F DUP3 SLOAD PUSH2 0x71C JUMP JUMPDEST PUSH2 0x93A DUP3 DUP3 DUP6 PUSH2 0x876 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x96D JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x95B JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x965 DUP6 DUP3 PUSH2 0x8E7 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x9CD JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x97B DUP7 PUSH2 0x74D JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x9A3 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x97E JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x9C0 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x9BC PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x8C9 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH2 0x918F PUSH2 0xAE1 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0xF52 ADD MSTORE DUP2 DUP2 PUSH2 0x104E ADD MSTORE DUP2 DUP2 PUSH2 0x10E4 ADD MSTORE DUP2 DUP2 PUSH2 0x1604 ADD MSTORE DUP2 DUP2 PUSH2 0x21DE ADD MSTORE DUP2 DUP2 PUSH2 0x2298 ADD MSTORE DUP2 DUP2 PUSH2 0x236B ADD MSTORE DUP2 DUP2 PUSH2 0x247C ADD MSTORE DUP2 DUP2 PUSH2 0x250B ADD MSTORE DUP2 DUP2 PUSH2 0x259C ADD MSTORE DUP2 DUP2 PUSH2 0x28E3 ADD MSTORE DUP2 DUP2 PUSH2 0x2A7E ADD MSTORE DUP2 DUP2 PUSH2 0x2C76 ADD MSTORE DUP2 DUP2 PUSH2 0x2E9E ADD MSTORE DUP2 DUP2 PUSH2 0x2F3E ADD MSTORE PUSH2 0x393F ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0xEBB ADD MSTORE DUP2 DUP2 PUSH2 0x12B1 ADD MSTORE DUP2 DUP2 PUSH2 0x14AF ADD MSTORE DUP2 DUP2 PUSH2 0x1555 ADD MSTORE DUP2 DUP2 PUSH2 0x1969 ADD MSTORE DUP2 DUP2 PUSH2 0x1BB3 ADD MSTORE DUP2 DUP2 PUSH2 0x2B2E ADD MSTORE DUP2 DUP2 PUSH2 0x2D26 ADD MSTORE DUP2 DUP2 PUSH2 0x302C ADD MSTORE DUP2 DUP2 PUSH2 0x322C ADD MSTORE DUP2 DUP2 PUSH2 0x35FF ADD MSTORE DUP2 DUP2 PUSH2 0x3CCD ADD MSTORE DUP2 DUP2 PUSH2 0x3DA0 ADD MSTORE DUP2 DUP2 PUSH2 0x3EB6 ADD MSTORE DUP2 DUP2 PUSH2 0x3F44 ADD MSTORE DUP2 DUP2 PUSH2 0x469C ADD MSTORE DUP2 DUP2 PUSH2 0x4863 ADD MSTORE DUP2 DUP2 PUSH2 0x4BB4 ADD MSTORE PUSH2 0x54C5 ADD MSTORE PUSH2 0x918F PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x29F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6352211E GT PUSH2 0x167 JUMPI DUP1 PUSH4 0xC93AB3FD GT PUSH2 0xCE JUMPI DUP1 PUSH4 0xE985E9C5 GT PUSH2 0x87 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x8DC JUMPI DUP1 PUSH4 0xEB8AE530 EQ PUSH2 0x90C JUMPI DUP1 PUSH4 0xED70554D EQ PUSH2 0x928 JUMPI DUP1 PUSH4 0xF242432A EQ PUSH2 0x958 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x974 JUMPI DUP1 PUSH4 0xFD0CD0D9 EQ PUSH2 0x990 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xC93AB3FD EQ PUSH2 0x80C JUMPI DUP1 PUSH4 0xCF408823 EQ PUSH2 0x828 JUMPI DUP1 PUSH4 0xD8C9921A EQ PUSH2 0x844 JUMPI DUP1 PUSH4 0xD9A50C12 EQ PUSH2 0x860 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x890 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0x8C0 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xA22CB465 GT PUSH2 0x120 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x714 JUMPI DUP1 PUSH4 0xA4014982 EQ PUSH2 0x730 JUMPI DUP1 PUSH4 0xADF4960A EQ PUSH2 0x760 JUMPI DUP1 PUSH4 0xB6BCAD26 EQ PUSH2 0x790 JUMPI DUP1 PUSH4 0xC475ABFF EQ PUSH2 0x7AC JUMPI DUP1 PUSH4 0xC658E086 EQ PUSH2 0x7DC JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x6352211E EQ PUSH2 0x640 JUMPI DUP1 PUSH4 0x6E5D6AD2 EQ PUSH2 0x670 JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x6A0 JUMPI DUP1 PUSH4 0x8B4DFA75 EQ PUSH2 0x6AA JUMPI DUP1 PUSH4 0x8CF8B41E EQ PUSH2 0x6C6 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6F6 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x1F4E1504 GT PUSH2 0x20B JUMPI DUP1 PUSH4 0x3F15457F GT PUSH2 0x1C4 JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x558 JUMPI DUP1 PUSH4 0x402906FC EQ PUSH2 0x576 JUMPI DUP1 PUSH4 0x41415EAB EQ PUSH2 0x5A6 JUMPI DUP1 PUSH4 0x4E1273F4 EQ PUSH2 0x5D6 JUMPI DUP1 PUSH4 0x53095467 EQ PUSH2 0x606 JUMPI DUP1 PUSH4 0x5D3590D5 EQ PUSH2 0x624 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x1F4E1504 EQ PUSH2 0x484 JUMPI DUP1 PUSH4 0x20C38E2B EQ PUSH2 0x4A2 JUMPI DUP1 PUSH4 0x24C1AF44 EQ PUSH2 0x4D2 JUMPI DUP1 PUSH4 0x2B20E397 EQ PUSH2 0x502 JUMPI DUP1 PUSH4 0x2EB2C2D6 EQ PUSH2 0x520 JUMPI DUP1 PUSH4 0x33C69EA9 EQ PUSH2 0x53C JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xE4CD725 GT PUSH2 0x25D JUMPI DUP1 PUSH4 0xE4CD725 EQ PUSH2 0x3A0 JUMPI DUP1 PUSH4 0xE89341C EQ PUSH2 0x3D0 JUMPI DUP1 PUSH4 0x14AB9038 EQ PUSH2 0x400 JUMPI DUP1 PUSH4 0x150B7A02 EQ PUSH2 0x41C JUMPI DUP1 PUSH4 0x1534E177 EQ PUSH2 0x44C JUMPI DUP1 PUSH4 0x1896F70A EQ PUSH2 0x468 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH3 0xFDD58E EQ PUSH2 0x2A4 JUMPI DUP1 PUSH4 0x178FE3F EQ PUSH2 0x2D4 JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x306 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x336 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x354 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x384 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2BE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x61F5 JUMP JUMPDEST PUSH2 0x9C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CB SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2E9 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xA86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2FD SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x62DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x320 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x31B SWAP2 SWAP1 PUSH2 0x636C JUMP JUMPDEST PUSH2 0xABA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33E PUSH2 0xB9C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34B SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x36E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x369 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xBD5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x37B SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x39E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x399 SWAP2 SWAP1 PUSH2 0x61F5 JUMP JUMPDEST PUSH2 0xC33 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B5 SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0xCA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E5 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xD5F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F7 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x415 SWAP2 SWAP1 PUSH2 0x653E JUMP JUMPDEST PUSH2 0xE09 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x436 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x431 SWAP2 SWAP1 PUSH2 0x65E3 JUMP JUMPDEST PUSH2 0xF4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x443 SWAP2 SWAP1 PUSH2 0x667A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x466 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x461 SWAP2 SWAP1 PUSH2 0x66D3 JUMP JUMPDEST PUSH2 0x11B3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x482 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x47D SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0x11FF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x48C PUSH2 0x1344 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x499 SWAP2 SWAP1 PUSH2 0x675F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4BC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B7 SWAP2 SWAP1 PUSH2 0x677A JUMP JUMPDEST PUSH2 0x136A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4C9 SWAP2 SWAP1 PUSH2 0x67FC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4EC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4E7 SWAP2 SWAP1 PUSH2 0x697A JUMP JUMPDEST PUSH2 0x140A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4F9 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x50A PUSH2 0x1602 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x517 SWAP2 SWAP1 PUSH2 0x6A83 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x53A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x535 SWAP2 SWAP1 PUSH2 0x6C02 JUMP JUMPDEST PUSH2 0x1626 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x556 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x551 SWAP2 SWAP1 PUSH2 0x6CD1 JUMP JUMPDEST PUSH2 0x18EB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x560 PUSH2 0x1BB1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x6D59 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x590 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x6DAE JUMP JUMPDEST PUSH2 0x1BD5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59D SWAP2 SWAP1 PUSH2 0x6DEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5BB SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0x1CC1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5CD SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5F0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5EB SWAP2 SWAP1 PUSH2 0x6ECC JUMP JUMPDEST PUSH2 0x1D37 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5FD SWAP2 SWAP1 PUSH2 0x7002 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x60E PUSH2 0x1E4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61B SWAP2 SWAP1 PUSH2 0x7045 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x63E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x639 SWAP2 SWAP1 PUSH2 0x7060 JUMP JUMPDEST PUSH2 0x1E70 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x65A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x655 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0x1EFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x667 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x68A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x685 SWAP2 SWAP1 PUSH2 0x70B3 JUMP JUMPDEST PUSH2 0x1F0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6A8 PUSH2 0x20A8 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x7121 JUMP JUMPDEST PUSH2 0x20BC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6DB SWAP2 SWAP1 PUSH2 0x71CA JUMP JUMPDEST PUSH2 0x2274 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6FE PUSH2 0x26A0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70B SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x72E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x729 SWAP2 SWAP1 PUSH2 0x727E JUMP JUMPDEST PUSH2 0x26C9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x74A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x745 SWAP2 SWAP1 PUSH2 0x72BE JUMP JUMPDEST PUSH2 0x2834 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x757 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x775 SWAP2 SWAP1 PUSH2 0x7358 JUMP JUMPDEST PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x787 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7A5 SWAP2 SWAP1 PUSH2 0x73D6 JUMP JUMPDEST PUSH2 0x2A1E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7C6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7C1 SWAP2 SWAP1 PUSH2 0x7403 JUMP JUMPDEST PUSH2 0x2DD8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7D3 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7F6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7F1 SWAP2 SWAP1 PUSH2 0x7443 JUMP JUMPDEST PUSH2 0x3130 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x803 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x826 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x821 SWAP2 SWAP1 PUSH2 0x74DD JUMP JUMPDEST PUSH2 0x333D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x842 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x83D SWAP2 SWAP1 PUSH2 0x755E JUMP JUMPDEST PUSH2 0x3547 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x85E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x859 SWAP2 SWAP1 PUSH2 0x75C5 JUMP JUMPDEST PUSH2 0x3779 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x87A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x875 SWAP2 SWAP1 PUSH2 0x7618 JUMP JUMPDEST PUSH2 0x38ED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x887 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8A5 SWAP2 SWAP1 PUSH2 0x7658 JUMP JUMPDEST PUSH2 0x3A1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8B7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8DA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8D5 SWAP2 SWAP1 PUSH2 0x727E JUMP JUMPDEST PUSH2 0x3A3D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x8F6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8F1 SWAP2 SWAP1 PUSH2 0x7685 JUMP JUMPDEST PUSH2 0x3AEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x903 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x926 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x921 SWAP2 SWAP1 PUSH2 0x76C5 JUMP JUMPDEST PUSH2 0x3B82 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x942 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x93D SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0x402C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x94F SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x972 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x96D SWAP2 SWAP1 PUSH2 0x7739 JUMP JUMPDEST PUSH2 0x4044 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x98E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x989 SWAP2 SWAP1 PUSH2 0x7658 JUMP JUMPDEST PUSH2 0x4146 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9A5 SWAP2 SWAP1 PUSH2 0x677A JUMP JUMPDEST PUSH2 0x41C9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9B7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA30 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA27 SWAP1 PUSH2 0x7842 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xA3B DUP4 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA7A JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0xA80 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xA94 DUP5 PUSH2 0x42C5 JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP5 POP DUP3 SWAP6 POP POP POP POP PUSH2 0xAAB DUP4 DUP4 DUP4 PUSH2 0x42FA JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP5 POP POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD82C42D800000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0xB85 JUMPI POP PUSH32 0x150B7A0200000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0xB95 JUMPI POP PUSH2 0xB94 DUP3 PUSH2 0x4342 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4E616D6557726170706572000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xBE1 DUP4 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xC21 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0xC2E JUMP JUMPDEST PUSH2 0xC2A DUP4 PUSH2 0x4424 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC3E DUP3 PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x40 PUSH4 0xFFFFFFFF AND PUSH1 0x40 DUP3 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0xC99 JUMPI DUP2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC90 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCA3 DUP4 DUP4 PUSH2 0x4461 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xCBA DUP7 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD00 JUMPI POP PUSH2 0xCFF DUP4 DUP7 PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xD41 JUMPI POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD29 DUP8 PUSH1 0x0 SHR PUSH2 0xBD5 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST DUP1 ISZERO PUSH2 0xD54 JUMPI POP PUSH2 0xD52 DUP3 DUP3 PUSH2 0x456A JUMP JUMPDEST ISZERO JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x5 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE89341C DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDBC SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDD9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE02 SWAP2 SWAP1 PUSH2 0x78D2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH2 0xE14 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0xE57 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE4E SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 PUSH1 0x10 PUSH1 0x0 PUSH2 0xE68 DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0xEB9 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEB0 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x14AB9038 DUP8 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF14 SWAP3 SWAP2 SWAP1 PUSH2 0x7944 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF2E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xF42 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xFD5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x1931A53800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP7 DUP7 DUP2 ADD SWAP1 PUSH2 0xFEA SWAP2 SWAP1 PUSH2 0x79AB JUMP JUMPDEST SWAP4 POP SWAP4 POP SWAP4 POP SWAP4 POP PUSH1 0x0 DUP9 PUSH1 0x0 SHL SWAP1 POP PUSH1 0x0 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP DUP2 DUP2 EQ PUSH2 0x104C JUMPI DUP1 DUP3 PUSH1 0x40 MLOAD PUSH32 0xC65C3CCC00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1043 SWAP3 SWAP2 SWAP1 PUSH2 0x7A2E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x28ED4F6C DUP4 PUSH1 0x0 SHR ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10AA SWAP3 SWAP2 SWAP1 PUSH2 0x7A57 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x10C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x10D8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x0 PUSH3 0x76A700 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD6E4FA86 DUP14 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x113B SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1158 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x117C SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST PUSH2 0x1186 SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP1 POP PUSH2 0x1199 DUP8 DUP8 DUP8 PUSH2 0xFFFF AND DUP5 DUP9 PUSH2 0x45AE JUMP JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL SWAP8 POP POP POP POP POP POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x11BB PUSH2 0x4732 JUMP JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST DUP2 PUSH2 0x120A DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x124D JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1244 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 PUSH1 0x8 PUSH1 0x0 PUSH2 0x125E DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x12AF JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A6 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP8 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x130A SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1324 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1338 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP DUP1 SLOAD PUSH2 0x1389 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x13B5 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1402 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13D7 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1402 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x13E5 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP8 PUSH2 0x1417 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x145A JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1451 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP9 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH2 0x1470 DUP11 DUP3 PUSH2 0x47B0 JUMP JUMPDEST SWAP3 POP PUSH2 0x147C DUP11 DUP5 PUSH2 0x47E3 JUMP JUMPDEST PUSH2 0x1486 DUP4 DUP7 PUSH2 0x49D8 JUMP JUMPDEST PUSH2 0x1491 DUP11 DUP5 DUP12 PUSH2 0x4A36 JUMP JUMPDEST POP PUSH2 0x149E DUP11 DUP5 DUP8 DUP8 PUSH2 0x4B0D JUMP JUMPDEST SWAP4 POP PUSH2 0x14A9 DUP4 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x1553 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 DUP12 DUP4 ADDRESS DUP12 DUP12 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150E SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7B8D JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1528 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x153C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x154E DUP11 DUP5 DUP12 DUP12 DUP10 DUP10 PUSH2 0x4C6B JUMP JUMPDEST PUSH2 0x15F5 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 DUP12 DUP4 ADDRESS DUP12 DUP12 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7B8D JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x15CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x15E2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x15F4 DUP11 DUP5 DUP12 DUP12 DUP10 DUP10 PUSH2 0x4D2A JUMP JUMPDEST JUMPDEST POP POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP2 MLOAD DUP4 MLOAD EQ PUSH2 0x166A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1661 SWAP1 PUSH2 0x7C52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x16D9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16D0 SWAP1 PUSH2 0x7CE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1719 JUMPI POP PUSH2 0x1718 DUP6 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x1758 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x174F SWAP1 PUSH2 0x7D76 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x1857 JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1779 JUMPI PUSH2 0x1778 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1798 JUMPI PUSH2 0x1797 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x17B0 DUP6 PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x17C1 DUP6 DUP4 DUP4 PUSH2 0x4EB3 JUMP JUMPDEST PUSH1 0x1 DUP5 EQ DUP1 ISZERO PUSH2 0x17FC JUMPI POP DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST PUSH2 0x183B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1832 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1847 DUP6 DUP12 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST POP POP POP POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x175B JUMP JUMPDEST POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x18CE SWAP3 SWAP2 SWAP1 PUSH2 0x7E57 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x18E4 CALLER DUP7 DUP7 DUP7 DUP7 DUP7 PUSH2 0x5034 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18F7 DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH2 0x1903 DUP2 DUP5 PUSH2 0x49D8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1914 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1A1A JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19C0 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x19DD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1A01 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x1A51 JUMPI PUSH1 0x40 MLOAD PUSH32 0x5374B59900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1A60 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP PUSH1 0x0 DUP1 SHL DUP11 SUB PUSH2 0x1AC1 JUMPI PUSH2 0x1A79 DUP7 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1ABC JUMPI DUP6 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AB3 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1B0F JUMP JUMPDEST PUSH2 0x1ACB DUP11 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1B0E JUMPI DUP10 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B05 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x1B1A DUP7 DUP10 DUP5 PUSH2 0x520B JUMP JUMPDEST PUSH2 0x1B25 DUP8 DUP5 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP7 POP PUSH1 0x0 PUSH3 0x10000 DUP6 AND PUSH4 0xFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x1B51 JUMPI POP DUP4 PUSH4 0xFFFFFFFF AND DUP9 DUP6 OR PUSH4 0xFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x1B93 JUMPI DUP6 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B8A SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP9 OR SWAP8 POP PUSH2 0x1BA5 DUP7 DUP7 DUP11 DUP7 DUP12 PUSH2 0x52CE JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x1BE2 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1C25 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1C1C SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x2 PUSH1 0x0 PUSH2 0x1C36 DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x1C87 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1C7E SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1C98 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x1CB1 DUP11 DUP5 DUP5 DUP13 PUSH2 0xFFFF AND OR DUP5 DUP6 PUSH2 0x52CE JUMP JUMPDEST DUP2 SWAP8 POP POP POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x1CD3 DUP7 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1D19 JUMPI POP PUSH2 0x1D18 DUP4 DUP7 PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST DUP1 ISZERO PUSH2 0x1D2C JUMPI POP PUSH2 0x1D2A DUP3 DUP3 PUSH2 0x456A JUMP JUMPDEST ISZERO JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MLOAD DUP4 MLOAD EQ PUSH2 0x1D7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D74 SWAP1 PUSH2 0x7F42 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP4 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D9A JUMPI PUSH2 0x1D99 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1DC8 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x1E3F JUMPI PUSH2 0x1E15 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1DED JUMPI PUSH2 0x1DEC PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1E08 JUMPI PUSH2 0x1E07 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x9C0 JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1E28 JUMPI PUSH2 0x1E27 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x1DCE JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0x1E78 PUSH2 0x4732 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EB3 SWAP3 SWAP2 SWAP1 PUSH2 0x7F62 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1ED2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1EF6 SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F07 DUP3 PUSH2 0x536E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1F1B DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH2 0x1F26 DUP2 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x1F5C JUMPI PUSH1 0x40 MLOAD PUSH32 0x5374B59900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1F68 DUP7 CALLER PUSH2 0xCA8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO DUP1 ISZERO PUSH2 0x1F7F JUMPI POP PUSH2 0x1F7D DUP3 CALLER PUSH2 0x1CC1 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x1FC3 JUMPI DUP2 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1FBA SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1FD4 DUP6 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP4 ISZERO DUP1 ISZERO PUSH2 0x1FF3 JUMPI POP PUSH1 0x0 PUSH3 0x40000 DUP4 AND PUSH4 0xFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x2035 JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x202C SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2043 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0x2052 DUP9 DUP4 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP8 POP PUSH2 0x2060 DUP7 DUP6 DUP6 DUP12 PUSH2 0x5387 JUMP JUMPDEST DUP6 PUSH32 0xF675815A0817338F93A7DA433F6BD5F5542F1029B11B455191AC96C7F6A9B132 DUP10 PUSH1 0x40 MLOAD PUSH2 0x2090 SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP8 SWAP7 POP POP POP POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x20B0 PUSH2 0x4732 JUMP JUMPDEST PUSH2 0x20BA PUSH1 0x0 PUSH2 0x53A6 JUMP JUMPDEST JUMP JUMPDEST PUSH2 0x20E9 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP5 PUSH2 0x47B0 JUMP JUMPDEST PUSH2 0x20F3 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x2136 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x212D SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x21A6 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x219D SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x21DC PUSH2 0x21D6 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP7 PUSH2 0x47B0 JUMP JUMPDEST DUP4 PUSH2 0x546A JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x42842E0E ADDRESS DUP6 DUP8 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x223C SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7FCD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2256 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x226A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x2287 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH1 0x0 SHR SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x22EF SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x230C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2330 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x2407 JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x23C4 SWAP3 SWAP2 SWAP1 PUSH2 0x804D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x23E1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2405 SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x247A JUMPI PUSH2 0x243C PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP4 PUSH1 0x0 SHL PUSH2 0x47B0 JUMP JUMPDEST CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2471 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x23B872DD DUP3 ADDRESS DUP6 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x24D7 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7FCD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x24F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2505 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x28ED4F6C DUP4 ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2564 SWAP3 SWAP2 SWAP1 PUSH2 0x7A57 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x257E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2592 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH3 0x76A700 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD6E4FA86 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25F3 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2610 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2634 SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST PUSH2 0x263E SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP3 POP PUSH2 0x2695 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP8 DUP8 PUSH2 0xFFFF AND DUP7 DUP9 PUSH2 0x45AE JUMP JUMPDEST POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x2737 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x272E SWAP1 PUSH2 0x80E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x2828 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x28C2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x28B9 SWAP1 PUSH2 0x817A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x28D4 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH1 0x0 SHR SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFCA247AC DUP3 ADDRESS DUP9 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x293E SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x819A JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2981 SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST SWAP2 POP PUSH2 0x29E6 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP8 DUP6 PUSH2 0xFFFF AND PUSH3 0x76A700 DUP7 PUSH2 0x29E0 SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST DUP9 PUSH2 0x45AE JUMP JUMPDEST POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2A00 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP DUP3 PUSH4 0xFFFFFFFF AND DUP4 DUP3 AND PUSH4 0xFFFFFFFF AND EQ SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2A26 PUSH2 0x4732 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2BDD JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AFA SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2B14 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2B28 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BAA SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2BC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2BD8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP1 PUSH1 0x7 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2DD5 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2CF2 SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2D0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2D20 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DA2 SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2DD0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x2E66 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5D SWAP1 PUSH2 0x817A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2E98 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP6 PUSH1 0x0 SHL PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC475ABFF DUP7 DUP7 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2EF7 SWAP3 SWAP2 SWAP1 PUSH2 0x81FA JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2F16 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F3A SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F95 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2FCF JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2FCC SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x2FDD JUMPI DUP1 SWAP3 POP POP POP PUSH2 0x312A JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 PUSH2 0x30DD JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3083 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x30A0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x30C4 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x30ED JUMPI DUP2 SWAP4 POP POP POP POP PUSH2 0x312A JUMP JUMPDEST POP PUSH1 0x0 PUSH3 0x76A700 DUP3 PUSH2 0x30FF SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x3110 DUP6 PUSH1 0x0 SHR PUSH2 0x42C5 JUMP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x3121 DUP6 DUP4 DUP4 DUP7 PUSH2 0x5387 JUMP JUMPDEST DUP4 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP7 PUSH2 0x313D DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x3180 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3177 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x3192 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 SWAP1 POP PUSH2 0x31A6 DUP10 DUP3 PUSH2 0x47B0 JUMP JUMPDEST SWAP3 POP PUSH2 0x31B2 DUP10 DUP5 PUSH2 0x47E3 JUMP JUMPDEST PUSH2 0x31BC DUP4 DUP7 PUSH2 0x49D8 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320D DUP11 DUP6 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4A36 JUMP JUMPDEST SWAP1 POP PUSH2 0x321B DUP11 DUP6 DUP9 DUP9 PUSH2 0x4B0D JUMP JUMPDEST SWAP5 POP PUSH2 0x3226 DUP5 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x32DD JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 DUP12 DUP5 ADDRESS PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3287 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8223 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x32A6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x32CA SWAP2 SWAP1 PUSH2 0x826F JUMP JUMPDEST POP PUSH2 0x32D8 DUP5 DUP3 DUP10 DUP10 DUP10 PUSH2 0x558C JUMP JUMPDEST PUSH2 0x3330 JUMP JUMPDEST PUSH2 0x332F DUP11 DUP6 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP11 DUP11 DUP11 PUSH2 0x4D2A JUMP JUMPDEST JUMPDEST POP POP POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3397 PUSH1 0x0 DUP7 DUP7 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x3421 JUMPI PUSH1 0x40 MLOAD PUSH32 0x24C1D6D400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x342B DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x346E JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3465 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x347F DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH2 0x3493 DUP6 PUSH1 0x0 SHR PUSH2 0xBD5 JUMP JUMPDEST SWAP1 POP PUSH2 0x34A1 DUP6 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9198C276 DUP11 DUP11 DUP8 DUP8 DUP8 DUP8 DUP15 DUP15 PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x350A SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x82C9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3524 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3538 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 PUSH2 0x3552 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x3595 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x358C SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x10 PUSH1 0x8 PUSH1 0x4 OR OR PUSH1 0x0 PUSH2 0x35AC DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x35FD JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x35F4 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCF408823 DUP10 ADDRESS DUP10 DUP10 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x365C SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x833C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3676 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x368A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x373D JUMPI PUSH1 0x0 PUSH2 0x36D0 DUP10 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP3 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x372C JUMPI DUP8 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3723 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3737 DUP10 PUSH1 0x0 PUSH2 0x546A JUMP JUMPDEST POP PUSH2 0x376F JUMP JUMPDEST PUSH1 0x0 PUSH2 0x374B DUP10 PUSH1 0x0 SHR PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP PUSH2 0x376D DUP2 DUP10 DUP12 PUSH1 0x0 SHR PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5781 JUMP JUMPDEST POP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x3783 DUP4 DUP4 PUSH2 0x47B0 JUMP JUMPDEST PUSH2 0x378D DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x37D0 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x37C7 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP5 SUB PUSH2 0x382C JUMPI PUSH1 0x40 MLOAD PUSH32 0x615A470300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x3892 JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x38D4 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38CB SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x38E7 PUSH2 0x38E1 DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST DUP4 PUSH2 0x546A JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x38FA DUP5 DUP5 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3907 DUP3 PUSH2 0x4B57 JUMP JUMPDEST SWAP1 POP PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP6 EQ PUSH2 0x393D JUMPI DUP1 SWAP3 POP POP POP PUSH2 0x3A17 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP6 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3999 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x39D3 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x39D0 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x39E2 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0x3A17 JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP4 POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x3A45 PUSH2 0x4732 JUMP JUMPDEST DUP1 PUSH1 0x4 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AE2 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3BDD PUSH1 0x0 DUP8 DUP8 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x58F8 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x3C3A DUP3 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3C48 DUP3 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP DUP8 DUP8 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x3C6C SWAP3 SWAP2 SWAP1 PUSH2 0x852E JUMP JUMPDEST POP PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP3 SUB PUSH2 0x3CC9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x615A470300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D24 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3D41 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3D65 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x3E3C JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3DF9 SWAP3 SWAP2 SWAP1 PUSH2 0x804D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3E16 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3E3A SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x3E80 JUMPI DUP2 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E77 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3F42 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP4 DUP9 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F0F SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3F29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3F3D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5B0FC9C3 DUP4 ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F9D SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3FB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3FCB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x4021 DUP3 DUP11 DUP11 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP10 PUSH1 0x0 DUP1 PUSH2 0x558C JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x40B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x40AA SWAP1 PUSH2 0x7CE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x40F3 JUMPI POP PUSH2 0x40F2 DUP6 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x4132 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4129 SWAP1 PUSH2 0x8670 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x413F DUP6 DUP6 DUP6 DUP6 DUP6 PUSH2 0x5781 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x414E PUSH2 0x4732 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x41BD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x41B4 SWAP1 PUSH2 0x8702 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x41C6 DUP2 PUSH2 0x53A6 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x41EA SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4216 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4263 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4238 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4263 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4246 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x427D JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x42C0 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x4294 PUSH1 0x0 DUP5 PUSH2 0x58F8 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x42AD DUP3 DUP6 PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0x42B9 DUP2 DUP5 PUSH2 0x38ED JUMP JUMPDEST SWAP5 POP POP POP POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP DUP1 SWAP4 POP PUSH1 0xC0 DUP2 SWAP1 SHR SWAP2 POP PUSH1 0xA0 DUP2 SWAP1 SHR SWAP3 POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 TIMESTAMP DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x4334 JUMPI PUSH3 0x10000 PUSH4 0xFFFFFFFF AND PUSH3 0x10000 DUP6 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x432F JUMPI PUSH1 0x0 SWAP5 POP JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP5 DUP5 SWAP2 POP SWAP2 POP SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD9B67A2600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x440D JUMPI POP PUSH32 0xE89341C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x441D JUMPI POP PUSH2 0x441C DUP3 PUSH2 0x59B6 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x446C DUP3 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x44DC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x44D3 SWAP1 PUSH2 0x8794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x451C JUMPI POP PUSH2 0x451B DUP2 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x455B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4552 SWAP1 PUSH2 0x8826 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4565 DUP4 DUP4 PUSH2 0x5A20 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ DUP1 ISZERO PUSH2 0x45A6 JUMPI POP TIMESTAMP PUSH3 0x76A700 DUP4 PUSH2 0x459A SWAP2 SWAP1 PUSH2 0x8846 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND LT JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH1 0x0 PUSH2 0x45E9 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP4 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x462C DUP9 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x365746800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x464E SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP PUSH2 0x4666 DUP3 DUP3 DUP10 PUSH3 0x20000 PUSH3 0x10000 DUP12 OR OR DUP10 PUSH2 0x558C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x4728 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP4 DUP7 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x46F5 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x470F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x4723 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x473A PUSH2 0x5B8B JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x4758 PUSH2 0x26A0 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x47AE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x47A5 SWAP1 PUSH2 0x89A0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x47C5 SWAP3 SWAP2 SWAP1 PUSH2 0x89E1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x47F4 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 TIMESTAMP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT SWAP1 POP DUP1 DUP1 ISZERO PUSH2 0x4914 JUMPI POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x4913 JUMPI POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP8 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x48BA SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x48D7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x48FB SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST JUMPDEST ISZERO PUSH2 0x497F JUMPI PUSH1 0x0 PUSH2 0x4927 DUP8 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 PUSH1 0x20 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4979 JUMPI DUP6 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4970 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x49D0 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x10000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x49CF JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x49C6 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH4 0xFFFDFFFF PUSH4 0xFFFFFFFF AND PUSH4 0xFFFDFFFF DUP3 OR PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4A32 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4A29 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x4ADF DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4A5C SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4A88 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4AD5 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4AAA JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4AD5 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4AB8 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x4B01 SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x4B1C DUP6 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP POP POP PUSH1 0x0 DUP1 PUSH2 0x4B2F DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP PUSH2 0x4B3F DUP8 DUP8 DUP5 PUSH2 0x520B JUMP JUMPDEST PUSH2 0x4B4A DUP6 DUP5 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x4B7C DUP4 PUSH1 0x0 SHR PUSH2 0x1EFC JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x4C64 JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4C0B SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4C28 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4C4C SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D12 DUP6 PUSH1 0x6 PUSH1 0x0 DUP11 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4C8F SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4CBB SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4D08 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4CDD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4D08 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4CEB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP PUSH2 0x4D21 DUP7 DUP3 DUP7 DUP7 DUP7 PUSH2 0x558C JUMP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x4D3B DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH2 0x4DE8 DUP9 PUSH1 0x6 PUSH1 0x0 DUP14 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4D65 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4D91 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4DDE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4DB3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4DDE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4DC1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4E0A SWAP1 PUSH2 0x7B5C JUMP JUMPDEST SWAP1 POP SUB PUSH2 0x4E33 JUMPI DUP1 PUSH1 0x6 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x4E31 SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP JUMPDEST PUSH2 0x4E42 DUP10 DUP6 DUP9 DUP7 OR DUP6 DUP10 PUSH2 0x52CE JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x4E86 JUMPI PUSH2 0x4E81 DUP10 PUSH1 0x0 PUSH2 0x546A JUMP JUMPDEST PUSH2 0x4EA7 JUMP JUMPDEST PUSH2 0x4EA6 DUP5 DUP9 DUP12 PUSH1 0x0 SHR PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5781 JUMP JUMPDEST JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP4 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x4EE0 JUMPI PUSH3 0x76A700 DUP2 PUSH2 0x4EDD SWAP2 SWAP1 PUSH2 0x8846 JUMP JUMPDEST SWAP1 POP JUMPDEST TIMESTAMP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x4F45 JUMPI PUSH1 0x0 PUSH3 0x10000 DUP4 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4F40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F37 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4F97 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 DUP4 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4F96 JUMPI DUP3 PUSH1 0x0 SHL PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F8D SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x4FDF JUMPI PUSH1 0x3 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xC0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHL PUSH1 0xA0 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHL DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND OR OR PUSH1 0x1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH2 0x5053 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5B93 JUMP JUMPDEST ISZERO PUSH2 0x5203 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xBC197C81 DUP8 DUP8 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5099 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8A0D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x50D5 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x50D2 SWAP2 SWAP1 PUSH2 0x8A8A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x517A JUMPI PUSH2 0x50E1 PUSH2 0x8AC4 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 SUB PUSH2 0x513D JUMPI POP PUSH2 0x50F5 PUSH2 0x8AE6 JUMP JUMPDEST DUP1 PUSH2 0x5100 JUMPI POP PUSH2 0x513F JUMP JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5134 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5171 SWAP1 PUSH2 0x8BE8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0xBC197C81 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ PUSH2 0x5201 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51F8 SWAP1 PUSH2 0x8C7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH4 0xFFFF0000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ ISZERO SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x1 DUP5 AND PUSH4 0xFFFFFFFF AND EQ SWAP1 POP DUP2 DUP1 ISZERO PUSH2 0x5239 JUMPI POP DUP1 JUMPDEST ISZERO PUSH2 0x527B JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5272 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x52A4 JUMPI DUP2 SWAP4 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x52C4 JUMPI DUP3 SWAP4 POP JUMPDEST DUP4 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x52DA DUP6 DUP6 DUP6 DUP5 PUSH2 0x5387 JUMP JUMPDEST DUP5 PUSH32 0x39873F00C80F4F94B7BD1594AEBCF650F003545B74824D57DDF4939E3FF3A34B DUP5 PUSH1 0x40 MLOAD PUSH2 0x530A SWAP2 SWAP1 PUSH2 0x6DEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x5367 JUMPI DUP5 PUSH32 0xF675815A0817338F93A7DA433F6BD5F5542F1029B11B455191AC96C7F6A9B132 DUP3 PUSH1 0x40 MLOAD PUSH2 0x535E SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x537A DUP4 PUSH2 0xA86 JUMP JUMPDEST POP POP SWAP1 POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5391 DUP5 DUP4 PUSH2 0x5BB6 JUMP JUMPDEST PUSH2 0x53A0 DUP5 PUSH1 0x0 SHR DUP5 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0x5475 DUP3 PUSH1 0x1 PUSH2 0x29F1 JUMP JUMPDEST ISZERO PUSH2 0x54B7 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x54AE SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x54C3 DUP3 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5B0FC9C3 DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x551E SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5538 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x554C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH32 0xEE2BA1195C65BCF218A83D874335C6BF9D9067B4C672F3C3BF16CF40DE7586C4 DUP3 PUSH1 0x40 MLOAD PUSH2 0x5580 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x5598 DUP6 DUP5 DUP5 DUP5 PUSH2 0x5C34 JUMP JUMPDEST DUP5 PUSH32 0x8CE7013E8ABEBC55C3890A68F5A27C67C3F7EFA64E584DE5FB22363C606FD340 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x55CE SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8C9A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x55EC DUP6 DUP6 PUSH2 0x58F8 JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP1 SHL DUP3 SUB PUSH2 0x5656 JUMPI PUSH1 0x1 DUP6 MLOAD PUSH2 0x5608 SWAP2 SWAP1 PUSH2 0x8CE6 JUMP JUMPDEST DUP5 EQ PUSH2 0x5649 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5640 SWAP1 PUSH2 0x8D66 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SHL SWAP3 POP POP POP PUSH2 0x568D JUMP JUMPDEST PUSH2 0x5660 DUP6 DUP3 PUSH2 0x55DD JUMP JUMPDEST DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x5672 SWAP3 SWAP2 SWAP1 PUSH2 0x89E1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP3 POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x56A1 DUP5 PUSH2 0x42C5 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x56B2 DUP4 DUP4 DUP4 PUSH2 0x42FA JUMP JUMPDEST SWAP1 POP DUP1 SWAP3 POP POP PUSH1 0x3 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH2 0x56FB DUP5 PUSH1 0x0 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP8 PUSH1 0x1 PUSH1 0x40 MLOAD PUSH2 0x5773 SWAP3 SWAP2 SWAP1 PUSH2 0x8DC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x578F DUP7 PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x57A0 DUP7 DUP4 DUP4 PUSH2 0x4EB3 JUMP JUMPDEST PUSH1 0x1 DUP6 EQ DUP1 ISZERO PUSH2 0x57DB JUMPI POP DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST PUSH2 0x581A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5811 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x5855 JUMPI POP POP POP PUSH2 0x58F1 JUMP JUMPDEST PUSH2 0x5861 DUP7 DUP9 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP10 DUP10 PUSH1 0x40 MLOAD PUSH2 0x58D7 SWAP3 SWAP2 SWAP1 PUSH2 0x81FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x58ED CALLER DUP10 DUP10 DUP10 DUP10 DUP10 PUSH2 0x5CDD JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 MLOAD DUP4 LT PUSH2 0x593E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5935 SWAP1 PUSH2 0x8E36 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x5953 JUMPI PUSH2 0x5952 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR PUSH1 0xFF AND SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x598D JUMPI PUSH2 0x5986 DUP6 PUSH1 0x1 DUP7 PUSH2 0x5980 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST DUP4 PUSH2 0x5EB4 JUMP JUMPDEST SWAP3 POP PUSH2 0x5994 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL SWAP3 POP JUMPDEST PUSH1 0x1 DUP2 DUP6 PUSH2 0x59A2 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST PUSH2 0x59AC SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH1 0x3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5A93 DUP4 PUSH2 0x1EFC JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP4 MLOAD LT ISZERO PUSH2 0x5B17 JUMPI PUSH1 0x40 MLOAD PUSH32 0x280DACB600000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0xFF DUP4 MLOAD GT ISZERO PUSH2 0x5B5E JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xE3BA295F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5B55 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 MLOAD DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x5B74 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8F3A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFF0000 NOT DUP3 AND PUSH4 0xFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x5BEE JUMPI POP PUSH1 0x1 PUSH3 0x10000 OR PUSH4 0xFFFFFFFF AND PUSH1 0x1 PUSH3 0x10000 OR DUP3 AND PUSH4 0xFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x5C30 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C27 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x5C3E DUP5 DUP4 PUSH2 0x5BB6 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5C4C DUP6 PUSH1 0x0 SHR PUSH2 0x42C5 JUMP JUMPDEST POP POP SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x5CCA JUMPI PUSH2 0x5C90 DUP6 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST DUP5 PUSH32 0xEE2BA1195C65BCF218A83D874335C6BF9D9067B4C672F3C3BF16CF40DE7586C4 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x5CC1 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST PUSH2 0x5CD6 DUP6 DUP6 DUP6 DUP6 PUSH2 0x5EE0 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x5CFC DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5B93 JUMP JUMPDEST ISZERO PUSH2 0x5EAC JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF23A6E61 DUP8 DUP8 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5D42 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8F6F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x5D7E JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5D7B SWAP2 SWAP1 PUSH2 0x8A8A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x5E23 JUMPI PUSH2 0x5D8A PUSH2 0x8AC4 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 SUB PUSH2 0x5DE6 JUMPI POP PUSH2 0x5D9E PUSH2 0x8AE6 JUMP JUMPDEST DUP1 PUSH2 0x5DA9 JUMPI POP PUSH2 0x5DE8 JUMP JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5DDD SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5E1A SWAP1 PUSH2 0x8BE8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0xF23A6E61 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ PUSH2 0x5EAA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5EA1 SWAP1 PUSH2 0x8C7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x5EC4 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST GT ISZERO PUSH2 0x5ECF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 SHR SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x5EF9 DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 DUP3 PUSH1 0x10 PUSH2 0xFFFF DUP1 AND PUSH4 0xFFFFFFFF AND SWAP1 SHL AND SWAP1 POP DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x5F34 JUMPI DUP2 SWAP6 POP JUMPDEST TIMESTAMP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x5F4B JUMPI DUP1 DUP8 OR SWAP7 POP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x5FBA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5FB1 SWAP1 PUSH2 0x9015 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x6029 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6020 SWAP1 PUSH2 0x90A7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x6097 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x608E SWAP1 PUSH2 0x9139 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x60A3 DUP6 DUP10 DUP10 DUP10 PUSH2 0x4FE4 JUMP JUMPDEST DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP9 PUSH1 0x1 PUSH1 0x40 MLOAD PUSH2 0x611B SWAP3 SWAP2 SWAP1 PUSH2 0x8DC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x6142 CALLER PUSH1 0x0 DUP11 DUP9 PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5CDD JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x618C DUP3 PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x619C DUP2 PUSH2 0x6181 JUMP JUMPDEST DUP2 EQ PUSH2 0x61A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x61B9 DUP2 PUSH2 0x6193 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x61D2 DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP2 EQ PUSH2 0x61DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x61EF DUP2 PUSH2 0x61C9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x620C JUMPI PUSH2 0x620B PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x621A DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x622B DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x623E DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6259 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6275 JUMPI PUSH2 0x6274 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6283 DUP5 DUP3 DUP6 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6295 DUP2 PUSH2 0x6181 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x62B4 DUP2 PUSH2 0x629B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x62D7 DUP2 PUSH2 0x62BA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x62F2 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x62FF PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x630C PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6349 DUP2 PUSH2 0x6314 JUMP JUMPDEST DUP2 EQ PUSH2 0x6354 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6366 DUP2 PUSH2 0x6340 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6382 JUMPI PUSH2 0x6381 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6390 DUP5 DUP3 DUP6 ADD PUSH2 0x6357 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x63AE DUP2 PUSH2 0x6399 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x63C9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x63A5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6409 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x63EE JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6431 DUP3 PUSH2 0x63CF JUMP JUMPDEST PUSH2 0x643B DUP2 DUP6 PUSH2 0x63DA JUMP JUMPDEST SWAP4 POP PUSH2 0x644B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST PUSH2 0x6454 DUP2 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6479 DUP2 DUP5 PUSH2 0x6426 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6496 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x64AF DUP2 PUSH2 0x649C JUMP JUMPDEST DUP2 EQ PUSH2 0x64BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x64CC DUP2 PUSH2 0x64A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x64E9 JUMPI PUSH2 0x64E8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x64F7 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6508 DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x651B DUP2 PUSH2 0x62BA JUMP JUMPDEST DUP2 EQ PUSH2 0x6526 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6538 DUP2 PUSH2 0x6512 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6555 JUMPI PUSH2 0x6554 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6563 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6574 DUP6 DUP3 DUP7 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x65A3 JUMPI PUSH2 0x65A2 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x65C0 JUMPI PUSH2 0x65BF PUSH2 0x6583 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x65DC JUMPI PUSH2 0x65DB PUSH2 0x6588 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x65FF JUMPI PUSH2 0x65FE PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x660D DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x661E DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x662F DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6650 JUMPI PUSH2 0x664F PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x665C DUP9 DUP3 DUP10 ADD PUSH2 0x658D JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x6674 DUP2 PUSH2 0x6314 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x668F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x666B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x66A0 DUP3 PUSH2 0x6181 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x66B0 DUP2 PUSH2 0x6695 JUMP JUMPDEST DUP2 EQ PUSH2 0x66BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x66CD DUP2 PUSH2 0x66A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x66E9 JUMPI PUSH2 0x66E8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x66F7 DUP5 DUP3 DUP6 ADD PUSH2 0x66BE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6725 PUSH2 0x6720 PUSH2 0x671B DUP5 PUSH2 0x6161 JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6737 DUP3 PUSH2 0x670A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6749 DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6759 DUP2 PUSH2 0x673E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6774 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6750 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6790 JUMPI PUSH2 0x678F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x679E DUP5 DUP3 DUP6 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x67CE DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH2 0x67D8 DUP2 DUP6 PUSH2 0x67B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x67E8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST PUSH2 0x67F1 DUP2 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6816 DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x685B DUP3 PUSH2 0x6415 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x687A JUMPI PUSH2 0x6879 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x688D PUSH2 0x614D JUMP JUMPDEST SWAP1 POP PUSH2 0x6899 DUP3 DUP3 PUSH2 0x6852 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x68B9 JUMPI PUSH2 0x68B8 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x68C2 DUP3 PUSH2 0x6415 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x68F1 PUSH2 0x68EC DUP5 PUSH2 0x689E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x690D JUMPI PUSH2 0x690C PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x6918 DUP5 DUP3 DUP6 PUSH2 0x68CF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6935 JUMPI PUSH2 0x6934 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6945 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x68DE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6957 DUP2 PUSH2 0x629B JUMP JUMPDEST DUP2 EQ PUSH2 0x6962 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6974 DUP2 PUSH2 0x694E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xE0 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x6999 JUMPI PUSH2 0x6998 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x69A7 DUP11 DUP3 DUP12 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP8 POP POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x69C8 JUMPI PUSH2 0x69C7 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x69D4 DUP11 DUP3 DUP12 ADD PUSH2 0x6920 JUMP JUMPDEST SWAP7 POP POP PUSH1 0x40 PUSH2 0x69E5 DUP11 DUP3 DUP12 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x60 PUSH2 0x69F6 DUP11 DUP3 DUP12 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x80 PUSH2 0x6A07 DUP11 DUP3 DUP12 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP4 POP POP PUSH1 0xA0 PUSH2 0x6A18 DUP11 DUP3 DUP12 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0xC0 PUSH2 0x6A29 DUP11 DUP3 DUP12 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP9 SWAP2 SWAP5 SWAP8 POP SWAP3 SWAP6 POP JUMP JUMPDEST PUSH2 0x6A41 DUP2 PUSH2 0x649C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A5C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6A38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6A6D DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6A7D DUP2 PUSH2 0x6A62 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A98 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6A74 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6AB9 JUMPI PUSH2 0x6AB8 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6ADD PUSH2 0x6AD8 DUP5 PUSH2 0x6A9E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6B00 JUMPI PUSH2 0x6AFF PUSH2 0x6588 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x6B29 JUMPI DUP1 PUSH2 0x6B15 DUP9 DUP3 PUSH2 0x61E0 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6B02 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6B48 JUMPI PUSH2 0x6B47 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6B58 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6ACA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6B7C JUMPI PUSH2 0x6B7B PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x6B85 DUP3 PUSH2 0x6415 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6BA5 PUSH2 0x6BA0 DUP5 PUSH2 0x6B61 JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x6BC1 JUMPI PUSH2 0x6BC0 PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x6BCC DUP5 DUP3 DUP6 PUSH2 0x68CF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6BE9 JUMPI PUSH2 0x6BE8 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6BF9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6B92 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x6C1E JUMPI PUSH2 0x6C1D PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6C2C DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x6C3D DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6C5E JUMPI PUSH2 0x6C5D PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6C6A DUP9 DUP3 DUP10 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6C8B JUMPI PUSH2 0x6C8A PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6C97 DUP9 DUP3 DUP10 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6CB8 JUMPI PUSH2 0x6CB7 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6CC4 DUP9 DUP3 DUP10 ADD PUSH2 0x6BD4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x6CEB JUMPI PUSH2 0x6CEA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6CF9 DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x6D0A DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x6D1B DUP8 DUP3 DUP9 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x6D2C DUP8 DUP3 DUP9 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D43 DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6D53 DUP2 PUSH2 0x6D38 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6D6E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6D4A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6D8B DUP2 PUSH2 0x6D74 JUMP JUMPDEST DUP2 EQ PUSH2 0x6D96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6DA8 DUP2 PUSH2 0x6D82 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6DC5 JUMPI PUSH2 0x6DC4 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6DD3 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6DE4 DUP6 DUP3 DUP7 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6E03 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x62AB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6E24 JUMPI PUSH2 0x6E23 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6E48 PUSH2 0x6E43 DUP5 PUSH2 0x6E09 JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6E6B JUMPI PUSH2 0x6E6A PUSH2 0x6588 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x6E94 JUMPI DUP1 PUSH2 0x6E80 DUP9 DUP3 PUSH2 0x61AA JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6E6D JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6EB3 JUMPI PUSH2 0x6EB2 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6EC3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6E35 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6EE3 JUMPI PUSH2 0x6EE2 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6F01 JUMPI PUSH2 0x6F00 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6F0D DUP6 DUP3 DUP7 ADD PUSH2 0x6E9E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6F2E JUMPI PUSH2 0x6F2D PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6F3A DUP6 DUP3 DUP7 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6F79 DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F8B DUP4 DUP4 PUSH2 0x6F70 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6FAF DUP3 PUSH2 0x6F44 JUMP JUMPDEST PUSH2 0x6FB9 DUP2 DUP6 PUSH2 0x6F4F JUMP JUMPDEST SWAP4 POP PUSH2 0x6FC4 DUP4 PUSH2 0x6F60 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6FF5 JUMPI DUP2 MLOAD PUSH2 0x6FDC DUP9 DUP3 PUSH2 0x6F7F JUMP JUMPDEST SWAP8 POP PUSH2 0x6FE7 DUP4 PUSH2 0x6F97 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x6FC8 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x701C DUP2 DUP5 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x702F DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x703F DUP2 PUSH2 0x7024 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x705A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x7036 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x7079 JUMPI PUSH2 0x7078 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7087 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x7098 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x70A9 DUP7 DUP3 DUP8 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x70CC JUMPI PUSH2 0x70CB PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x70DA DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x70EB DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x70FC DUP7 DUP3 DUP8 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x711B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x713A JUMPI PUSH2 0x7139 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7148 DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x7159 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x716A DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x718A JUMPI PUSH2 0x7189 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x71A7 JUMPI PUSH2 0x71A6 PUSH2 0x6583 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x71C3 JUMPI PUSH2 0x71C2 PUSH2 0x6588 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x71E6 JUMPI PUSH2 0x71E5 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7204 JUMPI PUSH2 0x7203 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7210 DUP9 DUP3 DUP10 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP6 POP SWAP6 POP POP PUSH1 0x20 PUSH2 0x7223 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x7234 DUP9 DUP3 DUP10 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x7245 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x725B DUP2 PUSH2 0x6399 JUMP JUMPDEST DUP2 EQ PUSH2 0x7266 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x7278 DUP2 PUSH2 0x7252 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x7295 JUMPI PUSH2 0x7294 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x72A3 DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x72B4 DUP6 DUP3 DUP7 ADD PUSH2 0x7269 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x72DB JUMPI PUSH2 0x72DA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x72F9 JUMPI PUSH2 0x72F8 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7305 DUP10 DUP3 DUP11 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP7 POP SWAP7 POP POP PUSH1 0x20 PUSH2 0x7318 DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x7329 DUP10 DUP3 DUP11 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x733A DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x734B DUP10 DUP3 DUP11 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x736F JUMPI PUSH2 0x736E PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x737D DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x738E DUP6 DUP3 DUP7 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x73A3 DUP3 PUSH2 0x6181 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x73B3 DUP2 PUSH2 0x7398 JUMP JUMPDEST DUP2 EQ PUSH2 0x73BE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x73D0 DUP2 PUSH2 0x73AA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x73EC JUMPI PUSH2 0x73EB PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x73FA DUP5 DUP3 DUP6 ADD PUSH2 0x73C1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x741A JUMPI PUSH2 0x7419 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7428 DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x7439 DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x7460 JUMPI PUSH2 0x745F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x746E DUP10 DUP3 DUP11 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP7 POP POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x748F JUMPI PUSH2 0x748E PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x749B DUP10 DUP3 DUP11 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP6 POP SWAP6 POP POP PUSH1 0x40 PUSH2 0x74AE DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x74BF DUP10 DUP3 DUP11 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x74D0 DUP10 DUP3 DUP11 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x74F7 JUMPI PUSH2 0x74F6 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7515 JUMPI PUSH2 0x7514 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7521 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7544 JUMPI PUSH2 0x7543 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7550 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x7578 JUMPI PUSH2 0x7577 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7586 DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x7597 DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x75A8 DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x75B9 DUP8 DUP3 DUP9 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x75DE JUMPI PUSH2 0x75DD PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x75EC DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x75FD DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x760E DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x762F JUMPI PUSH2 0x762E PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x763D DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x764E DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x766E JUMPI PUSH2 0x766D PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x767C DUP5 DUP3 DUP6 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x769C JUMPI PUSH2 0x769B PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x76AA DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x76BB DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x76DF JUMPI PUSH2 0x76DE PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x76FD JUMPI PUSH2 0x76FC PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7709 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 PUSH2 0x771C DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x772D DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x7755 JUMPI PUSH2 0x7754 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7763 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x7774 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x7785 DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x7796 DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x77B7 JUMPI PUSH2 0x77B6 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x77C3 DUP9 DUP3 DUP10 ADD PUSH2 0x6BD4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x455243313135353A2062616C616E636520717565727920666F7220746865207A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65726F2061646472657373000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x782C PUSH1 0x2B DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7837 DUP3 PUSH2 0x77D0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x785B DUP2 PUSH2 0x781F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7875 PUSH2 0x7870 DUP5 PUSH2 0x689E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x7891 JUMPI PUSH2 0x7890 PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x789C DUP5 DUP3 DUP6 PUSH2 0x63EB JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x78B9 JUMPI PUSH2 0x78B8 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x78C9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7862 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x78E8 JUMPI PUSH2 0x78E7 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7906 JUMPI PUSH2 0x7905 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7912 DUP5 DUP3 DUP6 ADD PUSH2 0x78A4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7930 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x793D PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7959 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7966 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7978 DUP3 PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7988 DUP2 PUSH2 0x796D JUMP JUMPDEST DUP2 EQ PUSH2 0x7993 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x79A5 DUP2 PUSH2 0x797F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x79C5 JUMPI PUSH2 0x79C4 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79E3 JUMPI PUSH2 0x79E2 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x79EF DUP8 DUP3 DUP9 ADD PUSH2 0x6920 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x7A00 DUP8 DUP3 DUP9 ADD PUSH2 0x7996 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x7A11 DUP8 DUP3 DUP9 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x7A22 DUP8 DUP3 DUP9 ADD PUSH2 0x7996 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7A43 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7A50 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6A38 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7A6C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x7A79 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7A8F DUP2 PUSH2 0x61C9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7AAB JUMPI PUSH2 0x7AAA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7AB9 DUP5 DUP3 DUP6 ADD PUSH2 0x7A80 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x7AFC DUP3 PUSH2 0x62BA JUMP JUMPDEST SWAP2 POP PUSH2 0x7B07 DUP4 PUSH2 0x62BA JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7B27 JUMPI PUSH2 0x7B26 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x7B74 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x7B87 JUMPI PUSH2 0x7B86 PUSH2 0x7B2D JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x7BA2 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7BAF PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7BBC PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7BC9 PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7BD6 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2069647320616E6420616D6F756E7473206C656E67746820 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6D69736D61746368000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C3C PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7C47 DUP3 PUSH2 0x7BE0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7C6B DUP2 PUSH2 0x7C2F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A207472616E7366657220746F20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7CCE PUSH1 0x25 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7CD9 DUP3 PUSH2 0x7C72 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7CFD DUP2 PUSH2 0x7CC1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A207472616E736665722063616C6C6572206973206E6F7420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572206E6F7220617070726F7665640000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7D60 PUSH1 0x32 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7D6B DUP3 PUSH2 0x7D04 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7D8F DUP2 PUSH2 0x7D53 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x455243313135353A20696E73756666696369656E742062616C616E636520666F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72207472616E7366657200000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7E21 PUSH1 0x2A DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7E2C DUP3 PUSH2 0x7DC5 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E50 DUP2 PUSH2 0x7E14 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E71 DUP2 DUP6 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x7E85 DUP2 DUP5 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7E9D DUP2 PUSH2 0x6193 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7EB9 JUMPI PUSH2 0x7EB8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7EC7 DUP5 DUP3 DUP6 ADD PUSH2 0x7E8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x455243313135353A206163636F756E747320616E6420696473206C656E677468 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206D69736D617463680000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7F2C PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7F37 DUP3 PUSH2 0x7ED0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7F5B DUP2 PUSH2 0x7F1F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7F77 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7F84 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7F9A DUP2 PUSH2 0x7252 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7FB6 JUMPI PUSH2 0x7FB5 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7FC4 DUP5 DUP3 DUP6 ADD PUSH2 0x7F8B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x7FE2 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7FEF PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7FFC PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x801B DUP4 DUP6 PUSH2 0x8004 JUMP JUMPDEST SWAP4 POP PUSH2 0x8028 DUP4 DUP6 DUP5 PUSH2 0x68CF JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8041 DUP3 DUP5 DUP7 PUSH2 0x800F JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8062 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x806F PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2073657474696E6720617070726F76616C20737461747573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20666F722073656C660000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x80D2 PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x80DD DUP3 PUSH2 0x8076 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8101 DUP2 PUSH2 0x80C5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x436F6E74726F6C6C61626C653A2043616C6C6572206973206E6F74206120636F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E74726F6C6C6572000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8164 PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x816F DUP3 PUSH2 0x8108 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8193 DUP2 PUSH2 0x8157 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x81AF PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x81BC PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x81C9 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x81E6 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x81F3 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x63A5 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x820F PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x821C PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x8238 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x8245 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x8252 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x8269 DUP2 PUSH2 0x64A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x8285 JUMPI PUSH2 0x8284 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8293 DUP5 DUP3 DUP6 ADD PUSH2 0x825A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x82A8 DUP4 DUP6 PUSH2 0x67B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x82B5 DUP4 DUP6 DUP5 PUSH2 0x68CF JUMP JUMPDEST PUSH2 0x82BE DUP4 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x82E4 DUP2 DUP11 DUP13 PUSH2 0x829C JUMP JUMPDEST SWAP1 POP PUSH2 0x82F3 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8300 PUSH1 0x40 DUP4 ADD DUP9 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x830D PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x62CE JUMP JUMPDEST PUSH2 0x831A PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x832D DUP2 DUP5 DUP7 PUSH2 0x829C JUMP JUMPDEST SWAP1 POP SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x8351 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x835E PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x836B PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8378 PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x83EE PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x83B1 JUMP JUMPDEST PUSH2 0x83F8 DUP7 DUP4 PUSH2 0x83B1 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x842B PUSH2 0x8426 PUSH2 0x8421 DUP5 PUSH2 0x61BF JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x61BF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8445 DUP4 PUSH2 0x8410 JUMP JUMPDEST PUSH2 0x8459 PUSH2 0x8451 DUP3 PUSH2 0x8432 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x83BE JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x846E PUSH2 0x8461 JUMP JUMPDEST PUSH2 0x8479 DUP2 DUP5 DUP5 PUSH2 0x843C JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x849D JUMPI PUSH2 0x8492 PUSH1 0x0 DUP3 PUSH2 0x8466 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x847F JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x84E2 JUMPI PUSH2 0x84B3 DUP2 PUSH2 0x838C JUMP JUMPDEST PUSH2 0x84BC DUP5 PUSH2 0x83A1 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x84CB JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x84DF PUSH2 0x84D7 DUP6 PUSH2 0x83A1 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x847E JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8505 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x84E7 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x851E DUP4 DUP4 PUSH2 0x84F4 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x8538 DUP4 DUP4 PUSH2 0x8381 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8551 JUMPI PUSH2 0x8550 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x855B DUP3 SLOAD PUSH2 0x7B5C JUMP JUMPDEST PUSH2 0x8566 DUP3 DUP3 DUP6 PUSH2 0x84A1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x8595 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x8583 JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x858D DUP6 DUP3 PUSH2 0x8512 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x85F5 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x85A3 DUP7 PUSH2 0x838C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x85CB JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x85A6 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x85E8 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x85E4 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x84F4 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2063616C6C6572206973206E6F74206F776E6572206E6F72 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20617070726F7665640000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x865A PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8665 DUP3 PUSH2 0x85FE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8689 DUP2 PUSH2 0x864D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x86EC PUSH1 0x26 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x86F7 DUP3 PUSH2 0x8690 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x871B DUP2 PUSH2 0x86DF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x877E PUSH1 0x21 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8789 DUP3 PUSH2 0x8722 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x87AD DUP2 PUSH2 0x8771 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8810 PUSH1 0x3D DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x881B DUP3 PUSH2 0x87B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x883F DUP2 PUSH2 0x8803 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8851 DUP3 PUSH2 0x62BA JUMP JUMPDEST SWAP2 POP PUSH2 0x885C DUP4 PUSH2 0x62BA JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x887C JUMPI PUSH2 0x887B PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x888B DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x88A4 JUMPI PUSH2 0x88A3 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x88AE DUP3 SLOAD PUSH2 0x7B5C JUMP JUMPDEST PUSH2 0x88B9 DUP3 DUP3 DUP6 PUSH2 0x84A1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x88EC JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x88DA JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x88E4 DUP6 DUP3 PUSH2 0x8512 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x894C JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x88FA DUP7 PUSH2 0x838C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x8922 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x88FD JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x893F JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x893B PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x84F4 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x898A PUSH1 0x20 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8995 DUP3 PUSH2 0x8954 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x89B9 DUP2 PUSH2 0x897D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x89DB PUSH2 0x89D6 DUP3 PUSH2 0x649C JUMP JUMPDEST PUSH2 0x89C0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x89ED DUP3 DUP6 PUSH2 0x89CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x89FD DUP3 DUP5 PUSH2 0x89CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x8A22 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8A2F PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x628C JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x8A41 DUP2 DUP7 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x8A55 DUP2 DUP6 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x8A69 DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x8A84 DUP2 PUSH2 0x6340 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x8AA0 JUMPI PUSH2 0x8A9F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8AAE DUP5 DUP3 DUP6 ADD PUSH2 0x8A75 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xE0 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 RETURNDATASIZE GT ISZERO PUSH2 0x8AE3 JUMPI PUSH1 0x4 PUSH1 0x0 DUP1 RETURNDATACOPY PUSH2 0x8AE0 PUSH1 0x0 MLOAD PUSH2 0x8AB7 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x44 RETURNDATASIZE LT PUSH2 0x8B73 JUMPI PUSH2 0x8AF8 PUSH2 0x614D JUMP JUMPDEST PUSH1 0x4 RETURNDATASIZE SUB PUSH1 0x4 DUP3 RETURNDATACOPY DUP1 MLOAD RETURNDATASIZE PUSH1 0x24 DUP3 ADD GT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x8B20 JUMPI POP POP PUSH2 0x8B73 JUMP JUMPDEST DUP1 DUP3 ADD DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8B3E JUMPI POP POP POP POP PUSH2 0x8B73 JUMP JUMPDEST DUP1 PUSH1 0x20 DUP4 ADD ADD PUSH1 0x4 RETURNDATASIZE SUB DUP6 ADD DUP2 GT ISZERO PUSH2 0x8B5B JUMPI POP POP POP POP POP PUSH2 0x8B73 JUMP JUMPDEST PUSH2 0x8B6A DUP3 PUSH1 0x20 ADD DUP6 ADD DUP7 PUSH2 0x6852 JUMP JUMPDEST DUP3 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x455243313135353A207472616E7366657220746F206E6F6E2045524331313535 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x526563656976657220696D706C656D656E746572000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8BD2 PUSH1 0x34 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8BDD DUP3 PUSH2 0x8B76 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8C01 DUP2 PUSH2 0x8BC5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A204552433131353552656365697665722072656A65637465 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6420746F6B656E73000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8C64 PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8C6F DUP3 PUSH2 0x8C08 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8C93 DUP2 PUSH2 0x8C57 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8CB4 DUP2 DUP8 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP PUSH2 0x8CC3 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8CD0 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x8CDD PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8CF1 DUP3 PUSH2 0x61BF JUMP JUMPDEST SWAP2 POP PUSH2 0x8CFC DUP4 PUSH2 0x61BF JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x8D14 JUMPI PUSH2 0x8D13 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x6E616D65686173683A204A756E6B20617420656E64206F66206E616D65000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8D50 PUSH1 0x1D DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8D5B DUP3 PUSH2 0x8D1A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8D7F DUP2 PUSH2 0x8D43 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8DAB PUSH2 0x8DA6 PUSH2 0x8DA1 DUP5 PUSH2 0x8D86 JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x61BF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8DBB DUP2 PUSH2 0x8D90 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8DD6 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x8DE3 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x8DB2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x726561644C6162656C3A20496E646578206F7574206F6620626F756E64730000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E20 PUSH1 0x1E DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8E2B DUP3 PUSH2 0x8DEA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8E4F DUP2 PUSH2 0x8E13 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E61 DUP3 PUSH2 0x61BF JUMP JUMPDEST SWAP2 POP PUSH2 0x8E6C DUP4 PUSH2 0x61BF JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x8E84 JUMPI PUSH2 0x8E83 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF8 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8EAF DUP3 PUSH2 0x8E97 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8EC7 PUSH2 0x8EC2 DUP3 PUSH2 0x8E8A JUMP JUMPDEST PUSH2 0x8EA4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8EE3 DUP3 PUSH2 0x63CF JUMP JUMPDEST PUSH2 0x8EED DUP2 DUP6 PUSH2 0x8ECD JUMP JUMPDEST SWAP4 POP PUSH2 0x8EFD DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F14 DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH2 0x8F1E DUP2 DUP6 PUSH2 0x8004 JUMP JUMPDEST SWAP4 POP PUSH2 0x8F2E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F46 DUP3 DUP7 PUSH2 0x8EB6 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH2 0x8F56 DUP3 DUP6 PUSH2 0x8ED8 JUMP JUMPDEST SWAP2 POP PUSH2 0x8F62 DUP3 DUP5 PUSH2 0x8F09 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x8F84 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8F91 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8F9E PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x8FAB PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x8FBD DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A206D696E74206F66206578697374696E6720746F6B656E00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8FFF PUSH1 0x1F DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x900A DUP3 PUSH2 0x8FC9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x902E DUP2 PUSH2 0x8FF2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A206D696E7420746F20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9091 PUSH1 0x21 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x909C DUP3 PUSH2 0x9035 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x90C0 DUP2 PUSH2 0x9084 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A206E65774F776E65722063616E6E6F742062652074686520 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x4E616D655772617070657220636F6E7472616374000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9123 PUSH1 0x34 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x912E DUP3 PUSH2 0x90C7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x9152 DUP2 PUSH2 0x9116 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH13 0xCA2714AD798EBCCB9D77630AE6 0x21 0xBC INVALID 0x24 0xD8 PUSH21 0xCCCD2E65AAEFD2678512999464736F6C6343000819 STOP CALLER ", + "sourceMap": "1613:36881:48:-:0;;;2535:775;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2664:4;2670:10;936:32:50;955:12;:10;;;:12;;:::i;:::-;936:18;;;:32;;:::i;:::-;381:34:38;449:3;:9;;;259:66;459:17;;449:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;381:106;;497:16;:22;;;520:8;497:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;371:165;332:204;;2698:4:48::1;2692:10;;;;;;;;::::0;::::1;2724;2712:22;;;;;;;;::::0;::::1;2762:16;2744:15;;:34;;;;;;;;;;;;;;;;;;2904:156;2116:66;2934:8;;2926:17;;2965:1;295::46;643:7;2988:37:48;2512:16;2904:8;;;:156;;:::i;:::-;3070:157;2354:66;3100:9:::0;::::1;3092:18;;3132:1;295::46;643:7;3155:37:48;2512:16;3070:8;;;:157;;:::i;:::-;3237:25;;;;;;;;;;;;;;;;::::0;:5:::1;:16;2354:66:::0;3243:9:::1;;3237:16;;;;;;;;;;;:25;;;;;;:::i;:::-;;3272:31;;;;;;;;;;;;;;;;::::0;:5:::1;:15;2116:66;3278:8;;3272:15;;;;;;;;;;;:31;;;;;;:::i;:::-;;2535:775:::0;;;1613:36881;;655:96:60;708:7;734:10;727:17;;655:96;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;7125:282:44:-;7396:3;7385:6;7377:15;;:22;;7357:3;7347:5;7339:14;;:21;;7316:5;7300:23;;:61;:100;7269:7;:16;7277:7;7269:16;;;;;;;;;;;:131;;;;7125:282;;;;:::o;88:117:74:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:108::-;617:7;646:24;664:5;646:24;:::i;:::-;635:35;;568:108;;;:::o;682:146::-;767:36;797:5;767:36;:::i;:::-;760:5;757:47;747:75;;818:1;815;808:12;747:75;682:146;:::o;834:167::-;903:5;934:6;928:13;919:22;;950:45;989:5;950:45;:::i;:::-;834:167;;;;:::o;1007:119::-;1067:7;1096:24;1114:5;1096:24;:::i;:::-;1085:35;;1007:119;;;:::o;1132:168::-;1228:47;1269:5;1228:47;:::i;:::-;1221:5;1218:58;1208:86;;1290:1;1287;1280:12;1208:86;1132:168;:::o;1306:189::-;1386:5;1417:6;1411:13;1402:22;;1433:56;1483:5;1433:56;:::i;:::-;1306:189;;;;:::o;1501:121::-;1563:7;1592:24;1610:5;1592:24;:::i;:::-;1581:35;;1501:121;;;:::o;1628:172::-;1726:49;1769:5;1726:49;:::i;:::-;1719:5;1716:60;1706:88;;1790:1;1787;1780:12;1706:88;1628:172;:::o;1806:193::-;1888:5;1919:6;1913:13;1904:22;;1935:58;1987:5;1935:58;:::i;:::-;1806:193;;;;:::o;2005:783::-;2153:6;2161;2169;2218:2;2206:9;2197:7;2193:23;2189:32;2186:119;;;2224:79;;:::i;:::-;2186:119;2344:1;2369:76;2437:7;2428:6;2417:9;2413:22;2369:76;:::i;:::-;2359:86;;2315:140;2494:2;2520:87;2599:7;2590:6;2579:9;2575:22;2520:87;:::i;:::-;2510:97;;2465:152;2656:2;2682:89;2763:7;2754:6;2743:9;2739:22;2682:89;:::i;:::-;2672:99;;2627:154;2005:783;;;;;:::o;2794:77::-;2831:7;2860:5;2849:16;;2794:77;;;:::o;2877:118::-;2964:24;2982:5;2964:24;:::i;:::-;2959:3;2952:37;2877:118;;:::o;3001:222::-;3094:4;3132:2;3121:9;3117:18;3109:26;;3145:71;3213:1;3202:9;3198:17;3189:6;3145:71;:::i;:::-;3001:222;;;;:::o;3229:122::-;3302:24;3320:5;3302:24;:::i;:::-;3295:5;3292:35;3282:63;;3341:1;3338;3331:12;3282:63;3229:122;:::o;3357:143::-;3414:5;3445:6;3439:13;3430:22;;3461:33;3488:5;3461:33;:::i;:::-;3357:143;;;;:::o;3506:351::-;3576:6;3625:2;3613:9;3604:7;3600:23;3596:32;3593:119;;;3631:79;;:::i;:::-;3593:119;3751:1;3776:64;3832:7;3823:6;3812:9;3808:22;3776:64;:::i;:::-;3766:74;;3722:128;3506:351;;;;:::o;3863:118::-;3950:24;3968:5;3950:24;:::i;:::-;3945:3;3938:37;3863:118;;:::o;3987:222::-;4080:4;4118:2;4107:9;4103:18;4095:26;;4131:71;4199:1;4188:9;4184:17;4175:6;4131:71;:::i;:::-;3987:222;;;;:::o;4215:122::-;4288:24;4306:5;4288:24;:::i;:::-;4281:5;4278:35;4268:63;;4327:1;4324;4317:12;4268:63;4215:122;:::o;4343:143::-;4400:5;4431:6;4425:13;4416:22;;4447:33;4474:5;4447:33;:::i;:::-;4343:143;;;;:::o;4492:351::-;4562:6;4611:2;4599:9;4590:7;4586:23;4582:32;4579:119;;;4617:79;;:::i;:::-;4579:119;4737:1;4762:64;4818:7;4809:6;4798:9;4794:22;4762:64;:::i;:::-;4752:74;;4708:128;4492:351;;;;:::o;4849:99::-;4901:6;4935:5;4929:12;4919:22;;4849:99;;;:::o;4954:180::-;5002:77;4999:1;4992:88;5099:4;5096:1;5089:15;5123:4;5120:1;5113:15;5140:180;5188:77;5185:1;5178:88;5285:4;5282:1;5275:15;5309:4;5306:1;5299:15;5326:320;5370:6;5407:1;5401:4;5397:12;5387:22;;5454:1;5448:4;5444:12;5475:18;5465:81;;5531:4;5523:6;5519:17;5509:27;;5465:81;5593:2;5585:6;5582:14;5562:18;5559:38;5556:84;;5612:18;;:::i;:::-;5556:84;5377:269;5326:320;;;:::o;5652:140::-;5700:4;5723:3;5715:11;;5746:3;5743:1;5736:14;5780:4;5777:1;5767:18;5759:26;;5652:140;;;:::o;5798:93::-;5835:6;5882:2;5877;5870:5;5866:14;5862:23;5852:33;;5798:93;;;:::o;5897:107::-;5941:8;5991:5;5985:4;5981:16;5960:37;;5897:107;;;;:::o;6010:393::-;6079:6;6129:1;6117:10;6113:18;6152:97;6182:66;6171:9;6152:97;:::i;:::-;6270:39;6300:8;6289:9;6270:39;:::i;:::-;6258:51;;6342:4;6338:9;6331:5;6327:21;6318:30;;6391:4;6381:8;6377:19;6370:5;6367:30;6357:40;;6086:317;;6010:393;;;;;:::o;6409:77::-;6446:7;6475:5;6464:16;;6409:77;;;:::o;6492:60::-;6520:3;6541:5;6534:12;;6492:60;;;:::o;6558:142::-;6608:9;6641:53;6659:34;6668:24;6686:5;6668:24;:::i;:::-;6659:34;:::i;:::-;6641:53;:::i;:::-;6628:66;;6558:142;;;:::o;6706:75::-;6749:3;6770:5;6763:12;;6706:75;;;:::o;6787:269::-;6897:39;6928:7;6897:39;:::i;:::-;6958:91;7007:41;7031:16;7007:41;:::i;:::-;6999:6;6992:4;6986:11;6958:91;:::i;:::-;6952:4;6945:105;6863:193;6787:269;;;:::o;7062:73::-;7107:3;7062:73;:::o;7141:189::-;7218:32;;:::i;:::-;7259:65;7317:6;7309;7303:4;7259:65;:::i;:::-;7194:136;7141:189;;:::o;7336:186::-;7396:120;7413:3;7406:5;7403:14;7396:120;;;7467:39;7504:1;7497:5;7467:39;:::i;:::-;7440:1;7433:5;7429:13;7420:22;;7396:120;;;7336:186;;:::o;7528:541::-;7628:2;7623:3;7620:11;7617:445;;;7662:37;7693:5;7662:37;:::i;:::-;7745:29;7763:10;7745:29;:::i;:::-;7735:8;7731:44;7928:2;7916:10;7913:18;7910:49;;;7949:8;7934:23;;7910:49;7972:80;8028:22;8046:3;8028:22;:::i;:::-;8018:8;8014:37;8001:11;7972:80;:::i;:::-;7632:430;;7617:445;7528:541;;;:::o;8075:117::-;8129:8;8179:5;8173:4;8169:16;8148:37;;8075:117;;;;:::o;8198:169::-;8242:6;8275:51;8323:1;8319:6;8311:5;8308:1;8304:13;8275:51;:::i;:::-;8271:56;8356:4;8350;8346:15;8336:25;;8249:118;8198:169;;;;:::o;8372:295::-;8448:4;8594:29;8619:3;8613:4;8594:29;:::i;:::-;8586:37;;8656:3;8653:1;8649:11;8643:4;8640:21;8632:29;;8372:295;;;;:::o;8672:1392::-;8788:37;8821:3;8788:37;:::i;:::-;8890:18;8882:6;8879:30;8876:56;;;8912:18;;:::i;:::-;8876:56;8956:38;8988:4;8982:11;8956:38;:::i;:::-;9041:66;9100:6;9092;9086:4;9041:66;:::i;:::-;9134:1;9158:4;9145:17;;9190:2;9182:6;9179:14;9207:1;9202:617;;;;9863:1;9880:6;9877:77;;;9929:9;9924:3;9920:19;9914:26;9905:35;;9877:77;9980:67;10040:6;10033:5;9980:67;:::i;:::-;9974:4;9967:81;9836:222;9172:886;;9202:617;9254:4;9250:9;9242:6;9238:22;9288:36;9319:4;9288:36;:::i;:::-;9346:1;9360:208;9374:7;9371:1;9368:14;9360:208;;;9453:9;9448:3;9444:19;9438:26;9430:6;9423:42;9504:1;9496:6;9492:14;9482:24;;9551:2;9540:9;9536:18;9523:31;;9397:4;9394:1;9390:12;9385:17;;9360:208;;;9596:6;9587:7;9584:19;9581:179;;;9654:9;9649:3;9645:19;9639:26;9697:48;9739:4;9731:6;9727:17;9716:9;9697:48;:::i;:::-;9689:6;9682:64;9604:156;9581:179;9806:1;9802;9794:6;9790:14;9786:22;9780:4;9773:36;9209:610;;;9172:886;;8763:1301;;;8672:1392;;:::o;1613:36881:48:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_addLabel_12398": { + "entryPoint": 23257, + "id": 12398, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_approve_9679": { + "entryPoint": 23072, + "id": 9679, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_beforeTransfer_12288": { + "entryPoint": 20147, + "id": 12288, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_burn_9451": { + "entryPoint": 22163, + "id": 9451, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_canFusesBeBurned_12956": { + "entryPoint": 23478, + "id": 12956, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_checkCanCallSetSubnodeOwner_11984": { + "entryPoint": 18403, + "id": 11984, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_checkFusesAreSettable_12975": { + "entryPoint": 18904, + "id": 12975, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_checkOwner_13109": { + "entryPoint": 18226, + "id": 13109, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_checkParentFusesAndExpiry_12685": { + "entryPoint": 19213, + "id": 12685, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@_checkParentFuses_12720": { + "entryPoint": 21003, + "id": 12720, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_clearOwnerAndFuses_12331": { + "entryPoint": 17146, + "id": 12331, + "parameterSlots": 3, + "returnSlots": 2 + }, + "@_doSafeBatchTransferAcceptanceCheck_9656": { + "entryPoint": 20532, + "id": 9656, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_doSafeTransferAcceptanceCheck_9589": { + "entryPoint": 23773, + "id": 9589, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_isETH2LDInGracePeriod_13028": { + "entryPoint": 17770, + "id": 13028, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_isWrapped_13005": { + "entryPoint": 19287, + "id": 13005, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_makeNode_12349": { + "entryPoint": 18352, + "id": 12349, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_mint_12458": { + "entryPoint": 23604, + "id": 12458, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_mint_9398": { + "entryPoint": 24288, + "id": 9398, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 23435, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_normaliseExpiry_12752": { + "entryPoint": 21122, + "id": 12752, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@_saveLabel_12549": { + "entryPoint": 18998, + "id": 12549, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@_setData_12924": { + "entryPoint": 21383, + "id": 12924, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_setData_9245": { + "entryPoint": 20452, + "id": 9245, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_setFuses_12895": { + "entryPoint": 21198, + "id": 12895, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@_storeNameAndWrap_12520": { + "entryPoint": 19563, + "id": 12520, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_tokens_8716": { + "entryPoint": 16428, + "id": 8716, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_transferOwnership_13166": { + "entryPoint": 21414, + "id": 13166, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_transfer_9524": { + "entryPoint": 22401, + "id": 9524, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@_unwrap_12859": { + "entryPoint": 21610, + "id": 12859, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_updateName_12639": { + "entryPoint": 19754, + "id": 12639, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_wrapETH2LD_12822": { + "entryPoint": 17838, + "id": 12822, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@_wrap_12487": { + "entryPoint": 21900, + "id": 12487, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@allFusesBurned_12010": { + "entryPoint": 10737, + "id": 12010, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@approve_10418": { + "entryPoint": 3123, + "id": 10418, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@approve_8783": { + "entryPoint": 17505, + "id": 8783, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@balanceOfBatch_8928": { + "entryPoint": 7479, + "id": 8928, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@balanceOf_8864": { + "entryPoint": 2496, + "id": 8864, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@canExtendSubnames_10671": { + "entryPoint": 3240, + "id": 10671, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@canModifyName_10622": { + "entryPoint": 7361, + "id": 10622, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@controllers_8647": { + "entryPoint": 14877, + "id": 8647, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@ens_10183": { + "entryPoint": 7089, + "id": 10183, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@extendExpiry_11289": { + "entryPoint": 7950, + "id": 11289, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@getApproved_10379": { + "entryPoint": 3029, + "id": 10379, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@getApproved_8796": { + "entryPoint": 17444, + "id": 8796, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@getData_10454": { + "entryPoint": 2694, + "id": 10454, + "parameterSlots": 1, + "returnSlots": 3 + }, + "@getData_9027": { + "entryPoint": 17093, + "id": 9027, + "parameterSlots": 1, + "returnSlots": 3 + }, + "@isApprovedForAll_8980": { + "entryPoint": 15086, + "id": 8980, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isContract_14529": { + "entryPoint": 23443, + "id": 14529, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isWrapped_12054": { + "entryPoint": 16841, + "id": 12054, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isWrapped_12109": { + "entryPoint": 14573, + "id": 12109, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@keccak_7703": { + "entryPoint": 24244, + "id": 7703, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@metadataService_10189": { + "entryPoint": 7754, + "id": 10189, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@name_10196": { + "entryPoint": 2972, + "id": 10196, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@namehash_7757": { + "entryPoint": 21981, + "id": 7757, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@names_10193": { + "entryPoint": 4970, + "id": 10193, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@onERC721Received_12222": { + "entryPoint": 3918, + "id": 12222, + "parameterSlots": 5, + "returnSlots": 1 + }, + "@ownerOf_10343": { + "entryPoint": 7932, + "id": 10343, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@ownerOf_8742": { + "entryPoint": 21358, + "id": 8742, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@owner_13095": { + "entryPoint": 9888, + "id": 13095, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@readLabel_7821": { + "entryPoint": 22776, + "id": 7821, + "parameterSlots": 2, + "returnSlots": 2 + }, + "@recoverFunds_8637": { + "entryPoint": 7792, + "id": 8637, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@registerAndWrapETH2LD_10828": { + "entryPoint": 10292, + "id": 10828, + "parameterSlots": 6, + "returnSlots": 1 + }, + "@registrar_10186": { + "entryPoint": 5634, + "id": 10186, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@renew_10923": { + "entryPoint": 11736, + "id": 10923, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@renounceOwnership_13123": { + "entryPoint": 8360, + "id": 13123, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@safeBatchTransferFrom_9204": { + "entryPoint": 5670, + "id": 9204, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@safeTransferFrom_9075": { + "entryPoint": 16452, + "id": 9075, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@setApprovalForAll_8962": { + "entryPoint": 9929, + "id": 8962, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setChildFuses_11520": { + "entryPoint": 6379, + "id": 11520, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setController_8674": { + "entryPoint": 14909, + "id": 8674, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setFuses_11177": { + "entryPoint": 7125, + "id": 11177, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@setMetadataService_10468": { + "entryPoint": 4531, + "id": 10468, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@setRecord_11827": { + "entryPoint": 13639, + "id": 11827, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setResolver_11850": { + "entryPoint": 4607, + "id": 11850, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setSubnodeOwner_11618": { + "entryPoint": 12592, + "id": 11618, + "parameterSlots": 6, + "returnSlots": 1 + }, + "@setSubnodeRecord_11734": { + "entryPoint": 5130, + "id": 11734, + "parameterSlots": 7, + "returnSlots": 1 + }, + "@setTTL_11873": { + "entryPoint": 3593, + "id": 11873, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@setUpgradeContract_10561": { + "entryPoint": 10782, + "id": 10561, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@supportsInterface_10326": { + "entryPoint": 2746, + "id": 10326, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_15123": { + "entryPoint": 22966, + "id": 15123, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_8827": { + "entryPoint": 17218, + "id": 8827, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@transferOwnership_13146": { + "entryPoint": 16710, + "id": 13146, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@unwrapETH2LD_11082": { + "entryPoint": 8380, + "id": 11082, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@unwrap_11134": { + "entryPoint": 14201, + "id": 11134, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@upgradeContract_10211": { + "entryPoint": 4932, + "id": 10211, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@upgrade_11373": { + "entryPoint": 13117, + "id": 11373, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@uri_10485": { + "entryPoint": 3423, + "id": 10485, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@wrapETH2LD_10772": { + "entryPoint": 8820, + "id": 10772, + "parameterSlots": 5, + "returnSlots": 1 + }, + "@wrap_11031": { + "entryPoint": 15234, + "id": 11031, + "parameterSlots": 4, + "returnSlots": 0 + }, + "abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 28213, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 27338, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 27538, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr": { + "entryPoint": 26846, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr_fromMemory": { + "entryPoint": 30818, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 25002, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 32398, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_payable": { + "entryPoint": 31126, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 28318, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 27443, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 29289, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool_fromMemory": { + "entryPoint": 32651, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32": { + "entryPoint": 25789, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 33370, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 25431, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4_fromMemory": { + "entryPoint": 35445, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_calldata_ptr": { + "entryPoint": 25997, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 27604, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_IMetadataService_$9690": { + "entryPoint": 26302, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_INameWrapperUpgrade_$10082": { + "entryPoint": 29633, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_calldata_ptr": { + "entryPoint": 29044, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_string_memory_ptr": { + "entryPoint": 26912, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr_fromMemory": { + "entryPoint": 30884, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint16": { + "entryPoint": 28057, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 25056, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256_fromMemory": { + "entryPoint": 31360, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint32": { + "entryPoint": 26981, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint64": { + "entryPoint": 25897, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 30296, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 32419, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 30341, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_addresst_array$_t_uint256_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptrt_bytes_memory_ptr": { + "entryPoint": 27650, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 28768, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_calldata_ptr": { + "entryPoint": 26083, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_addresst_uint256t_uint256t_bytes_memory_ptr": { + "entryPoint": 30521, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 29310, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 25077, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_array$_t_address_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 28364, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 32672, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 26490, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32_fromMemory": { + "entryPoint": 33391, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_address": { + "entryPoint": 25810, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_addresst_address": { + "entryPoint": 28961, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_addresst_addresst_uint64": { + "entryPoint": 30046, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes32t_bytes32": { + "entryPoint": 30232, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_address": { + "entryPoint": 30149, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_uint32t_uint64": { + "entryPoint": 27857, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes32t_bytes32t_uint64": { + "entryPoint": 28851, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_addresst_uint32t_uint64": { + "entryPoint": 29763, + "id": null, + "parameterSlots": 2, + "returnSlots": 6 + }, + "abi_decode_tuple_t_bytes32t_string_memory_ptrt_addresst_addresst_uint64t_uint32t_uint64": { + "entryPoint": 27002, + "id": null, + "parameterSlots": 2, + "returnSlots": 7 + }, + "abi_decode_tuple_t_bytes32t_uint16": { + "entryPoint": 28078, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_uint32": { + "entryPoint": 29528, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes32t_uint64": { + "entryPoint": 25918, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 25452, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4_fromMemory": { + "entryPoint": 35466, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_calldata_ptrt_addresst_address": { + "entryPoint": 30405, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 29917, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_contract$_IMetadataService_$9690": { + "entryPoint": 26323, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_INameWrapperUpgrade_$10082": { + "entryPoint": 29654, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_string_calldata_ptrt_addresst_uint16t_address": { + "entryPoint": 29130, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_string_calldata_ptrt_addresst_uint256t_addresst_uint16": { + "entryPoint": 29374, + "id": null, + "parameterSlots": 2, + "returnSlots": 6 + }, + "abi_decode_tuple_t_string_memory_ptr_fromMemory": { + "entryPoint": 30930, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_string_memory_ptrt_address_payablet_uint16t_address_payable": { + "entryPoint": 31147, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 25183, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256_fromMemory": { + "entryPoint": 31381, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256t_uint256": { + "entryPoint": 29699, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encodeUpdatedPos_t_uint256_to_t_uint256": { + "entryPoint": 28543, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 25228, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { + "entryPoint": 28580, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 25509, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 27192, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { + "entryPoint": 35274, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes4_to_t_bytes4_fromStack": { + "entryPoint": 26219, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 33436, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 32783, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 26563, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 36617, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack": { + "entryPoint": 27978, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_IBaseRegistrar_$4430_to_t_address_fromStack": { + "entryPoint": 27252, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_IMetadataService_$9690_to_t_address_fromStack": { + "entryPoint": 28726, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_INameWrapperUpgrade_$10082_to_t_address_fromStack": { + "entryPoint": 26448, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_rational_1_by_1_to_t_uint256_fromStack": { + "entryPoint": 36274, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 25638, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 36568, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed_to_t_string_memory_ptr_fromStack": { + "entryPoint": 35781, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503_to_t_string_memory_ptr_fromStack": { + "entryPoint": 35927, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac_to_t_string_memory_ptr_fromStack": { + "entryPoint": 36850, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9_to_t_string_memory_ptr_fromStack": { + "entryPoint": 30751, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34527, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34381, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b_to_t_string_memory_ptr_fromStack": { + "entryPoint": 33111, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b_to_t_string_memory_ptr_fromStack": { + "entryPoint": 37142, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d_to_t_string_memory_ptr_fromStack": { + "entryPoint": 31937, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686_to_t_string_memory_ptr_fromStack": { + "entryPoint": 32083, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535_to_t_string_memory_ptr_fromStack": { + "entryPoint": 36371, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf_to_t_string_memory_ptr_fromStack": { + "entryPoint": 32276, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142_to_t_string_memory_ptr_fromStack": { + "entryPoint": 36163, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack": { + "entryPoint": 35197, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34673, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34819, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack": { + "entryPoint": 32965, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5_to_t_string_memory_ptr_fromStack": { + "entryPoint": 32543, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807_to_t_string_memory_ptr_fromStack": { + "entryPoint": 31791, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2_to_t_string_memory_ptr_fromStack": { + "entryPoint": 36996, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256": { + "entryPoint": 28528, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 25141, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint32_to_t_uint32_fromStack": { + "entryPoint": 25259, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint64_to_t_uint64_fromStack": { + "entryPoint": 25294, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack": { + "entryPoint": 36534, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 35297, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 32820, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__to_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 36666, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 25729, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed": { + "entryPoint": 32845, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 35341, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_uint256__to_t_address_t_address_t_uint256__fromStack_reversed": { + "entryPoint": 32717, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 36719, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_bool__to_t_address_t_bool__fromStack_reversed": { + "entryPoint": 33233, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed": { + "entryPoint": 32610, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_uint32_t_uint64__to_t_address_t_uint32_t_uint64__fromStack_reversed": { + "entryPoint": 25309, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 28674, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 32343, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 25524, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 27207, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed": { + "entryPoint": 31003, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed": { + "entryPoint": 33596, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed": { + "entryPoint": 31278, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed": { + "entryPoint": 33315, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed": { + "entryPoint": 31629, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed": { + "entryPoint": 31044, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed": { + "entryPoint": 26234, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_calldata_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 33481, + "id": null, + "parameterSlots": 9, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 26620, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__fromStack_reversed": { + "entryPoint": 35994, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed": { + "entryPoint": 27993, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IBaseRegistrar_$4430__to_t_address__fromStack_reversed": { + "entryPoint": 27267, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IMetadataService_$9690__to_t_address__fromStack_reversed": { + "entryPoint": 28741, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_INameWrapperUpgrade_$10082__to_t_address__fromStack_reversed": { + "entryPoint": 26463, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 25695, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 35816, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 35962, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 36885, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 30786, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34562, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34416, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 33146, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 37177, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 31972, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 32118, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 36406, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 32311, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 36198, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 35232, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34708, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34854, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 33000, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 32578, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 31826, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 37031, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 25156, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed": { + "entryPoint": 31319, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_address_t_uint256__to_t_uint256_t_address_t_uint256__fromStack_reversed": { + "entryPoint": 33178, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_rational_1_by_1__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 36289, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 33274, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed": { + "entryPoint": 28142, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed": { + "entryPoint": 28934, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 26755, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 24909, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 28169, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 27294, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 27489, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 26782, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 28512, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_storage": { + "entryPoint": 33676, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 28484, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_calldata_ptr": { + "entryPoint": 33665, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 26535, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 25551, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 28567, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { + "entryPoint": 28495, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 26546, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 32772, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 25562, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 36557, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 36438, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint64": { + "entryPoint": 31473, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 36070, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint64": { + "entryPoint": 34886, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_bytes_storage": { + "entryPoint": 33953, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_address": { + "entryPoint": 24961, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_address_payable": { + "entryPoint": 31085, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 25497, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 25756, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 25364, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_IMetadataService_$9690": { + "entryPoint": 26261, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_INameWrapperUpgrade_$10082": { + "entryPoint": 29592, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_rational_1_by_1": { + "entryPoint": 36230, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint16": { + "entryPoint": 28020, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 24929, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 25023, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint32": { + "entryPoint": 25243, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint64": { + "entryPoint": 25274, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint8": { + "entryPoint": 36490, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 33918, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_contract$_ENS_$4567_to_t_address": { + "entryPoint": 27960, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_IBaseRegistrar_$4430_to_t_address": { + "entryPoint": 27234, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_IMetadataService_$9690_to_t_address": { + "entryPoint": 28708, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_INameWrapperUpgrade_$10082_to_t_address": { + "entryPoint": 26430, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_rational_1_by_1_to_t_uint256": { + "entryPoint": 36240, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_address": { + "entryPoint": 26412, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_uint160": { + "entryPoint": 26378, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 33808, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage": { + "entryPoint": 34094, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage": { + "entryPoint": 34946, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 26831, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 25579, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 33697, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 31580, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 34066, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 26706, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 26368, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_bytes32": { + "entryPoint": 35264, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_uint8": { + "entryPoint": 36516, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 34036, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 31426, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 31533, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 32150, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 26659, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 33842, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "return_data_selector": { + "entryPoint": 35524, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { + "entryPoint": 25987, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 25982, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 25992, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 26654, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 24924, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 24919, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 25621, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_248": { + "entryPoint": 36503, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 33713, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_224_unsigned": { + "entryPoint": 35511, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 34023, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 33894, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "store_literal_in_memory_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed": { + "entryPoint": 35702, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503": { + "entryPoint": 35848, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac": { + "entryPoint": 36809, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9": { + "entryPoint": 30672, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe": { + "entryPoint": 34448, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a": { + "entryPoint": 34302, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b": { + "entryPoint": 33032, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b": { + "entryPoint": 37063, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d": { + "entryPoint": 31858, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686": { + "entryPoint": 32004, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535": { + "entryPoint": 36330, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf": { + "entryPoint": 32197, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142": { + "entryPoint": 36122, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe": { + "entryPoint": 35156, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942": { + "entryPoint": 34594, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83": { + "entryPoint": 34740, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2": { + "entryPoint": 32886, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5": { + "entryPoint": 32464, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807": { + "entryPoint": 31712, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2": { + "entryPoint": 36917, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "try_decode_error_message": { + "entryPoint": 35558, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 33726, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 33852, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 24979, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address_payable": { + "entryPoint": 31103, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 29266, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 25766, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 25408, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_IMetadataService_$9690": { + "entryPoint": 26279, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_INameWrapperUpgrade_$10082": { + "entryPoint": 29610, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint16": { + "entryPoint": 28034, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 25033, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint32": { + "entryPoint": 26958, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint64": { + "entryPoint": 25874, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 33889, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:91196:74", + "nodeType": "YulBlock", + "src": "0:91196:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "611:79:74", + "nodeType": "YulBlock", + "src": "611:79:74", + "statements": [ + { + "body": { + "nativeSrc": "668:16:74", + "nodeType": "YulBlock", + "src": "668:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "677:1:74", + "nodeType": "YulLiteral", + "src": "677:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "680:1:74", + "nodeType": "YulLiteral", + "src": "680:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "670:6:74", + "nodeType": "YulIdentifier", + "src": "670:6:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulFunctionCall", + "src": "670:12:74" + }, + "nativeSrc": "670:12:74", + "nodeType": "YulExpressionStatement", + "src": "670:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "634:5:74", + "nodeType": "YulIdentifier", + "src": "634:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "659:5:74", + "nodeType": "YulIdentifier", + "src": "659:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "641:17:74", + "nodeType": "YulIdentifier", + "src": "641:17:74" + }, + "nativeSrc": "641:24:74", + "nodeType": "YulFunctionCall", + "src": "641:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "631:2:74", + "nodeType": "YulIdentifier", + "src": "631:2:74" + }, + "nativeSrc": "631:35:74", + "nodeType": "YulFunctionCall", + "src": "631:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "624:6:74", + "nodeType": "YulIdentifier", + "src": "624:6:74" + }, + "nativeSrc": "624:43:74", + "nodeType": "YulFunctionCall", + "src": "624:43:74" + }, + "nativeSrc": "621:63:74", + "nodeType": "YulIf", + "src": "621:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "568:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "604:5:74", + "nodeType": "YulTypedName", + "src": "604:5:74", + "type": "" + } + ], + "src": "568:122:74" + }, + { + "body": { + "nativeSrc": "748:87:74", + "nodeType": "YulBlock", + "src": "748:87:74", + "statements": [ + { + "nativeSrc": "758:29:74", + "nodeType": "YulAssignment", + "src": "758:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "780:6:74", + "nodeType": "YulIdentifier", + "src": "780:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "767:12:74", + "nodeType": "YulIdentifier", + "src": "767:12:74" + }, + "nativeSrc": "767:20:74", + "nodeType": "YulFunctionCall", + "src": "767:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "758:5:74", + "nodeType": "YulIdentifier", + "src": "758:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "823:5:74", + "nodeType": "YulIdentifier", + "src": "823:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "796:26:74", + "nodeType": "YulIdentifier", + "src": "796:26:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulFunctionCall", + "src": "796:33:74" + }, + "nativeSrc": "796:33:74", + "nodeType": "YulExpressionStatement", + "src": "796:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "696:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "726:6:74", + "nodeType": "YulTypedName", + "src": "726:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "734:3:74", + "nodeType": "YulTypedName", + "src": "734:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "742:5:74", + "nodeType": "YulTypedName", + "src": "742:5:74", + "type": "" + } + ], + "src": "696:139:74" + }, + { + "body": { + "nativeSrc": "886:32:74", + "nodeType": "YulBlock", + "src": "886:32:74", + "statements": [ + { + "nativeSrc": "896:16:74", + "nodeType": "YulAssignment", + "src": "896:16:74", + "value": { + "name": "value", + "nativeSrc": "907:5:74", + "nodeType": "YulIdentifier", + "src": "907:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "896:7:74", + "nodeType": "YulIdentifier", + "src": "896:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "841:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "868:5:74", + "nodeType": "YulTypedName", + "src": "868:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "878:7:74", + "nodeType": "YulTypedName", + "src": "878:7:74", + "type": "" + } + ], + "src": "841:77:74" + }, + { + "body": { + "nativeSrc": "967:79:74", + "nodeType": "YulBlock", + "src": "967:79:74", + "statements": [ + { + "body": { + "nativeSrc": "1024:16:74", + "nodeType": "YulBlock", + "src": "1024:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1033:1:74", + "nodeType": "YulLiteral", + "src": "1033:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1036:1:74", + "nodeType": "YulLiteral", + "src": "1036:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1026:6:74", + "nodeType": "YulIdentifier", + "src": "1026:6:74" + }, + "nativeSrc": "1026:12:74", + "nodeType": "YulFunctionCall", + "src": "1026:12:74" + }, + "nativeSrc": "1026:12:74", + "nodeType": "YulExpressionStatement", + "src": "1026:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "990:5:74", + "nodeType": "YulIdentifier", + "src": "990:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1015:5:74", + "nodeType": "YulIdentifier", + "src": "1015:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "997:17:74", + "nodeType": "YulIdentifier", + "src": "997:17:74" + }, + "nativeSrc": "997:24:74", + "nodeType": "YulFunctionCall", + "src": "997:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "987:2:74", + "nodeType": "YulIdentifier", + "src": "987:2:74" + }, + "nativeSrc": "987:35:74", + "nodeType": "YulFunctionCall", + "src": "987:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "980:6:74", + "nodeType": "YulIdentifier", + "src": "980:6:74" + }, + "nativeSrc": "980:43:74", + "nodeType": "YulFunctionCall", + "src": "980:43:74" + }, + "nativeSrc": "977:63:74", + "nodeType": "YulIf", + "src": "977:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "924:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "960:5:74", + "nodeType": "YulTypedName", + "src": "960:5:74", + "type": "" + } + ], + "src": "924:122:74" + }, + { + "body": { + "nativeSrc": "1104:87:74", + "nodeType": "YulBlock", + "src": "1104:87:74", + "statements": [ + { + "nativeSrc": "1114:29:74", + "nodeType": "YulAssignment", + "src": "1114:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1136:6:74", + "nodeType": "YulIdentifier", + "src": "1136:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1123:12:74", + "nodeType": "YulIdentifier", + "src": "1123:12:74" + }, + "nativeSrc": "1123:20:74", + "nodeType": "YulFunctionCall", + "src": "1123:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1114:5:74", + "nodeType": "YulIdentifier", + "src": "1114:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1179:5:74", + "nodeType": "YulIdentifier", + "src": "1179:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "1152:26:74", + "nodeType": "YulIdentifier", + "src": "1152:26:74" + }, + "nativeSrc": "1152:33:74", + "nodeType": "YulFunctionCall", + "src": "1152:33:74" + }, + "nativeSrc": "1152:33:74", + "nodeType": "YulExpressionStatement", + "src": "1152:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "1052:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1082:6:74", + "nodeType": "YulTypedName", + "src": "1082:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1090:3:74", + "nodeType": "YulTypedName", + "src": "1090:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1098:5:74", + "nodeType": "YulTypedName", + "src": "1098:5:74", + "type": "" + } + ], + "src": "1052:139:74" + }, + { + "body": { + "nativeSrc": "1280:391:74", + "nodeType": "YulBlock", + "src": "1280:391:74", + "statements": [ + { + "body": { + "nativeSrc": "1326:83:74", + "nodeType": "YulBlock", + "src": "1326:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1328:77:74", + "nodeType": "YulIdentifier", + "src": "1328:77:74" + }, + "nativeSrc": "1328:79:74", + "nodeType": "YulFunctionCall", + "src": "1328:79:74" + }, + "nativeSrc": "1328:79:74", + "nodeType": "YulExpressionStatement", + "src": "1328:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1301:7:74", + "nodeType": "YulIdentifier", + "src": "1301:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1310:9:74", + "nodeType": "YulIdentifier", + "src": "1310:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1297:3:74", + "nodeType": "YulIdentifier", + "src": "1297:3:74" + }, + "nativeSrc": "1297:23:74", + "nodeType": "YulFunctionCall", + "src": "1297:23:74" + }, + { + "kind": "number", + "nativeSrc": "1322:2:74", + "nodeType": "YulLiteral", + "src": "1322:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1293:3:74", + "nodeType": "YulIdentifier", + "src": "1293:3:74" + }, + "nativeSrc": "1293:32:74", + "nodeType": "YulFunctionCall", + "src": "1293:32:74" + }, + "nativeSrc": "1290:119:74", + "nodeType": "YulIf", + "src": "1290:119:74" + }, + { + "nativeSrc": "1419:117:74", + "nodeType": "YulBlock", + "src": "1419:117:74", + "statements": [ + { + "nativeSrc": "1434:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1434:15:74", + "value": { + "kind": "number", + "nativeSrc": "1448:1:74", + "nodeType": "YulLiteral", + "src": "1448:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1438:6:74", + "nodeType": "YulTypedName", + "src": "1438:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1463:63:74", + "nodeType": "YulAssignment", + "src": "1463:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1498:9:74", + "nodeType": "YulIdentifier", + "src": "1498:9:74" + }, + { + "name": "offset", + "nativeSrc": "1509:6:74", + "nodeType": "YulIdentifier", + "src": "1509:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1494:3:74", + "nodeType": "YulIdentifier", + "src": "1494:3:74" + }, + "nativeSrc": "1494:22:74", + "nodeType": "YulFunctionCall", + "src": "1494:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1518:7:74", + "nodeType": "YulIdentifier", + "src": "1518:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "1473:20:74", + "nodeType": "YulIdentifier", + "src": "1473:20:74" + }, + "nativeSrc": "1473:53:74", + "nodeType": "YulFunctionCall", + "src": "1473:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1463:6:74", + "nodeType": "YulIdentifier", + "src": "1463:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1546:118:74", + "nodeType": "YulBlock", + "src": "1546:118:74", + "statements": [ + { + "nativeSrc": "1561:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1561:16:74", + "value": { + "kind": "number", + "nativeSrc": "1575:2:74", + "nodeType": "YulLiteral", + "src": "1575:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1565:6:74", + "nodeType": "YulTypedName", + "src": "1565:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1591:63:74", + "nodeType": "YulAssignment", + "src": "1591:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1626:9:74", + "nodeType": "YulIdentifier", + "src": "1626:9:74" + }, + { + "name": "offset", + "nativeSrc": "1637:6:74", + "nodeType": "YulIdentifier", + "src": "1637:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1622:3:74", + "nodeType": "YulIdentifier", + "src": "1622:3:74" + }, + "nativeSrc": "1622:22:74", + "nodeType": "YulFunctionCall", + "src": "1622:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1646:7:74", + "nodeType": "YulIdentifier", + "src": "1646:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "1601:20:74", + "nodeType": "YulIdentifier", + "src": "1601:20:74" + }, + "nativeSrc": "1601:53:74", + "nodeType": "YulFunctionCall", + "src": "1601:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1591:6:74", + "nodeType": "YulIdentifier", + "src": "1591:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nativeSrc": "1197:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1242:9:74", + "nodeType": "YulTypedName", + "src": "1242:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1253:7:74", + "nodeType": "YulTypedName", + "src": "1253:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1265:6:74", + "nodeType": "YulTypedName", + "src": "1265:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1273:6:74", + "nodeType": "YulTypedName", + "src": "1273:6:74", + "type": "" + } + ], + "src": "1197:474:74" + }, + { + "body": { + "nativeSrc": "1742:53:74", + "nodeType": "YulBlock", + "src": "1742:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1759:3:74", + "nodeType": "YulIdentifier", + "src": "1759:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1782:5:74", + "nodeType": "YulIdentifier", + "src": "1782:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "1764:17:74", + "nodeType": "YulIdentifier", + "src": "1764:17:74" + }, + "nativeSrc": "1764:24:74", + "nodeType": "YulFunctionCall", + "src": "1764:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1752:6:74", + "nodeType": "YulIdentifier", + "src": "1752:6:74" + }, + "nativeSrc": "1752:37:74", + "nodeType": "YulFunctionCall", + "src": "1752:37:74" + }, + "nativeSrc": "1752:37:74", + "nodeType": "YulExpressionStatement", + "src": "1752:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "1677:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1730:5:74", + "nodeType": "YulTypedName", + "src": "1730:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1737:3:74", + "nodeType": "YulTypedName", + "src": "1737:3:74", + "type": "" + } + ], + "src": "1677:118:74" + }, + { + "body": { + "nativeSrc": "1899:124:74", + "nodeType": "YulBlock", + "src": "1899:124:74", + "statements": [ + { + "nativeSrc": "1909:26:74", + "nodeType": "YulAssignment", + "src": "1909:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1921:9:74", + "nodeType": "YulIdentifier", + "src": "1921:9:74" + }, + { + "kind": "number", + "nativeSrc": "1932:2:74", + "nodeType": "YulLiteral", + "src": "1932:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1917:3:74", + "nodeType": "YulIdentifier", + "src": "1917:3:74" + }, + "nativeSrc": "1917:18:74", + "nodeType": "YulFunctionCall", + "src": "1917:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1909:4:74", + "nodeType": "YulIdentifier", + "src": "1909:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1989:6:74", + "nodeType": "YulIdentifier", + "src": "1989:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2002:9:74", + "nodeType": "YulIdentifier", + "src": "2002:9:74" + }, + { + "kind": "number", + "nativeSrc": "2013:1:74", + "nodeType": "YulLiteral", + "src": "2013:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1998:3:74", + "nodeType": "YulIdentifier", + "src": "1998:3:74" + }, + "nativeSrc": "1998:17:74", + "nodeType": "YulFunctionCall", + "src": "1998:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "1945:43:74", + "nodeType": "YulIdentifier", + "src": "1945:43:74" + }, + "nativeSrc": "1945:71:74", + "nodeType": "YulFunctionCall", + "src": "1945:71:74" + }, + "nativeSrc": "1945:71:74", + "nodeType": "YulExpressionStatement", + "src": "1945:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "1801:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1871:9:74", + "nodeType": "YulTypedName", + "src": "1871:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1883:6:74", + "nodeType": "YulTypedName", + "src": "1883:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1894:4:74", + "nodeType": "YulTypedName", + "src": "1894:4:74", + "type": "" + } + ], + "src": "1801:222:74" + }, + { + "body": { + "nativeSrc": "2095:263:74", + "nodeType": "YulBlock", + "src": "2095:263:74", + "statements": [ + { + "body": { + "nativeSrc": "2141:83:74", + "nodeType": "YulBlock", + "src": "2141:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2143:77:74", + "nodeType": "YulIdentifier", + "src": "2143:77:74" + }, + "nativeSrc": "2143:79:74", + "nodeType": "YulFunctionCall", + "src": "2143:79:74" + }, + "nativeSrc": "2143:79:74", + "nodeType": "YulExpressionStatement", + "src": "2143:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2116:7:74", + "nodeType": "YulIdentifier", + "src": "2116:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2125:9:74", + "nodeType": "YulIdentifier", + "src": "2125:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2112:3:74", + "nodeType": "YulIdentifier", + "src": "2112:3:74" + }, + "nativeSrc": "2112:23:74", + "nodeType": "YulFunctionCall", + "src": "2112:23:74" + }, + { + "kind": "number", + "nativeSrc": "2137:2:74", + "nodeType": "YulLiteral", + "src": "2137:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2108:3:74", + "nodeType": "YulIdentifier", + "src": "2108:3:74" + }, + "nativeSrc": "2108:32:74", + "nodeType": "YulFunctionCall", + "src": "2108:32:74" + }, + "nativeSrc": "2105:119:74", + "nodeType": "YulIf", + "src": "2105:119:74" + }, + { + "nativeSrc": "2234:117:74", + "nodeType": "YulBlock", + "src": "2234:117:74", + "statements": [ + { + "nativeSrc": "2249:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2249:15:74", + "value": { + "kind": "number", + "nativeSrc": "2263:1:74", + "nodeType": "YulLiteral", + "src": "2263:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2253:6:74", + "nodeType": "YulTypedName", + "src": "2253:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2278:63:74", + "nodeType": "YulAssignment", + "src": "2278:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2313:9:74", + "nodeType": "YulIdentifier", + "src": "2313:9:74" + }, + { + "name": "offset", + "nativeSrc": "2324:6:74", + "nodeType": "YulIdentifier", + "src": "2324:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2309:3:74", + "nodeType": "YulIdentifier", + "src": "2309:3:74" + }, + "nativeSrc": "2309:22:74", + "nodeType": "YulFunctionCall", + "src": "2309:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2333:7:74", + "nodeType": "YulIdentifier", + "src": "2333:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "2288:20:74", + "nodeType": "YulIdentifier", + "src": "2288:20:74" + }, + "nativeSrc": "2288:53:74", + "nodeType": "YulFunctionCall", + "src": "2288:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2278:6:74", + "nodeType": "YulIdentifier", + "src": "2278:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "2029:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2065:9:74", + "nodeType": "YulTypedName", + "src": "2065:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2076:7:74", + "nodeType": "YulTypedName", + "src": "2076:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2088:6:74", + "nodeType": "YulTypedName", + "src": "2088:6:74", + "type": "" + } + ], + "src": "2029:329:74" + }, + { + "body": { + "nativeSrc": "2429:53:74", + "nodeType": "YulBlock", + "src": "2429:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2446:3:74", + "nodeType": "YulIdentifier", + "src": "2446:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2469:5:74", + "nodeType": "YulIdentifier", + "src": "2469:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "2451:17:74", + "nodeType": "YulIdentifier", + "src": "2451:17:74" + }, + "nativeSrc": "2451:24:74", + "nodeType": "YulFunctionCall", + "src": "2451:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2439:6:74", + "nodeType": "YulIdentifier", + "src": "2439:6:74" + }, + "nativeSrc": "2439:37:74", + "nodeType": "YulFunctionCall", + "src": "2439:37:74" + }, + "nativeSrc": "2439:37:74", + "nodeType": "YulExpressionStatement", + "src": "2439:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "2364:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2417:5:74", + "nodeType": "YulTypedName", + "src": "2417:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2424:3:74", + "nodeType": "YulTypedName", + "src": "2424:3:74", + "type": "" + } + ], + "src": "2364:118:74" + }, + { + "body": { + "nativeSrc": "2532:49:74", + "nodeType": "YulBlock", + "src": "2532:49:74", + "statements": [ + { + "nativeSrc": "2542:33:74", + "nodeType": "YulAssignment", + "src": "2542:33:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2557:5:74", + "nodeType": "YulIdentifier", + "src": "2557:5:74" + }, + { + "kind": "number", + "nativeSrc": "2564:10:74", + "nodeType": "YulLiteral", + "src": "2564:10:74", + "type": "", + "value": "0xffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2553:3:74", + "nodeType": "YulIdentifier", + "src": "2553:3:74" + }, + "nativeSrc": "2553:22:74", + "nodeType": "YulFunctionCall", + "src": "2553:22:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2542:7:74", + "nodeType": "YulIdentifier", + "src": "2542:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint32", + "nativeSrc": "2488:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2514:5:74", + "nodeType": "YulTypedName", + "src": "2514:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2524:7:74", + "nodeType": "YulTypedName", + "src": "2524:7:74", + "type": "" + } + ], + "src": "2488:93:74" + }, + { + "body": { + "nativeSrc": "2650:52:74", + "nodeType": "YulBlock", + "src": "2650:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2667:3:74", + "nodeType": "YulIdentifier", + "src": "2667:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2689:5:74", + "nodeType": "YulIdentifier", + "src": "2689:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint32", + "nativeSrc": "2672:16:74", + "nodeType": "YulIdentifier", + "src": "2672:16:74" + }, + "nativeSrc": "2672:23:74", + "nodeType": "YulFunctionCall", + "src": "2672:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2660:6:74", + "nodeType": "YulIdentifier", + "src": "2660:6:74" + }, + "nativeSrc": "2660:36:74", + "nodeType": "YulFunctionCall", + "src": "2660:36:74" + }, + "nativeSrc": "2660:36:74", + "nodeType": "YulExpressionStatement", + "src": "2660:36:74" + } + ] + }, + "name": "abi_encode_t_uint32_to_t_uint32_fromStack", + "nativeSrc": "2587:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2638:5:74", + "nodeType": "YulTypedName", + "src": "2638:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2645:3:74", + "nodeType": "YulTypedName", + "src": "2645:3:74", + "type": "" + } + ], + "src": "2587:115:74" + }, + { + "body": { + "nativeSrc": "2752:57:74", + "nodeType": "YulBlock", + "src": "2752:57:74", + "statements": [ + { + "nativeSrc": "2762:41:74", + "nodeType": "YulAssignment", + "src": "2762:41:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2777:5:74", + "nodeType": "YulIdentifier", + "src": "2777:5:74" + }, + { + "kind": "number", + "nativeSrc": "2784:18:74", + "nodeType": "YulLiteral", + "src": "2784:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2773:3:74", + "nodeType": "YulIdentifier", + "src": "2773:3:74" + }, + "nativeSrc": "2773:30:74", + "nodeType": "YulFunctionCall", + "src": "2773:30:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2762:7:74", + "nodeType": "YulIdentifier", + "src": "2762:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint64", + "nativeSrc": "2708:101:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2734:5:74", + "nodeType": "YulTypedName", + "src": "2734:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2744:7:74", + "nodeType": "YulTypedName", + "src": "2744:7:74", + "type": "" + } + ], + "src": "2708:101:74" + }, + { + "body": { + "nativeSrc": "2878:52:74", + "nodeType": "YulBlock", + "src": "2878:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2895:3:74", + "nodeType": "YulIdentifier", + "src": "2895:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2917:5:74", + "nodeType": "YulIdentifier", + "src": "2917:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "2900:16:74", + "nodeType": "YulIdentifier", + "src": "2900:16:74" + }, + "nativeSrc": "2900:23:74", + "nodeType": "YulFunctionCall", + "src": "2900:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2888:6:74", + "nodeType": "YulIdentifier", + "src": "2888:6:74" + }, + "nativeSrc": "2888:36:74", + "nodeType": "YulFunctionCall", + "src": "2888:36:74" + }, + "nativeSrc": "2888:36:74", + "nodeType": "YulExpressionStatement", + "src": "2888:36:74" + } + ] + }, + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "2815:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2866:5:74", + "nodeType": "YulTypedName", + "src": "2866:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2873:3:74", + "nodeType": "YulTypedName", + "src": "2873:3:74", + "type": "" + } + ], + "src": "2815:115:74" + }, + { + "body": { + "nativeSrc": "3086:284:74", + "nodeType": "YulBlock", + "src": "3086:284:74", + "statements": [ + { + "nativeSrc": "3096:26:74", + "nodeType": "YulAssignment", + "src": "3096:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3108:9:74", + "nodeType": "YulIdentifier", + "src": "3108:9:74" + }, + { + "kind": "number", + "nativeSrc": "3119:2:74", + "nodeType": "YulLiteral", + "src": "3119:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3104:3:74", + "nodeType": "YulIdentifier", + "src": "3104:3:74" + }, + "nativeSrc": "3104:18:74", + "nodeType": "YulFunctionCall", + "src": "3104:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3096:4:74", + "nodeType": "YulIdentifier", + "src": "3096:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3176:6:74", + "nodeType": "YulIdentifier", + "src": "3176:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3189:9:74", + "nodeType": "YulIdentifier", + "src": "3189:9:74" + }, + { + "kind": "number", + "nativeSrc": "3200:1:74", + "nodeType": "YulLiteral", + "src": "3200:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3185:3:74", + "nodeType": "YulIdentifier", + "src": "3185:3:74" + }, + "nativeSrc": "3185:17:74", + "nodeType": "YulFunctionCall", + "src": "3185:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3132:43:74", + "nodeType": "YulIdentifier", + "src": "3132:43:74" + }, + "nativeSrc": "3132:71:74", + "nodeType": "YulFunctionCall", + "src": "3132:71:74" + }, + "nativeSrc": "3132:71:74", + "nodeType": "YulExpressionStatement", + "src": "3132:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "3255:6:74", + "nodeType": "YulIdentifier", + "src": "3255:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3268:9:74", + "nodeType": "YulIdentifier", + "src": "3268:9:74" + }, + { + "kind": "number", + "nativeSrc": "3279:2:74", + "nodeType": "YulLiteral", + "src": "3279:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3264:3:74", + "nodeType": "YulIdentifier", + "src": "3264:3:74" + }, + "nativeSrc": "3264:18:74", + "nodeType": "YulFunctionCall", + "src": "3264:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint32_to_t_uint32_fromStack", + "nativeSrc": "3213:41:74", + "nodeType": "YulIdentifier", + "src": "3213:41:74" + }, + "nativeSrc": "3213:70:74", + "nodeType": "YulFunctionCall", + "src": "3213:70:74" + }, + "nativeSrc": "3213:70:74", + "nodeType": "YulExpressionStatement", + "src": "3213:70:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "3335:6:74", + "nodeType": "YulIdentifier", + "src": "3335:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3348:9:74", + "nodeType": "YulIdentifier", + "src": "3348:9:74" + }, + { + "kind": "number", + "nativeSrc": "3359:2:74", + "nodeType": "YulLiteral", + "src": "3359:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3344:3:74", + "nodeType": "YulIdentifier", + "src": "3344:3:74" + }, + "nativeSrc": "3344:18:74", + "nodeType": "YulFunctionCall", + "src": "3344:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "3293:41:74", + "nodeType": "YulIdentifier", + "src": "3293:41:74" + }, + "nativeSrc": "3293:70:74", + "nodeType": "YulFunctionCall", + "src": "3293:70:74" + }, + "nativeSrc": "3293:70:74", + "nodeType": "YulExpressionStatement", + "src": "3293:70:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_uint32_t_uint64__to_t_address_t_uint32_t_uint64__fromStack_reversed", + "nativeSrc": "2936:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3042:9:74", + "nodeType": "YulTypedName", + "src": "3042:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "3054:6:74", + "nodeType": "YulTypedName", + "src": "3054:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "3062:6:74", + "nodeType": "YulTypedName", + "src": "3062:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3070:6:74", + "nodeType": "YulTypedName", + "src": "3070:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3081:4:74", + "nodeType": "YulTypedName", + "src": "3081:4:74", + "type": "" + } + ], + "src": "2936:434:74" + }, + { + "body": { + "nativeSrc": "3420:105:74", + "nodeType": "YulBlock", + "src": "3420:105:74", + "statements": [ + { + "nativeSrc": "3430:89:74", + "nodeType": "YulAssignment", + "src": "3430:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3445:5:74", + "nodeType": "YulIdentifier", + "src": "3445:5:74" + }, + { + "kind": "number", + "nativeSrc": "3452:66:74", + "nodeType": "YulLiteral", + "src": "3452:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3441:3:74", + "nodeType": "YulIdentifier", + "src": "3441:3:74" + }, + "nativeSrc": "3441:78:74", + "nodeType": "YulFunctionCall", + "src": "3441:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3430:7:74", + "nodeType": "YulIdentifier", + "src": "3430:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "3376:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3402:5:74", + "nodeType": "YulTypedName", + "src": "3402:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3412:7:74", + "nodeType": "YulTypedName", + "src": "3412:7:74", + "type": "" + } + ], + "src": "3376:149:74" + }, + { + "body": { + "nativeSrc": "3573:78:74", + "nodeType": "YulBlock", + "src": "3573:78:74", + "statements": [ + { + "body": { + "nativeSrc": "3629:16:74", + "nodeType": "YulBlock", + "src": "3629:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3638:1:74", + "nodeType": "YulLiteral", + "src": "3638:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3641:1:74", + "nodeType": "YulLiteral", + "src": "3641:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3631:6:74", + "nodeType": "YulIdentifier", + "src": "3631:6:74" + }, + "nativeSrc": "3631:12:74", + "nodeType": "YulFunctionCall", + "src": "3631:12:74" + }, + "nativeSrc": "3631:12:74", + "nodeType": "YulExpressionStatement", + "src": "3631:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3596:5:74", + "nodeType": "YulIdentifier", + "src": "3596:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3620:5:74", + "nodeType": "YulIdentifier", + "src": "3620:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "3603:16:74", + "nodeType": "YulIdentifier", + "src": "3603:16:74" + }, + "nativeSrc": "3603:23:74", + "nodeType": "YulFunctionCall", + "src": "3603:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3593:2:74", + "nodeType": "YulIdentifier", + "src": "3593:2:74" + }, + "nativeSrc": "3593:34:74", + "nodeType": "YulFunctionCall", + "src": "3593:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3586:6:74", + "nodeType": "YulIdentifier", + "src": "3586:6:74" + }, + "nativeSrc": "3586:42:74", + "nodeType": "YulFunctionCall", + "src": "3586:42:74" + }, + "nativeSrc": "3583:62:74", + "nodeType": "YulIf", + "src": "3583:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "3531:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3566:5:74", + "nodeType": "YulTypedName", + "src": "3566:5:74", + "type": "" + } + ], + "src": "3531:120:74" + }, + { + "body": { + "nativeSrc": "3708:86:74", + "nodeType": "YulBlock", + "src": "3708:86:74", + "statements": [ + { + "nativeSrc": "3718:29:74", + "nodeType": "YulAssignment", + "src": "3718:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3740:6:74", + "nodeType": "YulIdentifier", + "src": "3740:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3727:12:74", + "nodeType": "YulIdentifier", + "src": "3727:12:74" + }, + "nativeSrc": "3727:20:74", + "nodeType": "YulFunctionCall", + "src": "3727:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3718:5:74", + "nodeType": "YulIdentifier", + "src": "3718:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3782:5:74", + "nodeType": "YulIdentifier", + "src": "3782:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "3756:25:74", + "nodeType": "YulIdentifier", + "src": "3756:25:74" + }, + "nativeSrc": "3756:32:74", + "nodeType": "YulFunctionCall", + "src": "3756:32:74" + }, + "nativeSrc": "3756:32:74", + "nodeType": "YulExpressionStatement", + "src": "3756:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "3657:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3686:6:74", + "nodeType": "YulTypedName", + "src": "3686:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3694:3:74", + "nodeType": "YulTypedName", + "src": "3694:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3702:5:74", + "nodeType": "YulTypedName", + "src": "3702:5:74", + "type": "" + } + ], + "src": "3657:137:74" + }, + { + "body": { + "nativeSrc": "3865:262:74", + "nodeType": "YulBlock", + "src": "3865:262:74", + "statements": [ + { + "body": { + "nativeSrc": "3911:83:74", + "nodeType": "YulBlock", + "src": "3911:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3913:77:74", + "nodeType": "YulIdentifier", + "src": "3913:77:74" + }, + "nativeSrc": "3913:79:74", + "nodeType": "YulFunctionCall", + "src": "3913:79:74" + }, + "nativeSrc": "3913:79:74", + "nodeType": "YulExpressionStatement", + "src": "3913:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3886:7:74", + "nodeType": "YulIdentifier", + "src": "3886:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3895:9:74", + "nodeType": "YulIdentifier", + "src": "3895:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3882:3:74", + "nodeType": "YulIdentifier", + "src": "3882:3:74" + }, + "nativeSrc": "3882:23:74", + "nodeType": "YulFunctionCall", + "src": "3882:23:74" + }, + { + "kind": "number", + "nativeSrc": "3907:2:74", + "nodeType": "YulLiteral", + "src": "3907:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3878:3:74", + "nodeType": "YulIdentifier", + "src": "3878:3:74" + }, + "nativeSrc": "3878:32:74", + "nodeType": "YulFunctionCall", + "src": "3878:32:74" + }, + "nativeSrc": "3875:119:74", + "nodeType": "YulIf", + "src": "3875:119:74" + }, + { + "nativeSrc": "4004:116:74", + "nodeType": "YulBlock", + "src": "4004:116:74", + "statements": [ + { + "nativeSrc": "4019:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4019:15:74", + "value": { + "kind": "number", + "nativeSrc": "4033:1:74", + "nodeType": "YulLiteral", + "src": "4033:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4023:6:74", + "nodeType": "YulTypedName", + "src": "4023:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4048:62:74", + "nodeType": "YulAssignment", + "src": "4048:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4082:9:74", + "nodeType": "YulIdentifier", + "src": "4082:9:74" + }, + { + "name": "offset", + "nativeSrc": "4093:6:74", + "nodeType": "YulIdentifier", + "src": "4093:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4078:3:74", + "nodeType": "YulIdentifier", + "src": "4078:3:74" + }, + "nativeSrc": "4078:22:74", + "nodeType": "YulFunctionCall", + "src": "4078:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4102:7:74", + "nodeType": "YulIdentifier", + "src": "4102:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "4058:19:74", + "nodeType": "YulIdentifier", + "src": "4058:19:74" + }, + "nativeSrc": "4058:52:74", + "nodeType": "YulFunctionCall", + "src": "4058:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4048:6:74", + "nodeType": "YulIdentifier", + "src": "4048:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "3800:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3835:9:74", + "nodeType": "YulTypedName", + "src": "3835:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3846:7:74", + "nodeType": "YulTypedName", + "src": "3846:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3858:6:74", + "nodeType": "YulTypedName", + "src": "3858:6:74", + "type": "" + } + ], + "src": "3800:327:74" + }, + { + "body": { + "nativeSrc": "4175:48:74", + "nodeType": "YulBlock", + "src": "4175:48:74", + "statements": [ + { + "nativeSrc": "4185:32:74", + "nodeType": "YulAssignment", + "src": "4185:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4210:5:74", + "nodeType": "YulIdentifier", + "src": "4210:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4203:6:74", + "nodeType": "YulIdentifier", + "src": "4203:6:74" + }, + "nativeSrc": "4203:13:74", + "nodeType": "YulFunctionCall", + "src": "4203:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4196:6:74", + "nodeType": "YulIdentifier", + "src": "4196:6:74" + }, + "nativeSrc": "4196:21:74", + "nodeType": "YulFunctionCall", + "src": "4196:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4185:7:74", + "nodeType": "YulIdentifier", + "src": "4185:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "4133:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4157:5:74", + "nodeType": "YulTypedName", + "src": "4157:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4167:7:74", + "nodeType": "YulTypedName", + "src": "4167:7:74", + "type": "" + } + ], + "src": "4133:90:74" + }, + { + "body": { + "nativeSrc": "4288:50:74", + "nodeType": "YulBlock", + "src": "4288:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4305:3:74", + "nodeType": "YulIdentifier", + "src": "4305:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4325:5:74", + "nodeType": "YulIdentifier", + "src": "4325:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "4310:14:74", + "nodeType": "YulIdentifier", + "src": "4310:14:74" + }, + "nativeSrc": "4310:21:74", + "nodeType": "YulFunctionCall", + "src": "4310:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4298:6:74", + "nodeType": "YulIdentifier", + "src": "4298:6:74" + }, + "nativeSrc": "4298:34:74", + "nodeType": "YulFunctionCall", + "src": "4298:34:74" + }, + "nativeSrc": "4298:34:74", + "nodeType": "YulExpressionStatement", + "src": "4298:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "4229:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4276:5:74", + "nodeType": "YulTypedName", + "src": "4276:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4283:3:74", + "nodeType": "YulTypedName", + "src": "4283:3:74", + "type": "" + } + ], + "src": "4229:109:74" + }, + { + "body": { + "nativeSrc": "4436:118:74", + "nodeType": "YulBlock", + "src": "4436:118:74", + "statements": [ + { + "nativeSrc": "4446:26:74", + "nodeType": "YulAssignment", + "src": "4446:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4458:9:74", + "nodeType": "YulIdentifier", + "src": "4458:9:74" + }, + { + "kind": "number", + "nativeSrc": "4469:2:74", + "nodeType": "YulLiteral", + "src": "4469:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4454:3:74", + "nodeType": "YulIdentifier", + "src": "4454:3:74" + }, + "nativeSrc": "4454:18:74", + "nodeType": "YulFunctionCall", + "src": "4454:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4446:4:74", + "nodeType": "YulIdentifier", + "src": "4446:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4520:6:74", + "nodeType": "YulIdentifier", + "src": "4520:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4533:9:74", + "nodeType": "YulIdentifier", + "src": "4533:9:74" + }, + { + "kind": "number", + "nativeSrc": "4544:1:74", + "nodeType": "YulLiteral", + "src": "4544:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4529:3:74", + "nodeType": "YulIdentifier", + "src": "4529:3:74" + }, + "nativeSrc": "4529:17:74", + "nodeType": "YulFunctionCall", + "src": "4529:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "4482:37:74", + "nodeType": "YulIdentifier", + "src": "4482:37:74" + }, + "nativeSrc": "4482:65:74", + "nodeType": "YulFunctionCall", + "src": "4482:65:74" + }, + "nativeSrc": "4482:65:74", + "nodeType": "YulExpressionStatement", + "src": "4482:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "4344:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4408:9:74", + "nodeType": "YulTypedName", + "src": "4408:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4420:6:74", + "nodeType": "YulTypedName", + "src": "4420:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4431:4:74", + "nodeType": "YulTypedName", + "src": "4431:4:74", + "type": "" + } + ], + "src": "4344:210:74" + }, + { + "body": { + "nativeSrc": "4619:40:74", + "nodeType": "YulBlock", + "src": "4619:40:74", + "statements": [ + { + "nativeSrc": "4630:22:74", + "nodeType": "YulAssignment", + "src": "4630:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4646:5:74", + "nodeType": "YulIdentifier", + "src": "4646:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4640:5:74", + "nodeType": "YulIdentifier", + "src": "4640:5:74" + }, + "nativeSrc": "4640:12:74", + "nodeType": "YulFunctionCall", + "src": "4640:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "4630:6:74", + "nodeType": "YulIdentifier", + "src": "4630:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "4560:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4602:5:74", + "nodeType": "YulTypedName", + "src": "4602:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "4612:6:74", + "nodeType": "YulTypedName", + "src": "4612:6:74", + "type": "" + } + ], + "src": "4560:99:74" + }, + { + "body": { + "nativeSrc": "4761:73:74", + "nodeType": "YulBlock", + "src": "4761:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4778:3:74", + "nodeType": "YulIdentifier", + "src": "4778:3:74" + }, + { + "name": "length", + "nativeSrc": "4783:6:74", + "nodeType": "YulIdentifier", + "src": "4783:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4771:6:74", + "nodeType": "YulIdentifier", + "src": "4771:6:74" + }, + "nativeSrc": "4771:19:74", + "nodeType": "YulFunctionCall", + "src": "4771:19:74" + }, + "nativeSrc": "4771:19:74", + "nodeType": "YulExpressionStatement", + "src": "4771:19:74" + }, + { + "nativeSrc": "4799:29:74", + "nodeType": "YulAssignment", + "src": "4799:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4818:3:74", + "nodeType": "YulIdentifier", + "src": "4818:3:74" + }, + { + "kind": "number", + "nativeSrc": "4823:4:74", + "nodeType": "YulLiteral", + "src": "4823:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4814:3:74", + "nodeType": "YulIdentifier", + "src": "4814:3:74" + }, + "nativeSrc": "4814:14:74", + "nodeType": "YulFunctionCall", + "src": "4814:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "4799:11:74", + "nodeType": "YulIdentifier", + "src": "4799:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "4665:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "4733:3:74", + "nodeType": "YulTypedName", + "src": "4733:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "4738:6:74", + "nodeType": "YulTypedName", + "src": "4738:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "4749:11:74", + "nodeType": "YulTypedName", + "src": "4749:11:74", + "type": "" + } + ], + "src": "4665:169:74" + }, + { + "body": { + "nativeSrc": "4902:186:74", + "nodeType": "YulBlock", + "src": "4902:186:74", + "statements": [ + { + "nativeSrc": "4913:10:74", + "nodeType": "YulVariableDeclaration", + "src": "4913:10:74", + "value": { + "kind": "number", + "nativeSrc": "4922:1:74", + "nodeType": "YulLiteral", + "src": "4922:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "4917:1:74", + "nodeType": "YulTypedName", + "src": "4917:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4982:63:74", + "nodeType": "YulBlock", + "src": "4982:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "5007:3:74", + "nodeType": "YulIdentifier", + "src": "5007:3:74" + }, + { + "name": "i", + "nativeSrc": "5012:1:74", + "nodeType": "YulIdentifier", + "src": "5012:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5003:3:74", + "nodeType": "YulIdentifier", + "src": "5003:3:74" + }, + "nativeSrc": "5003:11:74", + "nodeType": "YulFunctionCall", + "src": "5003:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "5026:3:74", + "nodeType": "YulIdentifier", + "src": "5026:3:74" + }, + { + "name": "i", + "nativeSrc": "5031:1:74", + "nodeType": "YulIdentifier", + "src": "5031:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5022:3:74", + "nodeType": "YulIdentifier", + "src": "5022:3:74" + }, + "nativeSrc": "5022:11:74", + "nodeType": "YulFunctionCall", + "src": "5022:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5016:5:74", + "nodeType": "YulIdentifier", + "src": "5016:5:74" + }, + "nativeSrc": "5016:18:74", + "nodeType": "YulFunctionCall", + "src": "5016:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4996:6:74", + "nodeType": "YulIdentifier", + "src": "4996:6:74" + }, + "nativeSrc": "4996:39:74", + "nodeType": "YulFunctionCall", + "src": "4996:39:74" + }, + "nativeSrc": "4996:39:74", + "nodeType": "YulExpressionStatement", + "src": "4996:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4943:1:74", + "nodeType": "YulIdentifier", + "src": "4943:1:74" + }, + { + "name": "length", + "nativeSrc": "4946:6:74", + "nodeType": "YulIdentifier", + "src": "4946:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4940:2:74", + "nodeType": "YulIdentifier", + "src": "4940:2:74" + }, + "nativeSrc": "4940:13:74", + "nodeType": "YulFunctionCall", + "src": "4940:13:74" + }, + "nativeSrc": "4932:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "4954:19:74", + "nodeType": "YulBlock", + "src": "4954:19:74", + "statements": [ + { + "nativeSrc": "4956:15:74", + "nodeType": "YulAssignment", + "src": "4956:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4965:1:74", + "nodeType": "YulIdentifier", + "src": "4965:1:74" + }, + { + "kind": "number", + "nativeSrc": "4968:2:74", + "nodeType": "YulLiteral", + "src": "4968:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4961:3:74", + "nodeType": "YulIdentifier", + "src": "4961:3:74" + }, + "nativeSrc": "4961:10:74", + "nodeType": "YulFunctionCall", + "src": "4961:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "4956:1:74", + "nodeType": "YulIdentifier", + "src": "4956:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "4936:3:74", + "nodeType": "YulBlock", + "src": "4936:3:74", + "statements": [] + }, + "src": "4932:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "5065:3:74", + "nodeType": "YulIdentifier", + "src": "5065:3:74" + }, + { + "name": "length", + "nativeSrc": "5070:6:74", + "nodeType": "YulIdentifier", + "src": "5070:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5061:3:74", + "nodeType": "YulIdentifier", + "src": "5061:3:74" + }, + "nativeSrc": "5061:16:74", + "nodeType": "YulFunctionCall", + "src": "5061:16:74" + }, + { + "kind": "number", + "nativeSrc": "5079:1:74", + "nodeType": "YulLiteral", + "src": "5079:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5054:6:74", + "nodeType": "YulIdentifier", + "src": "5054:6:74" + }, + "nativeSrc": "5054:27:74", + "nodeType": "YulFunctionCall", + "src": "5054:27:74" + }, + "nativeSrc": "5054:27:74", + "nodeType": "YulExpressionStatement", + "src": "5054:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "4840:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "4884:3:74", + "nodeType": "YulTypedName", + "src": "4884:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "4889:3:74", + "nodeType": "YulTypedName", + "src": "4889:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "4894:6:74", + "nodeType": "YulTypedName", + "src": "4894:6:74", + "type": "" + } + ], + "src": "4840:248:74" + }, + { + "body": { + "nativeSrc": "5142:54:74", + "nodeType": "YulBlock", + "src": "5142:54:74", + "statements": [ + { + "nativeSrc": "5152:38:74", + "nodeType": "YulAssignment", + "src": "5152:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5170:5:74", + "nodeType": "YulIdentifier", + "src": "5170:5:74" + }, + { + "kind": "number", + "nativeSrc": "5177:2:74", + "nodeType": "YulLiteral", + "src": "5177:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5166:3:74", + "nodeType": "YulIdentifier", + "src": "5166:3:74" + }, + "nativeSrc": "5166:14:74", + "nodeType": "YulFunctionCall", + "src": "5166:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5186:2:74", + "nodeType": "YulLiteral", + "src": "5186:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "5182:3:74", + "nodeType": "YulIdentifier", + "src": "5182:3:74" + }, + "nativeSrc": "5182:7:74", + "nodeType": "YulFunctionCall", + "src": "5182:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5162:3:74", + "nodeType": "YulIdentifier", + "src": "5162:3:74" + }, + "nativeSrc": "5162:28:74", + "nodeType": "YulFunctionCall", + "src": "5162:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "5152:6:74", + "nodeType": "YulIdentifier", + "src": "5152:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "5094:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5125:5:74", + "nodeType": "YulTypedName", + "src": "5125:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "5135:6:74", + "nodeType": "YulTypedName", + "src": "5135:6:74", + "type": "" + } + ], + "src": "5094:102:74" + }, + { + "body": { + "nativeSrc": "5294:285:74", + "nodeType": "YulBlock", + "src": "5294:285:74", + "statements": [ + { + "nativeSrc": "5304:53:74", + "nodeType": "YulVariableDeclaration", + "src": "5304:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5351:5:74", + "nodeType": "YulIdentifier", + "src": "5351:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "5318:32:74", + "nodeType": "YulIdentifier", + "src": "5318:32:74" + }, + "nativeSrc": "5318:39:74", + "nodeType": "YulFunctionCall", + "src": "5318:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "5308:6:74", + "nodeType": "YulTypedName", + "src": "5308:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5366:78:74", + "nodeType": "YulAssignment", + "src": "5366:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5432:3:74", + "nodeType": "YulIdentifier", + "src": "5432:3:74" + }, + { + "name": "length", + "nativeSrc": "5437:6:74", + "nodeType": "YulIdentifier", + "src": "5437:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "5373:58:74", + "nodeType": "YulIdentifier", + "src": "5373:58:74" + }, + "nativeSrc": "5373:71:74", + "nodeType": "YulFunctionCall", + "src": "5373:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "5366:3:74", + "nodeType": "YulIdentifier", + "src": "5366:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5492:5:74", + "nodeType": "YulIdentifier", + "src": "5492:5:74" + }, + { + "kind": "number", + "nativeSrc": "5499:4:74", + "nodeType": "YulLiteral", + "src": "5499:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5488:3:74", + "nodeType": "YulIdentifier", + "src": "5488:3:74" + }, + "nativeSrc": "5488:16:74", + "nodeType": "YulFunctionCall", + "src": "5488:16:74" + }, + { + "name": "pos", + "nativeSrc": "5506:3:74", + "nodeType": "YulIdentifier", + "src": "5506:3:74" + }, + { + "name": "length", + "nativeSrc": "5511:6:74", + "nodeType": "YulIdentifier", + "src": "5511:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "5453:34:74", + "nodeType": "YulIdentifier", + "src": "5453:34:74" + }, + "nativeSrc": "5453:65:74", + "nodeType": "YulFunctionCall", + "src": "5453:65:74" + }, + "nativeSrc": "5453:65:74", + "nodeType": "YulExpressionStatement", + "src": "5453:65:74" + }, + { + "nativeSrc": "5527:46:74", + "nodeType": "YulAssignment", + "src": "5527:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5538:3:74", + "nodeType": "YulIdentifier", + "src": "5538:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "5565:6:74", + "nodeType": "YulIdentifier", + "src": "5565:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "5543:21:74", + "nodeType": "YulIdentifier", + "src": "5543:21:74" + }, + "nativeSrc": "5543:29:74", + "nodeType": "YulFunctionCall", + "src": "5543:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5534:3:74", + "nodeType": "YulIdentifier", + "src": "5534:3:74" + }, + "nativeSrc": "5534:39:74", + "nodeType": "YulFunctionCall", + "src": "5534:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "5527:3:74", + "nodeType": "YulIdentifier", + "src": "5527:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5202:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5275:5:74", + "nodeType": "YulTypedName", + "src": "5275:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "5282:3:74", + "nodeType": "YulTypedName", + "src": "5282:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "5290:3:74", + "nodeType": "YulTypedName", + "src": "5290:3:74", + "type": "" + } + ], + "src": "5202:377:74" + }, + { + "body": { + "nativeSrc": "5703:195:74", + "nodeType": "YulBlock", + "src": "5703:195:74", + "statements": [ + { + "nativeSrc": "5713:26:74", + "nodeType": "YulAssignment", + "src": "5713:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5725:9:74", + "nodeType": "YulIdentifier", + "src": "5725:9:74" + }, + { + "kind": "number", + "nativeSrc": "5736:2:74", + "nodeType": "YulLiteral", + "src": "5736:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5721:3:74", + "nodeType": "YulIdentifier", + "src": "5721:3:74" + }, + "nativeSrc": "5721:18:74", + "nodeType": "YulFunctionCall", + "src": "5721:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5713:4:74", + "nodeType": "YulIdentifier", + "src": "5713:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5760:9:74", + "nodeType": "YulIdentifier", + "src": "5760:9:74" + }, + { + "kind": "number", + "nativeSrc": "5771:1:74", + "nodeType": "YulLiteral", + "src": "5771:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5756:3:74", + "nodeType": "YulIdentifier", + "src": "5756:3:74" + }, + "nativeSrc": "5756:17:74", + "nodeType": "YulFunctionCall", + "src": "5756:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "5779:4:74", + "nodeType": "YulIdentifier", + "src": "5779:4:74" + }, + { + "name": "headStart", + "nativeSrc": "5785:9:74", + "nodeType": "YulIdentifier", + "src": "5785:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5775:3:74", + "nodeType": "YulIdentifier", + "src": "5775:3:74" + }, + "nativeSrc": "5775:20:74", + "nodeType": "YulFunctionCall", + "src": "5775:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5749:6:74", + "nodeType": "YulIdentifier", + "src": "5749:6:74" + }, + "nativeSrc": "5749:47:74", + "nodeType": "YulFunctionCall", + "src": "5749:47:74" + }, + "nativeSrc": "5749:47:74", + "nodeType": "YulExpressionStatement", + "src": "5749:47:74" + }, + { + "nativeSrc": "5805:86:74", + "nodeType": "YulAssignment", + "src": "5805:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "5877:6:74", + "nodeType": "YulIdentifier", + "src": "5877:6:74" + }, + { + "name": "tail", + "nativeSrc": "5886:4:74", + "nodeType": "YulIdentifier", + "src": "5886:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5813:63:74", + "nodeType": "YulIdentifier", + "src": "5813:63:74" + }, + "nativeSrc": "5813:78:74", + "nodeType": "YulFunctionCall", + "src": "5813:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5805:4:74", + "nodeType": "YulIdentifier", + "src": "5805:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "5585:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5675:9:74", + "nodeType": "YulTypedName", + "src": "5675:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "5687:6:74", + "nodeType": "YulTypedName", + "src": "5687:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5698:4:74", + "nodeType": "YulTypedName", + "src": "5698:4:74", + "type": "" + } + ], + "src": "5585:313:74" + }, + { + "body": { + "nativeSrc": "6002:124:74", + "nodeType": "YulBlock", + "src": "6002:124:74", + "statements": [ + { + "nativeSrc": "6012:26:74", + "nodeType": "YulAssignment", + "src": "6012:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6024:9:74", + "nodeType": "YulIdentifier", + "src": "6024:9:74" + }, + { + "kind": "number", + "nativeSrc": "6035:2:74", + "nodeType": "YulLiteral", + "src": "6035:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6020:3:74", + "nodeType": "YulIdentifier", + "src": "6020:3:74" + }, + "nativeSrc": "6020:18:74", + "nodeType": "YulFunctionCall", + "src": "6020:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6012:4:74", + "nodeType": "YulIdentifier", + "src": "6012:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "6092:6:74", + "nodeType": "YulIdentifier", + "src": "6092:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6105:9:74", + "nodeType": "YulIdentifier", + "src": "6105:9:74" + }, + { + "kind": "number", + "nativeSrc": "6116:1:74", + "nodeType": "YulLiteral", + "src": "6116:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6101:3:74", + "nodeType": "YulIdentifier", + "src": "6101:3:74" + }, + "nativeSrc": "6101:17:74", + "nodeType": "YulFunctionCall", + "src": "6101:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "6048:43:74", + "nodeType": "YulIdentifier", + "src": "6048:43:74" + }, + "nativeSrc": "6048:71:74", + "nodeType": "YulFunctionCall", + "src": "6048:71:74" + }, + "nativeSrc": "6048:71:74", + "nodeType": "YulExpressionStatement", + "src": "6048:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "5904:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5974:9:74", + "nodeType": "YulTypedName", + "src": "5974:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "5986:6:74", + "nodeType": "YulTypedName", + "src": "5986:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5997:4:74", + "nodeType": "YulTypedName", + "src": "5997:4:74", + "type": "" + } + ], + "src": "5904:222:74" + }, + { + "body": { + "nativeSrc": "6177:32:74", + "nodeType": "YulBlock", + "src": "6177:32:74", + "statements": [ + { + "nativeSrc": "6187:16:74", + "nodeType": "YulAssignment", + "src": "6187:16:74", + "value": { + "name": "value", + "nativeSrc": "6198:5:74", + "nodeType": "YulIdentifier", + "src": "6198:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "6187:7:74", + "nodeType": "YulIdentifier", + "src": "6187:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "6132:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6159:5:74", + "nodeType": "YulTypedName", + "src": "6159:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "6169:7:74", + "nodeType": "YulTypedName", + "src": "6169:7:74", + "type": "" + } + ], + "src": "6132:77:74" + }, + { + "body": { + "nativeSrc": "6258:79:74", + "nodeType": "YulBlock", + "src": "6258:79:74", + "statements": [ + { + "body": { + "nativeSrc": "6315:16:74", + "nodeType": "YulBlock", + "src": "6315:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6324:1:74", + "nodeType": "YulLiteral", + "src": "6324:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6327:1:74", + "nodeType": "YulLiteral", + "src": "6327:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6317:6:74", + "nodeType": "YulIdentifier", + "src": "6317:6:74" + }, + "nativeSrc": "6317:12:74", + "nodeType": "YulFunctionCall", + "src": "6317:12:74" + }, + "nativeSrc": "6317:12:74", + "nodeType": "YulExpressionStatement", + "src": "6317:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6281:5:74", + "nodeType": "YulIdentifier", + "src": "6281:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6306:5:74", + "nodeType": "YulIdentifier", + "src": "6306:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "6288:17:74", + "nodeType": "YulIdentifier", + "src": "6288:17:74" + }, + "nativeSrc": "6288:24:74", + "nodeType": "YulFunctionCall", + "src": "6288:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6278:2:74", + "nodeType": "YulIdentifier", + "src": "6278:2:74" + }, + "nativeSrc": "6278:35:74", + "nodeType": "YulFunctionCall", + "src": "6278:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6271:6:74", + "nodeType": "YulIdentifier", + "src": "6271:6:74" + }, + "nativeSrc": "6271:43:74", + "nodeType": "YulFunctionCall", + "src": "6271:43:74" + }, + "nativeSrc": "6268:63:74", + "nodeType": "YulIf", + "src": "6268:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "6215:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6251:5:74", + "nodeType": "YulTypedName", + "src": "6251:5:74", + "type": "" + } + ], + "src": "6215:122:74" + }, + { + "body": { + "nativeSrc": "6395:87:74", + "nodeType": "YulBlock", + "src": "6395:87:74", + "statements": [ + { + "nativeSrc": "6405:29:74", + "nodeType": "YulAssignment", + "src": "6405:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6427:6:74", + "nodeType": "YulIdentifier", + "src": "6427:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6414:12:74", + "nodeType": "YulIdentifier", + "src": "6414:12:74" + }, + "nativeSrc": "6414:20:74", + "nodeType": "YulFunctionCall", + "src": "6414:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6405:5:74", + "nodeType": "YulIdentifier", + "src": "6405:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6470:5:74", + "nodeType": "YulIdentifier", + "src": "6470:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "6443:26:74", + "nodeType": "YulIdentifier", + "src": "6443:26:74" + }, + "nativeSrc": "6443:33:74", + "nodeType": "YulFunctionCall", + "src": "6443:33:74" + }, + "nativeSrc": "6443:33:74", + "nodeType": "YulExpressionStatement", + "src": "6443:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "6343:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6373:6:74", + "nodeType": "YulTypedName", + "src": "6373:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6381:3:74", + "nodeType": "YulTypedName", + "src": "6381:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6389:5:74", + "nodeType": "YulTypedName", + "src": "6389:5:74", + "type": "" + } + ], + "src": "6343:139:74" + }, + { + "body": { + "nativeSrc": "6571:391:74", + "nodeType": "YulBlock", + "src": "6571:391:74", + "statements": [ + { + "body": { + "nativeSrc": "6617:83:74", + "nodeType": "YulBlock", + "src": "6617:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6619:77:74", + "nodeType": "YulIdentifier", + "src": "6619:77:74" + }, + "nativeSrc": "6619:79:74", + "nodeType": "YulFunctionCall", + "src": "6619:79:74" + }, + "nativeSrc": "6619:79:74", + "nodeType": "YulExpressionStatement", + "src": "6619:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6592:7:74", + "nodeType": "YulIdentifier", + "src": "6592:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6601:9:74", + "nodeType": "YulIdentifier", + "src": "6601:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6588:3:74", + "nodeType": "YulIdentifier", + "src": "6588:3:74" + }, + "nativeSrc": "6588:23:74", + "nodeType": "YulFunctionCall", + "src": "6588:23:74" + }, + { + "kind": "number", + "nativeSrc": "6613:2:74", + "nodeType": "YulLiteral", + "src": "6613:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6584:3:74", + "nodeType": "YulIdentifier", + "src": "6584:3:74" + }, + "nativeSrc": "6584:32:74", + "nodeType": "YulFunctionCall", + "src": "6584:32:74" + }, + "nativeSrc": "6581:119:74", + "nodeType": "YulIf", + "src": "6581:119:74" + }, + { + "nativeSrc": "6710:117:74", + "nodeType": "YulBlock", + "src": "6710:117:74", + "statements": [ + { + "nativeSrc": "6725:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6725:15:74", + "value": { + "kind": "number", + "nativeSrc": "6739:1:74", + "nodeType": "YulLiteral", + "src": "6739:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6729:6:74", + "nodeType": "YulTypedName", + "src": "6729:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6754:63:74", + "nodeType": "YulAssignment", + "src": "6754:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6789:9:74", + "nodeType": "YulIdentifier", + "src": "6789:9:74" + }, + { + "name": "offset", + "nativeSrc": "6800:6:74", + "nodeType": "YulIdentifier", + "src": "6800:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6785:3:74", + "nodeType": "YulIdentifier", + "src": "6785:3:74" + }, + "nativeSrc": "6785:22:74", + "nodeType": "YulFunctionCall", + "src": "6785:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6809:7:74", + "nodeType": "YulIdentifier", + "src": "6809:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "6764:20:74", + "nodeType": "YulIdentifier", + "src": "6764:20:74" + }, + "nativeSrc": "6764:53:74", + "nodeType": "YulFunctionCall", + "src": "6764:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6754:6:74", + "nodeType": "YulIdentifier", + "src": "6754:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6837:118:74", + "nodeType": "YulBlock", + "src": "6837:118:74", + "statements": [ + { + "nativeSrc": "6852:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6852:16:74", + "value": { + "kind": "number", + "nativeSrc": "6866:2:74", + "nodeType": "YulLiteral", + "src": "6866:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6856:6:74", + "nodeType": "YulTypedName", + "src": "6856:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6882:63:74", + "nodeType": "YulAssignment", + "src": "6882:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6917:9:74", + "nodeType": "YulIdentifier", + "src": "6917:9:74" + }, + { + "name": "offset", + "nativeSrc": "6928:6:74", + "nodeType": "YulIdentifier", + "src": "6928:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6913:3:74", + "nodeType": "YulIdentifier", + "src": "6913:3:74" + }, + "nativeSrc": "6913:22:74", + "nodeType": "YulFunctionCall", + "src": "6913:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6937:7:74", + "nodeType": "YulIdentifier", + "src": "6937:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6892:20:74", + "nodeType": "YulIdentifier", + "src": "6892:20:74" + }, + "nativeSrc": "6892:53:74", + "nodeType": "YulFunctionCall", + "src": "6892:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6882:6:74", + "nodeType": "YulIdentifier", + "src": "6882:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_address", + "nativeSrc": "6488:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6533:9:74", + "nodeType": "YulTypedName", + "src": "6533:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6544:7:74", + "nodeType": "YulTypedName", + "src": "6544:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6556:6:74", + "nodeType": "YulTypedName", + "src": "6556:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6564:6:74", + "nodeType": "YulTypedName", + "src": "6564:6:74", + "type": "" + } + ], + "src": "6488:474:74" + }, + { + "body": { + "nativeSrc": "7010:78:74", + "nodeType": "YulBlock", + "src": "7010:78:74", + "statements": [ + { + "body": { + "nativeSrc": "7066:16:74", + "nodeType": "YulBlock", + "src": "7066:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7075:1:74", + "nodeType": "YulLiteral", + "src": "7075:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7078:1:74", + "nodeType": "YulLiteral", + "src": "7078:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7068:6:74", + "nodeType": "YulIdentifier", + "src": "7068:6:74" + }, + "nativeSrc": "7068:12:74", + "nodeType": "YulFunctionCall", + "src": "7068:12:74" + }, + "nativeSrc": "7068:12:74", + "nodeType": "YulExpressionStatement", + "src": "7068:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7033:5:74", + "nodeType": "YulIdentifier", + "src": "7033:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7057:5:74", + "nodeType": "YulIdentifier", + "src": "7057:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "7040:16:74", + "nodeType": "YulIdentifier", + "src": "7040:16:74" + }, + "nativeSrc": "7040:23:74", + "nodeType": "YulFunctionCall", + "src": "7040:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "7030:2:74", + "nodeType": "YulIdentifier", + "src": "7030:2:74" + }, + "nativeSrc": "7030:34:74", + "nodeType": "YulFunctionCall", + "src": "7030:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "7023:6:74", + "nodeType": "YulIdentifier", + "src": "7023:6:74" + }, + "nativeSrc": "7023:42:74", + "nodeType": "YulFunctionCall", + "src": "7023:42:74" + }, + "nativeSrc": "7020:62:74", + "nodeType": "YulIf", + "src": "7020:62:74" + } + ] + }, + "name": "validator_revert_t_uint64", + "nativeSrc": "6968:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7003:5:74", + "nodeType": "YulTypedName", + "src": "7003:5:74", + "type": "" + } + ], + "src": "6968:120:74" + }, + { + "body": { + "nativeSrc": "7145:86:74", + "nodeType": "YulBlock", + "src": "7145:86:74", + "statements": [ + { + "nativeSrc": "7155:29:74", + "nodeType": "YulAssignment", + "src": "7155:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "7177:6:74", + "nodeType": "YulIdentifier", + "src": "7177:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "7164:12:74", + "nodeType": "YulIdentifier", + "src": "7164:12:74" + }, + "nativeSrc": "7164:20:74", + "nodeType": "YulFunctionCall", + "src": "7164:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "7155:5:74", + "nodeType": "YulIdentifier", + "src": "7155:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7219:5:74", + "nodeType": "YulIdentifier", + "src": "7219:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint64", + "nativeSrc": "7193:25:74", + "nodeType": "YulIdentifier", + "src": "7193:25:74" + }, + "nativeSrc": "7193:32:74", + "nodeType": "YulFunctionCall", + "src": "7193:32:74" + }, + "nativeSrc": "7193:32:74", + "nodeType": "YulExpressionStatement", + "src": "7193:32:74" + } + ] + }, + "name": "abi_decode_t_uint64", + "nativeSrc": "7094:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "7123:6:74", + "nodeType": "YulTypedName", + "src": "7123:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "7131:3:74", + "nodeType": "YulTypedName", + "src": "7131:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "7139:5:74", + "nodeType": "YulTypedName", + "src": "7139:5:74", + "type": "" + } + ], + "src": "7094:137:74" + }, + { + "body": { + "nativeSrc": "7319:390:74", + "nodeType": "YulBlock", + "src": "7319:390:74", + "statements": [ + { + "body": { + "nativeSrc": "7365:83:74", + "nodeType": "YulBlock", + "src": "7365:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "7367:77:74", + "nodeType": "YulIdentifier", + "src": "7367:77:74" + }, + "nativeSrc": "7367:79:74", + "nodeType": "YulFunctionCall", + "src": "7367:79:74" + }, + "nativeSrc": "7367:79:74", + "nodeType": "YulExpressionStatement", + "src": "7367:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "7340:7:74", + "nodeType": "YulIdentifier", + "src": "7340:7:74" + }, + { + "name": "headStart", + "nativeSrc": "7349:9:74", + "nodeType": "YulIdentifier", + "src": "7349:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7336:3:74", + "nodeType": "YulIdentifier", + "src": "7336:3:74" + }, + "nativeSrc": "7336:23:74", + "nodeType": "YulFunctionCall", + "src": "7336:23:74" + }, + { + "kind": "number", + "nativeSrc": "7361:2:74", + "nodeType": "YulLiteral", + "src": "7361:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "7332:3:74", + "nodeType": "YulIdentifier", + "src": "7332:3:74" + }, + "nativeSrc": "7332:32:74", + "nodeType": "YulFunctionCall", + "src": "7332:32:74" + }, + "nativeSrc": "7329:119:74", + "nodeType": "YulIf", + "src": "7329:119:74" + }, + { + "nativeSrc": "7458:117:74", + "nodeType": "YulBlock", + "src": "7458:117:74", + "statements": [ + { + "nativeSrc": "7473:15:74", + "nodeType": "YulVariableDeclaration", + "src": "7473:15:74", + "value": { + "kind": "number", + "nativeSrc": "7487:1:74", + "nodeType": "YulLiteral", + "src": "7487:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7477:6:74", + "nodeType": "YulTypedName", + "src": "7477:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7502:63:74", + "nodeType": "YulAssignment", + "src": "7502:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7537:9:74", + "nodeType": "YulIdentifier", + "src": "7537:9:74" + }, + { + "name": "offset", + "nativeSrc": "7548:6:74", + "nodeType": "YulIdentifier", + "src": "7548:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7533:3:74", + "nodeType": "YulIdentifier", + "src": "7533:3:74" + }, + "nativeSrc": "7533:22:74", + "nodeType": "YulFunctionCall", + "src": "7533:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7557:7:74", + "nodeType": "YulIdentifier", + "src": "7557:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "7512:20:74", + "nodeType": "YulIdentifier", + "src": "7512:20:74" + }, + "nativeSrc": "7512:53:74", + "nodeType": "YulFunctionCall", + "src": "7512:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "7502:6:74", + "nodeType": "YulIdentifier", + "src": "7502:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "7585:117:74", + "nodeType": "YulBlock", + "src": "7585:117:74", + "statements": [ + { + "nativeSrc": "7600:16:74", + "nodeType": "YulVariableDeclaration", + "src": "7600:16:74", + "value": { + "kind": "number", + "nativeSrc": "7614:2:74", + "nodeType": "YulLiteral", + "src": "7614:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "7604:6:74", + "nodeType": "YulTypedName", + "src": "7604:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7630:62:74", + "nodeType": "YulAssignment", + "src": "7630:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7664:9:74", + "nodeType": "YulIdentifier", + "src": "7664:9:74" + }, + { + "name": "offset", + "nativeSrc": "7675:6:74", + "nodeType": "YulIdentifier", + "src": "7675:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7660:3:74", + "nodeType": "YulIdentifier", + "src": "7660:3:74" + }, + "nativeSrc": "7660:22:74", + "nodeType": "YulFunctionCall", + "src": "7660:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "7684:7:74", + "nodeType": "YulIdentifier", + "src": "7684:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "7640:19:74", + "nodeType": "YulIdentifier", + "src": "7640:19:74" + }, + "nativeSrc": "7640:52:74", + "nodeType": "YulFunctionCall", + "src": "7640:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "7630:6:74", + "nodeType": "YulIdentifier", + "src": "7630:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint64", + "nativeSrc": "7237:472:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7281:9:74", + "nodeType": "YulTypedName", + "src": "7281:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "7292:7:74", + "nodeType": "YulTypedName", + "src": "7292:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "7304:6:74", + "nodeType": "YulTypedName", + "src": "7304:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "7312:6:74", + "nodeType": "YulTypedName", + "src": "7312:6:74", + "type": "" + } + ], + "src": "7237:472:74" + }, + { + "body": { + "nativeSrc": "7804:28:74", + "nodeType": "YulBlock", + "src": "7804:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7821:1:74", + "nodeType": "YulLiteral", + "src": "7821:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7824:1:74", + "nodeType": "YulLiteral", + "src": "7824:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7814:6:74", + "nodeType": "YulIdentifier", + "src": "7814:6:74" + }, + "nativeSrc": "7814:12:74", + "nodeType": "YulFunctionCall", + "src": "7814:12:74" + }, + "nativeSrc": "7814:12:74", + "nodeType": "YulExpressionStatement", + "src": "7814:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "7715:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7715:117:74" + }, + { + "body": { + "nativeSrc": "7927:28:74", + "nodeType": "YulBlock", + "src": "7927:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7944:1:74", + "nodeType": "YulLiteral", + "src": "7944:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7947:1:74", + "nodeType": "YulLiteral", + "src": "7947:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7937:6:74", + "nodeType": "YulIdentifier", + "src": "7937:6:74" + }, + "nativeSrc": "7937:12:74", + "nodeType": "YulFunctionCall", + "src": "7937:12:74" + }, + "nativeSrc": "7937:12:74", + "nodeType": "YulExpressionStatement", + "src": "7937:12:74" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "7838:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7838:117:74" + }, + { + "body": { + "nativeSrc": "8050:28:74", + "nodeType": "YulBlock", + "src": "8050:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "8067:1:74", + "nodeType": "YulLiteral", + "src": "8067:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "8070:1:74", + "nodeType": "YulLiteral", + "src": "8070:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "8060:6:74", + "nodeType": "YulIdentifier", + "src": "8060:6:74" + }, + "nativeSrc": "8060:12:74", + "nodeType": "YulFunctionCall", + "src": "8060:12:74" + }, + "nativeSrc": "8060:12:74", + "nodeType": "YulExpressionStatement", + "src": "8060:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "7961:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7961:117:74" + }, + { + "body": { + "nativeSrc": "8171:478:74", + "nodeType": "YulBlock", + "src": "8171:478:74", + "statements": [ + { + "body": { + "nativeSrc": "8220:83:74", + "nodeType": "YulBlock", + "src": "8220:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "8222:77:74", + "nodeType": "YulIdentifier", + "src": "8222:77:74" + }, + "nativeSrc": "8222:79:74", + "nodeType": "YulFunctionCall", + "src": "8222:79:74" + }, + "nativeSrc": "8222:79:74", + "nodeType": "YulExpressionStatement", + "src": "8222:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8199:6:74", + "nodeType": "YulIdentifier", + "src": "8199:6:74" + }, + { + "kind": "number", + "nativeSrc": "8207:4:74", + "nodeType": "YulLiteral", + "src": "8207:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8195:3:74", + "nodeType": "YulIdentifier", + "src": "8195:3:74" + }, + "nativeSrc": "8195:17:74", + "nodeType": "YulFunctionCall", + "src": "8195:17:74" + }, + { + "name": "end", + "nativeSrc": "8214:3:74", + "nodeType": "YulIdentifier", + "src": "8214:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8191:3:74", + "nodeType": "YulIdentifier", + "src": "8191:3:74" + }, + "nativeSrc": "8191:27:74", + "nodeType": "YulFunctionCall", + "src": "8191:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8184:6:74", + "nodeType": "YulIdentifier", + "src": "8184:6:74" + }, + "nativeSrc": "8184:35:74", + "nodeType": "YulFunctionCall", + "src": "8184:35:74" + }, + "nativeSrc": "8181:122:74", + "nodeType": "YulIf", + "src": "8181:122:74" + }, + { + "nativeSrc": "8312:30:74", + "nodeType": "YulAssignment", + "src": "8312:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8335:6:74", + "nodeType": "YulIdentifier", + "src": "8335:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8322:12:74", + "nodeType": "YulIdentifier", + "src": "8322:12:74" + }, + "nativeSrc": "8322:20:74", + "nodeType": "YulFunctionCall", + "src": "8322:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "8312:6:74", + "nodeType": "YulIdentifier", + "src": "8312:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "8385:83:74", + "nodeType": "YulBlock", + "src": "8385:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "8387:77:74", + "nodeType": "YulIdentifier", + "src": "8387:77:74" + }, + "nativeSrc": "8387:79:74", + "nodeType": "YulFunctionCall", + "src": "8387:79:74" + }, + "nativeSrc": "8387:79:74", + "nodeType": "YulExpressionStatement", + "src": "8387:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "8357:6:74", + "nodeType": "YulIdentifier", + "src": "8357:6:74" + }, + { + "kind": "number", + "nativeSrc": "8365:18:74", + "nodeType": "YulLiteral", + "src": "8365:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8354:2:74", + "nodeType": "YulIdentifier", + "src": "8354:2:74" + }, + "nativeSrc": "8354:30:74", + "nodeType": "YulFunctionCall", + "src": "8354:30:74" + }, + "nativeSrc": "8351:117:74", + "nodeType": "YulIf", + "src": "8351:117:74" + }, + { + "nativeSrc": "8477:29:74", + "nodeType": "YulAssignment", + "src": "8477:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8493:6:74", + "nodeType": "YulIdentifier", + "src": "8493:6:74" + }, + { + "kind": "number", + "nativeSrc": "8501:4:74", + "nodeType": "YulLiteral", + "src": "8501:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8489:3:74", + "nodeType": "YulIdentifier", + "src": "8489:3:74" + }, + "nativeSrc": "8489:17:74", + "nodeType": "YulFunctionCall", + "src": "8489:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "8477:8:74", + "nodeType": "YulIdentifier", + "src": "8477:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "8560:83:74", + "nodeType": "YulBlock", + "src": "8560:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "8562:77:74", + "nodeType": "YulIdentifier", + "src": "8562:77:74" + }, + "nativeSrc": "8562:79:74", + "nodeType": "YulFunctionCall", + "src": "8562:79:74" + }, + "nativeSrc": "8562:79:74", + "nodeType": "YulExpressionStatement", + "src": "8562:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "8525:8:74", + "nodeType": "YulIdentifier", + "src": "8525:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "8539:6:74", + "nodeType": "YulIdentifier", + "src": "8539:6:74" + }, + { + "kind": "number", + "nativeSrc": "8547:4:74", + "nodeType": "YulLiteral", + "src": "8547:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "8535:3:74", + "nodeType": "YulIdentifier", + "src": "8535:3:74" + }, + "nativeSrc": "8535:17:74", + "nodeType": "YulFunctionCall", + "src": "8535:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8521:3:74", + "nodeType": "YulIdentifier", + "src": "8521:3:74" + }, + "nativeSrc": "8521:32:74", + "nodeType": "YulFunctionCall", + "src": "8521:32:74" + }, + { + "name": "end", + "nativeSrc": "8555:3:74", + "nodeType": "YulIdentifier", + "src": "8555:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8518:2:74", + "nodeType": "YulIdentifier", + "src": "8518:2:74" + }, + "nativeSrc": "8518:41:74", + "nodeType": "YulFunctionCall", + "src": "8518:41:74" + }, + "nativeSrc": "8515:128:74", + "nodeType": "YulIf", + "src": "8515:128:74" + } + ] + }, + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "8097:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8138:6:74", + "nodeType": "YulTypedName", + "src": "8138:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8146:3:74", + "nodeType": "YulTypedName", + "src": "8146:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "8154:8:74", + "nodeType": "YulTypedName", + "src": "8154:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8164:6:74", + "nodeType": "YulTypedName", + "src": "8164:6:74", + "type": "" + } + ], + "src": "8097:552:74" + }, + { + "body": { + "nativeSrc": "8791:827:74", + "nodeType": "YulBlock", + "src": "8791:827:74", + "statements": [ + { + "body": { + "nativeSrc": "8838:83:74", + "nodeType": "YulBlock", + "src": "8838:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "8840:77:74", + "nodeType": "YulIdentifier", + "src": "8840:77:74" + }, + "nativeSrc": "8840:79:74", + "nodeType": "YulFunctionCall", + "src": "8840:79:74" + }, + "nativeSrc": "8840:79:74", + "nodeType": "YulExpressionStatement", + "src": "8840:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "8812:7:74", + "nodeType": "YulIdentifier", + "src": "8812:7:74" + }, + { + "name": "headStart", + "nativeSrc": "8821:9:74", + "nodeType": "YulIdentifier", + "src": "8821:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8808:3:74", + "nodeType": "YulIdentifier", + "src": "8808:3:74" + }, + "nativeSrc": "8808:23:74", + "nodeType": "YulFunctionCall", + "src": "8808:23:74" + }, + { + "kind": "number", + "nativeSrc": "8833:3:74", + "nodeType": "YulLiteral", + "src": "8833:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8804:3:74", + "nodeType": "YulIdentifier", + "src": "8804:3:74" + }, + "nativeSrc": "8804:33:74", + "nodeType": "YulFunctionCall", + "src": "8804:33:74" + }, + "nativeSrc": "8801:120:74", + "nodeType": "YulIf", + "src": "8801:120:74" + }, + { + "nativeSrc": "8931:117:74", + "nodeType": "YulBlock", + "src": "8931:117:74", + "statements": [ + { + "nativeSrc": "8946:15:74", + "nodeType": "YulVariableDeclaration", + "src": "8946:15:74", + "value": { + "kind": "number", + "nativeSrc": "8960:1:74", + "nodeType": "YulLiteral", + "src": "8960:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8950:6:74", + "nodeType": "YulTypedName", + "src": "8950:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8975:63:74", + "nodeType": "YulAssignment", + "src": "8975:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9010:9:74", + "nodeType": "YulIdentifier", + "src": "9010:9:74" + }, + { + "name": "offset", + "nativeSrc": "9021:6:74", + "nodeType": "YulIdentifier", + "src": "9021:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9006:3:74", + "nodeType": "YulIdentifier", + "src": "9006:3:74" + }, + "nativeSrc": "9006:22:74", + "nodeType": "YulFunctionCall", + "src": "9006:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9030:7:74", + "nodeType": "YulIdentifier", + "src": "9030:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "8985:20:74", + "nodeType": "YulIdentifier", + "src": "8985:20:74" + }, + "nativeSrc": "8985:53:74", + "nodeType": "YulFunctionCall", + "src": "8985:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8975:6:74", + "nodeType": "YulIdentifier", + "src": "8975:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9058:118:74", + "nodeType": "YulBlock", + "src": "9058:118:74", + "statements": [ + { + "nativeSrc": "9073:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9073:16:74", + "value": { + "kind": "number", + "nativeSrc": "9087:2:74", + "nodeType": "YulLiteral", + "src": "9087:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9077:6:74", + "nodeType": "YulTypedName", + "src": "9077:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9103:63:74", + "nodeType": "YulAssignment", + "src": "9103:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9138:9:74", + "nodeType": "YulIdentifier", + "src": "9138:9:74" + }, + { + "name": "offset", + "nativeSrc": "9149:6:74", + "nodeType": "YulIdentifier", + "src": "9149:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9134:3:74", + "nodeType": "YulIdentifier", + "src": "9134:3:74" + }, + "nativeSrc": "9134:22:74", + "nodeType": "YulFunctionCall", + "src": "9134:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9158:7:74", + "nodeType": "YulIdentifier", + "src": "9158:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9113:20:74", + "nodeType": "YulIdentifier", + "src": "9113:20:74" + }, + "nativeSrc": "9113:53:74", + "nodeType": "YulFunctionCall", + "src": "9113:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "9103:6:74", + "nodeType": "YulIdentifier", + "src": "9103:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9186:118:74", + "nodeType": "YulBlock", + "src": "9186:118:74", + "statements": [ + { + "nativeSrc": "9201:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9201:16:74", + "value": { + "kind": "number", + "nativeSrc": "9215:2:74", + "nodeType": "YulLiteral", + "src": "9215:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9205:6:74", + "nodeType": "YulTypedName", + "src": "9205:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9231:63:74", + "nodeType": "YulAssignment", + "src": "9231:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9266:9:74", + "nodeType": "YulIdentifier", + "src": "9266:9:74" + }, + { + "name": "offset", + "nativeSrc": "9277:6:74", + "nodeType": "YulIdentifier", + "src": "9277:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9262:3:74", + "nodeType": "YulIdentifier", + "src": "9262:3:74" + }, + "nativeSrc": "9262:22:74", + "nodeType": "YulFunctionCall", + "src": "9262:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9286:7:74", + "nodeType": "YulIdentifier", + "src": "9286:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "9241:20:74", + "nodeType": "YulIdentifier", + "src": "9241:20:74" + }, + "nativeSrc": "9241:53:74", + "nodeType": "YulFunctionCall", + "src": "9241:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "9231:6:74", + "nodeType": "YulIdentifier", + "src": "9231:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9314:297:74", + "nodeType": "YulBlock", + "src": "9314:297:74", + "statements": [ + { + "nativeSrc": "9329:46:74", + "nodeType": "YulVariableDeclaration", + "src": "9329:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9360:9:74", + "nodeType": "YulIdentifier", + "src": "9360:9:74" + }, + { + "kind": "number", + "nativeSrc": "9371:2:74", + "nodeType": "YulLiteral", + "src": "9371:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9356:3:74", + "nodeType": "YulIdentifier", + "src": "9356:3:74" + }, + "nativeSrc": "9356:18:74", + "nodeType": "YulFunctionCall", + "src": "9356:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "9343:12:74", + "nodeType": "YulIdentifier", + "src": "9343:12:74" + }, + "nativeSrc": "9343:32:74", + "nodeType": "YulFunctionCall", + "src": "9343:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9333:6:74", + "nodeType": "YulTypedName", + "src": "9333:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9422:83:74", + "nodeType": "YulBlock", + "src": "9422:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "9424:77:74", + "nodeType": "YulIdentifier", + "src": "9424:77:74" + }, + "nativeSrc": "9424:79:74", + "nodeType": "YulFunctionCall", + "src": "9424:79:74" + }, + "nativeSrc": "9424:79:74", + "nodeType": "YulExpressionStatement", + "src": "9424:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9394:6:74", + "nodeType": "YulIdentifier", + "src": "9394:6:74" + }, + { + "kind": "number", + "nativeSrc": "9402:18:74", + "nodeType": "YulLiteral", + "src": "9402:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9391:2:74", + "nodeType": "YulIdentifier", + "src": "9391:2:74" + }, + "nativeSrc": "9391:30:74", + "nodeType": "YulFunctionCall", + "src": "9391:30:74" + }, + "nativeSrc": "9388:117:74", + "nodeType": "YulIf", + "src": "9388:117:74" + }, + { + "nativeSrc": "9519:82:74", + "nodeType": "YulAssignment", + "src": "9519:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9573:9:74", + "nodeType": "YulIdentifier", + "src": "9573:9:74" + }, + { + "name": "offset", + "nativeSrc": "9584:6:74", + "nodeType": "YulIdentifier", + "src": "9584:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9569:3:74", + "nodeType": "YulIdentifier", + "src": "9569:3:74" + }, + "nativeSrc": "9569:22:74", + "nodeType": "YulFunctionCall", + "src": "9569:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9593:7:74", + "nodeType": "YulIdentifier", + "src": "9593:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "9537:31:74", + "nodeType": "YulIdentifier", + "src": "9537:31:74" + }, + "nativeSrc": "9537:64:74", + "nodeType": "YulFunctionCall", + "src": "9537:64:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "9519:6:74", + "nodeType": "YulIdentifier", + "src": "9519:6:74" + }, + { + "name": "value4", + "nativeSrc": "9527:6:74", + "nodeType": "YulIdentifier", + "src": "9527:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_calldata_ptr", + "nativeSrc": "8655:963:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8729:9:74", + "nodeType": "YulTypedName", + "src": "8729:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "8740:7:74", + "nodeType": "YulTypedName", + "src": "8740:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "8752:6:74", + "nodeType": "YulTypedName", + "src": "8752:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8760:6:74", + "nodeType": "YulTypedName", + "src": "8760:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "8768:6:74", + "nodeType": "YulTypedName", + "src": "8768:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "8776:6:74", + "nodeType": "YulTypedName", + "src": "8776:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "8784:6:74", + "nodeType": "YulTypedName", + "src": "8784:6:74", + "type": "" + } + ], + "src": "8655:963:74" + }, + { + "body": { + "nativeSrc": "9687:52:74", + "nodeType": "YulBlock", + "src": "9687:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "9704:3:74", + "nodeType": "YulIdentifier", + "src": "9704:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "9726:5:74", + "nodeType": "YulIdentifier", + "src": "9726:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "9709:16:74", + "nodeType": "YulIdentifier", + "src": "9709:16:74" + }, + "nativeSrc": "9709:23:74", + "nodeType": "YulFunctionCall", + "src": "9709:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9697:6:74", + "nodeType": "YulIdentifier", + "src": "9697:6:74" + }, + "nativeSrc": "9697:36:74", + "nodeType": "YulFunctionCall", + "src": "9697:36:74" + }, + "nativeSrc": "9697:36:74", + "nodeType": "YulExpressionStatement", + "src": "9697:36:74" + } + ] + }, + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "9624:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9675:5:74", + "nodeType": "YulTypedName", + "src": "9675:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "9682:3:74", + "nodeType": "YulTypedName", + "src": "9682:3:74", + "type": "" + } + ], + "src": "9624:115:74" + }, + { + "body": { + "nativeSrc": "9841:122:74", + "nodeType": "YulBlock", + "src": "9841:122:74", + "statements": [ + { + "nativeSrc": "9851:26:74", + "nodeType": "YulAssignment", + "src": "9851:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9863:9:74", + "nodeType": "YulIdentifier", + "src": "9863:9:74" + }, + { + "kind": "number", + "nativeSrc": "9874:2:74", + "nodeType": "YulLiteral", + "src": "9874:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9859:3:74", + "nodeType": "YulIdentifier", + "src": "9859:3:74" + }, + "nativeSrc": "9859:18:74", + "nodeType": "YulFunctionCall", + "src": "9859:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "9851:4:74", + "nodeType": "YulIdentifier", + "src": "9851:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "9929:6:74", + "nodeType": "YulIdentifier", + "src": "9929:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9942:9:74", + "nodeType": "YulIdentifier", + "src": "9942:9:74" + }, + { + "kind": "number", + "nativeSrc": "9953:1:74", + "nodeType": "YulLiteral", + "src": "9953:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9938:3:74", + "nodeType": "YulIdentifier", + "src": "9938:3:74" + }, + "nativeSrc": "9938:17:74", + "nodeType": "YulFunctionCall", + "src": "9938:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "9887:41:74", + "nodeType": "YulIdentifier", + "src": "9887:41:74" + }, + "nativeSrc": "9887:69:74", + "nodeType": "YulFunctionCall", + "src": "9887:69:74" + }, + "nativeSrc": "9887:69:74", + "nodeType": "YulExpressionStatement", + "src": "9887:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed", + "nativeSrc": "9745:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9813:9:74", + "nodeType": "YulTypedName", + "src": "9813:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "9825:6:74", + "nodeType": "YulTypedName", + "src": "9825:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "9836:4:74", + "nodeType": "YulTypedName", + "src": "9836:4:74", + "type": "" + } + ], + "src": "9745:218:74" + }, + { + "body": { + "nativeSrc": "10039:51:74", + "nodeType": "YulBlock", + "src": "10039:51:74", + "statements": [ + { + "nativeSrc": "10049:35:74", + "nodeType": "YulAssignment", + "src": "10049:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "10078:5:74", + "nodeType": "YulIdentifier", + "src": "10078:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "10060:17:74", + "nodeType": "YulIdentifier", + "src": "10060:17:74" + }, + "nativeSrc": "10060:24:74", + "nodeType": "YulFunctionCall", + "src": "10060:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "10049:7:74", + "nodeType": "YulIdentifier", + "src": "10049:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_IMetadataService_$9690", + "nativeSrc": "9969:121:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10021:5:74", + "nodeType": "YulTypedName", + "src": "10021:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "10031:7:74", + "nodeType": "YulTypedName", + "src": "10031:7:74", + "type": "" + } + ], + "src": "9969:121:74" + }, + { + "body": { + "nativeSrc": "10164:104:74", + "nodeType": "YulBlock", + "src": "10164:104:74", + "statements": [ + { + "body": { + "nativeSrc": "10246:16:74", + "nodeType": "YulBlock", + "src": "10246:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10255:1:74", + "nodeType": "YulLiteral", + "src": "10255:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10258:1:74", + "nodeType": "YulLiteral", + "src": "10258:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "10248:6:74", + "nodeType": "YulIdentifier", + "src": "10248:6:74" + }, + "nativeSrc": "10248:12:74", + "nodeType": "YulFunctionCall", + "src": "10248:12:74" + }, + "nativeSrc": "10248:12:74", + "nodeType": "YulExpressionStatement", + "src": "10248:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10187:5:74", + "nodeType": "YulIdentifier", + "src": "10187:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10237:5:74", + "nodeType": "YulIdentifier", + "src": "10237:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_IMetadataService_$9690", + "nativeSrc": "10194:42:74", + "nodeType": "YulIdentifier", + "src": "10194:42:74" + }, + "nativeSrc": "10194:49:74", + "nodeType": "YulFunctionCall", + "src": "10194:49:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "10184:2:74", + "nodeType": "YulIdentifier", + "src": "10184:2:74" + }, + "nativeSrc": "10184:60:74", + "nodeType": "YulFunctionCall", + "src": "10184:60:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "10177:6:74", + "nodeType": "YulIdentifier", + "src": "10177:6:74" + }, + "nativeSrc": "10177:68:74", + "nodeType": "YulFunctionCall", + "src": "10177:68:74" + }, + "nativeSrc": "10174:88:74", + "nodeType": "YulIf", + "src": "10174:88:74" + } + ] + }, + "name": "validator_revert_t_contract$_IMetadataService_$9690", + "nativeSrc": "10096:172:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10157:5:74", + "nodeType": "YulTypedName", + "src": "10157:5:74", + "type": "" + } + ], + "src": "10096:172:74" + }, + { + "body": { + "nativeSrc": "10351:112:74", + "nodeType": "YulBlock", + "src": "10351:112:74", + "statements": [ + { + "nativeSrc": "10361:29:74", + "nodeType": "YulAssignment", + "src": "10361:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "10383:6:74", + "nodeType": "YulIdentifier", + "src": "10383:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "10370:12:74", + "nodeType": "YulIdentifier", + "src": "10370:12:74" + }, + "nativeSrc": "10370:20:74", + "nodeType": "YulFunctionCall", + "src": "10370:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "10361:5:74", + "nodeType": "YulIdentifier", + "src": "10361:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "10451:5:74", + "nodeType": "YulIdentifier", + "src": "10451:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_IMetadataService_$9690", + "nativeSrc": "10399:51:74", + "nodeType": "YulIdentifier", + "src": "10399:51:74" + }, + "nativeSrc": "10399:58:74", + "nodeType": "YulFunctionCall", + "src": "10399:58:74" + }, + "nativeSrc": "10399:58:74", + "nodeType": "YulExpressionStatement", + "src": "10399:58:74" + } + ] + }, + "name": "abi_decode_t_contract$_IMetadataService_$9690", + "nativeSrc": "10274:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "10329:6:74", + "nodeType": "YulTypedName", + "src": "10329:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "10337:3:74", + "nodeType": "YulTypedName", + "src": "10337:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "10345:5:74", + "nodeType": "YulTypedName", + "src": "10345:5:74", + "type": "" + } + ], + "src": "10274:189:74" + }, + { + "body": { + "nativeSrc": "10560:288:74", + "nodeType": "YulBlock", + "src": "10560:288:74", + "statements": [ + { + "body": { + "nativeSrc": "10606:83:74", + "nodeType": "YulBlock", + "src": "10606:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10608:77:74", + "nodeType": "YulIdentifier", + "src": "10608:77:74" + }, + "nativeSrc": "10608:79:74", + "nodeType": "YulFunctionCall", + "src": "10608:79:74" + }, + "nativeSrc": "10608:79:74", + "nodeType": "YulExpressionStatement", + "src": "10608:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10581:7:74", + "nodeType": "YulIdentifier", + "src": "10581:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10590:9:74", + "nodeType": "YulIdentifier", + "src": "10590:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10577:3:74", + "nodeType": "YulIdentifier", + "src": "10577:3:74" + }, + "nativeSrc": "10577:23:74", + "nodeType": "YulFunctionCall", + "src": "10577:23:74" + }, + { + "kind": "number", + "nativeSrc": "10602:2:74", + "nodeType": "YulLiteral", + "src": "10602:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10573:3:74", + "nodeType": "YulIdentifier", + "src": "10573:3:74" + }, + "nativeSrc": "10573:32:74", + "nodeType": "YulFunctionCall", + "src": "10573:32:74" + }, + "nativeSrc": "10570:119:74", + "nodeType": "YulIf", + "src": "10570:119:74" + }, + { + "nativeSrc": "10699:142:74", + "nodeType": "YulBlock", + "src": "10699:142:74", + "statements": [ + { + "nativeSrc": "10714:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10714:15:74", + "value": { + "kind": "number", + "nativeSrc": "10728:1:74", + "nodeType": "YulLiteral", + "src": "10728:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10718:6:74", + "nodeType": "YulTypedName", + "src": "10718:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10743:88:74", + "nodeType": "YulAssignment", + "src": "10743:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10803:9:74", + "nodeType": "YulIdentifier", + "src": "10803:9:74" + }, + { + "name": "offset", + "nativeSrc": "10814:6:74", + "nodeType": "YulIdentifier", + "src": "10814:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10799:3:74", + "nodeType": "YulIdentifier", + "src": "10799:3:74" + }, + "nativeSrc": "10799:22:74", + "nodeType": "YulFunctionCall", + "src": "10799:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10823:7:74", + "nodeType": "YulIdentifier", + "src": "10823:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_IMetadataService_$9690", + "nativeSrc": "10753:45:74", + "nodeType": "YulIdentifier", + "src": "10753:45:74" + }, + "nativeSrc": "10753:78:74", + "nodeType": "YulFunctionCall", + "src": "10753:78:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10743:6:74", + "nodeType": "YulIdentifier", + "src": "10743:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_IMetadataService_$9690", + "nativeSrc": "10469:379:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10530:9:74", + "nodeType": "YulTypedName", + "src": "10530:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10541:7:74", + "nodeType": "YulTypedName", + "src": "10541:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10553:6:74", + "nodeType": "YulTypedName", + "src": "10553:6:74", + "type": "" + } + ], + "src": "10469:379:74" + }, + { + "body": { + "nativeSrc": "10886:28:74", + "nodeType": "YulBlock", + "src": "10886:28:74", + "statements": [ + { + "nativeSrc": "10896:12:74", + "nodeType": "YulAssignment", + "src": "10896:12:74", + "value": { + "name": "value", + "nativeSrc": "10903:5:74", + "nodeType": "YulIdentifier", + "src": "10903:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "10896:3:74", + "nodeType": "YulIdentifier", + "src": "10896:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "10854:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10872:5:74", + "nodeType": "YulTypedName", + "src": "10872:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "10882:3:74", + "nodeType": "YulTypedName", + "src": "10882:3:74", + "type": "" + } + ], + "src": "10854:60:74" + }, + { + "body": { + "nativeSrc": "10980:82:74", + "nodeType": "YulBlock", + "src": "10980:82:74", + "statements": [ + { + "nativeSrc": "10990:66:74", + "nodeType": "YulAssignment", + "src": "10990:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11048:5:74", + "nodeType": "YulIdentifier", + "src": "11048:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "11030:17:74", + "nodeType": "YulIdentifier", + "src": "11030:17:74" + }, + "nativeSrc": "11030:24:74", + "nodeType": "YulFunctionCall", + "src": "11030:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "11021:8:74", + "nodeType": "YulIdentifier", + "src": "11021:8:74" + }, + "nativeSrc": "11021:34:74", + "nodeType": "YulFunctionCall", + "src": "11021:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "11003:17:74", + "nodeType": "YulIdentifier", + "src": "11003:17:74" + }, + "nativeSrc": "11003:53:74", + "nodeType": "YulFunctionCall", + "src": "11003:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "10990:9:74", + "nodeType": "YulIdentifier", + "src": "10990:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "10920:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10960:5:74", + "nodeType": "YulTypedName", + "src": "10960:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "10970:9:74", + "nodeType": "YulTypedName", + "src": "10970:9:74", + "type": "" + } + ], + "src": "10920:142:74" + }, + { + "body": { + "nativeSrc": "11128:66:74", + "nodeType": "YulBlock", + "src": "11128:66:74", + "statements": [ + { + "nativeSrc": "11138:50:74", + "nodeType": "YulAssignment", + "src": "11138:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11182:5:74", + "nodeType": "YulIdentifier", + "src": "11182:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "11151:30:74", + "nodeType": "YulIdentifier", + "src": "11151:30:74" + }, + "nativeSrc": "11151:37:74", + "nodeType": "YulFunctionCall", + "src": "11151:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "11138:9:74", + "nodeType": "YulIdentifier", + "src": "11138:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "11068:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11108:5:74", + "nodeType": "YulTypedName", + "src": "11108:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "11118:9:74", + "nodeType": "YulTypedName", + "src": "11118:9:74", + "type": "" + } + ], + "src": "11068:126:74" + }, + { + "body": { + "nativeSrc": "11289:66:74", + "nodeType": "YulBlock", + "src": "11289:66:74", + "statements": [ + { + "nativeSrc": "11299:50:74", + "nodeType": "YulAssignment", + "src": "11299:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11343:5:74", + "nodeType": "YulIdentifier", + "src": "11343:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "11312:30:74", + "nodeType": "YulIdentifier", + "src": "11312:30:74" + }, + "nativeSrc": "11312:37:74", + "nodeType": "YulFunctionCall", + "src": "11312:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "11299:9:74", + "nodeType": "YulIdentifier", + "src": "11299:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_INameWrapperUpgrade_$10082_to_t_address", + "nativeSrc": "11200:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11269:5:74", + "nodeType": "YulTypedName", + "src": "11269:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "11279:9:74", + "nodeType": "YulTypedName", + "src": "11279:9:74", + "type": "" + } + ], + "src": "11200:155:74" + }, + { + "body": { + "nativeSrc": "11455:95:74", + "nodeType": "YulBlock", + "src": "11455:95:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11472:3:74", + "nodeType": "YulIdentifier", + "src": "11472:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11537:5:74", + "nodeType": "YulIdentifier", + "src": "11537:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_INameWrapperUpgrade_$10082_to_t_address", + "nativeSrc": "11477:59:74", + "nodeType": "YulIdentifier", + "src": "11477:59:74" + }, + "nativeSrc": "11477:66:74", + "nodeType": "YulFunctionCall", + "src": "11477:66:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11465:6:74", + "nodeType": "YulIdentifier", + "src": "11465:6:74" + }, + "nativeSrc": "11465:79:74", + "nodeType": "YulFunctionCall", + "src": "11465:79:74" + }, + "nativeSrc": "11465:79:74", + "nodeType": "YulExpressionStatement", + "src": "11465:79:74" + } + ] + }, + "name": "abi_encode_t_contract$_INameWrapperUpgrade_$10082_to_t_address_fromStack", + "nativeSrc": "11361:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11443:5:74", + "nodeType": "YulTypedName", + "src": "11443:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "11450:3:74", + "nodeType": "YulTypedName", + "src": "11450:3:74", + "type": "" + } + ], + "src": "11361:189:74" + }, + { + "body": { + "nativeSrc": "11683:153:74", + "nodeType": "YulBlock", + "src": "11683:153:74", + "statements": [ + { + "nativeSrc": "11693:26:74", + "nodeType": "YulAssignment", + "src": "11693:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11705:9:74", + "nodeType": "YulIdentifier", + "src": "11705:9:74" + }, + { + "kind": "number", + "nativeSrc": "11716:2:74", + "nodeType": "YulLiteral", + "src": "11716:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11701:3:74", + "nodeType": "YulIdentifier", + "src": "11701:3:74" + }, + "nativeSrc": "11701:18:74", + "nodeType": "YulFunctionCall", + "src": "11701:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11693:4:74", + "nodeType": "YulIdentifier", + "src": "11693:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "11802:6:74", + "nodeType": "YulIdentifier", + "src": "11802:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11815:9:74", + "nodeType": "YulIdentifier", + "src": "11815:9:74" + }, + { + "kind": "number", + "nativeSrc": "11826:1:74", + "nodeType": "YulLiteral", + "src": "11826:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11811:3:74", + "nodeType": "YulIdentifier", + "src": "11811:3:74" + }, + "nativeSrc": "11811:17:74", + "nodeType": "YulFunctionCall", + "src": "11811:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_INameWrapperUpgrade_$10082_to_t_address_fromStack", + "nativeSrc": "11729:72:74", + "nodeType": "YulIdentifier", + "src": "11729:72:74" + }, + "nativeSrc": "11729:100:74", + "nodeType": "YulFunctionCall", + "src": "11729:100:74" + }, + "nativeSrc": "11729:100:74", + "nodeType": "YulExpressionStatement", + "src": "11729:100:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_INameWrapperUpgrade_$10082__to_t_address__fromStack_reversed", + "nativeSrc": "11556:280:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11655:9:74", + "nodeType": "YulTypedName", + "src": "11655:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "11667:6:74", + "nodeType": "YulTypedName", + "src": "11667:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11678:4:74", + "nodeType": "YulTypedName", + "src": "11678:4:74", + "type": "" + } + ], + "src": "11556:280:74" + }, + { + "body": { + "nativeSrc": "11908:263:74", + "nodeType": "YulBlock", + "src": "11908:263:74", + "statements": [ + { + "body": { + "nativeSrc": "11954:83:74", + "nodeType": "YulBlock", + "src": "11954:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "11956:77:74", + "nodeType": "YulIdentifier", + "src": "11956:77:74" + }, + "nativeSrc": "11956:79:74", + "nodeType": "YulFunctionCall", + "src": "11956:79:74" + }, + "nativeSrc": "11956:79:74", + "nodeType": "YulExpressionStatement", + "src": "11956:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "11929:7:74", + "nodeType": "YulIdentifier", + "src": "11929:7:74" + }, + { + "name": "headStart", + "nativeSrc": "11938:9:74", + "nodeType": "YulIdentifier", + "src": "11938:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11925:3:74", + "nodeType": "YulIdentifier", + "src": "11925:3:74" + }, + "nativeSrc": "11925:23:74", + "nodeType": "YulFunctionCall", + "src": "11925:23:74" + }, + { + "kind": "number", + "nativeSrc": "11950:2:74", + "nodeType": "YulLiteral", + "src": "11950:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "11921:3:74", + "nodeType": "YulIdentifier", + "src": "11921:3:74" + }, + "nativeSrc": "11921:32:74", + "nodeType": "YulFunctionCall", + "src": "11921:32:74" + }, + "nativeSrc": "11918:119:74", + "nodeType": "YulIf", + "src": "11918:119:74" + }, + { + "nativeSrc": "12047:117:74", + "nodeType": "YulBlock", + "src": "12047:117:74", + "statements": [ + { + "nativeSrc": "12062:15:74", + "nodeType": "YulVariableDeclaration", + "src": "12062:15:74", + "value": { + "kind": "number", + "nativeSrc": "12076:1:74", + "nodeType": "YulLiteral", + "src": "12076:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "12066:6:74", + "nodeType": "YulTypedName", + "src": "12066:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12091:63:74", + "nodeType": "YulAssignment", + "src": "12091:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12126:9:74", + "nodeType": "YulIdentifier", + "src": "12126:9:74" + }, + { + "name": "offset", + "nativeSrc": "12137:6:74", + "nodeType": "YulIdentifier", + "src": "12137:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12122:3:74", + "nodeType": "YulIdentifier", + "src": "12122:3:74" + }, + "nativeSrc": "12122:22:74", + "nodeType": "YulFunctionCall", + "src": "12122:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12146:7:74", + "nodeType": "YulIdentifier", + "src": "12146:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "12101:20:74", + "nodeType": "YulIdentifier", + "src": "12101:20:74" + }, + "nativeSrc": "12101:53:74", + "nodeType": "YulFunctionCall", + "src": "12101:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "12091:6:74", + "nodeType": "YulIdentifier", + "src": "12091:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "11842:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11878:9:74", + "nodeType": "YulTypedName", + "src": "11878:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "11889:7:74", + "nodeType": "YulTypedName", + "src": "11889:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "11901:6:74", + "nodeType": "YulTypedName", + "src": "11901:6:74", + "type": "" + } + ], + "src": "11842:329:74" + }, + { + "body": { + "nativeSrc": "12235:40:74", + "nodeType": "YulBlock", + "src": "12235:40:74", + "statements": [ + { + "nativeSrc": "12246:22:74", + "nodeType": "YulAssignment", + "src": "12246:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12262:5:74", + "nodeType": "YulIdentifier", + "src": "12262:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "12256:5:74", + "nodeType": "YulIdentifier", + "src": "12256:5:74" + }, + "nativeSrc": "12256:12:74", + "nodeType": "YulFunctionCall", + "src": "12256:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "12246:6:74", + "nodeType": "YulIdentifier", + "src": "12246:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "12177:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12218:5:74", + "nodeType": "YulTypedName", + "src": "12218:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "12228:6:74", + "nodeType": "YulTypedName", + "src": "12228:6:74", + "type": "" + } + ], + "src": "12177:98:74" + }, + { + "body": { + "nativeSrc": "12376:73:74", + "nodeType": "YulBlock", + "src": "12376:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12393:3:74", + "nodeType": "YulIdentifier", + "src": "12393:3:74" + }, + { + "name": "length", + "nativeSrc": "12398:6:74", + "nodeType": "YulIdentifier", + "src": "12398:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12386:6:74", + "nodeType": "YulIdentifier", + "src": "12386:6:74" + }, + "nativeSrc": "12386:19:74", + "nodeType": "YulFunctionCall", + "src": "12386:19:74" + }, + "nativeSrc": "12386:19:74", + "nodeType": "YulExpressionStatement", + "src": "12386:19:74" + }, + { + "nativeSrc": "12414:29:74", + "nodeType": "YulAssignment", + "src": "12414:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12433:3:74", + "nodeType": "YulIdentifier", + "src": "12433:3:74" + }, + { + "kind": "number", + "nativeSrc": "12438:4:74", + "nodeType": "YulLiteral", + "src": "12438:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12429:3:74", + "nodeType": "YulIdentifier", + "src": "12429:3:74" + }, + "nativeSrc": "12429:14:74", + "nodeType": "YulFunctionCall", + "src": "12429:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "12414:11:74", + "nodeType": "YulIdentifier", + "src": "12414:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "12281:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "12348:3:74", + "nodeType": "YulTypedName", + "src": "12348:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "12353:6:74", + "nodeType": "YulTypedName", + "src": "12353:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "12364:11:74", + "nodeType": "YulTypedName", + "src": "12364:11:74", + "type": "" + } + ], + "src": "12281:168:74" + }, + { + "body": { + "nativeSrc": "12545:283:74", + "nodeType": "YulBlock", + "src": "12545:283:74", + "statements": [ + { + "nativeSrc": "12555:52:74", + "nodeType": "YulVariableDeclaration", + "src": "12555:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "12601:5:74", + "nodeType": "YulIdentifier", + "src": "12601:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "12569:31:74", + "nodeType": "YulIdentifier", + "src": "12569:31:74" + }, + "nativeSrc": "12569:38:74", + "nodeType": "YulFunctionCall", + "src": "12569:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "12559:6:74", + "nodeType": "YulTypedName", + "src": "12559:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12616:77:74", + "nodeType": "YulAssignment", + "src": "12616:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12681:3:74", + "nodeType": "YulIdentifier", + "src": "12681:3:74" + }, + { + "name": "length", + "nativeSrc": "12686:6:74", + "nodeType": "YulIdentifier", + "src": "12686:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "12623:57:74", + "nodeType": "YulIdentifier", + "src": "12623:57:74" + }, + "nativeSrc": "12623:70:74", + "nodeType": "YulFunctionCall", + "src": "12623:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12616:3:74", + "nodeType": "YulIdentifier", + "src": "12616:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "12741:5:74", + "nodeType": "YulIdentifier", + "src": "12741:5:74" + }, + { + "kind": "number", + "nativeSrc": "12748:4:74", + "nodeType": "YulLiteral", + "src": "12748:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12737:3:74", + "nodeType": "YulIdentifier", + "src": "12737:3:74" + }, + "nativeSrc": "12737:16:74", + "nodeType": "YulFunctionCall", + "src": "12737:16:74" + }, + { + "name": "pos", + "nativeSrc": "12755:3:74", + "nodeType": "YulIdentifier", + "src": "12755:3:74" + }, + { + "name": "length", + "nativeSrc": "12760:6:74", + "nodeType": "YulIdentifier", + "src": "12760:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "12702:34:74", + "nodeType": "YulIdentifier", + "src": "12702:34:74" + }, + "nativeSrc": "12702:65:74", + "nodeType": "YulFunctionCall", + "src": "12702:65:74" + }, + "nativeSrc": "12702:65:74", + "nodeType": "YulExpressionStatement", + "src": "12702:65:74" + }, + { + "nativeSrc": "12776:46:74", + "nodeType": "YulAssignment", + "src": "12776:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12787:3:74", + "nodeType": "YulIdentifier", + "src": "12787:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "12814:6:74", + "nodeType": "YulIdentifier", + "src": "12814:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "12792:21:74", + "nodeType": "YulIdentifier", + "src": "12792:21:74" + }, + "nativeSrc": "12792:29:74", + "nodeType": "YulFunctionCall", + "src": "12792:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12783:3:74", + "nodeType": "YulIdentifier", + "src": "12783:3:74" + }, + "nativeSrc": "12783:39:74", + "nodeType": "YulFunctionCall", + "src": "12783:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "12776:3:74", + "nodeType": "YulIdentifier", + "src": "12776:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "12455:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "12526:5:74", + "nodeType": "YulTypedName", + "src": "12526:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "12533:3:74", + "nodeType": "YulTypedName", + "src": "12533:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "12541:3:74", + "nodeType": "YulTypedName", + "src": "12541:3:74", + "type": "" + } + ], + "src": "12455:373:74" + }, + { + "body": { + "nativeSrc": "12950:193:74", + "nodeType": "YulBlock", + "src": "12950:193:74", + "statements": [ + { + "nativeSrc": "12960:26:74", + "nodeType": "YulAssignment", + "src": "12960:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12972:9:74", + "nodeType": "YulIdentifier", + "src": "12972:9:74" + }, + { + "kind": "number", + "nativeSrc": "12983:2:74", + "nodeType": "YulLiteral", + "src": "12983:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12968:3:74", + "nodeType": "YulIdentifier", + "src": "12968:3:74" + }, + "nativeSrc": "12968:18:74", + "nodeType": "YulFunctionCall", + "src": "12968:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12960:4:74", + "nodeType": "YulIdentifier", + "src": "12960:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13007:9:74", + "nodeType": "YulIdentifier", + "src": "13007:9:74" + }, + { + "kind": "number", + "nativeSrc": "13018:1:74", + "nodeType": "YulLiteral", + "src": "13018:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13003:3:74", + "nodeType": "YulIdentifier", + "src": "13003:3:74" + }, + "nativeSrc": "13003:17:74", + "nodeType": "YulFunctionCall", + "src": "13003:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "13026:4:74", + "nodeType": "YulIdentifier", + "src": "13026:4:74" + }, + { + "name": "headStart", + "nativeSrc": "13032:9:74", + "nodeType": "YulIdentifier", + "src": "13032:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "13022:3:74", + "nodeType": "YulIdentifier", + "src": "13022:3:74" + }, + "nativeSrc": "13022:20:74", + "nodeType": "YulFunctionCall", + "src": "13022:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12996:6:74", + "nodeType": "YulIdentifier", + "src": "12996:6:74" + }, + "nativeSrc": "12996:47:74", + "nodeType": "YulFunctionCall", + "src": "12996:47:74" + }, + "nativeSrc": "12996:47:74", + "nodeType": "YulExpressionStatement", + "src": "12996:47:74" + }, + { + "nativeSrc": "13052:84:74", + "nodeType": "YulAssignment", + "src": "13052:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "13122:6:74", + "nodeType": "YulIdentifier", + "src": "13122:6:74" + }, + { + "name": "tail", + "nativeSrc": "13131:4:74", + "nodeType": "YulIdentifier", + "src": "13131:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "13060:61:74", + "nodeType": "YulIdentifier", + "src": "13060:61:74" + }, + "nativeSrc": "13060:76:74", + "nodeType": "YulFunctionCall", + "src": "13060:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "13052:4:74", + "nodeType": "YulIdentifier", + "src": "13052:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "12834:309:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12922:9:74", + "nodeType": "YulTypedName", + "src": "12922:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "12934:6:74", + "nodeType": "YulTypedName", + "src": "12934:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12945:4:74", + "nodeType": "YulTypedName", + "src": "12945:4:74", + "type": "" + } + ], + "src": "12834:309:74" + }, + { + "body": { + "nativeSrc": "13238:28:74", + "nodeType": "YulBlock", + "src": "13238:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13255:1:74", + "nodeType": "YulLiteral", + "src": "13255:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13258:1:74", + "nodeType": "YulLiteral", + "src": "13258:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13248:6:74", + "nodeType": "YulIdentifier", + "src": "13248:6:74" + }, + "nativeSrc": "13248:12:74", + "nodeType": "YulFunctionCall", + "src": "13248:12:74" + }, + "nativeSrc": "13248:12:74", + "nodeType": "YulExpressionStatement", + "src": "13248:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "13149:117:74", + "nodeType": "YulFunctionDefinition", + "src": "13149:117:74" + }, + { + "body": { + "nativeSrc": "13300:152:74", + "nodeType": "YulBlock", + "src": "13300:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13317:1:74", + "nodeType": "YulLiteral", + "src": "13317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13320:77:74", + "nodeType": "YulLiteral", + "src": "13320:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13310:6:74", + "nodeType": "YulIdentifier", + "src": "13310:6:74" + }, + "nativeSrc": "13310:88:74", + "nodeType": "YulFunctionCall", + "src": "13310:88:74" + }, + "nativeSrc": "13310:88:74", + "nodeType": "YulExpressionStatement", + "src": "13310:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13414:1:74", + "nodeType": "YulLiteral", + "src": "13414:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "13417:4:74", + "nodeType": "YulLiteral", + "src": "13417:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13407:6:74", + "nodeType": "YulIdentifier", + "src": "13407:6:74" + }, + "nativeSrc": "13407:15:74", + "nodeType": "YulFunctionCall", + "src": "13407:15:74" + }, + "nativeSrc": "13407:15:74", + "nodeType": "YulExpressionStatement", + "src": "13407:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13438:1:74", + "nodeType": "YulLiteral", + "src": "13438:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13441:4:74", + "nodeType": "YulLiteral", + "src": "13441:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13431:6:74", + "nodeType": "YulIdentifier", + "src": "13431:6:74" + }, + "nativeSrc": "13431:15:74", + "nodeType": "YulFunctionCall", + "src": "13431:15:74" + }, + "nativeSrc": "13431:15:74", + "nodeType": "YulExpressionStatement", + "src": "13431:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "13272:180:74", + "nodeType": "YulFunctionDefinition", + "src": "13272:180:74" + }, + { + "body": { + "nativeSrc": "13501:238:74", + "nodeType": "YulBlock", + "src": "13501:238:74", + "statements": [ + { + "nativeSrc": "13511:58:74", + "nodeType": "YulVariableDeclaration", + "src": "13511:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13533:6:74", + "nodeType": "YulIdentifier", + "src": "13533:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "13563:4:74", + "nodeType": "YulIdentifier", + "src": "13563:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "13541:21:74", + "nodeType": "YulIdentifier", + "src": "13541:21:74" + }, + "nativeSrc": "13541:27:74", + "nodeType": "YulFunctionCall", + "src": "13541:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13529:3:74", + "nodeType": "YulIdentifier", + "src": "13529:3:74" + }, + "nativeSrc": "13529:40:74", + "nodeType": "YulFunctionCall", + "src": "13529:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "13515:10:74", + "nodeType": "YulTypedName", + "src": "13515:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13680:22:74", + "nodeType": "YulBlock", + "src": "13680:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "13682:16:74", + "nodeType": "YulIdentifier", + "src": "13682:16:74" + }, + "nativeSrc": "13682:18:74", + "nodeType": "YulFunctionCall", + "src": "13682:18:74" + }, + "nativeSrc": "13682:18:74", + "nodeType": "YulExpressionStatement", + "src": "13682:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "13623:10:74", + "nodeType": "YulIdentifier", + "src": "13623:10:74" + }, + { + "kind": "number", + "nativeSrc": "13635:18:74", + "nodeType": "YulLiteral", + "src": "13635:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "13620:2:74", + "nodeType": "YulIdentifier", + "src": "13620:2:74" + }, + "nativeSrc": "13620:34:74", + "nodeType": "YulFunctionCall", + "src": "13620:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "13659:10:74", + "nodeType": "YulIdentifier", + "src": "13659:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "13671:6:74", + "nodeType": "YulIdentifier", + "src": "13671:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "13656:2:74", + "nodeType": "YulIdentifier", + "src": "13656:2:74" + }, + "nativeSrc": "13656:22:74", + "nodeType": "YulFunctionCall", + "src": "13656:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "13617:2:74", + "nodeType": "YulIdentifier", + "src": "13617:2:74" + }, + "nativeSrc": "13617:62:74", + "nodeType": "YulFunctionCall", + "src": "13617:62:74" + }, + "nativeSrc": "13614:88:74", + "nodeType": "YulIf", + "src": "13614:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13718:2:74", + "nodeType": "YulLiteral", + "src": "13718:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "13722:10:74", + "nodeType": "YulIdentifier", + "src": "13722:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13711:6:74", + "nodeType": "YulIdentifier", + "src": "13711:6:74" + }, + "nativeSrc": "13711:22:74", + "nodeType": "YulFunctionCall", + "src": "13711:22:74" + }, + "nativeSrc": "13711:22:74", + "nodeType": "YulExpressionStatement", + "src": "13711:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "13458:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "13487:6:74", + "nodeType": "YulTypedName", + "src": "13487:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "13495:4:74", + "nodeType": "YulTypedName", + "src": "13495:4:74", + "type": "" + } + ], + "src": "13458:281:74" + }, + { + "body": { + "nativeSrc": "13786:88:74", + "nodeType": "YulBlock", + "src": "13786:88:74", + "statements": [ + { + "nativeSrc": "13796:30:74", + "nodeType": "YulAssignment", + "src": "13796:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "13806:18:74", + "nodeType": "YulIdentifier", + "src": "13806:18:74" + }, + "nativeSrc": "13806:20:74", + "nodeType": "YulFunctionCall", + "src": "13806:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "13796:6:74", + "nodeType": "YulIdentifier", + "src": "13796:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13855:6:74", + "nodeType": "YulIdentifier", + "src": "13855:6:74" + }, + { + "name": "size", + "nativeSrc": "13863:4:74", + "nodeType": "YulIdentifier", + "src": "13863:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "13835:19:74", + "nodeType": "YulIdentifier", + "src": "13835:19:74" + }, + "nativeSrc": "13835:33:74", + "nodeType": "YulFunctionCall", + "src": "13835:33:74" + }, + "nativeSrc": "13835:33:74", + "nodeType": "YulExpressionStatement", + "src": "13835:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "13745:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "13770:4:74", + "nodeType": "YulTypedName", + "src": "13770:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "13779:6:74", + "nodeType": "YulTypedName", + "src": "13779:6:74", + "type": "" + } + ], + "src": "13745:129:74" + }, + { + "body": { + "nativeSrc": "13947:241:74", + "nodeType": "YulBlock", + "src": "13947:241:74", + "statements": [ + { + "body": { + "nativeSrc": "14052:22:74", + "nodeType": "YulBlock", + "src": "14052:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "14054:16:74", + "nodeType": "YulIdentifier", + "src": "14054:16:74" + }, + "nativeSrc": "14054:18:74", + "nodeType": "YulFunctionCall", + "src": "14054:18:74" + }, + "nativeSrc": "14054:18:74", + "nodeType": "YulExpressionStatement", + "src": "14054:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "14024:6:74", + "nodeType": "YulIdentifier", + "src": "14024:6:74" + }, + { + "kind": "number", + "nativeSrc": "14032:18:74", + "nodeType": "YulLiteral", + "src": "14032:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14021:2:74", + "nodeType": "YulIdentifier", + "src": "14021:2:74" + }, + "nativeSrc": "14021:30:74", + "nodeType": "YulFunctionCall", + "src": "14021:30:74" + }, + "nativeSrc": "14018:56:74", + "nodeType": "YulIf", + "src": "14018:56:74" + }, + { + "nativeSrc": "14084:37:74", + "nodeType": "YulAssignment", + "src": "14084:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "14114:6:74", + "nodeType": "YulIdentifier", + "src": "14114:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "14092:21:74", + "nodeType": "YulIdentifier", + "src": "14092:21:74" + }, + "nativeSrc": "14092:29:74", + "nodeType": "YulFunctionCall", + "src": "14092:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "14084:4:74", + "nodeType": "YulIdentifier", + "src": "14084:4:74" + } + ] + }, + { + "nativeSrc": "14158:23:74", + "nodeType": "YulAssignment", + "src": "14158:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "14170:4:74", + "nodeType": "YulIdentifier", + "src": "14170:4:74" + }, + { + "kind": "number", + "nativeSrc": "14176:4:74", + "nodeType": "YulLiteral", + "src": "14176:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14166:3:74", + "nodeType": "YulIdentifier", + "src": "14166:3:74" + }, + "nativeSrc": "14166:15:74", + "nodeType": "YulFunctionCall", + "src": "14166:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "14158:4:74", + "nodeType": "YulIdentifier", + "src": "14158:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "13880:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "13931:6:74", + "nodeType": "YulTypedName", + "src": "13931:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "13942:4:74", + "nodeType": "YulTypedName", + "src": "13942:4:74", + "type": "" + } + ], + "src": "13880:308:74" + }, + { + "body": { + "nativeSrc": "14258:84:74", + "nodeType": "YulBlock", + "src": "14258:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "14282:3:74", + "nodeType": "YulIdentifier", + "src": "14282:3:74" + }, + { + "name": "src", + "nativeSrc": "14287:3:74", + "nodeType": "YulIdentifier", + "src": "14287:3:74" + }, + { + "name": "length", + "nativeSrc": "14292:6:74", + "nodeType": "YulIdentifier", + "src": "14292:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "14269:12:74", + "nodeType": "YulIdentifier", + "src": "14269:12:74" + }, + "nativeSrc": "14269:30:74", + "nodeType": "YulFunctionCall", + "src": "14269:30:74" + }, + "nativeSrc": "14269:30:74", + "nodeType": "YulExpressionStatement", + "src": "14269:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "14319:3:74", + "nodeType": "YulIdentifier", + "src": "14319:3:74" + }, + { + "name": "length", + "nativeSrc": "14324:6:74", + "nodeType": "YulIdentifier", + "src": "14324:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14315:3:74", + "nodeType": "YulIdentifier", + "src": "14315:3:74" + }, + "nativeSrc": "14315:16:74", + "nodeType": "YulFunctionCall", + "src": "14315:16:74" + }, + { + "kind": "number", + "nativeSrc": "14333:1:74", + "nodeType": "YulLiteral", + "src": "14333:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14308:6:74", + "nodeType": "YulIdentifier", + "src": "14308:6:74" + }, + "nativeSrc": "14308:27:74", + "nodeType": "YulFunctionCall", + "src": "14308:27:74" + }, + "nativeSrc": "14308:27:74", + "nodeType": "YulExpressionStatement", + "src": "14308:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "14194:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "14240:3:74", + "nodeType": "YulTypedName", + "src": "14240:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "14245:3:74", + "nodeType": "YulTypedName", + "src": "14245:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "14250:6:74", + "nodeType": "YulTypedName", + "src": "14250:6:74", + "type": "" + } + ], + "src": "14194:148:74" + }, + { + "body": { + "nativeSrc": "14432:341:74", + "nodeType": "YulBlock", + "src": "14432:341:74", + "statements": [ + { + "nativeSrc": "14442:75:74", + "nodeType": "YulAssignment", + "src": "14442:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "14509:6:74", + "nodeType": "YulIdentifier", + "src": "14509:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "14467:41:74", + "nodeType": "YulIdentifier", + "src": "14467:41:74" + }, + "nativeSrc": "14467:49:74", + "nodeType": "YulFunctionCall", + "src": "14467:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "14451:15:74", + "nodeType": "YulIdentifier", + "src": "14451:15:74" + }, + "nativeSrc": "14451:66:74", + "nodeType": "YulFunctionCall", + "src": "14451:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "14442:5:74", + "nodeType": "YulIdentifier", + "src": "14442:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "14533:5:74", + "nodeType": "YulIdentifier", + "src": "14533:5:74" + }, + { + "name": "length", + "nativeSrc": "14540:6:74", + "nodeType": "YulIdentifier", + "src": "14540:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14526:6:74", + "nodeType": "YulIdentifier", + "src": "14526:6:74" + }, + "nativeSrc": "14526:21:74", + "nodeType": "YulFunctionCall", + "src": "14526:21:74" + }, + "nativeSrc": "14526:21:74", + "nodeType": "YulExpressionStatement", + "src": "14526:21:74" + }, + { + "nativeSrc": "14556:27:74", + "nodeType": "YulVariableDeclaration", + "src": "14556:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "14571:5:74", + "nodeType": "YulIdentifier", + "src": "14571:5:74" + }, + { + "kind": "number", + "nativeSrc": "14578:4:74", + "nodeType": "YulLiteral", + "src": "14578:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14567:3:74", + "nodeType": "YulIdentifier", + "src": "14567:3:74" + }, + "nativeSrc": "14567:16:74", + "nodeType": "YulFunctionCall", + "src": "14567:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "14560:3:74", + "nodeType": "YulTypedName", + "src": "14560:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "14621:83:74", + "nodeType": "YulBlock", + "src": "14621:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "14623:77:74", + "nodeType": "YulIdentifier", + "src": "14623:77:74" + }, + "nativeSrc": "14623:79:74", + "nodeType": "YulFunctionCall", + "src": "14623:79:74" + }, + "nativeSrc": "14623:79:74", + "nodeType": "YulExpressionStatement", + "src": "14623:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "14602:3:74", + "nodeType": "YulIdentifier", + "src": "14602:3:74" + }, + { + "name": "length", + "nativeSrc": "14607:6:74", + "nodeType": "YulIdentifier", + "src": "14607:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14598:3:74", + "nodeType": "YulIdentifier", + "src": "14598:3:74" + }, + "nativeSrc": "14598:16:74", + "nodeType": "YulFunctionCall", + "src": "14598:16:74" + }, + { + "name": "end", + "nativeSrc": "14616:3:74", + "nodeType": "YulIdentifier", + "src": "14616:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14595:2:74", + "nodeType": "YulIdentifier", + "src": "14595:2:74" + }, + "nativeSrc": "14595:25:74", + "nodeType": "YulFunctionCall", + "src": "14595:25:74" + }, + "nativeSrc": "14592:112:74", + "nodeType": "YulIf", + "src": "14592:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "14750:3:74", + "nodeType": "YulIdentifier", + "src": "14750:3:74" + }, + { + "name": "dst", + "nativeSrc": "14755:3:74", + "nodeType": "YulIdentifier", + "src": "14755:3:74" + }, + { + "name": "length", + "nativeSrc": "14760:6:74", + "nodeType": "YulIdentifier", + "src": "14760:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "14713:36:74", + "nodeType": "YulIdentifier", + "src": "14713:36:74" + }, + "nativeSrc": "14713:54:74", + "nodeType": "YulFunctionCall", + "src": "14713:54:74" + }, + "nativeSrc": "14713:54:74", + "nodeType": "YulExpressionStatement", + "src": "14713:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr", + "nativeSrc": "14348:425:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "14405:3:74", + "nodeType": "YulTypedName", + "src": "14405:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "14410:6:74", + "nodeType": "YulTypedName", + "src": "14410:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "14418:3:74", + "nodeType": "YulTypedName", + "src": "14418:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "14426:5:74", + "nodeType": "YulTypedName", + "src": "14426:5:74", + "type": "" + } + ], + "src": "14348:425:74" + }, + { + "body": { + "nativeSrc": "14855:278:74", + "nodeType": "YulBlock", + "src": "14855:278:74", + "statements": [ + { + "body": { + "nativeSrc": "14904:83:74", + "nodeType": "YulBlock", + "src": "14904:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "14906:77:74", + "nodeType": "YulIdentifier", + "src": "14906:77:74" + }, + "nativeSrc": "14906:79:74", + "nodeType": "YulFunctionCall", + "src": "14906:79:74" + }, + "nativeSrc": "14906:79:74", + "nodeType": "YulExpressionStatement", + "src": "14906:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "14883:6:74", + "nodeType": "YulIdentifier", + "src": "14883:6:74" + }, + { + "kind": "number", + "nativeSrc": "14891:4:74", + "nodeType": "YulLiteral", + "src": "14891:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14879:3:74", + "nodeType": "YulIdentifier", + "src": "14879:3:74" + }, + "nativeSrc": "14879:17:74", + "nodeType": "YulFunctionCall", + "src": "14879:17:74" + }, + { + "name": "end", + "nativeSrc": "14898:3:74", + "nodeType": "YulIdentifier", + "src": "14898:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "14875:3:74", + "nodeType": "YulIdentifier", + "src": "14875:3:74" + }, + "nativeSrc": "14875:27:74", + "nodeType": "YulFunctionCall", + "src": "14875:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "14868:6:74", + "nodeType": "YulIdentifier", + "src": "14868:6:74" + }, + "nativeSrc": "14868:35:74", + "nodeType": "YulFunctionCall", + "src": "14868:35:74" + }, + "nativeSrc": "14865:122:74", + "nodeType": "YulIf", + "src": "14865:122:74" + }, + { + "nativeSrc": "14996:34:74", + "nodeType": "YulVariableDeclaration", + "src": "14996:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15023:6:74", + "nodeType": "YulIdentifier", + "src": "15023:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "15010:12:74", + "nodeType": "YulIdentifier", + "src": "15010:12:74" + }, + "nativeSrc": "15010:20:74", + "nodeType": "YulFunctionCall", + "src": "15010:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "15000:6:74", + "nodeType": "YulTypedName", + "src": "15000:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15039:88:74", + "nodeType": "YulAssignment", + "src": "15039:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15100:6:74", + "nodeType": "YulIdentifier", + "src": "15100:6:74" + }, + { + "kind": "number", + "nativeSrc": "15108:4:74", + "nodeType": "YulLiteral", + "src": "15108:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15096:3:74", + "nodeType": "YulIdentifier", + "src": "15096:3:74" + }, + "nativeSrc": "15096:17:74", + "nodeType": "YulFunctionCall", + "src": "15096:17:74" + }, + { + "name": "length", + "nativeSrc": "15115:6:74", + "nodeType": "YulIdentifier", + "src": "15115:6:74" + }, + { + "name": "end", + "nativeSrc": "15123:3:74", + "nodeType": "YulIdentifier", + "src": "15123:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr", + "nativeSrc": "15048:47:74", + "nodeType": "YulIdentifier", + "src": "15048:47:74" + }, + "nativeSrc": "15048:79:74", + "nodeType": "YulFunctionCall", + "src": "15048:79:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "15039:5:74", + "nodeType": "YulIdentifier", + "src": "15039:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "14793:340:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "14833:6:74", + "nodeType": "YulTypedName", + "src": "14833:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "14841:3:74", + "nodeType": "YulTypedName", + "src": "14841:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "14849:5:74", + "nodeType": "YulTypedName", + "src": "14849:5:74", + "type": "" + } + ], + "src": "14793:340:74" + }, + { + "body": { + "nativeSrc": "15181:78:74", + "nodeType": "YulBlock", + "src": "15181:78:74", + "statements": [ + { + "body": { + "nativeSrc": "15237:16:74", + "nodeType": "YulBlock", + "src": "15237:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "15246:1:74", + "nodeType": "YulLiteral", + "src": "15246:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "15249:1:74", + "nodeType": "YulLiteral", + "src": "15249:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "15239:6:74", + "nodeType": "YulIdentifier", + "src": "15239:6:74" + }, + "nativeSrc": "15239:12:74", + "nodeType": "YulFunctionCall", + "src": "15239:12:74" + }, + "nativeSrc": "15239:12:74", + "nodeType": "YulExpressionStatement", + "src": "15239:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "15204:5:74", + "nodeType": "YulIdentifier", + "src": "15204:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "15228:5:74", + "nodeType": "YulIdentifier", + "src": "15228:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint32", + "nativeSrc": "15211:16:74", + "nodeType": "YulIdentifier", + "src": "15211:16:74" + }, + "nativeSrc": "15211:23:74", + "nodeType": "YulFunctionCall", + "src": "15211:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "15201:2:74", + "nodeType": "YulIdentifier", + "src": "15201:2:74" + }, + "nativeSrc": "15201:34:74", + "nodeType": "YulFunctionCall", + "src": "15201:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "15194:6:74", + "nodeType": "YulIdentifier", + "src": "15194:6:74" + }, + "nativeSrc": "15194:42:74", + "nodeType": "YulFunctionCall", + "src": "15194:42:74" + }, + "nativeSrc": "15191:62:74", + "nodeType": "YulIf", + "src": "15191:62:74" + } + ] + }, + "name": "validator_revert_t_uint32", + "nativeSrc": "15139:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "15174:5:74", + "nodeType": "YulTypedName", + "src": "15174:5:74", + "type": "" + } + ], + "src": "15139:120:74" + }, + { + "body": { + "nativeSrc": "15316:86:74", + "nodeType": "YulBlock", + "src": "15316:86:74", + "statements": [ + { + "nativeSrc": "15326:29:74", + "nodeType": "YulAssignment", + "src": "15326:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15348:6:74", + "nodeType": "YulIdentifier", + "src": "15348:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "15335:12:74", + "nodeType": "YulIdentifier", + "src": "15335:12:74" + }, + "nativeSrc": "15335:20:74", + "nodeType": "YulFunctionCall", + "src": "15335:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "15326:5:74", + "nodeType": "YulIdentifier", + "src": "15326:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "15390:5:74", + "nodeType": "YulIdentifier", + "src": "15390:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint32", + "nativeSrc": "15364:25:74", + "nodeType": "YulIdentifier", + "src": "15364:25:74" + }, + "nativeSrc": "15364:32:74", + "nodeType": "YulFunctionCall", + "src": "15364:32:74" + }, + "nativeSrc": "15364:32:74", + "nodeType": "YulExpressionStatement", + "src": "15364:32:74" + } + ] + }, + "name": "abi_decode_t_uint32", + "nativeSrc": "15265:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "15294:6:74", + "nodeType": "YulTypedName", + "src": "15294:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "15302:3:74", + "nodeType": "YulTypedName", + "src": "15302:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "15310:5:74", + "nodeType": "YulTypedName", + "src": "15310:5:74", + "type": "" + } + ], + "src": "15265:137:74" + }, + { + "body": { + "nativeSrc": "15583:1202:74", + "nodeType": "YulBlock", + "src": "15583:1202:74", + "statements": [ + { + "body": { + "nativeSrc": "15630:83:74", + "nodeType": "YulBlock", + "src": "15630:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "15632:77:74", + "nodeType": "YulIdentifier", + "src": "15632:77:74" + }, + "nativeSrc": "15632:79:74", + "nodeType": "YulFunctionCall", + "src": "15632:79:74" + }, + "nativeSrc": "15632:79:74", + "nodeType": "YulExpressionStatement", + "src": "15632:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "15604:7:74", + "nodeType": "YulIdentifier", + "src": "15604:7:74" + }, + { + "name": "headStart", + "nativeSrc": "15613:9:74", + "nodeType": "YulIdentifier", + "src": "15613:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15600:3:74", + "nodeType": "YulIdentifier", + "src": "15600:3:74" + }, + "nativeSrc": "15600:23:74", + "nodeType": "YulFunctionCall", + "src": "15600:23:74" + }, + { + "kind": "number", + "nativeSrc": "15625:3:74", + "nodeType": "YulLiteral", + "src": "15625:3:74", + "type": "", + "value": "224" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "15596:3:74", + "nodeType": "YulIdentifier", + "src": "15596:3:74" + }, + "nativeSrc": "15596:33:74", + "nodeType": "YulFunctionCall", + "src": "15596:33:74" + }, + "nativeSrc": "15593:120:74", + "nodeType": "YulIf", + "src": "15593:120:74" + }, + { + "nativeSrc": "15723:117:74", + "nodeType": "YulBlock", + "src": "15723:117:74", + "statements": [ + { + "nativeSrc": "15738:15:74", + "nodeType": "YulVariableDeclaration", + "src": "15738:15:74", + "value": { + "kind": "number", + "nativeSrc": "15752:1:74", + "nodeType": "YulLiteral", + "src": "15752:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15742:6:74", + "nodeType": "YulTypedName", + "src": "15742:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "15767:63:74", + "nodeType": "YulAssignment", + "src": "15767:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15802:9:74", + "nodeType": "YulIdentifier", + "src": "15802:9:74" + }, + { + "name": "offset", + "nativeSrc": "15813:6:74", + "nodeType": "YulIdentifier", + "src": "15813:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15798:3:74", + "nodeType": "YulIdentifier", + "src": "15798:3:74" + }, + "nativeSrc": "15798:22:74", + "nodeType": "YulFunctionCall", + "src": "15798:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "15822:7:74", + "nodeType": "YulIdentifier", + "src": "15822:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "15777:20:74", + "nodeType": "YulIdentifier", + "src": "15777:20:74" + }, + "nativeSrc": "15777:53:74", + "nodeType": "YulFunctionCall", + "src": "15777:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "15767:6:74", + "nodeType": "YulIdentifier", + "src": "15767:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "15850:288:74", + "nodeType": "YulBlock", + "src": "15850:288:74", + "statements": [ + { + "nativeSrc": "15865:46:74", + "nodeType": "YulVariableDeclaration", + "src": "15865:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15896:9:74", + "nodeType": "YulIdentifier", + "src": "15896:9:74" + }, + { + "kind": "number", + "nativeSrc": "15907:2:74", + "nodeType": "YulLiteral", + "src": "15907:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15892:3:74", + "nodeType": "YulIdentifier", + "src": "15892:3:74" + }, + "nativeSrc": "15892:18:74", + "nodeType": "YulFunctionCall", + "src": "15892:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "15879:12:74", + "nodeType": "YulIdentifier", + "src": "15879:12:74" + }, + "nativeSrc": "15879:32:74", + "nodeType": "YulFunctionCall", + "src": "15879:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "15869:6:74", + "nodeType": "YulTypedName", + "src": "15869:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "15958:83:74", + "nodeType": "YulBlock", + "src": "15958:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "15960:77:74", + "nodeType": "YulIdentifier", + "src": "15960:77:74" + }, + "nativeSrc": "15960:79:74", + "nodeType": "YulFunctionCall", + "src": "15960:79:74" + }, + "nativeSrc": "15960:79:74", + "nodeType": "YulExpressionStatement", + "src": "15960:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "15930:6:74", + "nodeType": "YulIdentifier", + "src": "15930:6:74" + }, + { + "kind": "number", + "nativeSrc": "15938:18:74", + "nodeType": "YulLiteral", + "src": "15938:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "15927:2:74", + "nodeType": "YulIdentifier", + "src": "15927:2:74" + }, + "nativeSrc": "15927:30:74", + "nodeType": "YulFunctionCall", + "src": "15927:30:74" + }, + "nativeSrc": "15924:117:74", + "nodeType": "YulIf", + "src": "15924:117:74" + }, + { + "nativeSrc": "16055:73:74", + "nodeType": "YulAssignment", + "src": "16055:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16100:9:74", + "nodeType": "YulIdentifier", + "src": "16100:9:74" + }, + { + "name": "offset", + "nativeSrc": "16111:6:74", + "nodeType": "YulIdentifier", + "src": "16111:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16096:3:74", + "nodeType": "YulIdentifier", + "src": "16096:3:74" + }, + "nativeSrc": "16096:22:74", + "nodeType": "YulFunctionCall", + "src": "16096:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16120:7:74", + "nodeType": "YulIdentifier", + "src": "16120:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "16065:30:74", + "nodeType": "YulIdentifier", + "src": "16065:30:74" + }, + "nativeSrc": "16065:63:74", + "nodeType": "YulFunctionCall", + "src": "16065:63:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "16055:6:74", + "nodeType": "YulIdentifier", + "src": "16055:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16148:118:74", + "nodeType": "YulBlock", + "src": "16148:118:74", + "statements": [ + { + "nativeSrc": "16163:16:74", + "nodeType": "YulVariableDeclaration", + "src": "16163:16:74", + "value": { + "kind": "number", + "nativeSrc": "16177:2:74", + "nodeType": "YulLiteral", + "src": "16177:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16167:6:74", + "nodeType": "YulTypedName", + "src": "16167:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16193:63:74", + "nodeType": "YulAssignment", + "src": "16193:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16228:9:74", + "nodeType": "YulIdentifier", + "src": "16228:9:74" + }, + { + "name": "offset", + "nativeSrc": "16239:6:74", + "nodeType": "YulIdentifier", + "src": "16239:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16224:3:74", + "nodeType": "YulIdentifier", + "src": "16224:3:74" + }, + "nativeSrc": "16224:22:74", + "nodeType": "YulFunctionCall", + "src": "16224:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16248:7:74", + "nodeType": "YulIdentifier", + "src": "16248:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "16203:20:74", + "nodeType": "YulIdentifier", + "src": "16203:20:74" + }, + "nativeSrc": "16203:53:74", + "nodeType": "YulFunctionCall", + "src": "16203:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "16193:6:74", + "nodeType": "YulIdentifier", + "src": "16193:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16276:118:74", + "nodeType": "YulBlock", + "src": "16276:118:74", + "statements": [ + { + "nativeSrc": "16291:16:74", + "nodeType": "YulVariableDeclaration", + "src": "16291:16:74", + "value": { + "kind": "number", + "nativeSrc": "16305:2:74", + "nodeType": "YulLiteral", + "src": "16305:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16295:6:74", + "nodeType": "YulTypedName", + "src": "16295:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16321:63:74", + "nodeType": "YulAssignment", + "src": "16321:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16356:9:74", + "nodeType": "YulIdentifier", + "src": "16356:9:74" + }, + { + "name": "offset", + "nativeSrc": "16367:6:74", + "nodeType": "YulIdentifier", + "src": "16367:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16352:3:74", + "nodeType": "YulIdentifier", + "src": "16352:3:74" + }, + "nativeSrc": "16352:22:74", + "nodeType": "YulFunctionCall", + "src": "16352:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16376:7:74", + "nodeType": "YulIdentifier", + "src": "16376:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "16331:20:74", + "nodeType": "YulIdentifier", + "src": "16331:20:74" + }, + "nativeSrc": "16331:53:74", + "nodeType": "YulFunctionCall", + "src": "16331:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "16321:6:74", + "nodeType": "YulIdentifier", + "src": "16321:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16404:118:74", + "nodeType": "YulBlock", + "src": "16404:118:74", + "statements": [ + { + "nativeSrc": "16419:17:74", + "nodeType": "YulVariableDeclaration", + "src": "16419:17:74", + "value": { + "kind": "number", + "nativeSrc": "16433:3:74", + "nodeType": "YulLiteral", + "src": "16433:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16423:6:74", + "nodeType": "YulTypedName", + "src": "16423:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16450:62:74", + "nodeType": "YulAssignment", + "src": "16450:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16484:9:74", + "nodeType": "YulIdentifier", + "src": "16484:9:74" + }, + { + "name": "offset", + "nativeSrc": "16495:6:74", + "nodeType": "YulIdentifier", + "src": "16495:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16480:3:74", + "nodeType": "YulIdentifier", + "src": "16480:3:74" + }, + "nativeSrc": "16480:22:74", + "nodeType": "YulFunctionCall", + "src": "16480:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16504:7:74", + "nodeType": "YulIdentifier", + "src": "16504:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "16460:19:74", + "nodeType": "YulIdentifier", + "src": "16460:19:74" + }, + "nativeSrc": "16460:52:74", + "nodeType": "YulFunctionCall", + "src": "16460:52:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "16450:6:74", + "nodeType": "YulIdentifier", + "src": "16450:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16532:118:74", + "nodeType": "YulBlock", + "src": "16532:118:74", + "statements": [ + { + "nativeSrc": "16547:17:74", + "nodeType": "YulVariableDeclaration", + "src": "16547:17:74", + "value": { + "kind": "number", + "nativeSrc": "16561:3:74", + "nodeType": "YulLiteral", + "src": "16561:3:74", + "type": "", + "value": "160" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16551:6:74", + "nodeType": "YulTypedName", + "src": "16551:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16578:62:74", + "nodeType": "YulAssignment", + "src": "16578:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16612:9:74", + "nodeType": "YulIdentifier", + "src": "16612:9:74" + }, + { + "name": "offset", + "nativeSrc": "16623:6:74", + "nodeType": "YulIdentifier", + "src": "16623:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16608:3:74", + "nodeType": "YulIdentifier", + "src": "16608:3:74" + }, + "nativeSrc": "16608:22:74", + "nodeType": "YulFunctionCall", + "src": "16608:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16632:7:74", + "nodeType": "YulIdentifier", + "src": "16632:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint32", + "nativeSrc": "16588:19:74", + "nodeType": "YulIdentifier", + "src": "16588:19:74" + }, + "nativeSrc": "16588:52:74", + "nodeType": "YulFunctionCall", + "src": "16588:52:74" + }, + "variableNames": [ + { + "name": "value5", + "nativeSrc": "16578:6:74", + "nodeType": "YulIdentifier", + "src": "16578:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "16660:118:74", + "nodeType": "YulBlock", + "src": "16660:118:74", + "statements": [ + { + "nativeSrc": "16675:17:74", + "nodeType": "YulVariableDeclaration", + "src": "16675:17:74", + "value": { + "kind": "number", + "nativeSrc": "16689:3:74", + "nodeType": "YulLiteral", + "src": "16689:3:74", + "type": "", + "value": "192" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16679:6:74", + "nodeType": "YulTypedName", + "src": "16679:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16706:62:74", + "nodeType": "YulAssignment", + "src": "16706:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16740:9:74", + "nodeType": "YulIdentifier", + "src": "16740:9:74" + }, + { + "name": "offset", + "nativeSrc": "16751:6:74", + "nodeType": "YulIdentifier", + "src": "16751:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16736:3:74", + "nodeType": "YulIdentifier", + "src": "16736:3:74" + }, + "nativeSrc": "16736:22:74", + "nodeType": "YulFunctionCall", + "src": "16736:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "16760:7:74", + "nodeType": "YulIdentifier", + "src": "16760:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "16716:19:74", + "nodeType": "YulIdentifier", + "src": "16716:19:74" + }, + "nativeSrc": "16716:52:74", + "nodeType": "YulFunctionCall", + "src": "16716:52:74" + }, + "variableNames": [ + { + "name": "value6", + "nativeSrc": "16706:6:74", + "nodeType": "YulIdentifier", + "src": "16706:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_memory_ptrt_addresst_addresst_uint64t_uint32t_uint64", + "nativeSrc": "15408:1377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15505:9:74", + "nodeType": "YulTypedName", + "src": "15505:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "15516:7:74", + "nodeType": "YulTypedName", + "src": "15516:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "15528:6:74", + "nodeType": "YulTypedName", + "src": "15528:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "15536:6:74", + "nodeType": "YulTypedName", + "src": "15536:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "15544:6:74", + "nodeType": "YulTypedName", + "src": "15544:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "15552:6:74", + "nodeType": "YulTypedName", + "src": "15552:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "15560:6:74", + "nodeType": "YulTypedName", + "src": "15560:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "15568:6:74", + "nodeType": "YulTypedName", + "src": "15568:6:74", + "type": "" + }, + { + "name": "value6", + "nativeSrc": "15576:6:74", + "nodeType": "YulTypedName", + "src": "15576:6:74", + "type": "" + } + ], + "src": "15408:1377:74" + }, + { + "body": { + "nativeSrc": "16856:53:74", + "nodeType": "YulBlock", + "src": "16856:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16873:3:74", + "nodeType": "YulIdentifier", + "src": "16873:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16896:5:74", + "nodeType": "YulIdentifier", + "src": "16896:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "16878:17:74", + "nodeType": "YulIdentifier", + "src": "16878:17:74" + }, + "nativeSrc": "16878:24:74", + "nodeType": "YulFunctionCall", + "src": "16878:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16866:6:74", + "nodeType": "YulIdentifier", + "src": "16866:6:74" + }, + "nativeSrc": "16866:37:74", + "nodeType": "YulFunctionCall", + "src": "16866:37:74" + }, + "nativeSrc": "16866:37:74", + "nodeType": "YulExpressionStatement", + "src": "16866:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "16791:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16844:5:74", + "nodeType": "YulTypedName", + "src": "16844:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "16851:3:74", + "nodeType": "YulTypedName", + "src": "16851:3:74", + "type": "" + } + ], + "src": "16791:118:74" + }, + { + "body": { + "nativeSrc": "17013:124:74", + "nodeType": "YulBlock", + "src": "17013:124:74", + "statements": [ + { + "nativeSrc": "17023:26:74", + "nodeType": "YulAssignment", + "src": "17023:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17035:9:74", + "nodeType": "YulIdentifier", + "src": "17035:9:74" + }, + { + "kind": "number", + "nativeSrc": "17046:2:74", + "nodeType": "YulLiteral", + "src": "17046:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17031:3:74", + "nodeType": "YulIdentifier", + "src": "17031:3:74" + }, + "nativeSrc": "17031:18:74", + "nodeType": "YulFunctionCall", + "src": "17031:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17023:4:74", + "nodeType": "YulIdentifier", + "src": "17023:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17103:6:74", + "nodeType": "YulIdentifier", + "src": "17103:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17116:9:74", + "nodeType": "YulIdentifier", + "src": "17116:9:74" + }, + { + "kind": "number", + "nativeSrc": "17127:1:74", + "nodeType": "YulLiteral", + "src": "17127:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17112:3:74", + "nodeType": "YulIdentifier", + "src": "17112:3:74" + }, + "nativeSrc": "17112:17:74", + "nodeType": "YulFunctionCall", + "src": "17112:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "17059:43:74", + "nodeType": "YulIdentifier", + "src": "17059:43:74" + }, + "nativeSrc": "17059:71:74", + "nodeType": "YulFunctionCall", + "src": "17059:71:74" + }, + "nativeSrc": "17059:71:74", + "nodeType": "YulExpressionStatement", + "src": "17059:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "16915:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16985:9:74", + "nodeType": "YulTypedName", + "src": "16985:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "16997:6:74", + "nodeType": "YulTypedName", + "src": "16997:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17008:4:74", + "nodeType": "YulTypedName", + "src": "17008:4:74", + "type": "" + } + ], + "src": "16915:222:74" + }, + { + "body": { + "nativeSrc": "17226:66:74", + "nodeType": "YulBlock", + "src": "17226:66:74", + "statements": [ + { + "nativeSrc": "17236:50:74", + "nodeType": "YulAssignment", + "src": "17236:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17280:5:74", + "nodeType": "YulIdentifier", + "src": "17280:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "17249:30:74", + "nodeType": "YulIdentifier", + "src": "17249:30:74" + }, + "nativeSrc": "17249:37:74", + "nodeType": "YulFunctionCall", + "src": "17249:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "17236:9:74", + "nodeType": "YulIdentifier", + "src": "17236:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_IBaseRegistrar_$4430_to_t_address", + "nativeSrc": "17143:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17206:5:74", + "nodeType": "YulTypedName", + "src": "17206:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "17216:9:74", + "nodeType": "YulTypedName", + "src": "17216:9:74", + "type": "" + } + ], + "src": "17143:149:74" + }, + { + "body": { + "nativeSrc": "17386:89:74", + "nodeType": "YulBlock", + "src": "17386:89:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17403:3:74", + "nodeType": "YulIdentifier", + "src": "17403:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17462:5:74", + "nodeType": "YulIdentifier", + "src": "17462:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_IBaseRegistrar_$4430_to_t_address", + "nativeSrc": "17408:53:74", + "nodeType": "YulIdentifier", + "src": "17408:53:74" + }, + "nativeSrc": "17408:60:74", + "nodeType": "YulFunctionCall", + "src": "17408:60:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17396:6:74", + "nodeType": "YulIdentifier", + "src": "17396:6:74" + }, + "nativeSrc": "17396:73:74", + "nodeType": "YulFunctionCall", + "src": "17396:73:74" + }, + "nativeSrc": "17396:73:74", + "nodeType": "YulExpressionStatement", + "src": "17396:73:74" + } + ] + }, + "name": "abi_encode_t_contract$_IBaseRegistrar_$4430_to_t_address_fromStack", + "nativeSrc": "17298:177:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17374:5:74", + "nodeType": "YulTypedName", + "src": "17374:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "17381:3:74", + "nodeType": "YulTypedName", + "src": "17381:3:74", + "type": "" + } + ], + "src": "17298:177:74" + }, + { + "body": { + "nativeSrc": "17602:147:74", + "nodeType": "YulBlock", + "src": "17602:147:74", + "statements": [ + { + "nativeSrc": "17612:26:74", + "nodeType": "YulAssignment", + "src": "17612:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17624:9:74", + "nodeType": "YulIdentifier", + "src": "17624:9:74" + }, + { + "kind": "number", + "nativeSrc": "17635:2:74", + "nodeType": "YulLiteral", + "src": "17635:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17620:3:74", + "nodeType": "YulIdentifier", + "src": "17620:3:74" + }, + "nativeSrc": "17620:18:74", + "nodeType": "YulFunctionCall", + "src": "17620:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17612:4:74", + "nodeType": "YulIdentifier", + "src": "17612:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17715:6:74", + "nodeType": "YulIdentifier", + "src": "17715:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17728:9:74", + "nodeType": "YulIdentifier", + "src": "17728:9:74" + }, + { + "kind": "number", + "nativeSrc": "17739:1:74", + "nodeType": "YulLiteral", + "src": "17739:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17724:3:74", + "nodeType": "YulIdentifier", + "src": "17724:3:74" + }, + "nativeSrc": "17724:17:74", + "nodeType": "YulFunctionCall", + "src": "17724:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_IBaseRegistrar_$4430_to_t_address_fromStack", + "nativeSrc": "17648:66:74", + "nodeType": "YulIdentifier", + "src": "17648:66:74" + }, + "nativeSrc": "17648:94:74", + "nodeType": "YulFunctionCall", + "src": "17648:94:74" + }, + "nativeSrc": "17648:94:74", + "nodeType": "YulExpressionStatement", + "src": "17648:94:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IBaseRegistrar_$4430__to_t_address__fromStack_reversed", + "nativeSrc": "17481:268:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17574:9:74", + "nodeType": "YulTypedName", + "src": "17574:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "17586:6:74", + "nodeType": "YulTypedName", + "src": "17586:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17597:4:74", + "nodeType": "YulTypedName", + "src": "17597:4:74", + "type": "" + } + ], + "src": "17481:268:74" + }, + { + "body": { + "nativeSrc": "17837:229:74", + "nodeType": "YulBlock", + "src": "17837:229:74", + "statements": [ + { + "body": { + "nativeSrc": "17942:22:74", + "nodeType": "YulBlock", + "src": "17942:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "17944:16:74", + "nodeType": "YulIdentifier", + "src": "17944:16:74" + }, + "nativeSrc": "17944:18:74", + "nodeType": "YulFunctionCall", + "src": "17944:18:74" + }, + "nativeSrc": "17944:18:74", + "nodeType": "YulExpressionStatement", + "src": "17944:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "17914:6:74", + "nodeType": "YulIdentifier", + "src": "17914:6:74" + }, + { + "kind": "number", + "nativeSrc": "17922:18:74", + "nodeType": "YulLiteral", + "src": "17922:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "17911:2:74", + "nodeType": "YulIdentifier", + "src": "17911:2:74" + }, + "nativeSrc": "17911:30:74", + "nodeType": "YulFunctionCall", + "src": "17911:30:74" + }, + "nativeSrc": "17908:56:74", + "nodeType": "YulIf", + "src": "17908:56:74" + }, + { + "nativeSrc": "17974:25:74", + "nodeType": "YulAssignment", + "src": "17974:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "17986:6:74", + "nodeType": "YulIdentifier", + "src": "17986:6:74" + }, + { + "kind": "number", + "nativeSrc": "17994:4:74", + "nodeType": "YulLiteral", + "src": "17994:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "17982:3:74", + "nodeType": "YulIdentifier", + "src": "17982:3:74" + }, + "nativeSrc": "17982:17:74", + "nodeType": "YulFunctionCall", + "src": "17982:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "17974:4:74", + "nodeType": "YulIdentifier", + "src": "17974:4:74" + } + ] + }, + { + "nativeSrc": "18036:23:74", + "nodeType": "YulAssignment", + "src": "18036:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "18048:4:74", + "nodeType": "YulIdentifier", + "src": "18048:4:74" + }, + { + "kind": "number", + "nativeSrc": "18054:4:74", + "nodeType": "YulLiteral", + "src": "18054:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18044:3:74", + "nodeType": "YulIdentifier", + "src": "18044:3:74" + }, + "nativeSrc": "18044:15:74", + "nodeType": "YulFunctionCall", + "src": "18044:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "18036:4:74", + "nodeType": "YulIdentifier", + "src": "18036:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "17755:311:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "17821:6:74", + "nodeType": "YulTypedName", + "src": "17821:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "17832:4:74", + "nodeType": "YulTypedName", + "src": "17832:4:74", + "type": "" + } + ], + "src": "17755:311:74" + }, + { + "body": { + "nativeSrc": "18191:608:74", + "nodeType": "YulBlock", + "src": "18191:608:74", + "statements": [ + { + "nativeSrc": "18201:90:74", + "nodeType": "YulAssignment", + "src": "18201:90:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "18283:6:74", + "nodeType": "YulIdentifier", + "src": "18283:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "18226:56:74", + "nodeType": "YulIdentifier", + "src": "18226:56:74" + }, + "nativeSrc": "18226:64:74", + "nodeType": "YulFunctionCall", + "src": "18226:64:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "18210:15:74", + "nodeType": "YulIdentifier", + "src": "18210:15:74" + }, + "nativeSrc": "18210:81:74", + "nodeType": "YulFunctionCall", + "src": "18210:81:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "18201:5:74", + "nodeType": "YulIdentifier", + "src": "18201:5:74" + } + ] + }, + { + "nativeSrc": "18300:16:74", + "nodeType": "YulVariableDeclaration", + "src": "18300:16:74", + "value": { + "name": "array", + "nativeSrc": "18311:5:74", + "nodeType": "YulIdentifier", + "src": "18311:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "18304:3:74", + "nodeType": "YulTypedName", + "src": "18304:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "18333:5:74", + "nodeType": "YulIdentifier", + "src": "18333:5:74" + }, + { + "name": "length", + "nativeSrc": "18340:6:74", + "nodeType": "YulIdentifier", + "src": "18340:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18326:6:74", + "nodeType": "YulIdentifier", + "src": "18326:6:74" + }, + "nativeSrc": "18326:21:74", + "nodeType": "YulFunctionCall", + "src": "18326:21:74" + }, + "nativeSrc": "18326:21:74", + "nodeType": "YulExpressionStatement", + "src": "18326:21:74" + }, + { + "nativeSrc": "18356:23:74", + "nodeType": "YulAssignment", + "src": "18356:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "18367:5:74", + "nodeType": "YulIdentifier", + "src": "18367:5:74" + }, + { + "kind": "number", + "nativeSrc": "18374:4:74", + "nodeType": "YulLiteral", + "src": "18374:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18363:3:74", + "nodeType": "YulIdentifier", + "src": "18363:3:74" + }, + "nativeSrc": "18363:16:74", + "nodeType": "YulFunctionCall", + "src": "18363:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "18356:3:74", + "nodeType": "YulIdentifier", + "src": "18356:3:74" + } + ] + }, + { + "nativeSrc": "18389:44:74", + "nodeType": "YulVariableDeclaration", + "src": "18389:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18407:6:74", + "nodeType": "YulIdentifier", + "src": "18407:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "18419:6:74", + "nodeType": "YulIdentifier", + "src": "18419:6:74" + }, + { + "kind": "number", + "nativeSrc": "18427:4:74", + "nodeType": "YulLiteral", + "src": "18427:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "18415:3:74", + "nodeType": "YulIdentifier", + "src": "18415:3:74" + }, + "nativeSrc": "18415:17:74", + "nodeType": "YulFunctionCall", + "src": "18415:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18403:3:74", + "nodeType": "YulIdentifier", + "src": "18403:3:74" + }, + "nativeSrc": "18403:30:74", + "nodeType": "YulFunctionCall", + "src": "18403:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "18393:6:74", + "nodeType": "YulTypedName", + "src": "18393:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "18461:103:74", + "nodeType": "YulBlock", + "src": "18461:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "18475:77:74", + "nodeType": "YulIdentifier", + "src": "18475:77:74" + }, + "nativeSrc": "18475:79:74", + "nodeType": "YulFunctionCall", + "src": "18475:79:74" + }, + "nativeSrc": "18475:79:74", + "nodeType": "YulExpressionStatement", + "src": "18475:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "18448:6:74", + "nodeType": "YulIdentifier", + "src": "18448:6:74" + }, + { + "name": "end", + "nativeSrc": "18456:3:74", + "nodeType": "YulIdentifier", + "src": "18456:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "18445:2:74", + "nodeType": "YulIdentifier", + "src": "18445:2:74" + }, + "nativeSrc": "18445:15:74", + "nodeType": "YulFunctionCall", + "src": "18445:15:74" + }, + "nativeSrc": "18442:122:74", + "nodeType": "YulIf", + "src": "18442:122:74" + }, + { + "body": { + "nativeSrc": "18649:144:74", + "nodeType": "YulBlock", + "src": "18649:144:74", + "statements": [ + { + "nativeSrc": "18664:21:74", + "nodeType": "YulVariableDeclaration", + "src": "18664:21:74", + "value": { + "name": "src", + "nativeSrc": "18682:3:74", + "nodeType": "YulIdentifier", + "src": "18682:3:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "18668:10:74", + "nodeType": "YulTypedName", + "src": "18668:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "18706:3:74", + "nodeType": "YulIdentifier", + "src": "18706:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "18732:10:74", + "nodeType": "YulIdentifier", + "src": "18732:10:74" + }, + { + "name": "end", + "nativeSrc": "18744:3:74", + "nodeType": "YulIdentifier", + "src": "18744:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "18711:20:74", + "nodeType": "YulIdentifier", + "src": "18711:20:74" + }, + "nativeSrc": "18711:37:74", + "nodeType": "YulFunctionCall", + "src": "18711:37:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18699:6:74", + "nodeType": "YulIdentifier", + "src": "18699:6:74" + }, + "nativeSrc": "18699:50:74", + "nodeType": "YulFunctionCall", + "src": "18699:50:74" + }, + "nativeSrc": "18699:50:74", + "nodeType": "YulExpressionStatement", + "src": "18699:50:74" + }, + { + "nativeSrc": "18762:21:74", + "nodeType": "YulAssignment", + "src": "18762:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "18773:3:74", + "nodeType": "YulIdentifier", + "src": "18773:3:74" + }, + { + "kind": "number", + "nativeSrc": "18778:4:74", + "nodeType": "YulLiteral", + "src": "18778:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18769:3:74", + "nodeType": "YulIdentifier", + "src": "18769:3:74" + }, + "nativeSrc": "18769:14:74", + "nodeType": "YulFunctionCall", + "src": "18769:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "18762:3:74", + "nodeType": "YulIdentifier", + "src": "18762:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "18602:3:74", + "nodeType": "YulIdentifier", + "src": "18602:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "18607:6:74", + "nodeType": "YulIdentifier", + "src": "18607:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "18599:2:74", + "nodeType": "YulIdentifier", + "src": "18599:2:74" + }, + "nativeSrc": "18599:15:74", + "nodeType": "YulFunctionCall", + "src": "18599:15:74" + }, + "nativeSrc": "18573:220:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "18615:25:74", + "nodeType": "YulBlock", + "src": "18615:25:74", + "statements": [ + { + "nativeSrc": "18617:21:74", + "nodeType": "YulAssignment", + "src": "18617:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "18628:3:74", + "nodeType": "YulIdentifier", + "src": "18628:3:74" + }, + { + "kind": "number", + "nativeSrc": "18633:4:74", + "nodeType": "YulLiteral", + "src": "18633:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18624:3:74", + "nodeType": "YulIdentifier", + "src": "18624:3:74" + }, + "nativeSrc": "18624:14:74", + "nodeType": "YulFunctionCall", + "src": "18624:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "18617:3:74", + "nodeType": "YulIdentifier", + "src": "18617:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "18577:21:74", + "nodeType": "YulBlock", + "src": "18577:21:74", + "statements": [ + { + "nativeSrc": "18579:17:74", + "nodeType": "YulVariableDeclaration", + "src": "18579:17:74", + "value": { + "name": "offset", + "nativeSrc": "18590:6:74", + "nodeType": "YulIdentifier", + "src": "18590:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "18583:3:74", + "nodeType": "YulTypedName", + "src": "18583:3:74", + "type": "" + } + ] + } + ] + }, + "src": "18573:220:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "18089:710:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18161:6:74", + "nodeType": "YulTypedName", + "src": "18161:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "18169:6:74", + "nodeType": "YulTypedName", + "src": "18169:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18177:3:74", + "nodeType": "YulTypedName", + "src": "18177:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "18185:5:74", + "nodeType": "YulTypedName", + "src": "18185:5:74", + "type": "" + } + ], + "src": "18089:710:74" + }, + { + "body": { + "nativeSrc": "18899:293:74", + "nodeType": "YulBlock", + "src": "18899:293:74", + "statements": [ + { + "body": { + "nativeSrc": "18948:83:74", + "nodeType": "YulBlock", + "src": "18948:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "18950:77:74", + "nodeType": "YulIdentifier", + "src": "18950:77:74" + }, + "nativeSrc": "18950:79:74", + "nodeType": "YulFunctionCall", + "src": "18950:79:74" + }, + "nativeSrc": "18950:79:74", + "nodeType": "YulExpressionStatement", + "src": "18950:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18927:6:74", + "nodeType": "YulIdentifier", + "src": "18927:6:74" + }, + { + "kind": "number", + "nativeSrc": "18935:4:74", + "nodeType": "YulLiteral", + "src": "18935:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18923:3:74", + "nodeType": "YulIdentifier", + "src": "18923:3:74" + }, + "nativeSrc": "18923:17:74", + "nodeType": "YulFunctionCall", + "src": "18923:17:74" + }, + { + "name": "end", + "nativeSrc": "18942:3:74", + "nodeType": "YulIdentifier", + "src": "18942:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "18919:3:74", + "nodeType": "YulIdentifier", + "src": "18919:3:74" + }, + "nativeSrc": "18919:27:74", + "nodeType": "YulFunctionCall", + "src": "18919:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "18912:6:74", + "nodeType": "YulIdentifier", + "src": "18912:6:74" + }, + "nativeSrc": "18912:35:74", + "nodeType": "YulFunctionCall", + "src": "18912:35:74" + }, + "nativeSrc": "18909:122:74", + "nodeType": "YulIf", + "src": "18909:122:74" + }, + { + "nativeSrc": "19040:34:74", + "nodeType": "YulVariableDeclaration", + "src": "19040:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19067:6:74", + "nodeType": "YulIdentifier", + "src": "19067:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "19054:12:74", + "nodeType": "YulIdentifier", + "src": "19054:12:74" + }, + "nativeSrc": "19054:20:74", + "nodeType": "YulFunctionCall", + "src": "19054:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "19044:6:74", + "nodeType": "YulTypedName", + "src": "19044:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "19083:103:74", + "nodeType": "YulAssignment", + "src": "19083:103:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19159:6:74", + "nodeType": "YulIdentifier", + "src": "19159:6:74" + }, + { + "kind": "number", + "nativeSrc": "19167:4:74", + "nodeType": "YulLiteral", + "src": "19167:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19155:3:74", + "nodeType": "YulIdentifier", + "src": "19155:3:74" + }, + "nativeSrc": "19155:17:74", + "nodeType": "YulFunctionCall", + "src": "19155:17:74" + }, + { + "name": "length", + "nativeSrc": "19174:6:74", + "nodeType": "YulIdentifier", + "src": "19174:6:74" + }, + { + "name": "end", + "nativeSrc": "19182:3:74", + "nodeType": "YulIdentifier", + "src": "19182:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "19092:62:74", + "nodeType": "YulIdentifier", + "src": "19092:62:74" + }, + "nativeSrc": "19092:94:74", + "nodeType": "YulFunctionCall", + "src": "19092:94:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "19083:5:74", + "nodeType": "YulIdentifier", + "src": "19083:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "18822:370:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18877:6:74", + "nodeType": "YulTypedName", + "src": "18877:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18885:3:74", + "nodeType": "YulTypedName", + "src": "18885:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "18893:5:74", + "nodeType": "YulTypedName", + "src": "18893:5:74", + "type": "" + } + ], + "src": "18822:370:74" + }, + { + "body": { + "nativeSrc": "19264:241:74", + "nodeType": "YulBlock", + "src": "19264:241:74", + "statements": [ + { + "body": { + "nativeSrc": "19369:22:74", + "nodeType": "YulBlock", + "src": "19369:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "19371:16:74", + "nodeType": "YulIdentifier", + "src": "19371:16:74" + }, + "nativeSrc": "19371:18:74", + "nodeType": "YulFunctionCall", + "src": "19371:18:74" + }, + "nativeSrc": "19371:18:74", + "nodeType": "YulExpressionStatement", + "src": "19371:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "19341:6:74", + "nodeType": "YulIdentifier", + "src": "19341:6:74" + }, + { + "kind": "number", + "nativeSrc": "19349:18:74", + "nodeType": "YulLiteral", + "src": "19349:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19338:2:74", + "nodeType": "YulIdentifier", + "src": "19338:2:74" + }, + "nativeSrc": "19338:30:74", + "nodeType": "YulFunctionCall", + "src": "19338:30:74" + }, + "nativeSrc": "19335:56:74", + "nodeType": "YulIf", + "src": "19335:56:74" + }, + { + "nativeSrc": "19401:37:74", + "nodeType": "YulAssignment", + "src": "19401:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "19431:6:74", + "nodeType": "YulIdentifier", + "src": "19431:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "19409:21:74", + "nodeType": "YulIdentifier", + "src": "19409:21:74" + }, + "nativeSrc": "19409:29:74", + "nodeType": "YulFunctionCall", + "src": "19409:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "19401:4:74", + "nodeType": "YulIdentifier", + "src": "19401:4:74" + } + ] + }, + { + "nativeSrc": "19475:23:74", + "nodeType": "YulAssignment", + "src": "19475:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "19487:4:74", + "nodeType": "YulIdentifier", + "src": "19487:4:74" + }, + { + "kind": "number", + "nativeSrc": "19493:4:74", + "nodeType": "YulLiteral", + "src": "19493:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19483:3:74", + "nodeType": "YulIdentifier", + "src": "19483:3:74" + }, + "nativeSrc": "19483:15:74", + "nodeType": "YulFunctionCall", + "src": "19483:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "19475:4:74", + "nodeType": "YulIdentifier", + "src": "19475:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "19198:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "19248:6:74", + "nodeType": "YulTypedName", + "src": "19248:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "19259:4:74", + "nodeType": "YulTypedName", + "src": "19259:4:74", + "type": "" + } + ], + "src": "19198:307:74" + }, + { + "body": { + "nativeSrc": "19594:340:74", + "nodeType": "YulBlock", + "src": "19594:340:74", + "statements": [ + { + "nativeSrc": "19604:74:74", + "nodeType": "YulAssignment", + "src": "19604:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "19670:6:74", + "nodeType": "YulIdentifier", + "src": "19670:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "19629:40:74", + "nodeType": "YulIdentifier", + "src": "19629:40:74" + }, + "nativeSrc": "19629:48:74", + "nodeType": "YulFunctionCall", + "src": "19629:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "19613:15:74", + "nodeType": "YulIdentifier", + "src": "19613:15:74" + }, + "nativeSrc": "19613:65:74", + "nodeType": "YulFunctionCall", + "src": "19613:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "19604:5:74", + "nodeType": "YulIdentifier", + "src": "19604:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "19694:5:74", + "nodeType": "YulIdentifier", + "src": "19694:5:74" + }, + { + "name": "length", + "nativeSrc": "19701:6:74", + "nodeType": "YulIdentifier", + "src": "19701:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19687:6:74", + "nodeType": "YulIdentifier", + "src": "19687:6:74" + }, + "nativeSrc": "19687:21:74", + "nodeType": "YulFunctionCall", + "src": "19687:21:74" + }, + "nativeSrc": "19687:21:74", + "nodeType": "YulExpressionStatement", + "src": "19687:21:74" + }, + { + "nativeSrc": "19717:27:74", + "nodeType": "YulVariableDeclaration", + "src": "19717:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "19732:5:74", + "nodeType": "YulIdentifier", + "src": "19732:5:74" + }, + { + "kind": "number", + "nativeSrc": "19739:4:74", + "nodeType": "YulLiteral", + "src": "19739:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19728:3:74", + "nodeType": "YulIdentifier", + "src": "19728:3:74" + }, + "nativeSrc": "19728:16:74", + "nodeType": "YulFunctionCall", + "src": "19728:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "19721:3:74", + "nodeType": "YulTypedName", + "src": "19721:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "19782:83:74", + "nodeType": "YulBlock", + "src": "19782:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "19784:77:74", + "nodeType": "YulIdentifier", + "src": "19784:77:74" + }, + "nativeSrc": "19784:79:74", + "nodeType": "YulFunctionCall", + "src": "19784:79:74" + }, + "nativeSrc": "19784:79:74", + "nodeType": "YulExpressionStatement", + "src": "19784:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "19763:3:74", + "nodeType": "YulIdentifier", + "src": "19763:3:74" + }, + { + "name": "length", + "nativeSrc": "19768:6:74", + "nodeType": "YulIdentifier", + "src": "19768:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19759:3:74", + "nodeType": "YulIdentifier", + "src": "19759:3:74" + }, + "nativeSrc": "19759:16:74", + "nodeType": "YulFunctionCall", + "src": "19759:16:74" + }, + { + "name": "end", + "nativeSrc": "19777:3:74", + "nodeType": "YulIdentifier", + "src": "19777:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19756:2:74", + "nodeType": "YulIdentifier", + "src": "19756:2:74" + }, + "nativeSrc": "19756:25:74", + "nodeType": "YulFunctionCall", + "src": "19756:25:74" + }, + "nativeSrc": "19753:112:74", + "nodeType": "YulIf", + "src": "19753:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "19911:3:74", + "nodeType": "YulIdentifier", + "src": "19911:3:74" + }, + { + "name": "dst", + "nativeSrc": "19916:3:74", + "nodeType": "YulIdentifier", + "src": "19916:3:74" + }, + { + "name": "length", + "nativeSrc": "19921:6:74", + "nodeType": "YulIdentifier", + "src": "19921:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "19874:36:74", + "nodeType": "YulIdentifier", + "src": "19874:36:74" + }, + "nativeSrc": "19874:54:74", + "nodeType": "YulFunctionCall", + "src": "19874:54:74" + }, + "nativeSrc": "19874:54:74", + "nodeType": "YulExpressionStatement", + "src": "19874:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "19511:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "19567:3:74", + "nodeType": "YulTypedName", + "src": "19567:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "19572:6:74", + "nodeType": "YulTypedName", + "src": "19572:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19580:3:74", + "nodeType": "YulTypedName", + "src": "19580:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "19588:5:74", + "nodeType": "YulTypedName", + "src": "19588:5:74", + "type": "" + } + ], + "src": "19511:423:74" + }, + { + "body": { + "nativeSrc": "20014:277:74", + "nodeType": "YulBlock", + "src": "20014:277:74", + "statements": [ + { + "body": { + "nativeSrc": "20063:83:74", + "nodeType": "YulBlock", + "src": "20063:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "20065:77:74", + "nodeType": "YulIdentifier", + "src": "20065:77:74" + }, + "nativeSrc": "20065:79:74", + "nodeType": "YulFunctionCall", + "src": "20065:79:74" + }, + "nativeSrc": "20065:79:74", + "nodeType": "YulExpressionStatement", + "src": "20065:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20042:6:74", + "nodeType": "YulIdentifier", + "src": "20042:6:74" + }, + { + "kind": "number", + "nativeSrc": "20050:4:74", + "nodeType": "YulLiteral", + "src": "20050:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20038:3:74", + "nodeType": "YulIdentifier", + "src": "20038:3:74" + }, + "nativeSrc": "20038:17:74", + "nodeType": "YulFunctionCall", + "src": "20038:17:74" + }, + { + "name": "end", + "nativeSrc": "20057:3:74", + "nodeType": "YulIdentifier", + "src": "20057:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20034:3:74", + "nodeType": "YulIdentifier", + "src": "20034:3:74" + }, + "nativeSrc": "20034:27:74", + "nodeType": "YulFunctionCall", + "src": "20034:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "20027:6:74", + "nodeType": "YulIdentifier", + "src": "20027:6:74" + }, + "nativeSrc": "20027:35:74", + "nodeType": "YulFunctionCall", + "src": "20027:35:74" + }, + "nativeSrc": "20024:122:74", + "nodeType": "YulIf", + "src": "20024:122:74" + }, + { + "nativeSrc": "20155:34:74", + "nodeType": "YulVariableDeclaration", + "src": "20155:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20182:6:74", + "nodeType": "YulIdentifier", + "src": "20182:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20169:12:74", + "nodeType": "YulIdentifier", + "src": "20169:12:74" + }, + "nativeSrc": "20169:20:74", + "nodeType": "YulFunctionCall", + "src": "20169:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "20159:6:74", + "nodeType": "YulTypedName", + "src": "20159:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "20198:87:74", + "nodeType": "YulAssignment", + "src": "20198:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20258:6:74", + "nodeType": "YulIdentifier", + "src": "20258:6:74" + }, + { + "kind": "number", + "nativeSrc": "20266:4:74", + "nodeType": "YulLiteral", + "src": "20266:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20254:3:74", + "nodeType": "YulIdentifier", + "src": "20254:3:74" + }, + "nativeSrc": "20254:17:74", + "nodeType": "YulFunctionCall", + "src": "20254:17:74" + }, + { + "name": "length", + "nativeSrc": "20273:6:74", + "nodeType": "YulIdentifier", + "src": "20273:6:74" + }, + { + "name": "end", + "nativeSrc": "20281:3:74", + "nodeType": "YulIdentifier", + "src": "20281:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "20207:46:74", + "nodeType": "YulIdentifier", + "src": "20207:46:74" + }, + "nativeSrc": "20207:78:74", + "nodeType": "YulFunctionCall", + "src": "20207:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "20198:5:74", + "nodeType": "YulIdentifier", + "src": "20198:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "19953:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "19992:6:74", + "nodeType": "YulTypedName", + "src": "19992:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "20000:3:74", + "nodeType": "YulTypedName", + "src": "20000:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "20008:5:74", + "nodeType": "YulTypedName", + "src": "20008:5:74", + "type": "" + } + ], + "src": "19953:338:74" + }, + { + "body": { + "nativeSrc": "20490:1316:74", + "nodeType": "YulBlock", + "src": "20490:1316:74", + "statements": [ + { + "body": { + "nativeSrc": "20537:83:74", + "nodeType": "YulBlock", + "src": "20537:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "20539:77:74", + "nodeType": "YulIdentifier", + "src": "20539:77:74" + }, + "nativeSrc": "20539:79:74", + "nodeType": "YulFunctionCall", + "src": "20539:79:74" + }, + "nativeSrc": "20539:79:74", + "nodeType": "YulExpressionStatement", + "src": "20539:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "20511:7:74", + "nodeType": "YulIdentifier", + "src": "20511:7:74" + }, + { + "name": "headStart", + "nativeSrc": "20520:9:74", + "nodeType": "YulIdentifier", + "src": "20520:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20507:3:74", + "nodeType": "YulIdentifier", + "src": "20507:3:74" + }, + "nativeSrc": "20507:23:74", + "nodeType": "YulFunctionCall", + "src": "20507:23:74" + }, + { + "kind": "number", + "nativeSrc": "20532:3:74", + "nodeType": "YulLiteral", + "src": "20532:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20503:3:74", + "nodeType": "YulIdentifier", + "src": "20503:3:74" + }, + "nativeSrc": "20503:33:74", + "nodeType": "YulFunctionCall", + "src": "20503:33:74" + }, + "nativeSrc": "20500:120:74", + "nodeType": "YulIf", + "src": "20500:120:74" + }, + { + "nativeSrc": "20630:117:74", + "nodeType": "YulBlock", + "src": "20630:117:74", + "statements": [ + { + "nativeSrc": "20645:15:74", + "nodeType": "YulVariableDeclaration", + "src": "20645:15:74", + "value": { + "kind": "number", + "nativeSrc": "20659:1:74", + "nodeType": "YulLiteral", + "src": "20659:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20649:6:74", + "nodeType": "YulTypedName", + "src": "20649:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "20674:63:74", + "nodeType": "YulAssignment", + "src": "20674:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20709:9:74", + "nodeType": "YulIdentifier", + "src": "20709:9:74" + }, + { + "name": "offset", + "nativeSrc": "20720:6:74", + "nodeType": "YulIdentifier", + "src": "20720:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20705:3:74", + "nodeType": "YulIdentifier", + "src": "20705:3:74" + }, + "nativeSrc": "20705:22:74", + "nodeType": "YulFunctionCall", + "src": "20705:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "20729:7:74", + "nodeType": "YulIdentifier", + "src": "20729:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "20684:20:74", + "nodeType": "YulIdentifier", + "src": "20684:20:74" + }, + "nativeSrc": "20684:53:74", + "nodeType": "YulFunctionCall", + "src": "20684:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "20674:6:74", + "nodeType": "YulIdentifier", + "src": "20674:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "20757:118:74", + "nodeType": "YulBlock", + "src": "20757:118:74", + "statements": [ + { + "nativeSrc": "20772:16:74", + "nodeType": "YulVariableDeclaration", + "src": "20772:16:74", + "value": { + "kind": "number", + "nativeSrc": "20786:2:74", + "nodeType": "YulLiteral", + "src": "20786:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20776:6:74", + "nodeType": "YulTypedName", + "src": "20776:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "20802:63:74", + "nodeType": "YulAssignment", + "src": "20802:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20837:9:74", + "nodeType": "YulIdentifier", + "src": "20837:9:74" + }, + { + "name": "offset", + "nativeSrc": "20848:6:74", + "nodeType": "YulIdentifier", + "src": "20848:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20833:3:74", + "nodeType": "YulIdentifier", + "src": "20833:3:74" + }, + "nativeSrc": "20833:22:74", + "nodeType": "YulFunctionCall", + "src": "20833:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "20857:7:74", + "nodeType": "YulIdentifier", + "src": "20857:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "20812:20:74", + "nodeType": "YulIdentifier", + "src": "20812:20:74" + }, + "nativeSrc": "20812:53:74", + "nodeType": "YulFunctionCall", + "src": "20812:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "20802:6:74", + "nodeType": "YulIdentifier", + "src": "20802:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "20885:303:74", + "nodeType": "YulBlock", + "src": "20885:303:74", + "statements": [ + { + "nativeSrc": "20900:46:74", + "nodeType": "YulVariableDeclaration", + "src": "20900:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20931:9:74", + "nodeType": "YulIdentifier", + "src": "20931:9:74" + }, + { + "kind": "number", + "nativeSrc": "20942:2:74", + "nodeType": "YulLiteral", + "src": "20942:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20927:3:74", + "nodeType": "YulIdentifier", + "src": "20927:3:74" + }, + "nativeSrc": "20927:18:74", + "nodeType": "YulFunctionCall", + "src": "20927:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20914:12:74", + "nodeType": "YulIdentifier", + "src": "20914:12:74" + }, + "nativeSrc": "20914:32:74", + "nodeType": "YulFunctionCall", + "src": "20914:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "20904:6:74", + "nodeType": "YulTypedName", + "src": "20904:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "20993:83:74", + "nodeType": "YulBlock", + "src": "20993:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "20995:77:74", + "nodeType": "YulIdentifier", + "src": "20995:77:74" + }, + "nativeSrc": "20995:79:74", + "nodeType": "YulFunctionCall", + "src": "20995:79:74" + }, + "nativeSrc": "20995:79:74", + "nodeType": "YulExpressionStatement", + "src": "20995:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20965:6:74", + "nodeType": "YulIdentifier", + "src": "20965:6:74" + }, + { + "kind": "number", + "nativeSrc": "20973:18:74", + "nodeType": "YulLiteral", + "src": "20973:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20962:2:74", + "nodeType": "YulIdentifier", + "src": "20962:2:74" + }, + "nativeSrc": "20962:30:74", + "nodeType": "YulFunctionCall", + "src": "20962:30:74" + }, + "nativeSrc": "20959:117:74", + "nodeType": "YulIf", + "src": "20959:117:74" + }, + { + "nativeSrc": "21090:88:74", + "nodeType": "YulAssignment", + "src": "21090:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21150:9:74", + "nodeType": "YulIdentifier", + "src": "21150:9:74" + }, + { + "name": "offset", + "nativeSrc": "21161:6:74", + "nodeType": "YulIdentifier", + "src": "21161:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21146:3:74", + "nodeType": "YulIdentifier", + "src": "21146:3:74" + }, + "nativeSrc": "21146:22:74", + "nodeType": "YulFunctionCall", + "src": "21146:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "21170:7:74", + "nodeType": "YulIdentifier", + "src": "21170:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "21100:45:74", + "nodeType": "YulIdentifier", + "src": "21100:45:74" + }, + "nativeSrc": "21100:78:74", + "nodeType": "YulFunctionCall", + "src": "21100:78:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "21090:6:74", + "nodeType": "YulIdentifier", + "src": "21090:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "21198:303:74", + "nodeType": "YulBlock", + "src": "21198:303:74", + "statements": [ + { + "nativeSrc": "21213:46:74", + "nodeType": "YulVariableDeclaration", + "src": "21213:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21244:9:74", + "nodeType": "YulIdentifier", + "src": "21244:9:74" + }, + { + "kind": "number", + "nativeSrc": "21255:2:74", + "nodeType": "YulLiteral", + "src": "21255:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21240:3:74", + "nodeType": "YulIdentifier", + "src": "21240:3:74" + }, + "nativeSrc": "21240:18:74", + "nodeType": "YulFunctionCall", + "src": "21240:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "21227:12:74", + "nodeType": "YulIdentifier", + "src": "21227:12:74" + }, + "nativeSrc": "21227:32:74", + "nodeType": "YulFunctionCall", + "src": "21227:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21217:6:74", + "nodeType": "YulTypedName", + "src": "21217:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "21306:83:74", + "nodeType": "YulBlock", + "src": "21306:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "21308:77:74", + "nodeType": "YulIdentifier", + "src": "21308:77:74" + }, + "nativeSrc": "21308:79:74", + "nodeType": "YulFunctionCall", + "src": "21308:79:74" + }, + "nativeSrc": "21308:79:74", + "nodeType": "YulExpressionStatement", + "src": "21308:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21278:6:74", + "nodeType": "YulIdentifier", + "src": "21278:6:74" + }, + { + "kind": "number", + "nativeSrc": "21286:18:74", + "nodeType": "YulLiteral", + "src": "21286:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "21275:2:74", + "nodeType": "YulIdentifier", + "src": "21275:2:74" + }, + "nativeSrc": "21275:30:74", + "nodeType": "YulFunctionCall", + "src": "21275:30:74" + }, + "nativeSrc": "21272:117:74", + "nodeType": "YulIf", + "src": "21272:117:74" + }, + { + "nativeSrc": "21403:88:74", + "nodeType": "YulAssignment", + "src": "21403:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21463:9:74", + "nodeType": "YulIdentifier", + "src": "21463:9:74" + }, + { + "name": "offset", + "nativeSrc": "21474:6:74", + "nodeType": "YulIdentifier", + "src": "21474:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21459:3:74", + "nodeType": "YulIdentifier", + "src": "21459:3:74" + }, + "nativeSrc": "21459:22:74", + "nodeType": "YulFunctionCall", + "src": "21459:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "21483:7:74", + "nodeType": "YulIdentifier", + "src": "21483:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "21413:45:74", + "nodeType": "YulIdentifier", + "src": "21413:45:74" + }, + "nativeSrc": "21413:78:74", + "nodeType": "YulFunctionCall", + "src": "21413:78:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "21403:6:74", + "nodeType": "YulIdentifier", + "src": "21403:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "21511:288:74", + "nodeType": "YulBlock", + "src": "21511:288:74", + "statements": [ + { + "nativeSrc": "21526:47:74", + "nodeType": "YulVariableDeclaration", + "src": "21526:47:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21557:9:74", + "nodeType": "YulIdentifier", + "src": "21557:9:74" + }, + { + "kind": "number", + "nativeSrc": "21568:3:74", + "nodeType": "YulLiteral", + "src": "21568:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21553:3:74", + "nodeType": "YulIdentifier", + "src": "21553:3:74" + }, + "nativeSrc": "21553:19:74", + "nodeType": "YulFunctionCall", + "src": "21553:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "21540:12:74", + "nodeType": "YulIdentifier", + "src": "21540:12:74" + }, + "nativeSrc": "21540:33:74", + "nodeType": "YulFunctionCall", + "src": "21540:33:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21530:6:74", + "nodeType": "YulTypedName", + "src": "21530:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "21620:83:74", + "nodeType": "YulBlock", + "src": "21620:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "21622:77:74", + "nodeType": "YulIdentifier", + "src": "21622:77:74" + }, + "nativeSrc": "21622:79:74", + "nodeType": "YulFunctionCall", + "src": "21622:79:74" + }, + "nativeSrc": "21622:79:74", + "nodeType": "YulExpressionStatement", + "src": "21622:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21592:6:74", + "nodeType": "YulIdentifier", + "src": "21592:6:74" + }, + { + "kind": "number", + "nativeSrc": "21600:18:74", + "nodeType": "YulLiteral", + "src": "21600:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "21589:2:74", + "nodeType": "YulIdentifier", + "src": "21589:2:74" + }, + "nativeSrc": "21589:30:74", + "nodeType": "YulFunctionCall", + "src": "21589:30:74" + }, + "nativeSrc": "21586:117:74", + "nodeType": "YulIf", + "src": "21586:117:74" + }, + { + "nativeSrc": "21717:72:74", + "nodeType": "YulAssignment", + "src": "21717:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21761:9:74", + "nodeType": "YulIdentifier", + "src": "21761:9:74" + }, + { + "name": "offset", + "nativeSrc": "21772:6:74", + "nodeType": "YulIdentifier", + "src": "21772:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21757:3:74", + "nodeType": "YulIdentifier", + "src": "21757:3:74" + }, + "nativeSrc": "21757:22:74", + "nodeType": "YulFunctionCall", + "src": "21757:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "21781:7:74", + "nodeType": "YulIdentifier", + "src": "21781:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "21727:29:74", + "nodeType": "YulIdentifier", + "src": "21727:29:74" + }, + "nativeSrc": "21727:62:74", + "nodeType": "YulFunctionCall", + "src": "21727:62:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "21717:6:74", + "nodeType": "YulIdentifier", + "src": "21717:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_array$_t_uint256_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptrt_bytes_memory_ptr", + "nativeSrc": "20297:1509:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "20428:9:74", + "nodeType": "YulTypedName", + "src": "20428:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "20439:7:74", + "nodeType": "YulTypedName", + "src": "20439:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "20451:6:74", + "nodeType": "YulTypedName", + "src": "20451:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "20459:6:74", + "nodeType": "YulTypedName", + "src": "20459:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "20467:6:74", + "nodeType": "YulTypedName", + "src": "20467:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "20475:6:74", + "nodeType": "YulTypedName", + "src": "20475:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "20483:6:74", + "nodeType": "YulTypedName", + "src": "20483:6:74", + "type": "" + } + ], + "src": "20297:1509:74" + }, + { + "body": { + "nativeSrc": "21927:646:74", + "nodeType": "YulBlock", + "src": "21927:646:74", + "statements": [ + { + "body": { + "nativeSrc": "21974:83:74", + "nodeType": "YulBlock", + "src": "21974:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "21976:77:74", + "nodeType": "YulIdentifier", + "src": "21976:77:74" + }, + "nativeSrc": "21976:79:74", + "nodeType": "YulFunctionCall", + "src": "21976:79:74" + }, + "nativeSrc": "21976:79:74", + "nodeType": "YulExpressionStatement", + "src": "21976:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "21948:7:74", + "nodeType": "YulIdentifier", + "src": "21948:7:74" + }, + { + "name": "headStart", + "nativeSrc": "21957:9:74", + "nodeType": "YulIdentifier", + "src": "21957:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "21944:3:74", + "nodeType": "YulIdentifier", + "src": "21944:3:74" + }, + "nativeSrc": "21944:23:74", + "nodeType": "YulFunctionCall", + "src": "21944:23:74" + }, + { + "kind": "number", + "nativeSrc": "21969:3:74", + "nodeType": "YulLiteral", + "src": "21969:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "21940:3:74", + "nodeType": "YulIdentifier", + "src": "21940:3:74" + }, + "nativeSrc": "21940:33:74", + "nodeType": "YulFunctionCall", + "src": "21940:33:74" + }, + "nativeSrc": "21937:120:74", + "nodeType": "YulIf", + "src": "21937:120:74" + }, + { + "nativeSrc": "22067:117:74", + "nodeType": "YulBlock", + "src": "22067:117:74", + "statements": [ + { + "nativeSrc": "22082:15:74", + "nodeType": "YulVariableDeclaration", + "src": "22082:15:74", + "value": { + "kind": "number", + "nativeSrc": "22096:1:74", + "nodeType": "YulLiteral", + "src": "22096:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22086:6:74", + "nodeType": "YulTypedName", + "src": "22086:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22111:63:74", + "nodeType": "YulAssignment", + "src": "22111:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22146:9:74", + "nodeType": "YulIdentifier", + "src": "22146:9:74" + }, + { + "name": "offset", + "nativeSrc": "22157:6:74", + "nodeType": "YulIdentifier", + "src": "22157:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22142:3:74", + "nodeType": "YulIdentifier", + "src": "22142:3:74" + }, + "nativeSrc": "22142:22:74", + "nodeType": "YulFunctionCall", + "src": "22142:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22166:7:74", + "nodeType": "YulIdentifier", + "src": "22166:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "22121:20:74", + "nodeType": "YulIdentifier", + "src": "22121:20:74" + }, + "nativeSrc": "22121:53:74", + "nodeType": "YulFunctionCall", + "src": "22121:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "22111:6:74", + "nodeType": "YulIdentifier", + "src": "22111:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22194:118:74", + "nodeType": "YulBlock", + "src": "22194:118:74", + "statements": [ + { + "nativeSrc": "22209:16:74", + "nodeType": "YulVariableDeclaration", + "src": "22209:16:74", + "value": { + "kind": "number", + "nativeSrc": "22223:2:74", + "nodeType": "YulLiteral", + "src": "22223:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22213:6:74", + "nodeType": "YulTypedName", + "src": "22213:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22239:63:74", + "nodeType": "YulAssignment", + "src": "22239:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22274:9:74", + "nodeType": "YulIdentifier", + "src": "22274:9:74" + }, + { + "name": "offset", + "nativeSrc": "22285:6:74", + "nodeType": "YulIdentifier", + "src": "22285:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22270:3:74", + "nodeType": "YulIdentifier", + "src": "22270:3:74" + }, + "nativeSrc": "22270:22:74", + "nodeType": "YulFunctionCall", + "src": "22270:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22294:7:74", + "nodeType": "YulIdentifier", + "src": "22294:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "22249:20:74", + "nodeType": "YulIdentifier", + "src": "22249:20:74" + }, + "nativeSrc": "22249:53:74", + "nodeType": "YulFunctionCall", + "src": "22249:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "22239:6:74", + "nodeType": "YulIdentifier", + "src": "22239:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22322:117:74", + "nodeType": "YulBlock", + "src": "22322:117:74", + "statements": [ + { + "nativeSrc": "22337:16:74", + "nodeType": "YulVariableDeclaration", + "src": "22337:16:74", + "value": { + "kind": "number", + "nativeSrc": "22351:2:74", + "nodeType": "YulLiteral", + "src": "22351:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22341:6:74", + "nodeType": "YulTypedName", + "src": "22341:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22367:62:74", + "nodeType": "YulAssignment", + "src": "22367:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22401:9:74", + "nodeType": "YulIdentifier", + "src": "22401:9:74" + }, + { + "name": "offset", + "nativeSrc": "22412:6:74", + "nodeType": "YulIdentifier", + "src": "22412:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22397:3:74", + "nodeType": "YulIdentifier", + "src": "22397:3:74" + }, + "nativeSrc": "22397:22:74", + "nodeType": "YulFunctionCall", + "src": "22397:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22421:7:74", + "nodeType": "YulIdentifier", + "src": "22421:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint32", + "nativeSrc": "22377:19:74", + "nodeType": "YulIdentifier", + "src": "22377:19:74" + }, + "nativeSrc": "22377:52:74", + "nodeType": "YulFunctionCall", + "src": "22377:52:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "22367:6:74", + "nodeType": "YulIdentifier", + "src": "22367:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22449:117:74", + "nodeType": "YulBlock", + "src": "22449:117:74", + "statements": [ + { + "nativeSrc": "22464:16:74", + "nodeType": "YulVariableDeclaration", + "src": "22464:16:74", + "value": { + "kind": "number", + "nativeSrc": "22478:2:74", + "nodeType": "YulLiteral", + "src": "22478:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22468:6:74", + "nodeType": "YulTypedName", + "src": "22468:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22494:62:74", + "nodeType": "YulAssignment", + "src": "22494:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22528:9:74", + "nodeType": "YulIdentifier", + "src": "22528:9:74" + }, + { + "name": "offset", + "nativeSrc": "22539:6:74", + "nodeType": "YulIdentifier", + "src": "22539:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22524:3:74", + "nodeType": "YulIdentifier", + "src": "22524:3:74" + }, + "nativeSrc": "22524:22:74", + "nodeType": "YulFunctionCall", + "src": "22524:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22548:7:74", + "nodeType": "YulIdentifier", + "src": "22548:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "22504:19:74", + "nodeType": "YulIdentifier", + "src": "22504:19:74" + }, + "nativeSrc": "22504:52:74", + "nodeType": "YulFunctionCall", + "src": "22504:52:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "22494:6:74", + "nodeType": "YulIdentifier", + "src": "22494:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_uint32t_uint64", + "nativeSrc": "21812:761:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "21873:9:74", + "nodeType": "YulTypedName", + "src": "21873:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "21884:7:74", + "nodeType": "YulTypedName", + "src": "21884:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "21896:6:74", + "nodeType": "YulTypedName", + "src": "21896:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "21904:6:74", + "nodeType": "YulTypedName", + "src": "21904:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "21912:6:74", + "nodeType": "YulTypedName", + "src": "21912:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "21920:6:74", + "nodeType": "YulTypedName", + "src": "21920:6:74", + "type": "" + } + ], + "src": "21812:761:74" + }, + { + "body": { + "nativeSrc": "22651:66:74", + "nodeType": "YulBlock", + "src": "22651:66:74", + "statements": [ + { + "nativeSrc": "22661:50:74", + "nodeType": "YulAssignment", + "src": "22661:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22705:5:74", + "nodeType": "YulIdentifier", + "src": "22705:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "22674:30:74", + "nodeType": "YulIdentifier", + "src": "22674:30:74" + }, + "nativeSrc": "22674:37:74", + "nodeType": "YulFunctionCall", + "src": "22674:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "22661:9:74", + "nodeType": "YulIdentifier", + "src": "22661:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "22579:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22631:5:74", + "nodeType": "YulTypedName", + "src": "22631:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "22641:9:74", + "nodeType": "YulTypedName", + "src": "22641:9:74", + "type": "" + } + ], + "src": "22579:138:74" + }, + { + "body": { + "nativeSrc": "22800:78:74", + "nodeType": "YulBlock", + "src": "22800:78:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22817:3:74", + "nodeType": "YulIdentifier", + "src": "22817:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22865:5:74", + "nodeType": "YulIdentifier", + "src": "22865:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "22822:42:74", + "nodeType": "YulIdentifier", + "src": "22822:42:74" + }, + "nativeSrc": "22822:49:74", + "nodeType": "YulFunctionCall", + "src": "22822:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22810:6:74", + "nodeType": "YulIdentifier", + "src": "22810:6:74" + }, + "nativeSrc": "22810:62:74", + "nodeType": "YulFunctionCall", + "src": "22810:62:74" + }, + "nativeSrc": "22810:62:74", + "nodeType": "YulExpressionStatement", + "src": "22810:62:74" + } + ] + }, + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "22723:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22788:5:74", + "nodeType": "YulTypedName", + "src": "22788:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "22795:3:74", + "nodeType": "YulTypedName", + "src": "22795:3:74", + "type": "" + } + ], + "src": "22723:155:74" + }, + { + "body": { + "nativeSrc": "22994:136:74", + "nodeType": "YulBlock", + "src": "22994:136:74", + "statements": [ + { + "nativeSrc": "23004:26:74", + "nodeType": "YulAssignment", + "src": "23004:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23016:9:74", + "nodeType": "YulIdentifier", + "src": "23016:9:74" + }, + { + "kind": "number", + "nativeSrc": "23027:2:74", + "nodeType": "YulLiteral", + "src": "23027:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23012:3:74", + "nodeType": "YulIdentifier", + "src": "23012:3:74" + }, + "nativeSrc": "23012:18:74", + "nodeType": "YulFunctionCall", + "src": "23012:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "23004:4:74", + "nodeType": "YulIdentifier", + "src": "23004:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "23096:6:74", + "nodeType": "YulIdentifier", + "src": "23096:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23109:9:74", + "nodeType": "YulIdentifier", + "src": "23109:9:74" + }, + { + "kind": "number", + "nativeSrc": "23120:1:74", + "nodeType": "YulLiteral", + "src": "23120:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23105:3:74", + "nodeType": "YulIdentifier", + "src": "23105:3:74" + }, + "nativeSrc": "23105:17:74", + "nodeType": "YulFunctionCall", + "src": "23105:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "23040:55:74", + "nodeType": "YulIdentifier", + "src": "23040:55:74" + }, + "nativeSrc": "23040:83:74", + "nodeType": "YulFunctionCall", + "src": "23040:83:74" + }, + "nativeSrc": "23040:83:74", + "nodeType": "YulExpressionStatement", + "src": "23040:83:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed", + "nativeSrc": "22884:246:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22966:9:74", + "nodeType": "YulTypedName", + "src": "22966:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "22978:6:74", + "nodeType": "YulTypedName", + "src": "22978:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "22989:4:74", + "nodeType": "YulTypedName", + "src": "22989:4:74", + "type": "" + } + ], + "src": "22884:246:74" + }, + { + "body": { + "nativeSrc": "23180:45:74", + "nodeType": "YulBlock", + "src": "23180:45:74", + "statements": [ + { + "nativeSrc": "23190:29:74", + "nodeType": "YulAssignment", + "src": "23190:29:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23205:5:74", + "nodeType": "YulIdentifier", + "src": "23205:5:74" + }, + { + "kind": "number", + "nativeSrc": "23212:6:74", + "nodeType": "YulLiteral", + "src": "23212:6:74", + "type": "", + "value": "0xffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "23201:3:74", + "nodeType": "YulIdentifier", + "src": "23201:3:74" + }, + "nativeSrc": "23201:18:74", + "nodeType": "YulFunctionCall", + "src": "23201:18:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "23190:7:74", + "nodeType": "YulIdentifier", + "src": "23190:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint16", + "nativeSrc": "23136:89:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23162:5:74", + "nodeType": "YulTypedName", + "src": "23162:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "23172:7:74", + "nodeType": "YulTypedName", + "src": "23172:7:74", + "type": "" + } + ], + "src": "23136:89:74" + }, + { + "body": { + "nativeSrc": "23273:78:74", + "nodeType": "YulBlock", + "src": "23273:78:74", + "statements": [ + { + "body": { + "nativeSrc": "23329:16:74", + "nodeType": "YulBlock", + "src": "23329:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "23338:1:74", + "nodeType": "YulLiteral", + "src": "23338:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "23341:1:74", + "nodeType": "YulLiteral", + "src": "23341:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "23331:6:74", + "nodeType": "YulIdentifier", + "src": "23331:6:74" + }, + "nativeSrc": "23331:12:74", + "nodeType": "YulFunctionCall", + "src": "23331:12:74" + }, + "nativeSrc": "23331:12:74", + "nodeType": "YulExpressionStatement", + "src": "23331:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23296:5:74", + "nodeType": "YulIdentifier", + "src": "23296:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23320:5:74", + "nodeType": "YulIdentifier", + "src": "23320:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint16", + "nativeSrc": "23303:16:74", + "nodeType": "YulIdentifier", + "src": "23303:16:74" + }, + "nativeSrc": "23303:23:74", + "nodeType": "YulFunctionCall", + "src": "23303:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "23293:2:74", + "nodeType": "YulIdentifier", + "src": "23293:2:74" + }, + "nativeSrc": "23293:34:74", + "nodeType": "YulFunctionCall", + "src": "23293:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "23286:6:74", + "nodeType": "YulIdentifier", + "src": "23286:6:74" + }, + "nativeSrc": "23286:42:74", + "nodeType": "YulFunctionCall", + "src": "23286:42:74" + }, + "nativeSrc": "23283:62:74", + "nodeType": "YulIf", + "src": "23283:62:74" + } + ] + }, + "name": "validator_revert_t_uint16", + "nativeSrc": "23231:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23266:5:74", + "nodeType": "YulTypedName", + "src": "23266:5:74", + "type": "" + } + ], + "src": "23231:120:74" + }, + { + "body": { + "nativeSrc": "23408:86:74", + "nodeType": "YulBlock", + "src": "23408:86:74", + "statements": [ + { + "nativeSrc": "23418:29:74", + "nodeType": "YulAssignment", + "src": "23418:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "23440:6:74", + "nodeType": "YulIdentifier", + "src": "23440:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "23427:12:74", + "nodeType": "YulIdentifier", + "src": "23427:12:74" + }, + "nativeSrc": "23427:20:74", + "nodeType": "YulFunctionCall", + "src": "23427:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23418:5:74", + "nodeType": "YulIdentifier", + "src": "23418:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23482:5:74", + "nodeType": "YulIdentifier", + "src": "23482:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint16", + "nativeSrc": "23456:25:74", + "nodeType": "YulIdentifier", + "src": "23456:25:74" + }, + "nativeSrc": "23456:32:74", + "nodeType": "YulFunctionCall", + "src": "23456:32:74" + }, + "nativeSrc": "23456:32:74", + "nodeType": "YulExpressionStatement", + "src": "23456:32:74" + } + ] + }, + "name": "abi_decode_t_uint16", + "nativeSrc": "23357:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "23386:6:74", + "nodeType": "YulTypedName", + "src": "23386:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "23394:3:74", + "nodeType": "YulTypedName", + "src": "23394:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "23402:5:74", + "nodeType": "YulTypedName", + "src": "23402:5:74", + "type": "" + } + ], + "src": "23357:137:74" + }, + { + "body": { + "nativeSrc": "23582:390:74", + "nodeType": "YulBlock", + "src": "23582:390:74", + "statements": [ + { + "body": { + "nativeSrc": "23628:83:74", + "nodeType": "YulBlock", + "src": "23628:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "23630:77:74", + "nodeType": "YulIdentifier", + "src": "23630:77:74" + }, + "nativeSrc": "23630:79:74", + "nodeType": "YulFunctionCall", + "src": "23630:79:74" + }, + "nativeSrc": "23630:79:74", + "nodeType": "YulExpressionStatement", + "src": "23630:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "23603:7:74", + "nodeType": "YulIdentifier", + "src": "23603:7:74" + }, + { + "name": "headStart", + "nativeSrc": "23612:9:74", + "nodeType": "YulIdentifier", + "src": "23612:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23599:3:74", + "nodeType": "YulIdentifier", + "src": "23599:3:74" + }, + "nativeSrc": "23599:23:74", + "nodeType": "YulFunctionCall", + "src": "23599:23:74" + }, + { + "kind": "number", + "nativeSrc": "23624:2:74", + "nodeType": "YulLiteral", + "src": "23624:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "23595:3:74", + "nodeType": "YulIdentifier", + "src": "23595:3:74" + }, + "nativeSrc": "23595:32:74", + "nodeType": "YulFunctionCall", + "src": "23595:32:74" + }, + "nativeSrc": "23592:119:74", + "nodeType": "YulIf", + "src": "23592:119:74" + }, + { + "nativeSrc": "23721:117:74", + "nodeType": "YulBlock", + "src": "23721:117:74", + "statements": [ + { + "nativeSrc": "23736:15:74", + "nodeType": "YulVariableDeclaration", + "src": "23736:15:74", + "value": { + "kind": "number", + "nativeSrc": "23750:1:74", + "nodeType": "YulLiteral", + "src": "23750:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23740:6:74", + "nodeType": "YulTypedName", + "src": "23740:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23765:63:74", + "nodeType": "YulAssignment", + "src": "23765:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23800:9:74", + "nodeType": "YulIdentifier", + "src": "23800:9:74" + }, + { + "name": "offset", + "nativeSrc": "23811:6:74", + "nodeType": "YulIdentifier", + "src": "23811:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23796:3:74", + "nodeType": "YulIdentifier", + "src": "23796:3:74" + }, + "nativeSrc": "23796:22:74", + "nodeType": "YulFunctionCall", + "src": "23796:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "23820:7:74", + "nodeType": "YulIdentifier", + "src": "23820:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "23775:20:74", + "nodeType": "YulIdentifier", + "src": "23775:20:74" + }, + "nativeSrc": "23775:53:74", + "nodeType": "YulFunctionCall", + "src": "23775:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "23765:6:74", + "nodeType": "YulIdentifier", + "src": "23765:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "23848:117:74", + "nodeType": "YulBlock", + "src": "23848:117:74", + "statements": [ + { + "nativeSrc": "23863:16:74", + "nodeType": "YulVariableDeclaration", + "src": "23863:16:74", + "value": { + "kind": "number", + "nativeSrc": "23877:2:74", + "nodeType": "YulLiteral", + "src": "23877:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23867:6:74", + "nodeType": "YulTypedName", + "src": "23867:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23893:62:74", + "nodeType": "YulAssignment", + "src": "23893:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23927:9:74", + "nodeType": "YulIdentifier", + "src": "23927:9:74" + }, + { + "name": "offset", + "nativeSrc": "23938:6:74", + "nodeType": "YulIdentifier", + "src": "23938:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23923:3:74", + "nodeType": "YulIdentifier", + "src": "23923:3:74" + }, + "nativeSrc": "23923:22:74", + "nodeType": "YulFunctionCall", + "src": "23923:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "23947:7:74", + "nodeType": "YulIdentifier", + "src": "23947:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint16", + "nativeSrc": "23903:19:74", + "nodeType": "YulIdentifier", + "src": "23903:19:74" + }, + "nativeSrc": "23903:52:74", + "nodeType": "YulFunctionCall", + "src": "23903:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "23893:6:74", + "nodeType": "YulIdentifier", + "src": "23893:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint16", + "nativeSrc": "23500:472:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23544:9:74", + "nodeType": "YulTypedName", + "src": "23544:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "23555:7:74", + "nodeType": "YulTypedName", + "src": "23555:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "23567:6:74", + "nodeType": "YulTypedName", + "src": "23567:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "23575:6:74", + "nodeType": "YulTypedName", + "src": "23575:6:74", + "type": "" + } + ], + "src": "23500:472:74" + }, + { + "body": { + "nativeSrc": "24074:122:74", + "nodeType": "YulBlock", + "src": "24074:122:74", + "statements": [ + { + "nativeSrc": "24084:26:74", + "nodeType": "YulAssignment", + "src": "24084:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24096:9:74", + "nodeType": "YulIdentifier", + "src": "24096:9:74" + }, + { + "kind": "number", + "nativeSrc": "24107:2:74", + "nodeType": "YulLiteral", + "src": "24107:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24092:3:74", + "nodeType": "YulIdentifier", + "src": "24092:3:74" + }, + "nativeSrc": "24092:18:74", + "nodeType": "YulFunctionCall", + "src": "24092:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24084:4:74", + "nodeType": "YulIdentifier", + "src": "24084:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "24162:6:74", + "nodeType": "YulIdentifier", + "src": "24162:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24175:9:74", + "nodeType": "YulIdentifier", + "src": "24175:9:74" + }, + { + "kind": "number", + "nativeSrc": "24186:1:74", + "nodeType": "YulLiteral", + "src": "24186:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24171:3:74", + "nodeType": "YulIdentifier", + "src": "24171:3:74" + }, + "nativeSrc": "24171:17:74", + "nodeType": "YulFunctionCall", + "src": "24171:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint32_to_t_uint32_fromStack", + "nativeSrc": "24120:41:74", + "nodeType": "YulIdentifier", + "src": "24120:41:74" + }, + "nativeSrc": "24120:69:74", + "nodeType": "YulFunctionCall", + "src": "24120:69:74" + }, + "nativeSrc": "24120:69:74", + "nodeType": "YulExpressionStatement", + "src": "24120:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed", + "nativeSrc": "23978:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "24046:9:74", + "nodeType": "YulTypedName", + "src": "24046:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "24058:6:74", + "nodeType": "YulTypedName", + "src": "24058:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "24069:4:74", + "nodeType": "YulTypedName", + "src": "24069:4:74", + "type": "" + } + ], + "src": "23978:218:74" + }, + { + "body": { + "nativeSrc": "24284:229:74", + "nodeType": "YulBlock", + "src": "24284:229:74", + "statements": [ + { + "body": { + "nativeSrc": "24389:22:74", + "nodeType": "YulBlock", + "src": "24389:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "24391:16:74", + "nodeType": "YulIdentifier", + "src": "24391:16:74" + }, + "nativeSrc": "24391:18:74", + "nodeType": "YulFunctionCall", + "src": "24391:18:74" + }, + "nativeSrc": "24391:18:74", + "nodeType": "YulExpressionStatement", + "src": "24391:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "24361:6:74", + "nodeType": "YulIdentifier", + "src": "24361:6:74" + }, + { + "kind": "number", + "nativeSrc": "24369:18:74", + "nodeType": "YulLiteral", + "src": "24369:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "24358:2:74", + "nodeType": "YulIdentifier", + "src": "24358:2:74" + }, + "nativeSrc": "24358:30:74", + "nodeType": "YulFunctionCall", + "src": "24358:30:74" + }, + "nativeSrc": "24355:56:74", + "nodeType": "YulIf", + "src": "24355:56:74" + }, + { + "nativeSrc": "24421:25:74", + "nodeType": "YulAssignment", + "src": "24421:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "24433:6:74", + "nodeType": "YulIdentifier", + "src": "24433:6:74" + }, + { + "kind": "number", + "nativeSrc": "24441:4:74", + "nodeType": "YulLiteral", + "src": "24441:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "24429:3:74", + "nodeType": "YulIdentifier", + "src": "24429:3:74" + }, + "nativeSrc": "24429:17:74", + "nodeType": "YulFunctionCall", + "src": "24429:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "24421:4:74", + "nodeType": "YulIdentifier", + "src": "24421:4:74" + } + ] + }, + { + "nativeSrc": "24483:23:74", + "nodeType": "YulAssignment", + "src": "24483:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "24495:4:74", + "nodeType": "YulIdentifier", + "src": "24495:4:74" + }, + { + "kind": "number", + "nativeSrc": "24501:4:74", + "nodeType": "YulLiteral", + "src": "24501:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24491:3:74", + "nodeType": "YulIdentifier", + "src": "24491:3:74" + }, + "nativeSrc": "24491:15:74", + "nodeType": "YulFunctionCall", + "src": "24491:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "24483:4:74", + "nodeType": "YulIdentifier", + "src": "24483:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "24202:311:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "24268:6:74", + "nodeType": "YulTypedName", + "src": "24268:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "24279:4:74", + "nodeType": "YulTypedName", + "src": "24279:4:74", + "type": "" + } + ], + "src": "24202:311:74" + }, + { + "body": { + "nativeSrc": "24638:608:74", + "nodeType": "YulBlock", + "src": "24638:608:74", + "statements": [ + { + "nativeSrc": "24648:90:74", + "nodeType": "YulAssignment", + "src": "24648:90:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "24730:6:74", + "nodeType": "YulIdentifier", + "src": "24730:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "24673:56:74", + "nodeType": "YulIdentifier", + "src": "24673:56:74" + }, + "nativeSrc": "24673:64:74", + "nodeType": "YulFunctionCall", + "src": "24673:64:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "24657:15:74", + "nodeType": "YulIdentifier", + "src": "24657:15:74" + }, + "nativeSrc": "24657:81:74", + "nodeType": "YulFunctionCall", + "src": "24657:81:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "24648:5:74", + "nodeType": "YulIdentifier", + "src": "24648:5:74" + } + ] + }, + { + "nativeSrc": "24747:16:74", + "nodeType": "YulVariableDeclaration", + "src": "24747:16:74", + "value": { + "name": "array", + "nativeSrc": "24758:5:74", + "nodeType": "YulIdentifier", + "src": "24758:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "24751:3:74", + "nodeType": "YulTypedName", + "src": "24751:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "24780:5:74", + "nodeType": "YulIdentifier", + "src": "24780:5:74" + }, + { + "name": "length", + "nativeSrc": "24787:6:74", + "nodeType": "YulIdentifier", + "src": "24787:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24773:6:74", + "nodeType": "YulIdentifier", + "src": "24773:6:74" + }, + "nativeSrc": "24773:21:74", + "nodeType": "YulFunctionCall", + "src": "24773:21:74" + }, + "nativeSrc": "24773:21:74", + "nodeType": "YulExpressionStatement", + "src": "24773:21:74" + }, + { + "nativeSrc": "24803:23:74", + "nodeType": "YulAssignment", + "src": "24803:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "24814:5:74", + "nodeType": "YulIdentifier", + "src": "24814:5:74" + }, + { + "kind": "number", + "nativeSrc": "24821:4:74", + "nodeType": "YulLiteral", + "src": "24821:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24810:3:74", + "nodeType": "YulIdentifier", + "src": "24810:3:74" + }, + "nativeSrc": "24810:16:74", + "nodeType": "YulFunctionCall", + "src": "24810:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "24803:3:74", + "nodeType": "YulIdentifier", + "src": "24803:3:74" + } + ] + }, + { + "nativeSrc": "24836:44:74", + "nodeType": "YulVariableDeclaration", + "src": "24836:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "24854:6:74", + "nodeType": "YulIdentifier", + "src": "24854:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "24866:6:74", + "nodeType": "YulIdentifier", + "src": "24866:6:74" + }, + { + "kind": "number", + "nativeSrc": "24874:4:74", + "nodeType": "YulLiteral", + "src": "24874:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "24862:3:74", + "nodeType": "YulIdentifier", + "src": "24862:3:74" + }, + "nativeSrc": "24862:17:74", + "nodeType": "YulFunctionCall", + "src": "24862:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24850:3:74", + "nodeType": "YulIdentifier", + "src": "24850:3:74" + }, + "nativeSrc": "24850:30:74", + "nodeType": "YulFunctionCall", + "src": "24850:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "24840:6:74", + "nodeType": "YulTypedName", + "src": "24840:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "24908:103:74", + "nodeType": "YulBlock", + "src": "24908:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "24922:77:74", + "nodeType": "YulIdentifier", + "src": "24922:77:74" + }, + "nativeSrc": "24922:79:74", + "nodeType": "YulFunctionCall", + "src": "24922:79:74" + }, + "nativeSrc": "24922:79:74", + "nodeType": "YulExpressionStatement", + "src": "24922:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "24895:6:74", + "nodeType": "YulIdentifier", + "src": "24895:6:74" + }, + { + "name": "end", + "nativeSrc": "24903:3:74", + "nodeType": "YulIdentifier", + "src": "24903:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "24892:2:74", + "nodeType": "YulIdentifier", + "src": "24892:2:74" + }, + "nativeSrc": "24892:15:74", + "nodeType": "YulFunctionCall", + "src": "24892:15:74" + }, + "nativeSrc": "24889:122:74", + "nodeType": "YulIf", + "src": "24889:122:74" + }, + { + "body": { + "nativeSrc": "25096:144:74", + "nodeType": "YulBlock", + "src": "25096:144:74", + "statements": [ + { + "nativeSrc": "25111:21:74", + "nodeType": "YulVariableDeclaration", + "src": "25111:21:74", + "value": { + "name": "src", + "nativeSrc": "25129:3:74", + "nodeType": "YulIdentifier", + "src": "25129:3:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "25115:10:74", + "nodeType": "YulTypedName", + "src": "25115:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "25153:3:74", + "nodeType": "YulIdentifier", + "src": "25153:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "25179:10:74", + "nodeType": "YulIdentifier", + "src": "25179:10:74" + }, + { + "name": "end", + "nativeSrc": "25191:3:74", + "nodeType": "YulIdentifier", + "src": "25191:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "25158:20:74", + "nodeType": "YulIdentifier", + "src": "25158:20:74" + }, + "nativeSrc": "25158:37:74", + "nodeType": "YulFunctionCall", + "src": "25158:37:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25146:6:74", + "nodeType": "YulIdentifier", + "src": "25146:6:74" + }, + "nativeSrc": "25146:50:74", + "nodeType": "YulFunctionCall", + "src": "25146:50:74" + }, + "nativeSrc": "25146:50:74", + "nodeType": "YulExpressionStatement", + "src": "25146:50:74" + }, + { + "nativeSrc": "25209:21:74", + "nodeType": "YulAssignment", + "src": "25209:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "25220:3:74", + "nodeType": "YulIdentifier", + "src": "25220:3:74" + }, + { + "kind": "number", + "nativeSrc": "25225:4:74", + "nodeType": "YulLiteral", + "src": "25225:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25216:3:74", + "nodeType": "YulIdentifier", + "src": "25216:3:74" + }, + "nativeSrc": "25216:14:74", + "nodeType": "YulFunctionCall", + "src": "25216:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "25209:3:74", + "nodeType": "YulIdentifier", + "src": "25209:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "25049:3:74", + "nodeType": "YulIdentifier", + "src": "25049:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "25054:6:74", + "nodeType": "YulIdentifier", + "src": "25054:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "25046:2:74", + "nodeType": "YulIdentifier", + "src": "25046:2:74" + }, + "nativeSrc": "25046:15:74", + "nodeType": "YulFunctionCall", + "src": "25046:15:74" + }, + "nativeSrc": "25020:220:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "25062:25:74", + "nodeType": "YulBlock", + "src": "25062:25:74", + "statements": [ + { + "nativeSrc": "25064:21:74", + "nodeType": "YulAssignment", + "src": "25064:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "25075:3:74", + "nodeType": "YulIdentifier", + "src": "25075:3:74" + }, + { + "kind": "number", + "nativeSrc": "25080:4:74", + "nodeType": "YulLiteral", + "src": "25080:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25071:3:74", + "nodeType": "YulIdentifier", + "src": "25071:3:74" + }, + "nativeSrc": "25071:14:74", + "nodeType": "YulFunctionCall", + "src": "25071:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "25064:3:74", + "nodeType": "YulIdentifier", + "src": "25064:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "25024:21:74", + "nodeType": "YulBlock", + "src": "25024:21:74", + "statements": [ + { + "nativeSrc": "25026:17:74", + "nodeType": "YulVariableDeclaration", + "src": "25026:17:74", + "value": { + "name": "offset", + "nativeSrc": "25037:6:74", + "nodeType": "YulIdentifier", + "src": "25037:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "25030:3:74", + "nodeType": "YulTypedName", + "src": "25030:3:74", + "type": "" + } + ] + } + ] + }, + "src": "25020:220:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "24536:710:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "24608:6:74", + "nodeType": "YulTypedName", + "src": "24608:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "24616:6:74", + "nodeType": "YulTypedName", + "src": "24616:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "24624:3:74", + "nodeType": "YulTypedName", + "src": "24624:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "24632:5:74", + "nodeType": "YulTypedName", + "src": "24632:5:74", + "type": "" + } + ], + "src": "24536:710:74" + }, + { + "body": { + "nativeSrc": "25346:293:74", + "nodeType": "YulBlock", + "src": "25346:293:74", + "statements": [ + { + "body": { + "nativeSrc": "25395:83:74", + "nodeType": "YulBlock", + "src": "25395:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "25397:77:74", + "nodeType": "YulIdentifier", + "src": "25397:77:74" + }, + "nativeSrc": "25397:79:74", + "nodeType": "YulFunctionCall", + "src": "25397:79:74" + }, + "nativeSrc": "25397:79:74", + "nodeType": "YulExpressionStatement", + "src": "25397:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25374:6:74", + "nodeType": "YulIdentifier", + "src": "25374:6:74" + }, + { + "kind": "number", + "nativeSrc": "25382:4:74", + "nodeType": "YulLiteral", + "src": "25382:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25370:3:74", + "nodeType": "YulIdentifier", + "src": "25370:3:74" + }, + "nativeSrc": "25370:17:74", + "nodeType": "YulFunctionCall", + "src": "25370:17:74" + }, + { + "name": "end", + "nativeSrc": "25389:3:74", + "nodeType": "YulIdentifier", + "src": "25389:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "25366:3:74", + "nodeType": "YulIdentifier", + "src": "25366:3:74" + }, + "nativeSrc": "25366:27:74", + "nodeType": "YulFunctionCall", + "src": "25366:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "25359:6:74", + "nodeType": "YulIdentifier", + "src": "25359:6:74" + }, + "nativeSrc": "25359:35:74", + "nodeType": "YulFunctionCall", + "src": "25359:35:74" + }, + "nativeSrc": "25356:122:74", + "nodeType": "YulIf", + "src": "25356:122:74" + }, + { + "nativeSrc": "25487:34:74", + "nodeType": "YulVariableDeclaration", + "src": "25487:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25514:6:74", + "nodeType": "YulIdentifier", + "src": "25514:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "25501:12:74", + "nodeType": "YulIdentifier", + "src": "25501:12:74" + }, + "nativeSrc": "25501:20:74", + "nodeType": "YulFunctionCall", + "src": "25501:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "25491:6:74", + "nodeType": "YulTypedName", + "src": "25491:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25530:103:74", + "nodeType": "YulAssignment", + "src": "25530:103:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25606:6:74", + "nodeType": "YulIdentifier", + "src": "25606:6:74" + }, + { + "kind": "number", + "nativeSrc": "25614:4:74", + "nodeType": "YulLiteral", + "src": "25614:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25602:3:74", + "nodeType": "YulIdentifier", + "src": "25602:3:74" + }, + "nativeSrc": "25602:17:74", + "nodeType": "YulFunctionCall", + "src": "25602:17:74" + }, + { + "name": "length", + "nativeSrc": "25621:6:74", + "nodeType": "YulIdentifier", + "src": "25621:6:74" + }, + { + "name": "end", + "nativeSrc": "25629:3:74", + "nodeType": "YulIdentifier", + "src": "25629:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "25539:62:74", + "nodeType": "YulIdentifier", + "src": "25539:62:74" + }, + "nativeSrc": "25539:94:74", + "nodeType": "YulFunctionCall", + "src": "25539:94:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "25530:5:74", + "nodeType": "YulIdentifier", + "src": "25530:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "25269:370:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "25324:6:74", + "nodeType": "YulTypedName", + "src": "25324:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "25332:3:74", + "nodeType": "YulTypedName", + "src": "25332:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "25340:5:74", + "nodeType": "YulTypedName", + "src": "25340:5:74", + "type": "" + } + ], + "src": "25269:370:74" + }, + { + "body": { + "nativeSrc": "25778:761:74", + "nodeType": "YulBlock", + "src": "25778:761:74", + "statements": [ + { + "body": { + "nativeSrc": "25824:83:74", + "nodeType": "YulBlock", + "src": "25824:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "25826:77:74", + "nodeType": "YulIdentifier", + "src": "25826:77:74" + }, + "nativeSrc": "25826:79:74", + "nodeType": "YulFunctionCall", + "src": "25826:79:74" + }, + "nativeSrc": "25826:79:74", + "nodeType": "YulExpressionStatement", + "src": "25826:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "25799:7:74", + "nodeType": "YulIdentifier", + "src": "25799:7:74" + }, + { + "name": "headStart", + "nativeSrc": "25808:9:74", + "nodeType": "YulIdentifier", + "src": "25808:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "25795:3:74", + "nodeType": "YulIdentifier", + "src": "25795:3:74" + }, + "nativeSrc": "25795:23:74", + "nodeType": "YulFunctionCall", + "src": "25795:23:74" + }, + { + "kind": "number", + "nativeSrc": "25820:2:74", + "nodeType": "YulLiteral", + "src": "25820:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "25791:3:74", + "nodeType": "YulIdentifier", + "src": "25791:3:74" + }, + "nativeSrc": "25791:32:74", + "nodeType": "YulFunctionCall", + "src": "25791:32:74" + }, + "nativeSrc": "25788:119:74", + "nodeType": "YulIf", + "src": "25788:119:74" + }, + { + "nativeSrc": "25917:302:74", + "nodeType": "YulBlock", + "src": "25917:302:74", + "statements": [ + { + "nativeSrc": "25932:45:74", + "nodeType": "YulVariableDeclaration", + "src": "25932:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25963:9:74", + "nodeType": "YulIdentifier", + "src": "25963:9:74" + }, + { + "kind": "number", + "nativeSrc": "25974:1:74", + "nodeType": "YulLiteral", + "src": "25974:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25959:3:74", + "nodeType": "YulIdentifier", + "src": "25959:3:74" + }, + "nativeSrc": "25959:17:74", + "nodeType": "YulFunctionCall", + "src": "25959:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "25946:12:74", + "nodeType": "YulIdentifier", + "src": "25946:12:74" + }, + "nativeSrc": "25946:31:74", + "nodeType": "YulFunctionCall", + "src": "25946:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "25936:6:74", + "nodeType": "YulTypedName", + "src": "25936:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "26024:83:74", + "nodeType": "YulBlock", + "src": "26024:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "26026:77:74", + "nodeType": "YulIdentifier", + "src": "26026:77:74" + }, + "nativeSrc": "26026:79:74", + "nodeType": "YulFunctionCall", + "src": "26026:79:74" + }, + "nativeSrc": "26026:79:74", + "nodeType": "YulExpressionStatement", + "src": "26026:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "25996:6:74", + "nodeType": "YulIdentifier", + "src": "25996:6:74" + }, + { + "kind": "number", + "nativeSrc": "26004:18:74", + "nodeType": "YulLiteral", + "src": "26004:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "25993:2:74", + "nodeType": "YulIdentifier", + "src": "25993:2:74" + }, + "nativeSrc": "25993:30:74", + "nodeType": "YulFunctionCall", + "src": "25993:30:74" + }, + "nativeSrc": "25990:117:74", + "nodeType": "YulIf", + "src": "25990:117:74" + }, + { + "nativeSrc": "26121:88:74", + "nodeType": "YulAssignment", + "src": "26121:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26181:9:74", + "nodeType": "YulIdentifier", + "src": "26181:9:74" + }, + { + "name": "offset", + "nativeSrc": "26192:6:74", + "nodeType": "YulIdentifier", + "src": "26192:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26177:3:74", + "nodeType": "YulIdentifier", + "src": "26177:3:74" + }, + "nativeSrc": "26177:22:74", + "nodeType": "YulFunctionCall", + "src": "26177:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26201:7:74", + "nodeType": "YulIdentifier", + "src": "26201:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_address_$dyn_memory_ptr", + "nativeSrc": "26131:45:74", + "nodeType": "YulIdentifier", + "src": "26131:45:74" + }, + "nativeSrc": "26131:78:74", + "nodeType": "YulFunctionCall", + "src": "26131:78:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "26121:6:74", + "nodeType": "YulIdentifier", + "src": "26121:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "26229:303:74", + "nodeType": "YulBlock", + "src": "26229:303:74", + "statements": [ + { + "nativeSrc": "26244:46:74", + "nodeType": "YulVariableDeclaration", + "src": "26244:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26275:9:74", + "nodeType": "YulIdentifier", + "src": "26275:9:74" + }, + { + "kind": "number", + "nativeSrc": "26286:2:74", + "nodeType": "YulLiteral", + "src": "26286:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26271:3:74", + "nodeType": "YulIdentifier", + "src": "26271:3:74" + }, + "nativeSrc": "26271:18:74", + "nodeType": "YulFunctionCall", + "src": "26271:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "26258:12:74", + "nodeType": "YulIdentifier", + "src": "26258:12:74" + }, + "nativeSrc": "26258:32:74", + "nodeType": "YulFunctionCall", + "src": "26258:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "26248:6:74", + "nodeType": "YulTypedName", + "src": "26248:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "26337:83:74", + "nodeType": "YulBlock", + "src": "26337:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "26339:77:74", + "nodeType": "YulIdentifier", + "src": "26339:77:74" + }, + "nativeSrc": "26339:79:74", + "nodeType": "YulFunctionCall", + "src": "26339:79:74" + }, + "nativeSrc": "26339:79:74", + "nodeType": "YulExpressionStatement", + "src": "26339:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "26309:6:74", + "nodeType": "YulIdentifier", + "src": "26309:6:74" + }, + { + "kind": "number", + "nativeSrc": "26317:18:74", + "nodeType": "YulLiteral", + "src": "26317:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "26306:2:74", + "nodeType": "YulIdentifier", + "src": "26306:2:74" + }, + "nativeSrc": "26306:30:74", + "nodeType": "YulFunctionCall", + "src": "26306:30:74" + }, + "nativeSrc": "26303:117:74", + "nodeType": "YulIf", + "src": "26303:117:74" + }, + { + "nativeSrc": "26434:88:74", + "nodeType": "YulAssignment", + "src": "26434:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "26494:9:74", + "nodeType": "YulIdentifier", + "src": "26494:9:74" + }, + { + "name": "offset", + "nativeSrc": "26505:6:74", + "nodeType": "YulIdentifier", + "src": "26505:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26490:3:74", + "nodeType": "YulIdentifier", + "src": "26490:3:74" + }, + "nativeSrc": "26490:22:74", + "nodeType": "YulFunctionCall", + "src": "26490:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "26514:7:74", + "nodeType": "YulIdentifier", + "src": "26514:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "26444:45:74", + "nodeType": "YulIdentifier", + "src": "26444:45:74" + }, + "nativeSrc": "26444:78:74", + "nodeType": "YulFunctionCall", + "src": "26444:78:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "26434:6:74", + "nodeType": "YulIdentifier", + "src": "26434:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_address_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "25645:894:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "25740:9:74", + "nodeType": "YulTypedName", + "src": "25740:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "25751:7:74", + "nodeType": "YulTypedName", + "src": "25751:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "25763:6:74", + "nodeType": "YulTypedName", + "src": "25763:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "25771:6:74", + "nodeType": "YulTypedName", + "src": "25771:6:74", + "type": "" + } + ], + "src": "25645:894:74" + }, + { + "body": { + "nativeSrc": "26619:40:74", + "nodeType": "YulBlock", + "src": "26619:40:74", + "statements": [ + { + "nativeSrc": "26630:22:74", + "nodeType": "YulAssignment", + "src": "26630:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "26646:5:74", + "nodeType": "YulIdentifier", + "src": "26646:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "26640:5:74", + "nodeType": "YulIdentifier", + "src": "26640:5:74" + }, + "nativeSrc": "26640:12:74", + "nodeType": "YulFunctionCall", + "src": "26640:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "26630:6:74", + "nodeType": "YulIdentifier", + "src": "26630:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "26545:114:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "26602:5:74", + "nodeType": "YulTypedName", + "src": "26602:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "26612:6:74", + "nodeType": "YulTypedName", + "src": "26612:6:74", + "type": "" + } + ], + "src": "26545:114:74" + }, + { + "body": { + "nativeSrc": "26776:73:74", + "nodeType": "YulBlock", + "src": "26776:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26793:3:74", + "nodeType": "YulIdentifier", + "src": "26793:3:74" + }, + { + "name": "length", + "nativeSrc": "26798:6:74", + "nodeType": "YulIdentifier", + "src": "26798:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "26786:6:74", + "nodeType": "YulIdentifier", + "src": "26786:6:74" + }, + "nativeSrc": "26786:19:74", + "nodeType": "YulFunctionCall", + "src": "26786:19:74" + }, + "nativeSrc": "26786:19:74", + "nodeType": "YulExpressionStatement", + "src": "26786:19:74" + }, + { + "nativeSrc": "26814:29:74", + "nodeType": "YulAssignment", + "src": "26814:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26833:3:74", + "nodeType": "YulIdentifier", + "src": "26833:3:74" + }, + { + "kind": "number", + "nativeSrc": "26838:4:74", + "nodeType": "YulLiteral", + "src": "26838:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26829:3:74", + "nodeType": "YulIdentifier", + "src": "26829:3:74" + }, + "nativeSrc": "26829:14:74", + "nodeType": "YulFunctionCall", + "src": "26829:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "26814:11:74", + "nodeType": "YulIdentifier", + "src": "26814:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "26665:184:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "26748:3:74", + "nodeType": "YulTypedName", + "src": "26748:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "26753:6:74", + "nodeType": "YulTypedName", + "src": "26753:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "26764:11:74", + "nodeType": "YulTypedName", + "src": "26764:11:74", + "type": "" + } + ], + "src": "26665:184:74" + }, + { + "body": { + "nativeSrc": "26927:60:74", + "nodeType": "YulBlock", + "src": "26927:60:74", + "statements": [ + { + "nativeSrc": "26937:11:74", + "nodeType": "YulAssignment", + "src": "26937:11:74", + "value": { + "name": "ptr", + "nativeSrc": "26945:3:74", + "nodeType": "YulIdentifier", + "src": "26945:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "26937:4:74", + "nodeType": "YulIdentifier", + "src": "26937:4:74" + } + ] + }, + { + "nativeSrc": "26958:22:74", + "nodeType": "YulAssignment", + "src": "26958:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "26970:3:74", + "nodeType": "YulIdentifier", + "src": "26970:3:74" + }, + { + "kind": "number", + "nativeSrc": "26975:4:74", + "nodeType": "YulLiteral", + "src": "26975:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26966:3:74", + "nodeType": "YulIdentifier", + "src": "26966:3:74" + }, + "nativeSrc": "26966:14:74", + "nodeType": "YulFunctionCall", + "src": "26966:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "26958:4:74", + "nodeType": "YulIdentifier", + "src": "26958:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "26855:132:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "26914:3:74", + "nodeType": "YulTypedName", + "src": "26914:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "26922:4:74", + "nodeType": "YulTypedName", + "src": "26922:4:74", + "type": "" + } + ], + "src": "26855:132:74" + }, + { + "body": { + "nativeSrc": "27048:53:74", + "nodeType": "YulBlock", + "src": "27048:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27065:3:74", + "nodeType": "YulIdentifier", + "src": "27065:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "27088:5:74", + "nodeType": "YulIdentifier", + "src": "27088:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "27070:17:74", + "nodeType": "YulIdentifier", + "src": "27070:17:74" + }, + "nativeSrc": "27070:24:74", + "nodeType": "YulFunctionCall", + "src": "27070:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27058:6:74", + "nodeType": "YulIdentifier", + "src": "27058:6:74" + }, + "nativeSrc": "27058:37:74", + "nodeType": "YulFunctionCall", + "src": "27058:37:74" + }, + "nativeSrc": "27058:37:74", + "nodeType": "YulExpressionStatement", + "src": "27058:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256", + "nativeSrc": "26993:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "27036:5:74", + "nodeType": "YulTypedName", + "src": "27036:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "27043:3:74", + "nodeType": "YulTypedName", + "src": "27043:3:74", + "type": "" + } + ], + "src": "26993:108:74" + }, + { + "body": { + "nativeSrc": "27187:99:74", + "nodeType": "YulBlock", + "src": "27187:99:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "27231:6:74", + "nodeType": "YulIdentifier", + "src": "27231:6:74" + }, + { + "name": "pos", + "nativeSrc": "27239:3:74", + "nodeType": "YulIdentifier", + "src": "27239:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nativeSrc": "27197:33:74", + "nodeType": "YulIdentifier", + "src": "27197:33:74" + }, + "nativeSrc": "27197:46:74", + "nodeType": "YulFunctionCall", + "src": "27197:46:74" + }, + "nativeSrc": "27197:46:74", + "nodeType": "YulExpressionStatement", + "src": "27197:46:74" + }, + { + "nativeSrc": "27252:28:74", + "nodeType": "YulAssignment", + "src": "27252:28:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27270:3:74", + "nodeType": "YulIdentifier", + "src": "27270:3:74" + }, + { + "kind": "number", + "nativeSrc": "27275:4:74", + "nodeType": "YulLiteral", + "src": "27275:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27266:3:74", + "nodeType": "YulIdentifier", + "src": "27266:3:74" + }, + "nativeSrc": "27266:14:74", + "nodeType": "YulFunctionCall", + "src": "27266:14:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "27252:10:74", + "nodeType": "YulIdentifier", + "src": "27252:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nativeSrc": "27107:179:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "27160:6:74", + "nodeType": "YulTypedName", + "src": "27160:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "27168:3:74", + "nodeType": "YulTypedName", + "src": "27168:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "27176:10:74", + "nodeType": "YulTypedName", + "src": "27176:10:74", + "type": "" + } + ], + "src": "27107:179:74" + }, + { + "body": { + "nativeSrc": "27367:38:74", + "nodeType": "YulBlock", + "src": "27367:38:74", + "statements": [ + { + "nativeSrc": "27377:22:74", + "nodeType": "YulAssignment", + "src": "27377:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "27389:3:74", + "nodeType": "YulIdentifier", + "src": "27389:3:74" + }, + { + "kind": "number", + "nativeSrc": "27394:4:74", + "nodeType": "YulLiteral", + "src": "27394:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27385:3:74", + "nodeType": "YulIdentifier", + "src": "27385:3:74" + }, + "nativeSrc": "27385:14:74", + "nodeType": "YulFunctionCall", + "src": "27385:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "27377:4:74", + "nodeType": "YulIdentifier", + "src": "27377:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "27292:113:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "27354:3:74", + "nodeType": "YulTypedName", + "src": "27354:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "27362:4:74", + "nodeType": "YulTypedName", + "src": "27362:4:74", + "type": "" + } + ], + "src": "27292:113:74" + }, + { + "body": { + "nativeSrc": "27565:608:74", + "nodeType": "YulBlock", + "src": "27565:608:74", + "statements": [ + { + "nativeSrc": "27575:68:74", + "nodeType": "YulVariableDeclaration", + "src": "27575:68:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "27637:5:74", + "nodeType": "YulIdentifier", + "src": "27637:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "27589:47:74", + "nodeType": "YulIdentifier", + "src": "27589:47:74" + }, + "nativeSrc": "27589:54:74", + "nodeType": "YulFunctionCall", + "src": "27589:54:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "27579:6:74", + "nodeType": "YulTypedName", + "src": "27579:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "27652:93:74", + "nodeType": "YulAssignment", + "src": "27652:93:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "27733:3:74", + "nodeType": "YulIdentifier", + "src": "27733:3:74" + }, + { + "name": "length", + "nativeSrc": "27738:6:74", + "nodeType": "YulIdentifier", + "src": "27738:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "27659:73:74", + "nodeType": "YulIdentifier", + "src": "27659:73:74" + }, + "nativeSrc": "27659:86:74", + "nodeType": "YulFunctionCall", + "src": "27659:86:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "27652:3:74", + "nodeType": "YulIdentifier", + "src": "27652:3:74" + } + ] + }, + { + "nativeSrc": "27754:71:74", + "nodeType": "YulVariableDeclaration", + "src": "27754:71:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "27819:5:74", + "nodeType": "YulIdentifier", + "src": "27819:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "27769:49:74", + "nodeType": "YulIdentifier", + "src": "27769:49:74" + }, + "nativeSrc": "27769:56:74", + "nodeType": "YulFunctionCall", + "src": "27769:56:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "27758:7:74", + "nodeType": "YulTypedName", + "src": "27758:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "27834:21:74", + "nodeType": "YulVariableDeclaration", + "src": "27834:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "27848:7:74", + "nodeType": "YulIdentifier", + "src": "27848:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "27838:6:74", + "nodeType": "YulTypedName", + "src": "27838:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "27924:224:74", + "nodeType": "YulBlock", + "src": "27924:224:74", + "statements": [ + { + "nativeSrc": "27938:34:74", + "nodeType": "YulVariableDeclaration", + "src": "27938:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "27965:6:74", + "nodeType": "YulIdentifier", + "src": "27965:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "27959:5:74", + "nodeType": "YulIdentifier", + "src": "27959:5:74" + }, + "nativeSrc": "27959:13:74", + "nodeType": "YulFunctionCall", + "src": "27959:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "27942:13:74", + "nodeType": "YulTypedName", + "src": "27942:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "27985:70:74", + "nodeType": "YulAssignment", + "src": "27985:70:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "28036:13:74", + "nodeType": "YulIdentifier", + "src": "28036:13:74" + }, + { + "name": "pos", + "nativeSrc": "28051:3:74", + "nodeType": "YulIdentifier", + "src": "28051:3:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nativeSrc": "27992:43:74", + "nodeType": "YulIdentifier", + "src": "27992:43:74" + }, + "nativeSrc": "27992:63:74", + "nodeType": "YulFunctionCall", + "src": "27992:63:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "27985:3:74", + "nodeType": "YulIdentifier", + "src": "27985:3:74" + } + ] + }, + { + "nativeSrc": "28068:70:74", + "nodeType": "YulAssignment", + "src": "28068:70:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "28131:6:74", + "nodeType": "YulIdentifier", + "src": "28131:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nativeSrc": "28078:52:74", + "nodeType": "YulIdentifier", + "src": "28078:52:74" + }, + "nativeSrc": "28078:60:74", + "nodeType": "YulFunctionCall", + "src": "28078:60:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "28068:6:74", + "nodeType": "YulIdentifier", + "src": "28068:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "27886:1:74", + "nodeType": "YulIdentifier", + "src": "27886:1:74" + }, + { + "name": "length", + "nativeSrc": "27889:6:74", + "nodeType": "YulIdentifier", + "src": "27889:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "27883:2:74", + "nodeType": "YulIdentifier", + "src": "27883:2:74" + }, + "nativeSrc": "27883:13:74", + "nodeType": "YulFunctionCall", + "src": "27883:13:74" + }, + "nativeSrc": "27864:284:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "27897:18:74", + "nodeType": "YulBlock", + "src": "27897:18:74", + "statements": [ + { + "nativeSrc": "27899:14:74", + "nodeType": "YulAssignment", + "src": "27899:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "27908:1:74", + "nodeType": "YulIdentifier", + "src": "27908:1:74" + }, + { + "kind": "number", + "nativeSrc": "27911:1:74", + "nodeType": "YulLiteral", + "src": "27911:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27904:3:74", + "nodeType": "YulIdentifier", + "src": "27904:3:74" + }, + "nativeSrc": "27904:9:74", + "nodeType": "YulFunctionCall", + "src": "27904:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "27899:1:74", + "nodeType": "YulIdentifier", + "src": "27899:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "27868:14:74", + "nodeType": "YulBlock", + "src": "27868:14:74", + "statements": [ + { + "nativeSrc": "27870:10:74", + "nodeType": "YulVariableDeclaration", + "src": "27870:10:74", + "value": { + "kind": "number", + "nativeSrc": "27879:1:74", + "nodeType": "YulLiteral", + "src": "27879:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "27874:1:74", + "nodeType": "YulTypedName", + "src": "27874:1:74", + "type": "" + } + ] + } + ] + }, + "src": "27864:284:74" + }, + { + "nativeSrc": "28157:10:74", + "nodeType": "YulAssignment", + "src": "28157:10:74", + "value": { + "name": "pos", + "nativeSrc": "28164:3:74", + "nodeType": "YulIdentifier", + "src": "28164:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "28157:3:74", + "nodeType": "YulIdentifier", + "src": "28157:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "27441:732:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "27544:5:74", + "nodeType": "YulTypedName", + "src": "27544:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "27551:3:74", + "nodeType": "YulTypedName", + "src": "27551:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "27560:3:74", + "nodeType": "YulTypedName", + "src": "27560:3:74", + "type": "" + } + ], + "src": "27441:732:74" + }, + { + "body": { + "nativeSrc": "28327:225:74", + "nodeType": "YulBlock", + "src": "28327:225:74", + "statements": [ + { + "nativeSrc": "28337:26:74", + "nodeType": "YulAssignment", + "src": "28337:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28349:9:74", + "nodeType": "YulIdentifier", + "src": "28349:9:74" + }, + { + "kind": "number", + "nativeSrc": "28360:2:74", + "nodeType": "YulLiteral", + "src": "28360:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28345:3:74", + "nodeType": "YulIdentifier", + "src": "28345:3:74" + }, + "nativeSrc": "28345:18:74", + "nodeType": "YulFunctionCall", + "src": "28345:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28337:4:74", + "nodeType": "YulIdentifier", + "src": "28337:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "28384:9:74", + "nodeType": "YulIdentifier", + "src": "28384:9:74" + }, + { + "kind": "number", + "nativeSrc": "28395:1:74", + "nodeType": "YulLiteral", + "src": "28395:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28380:3:74", + "nodeType": "YulIdentifier", + "src": "28380:3:74" + }, + "nativeSrc": "28380:17:74", + "nodeType": "YulFunctionCall", + "src": "28380:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "28403:4:74", + "nodeType": "YulIdentifier", + "src": "28403:4:74" + }, + { + "name": "headStart", + "nativeSrc": "28409:9:74", + "nodeType": "YulIdentifier", + "src": "28409:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "28399:3:74", + "nodeType": "YulIdentifier", + "src": "28399:3:74" + }, + "nativeSrc": "28399:20:74", + "nodeType": "YulFunctionCall", + "src": "28399:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28373:6:74", + "nodeType": "YulIdentifier", + "src": "28373:6:74" + }, + "nativeSrc": "28373:47:74", + "nodeType": "YulFunctionCall", + "src": "28373:47:74" + }, + "nativeSrc": "28373:47:74", + "nodeType": "YulExpressionStatement", + "src": "28373:47:74" + }, + { + "nativeSrc": "28429:116:74", + "nodeType": "YulAssignment", + "src": "28429:116:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "28531:6:74", + "nodeType": "YulIdentifier", + "src": "28531:6:74" + }, + { + "name": "tail", + "nativeSrc": "28540:4:74", + "nodeType": "YulIdentifier", + "src": "28540:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "28437:93:74", + "nodeType": "YulIdentifier", + "src": "28437:93:74" + }, + "nativeSrc": "28437:108:74", + "nodeType": "YulFunctionCall", + "src": "28437:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "28429:4:74", + "nodeType": "YulIdentifier", + "src": "28429:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "28179:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "28299:9:74", + "nodeType": "YulTypedName", + "src": "28299:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "28311:6:74", + "nodeType": "YulTypedName", + "src": "28311:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "28322:4:74", + "nodeType": "YulTypedName", + "src": "28322:4:74", + "type": "" + } + ], + "src": "28179:373:74" + }, + { + "body": { + "nativeSrc": "28643:66:74", + "nodeType": "YulBlock", + "src": "28643:66:74", + "statements": [ + { + "nativeSrc": "28653:50:74", + "nodeType": "YulAssignment", + "src": "28653:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "28697:5:74", + "nodeType": "YulIdentifier", + "src": "28697:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "28666:30:74", + "nodeType": "YulIdentifier", + "src": "28666:30:74" + }, + "nativeSrc": "28666:37:74", + "nodeType": "YulFunctionCall", + "src": "28666:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "28653:9:74", + "nodeType": "YulIdentifier", + "src": "28653:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_IMetadataService_$9690_to_t_address", + "nativeSrc": "28558:151:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "28623:5:74", + "nodeType": "YulTypedName", + "src": "28623:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "28633:9:74", + "nodeType": "YulTypedName", + "src": "28633:9:74", + "type": "" + } + ], + "src": "28558:151:74" + }, + { + "body": { + "nativeSrc": "28805:91:74", + "nodeType": "YulBlock", + "src": "28805:91:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "28822:3:74", + "nodeType": "YulIdentifier", + "src": "28822:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "28883:5:74", + "nodeType": "YulIdentifier", + "src": "28883:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_IMetadataService_$9690_to_t_address", + "nativeSrc": "28827:55:74", + "nodeType": "YulIdentifier", + "src": "28827:55:74" + }, + "nativeSrc": "28827:62:74", + "nodeType": "YulFunctionCall", + "src": "28827:62:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28815:6:74", + "nodeType": "YulIdentifier", + "src": "28815:6:74" + }, + "nativeSrc": "28815:75:74", + "nodeType": "YulFunctionCall", + "src": "28815:75:74" + }, + "nativeSrc": "28815:75:74", + "nodeType": "YulExpressionStatement", + "src": "28815:75:74" + } + ] + }, + "name": "abi_encode_t_contract$_IMetadataService_$9690_to_t_address_fromStack", + "nativeSrc": "28715:181:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "28793:5:74", + "nodeType": "YulTypedName", + "src": "28793:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "28800:3:74", + "nodeType": "YulTypedName", + "src": "28800:3:74", + "type": "" + } + ], + "src": "28715:181:74" + }, + { + "body": { + "nativeSrc": "29025:149:74", + "nodeType": "YulBlock", + "src": "29025:149:74", + "statements": [ + { + "nativeSrc": "29035:26:74", + "nodeType": "YulAssignment", + "src": "29035:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29047:9:74", + "nodeType": "YulIdentifier", + "src": "29047:9:74" + }, + { + "kind": "number", + "nativeSrc": "29058:2:74", + "nodeType": "YulLiteral", + "src": "29058:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29043:3:74", + "nodeType": "YulIdentifier", + "src": "29043:3:74" + }, + "nativeSrc": "29043:18:74", + "nodeType": "YulFunctionCall", + "src": "29043:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "29035:4:74", + "nodeType": "YulIdentifier", + "src": "29035:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "29140:6:74", + "nodeType": "YulIdentifier", + "src": "29140:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29153:9:74", + "nodeType": "YulIdentifier", + "src": "29153:9:74" + }, + { + "kind": "number", + "nativeSrc": "29164:1:74", + "nodeType": "YulLiteral", + "src": "29164:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29149:3:74", + "nodeType": "YulIdentifier", + "src": "29149:3:74" + }, + "nativeSrc": "29149:17:74", + "nodeType": "YulFunctionCall", + "src": "29149:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_IMetadataService_$9690_to_t_address_fromStack", + "nativeSrc": "29071:68:74", + "nodeType": "YulIdentifier", + "src": "29071:68:74" + }, + "nativeSrc": "29071:96:74", + "nodeType": "YulFunctionCall", + "src": "29071:96:74" + }, + "nativeSrc": "29071:96:74", + "nodeType": "YulExpressionStatement", + "src": "29071:96:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IMetadataService_$9690__to_t_address__fromStack_reversed", + "nativeSrc": "28902:272:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "28997:9:74", + "nodeType": "YulTypedName", + "src": "28997:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "29009:6:74", + "nodeType": "YulTypedName", + "src": "29009:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "29020:4:74", + "nodeType": "YulTypedName", + "src": "29020:4:74", + "type": "" + } + ], + "src": "28902:272:74" + }, + { + "body": { + "nativeSrc": "29280:519:74", + "nodeType": "YulBlock", + "src": "29280:519:74", + "statements": [ + { + "body": { + "nativeSrc": "29326:83:74", + "nodeType": "YulBlock", + "src": "29326:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "29328:77:74", + "nodeType": "YulIdentifier", + "src": "29328:77:74" + }, + "nativeSrc": "29328:79:74", + "nodeType": "YulFunctionCall", + "src": "29328:79:74" + }, + "nativeSrc": "29328:79:74", + "nodeType": "YulExpressionStatement", + "src": "29328:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "29301:7:74", + "nodeType": "YulIdentifier", + "src": "29301:7:74" + }, + { + "name": "headStart", + "nativeSrc": "29310:9:74", + "nodeType": "YulIdentifier", + "src": "29310:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "29297:3:74", + "nodeType": "YulIdentifier", + "src": "29297:3:74" + }, + "nativeSrc": "29297:23:74", + "nodeType": "YulFunctionCall", + "src": "29297:23:74" + }, + { + "kind": "number", + "nativeSrc": "29322:2:74", + "nodeType": "YulLiteral", + "src": "29322:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "29293:3:74", + "nodeType": "YulIdentifier", + "src": "29293:3:74" + }, + "nativeSrc": "29293:32:74", + "nodeType": "YulFunctionCall", + "src": "29293:32:74" + }, + "nativeSrc": "29290:119:74", + "nodeType": "YulIf", + "src": "29290:119:74" + }, + { + "nativeSrc": "29419:117:74", + "nodeType": "YulBlock", + "src": "29419:117:74", + "statements": [ + { + "nativeSrc": "29434:15:74", + "nodeType": "YulVariableDeclaration", + "src": "29434:15:74", + "value": { + "kind": "number", + "nativeSrc": "29448:1:74", + "nodeType": "YulLiteral", + "src": "29448:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "29438:6:74", + "nodeType": "YulTypedName", + "src": "29438:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29463:63:74", + "nodeType": "YulAssignment", + "src": "29463:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29498:9:74", + "nodeType": "YulIdentifier", + "src": "29498:9:74" + }, + { + "name": "offset", + "nativeSrc": "29509:6:74", + "nodeType": "YulIdentifier", + "src": "29509:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29494:3:74", + "nodeType": "YulIdentifier", + "src": "29494:3:74" + }, + "nativeSrc": "29494:22:74", + "nodeType": "YulFunctionCall", + "src": "29494:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "29518:7:74", + "nodeType": "YulIdentifier", + "src": "29518:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "29473:20:74", + "nodeType": "YulIdentifier", + "src": "29473:20:74" + }, + "nativeSrc": "29473:53:74", + "nodeType": "YulFunctionCall", + "src": "29473:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "29463:6:74", + "nodeType": "YulIdentifier", + "src": "29463:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "29546:118:74", + "nodeType": "YulBlock", + "src": "29546:118:74", + "statements": [ + { + "nativeSrc": "29561:16:74", + "nodeType": "YulVariableDeclaration", + "src": "29561:16:74", + "value": { + "kind": "number", + "nativeSrc": "29575:2:74", + "nodeType": "YulLiteral", + "src": "29575:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "29565:6:74", + "nodeType": "YulTypedName", + "src": "29565:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29591:63:74", + "nodeType": "YulAssignment", + "src": "29591:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29626:9:74", + "nodeType": "YulIdentifier", + "src": "29626:9:74" + }, + { + "name": "offset", + "nativeSrc": "29637:6:74", + "nodeType": "YulIdentifier", + "src": "29637:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29622:3:74", + "nodeType": "YulIdentifier", + "src": "29622:3:74" + }, + "nativeSrc": "29622:22:74", + "nodeType": "YulFunctionCall", + "src": "29622:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "29646:7:74", + "nodeType": "YulIdentifier", + "src": "29646:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "29601:20:74", + "nodeType": "YulIdentifier", + "src": "29601:20:74" + }, + "nativeSrc": "29601:53:74", + "nodeType": "YulFunctionCall", + "src": "29601:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "29591:6:74", + "nodeType": "YulIdentifier", + "src": "29591:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "29674:118:74", + "nodeType": "YulBlock", + "src": "29674:118:74", + "statements": [ + { + "nativeSrc": "29689:16:74", + "nodeType": "YulVariableDeclaration", + "src": "29689:16:74", + "value": { + "kind": "number", + "nativeSrc": "29703:2:74", + "nodeType": "YulLiteral", + "src": "29703:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "29693:6:74", + "nodeType": "YulTypedName", + "src": "29693:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29719:63:74", + "nodeType": "YulAssignment", + "src": "29719:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29754:9:74", + "nodeType": "YulIdentifier", + "src": "29754:9:74" + }, + { + "name": "offset", + "nativeSrc": "29765:6:74", + "nodeType": "YulIdentifier", + "src": "29765:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29750:3:74", + "nodeType": "YulIdentifier", + "src": "29750:3:74" + }, + "nativeSrc": "29750:22:74", + "nodeType": "YulFunctionCall", + "src": "29750:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "29774:7:74", + "nodeType": "YulIdentifier", + "src": "29774:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "29729:20:74", + "nodeType": "YulIdentifier", + "src": "29729:20:74" + }, + "nativeSrc": "29729:53:74", + "nodeType": "YulFunctionCall", + "src": "29729:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "29719:6:74", + "nodeType": "YulIdentifier", + "src": "29719:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nativeSrc": "29180:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29234:9:74", + "nodeType": "YulTypedName", + "src": "29234:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "29245:7:74", + "nodeType": "YulTypedName", + "src": "29245:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "29257:6:74", + "nodeType": "YulTypedName", + "src": "29257:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "29265:6:74", + "nodeType": "YulTypedName", + "src": "29265:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "29273:6:74", + "nodeType": "YulTypedName", + "src": "29273:6:74", + "type": "" + } + ], + "src": "29180:619:74" + }, + { + "body": { + "nativeSrc": "29904:518:74", + "nodeType": "YulBlock", + "src": "29904:518:74", + "statements": [ + { + "body": { + "nativeSrc": "29950:83:74", + "nodeType": "YulBlock", + "src": "29950:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "29952:77:74", + "nodeType": "YulIdentifier", + "src": "29952:77:74" + }, + "nativeSrc": "29952:79:74", + "nodeType": "YulFunctionCall", + "src": "29952:79:74" + }, + "nativeSrc": "29952:79:74", + "nodeType": "YulExpressionStatement", + "src": "29952:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "29925:7:74", + "nodeType": "YulIdentifier", + "src": "29925:7:74" + }, + { + "name": "headStart", + "nativeSrc": "29934:9:74", + "nodeType": "YulIdentifier", + "src": "29934:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "29921:3:74", + "nodeType": "YulIdentifier", + "src": "29921:3:74" + }, + "nativeSrc": "29921:23:74", + "nodeType": "YulFunctionCall", + "src": "29921:23:74" + }, + { + "kind": "number", + "nativeSrc": "29946:2:74", + "nodeType": "YulLiteral", + "src": "29946:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "29917:3:74", + "nodeType": "YulIdentifier", + "src": "29917:3:74" + }, + "nativeSrc": "29917:32:74", + "nodeType": "YulFunctionCall", + "src": "29917:32:74" + }, + "nativeSrc": "29914:119:74", + "nodeType": "YulIf", + "src": "29914:119:74" + }, + { + "nativeSrc": "30043:117:74", + "nodeType": "YulBlock", + "src": "30043:117:74", + "statements": [ + { + "nativeSrc": "30058:15:74", + "nodeType": "YulVariableDeclaration", + "src": "30058:15:74", + "value": { + "kind": "number", + "nativeSrc": "30072:1:74", + "nodeType": "YulLiteral", + "src": "30072:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "30062:6:74", + "nodeType": "YulTypedName", + "src": "30062:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "30087:63:74", + "nodeType": "YulAssignment", + "src": "30087:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30122:9:74", + "nodeType": "YulIdentifier", + "src": "30122:9:74" + }, + { + "name": "offset", + "nativeSrc": "30133:6:74", + "nodeType": "YulIdentifier", + "src": "30133:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30118:3:74", + "nodeType": "YulIdentifier", + "src": "30118:3:74" + }, + "nativeSrc": "30118:22:74", + "nodeType": "YulFunctionCall", + "src": "30118:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "30142:7:74", + "nodeType": "YulIdentifier", + "src": "30142:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "30097:20:74", + "nodeType": "YulIdentifier", + "src": "30097:20:74" + }, + "nativeSrc": "30097:53:74", + "nodeType": "YulFunctionCall", + "src": "30097:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "30087:6:74", + "nodeType": "YulIdentifier", + "src": "30087:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "30170:118:74", + "nodeType": "YulBlock", + "src": "30170:118:74", + "statements": [ + { + "nativeSrc": "30185:16:74", + "nodeType": "YulVariableDeclaration", + "src": "30185:16:74", + "value": { + "kind": "number", + "nativeSrc": "30199:2:74", + "nodeType": "YulLiteral", + "src": "30199:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "30189:6:74", + "nodeType": "YulTypedName", + "src": "30189:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "30215:63:74", + "nodeType": "YulAssignment", + "src": "30215:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30250:9:74", + "nodeType": "YulIdentifier", + "src": "30250:9:74" + }, + { + "name": "offset", + "nativeSrc": "30261:6:74", + "nodeType": "YulIdentifier", + "src": "30261:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30246:3:74", + "nodeType": "YulIdentifier", + "src": "30246:3:74" + }, + "nativeSrc": "30246:22:74", + "nodeType": "YulFunctionCall", + "src": "30246:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "30270:7:74", + "nodeType": "YulIdentifier", + "src": "30270:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "30225:20:74", + "nodeType": "YulIdentifier", + "src": "30225:20:74" + }, + "nativeSrc": "30225:53:74", + "nodeType": "YulFunctionCall", + "src": "30225:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "30215:6:74", + "nodeType": "YulIdentifier", + "src": "30215:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "30298:117:74", + "nodeType": "YulBlock", + "src": "30298:117:74", + "statements": [ + { + "nativeSrc": "30313:16:74", + "nodeType": "YulVariableDeclaration", + "src": "30313:16:74", + "value": { + "kind": "number", + "nativeSrc": "30327:2:74", + "nodeType": "YulLiteral", + "src": "30327:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "30317:6:74", + "nodeType": "YulTypedName", + "src": "30317:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "30343:62:74", + "nodeType": "YulAssignment", + "src": "30343:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30377:9:74", + "nodeType": "YulIdentifier", + "src": "30377:9:74" + }, + { + "name": "offset", + "nativeSrc": "30388:6:74", + "nodeType": "YulIdentifier", + "src": "30388:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30373:3:74", + "nodeType": "YulIdentifier", + "src": "30373:3:74" + }, + "nativeSrc": "30373:22:74", + "nodeType": "YulFunctionCall", + "src": "30373:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "30397:7:74", + "nodeType": "YulIdentifier", + "src": "30397:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "30353:19:74", + "nodeType": "YulIdentifier", + "src": "30353:19:74" + }, + "nativeSrc": "30353:52:74", + "nodeType": "YulFunctionCall", + "src": "30353:52:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "30343:6:74", + "nodeType": "YulIdentifier", + "src": "30343:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_uint64", + "nativeSrc": "29805:617:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29858:9:74", + "nodeType": "YulTypedName", + "src": "29858:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "29869:7:74", + "nodeType": "YulTypedName", + "src": "29869:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "29881:6:74", + "nodeType": "YulTypedName", + "src": "29881:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "29889:6:74", + "nodeType": "YulTypedName", + "src": "29889:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "29897:6:74", + "nodeType": "YulTypedName", + "src": "29897:6:74", + "type": "" + } + ], + "src": "29805:617:74" + }, + { + "body": { + "nativeSrc": "30524:122:74", + "nodeType": "YulBlock", + "src": "30524:122:74", + "statements": [ + { + "nativeSrc": "30534:26:74", + "nodeType": "YulAssignment", + "src": "30534:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30546:9:74", + "nodeType": "YulIdentifier", + "src": "30546:9:74" + }, + { + "kind": "number", + "nativeSrc": "30557:2:74", + "nodeType": "YulLiteral", + "src": "30557:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30542:3:74", + "nodeType": "YulIdentifier", + "src": "30542:3:74" + }, + "nativeSrc": "30542:18:74", + "nodeType": "YulFunctionCall", + "src": "30542:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30534:4:74", + "nodeType": "YulIdentifier", + "src": "30534:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "30612:6:74", + "nodeType": "YulIdentifier", + "src": "30612:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30625:9:74", + "nodeType": "YulIdentifier", + "src": "30625:9:74" + }, + { + "kind": "number", + "nativeSrc": "30636:1:74", + "nodeType": "YulLiteral", + "src": "30636:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30621:3:74", + "nodeType": "YulIdentifier", + "src": "30621:3:74" + }, + "nativeSrc": "30621:17:74", + "nodeType": "YulFunctionCall", + "src": "30621:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "30570:41:74", + "nodeType": "YulIdentifier", + "src": "30570:41:74" + }, + "nativeSrc": "30570:69:74", + "nodeType": "YulFunctionCall", + "src": "30570:69:74" + }, + "nativeSrc": "30570:69:74", + "nodeType": "YulExpressionStatement", + "src": "30570:69:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed", + "nativeSrc": "30428:218:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "30496:9:74", + "nodeType": "YulTypedName", + "src": "30496:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "30508:6:74", + "nodeType": "YulTypedName", + "src": "30508:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "30519:4:74", + "nodeType": "YulTypedName", + "src": "30519:4:74", + "type": "" + } + ], + "src": "30428:218:74" + }, + { + "body": { + "nativeSrc": "30752:519:74", + "nodeType": "YulBlock", + "src": "30752:519:74", + "statements": [ + { + "body": { + "nativeSrc": "30798:83:74", + "nodeType": "YulBlock", + "src": "30798:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "30800:77:74", + "nodeType": "YulIdentifier", + "src": "30800:77:74" + }, + "nativeSrc": "30800:79:74", + "nodeType": "YulFunctionCall", + "src": "30800:79:74" + }, + "nativeSrc": "30800:79:74", + "nodeType": "YulExpressionStatement", + "src": "30800:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "30773:7:74", + "nodeType": "YulIdentifier", + "src": "30773:7:74" + }, + { + "name": "headStart", + "nativeSrc": "30782:9:74", + "nodeType": "YulIdentifier", + "src": "30782:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "30769:3:74", + "nodeType": "YulIdentifier", + "src": "30769:3:74" + }, + "nativeSrc": "30769:23:74", + "nodeType": "YulFunctionCall", + "src": "30769:23:74" + }, + { + "kind": "number", + "nativeSrc": "30794:2:74", + "nodeType": "YulLiteral", + "src": "30794:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "30765:3:74", + "nodeType": "YulIdentifier", + "src": "30765:3:74" + }, + "nativeSrc": "30765:32:74", + "nodeType": "YulFunctionCall", + "src": "30765:32:74" + }, + "nativeSrc": "30762:119:74", + "nodeType": "YulIf", + "src": "30762:119:74" + }, + { + "nativeSrc": "30891:117:74", + "nodeType": "YulBlock", + "src": "30891:117:74", + "statements": [ + { + "nativeSrc": "30906:15:74", + "nodeType": "YulVariableDeclaration", + "src": "30906:15:74", + "value": { + "kind": "number", + "nativeSrc": "30920:1:74", + "nodeType": "YulLiteral", + "src": "30920:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "30910:6:74", + "nodeType": "YulTypedName", + "src": "30910:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "30935:63:74", + "nodeType": "YulAssignment", + "src": "30935:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30970:9:74", + "nodeType": "YulIdentifier", + "src": "30970:9:74" + }, + { + "name": "offset", + "nativeSrc": "30981:6:74", + "nodeType": "YulIdentifier", + "src": "30981:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30966:3:74", + "nodeType": "YulIdentifier", + "src": "30966:3:74" + }, + "nativeSrc": "30966:22:74", + "nodeType": "YulFunctionCall", + "src": "30966:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "30990:7:74", + "nodeType": "YulIdentifier", + "src": "30990:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "30945:20:74", + "nodeType": "YulIdentifier", + "src": "30945:20:74" + }, + "nativeSrc": "30945:53:74", + "nodeType": "YulFunctionCall", + "src": "30945:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "30935:6:74", + "nodeType": "YulIdentifier", + "src": "30935:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "31018:118:74", + "nodeType": "YulBlock", + "src": "31018:118:74", + "statements": [ + { + "nativeSrc": "31033:16:74", + "nodeType": "YulVariableDeclaration", + "src": "31033:16:74", + "value": { + "kind": "number", + "nativeSrc": "31047:2:74", + "nodeType": "YulLiteral", + "src": "31047:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "31037:6:74", + "nodeType": "YulTypedName", + "src": "31037:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31063:63:74", + "nodeType": "YulAssignment", + "src": "31063:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31098:9:74", + "nodeType": "YulIdentifier", + "src": "31098:9:74" + }, + { + "name": "offset", + "nativeSrc": "31109:6:74", + "nodeType": "YulIdentifier", + "src": "31109:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31094:3:74", + "nodeType": "YulIdentifier", + "src": "31094:3:74" + }, + "nativeSrc": "31094:22:74", + "nodeType": "YulFunctionCall", + "src": "31094:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "31118:7:74", + "nodeType": "YulIdentifier", + "src": "31118:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "31073:20:74", + "nodeType": "YulIdentifier", + "src": "31073:20:74" + }, + "nativeSrc": "31073:53:74", + "nodeType": "YulFunctionCall", + "src": "31073:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "31063:6:74", + "nodeType": "YulIdentifier", + "src": "31063:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "31146:118:74", + "nodeType": "YulBlock", + "src": "31146:118:74", + "statements": [ + { + "nativeSrc": "31161:16:74", + "nodeType": "YulVariableDeclaration", + "src": "31161:16:74", + "value": { + "kind": "number", + "nativeSrc": "31175:2:74", + "nodeType": "YulLiteral", + "src": "31175:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "31165:6:74", + "nodeType": "YulTypedName", + "src": "31165:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "31191:63:74", + "nodeType": "YulAssignment", + "src": "31191:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31226:9:74", + "nodeType": "YulIdentifier", + "src": "31226:9:74" + }, + { + "name": "offset", + "nativeSrc": "31237:6:74", + "nodeType": "YulIdentifier", + "src": "31237:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31222:3:74", + "nodeType": "YulIdentifier", + "src": "31222:3:74" + }, + "nativeSrc": "31222:22:74", + "nodeType": "YulFunctionCall", + "src": "31222:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "31246:7:74", + "nodeType": "YulIdentifier", + "src": "31246:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "31201:20:74", + "nodeType": "YulIdentifier", + "src": "31201:20:74" + }, + "nativeSrc": "31201:53:74", + "nodeType": "YulFunctionCall", + "src": "31201:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "31191:6:74", + "nodeType": "YulIdentifier", + "src": "31191:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_addresst_address", + "nativeSrc": "30652:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "30706:9:74", + "nodeType": "YulTypedName", + "src": "30706:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "30717:7:74", + "nodeType": "YulTypedName", + "src": "30717:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "30729:6:74", + "nodeType": "YulTypedName", + "src": "30729:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "30737:6:74", + "nodeType": "YulTypedName", + "src": "30737:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "30745:6:74", + "nodeType": "YulTypedName", + "src": "30745:6:74", + "type": "" + } + ], + "src": "30652:619:74" + }, + { + "body": { + "nativeSrc": "31366:478:74", + "nodeType": "YulBlock", + "src": "31366:478:74", + "statements": [ + { + "body": { + "nativeSrc": "31415:83:74", + "nodeType": "YulBlock", + "src": "31415:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "31417:77:74", + "nodeType": "YulIdentifier", + "src": "31417:77:74" + }, + "nativeSrc": "31417:79:74", + "nodeType": "YulFunctionCall", + "src": "31417:79:74" + }, + "nativeSrc": "31417:79:74", + "nodeType": "YulExpressionStatement", + "src": "31417:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "31394:6:74", + "nodeType": "YulIdentifier", + "src": "31394:6:74" + }, + { + "kind": "number", + "nativeSrc": "31402:4:74", + "nodeType": "YulLiteral", + "src": "31402:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31390:3:74", + "nodeType": "YulIdentifier", + "src": "31390:3:74" + }, + "nativeSrc": "31390:17:74", + "nodeType": "YulFunctionCall", + "src": "31390:17:74" + }, + { + "name": "end", + "nativeSrc": "31409:3:74", + "nodeType": "YulIdentifier", + "src": "31409:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "31386:3:74", + "nodeType": "YulIdentifier", + "src": "31386:3:74" + }, + "nativeSrc": "31386:27:74", + "nodeType": "YulFunctionCall", + "src": "31386:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "31379:6:74", + "nodeType": "YulIdentifier", + "src": "31379:6:74" + }, + "nativeSrc": "31379:35:74", + "nodeType": "YulFunctionCall", + "src": "31379:35:74" + }, + "nativeSrc": "31376:122:74", + "nodeType": "YulIf", + "src": "31376:122:74" + }, + { + "nativeSrc": "31507:30:74", + "nodeType": "YulAssignment", + "src": "31507:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "31530:6:74", + "nodeType": "YulIdentifier", + "src": "31530:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "31517:12:74", + "nodeType": "YulIdentifier", + "src": "31517:12:74" + }, + "nativeSrc": "31517:20:74", + "nodeType": "YulFunctionCall", + "src": "31517:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "31507:6:74", + "nodeType": "YulIdentifier", + "src": "31507:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "31580:83:74", + "nodeType": "YulBlock", + "src": "31580:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "31582:77:74", + "nodeType": "YulIdentifier", + "src": "31582:77:74" + }, + "nativeSrc": "31582:79:74", + "nodeType": "YulFunctionCall", + "src": "31582:79:74" + }, + "nativeSrc": "31582:79:74", + "nodeType": "YulExpressionStatement", + "src": "31582:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "31552:6:74", + "nodeType": "YulIdentifier", + "src": "31552:6:74" + }, + { + "kind": "number", + "nativeSrc": "31560:18:74", + "nodeType": "YulLiteral", + "src": "31560:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "31549:2:74", + "nodeType": "YulIdentifier", + "src": "31549:2:74" + }, + "nativeSrc": "31549:30:74", + "nodeType": "YulFunctionCall", + "src": "31549:30:74" + }, + "nativeSrc": "31546:117:74", + "nodeType": "YulIf", + "src": "31546:117:74" + }, + { + "nativeSrc": "31672:29:74", + "nodeType": "YulAssignment", + "src": "31672:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "31688:6:74", + "nodeType": "YulIdentifier", + "src": "31688:6:74" + }, + { + "kind": "number", + "nativeSrc": "31696:4:74", + "nodeType": "YulLiteral", + "src": "31696:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31684:3:74", + "nodeType": "YulIdentifier", + "src": "31684:3:74" + }, + "nativeSrc": "31684:17:74", + "nodeType": "YulFunctionCall", + "src": "31684:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "31672:8:74", + "nodeType": "YulIdentifier", + "src": "31672:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "31755:83:74", + "nodeType": "YulBlock", + "src": "31755:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "31757:77:74", + "nodeType": "YulIdentifier", + "src": "31757:77:74" + }, + "nativeSrc": "31757:79:74", + "nodeType": "YulFunctionCall", + "src": "31757:79:74" + }, + "nativeSrc": "31757:79:74", + "nodeType": "YulExpressionStatement", + "src": "31757:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "31720:8:74", + "nodeType": "YulIdentifier", + "src": "31720:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "31734:6:74", + "nodeType": "YulIdentifier", + "src": "31734:6:74" + }, + { + "kind": "number", + "nativeSrc": "31742:4:74", + "nodeType": "YulLiteral", + "src": "31742:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "31730:3:74", + "nodeType": "YulIdentifier", + "src": "31730:3:74" + }, + "nativeSrc": "31730:17:74", + "nodeType": "YulFunctionCall", + "src": "31730:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31716:3:74", + "nodeType": "YulIdentifier", + "src": "31716:3:74" + }, + "nativeSrc": "31716:32:74", + "nodeType": "YulFunctionCall", + "src": "31716:32:74" + }, + { + "name": "end", + "nativeSrc": "31750:3:74", + "nodeType": "YulIdentifier", + "src": "31750:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "31713:2:74", + "nodeType": "YulIdentifier", + "src": "31713:2:74" + }, + "nativeSrc": "31713:41:74", + "nodeType": "YulFunctionCall", + "src": "31713:41:74" + }, + "nativeSrc": "31710:128:74", + "nodeType": "YulIf", + "src": "31710:128:74" + } + ] + }, + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "31291:553:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "31333:6:74", + "nodeType": "YulTypedName", + "src": "31333:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "31341:3:74", + "nodeType": "YulTypedName", + "src": "31341:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "31349:8:74", + "nodeType": "YulTypedName", + "src": "31349:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "31359:6:74", + "nodeType": "YulTypedName", + "src": "31359:6:74", + "type": "" + } + ], + "src": "31291:553:74" + }, + { + "body": { + "nativeSrc": "31986:827:74", + "nodeType": "YulBlock", + "src": "31986:827:74", + "statements": [ + { + "body": { + "nativeSrc": "32033:83:74", + "nodeType": "YulBlock", + "src": "32033:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "32035:77:74", + "nodeType": "YulIdentifier", + "src": "32035:77:74" + }, + "nativeSrc": "32035:79:74", + "nodeType": "YulFunctionCall", + "src": "32035:79:74" + }, + "nativeSrc": "32035:79:74", + "nodeType": "YulExpressionStatement", + "src": "32035:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "32007:7:74", + "nodeType": "YulIdentifier", + "src": "32007:7:74" + }, + { + "name": "headStart", + "nativeSrc": "32016:9:74", + "nodeType": "YulIdentifier", + "src": "32016:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "32003:3:74", + "nodeType": "YulIdentifier", + "src": "32003:3:74" + }, + "nativeSrc": "32003:23:74", + "nodeType": "YulFunctionCall", + "src": "32003:23:74" + }, + { + "kind": "number", + "nativeSrc": "32028:3:74", + "nodeType": "YulLiteral", + "src": "32028:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "31999:3:74", + "nodeType": "YulIdentifier", + "src": "31999:3:74" + }, + "nativeSrc": "31999:33:74", + "nodeType": "YulFunctionCall", + "src": "31999:33:74" + }, + "nativeSrc": "31996:120:74", + "nodeType": "YulIf", + "src": "31996:120:74" + }, + { + "nativeSrc": "32126:297:74", + "nodeType": "YulBlock", + "src": "32126:297:74", + "statements": [ + { + "nativeSrc": "32141:45:74", + "nodeType": "YulVariableDeclaration", + "src": "32141:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32172:9:74", + "nodeType": "YulIdentifier", + "src": "32172:9:74" + }, + { + "kind": "number", + "nativeSrc": "32183:1:74", + "nodeType": "YulLiteral", + "src": "32183:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32168:3:74", + "nodeType": "YulIdentifier", + "src": "32168:3:74" + }, + "nativeSrc": "32168:17:74", + "nodeType": "YulFunctionCall", + "src": "32168:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "32155:12:74", + "nodeType": "YulIdentifier", + "src": "32155:12:74" + }, + "nativeSrc": "32155:31:74", + "nodeType": "YulFunctionCall", + "src": "32155:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32145:6:74", + "nodeType": "YulTypedName", + "src": "32145:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "32233:83:74", + "nodeType": "YulBlock", + "src": "32233:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "32235:77:74", + "nodeType": "YulIdentifier", + "src": "32235:77:74" + }, + "nativeSrc": "32235:79:74", + "nodeType": "YulFunctionCall", + "src": "32235:79:74" + }, + "nativeSrc": "32235:79:74", + "nodeType": "YulExpressionStatement", + "src": "32235:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "32205:6:74", + "nodeType": "YulIdentifier", + "src": "32205:6:74" + }, + { + "kind": "number", + "nativeSrc": "32213:18:74", + "nodeType": "YulLiteral", + "src": "32213:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "32202:2:74", + "nodeType": "YulIdentifier", + "src": "32202:2:74" + }, + "nativeSrc": "32202:30:74", + "nodeType": "YulFunctionCall", + "src": "32202:30:74" + }, + "nativeSrc": "32199:117:74", + "nodeType": "YulIf", + "src": "32199:117:74" + }, + { + "nativeSrc": "32330:83:74", + "nodeType": "YulAssignment", + "src": "32330:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32385:9:74", + "nodeType": "YulIdentifier", + "src": "32385:9:74" + }, + { + "name": "offset", + "nativeSrc": "32396:6:74", + "nodeType": "YulIdentifier", + "src": "32396:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32381:3:74", + "nodeType": "YulIdentifier", + "src": "32381:3:74" + }, + "nativeSrc": "32381:22:74", + "nodeType": "YulFunctionCall", + "src": "32381:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "32405:7:74", + "nodeType": "YulIdentifier", + "src": "32405:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "32348:32:74", + "nodeType": "YulIdentifier", + "src": "32348:32:74" + }, + "nativeSrc": "32348:65:74", + "nodeType": "YulFunctionCall", + "src": "32348:65:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "32330:6:74", + "nodeType": "YulIdentifier", + "src": "32330:6:74" + }, + { + "name": "value1", + "nativeSrc": "32338:6:74", + "nodeType": "YulIdentifier", + "src": "32338:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "32433:118:74", + "nodeType": "YulBlock", + "src": "32433:118:74", + "statements": [ + { + "nativeSrc": "32448:16:74", + "nodeType": "YulVariableDeclaration", + "src": "32448:16:74", + "value": { + "kind": "number", + "nativeSrc": "32462:2:74", + "nodeType": "YulLiteral", + "src": "32462:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32452:6:74", + "nodeType": "YulTypedName", + "src": "32452:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32478:63:74", + "nodeType": "YulAssignment", + "src": "32478:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32513:9:74", + "nodeType": "YulIdentifier", + "src": "32513:9:74" + }, + { + "name": "offset", + "nativeSrc": "32524:6:74", + "nodeType": "YulIdentifier", + "src": "32524:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32509:3:74", + "nodeType": "YulIdentifier", + "src": "32509:3:74" + }, + "nativeSrc": "32509:22:74", + "nodeType": "YulFunctionCall", + "src": "32509:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "32533:7:74", + "nodeType": "YulIdentifier", + "src": "32533:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "32488:20:74", + "nodeType": "YulIdentifier", + "src": "32488:20:74" + }, + "nativeSrc": "32488:53:74", + "nodeType": "YulFunctionCall", + "src": "32488:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "32478:6:74", + "nodeType": "YulIdentifier", + "src": "32478:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "32561:117:74", + "nodeType": "YulBlock", + "src": "32561:117:74", + "statements": [ + { + "nativeSrc": "32576:16:74", + "nodeType": "YulVariableDeclaration", + "src": "32576:16:74", + "value": { + "kind": "number", + "nativeSrc": "32590:2:74", + "nodeType": "YulLiteral", + "src": "32590:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32580:6:74", + "nodeType": "YulTypedName", + "src": "32580:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32606:62:74", + "nodeType": "YulAssignment", + "src": "32606:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32640:9:74", + "nodeType": "YulIdentifier", + "src": "32640:9:74" + }, + { + "name": "offset", + "nativeSrc": "32651:6:74", + "nodeType": "YulIdentifier", + "src": "32651:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32636:3:74", + "nodeType": "YulIdentifier", + "src": "32636:3:74" + }, + "nativeSrc": "32636:22:74", + "nodeType": "YulFunctionCall", + "src": "32636:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "32660:7:74", + "nodeType": "YulIdentifier", + "src": "32660:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint16", + "nativeSrc": "32616:19:74", + "nodeType": "YulIdentifier", + "src": "32616:19:74" + }, + "nativeSrc": "32616:52:74", + "nodeType": "YulFunctionCall", + "src": "32616:52:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "32606:6:74", + "nodeType": "YulIdentifier", + "src": "32606:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "32688:118:74", + "nodeType": "YulBlock", + "src": "32688:118:74", + "statements": [ + { + "nativeSrc": "32703:16:74", + "nodeType": "YulVariableDeclaration", + "src": "32703:16:74", + "value": { + "kind": "number", + "nativeSrc": "32717:2:74", + "nodeType": "YulLiteral", + "src": "32717:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32707:6:74", + "nodeType": "YulTypedName", + "src": "32707:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32733:63:74", + "nodeType": "YulAssignment", + "src": "32733:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32768:9:74", + "nodeType": "YulIdentifier", + "src": "32768:9:74" + }, + { + "name": "offset", + "nativeSrc": "32779:6:74", + "nodeType": "YulIdentifier", + "src": "32779:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32764:3:74", + "nodeType": "YulIdentifier", + "src": "32764:3:74" + }, + "nativeSrc": "32764:22:74", + "nodeType": "YulFunctionCall", + "src": "32764:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "32788:7:74", + "nodeType": "YulIdentifier", + "src": "32788:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "32743:20:74", + "nodeType": "YulIdentifier", + "src": "32743:20:74" + }, + "nativeSrc": "32743:53:74", + "nodeType": "YulFunctionCall", + "src": "32743:53:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "32733:6:74", + "nodeType": "YulIdentifier", + "src": "32733:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptrt_addresst_uint16t_address", + "nativeSrc": "31850:963:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "31924:9:74", + "nodeType": "YulTypedName", + "src": "31924:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "31935:7:74", + "nodeType": "YulTypedName", + "src": "31935:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "31947:6:74", + "nodeType": "YulTypedName", + "src": "31947:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "31955:6:74", + "nodeType": "YulTypedName", + "src": "31955:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "31963:6:74", + "nodeType": "YulTypedName", + "src": "31963:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "31971:6:74", + "nodeType": "YulTypedName", + "src": "31971:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "31979:6:74", + "nodeType": "YulTypedName", + "src": "31979:6:74", + "type": "" + } + ], + "src": "31850:963:74" + }, + { + "body": { + "nativeSrc": "32859:76:74", + "nodeType": "YulBlock", + "src": "32859:76:74", + "statements": [ + { + "body": { + "nativeSrc": "32913:16:74", + "nodeType": "YulBlock", + "src": "32913:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32922:1:74", + "nodeType": "YulLiteral", + "src": "32922:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "32925:1:74", + "nodeType": "YulLiteral", + "src": "32925:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "32915:6:74", + "nodeType": "YulIdentifier", + "src": "32915:6:74" + }, + "nativeSrc": "32915:12:74", + "nodeType": "YulFunctionCall", + "src": "32915:12:74" + }, + "nativeSrc": "32915:12:74", + "nodeType": "YulExpressionStatement", + "src": "32915:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "32882:5:74", + "nodeType": "YulIdentifier", + "src": "32882:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "32904:5:74", + "nodeType": "YulIdentifier", + "src": "32904:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "32889:14:74", + "nodeType": "YulIdentifier", + "src": "32889:14:74" + }, + "nativeSrc": "32889:21:74", + "nodeType": "YulFunctionCall", + "src": "32889:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "32879:2:74", + "nodeType": "YulIdentifier", + "src": "32879:2:74" + }, + "nativeSrc": "32879:32:74", + "nodeType": "YulFunctionCall", + "src": "32879:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "32872:6:74", + "nodeType": "YulIdentifier", + "src": "32872:6:74" + }, + "nativeSrc": "32872:40:74", + "nodeType": "YulFunctionCall", + "src": "32872:40:74" + }, + "nativeSrc": "32869:60:74", + "nodeType": "YulIf", + "src": "32869:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "32819:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "32852:5:74", + "nodeType": "YulTypedName", + "src": "32852:5:74", + "type": "" + } + ], + "src": "32819:116:74" + }, + { + "body": { + "nativeSrc": "32990:84:74", + "nodeType": "YulBlock", + "src": "32990:84:74", + "statements": [ + { + "nativeSrc": "33000:29:74", + "nodeType": "YulAssignment", + "src": "33000:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "33022:6:74", + "nodeType": "YulIdentifier", + "src": "33022:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "33009:12:74", + "nodeType": "YulIdentifier", + "src": "33009:12:74" + }, + "nativeSrc": "33009:20:74", + "nodeType": "YulFunctionCall", + "src": "33009:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "33000:5:74", + "nodeType": "YulIdentifier", + "src": "33000:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "33062:5:74", + "nodeType": "YulIdentifier", + "src": "33062:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "33038:23:74", + "nodeType": "YulIdentifier", + "src": "33038:23:74" + }, + "nativeSrc": "33038:30:74", + "nodeType": "YulFunctionCall", + "src": "33038:30:74" + }, + "nativeSrc": "33038:30:74", + "nodeType": "YulExpressionStatement", + "src": "33038:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "32941:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "32968:6:74", + "nodeType": "YulTypedName", + "src": "32968:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "32976:3:74", + "nodeType": "YulTypedName", + "src": "32976:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "32984:5:74", + "nodeType": "YulTypedName", + "src": "32984:5:74", + "type": "" + } + ], + "src": "32941:133:74" + }, + { + "body": { + "nativeSrc": "33160:388:74", + "nodeType": "YulBlock", + "src": "33160:388:74", + "statements": [ + { + "body": { + "nativeSrc": "33206:83:74", + "nodeType": "YulBlock", + "src": "33206:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "33208:77:74", + "nodeType": "YulIdentifier", + "src": "33208:77:74" + }, + "nativeSrc": "33208:79:74", + "nodeType": "YulFunctionCall", + "src": "33208:79:74" + }, + "nativeSrc": "33208:79:74", + "nodeType": "YulExpressionStatement", + "src": "33208:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "33181:7:74", + "nodeType": "YulIdentifier", + "src": "33181:7:74" + }, + { + "name": "headStart", + "nativeSrc": "33190:9:74", + "nodeType": "YulIdentifier", + "src": "33190:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "33177:3:74", + "nodeType": "YulIdentifier", + "src": "33177:3:74" + }, + "nativeSrc": "33177:23:74", + "nodeType": "YulFunctionCall", + "src": "33177:23:74" + }, + { + "kind": "number", + "nativeSrc": "33202:2:74", + "nodeType": "YulLiteral", + "src": "33202:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "33173:3:74", + "nodeType": "YulIdentifier", + "src": "33173:3:74" + }, + "nativeSrc": "33173:32:74", + "nodeType": "YulFunctionCall", + "src": "33173:32:74" + }, + "nativeSrc": "33170:119:74", + "nodeType": "YulIf", + "src": "33170:119:74" + }, + { + "nativeSrc": "33299:117:74", + "nodeType": "YulBlock", + "src": "33299:117:74", + "statements": [ + { + "nativeSrc": "33314:15:74", + "nodeType": "YulVariableDeclaration", + "src": "33314:15:74", + "value": { + "kind": "number", + "nativeSrc": "33328:1:74", + "nodeType": "YulLiteral", + "src": "33328:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33318:6:74", + "nodeType": "YulTypedName", + "src": "33318:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "33343:63:74", + "nodeType": "YulAssignment", + "src": "33343:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33378:9:74", + "nodeType": "YulIdentifier", + "src": "33378:9:74" + }, + { + "name": "offset", + "nativeSrc": "33389:6:74", + "nodeType": "YulIdentifier", + "src": "33389:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33374:3:74", + "nodeType": "YulIdentifier", + "src": "33374:3:74" + }, + "nativeSrc": "33374:22:74", + "nodeType": "YulFunctionCall", + "src": "33374:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "33398:7:74", + "nodeType": "YulIdentifier", + "src": "33398:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "33353:20:74", + "nodeType": "YulIdentifier", + "src": "33353:20:74" + }, + "nativeSrc": "33353:53:74", + "nodeType": "YulFunctionCall", + "src": "33353:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "33343:6:74", + "nodeType": "YulIdentifier", + "src": "33343:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "33426:115:74", + "nodeType": "YulBlock", + "src": "33426:115:74", + "statements": [ + { + "nativeSrc": "33441:16:74", + "nodeType": "YulVariableDeclaration", + "src": "33441:16:74", + "value": { + "kind": "number", + "nativeSrc": "33455:2:74", + "nodeType": "YulLiteral", + "src": "33455:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33445:6:74", + "nodeType": "YulTypedName", + "src": "33445:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "33471:60:74", + "nodeType": "YulAssignment", + "src": "33471:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33503:9:74", + "nodeType": "YulIdentifier", + "src": "33503:9:74" + }, + { + "name": "offset", + "nativeSrc": "33514:6:74", + "nodeType": "YulIdentifier", + "src": "33514:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33499:3:74", + "nodeType": "YulIdentifier", + "src": "33499:3:74" + }, + "nativeSrc": "33499:22:74", + "nodeType": "YulFunctionCall", + "src": "33499:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "33523:7:74", + "nodeType": "YulIdentifier", + "src": "33523:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "33481:17:74", + "nodeType": "YulIdentifier", + "src": "33481:17:74" + }, + "nativeSrc": "33481:50:74", + "nodeType": "YulFunctionCall", + "src": "33481:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "33471:6:74", + "nodeType": "YulIdentifier", + "src": "33471:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "33080:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "33122:9:74", + "nodeType": "YulTypedName", + "src": "33122:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "33133:7:74", + "nodeType": "YulTypedName", + "src": "33133:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "33145:6:74", + "nodeType": "YulTypedName", + "src": "33145:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "33153:6:74", + "nodeType": "YulTypedName", + "src": "33153:6:74", + "type": "" + } + ], + "src": "33080:468:74" + }, + { + "body": { + "nativeSrc": "33707:956:74", + "nodeType": "YulBlock", + "src": "33707:956:74", + "statements": [ + { + "body": { + "nativeSrc": "33754:83:74", + "nodeType": "YulBlock", + "src": "33754:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "33756:77:74", + "nodeType": "YulIdentifier", + "src": "33756:77:74" + }, + "nativeSrc": "33756:79:74", + "nodeType": "YulFunctionCall", + "src": "33756:79:74" + }, + "nativeSrc": "33756:79:74", + "nodeType": "YulExpressionStatement", + "src": "33756:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "33728:7:74", + "nodeType": "YulIdentifier", + "src": "33728:7:74" + }, + { + "name": "headStart", + "nativeSrc": "33737:9:74", + "nodeType": "YulIdentifier", + "src": "33737:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "33724:3:74", + "nodeType": "YulIdentifier", + "src": "33724:3:74" + }, + "nativeSrc": "33724:23:74", + "nodeType": "YulFunctionCall", + "src": "33724:23:74" + }, + { + "kind": "number", + "nativeSrc": "33749:3:74", + "nodeType": "YulLiteral", + "src": "33749:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "33720:3:74", + "nodeType": "YulIdentifier", + "src": "33720:3:74" + }, + "nativeSrc": "33720:33:74", + "nodeType": "YulFunctionCall", + "src": "33720:33:74" + }, + "nativeSrc": "33717:120:74", + "nodeType": "YulIf", + "src": "33717:120:74" + }, + { + "nativeSrc": "33847:297:74", + "nodeType": "YulBlock", + "src": "33847:297:74", + "statements": [ + { + "nativeSrc": "33862:45:74", + "nodeType": "YulVariableDeclaration", + "src": "33862:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "33893:9:74", + "nodeType": "YulIdentifier", + "src": "33893:9:74" + }, + { + "kind": "number", + "nativeSrc": "33904:1:74", + "nodeType": "YulLiteral", + "src": "33904:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "33889:3:74", + "nodeType": "YulIdentifier", + "src": "33889:3:74" + }, + "nativeSrc": "33889:17:74", + "nodeType": "YulFunctionCall", + "src": "33889:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "33876:12:74", + "nodeType": "YulIdentifier", + "src": "33876:12:74" + }, + "nativeSrc": "33876:31:74", + "nodeType": "YulFunctionCall", + "src": "33876:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "33866:6:74", + "nodeType": "YulTypedName", + "src": "33866:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "33954:83:74", + "nodeType": "YulBlock", + "src": "33954:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "33956:77:74", + "nodeType": "YulIdentifier", + "src": "33956:77:74" + }, + "nativeSrc": "33956:79:74", + "nodeType": "YulFunctionCall", + "src": "33956:79:74" + }, + "nativeSrc": "33956:79:74", + "nodeType": "YulExpressionStatement", + "src": "33956:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "33926:6:74", + "nodeType": "YulIdentifier", + "src": "33926:6:74" + }, + { + "kind": "number", + "nativeSrc": "33934:18:74", + "nodeType": "YulLiteral", + "src": "33934:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "33923:2:74", + "nodeType": "YulIdentifier", + "src": "33923:2:74" + }, + "nativeSrc": "33923:30:74", + "nodeType": "YulFunctionCall", + "src": "33923:30:74" + }, + "nativeSrc": "33920:117:74", + "nodeType": "YulIf", + "src": "33920:117:74" + }, + { + "nativeSrc": "34051:83:74", + "nodeType": "YulAssignment", + "src": "34051:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34106:9:74", + "nodeType": "YulIdentifier", + "src": "34106:9:74" + }, + { + "name": "offset", + "nativeSrc": "34117:6:74", + "nodeType": "YulIdentifier", + "src": "34117:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34102:3:74", + "nodeType": "YulIdentifier", + "src": "34102:3:74" + }, + "nativeSrc": "34102:22:74", + "nodeType": "YulFunctionCall", + "src": "34102:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34126:7:74", + "nodeType": "YulIdentifier", + "src": "34126:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "34069:32:74", + "nodeType": "YulIdentifier", + "src": "34069:32:74" + }, + "nativeSrc": "34069:65:74", + "nodeType": "YulFunctionCall", + "src": "34069:65:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "34051:6:74", + "nodeType": "YulIdentifier", + "src": "34051:6:74" + }, + { + "name": "value1", + "nativeSrc": "34059:6:74", + "nodeType": "YulIdentifier", + "src": "34059:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "34154:118:74", + "nodeType": "YulBlock", + "src": "34154:118:74", + "statements": [ + { + "nativeSrc": "34169:16:74", + "nodeType": "YulVariableDeclaration", + "src": "34169:16:74", + "value": { + "kind": "number", + "nativeSrc": "34183:2:74", + "nodeType": "YulLiteral", + "src": "34183:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34173:6:74", + "nodeType": "YulTypedName", + "src": "34173:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34199:63:74", + "nodeType": "YulAssignment", + "src": "34199:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34234:9:74", + "nodeType": "YulIdentifier", + "src": "34234:9:74" + }, + { + "name": "offset", + "nativeSrc": "34245:6:74", + "nodeType": "YulIdentifier", + "src": "34245:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34230:3:74", + "nodeType": "YulIdentifier", + "src": "34230:3:74" + }, + "nativeSrc": "34230:22:74", + "nodeType": "YulFunctionCall", + "src": "34230:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34254:7:74", + "nodeType": "YulIdentifier", + "src": "34254:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "34209:20:74", + "nodeType": "YulIdentifier", + "src": "34209:20:74" + }, + "nativeSrc": "34209:53:74", + "nodeType": "YulFunctionCall", + "src": "34209:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "34199:6:74", + "nodeType": "YulIdentifier", + "src": "34199:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "34282:118:74", + "nodeType": "YulBlock", + "src": "34282:118:74", + "statements": [ + { + "nativeSrc": "34297:16:74", + "nodeType": "YulVariableDeclaration", + "src": "34297:16:74", + "value": { + "kind": "number", + "nativeSrc": "34311:2:74", + "nodeType": "YulLiteral", + "src": "34311:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34301:6:74", + "nodeType": "YulTypedName", + "src": "34301:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34327:63:74", + "nodeType": "YulAssignment", + "src": "34327:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34362:9:74", + "nodeType": "YulIdentifier", + "src": "34362:9:74" + }, + { + "name": "offset", + "nativeSrc": "34373:6:74", + "nodeType": "YulIdentifier", + "src": "34373:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34358:3:74", + "nodeType": "YulIdentifier", + "src": "34358:3:74" + }, + "nativeSrc": "34358:22:74", + "nodeType": "YulFunctionCall", + "src": "34358:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34382:7:74", + "nodeType": "YulIdentifier", + "src": "34382:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "34337:20:74", + "nodeType": "YulIdentifier", + "src": "34337:20:74" + }, + "nativeSrc": "34337:53:74", + "nodeType": "YulFunctionCall", + "src": "34337:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "34327:6:74", + "nodeType": "YulIdentifier", + "src": "34327:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "34410:118:74", + "nodeType": "YulBlock", + "src": "34410:118:74", + "statements": [ + { + "nativeSrc": "34425:16:74", + "nodeType": "YulVariableDeclaration", + "src": "34425:16:74", + "value": { + "kind": "number", + "nativeSrc": "34439:2:74", + "nodeType": "YulLiteral", + "src": "34439:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34429:6:74", + "nodeType": "YulTypedName", + "src": "34429:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34455:63:74", + "nodeType": "YulAssignment", + "src": "34455:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34490:9:74", + "nodeType": "YulIdentifier", + "src": "34490:9:74" + }, + { + "name": "offset", + "nativeSrc": "34501:6:74", + "nodeType": "YulIdentifier", + "src": "34501:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34486:3:74", + "nodeType": "YulIdentifier", + "src": "34486:3:74" + }, + "nativeSrc": "34486:22:74", + "nodeType": "YulFunctionCall", + "src": "34486:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34510:7:74", + "nodeType": "YulIdentifier", + "src": "34510:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "34465:20:74", + "nodeType": "YulIdentifier", + "src": "34465:20:74" + }, + "nativeSrc": "34465:53:74", + "nodeType": "YulFunctionCall", + "src": "34465:53:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "34455:6:74", + "nodeType": "YulIdentifier", + "src": "34455:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "34538:118:74", + "nodeType": "YulBlock", + "src": "34538:118:74", + "statements": [ + { + "nativeSrc": "34553:17:74", + "nodeType": "YulVariableDeclaration", + "src": "34553:17:74", + "value": { + "kind": "number", + "nativeSrc": "34567:3:74", + "nodeType": "YulLiteral", + "src": "34567:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34557:6:74", + "nodeType": "YulTypedName", + "src": "34557:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34584:62:74", + "nodeType": "YulAssignment", + "src": "34584:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34618:9:74", + "nodeType": "YulIdentifier", + "src": "34618:9:74" + }, + { + "name": "offset", + "nativeSrc": "34629:6:74", + "nodeType": "YulIdentifier", + "src": "34629:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34614:3:74", + "nodeType": "YulIdentifier", + "src": "34614:3:74" + }, + "nativeSrc": "34614:22:74", + "nodeType": "YulFunctionCall", + "src": "34614:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34638:7:74", + "nodeType": "YulIdentifier", + "src": "34638:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint16", + "nativeSrc": "34594:19:74", + "nodeType": "YulIdentifier", + "src": "34594:19:74" + }, + "nativeSrc": "34594:52:74", + "nodeType": "YulFunctionCall", + "src": "34594:52:74" + }, + "variableNames": [ + { + "name": "value5", + "nativeSrc": "34584:6:74", + "nodeType": "YulIdentifier", + "src": "34584:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptrt_addresst_uint256t_addresst_uint16", + "nativeSrc": "33554:1109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "33637:9:74", + "nodeType": "YulTypedName", + "src": "33637:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "33648:7:74", + "nodeType": "YulTypedName", + "src": "33648:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "33660:6:74", + "nodeType": "YulTypedName", + "src": "33660:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "33668:6:74", + "nodeType": "YulTypedName", + "src": "33668:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "33676:6:74", + "nodeType": "YulTypedName", + "src": "33676:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "33684:6:74", + "nodeType": "YulTypedName", + "src": "33684:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "33692:6:74", + "nodeType": "YulTypedName", + "src": "33692:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "33700:6:74", + "nodeType": "YulTypedName", + "src": "33700:6:74", + "type": "" + } + ], + "src": "33554:1109:74" + }, + { + "body": { + "nativeSrc": "34751:390:74", + "nodeType": "YulBlock", + "src": "34751:390:74", + "statements": [ + { + "body": { + "nativeSrc": "34797:83:74", + "nodeType": "YulBlock", + "src": "34797:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "34799:77:74", + "nodeType": "YulIdentifier", + "src": "34799:77:74" + }, + "nativeSrc": "34799:79:74", + "nodeType": "YulFunctionCall", + "src": "34799:79:74" + }, + "nativeSrc": "34799:79:74", + "nodeType": "YulExpressionStatement", + "src": "34799:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "34772:7:74", + "nodeType": "YulIdentifier", + "src": "34772:7:74" + }, + { + "name": "headStart", + "nativeSrc": "34781:9:74", + "nodeType": "YulIdentifier", + "src": "34781:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "34768:3:74", + "nodeType": "YulIdentifier", + "src": "34768:3:74" + }, + "nativeSrc": "34768:23:74", + "nodeType": "YulFunctionCall", + "src": "34768:23:74" + }, + { + "kind": "number", + "nativeSrc": "34793:2:74", + "nodeType": "YulLiteral", + "src": "34793:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "34764:3:74", + "nodeType": "YulIdentifier", + "src": "34764:3:74" + }, + "nativeSrc": "34764:32:74", + "nodeType": "YulFunctionCall", + "src": "34764:32:74" + }, + "nativeSrc": "34761:119:74", + "nodeType": "YulIf", + "src": "34761:119:74" + }, + { + "nativeSrc": "34890:117:74", + "nodeType": "YulBlock", + "src": "34890:117:74", + "statements": [ + { + "nativeSrc": "34905:15:74", + "nodeType": "YulVariableDeclaration", + "src": "34905:15:74", + "value": { + "kind": "number", + "nativeSrc": "34919:1:74", + "nodeType": "YulLiteral", + "src": "34919:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "34909:6:74", + "nodeType": "YulTypedName", + "src": "34909:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "34934:63:74", + "nodeType": "YulAssignment", + "src": "34934:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34969:9:74", + "nodeType": "YulIdentifier", + "src": "34969:9:74" + }, + { + "name": "offset", + "nativeSrc": "34980:6:74", + "nodeType": "YulIdentifier", + "src": "34980:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34965:3:74", + "nodeType": "YulIdentifier", + "src": "34965:3:74" + }, + "nativeSrc": "34965:22:74", + "nodeType": "YulFunctionCall", + "src": "34965:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "34989:7:74", + "nodeType": "YulIdentifier", + "src": "34989:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "34944:20:74", + "nodeType": "YulIdentifier", + "src": "34944:20:74" + }, + "nativeSrc": "34944:53:74", + "nodeType": "YulFunctionCall", + "src": "34944:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "34934:6:74", + "nodeType": "YulIdentifier", + "src": "34934:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "35017:117:74", + "nodeType": "YulBlock", + "src": "35017:117:74", + "statements": [ + { + "nativeSrc": "35032:16:74", + "nodeType": "YulVariableDeclaration", + "src": "35032:16:74", + "value": { + "kind": "number", + "nativeSrc": "35046:2:74", + "nodeType": "YulLiteral", + "src": "35046:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "35036:6:74", + "nodeType": "YulTypedName", + "src": "35036:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "35062:62:74", + "nodeType": "YulAssignment", + "src": "35062:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "35096:9:74", + "nodeType": "YulIdentifier", + "src": "35096:9:74" + }, + { + "name": "offset", + "nativeSrc": "35107:6:74", + "nodeType": "YulIdentifier", + "src": "35107:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35092:3:74", + "nodeType": "YulIdentifier", + "src": "35092:3:74" + }, + "nativeSrc": "35092:22:74", + "nodeType": "YulFunctionCall", + "src": "35092:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "35116:7:74", + "nodeType": "YulIdentifier", + "src": "35116:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint32", + "nativeSrc": "35072:19:74", + "nodeType": "YulIdentifier", + "src": "35072:19:74" + }, + "nativeSrc": "35072:52:74", + "nodeType": "YulFunctionCall", + "src": "35072:52:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "35062:6:74", + "nodeType": "YulIdentifier", + "src": "35062:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint32", + "nativeSrc": "34669:472:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "34713:9:74", + "nodeType": "YulTypedName", + "src": "34713:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "34724:7:74", + "nodeType": "YulTypedName", + "src": "34724:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "34736:6:74", + "nodeType": "YulTypedName", + "src": "34736:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "34744:6:74", + "nodeType": "YulTypedName", + "src": "34744:6:74", + "type": "" + } + ], + "src": "34669:472:74" + }, + { + "body": { + "nativeSrc": "35221:51:74", + "nodeType": "YulBlock", + "src": "35221:51:74", + "statements": [ + { + "nativeSrc": "35231:35:74", + "nodeType": "YulAssignment", + "src": "35231:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35260:5:74", + "nodeType": "YulIdentifier", + "src": "35260:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "35242:17:74", + "nodeType": "YulIdentifier", + "src": "35242:17:74" + }, + "nativeSrc": "35242:24:74", + "nodeType": "YulFunctionCall", + "src": "35242:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "35231:7:74", + "nodeType": "YulIdentifier", + "src": "35231:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35147:125:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35203:5:74", + "nodeType": "YulTypedName", + "src": "35203:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "35213:7:74", + "nodeType": "YulTypedName", + "src": "35213:7:74", + "type": "" + } + ], + "src": "35147:125:74" + }, + { + "body": { + "nativeSrc": "35350:108:74", + "nodeType": "YulBlock", + "src": "35350:108:74", + "statements": [ + { + "body": { + "nativeSrc": "35436:16:74", + "nodeType": "YulBlock", + "src": "35436:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "35445:1:74", + "nodeType": "YulLiteral", + "src": "35445:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "35448:1:74", + "nodeType": "YulLiteral", + "src": "35448:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "35438:6:74", + "nodeType": "YulIdentifier", + "src": "35438:6:74" + }, + "nativeSrc": "35438:12:74", + "nodeType": "YulFunctionCall", + "src": "35438:12:74" + }, + "nativeSrc": "35438:12:74", + "nodeType": "YulExpressionStatement", + "src": "35438:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "35373:5:74", + "nodeType": "YulIdentifier", + "src": "35373:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "35427:5:74", + "nodeType": "YulIdentifier", + "src": "35427:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35380:46:74", + "nodeType": "YulIdentifier", + "src": "35380:46:74" + }, + "nativeSrc": "35380:53:74", + "nodeType": "YulFunctionCall", + "src": "35380:53:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "35370:2:74", + "nodeType": "YulIdentifier", + "src": "35370:2:74" + }, + "nativeSrc": "35370:64:74", + "nodeType": "YulFunctionCall", + "src": "35370:64:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "35363:6:74", + "nodeType": "YulIdentifier", + "src": "35363:6:74" + }, + "nativeSrc": "35363:72:74", + "nodeType": "YulFunctionCall", + "src": "35363:72:74" + }, + "nativeSrc": "35360:92:74", + "nodeType": "YulIf", + "src": "35360:92:74" + } + ] + }, + "name": "validator_revert_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35278:180:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "35343:5:74", + "nodeType": "YulTypedName", + "src": "35343:5:74", + "type": "" + } + ], + "src": "35278:180:74" + }, + { + "body": { + "nativeSrc": "35545:116:74", + "nodeType": "YulBlock", + "src": "35545:116:74", + "statements": [ + { + "nativeSrc": "35555:29:74", + "nodeType": "YulAssignment", + "src": "35555:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "35577:6:74", + "nodeType": "YulIdentifier", + "src": "35577:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "35564:12:74", + "nodeType": "YulIdentifier", + "src": "35564:12:74" + }, + "nativeSrc": "35564:20:74", + "nodeType": "YulFunctionCall", + "src": "35564:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "35555:5:74", + "nodeType": "YulIdentifier", + "src": "35555:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "35649:5:74", + "nodeType": "YulIdentifier", + "src": "35649:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35593:55:74", + "nodeType": "YulIdentifier", + "src": "35593:55:74" + }, + "nativeSrc": "35593:62:74", + "nodeType": "YulFunctionCall", + "src": "35593:62:74" + }, + "nativeSrc": "35593:62:74", + "nodeType": "YulExpressionStatement", + "src": "35593:62:74" + } + ] + }, + "name": "abi_decode_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35464:197:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "35523:6:74", + "nodeType": "YulTypedName", + "src": "35523:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "35531:3:74", + "nodeType": "YulTypedName", + "src": "35531:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "35539:5:74", + "nodeType": "YulTypedName", + "src": "35539:5:74", + "type": "" + } + ], + "src": "35464:197:74" + }, + { + "body": { + "nativeSrc": "35762:292:74", + "nodeType": "YulBlock", + "src": "35762:292:74", + "statements": [ + { + "body": { + "nativeSrc": "35808:83:74", + "nodeType": "YulBlock", + "src": "35808:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "35810:77:74", + "nodeType": "YulIdentifier", + "src": "35810:77:74" + }, + "nativeSrc": "35810:79:74", + "nodeType": "YulFunctionCall", + "src": "35810:79:74" + }, + "nativeSrc": "35810:79:74", + "nodeType": "YulExpressionStatement", + "src": "35810:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "35783:7:74", + "nodeType": "YulIdentifier", + "src": "35783:7:74" + }, + { + "name": "headStart", + "nativeSrc": "35792:9:74", + "nodeType": "YulIdentifier", + "src": "35792:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "35779:3:74", + "nodeType": "YulIdentifier", + "src": "35779:3:74" + }, + "nativeSrc": "35779:23:74", + "nodeType": "YulFunctionCall", + "src": "35779:23:74" + }, + { + "kind": "number", + "nativeSrc": "35804:2:74", + "nodeType": "YulLiteral", + "src": "35804:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "35775:3:74", + "nodeType": "YulIdentifier", + "src": "35775:3:74" + }, + "nativeSrc": "35775:32:74", + "nodeType": "YulFunctionCall", + "src": "35775:32:74" + }, + "nativeSrc": "35772:119:74", + "nodeType": "YulIf", + "src": "35772:119:74" + }, + { + "nativeSrc": "35901:146:74", + "nodeType": "YulBlock", + "src": "35901:146:74", + "statements": [ + { + "nativeSrc": "35916:15:74", + "nodeType": "YulVariableDeclaration", + "src": "35916:15:74", + "value": { + "kind": "number", + "nativeSrc": "35930:1:74", + "nodeType": "YulLiteral", + "src": "35930:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "35920:6:74", + "nodeType": "YulTypedName", + "src": "35920:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "35945:92:74", + "nodeType": "YulAssignment", + "src": "35945:92:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36009:9:74", + "nodeType": "YulIdentifier", + "src": "36009:9:74" + }, + { + "name": "offset", + "nativeSrc": "36020:6:74", + "nodeType": "YulIdentifier", + "src": "36020:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36005:3:74", + "nodeType": "YulIdentifier", + "src": "36005:3:74" + }, + "nativeSrc": "36005:22:74", + "nodeType": "YulFunctionCall", + "src": "36005:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "36029:7:74", + "nodeType": "YulIdentifier", + "src": "36029:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35955:49:74", + "nodeType": "YulIdentifier", + "src": "35955:49:74" + }, + "nativeSrc": "35955:82:74", + "nodeType": "YulFunctionCall", + "src": "35955:82:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "35945:6:74", + "nodeType": "YulIdentifier", + "src": "35945:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_INameWrapperUpgrade_$10082", + "nativeSrc": "35667:387:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "35732:9:74", + "nodeType": "YulTypedName", + "src": "35732:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "35743:7:74", + "nodeType": "YulTypedName", + "src": "35743:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "35755:6:74", + "nodeType": "YulTypedName", + "src": "35755:6:74", + "type": "" + } + ], + "src": "35667:387:74" + }, + { + "body": { + "nativeSrc": "36143:391:74", + "nodeType": "YulBlock", + "src": "36143:391:74", + "statements": [ + { + "body": { + "nativeSrc": "36189:83:74", + "nodeType": "YulBlock", + "src": "36189:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "36191:77:74", + "nodeType": "YulIdentifier", + "src": "36191:77:74" + }, + "nativeSrc": "36191:79:74", + "nodeType": "YulFunctionCall", + "src": "36191:79:74" + }, + "nativeSrc": "36191:79:74", + "nodeType": "YulExpressionStatement", + "src": "36191:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "36164:7:74", + "nodeType": "YulIdentifier", + "src": "36164:7:74" + }, + { + "name": "headStart", + "nativeSrc": "36173:9:74", + "nodeType": "YulIdentifier", + "src": "36173:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "36160:3:74", + "nodeType": "YulIdentifier", + "src": "36160:3:74" + }, + "nativeSrc": "36160:23:74", + "nodeType": "YulFunctionCall", + "src": "36160:23:74" + }, + { + "kind": "number", + "nativeSrc": "36185:2:74", + "nodeType": "YulLiteral", + "src": "36185:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "36156:3:74", + "nodeType": "YulIdentifier", + "src": "36156:3:74" + }, + "nativeSrc": "36156:32:74", + "nodeType": "YulFunctionCall", + "src": "36156:32:74" + }, + "nativeSrc": "36153:119:74", + "nodeType": "YulIf", + "src": "36153:119:74" + }, + { + "nativeSrc": "36282:117:74", + "nodeType": "YulBlock", + "src": "36282:117:74", + "statements": [ + { + "nativeSrc": "36297:15:74", + "nodeType": "YulVariableDeclaration", + "src": "36297:15:74", + "value": { + "kind": "number", + "nativeSrc": "36311:1:74", + "nodeType": "YulLiteral", + "src": "36311:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36301:6:74", + "nodeType": "YulTypedName", + "src": "36301:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "36326:63:74", + "nodeType": "YulAssignment", + "src": "36326:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36361:9:74", + "nodeType": "YulIdentifier", + "src": "36361:9:74" + }, + { + "name": "offset", + "nativeSrc": "36372:6:74", + "nodeType": "YulIdentifier", + "src": "36372:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36357:3:74", + "nodeType": "YulIdentifier", + "src": "36357:3:74" + }, + "nativeSrc": "36357:22:74", + "nodeType": "YulFunctionCall", + "src": "36357:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "36381:7:74", + "nodeType": "YulIdentifier", + "src": "36381:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "36336:20:74", + "nodeType": "YulIdentifier", + "src": "36336:20:74" + }, + "nativeSrc": "36336:53:74", + "nodeType": "YulFunctionCall", + "src": "36336:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "36326:6:74", + "nodeType": "YulIdentifier", + "src": "36326:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "36409:118:74", + "nodeType": "YulBlock", + "src": "36409:118:74", + "statements": [ + { + "nativeSrc": "36424:16:74", + "nodeType": "YulVariableDeclaration", + "src": "36424:16:74", + "value": { + "kind": "number", + "nativeSrc": "36438:2:74", + "nodeType": "YulLiteral", + "src": "36438:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36428:6:74", + "nodeType": "YulTypedName", + "src": "36428:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "36454:63:74", + "nodeType": "YulAssignment", + "src": "36454:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36489:9:74", + "nodeType": "YulIdentifier", + "src": "36489:9:74" + }, + { + "name": "offset", + "nativeSrc": "36500:6:74", + "nodeType": "YulIdentifier", + "src": "36500:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36485:3:74", + "nodeType": "YulIdentifier", + "src": "36485:3:74" + }, + "nativeSrc": "36485:22:74", + "nodeType": "YulFunctionCall", + "src": "36485:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "36509:7:74", + "nodeType": "YulIdentifier", + "src": "36509:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "36464:20:74", + "nodeType": "YulIdentifier", + "src": "36464:20:74" + }, + "nativeSrc": "36464:53:74", + "nodeType": "YulFunctionCall", + "src": "36464:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "36454:6:74", + "nodeType": "YulIdentifier", + "src": "36454:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_uint256", + "nativeSrc": "36060:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "36105:9:74", + "nodeType": "YulTypedName", + "src": "36105:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "36116:7:74", + "nodeType": "YulTypedName", + "src": "36116:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "36128:6:74", + "nodeType": "YulTypedName", + "src": "36128:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "36136:6:74", + "nodeType": "YulTypedName", + "src": "36136:6:74", + "type": "" + } + ], + "src": "36060:474:74" + }, + { + "body": { + "nativeSrc": "36692:955:74", + "nodeType": "YulBlock", + "src": "36692:955:74", + "statements": [ + { + "body": { + "nativeSrc": "36739:83:74", + "nodeType": "YulBlock", + "src": "36739:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "36741:77:74", + "nodeType": "YulIdentifier", + "src": "36741:77:74" + }, + "nativeSrc": "36741:79:74", + "nodeType": "YulFunctionCall", + "src": "36741:79:74" + }, + "nativeSrc": "36741:79:74", + "nodeType": "YulExpressionStatement", + "src": "36741:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "36713:7:74", + "nodeType": "YulIdentifier", + "src": "36713:7:74" + }, + { + "name": "headStart", + "nativeSrc": "36722:9:74", + "nodeType": "YulIdentifier", + "src": "36722:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "36709:3:74", + "nodeType": "YulIdentifier", + "src": "36709:3:74" + }, + "nativeSrc": "36709:23:74", + "nodeType": "YulFunctionCall", + "src": "36709:23:74" + }, + { + "kind": "number", + "nativeSrc": "36734:3:74", + "nodeType": "YulLiteral", + "src": "36734:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "36705:3:74", + "nodeType": "YulIdentifier", + "src": "36705:3:74" + }, + "nativeSrc": "36705:33:74", + "nodeType": "YulFunctionCall", + "src": "36705:33:74" + }, + "nativeSrc": "36702:120:74", + "nodeType": "YulIf", + "src": "36702:120:74" + }, + { + "nativeSrc": "36832:117:74", + "nodeType": "YulBlock", + "src": "36832:117:74", + "statements": [ + { + "nativeSrc": "36847:15:74", + "nodeType": "YulVariableDeclaration", + "src": "36847:15:74", + "value": { + "kind": "number", + "nativeSrc": "36861:1:74", + "nodeType": "YulLiteral", + "src": "36861:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36851:6:74", + "nodeType": "YulTypedName", + "src": "36851:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "36876:63:74", + "nodeType": "YulAssignment", + "src": "36876:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36911:9:74", + "nodeType": "YulIdentifier", + "src": "36911:9:74" + }, + { + "name": "offset", + "nativeSrc": "36922:6:74", + "nodeType": "YulIdentifier", + "src": "36922:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36907:3:74", + "nodeType": "YulIdentifier", + "src": "36907:3:74" + }, + "nativeSrc": "36907:22:74", + "nodeType": "YulFunctionCall", + "src": "36907:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "36931:7:74", + "nodeType": "YulIdentifier", + "src": "36931:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "36886:20:74", + "nodeType": "YulIdentifier", + "src": "36886:20:74" + }, + "nativeSrc": "36886:53:74", + "nodeType": "YulFunctionCall", + "src": "36886:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "36876:6:74", + "nodeType": "YulIdentifier", + "src": "36876:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "36959:298:74", + "nodeType": "YulBlock", + "src": "36959:298:74", + "statements": [ + { + "nativeSrc": "36974:46:74", + "nodeType": "YulVariableDeclaration", + "src": "36974:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37005:9:74", + "nodeType": "YulIdentifier", + "src": "37005:9:74" + }, + { + "kind": "number", + "nativeSrc": "37016:2:74", + "nodeType": "YulLiteral", + "src": "37016:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37001:3:74", + "nodeType": "YulIdentifier", + "src": "37001:3:74" + }, + "nativeSrc": "37001:18:74", + "nodeType": "YulFunctionCall", + "src": "37001:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "36988:12:74", + "nodeType": "YulIdentifier", + "src": "36988:12:74" + }, + "nativeSrc": "36988:32:74", + "nodeType": "YulFunctionCall", + "src": "36988:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "36978:6:74", + "nodeType": "YulTypedName", + "src": "36978:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "37067:83:74", + "nodeType": "YulBlock", + "src": "37067:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "37069:77:74", + "nodeType": "YulIdentifier", + "src": "37069:77:74" + }, + "nativeSrc": "37069:79:74", + "nodeType": "YulFunctionCall", + "src": "37069:79:74" + }, + "nativeSrc": "37069:79:74", + "nodeType": "YulExpressionStatement", + "src": "37069:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "37039:6:74", + "nodeType": "YulIdentifier", + "src": "37039:6:74" + }, + { + "kind": "number", + "nativeSrc": "37047:18:74", + "nodeType": "YulLiteral", + "src": "37047:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "37036:2:74", + "nodeType": "YulIdentifier", + "src": "37036:2:74" + }, + "nativeSrc": "37036:30:74", + "nodeType": "YulFunctionCall", + "src": "37036:30:74" + }, + "nativeSrc": "37033:117:74", + "nodeType": "YulIf", + "src": "37033:117:74" + }, + { + "nativeSrc": "37164:83:74", + "nodeType": "YulAssignment", + "src": "37164:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37219:9:74", + "nodeType": "YulIdentifier", + "src": "37219:9:74" + }, + { + "name": "offset", + "nativeSrc": "37230:6:74", + "nodeType": "YulIdentifier", + "src": "37230:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37215:3:74", + "nodeType": "YulIdentifier", + "src": "37215:3:74" + }, + "nativeSrc": "37215:22:74", + "nodeType": "YulFunctionCall", + "src": "37215:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37239:7:74", + "nodeType": "YulIdentifier", + "src": "37239:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_calldata_ptr", + "nativeSrc": "37182:32:74", + "nodeType": "YulIdentifier", + "src": "37182:32:74" + }, + "nativeSrc": "37182:65:74", + "nodeType": "YulFunctionCall", + "src": "37182:65:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "37164:6:74", + "nodeType": "YulIdentifier", + "src": "37164:6:74" + }, + { + "name": "value2", + "nativeSrc": "37172:6:74", + "nodeType": "YulIdentifier", + "src": "37172:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "37267:118:74", + "nodeType": "YulBlock", + "src": "37267:118:74", + "statements": [ + { + "nativeSrc": "37282:16:74", + "nodeType": "YulVariableDeclaration", + "src": "37282:16:74", + "value": { + "kind": "number", + "nativeSrc": "37296:2:74", + "nodeType": "YulLiteral", + "src": "37296:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37286:6:74", + "nodeType": "YulTypedName", + "src": "37286:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "37312:63:74", + "nodeType": "YulAssignment", + "src": "37312:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37347:9:74", + "nodeType": "YulIdentifier", + "src": "37347:9:74" + }, + { + "name": "offset", + "nativeSrc": "37358:6:74", + "nodeType": "YulIdentifier", + "src": "37358:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37343:3:74", + "nodeType": "YulIdentifier", + "src": "37343:3:74" + }, + "nativeSrc": "37343:22:74", + "nodeType": "YulFunctionCall", + "src": "37343:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37367:7:74", + "nodeType": "YulIdentifier", + "src": "37367:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "37322:20:74", + "nodeType": "YulIdentifier", + "src": "37322:20:74" + }, + "nativeSrc": "37322:53:74", + "nodeType": "YulFunctionCall", + "src": "37322:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "37312:6:74", + "nodeType": "YulIdentifier", + "src": "37312:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "37395:117:74", + "nodeType": "YulBlock", + "src": "37395:117:74", + "statements": [ + { + "nativeSrc": "37410:16:74", + "nodeType": "YulVariableDeclaration", + "src": "37410:16:74", + "value": { + "kind": "number", + "nativeSrc": "37424:2:74", + "nodeType": "YulLiteral", + "src": "37424:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37414:6:74", + "nodeType": "YulTypedName", + "src": "37414:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "37440:62:74", + "nodeType": "YulAssignment", + "src": "37440:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37474:9:74", + "nodeType": "YulIdentifier", + "src": "37474:9:74" + }, + { + "name": "offset", + "nativeSrc": "37485:6:74", + "nodeType": "YulIdentifier", + "src": "37485:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37470:3:74", + "nodeType": "YulIdentifier", + "src": "37470:3:74" + }, + "nativeSrc": "37470:22:74", + "nodeType": "YulFunctionCall", + "src": "37470:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37494:7:74", + "nodeType": "YulIdentifier", + "src": "37494:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint32", + "nativeSrc": "37450:19:74", + "nodeType": "YulIdentifier", + "src": "37450:19:74" + }, + "nativeSrc": "37450:52:74", + "nodeType": "YulFunctionCall", + "src": "37450:52:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "37440:6:74", + "nodeType": "YulIdentifier", + "src": "37440:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "37522:118:74", + "nodeType": "YulBlock", + "src": "37522:118:74", + "statements": [ + { + "nativeSrc": "37537:17:74", + "nodeType": "YulVariableDeclaration", + "src": "37537:17:74", + "value": { + "kind": "number", + "nativeSrc": "37551:3:74", + "nodeType": "YulLiteral", + "src": "37551:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37541:6:74", + "nodeType": "YulTypedName", + "src": "37541:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "37568:62:74", + "nodeType": "YulAssignment", + "src": "37568:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37602:9:74", + "nodeType": "YulIdentifier", + "src": "37602:9:74" + }, + { + "name": "offset", + "nativeSrc": "37613:6:74", + "nodeType": "YulIdentifier", + "src": "37613:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37598:3:74", + "nodeType": "YulIdentifier", + "src": "37598:3:74" + }, + "nativeSrc": "37598:22:74", + "nodeType": "YulFunctionCall", + "src": "37598:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37622:7:74", + "nodeType": "YulIdentifier", + "src": "37622:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "37578:19:74", + "nodeType": "YulIdentifier", + "src": "37578:19:74" + }, + "nativeSrc": "37578:52:74", + "nodeType": "YulFunctionCall", + "src": "37578:52:74" + }, + "variableNames": [ + { + "name": "value5", + "nativeSrc": "37568:6:74", + "nodeType": "YulIdentifier", + "src": "37568:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_addresst_uint32t_uint64", + "nativeSrc": "36540:1107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "36622:9:74", + "nodeType": "YulTypedName", + "src": "36622:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "36633:7:74", + "nodeType": "YulTypedName", + "src": "36633:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "36645:6:74", + "nodeType": "YulTypedName", + "src": "36645:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "36653:6:74", + "nodeType": "YulTypedName", + "src": "36653:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "36661:6:74", + "nodeType": "YulTypedName", + "src": "36661:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "36669:6:74", + "nodeType": "YulTypedName", + "src": "36669:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "36677:6:74", + "nodeType": "YulTypedName", + "src": "36677:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "36685:6:74", + "nodeType": "YulTypedName", + "src": "36685:6:74", + "type": "" + } + ], + "src": "36540:1107:74" + }, + { + "body": { + "nativeSrc": "37774:749:74", + "nodeType": "YulBlock", + "src": "37774:749:74", + "statements": [ + { + "body": { + "nativeSrc": "37820:83:74", + "nodeType": "YulBlock", + "src": "37820:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "37822:77:74", + "nodeType": "YulIdentifier", + "src": "37822:77:74" + }, + "nativeSrc": "37822:79:74", + "nodeType": "YulFunctionCall", + "src": "37822:79:74" + }, + "nativeSrc": "37822:79:74", + "nodeType": "YulExpressionStatement", + "src": "37822:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "37795:7:74", + "nodeType": "YulIdentifier", + "src": "37795:7:74" + }, + { + "name": "headStart", + "nativeSrc": "37804:9:74", + "nodeType": "YulIdentifier", + "src": "37804:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "37791:3:74", + "nodeType": "YulIdentifier", + "src": "37791:3:74" + }, + "nativeSrc": "37791:23:74", + "nodeType": "YulFunctionCall", + "src": "37791:23:74" + }, + { + "kind": "number", + "nativeSrc": "37816:2:74", + "nodeType": "YulLiteral", + "src": "37816:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "37787:3:74", + "nodeType": "YulIdentifier", + "src": "37787:3:74" + }, + "nativeSrc": "37787:32:74", + "nodeType": "YulFunctionCall", + "src": "37787:32:74" + }, + "nativeSrc": "37784:119:74", + "nodeType": "YulIf", + "src": "37784:119:74" + }, + { + "nativeSrc": "37913:296:74", + "nodeType": "YulBlock", + "src": "37913:296:74", + "statements": [ + { + "nativeSrc": "37928:45:74", + "nodeType": "YulVariableDeclaration", + "src": "37928:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37959:9:74", + "nodeType": "YulIdentifier", + "src": "37959:9:74" + }, + { + "kind": "number", + "nativeSrc": "37970:1:74", + "nodeType": "YulLiteral", + "src": "37970:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37955:3:74", + "nodeType": "YulIdentifier", + "src": "37955:3:74" + }, + "nativeSrc": "37955:17:74", + "nodeType": "YulFunctionCall", + "src": "37955:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "37942:12:74", + "nodeType": "YulIdentifier", + "src": "37942:12:74" + }, + "nativeSrc": "37942:31:74", + "nodeType": "YulFunctionCall", + "src": "37942:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37932:6:74", + "nodeType": "YulTypedName", + "src": "37932:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "38020:83:74", + "nodeType": "YulBlock", + "src": "38020:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "38022:77:74", + "nodeType": "YulIdentifier", + "src": "38022:77:74" + }, + "nativeSrc": "38022:79:74", + "nodeType": "YulFunctionCall", + "src": "38022:79:74" + }, + "nativeSrc": "38022:79:74", + "nodeType": "YulExpressionStatement", + "src": "38022:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "37992:6:74", + "nodeType": "YulIdentifier", + "src": "37992:6:74" + }, + { + "kind": "number", + "nativeSrc": "38000:18:74", + "nodeType": "YulLiteral", + "src": "38000:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "37989:2:74", + "nodeType": "YulIdentifier", + "src": "37989:2:74" + }, + "nativeSrc": "37989:30:74", + "nodeType": "YulFunctionCall", + "src": "37989:30:74" + }, + "nativeSrc": "37986:117:74", + "nodeType": "YulIf", + "src": "37986:117:74" + }, + { + "nativeSrc": "38117:82:74", + "nodeType": "YulAssignment", + "src": "38117:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38171:9:74", + "nodeType": "YulIdentifier", + "src": "38171:9:74" + }, + { + "name": "offset", + "nativeSrc": "38182:6:74", + "nodeType": "YulIdentifier", + "src": "38182:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38167:3:74", + "nodeType": "YulIdentifier", + "src": "38167:3:74" + }, + "nativeSrc": "38167:22:74", + "nodeType": "YulFunctionCall", + "src": "38167:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "38191:7:74", + "nodeType": "YulIdentifier", + "src": "38191:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "38135:31:74", + "nodeType": "YulIdentifier", + "src": "38135:31:74" + }, + "nativeSrc": "38135:64:74", + "nodeType": "YulFunctionCall", + "src": "38135:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "38117:6:74", + "nodeType": "YulIdentifier", + "src": "38117:6:74" + }, + { + "name": "value1", + "nativeSrc": "38125:6:74", + "nodeType": "YulIdentifier", + "src": "38125:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "38219:297:74", + "nodeType": "YulBlock", + "src": "38219:297:74", + "statements": [ + { + "nativeSrc": "38234:46:74", + "nodeType": "YulVariableDeclaration", + "src": "38234:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38265:9:74", + "nodeType": "YulIdentifier", + "src": "38265:9:74" + }, + { + "kind": "number", + "nativeSrc": "38276:2:74", + "nodeType": "YulLiteral", + "src": "38276:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38261:3:74", + "nodeType": "YulIdentifier", + "src": "38261:3:74" + }, + "nativeSrc": "38261:18:74", + "nodeType": "YulFunctionCall", + "src": "38261:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "38248:12:74", + "nodeType": "YulIdentifier", + "src": "38248:12:74" + }, + "nativeSrc": "38248:32:74", + "nodeType": "YulFunctionCall", + "src": "38248:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "38238:6:74", + "nodeType": "YulTypedName", + "src": "38238:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "38327:83:74", + "nodeType": "YulBlock", + "src": "38327:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "38329:77:74", + "nodeType": "YulIdentifier", + "src": "38329:77:74" + }, + "nativeSrc": "38329:79:74", + "nodeType": "YulFunctionCall", + "src": "38329:79:74" + }, + "nativeSrc": "38329:79:74", + "nodeType": "YulExpressionStatement", + "src": "38329:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "38299:6:74", + "nodeType": "YulIdentifier", + "src": "38299:6:74" + }, + { + "kind": "number", + "nativeSrc": "38307:18:74", + "nodeType": "YulLiteral", + "src": "38307:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "38296:2:74", + "nodeType": "YulIdentifier", + "src": "38296:2:74" + }, + "nativeSrc": "38296:30:74", + "nodeType": "YulFunctionCall", + "src": "38296:30:74" + }, + "nativeSrc": "38293:117:74", + "nodeType": "YulIf", + "src": "38293:117:74" + }, + { + "nativeSrc": "38424:82:74", + "nodeType": "YulAssignment", + "src": "38424:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38478:9:74", + "nodeType": "YulIdentifier", + "src": "38478:9:74" + }, + { + "name": "offset", + "nativeSrc": "38489:6:74", + "nodeType": "YulIdentifier", + "src": "38489:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38474:3:74", + "nodeType": "YulIdentifier", + "src": "38474:3:74" + }, + "nativeSrc": "38474:22:74", + "nodeType": "YulFunctionCall", + "src": "38474:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "38498:7:74", + "nodeType": "YulIdentifier", + "src": "38498:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "38442:31:74", + "nodeType": "YulIdentifier", + "src": "38442:31:74" + }, + "nativeSrc": "38442:64:74", + "nodeType": "YulFunctionCall", + "src": "38442:64:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "38424:6:74", + "nodeType": "YulIdentifier", + "src": "38424:6:74" + }, + { + "name": "value3", + "nativeSrc": "38432:6:74", + "nodeType": "YulIdentifier", + "src": "38432:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr", + "nativeSrc": "37653:870:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "37720:9:74", + "nodeType": "YulTypedName", + "src": "37720:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "37731:7:74", + "nodeType": "YulTypedName", + "src": "37731:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "37743:6:74", + "nodeType": "YulTypedName", + "src": "37743:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "37751:6:74", + "nodeType": "YulTypedName", + "src": "37751:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "37759:6:74", + "nodeType": "YulTypedName", + "src": "37759:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "37767:6:74", + "nodeType": "YulTypedName", + "src": "37767:6:74", + "type": "" + } + ], + "src": "37653:870:74" + }, + { + "body": { + "nativeSrc": "38645:647:74", + "nodeType": "YulBlock", + "src": "38645:647:74", + "statements": [ + { + "body": { + "nativeSrc": "38692:83:74", + "nodeType": "YulBlock", + "src": "38692:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "38694:77:74", + "nodeType": "YulIdentifier", + "src": "38694:77:74" + }, + "nativeSrc": "38694:79:74", + "nodeType": "YulFunctionCall", + "src": "38694:79:74" + }, + "nativeSrc": "38694:79:74", + "nodeType": "YulExpressionStatement", + "src": "38694:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "38666:7:74", + "nodeType": "YulIdentifier", + "src": "38666:7:74" + }, + { + "name": "headStart", + "nativeSrc": "38675:9:74", + "nodeType": "YulIdentifier", + "src": "38675:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "38662:3:74", + "nodeType": "YulIdentifier", + "src": "38662:3:74" + }, + "nativeSrc": "38662:23:74", + "nodeType": "YulFunctionCall", + "src": "38662:23:74" + }, + { + "kind": "number", + "nativeSrc": "38687:3:74", + "nodeType": "YulLiteral", + "src": "38687:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "38658:3:74", + "nodeType": "YulIdentifier", + "src": "38658:3:74" + }, + "nativeSrc": "38658:33:74", + "nodeType": "YulFunctionCall", + "src": "38658:33:74" + }, + "nativeSrc": "38655:120:74", + "nodeType": "YulIf", + "src": "38655:120:74" + }, + { + "nativeSrc": "38785:117:74", + "nodeType": "YulBlock", + "src": "38785:117:74", + "statements": [ + { + "nativeSrc": "38800:15:74", + "nodeType": "YulVariableDeclaration", + "src": "38800:15:74", + "value": { + "kind": "number", + "nativeSrc": "38814:1:74", + "nodeType": "YulLiteral", + "src": "38814:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "38804:6:74", + "nodeType": "YulTypedName", + "src": "38804:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "38829:63:74", + "nodeType": "YulAssignment", + "src": "38829:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38864:9:74", + "nodeType": "YulIdentifier", + "src": "38864:9:74" + }, + { + "name": "offset", + "nativeSrc": "38875:6:74", + "nodeType": "YulIdentifier", + "src": "38875:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38860:3:74", + "nodeType": "YulIdentifier", + "src": "38860:3:74" + }, + "nativeSrc": "38860:22:74", + "nodeType": "YulFunctionCall", + "src": "38860:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "38884:7:74", + "nodeType": "YulIdentifier", + "src": "38884:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "38839:20:74", + "nodeType": "YulIdentifier", + "src": "38839:20:74" + }, + "nativeSrc": "38839:53:74", + "nodeType": "YulFunctionCall", + "src": "38839:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "38829:6:74", + "nodeType": "YulIdentifier", + "src": "38829:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "38912:118:74", + "nodeType": "YulBlock", + "src": "38912:118:74", + "statements": [ + { + "nativeSrc": "38927:16:74", + "nodeType": "YulVariableDeclaration", + "src": "38927:16:74", + "value": { + "kind": "number", + "nativeSrc": "38941:2:74", + "nodeType": "YulLiteral", + "src": "38941:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "38931:6:74", + "nodeType": "YulTypedName", + "src": "38931:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "38957:63:74", + "nodeType": "YulAssignment", + "src": "38957:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "38992:9:74", + "nodeType": "YulIdentifier", + "src": "38992:9:74" + }, + { + "name": "offset", + "nativeSrc": "39003:6:74", + "nodeType": "YulIdentifier", + "src": "39003:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38988:3:74", + "nodeType": "YulIdentifier", + "src": "38988:3:74" + }, + "nativeSrc": "38988:22:74", + "nodeType": "YulFunctionCall", + "src": "38988:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39012:7:74", + "nodeType": "YulIdentifier", + "src": "39012:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "38967:20:74", + "nodeType": "YulIdentifier", + "src": "38967:20:74" + }, + "nativeSrc": "38967:53:74", + "nodeType": "YulFunctionCall", + "src": "38967:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "38957:6:74", + "nodeType": "YulIdentifier", + "src": "38957:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "39040:118:74", + "nodeType": "YulBlock", + "src": "39040:118:74", + "statements": [ + { + "nativeSrc": "39055:16:74", + "nodeType": "YulVariableDeclaration", + "src": "39055:16:74", + "value": { + "kind": "number", + "nativeSrc": "39069:2:74", + "nodeType": "YulLiteral", + "src": "39069:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39059:6:74", + "nodeType": "YulTypedName", + "src": "39059:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39085:63:74", + "nodeType": "YulAssignment", + "src": "39085:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39120:9:74", + "nodeType": "YulIdentifier", + "src": "39120:9:74" + }, + { + "name": "offset", + "nativeSrc": "39131:6:74", + "nodeType": "YulIdentifier", + "src": "39131:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39116:3:74", + "nodeType": "YulIdentifier", + "src": "39116:3:74" + }, + "nativeSrc": "39116:22:74", + "nodeType": "YulFunctionCall", + "src": "39116:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39140:7:74", + "nodeType": "YulIdentifier", + "src": "39140:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "39095:20:74", + "nodeType": "YulIdentifier", + "src": "39095:20:74" + }, + "nativeSrc": "39095:53:74", + "nodeType": "YulFunctionCall", + "src": "39095:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "39085:6:74", + "nodeType": "YulIdentifier", + "src": "39085:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "39168:117:74", + "nodeType": "YulBlock", + "src": "39168:117:74", + "statements": [ + { + "nativeSrc": "39183:16:74", + "nodeType": "YulVariableDeclaration", + "src": "39183:16:74", + "value": { + "kind": "number", + "nativeSrc": "39197:2:74", + "nodeType": "YulLiteral", + "src": "39197:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39187:6:74", + "nodeType": "YulTypedName", + "src": "39187:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39213:62:74", + "nodeType": "YulAssignment", + "src": "39213:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39247:9:74", + "nodeType": "YulIdentifier", + "src": "39247:9:74" + }, + { + "name": "offset", + "nativeSrc": "39258:6:74", + "nodeType": "YulIdentifier", + "src": "39258:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39243:3:74", + "nodeType": "YulIdentifier", + "src": "39243:3:74" + }, + "nativeSrc": "39243:22:74", + "nodeType": "YulFunctionCall", + "src": "39243:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39267:7:74", + "nodeType": "YulIdentifier", + "src": "39267:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint64", + "nativeSrc": "39223:19:74", + "nodeType": "YulIdentifier", + "src": "39223:19:74" + }, + "nativeSrc": "39223:52:74", + "nodeType": "YulFunctionCall", + "src": "39223:52:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "39213:6:74", + "nodeType": "YulIdentifier", + "src": "39213:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_addresst_addresst_uint64", + "nativeSrc": "38529:763:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "38591:9:74", + "nodeType": "YulTypedName", + "src": "38591:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "38602:7:74", + "nodeType": "YulTypedName", + "src": "38602:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "38614:6:74", + "nodeType": "YulTypedName", + "src": "38614:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "38622:6:74", + "nodeType": "YulTypedName", + "src": "38622:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "38630:6:74", + "nodeType": "YulTypedName", + "src": "38630:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "38638:6:74", + "nodeType": "YulTypedName", + "src": "38638:6:74", + "type": "" + } + ], + "src": "38529:763:74" + }, + { + "body": { + "nativeSrc": "39398:519:74", + "nodeType": "YulBlock", + "src": "39398:519:74", + "statements": [ + { + "body": { + "nativeSrc": "39444:83:74", + "nodeType": "YulBlock", + "src": "39444:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "39446:77:74", + "nodeType": "YulIdentifier", + "src": "39446:77:74" + }, + "nativeSrc": "39446:79:74", + "nodeType": "YulFunctionCall", + "src": "39446:79:74" + }, + "nativeSrc": "39446:79:74", + "nodeType": "YulExpressionStatement", + "src": "39446:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "39419:7:74", + "nodeType": "YulIdentifier", + "src": "39419:7:74" + }, + { + "name": "headStart", + "nativeSrc": "39428:9:74", + "nodeType": "YulIdentifier", + "src": "39428:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "39415:3:74", + "nodeType": "YulIdentifier", + "src": "39415:3:74" + }, + "nativeSrc": "39415:23:74", + "nodeType": "YulFunctionCall", + "src": "39415:23:74" + }, + { + "kind": "number", + "nativeSrc": "39440:2:74", + "nodeType": "YulLiteral", + "src": "39440:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "39411:3:74", + "nodeType": "YulIdentifier", + "src": "39411:3:74" + }, + "nativeSrc": "39411:32:74", + "nodeType": "YulFunctionCall", + "src": "39411:32:74" + }, + "nativeSrc": "39408:119:74", + "nodeType": "YulIf", + "src": "39408:119:74" + }, + { + "nativeSrc": "39537:117:74", + "nodeType": "YulBlock", + "src": "39537:117:74", + "statements": [ + { + "nativeSrc": "39552:15:74", + "nodeType": "YulVariableDeclaration", + "src": "39552:15:74", + "value": { + "kind": "number", + "nativeSrc": "39566:1:74", + "nodeType": "YulLiteral", + "src": "39566:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39556:6:74", + "nodeType": "YulTypedName", + "src": "39556:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39581:63:74", + "nodeType": "YulAssignment", + "src": "39581:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39616:9:74", + "nodeType": "YulIdentifier", + "src": "39616:9:74" + }, + { + "name": "offset", + "nativeSrc": "39627:6:74", + "nodeType": "YulIdentifier", + "src": "39627:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39612:3:74", + "nodeType": "YulIdentifier", + "src": "39612:3:74" + }, + "nativeSrc": "39612:22:74", + "nodeType": "YulFunctionCall", + "src": "39612:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39636:7:74", + "nodeType": "YulIdentifier", + "src": "39636:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "39591:20:74", + "nodeType": "YulIdentifier", + "src": "39591:20:74" + }, + "nativeSrc": "39591:53:74", + "nodeType": "YulFunctionCall", + "src": "39591:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "39581:6:74", + "nodeType": "YulIdentifier", + "src": "39581:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "39664:118:74", + "nodeType": "YulBlock", + "src": "39664:118:74", + "statements": [ + { + "nativeSrc": "39679:16:74", + "nodeType": "YulVariableDeclaration", + "src": "39679:16:74", + "value": { + "kind": "number", + "nativeSrc": "39693:2:74", + "nodeType": "YulLiteral", + "src": "39693:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39683:6:74", + "nodeType": "YulTypedName", + "src": "39683:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39709:63:74", + "nodeType": "YulAssignment", + "src": "39709:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39744:9:74", + "nodeType": "YulIdentifier", + "src": "39744:9:74" + }, + { + "name": "offset", + "nativeSrc": "39755:6:74", + "nodeType": "YulIdentifier", + "src": "39755:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39740:3:74", + "nodeType": "YulIdentifier", + "src": "39740:3:74" + }, + "nativeSrc": "39740:22:74", + "nodeType": "YulFunctionCall", + "src": "39740:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39764:7:74", + "nodeType": "YulIdentifier", + "src": "39764:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "39719:20:74", + "nodeType": "YulIdentifier", + "src": "39719:20:74" + }, + "nativeSrc": "39719:53:74", + "nodeType": "YulFunctionCall", + "src": "39719:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "39709:6:74", + "nodeType": "YulIdentifier", + "src": "39709:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "39792:118:74", + "nodeType": "YulBlock", + "src": "39792:118:74", + "statements": [ + { + "nativeSrc": "39807:16:74", + "nodeType": "YulVariableDeclaration", + "src": "39807:16:74", + "value": { + "kind": "number", + "nativeSrc": "39821:2:74", + "nodeType": "YulLiteral", + "src": "39821:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39811:6:74", + "nodeType": "YulTypedName", + "src": "39811:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39837:63:74", + "nodeType": "YulAssignment", + "src": "39837:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39872:9:74", + "nodeType": "YulIdentifier", + "src": "39872:9:74" + }, + { + "name": "offset", + "nativeSrc": "39883:6:74", + "nodeType": "YulIdentifier", + "src": "39883:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39868:3:74", + "nodeType": "YulIdentifier", + "src": "39868:3:74" + }, + "nativeSrc": "39868:22:74", + "nodeType": "YulFunctionCall", + "src": "39868:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39892:7:74", + "nodeType": "YulIdentifier", + "src": "39892:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "39847:20:74", + "nodeType": "YulIdentifier", + "src": "39847:20:74" + }, + "nativeSrc": "39847:53:74", + "nodeType": "YulFunctionCall", + "src": "39847:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "39837:6:74", + "nodeType": "YulIdentifier", + "src": "39837:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32t_address", + "nativeSrc": "39298:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "39352:9:74", + "nodeType": "YulTypedName", + "src": "39352:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "39363:7:74", + "nodeType": "YulTypedName", + "src": "39363:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "39375:6:74", + "nodeType": "YulTypedName", + "src": "39375:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "39383:6:74", + "nodeType": "YulTypedName", + "src": "39383:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "39391:6:74", + "nodeType": "YulTypedName", + "src": "39391:6:74", + "type": "" + } + ], + "src": "39298:619:74" + }, + { + "body": { + "nativeSrc": "40006:391:74", + "nodeType": "YulBlock", + "src": "40006:391:74", + "statements": [ + { + "body": { + "nativeSrc": "40052:83:74", + "nodeType": "YulBlock", + "src": "40052:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "40054:77:74", + "nodeType": "YulIdentifier", + "src": "40054:77:74" + }, + "nativeSrc": "40054:79:74", + "nodeType": "YulFunctionCall", + "src": "40054:79:74" + }, + "nativeSrc": "40054:79:74", + "nodeType": "YulExpressionStatement", + "src": "40054:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "40027:7:74", + "nodeType": "YulIdentifier", + "src": "40027:7:74" + }, + { + "name": "headStart", + "nativeSrc": "40036:9:74", + "nodeType": "YulIdentifier", + "src": "40036:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "40023:3:74", + "nodeType": "YulIdentifier", + "src": "40023:3:74" + }, + "nativeSrc": "40023:23:74", + "nodeType": "YulFunctionCall", + "src": "40023:23:74" + }, + { + "kind": "number", + "nativeSrc": "40048:2:74", + "nodeType": "YulLiteral", + "src": "40048:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "40019:3:74", + "nodeType": "YulIdentifier", + "src": "40019:3:74" + }, + "nativeSrc": "40019:32:74", + "nodeType": "YulFunctionCall", + "src": "40019:32:74" + }, + "nativeSrc": "40016:119:74", + "nodeType": "YulIf", + "src": "40016:119:74" + }, + { + "nativeSrc": "40145:117:74", + "nodeType": "YulBlock", + "src": "40145:117:74", + "statements": [ + { + "nativeSrc": "40160:15:74", + "nodeType": "YulVariableDeclaration", + "src": "40160:15:74", + "value": { + "kind": "number", + "nativeSrc": "40174:1:74", + "nodeType": "YulLiteral", + "src": "40174:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "40164:6:74", + "nodeType": "YulTypedName", + "src": "40164:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40189:63:74", + "nodeType": "YulAssignment", + "src": "40189:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40224:9:74", + "nodeType": "YulIdentifier", + "src": "40224:9:74" + }, + { + "name": "offset", + "nativeSrc": "40235:6:74", + "nodeType": "YulIdentifier", + "src": "40235:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40220:3:74", + "nodeType": "YulIdentifier", + "src": "40220:3:74" + }, + "nativeSrc": "40220:22:74", + "nodeType": "YulFunctionCall", + "src": "40220:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "40244:7:74", + "nodeType": "YulIdentifier", + "src": "40244:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "40199:20:74", + "nodeType": "YulIdentifier", + "src": "40199:20:74" + }, + "nativeSrc": "40199:53:74", + "nodeType": "YulFunctionCall", + "src": "40199:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "40189:6:74", + "nodeType": "YulIdentifier", + "src": "40189:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "40272:118:74", + "nodeType": "YulBlock", + "src": "40272:118:74", + "statements": [ + { + "nativeSrc": "40287:16:74", + "nodeType": "YulVariableDeclaration", + "src": "40287:16:74", + "value": { + "kind": "number", + "nativeSrc": "40301:2:74", + "nodeType": "YulLiteral", + "src": "40301:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "40291:6:74", + "nodeType": "YulTypedName", + "src": "40291:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40317:63:74", + "nodeType": "YulAssignment", + "src": "40317:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40352:9:74", + "nodeType": "YulIdentifier", + "src": "40352:9:74" + }, + { + "name": "offset", + "nativeSrc": "40363:6:74", + "nodeType": "YulIdentifier", + "src": "40363:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40348:3:74", + "nodeType": "YulIdentifier", + "src": "40348:3:74" + }, + "nativeSrc": "40348:22:74", + "nodeType": "YulFunctionCall", + "src": "40348:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "40372:7:74", + "nodeType": "YulIdentifier", + "src": "40372:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "40327:20:74", + "nodeType": "YulIdentifier", + "src": "40327:20:74" + }, + "nativeSrc": "40327:53:74", + "nodeType": "YulFunctionCall", + "src": "40327:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "40317:6:74", + "nodeType": "YulIdentifier", + "src": "40317:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_bytes32", + "nativeSrc": "39923:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "39968:9:74", + "nodeType": "YulTypedName", + "src": "39968:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "39979:7:74", + "nodeType": "YulTypedName", + "src": "39979:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "39991:6:74", + "nodeType": "YulTypedName", + "src": "39991:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "39999:6:74", + "nodeType": "YulTypedName", + "src": "39999:6:74", + "type": "" + } + ], + "src": "39923:474:74" + }, + { + "body": { + "nativeSrc": "40469:263:74", + "nodeType": "YulBlock", + "src": "40469:263:74", + "statements": [ + { + "body": { + "nativeSrc": "40515:83:74", + "nodeType": "YulBlock", + "src": "40515:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "40517:77:74", + "nodeType": "YulIdentifier", + "src": "40517:77:74" + }, + "nativeSrc": "40517:79:74", + "nodeType": "YulFunctionCall", + "src": "40517:79:74" + }, + "nativeSrc": "40517:79:74", + "nodeType": "YulExpressionStatement", + "src": "40517:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "40490:7:74", + "nodeType": "YulIdentifier", + "src": "40490:7:74" + }, + { + "name": "headStart", + "nativeSrc": "40499:9:74", + "nodeType": "YulIdentifier", + "src": "40499:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "40486:3:74", + "nodeType": "YulIdentifier", + "src": "40486:3:74" + }, + "nativeSrc": "40486:23:74", + "nodeType": "YulFunctionCall", + "src": "40486:23:74" + }, + { + "kind": "number", + "nativeSrc": "40511:2:74", + "nodeType": "YulLiteral", + "src": "40511:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "40482:3:74", + "nodeType": "YulIdentifier", + "src": "40482:3:74" + }, + "nativeSrc": "40482:32:74", + "nodeType": "YulFunctionCall", + "src": "40482:32:74" + }, + "nativeSrc": "40479:119:74", + "nodeType": "YulIf", + "src": "40479:119:74" + }, + { + "nativeSrc": "40608:117:74", + "nodeType": "YulBlock", + "src": "40608:117:74", + "statements": [ + { + "nativeSrc": "40623:15:74", + "nodeType": "YulVariableDeclaration", + "src": "40623:15:74", + "value": { + "kind": "number", + "nativeSrc": "40637:1:74", + "nodeType": "YulLiteral", + "src": "40637:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "40627:6:74", + "nodeType": "YulTypedName", + "src": "40627:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "40652:63:74", + "nodeType": "YulAssignment", + "src": "40652:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40687:9:74", + "nodeType": "YulIdentifier", + "src": "40687:9:74" + }, + { + "name": "offset", + "nativeSrc": "40698:6:74", + "nodeType": "YulIdentifier", + "src": "40698:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40683:3:74", + "nodeType": "YulIdentifier", + "src": "40683:3:74" + }, + "nativeSrc": "40683:22:74", + "nodeType": "YulFunctionCall", + "src": "40683:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "40707:7:74", + "nodeType": "YulIdentifier", + "src": "40707:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "40662:20:74", + "nodeType": "YulIdentifier", + "src": "40662:20:74" + }, + "nativeSrc": "40662:53:74", + "nodeType": "YulFunctionCall", + "src": "40662:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "40652:6:74", + "nodeType": "YulIdentifier", + "src": "40652:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "40403:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "40439:9:74", + "nodeType": "YulTypedName", + "src": "40439:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "40450:7:74", + "nodeType": "YulTypedName", + "src": "40450:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "40462:6:74", + "nodeType": "YulTypedName", + "src": "40462:6:74", + "type": "" + } + ], + "src": "40403:329:74" + }, + { + "body": { + "nativeSrc": "40821:391:74", + "nodeType": "YulBlock", + "src": "40821:391:74", + "statements": [ + { + "body": { + "nativeSrc": "40867:83:74", + "nodeType": "YulBlock", + "src": "40867:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "40869:77:74", + "nodeType": "YulIdentifier", + "src": "40869:77:74" + }, + "nativeSrc": "40869:79:74", + "nodeType": "YulFunctionCall", + "src": "40869:79:74" + }, + "nativeSrc": "40869:79:74", + "nodeType": "YulExpressionStatement", + "src": "40869:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "40842:7:74", + "nodeType": "YulIdentifier", + "src": "40842:7:74" + }, + { + "name": "headStart", + "nativeSrc": "40851:9:74", + "nodeType": "YulIdentifier", + "src": "40851:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "40838:3:74", + "nodeType": "YulIdentifier", + "src": "40838:3:74" + }, + "nativeSrc": "40838:23:74", + "nodeType": "YulFunctionCall", + "src": "40838:23:74" + }, + { + "kind": "number", + "nativeSrc": "40863:2:74", + "nodeType": "YulLiteral", + "src": "40863:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "40834:3:74", + "nodeType": "YulIdentifier", + "src": "40834:3:74" + }, + "nativeSrc": "40834:32:74", + "nodeType": "YulFunctionCall", + "src": "40834:32:74" + }, + "nativeSrc": "40831:119:74", + "nodeType": "YulIf", + "src": "40831:119:74" + }, + { + "nativeSrc": "40960:117:74", + "nodeType": "YulBlock", + "src": "40960:117:74", + "statements": [ + { + "nativeSrc": "40975:15:74", + "nodeType": "YulVariableDeclaration", + "src": "40975:15:74", + "value": { + "kind": "number", + "nativeSrc": "40989:1:74", + "nodeType": "YulLiteral", + "src": "40989:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "40979:6:74", + "nodeType": "YulTypedName", + "src": "40979:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "41004:63:74", + "nodeType": "YulAssignment", + "src": "41004:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41039:9:74", + "nodeType": "YulIdentifier", + "src": "41039:9:74" + }, + { + "name": "offset", + "nativeSrc": "41050:6:74", + "nodeType": "YulIdentifier", + "src": "41050:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41035:3:74", + "nodeType": "YulIdentifier", + "src": "41035:3:74" + }, + "nativeSrc": "41035:22:74", + "nodeType": "YulFunctionCall", + "src": "41035:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "41059:7:74", + "nodeType": "YulIdentifier", + "src": "41059:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "41014:20:74", + "nodeType": "YulIdentifier", + "src": "41014:20:74" + }, + "nativeSrc": "41014:53:74", + "nodeType": "YulFunctionCall", + "src": "41014:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "41004:6:74", + "nodeType": "YulIdentifier", + "src": "41004:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "41087:118:74", + "nodeType": "YulBlock", + "src": "41087:118:74", + "statements": [ + { + "nativeSrc": "41102:16:74", + "nodeType": "YulVariableDeclaration", + "src": "41102:16:74", + "value": { + "kind": "number", + "nativeSrc": "41116:2:74", + "nodeType": "YulLiteral", + "src": "41116:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "41106:6:74", + "nodeType": "YulTypedName", + "src": "41106:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "41132:63:74", + "nodeType": "YulAssignment", + "src": "41132:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41167:9:74", + "nodeType": "YulIdentifier", + "src": "41167:9:74" + }, + { + "name": "offset", + "nativeSrc": "41178:6:74", + "nodeType": "YulIdentifier", + "src": "41178:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41163:3:74", + "nodeType": "YulIdentifier", + "src": "41163:3:74" + }, + "nativeSrc": "41163:22:74", + "nodeType": "YulFunctionCall", + "src": "41163:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "41187:7:74", + "nodeType": "YulIdentifier", + "src": "41187:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "41142:20:74", + "nodeType": "YulIdentifier", + "src": "41142:20:74" + }, + "nativeSrc": "41142:53:74", + "nodeType": "YulFunctionCall", + "src": "41142:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "41132:6:74", + "nodeType": "YulIdentifier", + "src": "41132:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "40738:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "40783:9:74", + "nodeType": "YulTypedName", + "src": "40783:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "40794:7:74", + "nodeType": "YulTypedName", + "src": "40794:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "40806:6:74", + "nodeType": "YulTypedName", + "src": "40806:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "40814:6:74", + "nodeType": "YulTypedName", + "src": "40814:6:74", + "type": "" + } + ], + "src": "40738:474:74" + }, + { + "body": { + "nativeSrc": "41337:698:74", + "nodeType": "YulBlock", + "src": "41337:698:74", + "statements": [ + { + "body": { + "nativeSrc": "41383:83:74", + "nodeType": "YulBlock", + "src": "41383:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "41385:77:74", + "nodeType": "YulIdentifier", + "src": "41385:77:74" + }, + "nativeSrc": "41385:79:74", + "nodeType": "YulFunctionCall", + "src": "41385:79:74" + }, + "nativeSrc": "41385:79:74", + "nodeType": "YulExpressionStatement", + "src": "41385:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "41358:7:74", + "nodeType": "YulIdentifier", + "src": "41358:7:74" + }, + { + "name": "headStart", + "nativeSrc": "41367:9:74", + "nodeType": "YulIdentifier", + "src": "41367:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "41354:3:74", + "nodeType": "YulIdentifier", + "src": "41354:3:74" + }, + "nativeSrc": "41354:23:74", + "nodeType": "YulFunctionCall", + "src": "41354:23:74" + }, + { + "kind": "number", + "nativeSrc": "41379:2:74", + "nodeType": "YulLiteral", + "src": "41379:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "41350:3:74", + "nodeType": "YulIdentifier", + "src": "41350:3:74" + }, + "nativeSrc": "41350:32:74", + "nodeType": "YulFunctionCall", + "src": "41350:32:74" + }, + "nativeSrc": "41347:119:74", + "nodeType": "YulIf", + "src": "41347:119:74" + }, + { + "nativeSrc": "41476:296:74", + "nodeType": "YulBlock", + "src": "41476:296:74", + "statements": [ + { + "nativeSrc": "41491:45:74", + "nodeType": "YulVariableDeclaration", + "src": "41491:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41522:9:74", + "nodeType": "YulIdentifier", + "src": "41522:9:74" + }, + { + "kind": "number", + "nativeSrc": "41533:1:74", + "nodeType": "YulLiteral", + "src": "41533:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41518:3:74", + "nodeType": "YulIdentifier", + "src": "41518:3:74" + }, + "nativeSrc": "41518:17:74", + "nodeType": "YulFunctionCall", + "src": "41518:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "41505:12:74", + "nodeType": "YulIdentifier", + "src": "41505:12:74" + }, + "nativeSrc": "41505:31:74", + "nodeType": "YulFunctionCall", + "src": "41505:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "41495:6:74", + "nodeType": "YulTypedName", + "src": "41495:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "41583:83:74", + "nodeType": "YulBlock", + "src": "41583:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "41585:77:74", + "nodeType": "YulIdentifier", + "src": "41585:77:74" + }, + "nativeSrc": "41585:79:74", + "nodeType": "YulFunctionCall", + "src": "41585:79:74" + }, + "nativeSrc": "41585:79:74", + "nodeType": "YulExpressionStatement", + "src": "41585:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "41555:6:74", + "nodeType": "YulIdentifier", + "src": "41555:6:74" + }, + { + "kind": "number", + "nativeSrc": "41563:18:74", + "nodeType": "YulLiteral", + "src": "41563:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "41552:2:74", + "nodeType": "YulIdentifier", + "src": "41552:2:74" + }, + "nativeSrc": "41552:30:74", + "nodeType": "YulFunctionCall", + "src": "41552:30:74" + }, + "nativeSrc": "41549:117:74", + "nodeType": "YulIf", + "src": "41549:117:74" + }, + { + "nativeSrc": "41680:82:74", + "nodeType": "YulAssignment", + "src": "41680:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41734:9:74", + "nodeType": "YulIdentifier", + "src": "41734:9:74" + }, + { + "name": "offset", + "nativeSrc": "41745:6:74", + "nodeType": "YulIdentifier", + "src": "41745:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41730:3:74", + "nodeType": "YulIdentifier", + "src": "41730:3:74" + }, + "nativeSrc": "41730:22:74", + "nodeType": "YulFunctionCall", + "src": "41730:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "41754:7:74", + "nodeType": "YulIdentifier", + "src": "41754:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "41698:31:74", + "nodeType": "YulIdentifier", + "src": "41698:31:74" + }, + "nativeSrc": "41698:64:74", + "nodeType": "YulFunctionCall", + "src": "41698:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "41680:6:74", + "nodeType": "YulIdentifier", + "src": "41680:6:74" + }, + { + "name": "value1", + "nativeSrc": "41688:6:74", + "nodeType": "YulIdentifier", + "src": "41688:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "41782:118:74", + "nodeType": "YulBlock", + "src": "41782:118:74", + "statements": [ + { + "nativeSrc": "41797:16:74", + "nodeType": "YulVariableDeclaration", + "src": "41797:16:74", + "value": { + "kind": "number", + "nativeSrc": "41811:2:74", + "nodeType": "YulLiteral", + "src": "41811:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "41801:6:74", + "nodeType": "YulTypedName", + "src": "41801:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "41827:63:74", + "nodeType": "YulAssignment", + "src": "41827:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41862:9:74", + "nodeType": "YulIdentifier", + "src": "41862:9:74" + }, + { + "name": "offset", + "nativeSrc": "41873:6:74", + "nodeType": "YulIdentifier", + "src": "41873:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41858:3:74", + "nodeType": "YulIdentifier", + "src": "41858:3:74" + }, + "nativeSrc": "41858:22:74", + "nodeType": "YulFunctionCall", + "src": "41858:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "41882:7:74", + "nodeType": "YulIdentifier", + "src": "41882:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "41837:20:74", + "nodeType": "YulIdentifier", + "src": "41837:20:74" + }, + "nativeSrc": "41837:53:74", + "nodeType": "YulFunctionCall", + "src": "41837:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "41827:6:74", + "nodeType": "YulIdentifier", + "src": "41827:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "41910:118:74", + "nodeType": "YulBlock", + "src": "41910:118:74", + "statements": [ + { + "nativeSrc": "41925:16:74", + "nodeType": "YulVariableDeclaration", + "src": "41925:16:74", + "value": { + "kind": "number", + "nativeSrc": "41939:2:74", + "nodeType": "YulLiteral", + "src": "41939:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "41929:6:74", + "nodeType": "YulTypedName", + "src": "41929:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "41955:63:74", + "nodeType": "YulAssignment", + "src": "41955:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41990:9:74", + "nodeType": "YulIdentifier", + "src": "41990:9:74" + }, + { + "name": "offset", + "nativeSrc": "42001:6:74", + "nodeType": "YulIdentifier", + "src": "42001:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41986:3:74", + "nodeType": "YulIdentifier", + "src": "41986:3:74" + }, + "nativeSrc": "41986:22:74", + "nodeType": "YulFunctionCall", + "src": "41986:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "42010:7:74", + "nodeType": "YulIdentifier", + "src": "42010:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "41965:20:74", + "nodeType": "YulIdentifier", + "src": "41965:20:74" + }, + "nativeSrc": "41965:53:74", + "nodeType": "YulFunctionCall", + "src": "41965:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "41955:6:74", + "nodeType": "YulIdentifier", + "src": "41955:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptrt_addresst_address", + "nativeSrc": "41218:817:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "41283:9:74", + "nodeType": "YulTypedName", + "src": "41283:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "41294:7:74", + "nodeType": "YulTypedName", + "src": "41294:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "41306:6:74", + "nodeType": "YulTypedName", + "src": "41306:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "41314:6:74", + "nodeType": "YulTypedName", + "src": "41314:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "41322:6:74", + "nodeType": "YulTypedName", + "src": "41322:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "41330:6:74", + "nodeType": "YulTypedName", + "src": "41330:6:74", + "type": "" + } + ], + "src": "41218:817:74" + }, + { + "body": { + "nativeSrc": "42184:946:74", + "nodeType": "YulBlock", + "src": "42184:946:74", + "statements": [ + { + "body": { + "nativeSrc": "42231:83:74", + "nodeType": "YulBlock", + "src": "42231:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "42233:77:74", + "nodeType": "YulIdentifier", + "src": "42233:77:74" + }, + "nativeSrc": "42233:79:74", + "nodeType": "YulFunctionCall", + "src": "42233:79:74" + }, + "nativeSrc": "42233:79:74", + "nodeType": "YulExpressionStatement", + "src": "42233:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "42205:7:74", + "nodeType": "YulIdentifier", + "src": "42205:7:74" + }, + { + "name": "headStart", + "nativeSrc": "42214:9:74", + "nodeType": "YulIdentifier", + "src": "42214:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "42201:3:74", + "nodeType": "YulIdentifier", + "src": "42201:3:74" + }, + "nativeSrc": "42201:23:74", + "nodeType": "YulFunctionCall", + "src": "42201:23:74" + }, + { + "kind": "number", + "nativeSrc": "42226:3:74", + "nodeType": "YulLiteral", + "src": "42226:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "42197:3:74", + "nodeType": "YulIdentifier", + "src": "42197:3:74" + }, + "nativeSrc": "42197:33:74", + "nodeType": "YulFunctionCall", + "src": "42197:33:74" + }, + "nativeSrc": "42194:120:74", + "nodeType": "YulIf", + "src": "42194:120:74" + }, + { + "nativeSrc": "42324:117:74", + "nodeType": "YulBlock", + "src": "42324:117:74", + "statements": [ + { + "nativeSrc": "42339:15:74", + "nodeType": "YulVariableDeclaration", + "src": "42339:15:74", + "value": { + "kind": "number", + "nativeSrc": "42353:1:74", + "nodeType": "YulLiteral", + "src": "42353:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "42343:6:74", + "nodeType": "YulTypedName", + "src": "42343:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "42368:63:74", + "nodeType": "YulAssignment", + "src": "42368:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42403:9:74", + "nodeType": "YulIdentifier", + "src": "42403:9:74" + }, + { + "name": "offset", + "nativeSrc": "42414:6:74", + "nodeType": "YulIdentifier", + "src": "42414:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42399:3:74", + "nodeType": "YulIdentifier", + "src": "42399:3:74" + }, + "nativeSrc": "42399:22:74", + "nodeType": "YulFunctionCall", + "src": "42399:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "42423:7:74", + "nodeType": "YulIdentifier", + "src": "42423:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "42378:20:74", + "nodeType": "YulIdentifier", + "src": "42378:20:74" + }, + "nativeSrc": "42378:53:74", + "nodeType": "YulFunctionCall", + "src": "42378:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "42368:6:74", + "nodeType": "YulIdentifier", + "src": "42368:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "42451:118:74", + "nodeType": "YulBlock", + "src": "42451:118:74", + "statements": [ + { + "nativeSrc": "42466:16:74", + "nodeType": "YulVariableDeclaration", + "src": "42466:16:74", + "value": { + "kind": "number", + "nativeSrc": "42480:2:74", + "nodeType": "YulLiteral", + "src": "42480:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "42470:6:74", + "nodeType": "YulTypedName", + "src": "42470:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "42496:63:74", + "nodeType": "YulAssignment", + "src": "42496:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42531:9:74", + "nodeType": "YulIdentifier", + "src": "42531:9:74" + }, + { + "name": "offset", + "nativeSrc": "42542:6:74", + "nodeType": "YulIdentifier", + "src": "42542:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42527:3:74", + "nodeType": "YulIdentifier", + "src": "42527:3:74" + }, + "nativeSrc": "42527:22:74", + "nodeType": "YulFunctionCall", + "src": "42527:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "42551:7:74", + "nodeType": "YulIdentifier", + "src": "42551:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "42506:20:74", + "nodeType": "YulIdentifier", + "src": "42506:20:74" + }, + "nativeSrc": "42506:53:74", + "nodeType": "YulFunctionCall", + "src": "42506:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "42496:6:74", + "nodeType": "YulIdentifier", + "src": "42496:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "42579:118:74", + "nodeType": "YulBlock", + "src": "42579:118:74", + "statements": [ + { + "nativeSrc": "42594:16:74", + "nodeType": "YulVariableDeclaration", + "src": "42594:16:74", + "value": { + "kind": "number", + "nativeSrc": "42608:2:74", + "nodeType": "YulLiteral", + "src": "42608:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "42598:6:74", + "nodeType": "YulTypedName", + "src": "42598:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "42624:63:74", + "nodeType": "YulAssignment", + "src": "42624:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42659:9:74", + "nodeType": "YulIdentifier", + "src": "42659:9:74" + }, + { + "name": "offset", + "nativeSrc": "42670:6:74", + "nodeType": "YulIdentifier", + "src": "42670:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42655:3:74", + "nodeType": "YulIdentifier", + "src": "42655:3:74" + }, + "nativeSrc": "42655:22:74", + "nodeType": "YulFunctionCall", + "src": "42655:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "42679:7:74", + "nodeType": "YulIdentifier", + "src": "42679:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "42634:20:74", + "nodeType": "YulIdentifier", + "src": "42634:20:74" + }, + "nativeSrc": "42634:53:74", + "nodeType": "YulFunctionCall", + "src": "42634:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "42624:6:74", + "nodeType": "YulIdentifier", + "src": "42624:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "42707:118:74", + "nodeType": "YulBlock", + "src": "42707:118:74", + "statements": [ + { + "nativeSrc": "42722:16:74", + "nodeType": "YulVariableDeclaration", + "src": "42722:16:74", + "value": { + "kind": "number", + "nativeSrc": "42736:2:74", + "nodeType": "YulLiteral", + "src": "42736:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "42726:6:74", + "nodeType": "YulTypedName", + "src": "42726:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "42752:63:74", + "nodeType": "YulAssignment", + "src": "42752:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42787:9:74", + "nodeType": "YulIdentifier", + "src": "42787:9:74" + }, + { + "name": "offset", + "nativeSrc": "42798:6:74", + "nodeType": "YulIdentifier", + "src": "42798:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42783:3:74", + "nodeType": "YulIdentifier", + "src": "42783:3:74" + }, + "nativeSrc": "42783:22:74", + "nodeType": "YulFunctionCall", + "src": "42783:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "42807:7:74", + "nodeType": "YulIdentifier", + "src": "42807:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "42762:20:74", + "nodeType": "YulIdentifier", + "src": "42762:20:74" + }, + "nativeSrc": "42762:53:74", + "nodeType": "YulFunctionCall", + "src": "42762:53:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "42752:6:74", + "nodeType": "YulIdentifier", + "src": "42752:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "42835:288:74", + "nodeType": "YulBlock", + "src": "42835:288:74", + "statements": [ + { + "nativeSrc": "42850:47:74", + "nodeType": "YulVariableDeclaration", + "src": "42850:47:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "42881:9:74", + "nodeType": "YulIdentifier", + "src": "42881:9:74" + }, + { + "kind": "number", + "nativeSrc": "42892:3:74", + "nodeType": "YulLiteral", + "src": "42892:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42877:3:74", + "nodeType": "YulIdentifier", + "src": "42877:3:74" + }, + "nativeSrc": "42877:19:74", + "nodeType": "YulFunctionCall", + "src": "42877:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "42864:12:74", + "nodeType": "YulIdentifier", + "src": "42864:12:74" + }, + "nativeSrc": "42864:33:74", + "nodeType": "YulFunctionCall", + "src": "42864:33:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "42854:6:74", + "nodeType": "YulTypedName", + "src": "42854:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "42944:83:74", + "nodeType": "YulBlock", + "src": "42944:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "42946:77:74", + "nodeType": "YulIdentifier", + "src": "42946:77:74" + }, + "nativeSrc": "42946:79:74", + "nodeType": "YulFunctionCall", + "src": "42946:79:74" + }, + "nativeSrc": "42946:79:74", + "nodeType": "YulExpressionStatement", + "src": "42946:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "42916:6:74", + "nodeType": "YulIdentifier", + "src": "42916:6:74" + }, + { + "kind": "number", + "nativeSrc": "42924:18:74", + "nodeType": "YulLiteral", + "src": "42924:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "42913:2:74", + "nodeType": "YulIdentifier", + "src": "42913:2:74" + }, + "nativeSrc": "42913:30:74", + "nodeType": "YulFunctionCall", + "src": "42913:30:74" + }, + "nativeSrc": "42910:117:74", + "nodeType": "YulIf", + "src": "42910:117:74" + }, + { + "nativeSrc": "43041:72:74", + "nodeType": "YulAssignment", + "src": "43041:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43085:9:74", + "nodeType": "YulIdentifier", + "src": "43085:9:74" + }, + { + "name": "offset", + "nativeSrc": "43096:6:74", + "nodeType": "YulIdentifier", + "src": "43096:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43081:3:74", + "nodeType": "YulIdentifier", + "src": "43081:3:74" + }, + "nativeSrc": "43081:22:74", + "nodeType": "YulFunctionCall", + "src": "43081:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "43105:7:74", + "nodeType": "YulIdentifier", + "src": "43105:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "43051:29:74", + "nodeType": "YulIdentifier", + "src": "43051:29:74" + }, + "nativeSrc": "43051:62:74", + "nodeType": "YulFunctionCall", + "src": "43051:62:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "43041:6:74", + "nodeType": "YulIdentifier", + "src": "43041:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256t_uint256t_bytes_memory_ptr", + "nativeSrc": "42041:1089:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "42122:9:74", + "nodeType": "YulTypedName", + "src": "42122:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "42133:7:74", + "nodeType": "YulTypedName", + "src": "42133:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "42145:6:74", + "nodeType": "YulTypedName", + "src": "42145:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "42153:6:74", + "nodeType": "YulTypedName", + "src": "42153:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "42161:6:74", + "nodeType": "YulTypedName", + "src": "42161:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "42169:6:74", + "nodeType": "YulTypedName", + "src": "42169:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "42177:6:74", + "nodeType": "YulTypedName", + "src": "42177:6:74", + "type": "" + } + ], + "src": "42041:1089:74" + }, + { + "body": { + "nativeSrc": "43242:124:74", + "nodeType": "YulBlock", + "src": "43242:124:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "43264:6:74", + "nodeType": "YulIdentifier", + "src": "43264:6:74" + }, + { + "kind": "number", + "nativeSrc": "43272:1:74", + "nodeType": "YulLiteral", + "src": "43272:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43260:3:74", + "nodeType": "YulIdentifier", + "src": "43260:3:74" + }, + "nativeSrc": "43260:14:74", + "nodeType": "YulFunctionCall", + "src": "43260:14:74" + }, + { + "hexValue": "455243313135353a2062616c616e636520717565727920666f7220746865207a", + "kind": "string", + "nativeSrc": "43276:34:74", + "nodeType": "YulLiteral", + "src": "43276:34:74", + "type": "", + "value": "ERC1155: balance query for the z" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43253:6:74", + "nodeType": "YulIdentifier", + "src": "43253:6:74" + }, + "nativeSrc": "43253:58:74", + "nodeType": "YulFunctionCall", + "src": "43253:58:74" + }, + "nativeSrc": "43253:58:74", + "nodeType": "YulExpressionStatement", + "src": "43253:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "43332:6:74", + "nodeType": "YulIdentifier", + "src": "43332:6:74" + }, + { + "kind": "number", + "nativeSrc": "43340:2:74", + "nodeType": "YulLiteral", + "src": "43340:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43328:3:74", + "nodeType": "YulIdentifier", + "src": "43328:3:74" + }, + "nativeSrc": "43328:15:74", + "nodeType": "YulFunctionCall", + "src": "43328:15:74" + }, + { + "hexValue": "65726f2061646472657373", + "kind": "string", + "nativeSrc": "43345:13:74", + "nodeType": "YulLiteral", + "src": "43345:13:74", + "type": "", + "value": "ero address" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43321:6:74", + "nodeType": "YulIdentifier", + "src": "43321:6:74" + }, + "nativeSrc": "43321:38:74", + "nodeType": "YulFunctionCall", + "src": "43321:38:74" + }, + "nativeSrc": "43321:38:74", + "nodeType": "YulExpressionStatement", + "src": "43321:38:74" + } + ] + }, + "name": "store_literal_in_memory_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9", + "nativeSrc": "43136:230:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "43234:6:74", + "nodeType": "YulTypedName", + "src": "43234:6:74", + "type": "" + } + ], + "src": "43136:230:74" + }, + { + "body": { + "nativeSrc": "43518:220:74", + "nodeType": "YulBlock", + "src": "43518:220:74", + "statements": [ + { + "nativeSrc": "43528:74:74", + "nodeType": "YulAssignment", + "src": "43528:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43594:3:74", + "nodeType": "YulIdentifier", + "src": "43594:3:74" + }, + { + "kind": "number", + "nativeSrc": "43599:2:74", + "nodeType": "YulLiteral", + "src": "43599:2:74", + "type": "", + "value": "43" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "43535:58:74", + "nodeType": "YulIdentifier", + "src": "43535:58:74" + }, + "nativeSrc": "43535:67:74", + "nodeType": "YulFunctionCall", + "src": "43535:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "43528:3:74", + "nodeType": "YulIdentifier", + "src": "43528:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43700:3:74", + "nodeType": "YulIdentifier", + "src": "43700:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9", + "nativeSrc": "43611:88:74", + "nodeType": "YulIdentifier", + "src": "43611:88:74" + }, + "nativeSrc": "43611:93:74", + "nodeType": "YulFunctionCall", + "src": "43611:93:74" + }, + "nativeSrc": "43611:93:74", + "nodeType": "YulExpressionStatement", + "src": "43611:93:74" + }, + { + "nativeSrc": "43713:19:74", + "nodeType": "YulAssignment", + "src": "43713:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "43724:3:74", + "nodeType": "YulIdentifier", + "src": "43724:3:74" + }, + { + "kind": "number", + "nativeSrc": "43729:2:74", + "nodeType": "YulLiteral", + "src": "43729:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43720:3:74", + "nodeType": "YulIdentifier", + "src": "43720:3:74" + }, + "nativeSrc": "43720:12:74", + "nodeType": "YulFunctionCall", + "src": "43720:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "43713:3:74", + "nodeType": "YulIdentifier", + "src": "43713:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9_to_t_string_memory_ptr_fromStack", + "nativeSrc": "43372:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "43506:3:74", + "nodeType": "YulTypedName", + "src": "43506:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "43514:3:74", + "nodeType": "YulTypedName", + "src": "43514:3:74", + "type": "" + } + ], + "src": "43372:366:74" + }, + { + "body": { + "nativeSrc": "43915:248:74", + "nodeType": "YulBlock", + "src": "43915:248:74", + "statements": [ + { + "nativeSrc": "43925:26:74", + "nodeType": "YulAssignment", + "src": "43925:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43937:9:74", + "nodeType": "YulIdentifier", + "src": "43937:9:74" + }, + { + "kind": "number", + "nativeSrc": "43948:2:74", + "nodeType": "YulLiteral", + "src": "43948:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43933:3:74", + "nodeType": "YulIdentifier", + "src": "43933:3:74" + }, + "nativeSrc": "43933:18:74", + "nodeType": "YulFunctionCall", + "src": "43933:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "43925:4:74", + "nodeType": "YulIdentifier", + "src": "43925:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "43972:9:74", + "nodeType": "YulIdentifier", + "src": "43972:9:74" + }, + { + "kind": "number", + "nativeSrc": "43983:1:74", + "nodeType": "YulLiteral", + "src": "43983:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43968:3:74", + "nodeType": "YulIdentifier", + "src": "43968:3:74" + }, + "nativeSrc": "43968:17:74", + "nodeType": "YulFunctionCall", + "src": "43968:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "43991:4:74", + "nodeType": "YulIdentifier", + "src": "43991:4:74" + }, + { + "name": "headStart", + "nativeSrc": "43997:9:74", + "nodeType": "YulIdentifier", + "src": "43997:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "43987:3:74", + "nodeType": "YulIdentifier", + "src": "43987:3:74" + }, + "nativeSrc": "43987:20:74", + "nodeType": "YulFunctionCall", + "src": "43987:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43961:6:74", + "nodeType": "YulIdentifier", + "src": "43961:6:74" + }, + "nativeSrc": "43961:47:74", + "nodeType": "YulFunctionCall", + "src": "43961:47:74" + }, + "nativeSrc": "43961:47:74", + "nodeType": "YulExpressionStatement", + "src": "43961:47:74" + }, + { + "nativeSrc": "44017:139:74", + "nodeType": "YulAssignment", + "src": "44017:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "44151:4:74", + "nodeType": "YulIdentifier", + "src": "44151:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9_to_t_string_memory_ptr_fromStack", + "nativeSrc": "44025:124:74", + "nodeType": "YulIdentifier", + "src": "44025:124:74" + }, + "nativeSrc": "44025:131:74", + "nodeType": "YulFunctionCall", + "src": "44025:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "44017:4:74", + "nodeType": "YulIdentifier", + "src": "44017:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "43744:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "43895:9:74", + "nodeType": "YulTypedName", + "src": "43895:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "43910:4:74", + "nodeType": "YulTypedName", + "src": "43910:4:74", + "type": "" + } + ], + "src": "43744:419:74" + }, + { + "body": { + "nativeSrc": "44264:339:74", + "nodeType": "YulBlock", + "src": "44264:339:74", + "statements": [ + { + "nativeSrc": "44274:75:74", + "nodeType": "YulAssignment", + "src": "44274:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "44341:6:74", + "nodeType": "YulIdentifier", + "src": "44341:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "44299:41:74", + "nodeType": "YulIdentifier", + "src": "44299:41:74" + }, + "nativeSrc": "44299:49:74", + "nodeType": "YulFunctionCall", + "src": "44299:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "44283:15:74", + "nodeType": "YulIdentifier", + "src": "44283:15:74" + }, + "nativeSrc": "44283:66:74", + "nodeType": "YulFunctionCall", + "src": "44283:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "44274:5:74", + "nodeType": "YulIdentifier", + "src": "44274:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "44365:5:74", + "nodeType": "YulIdentifier", + "src": "44365:5:74" + }, + { + "name": "length", + "nativeSrc": "44372:6:74", + "nodeType": "YulIdentifier", + "src": "44372:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "44358:6:74", + "nodeType": "YulIdentifier", + "src": "44358:6:74" + }, + "nativeSrc": "44358:21:74", + "nodeType": "YulFunctionCall", + "src": "44358:21:74" + }, + "nativeSrc": "44358:21:74", + "nodeType": "YulExpressionStatement", + "src": "44358:21:74" + }, + { + "nativeSrc": "44388:27:74", + "nodeType": "YulVariableDeclaration", + "src": "44388:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "44403:5:74", + "nodeType": "YulIdentifier", + "src": "44403:5:74" + }, + { + "kind": "number", + "nativeSrc": "44410:4:74", + "nodeType": "YulLiteral", + "src": "44410:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44399:3:74", + "nodeType": "YulIdentifier", + "src": "44399:3:74" + }, + "nativeSrc": "44399:16:74", + "nodeType": "YulFunctionCall", + "src": "44399:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "44392:3:74", + "nodeType": "YulTypedName", + "src": "44392:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "44453:83:74", + "nodeType": "YulBlock", + "src": "44453:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "44455:77:74", + "nodeType": "YulIdentifier", + "src": "44455:77:74" + }, + "nativeSrc": "44455:79:74", + "nodeType": "YulFunctionCall", + "src": "44455:79:74" + }, + "nativeSrc": "44455:79:74", + "nodeType": "YulExpressionStatement", + "src": "44455:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "44434:3:74", + "nodeType": "YulIdentifier", + "src": "44434:3:74" + }, + { + "name": "length", + "nativeSrc": "44439:6:74", + "nodeType": "YulIdentifier", + "src": "44439:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44430:3:74", + "nodeType": "YulIdentifier", + "src": "44430:3:74" + }, + "nativeSrc": "44430:16:74", + "nodeType": "YulFunctionCall", + "src": "44430:16:74" + }, + { + "name": "end", + "nativeSrc": "44448:3:74", + "nodeType": "YulIdentifier", + "src": "44448:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "44427:2:74", + "nodeType": "YulIdentifier", + "src": "44427:2:74" + }, + "nativeSrc": "44427:25:74", + "nodeType": "YulFunctionCall", + "src": "44427:25:74" + }, + "nativeSrc": "44424:112:74", + "nodeType": "YulIf", + "src": "44424:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "44580:3:74", + "nodeType": "YulIdentifier", + "src": "44580:3:74" + }, + { + "name": "dst", + "nativeSrc": "44585:3:74", + "nodeType": "YulIdentifier", + "src": "44585:3:74" + }, + { + "name": "length", + "nativeSrc": "44590:6:74", + "nodeType": "YulIdentifier", + "src": "44590:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "44545:34:74", + "nodeType": "YulIdentifier", + "src": "44545:34:74" + }, + "nativeSrc": "44545:52:74", + "nodeType": "YulFunctionCall", + "src": "44545:52:74" + }, + "nativeSrc": "44545:52:74", + "nodeType": "YulExpressionStatement", + "src": "44545:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "44169:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "44237:3:74", + "nodeType": "YulTypedName", + "src": "44237:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "44242:6:74", + "nodeType": "YulTypedName", + "src": "44242:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "44250:3:74", + "nodeType": "YulTypedName", + "src": "44250:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "44258:5:74", + "nodeType": "YulTypedName", + "src": "44258:5:74", + "type": "" + } + ], + "src": "44169:434:74" + }, + { + "body": { + "nativeSrc": "44696:282:74", + "nodeType": "YulBlock", + "src": "44696:282:74", + "statements": [ + { + "body": { + "nativeSrc": "44745:83:74", + "nodeType": "YulBlock", + "src": "44745:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "44747:77:74", + "nodeType": "YulIdentifier", + "src": "44747:77:74" + }, + "nativeSrc": "44747:79:74", + "nodeType": "YulFunctionCall", + "src": "44747:79:74" + }, + "nativeSrc": "44747:79:74", + "nodeType": "YulExpressionStatement", + "src": "44747:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44724:6:74", + "nodeType": "YulIdentifier", + "src": "44724:6:74" + }, + { + "kind": "number", + "nativeSrc": "44732:4:74", + "nodeType": "YulLiteral", + "src": "44732:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44720:3:74", + "nodeType": "YulIdentifier", + "src": "44720:3:74" + }, + "nativeSrc": "44720:17:74", + "nodeType": "YulFunctionCall", + "src": "44720:17:74" + }, + { + "name": "end", + "nativeSrc": "44739:3:74", + "nodeType": "YulIdentifier", + "src": "44739:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "44716:3:74", + "nodeType": "YulIdentifier", + "src": "44716:3:74" + }, + "nativeSrc": "44716:27:74", + "nodeType": "YulFunctionCall", + "src": "44716:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "44709:6:74", + "nodeType": "YulIdentifier", + "src": "44709:6:74" + }, + "nativeSrc": "44709:35:74", + "nodeType": "YulFunctionCall", + "src": "44709:35:74" + }, + "nativeSrc": "44706:122:74", + "nodeType": "YulIf", + "src": "44706:122:74" + }, + { + "nativeSrc": "44837:27:74", + "nodeType": "YulVariableDeclaration", + "src": "44837:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44857:6:74", + "nodeType": "YulIdentifier", + "src": "44857:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "44851:5:74", + "nodeType": "YulIdentifier", + "src": "44851:5:74" + }, + "nativeSrc": "44851:13:74", + "nodeType": "YulFunctionCall", + "src": "44851:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "44841:6:74", + "nodeType": "YulTypedName", + "src": "44841:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "44873:99:74", + "nodeType": "YulAssignment", + "src": "44873:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44945:6:74", + "nodeType": "YulIdentifier", + "src": "44945:6:74" + }, + { + "kind": "number", + "nativeSrc": "44953:4:74", + "nodeType": "YulLiteral", + "src": "44953:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44941:3:74", + "nodeType": "YulIdentifier", + "src": "44941:3:74" + }, + "nativeSrc": "44941:17:74", + "nodeType": "YulFunctionCall", + "src": "44941:17:74" + }, + { + "name": "length", + "nativeSrc": "44960:6:74", + "nodeType": "YulIdentifier", + "src": "44960:6:74" + }, + { + "name": "end", + "nativeSrc": "44968:3:74", + "nodeType": "YulIdentifier", + "src": "44968:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "44882:58:74", + "nodeType": "YulIdentifier", + "src": "44882:58:74" + }, + "nativeSrc": "44882:90:74", + "nodeType": "YulFunctionCall", + "src": "44882:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "44873:5:74", + "nodeType": "YulIdentifier", + "src": "44873:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "44623:355:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "44674:6:74", + "nodeType": "YulTypedName", + "src": "44674:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "44682:3:74", + "nodeType": "YulTypedName", + "src": "44682:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "44690:5:74", + "nodeType": "YulTypedName", + "src": "44690:5:74", + "type": "" + } + ], + "src": "44623:355:74" + }, + { + "body": { + "nativeSrc": "45071:437:74", + "nodeType": "YulBlock", + "src": "45071:437:74", + "statements": [ + { + "body": { + "nativeSrc": "45117:83:74", + "nodeType": "YulBlock", + "src": "45117:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "45119:77:74", + "nodeType": "YulIdentifier", + "src": "45119:77:74" + }, + "nativeSrc": "45119:79:74", + "nodeType": "YulFunctionCall", + "src": "45119:79:74" + }, + "nativeSrc": "45119:79:74", + "nodeType": "YulExpressionStatement", + "src": "45119:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "45092:7:74", + "nodeType": "YulIdentifier", + "src": "45092:7:74" + }, + { + "name": "headStart", + "nativeSrc": "45101:9:74", + "nodeType": "YulIdentifier", + "src": "45101:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "45088:3:74", + "nodeType": "YulIdentifier", + "src": "45088:3:74" + }, + "nativeSrc": "45088:23:74", + "nodeType": "YulFunctionCall", + "src": "45088:23:74" + }, + { + "kind": "number", + "nativeSrc": "45113:2:74", + "nodeType": "YulLiteral", + "src": "45113:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "45084:3:74", + "nodeType": "YulIdentifier", + "src": "45084:3:74" + }, + "nativeSrc": "45084:32:74", + "nodeType": "YulFunctionCall", + "src": "45084:32:74" + }, + "nativeSrc": "45081:119:74", + "nodeType": "YulIf", + "src": "45081:119:74" + }, + { + "nativeSrc": "45210:291:74", + "nodeType": "YulBlock", + "src": "45210:291:74", + "statements": [ + { + "nativeSrc": "45225:38:74", + "nodeType": "YulVariableDeclaration", + "src": "45225:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45249:9:74", + "nodeType": "YulIdentifier", + "src": "45249:9:74" + }, + { + "kind": "number", + "nativeSrc": "45260:1:74", + "nodeType": "YulLiteral", + "src": "45260:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45245:3:74", + "nodeType": "YulIdentifier", + "src": "45245:3:74" + }, + "nativeSrc": "45245:17:74", + "nodeType": "YulFunctionCall", + "src": "45245:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "45239:5:74", + "nodeType": "YulIdentifier", + "src": "45239:5:74" + }, + "nativeSrc": "45239:24:74", + "nodeType": "YulFunctionCall", + "src": "45239:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "45229:6:74", + "nodeType": "YulTypedName", + "src": "45229:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "45310:83:74", + "nodeType": "YulBlock", + "src": "45310:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "45312:77:74", + "nodeType": "YulIdentifier", + "src": "45312:77:74" + }, + "nativeSrc": "45312:79:74", + "nodeType": "YulFunctionCall", + "src": "45312:79:74" + }, + "nativeSrc": "45312:79:74", + "nodeType": "YulExpressionStatement", + "src": "45312:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "45282:6:74", + "nodeType": "YulIdentifier", + "src": "45282:6:74" + }, + { + "kind": "number", + "nativeSrc": "45290:18:74", + "nodeType": "YulLiteral", + "src": "45290:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "45279:2:74", + "nodeType": "YulIdentifier", + "src": "45279:2:74" + }, + "nativeSrc": "45279:30:74", + "nodeType": "YulFunctionCall", + "src": "45279:30:74" + }, + "nativeSrc": "45276:117:74", + "nodeType": "YulIf", + "src": "45276:117:74" + }, + { + "nativeSrc": "45407:84:74", + "nodeType": "YulAssignment", + "src": "45407:84:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45463:9:74", + "nodeType": "YulIdentifier", + "src": "45463:9:74" + }, + { + "name": "offset", + "nativeSrc": "45474:6:74", + "nodeType": "YulIdentifier", + "src": "45474:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45459:3:74", + "nodeType": "YulIdentifier", + "src": "45459:3:74" + }, + "nativeSrc": "45459:22:74", + "nodeType": "YulFunctionCall", + "src": "45459:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "45483:7:74", + "nodeType": "YulIdentifier", + "src": "45483:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "45417:41:74", + "nodeType": "YulIdentifier", + "src": "45417:41:74" + }, + "nativeSrc": "45417:74:74", + "nodeType": "YulFunctionCall", + "src": "45417:74:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "45407:6:74", + "nodeType": "YulIdentifier", + "src": "45407:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptr_fromMemory", + "nativeSrc": "44984:524:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "45041:9:74", + "nodeType": "YulTypedName", + "src": "45041:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "45052:7:74", + "nodeType": "YulTypedName", + "src": "45052:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "45064:6:74", + "nodeType": "YulTypedName", + "src": "45064:6:74", + "type": "" + } + ], + "src": "44984:524:74" + }, + { + "body": { + "nativeSrc": "45640:206:74", + "nodeType": "YulBlock", + "src": "45640:206:74", + "statements": [ + { + "nativeSrc": "45650:26:74", + "nodeType": "YulAssignment", + "src": "45650:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45662:9:74", + "nodeType": "YulIdentifier", + "src": "45662:9:74" + }, + { + "kind": "number", + "nativeSrc": "45673:2:74", + "nodeType": "YulLiteral", + "src": "45673:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45658:3:74", + "nodeType": "YulIdentifier", + "src": "45658:3:74" + }, + "nativeSrc": "45658:18:74", + "nodeType": "YulFunctionCall", + "src": "45658:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45650:4:74", + "nodeType": "YulIdentifier", + "src": "45650:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "45730:6:74", + "nodeType": "YulIdentifier", + "src": "45730:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45743:9:74", + "nodeType": "YulIdentifier", + "src": "45743:9:74" + }, + { + "kind": "number", + "nativeSrc": "45754:1:74", + "nodeType": "YulLiteral", + "src": "45754:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45739:3:74", + "nodeType": "YulIdentifier", + "src": "45739:3:74" + }, + "nativeSrc": "45739:17:74", + "nodeType": "YulFunctionCall", + "src": "45739:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "45686:43:74", + "nodeType": "YulIdentifier", + "src": "45686:43:74" + }, + "nativeSrc": "45686:71:74", + "nodeType": "YulFunctionCall", + "src": "45686:71:74" + }, + "nativeSrc": "45686:71:74", + "nodeType": "YulExpressionStatement", + "src": "45686:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "45811:6:74", + "nodeType": "YulIdentifier", + "src": "45811:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45824:9:74", + "nodeType": "YulIdentifier", + "src": "45824:9:74" + }, + { + "kind": "number", + "nativeSrc": "45835:2:74", + "nodeType": "YulLiteral", + "src": "45835:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45820:3:74", + "nodeType": "YulIdentifier", + "src": "45820:3:74" + }, + "nativeSrc": "45820:18:74", + "nodeType": "YulFunctionCall", + "src": "45820:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "45767:43:74", + "nodeType": "YulIdentifier", + "src": "45767:43:74" + }, + "nativeSrc": "45767:72:74", + "nodeType": "YulFunctionCall", + "src": "45767:72:74" + }, + "nativeSrc": "45767:72:74", + "nodeType": "YulExpressionStatement", + "src": "45767:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed", + "nativeSrc": "45514:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "45604:9:74", + "nodeType": "YulTypedName", + "src": "45604:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "45616:6:74", + "nodeType": "YulTypedName", + "src": "45616:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "45624:6:74", + "nodeType": "YulTypedName", + "src": "45624:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "45635:4:74", + "nodeType": "YulTypedName", + "src": "45635:4:74", + "type": "" + } + ], + "src": "45514:332:74" + }, + { + "body": { + "nativeSrc": "45976:204:74", + "nodeType": "YulBlock", + "src": "45976:204:74", + "statements": [ + { + "nativeSrc": "45986:26:74", + "nodeType": "YulAssignment", + "src": "45986:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45998:9:74", + "nodeType": "YulIdentifier", + "src": "45998:9:74" + }, + { + "kind": "number", + "nativeSrc": "46009:2:74", + "nodeType": "YulLiteral", + "src": "46009:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45994:3:74", + "nodeType": "YulIdentifier", + "src": "45994:3:74" + }, + "nativeSrc": "45994:18:74", + "nodeType": "YulFunctionCall", + "src": "45994:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45986:4:74", + "nodeType": "YulIdentifier", + "src": "45986:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "46066:6:74", + "nodeType": "YulIdentifier", + "src": "46066:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46079:9:74", + "nodeType": "YulIdentifier", + "src": "46079:9:74" + }, + { + "kind": "number", + "nativeSrc": "46090:1:74", + "nodeType": "YulLiteral", + "src": "46090:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46075:3:74", + "nodeType": "YulIdentifier", + "src": "46075:3:74" + }, + "nativeSrc": "46075:17:74", + "nodeType": "YulFunctionCall", + "src": "46075:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "46022:43:74", + "nodeType": "YulIdentifier", + "src": "46022:43:74" + }, + "nativeSrc": "46022:71:74", + "nodeType": "YulFunctionCall", + "src": "46022:71:74" + }, + "nativeSrc": "46022:71:74", + "nodeType": "YulExpressionStatement", + "src": "46022:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "46145:6:74", + "nodeType": "YulIdentifier", + "src": "46145:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46158:9:74", + "nodeType": "YulIdentifier", + "src": "46158:9:74" + }, + { + "kind": "number", + "nativeSrc": "46169:2:74", + "nodeType": "YulLiteral", + "src": "46169:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46154:3:74", + "nodeType": "YulIdentifier", + "src": "46154:3:74" + }, + "nativeSrc": "46154:18:74", + "nodeType": "YulFunctionCall", + "src": "46154:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "46103:41:74", + "nodeType": "YulIdentifier", + "src": "46103:41:74" + }, + "nativeSrc": "46103:70:74", + "nodeType": "YulFunctionCall", + "src": "46103:70:74" + }, + "nativeSrc": "46103:70:74", + "nodeType": "YulExpressionStatement", + "src": "46103:70:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed", + "nativeSrc": "45852:328:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "45940:9:74", + "nodeType": "YulTypedName", + "src": "45940:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "45952:6:74", + "nodeType": "YulTypedName", + "src": "45952:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "45960:6:74", + "nodeType": "YulTypedName", + "src": "45960:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "45971:4:74", + "nodeType": "YulTypedName", + "src": "45971:4:74", + "type": "" + } + ], + "src": "45852:328:74" + }, + { + "body": { + "nativeSrc": "46239:51:74", + "nodeType": "YulBlock", + "src": "46239:51:74", + "statements": [ + { + "nativeSrc": "46249:35:74", + "nodeType": "YulAssignment", + "src": "46249:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "46278:5:74", + "nodeType": "YulIdentifier", + "src": "46278:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "46260:17:74", + "nodeType": "YulIdentifier", + "src": "46260:17:74" + }, + "nativeSrc": "46260:24:74", + "nodeType": "YulFunctionCall", + "src": "46260:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "46249:7:74", + "nodeType": "YulIdentifier", + "src": "46249:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address_payable", + "nativeSrc": "46186:104:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "46221:5:74", + "nodeType": "YulTypedName", + "src": "46221:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "46231:7:74", + "nodeType": "YulTypedName", + "src": "46231:7:74", + "type": "" + } + ], + "src": "46186:104:74" + }, + { + "body": { + "nativeSrc": "46347:87:74", + "nodeType": "YulBlock", + "src": "46347:87:74", + "statements": [ + { + "body": { + "nativeSrc": "46412:16:74", + "nodeType": "YulBlock", + "src": "46412:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "46421:1:74", + "nodeType": "YulLiteral", + "src": "46421:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "46424:1:74", + "nodeType": "YulLiteral", + "src": "46424:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "46414:6:74", + "nodeType": "YulIdentifier", + "src": "46414:6:74" + }, + "nativeSrc": "46414:12:74", + "nodeType": "YulFunctionCall", + "src": "46414:12:74" + }, + "nativeSrc": "46414:12:74", + "nodeType": "YulExpressionStatement", + "src": "46414:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "46370:5:74", + "nodeType": "YulIdentifier", + "src": "46370:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "46403:5:74", + "nodeType": "YulIdentifier", + "src": "46403:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address_payable", + "nativeSrc": "46377:25:74", + "nodeType": "YulIdentifier", + "src": "46377:25:74" + }, + "nativeSrc": "46377:32:74", + "nodeType": "YulFunctionCall", + "src": "46377:32:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "46367:2:74", + "nodeType": "YulIdentifier", + "src": "46367:2:74" + }, + "nativeSrc": "46367:43:74", + "nodeType": "YulFunctionCall", + "src": "46367:43:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "46360:6:74", + "nodeType": "YulIdentifier", + "src": "46360:6:74" + }, + "nativeSrc": "46360:51:74", + "nodeType": "YulFunctionCall", + "src": "46360:51:74" + }, + "nativeSrc": "46357:71:74", + "nodeType": "YulIf", + "src": "46357:71:74" + } + ] + }, + "name": "validator_revert_t_address_payable", + "nativeSrc": "46296:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "46340:5:74", + "nodeType": "YulTypedName", + "src": "46340:5:74", + "type": "" + } + ], + "src": "46296:138:74" + }, + { + "body": { + "nativeSrc": "46500:95:74", + "nodeType": "YulBlock", + "src": "46500:95:74", + "statements": [ + { + "nativeSrc": "46510:29:74", + "nodeType": "YulAssignment", + "src": "46510:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "46532:6:74", + "nodeType": "YulIdentifier", + "src": "46532:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "46519:12:74", + "nodeType": "YulIdentifier", + "src": "46519:12:74" + }, + "nativeSrc": "46519:20:74", + "nodeType": "YulFunctionCall", + "src": "46519:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "46510:5:74", + "nodeType": "YulIdentifier", + "src": "46510:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "46583:5:74", + "nodeType": "YulIdentifier", + "src": "46583:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address_payable", + "nativeSrc": "46548:34:74", + "nodeType": "YulIdentifier", + "src": "46548:34:74" + }, + "nativeSrc": "46548:41:74", + "nodeType": "YulFunctionCall", + "src": "46548:41:74" + }, + "nativeSrc": "46548:41:74", + "nodeType": "YulExpressionStatement", + "src": "46548:41:74" + } + ] + }, + "name": "abi_decode_t_address_payable", + "nativeSrc": "46440:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "46478:6:74", + "nodeType": "YulTypedName", + "src": "46478:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "46486:3:74", + "nodeType": "YulTypedName", + "src": "46486:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "46494:5:74", + "nodeType": "YulTypedName", + "src": "46494:5:74", + "type": "" + } + ], + "src": "46440:155:74" + }, + { + "body": { + "nativeSrc": "46743:833:74", + "nodeType": "YulBlock", + "src": "46743:833:74", + "statements": [ + { + "body": { + "nativeSrc": "46790:83:74", + "nodeType": "YulBlock", + "src": "46790:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "46792:77:74", + "nodeType": "YulIdentifier", + "src": "46792:77:74" + }, + "nativeSrc": "46792:79:74", + "nodeType": "YulFunctionCall", + "src": "46792:79:74" + }, + "nativeSrc": "46792:79:74", + "nodeType": "YulExpressionStatement", + "src": "46792:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "46764:7:74", + "nodeType": "YulIdentifier", + "src": "46764:7:74" + }, + { + "name": "headStart", + "nativeSrc": "46773:9:74", + "nodeType": "YulIdentifier", + "src": "46773:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46760:3:74", + "nodeType": "YulIdentifier", + "src": "46760:3:74" + }, + "nativeSrc": "46760:23:74", + "nodeType": "YulFunctionCall", + "src": "46760:23:74" + }, + { + "kind": "number", + "nativeSrc": "46785:3:74", + "nodeType": "YulLiteral", + "src": "46785:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "46756:3:74", + "nodeType": "YulIdentifier", + "src": "46756:3:74" + }, + "nativeSrc": "46756:33:74", + "nodeType": "YulFunctionCall", + "src": "46756:33:74" + }, + "nativeSrc": "46753:120:74", + "nodeType": "YulIf", + "src": "46753:120:74" + }, + { + "nativeSrc": "46883:287:74", + "nodeType": "YulBlock", + "src": "46883:287:74", + "statements": [ + { + "nativeSrc": "46898:45:74", + "nodeType": "YulVariableDeclaration", + "src": "46898:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46929:9:74", + "nodeType": "YulIdentifier", + "src": "46929:9:74" + }, + { + "kind": "number", + "nativeSrc": "46940:1:74", + "nodeType": "YulLiteral", + "src": "46940:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46925:3:74", + "nodeType": "YulIdentifier", + "src": "46925:3:74" + }, + "nativeSrc": "46925:17:74", + "nodeType": "YulFunctionCall", + "src": "46925:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "46912:12:74", + "nodeType": "YulIdentifier", + "src": "46912:12:74" + }, + "nativeSrc": "46912:31:74", + "nodeType": "YulFunctionCall", + "src": "46912:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "46902:6:74", + "nodeType": "YulTypedName", + "src": "46902:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "46990:83:74", + "nodeType": "YulBlock", + "src": "46990:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "46992:77:74", + "nodeType": "YulIdentifier", + "src": "46992:77:74" + }, + "nativeSrc": "46992:79:74", + "nodeType": "YulFunctionCall", + "src": "46992:79:74" + }, + "nativeSrc": "46992:79:74", + "nodeType": "YulExpressionStatement", + "src": "46992:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "46962:6:74", + "nodeType": "YulIdentifier", + "src": "46962:6:74" + }, + { + "kind": "number", + "nativeSrc": "46970:18:74", + "nodeType": "YulLiteral", + "src": "46970:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "46959:2:74", + "nodeType": "YulIdentifier", + "src": "46959:2:74" + }, + "nativeSrc": "46959:30:74", + "nodeType": "YulFunctionCall", + "src": "46959:30:74" + }, + "nativeSrc": "46956:117:74", + "nodeType": "YulIf", + "src": "46956:117:74" + }, + { + "nativeSrc": "47087:73:74", + "nodeType": "YulAssignment", + "src": "47087:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47132:9:74", + "nodeType": "YulIdentifier", + "src": "47132:9:74" + }, + { + "name": "offset", + "nativeSrc": "47143:6:74", + "nodeType": "YulIdentifier", + "src": "47143:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47128:3:74", + "nodeType": "YulIdentifier", + "src": "47128:3:74" + }, + "nativeSrc": "47128:22:74", + "nodeType": "YulFunctionCall", + "src": "47128:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "47152:7:74", + "nodeType": "YulIdentifier", + "src": "47152:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nativeSrc": "47097:30:74", + "nodeType": "YulIdentifier", + "src": "47097:30:74" + }, + "nativeSrc": "47097:63:74", + "nodeType": "YulFunctionCall", + "src": "47097:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "47087:6:74", + "nodeType": "YulIdentifier", + "src": "47087:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "47180:126:74", + "nodeType": "YulBlock", + "src": "47180:126:74", + "statements": [ + { + "nativeSrc": "47195:16:74", + "nodeType": "YulVariableDeclaration", + "src": "47195:16:74", + "value": { + "kind": "number", + "nativeSrc": "47209:2:74", + "nodeType": "YulLiteral", + "src": "47209:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "47199:6:74", + "nodeType": "YulTypedName", + "src": "47199:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47225:71:74", + "nodeType": "YulAssignment", + "src": "47225:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47268:9:74", + "nodeType": "YulIdentifier", + "src": "47268:9:74" + }, + { + "name": "offset", + "nativeSrc": "47279:6:74", + "nodeType": "YulIdentifier", + "src": "47279:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47264:3:74", + "nodeType": "YulIdentifier", + "src": "47264:3:74" + }, + "nativeSrc": "47264:22:74", + "nodeType": "YulFunctionCall", + "src": "47264:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "47288:7:74", + "nodeType": "YulIdentifier", + "src": "47288:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable", + "nativeSrc": "47235:28:74", + "nodeType": "YulIdentifier", + "src": "47235:28:74" + }, + "nativeSrc": "47235:61:74", + "nodeType": "YulFunctionCall", + "src": "47235:61:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "47225:6:74", + "nodeType": "YulIdentifier", + "src": "47225:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "47316:117:74", + "nodeType": "YulBlock", + "src": "47316:117:74", + "statements": [ + { + "nativeSrc": "47331:16:74", + "nodeType": "YulVariableDeclaration", + "src": "47331:16:74", + "value": { + "kind": "number", + "nativeSrc": "47345:2:74", + "nodeType": "YulLiteral", + "src": "47345:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "47335:6:74", + "nodeType": "YulTypedName", + "src": "47335:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47361:62:74", + "nodeType": "YulAssignment", + "src": "47361:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47395:9:74", + "nodeType": "YulIdentifier", + "src": "47395:9:74" + }, + { + "name": "offset", + "nativeSrc": "47406:6:74", + "nodeType": "YulIdentifier", + "src": "47406:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47391:3:74", + "nodeType": "YulIdentifier", + "src": "47391:3:74" + }, + "nativeSrc": "47391:22:74", + "nodeType": "YulFunctionCall", + "src": "47391:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "47415:7:74", + "nodeType": "YulIdentifier", + "src": "47415:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint16", + "nativeSrc": "47371:19:74", + "nodeType": "YulIdentifier", + "src": "47371:19:74" + }, + "nativeSrc": "47371:52:74", + "nodeType": "YulFunctionCall", + "src": "47371:52:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "47361:6:74", + "nodeType": "YulIdentifier", + "src": "47361:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "47443:126:74", + "nodeType": "YulBlock", + "src": "47443:126:74", + "statements": [ + { + "nativeSrc": "47458:16:74", + "nodeType": "YulVariableDeclaration", + "src": "47458:16:74", + "value": { + "kind": "number", + "nativeSrc": "47472:2:74", + "nodeType": "YulLiteral", + "src": "47472:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "47462:6:74", + "nodeType": "YulTypedName", + "src": "47462:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47488:71:74", + "nodeType": "YulAssignment", + "src": "47488:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47531:9:74", + "nodeType": "YulIdentifier", + "src": "47531:9:74" + }, + { + "name": "offset", + "nativeSrc": "47542:6:74", + "nodeType": "YulIdentifier", + "src": "47542:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47527:3:74", + "nodeType": "YulIdentifier", + "src": "47527:3:74" + }, + "nativeSrc": "47527:22:74", + "nodeType": "YulFunctionCall", + "src": "47527:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "47551:7:74", + "nodeType": "YulIdentifier", + "src": "47551:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable", + "nativeSrc": "47498:28:74", + "nodeType": "YulIdentifier", + "src": "47498:28:74" + }, + "nativeSrc": "47498:61:74", + "nodeType": "YulFunctionCall", + "src": "47498:61:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "47488:6:74", + "nodeType": "YulIdentifier", + "src": "47488:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptrt_address_payablet_uint16t_address_payable", + "nativeSrc": "46601:975:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "46689:9:74", + "nodeType": "YulTypedName", + "src": "46689:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "46700:7:74", + "nodeType": "YulTypedName", + "src": "46700:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "46712:6:74", + "nodeType": "YulTypedName", + "src": "46712:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "46720:6:74", + "nodeType": "YulTypedName", + "src": "46720:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "46728:6:74", + "nodeType": "YulTypedName", + "src": "46728:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "46736:6:74", + "nodeType": "YulTypedName", + "src": "46736:6:74", + "type": "" + } + ], + "src": "46601:975:74" + }, + { + "body": { + "nativeSrc": "47708:206:74", + "nodeType": "YulBlock", + "src": "47708:206:74", + "statements": [ + { + "nativeSrc": "47718:26:74", + "nodeType": "YulAssignment", + "src": "47718:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47730:9:74", + "nodeType": "YulIdentifier", + "src": "47730:9:74" + }, + { + "kind": "number", + "nativeSrc": "47741:2:74", + "nodeType": "YulLiteral", + "src": "47741:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47726:3:74", + "nodeType": "YulIdentifier", + "src": "47726:3:74" + }, + "nativeSrc": "47726:18:74", + "nodeType": "YulFunctionCall", + "src": "47726:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "47718:4:74", + "nodeType": "YulIdentifier", + "src": "47718:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "47798:6:74", + "nodeType": "YulIdentifier", + "src": "47798:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47811:9:74", + "nodeType": "YulIdentifier", + "src": "47811:9:74" + }, + { + "kind": "number", + "nativeSrc": "47822:1:74", + "nodeType": "YulLiteral", + "src": "47822:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47807:3:74", + "nodeType": "YulIdentifier", + "src": "47807:3:74" + }, + "nativeSrc": "47807:17:74", + "nodeType": "YulFunctionCall", + "src": "47807:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "47754:43:74", + "nodeType": "YulIdentifier", + "src": "47754:43:74" + }, + "nativeSrc": "47754:71:74", + "nodeType": "YulFunctionCall", + "src": "47754:71:74" + }, + "nativeSrc": "47754:71:74", + "nodeType": "YulExpressionStatement", + "src": "47754:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "47879:6:74", + "nodeType": "YulIdentifier", + "src": "47879:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "47892:9:74", + "nodeType": "YulIdentifier", + "src": "47892:9:74" + }, + { + "kind": "number", + "nativeSrc": "47903:2:74", + "nodeType": "YulLiteral", + "src": "47903:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47888:3:74", + "nodeType": "YulIdentifier", + "src": "47888:3:74" + }, + "nativeSrc": "47888:18:74", + "nodeType": "YulFunctionCall", + "src": "47888:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "47835:43:74", + "nodeType": "YulIdentifier", + "src": "47835:43:74" + }, + "nativeSrc": "47835:72:74", + "nodeType": "YulFunctionCall", + "src": "47835:72:74" + }, + "nativeSrc": "47835:72:74", + "nodeType": "YulExpressionStatement", + "src": "47835:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed", + "nativeSrc": "47582:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "47672:9:74", + "nodeType": "YulTypedName", + "src": "47672:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "47684:6:74", + "nodeType": "YulTypedName", + "src": "47684:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "47692:6:74", + "nodeType": "YulTypedName", + "src": "47692:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "47703:4:74", + "nodeType": "YulTypedName", + "src": "47703:4:74", + "type": "" + } + ], + "src": "47582:332:74" + }, + { + "body": { + "nativeSrc": "48046:206:74", + "nodeType": "YulBlock", + "src": "48046:206:74", + "statements": [ + { + "nativeSrc": "48056:26:74", + "nodeType": "YulAssignment", + "src": "48056:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48068:9:74", + "nodeType": "YulIdentifier", + "src": "48068:9:74" + }, + { + "kind": "number", + "nativeSrc": "48079:2:74", + "nodeType": "YulLiteral", + "src": "48079:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48064:3:74", + "nodeType": "YulIdentifier", + "src": "48064:3:74" + }, + "nativeSrc": "48064:18:74", + "nodeType": "YulFunctionCall", + "src": "48064:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "48056:4:74", + "nodeType": "YulIdentifier", + "src": "48056:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "48136:6:74", + "nodeType": "YulIdentifier", + "src": "48136:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48149:9:74", + "nodeType": "YulIdentifier", + "src": "48149:9:74" + }, + { + "kind": "number", + "nativeSrc": "48160:1:74", + "nodeType": "YulLiteral", + "src": "48160:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48145:3:74", + "nodeType": "YulIdentifier", + "src": "48145:3:74" + }, + "nativeSrc": "48145:17:74", + "nodeType": "YulFunctionCall", + "src": "48145:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "48092:43:74", + "nodeType": "YulIdentifier", + "src": "48092:43:74" + }, + "nativeSrc": "48092:71:74", + "nodeType": "YulFunctionCall", + "src": "48092:71:74" + }, + "nativeSrc": "48092:71:74", + "nodeType": "YulExpressionStatement", + "src": "48092:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "48217:6:74", + "nodeType": "YulIdentifier", + "src": "48217:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48230:9:74", + "nodeType": "YulIdentifier", + "src": "48230:9:74" + }, + { + "kind": "number", + "nativeSrc": "48241:2:74", + "nodeType": "YulLiteral", + "src": "48241:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48226:3:74", + "nodeType": "YulIdentifier", + "src": "48226:3:74" + }, + "nativeSrc": "48226:18:74", + "nodeType": "YulFunctionCall", + "src": "48226:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "48173:43:74", + "nodeType": "YulIdentifier", + "src": "48173:43:74" + }, + "nativeSrc": "48173:72:74", + "nodeType": "YulFunctionCall", + "src": "48173:72:74" + }, + "nativeSrc": "48173:72:74", + "nodeType": "YulExpressionStatement", + "src": "48173:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed", + "nativeSrc": "47920:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "48010:9:74", + "nodeType": "YulTypedName", + "src": "48010:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "48022:6:74", + "nodeType": "YulTypedName", + "src": "48022:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "48030:6:74", + "nodeType": "YulTypedName", + "src": "48030:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "48041:4:74", + "nodeType": "YulTypedName", + "src": "48041:4:74", + "type": "" + } + ], + "src": "47920:332:74" + }, + { + "body": { + "nativeSrc": "48321:80:74", + "nodeType": "YulBlock", + "src": "48321:80:74", + "statements": [ + { + "nativeSrc": "48331:22:74", + "nodeType": "YulAssignment", + "src": "48331:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "48346:6:74", + "nodeType": "YulIdentifier", + "src": "48346:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "48340:5:74", + "nodeType": "YulIdentifier", + "src": "48340:5:74" + }, + "nativeSrc": "48340:13:74", + "nodeType": "YulFunctionCall", + "src": "48340:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "48331:5:74", + "nodeType": "YulIdentifier", + "src": "48331:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "48389:5:74", + "nodeType": "YulIdentifier", + "src": "48389:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "48362:26:74", + "nodeType": "YulIdentifier", + "src": "48362:26:74" + }, + "nativeSrc": "48362:33:74", + "nodeType": "YulFunctionCall", + "src": "48362:33:74" + }, + "nativeSrc": "48362:33:74", + "nodeType": "YulExpressionStatement", + "src": "48362:33:74" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "48258:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "48299:6:74", + "nodeType": "YulTypedName", + "src": "48299:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "48307:3:74", + "nodeType": "YulTypedName", + "src": "48307:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "48315:5:74", + "nodeType": "YulTypedName", + "src": "48315:5:74", + "type": "" + } + ], + "src": "48258:143:74" + }, + { + "body": { + "nativeSrc": "48484:274:74", + "nodeType": "YulBlock", + "src": "48484:274:74", + "statements": [ + { + "body": { + "nativeSrc": "48530:83:74", + "nodeType": "YulBlock", + "src": "48530:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "48532:77:74", + "nodeType": "YulIdentifier", + "src": "48532:77:74" + }, + "nativeSrc": "48532:79:74", + "nodeType": "YulFunctionCall", + "src": "48532:79:74" + }, + "nativeSrc": "48532:79:74", + "nodeType": "YulExpressionStatement", + "src": "48532:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "48505:7:74", + "nodeType": "YulIdentifier", + "src": "48505:7:74" + }, + { + "name": "headStart", + "nativeSrc": "48514:9:74", + "nodeType": "YulIdentifier", + "src": "48514:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "48501:3:74", + "nodeType": "YulIdentifier", + "src": "48501:3:74" + }, + "nativeSrc": "48501:23:74", + "nodeType": "YulFunctionCall", + "src": "48501:23:74" + }, + { + "kind": "number", + "nativeSrc": "48526:2:74", + "nodeType": "YulLiteral", + "src": "48526:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "48497:3:74", + "nodeType": "YulIdentifier", + "src": "48497:3:74" + }, + "nativeSrc": "48497:32:74", + "nodeType": "YulFunctionCall", + "src": "48497:32:74" + }, + "nativeSrc": "48494:119:74", + "nodeType": "YulIf", + "src": "48494:119:74" + }, + { + "nativeSrc": "48623:128:74", + "nodeType": "YulBlock", + "src": "48623:128:74", + "statements": [ + { + "nativeSrc": "48638:15:74", + "nodeType": "YulVariableDeclaration", + "src": "48638:15:74", + "value": { + "kind": "number", + "nativeSrc": "48652:1:74", + "nodeType": "YulLiteral", + "src": "48652:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "48642:6:74", + "nodeType": "YulTypedName", + "src": "48642:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "48667:74:74", + "nodeType": "YulAssignment", + "src": "48667:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "48713:9:74", + "nodeType": "YulIdentifier", + "src": "48713:9:74" + }, + { + "name": "offset", + "nativeSrc": "48724:6:74", + "nodeType": "YulIdentifier", + "src": "48724:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48709:3:74", + "nodeType": "YulIdentifier", + "src": "48709:3:74" + }, + "nativeSrc": "48709:22:74", + "nodeType": "YulFunctionCall", + "src": "48709:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "48733:7:74", + "nodeType": "YulIdentifier", + "src": "48733:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "48677:31:74", + "nodeType": "YulIdentifier", + "src": "48677:31:74" + }, + "nativeSrc": "48677:64:74", + "nodeType": "YulFunctionCall", + "src": "48677:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "48667:6:74", + "nodeType": "YulIdentifier", + "src": "48667:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256_fromMemory", + "nativeSrc": "48407:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "48454:9:74", + "nodeType": "YulTypedName", + "src": "48454:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "48465:7:74", + "nodeType": "YulTypedName", + "src": "48465:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "48477:6:74", + "nodeType": "YulTypedName", + "src": "48477:6:74", + "type": "" + } + ], + "src": "48407:351:74" + }, + { + "body": { + "nativeSrc": "48792:152:74", + "nodeType": "YulBlock", + "src": "48792:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "48809:1:74", + "nodeType": "YulLiteral", + "src": "48809:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "48812:77:74", + "nodeType": "YulLiteral", + "src": "48812:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48802:6:74", + "nodeType": "YulIdentifier", + "src": "48802:6:74" + }, + "nativeSrc": "48802:88:74", + "nodeType": "YulFunctionCall", + "src": "48802:88:74" + }, + "nativeSrc": "48802:88:74", + "nodeType": "YulExpressionStatement", + "src": "48802:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "48906:1:74", + "nodeType": "YulLiteral", + "src": "48906:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "48909:4:74", + "nodeType": "YulLiteral", + "src": "48909:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "48899:6:74", + "nodeType": "YulIdentifier", + "src": "48899:6:74" + }, + "nativeSrc": "48899:15:74", + "nodeType": "YulFunctionCall", + "src": "48899:15:74" + }, + "nativeSrc": "48899:15:74", + "nodeType": "YulExpressionStatement", + "src": "48899:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "48930:1:74", + "nodeType": "YulLiteral", + "src": "48930:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "48933:4:74", + "nodeType": "YulLiteral", + "src": "48933:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "48923:6:74", + "nodeType": "YulIdentifier", + "src": "48923:6:74" + }, + "nativeSrc": "48923:15:74", + "nodeType": "YulFunctionCall", + "src": "48923:15:74" + }, + "nativeSrc": "48923:15:74", + "nodeType": "YulExpressionStatement", + "src": "48923:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "48764:180:74", + "nodeType": "YulFunctionDefinition", + "src": "48764:180:74" + }, + { + "body": { + "nativeSrc": "48993:162:74", + "nodeType": "YulBlock", + "src": "48993:162:74", + "statements": [ + { + "nativeSrc": "49003:24:74", + "nodeType": "YulAssignment", + "src": "49003:24:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "49025:1:74", + "nodeType": "YulIdentifier", + "src": "49025:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "49008:16:74", + "nodeType": "YulIdentifier", + "src": "49008:16:74" + }, + "nativeSrc": "49008:19:74", + "nodeType": "YulFunctionCall", + "src": "49008:19:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "49003:1:74", + "nodeType": "YulIdentifier", + "src": "49003:1:74" + } + ] + }, + { + "nativeSrc": "49036:24:74", + "nodeType": "YulAssignment", + "src": "49036:24:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "49058:1:74", + "nodeType": "YulIdentifier", + "src": "49058:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "49041:16:74", + "nodeType": "YulIdentifier", + "src": "49041:16:74" + }, + "nativeSrc": "49041:19:74", + "nodeType": "YulFunctionCall", + "src": "49041:19:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "49036:1:74", + "nodeType": "YulIdentifier", + "src": "49036:1:74" + } + ] + }, + { + "nativeSrc": "49069:16:74", + "nodeType": "YulAssignment", + "src": "49069:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "49080:1:74", + "nodeType": "YulIdentifier", + "src": "49080:1:74" + }, + { + "name": "y", + "nativeSrc": "49083:1:74", + "nodeType": "YulIdentifier", + "src": "49083:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49076:3:74", + "nodeType": "YulIdentifier", + "src": "49076:3:74" + }, + "nativeSrc": "49076:9:74", + "nodeType": "YulFunctionCall", + "src": "49076:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "49069:3:74", + "nodeType": "YulIdentifier", + "src": "49069:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "49126:22:74", + "nodeType": "YulBlock", + "src": "49126:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "49128:16:74", + "nodeType": "YulIdentifier", + "src": "49128:16:74" + }, + "nativeSrc": "49128:18:74", + "nodeType": "YulFunctionCall", + "src": "49128:18:74" + }, + "nativeSrc": "49128:18:74", + "nodeType": "YulExpressionStatement", + "src": "49128:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "sum", + "nativeSrc": "49101:3:74", + "nodeType": "YulIdentifier", + "src": "49101:3:74" + }, + { + "kind": "number", + "nativeSrc": "49106:18:74", + "nodeType": "YulLiteral", + "src": "49106:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "49098:2:74", + "nodeType": "YulIdentifier", + "src": "49098:2:74" + }, + "nativeSrc": "49098:27:74", + "nodeType": "YulFunctionCall", + "src": "49098:27:74" + }, + "nativeSrc": "49095:53:74", + "nodeType": "YulIf", + "src": "49095:53:74" + } + ] + }, + "name": "checked_add_t_uint64", + "nativeSrc": "48950:205:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "48980:1:74", + "nodeType": "YulTypedName", + "src": "48980:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "48983:1:74", + "nodeType": "YulTypedName", + "src": "48983:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "48989:3:74", + "nodeType": "YulTypedName", + "src": "48989:3:74", + "type": "" + } + ], + "src": "48950:205:74" + }, + { + "body": { + "nativeSrc": "49189:152:74", + "nodeType": "YulBlock", + "src": "49189:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "49206:1:74", + "nodeType": "YulLiteral", + "src": "49206:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "49209:77:74", + "nodeType": "YulLiteral", + "src": "49209:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49199:6:74", + "nodeType": "YulIdentifier", + "src": "49199:6:74" + }, + "nativeSrc": "49199:88:74", + "nodeType": "YulFunctionCall", + "src": "49199:88:74" + }, + "nativeSrc": "49199:88:74", + "nodeType": "YulExpressionStatement", + "src": "49199:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "49303:1:74", + "nodeType": "YulLiteral", + "src": "49303:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "49306:4:74", + "nodeType": "YulLiteral", + "src": "49306:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49296:6:74", + "nodeType": "YulIdentifier", + "src": "49296:6:74" + }, + "nativeSrc": "49296:15:74", + "nodeType": "YulFunctionCall", + "src": "49296:15:74" + }, + "nativeSrc": "49296:15:74", + "nodeType": "YulExpressionStatement", + "src": "49296:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "49327:1:74", + "nodeType": "YulLiteral", + "src": "49327:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "49330:4:74", + "nodeType": "YulLiteral", + "src": "49330:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "49320:6:74", + "nodeType": "YulIdentifier", + "src": "49320:6:74" + }, + "nativeSrc": "49320:15:74", + "nodeType": "YulFunctionCall", + "src": "49320:15:74" + }, + "nativeSrc": "49320:15:74", + "nodeType": "YulExpressionStatement", + "src": "49320:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "49161:180:74", + "nodeType": "YulFunctionDefinition", + "src": "49161:180:74" + }, + { + "body": { + "nativeSrc": "49398:269:74", + "nodeType": "YulBlock", + "src": "49398:269:74", + "statements": [ + { + "nativeSrc": "49408:22:74", + "nodeType": "YulAssignment", + "src": "49408:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "49422:4:74", + "nodeType": "YulIdentifier", + "src": "49422:4:74" + }, + { + "kind": "number", + "nativeSrc": "49428:1:74", + "nodeType": "YulLiteral", + "src": "49428:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "49418:3:74", + "nodeType": "YulIdentifier", + "src": "49418:3:74" + }, + "nativeSrc": "49418:12:74", + "nodeType": "YulFunctionCall", + "src": "49418:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "49408:6:74", + "nodeType": "YulIdentifier", + "src": "49408:6:74" + } + ] + }, + { + "nativeSrc": "49439:38:74", + "nodeType": "YulVariableDeclaration", + "src": "49439:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "49469:4:74", + "nodeType": "YulIdentifier", + "src": "49469:4:74" + }, + { + "kind": "number", + "nativeSrc": "49475:1:74", + "nodeType": "YulLiteral", + "src": "49475:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "49465:3:74", + "nodeType": "YulIdentifier", + "src": "49465:3:74" + }, + "nativeSrc": "49465:12:74", + "nodeType": "YulFunctionCall", + "src": "49465:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "49443:18:74", + "nodeType": "YulTypedName", + "src": "49443:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "49516:51:74", + "nodeType": "YulBlock", + "src": "49516:51:74", + "statements": [ + { + "nativeSrc": "49530:27:74", + "nodeType": "YulAssignment", + "src": "49530:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "49544:6:74", + "nodeType": "YulIdentifier", + "src": "49544:6:74" + }, + { + "kind": "number", + "nativeSrc": "49552:4:74", + "nodeType": "YulLiteral", + "src": "49552:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "49540:3:74", + "nodeType": "YulIdentifier", + "src": "49540:3:74" + }, + "nativeSrc": "49540:17:74", + "nodeType": "YulFunctionCall", + "src": "49540:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "49530:6:74", + "nodeType": "YulIdentifier", + "src": "49530:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "49496:18:74", + "nodeType": "YulIdentifier", + "src": "49496:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "49489:6:74", + "nodeType": "YulIdentifier", + "src": "49489:6:74" + }, + "nativeSrc": "49489:26:74", + "nodeType": "YulFunctionCall", + "src": "49489:26:74" + }, + "nativeSrc": "49486:81:74", + "nodeType": "YulIf", + "src": "49486:81:74" + }, + { + "body": { + "nativeSrc": "49619:42:74", + "nodeType": "YulBlock", + "src": "49619:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "49633:16:74", + "nodeType": "YulIdentifier", + "src": "49633:16:74" + }, + "nativeSrc": "49633:18:74", + "nodeType": "YulFunctionCall", + "src": "49633:18:74" + }, + "nativeSrc": "49633:18:74", + "nodeType": "YulExpressionStatement", + "src": "49633:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "49583:18:74", + "nodeType": "YulIdentifier", + "src": "49583:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "49606:6:74", + "nodeType": "YulIdentifier", + "src": "49606:6:74" + }, + { + "kind": "number", + "nativeSrc": "49614:2:74", + "nodeType": "YulLiteral", + "src": "49614:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "49603:2:74", + "nodeType": "YulIdentifier", + "src": "49603:2:74" + }, + "nativeSrc": "49603:14:74", + "nodeType": "YulFunctionCall", + "src": "49603:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "49580:2:74", + "nodeType": "YulIdentifier", + "src": "49580:2:74" + }, + "nativeSrc": "49580:38:74", + "nodeType": "YulFunctionCall", + "src": "49580:38:74" + }, + "nativeSrc": "49577:84:74", + "nodeType": "YulIf", + "src": "49577:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "49347:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "49382:4:74", + "nodeType": "YulTypedName", + "src": "49382:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "49391:6:74", + "nodeType": "YulTypedName", + "src": "49391:6:74", + "type": "" + } + ], + "src": "49347:320:74" + }, + { + "body": { + "nativeSrc": "49881:452:74", + "nodeType": "YulBlock", + "src": "49881:452:74", + "statements": [ + { + "nativeSrc": "49891:27:74", + "nodeType": "YulAssignment", + "src": "49891:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49903:9:74", + "nodeType": "YulIdentifier", + "src": "49903:9:74" + }, + { + "kind": "number", + "nativeSrc": "49914:3:74", + "nodeType": "YulLiteral", + "src": "49914:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49899:3:74", + "nodeType": "YulIdentifier", + "src": "49899:3:74" + }, + "nativeSrc": "49899:19:74", + "nodeType": "YulFunctionCall", + "src": "49899:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49891:4:74", + "nodeType": "YulIdentifier", + "src": "49891:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "49972:6:74", + "nodeType": "YulIdentifier", + "src": "49972:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49985:9:74", + "nodeType": "YulIdentifier", + "src": "49985:9:74" + }, + { + "kind": "number", + "nativeSrc": "49996:1:74", + "nodeType": "YulLiteral", + "src": "49996:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49981:3:74", + "nodeType": "YulIdentifier", + "src": "49981:3:74" + }, + "nativeSrc": "49981:17:74", + "nodeType": "YulFunctionCall", + "src": "49981:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "49928:43:74", + "nodeType": "YulIdentifier", + "src": "49928:43:74" + }, + "nativeSrc": "49928:71:74", + "nodeType": "YulFunctionCall", + "src": "49928:71:74" + }, + "nativeSrc": "49928:71:74", + "nodeType": "YulExpressionStatement", + "src": "49928:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "50053:6:74", + "nodeType": "YulIdentifier", + "src": "50053:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50066:9:74", + "nodeType": "YulIdentifier", + "src": "50066:9:74" + }, + { + "kind": "number", + "nativeSrc": "50077:2:74", + "nodeType": "YulLiteral", + "src": "50077:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50062:3:74", + "nodeType": "YulIdentifier", + "src": "50062:3:74" + }, + "nativeSrc": "50062:18:74", + "nodeType": "YulFunctionCall", + "src": "50062:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "50009:43:74", + "nodeType": "YulIdentifier", + "src": "50009:43:74" + }, + "nativeSrc": "50009:72:74", + "nodeType": "YulFunctionCall", + "src": "50009:72:74" + }, + "nativeSrc": "50009:72:74", + "nodeType": "YulExpressionStatement", + "src": "50009:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "50135:6:74", + "nodeType": "YulIdentifier", + "src": "50135:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50148:9:74", + "nodeType": "YulIdentifier", + "src": "50148:9:74" + }, + { + "kind": "number", + "nativeSrc": "50159:2:74", + "nodeType": "YulLiteral", + "src": "50159:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50144:3:74", + "nodeType": "YulIdentifier", + "src": "50144:3:74" + }, + "nativeSrc": "50144:18:74", + "nodeType": "YulFunctionCall", + "src": "50144:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "50091:43:74", + "nodeType": "YulIdentifier", + "src": "50091:43:74" + }, + "nativeSrc": "50091:72:74", + "nodeType": "YulFunctionCall", + "src": "50091:72:74" + }, + "nativeSrc": "50091:72:74", + "nodeType": "YulExpressionStatement", + "src": "50091:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "50217:6:74", + "nodeType": "YulIdentifier", + "src": "50217:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50230:9:74", + "nodeType": "YulIdentifier", + "src": "50230:9:74" + }, + { + "kind": "number", + "nativeSrc": "50241:2:74", + "nodeType": "YulLiteral", + "src": "50241:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50226:3:74", + "nodeType": "YulIdentifier", + "src": "50226:3:74" + }, + "nativeSrc": "50226:18:74", + "nodeType": "YulFunctionCall", + "src": "50226:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "50173:43:74", + "nodeType": "YulIdentifier", + "src": "50173:43:74" + }, + "nativeSrc": "50173:72:74", + "nodeType": "YulFunctionCall", + "src": "50173:72:74" + }, + "nativeSrc": "50173:72:74", + "nodeType": "YulExpressionStatement", + "src": "50173:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "50297:6:74", + "nodeType": "YulIdentifier", + "src": "50297:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50310:9:74", + "nodeType": "YulIdentifier", + "src": "50310:9:74" + }, + { + "kind": "number", + "nativeSrc": "50321:3:74", + "nodeType": "YulLiteral", + "src": "50321:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50306:3:74", + "nodeType": "YulIdentifier", + "src": "50306:3:74" + }, + "nativeSrc": "50306:19:74", + "nodeType": "YulFunctionCall", + "src": "50306:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "50255:41:74", + "nodeType": "YulIdentifier", + "src": "50255:41:74" + }, + "nativeSrc": "50255:71:74", + "nodeType": "YulFunctionCall", + "src": "50255:71:74" + }, + "nativeSrc": "50255:71:74", + "nodeType": "YulExpressionStatement", + "src": "50255:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed", + "nativeSrc": "49673:660:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "49821:9:74", + "nodeType": "YulTypedName", + "src": "49821:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "49833:6:74", + "nodeType": "YulTypedName", + "src": "49833:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "49841:6:74", + "nodeType": "YulTypedName", + "src": "49841:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "49849:6:74", + "nodeType": "YulTypedName", + "src": "49849:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "49857:6:74", + "nodeType": "YulTypedName", + "src": "49857:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "49865:6:74", + "nodeType": "YulTypedName", + "src": "49865:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "49876:4:74", + "nodeType": "YulTypedName", + "src": "49876:4:74", + "type": "" + } + ], + "src": "49673:660:74" + }, + { + "body": { + "nativeSrc": "50445:121:74", + "nodeType": "YulBlock", + "src": "50445:121:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "50467:6:74", + "nodeType": "YulIdentifier", + "src": "50467:6:74" + }, + { + "kind": "number", + "nativeSrc": "50475:1:74", + "nodeType": "YulLiteral", + "src": "50475:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50463:3:74", + "nodeType": "YulIdentifier", + "src": "50463:3:74" + }, + "nativeSrc": "50463:14:74", + "nodeType": "YulFunctionCall", + "src": "50463:14:74" + }, + { + "hexValue": "455243313135353a2069647320616e6420616d6f756e7473206c656e67746820", + "kind": "string", + "nativeSrc": "50479:34:74", + "nodeType": "YulLiteral", + "src": "50479:34:74", + "type": "", + "value": "ERC1155: ids and amounts length " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50456:6:74", + "nodeType": "YulIdentifier", + "src": "50456:6:74" + }, + "nativeSrc": "50456:58:74", + "nodeType": "YulFunctionCall", + "src": "50456:58:74" + }, + "nativeSrc": "50456:58:74", + "nodeType": "YulExpressionStatement", + "src": "50456:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "50535:6:74", + "nodeType": "YulIdentifier", + "src": "50535:6:74" + }, + { + "kind": "number", + "nativeSrc": "50543:2:74", + "nodeType": "YulLiteral", + "src": "50543:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50531:3:74", + "nodeType": "YulIdentifier", + "src": "50531:3:74" + }, + "nativeSrc": "50531:15:74", + "nodeType": "YulFunctionCall", + "src": "50531:15:74" + }, + { + "hexValue": "6d69736d61746368", + "kind": "string", + "nativeSrc": "50548:10:74", + "nodeType": "YulLiteral", + "src": "50548:10:74", + "type": "", + "value": "mismatch" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50524:6:74", + "nodeType": "YulIdentifier", + "src": "50524:6:74" + }, + "nativeSrc": "50524:35:74", + "nodeType": "YulFunctionCall", + "src": "50524:35:74" + }, + "nativeSrc": "50524:35:74", + "nodeType": "YulExpressionStatement", + "src": "50524:35:74" + } + ] + }, + "name": "store_literal_in_memory_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807", + "nativeSrc": "50339:227:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "50437:6:74", + "nodeType": "YulTypedName", + "src": "50437:6:74", + "type": "" + } + ], + "src": "50339:227:74" + }, + { + "body": { + "nativeSrc": "50718:220:74", + "nodeType": "YulBlock", + "src": "50718:220:74", + "statements": [ + { + "nativeSrc": "50728:74:74", + "nodeType": "YulAssignment", + "src": "50728:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50794:3:74", + "nodeType": "YulIdentifier", + "src": "50794:3:74" + }, + { + "kind": "number", + "nativeSrc": "50799:2:74", + "nodeType": "YulLiteral", + "src": "50799:2:74", + "type": "", + "value": "40" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "50735:58:74", + "nodeType": "YulIdentifier", + "src": "50735:58:74" + }, + "nativeSrc": "50735:67:74", + "nodeType": "YulFunctionCall", + "src": "50735:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "50728:3:74", + "nodeType": "YulIdentifier", + "src": "50728:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50900:3:74", + "nodeType": "YulIdentifier", + "src": "50900:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807", + "nativeSrc": "50811:88:74", + "nodeType": "YulIdentifier", + "src": "50811:88:74" + }, + "nativeSrc": "50811:93:74", + "nodeType": "YulFunctionCall", + "src": "50811:93:74" + }, + "nativeSrc": "50811:93:74", + "nodeType": "YulExpressionStatement", + "src": "50811:93:74" + }, + { + "nativeSrc": "50913:19:74", + "nodeType": "YulAssignment", + "src": "50913:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50924:3:74", + "nodeType": "YulIdentifier", + "src": "50924:3:74" + }, + { + "kind": "number", + "nativeSrc": "50929:2:74", + "nodeType": "YulLiteral", + "src": "50929:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50920:3:74", + "nodeType": "YulIdentifier", + "src": "50920:3:74" + }, + "nativeSrc": "50920:12:74", + "nodeType": "YulFunctionCall", + "src": "50920:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "50913:3:74", + "nodeType": "YulIdentifier", + "src": "50913:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807_to_t_string_memory_ptr_fromStack", + "nativeSrc": "50572:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "50706:3:74", + "nodeType": "YulTypedName", + "src": "50706:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "50714:3:74", + "nodeType": "YulTypedName", + "src": "50714:3:74", + "type": "" + } + ], + "src": "50572:366:74" + }, + { + "body": { + "nativeSrc": "51115:248:74", + "nodeType": "YulBlock", + "src": "51115:248:74", + "statements": [ + { + "nativeSrc": "51125:26:74", + "nodeType": "YulAssignment", + "src": "51125:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "51137:9:74", + "nodeType": "YulIdentifier", + "src": "51137:9:74" + }, + { + "kind": "number", + "nativeSrc": "51148:2:74", + "nodeType": "YulLiteral", + "src": "51148:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51133:3:74", + "nodeType": "YulIdentifier", + "src": "51133:3:74" + }, + "nativeSrc": "51133:18:74", + "nodeType": "YulFunctionCall", + "src": "51133:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "51125:4:74", + "nodeType": "YulIdentifier", + "src": "51125:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "51172:9:74", + "nodeType": "YulIdentifier", + "src": "51172:9:74" + }, + { + "kind": "number", + "nativeSrc": "51183:1:74", + "nodeType": "YulLiteral", + "src": "51183:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51168:3:74", + "nodeType": "YulIdentifier", + "src": "51168:3:74" + }, + "nativeSrc": "51168:17:74", + "nodeType": "YulFunctionCall", + "src": "51168:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "51191:4:74", + "nodeType": "YulIdentifier", + "src": "51191:4:74" + }, + { + "name": "headStart", + "nativeSrc": "51197:9:74", + "nodeType": "YulIdentifier", + "src": "51197:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "51187:3:74", + "nodeType": "YulIdentifier", + "src": "51187:3:74" + }, + "nativeSrc": "51187:20:74", + "nodeType": "YulFunctionCall", + "src": "51187:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "51161:6:74", + "nodeType": "YulIdentifier", + "src": "51161:6:74" + }, + "nativeSrc": "51161:47:74", + "nodeType": "YulFunctionCall", + "src": "51161:47:74" + }, + "nativeSrc": "51161:47:74", + "nodeType": "YulExpressionStatement", + "src": "51161:47:74" + }, + { + "nativeSrc": "51217:139:74", + "nodeType": "YulAssignment", + "src": "51217:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "51351:4:74", + "nodeType": "YulIdentifier", + "src": "51351:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807_to_t_string_memory_ptr_fromStack", + "nativeSrc": "51225:124:74", + "nodeType": "YulIdentifier", + "src": "51225:124:74" + }, + "nativeSrc": "51225:131:74", + "nodeType": "YulFunctionCall", + "src": "51225:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "51217:4:74", + "nodeType": "YulIdentifier", + "src": "51217:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "50944:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "51095:9:74", + "nodeType": "YulTypedName", + "src": "51095:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "51110:4:74", + "nodeType": "YulTypedName", + "src": "51110:4:74", + "type": "" + } + ], + "src": "50944:419:74" + }, + { + "body": { + "nativeSrc": "51475:118:74", + "nodeType": "YulBlock", + "src": "51475:118:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "51497:6:74", + "nodeType": "YulIdentifier", + "src": "51497:6:74" + }, + { + "kind": "number", + "nativeSrc": "51505:1:74", + "nodeType": "YulLiteral", + "src": "51505:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51493:3:74", + "nodeType": "YulIdentifier", + "src": "51493:3:74" + }, + "nativeSrc": "51493:14:74", + "nodeType": "YulFunctionCall", + "src": "51493:14:74" + }, + { + "hexValue": "455243313135353a207472616e7366657220746f20746865207a65726f206164", + "kind": "string", + "nativeSrc": "51509:34:74", + "nodeType": "YulLiteral", + "src": "51509:34:74", + "type": "", + "value": "ERC1155: transfer to the zero ad" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "51486:6:74", + "nodeType": "YulIdentifier", + "src": "51486:6:74" + }, + "nativeSrc": "51486:58:74", + "nodeType": "YulFunctionCall", + "src": "51486:58:74" + }, + "nativeSrc": "51486:58:74", + "nodeType": "YulExpressionStatement", + "src": "51486:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "51565:6:74", + "nodeType": "YulIdentifier", + "src": "51565:6:74" + }, + { + "kind": "number", + "nativeSrc": "51573:2:74", + "nodeType": "YulLiteral", + "src": "51573:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51561:3:74", + "nodeType": "YulIdentifier", + "src": "51561:3:74" + }, + "nativeSrc": "51561:15:74", + "nodeType": "YulFunctionCall", + "src": "51561:15:74" + }, + { + "hexValue": "6472657373", + "kind": "string", + "nativeSrc": "51578:7:74", + "nodeType": "YulLiteral", + "src": "51578:7:74", + "type": "", + "value": "dress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "51554:6:74", + "nodeType": "YulIdentifier", + "src": "51554:6:74" + }, + "nativeSrc": "51554:32:74", + "nodeType": "YulFunctionCall", + "src": "51554:32:74" + }, + "nativeSrc": "51554:32:74", + "nodeType": "YulExpressionStatement", + "src": "51554:32:74" + } + ] + }, + "name": "store_literal_in_memory_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "nativeSrc": "51369:224:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "51467:6:74", + "nodeType": "YulTypedName", + "src": "51467:6:74", + "type": "" + } + ], + "src": "51369:224:74" + }, + { + "body": { + "nativeSrc": "51745:220:74", + "nodeType": "YulBlock", + "src": "51745:220:74", + "statements": [ + { + "nativeSrc": "51755:74:74", + "nodeType": "YulAssignment", + "src": "51755:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "51821:3:74", + "nodeType": "YulIdentifier", + "src": "51821:3:74" + }, + { + "kind": "number", + "nativeSrc": "51826:2:74", + "nodeType": "YulLiteral", + "src": "51826:2:74", + "type": "", + "value": "37" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "51762:58:74", + "nodeType": "YulIdentifier", + "src": "51762:58:74" + }, + "nativeSrc": "51762:67:74", + "nodeType": "YulFunctionCall", + "src": "51762:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "51755:3:74", + "nodeType": "YulIdentifier", + "src": "51755:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "51927:3:74", + "nodeType": "YulIdentifier", + "src": "51927:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d", + "nativeSrc": "51838:88:74", + "nodeType": "YulIdentifier", + "src": "51838:88:74" + }, + "nativeSrc": "51838:93:74", + "nodeType": "YulFunctionCall", + "src": "51838:93:74" + }, + "nativeSrc": "51838:93:74", + "nodeType": "YulExpressionStatement", + "src": "51838:93:74" + }, + { + "nativeSrc": "51940:19:74", + "nodeType": "YulAssignment", + "src": "51940:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "51951:3:74", + "nodeType": "YulIdentifier", + "src": "51951:3:74" + }, + { + "kind": "number", + "nativeSrc": "51956:2:74", + "nodeType": "YulLiteral", + "src": "51956:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51947:3:74", + "nodeType": "YulIdentifier", + "src": "51947:3:74" + }, + "nativeSrc": "51947:12:74", + "nodeType": "YulFunctionCall", + "src": "51947:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "51940:3:74", + "nodeType": "YulIdentifier", + "src": "51940:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d_to_t_string_memory_ptr_fromStack", + "nativeSrc": "51599:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "51733:3:74", + "nodeType": "YulTypedName", + "src": "51733:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "51741:3:74", + "nodeType": "YulTypedName", + "src": "51741:3:74", + "type": "" + } + ], + "src": "51599:366:74" + }, + { + "body": { + "nativeSrc": "52142:248:74", + "nodeType": "YulBlock", + "src": "52142:248:74", + "statements": [ + { + "nativeSrc": "52152:26:74", + "nodeType": "YulAssignment", + "src": "52152:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "52164:9:74", + "nodeType": "YulIdentifier", + "src": "52164:9:74" + }, + { + "kind": "number", + "nativeSrc": "52175:2:74", + "nodeType": "YulLiteral", + "src": "52175:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52160:3:74", + "nodeType": "YulIdentifier", + "src": "52160:3:74" + }, + "nativeSrc": "52160:18:74", + "nodeType": "YulFunctionCall", + "src": "52160:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "52152:4:74", + "nodeType": "YulIdentifier", + "src": "52152:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "52199:9:74", + "nodeType": "YulIdentifier", + "src": "52199:9:74" + }, + { + "kind": "number", + "nativeSrc": "52210:1:74", + "nodeType": "YulLiteral", + "src": "52210:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52195:3:74", + "nodeType": "YulIdentifier", + "src": "52195:3:74" + }, + "nativeSrc": "52195:17:74", + "nodeType": "YulFunctionCall", + "src": "52195:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "52218:4:74", + "nodeType": "YulIdentifier", + "src": "52218:4:74" + }, + { + "name": "headStart", + "nativeSrc": "52224:9:74", + "nodeType": "YulIdentifier", + "src": "52224:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "52214:3:74", + "nodeType": "YulIdentifier", + "src": "52214:3:74" + }, + "nativeSrc": "52214:20:74", + "nodeType": "YulFunctionCall", + "src": "52214:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "52188:6:74", + "nodeType": "YulIdentifier", + "src": "52188:6:74" + }, + "nativeSrc": "52188:47:74", + "nodeType": "YulFunctionCall", + "src": "52188:47:74" + }, + "nativeSrc": "52188:47:74", + "nodeType": "YulExpressionStatement", + "src": "52188:47:74" + }, + { + "nativeSrc": "52244:139:74", + "nodeType": "YulAssignment", + "src": "52244:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "52378:4:74", + "nodeType": "YulIdentifier", + "src": "52378:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d_to_t_string_memory_ptr_fromStack", + "nativeSrc": "52252:124:74", + "nodeType": "YulIdentifier", + "src": "52252:124:74" + }, + "nativeSrc": "52252:131:74", + "nodeType": "YulFunctionCall", + "src": "52252:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "52244:4:74", + "nodeType": "YulIdentifier", + "src": "52244:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "51971:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "52122:9:74", + "nodeType": "YulTypedName", + "src": "52122:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "52137:4:74", + "nodeType": "YulTypedName", + "src": "52137:4:74", + "type": "" + } + ], + "src": "51971:419:74" + }, + { + "body": { + "nativeSrc": "52502:131:74", + "nodeType": "YulBlock", + "src": "52502:131:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "52524:6:74", + "nodeType": "YulIdentifier", + "src": "52524:6:74" + }, + { + "kind": "number", + "nativeSrc": "52532:1:74", + "nodeType": "YulLiteral", + "src": "52532:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52520:3:74", + "nodeType": "YulIdentifier", + "src": "52520:3:74" + }, + "nativeSrc": "52520:14:74", + "nodeType": "YulFunctionCall", + "src": "52520:14:74" + }, + { + "hexValue": "455243313135353a207472616e736665722063616c6c6572206973206e6f7420", + "kind": "string", + "nativeSrc": "52536:34:74", + "nodeType": "YulLiteral", + "src": "52536:34:74", + "type": "", + "value": "ERC1155: transfer caller is not " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "52513:6:74", + "nodeType": "YulIdentifier", + "src": "52513:6:74" + }, + "nativeSrc": "52513:58:74", + "nodeType": "YulFunctionCall", + "src": "52513:58:74" + }, + "nativeSrc": "52513:58:74", + "nodeType": "YulExpressionStatement", + "src": "52513:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "52592:6:74", + "nodeType": "YulIdentifier", + "src": "52592:6:74" + }, + { + "kind": "number", + "nativeSrc": "52600:2:74", + "nodeType": "YulLiteral", + "src": "52600:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52588:3:74", + "nodeType": "YulIdentifier", + "src": "52588:3:74" + }, + "nativeSrc": "52588:15:74", + "nodeType": "YulFunctionCall", + "src": "52588:15:74" + }, + { + "hexValue": "6f776e6572206e6f7220617070726f766564", + "kind": "string", + "nativeSrc": "52605:20:74", + "nodeType": "YulLiteral", + "src": "52605:20:74", + "type": "", + "value": "owner nor approved" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "52581:6:74", + "nodeType": "YulIdentifier", + "src": "52581:6:74" + }, + "nativeSrc": "52581:45:74", + "nodeType": "YulFunctionCall", + "src": "52581:45:74" + }, + "nativeSrc": "52581:45:74", + "nodeType": "YulExpressionStatement", + "src": "52581:45:74" + } + ] + }, + "name": "store_literal_in_memory_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686", + "nativeSrc": "52396:237:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "52494:6:74", + "nodeType": "YulTypedName", + "src": "52494:6:74", + "type": "" + } + ], + "src": "52396:237:74" + }, + { + "body": { + "nativeSrc": "52785:220:74", + "nodeType": "YulBlock", + "src": "52785:220:74", + "statements": [ + { + "nativeSrc": "52795:74:74", + "nodeType": "YulAssignment", + "src": "52795:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "52861:3:74", + "nodeType": "YulIdentifier", + "src": "52861:3:74" + }, + { + "kind": "number", + "nativeSrc": "52866:2:74", + "nodeType": "YulLiteral", + "src": "52866:2:74", + "type": "", + "value": "50" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "52802:58:74", + "nodeType": "YulIdentifier", + "src": "52802:58:74" + }, + "nativeSrc": "52802:67:74", + "nodeType": "YulFunctionCall", + "src": "52802:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "52795:3:74", + "nodeType": "YulIdentifier", + "src": "52795:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "52967:3:74", + "nodeType": "YulIdentifier", + "src": "52967:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686", + "nativeSrc": "52878:88:74", + "nodeType": "YulIdentifier", + "src": "52878:88:74" + }, + "nativeSrc": "52878:93:74", + "nodeType": "YulFunctionCall", + "src": "52878:93:74" + }, + "nativeSrc": "52878:93:74", + "nodeType": "YulExpressionStatement", + "src": "52878:93:74" + }, + { + "nativeSrc": "52980:19:74", + "nodeType": "YulAssignment", + "src": "52980:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "52991:3:74", + "nodeType": "YulIdentifier", + "src": "52991:3:74" + }, + { + "kind": "number", + "nativeSrc": "52996:2:74", + "nodeType": "YulLiteral", + "src": "52996:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52987:3:74", + "nodeType": "YulIdentifier", + "src": "52987:3:74" + }, + "nativeSrc": "52987:12:74", + "nodeType": "YulFunctionCall", + "src": "52987:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "52980:3:74", + "nodeType": "YulIdentifier", + "src": "52980:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686_to_t_string_memory_ptr_fromStack", + "nativeSrc": "52639:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "52773:3:74", + "nodeType": "YulTypedName", + "src": "52773:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "52781:3:74", + "nodeType": "YulTypedName", + "src": "52781:3:74", + "type": "" + } + ], + "src": "52639:366:74" + }, + { + "body": { + "nativeSrc": "53182:248:74", + "nodeType": "YulBlock", + "src": "53182:248:74", + "statements": [ + { + "nativeSrc": "53192:26:74", + "nodeType": "YulAssignment", + "src": "53192:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "53204:9:74", + "nodeType": "YulIdentifier", + "src": "53204:9:74" + }, + { + "kind": "number", + "nativeSrc": "53215:2:74", + "nodeType": "YulLiteral", + "src": "53215:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "53200:3:74", + "nodeType": "YulIdentifier", + "src": "53200:3:74" + }, + "nativeSrc": "53200:18:74", + "nodeType": "YulFunctionCall", + "src": "53200:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "53192:4:74", + "nodeType": "YulIdentifier", + "src": "53192:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "53239:9:74", + "nodeType": "YulIdentifier", + "src": "53239:9:74" + }, + { + "kind": "number", + "nativeSrc": "53250:1:74", + "nodeType": "YulLiteral", + "src": "53250:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "53235:3:74", + "nodeType": "YulIdentifier", + "src": "53235:3:74" + }, + "nativeSrc": "53235:17:74", + "nodeType": "YulFunctionCall", + "src": "53235:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "53258:4:74", + "nodeType": "YulIdentifier", + "src": "53258:4:74" + }, + { + "name": "headStart", + "nativeSrc": "53264:9:74", + "nodeType": "YulIdentifier", + "src": "53264:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "53254:3:74", + "nodeType": "YulIdentifier", + "src": "53254:3:74" + }, + "nativeSrc": "53254:20:74", + "nodeType": "YulFunctionCall", + "src": "53254:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "53228:6:74", + "nodeType": "YulIdentifier", + "src": "53228:6:74" + }, + "nativeSrc": "53228:47:74", + "nodeType": "YulFunctionCall", + "src": "53228:47:74" + }, + "nativeSrc": "53228:47:74", + "nodeType": "YulExpressionStatement", + "src": "53228:47:74" + }, + { + "nativeSrc": "53284:139:74", + "nodeType": "YulAssignment", + "src": "53284:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "53418:4:74", + "nodeType": "YulIdentifier", + "src": "53418:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686_to_t_string_memory_ptr_fromStack", + "nativeSrc": "53292:124:74", + "nodeType": "YulIdentifier", + "src": "53292:124:74" + }, + "nativeSrc": "53292:131:74", + "nodeType": "YulFunctionCall", + "src": "53292:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "53284:4:74", + "nodeType": "YulIdentifier", + "src": "53284:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "53011:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "53162:9:74", + "nodeType": "YulTypedName", + "src": "53162:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "53177:4:74", + "nodeType": "YulTypedName", + "src": "53177:4:74", + "type": "" + } + ], + "src": "53011:419:74" + }, + { + "body": { + "nativeSrc": "53464:152:74", + "nodeType": "YulBlock", + "src": "53464:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "53481:1:74", + "nodeType": "YulLiteral", + "src": "53481:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "53484:77:74", + "nodeType": "YulLiteral", + "src": "53484:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "53474:6:74", + "nodeType": "YulIdentifier", + "src": "53474:6:74" + }, + "nativeSrc": "53474:88:74", + "nodeType": "YulFunctionCall", + "src": "53474:88:74" + }, + "nativeSrc": "53474:88:74", + "nodeType": "YulExpressionStatement", + "src": "53474:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "53578:1:74", + "nodeType": "YulLiteral", + "src": "53578:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "53581:4:74", + "nodeType": "YulLiteral", + "src": "53581:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "53571:6:74", + "nodeType": "YulIdentifier", + "src": "53571:6:74" + }, + "nativeSrc": "53571:15:74", + "nodeType": "YulFunctionCall", + "src": "53571:15:74" + }, + "nativeSrc": "53571:15:74", + "nodeType": "YulExpressionStatement", + "src": "53571:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "53602:1:74", + "nodeType": "YulLiteral", + "src": "53602:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "53605:4:74", + "nodeType": "YulLiteral", + "src": "53605:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "53595:6:74", + "nodeType": "YulIdentifier", + "src": "53595:6:74" + }, + "nativeSrc": "53595:15:74", + "nodeType": "YulFunctionCall", + "src": "53595:15:74" + }, + "nativeSrc": "53595:15:74", + "nodeType": "YulExpressionStatement", + "src": "53595:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "53436:180:74", + "nodeType": "YulFunctionDefinition", + "src": "53436:180:74" + }, + { + "body": { + "nativeSrc": "53728:123:74", + "nodeType": "YulBlock", + "src": "53728:123:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "53750:6:74", + "nodeType": "YulIdentifier", + "src": "53750:6:74" + }, + { + "kind": "number", + "nativeSrc": "53758:1:74", + "nodeType": "YulLiteral", + "src": "53758:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "53746:3:74", + "nodeType": "YulIdentifier", + "src": "53746:3:74" + }, + "nativeSrc": "53746:14:74", + "nodeType": "YulFunctionCall", + "src": "53746:14:74" + }, + { + "hexValue": "455243313135353a20696e73756666696369656e742062616c616e636520666f", + "kind": "string", + "nativeSrc": "53762:34:74", + "nodeType": "YulLiteral", + "src": "53762:34:74", + "type": "", + "value": "ERC1155: insufficient balance fo" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "53739:6:74", + "nodeType": "YulIdentifier", + "src": "53739:6:74" + }, + "nativeSrc": "53739:58:74", + "nodeType": "YulFunctionCall", + "src": "53739:58:74" + }, + "nativeSrc": "53739:58:74", + "nodeType": "YulExpressionStatement", + "src": "53739:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "53818:6:74", + "nodeType": "YulIdentifier", + "src": "53818:6:74" + }, + { + "kind": "number", + "nativeSrc": "53826:2:74", + "nodeType": "YulLiteral", + "src": "53826:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "53814:3:74", + "nodeType": "YulIdentifier", + "src": "53814:3:74" + }, + "nativeSrc": "53814:15:74", + "nodeType": "YulFunctionCall", + "src": "53814:15:74" + }, + { + "hexValue": "72207472616e73666572", + "kind": "string", + "nativeSrc": "53831:12:74", + "nodeType": "YulLiteral", + "src": "53831:12:74", + "type": "", + "value": "r transfer" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "53807:6:74", + "nodeType": "YulIdentifier", + "src": "53807:6:74" + }, + "nativeSrc": "53807:37:74", + "nodeType": "YulFunctionCall", + "src": "53807:37:74" + }, + "nativeSrc": "53807:37:74", + "nodeType": "YulExpressionStatement", + "src": "53807:37:74" + } + ] + }, + "name": "store_literal_in_memory_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "nativeSrc": "53622:229:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "53720:6:74", + "nodeType": "YulTypedName", + "src": "53720:6:74", + "type": "" + } + ], + "src": "53622:229:74" + }, + { + "body": { + "nativeSrc": "54003:220:74", + "nodeType": "YulBlock", + "src": "54003:220:74", + "statements": [ + { + "nativeSrc": "54013:74:74", + "nodeType": "YulAssignment", + "src": "54013:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "54079:3:74", + "nodeType": "YulIdentifier", + "src": "54079:3:74" + }, + { + "kind": "number", + "nativeSrc": "54084:2:74", + "nodeType": "YulLiteral", + "src": "54084:2:74", + "type": "", + "value": "42" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "54020:58:74", + "nodeType": "YulIdentifier", + "src": "54020:58:74" + }, + "nativeSrc": "54020:67:74", + "nodeType": "YulFunctionCall", + "src": "54020:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "54013:3:74", + "nodeType": "YulIdentifier", + "src": "54013:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "54185:3:74", + "nodeType": "YulIdentifier", + "src": "54185:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf", + "nativeSrc": "54096:88:74", + "nodeType": "YulIdentifier", + "src": "54096:88:74" + }, + "nativeSrc": "54096:93:74", + "nodeType": "YulFunctionCall", + "src": "54096:93:74" + }, + "nativeSrc": "54096:93:74", + "nodeType": "YulExpressionStatement", + "src": "54096:93:74" + }, + { + "nativeSrc": "54198:19:74", + "nodeType": "YulAssignment", + "src": "54198:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "54209:3:74", + "nodeType": "YulIdentifier", + "src": "54209:3:74" + }, + { + "kind": "number", + "nativeSrc": "54214:2:74", + "nodeType": "YulLiteral", + "src": "54214:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "54205:3:74", + "nodeType": "YulIdentifier", + "src": "54205:3:74" + }, + "nativeSrc": "54205:12:74", + "nodeType": "YulFunctionCall", + "src": "54205:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "54198:3:74", + "nodeType": "YulIdentifier", + "src": "54198:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf_to_t_string_memory_ptr_fromStack", + "nativeSrc": "53857:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "53991:3:74", + "nodeType": "YulTypedName", + "src": "53991:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "53999:3:74", + "nodeType": "YulTypedName", + "src": "53999:3:74", + "type": "" + } + ], + "src": "53857:366:74" + }, + { + "body": { + "nativeSrc": "54400:248:74", + "nodeType": "YulBlock", + "src": "54400:248:74", + "statements": [ + { + "nativeSrc": "54410:26:74", + "nodeType": "YulAssignment", + "src": "54410:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "54422:9:74", + "nodeType": "YulIdentifier", + "src": "54422:9:74" + }, + { + "kind": "number", + "nativeSrc": "54433:2:74", + "nodeType": "YulLiteral", + "src": "54433:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "54418:3:74", + "nodeType": "YulIdentifier", + "src": "54418:3:74" + }, + "nativeSrc": "54418:18:74", + "nodeType": "YulFunctionCall", + "src": "54418:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "54410:4:74", + "nodeType": "YulIdentifier", + "src": "54410:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "54457:9:74", + "nodeType": "YulIdentifier", + "src": "54457:9:74" + }, + { + "kind": "number", + "nativeSrc": "54468:1:74", + "nodeType": "YulLiteral", + "src": "54468:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "54453:3:74", + "nodeType": "YulIdentifier", + "src": "54453:3:74" + }, + "nativeSrc": "54453:17:74", + "nodeType": "YulFunctionCall", + "src": "54453:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "54476:4:74", + "nodeType": "YulIdentifier", + "src": "54476:4:74" + }, + { + "name": "headStart", + "nativeSrc": "54482:9:74", + "nodeType": "YulIdentifier", + "src": "54482:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "54472:3:74", + "nodeType": "YulIdentifier", + "src": "54472:3:74" + }, + "nativeSrc": "54472:20:74", + "nodeType": "YulFunctionCall", + "src": "54472:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "54446:6:74", + "nodeType": "YulIdentifier", + "src": "54446:6:74" + }, + "nativeSrc": "54446:47:74", + "nodeType": "YulFunctionCall", + "src": "54446:47:74" + }, + "nativeSrc": "54446:47:74", + "nodeType": "YulExpressionStatement", + "src": "54446:47:74" + }, + { + "nativeSrc": "54502:139:74", + "nodeType": "YulAssignment", + "src": "54502:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "54636:4:74", + "nodeType": "YulIdentifier", + "src": "54636:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf_to_t_string_memory_ptr_fromStack", + "nativeSrc": "54510:124:74", + "nodeType": "YulIdentifier", + "src": "54510:124:74" + }, + "nativeSrc": "54510:131:74", + "nodeType": "YulFunctionCall", + "src": "54510:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "54502:4:74", + "nodeType": "YulIdentifier", + "src": "54502:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "54229:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "54380:9:74", + "nodeType": "YulTypedName", + "src": "54380:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "54395:4:74", + "nodeType": "YulTypedName", + "src": "54395:4:74", + "type": "" + } + ], + "src": "54229:419:74" + }, + { + "body": { + "nativeSrc": "54880:408:74", + "nodeType": "YulBlock", + "src": "54880:408:74", + "statements": [ + { + "nativeSrc": "54890:26:74", + "nodeType": "YulAssignment", + "src": "54890:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "54902:9:74", + "nodeType": "YulIdentifier", + "src": "54902:9:74" + }, + { + "kind": "number", + "nativeSrc": "54913:2:74", + "nodeType": "YulLiteral", + "src": "54913:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "54898:3:74", + "nodeType": "YulIdentifier", + "src": "54898:3:74" + }, + "nativeSrc": "54898:18:74", + "nodeType": "YulFunctionCall", + "src": "54898:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "54890:4:74", + "nodeType": "YulIdentifier", + "src": "54890:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "54937:9:74", + "nodeType": "YulIdentifier", + "src": "54937:9:74" + }, + { + "kind": "number", + "nativeSrc": "54948:1:74", + "nodeType": "YulLiteral", + "src": "54948:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "54933:3:74", + "nodeType": "YulIdentifier", + "src": "54933:3:74" + }, + "nativeSrc": "54933:17:74", + "nodeType": "YulFunctionCall", + "src": "54933:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "54956:4:74", + "nodeType": "YulIdentifier", + "src": "54956:4:74" + }, + { + "name": "headStart", + "nativeSrc": "54962:9:74", + "nodeType": "YulIdentifier", + "src": "54962:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "54952:3:74", + "nodeType": "YulIdentifier", + "src": "54952:3:74" + }, + "nativeSrc": "54952:20:74", + "nodeType": "YulFunctionCall", + "src": "54952:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "54926:6:74", + "nodeType": "YulIdentifier", + "src": "54926:6:74" + }, + "nativeSrc": "54926:47:74", + "nodeType": "YulFunctionCall", + "src": "54926:47:74" + }, + "nativeSrc": "54926:47:74", + "nodeType": "YulExpressionStatement", + "src": "54926:47:74" + }, + { + "nativeSrc": "54982:116:74", + "nodeType": "YulAssignment", + "src": "54982:116:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "55084:6:74", + "nodeType": "YulIdentifier", + "src": "55084:6:74" + }, + { + "name": "tail", + "nativeSrc": "55093:4:74", + "nodeType": "YulIdentifier", + "src": "55093:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "54990:93:74", + "nodeType": "YulIdentifier", + "src": "54990:93:74" + }, + "nativeSrc": "54990:108:74", + "nodeType": "YulFunctionCall", + "src": "54990:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "54982:4:74", + "nodeType": "YulIdentifier", + "src": "54982:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "55119:9:74", + "nodeType": "YulIdentifier", + "src": "55119:9:74" + }, + { + "kind": "number", + "nativeSrc": "55130:2:74", + "nodeType": "YulLiteral", + "src": "55130:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "55115:3:74", + "nodeType": "YulIdentifier", + "src": "55115:3:74" + }, + "nativeSrc": "55115:18:74", + "nodeType": "YulFunctionCall", + "src": "55115:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "55139:4:74", + "nodeType": "YulIdentifier", + "src": "55139:4:74" + }, + { + "name": "headStart", + "nativeSrc": "55145:9:74", + "nodeType": "YulIdentifier", + "src": "55145:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "55135:3:74", + "nodeType": "YulIdentifier", + "src": "55135:3:74" + }, + "nativeSrc": "55135:20:74", + "nodeType": "YulFunctionCall", + "src": "55135:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "55108:6:74", + "nodeType": "YulIdentifier", + "src": "55108:6:74" + }, + "nativeSrc": "55108:48:74", + "nodeType": "YulFunctionCall", + "src": "55108:48:74" + }, + "nativeSrc": "55108:48:74", + "nodeType": "YulExpressionStatement", + "src": "55108:48:74" + }, + { + "nativeSrc": "55165:116:74", + "nodeType": "YulAssignment", + "src": "55165:116:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "55267:6:74", + "nodeType": "YulIdentifier", + "src": "55267:6:74" + }, + { + "name": "tail", + "nativeSrc": "55276:4:74", + "nodeType": "YulIdentifier", + "src": "55276:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "55173:93:74", + "nodeType": "YulIdentifier", + "src": "55173:93:74" + }, + "nativeSrc": "55173:108:74", + "nodeType": "YulFunctionCall", + "src": "55173:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "55165:4:74", + "nodeType": "YulIdentifier", + "src": "55165:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "54654:634:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "54844:9:74", + "nodeType": "YulTypedName", + "src": "54844:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "54856:6:74", + "nodeType": "YulTypedName", + "src": "54856:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "54864:6:74", + "nodeType": "YulTypedName", + "src": "54864:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "54875:4:74", + "nodeType": "YulTypedName", + "src": "54875:4:74", + "type": "" + } + ], + "src": "54654:634:74" + }, + { + "body": { + "nativeSrc": "55357:80:74", + "nodeType": "YulBlock", + "src": "55357:80:74", + "statements": [ + { + "nativeSrc": "55367:22:74", + "nodeType": "YulAssignment", + "src": "55367:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "55382:6:74", + "nodeType": "YulIdentifier", + "src": "55382:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "55376:5:74", + "nodeType": "YulIdentifier", + "src": "55376:5:74" + }, + "nativeSrc": "55376:13:74", + "nodeType": "YulFunctionCall", + "src": "55376:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "55367:5:74", + "nodeType": "YulIdentifier", + "src": "55367:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "55425:5:74", + "nodeType": "YulIdentifier", + "src": "55425:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "55398:26:74", + "nodeType": "YulIdentifier", + "src": "55398:26:74" + }, + "nativeSrc": "55398:33:74", + "nodeType": "YulFunctionCall", + "src": "55398:33:74" + }, + "nativeSrc": "55398:33:74", + "nodeType": "YulExpressionStatement", + "src": "55398:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "55294:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "55335:6:74", + "nodeType": "YulTypedName", + "src": "55335:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "55343:3:74", + "nodeType": "YulTypedName", + "src": "55343:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "55351:5:74", + "nodeType": "YulTypedName", + "src": "55351:5:74", + "type": "" + } + ], + "src": "55294:143:74" + }, + { + "body": { + "nativeSrc": "55520:274:74", + "nodeType": "YulBlock", + "src": "55520:274:74", + "statements": [ + { + "body": { + "nativeSrc": "55566:83:74", + "nodeType": "YulBlock", + "src": "55566:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "55568:77:74", + "nodeType": "YulIdentifier", + "src": "55568:77:74" + }, + "nativeSrc": "55568:79:74", + "nodeType": "YulFunctionCall", + "src": "55568:79:74" + }, + "nativeSrc": "55568:79:74", + "nodeType": "YulExpressionStatement", + "src": "55568:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "55541:7:74", + "nodeType": "YulIdentifier", + "src": "55541:7:74" + }, + { + "name": "headStart", + "nativeSrc": "55550:9:74", + "nodeType": "YulIdentifier", + "src": "55550:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "55537:3:74", + "nodeType": "YulIdentifier", + "src": "55537:3:74" + }, + "nativeSrc": "55537:23:74", + "nodeType": "YulFunctionCall", + "src": "55537:23:74" + }, + { + "kind": "number", + "nativeSrc": "55562:2:74", + "nodeType": "YulLiteral", + "src": "55562:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "55533:3:74", + "nodeType": "YulIdentifier", + "src": "55533:3:74" + }, + "nativeSrc": "55533:32:74", + "nodeType": "YulFunctionCall", + "src": "55533:32:74" + }, + "nativeSrc": "55530:119:74", + "nodeType": "YulIf", + "src": "55530:119:74" + }, + { + "nativeSrc": "55659:128:74", + "nodeType": "YulBlock", + "src": "55659:128:74", + "statements": [ + { + "nativeSrc": "55674:15:74", + "nodeType": "YulVariableDeclaration", + "src": "55674:15:74", + "value": { + "kind": "number", + "nativeSrc": "55688:1:74", + "nodeType": "YulLiteral", + "src": "55688:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "55678:6:74", + "nodeType": "YulTypedName", + "src": "55678:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "55703:74:74", + "nodeType": "YulAssignment", + "src": "55703:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "55749:9:74", + "nodeType": "YulIdentifier", + "src": "55749:9:74" + }, + { + "name": "offset", + "nativeSrc": "55760:6:74", + "nodeType": "YulIdentifier", + "src": "55760:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "55745:3:74", + "nodeType": "YulIdentifier", + "src": "55745:3:74" + }, + "nativeSrc": "55745:22:74", + "nodeType": "YulFunctionCall", + "src": "55745:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "55769:7:74", + "nodeType": "YulIdentifier", + "src": "55769:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "55713:31:74", + "nodeType": "YulIdentifier", + "src": "55713:31:74" + }, + "nativeSrc": "55713:64:74", + "nodeType": "YulFunctionCall", + "src": "55713:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "55703:6:74", + "nodeType": "YulIdentifier", + "src": "55703:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "55443:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "55490:9:74", + "nodeType": "YulTypedName", + "src": "55490:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "55501:7:74", + "nodeType": "YulTypedName", + "src": "55501:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "55513:6:74", + "nodeType": "YulTypedName", + "src": "55513:6:74", + "type": "" + } + ], + "src": "55443:351:74" + }, + { + "body": { + "nativeSrc": "55906:122:74", + "nodeType": "YulBlock", + "src": "55906:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "55928:6:74", + "nodeType": "YulIdentifier", + "src": "55928:6:74" + }, + { + "kind": "number", + "nativeSrc": "55936:1:74", + "nodeType": "YulLiteral", + "src": "55936:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "55924:3:74", + "nodeType": "YulIdentifier", + "src": "55924:3:74" + }, + "nativeSrc": "55924:14:74", + "nodeType": "YulFunctionCall", + "src": "55924:14:74" + }, + { + "hexValue": "455243313135353a206163636f756e747320616e6420696473206c656e677468", + "kind": "string", + "nativeSrc": "55940:34:74", + "nodeType": "YulLiteral", + "src": "55940:34:74", + "type": "", + "value": "ERC1155: accounts and ids length" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "55917:6:74", + "nodeType": "YulIdentifier", + "src": "55917:6:74" + }, + "nativeSrc": "55917:58:74", + "nodeType": "YulFunctionCall", + "src": "55917:58:74" + }, + "nativeSrc": "55917:58:74", + "nodeType": "YulExpressionStatement", + "src": "55917:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "55996:6:74", + "nodeType": "YulIdentifier", + "src": "55996:6:74" + }, + { + "kind": "number", + "nativeSrc": "56004:2:74", + "nodeType": "YulLiteral", + "src": "56004:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "55992:3:74", + "nodeType": "YulIdentifier", + "src": "55992:3:74" + }, + "nativeSrc": "55992:15:74", + "nodeType": "YulFunctionCall", + "src": "55992:15:74" + }, + { + "hexValue": "206d69736d61746368", + "kind": "string", + "nativeSrc": "56009:11:74", + "nodeType": "YulLiteral", + "src": "56009:11:74", + "type": "", + "value": " mismatch" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "55985:6:74", + "nodeType": "YulIdentifier", + "src": "55985:6:74" + }, + "nativeSrc": "55985:36:74", + "nodeType": "YulFunctionCall", + "src": "55985:36:74" + }, + "nativeSrc": "55985:36:74", + "nodeType": "YulExpressionStatement", + "src": "55985:36:74" + } + ] + }, + "name": "store_literal_in_memory_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5", + "nativeSrc": "55800:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "55898:6:74", + "nodeType": "YulTypedName", + "src": "55898:6:74", + "type": "" + } + ], + "src": "55800:228:74" + }, + { + "body": { + "nativeSrc": "56180:220:74", + "nodeType": "YulBlock", + "src": "56180:220:74", + "statements": [ + { + "nativeSrc": "56190:74:74", + "nodeType": "YulAssignment", + "src": "56190:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "56256:3:74", + "nodeType": "YulIdentifier", + "src": "56256:3:74" + }, + { + "kind": "number", + "nativeSrc": "56261:2:74", + "nodeType": "YulLiteral", + "src": "56261:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "56197:58:74", + "nodeType": "YulIdentifier", + "src": "56197:58:74" + }, + "nativeSrc": "56197:67:74", + "nodeType": "YulFunctionCall", + "src": "56197:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "56190:3:74", + "nodeType": "YulIdentifier", + "src": "56190:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "56362:3:74", + "nodeType": "YulIdentifier", + "src": "56362:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5", + "nativeSrc": "56273:88:74", + "nodeType": "YulIdentifier", + "src": "56273:88:74" + }, + "nativeSrc": "56273:93:74", + "nodeType": "YulFunctionCall", + "src": "56273:93:74" + }, + "nativeSrc": "56273:93:74", + "nodeType": "YulExpressionStatement", + "src": "56273:93:74" + }, + { + "nativeSrc": "56375:19:74", + "nodeType": "YulAssignment", + "src": "56375:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "56386:3:74", + "nodeType": "YulIdentifier", + "src": "56386:3:74" + }, + { + "kind": "number", + "nativeSrc": "56391:2:74", + "nodeType": "YulLiteral", + "src": "56391:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "56382:3:74", + "nodeType": "YulIdentifier", + "src": "56382:3:74" + }, + "nativeSrc": "56382:12:74", + "nodeType": "YulFunctionCall", + "src": "56382:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "56375:3:74", + "nodeType": "YulIdentifier", + "src": "56375:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5_to_t_string_memory_ptr_fromStack", + "nativeSrc": "56034:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "56168:3:74", + "nodeType": "YulTypedName", + "src": "56168:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "56176:3:74", + "nodeType": "YulTypedName", + "src": "56176:3:74", + "type": "" + } + ], + "src": "56034:366:74" + }, + { + "body": { + "nativeSrc": "56577:248:74", + "nodeType": "YulBlock", + "src": "56577:248:74", + "statements": [ + { + "nativeSrc": "56587:26:74", + "nodeType": "YulAssignment", + "src": "56587:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "56599:9:74", + "nodeType": "YulIdentifier", + "src": "56599:9:74" + }, + { + "kind": "number", + "nativeSrc": "56610:2:74", + "nodeType": "YulLiteral", + "src": "56610:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "56595:3:74", + "nodeType": "YulIdentifier", + "src": "56595:3:74" + }, + "nativeSrc": "56595:18:74", + "nodeType": "YulFunctionCall", + "src": "56595:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "56587:4:74", + "nodeType": "YulIdentifier", + "src": "56587:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "56634:9:74", + "nodeType": "YulIdentifier", + "src": "56634:9:74" + }, + { + "kind": "number", + "nativeSrc": "56645:1:74", + "nodeType": "YulLiteral", + "src": "56645:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "56630:3:74", + "nodeType": "YulIdentifier", + "src": "56630:3:74" + }, + "nativeSrc": "56630:17:74", + "nodeType": "YulFunctionCall", + "src": "56630:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "56653:4:74", + "nodeType": "YulIdentifier", + "src": "56653:4:74" + }, + { + "name": "headStart", + "nativeSrc": "56659:9:74", + "nodeType": "YulIdentifier", + "src": "56659:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "56649:3:74", + "nodeType": "YulIdentifier", + "src": "56649:3:74" + }, + "nativeSrc": "56649:20:74", + "nodeType": "YulFunctionCall", + "src": "56649:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "56623:6:74", + "nodeType": "YulIdentifier", + "src": "56623:6:74" + }, + "nativeSrc": "56623:47:74", + "nodeType": "YulFunctionCall", + "src": "56623:47:74" + }, + "nativeSrc": "56623:47:74", + "nodeType": "YulExpressionStatement", + "src": "56623:47:74" + }, + { + "nativeSrc": "56679:139:74", + "nodeType": "YulAssignment", + "src": "56679:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "56813:4:74", + "nodeType": "YulIdentifier", + "src": "56813:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5_to_t_string_memory_ptr_fromStack", + "nativeSrc": "56687:124:74", + "nodeType": "YulIdentifier", + "src": "56687:124:74" + }, + "nativeSrc": "56687:131:74", + "nodeType": "YulFunctionCall", + "src": "56687:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "56679:4:74", + "nodeType": "YulIdentifier", + "src": "56679:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "56406:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "56557:9:74", + "nodeType": "YulTypedName", + "src": "56557:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "56572:4:74", + "nodeType": "YulTypedName", + "src": "56572:4:74", + "type": "" + } + ], + "src": "56406:419:74" + }, + { + "body": { + "nativeSrc": "56957:206:74", + "nodeType": "YulBlock", + "src": "56957:206:74", + "statements": [ + { + "nativeSrc": "56967:26:74", + "nodeType": "YulAssignment", + "src": "56967:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "56979:9:74", + "nodeType": "YulIdentifier", + "src": "56979:9:74" + }, + { + "kind": "number", + "nativeSrc": "56990:2:74", + "nodeType": "YulLiteral", + "src": "56990:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "56975:3:74", + "nodeType": "YulIdentifier", + "src": "56975:3:74" + }, + "nativeSrc": "56975:18:74", + "nodeType": "YulFunctionCall", + "src": "56975:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "56967:4:74", + "nodeType": "YulIdentifier", + "src": "56967:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "57047:6:74", + "nodeType": "YulIdentifier", + "src": "57047:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "57060:9:74", + "nodeType": "YulIdentifier", + "src": "57060:9:74" + }, + { + "kind": "number", + "nativeSrc": "57071:1:74", + "nodeType": "YulLiteral", + "src": "57071:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57056:3:74", + "nodeType": "YulIdentifier", + "src": "57056:3:74" + }, + "nativeSrc": "57056:17:74", + "nodeType": "YulFunctionCall", + "src": "57056:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "57003:43:74", + "nodeType": "YulIdentifier", + "src": "57003:43:74" + }, + "nativeSrc": "57003:71:74", + "nodeType": "YulFunctionCall", + "src": "57003:71:74" + }, + "nativeSrc": "57003:71:74", + "nodeType": "YulExpressionStatement", + "src": "57003:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "57128:6:74", + "nodeType": "YulIdentifier", + "src": "57128:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "57141:9:74", + "nodeType": "YulIdentifier", + "src": "57141:9:74" + }, + { + "kind": "number", + "nativeSrc": "57152:2:74", + "nodeType": "YulLiteral", + "src": "57152:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57137:3:74", + "nodeType": "YulIdentifier", + "src": "57137:3:74" + }, + "nativeSrc": "57137:18:74", + "nodeType": "YulFunctionCall", + "src": "57137:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "57084:43:74", + "nodeType": "YulIdentifier", + "src": "57084:43:74" + }, + "nativeSrc": "57084:72:74", + "nodeType": "YulFunctionCall", + "src": "57084:72:74" + }, + "nativeSrc": "57084:72:74", + "nodeType": "YulExpressionStatement", + "src": "57084:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", + "nativeSrc": "56831:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "56921:9:74", + "nodeType": "YulTypedName", + "src": "56921:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "56933:6:74", + "nodeType": "YulTypedName", + "src": "56933:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "56941:6:74", + "nodeType": "YulTypedName", + "src": "56941:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "56952:4:74", + "nodeType": "YulTypedName", + "src": "56952:4:74", + "type": "" + } + ], + "src": "56831:332:74" + }, + { + "body": { + "nativeSrc": "57229:77:74", + "nodeType": "YulBlock", + "src": "57229:77:74", + "statements": [ + { + "nativeSrc": "57239:22:74", + "nodeType": "YulAssignment", + "src": "57239:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "57254:6:74", + "nodeType": "YulIdentifier", + "src": "57254:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "57248:5:74", + "nodeType": "YulIdentifier", + "src": "57248:5:74" + }, + "nativeSrc": "57248:13:74", + "nodeType": "YulFunctionCall", + "src": "57248:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "57239:5:74", + "nodeType": "YulIdentifier", + "src": "57239:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "57294:5:74", + "nodeType": "YulIdentifier", + "src": "57294:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "57270:23:74", + "nodeType": "YulIdentifier", + "src": "57270:23:74" + }, + "nativeSrc": "57270:30:74", + "nodeType": "YulFunctionCall", + "src": "57270:30:74" + }, + "nativeSrc": "57270:30:74", + "nodeType": "YulExpressionStatement", + "src": "57270:30:74" + } + ] + }, + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "57169:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "57207:6:74", + "nodeType": "YulTypedName", + "src": "57207:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "57215:3:74", + "nodeType": "YulTypedName", + "src": "57215:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "57223:5:74", + "nodeType": "YulTypedName", + "src": "57223:5:74", + "type": "" + } + ], + "src": "57169:137:74" + }, + { + "body": { + "nativeSrc": "57386:271:74", + "nodeType": "YulBlock", + "src": "57386:271:74", + "statements": [ + { + "body": { + "nativeSrc": "57432:83:74", + "nodeType": "YulBlock", + "src": "57432:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "57434:77:74", + "nodeType": "YulIdentifier", + "src": "57434:77:74" + }, + "nativeSrc": "57434:79:74", + "nodeType": "YulFunctionCall", + "src": "57434:79:74" + }, + "nativeSrc": "57434:79:74", + "nodeType": "YulExpressionStatement", + "src": "57434:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "57407:7:74", + "nodeType": "YulIdentifier", + "src": "57407:7:74" + }, + { + "name": "headStart", + "nativeSrc": "57416:9:74", + "nodeType": "YulIdentifier", + "src": "57416:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "57403:3:74", + "nodeType": "YulIdentifier", + "src": "57403:3:74" + }, + "nativeSrc": "57403:23:74", + "nodeType": "YulFunctionCall", + "src": "57403:23:74" + }, + { + "kind": "number", + "nativeSrc": "57428:2:74", + "nodeType": "YulLiteral", + "src": "57428:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "57399:3:74", + "nodeType": "YulIdentifier", + "src": "57399:3:74" + }, + "nativeSrc": "57399:32:74", + "nodeType": "YulFunctionCall", + "src": "57399:32:74" + }, + "nativeSrc": "57396:119:74", + "nodeType": "YulIf", + "src": "57396:119:74" + }, + { + "nativeSrc": "57525:125:74", + "nodeType": "YulBlock", + "src": "57525:125:74", + "statements": [ + { + "nativeSrc": "57540:15:74", + "nodeType": "YulVariableDeclaration", + "src": "57540:15:74", + "value": { + "kind": "number", + "nativeSrc": "57554:1:74", + "nodeType": "YulLiteral", + "src": "57554:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "57544:6:74", + "nodeType": "YulTypedName", + "src": "57544:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "57569:71:74", + "nodeType": "YulAssignment", + "src": "57569:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "57612:9:74", + "nodeType": "YulIdentifier", + "src": "57612:9:74" + }, + { + "name": "offset", + "nativeSrc": "57623:6:74", + "nodeType": "YulIdentifier", + "src": "57623:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57608:3:74", + "nodeType": "YulIdentifier", + "src": "57608:3:74" + }, + "nativeSrc": "57608:22:74", + "nodeType": "YulFunctionCall", + "src": "57608:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "57632:7:74", + "nodeType": "YulIdentifier", + "src": "57632:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool_fromMemory", + "nativeSrc": "57579:28:74", + "nodeType": "YulIdentifier", + "src": "57579:28:74" + }, + "nativeSrc": "57579:61:74", + "nodeType": "YulFunctionCall", + "src": "57579:61:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "57569:6:74", + "nodeType": "YulIdentifier", + "src": "57569:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nativeSrc": "57312:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "57356:9:74", + "nodeType": "YulTypedName", + "src": "57356:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "57367:7:74", + "nodeType": "YulTypedName", + "src": "57367:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "57379:6:74", + "nodeType": "YulTypedName", + "src": "57379:6:74", + "type": "" + } + ], + "src": "57312:345:74" + }, + { + "body": { + "nativeSrc": "57817:288:74", + "nodeType": "YulBlock", + "src": "57817:288:74", + "statements": [ + { + "nativeSrc": "57827:26:74", + "nodeType": "YulAssignment", + "src": "57827:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "57839:9:74", + "nodeType": "YulIdentifier", + "src": "57839:9:74" + }, + { + "kind": "number", + "nativeSrc": "57850:2:74", + "nodeType": "YulLiteral", + "src": "57850:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57835:3:74", + "nodeType": "YulIdentifier", + "src": "57835:3:74" + }, + "nativeSrc": "57835:18:74", + "nodeType": "YulFunctionCall", + "src": "57835:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "57827:4:74", + "nodeType": "YulIdentifier", + "src": "57827:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "57907:6:74", + "nodeType": "YulIdentifier", + "src": "57907:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "57920:9:74", + "nodeType": "YulIdentifier", + "src": "57920:9:74" + }, + { + "kind": "number", + "nativeSrc": "57931:1:74", + "nodeType": "YulLiteral", + "src": "57931:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57916:3:74", + "nodeType": "YulIdentifier", + "src": "57916:3:74" + }, + "nativeSrc": "57916:17:74", + "nodeType": "YulFunctionCall", + "src": "57916:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "57863:43:74", + "nodeType": "YulIdentifier", + "src": "57863:43:74" + }, + "nativeSrc": "57863:71:74", + "nodeType": "YulFunctionCall", + "src": "57863:71:74" + }, + "nativeSrc": "57863:71:74", + "nodeType": "YulExpressionStatement", + "src": "57863:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "57988:6:74", + "nodeType": "YulIdentifier", + "src": "57988:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "58001:9:74", + "nodeType": "YulIdentifier", + "src": "58001:9:74" + }, + { + "kind": "number", + "nativeSrc": "58012:2:74", + "nodeType": "YulLiteral", + "src": "58012:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "57997:3:74", + "nodeType": "YulIdentifier", + "src": "57997:3:74" + }, + "nativeSrc": "57997:18:74", + "nodeType": "YulFunctionCall", + "src": "57997:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "57944:43:74", + "nodeType": "YulIdentifier", + "src": "57944:43:74" + }, + "nativeSrc": "57944:72:74", + "nodeType": "YulFunctionCall", + "src": "57944:72:74" + }, + "nativeSrc": "57944:72:74", + "nodeType": "YulExpressionStatement", + "src": "57944:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "58070:6:74", + "nodeType": "YulIdentifier", + "src": "58070:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "58083:9:74", + "nodeType": "YulIdentifier", + "src": "58083:9:74" + }, + { + "kind": "number", + "nativeSrc": "58094:2:74", + "nodeType": "YulLiteral", + "src": "58094:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "58079:3:74", + "nodeType": "YulIdentifier", + "src": "58079:3:74" + }, + "nativeSrc": "58079:18:74", + "nodeType": "YulFunctionCall", + "src": "58079:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "58026:43:74", + "nodeType": "YulIdentifier", + "src": "58026:43:74" + }, + "nativeSrc": "58026:72:74", + "nodeType": "YulFunctionCall", + "src": "58026:72:74" + }, + "nativeSrc": "58026:72:74", + "nodeType": "YulExpressionStatement", + "src": "58026:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_uint256__to_t_address_t_address_t_uint256__fromStack_reversed", + "nativeSrc": "57663:442:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "57773:9:74", + "nodeType": "YulTypedName", + "src": "57773:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "57785:6:74", + "nodeType": "YulTypedName", + "src": "57785:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "57793:6:74", + "nodeType": "YulTypedName", + "src": "57793:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "57801:6:74", + "nodeType": "YulTypedName", + "src": "57801:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "57812:4:74", + "nodeType": "YulTypedName", + "src": "57812:4:74", + "type": "" + } + ], + "src": "57663:442:74" + }, + { + "body": { + "nativeSrc": "58224:34:74", + "nodeType": "YulBlock", + "src": "58224:34:74", + "statements": [ + { + "nativeSrc": "58234:18:74", + "nodeType": "YulAssignment", + "src": "58234:18:74", + "value": { + "name": "pos", + "nativeSrc": "58249:3:74", + "nodeType": "YulIdentifier", + "src": "58249:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "58234:11:74", + "nodeType": "YulIdentifier", + "src": "58234:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "58111:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "58196:3:74", + "nodeType": "YulTypedName", + "src": "58196:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "58201:6:74", + "nodeType": "YulTypedName", + "src": "58201:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "58212:11:74", + "nodeType": "YulTypedName", + "src": "58212:11:74", + "type": "" + } + ], + "src": "58111:147:74" + }, + { + "body": { + "nativeSrc": "58404:209:74", + "nodeType": "YulBlock", + "src": "58404:209:74", + "statements": [ + { + "nativeSrc": "58414:95:74", + "nodeType": "YulAssignment", + "src": "58414:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "58497:3:74", + "nodeType": "YulIdentifier", + "src": "58497:3:74" + }, + { + "name": "length", + "nativeSrc": "58502:6:74", + "nodeType": "YulIdentifier", + "src": "58502:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "58421:75:74", + "nodeType": "YulIdentifier", + "src": "58421:75:74" + }, + "nativeSrc": "58421:88:74", + "nodeType": "YulFunctionCall", + "src": "58421:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "58414:3:74", + "nodeType": "YulIdentifier", + "src": "58414:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "58556:5:74", + "nodeType": "YulIdentifier", + "src": "58556:5:74" + }, + { + "name": "pos", + "nativeSrc": "58563:3:74", + "nodeType": "YulIdentifier", + "src": "58563:3:74" + }, + { + "name": "length", + "nativeSrc": "58568:6:74", + "nodeType": "YulIdentifier", + "src": "58568:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "58519:36:74", + "nodeType": "YulIdentifier", + "src": "58519:36:74" + }, + "nativeSrc": "58519:56:74", + "nodeType": "YulFunctionCall", + "src": "58519:56:74" + }, + "nativeSrc": "58519:56:74", + "nodeType": "YulExpressionStatement", + "src": "58519:56:74" + }, + { + "nativeSrc": "58584:23:74", + "nodeType": "YulAssignment", + "src": "58584:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "58595:3:74", + "nodeType": "YulIdentifier", + "src": "58595:3:74" + }, + { + "name": "length", + "nativeSrc": "58600:6:74", + "nodeType": "YulIdentifier", + "src": "58600:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "58591:3:74", + "nodeType": "YulIdentifier", + "src": "58591:3:74" + }, + "nativeSrc": "58591:16:74", + "nodeType": "YulFunctionCall", + "src": "58591:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "58584:3:74", + "nodeType": "YulIdentifier", + "src": "58584:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "58286:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "58377:5:74", + "nodeType": "YulTypedName", + "src": "58377:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "58384:6:74", + "nodeType": "YulTypedName", + "src": "58384:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "58392:3:74", + "nodeType": "YulTypedName", + "src": "58392:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "58400:3:74", + "nodeType": "YulTypedName", + "src": "58400:3:74", + "type": "" + } + ], + "src": "58286:327:74" + }, + { + "body": { + "nativeSrc": "58763:147:74", + "nodeType": "YulBlock", + "src": "58763:147:74", + "statements": [ + { + "nativeSrc": "58774:110:74", + "nodeType": "YulAssignment", + "src": "58774:110:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "58863:6:74", + "nodeType": "YulIdentifier", + "src": "58863:6:74" + }, + { + "name": "value1", + "nativeSrc": "58871:6:74", + "nodeType": "YulIdentifier", + "src": "58871:6:74" + }, + { + "name": "pos", + "nativeSrc": "58880:3:74", + "nodeType": "YulIdentifier", + "src": "58880:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "58781:81:74", + "nodeType": "YulIdentifier", + "src": "58781:81:74" + }, + "nativeSrc": "58781:103:74", + "nodeType": "YulFunctionCall", + "src": "58781:103:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "58774:3:74", + "nodeType": "YulIdentifier", + "src": "58774:3:74" + } + ] + }, + { + "nativeSrc": "58894:10:74", + "nodeType": "YulAssignment", + "src": "58894:10:74", + "value": { + "name": "pos", + "nativeSrc": "58901:3:74", + "nodeType": "YulIdentifier", + "src": "58901:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "58894:3:74", + "nodeType": "YulIdentifier", + "src": "58894:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "58619:291:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "58734:3:74", + "nodeType": "YulTypedName", + "src": "58734:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "58740:6:74", + "nodeType": "YulTypedName", + "src": "58740:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "58748:6:74", + "nodeType": "YulTypedName", + "src": "58748:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "58759:3:74", + "nodeType": "YulTypedName", + "src": "58759:3:74", + "type": "" + } + ], + "src": "58619:291:74" + }, + { + "body": { + "nativeSrc": "59042:206:74", + "nodeType": "YulBlock", + "src": "59042:206:74", + "statements": [ + { + "nativeSrc": "59052:26:74", + "nodeType": "YulAssignment", + "src": "59052:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "59064:9:74", + "nodeType": "YulIdentifier", + "src": "59064:9:74" + }, + { + "kind": "number", + "nativeSrc": "59075:2:74", + "nodeType": "YulLiteral", + "src": "59075:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59060:3:74", + "nodeType": "YulIdentifier", + "src": "59060:3:74" + }, + "nativeSrc": "59060:18:74", + "nodeType": "YulFunctionCall", + "src": "59060:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "59052:4:74", + "nodeType": "YulIdentifier", + "src": "59052:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "59132:6:74", + "nodeType": "YulIdentifier", + "src": "59132:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "59145:9:74", + "nodeType": "YulIdentifier", + "src": "59145:9:74" + }, + { + "kind": "number", + "nativeSrc": "59156:1:74", + "nodeType": "YulLiteral", + "src": "59156:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59141:3:74", + "nodeType": "YulIdentifier", + "src": "59141:3:74" + }, + "nativeSrc": "59141:17:74", + "nodeType": "YulFunctionCall", + "src": "59141:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "59088:43:74", + "nodeType": "YulIdentifier", + "src": "59088:43:74" + }, + "nativeSrc": "59088:71:74", + "nodeType": "YulFunctionCall", + "src": "59088:71:74" + }, + "nativeSrc": "59088:71:74", + "nodeType": "YulExpressionStatement", + "src": "59088:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "59213:6:74", + "nodeType": "YulIdentifier", + "src": "59213:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "59226:9:74", + "nodeType": "YulIdentifier", + "src": "59226:9:74" + }, + { + "kind": "number", + "nativeSrc": "59237:2:74", + "nodeType": "YulLiteral", + "src": "59237:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59222:3:74", + "nodeType": "YulIdentifier", + "src": "59222:3:74" + }, + "nativeSrc": "59222:18:74", + "nodeType": "YulFunctionCall", + "src": "59222:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "59169:43:74", + "nodeType": "YulIdentifier", + "src": "59169:43:74" + }, + "nativeSrc": "59169:72:74", + "nodeType": "YulFunctionCall", + "src": "59169:72:74" + }, + "nativeSrc": "59169:72:74", + "nodeType": "YulExpressionStatement", + "src": "59169:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", + "nativeSrc": "58916:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "59006:9:74", + "nodeType": "YulTypedName", + "src": "59006:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "59018:6:74", + "nodeType": "YulTypedName", + "src": "59018:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "59026:6:74", + "nodeType": "YulTypedName", + "src": "59026:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "59037:4:74", + "nodeType": "YulTypedName", + "src": "59037:4:74", + "type": "" + } + ], + "src": "58916:332:74" + }, + { + "body": { + "nativeSrc": "59360:122:74", + "nodeType": "YulBlock", + "src": "59360:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "59382:6:74", + "nodeType": "YulIdentifier", + "src": "59382:6:74" + }, + { + "kind": "number", + "nativeSrc": "59390:1:74", + "nodeType": "YulLiteral", + "src": "59390:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59378:3:74", + "nodeType": "YulIdentifier", + "src": "59378:3:74" + }, + "nativeSrc": "59378:14:74", + "nodeType": "YulFunctionCall", + "src": "59378:14:74" + }, + { + "hexValue": "455243313135353a2073657474696e6720617070726f76616c20737461747573", + "kind": "string", + "nativeSrc": "59394:34:74", + "nodeType": "YulLiteral", + "src": "59394:34:74", + "type": "", + "value": "ERC1155: setting approval status" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "59371:6:74", + "nodeType": "YulIdentifier", + "src": "59371:6:74" + }, + "nativeSrc": "59371:58:74", + "nodeType": "YulFunctionCall", + "src": "59371:58:74" + }, + "nativeSrc": "59371:58:74", + "nodeType": "YulExpressionStatement", + "src": "59371:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "59450:6:74", + "nodeType": "YulIdentifier", + "src": "59450:6:74" + }, + { + "kind": "number", + "nativeSrc": "59458:2:74", + "nodeType": "YulLiteral", + "src": "59458:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59446:3:74", + "nodeType": "YulIdentifier", + "src": "59446:3:74" + }, + "nativeSrc": "59446:15:74", + "nodeType": "YulFunctionCall", + "src": "59446:15:74" + }, + { + "hexValue": "20666f722073656c66", + "kind": "string", + "nativeSrc": "59463:11:74", + "nodeType": "YulLiteral", + "src": "59463:11:74", + "type": "", + "value": " for self" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "59439:6:74", + "nodeType": "YulIdentifier", + "src": "59439:6:74" + }, + "nativeSrc": "59439:36:74", + "nodeType": "YulFunctionCall", + "src": "59439:36:74" + }, + "nativeSrc": "59439:36:74", + "nodeType": "YulExpressionStatement", + "src": "59439:36:74" + } + ] + }, + "name": "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "nativeSrc": "59254:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "59352:6:74", + "nodeType": "YulTypedName", + "src": "59352:6:74", + "type": "" + } + ], + "src": "59254:228:74" + }, + { + "body": { + "nativeSrc": "59634:220:74", + "nodeType": "YulBlock", + "src": "59634:220:74", + "statements": [ + { + "nativeSrc": "59644:74:74", + "nodeType": "YulAssignment", + "src": "59644:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "59710:3:74", + "nodeType": "YulIdentifier", + "src": "59710:3:74" + }, + { + "kind": "number", + "nativeSrc": "59715:2:74", + "nodeType": "YulLiteral", + "src": "59715:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "59651:58:74", + "nodeType": "YulIdentifier", + "src": "59651:58:74" + }, + "nativeSrc": "59651:67:74", + "nodeType": "YulFunctionCall", + "src": "59651:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "59644:3:74", + "nodeType": "YulIdentifier", + "src": "59644:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "59816:3:74", + "nodeType": "YulIdentifier", + "src": "59816:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2", + "nativeSrc": "59727:88:74", + "nodeType": "YulIdentifier", + "src": "59727:88:74" + }, + "nativeSrc": "59727:93:74", + "nodeType": "YulFunctionCall", + "src": "59727:93:74" + }, + "nativeSrc": "59727:93:74", + "nodeType": "YulExpressionStatement", + "src": "59727:93:74" + }, + { + "nativeSrc": "59829:19:74", + "nodeType": "YulAssignment", + "src": "59829:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "59840:3:74", + "nodeType": "YulIdentifier", + "src": "59840:3:74" + }, + { + "kind": "number", + "nativeSrc": "59845:2:74", + "nodeType": "YulLiteral", + "src": "59845:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "59836:3:74", + "nodeType": "YulIdentifier", + "src": "59836:3:74" + }, + "nativeSrc": "59836:12:74", + "nodeType": "YulFunctionCall", + "src": "59836:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "59829:3:74", + "nodeType": "YulIdentifier", + "src": "59829:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "59488:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "59622:3:74", + "nodeType": "YulTypedName", + "src": "59622:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "59630:3:74", + "nodeType": "YulTypedName", + "src": "59630:3:74", + "type": "" + } + ], + "src": "59488:366:74" + }, + { + "body": { + "nativeSrc": "60031:248:74", + "nodeType": "YulBlock", + "src": "60031:248:74", + "statements": [ + { + "nativeSrc": "60041:26:74", + "nodeType": "YulAssignment", + "src": "60041:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "60053:9:74", + "nodeType": "YulIdentifier", + "src": "60053:9:74" + }, + { + "kind": "number", + "nativeSrc": "60064:2:74", + "nodeType": "YulLiteral", + "src": "60064:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "60049:3:74", + "nodeType": "YulIdentifier", + "src": "60049:3:74" + }, + "nativeSrc": "60049:18:74", + "nodeType": "YulFunctionCall", + "src": "60049:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "60041:4:74", + "nodeType": "YulIdentifier", + "src": "60041:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "60088:9:74", + "nodeType": "YulIdentifier", + "src": "60088:9:74" + }, + { + "kind": "number", + "nativeSrc": "60099:1:74", + "nodeType": "YulLiteral", + "src": "60099:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "60084:3:74", + "nodeType": "YulIdentifier", + "src": "60084:3:74" + }, + "nativeSrc": "60084:17:74", + "nodeType": "YulFunctionCall", + "src": "60084:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "60107:4:74", + "nodeType": "YulIdentifier", + "src": "60107:4:74" + }, + { + "name": "headStart", + "nativeSrc": "60113:9:74", + "nodeType": "YulIdentifier", + "src": "60113:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "60103:3:74", + "nodeType": "YulIdentifier", + "src": "60103:3:74" + }, + "nativeSrc": "60103:20:74", + "nodeType": "YulFunctionCall", + "src": "60103:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "60077:6:74", + "nodeType": "YulIdentifier", + "src": "60077:6:74" + }, + "nativeSrc": "60077:47:74", + "nodeType": "YulFunctionCall", + "src": "60077:47:74" + }, + "nativeSrc": "60077:47:74", + "nodeType": "YulExpressionStatement", + "src": "60077:47:74" + }, + { + "nativeSrc": "60133:139:74", + "nodeType": "YulAssignment", + "src": "60133:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "60267:4:74", + "nodeType": "YulIdentifier", + "src": "60267:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "60141:124:74", + "nodeType": "YulIdentifier", + "src": "60141:124:74" + }, + "nativeSrc": "60141:131:74", + "nodeType": "YulFunctionCall", + "src": "60141:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "60133:4:74", + "nodeType": "YulIdentifier", + "src": "60133:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "59860:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "60011:9:74", + "nodeType": "YulTypedName", + "src": "60011:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "60026:4:74", + "nodeType": "YulTypedName", + "src": "60026:4:74", + "type": "" + } + ], + "src": "59860:419:74" + }, + { + "body": { + "nativeSrc": "60391:121:74", + "nodeType": "YulBlock", + "src": "60391:121:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "60413:6:74", + "nodeType": "YulIdentifier", + "src": "60413:6:74" + }, + { + "kind": "number", + "nativeSrc": "60421:1:74", + "nodeType": "YulLiteral", + "src": "60421:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "60409:3:74", + "nodeType": "YulIdentifier", + "src": "60409:3:74" + }, + "nativeSrc": "60409:14:74", + "nodeType": "YulFunctionCall", + "src": "60409:14:74" + }, + { + "hexValue": "436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f", + "kind": "string", + "nativeSrc": "60425:34:74", + "nodeType": "YulLiteral", + "src": "60425:34:74", + "type": "", + "value": "Controllable: Caller is not a co" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "60402:6:74", + "nodeType": "YulIdentifier", + "src": "60402:6:74" + }, + "nativeSrc": "60402:58:74", + "nodeType": "YulFunctionCall", + "src": "60402:58:74" + }, + "nativeSrc": "60402:58:74", + "nodeType": "YulExpressionStatement", + "src": "60402:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "60481:6:74", + "nodeType": "YulIdentifier", + "src": "60481:6:74" + }, + { + "kind": "number", + "nativeSrc": "60489:2:74", + "nodeType": "YulLiteral", + "src": "60489:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "60477:3:74", + "nodeType": "YulIdentifier", + "src": "60477:3:74" + }, + "nativeSrc": "60477:15:74", + "nodeType": "YulFunctionCall", + "src": "60477:15:74" + }, + { + "hexValue": "6e74726f6c6c6572", + "kind": "string", + "nativeSrc": "60494:10:74", + "nodeType": "YulLiteral", + "src": "60494:10:74", + "type": "", + "value": "ntroller" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "60470:6:74", + "nodeType": "YulIdentifier", + "src": "60470:6:74" + }, + "nativeSrc": "60470:35:74", + "nodeType": "YulFunctionCall", + "src": "60470:35:74" + }, + "nativeSrc": "60470:35:74", + "nodeType": "YulExpressionStatement", + "src": "60470:35:74" + } + ] + }, + "name": "store_literal_in_memory_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "nativeSrc": "60285:227:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "60383:6:74", + "nodeType": "YulTypedName", + "src": "60383:6:74", + "type": "" + } + ], + "src": "60285:227:74" + }, + { + "body": { + "nativeSrc": "60664:220:74", + "nodeType": "YulBlock", + "src": "60664:220:74", + "statements": [ + { + "nativeSrc": "60674:74:74", + "nodeType": "YulAssignment", + "src": "60674:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "60740:3:74", + "nodeType": "YulIdentifier", + "src": "60740:3:74" + }, + { + "kind": "number", + "nativeSrc": "60745:2:74", + "nodeType": "YulLiteral", + "src": "60745:2:74", + "type": "", + "value": "40" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "60681:58:74", + "nodeType": "YulIdentifier", + "src": "60681:58:74" + }, + "nativeSrc": "60681:67:74", + "nodeType": "YulFunctionCall", + "src": "60681:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "60674:3:74", + "nodeType": "YulIdentifier", + "src": "60674:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "60846:3:74", + "nodeType": "YulIdentifier", + "src": "60846:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b", + "nativeSrc": "60757:88:74", + "nodeType": "YulIdentifier", + "src": "60757:88:74" + }, + "nativeSrc": "60757:93:74", + "nodeType": "YulFunctionCall", + "src": "60757:93:74" + }, + "nativeSrc": "60757:93:74", + "nodeType": "YulExpressionStatement", + "src": "60757:93:74" + }, + { + "nativeSrc": "60859:19:74", + "nodeType": "YulAssignment", + "src": "60859:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "60870:3:74", + "nodeType": "YulIdentifier", + "src": "60870:3:74" + }, + { + "kind": "number", + "nativeSrc": "60875:2:74", + "nodeType": "YulLiteral", + "src": "60875:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "60866:3:74", + "nodeType": "YulIdentifier", + "src": "60866:3:74" + }, + "nativeSrc": "60866:12:74", + "nodeType": "YulFunctionCall", + "src": "60866:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "60859:3:74", + "nodeType": "YulIdentifier", + "src": "60859:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b_to_t_string_memory_ptr_fromStack", + "nativeSrc": "60518:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "60652:3:74", + "nodeType": "YulTypedName", + "src": "60652:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "60660:3:74", + "nodeType": "YulTypedName", + "src": "60660:3:74", + "type": "" + } + ], + "src": "60518:366:74" + }, + { + "body": { + "nativeSrc": "61061:248:74", + "nodeType": "YulBlock", + "src": "61061:248:74", + "statements": [ + { + "nativeSrc": "61071:26:74", + "nodeType": "YulAssignment", + "src": "61071:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61083:9:74", + "nodeType": "YulIdentifier", + "src": "61083:9:74" + }, + { + "kind": "number", + "nativeSrc": "61094:2:74", + "nodeType": "YulLiteral", + "src": "61094:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61079:3:74", + "nodeType": "YulIdentifier", + "src": "61079:3:74" + }, + "nativeSrc": "61079:18:74", + "nodeType": "YulFunctionCall", + "src": "61079:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "61071:4:74", + "nodeType": "YulIdentifier", + "src": "61071:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61118:9:74", + "nodeType": "YulIdentifier", + "src": "61118:9:74" + }, + { + "kind": "number", + "nativeSrc": "61129:1:74", + "nodeType": "YulLiteral", + "src": "61129:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61114:3:74", + "nodeType": "YulIdentifier", + "src": "61114:3:74" + }, + "nativeSrc": "61114:17:74", + "nodeType": "YulFunctionCall", + "src": "61114:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "61137:4:74", + "nodeType": "YulIdentifier", + "src": "61137:4:74" + }, + { + "name": "headStart", + "nativeSrc": "61143:9:74", + "nodeType": "YulIdentifier", + "src": "61143:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "61133:3:74", + "nodeType": "YulIdentifier", + "src": "61133:3:74" + }, + "nativeSrc": "61133:20:74", + "nodeType": "YulFunctionCall", + "src": "61133:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "61107:6:74", + "nodeType": "YulIdentifier", + "src": "61107:6:74" + }, + "nativeSrc": "61107:47:74", + "nodeType": "YulFunctionCall", + "src": "61107:47:74" + }, + "nativeSrc": "61107:47:74", + "nodeType": "YulExpressionStatement", + "src": "61107:47:74" + }, + { + "nativeSrc": "61163:139:74", + "nodeType": "YulAssignment", + "src": "61163:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "61297:4:74", + "nodeType": "YulIdentifier", + "src": "61297:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b_to_t_string_memory_ptr_fromStack", + "nativeSrc": "61171:124:74", + "nodeType": "YulIdentifier", + "src": "61171:124:74" + }, + "nativeSrc": "61171:131:74", + "nodeType": "YulFunctionCall", + "src": "61171:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "61163:4:74", + "nodeType": "YulIdentifier", + "src": "61163:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "60890:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "61041:9:74", + "nodeType": "YulTypedName", + "src": "61041:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "61056:4:74", + "nodeType": "YulTypedName", + "src": "61056:4:74", + "type": "" + } + ], + "src": "60890:419:74" + }, + { + "body": { + "nativeSrc": "61469:288:74", + "nodeType": "YulBlock", + "src": "61469:288:74", + "statements": [ + { + "nativeSrc": "61479:26:74", + "nodeType": "YulAssignment", + "src": "61479:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61491:9:74", + "nodeType": "YulIdentifier", + "src": "61491:9:74" + }, + { + "kind": "number", + "nativeSrc": "61502:2:74", + "nodeType": "YulLiteral", + "src": "61502:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61487:3:74", + "nodeType": "YulIdentifier", + "src": "61487:3:74" + }, + "nativeSrc": "61487:18:74", + "nodeType": "YulFunctionCall", + "src": "61487:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "61479:4:74", + "nodeType": "YulIdentifier", + "src": "61479:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "61559:6:74", + "nodeType": "YulIdentifier", + "src": "61559:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61572:9:74", + "nodeType": "YulIdentifier", + "src": "61572:9:74" + }, + { + "kind": "number", + "nativeSrc": "61583:1:74", + "nodeType": "YulLiteral", + "src": "61583:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61568:3:74", + "nodeType": "YulIdentifier", + "src": "61568:3:74" + }, + "nativeSrc": "61568:17:74", + "nodeType": "YulFunctionCall", + "src": "61568:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "61515:43:74", + "nodeType": "YulIdentifier", + "src": "61515:43:74" + }, + "nativeSrc": "61515:71:74", + "nodeType": "YulFunctionCall", + "src": "61515:71:74" + }, + "nativeSrc": "61515:71:74", + "nodeType": "YulExpressionStatement", + "src": "61515:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "61640:6:74", + "nodeType": "YulIdentifier", + "src": "61640:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61653:9:74", + "nodeType": "YulIdentifier", + "src": "61653:9:74" + }, + { + "kind": "number", + "nativeSrc": "61664:2:74", + "nodeType": "YulLiteral", + "src": "61664:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61649:3:74", + "nodeType": "YulIdentifier", + "src": "61649:3:74" + }, + "nativeSrc": "61649:18:74", + "nodeType": "YulFunctionCall", + "src": "61649:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "61596:43:74", + "nodeType": "YulIdentifier", + "src": "61596:43:74" + }, + "nativeSrc": "61596:72:74", + "nodeType": "YulFunctionCall", + "src": "61596:72:74" + }, + "nativeSrc": "61596:72:74", + "nodeType": "YulExpressionStatement", + "src": "61596:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "61722:6:74", + "nodeType": "YulIdentifier", + "src": "61722:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61735:9:74", + "nodeType": "YulIdentifier", + "src": "61735:9:74" + }, + { + "kind": "number", + "nativeSrc": "61746:2:74", + "nodeType": "YulLiteral", + "src": "61746:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61731:3:74", + "nodeType": "YulIdentifier", + "src": "61731:3:74" + }, + "nativeSrc": "61731:18:74", + "nodeType": "YulFunctionCall", + "src": "61731:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "61678:43:74", + "nodeType": "YulIdentifier", + "src": "61678:43:74" + }, + "nativeSrc": "61678:72:74", + "nodeType": "YulFunctionCall", + "src": "61678:72:74" + }, + "nativeSrc": "61678:72:74", + "nodeType": "YulExpressionStatement", + "src": "61678:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_address_t_uint256__to_t_uint256_t_address_t_uint256__fromStack_reversed", + "nativeSrc": "61315:442:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "61425:9:74", + "nodeType": "YulTypedName", + "src": "61425:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "61437:6:74", + "nodeType": "YulTypedName", + "src": "61437:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "61445:6:74", + "nodeType": "YulTypedName", + "src": "61445:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "61453:6:74", + "nodeType": "YulTypedName", + "src": "61453:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "61464:4:74", + "nodeType": "YulTypedName", + "src": "61464:4:74", + "type": "" + } + ], + "src": "61315:442:74" + }, + { + "body": { + "nativeSrc": "61883:200:74", + "nodeType": "YulBlock", + "src": "61883:200:74", + "statements": [ + { + "nativeSrc": "61893:26:74", + "nodeType": "YulAssignment", + "src": "61893:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61905:9:74", + "nodeType": "YulIdentifier", + "src": "61905:9:74" + }, + { + "kind": "number", + "nativeSrc": "61916:2:74", + "nodeType": "YulLiteral", + "src": "61916:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61901:3:74", + "nodeType": "YulIdentifier", + "src": "61901:3:74" + }, + "nativeSrc": "61901:18:74", + "nodeType": "YulFunctionCall", + "src": "61901:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "61893:4:74", + "nodeType": "YulIdentifier", + "src": "61893:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "61973:6:74", + "nodeType": "YulIdentifier", + "src": "61973:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "61986:9:74", + "nodeType": "YulIdentifier", + "src": "61986:9:74" + }, + { + "kind": "number", + "nativeSrc": "61997:1:74", + "nodeType": "YulLiteral", + "src": "61997:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "61982:3:74", + "nodeType": "YulIdentifier", + "src": "61982:3:74" + }, + "nativeSrc": "61982:17:74", + "nodeType": "YulFunctionCall", + "src": "61982:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "61929:43:74", + "nodeType": "YulIdentifier", + "src": "61929:43:74" + }, + "nativeSrc": "61929:71:74", + "nodeType": "YulFunctionCall", + "src": "61929:71:74" + }, + "nativeSrc": "61929:71:74", + "nodeType": "YulExpressionStatement", + "src": "61929:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "62048:6:74", + "nodeType": "YulIdentifier", + "src": "62048:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62061:9:74", + "nodeType": "YulIdentifier", + "src": "62061:9:74" + }, + { + "kind": "number", + "nativeSrc": "62072:2:74", + "nodeType": "YulLiteral", + "src": "62072:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62057:3:74", + "nodeType": "YulIdentifier", + "src": "62057:3:74" + }, + "nativeSrc": "62057:18:74", + "nodeType": "YulFunctionCall", + "src": "62057:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "62010:37:74", + "nodeType": "YulIdentifier", + "src": "62010:37:74" + }, + "nativeSrc": "62010:66:74", + "nodeType": "YulFunctionCall", + "src": "62010:66:74" + }, + "nativeSrc": "62010:66:74", + "nodeType": "YulExpressionStatement", + "src": "62010:66:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_bool__to_t_address_t_bool__fromStack_reversed", + "nativeSrc": "61763:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "61847:9:74", + "nodeType": "YulTypedName", + "src": "61847:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "61859:6:74", + "nodeType": "YulTypedName", + "src": "61859:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "61867:6:74", + "nodeType": "YulTypedName", + "src": "61867:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "61878:4:74", + "nodeType": "YulTypedName", + "src": "61878:4:74", + "type": "" + } + ], + "src": "61763:320:74" + }, + { + "body": { + "nativeSrc": "62215:206:74", + "nodeType": "YulBlock", + "src": "62215:206:74", + "statements": [ + { + "nativeSrc": "62225:26:74", + "nodeType": "YulAssignment", + "src": "62225:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62237:9:74", + "nodeType": "YulIdentifier", + "src": "62237:9:74" + }, + { + "kind": "number", + "nativeSrc": "62248:2:74", + "nodeType": "YulLiteral", + "src": "62248:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62233:3:74", + "nodeType": "YulIdentifier", + "src": "62233:3:74" + }, + "nativeSrc": "62233:18:74", + "nodeType": "YulFunctionCall", + "src": "62233:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "62225:4:74", + "nodeType": "YulIdentifier", + "src": "62225:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "62305:6:74", + "nodeType": "YulIdentifier", + "src": "62305:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62318:9:74", + "nodeType": "YulIdentifier", + "src": "62318:9:74" + }, + { + "kind": "number", + "nativeSrc": "62329:1:74", + "nodeType": "YulLiteral", + "src": "62329:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62314:3:74", + "nodeType": "YulIdentifier", + "src": "62314:3:74" + }, + "nativeSrc": "62314:17:74", + "nodeType": "YulFunctionCall", + "src": "62314:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "62261:43:74", + "nodeType": "YulIdentifier", + "src": "62261:43:74" + }, + "nativeSrc": "62261:71:74", + "nodeType": "YulFunctionCall", + "src": "62261:71:74" + }, + "nativeSrc": "62261:71:74", + "nodeType": "YulExpressionStatement", + "src": "62261:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "62386:6:74", + "nodeType": "YulIdentifier", + "src": "62386:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62399:9:74", + "nodeType": "YulIdentifier", + "src": "62399:9:74" + }, + { + "kind": "number", + "nativeSrc": "62410:2:74", + "nodeType": "YulLiteral", + "src": "62410:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62395:3:74", + "nodeType": "YulIdentifier", + "src": "62395:3:74" + }, + "nativeSrc": "62395:18:74", + "nodeType": "YulFunctionCall", + "src": "62395:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "62342:43:74", + "nodeType": "YulIdentifier", + "src": "62342:43:74" + }, + "nativeSrc": "62342:72:74", + "nodeType": "YulFunctionCall", + "src": "62342:72:74" + }, + "nativeSrc": "62342:72:74", + "nodeType": "YulExpressionStatement", + "src": "62342:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "62089:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "62179:9:74", + "nodeType": "YulTypedName", + "src": "62179:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "62191:6:74", + "nodeType": "YulTypedName", + "src": "62191:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "62199:6:74", + "nodeType": "YulTypedName", + "src": "62199:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "62210:4:74", + "nodeType": "YulTypedName", + "src": "62210:4:74", + "type": "" + } + ], + "src": "62089:332:74" + }, + { + "body": { + "nativeSrc": "62581:288:74", + "nodeType": "YulBlock", + "src": "62581:288:74", + "statements": [ + { + "nativeSrc": "62591:26:74", + "nodeType": "YulAssignment", + "src": "62591:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62603:9:74", + "nodeType": "YulIdentifier", + "src": "62603:9:74" + }, + { + "kind": "number", + "nativeSrc": "62614:2:74", + "nodeType": "YulLiteral", + "src": "62614:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62599:3:74", + "nodeType": "YulIdentifier", + "src": "62599:3:74" + }, + "nativeSrc": "62599:18:74", + "nodeType": "YulFunctionCall", + "src": "62599:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "62591:4:74", + "nodeType": "YulIdentifier", + "src": "62591:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "62671:6:74", + "nodeType": "YulIdentifier", + "src": "62671:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62684:9:74", + "nodeType": "YulIdentifier", + "src": "62684:9:74" + }, + { + "kind": "number", + "nativeSrc": "62695:1:74", + "nodeType": "YulLiteral", + "src": "62695:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62680:3:74", + "nodeType": "YulIdentifier", + "src": "62680:3:74" + }, + "nativeSrc": "62680:17:74", + "nodeType": "YulFunctionCall", + "src": "62680:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "62627:43:74", + "nodeType": "YulIdentifier", + "src": "62627:43:74" + }, + "nativeSrc": "62627:71:74", + "nodeType": "YulFunctionCall", + "src": "62627:71:74" + }, + "nativeSrc": "62627:71:74", + "nodeType": "YulExpressionStatement", + "src": "62627:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "62752:6:74", + "nodeType": "YulIdentifier", + "src": "62752:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62765:9:74", + "nodeType": "YulIdentifier", + "src": "62765:9:74" + }, + { + "kind": "number", + "nativeSrc": "62776:2:74", + "nodeType": "YulLiteral", + "src": "62776:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62761:3:74", + "nodeType": "YulIdentifier", + "src": "62761:3:74" + }, + "nativeSrc": "62761:18:74", + "nodeType": "YulFunctionCall", + "src": "62761:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "62708:43:74", + "nodeType": "YulIdentifier", + "src": "62708:43:74" + }, + "nativeSrc": "62708:72:74", + "nodeType": "YulFunctionCall", + "src": "62708:72:74" + }, + "nativeSrc": "62708:72:74", + "nodeType": "YulExpressionStatement", + "src": "62708:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "62834:6:74", + "nodeType": "YulIdentifier", + "src": "62834:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "62847:9:74", + "nodeType": "YulIdentifier", + "src": "62847:9:74" + }, + { + "kind": "number", + "nativeSrc": "62858:2:74", + "nodeType": "YulLiteral", + "src": "62858:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "62843:3:74", + "nodeType": "YulIdentifier", + "src": "62843:3:74" + }, + "nativeSrc": "62843:18:74", + "nodeType": "YulFunctionCall", + "src": "62843:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "62790:43:74", + "nodeType": "YulIdentifier", + "src": "62790:43:74" + }, + "nativeSrc": "62790:72:74", + "nodeType": "YulFunctionCall", + "src": "62790:72:74" + }, + "nativeSrc": "62790:72:74", + "nodeType": "YulExpressionStatement", + "src": "62790:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed", + "nativeSrc": "62427:442:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "62537:9:74", + "nodeType": "YulTypedName", + "src": "62537:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "62549:6:74", + "nodeType": "YulTypedName", + "src": "62549:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "62557:6:74", + "nodeType": "YulTypedName", + "src": "62557:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "62565:6:74", + "nodeType": "YulTypedName", + "src": "62565:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "62576:4:74", + "nodeType": "YulTypedName", + "src": "62576:4:74", + "type": "" + } + ], + "src": "62427:442:74" + }, + { + "body": { + "nativeSrc": "62938:80:74", + "nodeType": "YulBlock", + "src": "62938:80:74", + "statements": [ + { + "nativeSrc": "62948:22:74", + "nodeType": "YulAssignment", + "src": "62948:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "62963:6:74", + "nodeType": "YulIdentifier", + "src": "62963:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "62957:5:74", + "nodeType": "YulIdentifier", + "src": "62957:5:74" + }, + "nativeSrc": "62957:13:74", + "nodeType": "YulFunctionCall", + "src": "62957:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "62948:5:74", + "nodeType": "YulIdentifier", + "src": "62948:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "63006:5:74", + "nodeType": "YulIdentifier", + "src": "63006:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "62979:26:74", + "nodeType": "YulIdentifier", + "src": "62979:26:74" + }, + "nativeSrc": "62979:33:74", + "nodeType": "YulFunctionCall", + "src": "62979:33:74" + }, + "nativeSrc": "62979:33:74", + "nodeType": "YulExpressionStatement", + "src": "62979:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "62875:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "62916:6:74", + "nodeType": "YulTypedName", + "src": "62916:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "62924:3:74", + "nodeType": "YulTypedName", + "src": "62924:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "62932:5:74", + "nodeType": "YulTypedName", + "src": "62932:5:74", + "type": "" + } + ], + "src": "62875:143:74" + }, + { + "body": { + "nativeSrc": "63101:274:74", + "nodeType": "YulBlock", + "src": "63101:274:74", + "statements": [ + { + "body": { + "nativeSrc": "63147:83:74", + "nodeType": "YulBlock", + "src": "63147:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "63149:77:74", + "nodeType": "YulIdentifier", + "src": "63149:77:74" + }, + "nativeSrc": "63149:79:74", + "nodeType": "YulFunctionCall", + "src": "63149:79:74" + }, + "nativeSrc": "63149:79:74", + "nodeType": "YulExpressionStatement", + "src": "63149:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "63122:7:74", + "nodeType": "YulIdentifier", + "src": "63122:7:74" + }, + { + "name": "headStart", + "nativeSrc": "63131:9:74", + "nodeType": "YulIdentifier", + "src": "63131:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "63118:3:74", + "nodeType": "YulIdentifier", + "src": "63118:3:74" + }, + "nativeSrc": "63118:23:74", + "nodeType": "YulFunctionCall", + "src": "63118:23:74" + }, + { + "kind": "number", + "nativeSrc": "63143:2:74", + "nodeType": "YulLiteral", + "src": "63143:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "63114:3:74", + "nodeType": "YulIdentifier", + "src": "63114:3:74" + }, + "nativeSrc": "63114:32:74", + "nodeType": "YulFunctionCall", + "src": "63114:32:74" + }, + "nativeSrc": "63111:119:74", + "nodeType": "YulIf", + "src": "63111:119:74" + }, + { + "nativeSrc": "63240:128:74", + "nodeType": "YulBlock", + "src": "63240:128:74", + "statements": [ + { + "nativeSrc": "63255:15:74", + "nodeType": "YulVariableDeclaration", + "src": "63255:15:74", + "value": { + "kind": "number", + "nativeSrc": "63269:1:74", + "nodeType": "YulLiteral", + "src": "63269:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "63259:6:74", + "nodeType": "YulTypedName", + "src": "63259:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "63284:74:74", + "nodeType": "YulAssignment", + "src": "63284:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "63330:9:74", + "nodeType": "YulIdentifier", + "src": "63330:9:74" + }, + { + "name": "offset", + "nativeSrc": "63341:6:74", + "nodeType": "YulIdentifier", + "src": "63341:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "63326:3:74", + "nodeType": "YulIdentifier", + "src": "63326:3:74" + }, + "nativeSrc": "63326:22:74", + "nodeType": "YulFunctionCall", + "src": "63326:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "63350:7:74", + "nodeType": "YulIdentifier", + "src": "63350:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "63294:31:74", + "nodeType": "YulIdentifier", + "src": "63294:31:74" + }, + "nativeSrc": "63294:64:74", + "nodeType": "YulFunctionCall", + "src": "63294:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "63284:6:74", + "nodeType": "YulIdentifier", + "src": "63284:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32_fromMemory", + "nativeSrc": "63024:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "63071:9:74", + "nodeType": "YulTypedName", + "src": "63071:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "63082:7:74", + "nodeType": "YulTypedName", + "src": "63082:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "63094:6:74", + "nodeType": "YulTypedName", + "src": "63094:6:74", + "type": "" + } + ], + "src": "63024:351:74" + }, + { + "body": { + "nativeSrc": "63503:214:74", + "nodeType": "YulBlock", + "src": "63503:214:74", + "statements": [ + { + "nativeSrc": "63513:77:74", + "nodeType": "YulAssignment", + "src": "63513:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "63578:3:74", + "nodeType": "YulIdentifier", + "src": "63578:3:74" + }, + { + "name": "length", + "nativeSrc": "63583:6:74", + "nodeType": "YulIdentifier", + "src": "63583:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "63520:57:74", + "nodeType": "YulIdentifier", + "src": "63520:57:74" + }, + "nativeSrc": "63520:70:74", + "nodeType": "YulFunctionCall", + "src": "63520:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "63513:3:74", + "nodeType": "YulIdentifier", + "src": "63513:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "63637:5:74", + "nodeType": "YulIdentifier", + "src": "63637:5:74" + }, + { + "name": "pos", + "nativeSrc": "63644:3:74", + "nodeType": "YulIdentifier", + "src": "63644:3:74" + }, + { + "name": "length", + "nativeSrc": "63649:6:74", + "nodeType": "YulIdentifier", + "src": "63649:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "63600:36:74", + "nodeType": "YulIdentifier", + "src": "63600:36:74" + }, + "nativeSrc": "63600:56:74", + "nodeType": "YulFunctionCall", + "src": "63600:56:74" + }, + "nativeSrc": "63600:56:74", + "nodeType": "YulExpressionStatement", + "src": "63600:56:74" + }, + { + "nativeSrc": "63665:46:74", + "nodeType": "YulAssignment", + "src": "63665:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "63676:3:74", + "nodeType": "YulIdentifier", + "src": "63676:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "63703:6:74", + "nodeType": "YulIdentifier", + "src": "63703:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "63681:21:74", + "nodeType": "YulIdentifier", + "src": "63681:21:74" + }, + "nativeSrc": "63681:29:74", + "nodeType": "YulFunctionCall", + "src": "63681:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "63672:3:74", + "nodeType": "YulIdentifier", + "src": "63672:3:74" + }, + "nativeSrc": "63672:39:74", + "nodeType": "YulFunctionCall", + "src": "63672:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "63665:3:74", + "nodeType": "YulIdentifier", + "src": "63665:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "63403:314:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "63476:5:74", + "nodeType": "YulTypedName", + "src": "63476:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "63483:6:74", + "nodeType": "YulTypedName", + "src": "63483:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "63491:3:74", + "nodeType": "YulTypedName", + "src": "63491:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "63499:3:74", + "nodeType": "YulTypedName", + "src": "63499:3:74", + "type": "" + } + ], + "src": "63403:314:74" + }, + { + "body": { + "nativeSrc": "64013:691:74", + "nodeType": "YulBlock", + "src": "64013:691:74", + "statements": [ + { + "nativeSrc": "64023:27:74", + "nodeType": "YulAssignment", + "src": "64023:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64035:9:74", + "nodeType": "YulIdentifier", + "src": "64035:9:74" + }, + { + "kind": "number", + "nativeSrc": "64046:3:74", + "nodeType": "YulLiteral", + "src": "64046:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64031:3:74", + "nodeType": "YulIdentifier", + "src": "64031:3:74" + }, + "nativeSrc": "64031:19:74", + "nodeType": "YulFunctionCall", + "src": "64031:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "64023:4:74", + "nodeType": "YulIdentifier", + "src": "64023:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64071:9:74", + "nodeType": "YulIdentifier", + "src": "64071:9:74" + }, + { + "kind": "number", + "nativeSrc": "64082:1:74", + "nodeType": "YulLiteral", + "src": "64082:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64067:3:74", + "nodeType": "YulIdentifier", + "src": "64067:3:74" + }, + "nativeSrc": "64067:17:74", + "nodeType": "YulFunctionCall", + "src": "64067:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "64090:4:74", + "nodeType": "YulIdentifier", + "src": "64090:4:74" + }, + { + "name": "headStart", + "nativeSrc": "64096:9:74", + "nodeType": "YulIdentifier", + "src": "64096:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "64086:3:74", + "nodeType": "YulIdentifier", + "src": "64086:3:74" + }, + "nativeSrc": "64086:20:74", + "nodeType": "YulFunctionCall", + "src": "64086:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "64060:6:74", + "nodeType": "YulIdentifier", + "src": "64060:6:74" + }, + "nativeSrc": "64060:47:74", + "nodeType": "YulFunctionCall", + "src": "64060:47:74" + }, + "nativeSrc": "64060:47:74", + "nodeType": "YulExpressionStatement", + "src": "64060:47:74" + }, + { + "nativeSrc": "64116:94:74", + "nodeType": "YulAssignment", + "src": "64116:94:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "64188:6:74", + "nodeType": "YulIdentifier", + "src": "64188:6:74" + }, + { + "name": "value1", + "nativeSrc": "64196:6:74", + "nodeType": "YulIdentifier", + "src": "64196:6:74" + }, + { + "name": "tail", + "nativeSrc": "64205:4:74", + "nodeType": "YulIdentifier", + "src": "64205:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "64124:63:74", + "nodeType": "YulIdentifier", + "src": "64124:63:74" + }, + "nativeSrc": "64124:86:74", + "nodeType": "YulFunctionCall", + "src": "64124:86:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "64116:4:74", + "nodeType": "YulIdentifier", + "src": "64116:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "64264:6:74", + "nodeType": "YulIdentifier", + "src": "64264:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64277:9:74", + "nodeType": "YulIdentifier", + "src": "64277:9:74" + }, + { + "kind": "number", + "nativeSrc": "64288:2:74", + "nodeType": "YulLiteral", + "src": "64288:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64273:3:74", + "nodeType": "YulIdentifier", + "src": "64273:3:74" + }, + "nativeSrc": "64273:18:74", + "nodeType": "YulFunctionCall", + "src": "64273:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "64220:43:74", + "nodeType": "YulIdentifier", + "src": "64220:43:74" + }, + "nativeSrc": "64220:72:74", + "nodeType": "YulFunctionCall", + "src": "64220:72:74" + }, + "nativeSrc": "64220:72:74", + "nodeType": "YulExpressionStatement", + "src": "64220:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "64344:6:74", + "nodeType": "YulIdentifier", + "src": "64344:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64357:9:74", + "nodeType": "YulIdentifier", + "src": "64357:9:74" + }, + { + "kind": "number", + "nativeSrc": "64368:2:74", + "nodeType": "YulLiteral", + "src": "64368:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64353:3:74", + "nodeType": "YulIdentifier", + "src": "64353:3:74" + }, + "nativeSrc": "64353:18:74", + "nodeType": "YulFunctionCall", + "src": "64353:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint32_to_t_uint32_fromStack", + "nativeSrc": "64302:41:74", + "nodeType": "YulIdentifier", + "src": "64302:41:74" + }, + "nativeSrc": "64302:70:74", + "nodeType": "YulFunctionCall", + "src": "64302:70:74" + }, + "nativeSrc": "64302:70:74", + "nodeType": "YulExpressionStatement", + "src": "64302:70:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "64424:6:74", + "nodeType": "YulIdentifier", + "src": "64424:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64437:9:74", + "nodeType": "YulIdentifier", + "src": "64437:9:74" + }, + { + "kind": "number", + "nativeSrc": "64448:2:74", + "nodeType": "YulLiteral", + "src": "64448:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64433:3:74", + "nodeType": "YulIdentifier", + "src": "64433:3:74" + }, + "nativeSrc": "64433:18:74", + "nodeType": "YulFunctionCall", + "src": "64433:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "64382:41:74", + "nodeType": "YulIdentifier", + "src": "64382:41:74" + }, + "nativeSrc": "64382:70:74", + "nodeType": "YulFunctionCall", + "src": "64382:70:74" + }, + "nativeSrc": "64382:70:74", + "nodeType": "YulExpressionStatement", + "src": "64382:70:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value5", + "nativeSrc": "64506:6:74", + "nodeType": "YulIdentifier", + "src": "64506:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64519:9:74", + "nodeType": "YulIdentifier", + "src": "64519:9:74" + }, + { + "kind": "number", + "nativeSrc": "64530:3:74", + "nodeType": "YulLiteral", + "src": "64530:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64515:3:74", + "nodeType": "YulIdentifier", + "src": "64515:3:74" + }, + "nativeSrc": "64515:19:74", + "nodeType": "YulFunctionCall", + "src": "64515:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "64462:43:74", + "nodeType": "YulIdentifier", + "src": "64462:43:74" + }, + "nativeSrc": "64462:73:74", + "nodeType": "YulFunctionCall", + "src": "64462:73:74" + }, + "nativeSrc": "64462:73:74", + "nodeType": "YulExpressionStatement", + "src": "64462:73:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64556:9:74", + "nodeType": "YulIdentifier", + "src": "64556:9:74" + }, + { + "kind": "number", + "nativeSrc": "64567:3:74", + "nodeType": "YulLiteral", + "src": "64567:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64552:3:74", + "nodeType": "YulIdentifier", + "src": "64552:3:74" + }, + "nativeSrc": "64552:19:74", + "nodeType": "YulFunctionCall", + "src": "64552:19:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "64577:4:74", + "nodeType": "YulIdentifier", + "src": "64577:4:74" + }, + { + "name": "headStart", + "nativeSrc": "64583:9:74", + "nodeType": "YulIdentifier", + "src": "64583:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "64573:3:74", + "nodeType": "YulIdentifier", + "src": "64573:3:74" + }, + "nativeSrc": "64573:20:74", + "nodeType": "YulFunctionCall", + "src": "64573:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "64545:6:74", + "nodeType": "YulIdentifier", + "src": "64545:6:74" + }, + "nativeSrc": "64545:49:74", + "nodeType": "YulFunctionCall", + "src": "64545:49:74" + }, + "nativeSrc": "64545:49:74", + "nodeType": "YulExpressionStatement", + "src": "64545:49:74" + }, + { + "nativeSrc": "64603:94:74", + "nodeType": "YulAssignment", + "src": "64603:94:74", + "value": { + "arguments": [ + { + "name": "value6", + "nativeSrc": "64675:6:74", + "nodeType": "YulIdentifier", + "src": "64675:6:74" + }, + { + "name": "value7", + "nativeSrc": "64683:6:74", + "nodeType": "YulIdentifier", + "src": "64683:6:74" + }, + { + "name": "tail", + "nativeSrc": "64692:4:74", + "nodeType": "YulIdentifier", + "src": "64692:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "64611:63:74", + "nodeType": "YulIdentifier", + "src": "64611:63:74" + }, + "nativeSrc": "64611:86:74", + "nodeType": "YulFunctionCall", + "src": "64611:86:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "64603:4:74", + "nodeType": "YulIdentifier", + "src": "64603:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_calldata_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "63723:981:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "63929:9:74", + "nodeType": "YulTypedName", + "src": "63929:9:74", + "type": "" + }, + { + "name": "value7", + "nativeSrc": "63941:6:74", + "nodeType": "YulTypedName", + "src": "63941:6:74", + "type": "" + }, + { + "name": "value6", + "nativeSrc": "63949:6:74", + "nodeType": "YulTypedName", + "src": "63949:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "63957:6:74", + "nodeType": "YulTypedName", + "src": "63957:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "63965:6:74", + "nodeType": "YulTypedName", + "src": "63965:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "63973:6:74", + "nodeType": "YulTypedName", + "src": "63973:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "63981:6:74", + "nodeType": "YulTypedName", + "src": "63981:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "63989:6:74", + "nodeType": "YulTypedName", + "src": "63989:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "63997:6:74", + "nodeType": "YulTypedName", + "src": "63997:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "64008:4:74", + "nodeType": "YulTypedName", + "src": "64008:4:74", + "type": "" + } + ], + "src": "63723:981:74" + }, + { + "body": { + "nativeSrc": "64890:369:74", + "nodeType": "YulBlock", + "src": "64890:369:74", + "statements": [ + { + "nativeSrc": "64900:27:74", + "nodeType": "YulAssignment", + "src": "64900:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64912:9:74", + "nodeType": "YulIdentifier", + "src": "64912:9:74" + }, + { + "kind": "number", + "nativeSrc": "64923:3:74", + "nodeType": "YulLiteral", + "src": "64923:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64908:3:74", + "nodeType": "YulIdentifier", + "src": "64908:3:74" + }, + "nativeSrc": "64908:19:74", + "nodeType": "YulFunctionCall", + "src": "64908:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "64900:4:74", + "nodeType": "YulIdentifier", + "src": "64900:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "64981:6:74", + "nodeType": "YulIdentifier", + "src": "64981:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "64994:9:74", + "nodeType": "YulIdentifier", + "src": "64994:9:74" + }, + { + "kind": "number", + "nativeSrc": "65005:1:74", + "nodeType": "YulLiteral", + "src": "65005:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "64990:3:74", + "nodeType": "YulIdentifier", + "src": "64990:3:74" + }, + "nativeSrc": "64990:17:74", + "nodeType": "YulFunctionCall", + "src": "64990:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "64937:43:74", + "nodeType": "YulIdentifier", + "src": "64937:43:74" + }, + "nativeSrc": "64937:71:74", + "nodeType": "YulFunctionCall", + "src": "64937:71:74" + }, + "nativeSrc": "64937:71:74", + "nodeType": "YulExpressionStatement", + "src": "64937:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "65062:6:74", + "nodeType": "YulIdentifier", + "src": "65062:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "65075:9:74", + "nodeType": "YulIdentifier", + "src": "65075:9:74" + }, + { + "kind": "number", + "nativeSrc": "65086:2:74", + "nodeType": "YulLiteral", + "src": "65086:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "65071:3:74", + "nodeType": "YulIdentifier", + "src": "65071:3:74" + }, + "nativeSrc": "65071:18:74", + "nodeType": "YulFunctionCall", + "src": "65071:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "65018:43:74", + "nodeType": "YulIdentifier", + "src": "65018:43:74" + }, + "nativeSrc": "65018:72:74", + "nodeType": "YulFunctionCall", + "src": "65018:72:74" + }, + "nativeSrc": "65018:72:74", + "nodeType": "YulExpressionStatement", + "src": "65018:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "65144:6:74", + "nodeType": "YulIdentifier", + "src": "65144:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "65157:9:74", + "nodeType": "YulIdentifier", + "src": "65157:9:74" + }, + { + "kind": "number", + "nativeSrc": "65168:2:74", + "nodeType": "YulLiteral", + "src": "65168:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "65153:3:74", + "nodeType": "YulIdentifier", + "src": "65153:3:74" + }, + "nativeSrc": "65153:18:74", + "nodeType": "YulFunctionCall", + "src": "65153:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "65100:43:74", + "nodeType": "YulIdentifier", + "src": "65100:43:74" + }, + "nativeSrc": "65100:72:74", + "nodeType": "YulFunctionCall", + "src": "65100:72:74" + }, + "nativeSrc": "65100:72:74", + "nodeType": "YulExpressionStatement", + "src": "65100:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "65224:6:74", + "nodeType": "YulIdentifier", + "src": "65224:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "65237:9:74", + "nodeType": "YulIdentifier", + "src": "65237:9:74" + }, + { + "kind": "number", + "nativeSrc": "65248:2:74", + "nodeType": "YulLiteral", + "src": "65248:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "65233:3:74", + "nodeType": "YulIdentifier", + "src": "65233:3:74" + }, + "nativeSrc": "65233:18:74", + "nodeType": "YulFunctionCall", + "src": "65233:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "65182:41:74", + "nodeType": "YulIdentifier", + "src": "65182:41:74" + }, + "nativeSrc": "65182:70:74", + "nodeType": "YulFunctionCall", + "src": "65182:70:74" + }, + "nativeSrc": "65182:70:74", + "nodeType": "YulExpressionStatement", + "src": "65182:70:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed", + "nativeSrc": "64710:549:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "64838:9:74", + "nodeType": "YulTypedName", + "src": "64838:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "64850:6:74", + "nodeType": "YulTypedName", + "src": "64850:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "64858:6:74", + "nodeType": "YulTypedName", + "src": "64858:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "64866:6:74", + "nodeType": "YulTypedName", + "src": "64866:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "64874:6:74", + "nodeType": "YulTypedName", + "src": "64874:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "64885:4:74", + "nodeType": "YulTypedName", + "src": "64885:4:74", + "type": "" + } + ], + "src": "64710:549:74" + }, + { + "body": { + "nativeSrc": "65330:31:74", + "nodeType": "YulBlock", + "src": "65330:31:74", + "statements": [ + { + "nativeSrc": "65341:13:74", + "nodeType": "YulAssignment", + "src": "65341:13:74", + "value": { + "name": "len", + "nativeSrc": "65351:3:74", + "nodeType": "YulIdentifier", + "src": "65351:3:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "65341:6:74", + "nodeType": "YulIdentifier", + "src": "65341:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "65265:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "65308:5:74", + "nodeType": "YulTypedName", + "src": "65308:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "65315:3:74", + "nodeType": "YulTypedName", + "src": "65315:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "65323:6:74", + "nodeType": "YulTypedName", + "src": "65323:6:74", + "type": "" + } + ], + "src": "65265:96:74" + }, + { + "body": { + "nativeSrc": "65420:87:74", + "nodeType": "YulBlock", + "src": "65420:87:74", + "statements": [ + { + "nativeSrc": "65430:11:74", + "nodeType": "YulAssignment", + "src": "65430:11:74", + "value": { + "name": "ptr", + "nativeSrc": "65438:3:74", + "nodeType": "YulIdentifier", + "src": "65438:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "65430:4:74", + "nodeType": "YulIdentifier", + "src": "65430:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "65458:1:74", + "nodeType": "YulLiteral", + "src": "65458:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "65461:3:74", + "nodeType": "YulIdentifier", + "src": "65461:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "65451:6:74", + "nodeType": "YulIdentifier", + "src": "65451:6:74" + }, + "nativeSrc": "65451:14:74", + "nodeType": "YulFunctionCall", + "src": "65451:14:74" + }, + "nativeSrc": "65451:14:74", + "nodeType": "YulExpressionStatement", + "src": "65451:14:74" + }, + { + "nativeSrc": "65474:26:74", + "nodeType": "YulAssignment", + "src": "65474:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "65492:1:74", + "nodeType": "YulLiteral", + "src": "65492:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "65495:4:74", + "nodeType": "YulLiteral", + "src": "65495:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "65482:9:74", + "nodeType": "YulIdentifier", + "src": "65482:9:74" + }, + "nativeSrc": "65482:18:74", + "nodeType": "YulFunctionCall", + "src": "65482:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "65474:4:74", + "nodeType": "YulIdentifier", + "src": "65474:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "65367:140:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "65407:3:74", + "nodeType": "YulTypedName", + "src": "65407:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "65415:4:74", + "nodeType": "YulTypedName", + "src": "65415:4:74", + "type": "" + } + ], + "src": "65367:140:74" + }, + { + "body": { + "nativeSrc": "65557:49:74", + "nodeType": "YulBlock", + "src": "65557:49:74", + "statements": [ + { + "nativeSrc": "65567:33:74", + "nodeType": "YulAssignment", + "src": "65567:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "65585:5:74", + "nodeType": "YulIdentifier", + "src": "65585:5:74" + }, + { + "kind": "number", + "nativeSrc": "65592:2:74", + "nodeType": "YulLiteral", + "src": "65592:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "65581:3:74", + "nodeType": "YulIdentifier", + "src": "65581:3:74" + }, + "nativeSrc": "65581:14:74", + "nodeType": "YulFunctionCall", + "src": "65581:14:74" + }, + { + "kind": "number", + "nativeSrc": "65597:2:74", + "nodeType": "YulLiteral", + "src": "65597:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "65577:3:74", + "nodeType": "YulIdentifier", + "src": "65577:3:74" + }, + "nativeSrc": "65577:23:74", + "nodeType": "YulFunctionCall", + "src": "65577:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "65567:6:74", + "nodeType": "YulIdentifier", + "src": "65567:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "65513:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "65540:5:74", + "nodeType": "YulTypedName", + "src": "65540:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "65550:6:74", + "nodeType": "YulTypedName", + "src": "65550:6:74", + "type": "" + } + ], + "src": "65513:93:74" + }, + { + "body": { + "nativeSrc": "65665:54:74", + "nodeType": "YulBlock", + "src": "65665:54:74", + "statements": [ + { + "nativeSrc": "65675:37:74", + "nodeType": "YulAssignment", + "src": "65675:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "65700:4:74", + "nodeType": "YulIdentifier", + "src": "65700:4:74" + }, + { + "name": "value", + "nativeSrc": "65706:5:74", + "nodeType": "YulIdentifier", + "src": "65706:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "65696:3:74", + "nodeType": "YulIdentifier", + "src": "65696:3:74" + }, + "nativeSrc": "65696:16:74", + "nodeType": "YulFunctionCall", + "src": "65696:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "65675:8:74", + "nodeType": "YulIdentifier", + "src": "65675:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "65612:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "65640:4:74", + "nodeType": "YulTypedName", + "src": "65640:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "65646:5:74", + "nodeType": "YulTypedName", + "src": "65646:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "65656:8:74", + "nodeType": "YulTypedName", + "src": "65656:8:74", + "type": "" + } + ], + "src": "65612:107:74" + }, + { + "body": { + "nativeSrc": "65801:317:74", + "nodeType": "YulBlock", + "src": "65801:317:74", + "statements": [ + { + "nativeSrc": "65811:35:74", + "nodeType": "YulVariableDeclaration", + "src": "65811:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "65832:10:74", + "nodeType": "YulIdentifier", + "src": "65832:10:74" + }, + { + "kind": "number", + "nativeSrc": "65844:1:74", + "nodeType": "YulLiteral", + "src": "65844:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "65828:3:74", + "nodeType": "YulIdentifier", + "src": "65828:3:74" + }, + "nativeSrc": "65828:18:74", + "nodeType": "YulFunctionCall", + "src": "65828:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "65815:9:74", + "nodeType": "YulTypedName", + "src": "65815:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "65855:109:74", + "nodeType": "YulVariableDeclaration", + "src": "65855:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "65886:9:74", + "nodeType": "YulIdentifier", + "src": "65886:9:74" + }, + { + "kind": "number", + "nativeSrc": "65897:66:74", + "nodeType": "YulLiteral", + "src": "65897:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "65867:18:74", + "nodeType": "YulIdentifier", + "src": "65867:18:74" + }, + "nativeSrc": "65867:97:74", + "nodeType": "YulFunctionCall", + "src": "65867:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "65859:4:74", + "nodeType": "YulTypedName", + "src": "65859:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "65973:51:74", + "nodeType": "YulAssignment", + "src": "65973:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "66004:9:74", + "nodeType": "YulIdentifier", + "src": "66004:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "66015:8:74", + "nodeType": "YulIdentifier", + "src": "66015:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "65985:18:74", + "nodeType": "YulIdentifier", + "src": "65985:18:74" + }, + "nativeSrc": "65985:39:74", + "nodeType": "YulFunctionCall", + "src": "65985:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "65973:8:74", + "nodeType": "YulIdentifier", + "src": "65973:8:74" + } + ] + }, + { + "nativeSrc": "66033:30:74", + "nodeType": "YulAssignment", + "src": "66033:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "66046:5:74", + "nodeType": "YulIdentifier", + "src": "66046:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "66057:4:74", + "nodeType": "YulIdentifier", + "src": "66057:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "66053:3:74", + "nodeType": "YulIdentifier", + "src": "66053:3:74" + }, + "nativeSrc": "66053:9:74", + "nodeType": "YulFunctionCall", + "src": "66053:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "66042:3:74", + "nodeType": "YulIdentifier", + "src": "66042:3:74" + }, + "nativeSrc": "66042:21:74", + "nodeType": "YulFunctionCall", + "src": "66042:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "66033:5:74", + "nodeType": "YulIdentifier", + "src": "66033:5:74" + } + ] + }, + { + "nativeSrc": "66072:40:74", + "nodeType": "YulAssignment", + "src": "66072:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "66085:5:74", + "nodeType": "YulIdentifier", + "src": "66085:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "66096:8:74", + "nodeType": "YulIdentifier", + "src": "66096:8:74" + }, + { + "name": "mask", + "nativeSrc": "66106:4:74", + "nodeType": "YulIdentifier", + "src": "66106:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "66092:3:74", + "nodeType": "YulIdentifier", + "src": "66092:3:74" + }, + "nativeSrc": "66092:19:74", + "nodeType": "YulFunctionCall", + "src": "66092:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "66082:2:74", + "nodeType": "YulIdentifier", + "src": "66082:2:74" + }, + "nativeSrc": "66082:30:74", + "nodeType": "YulFunctionCall", + "src": "66082:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "66072:6:74", + "nodeType": "YulIdentifier", + "src": "66072:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "65725:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "65762:5:74", + "nodeType": "YulTypedName", + "src": "65762:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "65769:10:74", + "nodeType": "YulTypedName", + "src": "65769:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "65781:8:74", + "nodeType": "YulTypedName", + "src": "65781:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "65794:6:74", + "nodeType": "YulTypedName", + "src": "65794:6:74", + "type": "" + } + ], + "src": "65725:393:74" + }, + { + "body": { + "nativeSrc": "66184:82:74", + "nodeType": "YulBlock", + "src": "66184:82:74", + "statements": [ + { + "nativeSrc": "66194:66:74", + "nodeType": "YulAssignment", + "src": "66194:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "66252:5:74", + "nodeType": "YulIdentifier", + "src": "66252:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "66234:17:74", + "nodeType": "YulIdentifier", + "src": "66234:17:74" + }, + "nativeSrc": "66234:24:74", + "nodeType": "YulFunctionCall", + "src": "66234:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "66225:8:74", + "nodeType": "YulIdentifier", + "src": "66225:8:74" + }, + "nativeSrc": "66225:34:74", + "nodeType": "YulFunctionCall", + "src": "66225:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "66207:17:74", + "nodeType": "YulIdentifier", + "src": "66207:17:74" + }, + "nativeSrc": "66207:53:74", + "nodeType": "YulFunctionCall", + "src": "66207:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "66194:9:74", + "nodeType": "YulIdentifier", + "src": "66194:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "66124:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "66164:5:74", + "nodeType": "YulTypedName", + "src": "66164:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "66174:9:74", + "nodeType": "YulTypedName", + "src": "66174:9:74", + "type": "" + } + ], + "src": "66124:142:74" + }, + { + "body": { + "nativeSrc": "66319:28:74", + "nodeType": "YulBlock", + "src": "66319:28:74", + "statements": [ + { + "nativeSrc": "66329:12:74", + "nodeType": "YulAssignment", + "src": "66329:12:74", + "value": { + "name": "value", + "nativeSrc": "66336:5:74", + "nodeType": "YulIdentifier", + "src": "66336:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "66329:3:74", + "nodeType": "YulIdentifier", + "src": "66329:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "66272:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "66305:5:74", + "nodeType": "YulTypedName", + "src": "66305:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "66315:3:74", + "nodeType": "YulTypedName", + "src": "66315:3:74", + "type": "" + } + ], + "src": "66272:75:74" + }, + { + "body": { + "nativeSrc": "66429:193:74", + "nodeType": "YulBlock", + "src": "66429:193:74", + "statements": [ + { + "nativeSrc": "66439:63:74", + "nodeType": "YulVariableDeclaration", + "src": "66439:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "66494:7:74", + "nodeType": "YulIdentifier", + "src": "66494:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "66463:30:74", + "nodeType": "YulIdentifier", + "src": "66463:30:74" + }, + "nativeSrc": "66463:39:74", + "nodeType": "YulFunctionCall", + "src": "66463:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "66443:16:74", + "nodeType": "YulTypedName", + "src": "66443:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "66518:4:74", + "nodeType": "YulIdentifier", + "src": "66518:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "66558:4:74", + "nodeType": "YulIdentifier", + "src": "66558:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "66552:5:74", + "nodeType": "YulIdentifier", + "src": "66552:5:74" + }, + "nativeSrc": "66552:11:74", + "nodeType": "YulFunctionCall", + "src": "66552:11:74" + }, + { + "name": "offset", + "nativeSrc": "66565:6:74", + "nodeType": "YulIdentifier", + "src": "66565:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "66597:16:74", + "nodeType": "YulIdentifier", + "src": "66597:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "66573:23:74", + "nodeType": "YulIdentifier", + "src": "66573:23:74" + }, + "nativeSrc": "66573:41:74", + "nodeType": "YulFunctionCall", + "src": "66573:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "66524:27:74", + "nodeType": "YulIdentifier", + "src": "66524:27:74" + }, + "nativeSrc": "66524:91:74", + "nodeType": "YulFunctionCall", + "src": "66524:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "66511:6:74", + "nodeType": "YulIdentifier", + "src": "66511:6:74" + }, + "nativeSrc": "66511:105:74", + "nodeType": "YulFunctionCall", + "src": "66511:105:74" + }, + "nativeSrc": "66511:105:74", + "nodeType": "YulExpressionStatement", + "src": "66511:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "66353:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "66406:4:74", + "nodeType": "YulTypedName", + "src": "66406:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "66412:6:74", + "nodeType": "YulTypedName", + "src": "66412:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "66420:7:74", + "nodeType": "YulTypedName", + "src": "66420:7:74", + "type": "" + } + ], + "src": "66353:269:74" + }, + { + "body": { + "nativeSrc": "66677:24:74", + "nodeType": "YulBlock", + "src": "66677:24:74", + "statements": [ + { + "nativeSrc": "66687:8:74", + "nodeType": "YulAssignment", + "src": "66687:8:74", + "value": { + "kind": "number", + "nativeSrc": "66694:1:74", + "nodeType": "YulLiteral", + "src": "66694:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "66687:3:74", + "nodeType": "YulIdentifier", + "src": "66687:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "66628:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "66673:3:74", + "nodeType": "YulTypedName", + "src": "66673:3:74", + "type": "" + } + ], + "src": "66628:73:74" + }, + { + "body": { + "nativeSrc": "66760:136:74", + "nodeType": "YulBlock", + "src": "66760:136:74", + "statements": [ + { + "nativeSrc": "66770:46:74", + "nodeType": "YulVariableDeclaration", + "src": "66770:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "66784:30:74", + "nodeType": "YulIdentifier", + "src": "66784:30:74" + }, + "nativeSrc": "66784:32:74", + "nodeType": "YulFunctionCall", + "src": "66784:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "66774:6:74", + "nodeType": "YulTypedName", + "src": "66774:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "66869:4:74", + "nodeType": "YulIdentifier", + "src": "66869:4:74" + }, + { + "name": "offset", + "nativeSrc": "66875:6:74", + "nodeType": "YulIdentifier", + "src": "66875:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "66883:6:74", + "nodeType": "YulIdentifier", + "src": "66883:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "66825:43:74", + "nodeType": "YulIdentifier", + "src": "66825:43:74" + }, + "nativeSrc": "66825:65:74", + "nodeType": "YulFunctionCall", + "src": "66825:65:74" + }, + "nativeSrc": "66825:65:74", + "nodeType": "YulExpressionStatement", + "src": "66825:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "66707:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "66746:4:74", + "nodeType": "YulTypedName", + "src": "66746:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "66752:6:74", + "nodeType": "YulTypedName", + "src": "66752:6:74", + "type": "" + } + ], + "src": "66707:189:74" + }, + { + "body": { + "nativeSrc": "66952:136:74", + "nodeType": "YulBlock", + "src": "66952:136:74", + "statements": [ + { + "body": { + "nativeSrc": "67019:63:74", + "nodeType": "YulBlock", + "src": "67019:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "67063:5:74", + "nodeType": "YulIdentifier", + "src": "67063:5:74" + }, + { + "kind": "number", + "nativeSrc": "67070:1:74", + "nodeType": "YulLiteral", + "src": "67070:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "67033:29:74", + "nodeType": "YulIdentifier", + "src": "67033:29:74" + }, + "nativeSrc": "67033:39:74", + "nodeType": "YulFunctionCall", + "src": "67033:39:74" + }, + "nativeSrc": "67033:39:74", + "nodeType": "YulExpressionStatement", + "src": "67033:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "66972:5:74", + "nodeType": "YulIdentifier", + "src": "66972:5:74" + }, + { + "name": "end", + "nativeSrc": "66979:3:74", + "nodeType": "YulIdentifier", + "src": "66979:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "66969:2:74", + "nodeType": "YulIdentifier", + "src": "66969:2:74" + }, + "nativeSrc": "66969:14:74", + "nodeType": "YulFunctionCall", + "src": "66969:14:74" + }, + "nativeSrc": "66962:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "66984:26:74", + "nodeType": "YulBlock", + "src": "66984:26:74", + "statements": [ + { + "nativeSrc": "66986:22:74", + "nodeType": "YulAssignment", + "src": "66986:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "66999:5:74", + "nodeType": "YulIdentifier", + "src": "66999:5:74" + }, + { + "kind": "number", + "nativeSrc": "67006:1:74", + "nodeType": "YulLiteral", + "src": "67006:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "66995:3:74", + "nodeType": "YulIdentifier", + "src": "66995:3:74" + }, + "nativeSrc": "66995:13:74", + "nodeType": "YulFunctionCall", + "src": "66995:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "66986:5:74", + "nodeType": "YulIdentifier", + "src": "66986:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "66966:2:74", + "nodeType": "YulBlock", + "src": "66966:2:74", + "statements": [] + }, + "src": "66962:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "66902:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "66940:5:74", + "nodeType": "YulTypedName", + "src": "66940:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "66947:3:74", + "nodeType": "YulTypedName", + "src": "66947:3:74", + "type": "" + } + ], + "src": "66902:186:74" + }, + { + "body": { + "nativeSrc": "67172:463:74", + "nodeType": "YulBlock", + "src": "67172:463:74", + "statements": [ + { + "body": { + "nativeSrc": "67198:430:74", + "nodeType": "YulBlock", + "src": "67198:430:74", + "statements": [ + { + "nativeSrc": "67212:53:74", + "nodeType": "YulVariableDeclaration", + "src": "67212:53:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "67259:5:74", + "nodeType": "YulIdentifier", + "src": "67259:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "67228:30:74", + "nodeType": "YulIdentifier", + "src": "67228:30:74" + }, + "nativeSrc": "67228:37:74", + "nodeType": "YulFunctionCall", + "src": "67228:37:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "67216:8:74", + "nodeType": "YulTypedName", + "src": "67216:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "67278:63:74", + "nodeType": "YulVariableDeclaration", + "src": "67278:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "67301:8:74", + "nodeType": "YulIdentifier", + "src": "67301:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "67329:10:74", + "nodeType": "YulIdentifier", + "src": "67329:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "67311:17:74", + "nodeType": "YulIdentifier", + "src": "67311:17:74" + }, + "nativeSrc": "67311:29:74", + "nodeType": "YulFunctionCall", + "src": "67311:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "67297:3:74", + "nodeType": "YulIdentifier", + "src": "67297:3:74" + }, + "nativeSrc": "67297:44:74", + "nodeType": "YulFunctionCall", + "src": "67297:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "67282:11:74", + "nodeType": "YulTypedName", + "src": "67282:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "67498:27:74", + "nodeType": "YulBlock", + "src": "67498:27:74", + "statements": [ + { + "nativeSrc": "67500:23:74", + "nodeType": "YulAssignment", + "src": "67500:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "67515:8:74", + "nodeType": "YulIdentifier", + "src": "67515:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "67500:11:74", + "nodeType": "YulIdentifier", + "src": "67500:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "67482:10:74", + "nodeType": "YulIdentifier", + "src": "67482:10:74" + }, + { + "kind": "number", + "nativeSrc": "67494:2:74", + "nodeType": "YulLiteral", + "src": "67494:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "67479:2:74", + "nodeType": "YulIdentifier", + "src": "67479:2:74" + }, + "nativeSrc": "67479:18:74", + "nodeType": "YulFunctionCall", + "src": "67479:18:74" + }, + "nativeSrc": "67476:49:74", + "nodeType": "YulIf", + "src": "67476:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "67567:11:74", + "nodeType": "YulIdentifier", + "src": "67567:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "67584:8:74", + "nodeType": "YulIdentifier", + "src": "67584:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "67612:3:74", + "nodeType": "YulIdentifier", + "src": "67612:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "67594:17:74", + "nodeType": "YulIdentifier", + "src": "67594:17:74" + }, + "nativeSrc": "67594:22:74", + "nodeType": "YulFunctionCall", + "src": "67594:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "67580:3:74", + "nodeType": "YulIdentifier", + "src": "67580:3:74" + }, + "nativeSrc": "67580:37:74", + "nodeType": "YulFunctionCall", + "src": "67580:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "67538:28:74", + "nodeType": "YulIdentifier", + "src": "67538:28:74" + }, + "nativeSrc": "67538:80:74", + "nodeType": "YulFunctionCall", + "src": "67538:80:74" + }, + "nativeSrc": "67538:80:74", + "nodeType": "YulExpressionStatement", + "src": "67538:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "67189:3:74", + "nodeType": "YulIdentifier", + "src": "67189:3:74" + }, + { + "kind": "number", + "nativeSrc": "67194:2:74", + "nodeType": "YulLiteral", + "src": "67194:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "67186:2:74", + "nodeType": "YulIdentifier", + "src": "67186:2:74" + }, + "nativeSrc": "67186:11:74", + "nodeType": "YulFunctionCall", + "src": "67186:11:74" + }, + "nativeSrc": "67183:445:74", + "nodeType": "YulIf", + "src": "67183:445:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "67094:541:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "67148:5:74", + "nodeType": "YulTypedName", + "src": "67148:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "67155:3:74", + "nodeType": "YulTypedName", + "src": "67155:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "67160:10:74", + "nodeType": "YulTypedName", + "src": "67160:10:74", + "type": "" + } + ], + "src": "67094:541:74" + }, + { + "body": { + "nativeSrc": "67704:54:74", + "nodeType": "YulBlock", + "src": "67704:54:74", + "statements": [ + { + "nativeSrc": "67714:37:74", + "nodeType": "YulAssignment", + "src": "67714:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "67739:4:74", + "nodeType": "YulIdentifier", + "src": "67739:4:74" + }, + { + "name": "value", + "nativeSrc": "67745:5:74", + "nodeType": "YulIdentifier", + "src": "67745:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "67735:3:74", + "nodeType": "YulIdentifier", + "src": "67735:3:74" + }, + "nativeSrc": "67735:16:74", + "nodeType": "YulFunctionCall", + "src": "67735:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "67714:8:74", + "nodeType": "YulIdentifier", + "src": "67714:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "67641:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "67679:4:74", + "nodeType": "YulTypedName", + "src": "67679:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "67685:5:74", + "nodeType": "YulTypedName", + "src": "67685:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "67695:8:74", + "nodeType": "YulTypedName", + "src": "67695:8:74", + "type": "" + } + ], + "src": "67641:117:74" + }, + { + "body": { + "nativeSrc": "67815:118:74", + "nodeType": "YulBlock", + "src": "67815:118:74", + "statements": [ + { + "nativeSrc": "67825:68:74", + "nodeType": "YulVariableDeclaration", + "src": "67825:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "67874:1:74", + "nodeType": "YulLiteral", + "src": "67874:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "67877:5:74", + "nodeType": "YulIdentifier", + "src": "67877:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "67870:3:74", + "nodeType": "YulIdentifier", + "src": "67870:3:74" + }, + "nativeSrc": "67870:13:74", + "nodeType": "YulFunctionCall", + "src": "67870:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "67889:1:74", + "nodeType": "YulLiteral", + "src": "67889:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "67885:3:74", + "nodeType": "YulIdentifier", + "src": "67885:3:74" + }, + "nativeSrc": "67885:6:74", + "nodeType": "YulFunctionCall", + "src": "67885:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "67841:28:74", + "nodeType": "YulIdentifier", + "src": "67841:28:74" + }, + "nativeSrc": "67841:51:74", + "nodeType": "YulFunctionCall", + "src": "67841:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "67837:3:74", + "nodeType": "YulIdentifier", + "src": "67837:3:74" + }, + "nativeSrc": "67837:56:74", + "nodeType": "YulFunctionCall", + "src": "67837:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "67829:4:74", + "nodeType": "YulTypedName", + "src": "67829:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "67902:25:74", + "nodeType": "YulAssignment", + "src": "67902:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "67916:4:74", + "nodeType": "YulIdentifier", + "src": "67916:4:74" + }, + { + "name": "mask", + "nativeSrc": "67922:4:74", + "nodeType": "YulIdentifier", + "src": "67922:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "67912:3:74", + "nodeType": "YulIdentifier", + "src": "67912:3:74" + }, + "nativeSrc": "67912:15:74", + "nodeType": "YulFunctionCall", + "src": "67912:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "67902:6:74", + "nodeType": "YulIdentifier", + "src": "67902:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "67764:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "67792:4:74", + "nodeType": "YulTypedName", + "src": "67792:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "67798:5:74", + "nodeType": "YulTypedName", + "src": "67798:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "67808:6:74", + "nodeType": "YulTypedName", + "src": "67808:6:74", + "type": "" + } + ], + "src": "67764:169:74" + }, + { + "body": { + "nativeSrc": "68019:214:74", + "nodeType": "YulBlock", + "src": "68019:214:74", + "statements": [ + { + "nativeSrc": "68152:37:74", + "nodeType": "YulAssignment", + "src": "68152:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "68179:4:74", + "nodeType": "YulIdentifier", + "src": "68179:4:74" + }, + { + "name": "len", + "nativeSrc": "68185:3:74", + "nodeType": "YulIdentifier", + "src": "68185:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "68160:18:74", + "nodeType": "YulIdentifier", + "src": "68160:18:74" + }, + "nativeSrc": "68160:29:74", + "nodeType": "YulFunctionCall", + "src": "68160:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "68152:4:74", + "nodeType": "YulIdentifier", + "src": "68152:4:74" + } + ] + }, + { + "nativeSrc": "68198:29:74", + "nodeType": "YulAssignment", + "src": "68198:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "68209:4:74", + "nodeType": "YulIdentifier", + "src": "68209:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "68219:1:74", + "nodeType": "YulLiteral", + "src": "68219:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "68222:3:74", + "nodeType": "YulIdentifier", + "src": "68222:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "68215:3:74", + "nodeType": "YulIdentifier", + "src": "68215:3:74" + }, + "nativeSrc": "68215:11:74", + "nodeType": "YulFunctionCall", + "src": "68215:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "68206:2:74", + "nodeType": "YulIdentifier", + "src": "68206:2:74" + }, + "nativeSrc": "68206:21:74", + "nodeType": "YulFunctionCall", + "src": "68206:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "68198:4:74", + "nodeType": "YulIdentifier", + "src": "68198:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "67938:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "68000:4:74", + "nodeType": "YulTypedName", + "src": "68000:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "68006:3:74", + "nodeType": "YulTypedName", + "src": "68006:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "68014:4:74", + "nodeType": "YulTypedName", + "src": "68014:4:74", + "type": "" + } + ], + "src": "67938:295:74" + }, + { + "body": { + "nativeSrc": "68335:1301:74", + "nodeType": "YulBlock", + "src": "68335:1301:74", + "statements": [ + { + "nativeSrc": "68346:57:74", + "nodeType": "YulVariableDeclaration", + "src": "68346:57:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "68394:3:74", + "nodeType": "YulIdentifier", + "src": "68394:3:74" + }, + { + "name": "len", + "nativeSrc": "68399:3:74", + "nodeType": "YulIdentifier", + "src": "68399:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "68360:33:74", + "nodeType": "YulIdentifier", + "src": "68360:33:74" + }, + "nativeSrc": "68360:43:74", + "nodeType": "YulFunctionCall", + "src": "68360:43:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "68350:6:74", + "nodeType": "YulTypedName", + "src": "68350:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "68488:22:74", + "nodeType": "YulBlock", + "src": "68488:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "68490:16:74", + "nodeType": "YulIdentifier", + "src": "68490:16:74" + }, + "nativeSrc": "68490:18:74", + "nodeType": "YulFunctionCall", + "src": "68490:18:74" + }, + "nativeSrc": "68490:18:74", + "nodeType": "YulExpressionStatement", + "src": "68490:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "68460:6:74", + "nodeType": "YulIdentifier", + "src": "68460:6:74" + }, + { + "kind": "number", + "nativeSrc": "68468:18:74", + "nodeType": "YulLiteral", + "src": "68468:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "68457:2:74", + "nodeType": "YulIdentifier", + "src": "68457:2:74" + }, + "nativeSrc": "68457:30:74", + "nodeType": "YulFunctionCall", + "src": "68457:30:74" + }, + "nativeSrc": "68454:56:74", + "nodeType": "YulIf", + "src": "68454:56:74" + }, + { + "nativeSrc": "68520:52:74", + "nodeType": "YulVariableDeclaration", + "src": "68520:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "68566:4:74", + "nodeType": "YulIdentifier", + "src": "68566:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "68560:5:74", + "nodeType": "YulIdentifier", + "src": "68560:5:74" + }, + "nativeSrc": "68560:11:74", + "nodeType": "YulFunctionCall", + "src": "68560:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "68534:25:74", + "nodeType": "YulIdentifier", + "src": "68534:25:74" + }, + "nativeSrc": "68534:38:74", + "nodeType": "YulFunctionCall", + "src": "68534:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "68524:6:74", + "nodeType": "YulTypedName", + "src": "68524:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "68664:4:74", + "nodeType": "YulIdentifier", + "src": "68664:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "68670:6:74", + "nodeType": "YulIdentifier", + "src": "68670:6:74" + }, + { + "name": "newLen", + "nativeSrc": "68678:6:74", + "nodeType": "YulIdentifier", + "src": "68678:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "68619:44:74", + "nodeType": "YulIdentifier", + "src": "68619:44:74" + }, + "nativeSrc": "68619:66:74", + "nodeType": "YulFunctionCall", + "src": "68619:66:74" + }, + "nativeSrc": "68619:66:74", + "nodeType": "YulExpressionStatement", + "src": "68619:66:74" + }, + { + "nativeSrc": "68695:18:74", + "nodeType": "YulVariableDeclaration", + "src": "68695:18:74", + "value": { + "kind": "number", + "nativeSrc": "68712:1:74", + "nodeType": "YulLiteral", + "src": "68712:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "68699:9:74", + "nodeType": "YulTypedName", + "src": "68699:9:74", + "type": "" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "68760:624:74", + "nodeType": "YulBlock", + "src": "68760:624:74", + "statements": [ + { + "nativeSrc": "68774:37:74", + "nodeType": "YulVariableDeclaration", + "src": "68774:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "68793:6:74", + "nodeType": "YulIdentifier", + "src": "68793:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "68805:4:74", + "nodeType": "YulLiteral", + "src": "68805:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "68801:3:74", + "nodeType": "YulIdentifier", + "src": "68801:3:74" + }, + "nativeSrc": "68801:9:74", + "nodeType": "YulFunctionCall", + "src": "68801:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "68789:3:74", + "nodeType": "YulIdentifier", + "src": "68789:3:74" + }, + "nativeSrc": "68789:22:74", + "nodeType": "YulFunctionCall", + "src": "68789:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "68778:7:74", + "nodeType": "YulTypedName", + "src": "68778:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "68825:50:74", + "nodeType": "YulVariableDeclaration", + "src": "68825:50:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "68870:4:74", + "nodeType": "YulIdentifier", + "src": "68870:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "68839:30:74", + "nodeType": "YulIdentifier", + "src": "68839:30:74" + }, + "nativeSrc": "68839:36:74", + "nodeType": "YulFunctionCall", + "src": "68839:36:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "68829:6:74", + "nodeType": "YulTypedName", + "src": "68829:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "68888:10:74", + "nodeType": "YulVariableDeclaration", + "src": "68888:10:74", + "value": { + "kind": "number", + "nativeSrc": "68897:1:74", + "nodeType": "YulLiteral", + "src": "68897:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "68892:1:74", + "nodeType": "YulTypedName", + "src": "68892:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "68956:170:74", + "nodeType": "YulBlock", + "src": "68956:170:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "68981:6:74", + "nodeType": "YulIdentifier", + "src": "68981:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "69006:3:74", + "nodeType": "YulIdentifier", + "src": "69006:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "69011:9:74", + "nodeType": "YulIdentifier", + "src": "69011:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69002:3:74", + "nodeType": "YulIdentifier", + "src": "69002:3:74" + }, + "nativeSrc": "69002:19:74", + "nodeType": "YulFunctionCall", + "src": "69002:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "68989:12:74", + "nodeType": "YulIdentifier", + "src": "68989:12:74" + }, + "nativeSrc": "68989:33:74", + "nodeType": "YulFunctionCall", + "src": "68989:33:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "68974:6:74", + "nodeType": "YulIdentifier", + "src": "68974:6:74" + }, + "nativeSrc": "68974:49:74", + "nodeType": "YulFunctionCall", + "src": "68974:49:74" + }, + "nativeSrc": "68974:49:74", + "nodeType": "YulExpressionStatement", + "src": "68974:49:74" + }, + { + "nativeSrc": "69040:24:74", + "nodeType": "YulAssignment", + "src": "69040:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "69054:6:74", + "nodeType": "YulIdentifier", + "src": "69054:6:74" + }, + { + "kind": "number", + "nativeSrc": "69062:1:74", + "nodeType": "YulLiteral", + "src": "69062:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69050:3:74", + "nodeType": "YulIdentifier", + "src": "69050:3:74" + }, + "nativeSrc": "69050:14:74", + "nodeType": "YulFunctionCall", + "src": "69050:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "69040:6:74", + "nodeType": "YulIdentifier", + "src": "69040:6:74" + } + ] + }, + { + "nativeSrc": "69081:31:74", + "nodeType": "YulAssignment", + "src": "69081:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "69098:9:74", + "nodeType": "YulIdentifier", + "src": "69098:9:74" + }, + { + "kind": "number", + "nativeSrc": "69109:2:74", + "nodeType": "YulLiteral", + "src": "69109:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69094:3:74", + "nodeType": "YulIdentifier", + "src": "69094:3:74" + }, + "nativeSrc": "69094:18:74", + "nodeType": "YulFunctionCall", + "src": "69094:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "69081:9:74", + "nodeType": "YulIdentifier", + "src": "69081:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "68922:1:74", + "nodeType": "YulIdentifier", + "src": "68922:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "68925:7:74", + "nodeType": "YulIdentifier", + "src": "68925:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "68919:2:74", + "nodeType": "YulIdentifier", + "src": "68919:2:74" + }, + "nativeSrc": "68919:14:74", + "nodeType": "YulFunctionCall", + "src": "68919:14:74" + }, + "nativeSrc": "68911:215:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "68934:21:74", + "nodeType": "YulBlock", + "src": "68934:21:74", + "statements": [ + { + "nativeSrc": "68936:17:74", + "nodeType": "YulAssignment", + "src": "68936:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "68945:1:74", + "nodeType": "YulIdentifier", + "src": "68945:1:74" + }, + { + "kind": "number", + "nativeSrc": "68948:4:74", + "nodeType": "YulLiteral", + "src": "68948:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "68941:3:74", + "nodeType": "YulIdentifier", + "src": "68941:3:74" + }, + "nativeSrc": "68941:12:74", + "nodeType": "YulFunctionCall", + "src": "68941:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "68936:1:74", + "nodeType": "YulIdentifier", + "src": "68936:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "68915:3:74", + "nodeType": "YulBlock", + "src": "68915:3:74", + "statements": [] + }, + "src": "68911:215:74" + }, + { + "body": { + "nativeSrc": "69162:163:74", + "nodeType": "YulBlock", + "src": "69162:163:74", + "statements": [ + { + "nativeSrc": "69180:50:74", + "nodeType": "YulVariableDeclaration", + "src": "69180:50:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "69214:3:74", + "nodeType": "YulIdentifier", + "src": "69214:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "69219:9:74", + "nodeType": "YulIdentifier", + "src": "69219:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69210:3:74", + "nodeType": "YulIdentifier", + "src": "69210:3:74" + }, + "nativeSrc": "69210:19:74", + "nodeType": "YulFunctionCall", + "src": "69210:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "69197:12:74", + "nodeType": "YulIdentifier", + "src": "69197:12:74" + }, + "nativeSrc": "69197:33:74", + "nodeType": "YulFunctionCall", + "src": "69197:33:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "69184:9:74", + "nodeType": "YulTypedName", + "src": "69184:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "69254:6:74", + "nodeType": "YulIdentifier", + "src": "69254:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "69281:9:74", + "nodeType": "YulIdentifier", + "src": "69281:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "69296:6:74", + "nodeType": "YulIdentifier", + "src": "69296:6:74" + }, + { + "kind": "number", + "nativeSrc": "69304:4:74", + "nodeType": "YulLiteral", + "src": "69304:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "69292:3:74", + "nodeType": "YulIdentifier", + "src": "69292:3:74" + }, + "nativeSrc": "69292:17:74", + "nodeType": "YulFunctionCall", + "src": "69292:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "69262:18:74", + "nodeType": "YulIdentifier", + "src": "69262:18:74" + }, + "nativeSrc": "69262:48:74", + "nodeType": "YulFunctionCall", + "src": "69262:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "69247:6:74", + "nodeType": "YulIdentifier", + "src": "69247:6:74" + }, + "nativeSrc": "69247:64:74", + "nodeType": "YulFunctionCall", + "src": "69247:64:74" + }, + "nativeSrc": "69247:64:74", + "nodeType": "YulExpressionStatement", + "src": "69247:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "69145:7:74", + "nodeType": "YulIdentifier", + "src": "69145:7:74" + }, + { + "name": "newLen", + "nativeSrc": "69154:6:74", + "nodeType": "YulIdentifier", + "src": "69154:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "69142:2:74", + "nodeType": "YulIdentifier", + "src": "69142:2:74" + }, + "nativeSrc": "69142:19:74", + "nodeType": "YulFunctionCall", + "src": "69142:19:74" + }, + "nativeSrc": "69139:186:74", + "nodeType": "YulIf", + "src": "69139:186:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "69345:4:74", + "nodeType": "YulIdentifier", + "src": "69345:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "69359:6:74", + "nodeType": "YulIdentifier", + "src": "69359:6:74" + }, + { + "kind": "number", + "nativeSrc": "69367:1:74", + "nodeType": "YulLiteral", + "src": "69367:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "69355:3:74", + "nodeType": "YulIdentifier", + "src": "69355:3:74" + }, + "nativeSrc": "69355:14:74", + "nodeType": "YulFunctionCall", + "src": "69355:14:74" + }, + { + "kind": "number", + "nativeSrc": "69371:1:74", + "nodeType": "YulLiteral", + "src": "69371:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69351:3:74", + "nodeType": "YulIdentifier", + "src": "69351:3:74" + }, + "nativeSrc": "69351:22:74", + "nodeType": "YulFunctionCall", + "src": "69351:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "69338:6:74", + "nodeType": "YulIdentifier", + "src": "69338:6:74" + }, + "nativeSrc": "69338:36:74", + "nodeType": "YulFunctionCall", + "src": "69338:36:74" + }, + "nativeSrc": "69338:36:74", + "nodeType": "YulExpressionStatement", + "src": "69338:36:74" + } + ] + }, + "nativeSrc": "68753:631:74", + "nodeType": "YulCase", + "src": "68753:631:74", + "value": { + "kind": "number", + "nativeSrc": "68758:1:74", + "nodeType": "YulLiteral", + "src": "68758:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "69401:229:74", + "nodeType": "YulBlock", + "src": "69401:229:74", + "statements": [ + { + "nativeSrc": "69415:14:74", + "nodeType": "YulVariableDeclaration", + "src": "69415:14:74", + "value": { + "kind": "number", + "nativeSrc": "69428:1:74", + "nodeType": "YulLiteral", + "src": "69428:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "69419:5:74", + "nodeType": "YulTypedName", + "src": "69419:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "69452:74:74", + "nodeType": "YulBlock", + "src": "69452:74:74", + "statements": [ + { + "nativeSrc": "69470:42:74", + "nodeType": "YulAssignment", + "src": "69470:42:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "69496:3:74", + "nodeType": "YulIdentifier", + "src": "69496:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "69501:9:74", + "nodeType": "YulIdentifier", + "src": "69501:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69492:3:74", + "nodeType": "YulIdentifier", + "src": "69492:3:74" + }, + "nativeSrc": "69492:19:74", + "nodeType": "YulFunctionCall", + "src": "69492:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "69479:12:74", + "nodeType": "YulIdentifier", + "src": "69479:12:74" + }, + "nativeSrc": "69479:33:74", + "nodeType": "YulFunctionCall", + "src": "69479:33:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "69470:5:74", + "nodeType": "YulIdentifier", + "src": "69470:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "69445:6:74", + "nodeType": "YulIdentifier", + "src": "69445:6:74" + }, + "nativeSrc": "69442:84:74", + "nodeType": "YulIf", + "src": "69442:84:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "69546:4:74", + "nodeType": "YulIdentifier", + "src": "69546:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "69605:5:74", + "nodeType": "YulIdentifier", + "src": "69605:5:74" + }, + { + "name": "newLen", + "nativeSrc": "69612:6:74", + "nodeType": "YulIdentifier", + "src": "69612:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "69552:52:74", + "nodeType": "YulIdentifier", + "src": "69552:52:74" + }, + "nativeSrc": "69552:67:74", + "nodeType": "YulFunctionCall", + "src": "69552:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "69539:6:74", + "nodeType": "YulIdentifier", + "src": "69539:6:74" + }, + "nativeSrc": "69539:81:74", + "nodeType": "YulFunctionCall", + "src": "69539:81:74" + }, + "nativeSrc": "69539:81:74", + "nodeType": "YulExpressionStatement", + "src": "69539:81:74" + } + ] + }, + "nativeSrc": "69393:237:74", + "nodeType": "YulCase", + "src": "69393:237:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "68733:6:74", + "nodeType": "YulIdentifier", + "src": "68733:6:74" + }, + { + "kind": "number", + "nativeSrc": "68741:2:74", + "nodeType": "YulLiteral", + "src": "68741:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "68730:2:74", + "nodeType": "YulIdentifier", + "src": "68730:2:74" + }, + "nativeSrc": "68730:14:74", + "nodeType": "YulFunctionCall", + "src": "68730:14:74" + }, + "nativeSrc": "68723:907:74", + "nodeType": "YulSwitch", + "src": "68723:907:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage", + "nativeSrc": "68238:1398:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "68319:4:74", + "nodeType": "YulTypedName", + "src": "68319:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "68325:3:74", + "nodeType": "YulTypedName", + "src": "68325:3:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "68330:3:74", + "nodeType": "YulTypedName", + "src": "68330:3:74", + "type": "" + } + ], + "src": "68238:1398:74" + }, + { + "body": { + "nativeSrc": "69748:122:74", + "nodeType": "YulBlock", + "src": "69748:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "69770:6:74", + "nodeType": "YulIdentifier", + "src": "69770:6:74" + }, + { + "kind": "number", + "nativeSrc": "69778:1:74", + "nodeType": "YulLiteral", + "src": "69778:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69766:3:74", + "nodeType": "YulIdentifier", + "src": "69766:3:74" + }, + "nativeSrc": "69766:14:74", + "nodeType": "YulFunctionCall", + "src": "69766:14:74" + }, + { + "hexValue": "455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f72", + "kind": "string", + "nativeSrc": "69782:34:74", + "nodeType": "YulLiteral", + "src": "69782:34:74", + "type": "", + "value": "ERC1155: caller is not owner nor" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "69759:6:74", + "nodeType": "YulIdentifier", + "src": "69759:6:74" + }, + "nativeSrc": "69759:58:74", + "nodeType": "YulFunctionCall", + "src": "69759:58:74" + }, + "nativeSrc": "69759:58:74", + "nodeType": "YulExpressionStatement", + "src": "69759:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "69838:6:74", + "nodeType": "YulIdentifier", + "src": "69838:6:74" + }, + { + "kind": "number", + "nativeSrc": "69846:2:74", + "nodeType": "YulLiteral", + "src": "69846:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "69834:3:74", + "nodeType": "YulIdentifier", + "src": "69834:3:74" + }, + "nativeSrc": "69834:15:74", + "nodeType": "YulFunctionCall", + "src": "69834:15:74" + }, + { + "hexValue": "20617070726f766564", + "kind": "string", + "nativeSrc": "69851:11:74", + "nodeType": "YulLiteral", + "src": "69851:11:74", + "type": "", + "value": " approved" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "69827:6:74", + "nodeType": "YulIdentifier", + "src": "69827:6:74" + }, + "nativeSrc": "69827:36:74", + "nodeType": "YulFunctionCall", + "src": "69827:36:74" + }, + "nativeSrc": "69827:36:74", + "nodeType": "YulExpressionStatement", + "src": "69827:36:74" + } + ] + }, + "name": "store_literal_in_memory_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a", + "nativeSrc": "69642:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "69740:6:74", + "nodeType": "YulTypedName", + "src": "69740:6:74", + "type": "" + } + ], + "src": "69642:228:74" + }, + { + "body": { + "nativeSrc": "70022:220:74", + "nodeType": "YulBlock", + "src": "70022:220:74", + "statements": [ + { + "nativeSrc": "70032:74:74", + "nodeType": "YulAssignment", + "src": "70032:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "70098:3:74", + "nodeType": "YulIdentifier", + "src": "70098:3:74" + }, + { + "kind": "number", + "nativeSrc": "70103:2:74", + "nodeType": "YulLiteral", + "src": "70103:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "70039:58:74", + "nodeType": "YulIdentifier", + "src": "70039:58:74" + }, + "nativeSrc": "70039:67:74", + "nodeType": "YulFunctionCall", + "src": "70039:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "70032:3:74", + "nodeType": "YulIdentifier", + "src": "70032:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "70204:3:74", + "nodeType": "YulIdentifier", + "src": "70204:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a", + "nativeSrc": "70115:88:74", + "nodeType": "YulIdentifier", + "src": "70115:88:74" + }, + "nativeSrc": "70115:93:74", + "nodeType": "YulFunctionCall", + "src": "70115:93:74" + }, + "nativeSrc": "70115:93:74", + "nodeType": "YulExpressionStatement", + "src": "70115:93:74" + }, + { + "nativeSrc": "70217:19:74", + "nodeType": "YulAssignment", + "src": "70217:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "70228:3:74", + "nodeType": "YulIdentifier", + "src": "70228:3:74" + }, + { + "kind": "number", + "nativeSrc": "70233:2:74", + "nodeType": "YulLiteral", + "src": "70233:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "70224:3:74", + "nodeType": "YulIdentifier", + "src": "70224:3:74" + }, + "nativeSrc": "70224:12:74", + "nodeType": "YulFunctionCall", + "src": "70224:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "70217:3:74", + "nodeType": "YulIdentifier", + "src": "70217:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "69876:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "70010:3:74", + "nodeType": "YulTypedName", + "src": "70010:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "70018:3:74", + "nodeType": "YulTypedName", + "src": "70018:3:74", + "type": "" + } + ], + "src": "69876:366:74" + }, + { + "body": { + "nativeSrc": "70419:248:74", + "nodeType": "YulBlock", + "src": "70419:248:74", + "statements": [ + { + "nativeSrc": "70429:26:74", + "nodeType": "YulAssignment", + "src": "70429:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "70441:9:74", + "nodeType": "YulIdentifier", + "src": "70441:9:74" + }, + { + "kind": "number", + "nativeSrc": "70452:2:74", + "nodeType": "YulLiteral", + "src": "70452:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "70437:3:74", + "nodeType": "YulIdentifier", + "src": "70437:3:74" + }, + "nativeSrc": "70437:18:74", + "nodeType": "YulFunctionCall", + "src": "70437:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "70429:4:74", + "nodeType": "YulIdentifier", + "src": "70429:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "70476:9:74", + "nodeType": "YulIdentifier", + "src": "70476:9:74" + }, + { + "kind": "number", + "nativeSrc": "70487:1:74", + "nodeType": "YulLiteral", + "src": "70487:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "70472:3:74", + "nodeType": "YulIdentifier", + "src": "70472:3:74" + }, + "nativeSrc": "70472:17:74", + "nodeType": "YulFunctionCall", + "src": "70472:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "70495:4:74", + "nodeType": "YulIdentifier", + "src": "70495:4:74" + }, + { + "name": "headStart", + "nativeSrc": "70501:9:74", + "nodeType": "YulIdentifier", + "src": "70501:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "70491:3:74", + "nodeType": "YulIdentifier", + "src": "70491:3:74" + }, + "nativeSrc": "70491:20:74", + "nodeType": "YulFunctionCall", + "src": "70491:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "70465:6:74", + "nodeType": "YulIdentifier", + "src": "70465:6:74" + }, + "nativeSrc": "70465:47:74", + "nodeType": "YulFunctionCall", + "src": "70465:47:74" + }, + "nativeSrc": "70465:47:74", + "nodeType": "YulExpressionStatement", + "src": "70465:47:74" + }, + { + "nativeSrc": "70521:139:74", + "nodeType": "YulAssignment", + "src": "70521:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "70655:4:74", + "nodeType": "YulIdentifier", + "src": "70655:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "70529:124:74", + "nodeType": "YulIdentifier", + "src": "70529:124:74" + }, + "nativeSrc": "70529:131:74", + "nodeType": "YulFunctionCall", + "src": "70529:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "70521:4:74", + "nodeType": "YulIdentifier", + "src": "70521:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "70248:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "70399:9:74", + "nodeType": "YulTypedName", + "src": "70399:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "70414:4:74", + "nodeType": "YulTypedName", + "src": "70414:4:74", + "type": "" + } + ], + "src": "70248:419:74" + }, + { + "body": { + "nativeSrc": "70779:119:74", + "nodeType": "YulBlock", + "src": "70779:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "70801:6:74", + "nodeType": "YulIdentifier", + "src": "70801:6:74" + }, + { + "kind": "number", + "nativeSrc": "70809:1:74", + "nodeType": "YulLiteral", + "src": "70809:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "70797:3:74", + "nodeType": "YulIdentifier", + "src": "70797:3:74" + }, + "nativeSrc": "70797:14:74", + "nodeType": "YulFunctionCall", + "src": "70797:14:74" + }, + { + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", + "kind": "string", + "nativeSrc": "70813:34:74", + "nodeType": "YulLiteral", + "src": "70813:34:74", + "type": "", + "value": "Ownable: new owner is the zero a" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "70790:6:74", + "nodeType": "YulIdentifier", + "src": "70790:6:74" + }, + "nativeSrc": "70790:58:74", + "nodeType": "YulFunctionCall", + "src": "70790:58:74" + }, + "nativeSrc": "70790:58:74", + "nodeType": "YulExpressionStatement", + "src": "70790:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "70869:6:74", + "nodeType": "YulIdentifier", + "src": "70869:6:74" + }, + { + "kind": "number", + "nativeSrc": "70877:2:74", + "nodeType": "YulLiteral", + "src": "70877:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "70865:3:74", + "nodeType": "YulIdentifier", + "src": "70865:3:74" + }, + "nativeSrc": "70865:15:74", + "nodeType": "YulFunctionCall", + "src": "70865:15:74" + }, + { + "hexValue": "646472657373", + "kind": "string", + "nativeSrc": "70882:8:74", + "nodeType": "YulLiteral", + "src": "70882:8:74", + "type": "", + "value": "ddress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "70858:6:74", + "nodeType": "YulIdentifier", + "src": "70858:6:74" + }, + "nativeSrc": "70858:33:74", + "nodeType": "YulFunctionCall", + "src": "70858:33:74" + }, + "nativeSrc": "70858:33:74", + "nodeType": "YulExpressionStatement", + "src": "70858:33:74" + } + ] + }, + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "70673:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "70771:6:74", + "nodeType": "YulTypedName", + "src": "70771:6:74", + "type": "" + } + ], + "src": "70673:225:74" + }, + { + "body": { + "nativeSrc": "71050:220:74", + "nodeType": "YulBlock", + "src": "71050:220:74", + "statements": [ + { + "nativeSrc": "71060:74:74", + "nodeType": "YulAssignment", + "src": "71060:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "71126:3:74", + "nodeType": "YulIdentifier", + "src": "71126:3:74" + }, + { + "kind": "number", + "nativeSrc": "71131:2:74", + "nodeType": "YulLiteral", + "src": "71131:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "71067:58:74", + "nodeType": "YulIdentifier", + "src": "71067:58:74" + }, + "nativeSrc": "71067:67:74", + "nodeType": "YulFunctionCall", + "src": "71067:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "71060:3:74", + "nodeType": "YulIdentifier", + "src": "71060:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "71232:3:74", + "nodeType": "YulIdentifier", + "src": "71232:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "nativeSrc": "71143:88:74", + "nodeType": "YulIdentifier", + "src": "71143:88:74" + }, + "nativeSrc": "71143:93:74", + "nodeType": "YulFunctionCall", + "src": "71143:93:74" + }, + "nativeSrc": "71143:93:74", + "nodeType": "YulExpressionStatement", + "src": "71143:93:74" + }, + { + "nativeSrc": "71245:19:74", + "nodeType": "YulAssignment", + "src": "71245:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "71256:3:74", + "nodeType": "YulIdentifier", + "src": "71256:3:74" + }, + { + "kind": "number", + "nativeSrc": "71261:2:74", + "nodeType": "YulLiteral", + "src": "71261:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "71252:3:74", + "nodeType": "YulIdentifier", + "src": "71252:3:74" + }, + "nativeSrc": "71252:12:74", + "nodeType": "YulFunctionCall", + "src": "71252:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "71245:3:74", + "nodeType": "YulIdentifier", + "src": "71245:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "70904:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "71038:3:74", + "nodeType": "YulTypedName", + "src": "71038:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "71046:3:74", + "nodeType": "YulTypedName", + "src": "71046:3:74", + "type": "" + } + ], + "src": "70904:366:74" + }, + { + "body": { + "nativeSrc": "71447:248:74", + "nodeType": "YulBlock", + "src": "71447:248:74", + "statements": [ + { + "nativeSrc": "71457:26:74", + "nodeType": "YulAssignment", + "src": "71457:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "71469:9:74", + "nodeType": "YulIdentifier", + "src": "71469:9:74" + }, + { + "kind": "number", + "nativeSrc": "71480:2:74", + "nodeType": "YulLiteral", + "src": "71480:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "71465:3:74", + "nodeType": "YulIdentifier", + "src": "71465:3:74" + }, + "nativeSrc": "71465:18:74", + "nodeType": "YulFunctionCall", + "src": "71465:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "71457:4:74", + "nodeType": "YulIdentifier", + "src": "71457:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "71504:9:74", + "nodeType": "YulIdentifier", + "src": "71504:9:74" + }, + { + "kind": "number", + "nativeSrc": "71515:1:74", + "nodeType": "YulLiteral", + "src": "71515:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "71500:3:74", + "nodeType": "YulIdentifier", + "src": "71500:3:74" + }, + "nativeSrc": "71500:17:74", + "nodeType": "YulFunctionCall", + "src": "71500:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "71523:4:74", + "nodeType": "YulIdentifier", + "src": "71523:4:74" + }, + { + "name": "headStart", + "nativeSrc": "71529:9:74", + "nodeType": "YulIdentifier", + "src": "71529:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "71519:3:74", + "nodeType": "YulIdentifier", + "src": "71519:3:74" + }, + "nativeSrc": "71519:20:74", + "nodeType": "YulFunctionCall", + "src": "71519:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "71493:6:74", + "nodeType": "YulIdentifier", + "src": "71493:6:74" + }, + "nativeSrc": "71493:47:74", + "nodeType": "YulFunctionCall", + "src": "71493:47:74" + }, + "nativeSrc": "71493:47:74", + "nodeType": "YulExpressionStatement", + "src": "71493:47:74" + }, + { + "nativeSrc": "71549:139:74", + "nodeType": "YulAssignment", + "src": "71549:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "71683:4:74", + "nodeType": "YulIdentifier", + "src": "71683:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "71557:124:74", + "nodeType": "YulIdentifier", + "src": "71557:124:74" + }, + "nativeSrc": "71557:131:74", + "nodeType": "YulFunctionCall", + "src": "71557:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "71549:4:74", + "nodeType": "YulIdentifier", + "src": "71549:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "71276:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "71427:9:74", + "nodeType": "YulTypedName", + "src": "71427:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "71442:4:74", + "nodeType": "YulTypedName", + "src": "71442:4:74", + "type": "" + } + ], + "src": "71276:419:74" + }, + { + "body": { + "nativeSrc": "71807:114:74", + "nodeType": "YulBlock", + "src": "71807:114:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "71829:6:74", + "nodeType": "YulIdentifier", + "src": "71829:6:74" + }, + { + "kind": "number", + "nativeSrc": "71837:1:74", + "nodeType": "YulLiteral", + "src": "71837:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "71825:3:74", + "nodeType": "YulIdentifier", + "src": "71825:3:74" + }, + "nativeSrc": "71825:14:74", + "nodeType": "YulFunctionCall", + "src": "71825:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", + "kind": "string", + "nativeSrc": "71841:34:74", + "nodeType": "YulLiteral", + "src": "71841:34:74", + "type": "", + "value": "ERC721: approval to current owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "71818:6:74", + "nodeType": "YulIdentifier", + "src": "71818:6:74" + }, + "nativeSrc": "71818:58:74", + "nodeType": "YulFunctionCall", + "src": "71818:58:74" + }, + "nativeSrc": "71818:58:74", + "nodeType": "YulExpressionStatement", + "src": "71818:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "71897:6:74", + "nodeType": "YulIdentifier", + "src": "71897:6:74" + }, + { + "kind": "number", + "nativeSrc": "71905:2:74", + "nodeType": "YulLiteral", + "src": "71905:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "71893:3:74", + "nodeType": "YulIdentifier", + "src": "71893:3:74" + }, + "nativeSrc": "71893:15:74", + "nodeType": "YulFunctionCall", + "src": "71893:15:74" + }, + { + "hexValue": "72", + "kind": "string", + "nativeSrc": "71910:3:74", + "nodeType": "YulLiteral", + "src": "71910:3:74", + "type": "", + "value": "r" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "71886:6:74", + "nodeType": "YulIdentifier", + "src": "71886:6:74" + }, + "nativeSrc": "71886:28:74", + "nodeType": "YulFunctionCall", + "src": "71886:28:74" + }, + "nativeSrc": "71886:28:74", + "nodeType": "YulExpressionStatement", + "src": "71886:28:74" + } + ] + }, + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "71701:220:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "71799:6:74", + "nodeType": "YulTypedName", + "src": "71799:6:74", + "type": "" + } + ], + "src": "71701:220:74" + }, + { + "body": { + "nativeSrc": "72073:220:74", + "nodeType": "YulBlock", + "src": "72073:220:74", + "statements": [ + { + "nativeSrc": "72083:74:74", + "nodeType": "YulAssignment", + "src": "72083:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "72149:3:74", + "nodeType": "YulIdentifier", + "src": "72149:3:74" + }, + { + "kind": "number", + "nativeSrc": "72154:2:74", + "nodeType": "YulLiteral", + "src": "72154:2:74", + "type": "", + "value": "33" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "72090:58:74", + "nodeType": "YulIdentifier", + "src": "72090:58:74" + }, + "nativeSrc": "72090:67:74", + "nodeType": "YulFunctionCall", + "src": "72090:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "72083:3:74", + "nodeType": "YulIdentifier", + "src": "72083:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "72255:3:74", + "nodeType": "YulIdentifier", + "src": "72255:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "72166:88:74", + "nodeType": "YulIdentifier", + "src": "72166:88:74" + }, + "nativeSrc": "72166:93:74", + "nodeType": "YulFunctionCall", + "src": "72166:93:74" + }, + "nativeSrc": "72166:93:74", + "nodeType": "YulExpressionStatement", + "src": "72166:93:74" + }, + { + "nativeSrc": "72268:19:74", + "nodeType": "YulAssignment", + "src": "72268:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "72279:3:74", + "nodeType": "YulIdentifier", + "src": "72279:3:74" + }, + { + "kind": "number", + "nativeSrc": "72284:2:74", + "nodeType": "YulLiteral", + "src": "72284:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "72275:3:74", + "nodeType": "YulIdentifier", + "src": "72275:3:74" + }, + "nativeSrc": "72275:12:74", + "nodeType": "YulFunctionCall", + "src": "72275:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "72268:3:74", + "nodeType": "YulIdentifier", + "src": "72268:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "71927:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "72061:3:74", + "nodeType": "YulTypedName", + "src": "72061:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "72069:3:74", + "nodeType": "YulTypedName", + "src": "72069:3:74", + "type": "" + } + ], + "src": "71927:366:74" + }, + { + "body": { + "nativeSrc": "72470:248:74", + "nodeType": "YulBlock", + "src": "72470:248:74", + "statements": [ + { + "nativeSrc": "72480:26:74", + "nodeType": "YulAssignment", + "src": "72480:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "72492:9:74", + "nodeType": "YulIdentifier", + "src": "72492:9:74" + }, + { + "kind": "number", + "nativeSrc": "72503:2:74", + "nodeType": "YulLiteral", + "src": "72503:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "72488:3:74", + "nodeType": "YulIdentifier", + "src": "72488:3:74" + }, + "nativeSrc": "72488:18:74", + "nodeType": "YulFunctionCall", + "src": "72488:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "72480:4:74", + "nodeType": "YulIdentifier", + "src": "72480:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "72527:9:74", + "nodeType": "YulIdentifier", + "src": "72527:9:74" + }, + { + "kind": "number", + "nativeSrc": "72538:1:74", + "nodeType": "YulLiteral", + "src": "72538:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "72523:3:74", + "nodeType": "YulIdentifier", + "src": "72523:3:74" + }, + "nativeSrc": "72523:17:74", + "nodeType": "YulFunctionCall", + "src": "72523:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "72546:4:74", + "nodeType": "YulIdentifier", + "src": "72546:4:74" + }, + { + "name": "headStart", + "nativeSrc": "72552:9:74", + "nodeType": "YulIdentifier", + "src": "72552:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "72542:3:74", + "nodeType": "YulIdentifier", + "src": "72542:3:74" + }, + "nativeSrc": "72542:20:74", + "nodeType": "YulFunctionCall", + "src": "72542:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "72516:6:74", + "nodeType": "YulIdentifier", + "src": "72516:6:74" + }, + "nativeSrc": "72516:47:74", + "nodeType": "YulFunctionCall", + "src": "72516:47:74" + }, + "nativeSrc": "72516:47:74", + "nodeType": "YulExpressionStatement", + "src": "72516:47:74" + }, + { + "nativeSrc": "72572:139:74", + "nodeType": "YulAssignment", + "src": "72572:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "72706:4:74", + "nodeType": "YulIdentifier", + "src": "72706:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "72580:124:74", + "nodeType": "YulIdentifier", + "src": "72580:124:74" + }, + "nativeSrc": "72580:131:74", + "nodeType": "YulFunctionCall", + "src": "72580:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "72572:4:74", + "nodeType": "YulIdentifier", + "src": "72572:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "72299:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "72450:9:74", + "nodeType": "YulTypedName", + "src": "72450:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "72465:4:74", + "nodeType": "YulTypedName", + "src": "72465:4:74", + "type": "" + } + ], + "src": "72299:419:74" + }, + { + "body": { + "nativeSrc": "72830:142:74", + "nodeType": "YulBlock", + "src": "72830:142:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "72852:6:74", + "nodeType": "YulIdentifier", + "src": "72852:6:74" + }, + { + "kind": "number", + "nativeSrc": "72860:1:74", + "nodeType": "YulLiteral", + "src": "72860:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "72848:3:74", + "nodeType": "YulIdentifier", + "src": "72848:3:74" + }, + "nativeSrc": "72848:14:74", + "nodeType": "YulFunctionCall", + "src": "72848:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f", + "kind": "string", + "nativeSrc": "72864:34:74", + "nodeType": "YulLiteral", + "src": "72864:34:74", + "type": "", + "value": "ERC721: approve caller is not to" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "72841:6:74", + "nodeType": "YulIdentifier", + "src": "72841:6:74" + }, + "nativeSrc": "72841:58:74", + "nodeType": "YulFunctionCall", + "src": "72841:58:74" + }, + "nativeSrc": "72841:58:74", + "nodeType": "YulExpressionStatement", + "src": "72841:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "72920:6:74", + "nodeType": "YulIdentifier", + "src": "72920:6:74" + }, + { + "kind": "number", + "nativeSrc": "72928:2:74", + "nodeType": "YulLiteral", + "src": "72928:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "72916:3:74", + "nodeType": "YulIdentifier", + "src": "72916:3:74" + }, + "nativeSrc": "72916:15:74", + "nodeType": "YulFunctionCall", + "src": "72916:15:74" + }, + { + "hexValue": "6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "kind": "string", + "nativeSrc": "72933:31:74", + "nodeType": "YulLiteral", + "src": "72933:31:74", + "type": "", + "value": "ken owner or approved for all" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "72909:6:74", + "nodeType": "YulIdentifier", + "src": "72909:6:74" + }, + "nativeSrc": "72909:56:74", + "nodeType": "YulFunctionCall", + "src": "72909:56:74" + }, + "nativeSrc": "72909:56:74", + "nodeType": "YulExpressionStatement", + "src": "72909:56:74" + } + ] + }, + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "72724:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "72822:6:74", + "nodeType": "YulTypedName", + "src": "72822:6:74", + "type": "" + } + ], + "src": "72724:248:74" + }, + { + "body": { + "nativeSrc": "73124:220:74", + "nodeType": "YulBlock", + "src": "73124:220:74", + "statements": [ + { + "nativeSrc": "73134:74:74", + "nodeType": "YulAssignment", + "src": "73134:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "73200:3:74", + "nodeType": "YulIdentifier", + "src": "73200:3:74" + }, + { + "kind": "number", + "nativeSrc": "73205:2:74", + "nodeType": "YulLiteral", + "src": "73205:2:74", + "type": "", + "value": "61" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "73141:58:74", + "nodeType": "YulIdentifier", + "src": "73141:58:74" + }, + "nativeSrc": "73141:67:74", + "nodeType": "YulFunctionCall", + "src": "73141:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "73134:3:74", + "nodeType": "YulIdentifier", + "src": "73134:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "73306:3:74", + "nodeType": "YulIdentifier", + "src": "73306:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "73217:88:74", + "nodeType": "YulIdentifier", + "src": "73217:88:74" + }, + "nativeSrc": "73217:93:74", + "nodeType": "YulFunctionCall", + "src": "73217:93:74" + }, + "nativeSrc": "73217:93:74", + "nodeType": "YulExpressionStatement", + "src": "73217:93:74" + }, + { + "nativeSrc": "73319:19:74", + "nodeType": "YulAssignment", + "src": "73319:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "73330:3:74", + "nodeType": "YulIdentifier", + "src": "73330:3:74" + }, + { + "kind": "number", + "nativeSrc": "73335:2:74", + "nodeType": "YulLiteral", + "src": "73335:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "73326:3:74", + "nodeType": "YulIdentifier", + "src": "73326:3:74" + }, + "nativeSrc": "73326:12:74", + "nodeType": "YulFunctionCall", + "src": "73326:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "73319:3:74", + "nodeType": "YulIdentifier", + "src": "73319:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "72978:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "73112:3:74", + "nodeType": "YulTypedName", + "src": "73112:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "73120:3:74", + "nodeType": "YulTypedName", + "src": "73120:3:74", + "type": "" + } + ], + "src": "72978:366:74" + }, + { + "body": { + "nativeSrc": "73521:248:74", + "nodeType": "YulBlock", + "src": "73521:248:74", + "statements": [ + { + "nativeSrc": "73531:26:74", + "nodeType": "YulAssignment", + "src": "73531:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "73543:9:74", + "nodeType": "YulIdentifier", + "src": "73543:9:74" + }, + { + "kind": "number", + "nativeSrc": "73554:2:74", + "nodeType": "YulLiteral", + "src": "73554:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "73539:3:74", + "nodeType": "YulIdentifier", + "src": "73539:3:74" + }, + "nativeSrc": "73539:18:74", + "nodeType": "YulFunctionCall", + "src": "73539:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "73531:4:74", + "nodeType": "YulIdentifier", + "src": "73531:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "73578:9:74", + "nodeType": "YulIdentifier", + "src": "73578:9:74" + }, + { + "kind": "number", + "nativeSrc": "73589:1:74", + "nodeType": "YulLiteral", + "src": "73589:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "73574:3:74", + "nodeType": "YulIdentifier", + "src": "73574:3:74" + }, + "nativeSrc": "73574:17:74", + "nodeType": "YulFunctionCall", + "src": "73574:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "73597:4:74", + "nodeType": "YulIdentifier", + "src": "73597:4:74" + }, + { + "name": "headStart", + "nativeSrc": "73603:9:74", + "nodeType": "YulIdentifier", + "src": "73603:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "73593:3:74", + "nodeType": "YulIdentifier", + "src": "73593:3:74" + }, + "nativeSrc": "73593:20:74", + "nodeType": "YulFunctionCall", + "src": "73593:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "73567:6:74", + "nodeType": "YulIdentifier", + "src": "73567:6:74" + }, + "nativeSrc": "73567:47:74", + "nodeType": "YulFunctionCall", + "src": "73567:47:74" + }, + "nativeSrc": "73567:47:74", + "nodeType": "YulExpressionStatement", + "src": "73567:47:74" + }, + { + "nativeSrc": "73623:139:74", + "nodeType": "YulAssignment", + "src": "73623:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "73757:4:74", + "nodeType": "YulIdentifier", + "src": "73757:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "73631:124:74", + "nodeType": "YulIdentifier", + "src": "73631:124:74" + }, + "nativeSrc": "73631:131:74", + "nodeType": "YulFunctionCall", + "src": "73631:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "73623:4:74", + "nodeType": "YulIdentifier", + "src": "73623:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "73350:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "73501:9:74", + "nodeType": "YulTypedName", + "src": "73501:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "73516:4:74", + "nodeType": "YulTypedName", + "src": "73516:4:74", + "type": "" + } + ], + "src": "73350:419:74" + }, + { + "body": { + "nativeSrc": "73819:164:74", + "nodeType": "YulBlock", + "src": "73819:164:74", + "statements": [ + { + "nativeSrc": "73829:24:74", + "nodeType": "YulAssignment", + "src": "73829:24:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "73851:1:74", + "nodeType": "YulIdentifier", + "src": "73851:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "73834:16:74", + "nodeType": "YulIdentifier", + "src": "73834:16:74" + }, + "nativeSrc": "73834:19:74", + "nodeType": "YulFunctionCall", + "src": "73834:19:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "73829:1:74", + "nodeType": "YulIdentifier", + "src": "73829:1:74" + } + ] + }, + { + "nativeSrc": "73862:24:74", + "nodeType": "YulAssignment", + "src": "73862:24:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "73884:1:74", + "nodeType": "YulIdentifier", + "src": "73884:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint64", + "nativeSrc": "73867:16:74", + "nodeType": "YulIdentifier", + "src": "73867:16:74" + }, + "nativeSrc": "73867:19:74", + "nodeType": "YulFunctionCall", + "src": "73867:19:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "73862:1:74", + "nodeType": "YulIdentifier", + "src": "73862:1:74" + } + ] + }, + { + "nativeSrc": "73895:17:74", + "nodeType": "YulAssignment", + "src": "73895:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "73907:1:74", + "nodeType": "YulIdentifier", + "src": "73907:1:74" + }, + { + "name": "y", + "nativeSrc": "73910:1:74", + "nodeType": "YulIdentifier", + "src": "73910:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "73903:3:74", + "nodeType": "YulIdentifier", + "src": "73903:3:74" + }, + "nativeSrc": "73903:9:74", + "nodeType": "YulFunctionCall", + "src": "73903:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "73895:4:74", + "nodeType": "YulIdentifier", + "src": "73895:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "73954:22:74", + "nodeType": "YulBlock", + "src": "73954:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "73956:16:74", + "nodeType": "YulIdentifier", + "src": "73956:16:74" + }, + "nativeSrc": "73956:18:74", + "nodeType": "YulFunctionCall", + "src": "73956:18:74" + }, + "nativeSrc": "73956:18:74", + "nodeType": "YulExpressionStatement", + "src": "73956:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "73928:4:74", + "nodeType": "YulIdentifier", + "src": "73928:4:74" + }, + { + "kind": "number", + "nativeSrc": "73934:18:74", + "nodeType": "YulLiteral", + "src": "73934:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "73925:2:74", + "nodeType": "YulIdentifier", + "src": "73925:2:74" + }, + "nativeSrc": "73925:28:74", + "nodeType": "YulFunctionCall", + "src": "73925:28:74" + }, + "nativeSrc": "73922:54:74", + "nodeType": "YulIf", + "src": "73922:54:74" + } + ] + }, + "name": "checked_sub_t_uint64", + "nativeSrc": "73775:208:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "73805:1:74", + "nodeType": "YulTypedName", + "src": "73805:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "73808:1:74", + "nodeType": "YulTypedName", + "src": "73808:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "73814:4:74", + "nodeType": "YulTypedName", + "src": "73814:4:74", + "type": "" + } + ], + "src": "73775:208:74" + }, + { + "body": { + "nativeSrc": "74079:1300:74", + "nodeType": "YulBlock", + "src": "74079:1300:74", + "statements": [ + { + "nativeSrc": "74090:50:74", + "nodeType": "YulVariableDeclaration", + "src": "74090:50:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "74136:3:74", + "nodeType": "YulIdentifier", + "src": "74136:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "74104:31:74", + "nodeType": "YulIdentifier", + "src": "74104:31:74" + }, + "nativeSrc": "74104:36:74", + "nodeType": "YulFunctionCall", + "src": "74104:36:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "74094:6:74", + "nodeType": "YulTypedName", + "src": "74094:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "74225:22:74", + "nodeType": "YulBlock", + "src": "74225:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "74227:16:74", + "nodeType": "YulIdentifier", + "src": "74227:16:74" + }, + "nativeSrc": "74227:18:74", + "nodeType": "YulFunctionCall", + "src": "74227:18:74" + }, + "nativeSrc": "74227:18:74", + "nodeType": "YulExpressionStatement", + "src": "74227:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "74197:6:74", + "nodeType": "YulIdentifier", + "src": "74197:6:74" + }, + { + "kind": "number", + "nativeSrc": "74205:18:74", + "nodeType": "YulLiteral", + "src": "74205:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "74194:2:74", + "nodeType": "YulIdentifier", + "src": "74194:2:74" + }, + "nativeSrc": "74194:30:74", + "nodeType": "YulFunctionCall", + "src": "74194:30:74" + }, + "nativeSrc": "74191:56:74", + "nodeType": "YulIf", + "src": "74191:56:74" + }, + { + "nativeSrc": "74257:52:74", + "nodeType": "YulVariableDeclaration", + "src": "74257:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "74303:4:74", + "nodeType": "YulIdentifier", + "src": "74303:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "74297:5:74", + "nodeType": "YulIdentifier", + "src": "74297:5:74" + }, + "nativeSrc": "74297:11:74", + "nodeType": "YulFunctionCall", + "src": "74297:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "74271:25:74", + "nodeType": "YulIdentifier", + "src": "74271:25:74" + }, + "nativeSrc": "74271:38:74", + "nodeType": "YulFunctionCall", + "src": "74271:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "74261:6:74", + "nodeType": "YulTypedName", + "src": "74261:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "74401:4:74", + "nodeType": "YulIdentifier", + "src": "74401:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "74407:6:74", + "nodeType": "YulIdentifier", + "src": "74407:6:74" + }, + { + "name": "newLen", + "nativeSrc": "74415:6:74", + "nodeType": "YulIdentifier", + "src": "74415:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_bytes_storage", + "nativeSrc": "74356:44:74", + "nodeType": "YulIdentifier", + "src": "74356:44:74" + }, + "nativeSrc": "74356:66:74", + "nodeType": "YulFunctionCall", + "src": "74356:66:74" + }, + "nativeSrc": "74356:66:74", + "nodeType": "YulExpressionStatement", + "src": "74356:66:74" + }, + { + "nativeSrc": "74432:18:74", + "nodeType": "YulVariableDeclaration", + "src": "74432:18:74", + "value": { + "kind": "number", + "nativeSrc": "74449:1:74", + "nodeType": "YulLiteral", + "src": "74449:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "74436:9:74", + "nodeType": "YulTypedName", + "src": "74436:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "74460:17:74", + "nodeType": "YulAssignment", + "src": "74460:17:74", + "value": { + "kind": "number", + "nativeSrc": "74473:4:74", + "nodeType": "YulLiteral", + "src": "74473:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "74460:9:74", + "nodeType": "YulIdentifier", + "src": "74460:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "74524:610:74", + "nodeType": "YulBlock", + "src": "74524:610:74", + "statements": [ + { + "nativeSrc": "74538:37:74", + "nodeType": "YulVariableDeclaration", + "src": "74538:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "74557:6:74", + "nodeType": "YulIdentifier", + "src": "74557:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "74569:4:74", + "nodeType": "YulLiteral", + "src": "74569:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "74565:3:74", + "nodeType": "YulIdentifier", + "src": "74565:3:74" + }, + "nativeSrc": "74565:9:74", + "nodeType": "YulFunctionCall", + "src": "74565:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "74553:3:74", + "nodeType": "YulIdentifier", + "src": "74553:3:74" + }, + "nativeSrc": "74553:22:74", + "nodeType": "YulFunctionCall", + "src": "74553:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "74542:7:74", + "nodeType": "YulTypedName", + "src": "74542:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "74589:50:74", + "nodeType": "YulVariableDeclaration", + "src": "74589:50:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "74634:4:74", + "nodeType": "YulIdentifier", + "src": "74634:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_bytes_storage", + "nativeSrc": "74603:30:74", + "nodeType": "YulIdentifier", + "src": "74603:30:74" + }, + "nativeSrc": "74603:36:74", + "nodeType": "YulFunctionCall", + "src": "74603:36:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "74593:6:74", + "nodeType": "YulTypedName", + "src": "74593:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "74652:10:74", + "nodeType": "YulVariableDeclaration", + "src": "74652:10:74", + "value": { + "kind": "number", + "nativeSrc": "74661:1:74", + "nodeType": "YulLiteral", + "src": "74661:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "74656:1:74", + "nodeType": "YulTypedName", + "src": "74656:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "74720:163:74", + "nodeType": "YulBlock", + "src": "74720:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "74745:6:74", + "nodeType": "YulIdentifier", + "src": "74745:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "74763:3:74", + "nodeType": "YulIdentifier", + "src": "74763:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "74768:9:74", + "nodeType": "YulIdentifier", + "src": "74768:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "74759:3:74", + "nodeType": "YulIdentifier", + "src": "74759:3:74" + }, + "nativeSrc": "74759:19:74", + "nodeType": "YulFunctionCall", + "src": "74759:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "74753:5:74", + "nodeType": "YulIdentifier", + "src": "74753:5:74" + }, + "nativeSrc": "74753:26:74", + "nodeType": "YulFunctionCall", + "src": "74753:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "74738:6:74", + "nodeType": "YulIdentifier", + "src": "74738:6:74" + }, + "nativeSrc": "74738:42:74", + "nodeType": "YulFunctionCall", + "src": "74738:42:74" + }, + "nativeSrc": "74738:42:74", + "nodeType": "YulExpressionStatement", + "src": "74738:42:74" + }, + { + "nativeSrc": "74797:24:74", + "nodeType": "YulAssignment", + "src": "74797:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "74811:6:74", + "nodeType": "YulIdentifier", + "src": "74811:6:74" + }, + { + "kind": "number", + "nativeSrc": "74819:1:74", + "nodeType": "YulLiteral", + "src": "74819:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "74807:3:74", + "nodeType": "YulIdentifier", + "src": "74807:3:74" + }, + "nativeSrc": "74807:14:74", + "nodeType": "YulFunctionCall", + "src": "74807:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "74797:6:74", + "nodeType": "YulIdentifier", + "src": "74797:6:74" + } + ] + }, + { + "nativeSrc": "74838:31:74", + "nodeType": "YulAssignment", + "src": "74838:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "74855:9:74", + "nodeType": "YulIdentifier", + "src": "74855:9:74" + }, + { + "kind": "number", + "nativeSrc": "74866:2:74", + "nodeType": "YulLiteral", + "src": "74866:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "74851:3:74", + "nodeType": "YulIdentifier", + "src": "74851:3:74" + }, + "nativeSrc": "74851:18:74", + "nodeType": "YulFunctionCall", + "src": "74851:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "74838:9:74", + "nodeType": "YulIdentifier", + "src": "74838:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "74686:1:74", + "nodeType": "YulIdentifier", + "src": "74686:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "74689:7:74", + "nodeType": "YulIdentifier", + "src": "74689:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "74683:2:74", + "nodeType": "YulIdentifier", + "src": "74683:2:74" + }, + "nativeSrc": "74683:14:74", + "nodeType": "YulFunctionCall", + "src": "74683:14:74" + }, + "nativeSrc": "74675:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "74698:21:74", + "nodeType": "YulBlock", + "src": "74698:21:74", + "statements": [ + { + "nativeSrc": "74700:17:74", + "nodeType": "YulAssignment", + "src": "74700:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "74709:1:74", + "nodeType": "YulIdentifier", + "src": "74709:1:74" + }, + { + "kind": "number", + "nativeSrc": "74712:4:74", + "nodeType": "YulLiteral", + "src": "74712:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "74705:3:74", + "nodeType": "YulIdentifier", + "src": "74705:3:74" + }, + "nativeSrc": "74705:12:74", + "nodeType": "YulFunctionCall", + "src": "74705:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "74700:1:74", + "nodeType": "YulIdentifier", + "src": "74700:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "74679:3:74", + "nodeType": "YulBlock", + "src": "74679:3:74", + "statements": [] + }, + "src": "74675:208:74" + }, + { + "body": { + "nativeSrc": "74919:156:74", + "nodeType": "YulBlock", + "src": "74919:156:74", + "statements": [ + { + "nativeSrc": "74937:43:74", + "nodeType": "YulVariableDeclaration", + "src": "74937:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "74964:3:74", + "nodeType": "YulIdentifier", + "src": "74964:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "74969:9:74", + "nodeType": "YulIdentifier", + "src": "74969:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "74960:3:74", + "nodeType": "YulIdentifier", + "src": "74960:3:74" + }, + "nativeSrc": "74960:19:74", + "nodeType": "YulFunctionCall", + "src": "74960:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "74954:5:74", + "nodeType": "YulIdentifier", + "src": "74954:5:74" + }, + "nativeSrc": "74954:26:74", + "nodeType": "YulFunctionCall", + "src": "74954:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "74941:9:74", + "nodeType": "YulTypedName", + "src": "74941:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "75004:6:74", + "nodeType": "YulIdentifier", + "src": "75004:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "75031:9:74", + "nodeType": "YulIdentifier", + "src": "75031:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "75046:6:74", + "nodeType": "YulIdentifier", + "src": "75046:6:74" + }, + { + "kind": "number", + "nativeSrc": "75054:4:74", + "nodeType": "YulLiteral", + "src": "75054:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "75042:3:74", + "nodeType": "YulIdentifier", + "src": "75042:3:74" + }, + "nativeSrc": "75042:17:74", + "nodeType": "YulFunctionCall", + "src": "75042:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "75012:18:74", + "nodeType": "YulIdentifier", + "src": "75012:18:74" + }, + "nativeSrc": "75012:48:74", + "nodeType": "YulFunctionCall", + "src": "75012:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "74997:6:74", + "nodeType": "YulIdentifier", + "src": "74997:6:74" + }, + "nativeSrc": "74997:64:74", + "nodeType": "YulFunctionCall", + "src": "74997:64:74" + }, + "nativeSrc": "74997:64:74", + "nodeType": "YulExpressionStatement", + "src": "74997:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "74902:7:74", + "nodeType": "YulIdentifier", + "src": "74902:7:74" + }, + { + "name": "newLen", + "nativeSrc": "74911:6:74", + "nodeType": "YulIdentifier", + "src": "74911:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "74899:2:74", + "nodeType": "YulIdentifier", + "src": "74899:2:74" + }, + "nativeSrc": "74899:19:74", + "nodeType": "YulFunctionCall", + "src": "74899:19:74" + }, + "nativeSrc": "74896:179:74", + "nodeType": "YulIf", + "src": "74896:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "75095:4:74", + "nodeType": "YulIdentifier", + "src": "75095:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "75109:6:74", + "nodeType": "YulIdentifier", + "src": "75109:6:74" + }, + { + "kind": "number", + "nativeSrc": "75117:1:74", + "nodeType": "YulLiteral", + "src": "75117:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "75105:3:74", + "nodeType": "YulIdentifier", + "src": "75105:3:74" + }, + "nativeSrc": "75105:14:74", + "nodeType": "YulFunctionCall", + "src": "75105:14:74" + }, + { + "kind": "number", + "nativeSrc": "75121:1:74", + "nodeType": "YulLiteral", + "src": "75121:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "75101:3:74", + "nodeType": "YulIdentifier", + "src": "75101:3:74" + }, + "nativeSrc": "75101:22:74", + "nodeType": "YulFunctionCall", + "src": "75101:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "75088:6:74", + "nodeType": "YulIdentifier", + "src": "75088:6:74" + }, + "nativeSrc": "75088:36:74", + "nodeType": "YulFunctionCall", + "src": "75088:36:74" + }, + "nativeSrc": "75088:36:74", + "nodeType": "YulExpressionStatement", + "src": "75088:36:74" + } + ] + }, + "nativeSrc": "74517:617:74", + "nodeType": "YulCase", + "src": "74517:617:74", + "value": { + "kind": "number", + "nativeSrc": "74522:1:74", + "nodeType": "YulLiteral", + "src": "74522:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "75151:222:74", + "nodeType": "YulBlock", + "src": "75151:222:74", + "statements": [ + { + "nativeSrc": "75165:14:74", + "nodeType": "YulVariableDeclaration", + "src": "75165:14:74", + "value": { + "kind": "number", + "nativeSrc": "75178:1:74", + "nodeType": "YulLiteral", + "src": "75178:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "75169:5:74", + "nodeType": "YulTypedName", + "src": "75169:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "75202:67:74", + "nodeType": "YulBlock", + "src": "75202:67:74", + "statements": [ + { + "nativeSrc": "75220:35:74", + "nodeType": "YulAssignment", + "src": "75220:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "75239:3:74", + "nodeType": "YulIdentifier", + "src": "75239:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "75244:9:74", + "nodeType": "YulIdentifier", + "src": "75244:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "75235:3:74", + "nodeType": "YulIdentifier", + "src": "75235:3:74" + }, + "nativeSrc": "75235:19:74", + "nodeType": "YulFunctionCall", + "src": "75235:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "75229:5:74", + "nodeType": "YulIdentifier", + "src": "75229:5:74" + }, + "nativeSrc": "75229:26:74", + "nodeType": "YulFunctionCall", + "src": "75229:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "75220:5:74", + "nodeType": "YulIdentifier", + "src": "75220:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "75195:6:74", + "nodeType": "YulIdentifier", + "src": "75195:6:74" + }, + "nativeSrc": "75192:77:74", + "nodeType": "YulIf", + "src": "75192:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "75289:4:74", + "nodeType": "YulIdentifier", + "src": "75289:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "75348:5:74", + "nodeType": "YulIdentifier", + "src": "75348:5:74" + }, + { + "name": "newLen", + "nativeSrc": "75355:6:74", + "nodeType": "YulIdentifier", + "src": "75355:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "75295:52:74", + "nodeType": "YulIdentifier", + "src": "75295:52:74" + }, + "nativeSrc": "75295:67:74", + "nodeType": "YulFunctionCall", + "src": "75295:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "75282:6:74", + "nodeType": "YulIdentifier", + "src": "75282:6:74" + }, + "nativeSrc": "75282:81:74", + "nodeType": "YulFunctionCall", + "src": "75282:81:74" + }, + "nativeSrc": "75282:81:74", + "nodeType": "YulExpressionStatement", + "src": "75282:81:74" + } + ] + }, + "nativeSrc": "75143:230:74", + "nodeType": "YulCase", + "src": "75143:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "74497:6:74", + "nodeType": "YulIdentifier", + "src": "74497:6:74" + }, + { + "kind": "number", + "nativeSrc": "74505:2:74", + "nodeType": "YulLiteral", + "src": "74505:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "74494:2:74", + "nodeType": "YulIdentifier", + "src": "74494:2:74" + }, + "nativeSrc": "74494:14:74", + "nodeType": "YulFunctionCall", + "src": "74494:14:74" + }, + "nativeSrc": "74487:886:74", + "nodeType": "YulSwitch", + "src": "74487:886:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage", + "nativeSrc": "73989:1390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "74068:4:74", + "nodeType": "YulTypedName", + "src": "74068:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "74074:3:74", + "nodeType": "YulTypedName", + "src": "74074:3:74", + "type": "" + } + ], + "src": "73989:1390:74" + }, + { + "body": { + "nativeSrc": "75491:76:74", + "nodeType": "YulBlock", + "src": "75491:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "75513:6:74", + "nodeType": "YulIdentifier", + "src": "75513:6:74" + }, + { + "kind": "number", + "nativeSrc": "75521:1:74", + "nodeType": "YulLiteral", + "src": "75521:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "75509:3:74", + "nodeType": "YulIdentifier", + "src": "75509:3:74" + }, + "nativeSrc": "75509:14:74", + "nodeType": "YulFunctionCall", + "src": "75509:14:74" + }, + { + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "kind": "string", + "nativeSrc": "75525:34:74", + "nodeType": "YulLiteral", + "src": "75525:34:74", + "type": "", + "value": "Ownable: caller is not the owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "75502:6:74", + "nodeType": "YulIdentifier", + "src": "75502:6:74" + }, + "nativeSrc": "75502:58:74", + "nodeType": "YulFunctionCall", + "src": "75502:58:74" + }, + "nativeSrc": "75502:58:74", + "nodeType": "YulExpressionStatement", + "src": "75502:58:74" + } + ] + }, + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "75385:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "75483:6:74", + "nodeType": "YulTypedName", + "src": "75483:6:74", + "type": "" + } + ], + "src": "75385:182:74" + }, + { + "body": { + "nativeSrc": "75719:220:74", + "nodeType": "YulBlock", + "src": "75719:220:74", + "statements": [ + { + "nativeSrc": "75729:74:74", + "nodeType": "YulAssignment", + "src": "75729:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "75795:3:74", + "nodeType": "YulIdentifier", + "src": "75795:3:74" + }, + { + "kind": "number", + "nativeSrc": "75800:2:74", + "nodeType": "YulLiteral", + "src": "75800:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "75736:58:74", + "nodeType": "YulIdentifier", + "src": "75736:58:74" + }, + "nativeSrc": "75736:67:74", + "nodeType": "YulFunctionCall", + "src": "75736:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "75729:3:74", + "nodeType": "YulIdentifier", + "src": "75729:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "75901:3:74", + "nodeType": "YulIdentifier", + "src": "75901:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "nativeSrc": "75812:88:74", + "nodeType": "YulIdentifier", + "src": "75812:88:74" + }, + "nativeSrc": "75812:93:74", + "nodeType": "YulFunctionCall", + "src": "75812:93:74" + }, + "nativeSrc": "75812:93:74", + "nodeType": "YulExpressionStatement", + "src": "75812:93:74" + }, + { + "nativeSrc": "75914:19:74", + "nodeType": "YulAssignment", + "src": "75914:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "75925:3:74", + "nodeType": "YulIdentifier", + "src": "75925:3:74" + }, + { + "kind": "number", + "nativeSrc": "75930:2:74", + "nodeType": "YulLiteral", + "src": "75930:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "75921:3:74", + "nodeType": "YulIdentifier", + "src": "75921:3:74" + }, + "nativeSrc": "75921:12:74", + "nodeType": "YulFunctionCall", + "src": "75921:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "75914:3:74", + "nodeType": "YulIdentifier", + "src": "75914:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "75573:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "75707:3:74", + "nodeType": "YulTypedName", + "src": "75707:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "75715:3:74", + "nodeType": "YulTypedName", + "src": "75715:3:74", + "type": "" + } + ], + "src": "75573:366:74" + }, + { + "body": { + "nativeSrc": "76116:248:74", + "nodeType": "YulBlock", + "src": "76116:248:74", + "statements": [ + { + "nativeSrc": "76126:26:74", + "nodeType": "YulAssignment", + "src": "76126:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "76138:9:74", + "nodeType": "YulIdentifier", + "src": "76138:9:74" + }, + { + "kind": "number", + "nativeSrc": "76149:2:74", + "nodeType": "YulLiteral", + "src": "76149:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "76134:3:74", + "nodeType": "YulIdentifier", + "src": "76134:3:74" + }, + "nativeSrc": "76134:18:74", + "nodeType": "YulFunctionCall", + "src": "76134:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "76126:4:74", + "nodeType": "YulIdentifier", + "src": "76126:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "76173:9:74", + "nodeType": "YulIdentifier", + "src": "76173:9:74" + }, + { + "kind": "number", + "nativeSrc": "76184:1:74", + "nodeType": "YulLiteral", + "src": "76184:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "76169:3:74", + "nodeType": "YulIdentifier", + "src": "76169:3:74" + }, + "nativeSrc": "76169:17:74", + "nodeType": "YulFunctionCall", + "src": "76169:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "76192:4:74", + "nodeType": "YulIdentifier", + "src": "76192:4:74" + }, + { + "name": "headStart", + "nativeSrc": "76198:9:74", + "nodeType": "YulIdentifier", + "src": "76198:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "76188:3:74", + "nodeType": "YulIdentifier", + "src": "76188:3:74" + }, + "nativeSrc": "76188:20:74", + "nodeType": "YulFunctionCall", + "src": "76188:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "76162:6:74", + "nodeType": "YulIdentifier", + "src": "76162:6:74" + }, + "nativeSrc": "76162:47:74", + "nodeType": "YulFunctionCall", + "src": "76162:47:74" + }, + "nativeSrc": "76162:47:74", + "nodeType": "YulExpressionStatement", + "src": "76162:47:74" + }, + { + "nativeSrc": "76218:139:74", + "nodeType": "YulAssignment", + "src": "76218:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "76352:4:74", + "nodeType": "YulIdentifier", + "src": "76352:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack", + "nativeSrc": "76226:124:74", + "nodeType": "YulIdentifier", + "src": "76226:124:74" + }, + "nativeSrc": "76226:131:74", + "nodeType": "YulFunctionCall", + "src": "76226:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "76218:4:74", + "nodeType": "YulIdentifier", + "src": "76218:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "75945:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "76096:9:74", + "nodeType": "YulTypedName", + "src": "76096:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "76111:4:74", + "nodeType": "YulTypedName", + "src": "76111:4:74", + "type": "" + } + ], + "src": "75945:419:74" + }, + { + "body": { + "nativeSrc": "76417:32:74", + "nodeType": "YulBlock", + "src": "76417:32:74", + "statements": [ + { + "nativeSrc": "76427:16:74", + "nodeType": "YulAssignment", + "src": "76427:16:74", + "value": { + "name": "value", + "nativeSrc": "76438:5:74", + "nodeType": "YulIdentifier", + "src": "76438:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "76427:7:74", + "nodeType": "YulIdentifier", + "src": "76427:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nativeSrc": "76370:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "76399:5:74", + "nodeType": "YulTypedName", + "src": "76399:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "76409:7:74", + "nodeType": "YulTypedName", + "src": "76409:7:74", + "type": "" + } + ], + "src": "76370:79:74" + }, + { + "body": { + "nativeSrc": "76538:74:74", + "nodeType": "YulBlock", + "src": "76538:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "76555:3:74", + "nodeType": "YulIdentifier", + "src": "76555:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "76598:5:74", + "nodeType": "YulIdentifier", + "src": "76598:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "76580:17:74", + "nodeType": "YulIdentifier", + "src": "76580:17:74" + }, + "nativeSrc": "76580:24:74", + "nodeType": "YulFunctionCall", + "src": "76580:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nativeSrc": "76560:19:74", + "nodeType": "YulIdentifier", + "src": "76560:19:74" + }, + "nativeSrc": "76560:45:74", + "nodeType": "YulFunctionCall", + "src": "76560:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "76548:6:74", + "nodeType": "YulIdentifier", + "src": "76548:6:74" + }, + "nativeSrc": "76548:58:74", + "nodeType": "YulFunctionCall", + "src": "76548:58:74" + }, + "nativeSrc": "76548:58:74", + "nodeType": "YulExpressionStatement", + "src": "76548:58:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "76455:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "76526:5:74", + "nodeType": "YulTypedName", + "src": "76526:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "76533:3:74", + "nodeType": "YulTypedName", + "src": "76533:3:74", + "type": "" + } + ], + "src": "76455:157:74" + }, + { + "body": { + "nativeSrc": "76762:253:74", + "nodeType": "YulBlock", + "src": "76762:253:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "76835:6:74", + "nodeType": "YulIdentifier", + "src": "76835:6:74" + }, + { + "name": "pos", + "nativeSrc": "76844:3:74", + "nodeType": "YulIdentifier", + "src": "76844:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "76773:61:74", + "nodeType": "YulIdentifier", + "src": "76773:61:74" + }, + "nativeSrc": "76773:75:74", + "nodeType": "YulFunctionCall", + "src": "76773:75:74" + }, + "nativeSrc": "76773:75:74", + "nodeType": "YulExpressionStatement", + "src": "76773:75:74" + }, + { + "nativeSrc": "76857:19:74", + "nodeType": "YulAssignment", + "src": "76857:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "76868:3:74", + "nodeType": "YulIdentifier", + "src": "76868:3:74" + }, + { + "kind": "number", + "nativeSrc": "76873:2:74", + "nodeType": "YulLiteral", + "src": "76873:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "76864:3:74", + "nodeType": "YulIdentifier", + "src": "76864:3:74" + }, + "nativeSrc": "76864:12:74", + "nodeType": "YulFunctionCall", + "src": "76864:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "76857:3:74", + "nodeType": "YulIdentifier", + "src": "76857:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "76948:6:74", + "nodeType": "YulIdentifier", + "src": "76948:6:74" + }, + { + "name": "pos", + "nativeSrc": "76957:3:74", + "nodeType": "YulIdentifier", + "src": "76957:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "76886:61:74", + "nodeType": "YulIdentifier", + "src": "76886:61:74" + }, + "nativeSrc": "76886:75:74", + "nodeType": "YulFunctionCall", + "src": "76886:75:74" + }, + "nativeSrc": "76886:75:74", + "nodeType": "YulExpressionStatement", + "src": "76886:75:74" + }, + { + "nativeSrc": "76970:19:74", + "nodeType": "YulAssignment", + "src": "76970:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "76981:3:74", + "nodeType": "YulIdentifier", + "src": "76981:3:74" + }, + { + "kind": "number", + "nativeSrc": "76986:2:74", + "nodeType": "YulLiteral", + "src": "76986:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "76977:3:74", + "nodeType": "YulIdentifier", + "src": "76977:3:74" + }, + "nativeSrc": "76977:12:74", + "nodeType": "YulFunctionCall", + "src": "76977:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "76970:3:74", + "nodeType": "YulIdentifier", + "src": "76970:3:74" + } + ] + }, + { + "nativeSrc": "76999:10:74", + "nodeType": "YulAssignment", + "src": "76999:10:74", + "value": { + "name": "pos", + "nativeSrc": "77006:3:74", + "nodeType": "YulIdentifier", + "src": "77006:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "76999:3:74", + "nodeType": "YulIdentifier", + "src": "76999:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "76618:397:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "76733:3:74", + "nodeType": "YulTypedName", + "src": "76733:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "76739:6:74", + "nodeType": "YulTypedName", + "src": "76739:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "76747:6:74", + "nodeType": "YulTypedName", + "src": "76747:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "76758:3:74", + "nodeType": "YulTypedName", + "src": "76758:3:74", + "type": "" + } + ], + "src": "76618:397:74" + }, + { + "body": { + "nativeSrc": "77349:725:74", + "nodeType": "YulBlock", + "src": "77349:725:74", + "statements": [ + { + "nativeSrc": "77359:27:74", + "nodeType": "YulAssignment", + "src": "77359:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77371:9:74", + "nodeType": "YulIdentifier", + "src": "77371:9:74" + }, + { + "kind": "number", + "nativeSrc": "77382:3:74", + "nodeType": "YulLiteral", + "src": "77382:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77367:3:74", + "nodeType": "YulIdentifier", + "src": "77367:3:74" + }, + "nativeSrc": "77367:19:74", + "nodeType": "YulFunctionCall", + "src": "77367:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "77359:4:74", + "nodeType": "YulIdentifier", + "src": "77359:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "77440:6:74", + "nodeType": "YulIdentifier", + "src": "77440:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77453:9:74", + "nodeType": "YulIdentifier", + "src": "77453:9:74" + }, + { + "kind": "number", + "nativeSrc": "77464:1:74", + "nodeType": "YulLiteral", + "src": "77464:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77449:3:74", + "nodeType": "YulIdentifier", + "src": "77449:3:74" + }, + "nativeSrc": "77449:17:74", + "nodeType": "YulFunctionCall", + "src": "77449:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "77396:43:74", + "nodeType": "YulIdentifier", + "src": "77396:43:74" + }, + "nativeSrc": "77396:71:74", + "nodeType": "YulFunctionCall", + "src": "77396:71:74" + }, + "nativeSrc": "77396:71:74", + "nodeType": "YulExpressionStatement", + "src": "77396:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "77521:6:74", + "nodeType": "YulIdentifier", + "src": "77521:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77534:9:74", + "nodeType": "YulIdentifier", + "src": "77534:9:74" + }, + { + "kind": "number", + "nativeSrc": "77545:2:74", + "nodeType": "YulLiteral", + "src": "77545:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77530:3:74", + "nodeType": "YulIdentifier", + "src": "77530:3:74" + }, + "nativeSrc": "77530:18:74", + "nodeType": "YulFunctionCall", + "src": "77530:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "77477:43:74", + "nodeType": "YulIdentifier", + "src": "77477:43:74" + }, + "nativeSrc": "77477:72:74", + "nodeType": "YulFunctionCall", + "src": "77477:72:74" + }, + "nativeSrc": "77477:72:74", + "nodeType": "YulExpressionStatement", + "src": "77477:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77570:9:74", + "nodeType": "YulIdentifier", + "src": "77570:9:74" + }, + { + "kind": "number", + "nativeSrc": "77581:2:74", + "nodeType": "YulLiteral", + "src": "77581:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77566:3:74", + "nodeType": "YulIdentifier", + "src": "77566:3:74" + }, + "nativeSrc": "77566:18:74", + "nodeType": "YulFunctionCall", + "src": "77566:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "77590:4:74", + "nodeType": "YulIdentifier", + "src": "77590:4:74" + }, + { + "name": "headStart", + "nativeSrc": "77596:9:74", + "nodeType": "YulIdentifier", + "src": "77596:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "77586:3:74", + "nodeType": "YulIdentifier", + "src": "77586:3:74" + }, + "nativeSrc": "77586:20:74", + "nodeType": "YulFunctionCall", + "src": "77586:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "77559:6:74", + "nodeType": "YulIdentifier", + "src": "77559:6:74" + }, + "nativeSrc": "77559:48:74", + "nodeType": "YulFunctionCall", + "src": "77559:48:74" + }, + "nativeSrc": "77559:48:74", + "nodeType": "YulExpressionStatement", + "src": "77559:48:74" + }, + { + "nativeSrc": "77616:116:74", + "nodeType": "YulAssignment", + "src": "77616:116:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "77718:6:74", + "nodeType": "YulIdentifier", + "src": "77718:6:74" + }, + { + "name": "tail", + "nativeSrc": "77727:4:74", + "nodeType": "YulIdentifier", + "src": "77727:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "77624:93:74", + "nodeType": "YulIdentifier", + "src": "77624:93:74" + }, + "nativeSrc": "77624:108:74", + "nodeType": "YulFunctionCall", + "src": "77624:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "77616:4:74", + "nodeType": "YulIdentifier", + "src": "77616:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77753:9:74", + "nodeType": "YulIdentifier", + "src": "77753:9:74" + }, + { + "kind": "number", + "nativeSrc": "77764:2:74", + "nodeType": "YulLiteral", + "src": "77764:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77749:3:74", + "nodeType": "YulIdentifier", + "src": "77749:3:74" + }, + "nativeSrc": "77749:18:74", + "nodeType": "YulFunctionCall", + "src": "77749:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "77773:4:74", + "nodeType": "YulIdentifier", + "src": "77773:4:74" + }, + { + "name": "headStart", + "nativeSrc": "77779:9:74", + "nodeType": "YulIdentifier", + "src": "77779:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "77769:3:74", + "nodeType": "YulIdentifier", + "src": "77769:3:74" + }, + "nativeSrc": "77769:20:74", + "nodeType": "YulFunctionCall", + "src": "77769:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "77742:6:74", + "nodeType": "YulIdentifier", + "src": "77742:6:74" + }, + "nativeSrc": "77742:48:74", + "nodeType": "YulFunctionCall", + "src": "77742:48:74" + }, + "nativeSrc": "77742:48:74", + "nodeType": "YulExpressionStatement", + "src": "77742:48:74" + }, + { + "nativeSrc": "77799:116:74", + "nodeType": "YulAssignment", + "src": "77799:116:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "77901:6:74", + "nodeType": "YulIdentifier", + "src": "77901:6:74" + }, + { + "name": "tail", + "nativeSrc": "77910:4:74", + "nodeType": "YulIdentifier", + "src": "77910:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nativeSrc": "77807:93:74", + "nodeType": "YulIdentifier", + "src": "77807:93:74" + }, + "nativeSrc": "77807:108:74", + "nodeType": "YulFunctionCall", + "src": "77807:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "77799:4:74", + "nodeType": "YulIdentifier", + "src": "77799:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "77936:9:74", + "nodeType": "YulIdentifier", + "src": "77936:9:74" + }, + { + "kind": "number", + "nativeSrc": "77947:3:74", + "nodeType": "YulLiteral", + "src": "77947:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "77932:3:74", + "nodeType": "YulIdentifier", + "src": "77932:3:74" + }, + "nativeSrc": "77932:19:74", + "nodeType": "YulFunctionCall", + "src": "77932:19:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "77957:4:74", + "nodeType": "YulIdentifier", + "src": "77957:4:74" + }, + { + "name": "headStart", + "nativeSrc": "77963:9:74", + "nodeType": "YulIdentifier", + "src": "77963:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "77953:3:74", + "nodeType": "YulIdentifier", + "src": "77953:3:74" + }, + "nativeSrc": "77953:20:74", + "nodeType": "YulFunctionCall", + "src": "77953:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "77925:6:74", + "nodeType": "YulIdentifier", + "src": "77925:6:74" + }, + "nativeSrc": "77925:49:74", + "nodeType": "YulFunctionCall", + "src": "77925:49:74" + }, + "nativeSrc": "77925:49:74", + "nodeType": "YulExpressionStatement", + "src": "77925:49:74" + }, + { + "nativeSrc": "77983:84:74", + "nodeType": "YulAssignment", + "src": "77983:84:74", + "value": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "78053:6:74", + "nodeType": "YulIdentifier", + "src": "78053:6:74" + }, + { + "name": "tail", + "nativeSrc": "78062:4:74", + "nodeType": "YulIdentifier", + "src": "78062:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "77991:61:74", + "nodeType": "YulIdentifier", + "src": "77991:61:74" + }, + "nativeSrc": "77991:76:74", + "nodeType": "YulFunctionCall", + "src": "77991:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "77983:4:74", + "nodeType": "YulIdentifier", + "src": "77983:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "77021:1053:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "77289:9:74", + "nodeType": "YulTypedName", + "src": "77289:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "77301:6:74", + "nodeType": "YulTypedName", + "src": "77301:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "77309:6:74", + "nodeType": "YulTypedName", + "src": "77309:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "77317:6:74", + "nodeType": "YulTypedName", + "src": "77317:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "77325:6:74", + "nodeType": "YulTypedName", + "src": "77325:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "77333:6:74", + "nodeType": "YulTypedName", + "src": "77333:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "77344:4:74", + "nodeType": "YulTypedName", + "src": "77344:4:74", + "type": "" + } + ], + "src": "77021:1053:74" + }, + { + "body": { + "nativeSrc": "78142:79:74", + "nodeType": "YulBlock", + "src": "78142:79:74", + "statements": [ + { + "nativeSrc": "78152:22:74", + "nodeType": "YulAssignment", + "src": "78152:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "78167:6:74", + "nodeType": "YulIdentifier", + "src": "78167:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "78161:5:74", + "nodeType": "YulIdentifier", + "src": "78161:5:74" + }, + "nativeSrc": "78161:13:74", + "nodeType": "YulFunctionCall", + "src": "78161:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "78152:5:74", + "nodeType": "YulIdentifier", + "src": "78152:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "78209:5:74", + "nodeType": "YulIdentifier", + "src": "78209:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "78183:25:74", + "nodeType": "YulIdentifier", + "src": "78183:25:74" + }, + "nativeSrc": "78183:32:74", + "nodeType": "YulFunctionCall", + "src": "78183:32:74" + }, + "nativeSrc": "78183:32:74", + "nodeType": "YulExpressionStatement", + "src": "78183:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "78080:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "78120:6:74", + "nodeType": "YulTypedName", + "src": "78120:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "78128:3:74", + "nodeType": "YulTypedName", + "src": "78128:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "78136:5:74", + "nodeType": "YulTypedName", + "src": "78136:5:74", + "type": "" + } + ], + "src": "78080:141:74" + }, + { + "body": { + "nativeSrc": "78303:273:74", + "nodeType": "YulBlock", + "src": "78303:273:74", + "statements": [ + { + "body": { + "nativeSrc": "78349:83:74", + "nodeType": "YulBlock", + "src": "78349:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "78351:77:74", + "nodeType": "YulIdentifier", + "src": "78351:77:74" + }, + "nativeSrc": "78351:79:74", + "nodeType": "YulFunctionCall", + "src": "78351:79:74" + }, + "nativeSrc": "78351:79:74", + "nodeType": "YulExpressionStatement", + "src": "78351:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "78324:7:74", + "nodeType": "YulIdentifier", + "src": "78324:7:74" + }, + { + "name": "headStart", + "nativeSrc": "78333:9:74", + "nodeType": "YulIdentifier", + "src": "78333:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "78320:3:74", + "nodeType": "YulIdentifier", + "src": "78320:3:74" + }, + "nativeSrc": "78320:23:74", + "nodeType": "YulFunctionCall", + "src": "78320:23:74" + }, + { + "kind": "number", + "nativeSrc": "78345:2:74", + "nodeType": "YulLiteral", + "src": "78345:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "78316:3:74", + "nodeType": "YulIdentifier", + "src": "78316:3:74" + }, + "nativeSrc": "78316:32:74", + "nodeType": "YulFunctionCall", + "src": "78316:32:74" + }, + "nativeSrc": "78313:119:74", + "nodeType": "YulIf", + "src": "78313:119:74" + }, + { + "nativeSrc": "78442:127:74", + "nodeType": "YulBlock", + "src": "78442:127:74", + "statements": [ + { + "nativeSrc": "78457:15:74", + "nodeType": "YulVariableDeclaration", + "src": "78457:15:74", + "value": { + "kind": "number", + "nativeSrc": "78471:1:74", + "nodeType": "YulLiteral", + "src": "78471:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "78461:6:74", + "nodeType": "YulTypedName", + "src": "78461:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "78486:73:74", + "nodeType": "YulAssignment", + "src": "78486:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "78531:9:74", + "nodeType": "YulIdentifier", + "src": "78531:9:74" + }, + { + "name": "offset", + "nativeSrc": "78542:6:74", + "nodeType": "YulIdentifier", + "src": "78542:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "78527:3:74", + "nodeType": "YulIdentifier", + "src": "78527:3:74" + }, + "nativeSrc": "78527:22:74", + "nodeType": "YulFunctionCall", + "src": "78527:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "78551:7:74", + "nodeType": "YulIdentifier", + "src": "78551:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "78496:30:74", + "nodeType": "YulIdentifier", + "src": "78496:30:74" + }, + "nativeSrc": "78496:63:74", + "nodeType": "YulFunctionCall", + "src": "78496:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "78486:6:74", + "nodeType": "YulIdentifier", + "src": "78486:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4_fromMemory", + "nativeSrc": "78227:349:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "78273:9:74", + "nodeType": "YulTypedName", + "src": "78273:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "78284:7:74", + "nodeType": "YulTypedName", + "src": "78284:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "78296:6:74", + "nodeType": "YulTypedName", + "src": "78296:6:74", + "type": "" + } + ], + "src": "78227:349:74" + }, + { + "body": { + "nativeSrc": "78635:53:74", + "nodeType": "YulBlock", + "src": "78635:53:74", + "statements": [ + { + "nativeSrc": "78645:36:74", + "nodeType": "YulAssignment", + "src": "78645:36:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "78670:3:74", + "nodeType": "YulLiteral", + "src": "78670:3:74", + "type": "", + "value": "224" + }, + { + "name": "value", + "nativeSrc": "78675:5:74", + "nodeType": "YulIdentifier", + "src": "78675:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "78666:3:74", + "nodeType": "YulIdentifier", + "src": "78666:3:74" + }, + "nativeSrc": "78666:15:74", + "nodeType": "YulFunctionCall", + "src": "78666:15:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "78645:8:74", + "nodeType": "YulIdentifier", + "src": "78645:8:74" + } + ] + } + ] + }, + "name": "shift_right_224_unsigned", + "nativeSrc": "78582:106:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "78616:5:74", + "nodeType": "YulTypedName", + "src": "78616:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "78626:8:74", + "nodeType": "YulTypedName", + "src": "78626:8:74", + "type": "" + } + ], + "src": "78582:106:74" + }, + { + "body": { + "nativeSrc": "78733:144:74", + "nodeType": "YulBlock", + "src": "78733:144:74", + "statements": [ + { + "body": { + "nativeSrc": "78770:101:74", + "nodeType": "YulBlock", + "src": "78770:101:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "78799:1:74", + "nodeType": "YulLiteral", + "src": "78799:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "78802:1:74", + "nodeType": "YulLiteral", + "src": "78802:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "78805:1:74", + "nodeType": "YulLiteral", + "src": "78805:1:74", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "returndatacopy", + "nativeSrc": "78784:14:74", + "nodeType": "YulIdentifier", + "src": "78784:14:74" + }, + "nativeSrc": "78784:23:74", + "nodeType": "YulFunctionCall", + "src": "78784:23:74" + }, + "nativeSrc": "78784:23:74", + "nodeType": "YulExpressionStatement", + "src": "78784:23:74" + }, + { + "nativeSrc": "78820:41:74", + "nodeType": "YulAssignment", + "src": "78820:41:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "78858:1:74", + "nodeType": "YulLiteral", + "src": "78858:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "78852:5:74", + "nodeType": "YulIdentifier", + "src": "78852:5:74" + }, + "nativeSrc": "78852:8:74", + "nodeType": "YulFunctionCall", + "src": "78852:8:74" + } + ], + "functionName": { + "name": "shift_right_224_unsigned", + "nativeSrc": "78827:24:74", + "nodeType": "YulIdentifier", + "src": "78827:24:74" + }, + "nativeSrc": "78827:34:74", + "nodeType": "YulFunctionCall", + "src": "78827:34:74" + }, + "variableNames": [ + { + "name": "sig", + "nativeSrc": "78820:3:74", + "nodeType": "YulIdentifier", + "src": "78820:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nativeSrc": "78749:14:74", + "nodeType": "YulIdentifier", + "src": "78749:14:74" + }, + "nativeSrc": "78749:16:74", + "nodeType": "YulFunctionCall", + "src": "78749:16:74" + }, + { + "kind": "number", + "nativeSrc": "78767:1:74", + "nodeType": "YulLiteral", + "src": "78767:1:74", + "type": "", + "value": "3" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "78746:2:74", + "nodeType": "YulIdentifier", + "src": "78746:2:74" + }, + "nativeSrc": "78746:23:74", + "nodeType": "YulFunctionCall", + "src": "78746:23:74" + }, + "nativeSrc": "78743:128:74", + "nodeType": "YulIf", + "src": "78743:128:74" + } + ] + }, + "name": "return_data_selector", + "nativeSrc": "78694:183:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "sig", + "nativeSrc": "78729:3:74", + "nodeType": "YulTypedName", + "src": "78729:3:74", + "type": "" + } + ], + "src": "78694:183:74" + }, + { + "body": { + "nativeSrc": "78926:668:74", + "nodeType": "YulBlock", + "src": "78926:668:74", + "statements": [ + { + "body": { + "nativeSrc": "78966:9:74", + "nodeType": "YulBlock", + "src": "78966:9:74", + "statements": [ + { + "nativeSrc": "78968:5:74", + "nodeType": "YulLeave", + "src": "78968:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nativeSrc": "78942:14:74", + "nodeType": "YulIdentifier", + "src": "78942:14:74" + }, + "nativeSrc": "78942:16:74", + "nodeType": "YulFunctionCall", + "src": "78942:16:74" + }, + { + "kind": "number", + "nativeSrc": "78960:4:74", + "nodeType": "YulLiteral", + "src": "78960:4:74", + "type": "", + "value": "0x44" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "78939:2:74", + "nodeType": "YulIdentifier", + "src": "78939:2:74" + }, + "nativeSrc": "78939:26:74", + "nodeType": "YulFunctionCall", + "src": "78939:26:74" + }, + "nativeSrc": "78936:39:74", + "nodeType": "YulIf", + "src": "78936:39:74" + }, + { + "nativeSrc": "78985:32:74", + "nodeType": "YulVariableDeclaration", + "src": "78985:32:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "78997:18:74", + "nodeType": "YulIdentifier", + "src": "78997:18:74" + }, + "nativeSrc": "78997:20:74", + "nodeType": "YulFunctionCall", + "src": "78997:20:74" + }, + "variables": [ + { + "name": "data", + "nativeSrc": "78989:4:74", + "nodeType": "YulTypedName", + "src": "78989:4:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "data", + "nativeSrc": "79041:4:74", + "nodeType": "YulIdentifier", + "src": "79041:4:74" + }, + { + "kind": "number", + "nativeSrc": "79047:1:74", + "nodeType": "YulLiteral", + "src": "79047:1:74", + "type": "", + "value": "4" + }, + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nativeSrc": "79054:14:74", + "nodeType": "YulIdentifier", + "src": "79054:14:74" + }, + "nativeSrc": "79054:16:74", + "nodeType": "YulFunctionCall", + "src": "79054:16:74" + }, + { + "kind": "number", + "nativeSrc": "79072:1:74", + "nodeType": "YulLiteral", + "src": "79072:1:74", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "79050:3:74", + "nodeType": "YulIdentifier", + "src": "79050:3:74" + }, + "nativeSrc": "79050:24:74", + "nodeType": "YulFunctionCall", + "src": "79050:24:74" + } + ], + "functionName": { + "name": "returndatacopy", + "nativeSrc": "79026:14:74", + "nodeType": "YulIdentifier", + "src": "79026:14:74" + }, + "nativeSrc": "79026:49:74", + "nodeType": "YulFunctionCall", + "src": "79026:49:74" + }, + "nativeSrc": "79026:49:74", + "nodeType": "YulExpressionStatement", + "src": "79026:49:74" + }, + { + "nativeSrc": "79085:25:74", + "nodeType": "YulVariableDeclaration", + "src": "79085:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "79105:4:74", + "nodeType": "YulIdentifier", + "src": "79105:4:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "79099:5:74", + "nodeType": "YulIdentifier", + "src": "79099:5:74" + }, + "nativeSrc": "79099:11:74", + "nodeType": "YulFunctionCall", + "src": "79099:11:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "79089:6:74", + "nodeType": "YulTypedName", + "src": "79089:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "79236:29:74", + "nodeType": "YulBlock", + "src": "79236:29:74", + "statements": [ + { + "nativeSrc": "79250:5:74", + "nodeType": "YulLeave", + "src": "79250:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "79141:6:74", + "nodeType": "YulIdentifier", + "src": "79141:6:74" + }, + { + "kind": "number", + "nativeSrc": "79149:18:74", + "nodeType": "YulLiteral", + "src": "79149:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "79138:2:74", + "nodeType": "YulIdentifier", + "src": "79138:2:74" + }, + "nativeSrc": "79138:30:74", + "nodeType": "YulFunctionCall", + "src": "79138:30:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "79189:6:74", + "nodeType": "YulIdentifier", + "src": "79189:6:74" + }, + { + "kind": "number", + "nativeSrc": "79197:4:74", + "nodeType": "YulLiteral", + "src": "79197:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79185:3:74", + "nodeType": "YulIdentifier", + "src": "79185:3:74" + }, + "nativeSrc": "79185:17:74", + "nodeType": "YulFunctionCall", + "src": "79185:17:74" + }, + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nativeSrc": "79204:14:74", + "nodeType": "YulIdentifier", + "src": "79204:14:74" + }, + "nativeSrc": "79204:16:74", + "nodeType": "YulFunctionCall", + "src": "79204:16:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "79182:2:74", + "nodeType": "YulIdentifier", + "src": "79182:2:74" + }, + "nativeSrc": "79182:39:74", + "nodeType": "YulFunctionCall", + "src": "79182:39:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "79122:2:74", + "nodeType": "YulIdentifier", + "src": "79122:2:74" + }, + "nativeSrc": "79122:113:74", + "nodeType": "YulFunctionCall", + "src": "79122:113:74" + }, + "nativeSrc": "79119:146:74", + "nodeType": "YulIf", + "src": "79119:146:74" + }, + { + "nativeSrc": "79275:28:74", + "nodeType": "YulVariableDeclaration", + "src": "79275:28:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "79290:4:74", + "nodeType": "YulIdentifier", + "src": "79290:4:74" + }, + { + "name": "offset", + "nativeSrc": "79296:6:74", + "nodeType": "YulIdentifier", + "src": "79296:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79286:3:74", + "nodeType": "YulIdentifier", + "src": "79286:3:74" + }, + "nativeSrc": "79286:17:74", + "nodeType": "YulFunctionCall", + "src": "79286:17:74" + }, + "variables": [ + { + "name": "msg", + "nativeSrc": "79279:3:74", + "nodeType": "YulTypedName", + "src": "79279:3:74", + "type": "" + } + ] + }, + { + "nativeSrc": "79312:24:74", + "nodeType": "YulVariableDeclaration", + "src": "79312:24:74", + "value": { + "arguments": [ + { + "name": "msg", + "nativeSrc": "79332:3:74", + "nodeType": "YulIdentifier", + "src": "79332:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "79326:5:74", + "nodeType": "YulIdentifier", + "src": "79326:5:74" + }, + "nativeSrc": "79326:10:74", + "nodeType": "YulFunctionCall", + "src": "79326:10:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "79316:6:74", + "nodeType": "YulTypedName", + "src": "79316:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "79379:9:74", + "nodeType": "YulBlock", + "src": "79379:9:74", + "statements": [ + { + "nativeSrc": "79381:5:74", + "nodeType": "YulLeave", + "src": "79381:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "79351:6:74", + "nodeType": "YulIdentifier", + "src": "79351:6:74" + }, + { + "kind": "number", + "nativeSrc": "79359:18:74", + "nodeType": "YulLiteral", + "src": "79359:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "79348:2:74", + "nodeType": "YulIdentifier", + "src": "79348:2:74" + }, + "nativeSrc": "79348:30:74", + "nodeType": "YulFunctionCall", + "src": "79348:30:74" + }, + "nativeSrc": "79345:43:74", + "nodeType": "YulIf", + "src": "79345:43:74" + }, + { + "nativeSrc": "79398:38:74", + "nodeType": "YulVariableDeclaration", + "src": "79398:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "msg", + "nativeSrc": "79417:3:74", + "nodeType": "YulIdentifier", + "src": "79417:3:74" + }, + { + "kind": "number", + "nativeSrc": "79422:4:74", + "nodeType": "YulLiteral", + "src": "79422:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79413:3:74", + "nodeType": "YulIdentifier", + "src": "79413:3:74" + }, + "nativeSrc": "79413:14:74", + "nodeType": "YulFunctionCall", + "src": "79413:14:74" + }, + { + "name": "length", + "nativeSrc": "79429:6:74", + "nodeType": "YulIdentifier", + "src": "79429:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79409:3:74", + "nodeType": "YulIdentifier", + "src": "79409:3:74" + }, + "nativeSrc": "79409:27:74", + "nodeType": "YulFunctionCall", + "src": "79409:27:74" + }, + "variables": [ + { + "name": "end", + "nativeSrc": "79402:3:74", + "nodeType": "YulTypedName", + "src": "79402:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "79493:9:74", + "nodeType": "YulBlock", + "src": "79493:9:74", + "statements": [ + { + "nativeSrc": "79495:5:74", + "nodeType": "YulLeave", + "src": "79495:5:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "end", + "nativeSrc": "79451:3:74", + "nodeType": "YulIdentifier", + "src": "79451:3:74" + }, + { + "arguments": [ + { + "name": "data", + "nativeSrc": "79460:4:74", + "nodeType": "YulIdentifier", + "src": "79460:4:74" + }, + { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nativeSrc": "79470:14:74", + "nodeType": "YulIdentifier", + "src": "79470:14:74" + }, + "nativeSrc": "79470:16:74", + "nodeType": "YulFunctionCall", + "src": "79470:16:74" + }, + { + "kind": "number", + "nativeSrc": "79488:1:74", + "nodeType": "YulLiteral", + "src": "79488:1:74", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "79466:3:74", + "nodeType": "YulIdentifier", + "src": "79466:3:74" + }, + "nativeSrc": "79466:24:74", + "nodeType": "YulFunctionCall", + "src": "79466:24:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79456:3:74", + "nodeType": "YulIdentifier", + "src": "79456:3:74" + }, + "nativeSrc": "79456:35:74", + "nodeType": "YulFunctionCall", + "src": "79456:35:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "79448:2:74", + "nodeType": "YulIdentifier", + "src": "79448:2:74" + }, + "nativeSrc": "79448:44:74", + "nodeType": "YulFunctionCall", + "src": "79448:44:74" + }, + "nativeSrc": "79445:57:74", + "nodeType": "YulIf", + "src": "79445:57:74" + }, + { + "expression": { + "arguments": [ + { + "name": "data", + "nativeSrc": "79532:4:74", + "nodeType": "YulIdentifier", + "src": "79532:4:74" + }, + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "79542:6:74", + "nodeType": "YulIdentifier", + "src": "79542:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "79554:4:74", + "nodeType": "YulLiteral", + "src": "79554:4:74", + "type": "", + "value": "0x20" + }, + { + "name": "length", + "nativeSrc": "79560:6:74", + "nodeType": "YulIdentifier", + "src": "79560:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79550:3:74", + "nodeType": "YulIdentifier", + "src": "79550:3:74" + }, + "nativeSrc": "79550:17:74", + "nodeType": "YulFunctionCall", + "src": "79550:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79538:3:74", + "nodeType": "YulIdentifier", + "src": "79538:3:74" + }, + "nativeSrc": "79538:30:74", + "nodeType": "YulFunctionCall", + "src": "79538:30:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "79512:19:74", + "nodeType": "YulIdentifier", + "src": "79512:19:74" + }, + "nativeSrc": "79512:57:74", + "nodeType": "YulFunctionCall", + "src": "79512:57:74" + }, + "nativeSrc": "79512:57:74", + "nodeType": "YulExpressionStatement", + "src": "79512:57:74" + }, + { + "nativeSrc": "79578:10:74", + "nodeType": "YulAssignment", + "src": "79578:10:74", + "value": { + "name": "msg", + "nativeSrc": "79585:3:74", + "nodeType": "YulIdentifier", + "src": "79585:3:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "79578:3:74", + "nodeType": "YulIdentifier", + "src": "79578:3:74" + } + ] + } + ] + }, + "name": "try_decode_error_message", + "nativeSrc": "78883:711:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "78922:3:74", + "nodeType": "YulTypedName", + "src": "78922:3:74", + "type": "" + } + ], + "src": "78883:711:74" + }, + { + "body": { + "nativeSrc": "79706:133:74", + "nodeType": "YulBlock", + "src": "79706:133:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "79728:6:74", + "nodeType": "YulIdentifier", + "src": "79728:6:74" + }, + { + "kind": "number", + "nativeSrc": "79736:1:74", + "nodeType": "YulLiteral", + "src": "79736:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79724:3:74", + "nodeType": "YulIdentifier", + "src": "79724:3:74" + }, + "nativeSrc": "79724:14:74", + "nodeType": "YulFunctionCall", + "src": "79724:14:74" + }, + { + "hexValue": "455243313135353a207472616e7366657220746f206e6f6e2045524331313535", + "kind": "string", + "nativeSrc": "79740:34:74", + "nodeType": "YulLiteral", + "src": "79740:34:74", + "type": "", + "value": "ERC1155: transfer to non ERC1155" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "79717:6:74", + "nodeType": "YulIdentifier", + "src": "79717:6:74" + }, + "nativeSrc": "79717:58:74", + "nodeType": "YulFunctionCall", + "src": "79717:58:74" + }, + "nativeSrc": "79717:58:74", + "nodeType": "YulExpressionStatement", + "src": "79717:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "79796:6:74", + "nodeType": "YulIdentifier", + "src": "79796:6:74" + }, + { + "kind": "number", + "nativeSrc": "79804:2:74", + "nodeType": "YulLiteral", + "src": "79804:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "79792:3:74", + "nodeType": "YulIdentifier", + "src": "79792:3:74" + }, + "nativeSrc": "79792:15:74", + "nodeType": "YulFunctionCall", + "src": "79792:15:74" + }, + { + "hexValue": "526563656976657220696d706c656d656e746572", + "kind": "string", + "nativeSrc": "79809:22:74", + "nodeType": "YulLiteral", + "src": "79809:22:74", + "type": "", + "value": "Receiver implementer" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "79785:6:74", + "nodeType": "YulIdentifier", + "src": "79785:6:74" + }, + "nativeSrc": "79785:47:74", + "nodeType": "YulFunctionCall", + "src": "79785:47:74" + }, + "nativeSrc": "79785:47:74", + "nodeType": "YulExpressionStatement", + "src": "79785:47:74" + } + ] + }, + "name": "store_literal_in_memory_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "nativeSrc": "79600:239:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "79698:6:74", + "nodeType": "YulTypedName", + "src": "79698:6:74", + "type": "" + } + ], + "src": "79600:239:74" + }, + { + "body": { + "nativeSrc": "79991:220:74", + "nodeType": "YulBlock", + "src": "79991:220:74", + "statements": [ + { + "nativeSrc": "80001:74:74", + "nodeType": "YulAssignment", + "src": "80001:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "80067:3:74", + "nodeType": "YulIdentifier", + "src": "80067:3:74" + }, + { + "kind": "number", + "nativeSrc": "80072:2:74", + "nodeType": "YulLiteral", + "src": "80072:2:74", + "type": "", + "value": "52" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "80008:58:74", + "nodeType": "YulIdentifier", + "src": "80008:58:74" + }, + "nativeSrc": "80008:67:74", + "nodeType": "YulFunctionCall", + "src": "80008:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "80001:3:74", + "nodeType": "YulIdentifier", + "src": "80001:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "80173:3:74", + "nodeType": "YulIdentifier", + "src": "80173:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed", + "nativeSrc": "80084:88:74", + "nodeType": "YulIdentifier", + "src": "80084:88:74" + }, + "nativeSrc": "80084:93:74", + "nodeType": "YulFunctionCall", + "src": "80084:93:74" + }, + "nativeSrc": "80084:93:74", + "nodeType": "YulExpressionStatement", + "src": "80084:93:74" + }, + { + "nativeSrc": "80186:19:74", + "nodeType": "YulAssignment", + "src": "80186:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "80197:3:74", + "nodeType": "YulIdentifier", + "src": "80197:3:74" + }, + { + "kind": "number", + "nativeSrc": "80202:2:74", + "nodeType": "YulLiteral", + "src": "80202:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "80193:3:74", + "nodeType": "YulIdentifier", + "src": "80193:3:74" + }, + "nativeSrc": "80193:12:74", + "nodeType": "YulFunctionCall", + "src": "80193:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "80186:3:74", + "nodeType": "YulIdentifier", + "src": "80186:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed_to_t_string_memory_ptr_fromStack", + "nativeSrc": "79845:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "79979:3:74", + "nodeType": "YulTypedName", + "src": "79979:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "79987:3:74", + "nodeType": "YulTypedName", + "src": "79987:3:74", + "type": "" + } + ], + "src": "79845:366:74" + }, + { + "body": { + "nativeSrc": "80388:248:74", + "nodeType": "YulBlock", + "src": "80388:248:74", + "statements": [ + { + "nativeSrc": "80398:26:74", + "nodeType": "YulAssignment", + "src": "80398:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "80410:9:74", + "nodeType": "YulIdentifier", + "src": "80410:9:74" + }, + { + "kind": "number", + "nativeSrc": "80421:2:74", + "nodeType": "YulLiteral", + "src": "80421:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "80406:3:74", + "nodeType": "YulIdentifier", + "src": "80406:3:74" + }, + "nativeSrc": "80406:18:74", + "nodeType": "YulFunctionCall", + "src": "80406:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "80398:4:74", + "nodeType": "YulIdentifier", + "src": "80398:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "80445:9:74", + "nodeType": "YulIdentifier", + "src": "80445:9:74" + }, + { + "kind": "number", + "nativeSrc": "80456:1:74", + "nodeType": "YulLiteral", + "src": "80456:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "80441:3:74", + "nodeType": "YulIdentifier", + "src": "80441:3:74" + }, + "nativeSrc": "80441:17:74", + "nodeType": "YulFunctionCall", + "src": "80441:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "80464:4:74", + "nodeType": "YulIdentifier", + "src": "80464:4:74" + }, + { + "name": "headStart", + "nativeSrc": "80470:9:74", + "nodeType": "YulIdentifier", + "src": "80470:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "80460:3:74", + "nodeType": "YulIdentifier", + "src": "80460:3:74" + }, + "nativeSrc": "80460:20:74", + "nodeType": "YulFunctionCall", + "src": "80460:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "80434:6:74", + "nodeType": "YulIdentifier", + "src": "80434:6:74" + }, + "nativeSrc": "80434:47:74", + "nodeType": "YulFunctionCall", + "src": "80434:47:74" + }, + "nativeSrc": "80434:47:74", + "nodeType": "YulExpressionStatement", + "src": "80434:47:74" + }, + { + "nativeSrc": "80490:139:74", + "nodeType": "YulAssignment", + "src": "80490:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "80624:4:74", + "nodeType": "YulIdentifier", + "src": "80624:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed_to_t_string_memory_ptr_fromStack", + "nativeSrc": "80498:124:74", + "nodeType": "YulIdentifier", + "src": "80498:124:74" + }, + "nativeSrc": "80498:131:74", + "nodeType": "YulFunctionCall", + "src": "80498:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "80490:4:74", + "nodeType": "YulIdentifier", + "src": "80490:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "80217:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "80368:9:74", + "nodeType": "YulTypedName", + "src": "80368:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "80383:4:74", + "nodeType": "YulTypedName", + "src": "80383:4:74", + "type": "" + } + ], + "src": "80217:419:74" + }, + { + "body": { + "nativeSrc": "80748:121:74", + "nodeType": "YulBlock", + "src": "80748:121:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "80770:6:74", + "nodeType": "YulIdentifier", + "src": "80770:6:74" + }, + { + "kind": "number", + "nativeSrc": "80778:1:74", + "nodeType": "YulLiteral", + "src": "80778:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "80766:3:74", + "nodeType": "YulIdentifier", + "src": "80766:3:74" + }, + "nativeSrc": "80766:14:74", + "nodeType": "YulFunctionCall", + "src": "80766:14:74" + }, + { + "hexValue": "455243313135353a204552433131353552656365697665722072656a65637465", + "kind": "string", + "nativeSrc": "80782:34:74", + "nodeType": "YulLiteral", + "src": "80782:34:74", + "type": "", + "value": "ERC1155: ERC1155Receiver rejecte" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "80759:6:74", + "nodeType": "YulIdentifier", + "src": "80759:6:74" + }, + "nativeSrc": "80759:58:74", + "nodeType": "YulFunctionCall", + "src": "80759:58:74" + }, + "nativeSrc": "80759:58:74", + "nodeType": "YulExpressionStatement", + "src": "80759:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "80838:6:74", + "nodeType": "YulIdentifier", + "src": "80838:6:74" + }, + { + "kind": "number", + "nativeSrc": "80846:2:74", + "nodeType": "YulLiteral", + "src": "80846:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "80834:3:74", + "nodeType": "YulIdentifier", + "src": "80834:3:74" + }, + "nativeSrc": "80834:15:74", + "nodeType": "YulFunctionCall", + "src": "80834:15:74" + }, + { + "hexValue": "6420746f6b656e73", + "kind": "string", + "nativeSrc": "80851:10:74", + "nodeType": "YulLiteral", + "src": "80851:10:74", + "type": "", + "value": "d tokens" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "80827:6:74", + "nodeType": "YulIdentifier", + "src": "80827:6:74" + }, + "nativeSrc": "80827:35:74", + "nodeType": "YulFunctionCall", + "src": "80827:35:74" + }, + "nativeSrc": "80827:35:74", + "nodeType": "YulExpressionStatement", + "src": "80827:35:74" + } + ] + }, + "name": "store_literal_in_memory_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "nativeSrc": "80642:227:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "80740:6:74", + "nodeType": "YulTypedName", + "src": "80740:6:74", + "type": "" + } + ], + "src": "80642:227:74" + }, + { + "body": { + "nativeSrc": "81021:220:74", + "nodeType": "YulBlock", + "src": "81021:220:74", + "statements": [ + { + "nativeSrc": "81031:74:74", + "nodeType": "YulAssignment", + "src": "81031:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "81097:3:74", + "nodeType": "YulIdentifier", + "src": "81097:3:74" + }, + { + "kind": "number", + "nativeSrc": "81102:2:74", + "nodeType": "YulLiteral", + "src": "81102:2:74", + "type": "", + "value": "40" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "81038:58:74", + "nodeType": "YulIdentifier", + "src": "81038:58:74" + }, + "nativeSrc": "81038:67:74", + "nodeType": "YulFunctionCall", + "src": "81038:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "81031:3:74", + "nodeType": "YulIdentifier", + "src": "81031:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "81203:3:74", + "nodeType": "YulIdentifier", + "src": "81203:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503", + "nativeSrc": "81114:88:74", + "nodeType": "YulIdentifier", + "src": "81114:88:74" + }, + "nativeSrc": "81114:93:74", + "nodeType": "YulFunctionCall", + "src": "81114:93:74" + }, + "nativeSrc": "81114:93:74", + "nodeType": "YulExpressionStatement", + "src": "81114:93:74" + }, + { + "nativeSrc": "81216:19:74", + "nodeType": "YulAssignment", + "src": "81216:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "81227:3:74", + "nodeType": "YulIdentifier", + "src": "81227:3:74" + }, + { + "kind": "number", + "nativeSrc": "81232:2:74", + "nodeType": "YulLiteral", + "src": "81232:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "81223:3:74", + "nodeType": "YulIdentifier", + "src": "81223:3:74" + }, + "nativeSrc": "81223:12:74", + "nodeType": "YulFunctionCall", + "src": "81223:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "81216:3:74", + "nodeType": "YulIdentifier", + "src": "81216:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503_to_t_string_memory_ptr_fromStack", + "nativeSrc": "80875:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "81009:3:74", + "nodeType": "YulTypedName", + "src": "81009:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "81017:3:74", + "nodeType": "YulTypedName", + "src": "81017:3:74", + "type": "" + } + ], + "src": "80875:366:74" + }, + { + "body": { + "nativeSrc": "81418:248:74", + "nodeType": "YulBlock", + "src": "81418:248:74", + "statements": [ + { + "nativeSrc": "81428:26:74", + "nodeType": "YulAssignment", + "src": "81428:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "81440:9:74", + "nodeType": "YulIdentifier", + "src": "81440:9:74" + }, + { + "kind": "number", + "nativeSrc": "81451:2:74", + "nodeType": "YulLiteral", + "src": "81451:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "81436:3:74", + "nodeType": "YulIdentifier", + "src": "81436:3:74" + }, + "nativeSrc": "81436:18:74", + "nodeType": "YulFunctionCall", + "src": "81436:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "81428:4:74", + "nodeType": "YulIdentifier", + "src": "81428:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "81475:9:74", + "nodeType": "YulIdentifier", + "src": "81475:9:74" + }, + { + "kind": "number", + "nativeSrc": "81486:1:74", + "nodeType": "YulLiteral", + "src": "81486:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "81471:3:74", + "nodeType": "YulIdentifier", + "src": "81471:3:74" + }, + "nativeSrc": "81471:17:74", + "nodeType": "YulFunctionCall", + "src": "81471:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "81494:4:74", + "nodeType": "YulIdentifier", + "src": "81494:4:74" + }, + { + "name": "headStart", + "nativeSrc": "81500:9:74", + "nodeType": "YulIdentifier", + "src": "81500:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "81490:3:74", + "nodeType": "YulIdentifier", + "src": "81490:3:74" + }, + "nativeSrc": "81490:20:74", + "nodeType": "YulFunctionCall", + "src": "81490:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "81464:6:74", + "nodeType": "YulIdentifier", + "src": "81464:6:74" + }, + "nativeSrc": "81464:47:74", + "nodeType": "YulFunctionCall", + "src": "81464:47:74" + }, + "nativeSrc": "81464:47:74", + "nodeType": "YulExpressionStatement", + "src": "81464:47:74" + }, + { + "nativeSrc": "81520:139:74", + "nodeType": "YulAssignment", + "src": "81520:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "81654:4:74", + "nodeType": "YulIdentifier", + "src": "81654:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503_to_t_string_memory_ptr_fromStack", + "nativeSrc": "81528:124:74", + "nodeType": "YulIdentifier", + "src": "81528:124:74" + }, + "nativeSrc": "81528:131:74", + "nodeType": "YulFunctionCall", + "src": "81528:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "81520:4:74", + "nodeType": "YulIdentifier", + "src": "81520:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "81247:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "81398:9:74", + "nodeType": "YulTypedName", + "src": "81398:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "81413:4:74", + "nodeType": "YulTypedName", + "src": "81413:4:74", + "type": "" + } + ], + "src": "81247:419:74" + }, + { + "body": { + "nativeSrc": "81868:436:74", + "nodeType": "YulBlock", + "src": "81868:436:74", + "statements": [ + { + "nativeSrc": "81878:27:74", + "nodeType": "YulAssignment", + "src": "81878:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "81890:9:74", + "nodeType": "YulIdentifier", + "src": "81890:9:74" + }, + { + "kind": "number", + "nativeSrc": "81901:3:74", + "nodeType": "YulLiteral", + "src": "81901:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "81886:3:74", + "nodeType": "YulIdentifier", + "src": "81886:3:74" + }, + "nativeSrc": "81886:19:74", + "nodeType": "YulFunctionCall", + "src": "81886:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "81878:4:74", + "nodeType": "YulIdentifier", + "src": "81878:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "81926:9:74", + "nodeType": "YulIdentifier", + "src": "81926:9:74" + }, + { + "kind": "number", + "nativeSrc": "81937:1:74", + "nodeType": "YulLiteral", + "src": "81937:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "81922:3:74", + "nodeType": "YulIdentifier", + "src": "81922:3:74" + }, + "nativeSrc": "81922:17:74", + "nodeType": "YulFunctionCall", + "src": "81922:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "81945:4:74", + "nodeType": "YulIdentifier", + "src": "81945:4:74" + }, + { + "name": "headStart", + "nativeSrc": "81951:9:74", + "nodeType": "YulIdentifier", + "src": "81951:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "81941:3:74", + "nodeType": "YulIdentifier", + "src": "81941:3:74" + }, + "nativeSrc": "81941:20:74", + "nodeType": "YulFunctionCall", + "src": "81941:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "81915:6:74", + "nodeType": "YulIdentifier", + "src": "81915:6:74" + }, + "nativeSrc": "81915:47:74", + "nodeType": "YulFunctionCall", + "src": "81915:47:74" + }, + "nativeSrc": "81915:47:74", + "nodeType": "YulExpressionStatement", + "src": "81915:47:74" + }, + { + "nativeSrc": "81971:84:74", + "nodeType": "YulAssignment", + "src": "81971:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "82041:6:74", + "nodeType": "YulIdentifier", + "src": "82041:6:74" + }, + { + "name": "tail", + "nativeSrc": "82050:4:74", + "nodeType": "YulIdentifier", + "src": "82050:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "81979:61:74", + "nodeType": "YulIdentifier", + "src": "81979:61:74" + }, + "nativeSrc": "81979:76:74", + "nodeType": "YulFunctionCall", + "src": "81979:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "81971:4:74", + "nodeType": "YulIdentifier", + "src": "81971:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "82109:6:74", + "nodeType": "YulIdentifier", + "src": "82109:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "82122:9:74", + "nodeType": "YulIdentifier", + "src": "82122:9:74" + }, + { + "kind": "number", + "nativeSrc": "82133:2:74", + "nodeType": "YulLiteral", + "src": "82133:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "82118:3:74", + "nodeType": "YulIdentifier", + "src": "82118:3:74" + }, + "nativeSrc": "82118:18:74", + "nodeType": "YulFunctionCall", + "src": "82118:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "82065:43:74", + "nodeType": "YulIdentifier", + "src": "82065:43:74" + }, + "nativeSrc": "82065:72:74", + "nodeType": "YulFunctionCall", + "src": "82065:72:74" + }, + "nativeSrc": "82065:72:74", + "nodeType": "YulExpressionStatement", + "src": "82065:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "82189:6:74", + "nodeType": "YulIdentifier", + "src": "82189:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "82202:9:74", + "nodeType": "YulIdentifier", + "src": "82202:9:74" + }, + { + "kind": "number", + "nativeSrc": "82213:2:74", + "nodeType": "YulLiteral", + "src": "82213:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "82198:3:74", + "nodeType": "YulIdentifier", + "src": "82198:3:74" + }, + "nativeSrc": "82198:18:74", + "nodeType": "YulFunctionCall", + "src": "82198:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint32_to_t_uint32_fromStack", + "nativeSrc": "82147:41:74", + "nodeType": "YulIdentifier", + "src": "82147:41:74" + }, + "nativeSrc": "82147:70:74", + "nodeType": "YulFunctionCall", + "src": "82147:70:74" + }, + "nativeSrc": "82147:70:74", + "nodeType": "YulExpressionStatement", + "src": "82147:70:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "82269:6:74", + "nodeType": "YulIdentifier", + "src": "82269:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "82282:9:74", + "nodeType": "YulIdentifier", + "src": "82282:9:74" + }, + { + "kind": "number", + "nativeSrc": "82293:2:74", + "nodeType": "YulLiteral", + "src": "82293:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "82278:3:74", + "nodeType": "YulIdentifier", + "src": "82278:3:74" + }, + "nativeSrc": "82278:18:74", + "nodeType": "YulFunctionCall", + "src": "82278:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint64_to_t_uint64_fromStack", + "nativeSrc": "82227:41:74", + "nodeType": "YulIdentifier", + "src": "82227:41:74" + }, + "nativeSrc": "82227:70:74", + "nodeType": "YulFunctionCall", + "src": "82227:70:74" + }, + "nativeSrc": "82227:70:74", + "nodeType": "YulExpressionStatement", + "src": "82227:70:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__fromStack_reversed", + "nativeSrc": "81672:632:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "81816:9:74", + "nodeType": "YulTypedName", + "src": "81816:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "81828:6:74", + "nodeType": "YulTypedName", + "src": "81828:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "81836:6:74", + "nodeType": "YulTypedName", + "src": "81836:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "81844:6:74", + "nodeType": "YulTypedName", + "src": "81844:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "81852:6:74", + "nodeType": "YulTypedName", + "src": "81852:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "81863:4:74", + "nodeType": "YulTypedName", + "src": "81863:4:74", + "type": "" + } + ], + "src": "81672:632:74" + }, + { + "body": { + "nativeSrc": "82355:149:74", + "nodeType": "YulBlock", + "src": "82355:149:74", + "statements": [ + { + "nativeSrc": "82365:25:74", + "nodeType": "YulAssignment", + "src": "82365:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "82388:1:74", + "nodeType": "YulIdentifier", + "src": "82388:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "82370:17:74", + "nodeType": "YulIdentifier", + "src": "82370:17:74" + }, + "nativeSrc": "82370:20:74", + "nodeType": "YulFunctionCall", + "src": "82370:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "82365:1:74", + "nodeType": "YulIdentifier", + "src": "82365:1:74" + } + ] + }, + { + "nativeSrc": "82399:25:74", + "nodeType": "YulAssignment", + "src": "82399:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "82422:1:74", + "nodeType": "YulIdentifier", + "src": "82422:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "82404:17:74", + "nodeType": "YulIdentifier", + "src": "82404:17:74" + }, + "nativeSrc": "82404:20:74", + "nodeType": "YulFunctionCall", + "src": "82404:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "82399:1:74", + "nodeType": "YulIdentifier", + "src": "82399:1:74" + } + ] + }, + { + "nativeSrc": "82433:17:74", + "nodeType": "YulAssignment", + "src": "82433:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "82445:1:74", + "nodeType": "YulIdentifier", + "src": "82445:1:74" + }, + { + "name": "y", + "nativeSrc": "82448:1:74", + "nodeType": "YulIdentifier", + "src": "82448:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "82441:3:74", + "nodeType": "YulIdentifier", + "src": "82441:3:74" + }, + "nativeSrc": "82441:9:74", + "nodeType": "YulFunctionCall", + "src": "82441:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "82433:4:74", + "nodeType": "YulIdentifier", + "src": "82433:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "82475:22:74", + "nodeType": "YulBlock", + "src": "82475:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "82477:16:74", + "nodeType": "YulIdentifier", + "src": "82477:16:74" + }, + "nativeSrc": "82477:18:74", + "nodeType": "YulFunctionCall", + "src": "82477:18:74" + }, + "nativeSrc": "82477:18:74", + "nodeType": "YulExpressionStatement", + "src": "82477:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "82466:4:74", + "nodeType": "YulIdentifier", + "src": "82466:4:74" + }, + { + "name": "x", + "nativeSrc": "82472:1:74", + "nodeType": "YulIdentifier", + "src": "82472:1:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "82463:2:74", + "nodeType": "YulIdentifier", + "src": "82463:2:74" + }, + "nativeSrc": "82463:11:74", + "nodeType": "YulFunctionCall", + "src": "82463:11:74" + }, + "nativeSrc": "82460:37:74", + "nodeType": "YulIf", + "src": "82460:37:74" + } + ] + }, + "name": "checked_sub_t_uint256", + "nativeSrc": "82310:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "82341:1:74", + "nodeType": "YulTypedName", + "src": "82341:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "82344:1:74", + "nodeType": "YulTypedName", + "src": "82344:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "82350:4:74", + "nodeType": "YulTypedName", + "src": "82350:4:74", + "type": "" + } + ], + "src": "82310:194:74" + }, + { + "body": { + "nativeSrc": "82616:73:74", + "nodeType": "YulBlock", + "src": "82616:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "82638:6:74", + "nodeType": "YulIdentifier", + "src": "82638:6:74" + }, + { + "kind": "number", + "nativeSrc": "82646:1:74", + "nodeType": "YulLiteral", + "src": "82646:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "82634:3:74", + "nodeType": "YulIdentifier", + "src": "82634:3:74" + }, + "nativeSrc": "82634:14:74", + "nodeType": "YulFunctionCall", + "src": "82634:14:74" + }, + { + "hexValue": "6e616d65686173683a204a756e6b20617420656e64206f66206e616d65", + "kind": "string", + "nativeSrc": "82650:31:74", + "nodeType": "YulLiteral", + "src": "82650:31:74", + "type": "", + "value": "namehash: Junk at end of name" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "82627:6:74", + "nodeType": "YulIdentifier", + "src": "82627:6:74" + }, + "nativeSrc": "82627:55:74", + "nodeType": "YulFunctionCall", + "src": "82627:55:74" + }, + "nativeSrc": "82627:55:74", + "nodeType": "YulExpressionStatement", + "src": "82627:55:74" + } + ] + }, + "name": "store_literal_in_memory_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142", + "nativeSrc": "82510:179:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "82608:6:74", + "nodeType": "YulTypedName", + "src": "82608:6:74", + "type": "" + } + ], + "src": "82510:179:74" + }, + { + "body": { + "nativeSrc": "82841:220:74", + "nodeType": "YulBlock", + "src": "82841:220:74", + "statements": [ + { + "nativeSrc": "82851:74:74", + "nodeType": "YulAssignment", + "src": "82851:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "82917:3:74", + "nodeType": "YulIdentifier", + "src": "82917:3:74" + }, + { + "kind": "number", + "nativeSrc": "82922:2:74", + "nodeType": "YulLiteral", + "src": "82922:2:74", + "type": "", + "value": "29" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "82858:58:74", + "nodeType": "YulIdentifier", + "src": "82858:58:74" + }, + "nativeSrc": "82858:67:74", + "nodeType": "YulFunctionCall", + "src": "82858:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "82851:3:74", + "nodeType": "YulIdentifier", + "src": "82851:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "83023:3:74", + "nodeType": "YulIdentifier", + "src": "83023:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142", + "nativeSrc": "82934:88:74", + "nodeType": "YulIdentifier", + "src": "82934:88:74" + }, + "nativeSrc": "82934:93:74", + "nodeType": "YulFunctionCall", + "src": "82934:93:74" + }, + "nativeSrc": "82934:93:74", + "nodeType": "YulExpressionStatement", + "src": "82934:93:74" + }, + { + "nativeSrc": "83036:19:74", + "nodeType": "YulAssignment", + "src": "83036:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "83047:3:74", + "nodeType": "YulIdentifier", + "src": "83047:3:74" + }, + { + "kind": "number", + "nativeSrc": "83052:2:74", + "nodeType": "YulLiteral", + "src": "83052:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "83043:3:74", + "nodeType": "YulIdentifier", + "src": "83043:3:74" + }, + "nativeSrc": "83043:12:74", + "nodeType": "YulFunctionCall", + "src": "83043:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "83036:3:74", + "nodeType": "YulIdentifier", + "src": "83036:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142_to_t_string_memory_ptr_fromStack", + "nativeSrc": "82695:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "82829:3:74", + "nodeType": "YulTypedName", + "src": "82829:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "82837:3:74", + "nodeType": "YulTypedName", + "src": "82837:3:74", + "type": "" + } + ], + "src": "82695:366:74" + }, + { + "body": { + "nativeSrc": "83238:248:74", + "nodeType": "YulBlock", + "src": "83238:248:74", + "statements": [ + { + "nativeSrc": "83248:26:74", + "nodeType": "YulAssignment", + "src": "83248:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "83260:9:74", + "nodeType": "YulIdentifier", + "src": "83260:9:74" + }, + { + "kind": "number", + "nativeSrc": "83271:2:74", + "nodeType": "YulLiteral", + "src": "83271:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "83256:3:74", + "nodeType": "YulIdentifier", + "src": "83256:3:74" + }, + "nativeSrc": "83256:18:74", + "nodeType": "YulFunctionCall", + "src": "83256:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "83248:4:74", + "nodeType": "YulIdentifier", + "src": "83248:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "83295:9:74", + "nodeType": "YulIdentifier", + "src": "83295:9:74" + }, + { + "kind": "number", + "nativeSrc": "83306:1:74", + "nodeType": "YulLiteral", + "src": "83306:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "83291:3:74", + "nodeType": "YulIdentifier", + "src": "83291:3:74" + }, + "nativeSrc": "83291:17:74", + "nodeType": "YulFunctionCall", + "src": "83291:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "83314:4:74", + "nodeType": "YulIdentifier", + "src": "83314:4:74" + }, + { + "name": "headStart", + "nativeSrc": "83320:9:74", + "nodeType": "YulIdentifier", + "src": "83320:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "83310:3:74", + "nodeType": "YulIdentifier", + "src": "83310:3:74" + }, + "nativeSrc": "83310:20:74", + "nodeType": "YulFunctionCall", + "src": "83310:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "83284:6:74", + "nodeType": "YulIdentifier", + "src": "83284:6:74" + }, + "nativeSrc": "83284:47:74", + "nodeType": "YulFunctionCall", + "src": "83284:47:74" + }, + "nativeSrc": "83284:47:74", + "nodeType": "YulExpressionStatement", + "src": "83284:47:74" + }, + { + "nativeSrc": "83340:139:74", + "nodeType": "YulAssignment", + "src": "83340:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "83474:4:74", + "nodeType": "YulIdentifier", + "src": "83474:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142_to_t_string_memory_ptr_fromStack", + "nativeSrc": "83348:124:74", + "nodeType": "YulIdentifier", + "src": "83348:124:74" + }, + "nativeSrc": "83348:131:74", + "nodeType": "YulFunctionCall", + "src": "83348:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "83340:4:74", + "nodeType": "YulIdentifier", + "src": "83340:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "83067:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "83218:9:74", + "nodeType": "YulTypedName", + "src": "83218:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "83233:4:74", + "nodeType": "YulTypedName", + "src": "83233:4:74", + "type": "" + } + ], + "src": "83067:419:74" + }, + { + "body": { + "nativeSrc": "83545:32:74", + "nodeType": "YulBlock", + "src": "83545:32:74", + "statements": [ + { + "nativeSrc": "83555:16:74", + "nodeType": "YulAssignment", + "src": "83555:16:74", + "value": { + "name": "value", + "nativeSrc": "83566:5:74", + "nodeType": "YulIdentifier", + "src": "83566:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "83555:7:74", + "nodeType": "YulIdentifier", + "src": "83555:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_rational_1_by_1", + "nativeSrc": "83492:85:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "83527:5:74", + "nodeType": "YulTypedName", + "src": "83527:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "83537:7:74", + "nodeType": "YulTypedName", + "src": "83537:7:74", + "type": "" + } + ], + "src": "83492:85:74" + }, + { + "body": { + "nativeSrc": "83651:90:74", + "nodeType": "YulBlock", + "src": "83651:90:74", + "statements": [ + { + "nativeSrc": "83661:74:74", + "nodeType": "YulAssignment", + "src": "83661:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "83727:5:74", + "nodeType": "YulIdentifier", + "src": "83727:5:74" + } + ], + "functionName": { + "name": "cleanup_t_rational_1_by_1", + "nativeSrc": "83701:25:74", + "nodeType": "YulIdentifier", + "src": "83701:25:74" + }, + "nativeSrc": "83701:32:74", + "nodeType": "YulFunctionCall", + "src": "83701:32:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "83692:8:74", + "nodeType": "YulIdentifier", + "src": "83692:8:74" + }, + "nativeSrc": "83692:42:74", + "nodeType": "YulFunctionCall", + "src": "83692:42:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "83674:17:74", + "nodeType": "YulIdentifier", + "src": "83674:17:74" + }, + "nativeSrc": "83674:61:74", + "nodeType": "YulFunctionCall", + "src": "83674:61:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "83661:9:74", + "nodeType": "YulIdentifier", + "src": "83661:9:74" + } + ] + } + ] + }, + "name": "convert_t_rational_1_by_1_to_t_uint256", + "nativeSrc": "83583:158:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "83631:5:74", + "nodeType": "YulTypedName", + "src": "83631:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "83641:9:74", + "nodeType": "YulTypedName", + "src": "83641:9:74", + "type": "" + } + ], + "src": "83583:158:74" + }, + { + "body": { + "nativeSrc": "83820:74:74", + "nodeType": "YulBlock", + "src": "83820:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "83837:3:74", + "nodeType": "YulIdentifier", + "src": "83837:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "83881:5:74", + "nodeType": "YulIdentifier", + "src": "83881:5:74" + } + ], + "functionName": { + "name": "convert_t_rational_1_by_1_to_t_uint256", + "nativeSrc": "83842:38:74", + "nodeType": "YulIdentifier", + "src": "83842:38:74" + }, + "nativeSrc": "83842:45:74", + "nodeType": "YulFunctionCall", + "src": "83842:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "83830:6:74", + "nodeType": "YulIdentifier", + "src": "83830:6:74" + }, + "nativeSrc": "83830:58:74", + "nodeType": "YulFunctionCall", + "src": "83830:58:74" + }, + "nativeSrc": "83830:58:74", + "nodeType": "YulExpressionStatement", + "src": "83830:58:74" + } + ] + }, + "name": "abi_encode_t_rational_1_by_1_to_t_uint256_fromStack", + "nativeSrc": "83747:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "83808:5:74", + "nodeType": "YulTypedName", + "src": "83808:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "83815:3:74", + "nodeType": "YulTypedName", + "src": "83815:3:74", + "type": "" + } + ], + "src": "83747:147:74" + }, + { + "body": { + "nativeSrc": "84034:214:74", + "nodeType": "YulBlock", + "src": "84034:214:74", + "statements": [ + { + "nativeSrc": "84044:26:74", + "nodeType": "YulAssignment", + "src": "84044:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "84056:9:74", + "nodeType": "YulIdentifier", + "src": "84056:9:74" + }, + { + "kind": "number", + "nativeSrc": "84067:2:74", + "nodeType": "YulLiteral", + "src": "84067:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "84052:3:74", + "nodeType": "YulIdentifier", + "src": "84052:3:74" + }, + "nativeSrc": "84052:18:74", + "nodeType": "YulFunctionCall", + "src": "84052:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "84044:4:74", + "nodeType": "YulIdentifier", + "src": "84044:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "84124:6:74", + "nodeType": "YulIdentifier", + "src": "84124:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "84137:9:74", + "nodeType": "YulIdentifier", + "src": "84137:9:74" + }, + { + "kind": "number", + "nativeSrc": "84148:1:74", + "nodeType": "YulLiteral", + "src": "84148:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "84133:3:74", + "nodeType": "YulIdentifier", + "src": "84133:3:74" + }, + "nativeSrc": "84133:17:74", + "nodeType": "YulFunctionCall", + "src": "84133:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "84080:43:74", + "nodeType": "YulIdentifier", + "src": "84080:43:74" + }, + "nativeSrc": "84080:71:74", + "nodeType": "YulFunctionCall", + "src": "84080:71:74" + }, + "nativeSrc": "84080:71:74", + "nodeType": "YulExpressionStatement", + "src": "84080:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "84213:6:74", + "nodeType": "YulIdentifier", + "src": "84213:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "84226:9:74", + "nodeType": "YulIdentifier", + "src": "84226:9:74" + }, + { + "kind": "number", + "nativeSrc": "84237:2:74", + "nodeType": "YulLiteral", + "src": "84237:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "84222:3:74", + "nodeType": "YulIdentifier", + "src": "84222:3:74" + }, + "nativeSrc": "84222:18:74", + "nodeType": "YulFunctionCall", + "src": "84222:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_rational_1_by_1_to_t_uint256_fromStack", + "nativeSrc": "84161:51:74", + "nodeType": "YulIdentifier", + "src": "84161:51:74" + }, + "nativeSrc": "84161:80:74", + "nodeType": "YulFunctionCall", + "src": "84161:80:74" + }, + "nativeSrc": "84161:80:74", + "nodeType": "YulExpressionStatement", + "src": "84161:80:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_rational_1_by_1__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "83900:348:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "83998:9:74", + "nodeType": "YulTypedName", + "src": "83998:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "84010:6:74", + "nodeType": "YulTypedName", + "src": "84010:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "84018:6:74", + "nodeType": "YulTypedName", + "src": "84018:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "84029:4:74", + "nodeType": "YulTypedName", + "src": "84029:4:74", + "type": "" + } + ], + "src": "83900:348:74" + }, + { + "body": { + "nativeSrc": "84360:74:74", + "nodeType": "YulBlock", + "src": "84360:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "84382:6:74", + "nodeType": "YulIdentifier", + "src": "84382:6:74" + }, + { + "kind": "number", + "nativeSrc": "84390:1:74", + "nodeType": "YulLiteral", + "src": "84390:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "84378:3:74", + "nodeType": "YulIdentifier", + "src": "84378:3:74" + }, + "nativeSrc": "84378:14:74", + "nodeType": "YulFunctionCall", + "src": "84378:14:74" + }, + { + "hexValue": "726561644c6162656c3a20496e646578206f7574206f6620626f756e6473", + "kind": "string", + "nativeSrc": "84394:32:74", + "nodeType": "YulLiteral", + "src": "84394:32:74", + "type": "", + "value": "readLabel: Index out of bounds" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "84371:6:74", + "nodeType": "YulIdentifier", + "src": "84371:6:74" + }, + "nativeSrc": "84371:56:74", + "nodeType": "YulFunctionCall", + "src": "84371:56:74" + }, + "nativeSrc": "84371:56:74", + "nodeType": "YulExpressionStatement", + "src": "84371:56:74" + } + ] + }, + "name": "store_literal_in_memory_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535", + "nativeSrc": "84254:180:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "84352:6:74", + "nodeType": "YulTypedName", + "src": "84352:6:74", + "type": "" + } + ], + "src": "84254:180:74" + }, + { + "body": { + "nativeSrc": "84586:220:74", + "nodeType": "YulBlock", + "src": "84586:220:74", + "statements": [ + { + "nativeSrc": "84596:74:74", + "nodeType": "YulAssignment", + "src": "84596:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "84662:3:74", + "nodeType": "YulIdentifier", + "src": "84662:3:74" + }, + { + "kind": "number", + "nativeSrc": "84667:2:74", + "nodeType": "YulLiteral", + "src": "84667:2:74", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "84603:58:74", + "nodeType": "YulIdentifier", + "src": "84603:58:74" + }, + "nativeSrc": "84603:67:74", + "nodeType": "YulFunctionCall", + "src": "84603:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "84596:3:74", + "nodeType": "YulIdentifier", + "src": "84596:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "84768:3:74", + "nodeType": "YulIdentifier", + "src": "84768:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535", + "nativeSrc": "84679:88:74", + "nodeType": "YulIdentifier", + "src": "84679:88:74" + }, + "nativeSrc": "84679:93:74", + "nodeType": "YulFunctionCall", + "src": "84679:93:74" + }, + "nativeSrc": "84679:93:74", + "nodeType": "YulExpressionStatement", + "src": "84679:93:74" + }, + { + "nativeSrc": "84781:19:74", + "nodeType": "YulAssignment", + "src": "84781:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "84792:3:74", + "nodeType": "YulIdentifier", + "src": "84792:3:74" + }, + { + "kind": "number", + "nativeSrc": "84797:2:74", + "nodeType": "YulLiteral", + "src": "84797:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "84788:3:74", + "nodeType": "YulIdentifier", + "src": "84788:3:74" + }, + "nativeSrc": "84788:12:74", + "nodeType": "YulFunctionCall", + "src": "84788:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "84781:3:74", + "nodeType": "YulIdentifier", + "src": "84781:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535_to_t_string_memory_ptr_fromStack", + "nativeSrc": "84440:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "84574:3:74", + "nodeType": "YulTypedName", + "src": "84574:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "84582:3:74", + "nodeType": "YulTypedName", + "src": "84582:3:74", + "type": "" + } + ], + "src": "84440:366:74" + }, + { + "body": { + "nativeSrc": "84983:248:74", + "nodeType": "YulBlock", + "src": "84983:248:74", + "statements": [ + { + "nativeSrc": "84993:26:74", + "nodeType": "YulAssignment", + "src": "84993:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "85005:9:74", + "nodeType": "YulIdentifier", + "src": "85005:9:74" + }, + { + "kind": "number", + "nativeSrc": "85016:2:74", + "nodeType": "YulLiteral", + "src": "85016:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "85001:3:74", + "nodeType": "YulIdentifier", + "src": "85001:3:74" + }, + "nativeSrc": "85001:18:74", + "nodeType": "YulFunctionCall", + "src": "85001:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "84993:4:74", + "nodeType": "YulIdentifier", + "src": "84993:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "85040:9:74", + "nodeType": "YulIdentifier", + "src": "85040:9:74" + }, + { + "kind": "number", + "nativeSrc": "85051:1:74", + "nodeType": "YulLiteral", + "src": "85051:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "85036:3:74", + "nodeType": "YulIdentifier", + "src": "85036:3:74" + }, + "nativeSrc": "85036:17:74", + "nodeType": "YulFunctionCall", + "src": "85036:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "85059:4:74", + "nodeType": "YulIdentifier", + "src": "85059:4:74" + }, + { + "name": "headStart", + "nativeSrc": "85065:9:74", + "nodeType": "YulIdentifier", + "src": "85065:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "85055:3:74", + "nodeType": "YulIdentifier", + "src": "85055:3:74" + }, + "nativeSrc": "85055:20:74", + "nodeType": "YulFunctionCall", + "src": "85055:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "85029:6:74", + "nodeType": "YulIdentifier", + "src": "85029:6:74" + }, + "nativeSrc": "85029:47:74", + "nodeType": "YulFunctionCall", + "src": "85029:47:74" + }, + "nativeSrc": "85029:47:74", + "nodeType": "YulExpressionStatement", + "src": "85029:47:74" + }, + { + "nativeSrc": "85085:139:74", + "nodeType": "YulAssignment", + "src": "85085:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "85219:4:74", + "nodeType": "YulIdentifier", + "src": "85219:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535_to_t_string_memory_ptr_fromStack", + "nativeSrc": "85093:124:74", + "nodeType": "YulIdentifier", + "src": "85093:124:74" + }, + "nativeSrc": "85093:131:74", + "nodeType": "YulFunctionCall", + "src": "85093:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "85085:4:74", + "nodeType": "YulIdentifier", + "src": "85085:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "84812:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "84963:9:74", + "nodeType": "YulTypedName", + "src": "84963:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "84978:4:74", + "nodeType": "YulTypedName", + "src": "84978:4:74", + "type": "" + } + ], + "src": "84812:419:74" + }, + { + "body": { + "nativeSrc": "85281:147:74", + "nodeType": "YulBlock", + "src": "85281:147:74", + "statements": [ + { + "nativeSrc": "85291:25:74", + "nodeType": "YulAssignment", + "src": "85291:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "85314:1:74", + "nodeType": "YulIdentifier", + "src": "85314:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "85296:17:74", + "nodeType": "YulIdentifier", + "src": "85296:17:74" + }, + "nativeSrc": "85296:20:74", + "nodeType": "YulFunctionCall", + "src": "85296:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "85291:1:74", + "nodeType": "YulIdentifier", + "src": "85291:1:74" + } + ] + }, + { + "nativeSrc": "85325:25:74", + "nodeType": "YulAssignment", + "src": "85325:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "85348:1:74", + "nodeType": "YulIdentifier", + "src": "85348:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "85330:17:74", + "nodeType": "YulIdentifier", + "src": "85330:17:74" + }, + "nativeSrc": "85330:20:74", + "nodeType": "YulFunctionCall", + "src": "85330:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "85325:1:74", + "nodeType": "YulIdentifier", + "src": "85325:1:74" + } + ] + }, + { + "nativeSrc": "85359:16:74", + "nodeType": "YulAssignment", + "src": "85359:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "85370:1:74", + "nodeType": "YulIdentifier", + "src": "85370:1:74" + }, + { + "name": "y", + "nativeSrc": "85373:1:74", + "nodeType": "YulIdentifier", + "src": "85373:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "85366:3:74", + "nodeType": "YulIdentifier", + "src": "85366:3:74" + }, + "nativeSrc": "85366:9:74", + "nodeType": "YulFunctionCall", + "src": "85366:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "85359:3:74", + "nodeType": "YulIdentifier", + "src": "85359:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "85399:22:74", + "nodeType": "YulBlock", + "src": "85399:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "85401:16:74", + "nodeType": "YulIdentifier", + "src": "85401:16:74" + }, + "nativeSrc": "85401:18:74", + "nodeType": "YulFunctionCall", + "src": "85401:18:74" + }, + "nativeSrc": "85401:18:74", + "nodeType": "YulExpressionStatement", + "src": "85401:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "85391:1:74", + "nodeType": "YulIdentifier", + "src": "85391:1:74" + }, + { + "name": "sum", + "nativeSrc": "85394:3:74", + "nodeType": "YulIdentifier", + "src": "85394:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "85388:2:74", + "nodeType": "YulIdentifier", + "src": "85388:2:74" + }, + "nativeSrc": "85388:10:74", + "nodeType": "YulFunctionCall", + "src": "85388:10:74" + }, + "nativeSrc": "85385:36:74", + "nodeType": "YulIf", + "src": "85385:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "85237:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "85268:1:74", + "nodeType": "YulTypedName", + "src": "85268:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "85271:1:74", + "nodeType": "YulTypedName", + "src": "85271:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "85277:3:74", + "nodeType": "YulTypedName", + "src": "85277:3:74", + "type": "" + } + ], + "src": "85237:191:74" + }, + { + "body": { + "nativeSrc": "85477:43:74", + "nodeType": "YulBlock", + "src": "85477:43:74", + "statements": [ + { + "nativeSrc": "85487:27:74", + "nodeType": "YulAssignment", + "src": "85487:27:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "85502:5:74", + "nodeType": "YulIdentifier", + "src": "85502:5:74" + }, + { + "kind": "number", + "nativeSrc": "85509:4:74", + "nodeType": "YulLiteral", + "src": "85509:4:74", + "type": "", + "value": "0xff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "85498:3:74", + "nodeType": "YulIdentifier", + "src": "85498:3:74" + }, + "nativeSrc": "85498:16:74", + "nodeType": "YulFunctionCall", + "src": "85498:16:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "85487:7:74", + "nodeType": "YulIdentifier", + "src": "85487:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint8", + "nativeSrc": "85434:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "85459:5:74", + "nodeType": "YulTypedName", + "src": "85459:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "85469:7:74", + "nodeType": "YulTypedName", + "src": "85469:7:74", + "type": "" + } + ], + "src": "85434:86:74" + }, + { + "body": { + "nativeSrc": "85569:53:74", + "nodeType": "YulBlock", + "src": "85569:53:74", + "statements": [ + { + "nativeSrc": "85579:36:74", + "nodeType": "YulAssignment", + "src": "85579:36:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "85604:3:74", + "nodeType": "YulLiteral", + "src": "85604:3:74", + "type": "", + "value": "248" + }, + { + "name": "value", + "nativeSrc": "85609:5:74", + "nodeType": "YulIdentifier", + "src": "85609:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "85600:3:74", + "nodeType": "YulIdentifier", + "src": "85600:3:74" + }, + "nativeSrc": "85600:15:74", + "nodeType": "YulFunctionCall", + "src": "85600:15:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "85579:8:74", + "nodeType": "YulIdentifier", + "src": "85579:8:74" + } + ] + } + ] + }, + "name": "shift_left_248", + "nativeSrc": "85526:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "85550:5:74", + "nodeType": "YulTypedName", + "src": "85550:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "85560:8:74", + "nodeType": "YulTypedName", + "src": "85560:8:74", + "type": "" + } + ], + "src": "85526:96:74" + }, + { + "body": { + "nativeSrc": "85673:48:74", + "nodeType": "YulBlock", + "src": "85673:48:74", + "statements": [ + { + "nativeSrc": "85683:32:74", + "nodeType": "YulAssignment", + "src": "85683:32:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "85709:5:74", + "nodeType": "YulIdentifier", + "src": "85709:5:74" + } + ], + "functionName": { + "name": "shift_left_248", + "nativeSrc": "85694:14:74", + "nodeType": "YulIdentifier", + "src": "85694:14:74" + }, + "nativeSrc": "85694:21:74", + "nodeType": "YulFunctionCall", + "src": "85694:21:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "85683:7:74", + "nodeType": "YulIdentifier", + "src": "85683:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_uint8", + "nativeSrc": "85628:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "85655:5:74", + "nodeType": "YulTypedName", + "src": "85655:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "85665:7:74", + "nodeType": "YulTypedName", + "src": "85665:7:74", + "type": "" + } + ], + "src": "85628:93:74" + }, + { + "body": { + "nativeSrc": "85806:70:74", + "nodeType": "YulBlock", + "src": "85806:70:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "85823:3:74", + "nodeType": "YulIdentifier", + "src": "85823:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "85862:5:74", + "nodeType": "YulIdentifier", + "src": "85862:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint8", + "nativeSrc": "85846:15:74", + "nodeType": "YulIdentifier", + "src": "85846:15:74" + }, + "nativeSrc": "85846:22:74", + "nodeType": "YulFunctionCall", + "src": "85846:22:74" + } + ], + "functionName": { + "name": "leftAlign_t_uint8", + "nativeSrc": "85828:17:74", + "nodeType": "YulIdentifier", + "src": "85828:17:74" + }, + "nativeSrc": "85828:41:74", + "nodeType": "YulFunctionCall", + "src": "85828:41:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "85816:6:74", + "nodeType": "YulIdentifier", + "src": "85816:6:74" + }, + "nativeSrc": "85816:54:74", + "nodeType": "YulFunctionCall", + "src": "85816:54:74" + }, + "nativeSrc": "85816:54:74", + "nodeType": "YulExpressionStatement", + "src": "85816:54:74" + } + ] + }, + "name": "abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack", + "nativeSrc": "85727:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "85794:5:74", + "nodeType": "YulTypedName", + "src": "85794:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "85801:3:74", + "nodeType": "YulTypedName", + "src": "85801:3:74", + "type": "" + } + ], + "src": "85727:149:74" + }, + { + "body": { + "nativeSrc": "85996:34:74", + "nodeType": "YulBlock", + "src": "85996:34:74", + "statements": [ + { + "nativeSrc": "86006:18:74", + "nodeType": "YulAssignment", + "src": "86006:18:74", + "value": { + "name": "pos", + "nativeSrc": "86021:3:74", + "nodeType": "YulIdentifier", + "src": "86021:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "86006:11:74", + "nodeType": "YulIdentifier", + "src": "86006:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "85882:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "85968:3:74", + "nodeType": "YulTypedName", + "src": "85968:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "85973:6:74", + "nodeType": "YulTypedName", + "src": "85973:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "85984:11:74", + "nodeType": "YulTypedName", + "src": "85984:11:74", + "type": "" + } + ], + "src": "85882:148:74" + }, + { + "body": { + "nativeSrc": "86146:280:74", + "nodeType": "YulBlock", + "src": "86146:280:74", + "statements": [ + { + "nativeSrc": "86156:53:74", + "nodeType": "YulVariableDeclaration", + "src": "86156:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "86203:5:74", + "nodeType": "YulIdentifier", + "src": "86203:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "86170:32:74", + "nodeType": "YulIdentifier", + "src": "86170:32:74" + }, + "nativeSrc": "86170:39:74", + "nodeType": "YulFunctionCall", + "src": "86170:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "86160:6:74", + "nodeType": "YulTypedName", + "src": "86160:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "86218:96:74", + "nodeType": "YulAssignment", + "src": "86218:96:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "86302:3:74", + "nodeType": "YulIdentifier", + "src": "86302:3:74" + }, + { + "name": "length", + "nativeSrc": "86307:6:74", + "nodeType": "YulIdentifier", + "src": "86307:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "86225:76:74", + "nodeType": "YulIdentifier", + "src": "86225:76:74" + }, + "nativeSrc": "86225:89:74", + "nodeType": "YulFunctionCall", + "src": "86225:89:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "86218:3:74", + "nodeType": "YulIdentifier", + "src": "86218:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "86362:5:74", + "nodeType": "YulIdentifier", + "src": "86362:5:74" + }, + { + "kind": "number", + "nativeSrc": "86369:4:74", + "nodeType": "YulLiteral", + "src": "86369:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "86358:3:74", + "nodeType": "YulIdentifier", + "src": "86358:3:74" + }, + "nativeSrc": "86358:16:74", + "nodeType": "YulFunctionCall", + "src": "86358:16:74" + }, + { + "name": "pos", + "nativeSrc": "86376:3:74", + "nodeType": "YulIdentifier", + "src": "86376:3:74" + }, + { + "name": "length", + "nativeSrc": "86381:6:74", + "nodeType": "YulIdentifier", + "src": "86381:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "86323:34:74", + "nodeType": "YulIdentifier", + "src": "86323:34:74" + }, + "nativeSrc": "86323:65:74", + "nodeType": "YulFunctionCall", + "src": "86323:65:74" + }, + "nativeSrc": "86323:65:74", + "nodeType": "YulExpressionStatement", + "src": "86323:65:74" + }, + { + "nativeSrc": "86397:23:74", + "nodeType": "YulAssignment", + "src": "86397:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "86408:3:74", + "nodeType": "YulIdentifier", + "src": "86408:3:74" + }, + { + "name": "length", + "nativeSrc": "86413:6:74", + "nodeType": "YulIdentifier", + "src": "86413:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "86404:3:74", + "nodeType": "YulIdentifier", + "src": "86404:3:74" + }, + "nativeSrc": "86404:16:74", + "nodeType": "YulFunctionCall", + "src": "86404:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "86397:3:74", + "nodeType": "YulIdentifier", + "src": "86397:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "86036:390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "86127:5:74", + "nodeType": "YulTypedName", + "src": "86127:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "86134:3:74", + "nodeType": "YulTypedName", + "src": "86134:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "86142:3:74", + "nodeType": "YulTypedName", + "src": "86142:3:74", + "type": "" + } + ], + "src": "86036:390:74" + }, + { + "body": { + "nativeSrc": "86540:278:74", + "nodeType": "YulBlock", + "src": "86540:278:74", + "statements": [ + { + "nativeSrc": "86550:52:74", + "nodeType": "YulVariableDeclaration", + "src": "86550:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "86596:5:74", + "nodeType": "YulIdentifier", + "src": "86596:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "86564:31:74", + "nodeType": "YulIdentifier", + "src": "86564:31:74" + }, + "nativeSrc": "86564:38:74", + "nodeType": "YulFunctionCall", + "src": "86564:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "86554:6:74", + "nodeType": "YulTypedName", + "src": "86554:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "86611:95:74", + "nodeType": "YulAssignment", + "src": "86611:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "86694:3:74", + "nodeType": "YulIdentifier", + "src": "86694:3:74" + }, + { + "name": "length", + "nativeSrc": "86699:6:74", + "nodeType": "YulIdentifier", + "src": "86699:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "86618:75:74", + "nodeType": "YulIdentifier", + "src": "86618:75:74" + }, + "nativeSrc": "86618:88:74", + "nodeType": "YulFunctionCall", + "src": "86618:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "86611:3:74", + "nodeType": "YulIdentifier", + "src": "86611:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "86754:5:74", + "nodeType": "YulIdentifier", + "src": "86754:5:74" + }, + { + "kind": "number", + "nativeSrc": "86761:4:74", + "nodeType": "YulLiteral", + "src": "86761:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "86750:3:74", + "nodeType": "YulIdentifier", + "src": "86750:3:74" + }, + "nativeSrc": "86750:16:74", + "nodeType": "YulFunctionCall", + "src": "86750:16:74" + }, + { + "name": "pos", + "nativeSrc": "86768:3:74", + "nodeType": "YulIdentifier", + "src": "86768:3:74" + }, + { + "name": "length", + "nativeSrc": "86773:6:74", + "nodeType": "YulIdentifier", + "src": "86773:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "86715:34:74", + "nodeType": "YulIdentifier", + "src": "86715:34:74" + }, + "nativeSrc": "86715:65:74", + "nodeType": "YulFunctionCall", + "src": "86715:65:74" + }, + "nativeSrc": "86715:65:74", + "nodeType": "YulExpressionStatement", + "src": "86715:65:74" + }, + { + "nativeSrc": "86789:23:74", + "nodeType": "YulAssignment", + "src": "86789:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "86800:3:74", + "nodeType": "YulIdentifier", + "src": "86800:3:74" + }, + { + "name": "length", + "nativeSrc": "86805:6:74", + "nodeType": "YulIdentifier", + "src": "86805:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "86796:3:74", + "nodeType": "YulIdentifier", + "src": "86796:3:74" + }, + "nativeSrc": "86796:16:74", + "nodeType": "YulFunctionCall", + "src": "86796:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "86789:3:74", + "nodeType": "YulIdentifier", + "src": "86789:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "86432:386:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "86521:5:74", + "nodeType": "YulTypedName", + "src": "86521:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "86528:3:74", + "nodeType": "YulTypedName", + "src": "86528:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "86536:3:74", + "nodeType": "YulTypedName", + "src": "86536:3:74", + "type": "" + } + ], + "src": "86432:386:74" + }, + { + "body": { + "nativeSrc": "87030:357:74", + "nodeType": "YulBlock", + "src": "87030:357:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "87099:6:74", + "nodeType": "YulIdentifier", + "src": "87099:6:74" + }, + { + "name": "pos", + "nativeSrc": "87108:3:74", + "nodeType": "YulIdentifier", + "src": "87108:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack", + "nativeSrc": "87041:57:74", + "nodeType": "YulIdentifier", + "src": "87041:57:74" + }, + "nativeSrc": "87041:71:74", + "nodeType": "YulFunctionCall", + "src": "87041:71:74" + }, + "nativeSrc": "87041:71:74", + "nodeType": "YulExpressionStatement", + "src": "87041:71:74" + }, + { + "nativeSrc": "87121:18:74", + "nodeType": "YulAssignment", + "src": "87121:18:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "87132:3:74", + "nodeType": "YulIdentifier", + "src": "87132:3:74" + }, + { + "kind": "number", + "nativeSrc": "87137:1:74", + "nodeType": "YulLiteral", + "src": "87137:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87128:3:74", + "nodeType": "YulIdentifier", + "src": "87128:3:74" + }, + "nativeSrc": "87128:11:74", + "nodeType": "YulFunctionCall", + "src": "87128:11:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "87121:3:74", + "nodeType": "YulIdentifier", + "src": "87121:3:74" + } + ] + }, + { + "nativeSrc": "87149:102:74", + "nodeType": "YulAssignment", + "src": "87149:102:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "87238:6:74", + "nodeType": "YulIdentifier", + "src": "87238:6:74" + }, + { + "name": "pos", + "nativeSrc": "87247:3:74", + "nodeType": "YulIdentifier", + "src": "87247:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "87156:81:74", + "nodeType": "YulIdentifier", + "src": "87156:81:74" + }, + "nativeSrc": "87156:95:74", + "nodeType": "YulFunctionCall", + "src": "87156:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "87149:3:74", + "nodeType": "YulIdentifier", + "src": "87149:3:74" + } + ] + }, + { + "nativeSrc": "87261:100:74", + "nodeType": "YulAssignment", + "src": "87261:100:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "87348:6:74", + "nodeType": "YulIdentifier", + "src": "87348:6:74" + }, + { + "name": "pos", + "nativeSrc": "87357:3:74", + "nodeType": "YulIdentifier", + "src": "87357:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "87268:79:74", + "nodeType": "YulIdentifier", + "src": "87268:79:74" + }, + "nativeSrc": "87268:93:74", + "nodeType": "YulFunctionCall", + "src": "87268:93:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "87261:3:74", + "nodeType": "YulIdentifier", + "src": "87261:3:74" + } + ] + }, + { + "nativeSrc": "87371:10:74", + "nodeType": "YulAssignment", + "src": "87371:10:74", + "value": { + "name": "pos", + "nativeSrc": "87378:3:74", + "nodeType": "YulIdentifier", + "src": "87378:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "87371:3:74", + "nodeType": "YulIdentifier", + "src": "87371:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__to_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "86824:563:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "86993:3:74", + "nodeType": "YulTypedName", + "src": "86993:3:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "86999:6:74", + "nodeType": "YulTypedName", + "src": "86999:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "87007:6:74", + "nodeType": "YulTypedName", + "src": "87007:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "87015:6:74", + "nodeType": "YulTypedName", + "src": "87015:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "87026:3:74", + "nodeType": "YulTypedName", + "src": "87026:3:74", + "type": "" + } + ], + "src": "86824:563:74" + }, + { + "body": { + "nativeSrc": "87621:523:74", + "nodeType": "YulBlock", + "src": "87621:523:74", + "statements": [ + { + "nativeSrc": "87631:27:74", + "nodeType": "YulAssignment", + "src": "87631:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "87643:9:74", + "nodeType": "YulIdentifier", + "src": "87643:9:74" + }, + { + "kind": "number", + "nativeSrc": "87654:3:74", + "nodeType": "YulLiteral", + "src": "87654:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87639:3:74", + "nodeType": "YulIdentifier", + "src": "87639:3:74" + }, + "nativeSrc": "87639:19:74", + "nodeType": "YulFunctionCall", + "src": "87639:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "87631:4:74", + "nodeType": "YulIdentifier", + "src": "87631:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "87712:6:74", + "nodeType": "YulIdentifier", + "src": "87712:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "87725:9:74", + "nodeType": "YulIdentifier", + "src": "87725:9:74" + }, + { + "kind": "number", + "nativeSrc": "87736:1:74", + "nodeType": "YulLiteral", + "src": "87736:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87721:3:74", + "nodeType": "YulIdentifier", + "src": "87721:3:74" + }, + "nativeSrc": "87721:17:74", + "nodeType": "YulFunctionCall", + "src": "87721:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "87668:43:74", + "nodeType": "YulIdentifier", + "src": "87668:43:74" + }, + "nativeSrc": "87668:71:74", + "nodeType": "YulFunctionCall", + "src": "87668:71:74" + }, + "nativeSrc": "87668:71:74", + "nodeType": "YulExpressionStatement", + "src": "87668:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "87793:6:74", + "nodeType": "YulIdentifier", + "src": "87793:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "87806:9:74", + "nodeType": "YulIdentifier", + "src": "87806:9:74" + }, + { + "kind": "number", + "nativeSrc": "87817:2:74", + "nodeType": "YulLiteral", + "src": "87817:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87802:3:74", + "nodeType": "YulIdentifier", + "src": "87802:3:74" + }, + "nativeSrc": "87802:18:74", + "nodeType": "YulFunctionCall", + "src": "87802:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "87749:43:74", + "nodeType": "YulIdentifier", + "src": "87749:43:74" + }, + "nativeSrc": "87749:72:74", + "nodeType": "YulFunctionCall", + "src": "87749:72:74" + }, + "nativeSrc": "87749:72:74", + "nodeType": "YulExpressionStatement", + "src": "87749:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "87875:6:74", + "nodeType": "YulIdentifier", + "src": "87875:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "87888:9:74", + "nodeType": "YulIdentifier", + "src": "87888:9:74" + }, + { + "kind": "number", + "nativeSrc": "87899:2:74", + "nodeType": "YulLiteral", + "src": "87899:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87884:3:74", + "nodeType": "YulIdentifier", + "src": "87884:3:74" + }, + "nativeSrc": "87884:18:74", + "nodeType": "YulFunctionCall", + "src": "87884:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "87831:43:74", + "nodeType": "YulIdentifier", + "src": "87831:43:74" + }, + "nativeSrc": "87831:72:74", + "nodeType": "YulFunctionCall", + "src": "87831:72:74" + }, + "nativeSrc": "87831:72:74", + "nodeType": "YulExpressionStatement", + "src": "87831:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "87957:6:74", + "nodeType": "YulIdentifier", + "src": "87957:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "87970:9:74", + "nodeType": "YulIdentifier", + "src": "87970:9:74" + }, + { + "kind": "number", + "nativeSrc": "87981:2:74", + "nodeType": "YulLiteral", + "src": "87981:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "87966:3:74", + "nodeType": "YulIdentifier", + "src": "87966:3:74" + }, + "nativeSrc": "87966:18:74", + "nodeType": "YulFunctionCall", + "src": "87966:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "87913:43:74", + "nodeType": "YulIdentifier", + "src": "87913:43:74" + }, + "nativeSrc": "87913:72:74", + "nodeType": "YulFunctionCall", + "src": "87913:72:74" + }, + "nativeSrc": "87913:72:74", + "nodeType": "YulExpressionStatement", + "src": "87913:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "88006:9:74", + "nodeType": "YulIdentifier", + "src": "88006:9:74" + }, + { + "kind": "number", + "nativeSrc": "88017:3:74", + "nodeType": "YulLiteral", + "src": "88017:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "88002:3:74", + "nodeType": "YulIdentifier", + "src": "88002:3:74" + }, + "nativeSrc": "88002:19:74", + "nodeType": "YulFunctionCall", + "src": "88002:19:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "88027:4:74", + "nodeType": "YulIdentifier", + "src": "88027:4:74" + }, + { + "name": "headStart", + "nativeSrc": "88033:9:74", + "nodeType": "YulIdentifier", + "src": "88033:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "88023:3:74", + "nodeType": "YulIdentifier", + "src": "88023:3:74" + }, + "nativeSrc": "88023:20:74", + "nodeType": "YulFunctionCall", + "src": "88023:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "87995:6:74", + "nodeType": "YulIdentifier", + "src": "87995:6:74" + }, + "nativeSrc": "87995:49:74", + "nodeType": "YulFunctionCall", + "src": "87995:49:74" + }, + "nativeSrc": "87995:49:74", + "nodeType": "YulExpressionStatement", + "src": "87995:49:74" + }, + { + "nativeSrc": "88053:84:74", + "nodeType": "YulAssignment", + "src": "88053:84:74", + "value": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "88123:6:74", + "nodeType": "YulIdentifier", + "src": "88123:6:74" + }, + { + "name": "tail", + "nativeSrc": "88132:4:74", + "nodeType": "YulIdentifier", + "src": "88132:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "88061:61:74", + "nodeType": "YulIdentifier", + "src": "88061:61:74" + }, + "nativeSrc": "88061:76:74", + "nodeType": "YulFunctionCall", + "src": "88061:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "88053:4:74", + "nodeType": "YulIdentifier", + "src": "88053:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "87393:751:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "87561:9:74", + "nodeType": "YulTypedName", + "src": "87561:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "87573:6:74", + "nodeType": "YulTypedName", + "src": "87573:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "87581:6:74", + "nodeType": "YulTypedName", + "src": "87581:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "87589:6:74", + "nodeType": "YulTypedName", + "src": "87589:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "87597:6:74", + "nodeType": "YulTypedName", + "src": "87597:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "87605:6:74", + "nodeType": "YulTypedName", + "src": "87605:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "87616:4:74", + "nodeType": "YulTypedName", + "src": "87616:4:74", + "type": "" + } + ], + "src": "87393:751:74" + }, + { + "body": { + "nativeSrc": "88256:75:74", + "nodeType": "YulBlock", + "src": "88256:75:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "88278:6:74", + "nodeType": "YulIdentifier", + "src": "88278:6:74" + }, + { + "kind": "number", + "nativeSrc": "88286:1:74", + "nodeType": "YulLiteral", + "src": "88286:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "88274:3:74", + "nodeType": "YulIdentifier", + "src": "88274:3:74" + }, + "nativeSrc": "88274:14:74", + "nodeType": "YulFunctionCall", + "src": "88274:14:74" + }, + { + "hexValue": "455243313135353a206d696e74206f66206578697374696e6720746f6b656e", + "kind": "string", + "nativeSrc": "88290:33:74", + "nodeType": "YulLiteral", + "src": "88290:33:74", + "type": "", + "value": "ERC1155: mint of existing token" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "88267:6:74", + "nodeType": "YulIdentifier", + "src": "88267:6:74" + }, + "nativeSrc": "88267:57:74", + "nodeType": "YulFunctionCall", + "src": "88267:57:74" + }, + "nativeSrc": "88267:57:74", + "nodeType": "YulExpressionStatement", + "src": "88267:57:74" + } + ] + }, + "name": "store_literal_in_memory_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac", + "nativeSrc": "88150:181:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "88248:6:74", + "nodeType": "YulTypedName", + "src": "88248:6:74", + "type": "" + } + ], + "src": "88150:181:74" + }, + { + "body": { + "nativeSrc": "88483:220:74", + "nodeType": "YulBlock", + "src": "88483:220:74", + "statements": [ + { + "nativeSrc": "88493:74:74", + "nodeType": "YulAssignment", + "src": "88493:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "88559:3:74", + "nodeType": "YulIdentifier", + "src": "88559:3:74" + }, + { + "kind": "number", + "nativeSrc": "88564:2:74", + "nodeType": "YulLiteral", + "src": "88564:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "88500:58:74", + "nodeType": "YulIdentifier", + "src": "88500:58:74" + }, + "nativeSrc": "88500:67:74", + "nodeType": "YulFunctionCall", + "src": "88500:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "88493:3:74", + "nodeType": "YulIdentifier", + "src": "88493:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "88665:3:74", + "nodeType": "YulIdentifier", + "src": "88665:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac", + "nativeSrc": "88576:88:74", + "nodeType": "YulIdentifier", + "src": "88576:88:74" + }, + "nativeSrc": "88576:93:74", + "nodeType": "YulFunctionCall", + "src": "88576:93:74" + }, + "nativeSrc": "88576:93:74", + "nodeType": "YulExpressionStatement", + "src": "88576:93:74" + }, + { + "nativeSrc": "88678:19:74", + "nodeType": "YulAssignment", + "src": "88678:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "88689:3:74", + "nodeType": "YulIdentifier", + "src": "88689:3:74" + }, + { + "kind": "number", + "nativeSrc": "88694:2:74", + "nodeType": "YulLiteral", + "src": "88694:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "88685:3:74", + "nodeType": "YulIdentifier", + "src": "88685:3:74" + }, + "nativeSrc": "88685:12:74", + "nodeType": "YulFunctionCall", + "src": "88685:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "88678:3:74", + "nodeType": "YulIdentifier", + "src": "88678:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac_to_t_string_memory_ptr_fromStack", + "nativeSrc": "88337:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "88471:3:74", + "nodeType": "YulTypedName", + "src": "88471:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "88479:3:74", + "nodeType": "YulTypedName", + "src": "88479:3:74", + "type": "" + } + ], + "src": "88337:366:74" + }, + { + "body": { + "nativeSrc": "88880:248:74", + "nodeType": "YulBlock", + "src": "88880:248:74", + "statements": [ + { + "nativeSrc": "88890:26:74", + "nodeType": "YulAssignment", + "src": "88890:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "88902:9:74", + "nodeType": "YulIdentifier", + "src": "88902:9:74" + }, + { + "kind": "number", + "nativeSrc": "88913:2:74", + "nodeType": "YulLiteral", + "src": "88913:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "88898:3:74", + "nodeType": "YulIdentifier", + "src": "88898:3:74" + }, + "nativeSrc": "88898:18:74", + "nodeType": "YulFunctionCall", + "src": "88898:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "88890:4:74", + "nodeType": "YulIdentifier", + "src": "88890:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "88937:9:74", + "nodeType": "YulIdentifier", + "src": "88937:9:74" + }, + { + "kind": "number", + "nativeSrc": "88948:1:74", + "nodeType": "YulLiteral", + "src": "88948:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "88933:3:74", + "nodeType": "YulIdentifier", + "src": "88933:3:74" + }, + "nativeSrc": "88933:17:74", + "nodeType": "YulFunctionCall", + "src": "88933:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "88956:4:74", + "nodeType": "YulIdentifier", + "src": "88956:4:74" + }, + { + "name": "headStart", + "nativeSrc": "88962:9:74", + "nodeType": "YulIdentifier", + "src": "88962:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "88952:3:74", + "nodeType": "YulIdentifier", + "src": "88952:3:74" + }, + "nativeSrc": "88952:20:74", + "nodeType": "YulFunctionCall", + "src": "88952:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "88926:6:74", + "nodeType": "YulIdentifier", + "src": "88926:6:74" + }, + "nativeSrc": "88926:47:74", + "nodeType": "YulFunctionCall", + "src": "88926:47:74" + }, + "nativeSrc": "88926:47:74", + "nodeType": "YulExpressionStatement", + "src": "88926:47:74" + }, + { + "nativeSrc": "88982:139:74", + "nodeType": "YulAssignment", + "src": "88982:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "89116:4:74", + "nodeType": "YulIdentifier", + "src": "89116:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac_to_t_string_memory_ptr_fromStack", + "nativeSrc": "88990:124:74", + "nodeType": "YulIdentifier", + "src": "88990:124:74" + }, + "nativeSrc": "88990:131:74", + "nodeType": "YulFunctionCall", + "src": "88990:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "88982:4:74", + "nodeType": "YulIdentifier", + "src": "88982:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "88709:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "88860:9:74", + "nodeType": "YulTypedName", + "src": "88860:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "88875:4:74", + "nodeType": "YulTypedName", + "src": "88875:4:74", + "type": "" + } + ], + "src": "88709:419:74" + }, + { + "body": { + "nativeSrc": "89240:114:74", + "nodeType": "YulBlock", + "src": "89240:114:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "89262:6:74", + "nodeType": "YulIdentifier", + "src": "89262:6:74" + }, + { + "kind": "number", + "nativeSrc": "89270:1:74", + "nodeType": "YulLiteral", + "src": "89270:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "89258:3:74", + "nodeType": "YulIdentifier", + "src": "89258:3:74" + }, + "nativeSrc": "89258:14:74", + "nodeType": "YulFunctionCall", + "src": "89258:14:74" + }, + { + "hexValue": "455243313135353a206d696e7420746f20746865207a65726f20616464726573", + "kind": "string", + "nativeSrc": "89274:34:74", + "nodeType": "YulLiteral", + "src": "89274:34:74", + "type": "", + "value": "ERC1155: mint to the zero addres" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "89251:6:74", + "nodeType": "YulIdentifier", + "src": "89251:6:74" + }, + "nativeSrc": "89251:58:74", + "nodeType": "YulFunctionCall", + "src": "89251:58:74" + }, + "nativeSrc": "89251:58:74", + "nodeType": "YulExpressionStatement", + "src": "89251:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "89330:6:74", + "nodeType": "YulIdentifier", + "src": "89330:6:74" + }, + { + "kind": "number", + "nativeSrc": "89338:2:74", + "nodeType": "YulLiteral", + "src": "89338:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "89326:3:74", + "nodeType": "YulIdentifier", + "src": "89326:3:74" + }, + "nativeSrc": "89326:15:74", + "nodeType": "YulFunctionCall", + "src": "89326:15:74" + }, + { + "hexValue": "73", + "kind": "string", + "nativeSrc": "89343:3:74", + "nodeType": "YulLiteral", + "src": "89343:3:74", + "type": "", + "value": "s" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "89319:6:74", + "nodeType": "YulIdentifier", + "src": "89319:6:74" + }, + "nativeSrc": "89319:28:74", + "nodeType": "YulFunctionCall", + "src": "89319:28:74" + }, + "nativeSrc": "89319:28:74", + "nodeType": "YulExpressionStatement", + "src": "89319:28:74" + } + ] + }, + "name": "store_literal_in_memory_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2", + "nativeSrc": "89134:220:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "89232:6:74", + "nodeType": "YulTypedName", + "src": "89232:6:74", + "type": "" + } + ], + "src": "89134:220:74" + }, + { + "body": { + "nativeSrc": "89506:220:74", + "nodeType": "YulBlock", + "src": "89506:220:74", + "statements": [ + { + "nativeSrc": "89516:74:74", + "nodeType": "YulAssignment", + "src": "89516:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "89582:3:74", + "nodeType": "YulIdentifier", + "src": "89582:3:74" + }, + { + "kind": "number", + "nativeSrc": "89587:2:74", + "nodeType": "YulLiteral", + "src": "89587:2:74", + "type": "", + "value": "33" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "89523:58:74", + "nodeType": "YulIdentifier", + "src": "89523:58:74" + }, + "nativeSrc": "89523:67:74", + "nodeType": "YulFunctionCall", + "src": "89523:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "89516:3:74", + "nodeType": "YulIdentifier", + "src": "89516:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "89688:3:74", + "nodeType": "YulIdentifier", + "src": "89688:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2", + "nativeSrc": "89599:88:74", + "nodeType": "YulIdentifier", + "src": "89599:88:74" + }, + "nativeSrc": "89599:93:74", + "nodeType": "YulFunctionCall", + "src": "89599:93:74" + }, + "nativeSrc": "89599:93:74", + "nodeType": "YulExpressionStatement", + "src": "89599:93:74" + }, + { + "nativeSrc": "89701:19:74", + "nodeType": "YulAssignment", + "src": "89701:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "89712:3:74", + "nodeType": "YulIdentifier", + "src": "89712:3:74" + }, + { + "kind": "number", + "nativeSrc": "89717:2:74", + "nodeType": "YulLiteral", + "src": "89717:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "89708:3:74", + "nodeType": "YulIdentifier", + "src": "89708:3:74" + }, + "nativeSrc": "89708:12:74", + "nodeType": "YulFunctionCall", + "src": "89708:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "89701:3:74", + "nodeType": "YulIdentifier", + "src": "89701:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "89360:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "89494:3:74", + "nodeType": "YulTypedName", + "src": "89494:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "89502:3:74", + "nodeType": "YulTypedName", + "src": "89502:3:74", + "type": "" + } + ], + "src": "89360:366:74" + }, + { + "body": { + "nativeSrc": "89903:248:74", + "nodeType": "YulBlock", + "src": "89903:248:74", + "statements": [ + { + "nativeSrc": "89913:26:74", + "nodeType": "YulAssignment", + "src": "89913:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "89925:9:74", + "nodeType": "YulIdentifier", + "src": "89925:9:74" + }, + { + "kind": "number", + "nativeSrc": "89936:2:74", + "nodeType": "YulLiteral", + "src": "89936:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "89921:3:74", + "nodeType": "YulIdentifier", + "src": "89921:3:74" + }, + "nativeSrc": "89921:18:74", + "nodeType": "YulFunctionCall", + "src": "89921:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "89913:4:74", + "nodeType": "YulIdentifier", + "src": "89913:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "89960:9:74", + "nodeType": "YulIdentifier", + "src": "89960:9:74" + }, + { + "kind": "number", + "nativeSrc": "89971:1:74", + "nodeType": "YulLiteral", + "src": "89971:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "89956:3:74", + "nodeType": "YulIdentifier", + "src": "89956:3:74" + }, + "nativeSrc": "89956:17:74", + "nodeType": "YulFunctionCall", + "src": "89956:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "89979:4:74", + "nodeType": "YulIdentifier", + "src": "89979:4:74" + }, + { + "name": "headStart", + "nativeSrc": "89985:9:74", + "nodeType": "YulIdentifier", + "src": "89985:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "89975:3:74", + "nodeType": "YulIdentifier", + "src": "89975:3:74" + }, + "nativeSrc": "89975:20:74", + "nodeType": "YulFunctionCall", + "src": "89975:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "89949:6:74", + "nodeType": "YulIdentifier", + "src": "89949:6:74" + }, + "nativeSrc": "89949:47:74", + "nodeType": "YulFunctionCall", + "src": "89949:47:74" + }, + "nativeSrc": "89949:47:74", + "nodeType": "YulExpressionStatement", + "src": "89949:47:74" + }, + { + "nativeSrc": "90005:139:74", + "nodeType": "YulAssignment", + "src": "90005:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "90139:4:74", + "nodeType": "YulIdentifier", + "src": "90139:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2_to_t_string_memory_ptr_fromStack", + "nativeSrc": "90013:124:74", + "nodeType": "YulIdentifier", + "src": "90013:124:74" + }, + "nativeSrc": "90013:131:74", + "nodeType": "YulFunctionCall", + "src": "90013:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "90005:4:74", + "nodeType": "YulIdentifier", + "src": "90005:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "89732:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "89883:9:74", + "nodeType": "YulTypedName", + "src": "89883:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "89898:4:74", + "nodeType": "YulTypedName", + "src": "89898:4:74", + "type": "" + } + ], + "src": "89732:419:74" + }, + { + "body": { + "nativeSrc": "90263:133:74", + "nodeType": "YulBlock", + "src": "90263:133:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "90285:6:74", + "nodeType": "YulIdentifier", + "src": "90285:6:74" + }, + { + "kind": "number", + "nativeSrc": "90293:1:74", + "nodeType": "YulLiteral", + "src": "90293:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "90281:3:74", + "nodeType": "YulIdentifier", + "src": "90281:3:74" + }, + "nativeSrc": "90281:14:74", + "nodeType": "YulFunctionCall", + "src": "90281:14:74" + }, + { + "hexValue": "455243313135353a206e65774f776e65722063616e6e6f742062652074686520", + "kind": "string", + "nativeSrc": "90297:34:74", + "nodeType": "YulLiteral", + "src": "90297:34:74", + "type": "", + "value": "ERC1155: newOwner cannot be the " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "90274:6:74", + "nodeType": "YulIdentifier", + "src": "90274:6:74" + }, + "nativeSrc": "90274:58:74", + "nodeType": "YulFunctionCall", + "src": "90274:58:74" + }, + "nativeSrc": "90274:58:74", + "nodeType": "YulExpressionStatement", + "src": "90274:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "90353:6:74", + "nodeType": "YulIdentifier", + "src": "90353:6:74" + }, + { + "kind": "number", + "nativeSrc": "90361:2:74", + "nodeType": "YulLiteral", + "src": "90361:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "90349:3:74", + "nodeType": "YulIdentifier", + "src": "90349:3:74" + }, + "nativeSrc": "90349:15:74", + "nodeType": "YulFunctionCall", + "src": "90349:15:74" + }, + { + "hexValue": "4e616d655772617070657220636f6e7472616374", + "kind": "string", + "nativeSrc": "90366:22:74", + "nodeType": "YulLiteral", + "src": "90366:22:74", + "type": "", + "value": "NameWrapper contract" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "90342:6:74", + "nodeType": "YulIdentifier", + "src": "90342:6:74" + }, + "nativeSrc": "90342:47:74", + "nodeType": "YulFunctionCall", + "src": "90342:47:74" + }, + "nativeSrc": "90342:47:74", + "nodeType": "YulExpressionStatement", + "src": "90342:47:74" + } + ] + }, + "name": "store_literal_in_memory_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b", + "nativeSrc": "90157:239:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "90255:6:74", + "nodeType": "YulTypedName", + "src": "90255:6:74", + "type": "" + } + ], + "src": "90157:239:74" + }, + { + "body": { + "nativeSrc": "90548:220:74", + "nodeType": "YulBlock", + "src": "90548:220:74", + "statements": [ + { + "nativeSrc": "90558:74:74", + "nodeType": "YulAssignment", + "src": "90558:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "90624:3:74", + "nodeType": "YulIdentifier", + "src": "90624:3:74" + }, + { + "kind": "number", + "nativeSrc": "90629:2:74", + "nodeType": "YulLiteral", + "src": "90629:2:74", + "type": "", + "value": "52" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "90565:58:74", + "nodeType": "YulIdentifier", + "src": "90565:58:74" + }, + "nativeSrc": "90565:67:74", + "nodeType": "YulFunctionCall", + "src": "90565:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "90558:3:74", + "nodeType": "YulIdentifier", + "src": "90558:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "90730:3:74", + "nodeType": "YulIdentifier", + "src": "90730:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b", + "nativeSrc": "90641:88:74", + "nodeType": "YulIdentifier", + "src": "90641:88:74" + }, + "nativeSrc": "90641:93:74", + "nodeType": "YulFunctionCall", + "src": "90641:93:74" + }, + "nativeSrc": "90641:93:74", + "nodeType": "YulExpressionStatement", + "src": "90641:93:74" + }, + { + "nativeSrc": "90743:19:74", + "nodeType": "YulAssignment", + "src": "90743:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "90754:3:74", + "nodeType": "YulIdentifier", + "src": "90754:3:74" + }, + { + "kind": "number", + "nativeSrc": "90759:2:74", + "nodeType": "YulLiteral", + "src": "90759:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "90750:3:74", + "nodeType": "YulIdentifier", + "src": "90750:3:74" + }, + "nativeSrc": "90750:12:74", + "nodeType": "YulFunctionCall", + "src": "90750:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "90743:3:74", + "nodeType": "YulIdentifier", + "src": "90743:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b_to_t_string_memory_ptr_fromStack", + "nativeSrc": "90402:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "90536:3:74", + "nodeType": "YulTypedName", + "src": "90536:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "90544:3:74", + "nodeType": "YulTypedName", + "src": "90544:3:74", + "type": "" + } + ], + "src": "90402:366:74" + }, + { + "body": { + "nativeSrc": "90945:248:74", + "nodeType": "YulBlock", + "src": "90945:248:74", + "statements": [ + { + "nativeSrc": "90955:26:74", + "nodeType": "YulAssignment", + "src": "90955:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "90967:9:74", + "nodeType": "YulIdentifier", + "src": "90967:9:74" + }, + { + "kind": "number", + "nativeSrc": "90978:2:74", + "nodeType": "YulLiteral", + "src": "90978:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "90963:3:74", + "nodeType": "YulIdentifier", + "src": "90963:3:74" + }, + "nativeSrc": "90963:18:74", + "nodeType": "YulFunctionCall", + "src": "90963:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "90955:4:74", + "nodeType": "YulIdentifier", + "src": "90955:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "91002:9:74", + "nodeType": "YulIdentifier", + "src": "91002:9:74" + }, + { + "kind": "number", + "nativeSrc": "91013:1:74", + "nodeType": "YulLiteral", + "src": "91013:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "90998:3:74", + "nodeType": "YulIdentifier", + "src": "90998:3:74" + }, + "nativeSrc": "90998:17:74", + "nodeType": "YulFunctionCall", + "src": "90998:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "91021:4:74", + "nodeType": "YulIdentifier", + "src": "91021:4:74" + }, + { + "name": "headStart", + "nativeSrc": "91027:9:74", + "nodeType": "YulIdentifier", + "src": "91027:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "91017:3:74", + "nodeType": "YulIdentifier", + "src": "91017:3:74" + }, + "nativeSrc": "91017:20:74", + "nodeType": "YulFunctionCall", + "src": "91017:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "90991:6:74", + "nodeType": "YulIdentifier", + "src": "90991:6:74" + }, + "nativeSrc": "90991:47:74", + "nodeType": "YulFunctionCall", + "src": "90991:47:74" + }, + "nativeSrc": "90991:47:74", + "nodeType": "YulExpressionStatement", + "src": "90991:47:74" + }, + { + "nativeSrc": "91047:139:74", + "nodeType": "YulAssignment", + "src": "91047:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "91181:4:74", + "nodeType": "YulIdentifier", + "src": "91181:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b_to_t_string_memory_ptr_fromStack", + "nativeSrc": "91055:124:74", + "nodeType": "YulIdentifier", + "src": "91055:124:74" + }, + "nativeSrc": "91055:131:74", + "nodeType": "YulFunctionCall", + "src": "91055:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "91047:4:74", + "nodeType": "YulIdentifier", + "src": "91047:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "90774:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "90925:9:74", + "nodeType": "YulTypedName", + "src": "90925:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "90940:4:74", + "nodeType": "YulTypedName", + "src": "90940:4:74", + "type": "" + } + ], + "src": "90774:419:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function cleanup_t_uint32(value) -> cleaned {\n cleaned := and(value, 0xffffffff)\n }\n\n function abi_encode_t_uint32_to_t_uint32_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint32(value))\n }\n\n function cleanup_t_uint64(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffff)\n }\n\n function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint64(value))\n }\n\n function abi_encode_tuple_t_address_t_uint32_t_uint64__to_t_address_t_uint32_t_uint64__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint32_to_t_uint32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value2, add(headStart, 64))\n\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_uint64(value) {\n if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint64(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint64(value)\n }\n\n function abi_decode_tuple_t_bytes32t_uint64(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3, value4 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes4_to_t_bytes4_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes4(value))\n }\n\n function abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes4_to_t_bytes4_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_contract$_IMetadataService_$9690(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_IMetadataService_$9690(value) {\n if iszero(eq(value, cleanup_t_contract$_IMetadataService_$9690(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_IMetadataService_$9690(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_contract$_IMetadataService_$9690(value)\n }\n\n function abi_decode_tuple_t_contract$_IMetadataService_$9690(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_IMetadataService_$9690(add(headStart, offset), dataEnd)\n }\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_INameWrapperUpgrade_$10082_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_INameWrapperUpgrade_$10082_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_INameWrapperUpgrade_$10082_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_INameWrapperUpgrade_$10082__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_INameWrapperUpgrade_$10082_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function validator_revert_t_uint32(value) {\n if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint32(value)\n }\n\n function abi_decode_tuple_t_bytes32t_string_memory_ptrt_addresst_addresst_uint64t_uint32t_uint64(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6 {\n if slt(sub(dataEnd, headStart), 224) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 160\n\n value5 := abi_decode_t_uint32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 192\n\n value6 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function convert_t_contract$_IBaseRegistrar_$4430_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_IBaseRegistrar_$4430_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_IBaseRegistrar_$4430_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_IBaseRegistrar_$4430__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_IBaseRegistrar_$4430_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_uint256(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_array$_t_uint256_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 128))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value4 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_uint32t_uint64(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function convert_t_contract$_ENS_$4567_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ENS_$4567_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint16(value) -> cleaned {\n cleaned := and(value, 0xffff)\n }\n\n function validator_revert_t_uint16(value) {\n if iszero(eq(value, cleanup_t_uint16(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint16(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint16(value)\n }\n\n function abi_decode_tuple_t_bytes32t_uint16(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint16(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint32_to_t_uint32_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_allocation_size_t_array$_t_address_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n // address[]\n function abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_address_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_address(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // address[]\n function abi_decode_t_array$_t_address_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_address_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_address_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function convert_t_contract$_IMetadataService_$9690_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_IMetadataService_$9690_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_IMetadataService_$9690_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_IMetadataService_$9690__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_IMetadataService_$9690_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_uint64(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes32t_addresst_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n // string\n function abi_decode_t_string_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_string_calldata_ptrt_addresst_uint16t_address(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_uint16(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value4 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_string_calldata_ptrt_addresst_uint256t_addresst_uint16(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value4 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value5 := abi_decode_t_uint16(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint32(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_contract$_INameWrapperUpgrade_$10082(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_INameWrapperUpgrade_$10082(value) {\n if iszero(eq(value, cleanup_t_contract$_INameWrapperUpgrade_$10082(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_INameWrapperUpgrade_$10082(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_contract$_INameWrapperUpgrade_$10082(value)\n }\n\n function abi_decode_tuple_t_contract$_INameWrapperUpgrade_$10082(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_INameWrapperUpgrade_$10082(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_addresst_uint32t_uint64(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value4 := abi_decode_t_uint32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value5 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2, value3 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_addresst_addresst_uint64(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32t_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes32(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptrt_addresst_address(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 128))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value4 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: balance query for the z\")\n\n mstore(add(memPtr, 32), \"ero address\")\n\n }\n\n function abi_encode_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n store_literal_in_memory_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_1f4de6a436172e7f7b1540476031cb037fc18ede9cc346a56da1697cbd352aa9_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint64__to_t_bytes32_t_uint64__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value1, add(headStart, 32))\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_payable(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_string_memory_ptrt_address_payablet_uint16t_address_payable(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address_payable(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint16(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_address_payable(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint64(x, y) -> sum {\n x := cleanup_t_uint64(x)\n y := cleanup_t_uint64(y)\n sum := add(x, y)\n\n if gt(sum, 0xffffffffffffffff) { panic_error_0x11() }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_address_to_t_address_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value4, add(headStart, 128))\n\n }\n\n function store_literal_in_memory_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: ids and amounts length \")\n\n mstore(add(memPtr, 32), \"mismatch\")\n\n }\n\n function abi_encode_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 40)\n store_literal_in_memory_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_e909e0c9a8f96b4f9af03b716811ece20beb070be416893ed1d50619b5930807_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: transfer to the zero ad\")\n\n mstore(add(memPtr, 32), \"dress\")\n\n }\n\n function abi_encode_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_6faf1c67f278b07c6771dcf4c315a89c21c0eaed11d9ab3d51774da1cfef545d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: transfer caller is not \")\n\n mstore(add(memPtr, 32), \"owner nor approved\")\n\n }\n\n function abi_encode_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_70a41c66829f5508884cda9ef3d2f72551b34f23e4035be97941681123d2d686_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: insufficient balance fo\")\n\n mstore(add(memPtr, 32), \"r transfer\")\n\n }\n\n function abi_encode_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_8ac7e9556b567c1c94bb4daaa3c3a65be5ac686579615210cb910fb8cb8d65bf_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value1, tail)\n\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: accounts and ids length\")\n\n mstore(add(memPtr, 32), \" mismatch\")\n\n }\n\n function abi_encode_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_e155f5d69798c6205436a388a4f3a5fd42f54147b40f4d63a2c8071ff8a9fee5_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_decode_t_bool_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256__to_t_address_t_address_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0, value1, pos)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: setting approval status\")\n\n mstore(add(memPtr, 32), \" for self\")\n\n }\n\n function abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_df9806c6dc743de602e49918a67b580590d69ab768bdb59f977c0a884a91a7c2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b(memPtr) {\n\n mstore(add(memPtr, 0), \"Controllable: Caller is not a co\")\n\n mstore(add(memPtr, 32), \"ntroller\")\n\n }\n\n function abi_encode_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 40)\n store_literal_in_memory_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_3a494915be969f0305371ebdb09944c6f39346fa8227994f38a7231f6aafbd7b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_uint256_t_address_t_uint256__to_t_uint256_t_address_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_encode_tuple_t_address_t_bool__to_t_address_t_bool__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bool_to_t_bool_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32_t_address__to_t_bytes32_t_bytes32_t_address__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_calldata_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_calldata_ptr__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64_t_address_t_bytes_memory_ptr__fromStack_reversed(headStart , value7, value6, value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 192)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value0, value1, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 32))\n\n abi_encode_t_uint32_to_t_uint32_fromStack(value3, add(headStart, 64))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value4, add(headStart, 96))\n\n abi_encode_t_address_to_t_address_fromStack(value5, add(headStart, 128))\n\n mstore(add(headStart, 160), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value6, value7, tail)\n\n }\n\n function abi_encode_tuple_t_bytes32_t_address_t_address_t_uint64__to_t_bytes32_t_address_t_address_t_uint64__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value3, add(headStart, 96))\n\n }\n\n function array_length_t_bytes_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function array_dataslot_t_bytes_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_bytes_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_bytes_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_bytes_calldata_ptr_to_t_bytes_storage(slot, src, len) {\n\n let newLen := array_length_t_bytes_calldata_ptr(src, len)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_bytes_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_bytes_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, calldataload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := calldataload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := calldataload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n function store_literal_in_memory_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: caller is not owner nor\")\n\n mstore(add(memPtr, 32), \" approved\")\n\n }\n\n function abi_encode_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_394ac917f53b95ee25db2a5da5874c5b1f0af95a4fdf34992ff8b19c458f239a_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n mstore(add(memPtr, 32), \"ddress\")\n\n }\n\n function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function checked_sub_t_uint64(x, y) -> diff {\n x := cleanup_t_uint64(x)\n y := cleanup_t_uint64(y)\n diff := sub(x, y)\n\n if gt(diff, 0xffffffffffffffff) { panic_error_0x11() }\n\n }\n\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src) {\n\n let newLen := array_length_t_bytes_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_bytes_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_bytes_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value2, tail)\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value3, tail)\n\n mstore(add(headStart, 128), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value4, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function shift_right_224_unsigned(value) -> newValue {\n newValue :=\n\n shr(224, value)\n\n }\n\n function return_data_selector() -> sig {\n if gt(returndatasize(), 3) {\n returndatacopy(0, 0, 4)\n sig := shift_right_224_unsigned(mload(0))\n }\n }\n\n function try_decode_error_message() -> ret {\n if lt(returndatasize(), 0x44) { leave }\n\n let data := allocate_unbounded()\n returndatacopy(data, 4, sub(returndatasize(), 4))\n\n let offset := mload(data)\n if or(\n gt(offset, 0xffffffffffffffff),\n gt(add(offset, 0x24), returndatasize())\n ) {\n leave\n }\n\n let msg := add(data, offset)\n let length := mload(msg)\n if gt(length, 0xffffffffffffffff) { leave }\n\n let end := add(add(msg, 0x20), length)\n if gt(end, add(data, sub(returndatasize(), 4))) { leave }\n\n finalize_allocation(data, add(offset, add(0x20, length)))\n ret := msg\n }\n\n function store_literal_in_memory_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: transfer to non ERC1155\")\n\n mstore(add(memPtr, 32), \"Receiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 52)\n store_literal_in_memory_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_00aa752fb1526000e5241602affc3d70ef506da48a27ea57140102b439e655ed_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: ERC1155Receiver rejecte\")\n\n mstore(add(memPtr, 32), \"d tokens\")\n\n }\n\n function abi_encode_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 40)\n store_literal_in_memory_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_0587cccad73a80a7f013db13c596f4febc1968dc77e1d3589d5e7a509a3d6503_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__to_t_bytes_memory_ptr_t_address_t_uint32_t_uint64__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint32_to_t_uint32_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint64_to_t_uint64_fromStack(value3, add(headStart, 96))\n\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n diff := sub(x, y)\n\n if gt(diff, x) { panic_error_0x11() }\n\n }\n\n function store_literal_in_memory_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142(memPtr) {\n\n mstore(add(memPtr, 0), \"namehash: Junk at end of name\")\n\n }\n\n function abi_encode_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 29)\n store_literal_in_memory_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_912cb3202b125350fc41f3ab0d7246878642a776f73877d55ca2cfbcec1f2142_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function cleanup_t_rational_1_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_rational_1_by_1_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_rational_1_by_1(value)))\n }\n\n function abi_encode_t_rational_1_by_1_to_t_uint256_fromStack(value, pos) {\n mstore(pos, convert_t_rational_1_by_1_to_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256_t_rational_1_by_1__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_rational_1_by_1_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function store_literal_in_memory_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535(memPtr) {\n\n mstore(add(memPtr, 0), \"readLabel: Index out of bounds\")\n\n }\n\n function abi_encode_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 30)\n store_literal_in_memory_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_723ef06cf58e92d84b8ad4ad83db034cb099b69c213da6595a1e7ca6ebe51535_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function shift_left_248(value) -> newValue {\n newValue :=\n\n shl(248, value)\n\n }\n\n function leftAlign_t_uint8(value) -> aligned {\n aligned := shift_left_248(value)\n }\n\n function abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint8(cleanup_t_uint8(value)))\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__to_t_uint8_t_string_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value2, value1, value0) -> end {\n\n abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 1)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value2, pos)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value3, add(headStart, 96))\n\n mstore(add(headStart, 128), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value4, tail)\n\n }\n\n function store_literal_in_memory_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: mint of existing token\")\n\n }\n\n function abi_encode_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_0a5a3f6c2833a0d5056e4c87913f3b2ad716b97085ed243cd04d020b3830fcac_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: mint to the zero addres\")\n\n mstore(add(memPtr, 32), \"s\")\n\n }\n\n function abi_encode_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_ebf031a1b7ee1d0b3a7752b450a3268e8b6c334561b48c1c0ba0f5bac05749f2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC1155: newOwner cannot be the \")\n\n mstore(add(memPtr, 32), \"NameWrapper contract\")\n\n }\n\n function abi_encode_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 52)\n store_literal_in_memory_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_52680399c4a01b55318dc7a1e656395c494f95152fe03ad468b9b7af702c670b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "10183": [ + { + "length": 32, + "start": 3771 + }, + { + "length": 32, + "start": 4785 + }, + { + "length": 32, + "start": 5295 + }, + { + "length": 32, + "start": 5461 + }, + { + "length": 32, + "start": 6505 + }, + { + "length": 32, + "start": 7091 + }, + { + "length": 32, + "start": 11054 + }, + { + "length": 32, + "start": 11558 + }, + { + "length": 32, + "start": 12332 + }, + { + "length": 32, + "start": 12844 + }, + { + "length": 32, + "start": 13823 + }, + { + "length": 32, + "start": 15565 + }, + { + "length": 32, + "start": 15776 + }, + { + "length": 32, + "start": 16054 + }, + { + "length": 32, + "start": 16196 + }, + { + "length": 32, + "start": 18076 + }, + { + "length": 32, + "start": 18531 + }, + { + "length": 32, + "start": 19380 + }, + { + "length": 32, + "start": 21701 + } + ], + "10186": [ + { + "length": 32, + "start": 3922 + }, + { + "length": 32, + "start": 4174 + }, + { + "length": 32, + "start": 4324 + }, + { + "length": 32, + "start": 5636 + }, + { + "length": 32, + "start": 8670 + }, + { + "length": 32, + "start": 8856 + }, + { + "length": 32, + "start": 9067 + }, + { + "length": 32, + "start": 9340 + }, + { + "length": 32, + "start": 9483 + }, + { + "length": 32, + "start": 9628 + }, + { + "length": 32, + "start": 10467 + }, + { + "length": 32, + "start": 10878 + }, + { + "length": 32, + "start": 11382 + }, + { + "length": 32, + "start": 11934 + }, + { + "length": 32, + "start": 12094 + }, + { + "length": 32, + "start": 14655 + } + ] + }, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146108dc578063eb8ae5301461090c578063ed70554d14610928578063f242432a14610958578063f2fde38b14610974578063fd0cd0d9146109905761029f565b8063c93ab3fd1461080c578063cf40882314610828578063d8c9921a14610844578063d9a50c1214610860578063da8c229e14610890578063e0dba60f146108c05761029f565b8063a22cb46511610120578063a22cb46514610714578063a401498214610730578063adf4960a14610760578063b6bcad2614610790578063c475abff146107ac578063c658e086146107dc5761029f565b80636352211e146106405780636e5d6ad214610670578063715018a6146106a05780638b4dfa75146106aa5780638cf8b41e146106c65780638da5cb5b146106f65761029f565b80631f4e15041161020b5780633f15457f116101c45780633f15457f14610558578063402906fc1461057657806341415eab146105a65780634e1273f4146105d657806353095467146106065780635d3590d5146106245761029f565b80631f4e15041461048457806320c38e2b146104a257806324c1af44146104d25780632b20e397146105025780632eb2c2d61461052057806333c69ea91461053c5761029f565b80630e4cd7251161025d5780630e4cd725146103a05780630e89341c146103d057806314ab903814610400578063150b7a021461041c5780631534e1771461044c5780631896f70a146104685761029f565b8062fdd58e146102a45780630178fe3f146102d457806301ffc9a71461030657806306fdde0314610336578063081812fc14610354578063095ea7b314610384575b600080fd5b6102be60048036038101906102b991906161f5565b6109c0565b6040516102cb9190616244565b60405180910390f35b6102ee60048036038101906102e9919061625f565b610a86565b6040516102fd939291906162dd565b60405180910390f35b610320600480360381019061031b919061636c565b610aba565b60405161032d91906163b4565b60405180910390f35b61033e610b9c565b60405161034b919061645f565b60405180910390f35b61036e6004803603810190610369919061625f565b610bd5565b60405161037b9190616481565b60405180910390f35b61039e600480360381019061039991906161f5565b610c33565b005b6103ba60048036038101906103b591906164d2565b610ca8565b6040516103c791906163b4565b60405180910390f35b6103ea60048036038101906103e5919061625f565b610d5f565b6040516103f7919061645f565b60405180910390f35b61041a6004803603810190610415919061653e565b610e09565b005b610436600480360381019061043191906165e3565b610f4e565b604051610443919061667a565b60405180910390f35b610466600480360381019061046191906166d3565b6111b3565b005b610482600480360381019061047d91906164d2565b6111ff565b005b61048c611344565b604051610499919061675f565b60405180910390f35b6104bc60048036038101906104b7919061677a565b61136a565b6040516104c991906167fc565b60405180910390f35b6104ec60048036038101906104e7919061697a565b61140a565b6040516104f99190616a47565b60405180910390f35b61050a611602565b6040516105179190616a83565b60405180910390f35b61053a60048036038101906105359190616c02565b611626565b005b61055660048036038101906105519190616cd1565b6118eb565b005b610560611bb1565b60405161056d9190616d59565b60405180910390f35b610590600480360381019061058b9190616dae565b611bd5565b60405161059d9190616dee565b60405180910390f35b6105c060048036038101906105bb91906164d2565b611cc1565b6040516105cd91906163b4565b60405180910390f35b6105f060048036038101906105eb9190616ecc565b611d37565b6040516105fd9190617002565b60405180910390f35b61060e611e4a565b60405161061b9190617045565b60405180910390f35b61063e60048036038101906106399190617060565b611e70565b005b61065a6004803603810190610655919061625f565b611efc565b6040516106679190616481565b60405180910390f35b61068a600480360381019061068591906170b3565b611f0e565b6040516106979190617106565b60405180910390f35b6106a86120a8565b005b6106c460048036038101906106bf9190617121565b6120bc565b005b6106e060048036038101906106db91906171ca565b612274565b6040516106ed9190617106565b60405180910390f35b6106fe6126a0565b60405161070b9190616481565b60405180910390f35b61072e6004803603810190610729919061727e565b6126c9565b005b61074a600480360381019061074591906172be565b612834565b6040516107579190616244565b60405180910390f35b61077a60048036038101906107759190617358565b6129f1565b60405161078791906163b4565b60405180910390f35b6107aa60048036038101906107a591906173d6565b612a1e565b005b6107c660048036038101906107c19190617403565b612dd8565b6040516107d39190616244565b60405180910390f35b6107f660048036038101906107f19190617443565b613130565b6040516108039190616a47565b60405180910390f35b610826600480360381019061082191906174dd565b61333d565b005b610842600480360381019061083d919061755e565b613547565b005b61085e600480360381019061085991906175c5565b613779565b005b61087a60048036038101906108759190617618565b6138ed565b60405161088791906163b4565b60405180910390f35b6108aa60048036038101906108a59190617658565b613a1d565b6040516108b791906163b4565b60405180910390f35b6108da60048036038101906108d5919061727e565b613a3d565b005b6108f660048036038101906108f19190617685565b613aee565b60405161090391906163b4565b60405180910390f35b610926600480360381019061092191906176c5565b613b82565b005b610942600480360381019061093d919061625f565b61402c565b60405161094f9190616244565b60405180910390f35b610972600480360381019061096d9190617739565b614044565b005b61098e60048036038101906109899190617658565b614146565b005b6109aa60048036038101906109a5919061677a565b6141c9565b6040516109b791906163b4565b60405180910390f35b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2790617842565b60405180910390fd5b6000610a3b83611efc565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a7a576001915050610a80565b60009150505b92915050565b6000806000610a94846142c5565b809350819450829550505050610aab8383836142fa565b80935081945050509193909250565b60007fd82c42d8000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610b8557507f150b7a02000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610b955750610b9482614342565b5b9050919050565b6040518060400160405280600b81526020017f4e616d655772617070657200000000000000000000000000000000000000000081525081565b600080610be183611efc565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c21576000915050610c2e565b610c2a83614424565b9150505b919050565b6000610c3e82610a86565b50915050604063ffffffff166040821663ffffffff1603610c99578160001b6040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401610c909190616a47565b60405180910390fd5b610ca38383614461565b505050565b600080600080610cba8660001c610a86565b9250925092508473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610d005750610cff8386613aee565b5b80610d4157508473ffffffffffffffffffffffffffffffffffffffff16610d298760001c610bd5565b73ffffffffffffffffffffffffffffffffffffffff16145b8015610d545750610d52828261456a565b155b935050505092915050565b6060600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e89341c836040518263ffffffff1660e01b8152600401610dbc9190616244565b600060405180830381865afa158015610dd9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610e0291906178d2565b9050919050565b81610e148133611cc1565b610e575780336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401610e4e92919061791b565b60405180910390fd5b8260106000610e688360001c610a86565b50915050600082821663ffffffff1614610eb957826040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401610eb09190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166314ab903887876040518363ffffffff1660e01b8152600401610f14929190617944565b600060405180830381600087803b158015610f2e57600080fd5b505af1158015610f42573d6000803e3d6000fd5b50505050505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fd5576040517f1931a53800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806000808686810190610fea91906179ab565b935093509350935060008860001b905060008580519060200120905081811461104c5780826040517fc65c3ccc000000000000000000000000000000000000000000000000000000008152600401611043929190617a2e565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166328ed4f6c8360001c306040518363ffffffff1660e01b81526004016110aa929190617a57565b600060405180830381600087803b1580156110c457600080fd5b505af11580156110d8573d6000803e3d6000fd5b5050505060006276a7007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d6e4fa868d6040518263ffffffff1660e01b815260040161113b9190616244565b602060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c9190617a95565b6111869190617af1565b905061119987878761ffff1684886145ae565b63150b7a0260e01b97505050505050505095945050505050565b6111bb614732565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b8161120a8133611cc1565b61124d5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161124492919061791b565b60405180910390fd5b826008600061125e8360001c610a86565b50915050600082821663ffffffff16146112af57826040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016112a69190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a87876040518363ffffffff1660e01b815260040161130a92919061791b565b600060405180830381600087803b15801561132457600080fd5b505af1158015611338573d6000803e3d6000fd5b50505050505050505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6006602052806000526040600020600091509050805461138990617b5c565b80601f01602080910402602001604051908101604052809291908181526020018280546113b590617b5c565b80156114025780601f106113d757610100808354040283529160200191611402565b820191906000526020600020905b8154815290600101906020018083116113e557829003601f168201915b505050505081565b6000876114178133611cc1565b61145a5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161145192919061791b565b60405180910390fd5b6000888051906020012090506114708a826147b0565b925061147c8a846147e3565b61148683866149d8565b6114918a848b614a36565b5061149e8a848787614b0d565b93506114a983614b57565b611553577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f08b83308b8b6040518663ffffffff1660e01b815260040161150e959493929190617b8d565b600060405180830381600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b5050505061154e8a848b8b8989614c6b565b6115f5565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef2c7f08b83308b8b6040518663ffffffff1660e01b81526004016115b4959493929190617b8d565b600060405180830381600087803b1580156115ce57600080fd5b505af11580156115e2573d6000803e3d6000fd5b505050506115f48a848b8b8989614d2a565b5b5050979650505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b815183511461166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166190617c52565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036116d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d090617ce4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148061171957506117188533613aee565b5b611758576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174f90617d76565b60405180910390fd5b60005b835181101561185757600084828151811061177957611778617d96565b5b60200260200101519050600084838151811061179857611797617d96565b5b6020026020010151905060008060006117b085610a86565b9250925092506117c1858383614eb3565b6001841480156117fc57508a73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61183b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183290617e37565b60405180910390fd5b611847858b8484614fe4565b505050505080600101905061175b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516118ce929190617e57565b60405180910390a46118e4338686868686615034565b5050505050565b60006118f785856147b0565b905061190381846149d8565b60008060006119148460001c610a86565b925092509250600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611a1a57503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3866040518263ffffffff1660e01b81526004016119c09190616a47565b602060405180830381865afa1580156119dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a019190617ea3565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611a51576040517f5374b59900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080611a608a60001c610a86565b92509250506000801b8a03611ac157611a798633611cc1565b611abc5785336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611ab392919061791b565b60405180910390fd5b611b0f565b611acb8a33611cc1565b611b0e5789336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611b0592919061791b565b60405180910390fd5b5b611b1a86898461520b565b611b25878483615282565b9650600062010000851663ffffffff1614158015611b5157508363ffffffff1688851763ffffffff1614155b15611b9357856040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401611b8a9190616a47565b60405180910390fd5b8388179750611ba586868a868b6152ce565b50505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600082611be28133611cc1565b611c255780336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611c1c92919061791b565b60405180910390fd5b8360026000611c368360001c610a86565b50915050600082821663ffffffff1614611c8757826040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401611c7e9190616a47565b60405180910390fd5b6000806000611c988a60001c610a86565b925092509250611cb18a84848c61ffff161784856152ce565b8197505050505050505092915050565b600080600080611cd38660001c610a86565b9250925092508473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611d195750611d188386613aee565b5b8015611d2c5750611d2a828261456a565b155b935050505092915050565b60608151835114611d7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7490617f42565b60405180910390fd5b6000835167ffffffffffffffff811115611d9a57611d99616823565b5b604051908082528060200260200182016040528015611dc85781602001602082028036833780820191505090505b50905060005b8451811015611e3f57611e15858281518110611ded57611dec617d96565b5b6020026020010151858381518110611e0857611e07617d96565b5b60200260200101516109c0565b828281518110611e2857611e27617d96565b5b602002602001018181525050806001019050611dce565b508091505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611e78614732565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401611eb3929190617f62565b6020604051808303816000875af1158015611ed2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ef69190617fa0565b50505050565b6000611f078261536e565b9050919050565b600080611f1b85856147b0565b9050611f2681614b57565b611f5c576040517f5374b59900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611f688633610ca8565b905080158015611f7f5750611f7d8233611cc1565b155b15611fc35781336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401611fba92919061791b565b60405180910390fd5b6000806000611fd48560001c610a86565b92509250925083158015611ff35750600062040000831663ffffffff16145b1561203557846040517fa2a7201300000000000000000000000000000000000000000000000000000000815260040161202c9190616a47565b60405180910390fd5b60006120438a60001c610a86565b92505050612052888383615282565b97506120608685858b615387565b857ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132896040516120909190617106565b60405180910390a28796505050505050509392505050565b6120b0614732565b6120ba60006153a6565b565b6120e97f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b846147b0565b6120f38133611cc1565b6121365780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161212d92919061791b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121a657826040517f5949361a00000000000000000000000000000000000000000000000000000000815260040161219d9190616481565b60405180910390fd5b6121dc6121d67f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b866147b0565b8361546a565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166342842e0e30858760001c6040518463ffffffff1660e01b815260040161223c93929190617fcd565b600060405180830381600087803b15801561225657600080fd5b505af115801561226a573d6000803e3d6000fd5b5050505050505050565b6000808686604051612287929190618034565b604051809103902060001c905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e836040518263ffffffff1660e01b81526004016122ef9190616244565b602060405180830381865afa15801561230c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123309190617ea3565b90503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415801561240757507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b81526004016123c492919061804d565b602060405180830381865afa1580156123e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124059190617fa0565b155b1561247a5761243c7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8360001b6147b0565b336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161247192919061791b565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166323b872dd8230856040518463ffffffff1660e01b81526004016124d793929190617fcd565b600060405180830381600087803b1580156124f157600080fd5b505af1158015612505573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166328ed4f6c83306040518363ffffffff1660e01b8152600401612564929190617a57565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b505050506276a7007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d6e4fa86846040518263ffffffff1660e01b81526004016125f39190616244565b602060405180830381865afa158015612610573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126349190617a95565b61263e9190617af1565b925061269588888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050878761ffff1686886145ae565b505095945050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603612737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161272e906180e8565b60405180910390fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161282891906163b4565b60405180910390a35050565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166128c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128b99061817a565b60405180910390fd5b600087876040516128d4929190618034565b604051809103902060001c90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663fca247ac8230886040518463ffffffff1660e01b815260040161293e9392919061819a565b6020604051808303816000875af115801561295d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129819190617a95565b91506129e688888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050878561ffff166276a700866129e09190617af1565b886145ae565b509695505050505050565b600080612a008460001c610a86565b509150508263ffffffff1683821663ffffffff161491505092915050565b612a26614732565b600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612bdd577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660006040518363ffffffff1660e01b8152600401612afa9291906181d1565b600060405180830381600087803b158015612b1457600080fd5b505af1158015612b28573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660006040518363ffffffff1660e01b8152600401612baa9291906181d1565b600060405180830381600087803b158015612bc457600080fd5b505af1158015612bd8573d6000803e3d6000fd5b505050505b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612dd5577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016040518363ffffffff1660e01b8152600401612cf29291906181d1565b600060405180830381600087803b158015612d0c57600080fd5b505af1158015612d20573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a22cb465600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016040518363ffffffff1660e01b8152600401612da29291906181d1565b600060405180830381600087803b158015612dbc57600080fd5b505af1158015612dd0573d6000803e3d6000fd5b505050505b50565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612e66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e5d9061817a565b60405180910390fd5b6000612e987f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8560001b6147b0565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c475abff86866040518363ffffffff1660e01b8152600401612ef79291906181fa565b6020604051808303816000875af1158015612f16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f3a9190617a95565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e866040518263ffffffff1660e01b8152600401612f959190616244565b602060405180830381865afa925050508015612fcf57506040513d601f19601f82011682018060405250810190612fcc9190617ea3565b60015b612fdd57809250505061312a565b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415806130dd57503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3856040518263ffffffff1660e01b81526004016130839190616a47565b602060405180830381865afa1580156130a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130c49190617ea3565b73ffffffffffffffffffffffffffffffffffffffff1614155b156130ed5781935050505061312a565b5060006276a700826130ff9190617af1565b90506000806131108560001c6142c5565b509150915061312185838386615387565b83955050505050505b92915050565b60008661313d8133611cc1565b6131805780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161317792919061791b565b60405180910390fd5b60008787604051613192929190618034565b604051809103902090506131a689826147b0565b92506131b289846147e3565b6131bc83866149d8565b600061320d8a858b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614a36565b905061321b8a858888614b0d565b945061322684614b57565b6132dd577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166306ab59238b84306040518463ffffffff1660e01b815260040161328793929190618223565b6020604051808303816000875af11580156132a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132ca919061826f565b506132d8848289898961558c565b613330565b61332f8a858b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508a8a8a614d2a565b5b5050509695505050505050565b6000613397600086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506155dd90919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603613421576040517f24c1d6d400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61342b8133611cc1565b61346e5780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161346592919061791b565b60405180910390fd5b600080600061347f8460001c610a86565b92509250925060006134938560001c610bd5565b90506134a18560001c615693565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161350a9897969594939291906182c9565b600060405180830381600087803b15801561352457600080fd5b505af1158015613538573d6000803e3d6000fd5b50505050505050505050505050565b836135528133611cc1565b6135955780336040517fb455aae800000000000000000000000000000000000000000000000000000000815260040161358c92919061791b565b60405180910390fd5b84601060086004171760006135ac8360001c610a86565b50915050600082821663ffffffff16146135fd57826040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016135f49190616a47565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663cf408823893089896040518563ffffffff1660e01b815260040161365c949392919061833c565b600060405180830381600087803b15801561367657600080fd5b505af115801561368a573d6000803e3d6000fd5b50505050600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361373d5760006136d08960001c610a86565b509150506202000063ffffffff1662020000821663ffffffff160361372c57876040517f5949361a0000000000000000000000000000000000000000000000000000000081526004016137239190616481565b60405180910390fd5b61373789600061546a565b5061376f565b600061374b8960001c611efc565b905061376d81898b60001c600160405180602001604052806000815250615781565b505b5050505050505050565b61378383836147b0565b61378d8133611cc1565b6137d05780336040517fb455aae80000000000000000000000000000000000000000000000000000000081526004016137c792919061791b565b60405180910390fd5b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b840361382c576040517f615a470300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148061389257503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156138d457816040517f5949361a0000000000000000000000000000000000000000000000000000000081526004016138cb9190616481565b60405180910390fd5b6138e76138e185856147b0565b8361546a565b50505050565b6000806138fa84846147b0565b9050600061390782614b57565b90507f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b851461393d578092505050613a17565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8560001c6040518263ffffffff1660e01b81526004016139999190616244565b602060405180830381865afa9250505080156139d357506040513d601f19601f820116820180604052508101906139d09190617ea3565b60015b6139e257600092505050613a17565b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161493505050505b92915050565b60046020528060005260406000206000915054906101000a900460ff1681565b613a45614732565b80600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8782604051613ae291906163b4565b60405180910390a25050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080613bdd600087878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506158f890919063ffffffff16565b915091506000613c3a8288888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506155dd90919063ffffffff16565b90506000613c4882856147b0565b90508787600660008481526020019081526020016000209182613c6c92919061852e565b507f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b8203613cc9576040517f615a470300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3836040518263ffffffff1660e01b8152600401613d249190616a47565b602060405180830381865afa158015613d41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d659190617ea3565b90503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015613e3c57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e985e9c582336040518363ffffffff1660e01b8152600401613df992919061804d565b602060405180830381865afa158015613e16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e3a9190617fa0565b155b15613e805781336040517fb455aae8000000000000000000000000000000000000000000000000000000008152600401613e7792919061791b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614613f42577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a83886040518363ffffffff1660e01b8152600401613f0f92919061791b565b600060405180830381600087803b158015613f2957600080fd5b505af1158015613f3d573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383306040518363ffffffff1660e01b8152600401613f9d92919061791b565b600060405180830381600087803b158015613fb757600080fd5b505af1158015613fcb573d6000803e3d6000fd5b50505050614021828a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508960008061558c565b505050505050505050565b60016020528060005260406000206000915090505481565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036140b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016140aa90617ce4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614806140f357506140f28533613aee565b5b614132576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161412990618670565b60405180910390fd5b61413f8585858585615781565b5050505050565b61414e614732565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036141bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016141b490618702565b60405180910390fd5b6141c6816153a6565b50565b6000806006600084815260200190815260200160002080546141ea90617b5c565b80601f016020809104026020016040519081016040528092919081815260200182805461421690617b5c565b80156142635780601f1061423857610100808354040283529160200191614263565b820191906000526020600020905b81548152906001019060200180831161424657829003601f168201915b50505050509050600081510361427d5760009150506142c0565b6000806142946000846158f890919063ffffffff16565b9150915060006142ad82856155dd90919063ffffffff16565b90506142b981846138ed565b9450505050505b919050565b6000806000806001600086815260200190815260200160002054905080935060c081901c915060a081901c9250509193909250565b600080428367ffffffffffffffff161015614334576201000063ffffffff1662010000851663ffffffff160361432f57600094505b600093505b848491509150935093915050565b60007fd9b67a26000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061440d57507f0e89341c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061441d575061441c826159b6565b5b9050919050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061446c82611efc565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036144dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016144d390618794565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061451c575061451b8133613aee565b5b61455b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161455290618826565b60405180910390fd5b6145658383615a20565b505050565b60006202000063ffffffff1662020000841663ffffffff161480156145a65750426276a7008361459a9190618846565b67ffffffffffffffff16105b905092915050565b60008580519060200120905060006145e97f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b836147b0565b9050600061462c886040518060400160405280600581526020017f0365746800000000000000000000000000000000000000000000000000000000815250615ad9565b90508060066000848152602001908152602001600020908161464e9190618882565b5061466682828962020000620100008b17178961558c565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614614728577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631896f70a83866040518363ffffffff1660e01b81526004016146f592919061791b565b600060405180830381600087803b15801561470f57600080fd5b505af1158015614723573d6000803e3d6000fd5b505050505b5050505050505050565b61473a615b8b565b73ffffffffffffffffffffffffffffffffffffffff166147586126a0565b73ffffffffffffffffffffffffffffffffffffffff16146147ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016147a5906189a0565b60405180910390fd5b565b600082826040516020016147c59291906189e1565b60405160208183030381529060405280519060200120905092915050565b60008060006147f48460001c610a86565b9250925092506000428267ffffffffffffffff161090508080156149145750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806149135750600073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3876040518263ffffffff1660e01b81526004016148ba9190616a47565b602060405180830381865afa1580156148d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148fb9190617ea3565b73ffffffffffffffffffffffffffffffffffffffff16145b5b1561497f5760006149278760001c610a86565b5091505060006020821663ffffffff161461497957856040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016149709190616a47565b60405180910390fd5b506149d0565b600062010000841663ffffffff16146149cf57846040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016149c69190616a47565b60405180910390fd5b5b505050505050565b63fffdffff63ffffffff1663fffdffff821763ffffffff1614614a3257816040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401614a299190616a47565b60405180910390fd5b5050565b60606000614adf83600660008881526020019081526020016000208054614a5c90617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614a8890617b5c565b8015614ad55780601f10614aaa57610100808354040283529160200191614ad5565b820191906000526020600020905b815481529060010190602001808311614ab857829003601f168201915b5050505050615ad9565b905080600660008681526020019081526020016000209081614b019190618882565b50809150509392505050565b600080614b1c8560001c610a86565b92505050600080614b2f8860001c610a86565b9250925050614b3f87878461520b565b614b4a858483615282565b9350505050949350505050565b60008073ffffffffffffffffffffffffffffffffffffffff16614b7c8360001c611efc565b73ffffffffffffffffffffffffffffffffffffffff1614158015614c6457503073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b8152600401614c0b9190616a47565b602060405180830381865afa158015614c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614c4c9190617ea3565b73ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b6000614d1285600660008a81526020019081526020016000208054614c8f90617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614cbb90617b5c565b8015614d085780601f10614cdd57610100808354040283529160200191614d08565b820191906000526020600020905b815481529060010190602001808311614ceb57829003601f168201915b5050505050615ad9565b9050614d21868286868661558c565b50505050505050565b6000806000614d3b8860001c610a86565b9250925092506000614de888600660008d81526020019081526020016000208054614d6590617b5c565b80601f0160208091040260200160405190810160405280929190818152602001828054614d9190617b5c565b8015614dde5780601f10614db357610100808354040283529160200191614dde565b820191906000526020600020905b815481529060010190602001808311614dc157829003601f168201915b5050505050615ad9565b90506000600660008b81526020019081526020016000208054614e0a90617b5c565b905003614e335780600660008b81526020019081526020016000209081614e319190618882565b505b614e42898588861785896152ce565b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1603614e8657614e8189600061546a565b614ea7565b614ea684888b60001c600160405180602001604052806000815250615781565b5b50505050505050505050565b6202000063ffffffff1662020000831663ffffffff1603614ee0576276a70081614edd9190618846565b90505b428167ffffffffffffffff161015614f4557600062010000831663ffffffff1614614f40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401614f3790617e37565b60405180910390fd5b614f97565b60006004831663ffffffff1614614f96578260001b6040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401614f8d9190616a47565b60405180910390fd5b5b60006040831663ffffffff1603614fdf576003600084815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b505050565b60c08167ffffffffffffffff16901b60a08363ffffffff16901b8473ffffffffffffffffffffffffffffffffffffffff161717600160008681526020019081526020016000208190555050505050565b6150538473ffffffffffffffffffffffffffffffffffffffff16615b93565b15615203578373ffffffffffffffffffffffffffffffffffffffff1663bc197c8187878686866040518663ffffffff1660e01b8152600401615099959493929190618a0d565b6020604051808303816000875af19250505080156150d557506040513d601f19601f820116820180604052508101906150d29190618a8a565b60015b61517a576150e1618ac4565b806308c379a00361513d57506150f5618ae6565b80615100575061513f565b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615134919061645f565b60405180910390fd5b505b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161517190618be8565b60405180910390fd5b63bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614615201576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016151f890618c7a565b60405180910390fd5b505b505050505050565b60008063ffff0000841663ffffffff16141590506000806001841663ffffffff161490508180156152395750805b1561527b57846040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016152729190616a47565b60405180910390fd5b5050505050565b60008167ffffffffffffffff168467ffffffffffffffff1611156152a4578193505b8267ffffffffffffffff168467ffffffffffffffff1610156152c4578293505b8390509392505050565b6152da85858584615387565b847f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b8460405161530a9190616dee565b60405180910390a28167ffffffffffffffff168167ffffffffffffffff16111561536757847ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1328260405161535e9190617106565b60405180910390a25b5050505050565b60008061537a83610a86565b5050905080915050919050565b6153918483615bb6565b6153a08460001c848484614fe4565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6154758260016129f1565b156154b757816040517fa2a720130000000000000000000000000000000000000000000000000000000081526004016154ae9190616a47565b60405180910390fd5b6154c38260001c615693565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383836040518363ffffffff1660e01b815260040161551e92919061791b565b600060405180830381600087803b15801561553857600080fd5b505af115801561554c573d6000803e3d6000fd5b50505050817fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c4826040516155809190616481565b60405180910390a25050565b61559885848484615c34565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd340858585856040516155ce9493929190618c9a565b60405180910390a25050505050565b60008060006155ec85856158f8565b915091506000801b820361565657600185516156089190618ce6565b8414615649576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161564090618d66565b60405180910390fd5b6000801b9250505061568d565b61566085826155dd565b826040516020016156729291906189e1565b60405160208183030381529060405280519060200120925050505b92915050565b60008060006156a1846142c5565b9250925092506156b28383836142fa565b9050809250506003600085815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556156fb8460008484614fe4565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62876001604051615773929190618dc1565b60405180910390a450505050565b600080600061578f86610a86565b9250925092506157a0868383614eb3565b6001851480156157db57508773ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61581a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161581190617e37565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603615855575050506158f1565b61586186888484614fe4565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6289896040516158d79291906181fa565b60405180910390a46158ed338989898989615cdd565b5050505b5050505050565b6000808351831061593e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161593590618e36565b60405180910390fd5b600084848151811061595357615952617d96565b5b602001015160f81c60f81b60f81c60ff169050600081111561598d57615986856001866159809190618e56565b83615eb4565b9250615994565b6000801b92505b600181856159a29190618e56565b6159ac9190618e56565b9150509250929050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16615a9383611efc565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015615b17576040517f280dacb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff83511115615b5e57826040517fe3ba295f000000000000000000000000000000000000000000000000000000008152600401615b55919061645f565b60405180910390fd5b82518383604051602001615b7493929190618f3a565b604051602081830303815290604052905092915050565b600033905090565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600063ffff000019821663ffffffff1614158015615bee57506001620100001763ffffffff1660016201000017821663ffffffff1614155b15615c3057816040517fa2a72013000000000000000000000000000000000000000000000000000000008152600401615c279190616a47565b60405180910390fd5b5050565b615c3e8483615bb6565b6000615c4c8560001c6142c5565b50509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614615cca57615c908560001c615693565b847fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c46000604051615cc19190616481565b60405180910390a25b615cd685858585615ee0565b5050505050565b615cfc8473ffffffffffffffffffffffffffffffffffffffff16615b93565b15615eac578373ffffffffffffffffffffffffffffffffffffffff1663f23a6e6187878686866040518663ffffffff1660e01b8152600401615d42959493929190618f6f565b6020604051808303816000875af1925050508015615d7e57506040513d601f19601f82011682018060405250810190615d7b9190618a8a565b60015b615e2357615d8a618ac4565b806308c379a003615de65750615d9e618ae6565b80615da95750615de8565b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615ddd919061645f565b60405180910390fd5b505b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615e1a90618be8565b60405180910390fd5b63f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614615eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615ea190618c7a565b60405180910390fd5b505b505050505050565b600083518284615ec49190618e56565b1115615ecf57600080fd5b818360208601012090509392505050565b60008460001c90506000806000615ef98860001c610a86565b925092509250600082601061ffff801663ffffffff16901b1690508567ffffffffffffffff168267ffffffffffffffff161115615f34578195505b428267ffffffffffffffff1610615f4b5780871796505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614615fba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401615fb190619015565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1603616029576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401616020906190a7565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1603616097576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161608e90619139565b60405180910390fd5b6160a385898989614fe4565b8773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6288600160405161611b929190618dc1565b60405180910390a46161423360008a88600160405180602001604052806000815250615cdd565b505050505050505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061618c82616161565b9050919050565b61619c81616181565b81146161a757600080fd5b50565b6000813590506161b981616193565b92915050565b6000819050919050565b6161d2816161bf565b81146161dd57600080fd5b50565b6000813590506161ef816161c9565b92915050565b6000806040838503121561620c5761620b616157565b5b600061621a858286016161aa565b925050602061622b858286016161e0565b9150509250929050565b61623e816161bf565b82525050565b60006020820190506162596000830184616235565b92915050565b60006020828403121561627557616274616157565b5b6000616283848285016161e0565b91505092915050565b61629581616181565b82525050565b600063ffffffff82169050919050565b6162b48161629b565b82525050565b600067ffffffffffffffff82169050919050565b6162d7816162ba565b82525050565b60006060820190506162f2600083018661628c565b6162ff60208301856162ab565b61630c60408301846162ce565b949350505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61634981616314565b811461635457600080fd5b50565b60008135905061636681616340565b92915050565b60006020828403121561638257616381616157565b5b600061639084828501616357565b91505092915050565b60008115159050919050565b6163ae81616399565b82525050565b60006020820190506163c960008301846163a5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156164095780820151818401526020810190506163ee565b60008484015250505050565b6000601f19601f8301169050919050565b6000616431826163cf565b61643b81856163da565b935061644b8185602086016163eb565b61645481616415565b840191505092915050565b600060208201905081810360008301526164798184616426565b905092915050565b6000602082019050616496600083018461628c565b92915050565b6000819050919050565b6164af8161649c565b81146164ba57600080fd5b50565b6000813590506164cc816164a6565b92915050565b600080604083850312156164e9576164e8616157565b5b60006164f7858286016164bd565b9250506020616508858286016161aa565b9150509250929050565b61651b816162ba565b811461652657600080fd5b50565b60008135905061653881616512565b92915050565b6000806040838503121561655557616554616157565b5b6000616563858286016164bd565b925050602061657485828601616529565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f8401126165a3576165a261657e565b5b8235905067ffffffffffffffff8111156165c0576165bf616583565b5b6020830191508360018202830111156165dc576165db616588565b5b9250929050565b6000806000806000608086880312156165ff576165fe616157565b5b600061660d888289016161aa565b955050602061661e888289016161aa565b945050604061662f888289016161e0565b935050606086013567ffffffffffffffff8111156166505761664f61615c565b5b61665c8882890161658d565b92509250509295509295909350565b61667481616314565b82525050565b600060208201905061668f600083018461666b565b92915050565b60006166a082616181565b9050919050565b6166b081616695565b81146166bb57600080fd5b50565b6000813590506166cd816166a7565b92915050565b6000602082840312156166e9576166e8616157565b5b60006166f7848285016166be565b91505092915050565b6000819050919050565b600061672561672061671b84616161565b616700565b616161565b9050919050565b60006167378261670a565b9050919050565b60006167498261672c565b9050919050565b6167598161673e565b82525050565b60006020820190506167746000830184616750565b92915050565b6000602082840312156167905761678f616157565b5b600061679e848285016164bd565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60006167ce826167a7565b6167d881856167b2565b93506167e88185602086016163eb565b6167f181616415565b840191505092915050565b6000602082019050818103600083015261681681846167c3565b905092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61685b82616415565b810181811067ffffffffffffffff8211171561687a57616879616823565b5b80604052505050565b600061688d61614d565b90506168998282616852565b919050565b600067ffffffffffffffff8211156168b9576168b8616823565b5b6168c282616415565b9050602081019050919050565b82818337600083830152505050565b60006168f16168ec8461689e565b616883565b90508281526020810184848401111561690d5761690c61681e565b5b6169188482856168cf565b509392505050565b600082601f8301126169355761693461657e565b5b81356169458482602086016168de565b91505092915050565b6169578161629b565b811461696257600080fd5b50565b6000813590506169748161694e565b92915050565b600080600080600080600060e0888a03121561699957616998616157565b5b60006169a78a828b016164bd565b975050602088013567ffffffffffffffff8111156169c8576169c761615c565b5b6169d48a828b01616920565b96505060406169e58a828b016161aa565b95505060606169f68a828b016161aa565b9450506080616a078a828b01616529565b93505060a0616a188a828b01616965565b92505060c0616a298a828b01616529565b91505092959891949750929550565b616a418161649c565b82525050565b6000602082019050616a5c6000830184616a38565b92915050565b6000616a6d8261672c565b9050919050565b616a7d81616a62565b82525050565b6000602082019050616a986000830184616a74565b92915050565b600067ffffffffffffffff821115616ab957616ab8616823565b5b602082029050602081019050919050565b6000616add616ad884616a9e565b616883565b90508083825260208201905060208402830185811115616b0057616aff616588565b5b835b81811015616b295780616b1588826161e0565b845260208401935050602081019050616b02565b5050509392505050565b600082601f830112616b4857616b4761657e565b5b8135616b58848260208601616aca565b91505092915050565b600067ffffffffffffffff821115616b7c57616b7b616823565b5b616b8582616415565b9050602081019050919050565b6000616ba5616ba084616b61565b616883565b905082815260208101848484011115616bc157616bc061681e565b5b616bcc8482856168cf565b509392505050565b600082601f830112616be957616be861657e565b5b8135616bf9848260208601616b92565b91505092915050565b600080600080600060a08688031215616c1e57616c1d616157565b5b6000616c2c888289016161aa565b9550506020616c3d888289016161aa565b945050604086013567ffffffffffffffff811115616c5e57616c5d61615c565b5b616c6a88828901616b33565b935050606086013567ffffffffffffffff811115616c8b57616c8a61615c565b5b616c9788828901616b33565b925050608086013567ffffffffffffffff811115616cb857616cb761615c565b5b616cc488828901616bd4565b9150509295509295909350565b60008060008060808587031215616ceb57616cea616157565b5b6000616cf9878288016164bd565b9450506020616d0a878288016164bd565b9350506040616d1b87828801616965565b9250506060616d2c87828801616529565b91505092959194509250565b6000616d438261672c565b9050919050565b616d5381616d38565b82525050565b6000602082019050616d6e6000830184616d4a565b92915050565b600061ffff82169050919050565b616d8b81616d74565b8114616d9657600080fd5b50565b600081359050616da881616d82565b92915050565b60008060408385031215616dc557616dc4616157565b5b6000616dd3858286016164bd565b9250506020616de485828601616d99565b9150509250929050565b6000602082019050616e0360008301846162ab565b92915050565b600067ffffffffffffffff821115616e2457616e23616823565b5b602082029050602081019050919050565b6000616e48616e4384616e09565b616883565b90508083825260208201905060208402830185811115616e6b57616e6a616588565b5b835b81811015616e945780616e8088826161aa565b845260208401935050602081019050616e6d565b5050509392505050565b600082601f830112616eb357616eb261657e565b5b8135616ec3848260208601616e35565b91505092915050565b60008060408385031215616ee357616ee2616157565b5b600083013567ffffffffffffffff811115616f0157616f0061615c565b5b616f0d85828601616e9e565b925050602083013567ffffffffffffffff811115616f2e57616f2d61615c565b5b616f3a85828601616b33565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b616f79816161bf565b82525050565b6000616f8b8383616f70565b60208301905092915050565b6000602082019050919050565b6000616faf82616f44565b616fb98185616f4f565b9350616fc483616f60565b8060005b83811015616ff5578151616fdc8882616f7f565b9750616fe783616f97565b925050600181019050616fc8565b5085935050505092915050565b6000602082019050818103600083015261701c8184616fa4565b905092915050565b600061702f8261672c565b9050919050565b61703f81617024565b82525050565b600060208201905061705a6000830184617036565b92915050565b60008060006060848603121561707957617078616157565b5b6000617087868287016161aa565b9350506020617098868287016161aa565b92505060406170a9868287016161e0565b9150509250925092565b6000806000606084860312156170cc576170cb616157565b5b60006170da868287016164bd565b93505060206170eb868287016164bd565b92505060406170fc86828701616529565b9150509250925092565b600060208201905061711b60008301846162ce565b92915050565b60008060006060848603121561713a57617139616157565b5b6000617148868287016164bd565b9350506020617159868287016161aa565b925050604061716a868287016161aa565b9150509250925092565b60008083601f84011261718a5761718961657e565b5b8235905067ffffffffffffffff8111156171a7576171a6616583565b5b6020830191508360018202830111156171c3576171c2616588565b5b9250929050565b6000806000806000608086880312156171e6576171e5616157565b5b600086013567ffffffffffffffff8111156172045761720361615c565b5b61721088828901617174565b95509550506020617223888289016161aa565b935050604061723488828901616d99565b9250506060617245888289016161aa565b9150509295509295909350565b61725b81616399565b811461726657600080fd5b50565b60008135905061727881617252565b92915050565b6000806040838503121561729557617294616157565b5b60006172a3858286016161aa565b92505060206172b485828601617269565b9150509250929050565b60008060008060008060a087890312156172db576172da616157565b5b600087013567ffffffffffffffff8111156172f9576172f861615c565b5b61730589828a01617174565b9650965050602061731889828a016161aa565b945050604061732989828a016161e0565b935050606061733a89828a016161aa565b925050608061734b89828a01616d99565b9150509295509295509295565b6000806040838503121561736f5761736e616157565b5b600061737d858286016164bd565b925050602061738e85828601616965565b9150509250929050565b60006173a382616181565b9050919050565b6173b381617398565b81146173be57600080fd5b50565b6000813590506173d0816173aa565b92915050565b6000602082840312156173ec576173eb616157565b5b60006173fa848285016173c1565b91505092915050565b6000806040838503121561741a57617419616157565b5b6000617428858286016161e0565b9250506020617439858286016161e0565b9150509250929050565b60008060008060008060a087890312156174605761745f616157565b5b600061746e89828a016164bd565b965050602087013567ffffffffffffffff81111561748f5761748e61615c565b5b61749b89828a01617174565b955095505060406174ae89828a016161aa565b93505060606174bf89828a01616965565b92505060806174d089828a01616529565b9150509295509295509295565b600080600080604085870312156174f7576174f6616157565b5b600085013567ffffffffffffffff8111156175155761751461615c565b5b6175218782880161658d565b9450945050602085013567ffffffffffffffff8111156175445761754361615c565b5b6175508782880161658d565b925092505092959194509250565b6000806000806080858703121561757857617577616157565b5b6000617586878288016164bd565b9450506020617597878288016161aa565b93505060406175a8878288016161aa565b92505060606175b987828801616529565b91505092959194509250565b6000806000606084860312156175de576175dd616157565b5b60006175ec868287016164bd565b93505060206175fd868287016164bd565b925050604061760e868287016161aa565b9150509250925092565b6000806040838503121561762f5761762e616157565b5b600061763d858286016164bd565b925050602061764e858286016164bd565b9150509250929050565b60006020828403121561766e5761766d616157565b5b600061767c848285016161aa565b91505092915050565b6000806040838503121561769c5761769b616157565b5b60006176aa858286016161aa565b92505060206176bb858286016161aa565b9150509250929050565b600080600080606085870312156176df576176de616157565b5b600085013567ffffffffffffffff8111156176fd576176fc61615c565b5b6177098782880161658d565b9450945050602061771c878288016161aa565b925050604061772d878288016161aa565b91505092959194509250565b600080600080600060a0868803121561775557617754616157565b5b6000617763888289016161aa565b9550506020617774888289016161aa565b9450506040617785888289016161e0565b9350506060617796888289016161e0565b925050608086013567ffffffffffffffff8111156177b7576177b661615c565b5b6177c388828901616bd4565b9150509295509295909350565b7f455243313135353a2062616c616e636520717565727920666f7220746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b600061782c602b836163da565b9150617837826177d0565b604082019050919050565b6000602082019050818103600083015261785b8161781f565b9050919050565b60006178756178708461689e565b616883565b9050828152602081018484840111156178915761789061681e565b5b61789c8482856163eb565b509392505050565b600082601f8301126178b9576178b861657e565b5b81516178c9848260208601617862565b91505092915050565b6000602082840312156178e8576178e7616157565b5b600082015167ffffffffffffffff8111156179065761790561615c565b5b617912848285016178a4565b91505092915050565b60006040820190506179306000830185616a38565b61793d602083018461628c565b9392505050565b60006040820190506179596000830185616a38565b61796660208301846162ce565b9392505050565b600061797882616161565b9050919050565b6179888161796d565b811461799357600080fd5b50565b6000813590506179a58161797f565b92915050565b600080600080608085870312156179c5576179c4616157565b5b600085013567ffffffffffffffff8111156179e3576179e261615c565b5b6179ef87828801616920565b9450506020617a0087828801617996565b9350506040617a1187828801616d99565b9250506060617a2287828801617996565b91505092959194509250565b6000604082019050617a436000830185616a38565b617a506020830184616a38565b9392505050565b6000604082019050617a6c6000830185616235565b617a79602083018461628c565b9392505050565b600081519050617a8f816161c9565b92915050565b600060208284031215617aab57617aaa616157565b5b6000617ab984828501617a80565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000617afc826162ba565b9150617b07836162ba565b9250828201905067ffffffffffffffff811115617b2757617b26617ac2565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680617b7457607f821691505b602082108103617b8757617b86617b2d565b5b50919050565b600060a082019050617ba26000830188616a38565b617baf6020830187616a38565b617bbc604083018661628c565b617bc9606083018561628c565b617bd660808301846162ce565b9695505050505050565b7f455243313135353a2069647320616e6420616d6f756e7473206c656e6774682060008201527f6d69736d61746368000000000000000000000000000000000000000000000000602082015250565b6000617c3c6028836163da565b9150617c4782617be0565b604082019050919050565b60006020820190508181036000830152617c6b81617c2f565b9050919050565b7f455243313135353a207472616e7366657220746f20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000617cce6025836163da565b9150617cd982617c72565b604082019050919050565b60006020820190508181036000830152617cfd81617cc1565b9050919050565b7f455243313135353a207472616e736665722063616c6c6572206973206e6f742060008201527f6f776e6572206e6f7220617070726f7665640000000000000000000000000000602082015250565b6000617d606032836163da565b9150617d6b82617d04565b604082019050919050565b60006020820190508181036000830152617d8f81617d53565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f455243313135353a20696e73756666696369656e742062616c616e636520666f60008201527f72207472616e7366657200000000000000000000000000000000000000000000602082015250565b6000617e21602a836163da565b9150617e2c82617dc5565b604082019050919050565b60006020820190508181036000830152617e5081617e14565b9050919050565b60006040820190508181036000830152617e718185616fa4565b90508181036020830152617e858184616fa4565b90509392505050565b600081519050617e9d81616193565b92915050565b600060208284031215617eb957617eb8616157565b5b6000617ec784828501617e8e565b91505092915050565b7f455243313135353a206163636f756e747320616e6420696473206c656e67746860008201527f206d69736d617463680000000000000000000000000000000000000000000000602082015250565b6000617f2c6029836163da565b9150617f3782617ed0565b604082019050919050565b60006020820190508181036000830152617f5b81617f1f565b9050919050565b6000604082019050617f77600083018561628c565b617f846020830184616235565b9392505050565b600081519050617f9a81617252565b92915050565b600060208284031215617fb657617fb5616157565b5b6000617fc484828501617f8b565b91505092915050565b6000606082019050617fe2600083018661628c565b617fef602083018561628c565b617ffc6040830184616235565b949350505050565b600081905092915050565b600061801b8385618004565b93506180288385846168cf565b82840190509392505050565b600061804182848661800f565b91508190509392505050565b6000604082019050618062600083018561628c565b61806f602083018461628c565b9392505050565b7f455243313135353a2073657474696e6720617070726f76616c2073746174757360008201527f20666f722073656c660000000000000000000000000000000000000000000000602082015250565b60006180d26029836163da565b91506180dd82618076565b604082019050919050565b60006020820190508181036000830152618101816180c5565b9050919050565b7f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f60008201527f6e74726f6c6c6572000000000000000000000000000000000000000000000000602082015250565b60006181646028836163da565b915061816f82618108565b604082019050919050565b6000602082019050818103600083015261819381618157565b9050919050565b60006060820190506181af6000830186616235565b6181bc602083018561628c565b6181c96040830184616235565b949350505050565b60006040820190506181e6600083018561628c565b6181f360208301846163a5565b9392505050565b600060408201905061820f6000830185616235565b61821c6020830184616235565b9392505050565b60006060820190506182386000830186616a38565b6182456020830185616a38565b618252604083018461628c565b949350505050565b600081519050618269816164a6565b92915050565b60006020828403121561828557618284616157565b5b60006182938482850161825a565b91505092915050565b60006182a883856167b2565b93506182b58385846168cf565b6182be83616415565b840190509392505050565b600060c08201905081810360008301526182e4818a8c61829c565b90506182f3602083018961628c565b61830060408301886162ab565b61830d60608301876162ce565b61831a608083018661628c565b81810360a083015261832d81848661829c565b90509998505050505050505050565b60006080820190506183516000830187616a38565b61835e602083018661628c565b61836b604083018561628c565b61837860608301846162ce565b95945050505050565b600082905092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026183ee7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826183b1565b6183f886836183b1565b95508019841693508086168417925050509392505050565b600061842b618426618421846161bf565b616700565b6161bf565b9050919050565b6000819050919050565b61844583618410565b61845961845182618432565b8484546183be565b825550505050565b600090565b61846e618461565b61847981848461843c565b505050565b5b8181101561849d57618492600082618466565b60018101905061847f565b5050565b601f8211156184e2576184b38161838c565b6184bc846183a1565b810160208510156184cb578190505b6184df6184d7856183a1565b83018261847e565b50505b505050565b600082821c905092915050565b6000618505600019846008026184e7565b1980831691505092915050565b600061851e83836184f4565b9150826002028217905092915050565b6185388383618381565b67ffffffffffffffff81111561855157618550616823565b5b61855b8254617b5c565b6185668282856184a1565b6000601f8311600181146185955760008415618583578287013590505b61858d8582618512565b8655506185f5565b601f1984166185a38661838c565b60005b828110156185cb578489013582556001820191506020850194506020810190506185a6565b868310156185e857848901356185e4601f8916826184f4565b8355505b6001600288020188555050505b50505050505050565b7f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260008201527f20617070726f7665640000000000000000000000000000000000000000000000602082015250565b600061865a6029836163da565b9150618665826185fe565b604082019050919050565b600060208201905081810360008301526186898161864d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006186ec6026836163da565b91506186f782618690565b604082019050919050565b6000602082019050818103600083015261871b816186df565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600061877e6021836163da565b915061878982618722565b604082019050919050565b600060208201905081810360008301526187ad81618771565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000618810603d836163da565b915061881b826187b4565b604082019050919050565b6000602082019050818103600083015261883f81618803565b9050919050565b6000618851826162ba565b915061885c836162ba565b9250828203905067ffffffffffffffff81111561887c5761887b617ac2565b5b92915050565b61888b826167a7565b67ffffffffffffffff8111156188a4576188a3616823565b5b6188ae8254617b5c565b6188b98282856184a1565b600060209050601f8311600181146188ec57600084156188da578287015190505b6188e48582618512565b86555061894c565b601f1984166188fa8661838c565b60005b82811015618922578489015182556001820191506020850194506020810190506188fd565b8683101561893f578489015161893b601f8916826184f4565b8355505b6001600288020188555050505b505050505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061898a6020836163da565b915061899582618954565b602082019050919050565b600060208201905081810360008301526189b98161897d565b9050919050565b6000819050919050565b6189db6189d68261649c565b6189c0565b82525050565b60006189ed82856189ca565b6020820191506189fd82846189ca565b6020820191508190509392505050565b600060a082019050618a22600083018861628c565b618a2f602083018761628c565b8181036040830152618a418186616fa4565b90508181036060830152618a558185616fa4565b90508181036080830152618a6981846167c3565b90509695505050505050565b600081519050618a8481616340565b92915050565b600060208284031215618aa057618a9f616157565b5b6000618aae84828501618a75565b91505092915050565b60008160e01c9050919050565b600060033d1115618ae35760046000803e618ae0600051618ab7565b90505b90565b600060443d10618b7357618af861614d565b60043d036004823e80513d602482011167ffffffffffffffff82111715618b20575050618b73565b808201805167ffffffffffffffff811115618b3e5750505050618b73565b80602083010160043d038501811115618b5b575050505050618b73565b618b6a82602001850186616852565b82955050505050505b90565b7f455243313135353a207472616e7366657220746f206e6f6e204552433131353560008201527f526563656976657220696d706c656d656e746572000000000000000000000000602082015250565b6000618bd26034836163da565b9150618bdd82618b76565b604082019050919050565b60006020820190508181036000830152618c0181618bc5565b9050919050565b7f455243313135353a204552433131353552656365697665722072656a6563746560008201527f6420746f6b656e73000000000000000000000000000000000000000000000000602082015250565b6000618c646028836163da565b9150618c6f82618c08565b604082019050919050565b60006020820190508181036000830152618c9381618c57565b9050919050565b60006080820190508181036000830152618cb481876167c3565b9050618cc3602083018661628c565b618cd060408301856162ab565b618cdd60608301846162ce565b95945050505050565b6000618cf1826161bf565b9150618cfc836161bf565b9250828203905081811115618d1457618d13617ac2565b5b92915050565b7f6e616d65686173683a204a756e6b20617420656e64206f66206e616d65000000600082015250565b6000618d50601d836163da565b9150618d5b82618d1a565b602082019050919050565b60006020820190508181036000830152618d7f81618d43565b9050919050565b6000819050919050565b6000618dab618da6618da184618d86565b616700565b6161bf565b9050919050565b618dbb81618d90565b82525050565b6000604082019050618dd66000830185616235565b618de36020830184618db2565b9392505050565b7f726561644c6162656c3a20496e646578206f7574206f6620626f756e64730000600082015250565b6000618e20601e836163da565b9150618e2b82618dea565b602082019050919050565b60006020820190508181036000830152618e4f81618e13565b9050919050565b6000618e61826161bf565b9150618e6c836161bf565b9250828201905080821115618e8457618e83617ac2565b5b92915050565b600060ff82169050919050565b60008160f81b9050919050565b6000618eaf82618e97565b9050919050565b618ec7618ec282618e8a565b618ea4565b82525050565b600081905092915050565b6000618ee3826163cf565b618eed8185618ecd565b9350618efd8185602086016163eb565b80840191505092915050565b6000618f14826167a7565b618f1e8185618004565b9350618f2e8185602086016163eb565b80840191505092915050565b6000618f468286618eb6565b600182019150618f568285618ed8565b9150618f628284618f09565b9150819050949350505050565b600060a082019050618f84600083018861628c565b618f91602083018761628c565b618f9e6040830186616235565b618fab6060830185616235565b8181036080830152618fbd81846167c3565b90509695505050505050565b7f455243313135353a206d696e74206f66206578697374696e6720746f6b656e00600082015250565b6000618fff601f836163da565b915061900a82618fc9565b602082019050919050565b6000602082019050818103600083015261902e81618ff2565b9050919050565b7f455243313135353a206d696e7420746f20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006190916021836163da565b915061909c82619035565b604082019050919050565b600060208201905081810360008301526190c081619084565b9050919050565b7f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060008201527f4e616d655772617070657220636f6e7472616374000000000000000000000000602082015250565b60006191236034836163da565b915061912e826190c7565b604082019050919050565b6000602082019050818103600083015261915281619116565b905091905056fea26469706673582212206cca2714ad798ebccb9d77630ae621bcfe24d874cccd2e65aaefd2678512999464736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x29F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6352211E GT PUSH2 0x167 JUMPI DUP1 PUSH4 0xC93AB3FD GT PUSH2 0xCE JUMPI DUP1 PUSH4 0xE985E9C5 GT PUSH2 0x87 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x8DC JUMPI DUP1 PUSH4 0xEB8AE530 EQ PUSH2 0x90C JUMPI DUP1 PUSH4 0xED70554D EQ PUSH2 0x928 JUMPI DUP1 PUSH4 0xF242432A EQ PUSH2 0x958 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x974 JUMPI DUP1 PUSH4 0xFD0CD0D9 EQ PUSH2 0x990 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xC93AB3FD EQ PUSH2 0x80C JUMPI DUP1 PUSH4 0xCF408823 EQ PUSH2 0x828 JUMPI DUP1 PUSH4 0xD8C9921A EQ PUSH2 0x844 JUMPI DUP1 PUSH4 0xD9A50C12 EQ PUSH2 0x860 JUMPI DUP1 PUSH4 0xDA8C229E EQ PUSH2 0x890 JUMPI DUP1 PUSH4 0xE0DBA60F EQ PUSH2 0x8C0 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xA22CB465 GT PUSH2 0x120 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x714 JUMPI DUP1 PUSH4 0xA4014982 EQ PUSH2 0x730 JUMPI DUP1 PUSH4 0xADF4960A EQ PUSH2 0x760 JUMPI DUP1 PUSH4 0xB6BCAD26 EQ PUSH2 0x790 JUMPI DUP1 PUSH4 0xC475ABFF EQ PUSH2 0x7AC JUMPI DUP1 PUSH4 0xC658E086 EQ PUSH2 0x7DC JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x6352211E EQ PUSH2 0x640 JUMPI DUP1 PUSH4 0x6E5D6AD2 EQ PUSH2 0x670 JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x6A0 JUMPI DUP1 PUSH4 0x8B4DFA75 EQ PUSH2 0x6AA JUMPI DUP1 PUSH4 0x8CF8B41E EQ PUSH2 0x6C6 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6F6 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x1F4E1504 GT PUSH2 0x20B JUMPI DUP1 PUSH4 0x3F15457F GT PUSH2 0x1C4 JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x558 JUMPI DUP1 PUSH4 0x402906FC EQ PUSH2 0x576 JUMPI DUP1 PUSH4 0x41415EAB EQ PUSH2 0x5A6 JUMPI DUP1 PUSH4 0x4E1273F4 EQ PUSH2 0x5D6 JUMPI DUP1 PUSH4 0x53095467 EQ PUSH2 0x606 JUMPI DUP1 PUSH4 0x5D3590D5 EQ PUSH2 0x624 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0x1F4E1504 EQ PUSH2 0x484 JUMPI DUP1 PUSH4 0x20C38E2B EQ PUSH2 0x4A2 JUMPI DUP1 PUSH4 0x24C1AF44 EQ PUSH2 0x4D2 JUMPI DUP1 PUSH4 0x2B20E397 EQ PUSH2 0x502 JUMPI DUP1 PUSH4 0x2EB2C2D6 EQ PUSH2 0x520 JUMPI DUP1 PUSH4 0x33C69EA9 EQ PUSH2 0x53C JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH4 0xE4CD725 GT PUSH2 0x25D JUMPI DUP1 PUSH4 0xE4CD725 EQ PUSH2 0x3A0 JUMPI DUP1 PUSH4 0xE89341C EQ PUSH2 0x3D0 JUMPI DUP1 PUSH4 0x14AB9038 EQ PUSH2 0x400 JUMPI DUP1 PUSH4 0x150B7A02 EQ PUSH2 0x41C JUMPI DUP1 PUSH4 0x1534E177 EQ PUSH2 0x44C JUMPI DUP1 PUSH4 0x1896F70A EQ PUSH2 0x468 JUMPI PUSH2 0x29F JUMP JUMPDEST DUP1 PUSH3 0xFDD58E EQ PUSH2 0x2A4 JUMPI DUP1 PUSH4 0x178FE3F EQ PUSH2 0x2D4 JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x306 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x336 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x354 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x384 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2BE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x61F5 JUMP JUMPDEST PUSH2 0x9C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CB SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2E9 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xA86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2FD SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x62DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x320 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x31B SWAP2 SWAP1 PUSH2 0x636C JUMP JUMPDEST PUSH2 0xABA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33E PUSH2 0xB9C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34B SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x36E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x369 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xBD5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x37B SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x39E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x399 SWAP2 SWAP1 PUSH2 0x61F5 JUMP JUMPDEST PUSH2 0xC33 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B5 SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0xCA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E5 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0xD5F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F7 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x415 SWAP2 SWAP1 PUSH2 0x653E JUMP JUMPDEST PUSH2 0xE09 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x436 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x431 SWAP2 SWAP1 PUSH2 0x65E3 JUMP JUMPDEST PUSH2 0xF4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x443 SWAP2 SWAP1 PUSH2 0x667A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x466 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x461 SWAP2 SWAP1 PUSH2 0x66D3 JUMP JUMPDEST PUSH2 0x11B3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x482 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x47D SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0x11FF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x48C PUSH2 0x1344 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x499 SWAP2 SWAP1 PUSH2 0x675F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4BC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B7 SWAP2 SWAP1 PUSH2 0x677A JUMP JUMPDEST PUSH2 0x136A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4C9 SWAP2 SWAP1 PUSH2 0x67FC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4EC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4E7 SWAP2 SWAP1 PUSH2 0x697A JUMP JUMPDEST PUSH2 0x140A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4F9 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x50A PUSH2 0x1602 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x517 SWAP2 SWAP1 PUSH2 0x6A83 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x53A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x535 SWAP2 SWAP1 PUSH2 0x6C02 JUMP JUMPDEST PUSH2 0x1626 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x556 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x551 SWAP2 SWAP1 PUSH2 0x6CD1 JUMP JUMPDEST PUSH2 0x18EB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x560 PUSH2 0x1BB1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x6D59 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x590 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x6DAE JUMP JUMPDEST PUSH2 0x1BD5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59D SWAP2 SWAP1 PUSH2 0x6DEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5BB SWAP2 SWAP1 PUSH2 0x64D2 JUMP JUMPDEST PUSH2 0x1CC1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5CD SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5F0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5EB SWAP2 SWAP1 PUSH2 0x6ECC JUMP JUMPDEST PUSH2 0x1D37 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5FD SWAP2 SWAP1 PUSH2 0x7002 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x60E PUSH2 0x1E4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61B SWAP2 SWAP1 PUSH2 0x7045 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x63E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x639 SWAP2 SWAP1 PUSH2 0x7060 JUMP JUMPDEST PUSH2 0x1E70 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x65A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x655 SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0x1EFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x667 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x68A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x685 SWAP2 SWAP1 PUSH2 0x70B3 JUMP JUMPDEST PUSH2 0x1F0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6A8 PUSH2 0x20A8 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x7121 JUMP JUMPDEST PUSH2 0x20BC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6DB SWAP2 SWAP1 PUSH2 0x71CA JUMP JUMPDEST PUSH2 0x2274 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6FE PUSH2 0x26A0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70B SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x72E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x729 SWAP2 SWAP1 PUSH2 0x727E JUMP JUMPDEST PUSH2 0x26C9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x74A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x745 SWAP2 SWAP1 PUSH2 0x72BE JUMP JUMPDEST PUSH2 0x2834 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x757 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x775 SWAP2 SWAP1 PUSH2 0x7358 JUMP JUMPDEST PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x787 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7A5 SWAP2 SWAP1 PUSH2 0x73D6 JUMP JUMPDEST PUSH2 0x2A1E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7C6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7C1 SWAP2 SWAP1 PUSH2 0x7403 JUMP JUMPDEST PUSH2 0x2DD8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7D3 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7F6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7F1 SWAP2 SWAP1 PUSH2 0x7443 JUMP JUMPDEST PUSH2 0x3130 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x803 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x826 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x821 SWAP2 SWAP1 PUSH2 0x74DD JUMP JUMPDEST PUSH2 0x333D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x842 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x83D SWAP2 SWAP1 PUSH2 0x755E JUMP JUMPDEST PUSH2 0x3547 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x85E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x859 SWAP2 SWAP1 PUSH2 0x75C5 JUMP JUMPDEST PUSH2 0x3779 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x87A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x875 SWAP2 SWAP1 PUSH2 0x7618 JUMP JUMPDEST PUSH2 0x38ED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x887 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8A5 SWAP2 SWAP1 PUSH2 0x7658 JUMP JUMPDEST PUSH2 0x3A1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8B7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8DA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8D5 SWAP2 SWAP1 PUSH2 0x727E JUMP JUMPDEST PUSH2 0x3A3D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x8F6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8F1 SWAP2 SWAP1 PUSH2 0x7685 JUMP JUMPDEST PUSH2 0x3AEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x903 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x926 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x921 SWAP2 SWAP1 PUSH2 0x76C5 JUMP JUMPDEST PUSH2 0x3B82 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x942 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x93D SWAP2 SWAP1 PUSH2 0x625F JUMP JUMPDEST PUSH2 0x402C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x94F SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x972 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x96D SWAP2 SWAP1 PUSH2 0x7739 JUMP JUMPDEST PUSH2 0x4044 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x98E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x989 SWAP2 SWAP1 PUSH2 0x7658 JUMP JUMPDEST PUSH2 0x4146 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9A5 SWAP2 SWAP1 PUSH2 0x677A JUMP JUMPDEST PUSH2 0x41C9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9B7 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA30 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA27 SWAP1 PUSH2 0x7842 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xA3B DUP4 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA7A JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0xA80 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xA94 DUP5 PUSH2 0x42C5 JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP5 POP DUP3 SWAP6 POP POP POP POP PUSH2 0xAAB DUP4 DUP4 DUP4 PUSH2 0x42FA JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP5 POP POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD82C42D800000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0xB85 JUMPI POP PUSH32 0x150B7A0200000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0xB95 JUMPI POP PUSH2 0xB94 DUP3 PUSH2 0x4342 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4E616D6557726170706572000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xBE1 DUP4 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xC21 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0xC2E JUMP JUMPDEST PUSH2 0xC2A DUP4 PUSH2 0x4424 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC3E DUP3 PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x40 PUSH4 0xFFFFFFFF AND PUSH1 0x40 DUP3 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0xC99 JUMPI DUP2 PUSH1 0x0 SHL PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC90 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCA3 DUP4 DUP4 PUSH2 0x4461 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xCBA DUP7 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD00 JUMPI POP PUSH2 0xCFF DUP4 DUP7 PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xD41 JUMPI POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD29 DUP8 PUSH1 0x0 SHR PUSH2 0xBD5 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST DUP1 ISZERO PUSH2 0xD54 JUMPI POP PUSH2 0xD52 DUP3 DUP3 PUSH2 0x456A JUMP JUMPDEST ISZERO JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x5 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE89341C DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDBC SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDD9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE02 SWAP2 SWAP1 PUSH2 0x78D2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH2 0xE14 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0xE57 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE4E SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 PUSH1 0x10 PUSH1 0x0 PUSH2 0xE68 DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0xEB9 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEB0 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x14AB9038 DUP8 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF14 SWAP3 SWAP2 SWAP1 PUSH2 0x7944 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF2E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xF42 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xFD5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x1931A53800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP7 DUP7 DUP2 ADD SWAP1 PUSH2 0xFEA SWAP2 SWAP1 PUSH2 0x79AB JUMP JUMPDEST SWAP4 POP SWAP4 POP SWAP4 POP SWAP4 POP PUSH1 0x0 DUP9 PUSH1 0x0 SHL SWAP1 POP PUSH1 0x0 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP DUP2 DUP2 EQ PUSH2 0x104C JUMPI DUP1 DUP3 PUSH1 0x40 MLOAD PUSH32 0xC65C3CCC00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1043 SWAP3 SWAP2 SWAP1 PUSH2 0x7A2E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x28ED4F6C DUP4 PUSH1 0x0 SHR ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10AA SWAP3 SWAP2 SWAP1 PUSH2 0x7A57 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x10C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x10D8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x0 PUSH3 0x76A700 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD6E4FA86 DUP14 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x113B SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1158 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x117C SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST PUSH2 0x1186 SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP1 POP PUSH2 0x1199 DUP8 DUP8 DUP8 PUSH2 0xFFFF AND DUP5 DUP9 PUSH2 0x45AE JUMP JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL SWAP8 POP POP POP POP POP POP POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x11BB PUSH2 0x4732 JUMP JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST DUP2 PUSH2 0x120A DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x124D JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1244 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 PUSH1 0x8 PUSH1 0x0 PUSH2 0x125E DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x12AF JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A6 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP8 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x130A SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1324 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1338 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP DUP1 SLOAD PUSH2 0x1389 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x13B5 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1402 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13D7 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1402 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x13E5 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP8 PUSH2 0x1417 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x145A JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1451 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP9 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH2 0x1470 DUP11 DUP3 PUSH2 0x47B0 JUMP JUMPDEST SWAP3 POP PUSH2 0x147C DUP11 DUP5 PUSH2 0x47E3 JUMP JUMPDEST PUSH2 0x1486 DUP4 DUP7 PUSH2 0x49D8 JUMP JUMPDEST PUSH2 0x1491 DUP11 DUP5 DUP12 PUSH2 0x4A36 JUMP JUMPDEST POP PUSH2 0x149E DUP11 DUP5 DUP8 DUP8 PUSH2 0x4B0D JUMP JUMPDEST SWAP4 POP PUSH2 0x14A9 DUP4 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x1553 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 DUP12 DUP4 ADDRESS DUP12 DUP12 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150E SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7B8D JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1528 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x153C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x154E DUP11 DUP5 DUP12 DUP12 DUP10 DUP10 PUSH2 0x4C6B JUMP JUMPDEST PUSH2 0x15F5 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5EF2C7F0 DUP12 DUP4 ADDRESS DUP12 DUP12 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7B8D JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x15CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x15E2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x15F4 DUP11 DUP5 DUP12 DUP12 DUP10 DUP10 PUSH2 0x4D2A JUMP JUMPDEST JUMPDEST POP POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP2 MLOAD DUP4 MLOAD EQ PUSH2 0x166A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1661 SWAP1 PUSH2 0x7C52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x16D9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16D0 SWAP1 PUSH2 0x7CE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1719 JUMPI POP PUSH2 0x1718 DUP6 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x1758 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x174F SWAP1 PUSH2 0x7D76 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x1857 JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1779 JUMPI PUSH2 0x1778 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1798 JUMPI PUSH2 0x1797 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x17B0 DUP6 PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x17C1 DUP6 DUP4 DUP4 PUSH2 0x4EB3 JUMP JUMPDEST PUSH1 0x1 DUP5 EQ DUP1 ISZERO PUSH2 0x17FC JUMPI POP DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST PUSH2 0x183B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1832 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1847 DUP6 DUP12 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST POP POP POP POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x175B JUMP JUMPDEST POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x18CE SWAP3 SWAP2 SWAP1 PUSH2 0x7E57 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x18E4 CALLER DUP7 DUP7 DUP7 DUP7 DUP7 PUSH2 0x5034 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18F7 DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH2 0x1903 DUP2 DUP5 PUSH2 0x49D8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1914 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1A1A JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19C0 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x19DD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1A01 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x1A51 JUMPI PUSH1 0x40 MLOAD PUSH32 0x5374B59900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1A60 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP PUSH1 0x0 DUP1 SHL DUP11 SUB PUSH2 0x1AC1 JUMPI PUSH2 0x1A79 DUP7 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1ABC JUMPI DUP6 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AB3 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1B0F JUMP JUMPDEST PUSH2 0x1ACB DUP11 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1B0E JUMPI DUP10 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B05 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x1B1A DUP7 DUP10 DUP5 PUSH2 0x520B JUMP JUMPDEST PUSH2 0x1B25 DUP8 DUP5 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP7 POP PUSH1 0x0 PUSH3 0x10000 DUP6 AND PUSH4 0xFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x1B51 JUMPI POP DUP4 PUSH4 0xFFFFFFFF AND DUP9 DUP6 OR PUSH4 0xFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x1B93 JUMPI DUP6 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B8A SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP9 OR SWAP8 POP PUSH2 0x1BA5 DUP7 DUP7 DUP11 DUP7 DUP12 PUSH2 0x52CE JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x1BE2 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x1C25 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1C1C SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x2 PUSH1 0x0 PUSH2 0x1C36 DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x1C87 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1C7E SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1C98 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x1CB1 DUP11 DUP5 DUP5 DUP13 PUSH2 0xFFFF AND OR DUP5 DUP6 PUSH2 0x52CE JUMP JUMPDEST DUP2 SWAP8 POP POP POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x1CD3 DUP7 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x1D19 JUMPI POP PUSH2 0x1D18 DUP4 DUP7 PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST DUP1 ISZERO PUSH2 0x1D2C JUMPI POP PUSH2 0x1D2A DUP3 DUP3 PUSH2 0x456A JUMP JUMPDEST ISZERO JUMPDEST SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MLOAD DUP4 MLOAD EQ PUSH2 0x1D7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D74 SWAP1 PUSH2 0x7F42 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP4 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D9A JUMPI PUSH2 0x1D99 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1DC8 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x1E3F JUMPI PUSH2 0x1E15 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1DED JUMPI PUSH2 0x1DEC PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1E08 JUMPI PUSH2 0x1E07 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x9C0 JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1E28 JUMPI PUSH2 0x1E27 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x1 ADD SWAP1 POP PUSH2 0x1DCE JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0x1E78 PUSH2 0x4732 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EB3 SWAP3 SWAP2 SWAP1 PUSH2 0x7F62 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1ED2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1EF6 SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F07 DUP3 PUSH2 0x536E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1F1B DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH2 0x1F26 DUP2 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x1F5C JUMPI PUSH1 0x40 MLOAD PUSH32 0x5374B59900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1F68 DUP7 CALLER PUSH2 0xCA8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO DUP1 ISZERO PUSH2 0x1F7F JUMPI POP PUSH2 0x1F7D DUP3 CALLER PUSH2 0x1CC1 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x1FC3 JUMPI DUP2 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1FBA SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1FD4 DUP6 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP4 ISZERO DUP1 ISZERO PUSH2 0x1FF3 JUMPI POP PUSH1 0x0 PUSH3 0x40000 DUP4 AND PUSH4 0xFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x2035 JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x202C SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2043 DUP11 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0x2052 DUP9 DUP4 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP8 POP PUSH2 0x2060 DUP7 DUP6 DUP6 DUP12 PUSH2 0x5387 JUMP JUMPDEST DUP6 PUSH32 0xF675815A0817338F93A7DA433F6BD5F5542F1029B11B455191AC96C7F6A9B132 DUP10 PUSH1 0x40 MLOAD PUSH2 0x2090 SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP8 SWAP7 POP POP POP POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x20B0 PUSH2 0x4732 JUMP JUMPDEST PUSH2 0x20BA PUSH1 0x0 PUSH2 0x53A6 JUMP JUMPDEST JUMP JUMPDEST PUSH2 0x20E9 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP5 PUSH2 0x47B0 JUMP JUMPDEST PUSH2 0x20F3 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x2136 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x212D SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x21A6 JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x219D SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x21DC PUSH2 0x21D6 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP7 PUSH2 0x47B0 JUMP JUMPDEST DUP4 PUSH2 0x546A JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x42842E0E ADDRESS DUP6 DUP8 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x223C SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7FCD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2256 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x226A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x2287 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH1 0x0 SHR SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x22EF SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x230C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2330 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x2407 JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x23C4 SWAP3 SWAP2 SWAP1 PUSH2 0x804D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x23E1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2405 SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x247A JUMPI PUSH2 0x243C PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP4 PUSH1 0x0 SHL PUSH2 0x47B0 JUMP JUMPDEST CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2471 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x23B872DD DUP3 ADDRESS DUP6 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x24D7 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7FCD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x24F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2505 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x28ED4F6C DUP4 ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2564 SWAP3 SWAP2 SWAP1 PUSH2 0x7A57 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x257E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2592 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH3 0x76A700 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD6E4FA86 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x25F3 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2610 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2634 SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST PUSH2 0x263E SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP3 POP PUSH2 0x2695 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP8 DUP8 PUSH2 0xFFFF AND DUP7 DUP9 PUSH2 0x45AE JUMP JUMPDEST POP POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x2737 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x272E SWAP1 PUSH2 0x80E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x2828 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x28C2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x28B9 SWAP1 PUSH2 0x817A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x28D4 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH1 0x0 SHR SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFCA247AC DUP3 ADDRESS DUP9 PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x293E SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x819A JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2981 SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST SWAP2 POP PUSH2 0x29E6 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP8 DUP6 PUSH2 0xFFFF AND PUSH3 0x76A700 DUP7 PUSH2 0x29E0 SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST DUP9 PUSH2 0x45AE JUMP JUMPDEST POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2A00 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP DUP3 PUSH4 0xFFFFFFFF AND DUP4 DUP3 AND PUSH4 0xFFFFFFFF AND EQ SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2A26 PUSH2 0x4732 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2BDD JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AFA SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2B14 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2B28 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BAA SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2BC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2BD8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP1 PUSH1 0x7 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2DD5 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2CF2 SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2D0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2D20 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA22CB465 PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DA2 SWAP3 SWAP2 SWAP1 PUSH2 0x81D1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2DD0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x2E66 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5D SWAP1 PUSH2 0x817A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2E98 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP6 PUSH1 0x0 SHL PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC475ABFF DUP7 DUP7 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2EF7 SWAP3 SWAP2 SWAP1 PUSH2 0x81FA JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2F16 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F3A SWAP2 SWAP1 PUSH2 0x7A95 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP7 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F95 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2FCF JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2FCC SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x2FDD JUMPI DUP1 SWAP3 POP POP POP PUSH2 0x312A JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 PUSH2 0x30DD JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3083 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x30A0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x30C4 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x30ED JUMPI DUP2 SWAP4 POP POP POP POP PUSH2 0x312A JUMP JUMPDEST POP PUSH1 0x0 PUSH3 0x76A700 DUP3 PUSH2 0x30FF SWAP2 SWAP1 PUSH2 0x7AF1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH2 0x3110 DUP6 PUSH1 0x0 SHR PUSH2 0x42C5 JUMP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x3121 DUP6 DUP4 DUP4 DUP7 PUSH2 0x5387 JUMP JUMPDEST DUP4 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP7 PUSH2 0x313D DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x3180 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3177 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH2 0x3192 SWAP3 SWAP2 SWAP1 PUSH2 0x8034 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 SWAP1 POP PUSH2 0x31A6 DUP10 DUP3 PUSH2 0x47B0 JUMP JUMPDEST SWAP3 POP PUSH2 0x31B2 DUP10 DUP5 PUSH2 0x47E3 JUMP JUMPDEST PUSH2 0x31BC DUP4 DUP7 PUSH2 0x49D8 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320D DUP11 DUP6 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4A36 JUMP JUMPDEST SWAP1 POP PUSH2 0x321B DUP11 DUP6 DUP9 DUP9 PUSH2 0x4B0D JUMP JUMPDEST SWAP5 POP PUSH2 0x3226 DUP5 PUSH2 0x4B57 JUMP JUMPDEST PUSH2 0x32DD JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6AB5923 DUP12 DUP5 ADDRESS PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3287 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8223 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x32A6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x32CA SWAP2 SWAP1 PUSH2 0x826F JUMP JUMPDEST POP PUSH2 0x32D8 DUP5 DUP3 DUP10 DUP10 DUP10 PUSH2 0x558C JUMP JUMPDEST PUSH2 0x3330 JUMP JUMPDEST PUSH2 0x332F DUP11 DUP6 DUP12 DUP12 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP11 DUP11 DUP11 PUSH2 0x4D2A JUMP JUMPDEST JUMPDEST POP POP POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3397 PUSH1 0x0 DUP7 DUP7 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x3421 JUMPI PUSH1 0x40 MLOAD PUSH32 0x24C1D6D400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x342B DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x346E JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3465 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x347F DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH2 0x3493 DUP6 PUSH1 0x0 SHR PUSH2 0xBD5 JUMP JUMPDEST SWAP1 POP PUSH2 0x34A1 DUP6 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9198C276 DUP11 DUP11 DUP8 DUP8 DUP8 DUP8 DUP15 DUP15 PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x350A SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x82C9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3524 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3538 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 PUSH2 0x3552 DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x3595 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x358C SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x10 PUSH1 0x8 PUSH1 0x4 OR OR PUSH1 0x0 PUSH2 0x35AC DUP4 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 DUP3 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x35FD JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x35F4 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCF408823 DUP10 ADDRESS DUP10 DUP10 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x365C SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x833C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3676 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x368A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x373D JUMPI PUSH1 0x0 PUSH2 0x36D0 DUP10 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP3 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x372C JUMPI DUP8 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3723 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3737 DUP10 PUSH1 0x0 PUSH2 0x546A JUMP JUMPDEST POP PUSH2 0x376F JUMP JUMPDEST PUSH1 0x0 PUSH2 0x374B DUP10 PUSH1 0x0 SHR PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP PUSH2 0x376D DUP2 DUP10 DUP12 PUSH1 0x0 SHR PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5781 JUMP JUMPDEST POP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x3783 DUP4 DUP4 PUSH2 0x47B0 JUMP JUMPDEST PUSH2 0x378D DUP2 CALLER PUSH2 0x1CC1 JUMP JUMPDEST PUSH2 0x37D0 JUMPI DUP1 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x37C7 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP5 SUB PUSH2 0x382C JUMPI PUSH1 0x40 MLOAD PUSH32 0x615A470300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x3892 JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x38D4 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0x5949361A00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38CB SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x38E7 PUSH2 0x38E1 DUP6 DUP6 PUSH2 0x47B0 JUMP JUMPDEST DUP4 PUSH2 0x546A JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x38FA DUP5 DUP5 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3907 DUP3 PUSH2 0x4B57 JUMP JUMPDEST SWAP1 POP PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP6 EQ PUSH2 0x393D JUMPI DUP1 SWAP3 POP POP POP PUSH2 0x3A17 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP6 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3999 SWAP2 SWAP1 PUSH2 0x6244 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x39D3 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x39D0 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x39E2 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0x3A17 JUMP JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP4 POP POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH2 0x3A45 PUSH2 0x4732 JUMP JUMPDEST DUP1 PUSH1 0x4 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x4C97694570A07277810AF7E5669FFD5F6A2D6B74B6E9A274B8B870FD5114CF87 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AE2 SWAP2 SWAP1 PUSH2 0x63B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3BDD PUSH1 0x0 DUP8 DUP8 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x58F8 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x3C3A DUP3 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3C48 DUP3 DUP6 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP DUP8 DUP8 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 DUP3 PUSH2 0x3C6C SWAP3 SWAP2 SWAP1 PUSH2 0x852E JUMP JUMPDEST POP PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP3 SUB PUSH2 0x3CC9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x615A470300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D24 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3D41 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3D65 SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST SWAP1 POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x3E3C JUMPI POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xE985E9C5 DUP3 CALLER PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3DF9 SWAP3 SWAP2 SWAP1 PUSH2 0x804D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3E16 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3E3A SWAP2 SWAP1 PUSH2 0x7FA0 JUMP JUMPDEST ISZERO JUMPDEST ISZERO PUSH2 0x3E80 JUMPI DUP2 CALLER PUSH1 0x40 MLOAD PUSH32 0xB455AAE800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E77 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3F42 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP4 DUP9 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F0F SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3F29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3F3D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5B0FC9C3 DUP4 ADDRESS PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F9D SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3FB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3FCB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x4021 DUP3 DUP11 DUP11 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP10 PUSH1 0x0 DUP1 PUSH2 0x558C JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x40B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x40AA SWAP1 PUSH2 0x7CE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x40F3 JUMPI POP PUSH2 0x40F2 DUP6 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x4132 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4129 SWAP1 PUSH2 0x8670 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x413F DUP6 DUP6 DUP6 DUP6 DUP6 PUSH2 0x5781 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x414E PUSH2 0x4732 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x41BD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x41B4 SWAP1 PUSH2 0x8702 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x41C6 DUP2 PUSH2 0x53A6 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x41EA SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4216 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4263 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4238 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4263 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4246 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x427D JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x42C0 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x4294 PUSH1 0x0 DUP5 PUSH2 0x58F8 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x42AD DUP3 DUP6 PUSH2 0x55DD SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0x42B9 DUP2 DUP5 PUSH2 0x38ED JUMP JUMPDEST SWAP5 POP POP POP POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP DUP1 SWAP4 POP PUSH1 0xC0 DUP2 SWAP1 SHR SWAP2 POP PUSH1 0xA0 DUP2 SWAP1 SHR SWAP3 POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 TIMESTAMP DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x4334 JUMPI PUSH3 0x10000 PUSH4 0xFFFFFFFF AND PUSH3 0x10000 DUP6 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x432F JUMPI PUSH1 0x0 SWAP5 POP JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP5 DUP5 SWAP2 POP SWAP2 POP SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xD9B67A2600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x440D JUMPI POP PUSH32 0xE89341C00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x441D JUMPI POP PUSH2 0x441C DUP3 PUSH2 0x59B6 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x446C DUP3 PUSH2 0x1EFC JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x44DC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x44D3 SWAP1 PUSH2 0x8794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x451C JUMPI POP PUSH2 0x451B DUP2 CALLER PUSH2 0x3AEE JUMP JUMPDEST JUMPDEST PUSH2 0x455B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4552 SWAP1 PUSH2 0x8826 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4565 DUP4 DUP4 PUSH2 0x5A20 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ DUP1 ISZERO PUSH2 0x45A6 JUMPI POP TIMESTAMP PUSH3 0x76A700 DUP4 PUSH2 0x459A SWAP2 SWAP1 PUSH2 0x8846 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND LT JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH1 0x0 PUSH2 0x45E9 PUSH32 0x93CDEB708B7545DC668EB9280176169D1C33CFD8ED6F04690A0BCC88A93FC4AE PUSH1 0x0 SHL DUP4 PUSH2 0x47B0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x462C DUP9 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x365746800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x464E SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP PUSH2 0x4666 DUP3 DUP3 DUP10 PUSH3 0x20000 PUSH3 0x10000 DUP12 OR OR DUP10 PUSH2 0x558C JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x4728 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1896F70A DUP4 DUP7 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x46F5 SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x470F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x4723 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x473A PUSH2 0x5B8B JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x4758 PUSH2 0x26A0 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x47AE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x47A5 SWAP1 PUSH2 0x89A0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x47C5 SWAP3 SWAP2 SWAP1 PUSH2 0x89E1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x47F4 DUP5 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 TIMESTAMP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT SWAP1 POP DUP1 DUP1 ISZERO PUSH2 0x4914 JUMPI POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x4913 JUMPI POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP8 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x48BA SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x48D7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x48FB SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST JUMPDEST ISZERO PUSH2 0x497F JUMPI PUSH1 0x0 PUSH2 0x4927 DUP8 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 PUSH1 0x20 DUP3 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4979 JUMPI DUP6 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4970 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x49D0 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x10000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x49CF JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x49C6 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH4 0xFFFDFFFF PUSH4 0xFFFFFFFF AND PUSH4 0xFFFDFFFF DUP3 OR PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4A32 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4A29 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x4ADF DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4A5C SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4A88 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4AD5 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4AAA JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4AD5 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4AB8 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x4B01 SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x4B1C DUP6 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP POP POP PUSH1 0x0 DUP1 PUSH2 0x4B2F DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP PUSH2 0x4B3F DUP8 DUP8 DUP5 PUSH2 0x520B JUMP JUMPDEST PUSH2 0x4B4A DUP6 DUP5 DUP4 PUSH2 0x5282 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x4B7C DUP4 PUSH1 0x0 SHR PUSH2 0x1EFC JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x4C64 JUMPI POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4C0B SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4C28 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4C4C SWAP2 SWAP1 PUSH2 0x7EA3 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D12 DUP6 PUSH1 0x6 PUSH1 0x0 DUP11 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4C8F SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4CBB SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4D08 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4CDD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4D08 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4CEB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP PUSH2 0x4D21 DUP7 DUP3 DUP7 DUP7 DUP7 PUSH2 0x558C JUMP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x4D3B DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 PUSH2 0x4DE8 DUP9 PUSH1 0x6 PUSH1 0x0 DUP14 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4D65 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4D91 SWAP1 PUSH2 0x7B5C JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4DDE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4DB3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4DDE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4DC1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0x5AD9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x4E0A SWAP1 PUSH2 0x7B5C JUMP JUMPDEST SWAP1 POP SUB PUSH2 0x4E33 JUMPI DUP1 PUSH1 0x6 PUSH1 0x0 DUP12 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP2 PUSH2 0x4E31 SWAP2 SWAP1 PUSH2 0x8882 JUMP JUMPDEST POP JUMPDEST PUSH2 0x4E42 DUP10 DUP6 DUP9 DUP7 OR DUP6 DUP10 PUSH2 0x52CE JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x4E86 JUMPI PUSH2 0x4E81 DUP10 PUSH1 0x0 PUSH2 0x546A JUMP JUMPDEST PUSH2 0x4EA7 JUMP JUMPDEST PUSH2 0x4EA6 DUP5 DUP9 DUP12 PUSH1 0x0 SHR PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5781 JUMP JUMPDEST JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH3 0x20000 PUSH4 0xFFFFFFFF AND PUSH3 0x20000 DUP4 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x4EE0 JUMPI PUSH3 0x76A700 DUP2 PUSH2 0x4EDD SWAP2 SWAP1 PUSH2 0x8846 JUMP JUMPDEST SWAP1 POP JUMPDEST TIMESTAMP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x4F45 JUMPI PUSH1 0x0 PUSH3 0x10000 DUP4 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4F40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F37 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4F97 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 DUP4 AND PUSH4 0xFFFFFFFF AND EQ PUSH2 0x4F96 JUMPI DUP3 PUSH1 0x0 SHL PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4F8D SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 AND PUSH4 0xFFFFFFFF AND SUB PUSH2 0x4FDF JUMPI PUSH1 0x3 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xC0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHL PUSH1 0xA0 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHL DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND OR OR PUSH1 0x1 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH2 0x5053 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5B93 JUMP JUMPDEST ISZERO PUSH2 0x5203 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xBC197C81 DUP8 DUP8 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5099 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8A0D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x50D5 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x50D2 SWAP2 SWAP1 PUSH2 0x8A8A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x517A JUMPI PUSH2 0x50E1 PUSH2 0x8AC4 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 SUB PUSH2 0x513D JUMPI POP PUSH2 0x50F5 PUSH2 0x8AE6 JUMP JUMPDEST DUP1 PUSH2 0x5100 JUMPI POP PUSH2 0x513F JUMP JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5134 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5171 SWAP1 PUSH2 0x8BE8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0xBC197C81 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ PUSH2 0x5201 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51F8 SWAP1 PUSH2 0x8C7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH4 0xFFFF0000 DUP5 AND PUSH4 0xFFFFFFFF AND EQ ISZERO SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x1 DUP5 AND PUSH4 0xFFFFFFFF AND EQ SWAP1 POP DUP2 DUP1 ISZERO PUSH2 0x5239 JUMPI POP DUP1 JUMPDEST ISZERO PUSH2 0x527B JUMPI DUP5 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5272 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x52A4 JUMPI DUP2 SWAP4 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x52C4 JUMPI DUP3 SWAP4 POP JUMPDEST DUP4 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x52DA DUP6 DUP6 DUP6 DUP5 PUSH2 0x5387 JUMP JUMPDEST DUP5 PUSH32 0x39873F00C80F4F94B7BD1594AEBCF650F003545B74824D57DDF4939E3FF3A34B DUP5 PUSH1 0x40 MLOAD PUSH2 0x530A SWAP2 SWAP1 PUSH2 0x6DEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x5367 JUMPI DUP5 PUSH32 0xF675815A0817338F93A7DA433F6BD5F5542F1029B11B455191AC96C7F6A9B132 DUP3 PUSH1 0x40 MLOAD PUSH2 0x535E SWAP2 SWAP1 PUSH2 0x7106 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x537A DUP4 PUSH2 0xA86 JUMP JUMPDEST POP POP SWAP1 POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5391 DUP5 DUP4 PUSH2 0x5BB6 JUMP JUMPDEST PUSH2 0x53A0 DUP5 PUSH1 0x0 SHR DUP5 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH2 0x5475 DUP3 PUSH1 0x1 PUSH2 0x29F1 JUMP JUMPDEST ISZERO PUSH2 0x54B7 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x54AE SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x54C3 DUP3 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5B0FC9C3 DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x551E SWAP3 SWAP2 SWAP1 PUSH2 0x791B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5538 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x554C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH32 0xEE2BA1195C65BCF218A83D874335C6BF9D9067B4C672F3C3BF16CF40DE7586C4 DUP3 PUSH1 0x40 MLOAD PUSH2 0x5580 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP JUMP JUMPDEST PUSH2 0x5598 DUP6 DUP5 DUP5 DUP5 PUSH2 0x5C34 JUMP JUMPDEST DUP5 PUSH32 0x8CE7013E8ABEBC55C3890A68F5A27C67C3F7EFA64E584DE5FB22363C606FD340 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x55CE SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8C9A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x55EC DUP6 DUP6 PUSH2 0x58F8 JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP1 SHL DUP3 SUB PUSH2 0x5656 JUMPI PUSH1 0x1 DUP6 MLOAD PUSH2 0x5608 SWAP2 SWAP1 PUSH2 0x8CE6 JUMP JUMPDEST DUP5 EQ PUSH2 0x5649 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5640 SWAP1 PUSH2 0x8D66 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SHL SWAP3 POP POP POP PUSH2 0x568D JUMP JUMPDEST PUSH2 0x5660 DUP6 DUP3 PUSH2 0x55DD JUMP JUMPDEST DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x5672 SWAP3 SWAP2 SWAP1 PUSH2 0x89E1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP3 POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x56A1 DUP5 PUSH2 0x42C5 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x56B2 DUP4 DUP4 DUP4 PUSH2 0x42FA JUMP JUMPDEST SWAP1 POP DUP1 SWAP3 POP POP PUSH1 0x3 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH2 0x56FB DUP5 PUSH1 0x0 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP8 PUSH1 0x1 PUSH1 0x40 MLOAD PUSH2 0x5773 SWAP3 SWAP2 SWAP1 PUSH2 0x8DC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x578F DUP7 PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH2 0x57A0 DUP7 DUP4 DUP4 PUSH2 0x4EB3 JUMP JUMPDEST PUSH1 0x1 DUP6 EQ DUP1 ISZERO PUSH2 0x57DB JUMPI POP DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST PUSH2 0x581A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5811 SWAP1 PUSH2 0x7E37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x5855 JUMPI POP POP POP PUSH2 0x58F1 JUMP JUMPDEST PUSH2 0x5861 DUP7 DUP9 DUP5 DUP5 PUSH2 0x4FE4 JUMP JUMPDEST DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP10 DUP10 PUSH1 0x40 MLOAD PUSH2 0x58D7 SWAP3 SWAP2 SWAP1 PUSH2 0x81FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x58ED CALLER DUP10 DUP10 DUP10 DUP10 DUP10 PUSH2 0x5CDD JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 MLOAD DUP4 LT PUSH2 0x593E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5935 SWAP1 PUSH2 0x8E36 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x5953 JUMPI PUSH2 0x5952 PUSH2 0x7D96 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR PUSH1 0xFF AND SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x598D JUMPI PUSH2 0x5986 DUP6 PUSH1 0x1 DUP7 PUSH2 0x5980 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST DUP4 PUSH2 0x5EB4 JUMP JUMPDEST SWAP3 POP PUSH2 0x5994 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL SWAP3 POP JUMPDEST PUSH1 0x1 DUP2 DUP6 PUSH2 0x59A2 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST PUSH2 0x59AC SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH1 0x3 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5A93 DUP4 PUSH2 0x1EFC JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP4 MLOAD LT ISZERO PUSH2 0x5B17 JUMPI PUSH1 0x40 MLOAD PUSH32 0x280DACB600000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0xFF DUP4 MLOAD GT ISZERO PUSH2 0x5B5E JUMPI DUP3 PUSH1 0x40 MLOAD PUSH32 0xE3BA295F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5B55 SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 MLOAD DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x5B74 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8F3A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFF0000 NOT DUP3 AND PUSH4 0xFFFFFFFF AND EQ ISZERO DUP1 ISZERO PUSH2 0x5BEE JUMPI POP PUSH1 0x1 PUSH3 0x10000 OR PUSH4 0xFFFFFFFF AND PUSH1 0x1 PUSH3 0x10000 OR DUP3 AND PUSH4 0xFFFFFFFF AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x5C30 JUMPI DUP2 PUSH1 0x40 MLOAD PUSH32 0xA2A7201300000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C27 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x5C3E DUP5 DUP4 PUSH2 0x5BB6 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5C4C DUP6 PUSH1 0x0 SHR PUSH2 0x42C5 JUMP JUMPDEST POP POP SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x5CCA JUMPI PUSH2 0x5C90 DUP6 PUSH1 0x0 SHR PUSH2 0x5693 JUMP JUMPDEST DUP5 PUSH32 0xEE2BA1195C65BCF218A83D874335C6BF9D9067B4C672F3C3BF16CF40DE7586C4 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x5CC1 SWAP2 SWAP1 PUSH2 0x6481 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMPDEST PUSH2 0x5CD6 DUP6 DUP6 DUP6 DUP6 PUSH2 0x5EE0 JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x5CFC DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x5B93 JUMP JUMPDEST ISZERO PUSH2 0x5EAC JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF23A6E61 DUP8 DUP8 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5D42 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x8F6F JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x5D7E JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5D7B SWAP2 SWAP1 PUSH2 0x8A8A JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x5E23 JUMPI PUSH2 0x5D8A PUSH2 0x8AC4 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 SUB PUSH2 0x5DE6 JUMPI POP PUSH2 0x5D9E PUSH2 0x8AE6 JUMP JUMPDEST DUP1 PUSH2 0x5DA9 JUMPI POP PUSH2 0x5DE8 JUMP JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5DDD SWAP2 SWAP1 PUSH2 0x645F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5E1A SWAP1 PUSH2 0x8BE8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0xF23A6E61 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ PUSH2 0x5EAA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5EA1 SWAP1 PUSH2 0x8C7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x5EC4 SWAP2 SWAP1 PUSH2 0x8E56 JUMP JUMPDEST GT ISZERO PUSH2 0x5ECF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 SHR SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x5EF9 DUP9 PUSH1 0x0 SHR PUSH2 0xA86 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 DUP3 PUSH1 0x10 PUSH2 0xFFFF DUP1 AND PUSH4 0xFFFFFFFF AND SWAP1 SHL AND SWAP1 POP DUP6 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x5F34 JUMPI DUP2 SWAP6 POP JUMPDEST TIMESTAMP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x5F4B JUMPI DUP1 DUP8 OR SWAP7 POP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x5FBA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5FB1 SWAP1 PUSH2 0x9015 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x6029 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6020 SWAP1 PUSH2 0x90A7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x6097 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x608E SWAP1 PUSH2 0x9139 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x60A3 DUP6 DUP10 DUP10 DUP10 PUSH2 0x4FE4 JUMP JUMPDEST DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP9 PUSH1 0x1 PUSH1 0x40 MLOAD PUSH2 0x611B SWAP3 SWAP2 SWAP1 PUSH2 0x8DC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x6142 CALLER PUSH1 0x0 DUP11 DUP9 PUSH1 0x1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x5CDD JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x618C DUP3 PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x619C DUP2 PUSH2 0x6181 JUMP JUMPDEST DUP2 EQ PUSH2 0x61A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x61B9 DUP2 PUSH2 0x6193 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x61D2 DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP2 EQ PUSH2 0x61DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x61EF DUP2 PUSH2 0x61C9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x620C JUMPI PUSH2 0x620B PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x621A DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x622B DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x623E DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6259 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6275 JUMPI PUSH2 0x6274 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6283 DUP5 DUP3 DUP6 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6295 DUP2 PUSH2 0x6181 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x62B4 DUP2 PUSH2 0x629B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x62D7 DUP2 PUSH2 0x62BA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x62F2 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x62FF PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x630C PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6349 DUP2 PUSH2 0x6314 JUMP JUMPDEST DUP2 EQ PUSH2 0x6354 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6366 DUP2 PUSH2 0x6340 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6382 JUMPI PUSH2 0x6381 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6390 DUP5 DUP3 DUP6 ADD PUSH2 0x6357 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x63AE DUP2 PUSH2 0x6399 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x63C9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x63A5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6409 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x63EE JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6431 DUP3 PUSH2 0x63CF JUMP JUMPDEST PUSH2 0x643B DUP2 DUP6 PUSH2 0x63DA JUMP JUMPDEST SWAP4 POP PUSH2 0x644B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST PUSH2 0x6454 DUP2 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6479 DUP2 DUP5 PUSH2 0x6426 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6496 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x64AF DUP2 PUSH2 0x649C JUMP JUMPDEST DUP2 EQ PUSH2 0x64BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x64CC DUP2 PUSH2 0x64A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x64E9 JUMPI PUSH2 0x64E8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x64F7 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6508 DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x651B DUP2 PUSH2 0x62BA JUMP JUMPDEST DUP2 EQ PUSH2 0x6526 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6538 DUP2 PUSH2 0x6512 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6555 JUMPI PUSH2 0x6554 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6563 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6574 DUP6 DUP3 DUP7 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x65A3 JUMPI PUSH2 0x65A2 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x65C0 JUMPI PUSH2 0x65BF PUSH2 0x6583 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x65DC JUMPI PUSH2 0x65DB PUSH2 0x6588 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x65FF JUMPI PUSH2 0x65FE PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x660D DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x661E DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x662F DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6650 JUMPI PUSH2 0x664F PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x665C DUP9 DUP3 DUP10 ADD PUSH2 0x658D JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x6674 DUP2 PUSH2 0x6314 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x668F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x666B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x66A0 DUP3 PUSH2 0x6181 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x66B0 DUP2 PUSH2 0x6695 JUMP JUMPDEST DUP2 EQ PUSH2 0x66BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x66CD DUP2 PUSH2 0x66A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x66E9 JUMPI PUSH2 0x66E8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x66F7 DUP5 DUP3 DUP6 ADD PUSH2 0x66BE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6725 PUSH2 0x6720 PUSH2 0x671B DUP5 PUSH2 0x6161 JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6737 DUP3 PUSH2 0x670A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6749 DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6759 DUP2 PUSH2 0x673E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6774 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6750 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6790 JUMPI PUSH2 0x678F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x679E DUP5 DUP3 DUP6 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x67CE DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH2 0x67D8 DUP2 DUP6 PUSH2 0x67B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x67E8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST PUSH2 0x67F1 DUP2 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6816 DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x685B DUP3 PUSH2 0x6415 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x687A JUMPI PUSH2 0x6879 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x688D PUSH2 0x614D JUMP JUMPDEST SWAP1 POP PUSH2 0x6899 DUP3 DUP3 PUSH2 0x6852 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x68B9 JUMPI PUSH2 0x68B8 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x68C2 DUP3 PUSH2 0x6415 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x68F1 PUSH2 0x68EC DUP5 PUSH2 0x689E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x690D JUMPI PUSH2 0x690C PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x6918 DUP5 DUP3 DUP6 PUSH2 0x68CF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6935 JUMPI PUSH2 0x6934 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6945 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x68DE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6957 DUP2 PUSH2 0x629B JUMP JUMPDEST DUP2 EQ PUSH2 0x6962 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6974 DUP2 PUSH2 0x694E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xE0 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x6999 JUMPI PUSH2 0x6998 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x69A7 DUP11 DUP3 DUP12 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP8 POP POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x69C8 JUMPI PUSH2 0x69C7 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x69D4 DUP11 DUP3 DUP12 ADD PUSH2 0x6920 JUMP JUMPDEST SWAP7 POP POP PUSH1 0x40 PUSH2 0x69E5 DUP11 DUP3 DUP12 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x60 PUSH2 0x69F6 DUP11 DUP3 DUP12 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x80 PUSH2 0x6A07 DUP11 DUP3 DUP12 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP4 POP POP PUSH1 0xA0 PUSH2 0x6A18 DUP11 DUP3 DUP12 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0xC0 PUSH2 0x6A29 DUP11 DUP3 DUP12 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP9 SWAP2 SWAP5 SWAP8 POP SWAP3 SWAP6 POP JUMP JUMPDEST PUSH2 0x6A41 DUP2 PUSH2 0x649C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A5C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6A38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6A6D DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6A7D DUP2 PUSH2 0x6A62 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A98 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6A74 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6AB9 JUMPI PUSH2 0x6AB8 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6ADD PUSH2 0x6AD8 DUP5 PUSH2 0x6A9E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6B00 JUMPI PUSH2 0x6AFF PUSH2 0x6588 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x6B29 JUMPI DUP1 PUSH2 0x6B15 DUP9 DUP3 PUSH2 0x61E0 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6B02 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6B48 JUMPI PUSH2 0x6B47 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6B58 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6ACA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6B7C JUMPI PUSH2 0x6B7B PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x6B85 DUP3 PUSH2 0x6415 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6BA5 PUSH2 0x6BA0 DUP5 PUSH2 0x6B61 JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x6BC1 JUMPI PUSH2 0x6BC0 PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x6BCC DUP5 DUP3 DUP6 PUSH2 0x68CF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6BE9 JUMPI PUSH2 0x6BE8 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6BF9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6B92 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x6C1E JUMPI PUSH2 0x6C1D PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6C2C DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x6C3D DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6C5E JUMPI PUSH2 0x6C5D PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6C6A DUP9 DUP3 DUP10 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6C8B JUMPI PUSH2 0x6C8A PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6C97 DUP9 DUP3 DUP10 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6CB8 JUMPI PUSH2 0x6CB7 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6CC4 DUP9 DUP3 DUP10 ADD PUSH2 0x6BD4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x6CEB JUMPI PUSH2 0x6CEA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6CF9 DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x6D0A DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x6D1B DUP8 DUP3 DUP9 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x6D2C DUP8 DUP3 DUP9 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D43 DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6D53 DUP2 PUSH2 0x6D38 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6D6E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6D4A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6D8B DUP2 PUSH2 0x6D74 JUMP JUMPDEST DUP2 EQ PUSH2 0x6D96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6DA8 DUP2 PUSH2 0x6D82 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6DC5 JUMPI PUSH2 0x6DC4 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6DD3 DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6DE4 DUP6 DUP3 DUP7 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6E03 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x62AB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6E24 JUMPI PUSH2 0x6E23 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6E48 PUSH2 0x6E43 DUP5 PUSH2 0x6E09 JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6E6B JUMPI PUSH2 0x6E6A PUSH2 0x6588 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x6E94 JUMPI DUP1 PUSH2 0x6E80 DUP9 DUP3 PUSH2 0x61AA JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6E6D JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x6EB3 JUMPI PUSH2 0x6EB2 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x6EC3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6E35 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x6EE3 JUMPI PUSH2 0x6EE2 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6F01 JUMPI PUSH2 0x6F00 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6F0D DUP6 DUP3 DUP7 ADD PUSH2 0x6E9E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x6F2E JUMPI PUSH2 0x6F2D PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x6F3A DUP6 DUP3 DUP7 ADD PUSH2 0x6B33 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6F79 DUP2 PUSH2 0x61BF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F8B DUP4 DUP4 PUSH2 0x6F70 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6FAF DUP3 PUSH2 0x6F44 JUMP JUMPDEST PUSH2 0x6FB9 DUP2 DUP6 PUSH2 0x6F4F JUMP JUMPDEST SWAP4 POP PUSH2 0x6FC4 DUP4 PUSH2 0x6F60 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6FF5 JUMPI DUP2 MLOAD PUSH2 0x6FDC DUP9 DUP3 PUSH2 0x6F7F JUMP JUMPDEST SWAP8 POP PUSH2 0x6FE7 DUP4 PUSH2 0x6F97 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x6FC8 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x701C DUP2 DUP5 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x702F DUP3 PUSH2 0x672C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x703F DUP2 PUSH2 0x7024 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x705A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x7036 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x7079 JUMPI PUSH2 0x7078 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7087 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x7098 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x70A9 DUP7 DUP3 DUP8 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x70CC JUMPI PUSH2 0x70CB PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x70DA DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x70EB DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x70FC DUP7 DUP3 DUP8 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x711B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x713A JUMPI PUSH2 0x7139 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7148 DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x7159 DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x716A DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x718A JUMPI PUSH2 0x7189 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x71A7 JUMPI PUSH2 0x71A6 PUSH2 0x6583 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x71C3 JUMPI PUSH2 0x71C2 PUSH2 0x6588 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x71E6 JUMPI PUSH2 0x71E5 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7204 JUMPI PUSH2 0x7203 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7210 DUP9 DUP3 DUP10 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP6 POP SWAP6 POP POP PUSH1 0x20 PUSH2 0x7223 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x7234 DUP9 DUP3 DUP10 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x7245 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x725B DUP2 PUSH2 0x6399 JUMP JUMPDEST DUP2 EQ PUSH2 0x7266 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x7278 DUP2 PUSH2 0x7252 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x7295 JUMPI PUSH2 0x7294 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x72A3 DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x72B4 DUP6 DUP3 DUP7 ADD PUSH2 0x7269 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x72DB JUMPI PUSH2 0x72DA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x72F9 JUMPI PUSH2 0x72F8 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7305 DUP10 DUP3 DUP11 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP7 POP SWAP7 POP POP PUSH1 0x20 PUSH2 0x7318 DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x7329 DUP10 DUP3 DUP11 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x733A DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x734B DUP10 DUP3 DUP11 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x736F JUMPI PUSH2 0x736E PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x737D DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x738E DUP6 DUP3 DUP7 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x73A3 DUP3 PUSH2 0x6181 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x73B3 DUP2 PUSH2 0x7398 JUMP JUMPDEST DUP2 EQ PUSH2 0x73BE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x73D0 DUP2 PUSH2 0x73AA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x73EC JUMPI PUSH2 0x73EB PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x73FA DUP5 DUP3 DUP6 ADD PUSH2 0x73C1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x741A JUMPI PUSH2 0x7419 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7428 DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x7439 DUP6 DUP3 DUP7 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x7460 JUMPI PUSH2 0x745F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x746E DUP10 DUP3 DUP11 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP7 POP POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x748F JUMPI PUSH2 0x748E PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x749B DUP10 DUP3 DUP11 ADD PUSH2 0x7174 JUMP JUMPDEST SWAP6 POP SWAP6 POP POP PUSH1 0x40 PUSH2 0x74AE DUP10 DUP3 DUP11 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x74BF DUP10 DUP3 DUP11 ADD PUSH2 0x6965 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x74D0 DUP10 DUP3 DUP11 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x74F7 JUMPI PUSH2 0x74F6 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7515 JUMPI PUSH2 0x7514 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7521 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7544 JUMPI PUSH2 0x7543 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7550 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x7578 JUMPI PUSH2 0x7577 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7586 DUP8 DUP3 DUP9 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x7597 DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x75A8 DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x75B9 DUP8 DUP3 DUP9 ADD PUSH2 0x6529 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x75DE JUMPI PUSH2 0x75DD PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x75EC DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x75FD DUP7 DUP3 DUP8 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x760E DUP7 DUP3 DUP8 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x762F JUMPI PUSH2 0x762E PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x763D DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x764E DUP6 DUP3 DUP7 ADD PUSH2 0x64BD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x766E JUMPI PUSH2 0x766D PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x767C DUP5 DUP3 DUP6 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x769C JUMPI PUSH2 0x769B PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x76AA DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x76BB DUP6 DUP3 DUP7 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x76DF JUMPI PUSH2 0x76DE PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x76FD JUMPI PUSH2 0x76FC PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7709 DUP8 DUP3 DUP9 ADD PUSH2 0x658D JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 PUSH2 0x771C DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x772D DUP8 DUP3 DUP9 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x7755 JUMPI PUSH2 0x7754 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7763 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x7774 DUP9 DUP3 DUP10 ADD PUSH2 0x61AA JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x7785 DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x7796 DUP9 DUP3 DUP10 ADD PUSH2 0x61E0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x77B7 JUMPI PUSH2 0x77B6 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x77C3 DUP9 DUP3 DUP10 ADD PUSH2 0x6BD4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x455243313135353A2062616C616E636520717565727920666F7220746865207A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65726F2061646472657373000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x782C PUSH1 0x2B DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7837 DUP3 PUSH2 0x77D0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x785B DUP2 PUSH2 0x781F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7875 PUSH2 0x7870 DUP5 PUSH2 0x689E JUMP JUMPDEST PUSH2 0x6883 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x7891 JUMPI PUSH2 0x7890 PUSH2 0x681E JUMP JUMPDEST JUMPDEST PUSH2 0x789C DUP5 DUP3 DUP6 PUSH2 0x63EB JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x78B9 JUMPI PUSH2 0x78B8 PUSH2 0x657E JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x78C9 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7862 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x78E8 JUMPI PUSH2 0x78E7 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7906 JUMPI PUSH2 0x7905 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x7912 DUP5 DUP3 DUP6 ADD PUSH2 0x78A4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7930 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x793D PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7959 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7966 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7978 DUP3 PUSH2 0x6161 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7988 DUP2 PUSH2 0x796D JUMP JUMPDEST DUP2 EQ PUSH2 0x7993 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x79A5 DUP2 PUSH2 0x797F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x79C5 JUMPI PUSH2 0x79C4 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79E3 JUMPI PUSH2 0x79E2 PUSH2 0x615C JUMP JUMPDEST JUMPDEST PUSH2 0x79EF DUP8 DUP3 DUP9 ADD PUSH2 0x6920 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x7A00 DUP8 DUP3 DUP9 ADD PUSH2 0x7996 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x7A11 DUP8 DUP3 DUP9 ADD PUSH2 0x6D99 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x7A22 DUP8 DUP3 DUP9 ADD PUSH2 0x7996 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7A43 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7A50 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6A38 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7A6C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x7A79 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7A8F DUP2 PUSH2 0x61C9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7AAB JUMPI PUSH2 0x7AAA PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7AB9 DUP5 DUP3 DUP6 ADD PUSH2 0x7A80 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x7AFC DUP3 PUSH2 0x62BA JUMP JUMPDEST SWAP2 POP PUSH2 0x7B07 DUP4 PUSH2 0x62BA JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7B27 JUMPI PUSH2 0x7B26 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x7B74 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x7B87 JUMPI PUSH2 0x7B86 PUSH2 0x7B2D JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x7BA2 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7BAF PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x7BBC PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7BC9 PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7BD6 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2069647320616E6420616D6F756E7473206C656E67746820 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6D69736D61746368000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C3C PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7C47 DUP3 PUSH2 0x7BE0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7C6B DUP2 PUSH2 0x7C2F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A207472616E7366657220746F20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7CCE PUSH1 0x25 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7CD9 DUP3 PUSH2 0x7C72 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7CFD DUP2 PUSH2 0x7CC1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A207472616E736665722063616C6C6572206973206E6F7420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572206E6F7220617070726F7665640000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7D60 PUSH1 0x32 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7D6B DUP3 PUSH2 0x7D04 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7D8F DUP2 PUSH2 0x7D53 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x455243313135353A20696E73756666696369656E742062616C616E636520666F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72207472616E7366657200000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7E21 PUSH1 0x2A DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7E2C DUP3 PUSH2 0x7DC5 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E50 DUP2 PUSH2 0x7E14 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E71 DUP2 DUP6 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x7E85 DUP2 DUP5 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7E9D DUP2 PUSH2 0x6193 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7EB9 JUMPI PUSH2 0x7EB8 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7EC7 DUP5 DUP3 DUP6 ADD PUSH2 0x7E8E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x455243313135353A206163636F756E747320616E6420696473206C656E677468 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206D69736D617463680000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7F2C PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x7F37 DUP3 PUSH2 0x7ED0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7F5B DUP2 PUSH2 0x7F1F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x7F77 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7F84 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7F9A DUP2 PUSH2 0x7252 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7FB6 JUMPI PUSH2 0x7FB5 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7FC4 DUP5 DUP3 DUP6 ADD PUSH2 0x7F8B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x7FE2 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7FEF PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x7FFC PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x801B DUP4 DUP6 PUSH2 0x8004 JUMP JUMPDEST SWAP4 POP PUSH2 0x8028 DUP4 DUP6 DUP5 PUSH2 0x68CF JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8041 DUP3 DUP5 DUP7 PUSH2 0x800F JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8062 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x806F PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2073657474696E6720617070726F76616C20737461747573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20666F722073656C660000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x80D2 PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x80DD DUP3 PUSH2 0x8076 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8101 DUP2 PUSH2 0x80C5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x436F6E74726F6C6C61626C653A2043616C6C6572206973206E6F74206120636F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E74726F6C6C6572000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8164 PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x816F DUP3 PUSH2 0x8108 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8193 DUP2 PUSH2 0x8157 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x81AF PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x81BC PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x81C9 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x81E6 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x81F3 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x63A5 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x820F PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x821C PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x6235 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x8238 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x8245 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x8252 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x628C JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x8269 DUP2 PUSH2 0x64A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x8285 JUMPI PUSH2 0x8284 PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8293 DUP5 DUP3 DUP6 ADD PUSH2 0x825A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x82A8 DUP4 DUP6 PUSH2 0x67B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x82B5 DUP4 DUP6 DUP5 PUSH2 0x68CF JUMP JUMPDEST PUSH2 0x82BE DUP4 PUSH2 0x6415 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x82E4 DUP2 DUP11 DUP13 PUSH2 0x829C JUMP JUMPDEST SWAP1 POP PUSH2 0x82F3 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8300 PUSH1 0x40 DUP4 ADD DUP9 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x830D PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x62CE JUMP JUMPDEST PUSH2 0x831A PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x832D DUP2 DUP5 DUP7 PUSH2 0x829C JUMP JUMPDEST SWAP1 POP SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x8351 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x6A38 JUMP JUMPDEST PUSH2 0x835E PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x836B PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8378 PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x83EE PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x83B1 JUMP JUMPDEST PUSH2 0x83F8 DUP7 DUP4 PUSH2 0x83B1 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x842B PUSH2 0x8426 PUSH2 0x8421 DUP5 PUSH2 0x61BF JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x61BF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8445 DUP4 PUSH2 0x8410 JUMP JUMPDEST PUSH2 0x8459 PUSH2 0x8451 DUP3 PUSH2 0x8432 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x83BE JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x846E PUSH2 0x8461 JUMP JUMPDEST PUSH2 0x8479 DUP2 DUP5 DUP5 PUSH2 0x843C JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x849D JUMPI PUSH2 0x8492 PUSH1 0x0 DUP3 PUSH2 0x8466 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x847F JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x84E2 JUMPI PUSH2 0x84B3 DUP2 PUSH2 0x838C JUMP JUMPDEST PUSH2 0x84BC DUP5 PUSH2 0x83A1 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x84CB JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x84DF PUSH2 0x84D7 DUP6 PUSH2 0x83A1 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x847E JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8505 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x84E7 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x851E DUP4 DUP4 PUSH2 0x84F4 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x8538 DUP4 DUP4 PUSH2 0x8381 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8551 JUMPI PUSH2 0x8550 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x855B DUP3 SLOAD PUSH2 0x7B5C JUMP JUMPDEST PUSH2 0x8566 DUP3 DUP3 DUP6 PUSH2 0x84A1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x8595 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x8583 JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x858D DUP6 DUP3 PUSH2 0x8512 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x85F5 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x85A3 DUP7 PUSH2 0x838C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x85CB JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x85A6 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x85E8 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x85E4 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x84F4 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A2063616C6C6572206973206E6F74206F776E6572206E6F72 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20617070726F7665640000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x865A PUSH1 0x29 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8665 DUP3 PUSH2 0x85FE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8689 DUP2 PUSH2 0x864D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x86EC PUSH1 0x26 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x86F7 DUP3 PUSH2 0x8690 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x871B DUP2 PUSH2 0x86DF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x877E PUSH1 0x21 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8789 DUP3 PUSH2 0x8722 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x87AD DUP2 PUSH2 0x8771 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8810 PUSH1 0x3D DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x881B DUP3 PUSH2 0x87B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x883F DUP2 PUSH2 0x8803 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8851 DUP3 PUSH2 0x62BA JUMP JUMPDEST SWAP2 POP PUSH2 0x885C DUP4 PUSH2 0x62BA JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x887C JUMPI PUSH2 0x887B PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x888B DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x88A4 JUMPI PUSH2 0x88A3 PUSH2 0x6823 JUMP JUMPDEST JUMPDEST PUSH2 0x88AE DUP3 SLOAD PUSH2 0x7B5C JUMP JUMPDEST PUSH2 0x88B9 DUP3 DUP3 DUP6 PUSH2 0x84A1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x88EC JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x88DA JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x88E4 DUP6 DUP3 PUSH2 0x8512 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x894C JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x88FA DUP7 PUSH2 0x838C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x8922 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x88FD JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x893F JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x893B PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x84F4 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x898A PUSH1 0x20 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8995 DUP3 PUSH2 0x8954 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x89B9 DUP2 PUSH2 0x897D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x89DB PUSH2 0x89D6 DUP3 PUSH2 0x649C JUMP JUMPDEST PUSH2 0x89C0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x89ED DUP3 DUP6 PUSH2 0x89CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x89FD DUP3 DUP5 PUSH2 0x89CA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x8A22 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8A2F PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x628C JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x8A41 DUP2 DUP7 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x8A55 DUP2 DUP6 PUSH2 0x6FA4 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x8A69 DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x8A84 DUP2 PUSH2 0x6340 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x8AA0 JUMPI PUSH2 0x8A9F PUSH2 0x6157 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8AAE DUP5 DUP3 DUP6 ADD PUSH2 0x8A75 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xE0 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 RETURNDATASIZE GT ISZERO PUSH2 0x8AE3 JUMPI PUSH1 0x4 PUSH1 0x0 DUP1 RETURNDATACOPY PUSH2 0x8AE0 PUSH1 0x0 MLOAD PUSH2 0x8AB7 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x44 RETURNDATASIZE LT PUSH2 0x8B73 JUMPI PUSH2 0x8AF8 PUSH2 0x614D JUMP JUMPDEST PUSH1 0x4 RETURNDATASIZE SUB PUSH1 0x4 DUP3 RETURNDATACOPY DUP1 MLOAD RETURNDATASIZE PUSH1 0x24 DUP3 ADD GT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x8B20 JUMPI POP POP PUSH2 0x8B73 JUMP JUMPDEST DUP1 DUP3 ADD DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8B3E JUMPI POP POP POP POP PUSH2 0x8B73 JUMP JUMPDEST DUP1 PUSH1 0x20 DUP4 ADD ADD PUSH1 0x4 RETURNDATASIZE SUB DUP6 ADD DUP2 GT ISZERO PUSH2 0x8B5B JUMPI POP POP POP POP POP PUSH2 0x8B73 JUMP JUMPDEST PUSH2 0x8B6A DUP3 PUSH1 0x20 ADD DUP6 ADD DUP7 PUSH2 0x6852 JUMP JUMPDEST DUP3 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x455243313135353A207472616E7366657220746F206E6F6E2045524331313535 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x526563656976657220696D706C656D656E746572000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8BD2 PUSH1 0x34 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8BDD DUP3 PUSH2 0x8B76 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8C01 DUP2 PUSH2 0x8BC5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A204552433131353552656365697665722072656A65637465 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6420746F6B656E73000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8C64 PUSH1 0x28 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8C6F DUP3 PUSH2 0x8C08 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8C93 DUP2 PUSH2 0x8C57 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8CB4 DUP2 DUP8 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP PUSH2 0x8CC3 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8CD0 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x62AB JUMP JUMPDEST PUSH2 0x8CDD PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x62CE JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8CF1 DUP3 PUSH2 0x61BF JUMP JUMPDEST SWAP2 POP PUSH2 0x8CFC DUP4 PUSH2 0x61BF JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x8D14 JUMPI PUSH2 0x8D13 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x6E616D65686173683A204A756E6B20617420656E64206F66206E616D65000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8D50 PUSH1 0x1D DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8D5B DUP3 PUSH2 0x8D1A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8D7F DUP2 PUSH2 0x8D43 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8DAB PUSH2 0x8DA6 PUSH2 0x8DA1 DUP5 PUSH2 0x8D86 JUMP JUMPDEST PUSH2 0x6700 JUMP JUMPDEST PUSH2 0x61BF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8DBB DUP2 PUSH2 0x8D90 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8DD6 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x8DE3 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x8DB2 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x726561644C6162656C3A20496E646578206F7574206F6620626F756E64730000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E20 PUSH1 0x1E DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x8E2B DUP3 PUSH2 0x8DEA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8E4F DUP2 PUSH2 0x8E13 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E61 DUP3 PUSH2 0x61BF JUMP JUMPDEST SWAP2 POP PUSH2 0x8E6C DUP4 PUSH2 0x61BF JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x8E84 JUMPI PUSH2 0x8E83 PUSH2 0x7AC2 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF8 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8EAF DUP3 PUSH2 0x8E97 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x8EC7 PUSH2 0x8EC2 DUP3 PUSH2 0x8E8A JUMP JUMPDEST PUSH2 0x8EA4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8EE3 DUP3 PUSH2 0x63CF JUMP JUMPDEST PUSH2 0x8EED DUP2 DUP6 PUSH2 0x8ECD JUMP JUMPDEST SWAP4 POP PUSH2 0x8EFD DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F14 DUP3 PUSH2 0x67A7 JUMP JUMPDEST PUSH2 0x8F1E DUP2 DUP6 PUSH2 0x8004 JUMP JUMPDEST SWAP4 POP PUSH2 0x8F2E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x63EB JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F46 DUP3 DUP7 PUSH2 0x8EB6 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH2 0x8F56 DUP3 DUP6 PUSH2 0x8ED8 JUMP JUMPDEST SWAP2 POP PUSH2 0x8F62 DUP3 DUP5 PUSH2 0x8F09 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x8F84 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8F91 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x628C JUMP JUMPDEST PUSH2 0x8F9E PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x6235 JUMP JUMPDEST PUSH2 0x8FAB PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x6235 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x8FBD DUP2 DUP5 PUSH2 0x67C3 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x455243313135353A206D696E74206F66206578697374696E6720746F6B656E00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8FFF PUSH1 0x1F DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x900A DUP3 PUSH2 0x8FC9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x902E DUP2 PUSH2 0x8FF2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A206D696E7420746F20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9091 PUSH1 0x21 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x909C DUP3 PUSH2 0x9035 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x90C0 DUP2 PUSH2 0x9084 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x455243313135353A206E65774F776E65722063616E6E6F742062652074686520 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x4E616D655772617070657220636F6E7472616374000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9123 PUSH1 0x34 DUP4 PUSH2 0x63DA JUMP JUMPDEST SWAP2 POP PUSH2 0x912E DUP3 PUSH2 0x90C7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x9152 DUP2 PUSH2 0x9116 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH13 0xCA2714AD798EBCCB9D77630AE6 0x21 0xBC INVALID 0x24 0xD8 PUSH21 0xCCCD2E65AAEFD2678512999464736F6C6343000819 STOP CALLER ", + "sourceMap": "1613:36881:48:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2943:364:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5150:308:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;3316:329;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1970:43;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4146:316;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4605:325;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8146:391;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5929:212;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25222:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;29356:1093;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5633:145;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24886:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2427:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1926:38;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22537:1165;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1834:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5605:1253:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19316:1386:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1804:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15817:468;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7578:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3464:520:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1881:39:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;633:171:42;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3837:156:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16643:1249;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:50;;;:::i;:::-;;14221:468:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9035:1055;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1201:85:50;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4052:356:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10710:576:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27925:209;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6461:558;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11684:1007;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21153:825;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18221:706;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23980:744;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15171:456;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28889:461;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;150:43:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;271:174;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4475:188:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13066:781:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1169:42:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5079:454;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2074:198:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28301:342:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2943:364:44;3051:7;3110:1;3091:21;;:7;:21;;;3070:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;3191:13;3207:11;3215:2;3207:7;:11::i;:::-;3191:27;;3241:7;3232:16;;:5;:16;;;3228:55;;3271:1;3264:8;;;;;3228:55;3299:1;3292:8;;;2943:364;;;;;:::o;5150:308:48:-;5282:13;5297:12;5311:13;5365:17;5379:2;5365:13;:17::i;:::-;5340:42;;;;;;;;;;;;5410:41;5430:5;5437;5444:6;5410:19;:41::i;:::-;5393:58;;;;;;;;5150:308;;;;;:::o;3316:329::-;3442:4;3492:30;3477:45;;;:11;:45;;;;:109;;;;3553:33;3538:48;;;:11;:48;;;;3477:109;:161;;;;3602:36;3626:11;3602:23;:36::i;:::-;3477:161;3458:180;;3316:329;;;:::o;1970:43::-;;;;;;;;;;;;;;;;;;;:::o;4146:316::-;4282:16;4314:13;4330:11;4338:2;4330:7;:11::i;:::-;4314:27;;4372:1;4355:19;;:5;:19;;;4351:67;;4405:1;4390:17;;;;;4351:67;4434:21;4452:2;4434:17;:21::i;:::-;4427:28;;;4146:316;;;;:::o;4605:325::-;4729:12;4747:16;4755:7;4747;:16::i;:::-;4726:37;;;;531:2:46;4777:40:48;;531:2:46;4777:5:48;:22;:40;;;4773:115;;4868:7;4860:16;;4840:37;;;;;;;;;;;:::i;:::-;;;;;;;;4773:115;4897:26;4911:2;4915:7;4897:13;:26::i;:::-;4716:214;4605:325;;:::o;8146:391::-;8244:4;8261:13;8276:12;8290:13;8307:22;8323:4;8315:13;;8307:7;:22::i;:::-;8260:69;;;;;;8368:4;8359:13;;:5;:13;;;:62;;;;8392:29;8409:5;8416:4;8392:16;:29::i;:::-;8359:62;:116;;;;8471:4;8441:34;;:26;8461:4;8453:13;;8441:11;:26::i;:::-;:34;;;8359:116;8358:172;;;;;8493:37;8516:5;8523:6;8493:22;:37::i;:::-;8492:38;8358:172;8339:191;;;;;8146:391;;;;:::o;5929:212::-;6070:13;6106:15;;;;;;;;;;;:19;;;6126:7;6106:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6099:35;;5929:212;;;:::o;25222:169::-;25308:4;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;25331:4:::1;448:2:46;25694:12:48;25712:22;25728:4;25720:13;;25712:7;:22::i;:::-;25691:43;;;;25768:1;25756:8;25748:5;:16;:21;;;25744:84;;25812:4;25792:25;;;;;;;;;;;:::i;:::-;;;;;;;;25744:84;25363:3:::2;:10;;;25374:4;25380:3;25363:21;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;25681:164:::1;7333:1;;25222:169:::0;;;:::o;29356:1093::-;29495:6;29588:9;29566:32;;:10;:32;;;29562:90;;29621:20;;;;;;;;;;;;;;29562:90;29676:19;29709:13;29736:27;29777:16;29817:4;;29806:52;;;;;;;:::i;:::-;29662:196;;;;;;;;29869:17;29897:7;29889:16;;29869:36;;29915:25;29959:5;29943:23;;;;;;29915:51;;30002:9;29981:17;:30;29977:111;;30048:17;30067:9;30034:43;;;;;;;;;;;;:::i;:::-;;;;;;;;29977:111;30171:9;:17;;;30197:9;30189:18;;30217:4;30171:52;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30234:13;2059:7;30257:9;:21;;;30279:7;30257:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30250:53;;;;:::i;:::-;30234:69;;30314:65;30326:5;30333;30340:20;30314:65;;30362:6;30370:8;30314:11;:65::i;:::-;30397:45;;;30390:52;;;;;;;;;29356:1093;;;;;;;:::o;5633:145::-;1094:13:50;:11;:13::i;:::-;5755:16:48::1;5737:15;;:34;;;;;;;;;;;;;;;;;;5633:145:::0;:::o;24886:195::-;24983:4;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;25006:4:::1;412:1:46;25694:12:48;25712:22;25728:4;25720:13;;25712:7;:22::i;:::-;25691:43;;;;25768:1;25756:8;25748:5;:16;:21;;;25744:84;;25812:4;25792:25;;;;;;;;;;;:::i;:::-;;;;;;;;25744:84;25043:3:::2;:15;;;25059:4;25065:8;25043:31;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;25681:164:::1;7333:1;;24886:195:::0;;;:::o;2427:42::-;;;;;;;;;;;;;:::o;1926:38::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;22537:1165::-;22783:12;22762:10;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;22807:17:::1;22843:5;22827:23;;;;;;22807:43;;22867:32;22877:10;22889:9;22867;:32::i;:::-;22860:39;;22909:46;22938:10;22950:4;22909:28;:46::i;:::-;22965:35;22988:4;22994:5;22965:22;:35::i;:::-;23010;23021:10;23033:4;23039:5;23010:10;:35::i;:::-;;23064:59;23091:10;23103:4;23109:5;23116:6;23064:26;:59::i;:::-;23055:68;;23138:16;23149:4;23138:10;:16::i;:::-;23133:563;;23170:3;:20;;;23208:10;23236:9;23271:4;23294:8;23320:3;23170:167;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;23351:64;23369:10;23381:4;23387:5;23394;23401;23408:6;23351:17;:64::i;:::-;23133:563;;;23446:3;:20;;;23484:10;23512:9;23547:4;23570:8;23596:3;23446:167;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;23627:58;23639:10;23651:4;23657:5;23664;23671;23678:6;23627:11;:58::i;:::-;23133:563;22797:905;22537:1165:::0;;;;;;;;;;:::o;1834:41::-;;;:::o;5605:1253:44:-;5844:7;:14;5830:3;:10;:28;5809:115;;;;;;;;;;;;:::i;:::-;;;;;;;;;5956:1;5942:16;;:2;:16;;;5934:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;6039:10;6031:18;;:4;:18;;;:56;;;;6053:34;6070:4;6076:10;6053:16;:34::i;:::-;6031:56;6010:153;;;;;;;;;;;;:::i;:::-;;;;;;;;;6179:9;6174:443;6198:3;:10;6194:1;:14;6174:443;;;6229:10;6242:3;6246:1;6242:6;;;;;;;;:::i;:::-;;;;;;;;6229:19;;6262:14;6279:7;6287:1;6279:10;;;;;;;;:::i;:::-;;;;;;;;6262:27;;6305:16;6323:12;6337:13;6354:11;6362:2;6354:7;:11::i;:::-;6304:61;;;;;;6380:34;6396:2;6400:5;6407:6;6380:15;:34::i;:::-;6464:1;6454:6;:11;:31;;;;;6481:4;6469:16;;:8;:16;;;6454:31;6429:132;;;;;;;;;;;;:::i;:::-;;;;;;;;;6575:31;6584:2;6588;6592:5;6599:6;6575:8;:31::i;:::-;6215:402;;;;;6210:3;;;;;6174:443;;;;6664:2;6632:49;;6658:4;6632:49;;6646:10;6632:49;;;6668:3;6673:7;6632:49;;;;;;;:::i;:::-;;;;;;;;6692:159;6741:10;6765:4;6783:2;6799:3;6816:7;6837:4;6692:35;:159::i;:::-;5605:1253;;;;;:::o;19316:1386:48:-;19462:12;19477:32;19487:10;19499:9;19477;:32::i;:::-;19462:47;;19519:35;19542:4;19548:5;19519:22;:35::i;:::-;19565:13;19580:15;19597:16;19617:44;19646:4;19638:13;;19617:7;:44::i;:::-;19564:97;;;;;;19692:1;19675:19;;:5;:19;;;:55;;;;19725:4;19698:32;;:3;:9;;;19708:4;19698:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:32;;;;19675:55;19671:111;;;19753:18;;;;;;;;;;;;;;19671:111;19851:18;19871:16;19891:28;19907:10;19899:19;;19891:7;:28::i;:::-;19848:71;;;;;2354:66;19947:9;;19933:10;:23;19929:311;;19977:31;19991:4;19997:10;19977:13;:31::i;:::-;19972:108;;20048:4;20054:10;20035:30;;;;;;;;;;;;:::i;:::-;;;;;;;;19972:108;19929:311;;;20115:37;20129:10;20141;20115:13;:37::i;:::-;20110:120;;20192:10;20204;20179:36;;;;;;;;;;;;:::i;:::-;;;;;;;;20110:120;19929:311;20250:43;20268:4;20274:5;20281:11;20250:17;:43::i;:::-;20313:46;20330:6;20338:9;20349;20313:16;:46::i;:::-;20304:55;;20498:1;643:7:46;20462:8:48;:32;:37;;;;:81;;;;;20535:8;20515:28;;20526:5;20515:8;:16;:28;;;;20462:81;20445:166;;;20595:4;20575:25;;;;;;;;;;;:::i;:::-;;;;;;;;20445:166;20629:8;20620:17;;;;20647:48;20657:4;20663:5;20670;20677:9;20688:6;20647:9;:48::i;:::-;19452:1250;;;;;;19316:1386;;;;:::o;1804:24::-;;;:::o;15817:468::-;16011:6;15938:4;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;15969:4:::1;334:1:46;25694:12:48;25712:22;25728:4;25720:13;;25712:7;:22::i;:::-;25691:43;;;;25768:1;25756:8;25748:5;:16;:21;;;25744:84;;25812:4;25792:25;;;;;;;;;;;:::i;:::-;;;;;;;;25744:84;16079:13:::2;16094:15:::0;16111:13:::2;16128:44;16157:4;16149:13;;16128:7;:44::i;:::-;16078:94;;;;;;16182:71;16192:4;16198:5;16228:8;16205:20;:31;;;16238:6;16246;16182:9;:71::i;:::-;16270:8;16263:15;;;;;25681:164:::1;7333:1;;15817:468:::0;;;;;:::o;7578:317::-;7672:4;7689:13;7704:12;7718:13;7735:22;7751:4;7743:13;;7735:7;:22::i;:::-;7688:69;;;;;;7796:4;7787:13;;:5;:13;;;:46;;;;7804:29;7821:5;7828:4;7804:16;:29::i;:::-;7787:46;7786:102;;;;;7851:37;7874:5;7881:6;7851:22;:37::i;:::-;7850:38;7786:102;7767:121;;;;;7578:317;;;;:::o;3464:520:44:-;3597:16;3665:3;:10;3646:8;:15;:29;3625:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;3753:30;3800:8;:15;3786:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3753:63;;3832:9;3827:120;3851:8;:15;3847:1;:19;3827:120;;;3906:30;3916:8;3925:1;3916:11;;;;;;;;:::i;:::-;;;;;;;;3929:3;3933:1;3929:6;;;;;;;;:::i;:::-;;;;;;;;3906:9;:30::i;:::-;3887:13;3901:1;3887:16;;;;;;;;:::i;:::-;;;;;;;:49;;;;;3868:3;;;;;3827:120;;;;3964:13;3957:20;;;3464:520;;;;:::o;1881:39:48:-;;;;;;;;;;;;;:::o;633:171:42:-;1094:13:50;:11;:13::i;:::-;767:6:42::1;760:23;;;784:3;789:7;760:37;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;633:171:::0;;;:::o;3837:156:48:-;3937:13;3969:17;3983:2;3969:13;:17::i;:::-;3962:24;;3837:156;;;:::o;16643:1249::-;16765:6;16783:12;16798:32;16808:10;16820:9;16798;:32::i;:::-;16783:47;;16846:16;16857:4;16846:10;:16::i;:::-;16841:73;;16885:18;;;;;;;;;;;;;;16841:73;16980:21;17004:41;17022:10;17034;17004:17;:41::i;:::-;16980:65;;17132:16;17131:17;:53;;;;;17153:31;17167:4;17173:10;17153:13;:31::i;:::-;17152:32;17131:53;17127:121;;;17220:4;17226:10;17207:30;;;;;;;;;;;;:::i;:::-;;;;;;;;17127:121;17259:13;17274:12;17288:16;17308:44;17337:4;17329:13;;17308:7;:44::i;:::-;17258:94;;;;;;17478:16;17477:17;:51;;;;;17527:1;726:7:46;17498:5:48;:25;:30;;;17477:51;17473:114;;;17571:4;17551:25;;;;;;;;;;;:::i;:::-;;;;;;;;17473:114;17659:16;17679:28;17695:10;17687:19;;17679:7;:28::i;:::-;17654:53;;;;17726:46;17743:6;17751:9;17762;17726:16;:46::i;:::-;17717:55;;17783:36;17792:4;17798:5;17805;17812:6;17783:8;:36::i;:::-;17849:4;17834:28;17855:6;17834:28;;;;;;:::i;:::-;;;;;;;;17879:6;17872:13;;;;;;;;16643:1249;;;;;:::o;1824:101:50:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;14221:468:48:-;14354:30;2116:66;14364:8;;14374:9;14354;:30::i;:::-;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;14422:4:::1;14400:27;;:10;:27;;::::0;14396:97:::1;;14471:10;14450:32;;;;;;;;;;;:::i;:::-;;;;;;;;14396:97;14502:51;14510:30;2116:66;14520:8;;14530:9;14510;:30::i;:::-;14542:10;14502:7;:51::i;:::-;14563:9;:26;;;14611:4;14630:10;14662:9;14654:18;;14563:119;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14221:468:::0;;;;:::o;9035:1055::-;9201:13;9226:15;9268:5;;9252:23;;;;;;;:::i;:::-;;;;;;;;9244:32;;9226:50;;9286:18;9307:9;:17;;;9325:7;9307:26;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9286:47;;9374:10;9360:24;;:10;:24;;;;:91;;;;;9401:9;:26;;;9428:10;9440;9401:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9400:51;9360:91;9343:260;;;9513:37;2116:66;9523:8;;9541:7;9533:16;;9513:9;:37::i;:::-;9568:10;9483:109;;;;;;;;;;;;:::i;:::-;;;;;;;;9343:260;9674:9;:22;;;9697:10;9717:4;9724:7;9674:58;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9816:9;:17;;;9834:7;9851:4;9816:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2059:7;9884:9;:21;;;9906:7;9884:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9877:53;;;;:::i;:::-;9868:62;;9941:142;9966:5;;9941:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9985:12;10011:20;9941:142;;10045:6;10065:8;9941:11;:142::i;:::-;9216:874;;9035:1055;;;;;;;:::o;1201:85:50:-;1247:7;1273:6;;;;;;;;;;;1266:13;;1201:85;:::o;4052:356:44:-;4203:8;4189:22;;:10;:22;;;4168:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;4332:8;4289:18;:30;4308:10;4289:30;;;;;;;;;;;;;;;:40;4320:8;4289:40;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;4382:8;4355:46;;4370:10;4355:46;;;4392:8;4355:46;;;;;;:::i;:::-;;;;;;;;4052:356;;:::o;10710:576:48:-;10930:23;508:11:43;:23;520:10;508:23;;;;;;;;;;;;;;;;;;;;;;;;;487:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;10965:15:48::1;11007:5;;10991:23;;;;;;;:::i;:::-;;;;;;;;10983:32;;10965:50;;11043:9;:18;;;11062:7;11079:4;11086:8;11043:52;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11025:70;;11105:174;11130:5;;11105:174;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11149:12;11175:20;11105:174;;2059:7;11216:15;11209:38;;;;:::i;:::-;11261:8;11105:11;:174::i;:::-;10955:331;10710:576:::0;;;;;;;;:::o;27925:209::-;28023:4;28042:12;28060:22;28076:4;28068:13;;28060:7;:22::i;:::-;28039:43;;;;28119:8;28099:28;;28107:8;28099:5;:16;:28;;;28092:35;;;27925:209;;;;:::o;6461:558::-;1094:13:50;:11;:13::i;:::-;6607:1:48::1;6571:38;;6579:15;;;;;;;;;;;6571:38;;;6567:197;;6625:9;:27;;;6661:15;;;;;;;;;;;6679:5;6625:60;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6699:3;:21;;;6729:15;;;;;;;;;;;6747:5;6699:54;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6567:197;6792:15;6774;;:33;;;;;;;;;;;;;;;;;;6858:1;6822:38;;6830:15;;;;;;;;;;;6822:38;;;6818:195;;6876:9;:27;;;6912:15;;;;;;;;;;;6930:4;6876:59;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6949:3;:21;;;6979:15;;;;;;;;;;;6997:4;6949:53;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6818:195;6461:558:::0;:::o;11684:1007::-;11789:15;508:11:43;:23;520:10;508:23;;;;;;;;;;;;;;;;;;;;;;;;;487:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;11816:12:48::1;11831:37;2116:66;11841:8;;11859:7;11851:16;;11831:9;:37::i;:::-;11816:52;;11879:23;11905:9;:15;;;11921:7;11930:8;11905:34;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11879:60;;12019:9;:17;;;12037:7;12019:26;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;12015:316;;12305:15;12298:22;;;;;;12015:316;12140:4;12114:31;;:14;:31;;;;:83;;;;12192:4;12165:32;;:3;:9;;;12175:4;12165:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:32;;;;12114:83;12093:174;;;12237:15;12230:22;;;;;;;12093:174;12046:231;12374:13;2059:7;12397:15;12390:38;;;;:::i;:::-;12374:54;;12544:13;12559:12:::0;12577:28:::1;12599:4;12591:13;;12577;:28::i;:::-;12543:62;;;;;12615:36;12624:4;12630:5;12637;12644:6;12615:8;:36::i;:::-;12669:15;12662:22;;;;;;;607:1:43;11684:1007:48::0;;;;:::o;21153:825::-;21354:12;21333:10;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;21378:17:::1;21414:5;;21398:23;;;;;;;:::i;:::-;;;;;;;;21378:43;;21438:32;21448:10;21460:9;21438;:32::i;:::-;21431:39;;21480:46;21509:10;21521:4;21480:28;:46::i;:::-;21536:35;21559:4;21565:5;21536:22;:35::i;:::-;21581:17;21601:35;21612:10;21624:4;21630:5;;21601:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:10;:35::i;:::-;21581:55;;21655:59;21682:10;21694:4;21700:5;21707:6;21655:26;:59::i;:::-;21646:68;;21730:16;21741:4;21730:10;:16::i;:::-;21725:247;;21762:3;:19;;;21782:10;21794:9;21813:4;21762:57;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21833:39;21839:4;21845;21851:5;21858;21865:6;21833:5;:39::i;:::-;21725:247;;;21903:58;21915:10;21927:4;21933:5;;21903:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21940:5;21947;21954:6;21903:11;:58::i;:::-;21725:247;21368:610;;21153:825:::0;;;;;;;;;:::o;18221:706::-;18302:12;18317:16;18331:1;18317:4;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:16;;;;:::i;:::-;18302:31;;18384:1;18348:38;;18356:15;;;;;;;;;;;18348:38;;;18344:91;;18409:15;;;;;;;;;;;;;;18344:91;18450:31;18464:4;18470:10;18450:13;:31::i;:::-;18445:100;;18517:4;18523:10;18504:30;;;;;;;;;;;;:::i;:::-;;;;;;;;18445:100;18556:20;18578:12;18592:13;18609:44;18638:4;18630:13;;18609:7;:44::i;:::-;18555:98;;;;;;18664:16;18683:26;18703:4;18695:13;;18683:11;:26::i;:::-;18664:45;;18720:20;18734:4;18726:13;;18720:5;:20::i;:::-;18751:15;;;;;;;;;;;:31;;;18796:4;;18814:12;18840:5;18859:6;18879:8;18901:9;;18751:169;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18292:635;;;;;18221:706;;;;:::o;23980:744::-;24134:4;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;24178:4:::1;448:2:46;412:1;371;24196:37:48;:54;25694:12;25712:22;25728:4;25720:13;;25712:7;:22::i;:::-;25691:43;;;;25768:1;25756:8;25748:5;:16;:21;;;25744:84;;25812:4;25792:25;;;;;;;;;;;:::i;:::-;;;;;;;;25744:84;24275:3:::2;:13;;;24289:4;24303;24310:8;24320:3;24275:49;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;24355:1;24338:19;;:5;:19;;::::0;24334:384:::2;;24376:12;24394:22;24410:4;24402:13;;24394:7;:22::i;:::-;24373:43;;;;681:7:46;24434:32:48;;681:7:46;24434:5:48;:18;:32;;::::0;24430:105:::2;;24514:5;24493:27;;;;;;;;;;;:::i;:::-;;;;;;;;24430:105;24548:25;24556:4;24570:1;24548:7;:25::i;:::-;24359:225;24334:384;;;24604:16;24623:22;24639:4;24631:13;;24623:7;:22::i;:::-;24604:41;;24659:48;24669:8;24679:5;24694:4;24686:13;;24701:1;24659:48;;;;;;;;;;;::::0;:9:::2;:48::i;:::-;24590:128;24334:384;25681:164:::1;7333:1;;23980:744:::0;;;;;:::o;15171:456::-;15298:32;15308:10;15320:9;15298;:32::i;:::-;7228:31;7242:4;7248:10;7228:13;:31::i;:::-;7223:100;;7295:4;7301:10;7282:30;;;;;;;;;;;;:::i;:::-;;;;;;;;7223:100;2116:66:::1;15360:8;;15346:10;:22:::0;15342:80:::1;;15391:20;;;;;;;;;;;;;;15342:80;15457:3;15435:26;;:10;:26;;;:57;;;;15487:4;15465:27;;:10;:27;;;15435:57;15431:127;;;15536:10;15515:32;;;;;;;;;;;:::i;:::-;;;;;;;;15431:127;15567:53;15575:32;15585:10;15597:9;15575;:32::i;:::-;15609:10;15567:7;:53::i;:::-;15171:456:::0;;;;:::o;28889:461::-;28990:4;29006:12;29021:32;29031:10;29043:9;29021;:32::i;:::-;29006:47;;29063:12;29078:16;29089:4;29078:10;:16::i;:::-;29063:31;;2116:66;29122:8;;29108:10;:22;29104:67;;29153:7;29146:14;;;;;;29104:67;29184:9;:17;;;29210:9;29202:18;;29184:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;29180:164;;29328:5;29321:12;;;;;;29180:164;29284:4;29267:22;;:5;:22;;;29260:29;;;;;28889:461;;;;;:::o;150:43:43:-;;;;;;;;;;;;;;;;;;;;;;:::o;271:174::-;1094:13:50;:11;:13::i;:::-;380:6:43::1;354:11;:23;366:10;354:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;419:10;401:37;;;431:6;401:37;;;;;;:::i;:::-;;;;;;;;271:174:::0;;:::o;4475:188:44:-;4596:4;4619:18;:27;4638:7;4619:27;;;;;;;;;;;;;;;:37;4647:8;4619:37;;;;;;;;;;;;;;;;;;;;;;;;;4612:44;;4475:188;;;;:::o;13066:781:48:-;13189:17;13208:14;13226:17;13241:1;13226:4;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;;;;:::i;:::-;13188:55;;;;13253:18;13274:21;13288:6;13274:4;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:21;;;;:::i;:::-;13253:42;;13305:12;13320:32;13330:10;13342:9;13320;:32::i;:::-;13305:47;;13377:4;;13363:5;:11;13369:4;13363:11;;;;;;;;;;;:18;;;;;;;:::i;:::-;;2116:66;13410:8;;13396:10;:22;13392:80;;13441:20;;;;;;;;;;;;;;13392:80;13482:13;13498:3;:9;;;13508:4;13498:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13482:31;;13537:10;13528:19;;:5;:19;;;;:63;;;;;13552:3;:20;;;13573:5;13580:10;13552:39;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13551:40;13528:63;13524:131;;;13627:4;13633:10;13614:30;;;;;;;;;;;;:::i;:::-;;;;;;;;13524:131;13689:1;13669:22;;:8;:22;;;13665:84;;13707:3;:15;;;13723:4;13729:8;13707:31;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13665:84;13759:3;:12;;;13772:4;13786;13759:33;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13803:37;13809:4;13815;;13803:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13821:12;13835:1;13838;13803:5;:37::i;:::-;13178:669;;;;;13066:781;;;;:::o;1169:42:44:-;;;;;;;;;;;;;;;;;:::o;5079:454::-;5280:1;5266:16;;:2;:16;;;5258:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;5363:10;5355:18;;:4;:18;;;:56;;;;5377:34;5394:4;5400:10;5377:16;:34::i;:::-;5355:56;5334:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;5489:37;5499:4;5505:2;5509;5513:6;5521:4;5489:9;:37::i;:::-;5079:454;;;;;:::o;2074:198:50:-;1094:13;:11;:13::i;:::-;2182:1:::1;2162:22;;:8;:22;;::::0;2154:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;28301:342:48:-;28355:4;28371:17;28391:5;:11;28397:4;28391:11;;;;;;;;;;;28371:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28431:1;28416:4;:11;:16;28412:59;;28455:5;28448:12;;;;;28412:59;28481:17;28500:14;28518:17;28533:1;28518:4;:14;;:17;;;;:::i;:::-;28480:55;;;;28545:18;28566:21;28580:6;28566:4;:13;;:21;;;;:::i;:::-;28545:42;;28604:32;28614:10;28626:9;28604;:32::i;:::-;28597:39;;;;;;28301:342;;;;:::o;4740:272:44:-;4817:13;4832:12;4846:13;4871:9;4883:7;:16;4891:7;4883:16;;;;;;;;;;;;4871:28;;4933:1;4909:27;;4967:3;4962:1;:8;;4946:25;;5001:3;4996:1;:8;;4981:24;;4861:151;4740:272;;;;;:::o;31407:388:48:-;31542:7;31551:6;31582:15;31573:6;:24;;;31569:188;;;643:7:46;31617:54:48;;643:7:46;31617:5:48;:29;:54;;;31613:111;;31707:1;31691:18;;31613:111;31745:1;31737:9;;31569:188;31775:5;31782;31767:21;;;;31407:388;;;;;;:::o;2482:319:44:-;2598:4;2648:26;2633:41;;;:11;:41;;;;:109;;;;2705:37;2690:52;;;:11;:52;;;;2633:109;:161;;;;2758:36;2782:11;2758:23;:36::i;:::-;2633:161;2614:180;;2482:319;;;:::o;2277:138::-;2358:7;2384:15;:24;2400:7;2384:24;;;;;;;;;;;;;;;;;;;;;2377:31;;2277:138;;;:::o;1830:386::-;1901:13;1917:16;1925:7;1917;:16::i;:::-;1901:32;;1957:5;1951:11;;:2;:11;;;1943:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;2046:5;2032:19;;:10;:19;;;:58;;;;2055:35;2072:5;2079:10;2055:16;:35::i;:::-;2032:58;2011:166;;;;;;;;;;;;:::i;:::-;;;;;;;;;2188:21;2197:2;2201:7;2188:8;:21::i;:::-;1891:325;1830:386;;:::o;38257:235:48:-;38363:4;681:7:46;38398:32:48;;681:7:46;38398:5:48;:18;:32;;;:87;;;;;38470:15;2059:7;38446:6;:21;;;;:::i;:::-;:39;;;38398:87;38379:106;;38257:235;;;;:::o;35792:686::-;35967:17;36003:5;35987:23;;;;;;35967:43;;36020:12;36035:30;2116:66;36045:8;;36055:9;36035;:30::i;:::-;36020:45;;36134:17;36154:31;36164:5;36154:31;;;;;;;;;;;;;;;;;:9;:31::i;:::-;36134:51;;36209:4;36195:5;:11;36201:4;36195:11;;;;;;;;;;;:18;;;;;;:::i;:::-;;36224:153;36243:4;36261;36279:12;681:7:46;643;36305:5:48;:29;:42;36361:6;36224:5;:153::i;:::-;36412:1;36392:22;;:8;:22;;;36388:84;;36430:3;:15;;;36446:4;36452:8;36430:31;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36388:84;35957:521;;;35792:686;;;;;:::o;1359:130:50:-;1433:12;:10;:12::i;:::-;1422:23;;:7;:5;:7::i;:::-;:23;;;1414:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:130::o;31801:173:48:-;31897:7;31950:4;31956:9;31933:33;;;;;;;;;:::i;:::-;;;;;;;;;;;;;31923:44;;;;;;31916:51;;31801:173;;;;:::o;26396:1272::-;26531:20;26565:19;26598:20;26631:25;26647:7;26639:16;;26631:7;:25::i;:::-;26517:139;;;;;;26852:12;26883:15;26867:13;:31;;;26852:46;;26925:7;:372;;;;;27112:1;27088:26;;:12;:26;;;:208;;;;27294:1;27264:32;;:3;:9;;;27274:7;27264:18;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:32;;;27088:208;26925:372;26908:754;;;27325:18;27349:28;27365:10;27357:19;;27349:7;:28::i;:::-;27322:55;;;;27436:1;494:2:46;27395:11:48;:37;:42;;;27391:116;;27484:7;27464:28;;;;;;;;;;;:::i;:::-;;;;;;;;27391:116;27308:209;26908:754;;;27581:1;643:7:46;27541:12:48;:36;:41;;;27537:115;;27629:7;27609:28;;;;;;;;;;;:::i;:::-;;;;;;;;27537:115;26908:754;26507:1161;;;;26396:1272;;:::o;37793:269::-;901:10:46;37881:50:48;;901:10:46;37881:5:48;:27;:50;;;37877:179;;38040:4;38020:25;;;;;;;;;;;:::i;:::-;;;;;;;;37877:179;37793:269;;:::o;33445:258::-;33568:12;33592:17;33612:35;33622:5;33629;:17;33635:10;33629:17;;;;;;;;;;;33612:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;:35::i;:::-;33592:55;;33671:4;33657:5;:11;33663:4;33657:11;;;;;;;;;;;:18;;;;;;:::i;:::-;;33692:4;33685:11;;;33445:258;;;;;:::o;34436:429::-;34596:6;34619:16;34639:22;34655:4;34647:13;;34639:7;:22::i;:::-;34614:47;;;;34674:18;34694:16;34714:28;34730:10;34722:19;;34714:7;:28::i;:::-;34671:71;;;;;34752:43;34770:4;34776:5;34783:11;34752:17;:43::i;:::-;34812:46;34829:6;34837:9;34848;34812:16;:46::i;:::-;34805:53;;;;;34436:429;;;;;;:::o;38068:183::-;38125:4;38194:1;38160:36;;:22;38176:4;38168:13;;38160:7;:22::i;:::-;:36;;;;:84;;;;;38239:4;38212:32;;:3;:9;;;38222:4;38212:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:32;;;38160:84;38141:103;;38068:183;;;:::o;33129:310::-;33328:17;33348:35;33358:5;33365;:17;33371:10;33365:17;;;;;;;;;;;33348:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;:35::i;:::-;33328:55;;33393:39;33399:4;33405;33411:5;33418;33425:6;33393:5;:39::i;:::-;33318:121;33129:310;;;;;;:::o;33709:681::-;33903:16;33921:15;33938:16;33958:44;33987:4;33979:13;;33958:7;:44::i;:::-;33902:100;;;;;;34012:17;34032:35;34042:5;34049;:17;34055:10;34049:17;;;;;;;;;;;34032:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;:35::i;:::-;34012:55;;34103:1;34081:5;:11;34087:4;34081:11;;;;;;;;;;;:18;;;;;:::i;:::-;;;:23;34077:72;;34134:4;34120:5;:11;34126:4;34120:11;;;;;;;;;;;:18;;;;;;:::i;:::-;;34077:72;34158:62;34168:4;34174:8;34195:5;34184:8;:16;34202:9;34213:6;34158:9;:62::i;:::-;34251:1;34234:19;;:5;:19;;;34230:154;;34269:25;34277:4;34291:1;34269:7;:25::i;:::-;34230:154;;;34325:48;34335:8;34345:5;34360:4;34352:13;;34367:1;34325:48;;;;;;;;;;;;:9;:48::i;:::-;34230:154;33892:498;;;;33709:681;;;;;;:::o;30489:912::-;681:7:46;30706:32:48;;681:7:46;30706:5:48;:18;:32;;;30702:85;;2059:7;30754:22;;;;;:::i;:::-;;;30702:85;30810:15;30801:6;:24;;;30797:434;;;30938:1;643:7:46;30905:5:48;:29;:34;;;30901:125;;30959:52;;;;;;;;;;:::i;:::-;;;;;;;;30901:125;30797:434;;;31146:1;371::46;31119:5:48;:23;:28;;;31115:106;;31202:2;31194:11;;31174:32;;;;;;;;;;;:::i;:::-;;;;;;;;31115:106;30797:434;31341:1;531:2:46;31315:5:48;:22;:27;;;31311:84;;31365:15;:19;31381:2;31365:19;;;;;;;;;;;;31358:26;;;;;;;;;;;31311:84;30489:912;;;:::o;7125:282:44:-;7396:3;7385:6;7377:15;;:22;;7357:3;7347:5;7339:14;;:21;;7316:5;7300:23;;:61;:100;7269:7;:16;7277:7;7269:16;;;;;;;;;;;:131;;;;7125:282;;;;:::o;10890:970::-;11122:15;:2;:13;;;:15::i;:::-;11118:736;;;11190:2;11173:43;;;11238:8;11268:4;11294:3;11319:7;11348:4;11173:197;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;11153:691;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;11720:6;11713:14;;;;;;;;;;;:::i;:::-;;;;;;;;11153:691;;;11767:62;;;;;;;;;;:::i;:::-;;;;;;;;11153:691;11484:52;;;11452:84;;;:8;:84;;;;11427:219;;11577:50;;;;;;;;;;:::i;:::-;;;;;;;;11427:219;11383:277;11118:736;10890:970;;;;;;:::o;34871:420:48:-;35000:35;35085:1;816:10:46;35038:5:48;:31;:48;;;;35000:86;;35097:25;35156:1;295::46;35125:11:48;:27;:32;;;35097:60;;35172:30;:54;;;;;35206:20;35172:54;35168:117;;;35269:4;35249:25;;;;;;;;;;;:::i;:::-;;;;;;;;35168:117;34990:301;;34871:420;;;:::o;35297:489::-;35426:6;35577:9;35568:18;;:6;:18;;;35564:67;;;35611:9;35602:18;;35564:67;35702:9;35693:18;;:6;:18;;;35689:67;;;35736:9;35727:18;;35689:67;35773:6;35766:13;;35297:489;;;;;:::o;36802:330::-;36962:36;36971:4;36977:5;36984;36991:6;36962:8;:36::i;:::-;37022:4;37013:21;37028:5;37013:21;;;;;;:::i;:::-;;;;;;;;37057:9;37048:18;;:6;:18;;;37044:82;;;37102:4;37087:28;37108:6;37087:28;;;;;;:::i;:::-;;;;;;;;37044:82;36802:330;;;;;:::o;1634:139:44:-;1692:7;1712:13;1733:11;1741:2;1733:7;:11::i;:::-;1711:33;;;;1761:5;1754:12;;;1634:139;;;:::o;37138:231:48:-;37271:30;37289:4;37295:5;37271:17;:30::i;:::-;37311:51;37334:4;37326:13;;37341:5;37348;37355:6;37311:14;:51::i;:::-;37138:231;;;;:::o;2426:187:50:-;2499:16;2518:6;;;;;;;;;;;2499:25;;2543:8;2534:6;;:17;;;;;;;;;;;;;;;;;;2597:8;2566:40;;2587:8;2566:40;;;;;;;;;;;;2489:124;2426:187;:::o;36484:312:48:-;36552:35;36567:4;295:1:46;36552:14:48;:35::i;:::-;36548:98;;;36630:4;36610:25;;;;;;;;;;;:::i;:::-;;;;;;;;36548:98;36692:20;36706:4;36698:13;;36692:5;:20::i;:::-;36722:3;:12;;;36735:4;36741:5;36722:25;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36777:4;36763:26;36783:5;36763:26;;;;;;:::i;:::-;;;;;;;;36484:312;;:::o;32845:278::-;33009:40;33015:4;33021:12;33035:5;33042:6;33009:5;:40::i;:::-;33076:4;33064:52;33082:4;33088:12;33102:5;33109:6;33064:52;;;;;;;;;:::i;:::-;;;;;;;;32845:278;;;;;:::o;914:443:41:-;1012:7;1032:17;1051;1072:23;1082:4;1088:6;1072:9;:23::i;:::-;1031:64;;;;1130:1;1122:10;;1109:9;:23;1105:152;;1180:1;1166:4;:11;:15;;;;:::i;:::-;1156:6;:25;1148:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1244:1;1236:10;;1229:17;;;;;;1105:152;1312:25;1321:4;1327:9;1312:8;:25::i;:::-;1339:9;1295:54;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1285:65;;;;;;1266:84;;;;914:443;;;;;:::o;8832:478:44:-;8892:16;8910:12;8924:13;8941:50;8974:7;8941:19;:50::i;:::-;8891:100;;;;;;9013:44;9033:8;9043:5;9050:6;9013:19;:44::i;:::-;9001:56;;;;;;9101:15;:24;9117:7;9101:24;;;;;;;;;;;;9094:31;;;;;;;;;;;9180:46;9189:7;9206:3;9212:5;9219:6;9180:8;:46::i;:::-;9286:3;9241:62;;9268:8;9241:62;;9256:10;9241:62;;;9292:7;9301:1;9241:62;;;;;;;:::i;:::-;;;;;;;;8881:429;;;8832:478;:::o;9316:649::-;9474:16;9492:12;9506:13;9523:11;9531:2;9523:7;:11::i;:::-;9473:61;;;;;;9545:34;9561:2;9565:5;9572:6;9545:15;:34::i;:::-;9621:1;9611:6;:11;:31;;;;;9638:4;9626:16;;:8;:16;;;9611:31;9590:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;9737:2;9725:14;;:8;:14;;;9721:51;;9755:7;;;;;9721:51;9782:31;9791:2;9795;9799:5;9806:6;9782:8;:31::i;:::-;9862:2;9829:48;;9856:4;9829:48;;9844:10;9829:48;;;9866:2;9870:6;9829:48;;;;;;;:::i;:::-;;;;;;;;9888:70;9919:10;9931:4;9937:2;9941;9945:6;9953:4;9888:30;:70::i;:::-;9463:502;;;9316:649;;;;;;:::o;1760:427:41:-;1856:17;1875:14;1915:4;:11;1909:3;:17;1901:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;1971:11;1999:4;2004:3;1999:9;;;;;;;;:::i;:::-;;;;;;;;;;1993:16;;1985:25;;1971:39;;2030:1;2024:3;:7;2020:129;;;2059:26;2066:4;2078:1;2072:3;:7;;;;:::i;:::-;2081:3;2059:6;:26::i;:::-;2047:38;;2020:129;;;2136:1;2128:10;;2116:22;;2020:129;2179:1;2173:3;2167;:9;;;;:::i;:::-;:13;;;;:::i;:::-;2158:22;;1891:296;1760:427;;;;;:::o;829:155:62:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;12009:164:44:-;12110:2;12083:15;:24;12099:7;12083:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12158:7;12154:2;12127:39;;12136:16;12144:7;12136;:16::i;:::-;12127:39;;;;;;;;;;;;12009:164;;:::o;31980:379:48:-;32084:16;32138:1;32122:5;32116:19;:23;32112:76;;;32162:15;;;;;;;;;;;;;;32112:76;32223:3;32207:5;32201:19;:25;32197:82;;;32262:5;32249:19;;;;;;;;;;;:::i;:::-;;;;;;;;32197:82;32324:5;32318:19;32340:5;32347:4;32295:57;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;32288:64;;31980:379;;;;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;1412:320:59:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;37375:412:48:-;37594:1;816:10:46;37566:24:48;37558:5;:32;:37;;;;:155;;;;;295:1:46;643:7;37675:37:48;37611:102;;295:1:46;643:7;37620:37:48;37611:5;:47;:102;;;;37558:155;37541:240;;;37765:4;37745:25;;;;;;;;;;;:::i;:::-;;;;;;;;37541:240;37375:412;;:::o;32365:474::-;32504:30;32522:4;32528:5;32504:17;:30::i;:::-;32545:16;32569:28;32591:4;32583:13;;32569;:28::i;:::-;32544:53;;;;32631:1;32611:22;;:8;:22;;;32607:177;;32703:20;32717:4;32709:13;;32703:5;:20::i;:::-;32756:4;32742:31;32770:1;32742:31;;;;;;:::i;:::-;;;;;;;;32607:177;32793:39;32805:4;32811:5;32818;32825:6;32793:11;:39::i;:::-;32494:345;32365:474;;;;:::o;9971:913:44:-;10178:15;:2;:13;;;:15::i;:::-;10174:704;;;10246:2;10229:38;;;10289:8;10319:4;10345:2;10369:6;10397:4;10229:190;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;10209:659;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;10744:6;10737:14;;;;;;;;;;;:::i;:::-;;;;;;;;10209:659;;;10791:62;;;;;;;;;;:::i;:::-;;;;;;;;10209:659;10513:47;;;10501:59;;;:8;:59;;;;10476:194;;10601:50;;;;;;;;;;:::i;:::-;;;;;;;;10476:194;10432:252;10174:704;9971:913;;;;;;:::o;409:274:41:-;526:11;573:4;:11;566:3;557:6;:12;;;;:::i;:::-;:27;;549:36;;;;;;663:3;654:6;649:2;643:4;639:13;635:26;625:42;618:49;;409:274;;;;;:::o;7684:1142:44:-;7822:15;7848:4;7840:13;;7822:31;;7864:16;7882:15;7899:16;7919:44;7948:4;7940:13;;7919:7;:44::i;:::-;7863:100;;;;;;7974:28;8052:8;8034:2;8013:16;8006:24;;:30;;;;8005:55;7974:86;;8087:6;8075:18;;:9;:18;;;8071:67;;;8118:9;8109:18;;8071:67;8165:15;8152:9;:28;;;8148:96;;8212:21;8204:5;:29;8196:37;;8148:96;8282:1;8262:22;;:8;:22;;;8254:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;8355:1;8338:19;;:5;:19;;;8330:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;8443:4;8426:22;;:5;:22;;;8405:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;8537:39;8546:7;8555:5;8562;8569:6;8537:8;:39::i;:::-;8632:5;8591:59;;8626:3;8591:59;;8606:10;8591:59;;;8639:7;8648:1;8591:59;;;;;;;:::i;:::-;;;;;;;;8660:159;8704:10;8736:1;8752:5;8771:7;8792:1;8660:159;;;;;;;;;;;;:30;:159::i;:::-;7812:1014;;;;;7684:1142;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:77::-;878:7;907:5;896:16;;841:77;;;:::o;924:122::-;997:24;1015:5;997:24;:::i;:::-;990:5;987:35;977:63;;1036:1;1033;1026:12;977:63;924:122;:::o;1052:139::-;1098:5;1136:6;1123:20;1114:29;;1152:33;1179:5;1152:33;:::i;:::-;1052:139;;;;:::o;1197:474::-;1265:6;1273;1322:2;1310:9;1301:7;1297:23;1293:32;1290:119;;;1328:79;;:::i;:::-;1290:119;1448:1;1473:53;1518:7;1509:6;1498:9;1494:22;1473:53;:::i;:::-;1463:63;;1419:117;1575:2;1601:53;1646:7;1637:6;1626:9;1622:22;1601:53;:::i;:::-;1591:63;;1546:118;1197:474;;;;;:::o;1677:118::-;1764:24;1782:5;1764:24;:::i;:::-;1759:3;1752:37;1677:118;;:::o;1801:222::-;1894:4;1932:2;1921:9;1917:18;1909:26;;1945:71;2013:1;2002:9;1998:17;1989:6;1945:71;:::i;:::-;1801:222;;;;:::o;2029:329::-;2088:6;2137:2;2125:9;2116:7;2112:23;2108:32;2105:119;;;2143:79;;:::i;:::-;2105:119;2263:1;2288:53;2333:7;2324:6;2313:9;2309:22;2288:53;:::i;:::-;2278:63;;2234:117;2029:329;;;;:::o;2364:118::-;2451:24;2469:5;2451:24;:::i;:::-;2446:3;2439:37;2364:118;;:::o;2488:93::-;2524:7;2564:10;2557:5;2553:22;2542:33;;2488:93;;;:::o;2587:115::-;2672:23;2689:5;2672:23;:::i;:::-;2667:3;2660:36;2587:115;;:::o;2708:101::-;2744:7;2784:18;2777:5;2773:30;2762:41;;2708:101;;;:::o;2815:115::-;2900:23;2917:5;2900:23;:::i;:::-;2895:3;2888:36;2815:115;;:::o;2936:434::-;3081:4;3119:2;3108:9;3104:18;3096:26;;3132:71;3200:1;3189:9;3185:17;3176:6;3132:71;:::i;:::-;3213:70;3279:2;3268:9;3264:18;3255:6;3213:70;:::i;:::-;3293;3359:2;3348:9;3344:18;3335:6;3293:70;:::i;:::-;2936:434;;;;;;:::o;3376:149::-;3412:7;3452:66;3445:5;3441:78;3430:89;;3376:149;;;:::o;3531:120::-;3603:23;3620:5;3603:23;:::i;:::-;3596:5;3593:34;3583:62;;3641:1;3638;3631:12;3583:62;3531:120;:::o;3657:137::-;3702:5;3740:6;3727:20;3718:29;;3756:32;3782:5;3756:32;:::i;:::-;3657:137;;;;:::o;3800:327::-;3858:6;3907:2;3895:9;3886:7;3882:23;3878:32;3875:119;;;3913:79;;:::i;:::-;3875:119;4033:1;4058:52;4102:7;4093:6;4082:9;4078:22;4058:52;:::i;:::-;4048:62;;4004:116;3800:327;;;;:::o;4133:90::-;4167:7;4210:5;4203:13;4196:21;4185:32;;4133:90;;;:::o;4229:109::-;4310:21;4325:5;4310:21;:::i;:::-;4305:3;4298:34;4229:109;;:::o;4344:210::-;4431:4;4469:2;4458:9;4454:18;4446:26;;4482:65;4544:1;4533:9;4529:17;4520:6;4482:65;:::i;:::-;4344:210;;;;:::o;4560:99::-;4612:6;4646:5;4640:12;4630:22;;4560:99;;;:::o;4665:169::-;4749:11;4783:6;4778:3;4771:19;4823:4;4818:3;4814:14;4799:29;;4665:169;;;;:::o;4840:248::-;4922:1;4932:113;4946:6;4943:1;4940:13;4932:113;;;5031:1;5026:3;5022:11;5016:18;5012:1;5007:3;5003:11;4996:39;4968:2;4965:1;4961:10;4956:15;;4932:113;;;5079:1;5070:6;5065:3;5061:16;5054:27;4902:186;4840:248;;;:::o;5094:102::-;5135:6;5186:2;5182:7;5177:2;5170:5;5166:14;5162:28;5152:38;;5094:102;;;:::o;5202:377::-;5290:3;5318:39;5351:5;5318:39;:::i;:::-;5373:71;5437:6;5432:3;5373:71;:::i;:::-;5366:78;;5453:65;5511:6;5506:3;5499:4;5492:5;5488:16;5453:65;:::i;:::-;5543:29;5565:6;5543:29;:::i;:::-;5538:3;5534:39;5527:46;;5294:285;5202:377;;;;:::o;5585:313::-;5698:4;5736:2;5725:9;5721:18;5713:26;;5785:9;5779:4;5775:20;5771:1;5760:9;5756:17;5749:47;5813:78;5886:4;5877:6;5813:78;:::i;:::-;5805:86;;5585:313;;;;:::o;5904:222::-;5997:4;6035:2;6024:9;6020:18;6012:26;;6048:71;6116:1;6105:9;6101:17;6092:6;6048:71;:::i;:::-;5904:222;;;;:::o;6132:77::-;6169:7;6198:5;6187:16;;6132:77;;;:::o;6215:122::-;6288:24;6306:5;6288:24;:::i;:::-;6281:5;6278:35;6268:63;;6327:1;6324;6317:12;6268:63;6215:122;:::o;6343:139::-;6389:5;6427:6;6414:20;6405:29;;6443:33;6470:5;6443:33;:::i;:::-;6343:139;;;;:::o;6488:474::-;6556:6;6564;6613:2;6601:9;6592:7;6588:23;6584:32;6581:119;;;6619:79;;:::i;:::-;6581:119;6739:1;6764:53;6809:7;6800:6;6789:9;6785:22;6764:53;:::i;:::-;6754:63;;6710:117;6866:2;6892:53;6937:7;6928:6;6917:9;6913:22;6892:53;:::i;:::-;6882:63;;6837:118;6488:474;;;;;:::o;6968:120::-;7040:23;7057:5;7040:23;:::i;:::-;7033:5;7030:34;7020:62;;7078:1;7075;7068:12;7020:62;6968:120;:::o;7094:137::-;7139:5;7177:6;7164:20;7155:29;;7193:32;7219:5;7193:32;:::i;:::-;7094:137;;;;:::o;7237:472::-;7304:6;7312;7361:2;7349:9;7340:7;7336:23;7332:32;7329:119;;;7367:79;;:::i;:::-;7329:119;7487:1;7512:53;7557:7;7548:6;7537:9;7533:22;7512:53;:::i;:::-;7502:63;;7458:117;7614:2;7640:52;7684:7;7675:6;7664:9;7660:22;7640:52;:::i;:::-;7630:62;;7585:117;7237:472;;;;;:::o;7715:117::-;7824:1;7821;7814:12;7838:117;7947:1;7944;7937:12;7961:117;8070:1;8067;8060:12;8097:552;8154:8;8164:6;8214:3;8207:4;8199:6;8195:17;8191:27;8181:122;;8222:79;;:::i;:::-;8181:122;8335:6;8322:20;8312:30;;8365:18;8357:6;8354:30;8351:117;;;8387:79;;:::i;:::-;8351:117;8501:4;8493:6;8489:17;8477:29;;8555:3;8547:4;8539:6;8535:17;8525:8;8521:32;8518:41;8515:128;;;8562:79;;:::i;:::-;8515:128;8097:552;;;;;:::o;8655:963::-;8752:6;8760;8768;8776;8784;8833:3;8821:9;8812:7;8808:23;8804:33;8801:120;;;8840:79;;:::i;:::-;8801:120;8960:1;8985:53;9030:7;9021:6;9010:9;9006:22;8985:53;:::i;:::-;8975:63;;8931:117;9087:2;9113:53;9158:7;9149:6;9138:9;9134:22;9113:53;:::i;:::-;9103:63;;9058:118;9215:2;9241:53;9286:7;9277:6;9266:9;9262:22;9241:53;:::i;:::-;9231:63;;9186:118;9371:2;9360:9;9356:18;9343:32;9402:18;9394:6;9391:30;9388:117;;;9424:79;;:::i;:::-;9388:117;9537:64;9593:7;9584:6;9573:9;9569:22;9537:64;:::i;:::-;9519:82;;;;9314:297;8655:963;;;;;;;;:::o;9624:115::-;9709:23;9726:5;9709:23;:::i;:::-;9704:3;9697:36;9624:115;;:::o;9745:218::-;9836:4;9874:2;9863:9;9859:18;9851:26;;9887:69;9953:1;9942:9;9938:17;9929:6;9887:69;:::i;:::-;9745:218;;;;:::o;9969:121::-;10031:7;10060:24;10078:5;10060:24;:::i;:::-;10049:35;;9969:121;;;:::o;10096:172::-;10194:49;10237:5;10194:49;:::i;:::-;10187:5;10184:60;10174:88;;10258:1;10255;10248:12;10174:88;10096:172;:::o;10274:189::-;10345:5;10383:6;10370:20;10361:29;;10399:58;10451:5;10399:58;:::i;:::-;10274:189;;;;:::o;10469:379::-;10553:6;10602:2;10590:9;10581:7;10577:23;10573:32;10570:119;;;10608:79;;:::i;:::-;10570:119;10728:1;10753:78;10823:7;10814:6;10803:9;10799:22;10753:78;:::i;:::-;10743:88;;10699:142;10469:379;;;;:::o;10854:60::-;10882:3;10903:5;10896:12;;10854:60;;;:::o;10920:142::-;10970:9;11003:53;11021:34;11030:24;11048:5;11030:24;:::i;:::-;11021:34;:::i;:::-;11003:53;:::i;:::-;10990:66;;10920:142;;;:::o;11068:126::-;11118:9;11151:37;11182:5;11151:37;:::i;:::-;11138:50;;11068:126;;;:::o;11200:155::-;11279:9;11312:37;11343:5;11312:37;:::i;:::-;11299:50;;11200:155;;;:::o;11361:189::-;11477:66;11537:5;11477:66;:::i;:::-;11472:3;11465:79;11361:189;;:::o;11556:280::-;11678:4;11716:2;11705:9;11701:18;11693:26;;11729:100;11826:1;11815:9;11811:17;11802:6;11729:100;:::i;:::-;11556:280;;;;:::o;11842:329::-;11901:6;11950:2;11938:9;11929:7;11925:23;11921:32;11918:119;;;11956:79;;:::i;:::-;11918:119;12076:1;12101:53;12146:7;12137:6;12126:9;12122:22;12101:53;:::i;:::-;12091:63;;12047:117;11842:329;;;;:::o;12177:98::-;12228:6;12262:5;12256:12;12246:22;;12177:98;;;:::o;12281:168::-;12364:11;12398:6;12393:3;12386:19;12438:4;12433:3;12429:14;12414:29;;12281:168;;;;:::o;12455:373::-;12541:3;12569:38;12601:5;12569:38;:::i;:::-;12623:70;12686:6;12681:3;12623:70;:::i;:::-;12616:77;;12702:65;12760:6;12755:3;12748:4;12741:5;12737:16;12702:65;:::i;:::-;12792:29;12814:6;12792:29;:::i;:::-;12787:3;12783:39;12776:46;;12545:283;12455:373;;;;:::o;12834:309::-;12945:4;12983:2;12972:9;12968:18;12960:26;;13032:9;13026:4;13022:20;13018:1;13007:9;13003:17;12996:47;13060:76;13131:4;13122:6;13060:76;:::i;:::-;13052:84;;12834:309;;;;:::o;13149:117::-;13258:1;13255;13248:12;13272:180;13320:77;13317:1;13310:88;13417:4;13414:1;13407:15;13441:4;13438:1;13431:15;13458:281;13541:27;13563:4;13541:27;:::i;:::-;13533:6;13529:40;13671:6;13659:10;13656:22;13635:18;13623:10;13620:34;13617:62;13614:88;;;13682:18;;:::i;:::-;13614:88;13722:10;13718:2;13711:22;13501:238;13458:281;;:::o;13745:129::-;13779:6;13806:20;;:::i;:::-;13796:30;;13835:33;13863:4;13855:6;13835:33;:::i;:::-;13745:129;;;:::o;13880:308::-;13942:4;14032:18;14024:6;14021:30;14018:56;;;14054:18;;:::i;:::-;14018:56;14092:29;14114:6;14092:29;:::i;:::-;14084:37;;14176:4;14170;14166:15;14158:23;;13880:308;;;:::o;14194:148::-;14292:6;14287:3;14282;14269:30;14333:1;14324:6;14319:3;14315:16;14308:27;14194:148;;;:::o;14348:425::-;14426:5;14451:66;14467:49;14509:6;14467:49;:::i;:::-;14451:66;:::i;:::-;14442:75;;14540:6;14533:5;14526:21;14578:4;14571:5;14567:16;14616:3;14607:6;14602:3;14598:16;14595:25;14592:112;;;14623:79;;:::i;:::-;14592:112;14713:54;14760:6;14755:3;14750;14713:54;:::i;:::-;14432:341;14348:425;;;;;:::o;14793:340::-;14849:5;14898:3;14891:4;14883:6;14879:17;14875:27;14865:122;;14906:79;;:::i;:::-;14865:122;15023:6;15010:20;15048:79;15123:3;15115:6;15108:4;15100:6;15096:17;15048:79;:::i;:::-;15039:88;;14855:278;14793:340;;;;:::o;15139:120::-;15211:23;15228:5;15211:23;:::i;:::-;15204:5;15201:34;15191:62;;15249:1;15246;15239:12;15191:62;15139:120;:::o;15265:137::-;15310:5;15348:6;15335:20;15326:29;;15364:32;15390:5;15364:32;:::i;:::-;15265:137;;;;:::o;15408:1377::-;15528:6;15536;15544;15552;15560;15568;15576;15625:3;15613:9;15604:7;15600:23;15596:33;15593:120;;;15632:79;;:::i;:::-;15593:120;15752:1;15777:53;15822:7;15813:6;15802:9;15798:22;15777:53;:::i;:::-;15767:63;;15723:117;15907:2;15896:9;15892:18;15879:32;15938:18;15930:6;15927:30;15924:117;;;15960:79;;:::i;:::-;15924:117;16065:63;16120:7;16111:6;16100:9;16096:22;16065:63;:::i;:::-;16055:73;;15850:288;16177:2;16203:53;16248:7;16239:6;16228:9;16224:22;16203:53;:::i;:::-;16193:63;;16148:118;16305:2;16331:53;16376:7;16367:6;16356:9;16352:22;16331:53;:::i;:::-;16321:63;;16276:118;16433:3;16460:52;16504:7;16495:6;16484:9;16480:22;16460:52;:::i;:::-;16450:62;;16404:118;16561:3;16588:52;16632:7;16623:6;16612:9;16608:22;16588:52;:::i;:::-;16578:62;;16532:118;16689:3;16716:52;16760:7;16751:6;16740:9;16736:22;16716:52;:::i;:::-;16706:62;;16660:118;15408:1377;;;;;;;;;;:::o;16791:118::-;16878:24;16896:5;16878:24;:::i;:::-;16873:3;16866:37;16791:118;;:::o;16915:222::-;17008:4;17046:2;17035:9;17031:18;17023:26;;17059:71;17127:1;17116:9;17112:17;17103:6;17059:71;:::i;:::-;16915:222;;;;:::o;17143:149::-;17216:9;17249:37;17280:5;17249:37;:::i;:::-;17236:50;;17143:149;;;:::o;17298:177::-;17408:60;17462:5;17408:60;:::i;:::-;17403:3;17396:73;17298:177;;:::o;17481:268::-;17597:4;17635:2;17624:9;17620:18;17612:26;;17648:94;17739:1;17728:9;17724:17;17715:6;17648:94;:::i;:::-;17481:268;;;;:::o;17755:311::-;17832:4;17922:18;17914:6;17911:30;17908:56;;;17944:18;;:::i;:::-;17908:56;17994:4;17986:6;17982:17;17974:25;;18054:4;18048;18044:15;18036:23;;17755:311;;;:::o;18089:710::-;18185:5;18210:81;18226:64;18283:6;18226:64;:::i;:::-;18210:81;:::i;:::-;18201:90;;18311:5;18340:6;18333:5;18326:21;18374:4;18367:5;18363:16;18356:23;;18427:4;18419:6;18415:17;18407:6;18403:30;18456:3;18448:6;18445:15;18442:122;;;18475:79;;:::i;:::-;18442:122;18590:6;18573:220;18607:6;18602:3;18599:15;18573:220;;;18682:3;18711:37;18744:3;18732:10;18711:37;:::i;:::-;18706:3;18699:50;18778:4;18773:3;18769:14;18762:21;;18649:144;18633:4;18628:3;18624:14;18617:21;;18573:220;;;18577:21;18191:608;;18089:710;;;;;:::o;18822:370::-;18893:5;18942:3;18935:4;18927:6;18923:17;18919:27;18909:122;;18950:79;;:::i;:::-;18909:122;19067:6;19054:20;19092:94;19182:3;19174:6;19167:4;19159:6;19155:17;19092:94;:::i;:::-;19083:103;;18899:293;18822:370;;;;:::o;19198:307::-;19259:4;19349:18;19341:6;19338:30;19335:56;;;19371:18;;:::i;:::-;19335:56;19409:29;19431:6;19409:29;:::i;:::-;19401:37;;19493:4;19487;19483:15;19475:23;;19198:307;;;:::o;19511:423::-;19588:5;19613:65;19629:48;19670:6;19629:48;:::i;:::-;19613:65;:::i;:::-;19604:74;;19701:6;19694:5;19687:21;19739:4;19732:5;19728:16;19777:3;19768:6;19763:3;19759:16;19756:25;19753:112;;;19784:79;;:::i;:::-;19753:112;19874:54;19921:6;19916:3;19911;19874:54;:::i;:::-;19594:340;19511:423;;;;;:::o;19953:338::-;20008:5;20057:3;20050:4;20042:6;20038:17;20034:27;20024:122;;20065:79;;:::i;:::-;20024:122;20182:6;20169:20;20207:78;20281:3;20273:6;20266:4;20258:6;20254:17;20207:78;:::i;:::-;20198:87;;20014:277;19953:338;;;;:::o;20297:1509::-;20451:6;20459;20467;20475;20483;20532:3;20520:9;20511:7;20507:23;20503:33;20500:120;;;20539:79;;:::i;:::-;20500:120;20659:1;20684:53;20729:7;20720:6;20709:9;20705:22;20684:53;:::i;:::-;20674:63;;20630:117;20786:2;20812:53;20857:7;20848:6;20837:9;20833:22;20812:53;:::i;:::-;20802:63;;20757:118;20942:2;20931:9;20927:18;20914:32;20973:18;20965:6;20962:30;20959:117;;;20995:79;;:::i;:::-;20959:117;21100:78;21170:7;21161:6;21150:9;21146:22;21100:78;:::i;:::-;21090:88;;20885:303;21255:2;21244:9;21240:18;21227:32;21286:18;21278:6;21275:30;21272:117;;;21308:79;;:::i;:::-;21272:117;21413:78;21483:7;21474:6;21463:9;21459:22;21413:78;:::i;:::-;21403:88;;21198:303;21568:3;21557:9;21553:19;21540:33;21600:18;21592:6;21589:30;21586:117;;;21622:79;;:::i;:::-;21586:117;21727:62;21781:7;21772:6;21761:9;21757:22;21727:62;:::i;:::-;21717:72;;21511:288;20297:1509;;;;;;;;:::o;21812:761::-;21896:6;21904;21912;21920;21969:3;21957:9;21948:7;21944:23;21940:33;21937:120;;;21976:79;;:::i;:::-;21937:120;22096:1;22121:53;22166:7;22157:6;22146:9;22142:22;22121:53;:::i;:::-;22111:63;;22067:117;22223:2;22249:53;22294:7;22285:6;22274:9;22270:22;22249:53;:::i;:::-;22239:63;;22194:118;22351:2;22377:52;22421:7;22412:6;22401:9;22397:22;22377:52;:::i;:::-;22367:62;;22322:117;22478:2;22504:52;22548:7;22539:6;22528:9;22524:22;22504:52;:::i;:::-;22494:62;;22449:117;21812:761;;;;;;;:::o;22579:138::-;22641:9;22674:37;22705:5;22674:37;:::i;:::-;22661:50;;22579:138;;;:::o;22723:155::-;22822:49;22865:5;22822:49;:::i;:::-;22817:3;22810:62;22723:155;;:::o;22884:246::-;22989:4;23027:2;23016:9;23012:18;23004:26;;23040:83;23120:1;23109:9;23105:17;23096:6;23040:83;:::i;:::-;22884:246;;;;:::o;23136:89::-;23172:7;23212:6;23205:5;23201:18;23190:29;;23136:89;;;:::o;23231:120::-;23303:23;23320:5;23303:23;:::i;:::-;23296:5;23293:34;23283:62;;23341:1;23338;23331:12;23283:62;23231:120;:::o;23357:137::-;23402:5;23440:6;23427:20;23418:29;;23456:32;23482:5;23456:32;:::i;:::-;23357:137;;;;:::o;23500:472::-;23567:6;23575;23624:2;23612:9;23603:7;23599:23;23595:32;23592:119;;;23630:79;;:::i;:::-;23592:119;23750:1;23775:53;23820:7;23811:6;23800:9;23796:22;23775:53;:::i;:::-;23765:63;;23721:117;23877:2;23903:52;23947:7;23938:6;23927:9;23923:22;23903:52;:::i;:::-;23893:62;;23848:117;23500:472;;;;;:::o;23978:218::-;24069:4;24107:2;24096:9;24092:18;24084:26;;24120:69;24186:1;24175:9;24171:17;24162:6;24120:69;:::i;:::-;23978:218;;;;:::o;24202:311::-;24279:4;24369:18;24361:6;24358:30;24355:56;;;24391:18;;:::i;:::-;24355:56;24441:4;24433:6;24429:17;24421:25;;24501:4;24495;24491:15;24483:23;;24202:311;;;:::o;24536:710::-;24632:5;24657:81;24673:64;24730:6;24673:64;:::i;:::-;24657:81;:::i;:::-;24648:90;;24758:5;24787:6;24780:5;24773:21;24821:4;24814:5;24810:16;24803:23;;24874:4;24866:6;24862:17;24854:6;24850:30;24903:3;24895:6;24892:15;24889:122;;;24922:79;;:::i;:::-;24889:122;25037:6;25020:220;25054:6;25049:3;25046:15;25020:220;;;25129:3;25158:37;25191:3;25179:10;25158:37;:::i;:::-;25153:3;25146:50;25225:4;25220:3;25216:14;25209:21;;25096:144;25080:4;25075:3;25071:14;25064:21;;25020:220;;;25024:21;24638:608;;24536:710;;;;;:::o;25269:370::-;25340:5;25389:3;25382:4;25374:6;25370:17;25366:27;25356:122;;25397:79;;:::i;:::-;25356:122;25514:6;25501:20;25539:94;25629:3;25621:6;25614:4;25606:6;25602:17;25539:94;:::i;:::-;25530:103;;25346:293;25269:370;;;;:::o;25645:894::-;25763:6;25771;25820:2;25808:9;25799:7;25795:23;25791:32;25788:119;;;25826:79;;:::i;:::-;25788:119;25974:1;25963:9;25959:17;25946:31;26004:18;25996:6;25993:30;25990:117;;;26026:79;;:::i;:::-;25990:117;26131:78;26201:7;26192:6;26181:9;26177:22;26131:78;:::i;:::-;26121:88;;25917:302;26286:2;26275:9;26271:18;26258:32;26317:18;26309:6;26306:30;26303:117;;;26339:79;;:::i;:::-;26303:117;26444:78;26514:7;26505:6;26494:9;26490:22;26444:78;:::i;:::-;26434:88;;26229:303;25645:894;;;;;:::o;26545:114::-;26612:6;26646:5;26640:12;26630:22;;26545:114;;;:::o;26665:184::-;26764:11;26798:6;26793:3;26786:19;26838:4;26833:3;26829:14;26814:29;;26665:184;;;;:::o;26855:132::-;26922:4;26945:3;26937:11;;26975:4;26970:3;26966:14;26958:22;;26855:132;;;:::o;26993:108::-;27070:24;27088:5;27070:24;:::i;:::-;27065:3;27058:37;26993:108;;:::o;27107:179::-;27176:10;27197:46;27239:3;27231:6;27197:46;:::i;:::-;27275:4;27270:3;27266:14;27252:28;;27107:179;;;;:::o;27292:113::-;27362:4;27394;27389:3;27385:14;27377:22;;27292:113;;;:::o;27441:732::-;27560:3;27589:54;27637:5;27589:54;:::i;:::-;27659:86;27738:6;27733:3;27659:86;:::i;:::-;27652:93;;27769:56;27819:5;27769:56;:::i;:::-;27848:7;27879:1;27864:284;27889:6;27886:1;27883:13;27864:284;;;27965:6;27959:13;27992:63;28051:3;28036:13;27992:63;:::i;:::-;27985:70;;28078:60;28131:6;28078:60;:::i;:::-;28068:70;;27924:224;27911:1;27908;27904:9;27899:14;;27864:284;;;27868:14;28164:3;28157:10;;27565:608;;;27441:732;;;;:::o;28179:373::-;28322:4;28360:2;28349:9;28345:18;28337:26;;28409:9;28403:4;28399:20;28395:1;28384:9;28380:17;28373:47;28437:108;28540:4;28531:6;28437:108;:::i;:::-;28429:116;;28179:373;;;;:::o;28558:151::-;28633:9;28666:37;28697:5;28666:37;:::i;:::-;28653:50;;28558:151;;;:::o;28715:181::-;28827:62;28883:5;28827:62;:::i;:::-;28822:3;28815:75;28715:181;;:::o;28902:272::-;29020:4;29058:2;29047:9;29043:18;29035:26;;29071:96;29164:1;29153:9;29149:17;29140:6;29071:96;:::i;:::-;28902:272;;;;:::o;29180:619::-;29257:6;29265;29273;29322:2;29310:9;29301:7;29297:23;29293:32;29290:119;;;29328:79;;:::i;:::-;29290:119;29448:1;29473:53;29518:7;29509:6;29498:9;29494:22;29473:53;:::i;:::-;29463:63;;29419:117;29575:2;29601:53;29646:7;29637:6;29626:9;29622:22;29601:53;:::i;:::-;29591:63;;29546:118;29703:2;29729:53;29774:7;29765:6;29754:9;29750:22;29729:53;:::i;:::-;29719:63;;29674:118;29180:619;;;;;:::o;29805:617::-;29881:6;29889;29897;29946:2;29934:9;29925:7;29921:23;29917:32;29914:119;;;29952:79;;:::i;:::-;29914:119;30072:1;30097:53;30142:7;30133:6;30122:9;30118:22;30097:53;:::i;:::-;30087:63;;30043:117;30199:2;30225:53;30270:7;30261:6;30250:9;30246:22;30225:53;:::i;:::-;30215:63;;30170:118;30327:2;30353:52;30397:7;30388:6;30377:9;30373:22;30353:52;:::i;:::-;30343:62;;30298:117;29805:617;;;;;:::o;30428:218::-;30519:4;30557:2;30546:9;30542:18;30534:26;;30570:69;30636:1;30625:9;30621:17;30612:6;30570:69;:::i;:::-;30428:218;;;;:::o;30652:619::-;30729:6;30737;30745;30794:2;30782:9;30773:7;30769:23;30765:32;30762:119;;;30800:79;;:::i;:::-;30762:119;30920:1;30945:53;30990:7;30981:6;30970:9;30966:22;30945:53;:::i;:::-;30935:63;;30891:117;31047:2;31073:53;31118:7;31109:6;31098:9;31094:22;31073:53;:::i;:::-;31063:63;;31018:118;31175:2;31201:53;31246:7;31237:6;31226:9;31222:22;31201:53;:::i;:::-;31191:63;;31146:118;30652:619;;;;;:::o;31291:553::-;31349:8;31359:6;31409:3;31402:4;31394:6;31390:17;31386:27;31376:122;;31417:79;;:::i;:::-;31376:122;31530:6;31517:20;31507:30;;31560:18;31552:6;31549:30;31546:117;;;31582:79;;:::i;:::-;31546:117;31696:4;31688:6;31684:17;31672:29;;31750:3;31742:4;31734:6;31730:17;31720:8;31716:32;31713:41;31710:128;;;31757:79;;:::i;:::-;31710:128;31291:553;;;;;:::o;31850:963::-;31947:6;31955;31963;31971;31979;32028:3;32016:9;32007:7;32003:23;31999:33;31996:120;;;32035:79;;:::i;:::-;31996:120;32183:1;32172:9;32168:17;32155:31;32213:18;32205:6;32202:30;32199:117;;;32235:79;;:::i;:::-;32199:117;32348:65;32405:7;32396:6;32385:9;32381:22;32348:65;:::i;:::-;32330:83;;;;32126:297;32462:2;32488:53;32533:7;32524:6;32513:9;32509:22;32488:53;:::i;:::-;32478:63;;32433:118;32590:2;32616:52;32660:7;32651:6;32640:9;32636:22;32616:52;:::i;:::-;32606:62;;32561:117;32717:2;32743:53;32788:7;32779:6;32768:9;32764:22;32743:53;:::i;:::-;32733:63;;32688:118;31850:963;;;;;;;;:::o;32819:116::-;32889:21;32904:5;32889:21;:::i;:::-;32882:5;32879:32;32869:60;;32925:1;32922;32915:12;32869:60;32819:116;:::o;32941:133::-;32984:5;33022:6;33009:20;33000:29;;33038:30;33062:5;33038:30;:::i;:::-;32941:133;;;;:::o;33080:468::-;33145:6;33153;33202:2;33190:9;33181:7;33177:23;33173:32;33170:119;;;33208:79;;:::i;:::-;33170:119;33328:1;33353:53;33398:7;33389:6;33378:9;33374:22;33353:53;:::i;:::-;33343:63;;33299:117;33455:2;33481:50;33523:7;33514:6;33503:9;33499:22;33481:50;:::i;:::-;33471:60;;33426:115;33080:468;;;;;:::o;33554:1109::-;33660:6;33668;33676;33684;33692;33700;33749:3;33737:9;33728:7;33724:23;33720:33;33717:120;;;33756:79;;:::i;:::-;33717:120;33904:1;33893:9;33889:17;33876:31;33934:18;33926:6;33923:30;33920:117;;;33956:79;;:::i;:::-;33920:117;34069:65;34126:7;34117:6;34106:9;34102:22;34069:65;:::i;:::-;34051:83;;;;33847:297;34183:2;34209:53;34254:7;34245:6;34234:9;34230:22;34209:53;:::i;:::-;34199:63;;34154:118;34311:2;34337:53;34382:7;34373:6;34362:9;34358:22;34337:53;:::i;:::-;34327:63;;34282:118;34439:2;34465:53;34510:7;34501:6;34490:9;34486:22;34465:53;:::i;:::-;34455:63;;34410:118;34567:3;34594:52;34638:7;34629:6;34618:9;34614:22;34594:52;:::i;:::-;34584:62;;34538:118;33554:1109;;;;;;;;:::o;34669:472::-;34736:6;34744;34793:2;34781:9;34772:7;34768:23;34764:32;34761:119;;;34799:79;;:::i;:::-;34761:119;34919:1;34944:53;34989:7;34980:6;34969:9;34965:22;34944:53;:::i;:::-;34934:63;;34890:117;35046:2;35072:52;35116:7;35107:6;35096:9;35092:22;35072:52;:::i;:::-;35062:62;;35017:117;34669:472;;;;;:::o;35147:125::-;35213:7;35242:24;35260:5;35242:24;:::i;:::-;35231:35;;35147:125;;;:::o;35278:180::-;35380:53;35427:5;35380:53;:::i;:::-;35373:5;35370:64;35360:92;;35448:1;35445;35438:12;35360:92;35278:180;:::o;35464:197::-;35539:5;35577:6;35564:20;35555:29;;35593:62;35649:5;35593:62;:::i;:::-;35464:197;;;;:::o;35667:387::-;35755:6;35804:2;35792:9;35783:7;35779:23;35775:32;35772:119;;;35810:79;;:::i;:::-;35772:119;35930:1;35955:82;36029:7;36020:6;36009:9;36005:22;35955:82;:::i;:::-;35945:92;;35901:146;35667:387;;;;:::o;36060:474::-;36128:6;36136;36185:2;36173:9;36164:7;36160:23;36156:32;36153:119;;;36191:79;;:::i;:::-;36153:119;36311:1;36336:53;36381:7;36372:6;36361:9;36357:22;36336:53;:::i;:::-;36326:63;;36282:117;36438:2;36464:53;36509:7;36500:6;36489:9;36485:22;36464:53;:::i;:::-;36454:63;;36409:118;36060:474;;;;;:::o;36540:1107::-;36645:6;36653;36661;36669;36677;36685;36734:3;36722:9;36713:7;36709:23;36705:33;36702:120;;;36741:79;;:::i;:::-;36702:120;36861:1;36886:53;36931:7;36922:6;36911:9;36907:22;36886:53;:::i;:::-;36876:63;;36832:117;37016:2;37005:9;37001:18;36988:32;37047:18;37039:6;37036:30;37033:117;;;37069:79;;:::i;:::-;37033:117;37182:65;37239:7;37230:6;37219:9;37215:22;37182:65;:::i;:::-;37164:83;;;;36959:298;37296:2;37322:53;37367:7;37358:6;37347:9;37343:22;37322:53;:::i;:::-;37312:63;;37267:118;37424:2;37450:52;37494:7;37485:6;37474:9;37470:22;37450:52;:::i;:::-;37440:62;;37395:117;37551:3;37578:52;37622:7;37613:6;37602:9;37598:22;37578:52;:::i;:::-;37568:62;;37522:118;36540:1107;;;;;;;;:::o;37653:870::-;37743:6;37751;37759;37767;37816:2;37804:9;37795:7;37791:23;37787:32;37784:119;;;37822:79;;:::i;:::-;37784:119;37970:1;37959:9;37955:17;37942:31;38000:18;37992:6;37989:30;37986:117;;;38022:79;;:::i;:::-;37986:117;38135:64;38191:7;38182:6;38171:9;38167:22;38135:64;:::i;:::-;38117:82;;;;37913:296;38276:2;38265:9;38261:18;38248:32;38307:18;38299:6;38296:30;38293:117;;;38329:79;;:::i;:::-;38293:117;38442:64;38498:7;38489:6;38478:9;38474:22;38442:64;:::i;:::-;38424:82;;;;38219:297;37653:870;;;;;;;:::o;38529:763::-;38614:6;38622;38630;38638;38687:3;38675:9;38666:7;38662:23;38658:33;38655:120;;;38694:79;;:::i;:::-;38655:120;38814:1;38839:53;38884:7;38875:6;38864:9;38860:22;38839:53;:::i;:::-;38829:63;;38785:117;38941:2;38967:53;39012:7;39003:6;38992:9;38988:22;38967:53;:::i;:::-;38957:63;;38912:118;39069:2;39095:53;39140:7;39131:6;39120:9;39116:22;39095:53;:::i;:::-;39085:63;;39040:118;39197:2;39223:52;39267:7;39258:6;39247:9;39243:22;39223:52;:::i;:::-;39213:62;;39168:117;38529:763;;;;;;;:::o;39298:619::-;39375:6;39383;39391;39440:2;39428:9;39419:7;39415:23;39411:32;39408:119;;;39446:79;;:::i;:::-;39408:119;39566:1;39591:53;39636:7;39627:6;39616:9;39612:22;39591:53;:::i;:::-;39581:63;;39537:117;39693:2;39719:53;39764:7;39755:6;39744:9;39740:22;39719:53;:::i;:::-;39709:63;;39664:118;39821:2;39847:53;39892:7;39883:6;39872:9;39868:22;39847:53;:::i;:::-;39837:63;;39792:118;39298:619;;;;;:::o;39923:474::-;39991:6;39999;40048:2;40036:9;40027:7;40023:23;40019:32;40016:119;;;40054:79;;:::i;:::-;40016:119;40174:1;40199:53;40244:7;40235:6;40224:9;40220:22;40199:53;:::i;:::-;40189:63;;40145:117;40301:2;40327:53;40372:7;40363:6;40352:9;40348:22;40327:53;:::i;:::-;40317:63;;40272:118;39923:474;;;;;:::o;40403:329::-;40462:6;40511:2;40499:9;40490:7;40486:23;40482:32;40479:119;;;40517:79;;:::i;:::-;40479:119;40637:1;40662:53;40707:7;40698:6;40687:9;40683:22;40662:53;:::i;:::-;40652:63;;40608:117;40403:329;;;;:::o;40738:474::-;40806:6;40814;40863:2;40851:9;40842:7;40838:23;40834:32;40831:119;;;40869:79;;:::i;:::-;40831:119;40989:1;41014:53;41059:7;41050:6;41039:9;41035:22;41014:53;:::i;:::-;41004:63;;40960:117;41116:2;41142:53;41187:7;41178:6;41167:9;41163:22;41142:53;:::i;:::-;41132:63;;41087:118;40738:474;;;;;:::o;41218:817::-;41306:6;41314;41322;41330;41379:2;41367:9;41358:7;41354:23;41350:32;41347:119;;;41385:79;;:::i;:::-;41347:119;41533:1;41522:9;41518:17;41505:31;41563:18;41555:6;41552:30;41549:117;;;41585:79;;:::i;:::-;41549:117;41698:64;41754:7;41745:6;41734:9;41730:22;41698:64;:::i;:::-;41680:82;;;;41476:296;41811:2;41837:53;41882:7;41873:6;41862:9;41858:22;41837:53;:::i;:::-;41827:63;;41782:118;41939:2;41965:53;42010:7;42001:6;41990:9;41986:22;41965:53;:::i;:::-;41955:63;;41910:118;41218:817;;;;;;;:::o;42041:1089::-;42145:6;42153;42161;42169;42177;42226:3;42214:9;42205:7;42201:23;42197:33;42194:120;;;42233:79;;:::i;:::-;42194:120;42353:1;42378:53;42423:7;42414:6;42403:9;42399:22;42378:53;:::i;:::-;42368:63;;42324:117;42480:2;42506:53;42551:7;42542:6;42531:9;42527:22;42506:53;:::i;:::-;42496:63;;42451:118;42608:2;42634:53;42679:7;42670:6;42659:9;42655:22;42634:53;:::i;:::-;42624:63;;42579:118;42736:2;42762:53;42807:7;42798:6;42787:9;42783:22;42762:53;:::i;:::-;42752:63;;42707:118;42892:3;42881:9;42877:19;42864:33;42924:18;42916:6;42913:30;42910:117;;;42946:79;;:::i;:::-;42910:117;43051:62;43105:7;43096:6;43085:9;43081:22;43051:62;:::i;:::-;43041:72;;42835:288;42041:1089;;;;;;;;:::o;43136:230::-;43276:34;43272:1;43264:6;43260:14;43253:58;43345:13;43340:2;43332:6;43328:15;43321:38;43136:230;:::o;43372:366::-;43514:3;43535:67;43599:2;43594:3;43535:67;:::i;:::-;43528:74;;43611:93;43700:3;43611:93;:::i;:::-;43729:2;43724:3;43720:12;43713:19;;43372:366;;;:::o;43744:419::-;43910:4;43948:2;43937:9;43933:18;43925:26;;43997:9;43991:4;43987:20;43983:1;43972:9;43968:17;43961:47;44025:131;44151:4;44025:131;:::i;:::-;44017:139;;43744:419;;;:::o;44169:434::-;44258:5;44283:66;44299:49;44341:6;44299:49;:::i;:::-;44283:66;:::i;:::-;44274:75;;44372:6;44365:5;44358:21;44410:4;44403:5;44399:16;44448:3;44439:6;44434:3;44430:16;44427:25;44424:112;;;44455:79;;:::i;:::-;44424:112;44545:52;44590:6;44585:3;44580;44545:52;:::i;:::-;44264:339;44169:434;;;;;:::o;44623:355::-;44690:5;44739:3;44732:4;44724:6;44720:17;44716:27;44706:122;;44747:79;;:::i;:::-;44706:122;44857:6;44851:13;44882:90;44968:3;44960:6;44953:4;44945:6;44941:17;44882:90;:::i;:::-;44873:99;;44696:282;44623:355;;;;:::o;44984:524::-;45064:6;45113:2;45101:9;45092:7;45088:23;45084:32;45081:119;;;45119:79;;:::i;:::-;45081:119;45260:1;45249:9;45245:17;45239:24;45290:18;45282:6;45279:30;45276:117;;;45312:79;;:::i;:::-;45276:117;45417:74;45483:7;45474:6;45463:9;45459:22;45417:74;:::i;:::-;45407:84;;45210:291;44984:524;;;;:::o;45514:332::-;45635:4;45673:2;45662:9;45658:18;45650:26;;45686:71;45754:1;45743:9;45739:17;45730:6;45686:71;:::i;:::-;45767:72;45835:2;45824:9;45820:18;45811:6;45767:72;:::i;:::-;45514:332;;;;;:::o;45852:328::-;45971:4;46009:2;45998:9;45994:18;45986:26;;46022:71;46090:1;46079:9;46075:17;46066:6;46022:71;:::i;:::-;46103:70;46169:2;46158:9;46154:18;46145:6;46103:70;:::i;:::-;45852:328;;;;;:::o;46186:104::-;46231:7;46260:24;46278:5;46260:24;:::i;:::-;46249:35;;46186:104;;;:::o;46296:138::-;46377:32;46403:5;46377:32;:::i;:::-;46370:5;46367:43;46357:71;;46424:1;46421;46414:12;46357:71;46296:138;:::o;46440:155::-;46494:5;46532:6;46519:20;46510:29;;46548:41;46583:5;46548:41;:::i;:::-;46440:155;;;;:::o;46601:975::-;46712:6;46720;46728;46736;46785:3;46773:9;46764:7;46760:23;46756:33;46753:120;;;46792:79;;:::i;:::-;46753:120;46940:1;46929:9;46925:17;46912:31;46970:18;46962:6;46959:30;46956:117;;;46992:79;;:::i;:::-;46956:117;47097:63;47152:7;47143:6;47132:9;47128:22;47097:63;:::i;:::-;47087:73;;46883:287;47209:2;47235:61;47288:7;47279:6;47268:9;47264:22;47235:61;:::i;:::-;47225:71;;47180:126;47345:2;47371:52;47415:7;47406:6;47395:9;47391:22;47371:52;:::i;:::-;47361:62;;47316:117;47472:2;47498:61;47551:7;47542:6;47531:9;47527:22;47498:61;:::i;:::-;47488:71;;47443:126;46601:975;;;;;;;:::o;47582:332::-;47703:4;47741:2;47730:9;47726:18;47718:26;;47754:71;47822:1;47811:9;47807:17;47798:6;47754:71;:::i;:::-;47835:72;47903:2;47892:9;47888:18;47879:6;47835:72;:::i;:::-;47582:332;;;;;:::o;47920:::-;48041:4;48079:2;48068:9;48064:18;48056:26;;48092:71;48160:1;48149:9;48145:17;48136:6;48092:71;:::i;:::-;48173:72;48241:2;48230:9;48226:18;48217:6;48173:72;:::i;:::-;47920:332;;;;;:::o;48258:143::-;48315:5;48346:6;48340:13;48331:22;;48362:33;48389:5;48362:33;:::i;:::-;48258:143;;;;:::o;48407:351::-;48477:6;48526:2;48514:9;48505:7;48501:23;48497:32;48494:119;;;48532:79;;:::i;:::-;48494:119;48652:1;48677:64;48733:7;48724:6;48713:9;48709:22;48677:64;:::i;:::-;48667:74;;48623:128;48407:351;;;;:::o;48764:180::-;48812:77;48809:1;48802:88;48909:4;48906:1;48899:15;48933:4;48930:1;48923:15;48950:205;48989:3;49008:19;49025:1;49008:19;:::i;:::-;49003:24;;49041:19;49058:1;49041:19;:::i;:::-;49036:24;;49083:1;49080;49076:9;49069:16;;49106:18;49101:3;49098:27;49095:53;;;49128:18;;:::i;:::-;49095:53;48950:205;;;;:::o;49161:180::-;49209:77;49206:1;49199:88;49306:4;49303:1;49296:15;49330:4;49327:1;49320:15;49347:320;49391:6;49428:1;49422:4;49418:12;49408:22;;49475:1;49469:4;49465:12;49496:18;49486:81;;49552:4;49544:6;49540:17;49530:27;;49486:81;49614:2;49606:6;49603:14;49583:18;49580:38;49577:84;;49633:18;;:::i;:::-;49577:84;49398:269;49347:320;;;:::o;49673:660::-;49876:4;49914:3;49903:9;49899:19;49891:27;;49928:71;49996:1;49985:9;49981:17;49972:6;49928:71;:::i;:::-;50009:72;50077:2;50066:9;50062:18;50053:6;50009:72;:::i;:::-;50091;50159:2;50148:9;50144:18;50135:6;50091:72;:::i;:::-;50173;50241:2;50230:9;50226:18;50217:6;50173:72;:::i;:::-;50255:71;50321:3;50310:9;50306:19;50297:6;50255:71;:::i;:::-;49673:660;;;;;;;;:::o;50339:227::-;50479:34;50475:1;50467:6;50463:14;50456:58;50548:10;50543:2;50535:6;50531:15;50524:35;50339:227;:::o;50572:366::-;50714:3;50735:67;50799:2;50794:3;50735:67;:::i;:::-;50728:74;;50811:93;50900:3;50811:93;:::i;:::-;50929:2;50924:3;50920:12;50913:19;;50572:366;;;:::o;50944:419::-;51110:4;51148:2;51137:9;51133:18;51125:26;;51197:9;51191:4;51187:20;51183:1;51172:9;51168:17;51161:47;51225:131;51351:4;51225:131;:::i;:::-;51217:139;;50944:419;;;:::o;51369:224::-;51509:34;51505:1;51497:6;51493:14;51486:58;51578:7;51573:2;51565:6;51561:15;51554:32;51369:224;:::o;51599:366::-;51741:3;51762:67;51826:2;51821:3;51762:67;:::i;:::-;51755:74;;51838:93;51927:3;51838:93;:::i;:::-;51956:2;51951:3;51947:12;51940:19;;51599:366;;;:::o;51971:419::-;52137:4;52175:2;52164:9;52160:18;52152:26;;52224:9;52218:4;52214:20;52210:1;52199:9;52195:17;52188:47;52252:131;52378:4;52252:131;:::i;:::-;52244:139;;51971:419;;;:::o;52396:237::-;52536:34;52532:1;52524:6;52520:14;52513:58;52605:20;52600:2;52592:6;52588:15;52581:45;52396:237;:::o;52639:366::-;52781:3;52802:67;52866:2;52861:3;52802:67;:::i;:::-;52795:74;;52878:93;52967:3;52878:93;:::i;:::-;52996:2;52991:3;52987:12;52980:19;;52639:366;;;:::o;53011:419::-;53177:4;53215:2;53204:9;53200:18;53192:26;;53264:9;53258:4;53254:20;53250:1;53239:9;53235:17;53228:47;53292:131;53418:4;53292:131;:::i;:::-;53284:139;;53011:419;;;:::o;53436:180::-;53484:77;53481:1;53474:88;53581:4;53578:1;53571:15;53605:4;53602:1;53595:15;53622:229;53762:34;53758:1;53750:6;53746:14;53739:58;53831:12;53826:2;53818:6;53814:15;53807:37;53622:229;:::o;53857:366::-;53999:3;54020:67;54084:2;54079:3;54020:67;:::i;:::-;54013:74;;54096:93;54185:3;54096:93;:::i;:::-;54214:2;54209:3;54205:12;54198:19;;53857:366;;;:::o;54229:419::-;54395:4;54433:2;54422:9;54418:18;54410:26;;54482:9;54476:4;54472:20;54468:1;54457:9;54453:17;54446:47;54510:131;54636:4;54510:131;:::i;:::-;54502:139;;54229:419;;;:::o;54654:634::-;54875:4;54913:2;54902:9;54898:18;54890:26;;54962:9;54956:4;54952:20;54948:1;54937:9;54933:17;54926:47;54990:108;55093:4;55084:6;54990:108;:::i;:::-;54982:116;;55145:9;55139:4;55135:20;55130:2;55119:9;55115:18;55108:48;55173:108;55276:4;55267:6;55173:108;:::i;:::-;55165:116;;54654:634;;;;;:::o;55294:143::-;55351:5;55382:6;55376:13;55367:22;;55398:33;55425:5;55398:33;:::i;:::-;55294:143;;;;:::o;55443:351::-;55513:6;55562:2;55550:9;55541:7;55537:23;55533:32;55530:119;;;55568:79;;:::i;:::-;55530:119;55688:1;55713:64;55769:7;55760:6;55749:9;55745:22;55713:64;:::i;:::-;55703:74;;55659:128;55443:351;;;;:::o;55800:228::-;55940:34;55936:1;55928:6;55924:14;55917:58;56009:11;56004:2;55996:6;55992:15;55985:36;55800:228;:::o;56034:366::-;56176:3;56197:67;56261:2;56256:3;56197:67;:::i;:::-;56190:74;;56273:93;56362:3;56273:93;:::i;:::-;56391:2;56386:3;56382:12;56375:19;;56034:366;;;:::o;56406:419::-;56572:4;56610:2;56599:9;56595:18;56587:26;;56659:9;56653:4;56649:20;56645:1;56634:9;56630:17;56623:47;56687:131;56813:4;56687:131;:::i;:::-;56679:139;;56406:419;;;:::o;56831:332::-;56952:4;56990:2;56979:9;56975:18;56967:26;;57003:71;57071:1;57060:9;57056:17;57047:6;57003:71;:::i;:::-;57084:72;57152:2;57141:9;57137:18;57128:6;57084:72;:::i;:::-;56831:332;;;;;:::o;57169:137::-;57223:5;57254:6;57248:13;57239:22;;57270:30;57294:5;57270:30;:::i;:::-;57169:137;;;;:::o;57312:345::-;57379:6;57428:2;57416:9;57407:7;57403:23;57399:32;57396:119;;;57434:79;;:::i;:::-;57396:119;57554:1;57579:61;57632:7;57623:6;57612:9;57608:22;57579:61;:::i;:::-;57569:71;;57525:125;57312:345;;;;:::o;57663:442::-;57812:4;57850:2;57839:9;57835:18;57827:26;;57863:71;57931:1;57920:9;57916:17;57907:6;57863:71;:::i;:::-;57944:72;58012:2;58001:9;57997:18;57988:6;57944:72;:::i;:::-;58026;58094:2;58083:9;58079:18;58070:6;58026:72;:::i;:::-;57663:442;;;;;;:::o;58111:147::-;58212:11;58249:3;58234:18;;58111:147;;;;:::o;58286:327::-;58400:3;58421:88;58502:6;58497:3;58421:88;:::i;:::-;58414:95;;58519:56;58568:6;58563:3;58556:5;58519:56;:::i;:::-;58600:6;58595:3;58591:16;58584:23;;58286:327;;;;;:::o;58619:291::-;58759:3;58781:103;58880:3;58871:6;58863;58781:103;:::i;:::-;58774:110;;58901:3;58894:10;;58619:291;;;;;:::o;58916:332::-;59037:4;59075:2;59064:9;59060:18;59052:26;;59088:71;59156:1;59145:9;59141:17;59132:6;59088:71;:::i;:::-;59169:72;59237:2;59226:9;59222:18;59213:6;59169:72;:::i;:::-;58916:332;;;;;:::o;59254:228::-;59394:34;59390:1;59382:6;59378:14;59371:58;59463:11;59458:2;59450:6;59446:15;59439:36;59254:228;:::o;59488:366::-;59630:3;59651:67;59715:2;59710:3;59651:67;:::i;:::-;59644:74;;59727:93;59816:3;59727:93;:::i;:::-;59845:2;59840:3;59836:12;59829:19;;59488:366;;;:::o;59860:419::-;60026:4;60064:2;60053:9;60049:18;60041:26;;60113:9;60107:4;60103:20;60099:1;60088:9;60084:17;60077:47;60141:131;60267:4;60141:131;:::i;:::-;60133:139;;59860:419;;;:::o;60285:227::-;60425:34;60421:1;60413:6;60409:14;60402:58;60494:10;60489:2;60481:6;60477:15;60470:35;60285:227;:::o;60518:366::-;60660:3;60681:67;60745:2;60740:3;60681:67;:::i;:::-;60674:74;;60757:93;60846:3;60757:93;:::i;:::-;60875:2;60870:3;60866:12;60859:19;;60518:366;;;:::o;60890:419::-;61056:4;61094:2;61083:9;61079:18;61071:26;;61143:9;61137:4;61133:20;61129:1;61118:9;61114:17;61107:47;61171:131;61297:4;61171:131;:::i;:::-;61163:139;;60890:419;;;:::o;61315:442::-;61464:4;61502:2;61491:9;61487:18;61479:26;;61515:71;61583:1;61572:9;61568:17;61559:6;61515:71;:::i;:::-;61596:72;61664:2;61653:9;61649:18;61640:6;61596:72;:::i;:::-;61678;61746:2;61735:9;61731:18;61722:6;61678:72;:::i;:::-;61315:442;;;;;;:::o;61763:320::-;61878:4;61916:2;61905:9;61901:18;61893:26;;61929:71;61997:1;61986:9;61982:17;61973:6;61929:71;:::i;:::-;62010:66;62072:2;62061:9;62057:18;62048:6;62010:66;:::i;:::-;61763:320;;;;;:::o;62089:332::-;62210:4;62248:2;62237:9;62233:18;62225:26;;62261:71;62329:1;62318:9;62314:17;62305:6;62261:71;:::i;:::-;62342:72;62410:2;62399:9;62395:18;62386:6;62342:72;:::i;:::-;62089:332;;;;;:::o;62427:442::-;62576:4;62614:2;62603:9;62599:18;62591:26;;62627:71;62695:1;62684:9;62680:17;62671:6;62627:71;:::i;:::-;62708:72;62776:2;62765:9;62761:18;62752:6;62708:72;:::i;:::-;62790;62858:2;62847:9;62843:18;62834:6;62790:72;:::i;:::-;62427:442;;;;;;:::o;62875:143::-;62932:5;62963:6;62957:13;62948:22;;62979:33;63006:5;62979:33;:::i;:::-;62875:143;;;;:::o;63024:351::-;63094:6;63143:2;63131:9;63122:7;63118:23;63114:32;63111:119;;;63149:79;;:::i;:::-;63111:119;63269:1;63294:64;63350:7;63341:6;63330:9;63326:22;63294:64;:::i;:::-;63284:74;;63240:128;63024:351;;;;:::o;63403:314::-;63499:3;63520:70;63583:6;63578:3;63520:70;:::i;:::-;63513:77;;63600:56;63649:6;63644:3;63637:5;63600:56;:::i;:::-;63681:29;63703:6;63681:29;:::i;:::-;63676:3;63672:39;63665:46;;63403:314;;;;;:::o;63723:981::-;64008:4;64046:3;64035:9;64031:19;64023:27;;64096:9;64090:4;64086:20;64082:1;64071:9;64067:17;64060:47;64124:86;64205:4;64196:6;64188;64124:86;:::i;:::-;64116:94;;64220:72;64288:2;64277:9;64273:18;64264:6;64220:72;:::i;:::-;64302:70;64368:2;64357:9;64353:18;64344:6;64302:70;:::i;:::-;64382;64448:2;64437:9;64433:18;64424:6;64382:70;:::i;:::-;64462:73;64530:3;64519:9;64515:19;64506:6;64462:73;:::i;:::-;64583:9;64577:4;64573:20;64567:3;64556:9;64552:19;64545:49;64611:86;64692:4;64683:6;64675;64611:86;:::i;:::-;64603:94;;63723:981;;;;;;;;;;;:::o;64710:549::-;64885:4;64923:3;64912:9;64908:19;64900:27;;64937:71;65005:1;64994:9;64990:17;64981:6;64937:71;:::i;:::-;65018:72;65086:2;65075:9;65071:18;65062:6;65018:72;:::i;:::-;65100;65168:2;65157:9;65153:18;65144:6;65100:72;:::i;:::-;65182:70;65248:2;65237:9;65233:18;65224:6;65182:70;:::i;:::-;64710:549;;;;;;;:::o;65265:96::-;65323:6;65351:3;65341:13;;65265:96;;;;:::o;65367:140::-;65415:4;65438:3;65430:11;;65461:3;65458:1;65451:14;65495:4;65492:1;65482:18;65474:26;;65367:140;;;:::o;65513:93::-;65550:6;65597:2;65592;65585:5;65581:14;65577:23;65567:33;;65513:93;;;:::o;65612:107::-;65656:8;65706:5;65700:4;65696:16;65675:37;;65612:107;;;;:::o;65725:393::-;65794:6;65844:1;65832:10;65828:18;65867:97;65897:66;65886:9;65867:97;:::i;:::-;65985:39;66015:8;66004:9;65985:39;:::i;:::-;65973:51;;66057:4;66053:9;66046:5;66042:21;66033:30;;66106:4;66096:8;66092:19;66085:5;66082:30;66072:40;;65801:317;;65725:393;;;;;:::o;66124:142::-;66174:9;66207:53;66225:34;66234:24;66252:5;66234:24;:::i;:::-;66225:34;:::i;:::-;66207:53;:::i;:::-;66194:66;;66124:142;;;:::o;66272:75::-;66315:3;66336:5;66329:12;;66272:75;;;:::o;66353:269::-;66463:39;66494:7;66463:39;:::i;:::-;66524:91;66573:41;66597:16;66573:41;:::i;:::-;66565:6;66558:4;66552:11;66524:91;:::i;:::-;66518:4;66511:105;66429:193;66353:269;;;:::o;66628:73::-;66673:3;66628:73;:::o;66707:189::-;66784:32;;:::i;:::-;66825:65;66883:6;66875;66869:4;66825:65;:::i;:::-;66760:136;66707:189;;:::o;66902:186::-;66962:120;66979:3;66972:5;66969:14;66962:120;;;67033:39;67070:1;67063:5;67033:39;:::i;:::-;67006:1;66999:5;66995:13;66986:22;;66962:120;;;66902:186;;:::o;67094:541::-;67194:2;67189:3;67186:11;67183:445;;;67228:37;67259:5;67228:37;:::i;:::-;67311:29;67329:10;67311:29;:::i;:::-;67301:8;67297:44;67494:2;67482:10;67479:18;67476:49;;;67515:8;67500:23;;67476:49;67538:80;67594:22;67612:3;67594:22;:::i;:::-;67584:8;67580:37;67567:11;67538:80;:::i;:::-;67198:430;;67183:445;67094:541;;;:::o;67641:117::-;67695:8;67745:5;67739:4;67735:16;67714:37;;67641:117;;;;:::o;67764:169::-;67808:6;67841:51;67889:1;67885:6;67877:5;67874:1;67870:13;67841:51;:::i;:::-;67837:56;67922:4;67916;67912:15;67902:25;;67815:118;67764:169;;;;:::o;67938:295::-;68014:4;68160:29;68185:3;68179:4;68160:29;:::i;:::-;68152:37;;68222:3;68219:1;68215:11;68209:4;68206:21;68198:29;;67938:295;;;;:::o;68238:1398::-;68360:43;68399:3;68394;68360:43;:::i;:::-;68468:18;68460:6;68457:30;68454:56;;;68490:18;;:::i;:::-;68454:56;68534:38;68566:4;68560:11;68534:38;:::i;:::-;68619:66;68678:6;68670;68664:4;68619:66;:::i;:::-;68712:1;68741:2;68733:6;68730:14;68758:1;68753:631;;;;69428:1;69445:6;69442:84;;;69501:9;69496:3;69492:19;69479:33;69470:42;;69442:84;69552:67;69612:6;69605:5;69552:67;:::i;:::-;69546:4;69539:81;69401:229;68723:907;;68753:631;68805:4;68801:9;68793:6;68789:22;68839:36;68870:4;68839:36;:::i;:::-;68897:1;68911:215;68925:7;68922:1;68919:14;68911:215;;;69011:9;69006:3;69002:19;68989:33;68981:6;68974:49;69062:1;69054:6;69050:14;69040:24;;69109:2;69098:9;69094:18;69081:31;;68948:4;68945:1;68941:12;68936:17;;68911:215;;;69154:6;69145:7;69142:19;69139:186;;;69219:9;69214:3;69210:19;69197:33;69262:48;69304:4;69296:6;69292:17;69281:9;69262:48;:::i;:::-;69254:6;69247:64;69162:163;69139:186;69371:1;69367;69359:6;69355:14;69351:22;69345:4;69338:36;68760:624;;;68723:907;;68335:1301;;;68238:1398;;;:::o;69642:228::-;69782:34;69778:1;69770:6;69766:14;69759:58;69851:11;69846:2;69838:6;69834:15;69827:36;69642:228;:::o;69876:366::-;70018:3;70039:67;70103:2;70098:3;70039:67;:::i;:::-;70032:74;;70115:93;70204:3;70115:93;:::i;:::-;70233:2;70228:3;70224:12;70217:19;;69876:366;;;:::o;70248:419::-;70414:4;70452:2;70441:9;70437:18;70429:26;;70501:9;70495:4;70491:20;70487:1;70476:9;70472:17;70465:47;70529:131;70655:4;70529:131;:::i;:::-;70521:139;;70248:419;;;:::o;70673:225::-;70813:34;70809:1;70801:6;70797:14;70790:58;70882:8;70877:2;70869:6;70865:15;70858:33;70673:225;:::o;70904:366::-;71046:3;71067:67;71131:2;71126:3;71067:67;:::i;:::-;71060:74;;71143:93;71232:3;71143:93;:::i;:::-;71261:2;71256:3;71252:12;71245:19;;70904:366;;;:::o;71276:419::-;71442:4;71480:2;71469:9;71465:18;71457:26;;71529:9;71523:4;71519:20;71515:1;71504:9;71500:17;71493:47;71557:131;71683:4;71557:131;:::i;:::-;71549:139;;71276:419;;;:::o;71701:220::-;71841:34;71837:1;71829:6;71825:14;71818:58;71910:3;71905:2;71897:6;71893:15;71886:28;71701:220;:::o;71927:366::-;72069:3;72090:67;72154:2;72149:3;72090:67;:::i;:::-;72083:74;;72166:93;72255:3;72166:93;:::i;:::-;72284:2;72279:3;72275:12;72268:19;;71927:366;;;:::o;72299:419::-;72465:4;72503:2;72492:9;72488:18;72480:26;;72552:9;72546:4;72542:20;72538:1;72527:9;72523:17;72516:47;72580:131;72706:4;72580:131;:::i;:::-;72572:139;;72299:419;;;:::o;72724:248::-;72864:34;72860:1;72852:6;72848:14;72841:58;72933:31;72928:2;72920:6;72916:15;72909:56;72724:248;:::o;72978:366::-;73120:3;73141:67;73205:2;73200:3;73141:67;:::i;:::-;73134:74;;73217:93;73306:3;73217:93;:::i;:::-;73335:2;73330:3;73326:12;73319:19;;72978:366;;;:::o;73350:419::-;73516:4;73554:2;73543:9;73539:18;73531:26;;73603:9;73597:4;73593:20;73589:1;73578:9;73574:17;73567:47;73631:131;73757:4;73631:131;:::i;:::-;73623:139;;73350:419;;;:::o;73775:208::-;73814:4;73834:19;73851:1;73834:19;:::i;:::-;73829:24;;73867:19;73884:1;73867:19;:::i;:::-;73862:24;;73910:1;73907;73903:9;73895:17;;73934:18;73928:4;73925:28;73922:54;;;73956:18;;:::i;:::-;73922:54;73775:208;;;;:::o;73989:1390::-;74104:36;74136:3;74104:36;:::i;:::-;74205:18;74197:6;74194:30;74191:56;;;74227:18;;:::i;:::-;74191:56;74271:38;74303:4;74297:11;74271:38;:::i;:::-;74356:66;74415:6;74407;74401:4;74356:66;:::i;:::-;74449:1;74473:4;74460:17;;74505:2;74497:6;74494:14;74522:1;74517:617;;;;75178:1;75195:6;75192:77;;;75244:9;75239:3;75235:19;75229:26;75220:35;;75192:77;75295:67;75355:6;75348:5;75295:67;:::i;:::-;75289:4;75282:81;75151:222;74487:886;;74517:617;74569:4;74565:9;74557:6;74553:22;74603:36;74634:4;74603:36;:::i;:::-;74661:1;74675:208;74689:7;74686:1;74683:14;74675:208;;;74768:9;74763:3;74759:19;74753:26;74745:6;74738:42;74819:1;74811:6;74807:14;74797:24;;74866:2;74855:9;74851:18;74838:31;;74712:4;74709:1;74705:12;74700:17;;74675:208;;;74911:6;74902:7;74899:19;74896:179;;;74969:9;74964:3;74960:19;74954:26;75012:48;75054:4;75046:6;75042:17;75031:9;75012:48;:::i;:::-;75004:6;74997:64;74919:156;74896:179;75121:1;75117;75109:6;75105:14;75101:22;75095:4;75088:36;74524:610;;;74487:886;;74079:1300;;;73989:1390;;:::o;75385:182::-;75525:34;75521:1;75513:6;75509:14;75502:58;75385:182;:::o;75573:366::-;75715:3;75736:67;75800:2;75795:3;75736:67;:::i;:::-;75729:74;;75812:93;75901:3;75812:93;:::i;:::-;75930:2;75925:3;75921:12;75914:19;;75573:366;;;:::o;75945:419::-;76111:4;76149:2;76138:9;76134:18;76126:26;;76198:9;76192:4;76188:20;76184:1;76173:9;76169:17;76162:47;76226:131;76352:4;76226:131;:::i;:::-;76218:139;;75945:419;;;:::o;76370:79::-;76409:7;76438:5;76427:16;;76370:79;;;:::o;76455:157::-;76560:45;76580:24;76598:5;76580:24;:::i;:::-;76560:45;:::i;:::-;76555:3;76548:58;76455:157;;:::o;76618:397::-;76758:3;76773:75;76844:3;76835:6;76773:75;:::i;:::-;76873:2;76868:3;76864:12;76857:19;;76886:75;76957:3;76948:6;76886:75;:::i;:::-;76986:2;76981:3;76977:12;76970:19;;77006:3;76999:10;;76618:397;;;;;:::o;77021:1053::-;77344:4;77382:3;77371:9;77367:19;77359:27;;77396:71;77464:1;77453:9;77449:17;77440:6;77396:71;:::i;:::-;77477:72;77545:2;77534:9;77530:18;77521:6;77477:72;:::i;:::-;77596:9;77590:4;77586:20;77581:2;77570:9;77566:18;77559:48;77624:108;77727:4;77718:6;77624:108;:::i;:::-;77616:116;;77779:9;77773:4;77769:20;77764:2;77753:9;77749:18;77742:48;77807:108;77910:4;77901:6;77807:108;:::i;:::-;77799:116;;77963:9;77957:4;77953:20;77947:3;77936:9;77932:19;77925:49;77991:76;78062:4;78053:6;77991:76;:::i;:::-;77983:84;;77021:1053;;;;;;;;:::o;78080:141::-;78136:5;78167:6;78161:13;78152:22;;78183:32;78209:5;78183:32;:::i;:::-;78080:141;;;;:::o;78227:349::-;78296:6;78345:2;78333:9;78324:7;78320:23;78316:32;78313:119;;;78351:79;;:::i;:::-;78313:119;78471:1;78496:63;78551:7;78542:6;78531:9;78527:22;78496:63;:::i;:::-;78486:73;;78442:127;78227:349;;;;:::o;78582:106::-;78626:8;78675:5;78670:3;78666:15;78645:36;;78582:106;;;:::o;78694:183::-;78729:3;78767:1;78749:16;78746:23;78743:128;;;78805:1;78802;78799;78784:23;78827:34;78858:1;78852:8;78827:34;:::i;:::-;78820:41;;78743:128;78694:183;:::o;78883:711::-;78922:3;78960:4;78942:16;78939:26;78968:5;78936:39;78997:20;;:::i;:::-;79072:1;79054:16;79050:24;79047:1;79041:4;79026:49;79105:4;79099:11;79204:16;79197:4;79189:6;79185:17;79182:39;79149:18;79141:6;79138:30;79122:113;79119:146;;;79250:5;;;;79119:146;79296:6;79290:4;79286:17;79332:3;79326:10;79359:18;79351:6;79348:30;79345:43;;;79381:5;;;;;;79345:43;79429:6;79422:4;79417:3;79413:14;79409:27;79488:1;79470:16;79466:24;79460:4;79456:35;79451:3;79448:44;79445:57;;;79495:5;;;;;;;79445:57;79512;79560:6;79554:4;79550:17;79542:6;79538:30;79532:4;79512:57;:::i;:::-;79585:3;79578:10;;78926:668;;;;;78883:711;;:::o;79600:239::-;79740:34;79736:1;79728:6;79724:14;79717:58;79809:22;79804:2;79796:6;79792:15;79785:47;79600:239;:::o;79845:366::-;79987:3;80008:67;80072:2;80067:3;80008:67;:::i;:::-;80001:74;;80084:93;80173:3;80084:93;:::i;:::-;80202:2;80197:3;80193:12;80186:19;;79845:366;;;:::o;80217:419::-;80383:4;80421:2;80410:9;80406:18;80398:26;;80470:9;80464:4;80460:20;80456:1;80445:9;80441:17;80434:47;80498:131;80624:4;80498:131;:::i;:::-;80490:139;;80217:419;;;:::o;80642:227::-;80782:34;80778:1;80770:6;80766:14;80759:58;80851:10;80846:2;80838:6;80834:15;80827:35;80642:227;:::o;80875:366::-;81017:3;81038:67;81102:2;81097:3;81038:67;:::i;:::-;81031:74;;81114:93;81203:3;81114:93;:::i;:::-;81232:2;81227:3;81223:12;81216:19;;80875:366;;;:::o;81247:419::-;81413:4;81451:2;81440:9;81436:18;81428:26;;81500:9;81494:4;81490:20;81486:1;81475:9;81471:17;81464:47;81528:131;81654:4;81528:131;:::i;:::-;81520:139;;81247:419;;;:::o;81672:632::-;81863:4;81901:3;81890:9;81886:19;81878:27;;81951:9;81945:4;81941:20;81937:1;81926:9;81922:17;81915:47;81979:76;82050:4;82041:6;81979:76;:::i;:::-;81971:84;;82065:72;82133:2;82122:9;82118:18;82109:6;82065:72;:::i;:::-;82147:70;82213:2;82202:9;82198:18;82189:6;82147:70;:::i;:::-;82227;82293:2;82282:9;82278:18;82269:6;82227:70;:::i;:::-;81672:632;;;;;;;:::o;82310:194::-;82350:4;82370:20;82388:1;82370:20;:::i;:::-;82365:25;;82404:20;82422:1;82404:20;:::i;:::-;82399:25;;82448:1;82445;82441:9;82433:17;;82472:1;82466:4;82463:11;82460:37;;;82477:18;;:::i;:::-;82460:37;82310:194;;;;:::o;82510:179::-;82650:31;82646:1;82638:6;82634:14;82627:55;82510:179;:::o;82695:366::-;82837:3;82858:67;82922:2;82917:3;82858:67;:::i;:::-;82851:74;;82934:93;83023:3;82934:93;:::i;:::-;83052:2;83047:3;83043:12;83036:19;;82695:366;;;:::o;83067:419::-;83233:4;83271:2;83260:9;83256:18;83248:26;;83320:9;83314:4;83310:20;83306:1;83295:9;83291:17;83284:47;83348:131;83474:4;83348:131;:::i;:::-;83340:139;;83067:419;;;:::o;83492:85::-;83537:7;83566:5;83555:16;;83492:85;;;:::o;83583:158::-;83641:9;83674:61;83692:42;83701:32;83727:5;83701:32;:::i;:::-;83692:42;:::i;:::-;83674:61;:::i;:::-;83661:74;;83583:158;;;:::o;83747:147::-;83842:45;83881:5;83842:45;:::i;:::-;83837:3;83830:58;83747:147;;:::o;83900:348::-;84029:4;84067:2;84056:9;84052:18;84044:26;;84080:71;84148:1;84137:9;84133:17;84124:6;84080:71;:::i;:::-;84161:80;84237:2;84226:9;84222:18;84213:6;84161:80;:::i;:::-;83900:348;;;;;:::o;84254:180::-;84394:32;84390:1;84382:6;84378:14;84371:56;84254:180;:::o;84440:366::-;84582:3;84603:67;84667:2;84662:3;84603:67;:::i;:::-;84596:74;;84679:93;84768:3;84679:93;:::i;:::-;84797:2;84792:3;84788:12;84781:19;;84440:366;;;:::o;84812:419::-;84978:4;85016:2;85005:9;85001:18;84993:26;;85065:9;85059:4;85055:20;85051:1;85040:9;85036:17;85029:47;85093:131;85219:4;85093:131;:::i;:::-;85085:139;;84812:419;;;:::o;85237:191::-;85277:3;85296:20;85314:1;85296:20;:::i;:::-;85291:25;;85330:20;85348:1;85330:20;:::i;:::-;85325:25;;85373:1;85370;85366:9;85359:16;;85394:3;85391:1;85388:10;85385:36;;;85401:18;;:::i;:::-;85385:36;85237:191;;;;:::o;85434:86::-;85469:7;85509:4;85502:5;85498:16;85487:27;;85434:86;;;:::o;85526:96::-;85560:8;85609:5;85604:3;85600:15;85579:36;;85526:96;;;:::o;85628:93::-;85665:7;85694:21;85709:5;85694:21;:::i;:::-;85683:32;;85628:93;;;:::o;85727:149::-;85828:41;85846:22;85862:5;85846:22;:::i;:::-;85828:41;:::i;:::-;85823:3;85816:54;85727:149;;:::o;85882:148::-;85984:11;86021:3;86006:18;;85882:148;;;;:::o;86036:390::-;86142:3;86170:39;86203:5;86170:39;:::i;:::-;86225:89;86307:6;86302:3;86225:89;:::i;:::-;86218:96;;86323:65;86381:6;86376:3;86369:4;86362:5;86358:16;86323:65;:::i;:::-;86413:6;86408:3;86404:16;86397:23;;86146:280;86036:390;;;;:::o;86432:386::-;86536:3;86564:38;86596:5;86564:38;:::i;:::-;86618:88;86699:6;86694:3;86618:88;:::i;:::-;86611:95;;86715:65;86773:6;86768:3;86761:4;86754:5;86750:16;86715:65;:::i;:::-;86805:6;86800:3;86796:16;86789:23;;86540:278;86432:386;;;;:::o;86824:563::-;87026:3;87041:71;87108:3;87099:6;87041:71;:::i;:::-;87137:1;87132:3;87128:11;87121:18;;87156:95;87247:3;87238:6;87156:95;:::i;:::-;87149:102;;87268:93;87357:3;87348:6;87268:93;:::i;:::-;87261:100;;87378:3;87371:10;;86824:563;;;;;;:::o;87393:751::-;87616:4;87654:3;87643:9;87639:19;87631:27;;87668:71;87736:1;87725:9;87721:17;87712:6;87668:71;:::i;:::-;87749:72;87817:2;87806:9;87802:18;87793:6;87749:72;:::i;:::-;87831;87899:2;87888:9;87884:18;87875:6;87831:72;:::i;:::-;87913;87981:2;87970:9;87966:18;87957:6;87913:72;:::i;:::-;88033:9;88027:4;88023:20;88017:3;88006:9;88002:19;87995:49;88061:76;88132:4;88123:6;88061:76;:::i;:::-;88053:84;;87393:751;;;;;;;;:::o;88150:181::-;88290:33;88286:1;88278:6;88274:14;88267:57;88150:181;:::o;88337:366::-;88479:3;88500:67;88564:2;88559:3;88500:67;:::i;:::-;88493:74;;88576:93;88665:3;88576:93;:::i;:::-;88694:2;88689:3;88685:12;88678:19;;88337:366;;;:::o;88709:419::-;88875:4;88913:2;88902:9;88898:18;88890:26;;88962:9;88956:4;88952:20;88948:1;88937:9;88933:17;88926:47;88990:131;89116:4;88990:131;:::i;:::-;88982:139;;88709:419;;;:::o;89134:220::-;89274:34;89270:1;89262:6;89258:14;89251:58;89343:3;89338:2;89330:6;89326:15;89319:28;89134:220;:::o;89360:366::-;89502:3;89523:67;89587:2;89582:3;89523:67;:::i;:::-;89516:74;;89599:93;89688:3;89599:93;:::i;:::-;89717:2;89712:3;89708:12;89701:19;;89360:366;;;:::o;89732:419::-;89898:4;89936:2;89925:9;89921:18;89913:26;;89985:9;89979:4;89975:20;89971:1;89960:9;89956:17;89949:47;90013:131;90139:4;90013:131;:::i;:::-;90005:139;;89732:419;;;:::o;90157:239::-;90297:34;90293:1;90285:6;90281:14;90274:58;90366:22;90361:2;90353:6;90349:15;90342:47;90157:239;:::o;90402:366::-;90544:3;90565:67;90629:2;90624:3;90565:67;:::i;:::-;90558:74;;90641:93;90730:3;90641:93;:::i;:::-;90759:2;90754:3;90750:12;90743:19;;90402:366;;;:::o;90774:419::-;90940:4;90978:2;90967:9;90963:18;90955:26;;91027:9;91021:4;91017:20;91013:1;91002:9;90998:17;90991:47;91055:131;91181:4;91055:131;:::i;:::-;91047:139;;90774:419;;;:::o" + }, + "methodIdentifiers": { + "_tokens(uint256)": "ed70554d", + "allFusesBurned(bytes32,uint32)": "adf4960a", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address,uint256)": "00fdd58e", + "balanceOfBatch(address[],uint256[])": "4e1273f4", + "canExtendSubnames(bytes32,address)": "0e4cd725", + "canModifyName(bytes32,address)": "41415eab", + "controllers(address)": "da8c229e", + "ens()": "3f15457f", + "extendExpiry(bytes32,bytes32,uint64)": "6e5d6ad2", + "getApproved(uint256)": "081812fc", + "getData(uint256)": "0178fe3f", + "isApprovedForAll(address,address)": "e985e9c5", + "isWrapped(bytes32)": "fd0cd0d9", + "isWrapped(bytes32,bytes32)": "d9a50c12", + "metadataService()": "53095467", + "name()": "06fdde03", + "names(bytes32)": "20c38e2b", + "onERC721Received(address,address,uint256,bytes)": "150b7a02", + "owner()": "8da5cb5b", + "ownerOf(uint256)": "6352211e", + "recoverFunds(address,address,uint256)": "5d3590d5", + "registerAndWrapETH2LD(string,address,uint256,address,uint16)": "a4014982", + "registrar()": "2b20e397", + "renew(uint256,uint256)": "c475abff", + "renounceOwnership()": "715018a6", + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": "2eb2c2d6", + "safeTransferFrom(address,address,uint256,uint256,bytes)": "f242432a", + "setApprovalForAll(address,bool)": "a22cb465", + "setChildFuses(bytes32,bytes32,uint32,uint64)": "33c69ea9", + "setController(address,bool)": "e0dba60f", + "setFuses(bytes32,uint16)": "402906fc", + "setMetadataService(address)": "1534e177", + "setRecord(bytes32,address,address,uint64)": "cf408823", + "setResolver(bytes32,address)": "1896f70a", + "setSubnodeOwner(bytes32,string,address,uint32,uint64)": "c658e086", + "setSubnodeRecord(bytes32,string,address,address,uint64,uint32,uint64)": "24c1af44", + "setTTL(bytes32,uint64)": "14ab9038", + "setUpgradeContract(address)": "b6bcad26", + "supportsInterface(bytes4)": "01ffc9a7", + "transferOwnership(address)": "f2fde38b", + "unwrap(bytes32,bytes32,address)": "d8c9921a", + "unwrapETH2LD(bytes32,address,address)": "8b4dfa75", + "upgrade(bytes,bytes)": "c93ab3fd", + "upgradeContract()": "1f4e1504", + "uri(uint256)": "0e89341c", + "wrap(bytes,address,address)": "eb8ae530", + "wrapETH2LD(string,address,uint16,address)": "8cf8b41e" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ENS\",\"name\":\"_ens\",\"type\":\"address\"},{\"internalType\":\"contract IBaseRegistrar\",\"name\":\"_registrar\",\"type\":\"address\"},{\"internalType\":\"contract IMetadataService\",\"name\":\"_metadataService\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"CannotUpgrade\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncompatibleParent\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"IncorrectTargetOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectTokenType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"labelHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"expectedLabelhash\",\"type\":\"bytes32\"}],\"name\":\"LabelMismatch\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"}],\"name\":\"LabelTooLong\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LabelTooShort\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NameIsNotWrapped\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"OperationProhibited\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"Unauthorised\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"ControllerChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"ExpiryExtended\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"}],\"name\":\"FusesSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NameUnwrapped\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"NameWrapped\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"_tokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint32\",\"name\":\"fuseMask\",\"type\":\"uint32\"}],\"name\":\"allFusesBurned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"canExtendSubnames\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"canModifyName\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"controllers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ens\",\"outputs\":[{\"internalType\":\"contract ENS\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"extendExpiry\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"getData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"}],\"name\":\"isWrapped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"isWrapped\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadataService\",\"outputs\":[{\"internalType\":\"contract IMetadataService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"names\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"}],\"name\":\"registerAndWrapETH2LD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"registrarExpiry\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registrar\",\"outputs\":[{\"internalType\":\"contract IBaseRegistrar\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"renew\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"expires\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setChildFuses\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"setController\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"}],\"name\":\"setFuses\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IMetadataService\",\"name\":\"_metadataService\",\"type\":\"address\"}],\"name\":\"setMetadataService\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"fuses\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract INameWrapperUpgrade\",\"name\":\"_upgradeAddress\",\"type\":\"address\"}],\"name\":\"setUpgradeContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"parentNode\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"unwrap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"labelhash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"registrant\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"controller\",\"type\":\"address\"}],\"name\":\"unwrapETH2LD\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"upgradeContract\",\"outputs\":[{\"internalType\":\"contract INameWrapperUpgrade\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"wrap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"label\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"wrappedOwner\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"ownerControlledFuses\",\"type\":\"uint16\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"wrapETH2LD\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"expiry\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to `approved`.\"},\"TransferBatch(address,address,address,uint256[],uint256[])\":{\"details\":\"Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all transfers.\"},\"TransferSingle(address,address,address,uint256,uint256)\":{\"details\":\"Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\"},\"URI(string,uint256)\":{\"details\":\"Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. If an {URI} event was emitted for `id`, the standard https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value returned by {IERC1155MetadataURI-uri}.\"}},\"kind\":\"dev\",\"methods\":{\"allFusesBurned(bytes32,uint32)\":{\"params\":{\"fuseMask\":\"The fuses you want to check\",\"node\":\"Namehash of the name\"},\"returns\":{\"_0\":\"Boolean of whether or not all the selected fuses are burned\"}},\"approve(address,uint256)\":{\"params\":{\"to\":\"address to approve\",\"tokenId\":\"name to approve\"}},\"balanceOf(address,uint256)\":{\"details\":\"See {IERC1155-balanceOf}. Requirements: - `account` cannot be the zero address.\"},\"balanceOfBatch(address[],uint256[])\":{\"details\":\"See {IERC1155-balanceOfBatch}. Requirements: - `accounts` and `ids` must have the same length.\"},\"canExtendSubnames(bytes32,address)\":{\"params\":{\"addr\":\"which address to check permissions for\",\"node\":\"namehash of the name to check\"},\"returns\":{\"_0\":\"whether or not is owner/operator or approved\"}},\"canModifyName(bytes32,address)\":{\"params\":{\"addr\":\"which address to check permissions for\",\"node\":\"namehash of the name to check\"},\"returns\":{\"_0\":\"whether or not is owner or operator\"}},\"extendExpiry(bytes32,bytes32,uint64)\":{\"params\":{\"expiry\":\"When the name will expire in seconds since the Unix epoch\",\"labelhash\":\"Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\",\"parentNode\":\"Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\"},\"returns\":{\"_0\":\"New expiry\"}},\"getApproved(uint256)\":{\"params\":{\"id\":\"Namehash of the name\"},\"returns\":{\"operator\":\"Approved operator of a name\"}},\"getData(uint256)\":{\"params\":{\"id\":\"Namehash of the name\"},\"returns\":{\"expiry\":\"Expiry of the name\",\"fuses\":\"Fuses of the name\",\"owner\":\"Owner of the name\"}},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC1155-isApprovedForAll}.\"},\"isWrapped(bytes32)\":{\"params\":{\"node\":\"Namehash of the name\"},\"returns\":{\"_0\":\"Boolean of whether or not the name is wrapped\"}},\"isWrapped(bytes32,bytes32)\":{\"params\":{\"labelhash\":\"Namehash of the name\",\"parentNode\":\"Namehash of the name\"},\"returns\":{\"_0\":\"Boolean of whether or not the name is wrapped\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"ownerOf(uint256)\":{\"params\":{\"id\":\"Label as a string of the .eth domain to wrap\"},\"returns\":{\"owner\":\"The owner of the name\"}},\"recoverFunds(address,address,uint256)\":{\"details\":\"The contract is Ownable and only the owner can call the recover function.\",\"params\":{\"_amount\":\"The amount of tokens to recover.\",\"_to\":\"The address to send the tokens to.\",\"_token\":\"The address of the ERC20 token to recover\"}},\"registerAndWrapETH2LD(string,address,uint256,address,uint16)\":{\"details\":\"Registers a new .eth second-level domain and wraps it. Only callable by authorised controllers.\",\"params\":{\"duration\":\"The duration, in seconds, to register the name for.\",\"label\":\"The label to register (Eg, 'foo' for 'foo.eth').\",\"ownerControlledFuses\":\"Initial owner-controlled fuses to set\",\"resolver\":\"The resolver address to set on the ENS registry (optional).\",\"wrappedOwner\":\"The owner of the wrapped name.\"},\"returns\":{\"registrarExpiry\":\"The expiry date of the new name on the .eth registrar, in seconds since the Unix epoch.\"}},\"renew(uint256,uint256)\":{\"details\":\"Only callable by authorised controllers.\",\"params\":{\"duration\":\"The number of seconds to renew the name for.\",\"tokenId\":\"The hash of the label to register (eg, `keccak256('foo')`, for 'foo.eth').\"},\"returns\":{\"expires\":\"The expiry date of the name on the .eth registrar, in seconds since the Unix epoch.\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)\":{\"details\":\"See {IERC1155-safeBatchTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,uint256,bytes)\":{\"details\":\"See {IERC1155-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC1155-setApprovalForAll}.\"},\"setChildFuses(bytes32,bytes32,uint32,uint64)\":{\"params\":{\"expiry\":\"When the name will expire in seconds since the Unix epoch\",\"fuses\":\"Fuses to burn\",\"labelhash\":\"Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\",\"parentNode\":\"Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\"}},\"setFuses(bytes32,uint16)\":{\"params\":{\"node\":\"Namehash of the name\",\"ownerControlledFuses\":\"Owner-controlled fuses to burn\"},\"returns\":{\"_0\":\"Old fuses\"}},\"setMetadataService(address)\":{\"params\":{\"_metadataService\":\"The new metadata service\"}},\"setRecord(bytes32,address,address,uint64)\":{\"params\":{\"node\":\"Namehash of the name to set a record for\",\"owner\":\"New owner in the registry\",\"resolver\":\"Resolver contract\",\"ttl\":\"Time to live in the registry\"}},\"setResolver(bytes32,address)\":{\"params\":{\"node\":\"namehash of the name\",\"resolver\":\"the resolver contract\"}},\"setSubnodeOwner(bytes32,string,address,uint32,uint64)\":{\"params\":{\"expiry\":\"When the name will expire in seconds since the Unix epoch\",\"fuses\":\"Initial fuses for the wrapped subdomain\",\"label\":\"Label of the subdomain as a string\",\"owner\":\"New owner in the wrapper\",\"parentNode\":\"Parent namehash of the subdomain\"},\"returns\":{\"node\":\"Namehash of the subdomain\"}},\"setSubnodeRecord(bytes32,string,address,address,uint64,uint32,uint64)\":{\"params\":{\"expiry\":\"When the name will expire in seconds since the Unix epoch\",\"fuses\":\"initial fuses for the wrapped subdomain\",\"label\":\"label of the subdomain as a string\",\"owner\":\"new owner in the wrapper\",\"parentNode\":\"parent namehash of the subdomain\",\"resolver\":\"resolver contract in the registry\",\"ttl\":\"ttl in the registry\"},\"returns\":{\"node\":\"Namehash of the subdomain\"}},\"setTTL(bytes32,uint64)\":{\"params\":{\"node\":\"Namehash of the name\",\"ttl\":\"TTL in the registry\"}},\"setUpgradeContract(address)\":{\"details\":\"The default value of upgradeContract is the 0 address. Use the 0 address at any time to make the contract not upgradable.\",\"params\":{\"_upgradeAddress\":\"address of an upgraded contract\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"unwrap(bytes32,bytes32,address)\":{\"details\":\"Can be called by the owner in the wrapper or an authorised caller in the wrapper\",\"params\":{\"controller\":\"Sets the owner in the registry to this address\",\"labelhash\":\"Labelhash of the name, e.g. vitalik.xyz would be keccak256('vitalik')\",\"parentNode\":\"Parent namehash of the name e.g. vitalik.xyz would be namehash('xyz')\"}},\"unwrapETH2LD(bytes32,address,address)\":{\"details\":\"Can be called by the owner in the wrapper or an authorised caller in the wrapper\",\"params\":{\"controller\":\"Sets the owner in the registry to this address\",\"labelhash\":\"Labelhash of the .eth domain\",\"registrant\":\"Sets the owner in the .eth registrar to this address\"}},\"upgrade(bytes,bytes)\":{\"details\":\"Can be called by the owner or an authorised caller\",\"params\":{\"extraData\":\"Extra data to pass to the upgrade contract\",\"name\":\"The name to upgrade, in DNS format\"}},\"uri(uint256)\":{\"params\":{\"tokenId\":\"The id of the token\"},\"returns\":{\"_0\":\"string uri of the metadata service\"}},\"wrap(bytes,address,address)\":{\"details\":\"Can be called by the owner in the registry or an authorised caller in the registry\",\"params\":{\"name\":\"The name to wrap, in DNS format\",\"resolver\":\"Resolver contract\",\"wrappedOwner\":\"Owner of the name in this contract\"}},\"wrapETH2LD(string,address,uint16,address)\":{\"details\":\"Can be called by the owner of the name on the .eth registrar or an authorised caller on the registrar\",\"params\":{\"label\":\"Label as a string of the .eth domain to wrap\",\"ownerControlledFuses\":\"Initial owner-controlled fuses to set\",\"resolver\":\"Resolver contract address\",\"wrappedOwner\":\"Owner of the name in this contract\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"allFusesBurned(bytes32,uint32)\":{\"notice\":\"Checks all Fuses in the mask are burned for the node\"},\"approve(address,uint256)\":{\"notice\":\"Approves an address for a name\"},\"canExtendSubnames(bytes32,address)\":{\"notice\":\"Checks if owner/operator or approved by owner\"},\"canModifyName(bytes32,address)\":{\"notice\":\"Checks if owner or operator of the owner\"},\"extendExpiry(bytes32,bytes32,uint64)\":{\"notice\":\"Extends expiry for a name\"},\"getApproved(uint256)\":{\"notice\":\"Gets the owner of a name\"},\"getData(uint256)\":{\"notice\":\"Gets the data for a name\"},\"isWrapped(bytes32)\":{\"notice\":\"Checks if a name is wrapped\"},\"isWrapped(bytes32,bytes32)\":{\"notice\":\"Checks if a name is wrapped in a more gas efficient way\"},\"ownerOf(uint256)\":{\"notice\":\"Gets the owner of a name\"},\"recoverFunds(address,address,uint256)\":{\"notice\":\"Recover ERC20 tokens sent to the contract by mistake.\"},\"renew(uint256,uint256)\":{\"notice\":\"Renews a .eth second-level domain.\"},\"setChildFuses(bytes32,bytes32,uint32,uint64)\":{\"notice\":\"Sets fuses of a name that you own the parent of\"},\"setFuses(bytes32,uint16)\":{\"notice\":\"Sets fuses of a name\"},\"setMetadataService(address)\":{\"notice\":\"Set the metadata service. Only the owner can do this\"},\"setRecord(bytes32,address,address,uint64)\":{\"notice\":\"Sets records for the name in the ENS Registry\"},\"setResolver(bytes32,address)\":{\"notice\":\"Sets resolver contract in the registry\"},\"setSubnodeOwner(bytes32,string,address,uint32,uint64)\":{\"notice\":\"Sets the subdomain owner in the registry and then wraps the subdomain\"},\"setSubnodeRecord(bytes32,string,address,address,uint64,uint32,uint64)\":{\"notice\":\"Sets the subdomain owner in the registry with records and then wraps the subdomain\"},\"setTTL(bytes32,uint64)\":{\"notice\":\"Sets TTL in the registry\"},\"setUpgradeContract(address)\":{\"notice\":\"Set the address of the upgradeContract of the contract. only admin can do this\"},\"unwrap(bytes32,bytes32,address)\":{\"notice\":\"Unwraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\"},\"unwrapETH2LD(bytes32,address,address)\":{\"notice\":\"Unwraps a .eth domain. e.g. vitalik.eth\"},\"upgrade(bytes,bytes)\":{\"notice\":\"Upgrades a domain of any kind. Could be a .eth name vitalik.eth, a DNSSEC name vitalik.xyz, or a subdomain\"},\"uri(uint256)\":{\"notice\":\"Get the metadata uri\"},\"wrap(bytes,address,address)\":{\"notice\":\"Wraps a non .eth domain, of any kind. Could be a DNSSEC name vitalik.xyz or a subdomain\"},\"wrapETH2LD(string,address,uint16,address)\":{\"notice\":\"Wraps a .eth domain, creating a new token and sending the original ERC721 token to this contract\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol\":\"NameWrapper\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.sol\":{\"keccak256\":\"0x83adfcf6da72b1bcd1e3ac387afe5fc7fdf7f2ac28b7601544d2ca4b9d45d159\",\"urls\":[\"bzz-raw://ca4b52ebdeb0fcddedded0e0027e530df4468c25b438ce0d4699b188603a4560\",\"dweb:/ipfs/QmW3LPwkwcL84rBu8cbLagKQPMGunXnh6cZfm6RRyfXArb\"]},\"@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.sol\":{\"keccak256\":\"0x78a28627241535b595f6fff476a1fa7acc90c80684fe7784734920fc8af6fc22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://988e059f54bf387eab677161edf2e0746cc060fb6a2d34f20a283ee9e2e17bb3\",\"dweb:/ipfs/QmUVtTvZ3ijd2zi1pbPcMVyVrLVJwEhAnh5mK3MnJsHUZT\"]},\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]},\"@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.sol\":{\"keccak256\":\"0x793a38091e1f81499a29ddba82c2b2f3cdd07071b81a832886e8e02a45ff352a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41d435f84b1d03daa8a934967d6b01246548b52441c108e48e0fd6a7ade4a0c7\",\"dweb:/ipfs/QmQZX6rurGhMqJuH1GjZ7QC8a8Gvtn2rVBmKwdbM9GPnNb\"]},\"@ensdomains/ens-contracts/contracts/wrapper/Controllable.sol\":{\"keccak256\":\"0x9a9191656a82eda6763cda29ce893ddbfddb6c43559ff3b90c00a184e14e1fa1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e62f72db49a31b27ecb0ced7b66807c68c759be0e0a2b186b0a259c7b38bbc3c\",\"dweb:/ipfs/QmS1S93ApCFfSUk9h7R9zirzN2P9ZexkjktargHC3n3GBS\"]},\"@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.sol\":{\"keccak256\":\"0xfbbd36e7f5df0fe7a8e9199783af99ac61ab24122e4a9fdb072bbd4cd676a88b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b15c5e1e4c9d57d7a1e32281618ec59c3f8e50a129c0f340009bb3579d1ab09b\",\"dweb:/ipfs/QmYsSq9JC37XiaPXA2cayVoxCsz2N5DF9TQX6rMTx9PY8w\"]},\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":{\"keccak256\":\"0xb3f1cf6df01ed7b15e5f2318f6823afbdb586ca38c2124c67955c645647ae9a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71aa1053dd87829c5eb25d32840d7b0d33cd9d54d22e905a01436bf97cc32b8c\",\"dweb:/ipfs/QmeMNnGKqf3oZyYwDQzEuQhti58UCCMRCMAD2EBx5T8dSH\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\":{\"keccak256\":\"0x70310eb67146d7290731c31841399640ac3b6a949eadc6598bc150123d185c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a85d9e2d6b235900131129386047fae5fb77438806b681ac566119868be5a502\",\"dweb:/ipfs/Qmd9ys5jeRx77TDVeRqWUme7a5LUDT4k7wQ91wVSayDpTR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":{\"keccak256\":\"0x42e0cec6cd9d1a62d51d45b678f69d3e4ad5555e659b197e41257b308346bb8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5afeadfdf2232a2333afb5345b65a25f7199b62ed6fde403273b762c91f5e9af\",\"dweb:/ipfs/QmWKhi3FuqX2KgRrBdh65gB3pmiwA2QMYPeiDbsMKv6a88\"]},\"@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.sol\":{\"keccak256\":\"0x3fd3ef239f9468130a4f89ebf00acbd6d1527e9bdb1ac17cefbfdf1584cf4b16\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://281c825320bccf3110a7fe371fecc7be770eabe2391b213b26dedb00029037ff\",\"dweb:/ipfs/QmUnZ1xYryipG6FGWYmqpsGNTMnwANDu7ysg1qtXcA5VUV\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol\":{\"keccak256\":\"0xa66d18b9a85458d28fc3304717964502ae36f7f8a2ff35bc83f6f85d74b03574\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e46c80ea068989111d6103e5521223f9ef337e93de76deed8b03f75c6f7b2797\",\"dweb:/ipfs/QmNoSE6knNfFncdDDLTb3fGR6oSQty1srG96Vsx3E9wQdw\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"hardhat/console.sol\":{\"keccak256\":\"0x7434453e6d3b7d0e5d0eb7846ffdbc27f0ccf3b163591263739b628074dc103a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://49355f780520494d1d5a0f01858385e51bb5280ce0ecfb960f16995065dca395\",\"dweb:/ipfs/QmSwJ6C5QLz6xKeQZS8wbwjU1KxRFTYfwbGmtzisd5sRW4\"]}},\"version\":1}" + } + }, + "@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol": { + "StaticMetadataService": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "_metaDataUri", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13043": { + "entryPoint": null, + "id": 13043, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_available_length_t_string_memory_ptr_fromMemory": { + "entryPoint": 333, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr_fromMemory": { + "entryPoint": 399, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_string_memory_ptr_fromMemory": { + "entryPoint": 445, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 215, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 72, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 242, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 625, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 518, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 922, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_uint256": { + "entryPoint": 757, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 887, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 777, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 1063, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 291, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 646, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 576, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 1035, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 166, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 767, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 1005, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 529, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 119, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 811, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 92, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 97, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 87, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 82, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 102, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 662, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 992, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 863, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 675, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 821, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 858, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:8247:74", + "nodeType": "YulBlock", + "src": "0:8247:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "628:54:74", + "nodeType": "YulBlock", + "src": "628:54:74", + "statements": [ + { + "nativeSrc": "638:38:74", + "nodeType": "YulAssignment", + "src": "638:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "656:5:74", + "nodeType": "YulIdentifier", + "src": "656:5:74" + }, + { + "kind": "number", + "nativeSrc": "663:2:74", + "nodeType": "YulLiteral", + "src": "663:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "652:3:74", + "nodeType": "YulIdentifier", + "src": "652:3:74" + }, + "nativeSrc": "652:14:74", + "nodeType": "YulFunctionCall", + "src": "652:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "672:2:74", + "nodeType": "YulLiteral", + "src": "672:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "668:3:74", + "nodeType": "YulIdentifier", + "src": "668:3:74" + }, + "nativeSrc": "668:7:74", + "nodeType": "YulFunctionCall", + "src": "668:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "648:3:74", + "nodeType": "YulIdentifier", + "src": "648:3:74" + }, + "nativeSrc": "648:28:74", + "nodeType": "YulFunctionCall", + "src": "648:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "638:6:74", + "nodeType": "YulIdentifier", + "src": "638:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "580:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "611:5:74", + "nodeType": "YulTypedName", + "src": "611:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "621:6:74", + "nodeType": "YulTypedName", + "src": "621:6:74", + "type": "" + } + ], + "src": "580:102:74" + }, + { + "body": { + "nativeSrc": "716:152:74", + "nodeType": "YulBlock", + "src": "716:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "733:1:74", + "nodeType": "YulLiteral", + "src": "733:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "736:77:74", + "nodeType": "YulLiteral", + "src": "736:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "726:6:74", + "nodeType": "YulIdentifier", + "src": "726:6:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulFunctionCall", + "src": "726:88:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulExpressionStatement", + "src": "726:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "830:1:74", + "nodeType": "YulLiteral", + "src": "830:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "833:4:74", + "nodeType": "YulLiteral", + "src": "833:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "823:6:74", + "nodeType": "YulIdentifier", + "src": "823:6:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulFunctionCall", + "src": "823:15:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulExpressionStatement", + "src": "823:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "854:1:74", + "nodeType": "YulLiteral", + "src": "854:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "857:4:74", + "nodeType": "YulLiteral", + "src": "857:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "847:6:74", + "nodeType": "YulIdentifier", + "src": "847:6:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulFunctionCall", + "src": "847:15:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulExpressionStatement", + "src": "847:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "688:180:74", + "nodeType": "YulFunctionDefinition", + "src": "688:180:74" + }, + { + "body": { + "nativeSrc": "917:238:74", + "nodeType": "YulBlock", + "src": "917:238:74", + "statements": [ + { + "nativeSrc": "927:58:74", + "nodeType": "YulVariableDeclaration", + "src": "927:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "949:6:74", + "nodeType": "YulIdentifier", + "src": "949:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "979:4:74", + "nodeType": "YulIdentifier", + "src": "979:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "957:21:74", + "nodeType": "YulIdentifier", + "src": "957:21:74" + }, + "nativeSrc": "957:27:74", + "nodeType": "YulFunctionCall", + "src": "957:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "945:3:74", + "nodeType": "YulIdentifier", + "src": "945:3:74" + }, + "nativeSrc": "945:40:74", + "nodeType": "YulFunctionCall", + "src": "945:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "931:10:74", + "nodeType": "YulTypedName", + "src": "931:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1096:22:74", + "nodeType": "YulBlock", + "src": "1096:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1098:16:74", + "nodeType": "YulIdentifier", + "src": "1098:16:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulFunctionCall", + "src": "1098:18:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulExpressionStatement", + "src": "1098:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1039:10:74", + "nodeType": "YulIdentifier", + "src": "1039:10:74" + }, + { + "kind": "number", + "nativeSrc": "1051:18:74", + "nodeType": "YulLiteral", + "src": "1051:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1036:2:74", + "nodeType": "YulIdentifier", + "src": "1036:2:74" + }, + "nativeSrc": "1036:34:74", + "nodeType": "YulFunctionCall", + "src": "1036:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1075:10:74", + "nodeType": "YulIdentifier", + "src": "1075:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "1087:6:74", + "nodeType": "YulIdentifier", + "src": "1087:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1072:2:74", + "nodeType": "YulIdentifier", + "src": "1072:2:74" + }, + "nativeSrc": "1072:22:74", + "nodeType": "YulFunctionCall", + "src": "1072:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "1033:2:74", + "nodeType": "YulIdentifier", + "src": "1033:2:74" + }, + "nativeSrc": "1033:62:74", + "nodeType": "YulFunctionCall", + "src": "1033:62:74" + }, + "nativeSrc": "1030:88:74", + "nodeType": "YulIf", + "src": "1030:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1134:2:74", + "nodeType": "YulLiteral", + "src": "1134:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "1138:10:74", + "nodeType": "YulIdentifier", + "src": "1138:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1127:6:74", + "nodeType": "YulIdentifier", + "src": "1127:6:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulFunctionCall", + "src": "1127:22:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulExpressionStatement", + "src": "1127:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "874:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "903:6:74", + "nodeType": "YulTypedName", + "src": "903:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "911:4:74", + "nodeType": "YulTypedName", + "src": "911:4:74", + "type": "" + } + ], + "src": "874:281:74" + }, + { + "body": { + "nativeSrc": "1202:88:74", + "nodeType": "YulBlock", + "src": "1202:88:74", + "statements": [ + { + "nativeSrc": "1212:30:74", + "nodeType": "YulAssignment", + "src": "1212:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "1222:18:74", + "nodeType": "YulIdentifier", + "src": "1222:18:74" + }, + "nativeSrc": "1222:20:74", + "nodeType": "YulFunctionCall", + "src": "1222:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "1212:6:74", + "nodeType": "YulIdentifier", + "src": "1212:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "1271:6:74", + "nodeType": "YulIdentifier", + "src": "1271:6:74" + }, + { + "name": "size", + "nativeSrc": "1279:4:74", + "nodeType": "YulIdentifier", + "src": "1279:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "1251:19:74", + "nodeType": "YulIdentifier", + "src": "1251:19:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulFunctionCall", + "src": "1251:33:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulExpressionStatement", + "src": "1251:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "1161:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "1186:4:74", + "nodeType": "YulTypedName", + "src": "1186:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "1195:6:74", + "nodeType": "YulTypedName", + "src": "1195:6:74", + "type": "" + } + ], + "src": "1161:129:74" + }, + { + "body": { + "nativeSrc": "1363:241:74", + "nodeType": "YulBlock", + "src": "1363:241:74", + "statements": [ + { + "body": { + "nativeSrc": "1468:22:74", + "nodeType": "YulBlock", + "src": "1468:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1470:16:74", + "nodeType": "YulIdentifier", + "src": "1470:16:74" + }, + "nativeSrc": "1470:18:74", + "nodeType": "YulFunctionCall", + "src": "1470:18:74" + }, + "nativeSrc": "1470:18:74", + "nodeType": "YulExpressionStatement", + "src": "1470:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1440:6:74", + "nodeType": "YulIdentifier", + "src": "1440:6:74" + }, + { + "kind": "number", + "nativeSrc": "1448:18:74", + "nodeType": "YulLiteral", + "src": "1448:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1437:2:74", + "nodeType": "YulIdentifier", + "src": "1437:2:74" + }, + "nativeSrc": "1437:30:74", + "nodeType": "YulFunctionCall", + "src": "1437:30:74" + }, + "nativeSrc": "1434:56:74", + "nodeType": "YulIf", + "src": "1434:56:74" + }, + { + "nativeSrc": "1500:37:74", + "nodeType": "YulAssignment", + "src": "1500:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1530:6:74", + "nodeType": "YulIdentifier", + "src": "1530:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "1508:21:74", + "nodeType": "YulIdentifier", + "src": "1508:21:74" + }, + "nativeSrc": "1508:29:74", + "nodeType": "YulFunctionCall", + "src": "1508:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1500:4:74", + "nodeType": "YulIdentifier", + "src": "1500:4:74" + } + ] + }, + { + "nativeSrc": "1574:23:74", + "nodeType": "YulAssignment", + "src": "1574:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "1586:4:74", + "nodeType": "YulIdentifier", + "src": "1586:4:74" + }, + { + "kind": "number", + "nativeSrc": "1592:4:74", + "nodeType": "YulLiteral", + "src": "1592:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1582:3:74", + "nodeType": "YulIdentifier", + "src": "1582:3:74" + }, + "nativeSrc": "1582:15:74", + "nodeType": "YulFunctionCall", + "src": "1582:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1574:4:74", + "nodeType": "YulIdentifier", + "src": "1574:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "1296:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1347:6:74", + "nodeType": "YulTypedName", + "src": "1347:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1358:4:74", + "nodeType": "YulTypedName", + "src": "1358:4:74", + "type": "" + } + ], + "src": "1296:308:74" + }, + { + "body": { + "nativeSrc": "1672:186:74", + "nodeType": "YulBlock", + "src": "1672:186:74", + "statements": [ + { + "nativeSrc": "1683:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1683:10:74", + "value": { + "kind": "number", + "nativeSrc": "1692:1:74", + "nodeType": "YulLiteral", + "src": "1692:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1687:1:74", + "nodeType": "YulTypedName", + "src": "1687:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1752:63:74", + "nodeType": "YulBlock", + "src": "1752:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1777:3:74", + "nodeType": "YulIdentifier", + "src": "1777:3:74" + }, + { + "name": "i", + "nativeSrc": "1782:1:74", + "nodeType": "YulIdentifier", + "src": "1782:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1773:3:74", + "nodeType": "YulIdentifier", + "src": "1773:3:74" + }, + "nativeSrc": "1773:11:74", + "nodeType": "YulFunctionCall", + "src": "1773:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1796:3:74", + "nodeType": "YulIdentifier", + "src": "1796:3:74" + }, + { + "name": "i", + "nativeSrc": "1801:1:74", + "nodeType": "YulIdentifier", + "src": "1801:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1792:3:74", + "nodeType": "YulIdentifier", + "src": "1792:3:74" + }, + "nativeSrc": "1792:11:74", + "nodeType": "YulFunctionCall", + "src": "1792:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1786:5:74", + "nodeType": "YulIdentifier", + "src": "1786:5:74" + }, + "nativeSrc": "1786:18:74", + "nodeType": "YulFunctionCall", + "src": "1786:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1766:6:74", + "nodeType": "YulIdentifier", + "src": "1766:6:74" + }, + "nativeSrc": "1766:39:74", + "nodeType": "YulFunctionCall", + "src": "1766:39:74" + }, + "nativeSrc": "1766:39:74", + "nodeType": "YulExpressionStatement", + "src": "1766:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1713:1:74", + "nodeType": "YulIdentifier", + "src": "1713:1:74" + }, + { + "name": "length", + "nativeSrc": "1716:6:74", + "nodeType": "YulIdentifier", + "src": "1716:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1710:2:74", + "nodeType": "YulIdentifier", + "src": "1710:2:74" + }, + "nativeSrc": "1710:13:74", + "nodeType": "YulFunctionCall", + "src": "1710:13:74" + }, + "nativeSrc": "1702:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1724:19:74", + "nodeType": "YulBlock", + "src": "1724:19:74", + "statements": [ + { + "nativeSrc": "1726:15:74", + "nodeType": "YulAssignment", + "src": "1726:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1735:1:74", + "nodeType": "YulIdentifier", + "src": "1735:1:74" + }, + { + "kind": "number", + "nativeSrc": "1738:2:74", + "nodeType": "YulLiteral", + "src": "1738:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1731:3:74", + "nodeType": "YulIdentifier", + "src": "1731:3:74" + }, + "nativeSrc": "1731:10:74", + "nodeType": "YulFunctionCall", + "src": "1731:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1726:1:74", + "nodeType": "YulIdentifier", + "src": "1726:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1706:3:74", + "nodeType": "YulBlock", + "src": "1706:3:74", + "statements": [] + }, + "src": "1702:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1835:3:74", + "nodeType": "YulIdentifier", + "src": "1835:3:74" + }, + { + "name": "length", + "nativeSrc": "1840:6:74", + "nodeType": "YulIdentifier", + "src": "1840:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1831:3:74", + "nodeType": "YulIdentifier", + "src": "1831:3:74" + }, + "nativeSrc": "1831:16:74", + "nodeType": "YulFunctionCall", + "src": "1831:16:74" + }, + { + "kind": "number", + "nativeSrc": "1849:1:74", + "nodeType": "YulLiteral", + "src": "1849:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1824:6:74", + "nodeType": "YulIdentifier", + "src": "1824:6:74" + }, + "nativeSrc": "1824:27:74", + "nodeType": "YulFunctionCall", + "src": "1824:27:74" + }, + "nativeSrc": "1824:27:74", + "nodeType": "YulExpressionStatement", + "src": "1824:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1610:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1654:3:74", + "nodeType": "YulTypedName", + "src": "1654:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1659:3:74", + "nodeType": "YulTypedName", + "src": "1659:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1664:6:74", + "nodeType": "YulTypedName", + "src": "1664:6:74", + "type": "" + } + ], + "src": "1610:248:74" + }, + { + "body": { + "nativeSrc": "1959:339:74", + "nodeType": "YulBlock", + "src": "1959:339:74", + "statements": [ + { + "nativeSrc": "1969:75:74", + "nodeType": "YulAssignment", + "src": "1969:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2036:6:74", + "nodeType": "YulIdentifier", + "src": "2036:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "1994:41:74", + "nodeType": "YulIdentifier", + "src": "1994:41:74" + }, + "nativeSrc": "1994:49:74", + "nodeType": "YulFunctionCall", + "src": "1994:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "1978:15:74", + "nodeType": "YulIdentifier", + "src": "1978:15:74" + }, + "nativeSrc": "1978:66:74", + "nodeType": "YulFunctionCall", + "src": "1978:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "1969:5:74", + "nodeType": "YulIdentifier", + "src": "1969:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2060:5:74", + "nodeType": "YulIdentifier", + "src": "2060:5:74" + }, + { + "name": "length", + "nativeSrc": "2067:6:74", + "nodeType": "YulIdentifier", + "src": "2067:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2053:6:74", + "nodeType": "YulIdentifier", + "src": "2053:6:74" + }, + "nativeSrc": "2053:21:74", + "nodeType": "YulFunctionCall", + "src": "2053:21:74" + }, + "nativeSrc": "2053:21:74", + "nodeType": "YulExpressionStatement", + "src": "2053:21:74" + }, + { + "nativeSrc": "2083:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2083:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2098:5:74", + "nodeType": "YulIdentifier", + "src": "2098:5:74" + }, + { + "kind": "number", + "nativeSrc": "2105:4:74", + "nodeType": "YulLiteral", + "src": "2105:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2094:3:74", + "nodeType": "YulIdentifier", + "src": "2094:3:74" + }, + "nativeSrc": "2094:16:74", + "nodeType": "YulFunctionCall", + "src": "2094:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "2087:3:74", + "nodeType": "YulTypedName", + "src": "2087:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2148:83:74", + "nodeType": "YulBlock", + "src": "2148:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "2150:77:74", + "nodeType": "YulIdentifier", + "src": "2150:77:74" + }, + "nativeSrc": "2150:79:74", + "nodeType": "YulFunctionCall", + "src": "2150:79:74" + }, + "nativeSrc": "2150:79:74", + "nodeType": "YulExpressionStatement", + "src": "2150:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2129:3:74", + "nodeType": "YulIdentifier", + "src": "2129:3:74" + }, + { + "name": "length", + "nativeSrc": "2134:6:74", + "nodeType": "YulIdentifier", + "src": "2134:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2125:3:74", + "nodeType": "YulIdentifier", + "src": "2125:3:74" + }, + "nativeSrc": "2125:16:74", + "nodeType": "YulFunctionCall", + "src": "2125:16:74" + }, + { + "name": "end", + "nativeSrc": "2143:3:74", + "nodeType": "YulIdentifier", + "src": "2143:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2122:2:74", + "nodeType": "YulIdentifier", + "src": "2122:2:74" + }, + "nativeSrc": "2122:25:74", + "nodeType": "YulFunctionCall", + "src": "2122:25:74" + }, + "nativeSrc": "2119:112:74", + "nodeType": "YulIf", + "src": "2119:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "2275:3:74", + "nodeType": "YulIdentifier", + "src": "2275:3:74" + }, + { + "name": "dst", + "nativeSrc": "2280:3:74", + "nodeType": "YulIdentifier", + "src": "2280:3:74" + }, + { + "name": "length", + "nativeSrc": "2285:6:74", + "nodeType": "YulIdentifier", + "src": "2285:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2240:34:74", + "nodeType": "YulIdentifier", + "src": "2240:34:74" + }, + "nativeSrc": "2240:52:74", + "nodeType": "YulFunctionCall", + "src": "2240:52:74" + }, + "nativeSrc": "2240:52:74", + "nodeType": "YulExpressionStatement", + "src": "2240:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "1864:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1932:3:74", + "nodeType": "YulTypedName", + "src": "1932:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1937:6:74", + "nodeType": "YulTypedName", + "src": "1937:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1945:3:74", + "nodeType": "YulTypedName", + "src": "1945:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "1953:5:74", + "nodeType": "YulTypedName", + "src": "1953:5:74", + "type": "" + } + ], + "src": "1864:434:74" + }, + { + "body": { + "nativeSrc": "2391:282:74", + "nodeType": "YulBlock", + "src": "2391:282:74", + "statements": [ + { + "body": { + "nativeSrc": "2440:83:74", + "nodeType": "YulBlock", + "src": "2440:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2442:77:74", + "nodeType": "YulIdentifier", + "src": "2442:77:74" + }, + "nativeSrc": "2442:79:74", + "nodeType": "YulFunctionCall", + "src": "2442:79:74" + }, + "nativeSrc": "2442:79:74", + "nodeType": "YulExpressionStatement", + "src": "2442:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2419:6:74", + "nodeType": "YulIdentifier", + "src": "2419:6:74" + }, + { + "kind": "number", + "nativeSrc": "2427:4:74", + "nodeType": "YulLiteral", + "src": "2427:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2415:3:74", + "nodeType": "YulIdentifier", + "src": "2415:3:74" + }, + "nativeSrc": "2415:17:74", + "nodeType": "YulFunctionCall", + "src": "2415:17:74" + }, + { + "name": "end", + "nativeSrc": "2434:3:74", + "nodeType": "YulIdentifier", + "src": "2434:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2411:3:74", + "nodeType": "YulIdentifier", + "src": "2411:3:74" + }, + "nativeSrc": "2411:27:74", + "nodeType": "YulFunctionCall", + "src": "2411:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2404:6:74", + "nodeType": "YulIdentifier", + "src": "2404:6:74" + }, + "nativeSrc": "2404:35:74", + "nodeType": "YulFunctionCall", + "src": "2404:35:74" + }, + "nativeSrc": "2401:122:74", + "nodeType": "YulIf", + "src": "2401:122:74" + }, + { + "nativeSrc": "2532:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2532:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2552:6:74", + "nodeType": "YulIdentifier", + "src": "2552:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2546:5:74", + "nodeType": "YulIdentifier", + "src": "2546:5:74" + }, + "nativeSrc": "2546:13:74", + "nodeType": "YulFunctionCall", + "src": "2546:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2536:6:74", + "nodeType": "YulTypedName", + "src": "2536:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2568:99:74", + "nodeType": "YulAssignment", + "src": "2568:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2640:6:74", + "nodeType": "YulIdentifier", + "src": "2640:6:74" + }, + { + "kind": "number", + "nativeSrc": "2648:4:74", + "nodeType": "YulLiteral", + "src": "2648:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2636:3:74", + "nodeType": "YulIdentifier", + "src": "2636:3:74" + }, + "nativeSrc": "2636:17:74", + "nodeType": "YulFunctionCall", + "src": "2636:17:74" + }, + { + "name": "length", + "nativeSrc": "2655:6:74", + "nodeType": "YulIdentifier", + "src": "2655:6:74" + }, + { + "name": "end", + "nativeSrc": "2663:3:74", + "nodeType": "YulIdentifier", + "src": "2663:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "2577:58:74", + "nodeType": "YulIdentifier", + "src": "2577:58:74" + }, + "nativeSrc": "2577:90:74", + "nodeType": "YulFunctionCall", + "src": "2577:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "2568:5:74", + "nodeType": "YulIdentifier", + "src": "2568:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "2318:355:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2369:6:74", + "nodeType": "YulTypedName", + "src": "2369:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2377:3:74", + "nodeType": "YulTypedName", + "src": "2377:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2385:5:74", + "nodeType": "YulTypedName", + "src": "2385:5:74", + "type": "" + } + ], + "src": "2318:355:74" + }, + { + "body": { + "nativeSrc": "2766:437:74", + "nodeType": "YulBlock", + "src": "2766:437:74", + "statements": [ + { + "body": { + "nativeSrc": "2812:83:74", + "nodeType": "YulBlock", + "src": "2812:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2814:77:74", + "nodeType": "YulIdentifier", + "src": "2814:77:74" + }, + "nativeSrc": "2814:79:74", + "nodeType": "YulFunctionCall", + "src": "2814:79:74" + }, + "nativeSrc": "2814:79:74", + "nodeType": "YulExpressionStatement", + "src": "2814:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2787:7:74", + "nodeType": "YulIdentifier", + "src": "2787:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2796:9:74", + "nodeType": "YulIdentifier", + "src": "2796:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2783:3:74", + "nodeType": "YulIdentifier", + "src": "2783:3:74" + }, + "nativeSrc": "2783:23:74", + "nodeType": "YulFunctionCall", + "src": "2783:23:74" + }, + { + "kind": "number", + "nativeSrc": "2808:2:74", + "nodeType": "YulLiteral", + "src": "2808:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2779:3:74", + "nodeType": "YulIdentifier", + "src": "2779:3:74" + }, + "nativeSrc": "2779:32:74", + "nodeType": "YulFunctionCall", + "src": "2779:32:74" + }, + "nativeSrc": "2776:119:74", + "nodeType": "YulIf", + "src": "2776:119:74" + }, + { + "nativeSrc": "2905:291:74", + "nodeType": "YulBlock", + "src": "2905:291:74", + "statements": [ + { + "nativeSrc": "2920:38:74", + "nodeType": "YulVariableDeclaration", + "src": "2920:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2944:9:74", + "nodeType": "YulIdentifier", + "src": "2944:9:74" + }, + { + "kind": "number", + "nativeSrc": "2955:1:74", + "nodeType": "YulLiteral", + "src": "2955:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2940:3:74", + "nodeType": "YulIdentifier", + "src": "2940:3:74" + }, + "nativeSrc": "2940:17:74", + "nodeType": "YulFunctionCall", + "src": "2940:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2934:5:74", + "nodeType": "YulIdentifier", + "src": "2934:5:74" + }, + "nativeSrc": "2934:24:74", + "nodeType": "YulFunctionCall", + "src": "2934:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2924:6:74", + "nodeType": "YulTypedName", + "src": "2924:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3005:83:74", + "nodeType": "YulBlock", + "src": "3005:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "3007:77:74", + "nodeType": "YulIdentifier", + "src": "3007:77:74" + }, + "nativeSrc": "3007:79:74", + "nodeType": "YulFunctionCall", + "src": "3007:79:74" + }, + "nativeSrc": "3007:79:74", + "nodeType": "YulExpressionStatement", + "src": "3007:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2977:6:74", + "nodeType": "YulIdentifier", + "src": "2977:6:74" + }, + { + "kind": "number", + "nativeSrc": "2985:18:74", + "nodeType": "YulLiteral", + "src": "2985:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2974:2:74", + "nodeType": "YulIdentifier", + "src": "2974:2:74" + }, + "nativeSrc": "2974:30:74", + "nodeType": "YulFunctionCall", + "src": "2974:30:74" + }, + "nativeSrc": "2971:117:74", + "nodeType": "YulIf", + "src": "2971:117:74" + }, + { + "nativeSrc": "3102:84:74", + "nodeType": "YulAssignment", + "src": "3102:84:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3158:9:74", + "nodeType": "YulIdentifier", + "src": "3158:9:74" + }, + { + "name": "offset", + "nativeSrc": "3169:6:74", + "nodeType": "YulIdentifier", + "src": "3169:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3154:3:74", + "nodeType": "YulIdentifier", + "src": "3154:3:74" + }, + "nativeSrc": "3154:22:74", + "nodeType": "YulFunctionCall", + "src": "3154:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3178:7:74", + "nodeType": "YulIdentifier", + "src": "3178:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "3112:41:74", + "nodeType": "YulIdentifier", + "src": "3112:41:74" + }, + "nativeSrc": "3112:74:74", + "nodeType": "YulFunctionCall", + "src": "3112:74:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3102:6:74", + "nodeType": "YulIdentifier", + "src": "3102:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptr_fromMemory", + "nativeSrc": "2679:524:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2736:9:74", + "nodeType": "YulTypedName", + "src": "2736:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2747:7:74", + "nodeType": "YulTypedName", + "src": "2747:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2759:6:74", + "nodeType": "YulTypedName", + "src": "2759:6:74", + "type": "" + } + ], + "src": "2679:524:74" + }, + { + "body": { + "nativeSrc": "3268:40:74", + "nodeType": "YulBlock", + "src": "3268:40:74", + "statements": [ + { + "nativeSrc": "3279:22:74", + "nodeType": "YulAssignment", + "src": "3279:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3295:5:74", + "nodeType": "YulIdentifier", + "src": "3295:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3289:5:74", + "nodeType": "YulIdentifier", + "src": "3289:5:74" + }, + "nativeSrc": "3289:12:74", + "nodeType": "YulFunctionCall", + "src": "3289:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3279:6:74", + "nodeType": "YulIdentifier", + "src": "3279:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "3209:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3251:5:74", + "nodeType": "YulTypedName", + "src": "3251:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3261:6:74", + "nodeType": "YulTypedName", + "src": "3261:6:74", + "type": "" + } + ], + "src": "3209:99:74" + }, + { + "body": { + "nativeSrc": "3342:152:74", + "nodeType": "YulBlock", + "src": "3342:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3359:1:74", + "nodeType": "YulLiteral", + "src": "3359:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3362:77:74", + "nodeType": "YulLiteral", + "src": "3362:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3352:6:74", + "nodeType": "YulIdentifier", + "src": "3352:6:74" + }, + "nativeSrc": "3352:88:74", + "nodeType": "YulFunctionCall", + "src": "3352:88:74" + }, + "nativeSrc": "3352:88:74", + "nodeType": "YulExpressionStatement", + "src": "3352:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3456:1:74", + "nodeType": "YulLiteral", + "src": "3456:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "3459:4:74", + "nodeType": "YulLiteral", + "src": "3459:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3449:6:74", + "nodeType": "YulIdentifier", + "src": "3449:6:74" + }, + "nativeSrc": "3449:15:74", + "nodeType": "YulFunctionCall", + "src": "3449:15:74" + }, + "nativeSrc": "3449:15:74", + "nodeType": "YulExpressionStatement", + "src": "3449:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3480:1:74", + "nodeType": "YulLiteral", + "src": "3480:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3483:4:74", + "nodeType": "YulLiteral", + "src": "3483:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3473:6:74", + "nodeType": "YulIdentifier", + "src": "3473:6:74" + }, + "nativeSrc": "3473:15:74", + "nodeType": "YulFunctionCall", + "src": "3473:15:74" + }, + "nativeSrc": "3473:15:74", + "nodeType": "YulExpressionStatement", + "src": "3473:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "3314:180:74", + "nodeType": "YulFunctionDefinition", + "src": "3314:180:74" + }, + { + "body": { + "nativeSrc": "3551:269:74", + "nodeType": "YulBlock", + "src": "3551:269:74", + "statements": [ + { + "nativeSrc": "3561:22:74", + "nodeType": "YulAssignment", + "src": "3561:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3575:4:74", + "nodeType": "YulIdentifier", + "src": "3575:4:74" + }, + { + "kind": "number", + "nativeSrc": "3581:1:74", + "nodeType": "YulLiteral", + "src": "3581:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "3571:3:74", + "nodeType": "YulIdentifier", + "src": "3571:3:74" + }, + "nativeSrc": "3571:12:74", + "nodeType": "YulFunctionCall", + "src": "3571:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3561:6:74", + "nodeType": "YulIdentifier", + "src": "3561:6:74" + } + ] + }, + { + "nativeSrc": "3592:38:74", + "nodeType": "YulVariableDeclaration", + "src": "3592:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3622:4:74", + "nodeType": "YulIdentifier", + "src": "3622:4:74" + }, + { + "kind": "number", + "nativeSrc": "3628:1:74", + "nodeType": "YulLiteral", + "src": "3628:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3618:3:74", + "nodeType": "YulIdentifier", + "src": "3618:3:74" + }, + "nativeSrc": "3618:12:74", + "nodeType": "YulFunctionCall", + "src": "3618:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "3596:18:74", + "nodeType": "YulTypedName", + "src": "3596:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3669:51:74", + "nodeType": "YulBlock", + "src": "3669:51:74", + "statements": [ + { + "nativeSrc": "3683:27:74", + "nodeType": "YulAssignment", + "src": "3683:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "3697:6:74", + "nodeType": "YulIdentifier", + "src": "3697:6:74" + }, + { + "kind": "number", + "nativeSrc": "3705:4:74", + "nodeType": "YulLiteral", + "src": "3705:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3693:3:74", + "nodeType": "YulIdentifier", + "src": "3693:3:74" + }, + "nativeSrc": "3693:17:74", + "nodeType": "YulFunctionCall", + "src": "3693:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3683:6:74", + "nodeType": "YulIdentifier", + "src": "3683:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "3649:18:74", + "nodeType": "YulIdentifier", + "src": "3649:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3642:6:74", + "nodeType": "YulIdentifier", + "src": "3642:6:74" + }, + "nativeSrc": "3642:26:74", + "nodeType": "YulFunctionCall", + "src": "3642:26:74" + }, + "nativeSrc": "3639:81:74", + "nodeType": "YulIf", + "src": "3639:81:74" + }, + { + "body": { + "nativeSrc": "3772:42:74", + "nodeType": "YulBlock", + "src": "3772:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "3786:16:74", + "nodeType": "YulIdentifier", + "src": "3786:16:74" + }, + "nativeSrc": "3786:18:74", + "nodeType": "YulFunctionCall", + "src": "3786:18:74" + }, + "nativeSrc": "3786:18:74", + "nodeType": "YulExpressionStatement", + "src": "3786:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "3736:18:74", + "nodeType": "YulIdentifier", + "src": "3736:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "3759:6:74", + "nodeType": "YulIdentifier", + "src": "3759:6:74" + }, + { + "kind": "number", + "nativeSrc": "3767:2:74", + "nodeType": "YulLiteral", + "src": "3767:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "3756:2:74", + "nodeType": "YulIdentifier", + "src": "3756:2:74" + }, + "nativeSrc": "3756:14:74", + "nodeType": "YulFunctionCall", + "src": "3756:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3733:2:74", + "nodeType": "YulIdentifier", + "src": "3733:2:74" + }, + "nativeSrc": "3733:38:74", + "nodeType": "YulFunctionCall", + "src": "3733:38:74" + }, + "nativeSrc": "3730:84:74", + "nodeType": "YulIf", + "src": "3730:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "3500:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "3535:4:74", + "nodeType": "YulTypedName", + "src": "3535:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3544:6:74", + "nodeType": "YulTypedName", + "src": "3544:6:74", + "type": "" + } + ], + "src": "3500:320:74" + }, + { + "body": { + "nativeSrc": "3880:87:74", + "nodeType": "YulBlock", + "src": "3880:87:74", + "statements": [ + { + "nativeSrc": "3890:11:74", + "nodeType": "YulAssignment", + "src": "3890:11:74", + "value": { + "name": "ptr", + "nativeSrc": "3898:3:74", + "nodeType": "YulIdentifier", + "src": "3898:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "3890:4:74", + "nodeType": "YulIdentifier", + "src": "3890:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3918:1:74", + "nodeType": "YulLiteral", + "src": "3918:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "3921:3:74", + "nodeType": "YulIdentifier", + "src": "3921:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3911:6:74", + "nodeType": "YulIdentifier", + "src": "3911:6:74" + }, + "nativeSrc": "3911:14:74", + "nodeType": "YulFunctionCall", + "src": "3911:14:74" + }, + "nativeSrc": "3911:14:74", + "nodeType": "YulExpressionStatement", + "src": "3911:14:74" + }, + { + "nativeSrc": "3934:26:74", + "nodeType": "YulAssignment", + "src": "3934:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3952:1:74", + "nodeType": "YulLiteral", + "src": "3952:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3955:4:74", + "nodeType": "YulLiteral", + "src": "3955:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "3942:9:74", + "nodeType": "YulIdentifier", + "src": "3942:9:74" + }, + "nativeSrc": "3942:18:74", + "nodeType": "YulFunctionCall", + "src": "3942:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "3934:4:74", + "nodeType": "YulIdentifier", + "src": "3934:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "3826:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "3867:3:74", + "nodeType": "YulTypedName", + "src": "3867:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "3875:4:74", + "nodeType": "YulTypedName", + "src": "3875:4:74", + "type": "" + } + ], + "src": "3826:141:74" + }, + { + "body": { + "nativeSrc": "4017:49:74", + "nodeType": "YulBlock", + "src": "4017:49:74", + "statements": [ + { + "nativeSrc": "4027:33:74", + "nodeType": "YulAssignment", + "src": "4027:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4045:5:74", + "nodeType": "YulIdentifier", + "src": "4045:5:74" + }, + { + "kind": "number", + "nativeSrc": "4052:2:74", + "nodeType": "YulLiteral", + "src": "4052:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4041:3:74", + "nodeType": "YulIdentifier", + "src": "4041:3:74" + }, + "nativeSrc": "4041:14:74", + "nodeType": "YulFunctionCall", + "src": "4041:14:74" + }, + { + "kind": "number", + "nativeSrc": "4057:2:74", + "nodeType": "YulLiteral", + "src": "4057:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "4037:3:74", + "nodeType": "YulIdentifier", + "src": "4037:3:74" + }, + "nativeSrc": "4037:23:74", + "nodeType": "YulFunctionCall", + "src": "4037:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "4027:6:74", + "nodeType": "YulIdentifier", + "src": "4027:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "3973:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4000:5:74", + "nodeType": "YulTypedName", + "src": "4000:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "4010:6:74", + "nodeType": "YulTypedName", + "src": "4010:6:74", + "type": "" + } + ], + "src": "3973:93:74" + }, + { + "body": { + "nativeSrc": "4125:54:74", + "nodeType": "YulBlock", + "src": "4125:54:74", + "statements": [ + { + "nativeSrc": "4135:37:74", + "nodeType": "YulAssignment", + "src": "4135:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "4160:4:74", + "nodeType": "YulIdentifier", + "src": "4160:4:74" + }, + { + "name": "value", + "nativeSrc": "4166:5:74", + "nodeType": "YulIdentifier", + "src": "4166:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "4156:3:74", + "nodeType": "YulIdentifier", + "src": "4156:3:74" + }, + "nativeSrc": "4156:16:74", + "nodeType": "YulFunctionCall", + "src": "4156:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "4135:8:74", + "nodeType": "YulIdentifier", + "src": "4135:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "4072:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "4100:4:74", + "nodeType": "YulTypedName", + "src": "4100:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "4106:5:74", + "nodeType": "YulTypedName", + "src": "4106:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "4116:8:74", + "nodeType": "YulTypedName", + "src": "4116:8:74", + "type": "" + } + ], + "src": "4072:107:74" + }, + { + "body": { + "nativeSrc": "4261:317:74", + "nodeType": "YulBlock", + "src": "4261:317:74", + "statements": [ + { + "nativeSrc": "4271:35:74", + "nodeType": "YulVariableDeclaration", + "src": "4271:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "4292:10:74", + "nodeType": "YulIdentifier", + "src": "4292:10:74" + }, + { + "kind": "number", + "nativeSrc": "4304:1:74", + "nodeType": "YulLiteral", + "src": "4304:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "4288:3:74", + "nodeType": "YulIdentifier", + "src": "4288:3:74" + }, + "nativeSrc": "4288:18:74", + "nodeType": "YulFunctionCall", + "src": "4288:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "4275:9:74", + "nodeType": "YulTypedName", + "src": "4275:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4315:109:74", + "nodeType": "YulVariableDeclaration", + "src": "4315:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "4346:9:74", + "nodeType": "YulIdentifier", + "src": "4346:9:74" + }, + { + "kind": "number", + "nativeSrc": "4357:66:74", + "nodeType": "YulLiteral", + "src": "4357:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "4327:18:74", + "nodeType": "YulIdentifier", + "src": "4327:18:74" + }, + "nativeSrc": "4327:97:74", + "nodeType": "YulFunctionCall", + "src": "4327:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "4319:4:74", + "nodeType": "YulTypedName", + "src": "4319:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4433:51:74", + "nodeType": "YulAssignment", + "src": "4433:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "4464:9:74", + "nodeType": "YulIdentifier", + "src": "4464:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "4475:8:74", + "nodeType": "YulIdentifier", + "src": "4475:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "4445:18:74", + "nodeType": "YulIdentifier", + "src": "4445:18:74" + }, + "nativeSrc": "4445:39:74", + "nodeType": "YulFunctionCall", + "src": "4445:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "4433:8:74", + "nodeType": "YulIdentifier", + "src": "4433:8:74" + } + ] + }, + { + "nativeSrc": "4493:30:74", + "nodeType": "YulAssignment", + "src": "4493:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4506:5:74", + "nodeType": "YulIdentifier", + "src": "4506:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "4517:4:74", + "nodeType": "YulIdentifier", + "src": "4517:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "4513:3:74", + "nodeType": "YulIdentifier", + "src": "4513:3:74" + }, + "nativeSrc": "4513:9:74", + "nodeType": "YulFunctionCall", + "src": "4513:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4502:3:74", + "nodeType": "YulIdentifier", + "src": "4502:3:74" + }, + "nativeSrc": "4502:21:74", + "nodeType": "YulFunctionCall", + "src": "4502:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4493:5:74", + "nodeType": "YulIdentifier", + "src": "4493:5:74" + } + ] + }, + { + "nativeSrc": "4532:40:74", + "nodeType": "YulAssignment", + "src": "4532:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4545:5:74", + "nodeType": "YulIdentifier", + "src": "4545:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "4556:8:74", + "nodeType": "YulIdentifier", + "src": "4556:8:74" + }, + { + "name": "mask", + "nativeSrc": "4566:4:74", + "nodeType": "YulIdentifier", + "src": "4566:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4552:3:74", + "nodeType": "YulIdentifier", + "src": "4552:3:74" + }, + "nativeSrc": "4552:19:74", + "nodeType": "YulFunctionCall", + "src": "4552:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "4542:2:74", + "nodeType": "YulIdentifier", + "src": "4542:2:74" + }, + "nativeSrc": "4542:30:74", + "nodeType": "YulFunctionCall", + "src": "4542:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "4532:6:74", + "nodeType": "YulIdentifier", + "src": "4532:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "4185:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4222:5:74", + "nodeType": "YulTypedName", + "src": "4222:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "4229:10:74", + "nodeType": "YulTypedName", + "src": "4229:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "4241:8:74", + "nodeType": "YulTypedName", + "src": "4241:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "4254:6:74", + "nodeType": "YulTypedName", + "src": "4254:6:74", + "type": "" + } + ], + "src": "4185:393:74" + }, + { + "body": { + "nativeSrc": "4629:32:74", + "nodeType": "YulBlock", + "src": "4629:32:74", + "statements": [ + { + "nativeSrc": "4639:16:74", + "nodeType": "YulAssignment", + "src": "4639:16:74", + "value": { + "name": "value", + "nativeSrc": "4650:5:74", + "nodeType": "YulIdentifier", + "src": "4650:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4639:7:74", + "nodeType": "YulIdentifier", + "src": "4639:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "4584:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4611:5:74", + "nodeType": "YulTypedName", + "src": "4611:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4621:7:74", + "nodeType": "YulTypedName", + "src": "4621:7:74", + "type": "" + } + ], + "src": "4584:77:74" + }, + { + "body": { + "nativeSrc": "4699:28:74", + "nodeType": "YulBlock", + "src": "4699:28:74", + "statements": [ + { + "nativeSrc": "4709:12:74", + "nodeType": "YulAssignment", + "src": "4709:12:74", + "value": { + "name": "value", + "nativeSrc": "4716:5:74", + "nodeType": "YulIdentifier", + "src": "4716:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "4709:3:74", + "nodeType": "YulIdentifier", + "src": "4709:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "4667:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4685:5:74", + "nodeType": "YulTypedName", + "src": "4685:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "4695:3:74", + "nodeType": "YulTypedName", + "src": "4695:3:74", + "type": "" + } + ], + "src": "4667:60:74" + }, + { + "body": { + "nativeSrc": "4793:82:74", + "nodeType": "YulBlock", + "src": "4793:82:74", + "statements": [ + { + "nativeSrc": "4803:66:74", + "nodeType": "YulAssignment", + "src": "4803:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4861:5:74", + "nodeType": "YulIdentifier", + "src": "4861:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "4843:17:74", + "nodeType": "YulIdentifier", + "src": "4843:17:74" + }, + "nativeSrc": "4843:24:74", + "nodeType": "YulFunctionCall", + "src": "4843:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "4834:8:74", + "nodeType": "YulIdentifier", + "src": "4834:8:74" + }, + "nativeSrc": "4834:34:74", + "nodeType": "YulFunctionCall", + "src": "4834:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "4816:17:74", + "nodeType": "YulIdentifier", + "src": "4816:17:74" + }, + "nativeSrc": "4816:53:74", + "nodeType": "YulFunctionCall", + "src": "4816:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "4803:9:74", + "nodeType": "YulIdentifier", + "src": "4803:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "4733:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4773:5:74", + "nodeType": "YulTypedName", + "src": "4773:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "4783:9:74", + "nodeType": "YulTypedName", + "src": "4783:9:74", + "type": "" + } + ], + "src": "4733:142:74" + }, + { + "body": { + "nativeSrc": "4928:28:74", + "nodeType": "YulBlock", + "src": "4928:28:74", + "statements": [ + { + "nativeSrc": "4938:12:74", + "nodeType": "YulAssignment", + "src": "4938:12:74", + "value": { + "name": "value", + "nativeSrc": "4945:5:74", + "nodeType": "YulIdentifier", + "src": "4945:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "4938:3:74", + "nodeType": "YulIdentifier", + "src": "4938:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "4881:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4914:5:74", + "nodeType": "YulTypedName", + "src": "4914:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "4924:3:74", + "nodeType": "YulTypedName", + "src": "4924:3:74", + "type": "" + } + ], + "src": "4881:75:74" + }, + { + "body": { + "nativeSrc": "5038:193:74", + "nodeType": "YulBlock", + "src": "5038:193:74", + "statements": [ + { + "nativeSrc": "5048:63:74", + "nodeType": "YulVariableDeclaration", + "src": "5048:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "5103:7:74", + "nodeType": "YulIdentifier", + "src": "5103:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "5072:30:74", + "nodeType": "YulIdentifier", + "src": "5072:30:74" + }, + "nativeSrc": "5072:39:74", + "nodeType": "YulFunctionCall", + "src": "5072:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "5052:16:74", + "nodeType": "YulTypedName", + "src": "5052:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5127:4:74", + "nodeType": "YulIdentifier", + "src": "5127:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5167:4:74", + "nodeType": "YulIdentifier", + "src": "5167:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "5161:5:74", + "nodeType": "YulIdentifier", + "src": "5161:5:74" + }, + "nativeSrc": "5161:11:74", + "nodeType": "YulFunctionCall", + "src": "5161:11:74" + }, + { + "name": "offset", + "nativeSrc": "5174:6:74", + "nodeType": "YulIdentifier", + "src": "5174:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "5206:16:74", + "nodeType": "YulIdentifier", + "src": "5206:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "5182:23:74", + "nodeType": "YulIdentifier", + "src": "5182:23:74" + }, + "nativeSrc": "5182:41:74", + "nodeType": "YulFunctionCall", + "src": "5182:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "5133:27:74", + "nodeType": "YulIdentifier", + "src": "5133:27:74" + }, + "nativeSrc": "5133:91:74", + "nodeType": "YulFunctionCall", + "src": "5133:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "5120:6:74", + "nodeType": "YulIdentifier", + "src": "5120:6:74" + }, + "nativeSrc": "5120:105:74", + "nodeType": "YulFunctionCall", + "src": "5120:105:74" + }, + "nativeSrc": "5120:105:74", + "nodeType": "YulExpressionStatement", + "src": "5120:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "4962:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "5015:4:74", + "nodeType": "YulTypedName", + "src": "5015:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "5021:6:74", + "nodeType": "YulTypedName", + "src": "5021:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "5029:7:74", + "nodeType": "YulTypedName", + "src": "5029:7:74", + "type": "" + } + ], + "src": "4962:269:74" + }, + { + "body": { + "nativeSrc": "5286:24:74", + "nodeType": "YulBlock", + "src": "5286:24:74", + "statements": [ + { + "nativeSrc": "5296:8:74", + "nodeType": "YulAssignment", + "src": "5296:8:74", + "value": { + "kind": "number", + "nativeSrc": "5303:1:74", + "nodeType": "YulLiteral", + "src": "5303:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "5296:3:74", + "nodeType": "YulIdentifier", + "src": "5296:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "5237:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "5282:3:74", + "nodeType": "YulTypedName", + "src": "5282:3:74", + "type": "" + } + ], + "src": "5237:73:74" + }, + { + "body": { + "nativeSrc": "5369:136:74", + "nodeType": "YulBlock", + "src": "5369:136:74", + "statements": [ + { + "nativeSrc": "5379:46:74", + "nodeType": "YulVariableDeclaration", + "src": "5379:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "5393:30:74", + "nodeType": "YulIdentifier", + "src": "5393:30:74" + }, + "nativeSrc": "5393:32:74", + "nodeType": "YulFunctionCall", + "src": "5393:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "5383:6:74", + "nodeType": "YulTypedName", + "src": "5383:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5478:4:74", + "nodeType": "YulIdentifier", + "src": "5478:4:74" + }, + { + "name": "offset", + "nativeSrc": "5484:6:74", + "nodeType": "YulIdentifier", + "src": "5484:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "5492:6:74", + "nodeType": "YulIdentifier", + "src": "5492:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "5434:43:74", + "nodeType": "YulIdentifier", + "src": "5434:43:74" + }, + "nativeSrc": "5434:65:74", + "nodeType": "YulFunctionCall", + "src": "5434:65:74" + }, + "nativeSrc": "5434:65:74", + "nodeType": "YulExpressionStatement", + "src": "5434:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "5316:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "5355:4:74", + "nodeType": "YulTypedName", + "src": "5355:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "5361:6:74", + "nodeType": "YulTypedName", + "src": "5361:6:74", + "type": "" + } + ], + "src": "5316:189:74" + }, + { + "body": { + "nativeSrc": "5561:136:74", + "nodeType": "YulBlock", + "src": "5561:136:74", + "statements": [ + { + "body": { + "nativeSrc": "5628:63:74", + "nodeType": "YulBlock", + "src": "5628:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "5672:5:74", + "nodeType": "YulIdentifier", + "src": "5672:5:74" + }, + { + "kind": "number", + "nativeSrc": "5679:1:74", + "nodeType": "YulLiteral", + "src": "5679:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "5642:29:74", + "nodeType": "YulIdentifier", + "src": "5642:29:74" + }, + "nativeSrc": "5642:39:74", + "nodeType": "YulFunctionCall", + "src": "5642:39:74" + }, + "nativeSrc": "5642:39:74", + "nodeType": "YulExpressionStatement", + "src": "5642:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "5581:5:74", + "nodeType": "YulIdentifier", + "src": "5581:5:74" + }, + { + "name": "end", + "nativeSrc": "5588:3:74", + "nodeType": "YulIdentifier", + "src": "5588:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "5578:2:74", + "nodeType": "YulIdentifier", + "src": "5578:2:74" + }, + "nativeSrc": "5578:14:74", + "nodeType": "YulFunctionCall", + "src": "5578:14:74" + }, + "nativeSrc": "5571:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "5593:26:74", + "nodeType": "YulBlock", + "src": "5593:26:74", + "statements": [ + { + "nativeSrc": "5595:22:74", + "nodeType": "YulAssignment", + "src": "5595:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "5608:5:74", + "nodeType": "YulIdentifier", + "src": "5608:5:74" + }, + { + "kind": "number", + "nativeSrc": "5615:1:74", + "nodeType": "YulLiteral", + "src": "5615:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5604:3:74", + "nodeType": "YulIdentifier", + "src": "5604:3:74" + }, + "nativeSrc": "5604:13:74", + "nodeType": "YulFunctionCall", + "src": "5604:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "5595:5:74", + "nodeType": "YulIdentifier", + "src": "5595:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "5575:2:74", + "nodeType": "YulBlock", + "src": "5575:2:74", + "statements": [] + }, + "src": "5571:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "5511:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "5549:5:74", + "nodeType": "YulTypedName", + "src": "5549:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5556:3:74", + "nodeType": "YulTypedName", + "src": "5556:3:74", + "type": "" + } + ], + "src": "5511:186:74" + }, + { + "body": { + "nativeSrc": "5782:464:74", + "nodeType": "YulBlock", + "src": "5782:464:74", + "statements": [ + { + "body": { + "nativeSrc": "5808:431:74", + "nodeType": "YulBlock", + "src": "5808:431:74", + "statements": [ + { + "nativeSrc": "5822:54:74", + "nodeType": "YulVariableDeclaration", + "src": "5822:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "5870:5:74", + "nodeType": "YulIdentifier", + "src": "5870:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "5838:31:74", + "nodeType": "YulIdentifier", + "src": "5838:31:74" + }, + "nativeSrc": "5838:38:74", + "nodeType": "YulFunctionCall", + "src": "5838:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "5826:8:74", + "nodeType": "YulTypedName", + "src": "5826:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5889:63:74", + "nodeType": "YulVariableDeclaration", + "src": "5889:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "5912:8:74", + "nodeType": "YulIdentifier", + "src": "5912:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "5940:10:74", + "nodeType": "YulIdentifier", + "src": "5940:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "5922:17:74", + "nodeType": "YulIdentifier", + "src": "5922:17:74" + }, + "nativeSrc": "5922:29:74", + "nodeType": "YulFunctionCall", + "src": "5922:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5908:3:74", + "nodeType": "YulIdentifier", + "src": "5908:3:74" + }, + "nativeSrc": "5908:44:74", + "nodeType": "YulFunctionCall", + "src": "5908:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "5893:11:74", + "nodeType": "YulTypedName", + "src": "5893:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6109:27:74", + "nodeType": "YulBlock", + "src": "6109:27:74", + "statements": [ + { + "nativeSrc": "6111:23:74", + "nodeType": "YulAssignment", + "src": "6111:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "6126:8:74", + "nodeType": "YulIdentifier", + "src": "6126:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "6111:11:74", + "nodeType": "YulIdentifier", + "src": "6111:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "6093:10:74", + "nodeType": "YulIdentifier", + "src": "6093:10:74" + }, + { + "kind": "number", + "nativeSrc": "6105:2:74", + "nodeType": "YulLiteral", + "src": "6105:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6090:2:74", + "nodeType": "YulIdentifier", + "src": "6090:2:74" + }, + "nativeSrc": "6090:18:74", + "nodeType": "YulFunctionCall", + "src": "6090:18:74" + }, + "nativeSrc": "6087:49:74", + "nodeType": "YulIf", + "src": "6087:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "6178:11:74", + "nodeType": "YulIdentifier", + "src": "6178:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "6195:8:74", + "nodeType": "YulIdentifier", + "src": "6195:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "6223:3:74", + "nodeType": "YulIdentifier", + "src": "6223:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "6205:17:74", + "nodeType": "YulIdentifier", + "src": "6205:17:74" + }, + "nativeSrc": "6205:22:74", + "nodeType": "YulFunctionCall", + "src": "6205:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6191:3:74", + "nodeType": "YulIdentifier", + "src": "6191:3:74" + }, + "nativeSrc": "6191:37:74", + "nodeType": "YulFunctionCall", + "src": "6191:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "6149:28:74", + "nodeType": "YulIdentifier", + "src": "6149:28:74" + }, + "nativeSrc": "6149:80:74", + "nodeType": "YulFunctionCall", + "src": "6149:80:74" + }, + "nativeSrc": "6149:80:74", + "nodeType": "YulExpressionStatement", + "src": "6149:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "5799:3:74", + "nodeType": "YulIdentifier", + "src": "5799:3:74" + }, + { + "kind": "number", + "nativeSrc": "5804:2:74", + "nodeType": "YulLiteral", + "src": "5804:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5796:2:74", + "nodeType": "YulIdentifier", + "src": "5796:2:74" + }, + "nativeSrc": "5796:11:74", + "nodeType": "YulFunctionCall", + "src": "5796:11:74" + }, + "nativeSrc": "5793:446:74", + "nodeType": "YulIf", + "src": "5793:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "5703:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "5758:5:74", + "nodeType": "YulTypedName", + "src": "5758:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "5765:3:74", + "nodeType": "YulTypedName", + "src": "5765:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "5770:10:74", + "nodeType": "YulTypedName", + "src": "5770:10:74", + "type": "" + } + ], + "src": "5703:543:74" + }, + { + "body": { + "nativeSrc": "6315:54:74", + "nodeType": "YulBlock", + "src": "6315:54:74", + "statements": [ + { + "nativeSrc": "6325:37:74", + "nodeType": "YulAssignment", + "src": "6325:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "6350:4:74", + "nodeType": "YulIdentifier", + "src": "6350:4:74" + }, + { + "name": "value", + "nativeSrc": "6356:5:74", + "nodeType": "YulIdentifier", + "src": "6356:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "6346:3:74", + "nodeType": "YulIdentifier", + "src": "6346:3:74" + }, + "nativeSrc": "6346:16:74", + "nodeType": "YulFunctionCall", + "src": "6346:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "6325:8:74", + "nodeType": "YulIdentifier", + "src": "6325:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "6252:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "6290:4:74", + "nodeType": "YulTypedName", + "src": "6290:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "6296:5:74", + "nodeType": "YulTypedName", + "src": "6296:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "6306:8:74", + "nodeType": "YulTypedName", + "src": "6306:8:74", + "type": "" + } + ], + "src": "6252:117:74" + }, + { + "body": { + "nativeSrc": "6426:118:74", + "nodeType": "YulBlock", + "src": "6426:118:74", + "statements": [ + { + "nativeSrc": "6436:68:74", + "nodeType": "YulVariableDeclaration", + "src": "6436:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6485:1:74", + "nodeType": "YulLiteral", + "src": "6485:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "6488:5:74", + "nodeType": "YulIdentifier", + "src": "6488:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6481:3:74", + "nodeType": "YulIdentifier", + "src": "6481:3:74" + }, + "nativeSrc": "6481:13:74", + "nodeType": "YulFunctionCall", + "src": "6481:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6500:1:74", + "nodeType": "YulLiteral", + "src": "6500:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6496:3:74", + "nodeType": "YulIdentifier", + "src": "6496:3:74" + }, + "nativeSrc": "6496:6:74", + "nodeType": "YulFunctionCall", + "src": "6496:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "6452:28:74", + "nodeType": "YulIdentifier", + "src": "6452:28:74" + }, + "nativeSrc": "6452:51:74", + "nodeType": "YulFunctionCall", + "src": "6452:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6448:3:74", + "nodeType": "YulIdentifier", + "src": "6448:3:74" + }, + "nativeSrc": "6448:56:74", + "nodeType": "YulFunctionCall", + "src": "6448:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "6440:4:74", + "nodeType": "YulTypedName", + "src": "6440:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6513:25:74", + "nodeType": "YulAssignment", + "src": "6513:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6527:4:74", + "nodeType": "YulIdentifier", + "src": "6527:4:74" + }, + { + "name": "mask", + "nativeSrc": "6533:4:74", + "nodeType": "YulIdentifier", + "src": "6533:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6523:3:74", + "nodeType": "YulIdentifier", + "src": "6523:3:74" + }, + "nativeSrc": "6523:15:74", + "nodeType": "YulFunctionCall", + "src": "6523:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "6513:6:74", + "nodeType": "YulIdentifier", + "src": "6513:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "6375:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "6403:4:74", + "nodeType": "YulTypedName", + "src": "6403:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "6409:5:74", + "nodeType": "YulTypedName", + "src": "6409:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "6419:6:74", + "nodeType": "YulTypedName", + "src": "6419:6:74", + "type": "" + } + ], + "src": "6375:169:74" + }, + { + "body": { + "nativeSrc": "6630:214:74", + "nodeType": "YulBlock", + "src": "6630:214:74", + "statements": [ + { + "nativeSrc": "6763:37:74", + "nodeType": "YulAssignment", + "src": "6763:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6790:4:74", + "nodeType": "YulIdentifier", + "src": "6790:4:74" + }, + { + "name": "len", + "nativeSrc": "6796:3:74", + "nodeType": "YulIdentifier", + "src": "6796:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "6771:18:74", + "nodeType": "YulIdentifier", + "src": "6771:18:74" + }, + "nativeSrc": "6771:29:74", + "nodeType": "YulFunctionCall", + "src": "6771:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "6763:4:74", + "nodeType": "YulIdentifier", + "src": "6763:4:74" + } + ] + }, + { + "nativeSrc": "6809:29:74", + "nodeType": "YulAssignment", + "src": "6809:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6820:4:74", + "nodeType": "YulIdentifier", + "src": "6820:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6830:1:74", + "nodeType": "YulLiteral", + "src": "6830:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "6833:3:74", + "nodeType": "YulIdentifier", + "src": "6833:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6826:3:74", + "nodeType": "YulIdentifier", + "src": "6826:3:74" + }, + "nativeSrc": "6826:11:74", + "nodeType": "YulFunctionCall", + "src": "6826:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "6817:2:74", + "nodeType": "YulIdentifier", + "src": "6817:2:74" + }, + "nativeSrc": "6817:21:74", + "nodeType": "YulFunctionCall", + "src": "6817:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "6809:4:74", + "nodeType": "YulIdentifier", + "src": "6809:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "6549:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "6611:4:74", + "nodeType": "YulTypedName", + "src": "6611:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "6617:3:74", + "nodeType": "YulTypedName", + "src": "6617:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "6625:4:74", + "nodeType": "YulTypedName", + "src": "6625:4:74", + "type": "" + } + ], + "src": "6549:295:74" + }, + { + "body": { + "nativeSrc": "6941:1303:74", + "nodeType": "YulBlock", + "src": "6941:1303:74", + "statements": [ + { + "nativeSrc": "6952:51:74", + "nodeType": "YulVariableDeclaration", + "src": "6952:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "6999:3:74", + "nodeType": "YulIdentifier", + "src": "6999:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "6966:32:74", + "nodeType": "YulIdentifier", + "src": "6966:32:74" + }, + "nativeSrc": "6966:37:74", + "nodeType": "YulFunctionCall", + "src": "6966:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "6956:6:74", + "nodeType": "YulTypedName", + "src": "6956:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7088:22:74", + "nodeType": "YulBlock", + "src": "7088:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7090:16:74", + "nodeType": "YulIdentifier", + "src": "7090:16:74" + }, + "nativeSrc": "7090:18:74", + "nodeType": "YulFunctionCall", + "src": "7090:18:74" + }, + "nativeSrc": "7090:18:74", + "nodeType": "YulExpressionStatement", + "src": "7090:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7060:6:74", + "nodeType": "YulIdentifier", + "src": "7060:6:74" + }, + { + "kind": "number", + "nativeSrc": "7068:18:74", + "nodeType": "YulLiteral", + "src": "7068:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7057:2:74", + "nodeType": "YulIdentifier", + "src": "7057:2:74" + }, + "nativeSrc": "7057:30:74", + "nodeType": "YulFunctionCall", + "src": "7057:30:74" + }, + "nativeSrc": "7054:56:74", + "nodeType": "YulIf", + "src": "7054:56:74" + }, + { + "nativeSrc": "7120:52:74", + "nodeType": "YulVariableDeclaration", + "src": "7120:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7166:4:74", + "nodeType": "YulIdentifier", + "src": "7166:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "7160:5:74", + "nodeType": "YulIdentifier", + "src": "7160:5:74" + }, + "nativeSrc": "7160:11:74", + "nodeType": "YulFunctionCall", + "src": "7160:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "7134:25:74", + "nodeType": "YulIdentifier", + "src": "7134:25:74" + }, + "nativeSrc": "7134:38:74", + "nodeType": "YulFunctionCall", + "src": "7134:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "7124:6:74", + "nodeType": "YulTypedName", + "src": "7124:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7265:4:74", + "nodeType": "YulIdentifier", + "src": "7265:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "7271:6:74", + "nodeType": "YulIdentifier", + "src": "7271:6:74" + }, + { + "name": "newLen", + "nativeSrc": "7279:6:74", + "nodeType": "YulIdentifier", + "src": "7279:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "7219:45:74", + "nodeType": "YulIdentifier", + "src": "7219:45:74" + }, + "nativeSrc": "7219:67:74", + "nodeType": "YulFunctionCall", + "src": "7219:67:74" + }, + "nativeSrc": "7219:67:74", + "nodeType": "YulExpressionStatement", + "src": "7219:67:74" + }, + { + "nativeSrc": "7296:18:74", + "nodeType": "YulVariableDeclaration", + "src": "7296:18:74", + "value": { + "kind": "number", + "nativeSrc": "7313:1:74", + "nodeType": "YulLiteral", + "src": "7313:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "7300:9:74", + "nodeType": "YulTypedName", + "src": "7300:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7324:17:74", + "nodeType": "YulAssignment", + "src": "7324:17:74", + "value": { + "kind": "number", + "nativeSrc": "7337:4:74", + "nodeType": "YulLiteral", + "src": "7337:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "7324:9:74", + "nodeType": "YulIdentifier", + "src": "7324:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "7388:611:74", + "nodeType": "YulBlock", + "src": "7388:611:74", + "statements": [ + { + "nativeSrc": "7402:37:74", + "nodeType": "YulVariableDeclaration", + "src": "7402:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7421:6:74", + "nodeType": "YulIdentifier", + "src": "7421:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7433:4:74", + "nodeType": "YulLiteral", + "src": "7433:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "7429:3:74", + "nodeType": "YulIdentifier", + "src": "7429:3:74" + }, + "nativeSrc": "7429:9:74", + "nodeType": "YulFunctionCall", + "src": "7429:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7417:3:74", + "nodeType": "YulIdentifier", + "src": "7417:3:74" + }, + "nativeSrc": "7417:22:74", + "nodeType": "YulFunctionCall", + "src": "7417:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "7406:7:74", + "nodeType": "YulTypedName", + "src": "7406:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7453:51:74", + "nodeType": "YulVariableDeclaration", + "src": "7453:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7499:4:74", + "nodeType": "YulIdentifier", + "src": "7499:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "7467:31:74", + "nodeType": "YulIdentifier", + "src": "7467:31:74" + }, + "nativeSrc": "7467:37:74", + "nodeType": "YulFunctionCall", + "src": "7467:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "7457:6:74", + "nodeType": "YulTypedName", + "src": "7457:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7517:10:74", + "nodeType": "YulVariableDeclaration", + "src": "7517:10:74", + "value": { + "kind": "number", + "nativeSrc": "7526:1:74", + "nodeType": "YulLiteral", + "src": "7526:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "7521:1:74", + "nodeType": "YulTypedName", + "src": "7521:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7585:163:74", + "nodeType": "YulBlock", + "src": "7585:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "7610:6:74", + "nodeType": "YulIdentifier", + "src": "7610:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "7628:3:74", + "nodeType": "YulIdentifier", + "src": "7628:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "7633:9:74", + "nodeType": "YulIdentifier", + "src": "7633:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7624:3:74", + "nodeType": "YulIdentifier", + "src": "7624:3:74" + }, + "nativeSrc": "7624:19:74", + "nodeType": "YulFunctionCall", + "src": "7624:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "7618:5:74", + "nodeType": "YulIdentifier", + "src": "7618:5:74" + }, + "nativeSrc": "7618:26:74", + "nodeType": "YulFunctionCall", + "src": "7618:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7603:6:74", + "nodeType": "YulIdentifier", + "src": "7603:6:74" + }, + "nativeSrc": "7603:42:74", + "nodeType": "YulFunctionCall", + "src": "7603:42:74" + }, + "nativeSrc": "7603:42:74", + "nodeType": "YulExpressionStatement", + "src": "7603:42:74" + }, + { + "nativeSrc": "7662:24:74", + "nodeType": "YulAssignment", + "src": "7662:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "7676:6:74", + "nodeType": "YulIdentifier", + "src": "7676:6:74" + }, + { + "kind": "number", + "nativeSrc": "7684:1:74", + "nodeType": "YulLiteral", + "src": "7684:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7672:3:74", + "nodeType": "YulIdentifier", + "src": "7672:3:74" + }, + "nativeSrc": "7672:14:74", + "nodeType": "YulFunctionCall", + "src": "7672:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "7662:6:74", + "nodeType": "YulIdentifier", + "src": "7662:6:74" + } + ] + }, + { + "nativeSrc": "7703:31:74", + "nodeType": "YulAssignment", + "src": "7703:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "7720:9:74", + "nodeType": "YulIdentifier", + "src": "7720:9:74" + }, + { + "kind": "number", + "nativeSrc": "7731:2:74", + "nodeType": "YulLiteral", + "src": "7731:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7716:3:74", + "nodeType": "YulIdentifier", + "src": "7716:3:74" + }, + "nativeSrc": "7716:18:74", + "nodeType": "YulFunctionCall", + "src": "7716:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "7703:9:74", + "nodeType": "YulIdentifier", + "src": "7703:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7551:1:74", + "nodeType": "YulIdentifier", + "src": "7551:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "7554:7:74", + "nodeType": "YulIdentifier", + "src": "7554:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7548:2:74", + "nodeType": "YulIdentifier", + "src": "7548:2:74" + }, + "nativeSrc": "7548:14:74", + "nodeType": "YulFunctionCall", + "src": "7548:14:74" + }, + "nativeSrc": "7540:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "7563:21:74", + "nodeType": "YulBlock", + "src": "7563:21:74", + "statements": [ + { + "nativeSrc": "7565:17:74", + "nodeType": "YulAssignment", + "src": "7565:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7574:1:74", + "nodeType": "YulIdentifier", + "src": "7574:1:74" + }, + { + "kind": "number", + "nativeSrc": "7577:4:74", + "nodeType": "YulLiteral", + "src": "7577:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7570:3:74", + "nodeType": "YulIdentifier", + "src": "7570:3:74" + }, + "nativeSrc": "7570:12:74", + "nodeType": "YulFunctionCall", + "src": "7570:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "7565:1:74", + "nodeType": "YulIdentifier", + "src": "7565:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "7544:3:74", + "nodeType": "YulBlock", + "src": "7544:3:74", + "statements": [] + }, + "src": "7540:208:74" + }, + { + "body": { + "nativeSrc": "7784:156:74", + "nodeType": "YulBlock", + "src": "7784:156:74", + "statements": [ + { + "nativeSrc": "7802:43:74", + "nodeType": "YulVariableDeclaration", + "src": "7802:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "7829:3:74", + "nodeType": "YulIdentifier", + "src": "7829:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "7834:9:74", + "nodeType": "YulIdentifier", + "src": "7834:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7825:3:74", + "nodeType": "YulIdentifier", + "src": "7825:3:74" + }, + "nativeSrc": "7825:19:74", + "nodeType": "YulFunctionCall", + "src": "7825:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "7819:5:74", + "nodeType": "YulIdentifier", + "src": "7819:5:74" + }, + "nativeSrc": "7819:26:74", + "nodeType": "YulFunctionCall", + "src": "7819:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "7806:9:74", + "nodeType": "YulTypedName", + "src": "7806:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "7869:6:74", + "nodeType": "YulIdentifier", + "src": "7869:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "7896:9:74", + "nodeType": "YulIdentifier", + "src": "7896:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7911:6:74", + "nodeType": "YulIdentifier", + "src": "7911:6:74" + }, + { + "kind": "number", + "nativeSrc": "7919:4:74", + "nodeType": "YulLiteral", + "src": "7919:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7907:3:74", + "nodeType": "YulIdentifier", + "src": "7907:3:74" + }, + "nativeSrc": "7907:17:74", + "nodeType": "YulFunctionCall", + "src": "7907:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "7877:18:74", + "nodeType": "YulIdentifier", + "src": "7877:18:74" + }, + "nativeSrc": "7877:48:74", + "nodeType": "YulFunctionCall", + "src": "7877:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7862:6:74", + "nodeType": "YulIdentifier", + "src": "7862:6:74" + }, + "nativeSrc": "7862:64:74", + "nodeType": "YulFunctionCall", + "src": "7862:64:74" + }, + "nativeSrc": "7862:64:74", + "nodeType": "YulExpressionStatement", + "src": "7862:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "7767:7:74", + "nodeType": "YulIdentifier", + "src": "7767:7:74" + }, + { + "name": "newLen", + "nativeSrc": "7776:6:74", + "nodeType": "YulIdentifier", + "src": "7776:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7764:2:74", + "nodeType": "YulIdentifier", + "src": "7764:2:74" + }, + "nativeSrc": "7764:19:74", + "nodeType": "YulFunctionCall", + "src": "7764:19:74" + }, + "nativeSrc": "7761:179:74", + "nodeType": "YulIf", + "src": "7761:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7960:4:74", + "nodeType": "YulIdentifier", + "src": "7960:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7974:6:74", + "nodeType": "YulIdentifier", + "src": "7974:6:74" + }, + { + "kind": "number", + "nativeSrc": "7982:1:74", + "nodeType": "YulLiteral", + "src": "7982:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "7970:3:74", + "nodeType": "YulIdentifier", + "src": "7970:3:74" + }, + "nativeSrc": "7970:14:74", + "nodeType": "YulFunctionCall", + "src": "7970:14:74" + }, + { + "kind": "number", + "nativeSrc": "7986:1:74", + "nodeType": "YulLiteral", + "src": "7986:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7966:3:74", + "nodeType": "YulIdentifier", + "src": "7966:3:74" + }, + "nativeSrc": "7966:22:74", + "nodeType": "YulFunctionCall", + "src": "7966:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7953:6:74", + "nodeType": "YulIdentifier", + "src": "7953:6:74" + }, + "nativeSrc": "7953:36:74", + "nodeType": "YulFunctionCall", + "src": "7953:36:74" + }, + "nativeSrc": "7953:36:74", + "nodeType": "YulExpressionStatement", + "src": "7953:36:74" + } + ] + }, + "nativeSrc": "7381:618:74", + "nodeType": "YulCase", + "src": "7381:618:74", + "value": { + "kind": "number", + "nativeSrc": "7386:1:74", + "nodeType": "YulLiteral", + "src": "7386:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "8016:222:74", + "nodeType": "YulBlock", + "src": "8016:222:74", + "statements": [ + { + "nativeSrc": "8030:14:74", + "nodeType": "YulVariableDeclaration", + "src": "8030:14:74", + "value": { + "kind": "number", + "nativeSrc": "8043:1:74", + "nodeType": "YulLiteral", + "src": "8043:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "8034:5:74", + "nodeType": "YulTypedName", + "src": "8034:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8067:67:74", + "nodeType": "YulBlock", + "src": "8067:67:74", + "statements": [ + { + "nativeSrc": "8085:35:74", + "nodeType": "YulAssignment", + "src": "8085:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8104:3:74", + "nodeType": "YulIdentifier", + "src": "8104:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "8109:9:74", + "nodeType": "YulIdentifier", + "src": "8109:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8100:3:74", + "nodeType": "YulIdentifier", + "src": "8100:3:74" + }, + "nativeSrc": "8100:19:74", + "nodeType": "YulFunctionCall", + "src": "8100:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8094:5:74", + "nodeType": "YulIdentifier", + "src": "8094:5:74" + }, + "nativeSrc": "8094:26:74", + "nodeType": "YulFunctionCall", + "src": "8094:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "8085:5:74", + "nodeType": "YulIdentifier", + "src": "8085:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "8060:6:74", + "nodeType": "YulIdentifier", + "src": "8060:6:74" + }, + "nativeSrc": "8057:77:74", + "nodeType": "YulIf", + "src": "8057:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "8154:4:74", + "nodeType": "YulIdentifier", + "src": "8154:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8213:5:74", + "nodeType": "YulIdentifier", + "src": "8213:5:74" + }, + { + "name": "newLen", + "nativeSrc": "8220:6:74", + "nodeType": "YulIdentifier", + "src": "8220:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "8160:52:74", + "nodeType": "YulIdentifier", + "src": "8160:52:74" + }, + "nativeSrc": "8160:67:74", + "nodeType": "YulFunctionCall", + "src": "8160:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "8147:6:74", + "nodeType": "YulIdentifier", + "src": "8147:6:74" + }, + "nativeSrc": "8147:81:74", + "nodeType": "YulFunctionCall", + "src": "8147:81:74" + }, + "nativeSrc": "8147:81:74", + "nodeType": "YulExpressionStatement", + "src": "8147:81:74" + } + ] + }, + "nativeSrc": "8008:230:74", + "nodeType": "YulCase", + "src": "8008:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7361:6:74", + "nodeType": "YulIdentifier", + "src": "7361:6:74" + }, + { + "kind": "number", + "nativeSrc": "7369:2:74", + "nodeType": "YulLiteral", + "src": "7369:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7358:2:74", + "nodeType": "YulIdentifier", + "src": "7358:2:74" + }, + "nativeSrc": "7358:14:74", + "nodeType": "YulFunctionCall", + "src": "7358:14:74" + }, + "nativeSrc": "7351:887:74", + "nodeType": "YulSwitch", + "src": "7351:887:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nativeSrc": "6849:1395:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "6930:4:74", + "nodeType": "YulTypedName", + "src": "6930:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "6936:3:74", + "nodeType": "YulTypedName", + "src": "6936:3:74", + "type": "" + } + ], + "src": "6849:1395:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506040516107ac3803806107ac833981810160405281019061003291906101bd565b80600090816100419190610427565b50506104f9565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6100af82610066565b810181811067ffffffffffffffff821117156100ce576100cd610077565b5b80604052505050565b60006100e1610048565b90506100ed82826100a6565b919050565b600067ffffffffffffffff82111561010d5761010c610077565b5b61011682610066565b9050602081019050919050565b60005b83811015610141578082015181840152602081019050610126565b60008484015250505050565b600061016061015b846100f2565b6100d7565b90508281526020810184848401111561017c5761017b610061565b5b610187848285610123565b509392505050565b600082601f8301126101a4576101a361005c565b5b81516101b484826020860161014d565b91505092915050565b6000602082840312156101d3576101d2610052565b5b600082015167ffffffffffffffff8111156101f1576101f0610057565b5b6101fd8482850161018f565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061025857607f821691505b60208210810361026b5761026a610211565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026102d37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610296565b6102dd8683610296565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061032461031f61031a846102f5565b6102ff565b6102f5565b9050919050565b6000819050919050565b61033e83610309565b61035261034a8261032b565b8484546102a3565b825550505050565b600090565b61036761035a565b610372818484610335565b505050565b5b818110156103965761038b60008261035f565b600181019050610378565b5050565b601f8211156103db576103ac81610271565b6103b584610286565b810160208510156103c4578190505b6103d86103d085610286565b830182610377565b50505b505050565b600082821c905092915050565b60006103fe600019846008026103e0565b1980831691505092915050565b600061041783836103ed565b9150826002028217905092915050565b61043082610206565b67ffffffffffffffff81111561044957610448610077565b5b6104538254610240565b61045e82828561039a565b600060209050601f831160018114610491576000841561047f578287015190505b610489858261040b565b8655506104f1565b601f19841661049f86610271565b60005b828110156104c7578489015182556001820191506020850194506020810190506104a2565b868310156104e457848901516104e0601f8916826103ed565b8355505b6001600288020188555050505b505050505050565b6102a4806105086000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80630e89341c14610030575b600080fd5b61004a6004803603810190610045919061012f565b610060565b60405161005791906101ec565b60405180910390f35b60606000805461006f9061023d565b80601f016020809104026020016040519081016040528092919081815260200182805461009b9061023d565b80156100e85780601f106100bd576101008083540402835291602001916100e8565b820191906000526020600020905b8154815290600101906020018083116100cb57829003601f168201915b50505050509050919050565b600080fd5b6000819050919050565b61010c816100f9565b811461011757600080fd5b50565b60008135905061012981610103565b92915050565b600060208284031215610145576101446100f4565b5b60006101538482850161011a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561019657808201518184015260208101905061017b565b60008484015250505050565b6000601f19601f8301169050919050565b60006101be8261015c565b6101c88185610167565b93506101d8818560208601610178565b6101e1816101a2565b840191505092915050565b6000602082019050818103600083015261020681846101b3565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061025557607f821691505b6020821081036102685761026761020e565b5b5091905056fea26469706673582212207aa5d28e3b715909fecf52361927ac869de5c445947770ce80927028031d987164736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x7AC CODESIZE SUB DUP1 PUSH2 0x7AC DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x1BD JUMP JUMPDEST DUP1 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x41 SWAP2 SWAP1 PUSH2 0x427 JUMP JUMPDEST POP POP PUSH2 0x4F9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0xAF DUP3 PUSH2 0x66 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xCE JUMPI PUSH2 0xCD PUSH2 0x77 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE1 PUSH2 0x48 JUMP JUMPDEST SWAP1 POP PUSH2 0xED DUP3 DUP3 PUSH2 0xA6 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x10D JUMPI PUSH2 0x10C PUSH2 0x77 JUMP JUMPDEST JUMPDEST PUSH2 0x116 DUP3 PUSH2 0x66 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x141 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x126 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x160 PUSH2 0x15B DUP5 PUSH2 0xF2 JUMP JUMPDEST PUSH2 0xD7 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x17C JUMPI PUSH2 0x17B PUSH2 0x61 JUMP JUMPDEST JUMPDEST PUSH2 0x187 DUP5 DUP3 DUP6 PUSH2 0x123 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1A4 JUMPI PUSH2 0x1A3 PUSH2 0x5C JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1B4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x14D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D3 JUMPI PUSH2 0x1D2 PUSH2 0x52 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1F1 JUMPI PUSH2 0x1F0 PUSH2 0x57 JUMP JUMPDEST JUMPDEST PUSH2 0x1FD DUP5 DUP3 DUP6 ADD PUSH2 0x18F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x258 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x26B JUMPI PUSH2 0x26A PUSH2 0x211 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x2D3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x296 JUMP JUMPDEST PUSH2 0x2DD DUP7 DUP4 PUSH2 0x296 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324 PUSH2 0x31F PUSH2 0x31A DUP5 PUSH2 0x2F5 JUMP JUMPDEST PUSH2 0x2FF JUMP JUMPDEST PUSH2 0x2F5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x33E DUP4 PUSH2 0x309 JUMP JUMPDEST PUSH2 0x352 PUSH2 0x34A DUP3 PUSH2 0x32B JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x2A3 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x367 PUSH2 0x35A JUMP JUMPDEST PUSH2 0x372 DUP2 DUP5 DUP5 PUSH2 0x335 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x396 JUMPI PUSH2 0x38B PUSH1 0x0 DUP3 PUSH2 0x35F JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x378 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x3DB JUMPI PUSH2 0x3AC DUP2 PUSH2 0x271 JUMP JUMPDEST PUSH2 0x3B5 DUP5 PUSH2 0x286 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x3C4 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x3D8 PUSH2 0x3D0 DUP6 PUSH2 0x286 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x377 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FE PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x3E0 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x417 DUP4 DUP4 PUSH2 0x3ED JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x430 DUP3 PUSH2 0x206 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x449 JUMPI PUSH2 0x448 PUSH2 0x77 JUMP JUMPDEST JUMPDEST PUSH2 0x453 DUP3 SLOAD PUSH2 0x240 JUMP JUMPDEST PUSH2 0x45E DUP3 DUP3 DUP6 PUSH2 0x39A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x491 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x47F JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x489 DUP6 DUP3 PUSH2 0x40B JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x4F1 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x49F DUP7 PUSH2 0x271 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4C7 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4A2 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x4E4 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x4E0 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x3ED JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2A4 DUP1 PUSH2 0x508 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xE89341C EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x12F JUMP JUMPDEST PUSH2 0x60 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x57 SWAP2 SWAP1 PUSH2 0x1EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x6F SWAP1 PUSH2 0x23D JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x9B SWAP1 PUSH2 0x23D JUMP JUMPDEST DUP1 ISZERO PUSH2 0xE8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xE8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xCB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x10C DUP2 PUSH2 0xF9 JUMP JUMPDEST DUP2 EQ PUSH2 0x117 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x129 DUP2 PUSH2 0x103 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x145 JUMPI PUSH2 0x144 PUSH2 0xF4 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x153 DUP5 DUP3 DUP6 ADD PUSH2 0x11A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x196 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x17B JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BE DUP3 PUSH2 0x15C JUMP JUMPDEST PUSH2 0x1C8 DUP2 DUP6 PUSH2 0x167 JUMP JUMPDEST SWAP4 POP PUSH2 0x1D8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x178 JUMP JUMPDEST PUSH2 0x1E1 DUP2 PUSH2 0x1A2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x206 DUP2 DUP5 PUSH2 0x1B3 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x255 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x268 JUMPI PUSH2 0x267 PUSH2 0x20E JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0xA5D28E3B715909FECF52361927AC869DE5C445947770CE80927028 SUB SAR SWAP9 PUSH18 0x64736F6C6343000819003300000000000000 ", + "sourceMap": "57:233:49:-:0;;;120:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;177:12;170:4;:19;;;;;;:::i;:::-;;120:76;57:233;;7:75:74;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:308::-;1358:4;1448:18;1440:6;1437:30;1434:56;;;1470:18;;:::i;:::-;1434:56;1508:29;1530:6;1508:29;:::i;:::-;1500:37;;1592:4;1586;1582:15;1574:23;;1296:308;;;:::o;1610:248::-;1692:1;1702:113;1716:6;1713:1;1710:13;1702:113;;;1801:1;1796:3;1792:11;1786:18;1782:1;1777:3;1773:11;1766:39;1738:2;1735:1;1731:10;1726:15;;1702:113;;;1849:1;1840:6;1835:3;1831:16;1824:27;1672:186;1610:248;;;:::o;1864:434::-;1953:5;1978:66;1994:49;2036:6;1994:49;:::i;:::-;1978:66;:::i;:::-;1969:75;;2067:6;2060:5;2053:21;2105:4;2098:5;2094:16;2143:3;2134:6;2129:3;2125:16;2122:25;2119:112;;;2150:79;;:::i;:::-;2119:112;2240:52;2285:6;2280:3;2275;2240:52;:::i;:::-;1959:339;1864:434;;;;;:::o;2318:355::-;2385:5;2434:3;2427:4;2419:6;2415:17;2411:27;2401:122;;2442:79;;:::i;:::-;2401:122;2552:6;2546:13;2577:90;2663:3;2655:6;2648:4;2640:6;2636:17;2577:90;:::i;:::-;2568:99;;2391:282;2318:355;;;;:::o;2679:524::-;2759:6;2808:2;2796:9;2787:7;2783:23;2779:32;2776:119;;;2814:79;;:::i;:::-;2776:119;2955:1;2944:9;2940:17;2934:24;2985:18;2977:6;2974:30;2971:117;;;3007:79;;:::i;:::-;2971:117;3112:74;3178:7;3169:6;3158:9;3154:22;3112:74;:::i;:::-;3102:84;;2905:291;2679:524;;;;:::o;3209:99::-;3261:6;3295:5;3289:12;3279:22;;3209:99;;;:::o;3314:180::-;3362:77;3359:1;3352:88;3459:4;3456:1;3449:15;3483:4;3480:1;3473:15;3500:320;3544:6;3581:1;3575:4;3571:12;3561:22;;3628:1;3622:4;3618:12;3649:18;3639:81;;3705:4;3697:6;3693:17;3683:27;;3639:81;3767:2;3759:6;3756:14;3736:18;3733:38;3730:84;;3786:18;;:::i;:::-;3730:84;3551:269;3500:320;;;:::o;3826:141::-;3875:4;3898:3;3890:11;;3921:3;3918:1;3911:14;3955:4;3952:1;3942:18;3934:26;;3826:141;;;:::o;3973:93::-;4010:6;4057:2;4052;4045:5;4041:14;4037:23;4027:33;;3973:93;;;:::o;4072:107::-;4116:8;4166:5;4160:4;4156:16;4135:37;;4072:107;;;;:::o;4185:393::-;4254:6;4304:1;4292:10;4288:18;4327:97;4357:66;4346:9;4327:97;:::i;:::-;4445:39;4475:8;4464:9;4445:39;:::i;:::-;4433:51;;4517:4;4513:9;4506:5;4502:21;4493:30;;4566:4;4556:8;4552:19;4545:5;4542:30;4532:40;;4261:317;;4185:393;;;;;:::o;4584:77::-;4621:7;4650:5;4639:16;;4584:77;;;:::o;4667:60::-;4695:3;4716:5;4709:12;;4667:60;;;:::o;4733:142::-;4783:9;4816:53;4834:34;4843:24;4861:5;4843:24;:::i;:::-;4834:34;:::i;:::-;4816:53;:::i;:::-;4803:66;;4733:142;;;:::o;4881:75::-;4924:3;4945:5;4938:12;;4881:75;;;:::o;4962:269::-;5072:39;5103:7;5072:39;:::i;:::-;5133:91;5182:41;5206:16;5182:41;:::i;:::-;5174:6;5167:4;5161:11;5133:91;:::i;:::-;5127:4;5120:105;5038:193;4962:269;;;:::o;5237:73::-;5282:3;5237:73;:::o;5316:189::-;5393:32;;:::i;:::-;5434:65;5492:6;5484;5478:4;5434:65;:::i;:::-;5369:136;5316:189;;:::o;5511:186::-;5571:120;5588:3;5581:5;5578:14;5571:120;;;5642:39;5679:1;5672:5;5642:39;:::i;:::-;5615:1;5608:5;5604:13;5595:22;;5571:120;;;5511:186;;:::o;5703:543::-;5804:2;5799:3;5796:11;5793:446;;;5838:38;5870:5;5838:38;:::i;:::-;5922:29;5940:10;5922:29;:::i;:::-;5912:8;5908:44;6105:2;6093:10;6090:18;6087:49;;;6126:8;6111:23;;6087:49;6149:80;6205:22;6223:3;6205:22;:::i;:::-;6195:8;6191:37;6178:11;6149:80;:::i;:::-;5808:431;;5793:446;5703:543;;;:::o;6252:117::-;6306:8;6356:5;6350:4;6346:16;6325:37;;6252:117;;;;:::o;6375:169::-;6419:6;6452:51;6500:1;6496:6;6488:5;6485:1;6481:13;6452:51;:::i;:::-;6448:56;6533:4;6527;6523:15;6513:25;;6426:118;6375:169;;;;:::o;6549:295::-;6625:4;6771:29;6796:3;6790:4;6771:29;:::i;:::-;6763:37;;6833:3;6830:1;6826:11;6820:4;6817:21;6809:29;;6549:295;;;;:::o;6849:1395::-;6966:37;6999:3;6966:37;:::i;:::-;7068:18;7060:6;7057:30;7054:56;;;7090:18;;:::i;:::-;7054:56;7134:38;7166:4;7160:11;7134:38;:::i;:::-;7219:67;7279:6;7271;7265:4;7219:67;:::i;:::-;7313:1;7337:4;7324:17;;7369:2;7361:6;7358:14;7386:1;7381:618;;;;8043:1;8060:6;8057:77;;;8109:9;8104:3;8100:19;8094:26;8085:35;;8057:77;8160:67;8220:6;8213:5;8160:67;:::i;:::-;8154:4;8147:81;8016:222;7351:887;;7381:618;7433:4;7429:9;7421:6;7417:22;7467:37;7499:4;7467:37;:::i;:::-;7526:1;7540:208;7554:7;7551:1;7548:14;7540:208;;;7633:9;7628:3;7624:19;7618:26;7610:6;7603:42;7684:1;7676:6;7672:14;7662:24;;7731:2;7720:9;7716:18;7703:31;;7577:4;7574:1;7570:12;7565:17;;7540:208;;;7776:6;7767:7;7764:19;7761:179;;;7834:9;7829:3;7825:19;7819:26;7877:48;7919:4;7911:6;7907:17;7896:9;7877:48;:::i;:::-;7869:6;7862:64;7784:156;7761:179;7986:1;7982;7974:6;7970:14;7966:22;7960:4;7953:36;7388:611;;;7351:887;;6941:1303;;;6849:1395;;:::o;57:233:49:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@uri_13053": { + "entryPoint": 96, + "id": 13053, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 282, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 303, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 435, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 492, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 348, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 359, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 249, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 376, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 573, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 526, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 244, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 418, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "validator_revert_t_uint256": { + "entryPoint": 259, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:2878:74", + "nodeType": "YulBlock", + "src": "0:2878:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:32:74", + "nodeType": "YulBlock", + "src": "379:32:74", + "statements": [ + { + "nativeSrc": "389:16:74", + "nodeType": "YulAssignment", + "src": "389:16:74", + "value": { + "name": "value", + "nativeSrc": "400:5:74", + "nodeType": "YulIdentifier", + "src": "400:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "334:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:77:74" + }, + { + "body": { + "nativeSrc": "460:79:74", + "nodeType": "YulBlock", + "src": "460:79:74", + "statements": [ + { + "body": { + "nativeSrc": "517:16:74", + "nodeType": "YulBlock", + "src": "517:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "526:1:74", + "nodeType": "YulLiteral", + "src": "526:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "529:1:74", + "nodeType": "YulLiteral", + "src": "529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "519:6:74", + "nodeType": "YulIdentifier", + "src": "519:6:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulFunctionCall", + "src": "519:12:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulExpressionStatement", + "src": "519:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "483:5:74", + "nodeType": "YulIdentifier", + "src": "483:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "508:5:74", + "nodeType": "YulIdentifier", + "src": "508:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "490:17:74", + "nodeType": "YulIdentifier", + "src": "490:17:74" + }, + "nativeSrc": "490:24:74", + "nodeType": "YulFunctionCall", + "src": "490:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "480:2:74", + "nodeType": "YulIdentifier", + "src": "480:2:74" + }, + "nativeSrc": "480:35:74", + "nodeType": "YulFunctionCall", + "src": "480:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "473:6:74", + "nodeType": "YulIdentifier", + "src": "473:6:74" + }, + "nativeSrc": "473:43:74", + "nodeType": "YulFunctionCall", + "src": "473:43:74" + }, + "nativeSrc": "470:63:74", + "nodeType": "YulIf", + "src": "470:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "417:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "453:5:74", + "nodeType": "YulTypedName", + "src": "453:5:74", + "type": "" + } + ], + "src": "417:122:74" + }, + { + "body": { + "nativeSrc": "597:87:74", + "nodeType": "YulBlock", + "src": "597:87:74", + "statements": [ + { + "nativeSrc": "607:29:74", + "nodeType": "YulAssignment", + "src": "607:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "629:6:74", + "nodeType": "YulIdentifier", + "src": "629:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "616:12:74", + "nodeType": "YulIdentifier", + "src": "616:12:74" + }, + "nativeSrc": "616:20:74", + "nodeType": "YulFunctionCall", + "src": "616:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulIdentifier", + "src": "607:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "672:5:74", + "nodeType": "YulIdentifier", + "src": "672:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "645:26:74", + "nodeType": "YulIdentifier", + "src": "645:26:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulFunctionCall", + "src": "645:33:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulExpressionStatement", + "src": "645:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "545:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "575:6:74", + "nodeType": "YulTypedName", + "src": "575:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "583:3:74", + "nodeType": "YulTypedName", + "src": "583:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "591:5:74", + "nodeType": "YulTypedName", + "src": "591:5:74", + "type": "" + } + ], + "src": "545:139:74" + }, + { + "body": { + "nativeSrc": "756:263:74", + "nodeType": "YulBlock", + "src": "756:263:74", + "statements": [ + { + "body": { + "nativeSrc": "802:83:74", + "nodeType": "YulBlock", + "src": "802:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "804:77:74", + "nodeType": "YulIdentifier", + "src": "804:77:74" + }, + "nativeSrc": "804:79:74", + "nodeType": "YulFunctionCall", + "src": "804:79:74" + }, + "nativeSrc": "804:79:74", + "nodeType": "YulExpressionStatement", + "src": "804:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "777:7:74", + "nodeType": "YulIdentifier", + "src": "777:7:74" + }, + { + "name": "headStart", + "nativeSrc": "786:9:74", + "nodeType": "YulIdentifier", + "src": "786:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "773:3:74", + "nodeType": "YulIdentifier", + "src": "773:3:74" + }, + "nativeSrc": "773:23:74", + "nodeType": "YulFunctionCall", + "src": "773:23:74" + }, + { + "kind": "number", + "nativeSrc": "798:2:74", + "nodeType": "YulLiteral", + "src": "798:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "769:3:74", + "nodeType": "YulIdentifier", + "src": "769:3:74" + }, + "nativeSrc": "769:32:74", + "nodeType": "YulFunctionCall", + "src": "769:32:74" + }, + "nativeSrc": "766:119:74", + "nodeType": "YulIf", + "src": "766:119:74" + }, + { + "nativeSrc": "895:117:74", + "nodeType": "YulBlock", + "src": "895:117:74", + "statements": [ + { + "nativeSrc": "910:15:74", + "nodeType": "YulVariableDeclaration", + "src": "910:15:74", + "value": { + "kind": "number", + "nativeSrc": "924:1:74", + "nodeType": "YulLiteral", + "src": "924:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "914:6:74", + "nodeType": "YulTypedName", + "src": "914:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "939:63:74", + "nodeType": "YulAssignment", + "src": "939:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "974:9:74", + "nodeType": "YulIdentifier", + "src": "974:9:74" + }, + { + "name": "offset", + "nativeSrc": "985:6:74", + "nodeType": "YulIdentifier", + "src": "985:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "970:3:74", + "nodeType": "YulIdentifier", + "src": "970:3:74" + }, + "nativeSrc": "970:22:74", + "nodeType": "YulFunctionCall", + "src": "970:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "994:7:74", + "nodeType": "YulIdentifier", + "src": "994:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "949:20:74", + "nodeType": "YulIdentifier", + "src": "949:20:74" + }, + "nativeSrc": "949:53:74", + "nodeType": "YulFunctionCall", + "src": "949:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "939:6:74", + "nodeType": "YulIdentifier", + "src": "939:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "690:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "726:9:74", + "nodeType": "YulTypedName", + "src": "726:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "737:7:74", + "nodeType": "YulTypedName", + "src": "737:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "749:6:74", + "nodeType": "YulTypedName", + "src": "749:6:74", + "type": "" + } + ], + "src": "690:329:74" + }, + { + "body": { + "nativeSrc": "1084:40:74", + "nodeType": "YulBlock", + "src": "1084:40:74", + "statements": [ + { + "nativeSrc": "1095:22:74", + "nodeType": "YulAssignment", + "src": "1095:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1111:5:74", + "nodeType": "YulIdentifier", + "src": "1111:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1105:5:74", + "nodeType": "YulIdentifier", + "src": "1105:5:74" + }, + "nativeSrc": "1105:12:74", + "nodeType": "YulFunctionCall", + "src": "1105:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "1095:6:74", + "nodeType": "YulIdentifier", + "src": "1095:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1025:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1067:5:74", + "nodeType": "YulTypedName", + "src": "1067:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "1077:6:74", + "nodeType": "YulTypedName", + "src": "1077:6:74", + "type": "" + } + ], + "src": "1025:99:74" + }, + { + "body": { + "nativeSrc": "1226:73:74", + "nodeType": "YulBlock", + "src": "1226:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1243:3:74", + "nodeType": "YulIdentifier", + "src": "1243:3:74" + }, + { + "name": "length", + "nativeSrc": "1248:6:74", + "nodeType": "YulIdentifier", + "src": "1248:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1236:6:74", + "nodeType": "YulIdentifier", + "src": "1236:6:74" + }, + "nativeSrc": "1236:19:74", + "nodeType": "YulFunctionCall", + "src": "1236:19:74" + }, + "nativeSrc": "1236:19:74", + "nodeType": "YulExpressionStatement", + "src": "1236:19:74" + }, + { + "nativeSrc": "1264:29:74", + "nodeType": "YulAssignment", + "src": "1264:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1283:3:74", + "nodeType": "YulIdentifier", + "src": "1283:3:74" + }, + { + "kind": "number", + "nativeSrc": "1288:4:74", + "nodeType": "YulLiteral", + "src": "1288:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1279:3:74", + "nodeType": "YulIdentifier", + "src": "1279:3:74" + }, + "nativeSrc": "1279:14:74", + "nodeType": "YulFunctionCall", + "src": "1279:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "1264:11:74", + "nodeType": "YulIdentifier", + "src": "1264:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "1130:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "1198:3:74", + "nodeType": "YulTypedName", + "src": "1198:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1203:6:74", + "nodeType": "YulTypedName", + "src": "1203:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "1214:11:74", + "nodeType": "YulTypedName", + "src": "1214:11:74", + "type": "" + } + ], + "src": "1130:169:74" + }, + { + "body": { + "nativeSrc": "1367:186:74", + "nodeType": "YulBlock", + "src": "1367:186:74", + "statements": [ + { + "nativeSrc": "1378:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1378:10:74", + "value": { + "kind": "number", + "nativeSrc": "1387:1:74", + "nodeType": "YulLiteral", + "src": "1387:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1382:1:74", + "nodeType": "YulTypedName", + "src": "1382:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1447:63:74", + "nodeType": "YulBlock", + "src": "1447:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1472:3:74", + "nodeType": "YulIdentifier", + "src": "1472:3:74" + }, + { + "name": "i", + "nativeSrc": "1477:1:74", + "nodeType": "YulIdentifier", + "src": "1477:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1468:3:74", + "nodeType": "YulIdentifier", + "src": "1468:3:74" + }, + "nativeSrc": "1468:11:74", + "nodeType": "YulFunctionCall", + "src": "1468:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1491:3:74", + "nodeType": "YulIdentifier", + "src": "1491:3:74" + }, + { + "name": "i", + "nativeSrc": "1496:1:74", + "nodeType": "YulIdentifier", + "src": "1496:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1487:3:74", + "nodeType": "YulIdentifier", + "src": "1487:3:74" + }, + "nativeSrc": "1487:11:74", + "nodeType": "YulFunctionCall", + "src": "1487:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1481:5:74", + "nodeType": "YulIdentifier", + "src": "1481:5:74" + }, + "nativeSrc": "1481:18:74", + "nodeType": "YulFunctionCall", + "src": "1481:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1461:6:74", + "nodeType": "YulIdentifier", + "src": "1461:6:74" + }, + "nativeSrc": "1461:39:74", + "nodeType": "YulFunctionCall", + "src": "1461:39:74" + }, + "nativeSrc": "1461:39:74", + "nodeType": "YulExpressionStatement", + "src": "1461:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1408:1:74", + "nodeType": "YulIdentifier", + "src": "1408:1:74" + }, + { + "name": "length", + "nativeSrc": "1411:6:74", + "nodeType": "YulIdentifier", + "src": "1411:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1405:2:74", + "nodeType": "YulIdentifier", + "src": "1405:2:74" + }, + "nativeSrc": "1405:13:74", + "nodeType": "YulFunctionCall", + "src": "1405:13:74" + }, + "nativeSrc": "1397:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1419:19:74", + "nodeType": "YulBlock", + "src": "1419:19:74", + "statements": [ + { + "nativeSrc": "1421:15:74", + "nodeType": "YulAssignment", + "src": "1421:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1430:1:74", + "nodeType": "YulIdentifier", + "src": "1430:1:74" + }, + { + "kind": "number", + "nativeSrc": "1433:2:74", + "nodeType": "YulLiteral", + "src": "1433:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1426:3:74", + "nodeType": "YulIdentifier", + "src": "1426:3:74" + }, + "nativeSrc": "1426:10:74", + "nodeType": "YulFunctionCall", + "src": "1426:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1421:1:74", + "nodeType": "YulIdentifier", + "src": "1421:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1401:3:74", + "nodeType": "YulBlock", + "src": "1401:3:74", + "statements": [] + }, + "src": "1397:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1530:3:74", + "nodeType": "YulIdentifier", + "src": "1530:3:74" + }, + { + "name": "length", + "nativeSrc": "1535:6:74", + "nodeType": "YulIdentifier", + "src": "1535:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1526:3:74", + "nodeType": "YulIdentifier", + "src": "1526:3:74" + }, + "nativeSrc": "1526:16:74", + "nodeType": "YulFunctionCall", + "src": "1526:16:74" + }, + { + "kind": "number", + "nativeSrc": "1544:1:74", + "nodeType": "YulLiteral", + "src": "1544:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1519:6:74", + "nodeType": "YulIdentifier", + "src": "1519:6:74" + }, + "nativeSrc": "1519:27:74", + "nodeType": "YulFunctionCall", + "src": "1519:27:74" + }, + "nativeSrc": "1519:27:74", + "nodeType": "YulExpressionStatement", + "src": "1519:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1305:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1349:3:74", + "nodeType": "YulTypedName", + "src": "1349:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1354:3:74", + "nodeType": "YulTypedName", + "src": "1354:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1359:6:74", + "nodeType": "YulTypedName", + "src": "1359:6:74", + "type": "" + } + ], + "src": "1305:248:74" + }, + { + "body": { + "nativeSrc": "1607:54:74", + "nodeType": "YulBlock", + "src": "1607:54:74", + "statements": [ + { + "nativeSrc": "1617:38:74", + "nodeType": "YulAssignment", + "src": "1617:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1635:5:74", + "nodeType": "YulIdentifier", + "src": "1635:5:74" + }, + { + "kind": "number", + "nativeSrc": "1642:2:74", + "nodeType": "YulLiteral", + "src": "1642:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1631:3:74", + "nodeType": "YulIdentifier", + "src": "1631:3:74" + }, + "nativeSrc": "1631:14:74", + "nodeType": "YulFunctionCall", + "src": "1631:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1651:2:74", + "nodeType": "YulLiteral", + "src": "1651:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "1647:3:74", + "nodeType": "YulIdentifier", + "src": "1647:3:74" + }, + "nativeSrc": "1647:7:74", + "nodeType": "YulFunctionCall", + "src": "1647:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1627:3:74", + "nodeType": "YulIdentifier", + "src": "1627:3:74" + }, + "nativeSrc": "1627:28:74", + "nodeType": "YulFunctionCall", + "src": "1627:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "1617:6:74", + "nodeType": "YulIdentifier", + "src": "1617:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "1559:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1590:5:74", + "nodeType": "YulTypedName", + "src": "1590:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "1600:6:74", + "nodeType": "YulTypedName", + "src": "1600:6:74", + "type": "" + } + ], + "src": "1559:102:74" + }, + { + "body": { + "nativeSrc": "1759:285:74", + "nodeType": "YulBlock", + "src": "1759:285:74", + "statements": [ + { + "nativeSrc": "1769:53:74", + "nodeType": "YulVariableDeclaration", + "src": "1769:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1816:5:74", + "nodeType": "YulIdentifier", + "src": "1816:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1783:32:74", + "nodeType": "YulIdentifier", + "src": "1783:32:74" + }, + "nativeSrc": "1783:39:74", + "nodeType": "YulFunctionCall", + "src": "1783:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "1773:6:74", + "nodeType": "YulTypedName", + "src": "1773:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1831:78:74", + "nodeType": "YulAssignment", + "src": "1831:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1897:3:74", + "nodeType": "YulIdentifier", + "src": "1897:3:74" + }, + { + "name": "length", + "nativeSrc": "1902:6:74", + "nodeType": "YulIdentifier", + "src": "1902:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "1838:58:74", + "nodeType": "YulIdentifier", + "src": "1838:58:74" + }, + "nativeSrc": "1838:71:74", + "nodeType": "YulFunctionCall", + "src": "1838:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "1831:3:74", + "nodeType": "YulIdentifier", + "src": "1831:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1957:5:74", + "nodeType": "YulIdentifier", + "src": "1957:5:74" + }, + { + "kind": "number", + "nativeSrc": "1964:4:74", + "nodeType": "YulLiteral", + "src": "1964:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1953:3:74", + "nodeType": "YulIdentifier", + "src": "1953:3:74" + }, + "nativeSrc": "1953:16:74", + "nodeType": "YulFunctionCall", + "src": "1953:16:74" + }, + { + "name": "pos", + "nativeSrc": "1971:3:74", + "nodeType": "YulIdentifier", + "src": "1971:3:74" + }, + { + "name": "length", + "nativeSrc": "1976:6:74", + "nodeType": "YulIdentifier", + "src": "1976:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1918:34:74", + "nodeType": "YulIdentifier", + "src": "1918:34:74" + }, + "nativeSrc": "1918:65:74", + "nodeType": "YulFunctionCall", + "src": "1918:65:74" + }, + "nativeSrc": "1918:65:74", + "nodeType": "YulExpressionStatement", + "src": "1918:65:74" + }, + { + "nativeSrc": "1992:46:74", + "nodeType": "YulAssignment", + "src": "1992:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2003:3:74", + "nodeType": "YulIdentifier", + "src": "2003:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2030:6:74", + "nodeType": "YulIdentifier", + "src": "2030:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2008:21:74", + "nodeType": "YulIdentifier", + "src": "2008:21:74" + }, + "nativeSrc": "2008:29:74", + "nodeType": "YulFunctionCall", + "src": "2008:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1999:3:74", + "nodeType": "YulIdentifier", + "src": "1999:3:74" + }, + "nativeSrc": "1999:39:74", + "nodeType": "YulFunctionCall", + "src": "1999:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "1992:3:74", + "nodeType": "YulIdentifier", + "src": "1992:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "1667:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1740:5:74", + "nodeType": "YulTypedName", + "src": "1740:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1747:3:74", + "nodeType": "YulTypedName", + "src": "1747:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "1755:3:74", + "nodeType": "YulTypedName", + "src": "1755:3:74", + "type": "" + } + ], + "src": "1667:377:74" + }, + { + "body": { + "nativeSrc": "2168:195:74", + "nodeType": "YulBlock", + "src": "2168:195:74", + "statements": [ + { + "nativeSrc": "2178:26:74", + "nodeType": "YulAssignment", + "src": "2178:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2190:9:74", + "nodeType": "YulIdentifier", + "src": "2190:9:74" + }, + { + "kind": "number", + "nativeSrc": "2201:2:74", + "nodeType": "YulLiteral", + "src": "2201:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2186:3:74", + "nodeType": "YulIdentifier", + "src": "2186:3:74" + }, + "nativeSrc": "2186:18:74", + "nodeType": "YulFunctionCall", + "src": "2186:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2178:4:74", + "nodeType": "YulIdentifier", + "src": "2178:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2225:9:74", + "nodeType": "YulIdentifier", + "src": "2225:9:74" + }, + { + "kind": "number", + "nativeSrc": "2236:1:74", + "nodeType": "YulLiteral", + "src": "2236:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2221:3:74", + "nodeType": "YulIdentifier", + "src": "2221:3:74" + }, + "nativeSrc": "2221:17:74", + "nodeType": "YulFunctionCall", + "src": "2221:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "2244:4:74", + "nodeType": "YulIdentifier", + "src": "2244:4:74" + }, + { + "name": "headStart", + "nativeSrc": "2250:9:74", + "nodeType": "YulIdentifier", + "src": "2250:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2240:3:74", + "nodeType": "YulIdentifier", + "src": "2240:3:74" + }, + "nativeSrc": "2240:20:74", + "nodeType": "YulFunctionCall", + "src": "2240:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2214:6:74", + "nodeType": "YulIdentifier", + "src": "2214:6:74" + }, + "nativeSrc": "2214:47:74", + "nodeType": "YulFunctionCall", + "src": "2214:47:74" + }, + "nativeSrc": "2214:47:74", + "nodeType": "YulExpressionStatement", + "src": "2214:47:74" + }, + { + "nativeSrc": "2270:86:74", + "nodeType": "YulAssignment", + "src": "2270:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2342:6:74", + "nodeType": "YulIdentifier", + "src": "2342:6:74" + }, + { + "name": "tail", + "nativeSrc": "2351:4:74", + "nodeType": "YulIdentifier", + "src": "2351:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2278:63:74", + "nodeType": "YulIdentifier", + "src": "2278:63:74" + }, + "nativeSrc": "2278:78:74", + "nodeType": "YulFunctionCall", + "src": "2278:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2270:4:74", + "nodeType": "YulIdentifier", + "src": "2270:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "2050:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2140:9:74", + "nodeType": "YulTypedName", + "src": "2140:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2152:6:74", + "nodeType": "YulTypedName", + "src": "2152:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2163:4:74", + "nodeType": "YulTypedName", + "src": "2163:4:74", + "type": "" + } + ], + "src": "2050:313:74" + }, + { + "body": { + "nativeSrc": "2397:152:74", + "nodeType": "YulBlock", + "src": "2397:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2414:1:74", + "nodeType": "YulLiteral", + "src": "2414:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2417:77:74", + "nodeType": "YulLiteral", + "src": "2417:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2407:6:74", + "nodeType": "YulIdentifier", + "src": "2407:6:74" + }, + "nativeSrc": "2407:88:74", + "nodeType": "YulFunctionCall", + "src": "2407:88:74" + }, + "nativeSrc": "2407:88:74", + "nodeType": "YulExpressionStatement", + "src": "2407:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2511:1:74", + "nodeType": "YulLiteral", + "src": "2511:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "2514:4:74", + "nodeType": "YulLiteral", + "src": "2514:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2504:6:74", + "nodeType": "YulIdentifier", + "src": "2504:6:74" + }, + "nativeSrc": "2504:15:74", + "nodeType": "YulFunctionCall", + "src": "2504:15:74" + }, + "nativeSrc": "2504:15:74", + "nodeType": "YulExpressionStatement", + "src": "2504:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2535:1:74", + "nodeType": "YulLiteral", + "src": "2535:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2538:4:74", + "nodeType": "YulLiteral", + "src": "2538:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2528:6:74", + "nodeType": "YulIdentifier", + "src": "2528:6:74" + }, + "nativeSrc": "2528:15:74", + "nodeType": "YulFunctionCall", + "src": "2528:15:74" + }, + "nativeSrc": "2528:15:74", + "nodeType": "YulExpressionStatement", + "src": "2528:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "2369:180:74", + "nodeType": "YulFunctionDefinition", + "src": "2369:180:74" + }, + { + "body": { + "nativeSrc": "2606:269:74", + "nodeType": "YulBlock", + "src": "2606:269:74", + "statements": [ + { + "nativeSrc": "2616:22:74", + "nodeType": "YulAssignment", + "src": "2616:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "2630:4:74", + "nodeType": "YulIdentifier", + "src": "2630:4:74" + }, + { + "kind": "number", + "nativeSrc": "2636:1:74", + "nodeType": "YulLiteral", + "src": "2636:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "2626:3:74", + "nodeType": "YulIdentifier", + "src": "2626:3:74" + }, + "nativeSrc": "2626:12:74", + "nodeType": "YulFunctionCall", + "src": "2626:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2616:6:74", + "nodeType": "YulIdentifier", + "src": "2616:6:74" + } + ] + }, + { + "nativeSrc": "2647:38:74", + "nodeType": "YulVariableDeclaration", + "src": "2647:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "2677:4:74", + "nodeType": "YulIdentifier", + "src": "2677:4:74" + }, + { + "kind": "number", + "nativeSrc": "2683:1:74", + "nodeType": "YulLiteral", + "src": "2683:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2673:3:74", + "nodeType": "YulIdentifier", + "src": "2673:3:74" + }, + "nativeSrc": "2673:12:74", + "nodeType": "YulFunctionCall", + "src": "2673:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2651:18:74", + "nodeType": "YulTypedName", + "src": "2651:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2724:51:74", + "nodeType": "YulBlock", + "src": "2724:51:74", + "statements": [ + { + "nativeSrc": "2738:27:74", + "nodeType": "YulAssignment", + "src": "2738:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "2752:6:74", + "nodeType": "YulIdentifier", + "src": "2752:6:74" + }, + { + "kind": "number", + "nativeSrc": "2760:4:74", + "nodeType": "YulLiteral", + "src": "2760:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2748:3:74", + "nodeType": "YulIdentifier", + "src": "2748:3:74" + }, + "nativeSrc": "2748:17:74", + "nodeType": "YulFunctionCall", + "src": "2748:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2738:6:74", + "nodeType": "YulIdentifier", + "src": "2738:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2704:18:74", + "nodeType": "YulIdentifier", + "src": "2704:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2697:6:74", + "nodeType": "YulIdentifier", + "src": "2697:6:74" + }, + "nativeSrc": "2697:26:74", + "nodeType": "YulFunctionCall", + "src": "2697:26:74" + }, + "nativeSrc": "2694:81:74", + "nodeType": "YulIf", + "src": "2694:81:74" + }, + { + "body": { + "nativeSrc": "2827:42:74", + "nodeType": "YulBlock", + "src": "2827:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "2841:16:74", + "nodeType": "YulIdentifier", + "src": "2841:16:74" + }, + "nativeSrc": "2841:18:74", + "nodeType": "YulFunctionCall", + "src": "2841:18:74" + }, + "nativeSrc": "2841:18:74", + "nodeType": "YulExpressionStatement", + "src": "2841:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "2791:18:74", + "nodeType": "YulIdentifier", + "src": "2791:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2814:6:74", + "nodeType": "YulIdentifier", + "src": "2814:6:74" + }, + { + "kind": "number", + "nativeSrc": "2822:2:74", + "nodeType": "YulLiteral", + "src": "2822:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2811:2:74", + "nodeType": "YulIdentifier", + "src": "2811:2:74" + }, + "nativeSrc": "2811:14:74", + "nodeType": "YulFunctionCall", + "src": "2811:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2788:2:74", + "nodeType": "YulIdentifier", + "src": "2788:2:74" + }, + "nativeSrc": "2788:38:74", + "nodeType": "YulFunctionCall", + "src": "2788:38:74" + }, + "nativeSrc": "2785:84:74", + "nodeType": "YulIf", + "src": "2785:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "2555:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "2590:4:74", + "nodeType": "YulTypedName", + "src": "2590:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "2599:6:74", + "nodeType": "YulTypedName", + "src": "2599:6:74", + "type": "" + } + ], + "src": "2555:320:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506004361061002b5760003560e01c80630e89341c14610030575b600080fd5b61004a6004803603810190610045919061012f565b610060565b60405161005791906101ec565b60405180910390f35b60606000805461006f9061023d565b80601f016020809104026020016040519081016040528092919081815260200182805461009b9061023d565b80156100e85780601f106100bd576101008083540402835291602001916100e8565b820191906000526020600020905b8154815290600101906020018083116100cb57829003601f168201915b50505050509050919050565b600080fd5b6000819050919050565b61010c816100f9565b811461011757600080fd5b50565b60008135905061012981610103565b92915050565b600060208284031215610145576101446100f4565b5b60006101538482850161011a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561019657808201518184015260208101905061017b565b60008484015250505050565b6000601f19601f8301169050919050565b60006101be8261015c565b6101c88185610167565b93506101d8818560208601610178565b6101e1816101a2565b840191505092915050565b6000602082019050818103600083015261020681846101b3565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061025557607f821691505b6020821081036102685761026761020e565b5b5091905056fea26469706673582212207aa5d28e3b715909fecf52361927ac869de5c445947770ce80927028031d987164736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xE89341C EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x12F JUMP JUMPDEST PUSH2 0x60 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x57 SWAP2 SWAP1 PUSH2 0x1EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x6F SWAP1 PUSH2 0x23D JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x9B SWAP1 PUSH2 0x23D JUMP JUMPDEST DUP1 ISZERO PUSH2 0xE8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xE8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xCB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x10C DUP2 PUSH2 0xF9 JUMP JUMPDEST DUP2 EQ PUSH2 0x117 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x129 DUP2 PUSH2 0x103 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x145 JUMPI PUSH2 0x144 PUSH2 0xF4 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x153 DUP5 DUP3 DUP6 ADD PUSH2 0x11A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x196 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x17B JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BE DUP3 PUSH2 0x15C JUMP JUMPDEST PUSH2 0x1C8 DUP2 DUP6 PUSH2 0x167 JUMP JUMPDEST SWAP4 POP PUSH2 0x1D8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x178 JUMP JUMPDEST PUSH2 0x1E1 DUP2 PUSH2 0x1A2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x206 DUP2 DUP5 PUSH2 0x1B3 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x255 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x268 JUMPI PUSH2 0x267 PUSH2 0x20E JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0xA5D28E3B715909FECF52361927AC869DE5C445947770CE80927028 SUB SAR SWAP9 PUSH18 0x64736F6C6343000819003300000000000000 ", + "sourceMap": "57:233:49:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;202:86;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;245:13;277:4;270:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;202:86;;;:::o;88:117:74:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:248::-;1387:1;1397:113;1411:6;1408:1;1405:13;1397:113;;;1496:1;1491:3;1487:11;1481:18;1477:1;1472:3;1468:11;1461:39;1433:2;1430:1;1426:10;1421:15;;1397:113;;;1544:1;1535:6;1530:3;1526:16;1519:27;1367:186;1305:248;;;:::o;1559:102::-;1600:6;1651:2;1647:7;1642:2;1635:5;1631:14;1627:28;1617:38;;1559:102;;;:::o;1667:377::-;1755:3;1783:39;1816:5;1783:39;:::i;:::-;1838:71;1902:6;1897:3;1838:71;:::i;:::-;1831:78;;1918:65;1976:6;1971:3;1964:4;1957:5;1953:16;1918:65;:::i;:::-;2008:29;2030:6;2008:29;:::i;:::-;2003:3;1999:39;1992:46;;1759:285;1667:377;;;;:::o;2050:313::-;2163:4;2201:2;2190:9;2186:18;2178:26;;2250:9;2244:4;2240:20;2236:1;2225:9;2221:17;2214:47;2278:78;2351:4;2342:6;2278:78;:::i;:::-;2270:86;;2050:313;;;;:::o;2369:180::-;2417:77;2414:1;2407:88;2514:4;2511:1;2504:15;2538:4;2535:1;2528:15;2555:320;2599:6;2636:1;2630:4;2626:12;2616:22;;2683:1;2677:4;2673:12;2704:18;2694:81;;2760:4;2752:6;2748:17;2738:27;;2694:81;2822:2;2814:6;2811:14;2791:18;2788:38;2785:84;;2841:18;;:::i;:::-;2785:84;2606:269;2555:320;;;:::o" + }, + "methodIdentifiers": { + "uri(uint256)": "0e89341c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_metaDataUri\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol\":\"StaticMetadataService\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens-contracts/contracts/wrapper/StaticMetadataService.sol\":{\"keccak256\":\"0x28aad4cb829118de64965e06af8e785e6b2efa5207859d2efc63e404c26cfea3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://395b4db582bccf0eb49250a6b7fb26189f088fff636b3e28537a58d19282ceee\",\"dweb:/ipfs/QmckdhLiggaXqCvK5eb3PYWkvSDMRSKpx9oD5UuBVu3igr\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/access/Ownable.sol": { + "Ownable": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "owner()": "8da5cb5b", + "renounceOwnership()": "715018a6", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/access/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155.sol": { + "IERC1155": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "balanceOf(address,uint256)": "00fdd58e", + "balanceOfBatch(address[],uint256[])": "4e1273f4", + "isApprovedForAll(address,address)": "e985e9c5", + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": "2eb2c2d6", + "safeTransferFrom(address,address,uint256,uint256,bytes)": "f242432a", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Required interface of an ERC1155 compliant contract, as defined in the https://eips.ethereum.org/EIPS/eip-1155[EIP]. _Available since v3.1._\",\"events\":{\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to `approved`.\"},\"TransferBatch(address,address,address,uint256[],uint256[])\":{\"details\":\"Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all transfers.\"},\"TransferSingle(address,address,address,uint256,uint256)\":{\"details\":\"Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\"},\"URI(string,uint256)\":{\"details\":\"Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. If an {URI} event was emitted for `id`, the standard https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value returned by {IERC1155MetadataURI-uri}.\"}},\"kind\":\"dev\",\"methods\":{\"balanceOf(address,uint256)\":{\"details\":\"Returns the amount of tokens of token type `id` owned by `account`. Requirements: - `account` cannot be the zero address.\"},\"balanceOfBatch(address[],uint256[])\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}. Requirements: - `accounts` and `ids` must have the same length.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns true if `operator` is approved to transfer ``account``'s tokens. See {setApprovalForAll}.\"},\"safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}. Emits a {TransferBatch} event. Requirements: - `ids` and `amounts` must have the same length. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the acceptance magic value.\"},\"safeTransferFrom(address,address,uint256,uint256,bytes)\":{\"details\":\"Transfers `amount` tokens of token type `id` from `from` to `to`. Emits a {TransferSingle} event. Requirements: - `to` cannot be the zero address. - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}. - `from` must have a balance of tokens of type `id` of at least `amount`. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the acceptance magic value.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`, Emits an {ApprovalForAll} event. Requirements: - `operator` cannot be the caller.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":\"IERC1155\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol": { + "IERC1155Receiver": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onERC1155BatchReceived", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onERC1155Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": "bc197c81", + "onERC1155Received(address,address,uint256,uint256,bytes)": "f23a6e61", + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC1155BatchReceived\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC1155Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"_Available since v3.1._\",\"kind\":\"dev\",\"methods\":{\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\":{\"details\":\"Handles the receipt of a multiple ERC1155 token types. This function is called at the end of a `safeBatchTransferFrom` after the balances have been updated. NOTE: To accept the transfer(s), this must return `bytes4(keccak256(\\\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\\\"))` (i.e. 0xbc197c81, or its own function selector).\",\"params\":{\"data\":\"Additional data with no specified format\",\"from\":\"The address which previously owned the token\",\"ids\":\"An array containing ids of each token being transferred (order and length must match values array)\",\"operator\":\"The address which initiated the batch transfer (i.e. msg.sender)\",\"values\":\"An array containing amounts of each token being transferred (order and length must match ids array)\"},\"returns\":{\"_0\":\"`bytes4(keccak256(\\\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\\\"))` if transfer is allowed\"}},\"onERC1155Received(address,address,uint256,uint256,bytes)\":{\"details\":\"Handles the receipt of a single ERC1155 token type. This function is called at the end of a `safeTransferFrom` after the balance has been updated. NOTE: To accept the transfer, this must return `bytes4(keccak256(\\\"onERC1155Received(address,address,uint256,uint256,bytes)\\\"))` (i.e. 0xf23a6e61, or its own function selector).\",\"params\":{\"data\":\"Additional data with no specified format\",\"from\":\"The address which previously owned the token\",\"id\":\"The ID of the token being transferred\",\"operator\":\"The address which initiated the transfer (i.e. msg.sender)\",\"value\":\"The amount of tokens being transferred\"},\"returns\":{\"_0\":\"`bytes4(keccak256(\\\"onERC1155Received(address,address,uint256,uint256,bytes)\\\"))` if transfer is allowed\"}},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\":\"IERC1155Receiver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol": { + "IERC1155MetadataURI": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "uri", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "balanceOf(address,uint256)": "00fdd58e", + "balanceOfBatch(address[],uint256[])": "4e1273f4", + "isApprovedForAll(address,address)": "e985e9c5", + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": "2eb2c2d6", + "safeTransferFrom(address,address,uint256,uint256,bytes)": "f242432a", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "uri(uint256)": "0e89341c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the optional ERC1155MetadataExtension interface, as defined in the https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[EIP]. _Available since v3.1._\",\"events\":{\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to `approved`.\"},\"TransferBatch(address,address,address,uint256[],uint256[])\":{\"details\":\"Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all transfers.\"},\"TransferSingle(address,address,address,uint256,uint256)\":{\"details\":\"Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.\"},\"URI(string,uint256)\":{\"details\":\"Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. If an {URI} event was emitted for `id`, the standard https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value returned by {IERC1155MetadataURI-uri}.\"}},\"kind\":\"dev\",\"methods\":{\"balanceOf(address,uint256)\":{\"details\":\"Returns the amount of tokens of token type `id` owned by `account`. Requirements: - `account` cannot be the zero address.\"},\"balanceOfBatch(address[],uint256[])\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}. Requirements: - `accounts` and `ids` must have the same length.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns true if `operator` is approved to transfer ``account``'s tokens. See {setApprovalForAll}.\"},\"safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)\":{\"details\":\"xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}. Emits a {TransferBatch} event. Requirements: - `ids` and `amounts` must have the same length. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the acceptance magic value.\"},\"safeTransferFrom(address,address,uint256,uint256,bytes)\":{\"details\":\"Transfers `amount` tokens of token type `id` from `from` to `to`. Emits a {TransferSingle} event. Requirements: - `to` cannot be the zero address. - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}. - `from` must have a balance of tokens of type `id` of at least `amount`. - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the acceptance magic value.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`, Emits an {ApprovalForAll} event. Requirements: - `operator` cannot be the caller.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"uri(uint256)\":{\"details\":\"Returns the URI for token type `id`. If the `\\\\{id\\\\}` substring is present in the URI, it must be replaced by clients with the actual token type ID.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol\":\"IERC1155MetadataURI\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol\":{\"keccak256\":\"0xa66d18b9a85458d28fc3304717964502ae36f7f8a2ff35bc83f6f85d74b03574\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e46c80ea068989111d6103e5521223f9ef337e93de76deed8b03f75c6f7b2797\",\"dweb:/ipfs/QmNoSE6knNfFncdDDLTb3fGR6oSQty1srG96Vsx3E9wQdw\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC20/IERC20.sol": { + "IERC20": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC721/ERC721.sol": { + "ERC721": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "name_", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13486": { + "entryPoint": null, + "id": 13486, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_decode_available_length_t_string_memory_ptr_fromMemory": { + "entryPoint": 350, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr_fromMemory": { + "entryPoint": 416, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr_fromMemory": { + "entryPoint": 462, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "allocate_memory": { + "entryPoint": 232, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 89, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 259, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 689, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 582, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 986, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_uint256": { + "entryPoint": 821, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 951, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 841, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 1127, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 308, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 710, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 640, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 1099, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 183, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 831, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 1069, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 593, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 136, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 875, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 109, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 114, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 104, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 99, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 119, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 726, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 1056, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 927, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 739, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 885, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 922, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:8576:74", + "nodeType": "YulBlock", + "src": "0:8576:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "628:54:74", + "nodeType": "YulBlock", + "src": "628:54:74", + "statements": [ + { + "nativeSrc": "638:38:74", + "nodeType": "YulAssignment", + "src": "638:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "656:5:74", + "nodeType": "YulIdentifier", + "src": "656:5:74" + }, + { + "kind": "number", + "nativeSrc": "663:2:74", + "nodeType": "YulLiteral", + "src": "663:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "652:3:74", + "nodeType": "YulIdentifier", + "src": "652:3:74" + }, + "nativeSrc": "652:14:74", + "nodeType": "YulFunctionCall", + "src": "652:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "672:2:74", + "nodeType": "YulLiteral", + "src": "672:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "668:3:74", + "nodeType": "YulIdentifier", + "src": "668:3:74" + }, + "nativeSrc": "668:7:74", + "nodeType": "YulFunctionCall", + "src": "668:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "648:3:74", + "nodeType": "YulIdentifier", + "src": "648:3:74" + }, + "nativeSrc": "648:28:74", + "nodeType": "YulFunctionCall", + "src": "648:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "638:6:74", + "nodeType": "YulIdentifier", + "src": "638:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "580:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "611:5:74", + "nodeType": "YulTypedName", + "src": "611:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "621:6:74", + "nodeType": "YulTypedName", + "src": "621:6:74", + "type": "" + } + ], + "src": "580:102:74" + }, + { + "body": { + "nativeSrc": "716:152:74", + "nodeType": "YulBlock", + "src": "716:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "733:1:74", + "nodeType": "YulLiteral", + "src": "733:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "736:77:74", + "nodeType": "YulLiteral", + "src": "736:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "726:6:74", + "nodeType": "YulIdentifier", + "src": "726:6:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulFunctionCall", + "src": "726:88:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulExpressionStatement", + "src": "726:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "830:1:74", + "nodeType": "YulLiteral", + "src": "830:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "833:4:74", + "nodeType": "YulLiteral", + "src": "833:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "823:6:74", + "nodeType": "YulIdentifier", + "src": "823:6:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulFunctionCall", + "src": "823:15:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulExpressionStatement", + "src": "823:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "854:1:74", + "nodeType": "YulLiteral", + "src": "854:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "857:4:74", + "nodeType": "YulLiteral", + "src": "857:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "847:6:74", + "nodeType": "YulIdentifier", + "src": "847:6:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulFunctionCall", + "src": "847:15:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulExpressionStatement", + "src": "847:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "688:180:74", + "nodeType": "YulFunctionDefinition", + "src": "688:180:74" + }, + { + "body": { + "nativeSrc": "917:238:74", + "nodeType": "YulBlock", + "src": "917:238:74", + "statements": [ + { + "nativeSrc": "927:58:74", + "nodeType": "YulVariableDeclaration", + "src": "927:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "949:6:74", + "nodeType": "YulIdentifier", + "src": "949:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "979:4:74", + "nodeType": "YulIdentifier", + "src": "979:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "957:21:74", + "nodeType": "YulIdentifier", + "src": "957:21:74" + }, + "nativeSrc": "957:27:74", + "nodeType": "YulFunctionCall", + "src": "957:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "945:3:74", + "nodeType": "YulIdentifier", + "src": "945:3:74" + }, + "nativeSrc": "945:40:74", + "nodeType": "YulFunctionCall", + "src": "945:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "931:10:74", + "nodeType": "YulTypedName", + "src": "931:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1096:22:74", + "nodeType": "YulBlock", + "src": "1096:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1098:16:74", + "nodeType": "YulIdentifier", + "src": "1098:16:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulFunctionCall", + "src": "1098:18:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulExpressionStatement", + "src": "1098:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1039:10:74", + "nodeType": "YulIdentifier", + "src": "1039:10:74" + }, + { + "kind": "number", + "nativeSrc": "1051:18:74", + "nodeType": "YulLiteral", + "src": "1051:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1036:2:74", + "nodeType": "YulIdentifier", + "src": "1036:2:74" + }, + "nativeSrc": "1036:34:74", + "nodeType": "YulFunctionCall", + "src": "1036:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1075:10:74", + "nodeType": "YulIdentifier", + "src": "1075:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "1087:6:74", + "nodeType": "YulIdentifier", + "src": "1087:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1072:2:74", + "nodeType": "YulIdentifier", + "src": "1072:2:74" + }, + "nativeSrc": "1072:22:74", + "nodeType": "YulFunctionCall", + "src": "1072:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "1033:2:74", + "nodeType": "YulIdentifier", + "src": "1033:2:74" + }, + "nativeSrc": "1033:62:74", + "nodeType": "YulFunctionCall", + "src": "1033:62:74" + }, + "nativeSrc": "1030:88:74", + "nodeType": "YulIf", + "src": "1030:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1134:2:74", + "nodeType": "YulLiteral", + "src": "1134:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "1138:10:74", + "nodeType": "YulIdentifier", + "src": "1138:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1127:6:74", + "nodeType": "YulIdentifier", + "src": "1127:6:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulFunctionCall", + "src": "1127:22:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulExpressionStatement", + "src": "1127:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "874:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "903:6:74", + "nodeType": "YulTypedName", + "src": "903:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "911:4:74", + "nodeType": "YulTypedName", + "src": "911:4:74", + "type": "" + } + ], + "src": "874:281:74" + }, + { + "body": { + "nativeSrc": "1202:88:74", + "nodeType": "YulBlock", + "src": "1202:88:74", + "statements": [ + { + "nativeSrc": "1212:30:74", + "nodeType": "YulAssignment", + "src": "1212:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "1222:18:74", + "nodeType": "YulIdentifier", + "src": "1222:18:74" + }, + "nativeSrc": "1222:20:74", + "nodeType": "YulFunctionCall", + "src": "1222:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "1212:6:74", + "nodeType": "YulIdentifier", + "src": "1212:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "1271:6:74", + "nodeType": "YulIdentifier", + "src": "1271:6:74" + }, + { + "name": "size", + "nativeSrc": "1279:4:74", + "nodeType": "YulIdentifier", + "src": "1279:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "1251:19:74", + "nodeType": "YulIdentifier", + "src": "1251:19:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulFunctionCall", + "src": "1251:33:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulExpressionStatement", + "src": "1251:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "1161:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "1186:4:74", + "nodeType": "YulTypedName", + "src": "1186:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "1195:6:74", + "nodeType": "YulTypedName", + "src": "1195:6:74", + "type": "" + } + ], + "src": "1161:129:74" + }, + { + "body": { + "nativeSrc": "1363:241:74", + "nodeType": "YulBlock", + "src": "1363:241:74", + "statements": [ + { + "body": { + "nativeSrc": "1468:22:74", + "nodeType": "YulBlock", + "src": "1468:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1470:16:74", + "nodeType": "YulIdentifier", + "src": "1470:16:74" + }, + "nativeSrc": "1470:18:74", + "nodeType": "YulFunctionCall", + "src": "1470:18:74" + }, + "nativeSrc": "1470:18:74", + "nodeType": "YulExpressionStatement", + "src": "1470:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1440:6:74", + "nodeType": "YulIdentifier", + "src": "1440:6:74" + }, + { + "kind": "number", + "nativeSrc": "1448:18:74", + "nodeType": "YulLiteral", + "src": "1448:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1437:2:74", + "nodeType": "YulIdentifier", + "src": "1437:2:74" + }, + "nativeSrc": "1437:30:74", + "nodeType": "YulFunctionCall", + "src": "1437:30:74" + }, + "nativeSrc": "1434:56:74", + "nodeType": "YulIf", + "src": "1434:56:74" + }, + { + "nativeSrc": "1500:37:74", + "nodeType": "YulAssignment", + "src": "1500:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1530:6:74", + "nodeType": "YulIdentifier", + "src": "1530:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "1508:21:74", + "nodeType": "YulIdentifier", + "src": "1508:21:74" + }, + "nativeSrc": "1508:29:74", + "nodeType": "YulFunctionCall", + "src": "1508:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1500:4:74", + "nodeType": "YulIdentifier", + "src": "1500:4:74" + } + ] + }, + { + "nativeSrc": "1574:23:74", + "nodeType": "YulAssignment", + "src": "1574:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "1586:4:74", + "nodeType": "YulIdentifier", + "src": "1586:4:74" + }, + { + "kind": "number", + "nativeSrc": "1592:4:74", + "nodeType": "YulLiteral", + "src": "1592:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1582:3:74", + "nodeType": "YulIdentifier", + "src": "1582:3:74" + }, + "nativeSrc": "1582:15:74", + "nodeType": "YulFunctionCall", + "src": "1582:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1574:4:74", + "nodeType": "YulIdentifier", + "src": "1574:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "1296:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1347:6:74", + "nodeType": "YulTypedName", + "src": "1347:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1358:4:74", + "nodeType": "YulTypedName", + "src": "1358:4:74", + "type": "" + } + ], + "src": "1296:308:74" + }, + { + "body": { + "nativeSrc": "1672:186:74", + "nodeType": "YulBlock", + "src": "1672:186:74", + "statements": [ + { + "nativeSrc": "1683:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1683:10:74", + "value": { + "kind": "number", + "nativeSrc": "1692:1:74", + "nodeType": "YulLiteral", + "src": "1692:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1687:1:74", + "nodeType": "YulTypedName", + "src": "1687:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1752:63:74", + "nodeType": "YulBlock", + "src": "1752:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1777:3:74", + "nodeType": "YulIdentifier", + "src": "1777:3:74" + }, + { + "name": "i", + "nativeSrc": "1782:1:74", + "nodeType": "YulIdentifier", + "src": "1782:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1773:3:74", + "nodeType": "YulIdentifier", + "src": "1773:3:74" + }, + "nativeSrc": "1773:11:74", + "nodeType": "YulFunctionCall", + "src": "1773:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1796:3:74", + "nodeType": "YulIdentifier", + "src": "1796:3:74" + }, + { + "name": "i", + "nativeSrc": "1801:1:74", + "nodeType": "YulIdentifier", + "src": "1801:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1792:3:74", + "nodeType": "YulIdentifier", + "src": "1792:3:74" + }, + "nativeSrc": "1792:11:74", + "nodeType": "YulFunctionCall", + "src": "1792:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1786:5:74", + "nodeType": "YulIdentifier", + "src": "1786:5:74" + }, + "nativeSrc": "1786:18:74", + "nodeType": "YulFunctionCall", + "src": "1786:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1766:6:74", + "nodeType": "YulIdentifier", + "src": "1766:6:74" + }, + "nativeSrc": "1766:39:74", + "nodeType": "YulFunctionCall", + "src": "1766:39:74" + }, + "nativeSrc": "1766:39:74", + "nodeType": "YulExpressionStatement", + "src": "1766:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1713:1:74", + "nodeType": "YulIdentifier", + "src": "1713:1:74" + }, + { + "name": "length", + "nativeSrc": "1716:6:74", + "nodeType": "YulIdentifier", + "src": "1716:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1710:2:74", + "nodeType": "YulIdentifier", + "src": "1710:2:74" + }, + "nativeSrc": "1710:13:74", + "nodeType": "YulFunctionCall", + "src": "1710:13:74" + }, + "nativeSrc": "1702:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1724:19:74", + "nodeType": "YulBlock", + "src": "1724:19:74", + "statements": [ + { + "nativeSrc": "1726:15:74", + "nodeType": "YulAssignment", + "src": "1726:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1735:1:74", + "nodeType": "YulIdentifier", + "src": "1735:1:74" + }, + { + "kind": "number", + "nativeSrc": "1738:2:74", + "nodeType": "YulLiteral", + "src": "1738:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1731:3:74", + "nodeType": "YulIdentifier", + "src": "1731:3:74" + }, + "nativeSrc": "1731:10:74", + "nodeType": "YulFunctionCall", + "src": "1731:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1726:1:74", + "nodeType": "YulIdentifier", + "src": "1726:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1706:3:74", + "nodeType": "YulBlock", + "src": "1706:3:74", + "statements": [] + }, + "src": "1702:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1835:3:74", + "nodeType": "YulIdentifier", + "src": "1835:3:74" + }, + { + "name": "length", + "nativeSrc": "1840:6:74", + "nodeType": "YulIdentifier", + "src": "1840:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1831:3:74", + "nodeType": "YulIdentifier", + "src": "1831:3:74" + }, + "nativeSrc": "1831:16:74", + "nodeType": "YulFunctionCall", + "src": "1831:16:74" + }, + { + "kind": "number", + "nativeSrc": "1849:1:74", + "nodeType": "YulLiteral", + "src": "1849:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1824:6:74", + "nodeType": "YulIdentifier", + "src": "1824:6:74" + }, + "nativeSrc": "1824:27:74", + "nodeType": "YulFunctionCall", + "src": "1824:27:74" + }, + "nativeSrc": "1824:27:74", + "nodeType": "YulExpressionStatement", + "src": "1824:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1610:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1654:3:74", + "nodeType": "YulTypedName", + "src": "1654:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1659:3:74", + "nodeType": "YulTypedName", + "src": "1659:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1664:6:74", + "nodeType": "YulTypedName", + "src": "1664:6:74", + "type": "" + } + ], + "src": "1610:248:74" + }, + { + "body": { + "nativeSrc": "1959:339:74", + "nodeType": "YulBlock", + "src": "1959:339:74", + "statements": [ + { + "nativeSrc": "1969:75:74", + "nodeType": "YulAssignment", + "src": "1969:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2036:6:74", + "nodeType": "YulIdentifier", + "src": "2036:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "1994:41:74", + "nodeType": "YulIdentifier", + "src": "1994:41:74" + }, + "nativeSrc": "1994:49:74", + "nodeType": "YulFunctionCall", + "src": "1994:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "1978:15:74", + "nodeType": "YulIdentifier", + "src": "1978:15:74" + }, + "nativeSrc": "1978:66:74", + "nodeType": "YulFunctionCall", + "src": "1978:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "1969:5:74", + "nodeType": "YulIdentifier", + "src": "1969:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2060:5:74", + "nodeType": "YulIdentifier", + "src": "2060:5:74" + }, + { + "name": "length", + "nativeSrc": "2067:6:74", + "nodeType": "YulIdentifier", + "src": "2067:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2053:6:74", + "nodeType": "YulIdentifier", + "src": "2053:6:74" + }, + "nativeSrc": "2053:21:74", + "nodeType": "YulFunctionCall", + "src": "2053:21:74" + }, + "nativeSrc": "2053:21:74", + "nodeType": "YulExpressionStatement", + "src": "2053:21:74" + }, + { + "nativeSrc": "2083:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2083:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2098:5:74", + "nodeType": "YulIdentifier", + "src": "2098:5:74" + }, + { + "kind": "number", + "nativeSrc": "2105:4:74", + "nodeType": "YulLiteral", + "src": "2105:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2094:3:74", + "nodeType": "YulIdentifier", + "src": "2094:3:74" + }, + "nativeSrc": "2094:16:74", + "nodeType": "YulFunctionCall", + "src": "2094:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "2087:3:74", + "nodeType": "YulTypedName", + "src": "2087:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2148:83:74", + "nodeType": "YulBlock", + "src": "2148:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "2150:77:74", + "nodeType": "YulIdentifier", + "src": "2150:77:74" + }, + "nativeSrc": "2150:79:74", + "nodeType": "YulFunctionCall", + "src": "2150:79:74" + }, + "nativeSrc": "2150:79:74", + "nodeType": "YulExpressionStatement", + "src": "2150:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2129:3:74", + "nodeType": "YulIdentifier", + "src": "2129:3:74" + }, + { + "name": "length", + "nativeSrc": "2134:6:74", + "nodeType": "YulIdentifier", + "src": "2134:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2125:3:74", + "nodeType": "YulIdentifier", + "src": "2125:3:74" + }, + "nativeSrc": "2125:16:74", + "nodeType": "YulFunctionCall", + "src": "2125:16:74" + }, + { + "name": "end", + "nativeSrc": "2143:3:74", + "nodeType": "YulIdentifier", + "src": "2143:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2122:2:74", + "nodeType": "YulIdentifier", + "src": "2122:2:74" + }, + "nativeSrc": "2122:25:74", + "nodeType": "YulFunctionCall", + "src": "2122:25:74" + }, + "nativeSrc": "2119:112:74", + "nodeType": "YulIf", + "src": "2119:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "2275:3:74", + "nodeType": "YulIdentifier", + "src": "2275:3:74" + }, + { + "name": "dst", + "nativeSrc": "2280:3:74", + "nodeType": "YulIdentifier", + "src": "2280:3:74" + }, + { + "name": "length", + "nativeSrc": "2285:6:74", + "nodeType": "YulIdentifier", + "src": "2285:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2240:34:74", + "nodeType": "YulIdentifier", + "src": "2240:34:74" + }, + "nativeSrc": "2240:52:74", + "nodeType": "YulFunctionCall", + "src": "2240:52:74" + }, + "nativeSrc": "2240:52:74", + "nodeType": "YulExpressionStatement", + "src": "2240:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "1864:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1932:3:74", + "nodeType": "YulTypedName", + "src": "1932:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1937:6:74", + "nodeType": "YulTypedName", + "src": "1937:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1945:3:74", + "nodeType": "YulTypedName", + "src": "1945:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "1953:5:74", + "nodeType": "YulTypedName", + "src": "1953:5:74", + "type": "" + } + ], + "src": "1864:434:74" + }, + { + "body": { + "nativeSrc": "2391:282:74", + "nodeType": "YulBlock", + "src": "2391:282:74", + "statements": [ + { + "body": { + "nativeSrc": "2440:83:74", + "nodeType": "YulBlock", + "src": "2440:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2442:77:74", + "nodeType": "YulIdentifier", + "src": "2442:77:74" + }, + "nativeSrc": "2442:79:74", + "nodeType": "YulFunctionCall", + "src": "2442:79:74" + }, + "nativeSrc": "2442:79:74", + "nodeType": "YulExpressionStatement", + "src": "2442:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2419:6:74", + "nodeType": "YulIdentifier", + "src": "2419:6:74" + }, + { + "kind": "number", + "nativeSrc": "2427:4:74", + "nodeType": "YulLiteral", + "src": "2427:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2415:3:74", + "nodeType": "YulIdentifier", + "src": "2415:3:74" + }, + "nativeSrc": "2415:17:74", + "nodeType": "YulFunctionCall", + "src": "2415:17:74" + }, + { + "name": "end", + "nativeSrc": "2434:3:74", + "nodeType": "YulIdentifier", + "src": "2434:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2411:3:74", + "nodeType": "YulIdentifier", + "src": "2411:3:74" + }, + "nativeSrc": "2411:27:74", + "nodeType": "YulFunctionCall", + "src": "2411:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2404:6:74", + "nodeType": "YulIdentifier", + "src": "2404:6:74" + }, + "nativeSrc": "2404:35:74", + "nodeType": "YulFunctionCall", + "src": "2404:35:74" + }, + "nativeSrc": "2401:122:74", + "nodeType": "YulIf", + "src": "2401:122:74" + }, + { + "nativeSrc": "2532:27:74", + "nodeType": "YulVariableDeclaration", + "src": "2532:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2552:6:74", + "nodeType": "YulIdentifier", + "src": "2552:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2546:5:74", + "nodeType": "YulIdentifier", + "src": "2546:5:74" + }, + "nativeSrc": "2546:13:74", + "nodeType": "YulFunctionCall", + "src": "2546:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2536:6:74", + "nodeType": "YulTypedName", + "src": "2536:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2568:99:74", + "nodeType": "YulAssignment", + "src": "2568:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2640:6:74", + "nodeType": "YulIdentifier", + "src": "2640:6:74" + }, + { + "kind": "number", + "nativeSrc": "2648:4:74", + "nodeType": "YulLiteral", + "src": "2648:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2636:3:74", + "nodeType": "YulIdentifier", + "src": "2636:3:74" + }, + "nativeSrc": "2636:17:74", + "nodeType": "YulFunctionCall", + "src": "2636:17:74" + }, + { + "name": "length", + "nativeSrc": "2655:6:74", + "nodeType": "YulIdentifier", + "src": "2655:6:74" + }, + { + "name": "end", + "nativeSrc": "2663:3:74", + "nodeType": "YulIdentifier", + "src": "2663:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "2577:58:74", + "nodeType": "YulIdentifier", + "src": "2577:58:74" + }, + "nativeSrc": "2577:90:74", + "nodeType": "YulFunctionCall", + "src": "2577:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "2568:5:74", + "nodeType": "YulIdentifier", + "src": "2568:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "2318:355:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2369:6:74", + "nodeType": "YulTypedName", + "src": "2369:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2377:3:74", + "nodeType": "YulTypedName", + "src": "2377:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2385:5:74", + "nodeType": "YulTypedName", + "src": "2385:5:74", + "type": "" + } + ], + "src": "2318:355:74" + }, + { + "body": { + "nativeSrc": "2793:739:74", + "nodeType": "YulBlock", + "src": "2793:739:74", + "statements": [ + { + "body": { + "nativeSrc": "2839:83:74", + "nodeType": "YulBlock", + "src": "2839:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2841:77:74", + "nodeType": "YulIdentifier", + "src": "2841:77:74" + }, + "nativeSrc": "2841:79:74", + "nodeType": "YulFunctionCall", + "src": "2841:79:74" + }, + "nativeSrc": "2841:79:74", + "nodeType": "YulExpressionStatement", + "src": "2841:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2814:7:74", + "nodeType": "YulIdentifier", + "src": "2814:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2823:9:74", + "nodeType": "YulIdentifier", + "src": "2823:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2810:3:74", + "nodeType": "YulIdentifier", + "src": "2810:3:74" + }, + "nativeSrc": "2810:23:74", + "nodeType": "YulFunctionCall", + "src": "2810:23:74" + }, + { + "kind": "number", + "nativeSrc": "2835:2:74", + "nodeType": "YulLiteral", + "src": "2835:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2806:3:74", + "nodeType": "YulIdentifier", + "src": "2806:3:74" + }, + "nativeSrc": "2806:32:74", + "nodeType": "YulFunctionCall", + "src": "2806:32:74" + }, + "nativeSrc": "2803:119:74", + "nodeType": "YulIf", + "src": "2803:119:74" + }, + { + "nativeSrc": "2932:291:74", + "nodeType": "YulBlock", + "src": "2932:291:74", + "statements": [ + { + "nativeSrc": "2947:38:74", + "nodeType": "YulVariableDeclaration", + "src": "2947:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2971:9:74", + "nodeType": "YulIdentifier", + "src": "2971:9:74" + }, + { + "kind": "number", + "nativeSrc": "2982:1:74", + "nodeType": "YulLiteral", + "src": "2982:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2967:3:74", + "nodeType": "YulIdentifier", + "src": "2967:3:74" + }, + "nativeSrc": "2967:17:74", + "nodeType": "YulFunctionCall", + "src": "2967:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2961:5:74", + "nodeType": "YulIdentifier", + "src": "2961:5:74" + }, + "nativeSrc": "2961:24:74", + "nodeType": "YulFunctionCall", + "src": "2961:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2951:6:74", + "nodeType": "YulTypedName", + "src": "2951:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3032:83:74", + "nodeType": "YulBlock", + "src": "3032:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "3034:77:74", + "nodeType": "YulIdentifier", + "src": "3034:77:74" + }, + "nativeSrc": "3034:79:74", + "nodeType": "YulFunctionCall", + "src": "3034:79:74" + }, + "nativeSrc": "3034:79:74", + "nodeType": "YulExpressionStatement", + "src": "3034:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3004:6:74", + "nodeType": "YulIdentifier", + "src": "3004:6:74" + }, + { + "kind": "number", + "nativeSrc": "3012:18:74", + "nodeType": "YulLiteral", + "src": "3012:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3001:2:74", + "nodeType": "YulIdentifier", + "src": "3001:2:74" + }, + "nativeSrc": "3001:30:74", + "nodeType": "YulFunctionCall", + "src": "3001:30:74" + }, + "nativeSrc": "2998:117:74", + "nodeType": "YulIf", + "src": "2998:117:74" + }, + { + "nativeSrc": "3129:84:74", + "nodeType": "YulAssignment", + "src": "3129:84:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3185:9:74", + "nodeType": "YulIdentifier", + "src": "3185:9:74" + }, + { + "name": "offset", + "nativeSrc": "3196:6:74", + "nodeType": "YulIdentifier", + "src": "3196:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3181:3:74", + "nodeType": "YulIdentifier", + "src": "3181:3:74" + }, + "nativeSrc": "3181:22:74", + "nodeType": "YulFunctionCall", + "src": "3181:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3205:7:74", + "nodeType": "YulIdentifier", + "src": "3205:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "3139:41:74", + "nodeType": "YulIdentifier", + "src": "3139:41:74" + }, + "nativeSrc": "3139:74:74", + "nodeType": "YulFunctionCall", + "src": "3139:74:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3129:6:74", + "nodeType": "YulIdentifier", + "src": "3129:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3233:292:74", + "nodeType": "YulBlock", + "src": "3233:292:74", + "statements": [ + { + "nativeSrc": "3248:39:74", + "nodeType": "YulVariableDeclaration", + "src": "3248:39:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3272:9:74", + "nodeType": "YulIdentifier", + "src": "3272:9:74" + }, + { + "kind": "number", + "nativeSrc": "3283:2:74", + "nodeType": "YulLiteral", + "src": "3283:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3268:3:74", + "nodeType": "YulIdentifier", + "src": "3268:3:74" + }, + "nativeSrc": "3268:18:74", + "nodeType": "YulFunctionCall", + "src": "3268:18:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3262:5:74", + "nodeType": "YulIdentifier", + "src": "3262:5:74" + }, + "nativeSrc": "3262:25:74", + "nodeType": "YulFunctionCall", + "src": "3262:25:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3252:6:74", + "nodeType": "YulTypedName", + "src": "3252:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3334:83:74", + "nodeType": "YulBlock", + "src": "3334:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "3336:77:74", + "nodeType": "YulIdentifier", + "src": "3336:77:74" + }, + "nativeSrc": "3336:79:74", + "nodeType": "YulFunctionCall", + "src": "3336:79:74" + }, + "nativeSrc": "3336:79:74", + "nodeType": "YulExpressionStatement", + "src": "3336:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3306:6:74", + "nodeType": "YulIdentifier", + "src": "3306:6:74" + }, + { + "kind": "number", + "nativeSrc": "3314:18:74", + "nodeType": "YulLiteral", + "src": "3314:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3303:2:74", + "nodeType": "YulIdentifier", + "src": "3303:2:74" + }, + "nativeSrc": "3303:30:74", + "nodeType": "YulFunctionCall", + "src": "3303:30:74" + }, + "nativeSrc": "3300:117:74", + "nodeType": "YulIf", + "src": "3300:117:74" + }, + { + "nativeSrc": "3431:84:74", + "nodeType": "YulAssignment", + "src": "3431:84:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3487:9:74", + "nodeType": "YulIdentifier", + "src": "3487:9:74" + }, + { + "name": "offset", + "nativeSrc": "3498:6:74", + "nodeType": "YulIdentifier", + "src": "3498:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3483:3:74", + "nodeType": "YulIdentifier", + "src": "3483:3:74" + }, + "nativeSrc": "3483:22:74", + "nodeType": "YulFunctionCall", + "src": "3483:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3507:7:74", + "nodeType": "YulIdentifier", + "src": "3507:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "3441:41:74", + "nodeType": "YulIdentifier", + "src": "3441:41:74" + }, + "nativeSrc": "3441:74:74", + "nodeType": "YulFunctionCall", + "src": "3441:74:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3431:6:74", + "nodeType": "YulIdentifier", + "src": "3431:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr_fromMemory", + "nativeSrc": "2679:853:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2755:9:74", + "nodeType": "YulTypedName", + "src": "2755:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2766:7:74", + "nodeType": "YulTypedName", + "src": "2766:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2778:6:74", + "nodeType": "YulTypedName", + "src": "2778:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2786:6:74", + "nodeType": "YulTypedName", + "src": "2786:6:74", + "type": "" + } + ], + "src": "2679:853:74" + }, + { + "body": { + "nativeSrc": "3597:40:74", + "nodeType": "YulBlock", + "src": "3597:40:74", + "statements": [ + { + "nativeSrc": "3608:22:74", + "nodeType": "YulAssignment", + "src": "3608:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3624:5:74", + "nodeType": "YulIdentifier", + "src": "3624:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3618:5:74", + "nodeType": "YulIdentifier", + "src": "3618:5:74" + }, + "nativeSrc": "3618:12:74", + "nodeType": "YulFunctionCall", + "src": "3618:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3608:6:74", + "nodeType": "YulIdentifier", + "src": "3608:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "3538:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3580:5:74", + "nodeType": "YulTypedName", + "src": "3580:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3590:6:74", + "nodeType": "YulTypedName", + "src": "3590:6:74", + "type": "" + } + ], + "src": "3538:99:74" + }, + { + "body": { + "nativeSrc": "3671:152:74", + "nodeType": "YulBlock", + "src": "3671:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3688:1:74", + "nodeType": "YulLiteral", + "src": "3688:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3691:77:74", + "nodeType": "YulLiteral", + "src": "3691:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3681:6:74", + "nodeType": "YulIdentifier", + "src": "3681:6:74" + }, + "nativeSrc": "3681:88:74", + "nodeType": "YulFunctionCall", + "src": "3681:88:74" + }, + "nativeSrc": "3681:88:74", + "nodeType": "YulExpressionStatement", + "src": "3681:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3785:1:74", + "nodeType": "YulLiteral", + "src": "3785:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "3788:4:74", + "nodeType": "YulLiteral", + "src": "3788:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3778:6:74", + "nodeType": "YulIdentifier", + "src": "3778:6:74" + }, + "nativeSrc": "3778:15:74", + "nodeType": "YulFunctionCall", + "src": "3778:15:74" + }, + "nativeSrc": "3778:15:74", + "nodeType": "YulExpressionStatement", + "src": "3778:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3809:1:74", + "nodeType": "YulLiteral", + "src": "3809:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3812:4:74", + "nodeType": "YulLiteral", + "src": "3812:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3802:6:74", + "nodeType": "YulIdentifier", + "src": "3802:6:74" + }, + "nativeSrc": "3802:15:74", + "nodeType": "YulFunctionCall", + "src": "3802:15:74" + }, + "nativeSrc": "3802:15:74", + "nodeType": "YulExpressionStatement", + "src": "3802:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "3643:180:74", + "nodeType": "YulFunctionDefinition", + "src": "3643:180:74" + }, + { + "body": { + "nativeSrc": "3880:269:74", + "nodeType": "YulBlock", + "src": "3880:269:74", + "statements": [ + { + "nativeSrc": "3890:22:74", + "nodeType": "YulAssignment", + "src": "3890:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3904:4:74", + "nodeType": "YulIdentifier", + "src": "3904:4:74" + }, + { + "kind": "number", + "nativeSrc": "3910:1:74", + "nodeType": "YulLiteral", + "src": "3910:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "3900:3:74", + "nodeType": "YulIdentifier", + "src": "3900:3:74" + }, + "nativeSrc": "3900:12:74", + "nodeType": "YulFunctionCall", + "src": "3900:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3890:6:74", + "nodeType": "YulIdentifier", + "src": "3890:6:74" + } + ] + }, + { + "nativeSrc": "3921:38:74", + "nodeType": "YulVariableDeclaration", + "src": "3921:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3951:4:74", + "nodeType": "YulIdentifier", + "src": "3951:4:74" + }, + { + "kind": "number", + "nativeSrc": "3957:1:74", + "nodeType": "YulLiteral", + "src": "3957:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3947:3:74", + "nodeType": "YulIdentifier", + "src": "3947:3:74" + }, + "nativeSrc": "3947:12:74", + "nodeType": "YulFunctionCall", + "src": "3947:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "3925:18:74", + "nodeType": "YulTypedName", + "src": "3925:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3998:51:74", + "nodeType": "YulBlock", + "src": "3998:51:74", + "statements": [ + { + "nativeSrc": "4012:27:74", + "nodeType": "YulAssignment", + "src": "4012:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "4026:6:74", + "nodeType": "YulIdentifier", + "src": "4026:6:74" + }, + { + "kind": "number", + "nativeSrc": "4034:4:74", + "nodeType": "YulLiteral", + "src": "4034:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4022:3:74", + "nodeType": "YulIdentifier", + "src": "4022:3:74" + }, + "nativeSrc": "4022:17:74", + "nodeType": "YulFunctionCall", + "src": "4022:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "4012:6:74", + "nodeType": "YulIdentifier", + "src": "4012:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "3978:18:74", + "nodeType": "YulIdentifier", + "src": "3978:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3971:6:74", + "nodeType": "YulIdentifier", + "src": "3971:6:74" + }, + "nativeSrc": "3971:26:74", + "nodeType": "YulFunctionCall", + "src": "3971:26:74" + }, + "nativeSrc": "3968:81:74", + "nodeType": "YulIf", + "src": "3968:81:74" + }, + { + "body": { + "nativeSrc": "4101:42:74", + "nodeType": "YulBlock", + "src": "4101:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "4115:16:74", + "nodeType": "YulIdentifier", + "src": "4115:16:74" + }, + "nativeSrc": "4115:18:74", + "nodeType": "YulFunctionCall", + "src": "4115:18:74" + }, + "nativeSrc": "4115:18:74", + "nodeType": "YulExpressionStatement", + "src": "4115:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "4065:18:74", + "nodeType": "YulIdentifier", + "src": "4065:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "4088:6:74", + "nodeType": "YulIdentifier", + "src": "4088:6:74" + }, + { + "kind": "number", + "nativeSrc": "4096:2:74", + "nodeType": "YulLiteral", + "src": "4096:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4085:2:74", + "nodeType": "YulIdentifier", + "src": "4085:2:74" + }, + "nativeSrc": "4085:14:74", + "nodeType": "YulFunctionCall", + "src": "4085:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4062:2:74", + "nodeType": "YulIdentifier", + "src": "4062:2:74" + }, + "nativeSrc": "4062:38:74", + "nodeType": "YulFunctionCall", + "src": "4062:38:74" + }, + "nativeSrc": "4059:84:74", + "nodeType": "YulIf", + "src": "4059:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "3829:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "3864:4:74", + "nodeType": "YulTypedName", + "src": "3864:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3873:6:74", + "nodeType": "YulTypedName", + "src": "3873:6:74", + "type": "" + } + ], + "src": "3829:320:74" + }, + { + "body": { + "nativeSrc": "4209:87:74", + "nodeType": "YulBlock", + "src": "4209:87:74", + "statements": [ + { + "nativeSrc": "4219:11:74", + "nodeType": "YulAssignment", + "src": "4219:11:74", + "value": { + "name": "ptr", + "nativeSrc": "4227:3:74", + "nodeType": "YulIdentifier", + "src": "4227:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "4219:4:74", + "nodeType": "YulIdentifier", + "src": "4219:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4247:1:74", + "nodeType": "YulLiteral", + "src": "4247:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "4250:3:74", + "nodeType": "YulIdentifier", + "src": "4250:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4240:6:74", + "nodeType": "YulIdentifier", + "src": "4240:6:74" + }, + "nativeSrc": "4240:14:74", + "nodeType": "YulFunctionCall", + "src": "4240:14:74" + }, + "nativeSrc": "4240:14:74", + "nodeType": "YulExpressionStatement", + "src": "4240:14:74" + }, + { + "nativeSrc": "4263:26:74", + "nodeType": "YulAssignment", + "src": "4263:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4281:1:74", + "nodeType": "YulLiteral", + "src": "4281:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4284:4:74", + "nodeType": "YulLiteral", + "src": "4284:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "4271:9:74", + "nodeType": "YulIdentifier", + "src": "4271:9:74" + }, + "nativeSrc": "4271:18:74", + "nodeType": "YulFunctionCall", + "src": "4271:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "4263:4:74", + "nodeType": "YulIdentifier", + "src": "4263:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "4155:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "4196:3:74", + "nodeType": "YulTypedName", + "src": "4196:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "4204:4:74", + "nodeType": "YulTypedName", + "src": "4204:4:74", + "type": "" + } + ], + "src": "4155:141:74" + }, + { + "body": { + "nativeSrc": "4346:49:74", + "nodeType": "YulBlock", + "src": "4346:49:74", + "statements": [ + { + "nativeSrc": "4356:33:74", + "nodeType": "YulAssignment", + "src": "4356:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4374:5:74", + "nodeType": "YulIdentifier", + "src": "4374:5:74" + }, + { + "kind": "number", + "nativeSrc": "4381:2:74", + "nodeType": "YulLiteral", + "src": "4381:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4370:3:74", + "nodeType": "YulIdentifier", + "src": "4370:3:74" + }, + "nativeSrc": "4370:14:74", + "nodeType": "YulFunctionCall", + "src": "4370:14:74" + }, + { + "kind": "number", + "nativeSrc": "4386:2:74", + "nodeType": "YulLiteral", + "src": "4386:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "4366:3:74", + "nodeType": "YulIdentifier", + "src": "4366:3:74" + }, + "nativeSrc": "4366:23:74", + "nodeType": "YulFunctionCall", + "src": "4366:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "4356:6:74", + "nodeType": "YulIdentifier", + "src": "4356:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "4302:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4329:5:74", + "nodeType": "YulTypedName", + "src": "4329:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "4339:6:74", + "nodeType": "YulTypedName", + "src": "4339:6:74", + "type": "" + } + ], + "src": "4302:93:74" + }, + { + "body": { + "nativeSrc": "4454:54:74", + "nodeType": "YulBlock", + "src": "4454:54:74", + "statements": [ + { + "nativeSrc": "4464:37:74", + "nodeType": "YulAssignment", + "src": "4464:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "4489:4:74", + "nodeType": "YulIdentifier", + "src": "4489:4:74" + }, + { + "name": "value", + "nativeSrc": "4495:5:74", + "nodeType": "YulIdentifier", + "src": "4495:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "4485:3:74", + "nodeType": "YulIdentifier", + "src": "4485:3:74" + }, + "nativeSrc": "4485:16:74", + "nodeType": "YulFunctionCall", + "src": "4485:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "4464:8:74", + "nodeType": "YulIdentifier", + "src": "4464:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "4401:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "4429:4:74", + "nodeType": "YulTypedName", + "src": "4429:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "4435:5:74", + "nodeType": "YulTypedName", + "src": "4435:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "4445:8:74", + "nodeType": "YulTypedName", + "src": "4445:8:74", + "type": "" + } + ], + "src": "4401:107:74" + }, + { + "body": { + "nativeSrc": "4590:317:74", + "nodeType": "YulBlock", + "src": "4590:317:74", + "statements": [ + { + "nativeSrc": "4600:35:74", + "nodeType": "YulVariableDeclaration", + "src": "4600:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "4621:10:74", + "nodeType": "YulIdentifier", + "src": "4621:10:74" + }, + { + "kind": "number", + "nativeSrc": "4633:1:74", + "nodeType": "YulLiteral", + "src": "4633:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "4617:3:74", + "nodeType": "YulIdentifier", + "src": "4617:3:74" + }, + "nativeSrc": "4617:18:74", + "nodeType": "YulFunctionCall", + "src": "4617:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "4604:9:74", + "nodeType": "YulTypedName", + "src": "4604:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4644:109:74", + "nodeType": "YulVariableDeclaration", + "src": "4644:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "4675:9:74", + "nodeType": "YulIdentifier", + "src": "4675:9:74" + }, + { + "kind": "number", + "nativeSrc": "4686:66:74", + "nodeType": "YulLiteral", + "src": "4686:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "4656:18:74", + "nodeType": "YulIdentifier", + "src": "4656:18:74" + }, + "nativeSrc": "4656:97:74", + "nodeType": "YulFunctionCall", + "src": "4656:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "4648:4:74", + "nodeType": "YulTypedName", + "src": "4648:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4762:51:74", + "nodeType": "YulAssignment", + "src": "4762:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "4793:9:74", + "nodeType": "YulIdentifier", + "src": "4793:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "4804:8:74", + "nodeType": "YulIdentifier", + "src": "4804:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "4774:18:74", + "nodeType": "YulIdentifier", + "src": "4774:18:74" + }, + "nativeSrc": "4774:39:74", + "nodeType": "YulFunctionCall", + "src": "4774:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "4762:8:74", + "nodeType": "YulIdentifier", + "src": "4762:8:74" + } + ] + }, + { + "nativeSrc": "4822:30:74", + "nodeType": "YulAssignment", + "src": "4822:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4835:5:74", + "nodeType": "YulIdentifier", + "src": "4835:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "4846:4:74", + "nodeType": "YulIdentifier", + "src": "4846:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "4842:3:74", + "nodeType": "YulIdentifier", + "src": "4842:3:74" + }, + "nativeSrc": "4842:9:74", + "nodeType": "YulFunctionCall", + "src": "4842:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4831:3:74", + "nodeType": "YulIdentifier", + "src": "4831:3:74" + }, + "nativeSrc": "4831:21:74", + "nodeType": "YulFunctionCall", + "src": "4831:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4822:5:74", + "nodeType": "YulIdentifier", + "src": "4822:5:74" + } + ] + }, + { + "nativeSrc": "4861:40:74", + "nodeType": "YulAssignment", + "src": "4861:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4874:5:74", + "nodeType": "YulIdentifier", + "src": "4874:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "4885:8:74", + "nodeType": "YulIdentifier", + "src": "4885:8:74" + }, + { + "name": "mask", + "nativeSrc": "4895:4:74", + "nodeType": "YulIdentifier", + "src": "4895:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4881:3:74", + "nodeType": "YulIdentifier", + "src": "4881:3:74" + }, + "nativeSrc": "4881:19:74", + "nodeType": "YulFunctionCall", + "src": "4881:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "4871:2:74", + "nodeType": "YulIdentifier", + "src": "4871:2:74" + }, + "nativeSrc": "4871:30:74", + "nodeType": "YulFunctionCall", + "src": "4871:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "4861:6:74", + "nodeType": "YulIdentifier", + "src": "4861:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "4514:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4551:5:74", + "nodeType": "YulTypedName", + "src": "4551:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "4558:10:74", + "nodeType": "YulTypedName", + "src": "4558:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "4570:8:74", + "nodeType": "YulTypedName", + "src": "4570:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "4583:6:74", + "nodeType": "YulTypedName", + "src": "4583:6:74", + "type": "" + } + ], + "src": "4514:393:74" + }, + { + "body": { + "nativeSrc": "4958:32:74", + "nodeType": "YulBlock", + "src": "4958:32:74", + "statements": [ + { + "nativeSrc": "4968:16:74", + "nodeType": "YulAssignment", + "src": "4968:16:74", + "value": { + "name": "value", + "nativeSrc": "4979:5:74", + "nodeType": "YulIdentifier", + "src": "4979:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4968:7:74", + "nodeType": "YulIdentifier", + "src": "4968:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "4913:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4940:5:74", + "nodeType": "YulTypedName", + "src": "4940:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4950:7:74", + "nodeType": "YulTypedName", + "src": "4950:7:74", + "type": "" + } + ], + "src": "4913:77:74" + }, + { + "body": { + "nativeSrc": "5028:28:74", + "nodeType": "YulBlock", + "src": "5028:28:74", + "statements": [ + { + "nativeSrc": "5038:12:74", + "nodeType": "YulAssignment", + "src": "5038:12:74", + "value": { + "name": "value", + "nativeSrc": "5045:5:74", + "nodeType": "YulIdentifier", + "src": "5045:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "5038:3:74", + "nodeType": "YulIdentifier", + "src": "5038:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "4996:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5014:5:74", + "nodeType": "YulTypedName", + "src": "5014:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "5024:3:74", + "nodeType": "YulTypedName", + "src": "5024:3:74", + "type": "" + } + ], + "src": "4996:60:74" + }, + { + "body": { + "nativeSrc": "5122:82:74", + "nodeType": "YulBlock", + "src": "5122:82:74", + "statements": [ + { + "nativeSrc": "5132:66:74", + "nodeType": "YulAssignment", + "src": "5132:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5190:5:74", + "nodeType": "YulIdentifier", + "src": "5190:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5172:17:74", + "nodeType": "YulIdentifier", + "src": "5172:17:74" + }, + "nativeSrc": "5172:24:74", + "nodeType": "YulFunctionCall", + "src": "5172:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "5163:8:74", + "nodeType": "YulIdentifier", + "src": "5163:8:74" + }, + "nativeSrc": "5163:34:74", + "nodeType": "YulFunctionCall", + "src": "5163:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5145:17:74", + "nodeType": "YulIdentifier", + "src": "5145:17:74" + }, + "nativeSrc": "5145:53:74", + "nodeType": "YulFunctionCall", + "src": "5145:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "5132:9:74", + "nodeType": "YulIdentifier", + "src": "5132:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "5062:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5102:5:74", + "nodeType": "YulTypedName", + "src": "5102:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "5112:9:74", + "nodeType": "YulTypedName", + "src": "5112:9:74", + "type": "" + } + ], + "src": "5062:142:74" + }, + { + "body": { + "nativeSrc": "5257:28:74", + "nodeType": "YulBlock", + "src": "5257:28:74", + "statements": [ + { + "nativeSrc": "5267:12:74", + "nodeType": "YulAssignment", + "src": "5267:12:74", + "value": { + "name": "value", + "nativeSrc": "5274:5:74", + "nodeType": "YulIdentifier", + "src": "5274:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "5267:3:74", + "nodeType": "YulIdentifier", + "src": "5267:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "5210:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5243:5:74", + "nodeType": "YulTypedName", + "src": "5243:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "5253:3:74", + "nodeType": "YulTypedName", + "src": "5253:3:74", + "type": "" + } + ], + "src": "5210:75:74" + }, + { + "body": { + "nativeSrc": "5367:193:74", + "nodeType": "YulBlock", + "src": "5367:193:74", + "statements": [ + { + "nativeSrc": "5377:63:74", + "nodeType": "YulVariableDeclaration", + "src": "5377:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "5432:7:74", + "nodeType": "YulIdentifier", + "src": "5432:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "5401:30:74", + "nodeType": "YulIdentifier", + "src": "5401:30:74" + }, + "nativeSrc": "5401:39:74", + "nodeType": "YulFunctionCall", + "src": "5401:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "5381:16:74", + "nodeType": "YulTypedName", + "src": "5381:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5456:4:74", + "nodeType": "YulIdentifier", + "src": "5456:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5496:4:74", + "nodeType": "YulIdentifier", + "src": "5496:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "5490:5:74", + "nodeType": "YulIdentifier", + "src": "5490:5:74" + }, + "nativeSrc": "5490:11:74", + "nodeType": "YulFunctionCall", + "src": "5490:11:74" + }, + { + "name": "offset", + "nativeSrc": "5503:6:74", + "nodeType": "YulIdentifier", + "src": "5503:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "5535:16:74", + "nodeType": "YulIdentifier", + "src": "5535:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "5511:23:74", + "nodeType": "YulIdentifier", + "src": "5511:23:74" + }, + "nativeSrc": "5511:41:74", + "nodeType": "YulFunctionCall", + "src": "5511:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "5462:27:74", + "nodeType": "YulIdentifier", + "src": "5462:27:74" + }, + "nativeSrc": "5462:91:74", + "nodeType": "YulFunctionCall", + "src": "5462:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "5449:6:74", + "nodeType": "YulIdentifier", + "src": "5449:6:74" + }, + "nativeSrc": "5449:105:74", + "nodeType": "YulFunctionCall", + "src": "5449:105:74" + }, + "nativeSrc": "5449:105:74", + "nodeType": "YulExpressionStatement", + "src": "5449:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "5291:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "5344:4:74", + "nodeType": "YulTypedName", + "src": "5344:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "5350:6:74", + "nodeType": "YulTypedName", + "src": "5350:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "5358:7:74", + "nodeType": "YulTypedName", + "src": "5358:7:74", + "type": "" + } + ], + "src": "5291:269:74" + }, + { + "body": { + "nativeSrc": "5615:24:74", + "nodeType": "YulBlock", + "src": "5615:24:74", + "statements": [ + { + "nativeSrc": "5625:8:74", + "nodeType": "YulAssignment", + "src": "5625:8:74", + "value": { + "kind": "number", + "nativeSrc": "5632:1:74", + "nodeType": "YulLiteral", + "src": "5632:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "5625:3:74", + "nodeType": "YulIdentifier", + "src": "5625:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "5566:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "5611:3:74", + "nodeType": "YulTypedName", + "src": "5611:3:74", + "type": "" + } + ], + "src": "5566:73:74" + }, + { + "body": { + "nativeSrc": "5698:136:74", + "nodeType": "YulBlock", + "src": "5698:136:74", + "statements": [ + { + "nativeSrc": "5708:46:74", + "nodeType": "YulVariableDeclaration", + "src": "5708:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "5722:30:74", + "nodeType": "YulIdentifier", + "src": "5722:30:74" + }, + "nativeSrc": "5722:32:74", + "nodeType": "YulFunctionCall", + "src": "5722:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "5712:6:74", + "nodeType": "YulTypedName", + "src": "5712:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5807:4:74", + "nodeType": "YulIdentifier", + "src": "5807:4:74" + }, + { + "name": "offset", + "nativeSrc": "5813:6:74", + "nodeType": "YulIdentifier", + "src": "5813:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "5821:6:74", + "nodeType": "YulIdentifier", + "src": "5821:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "5763:43:74", + "nodeType": "YulIdentifier", + "src": "5763:43:74" + }, + "nativeSrc": "5763:65:74", + "nodeType": "YulFunctionCall", + "src": "5763:65:74" + }, + "nativeSrc": "5763:65:74", + "nodeType": "YulExpressionStatement", + "src": "5763:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "5645:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "5684:4:74", + "nodeType": "YulTypedName", + "src": "5684:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "5690:6:74", + "nodeType": "YulTypedName", + "src": "5690:6:74", + "type": "" + } + ], + "src": "5645:189:74" + }, + { + "body": { + "nativeSrc": "5890:136:74", + "nodeType": "YulBlock", + "src": "5890:136:74", + "statements": [ + { + "body": { + "nativeSrc": "5957:63:74", + "nodeType": "YulBlock", + "src": "5957:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "6001:5:74", + "nodeType": "YulIdentifier", + "src": "6001:5:74" + }, + { + "kind": "number", + "nativeSrc": "6008:1:74", + "nodeType": "YulLiteral", + "src": "6008:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "5971:29:74", + "nodeType": "YulIdentifier", + "src": "5971:29:74" + }, + "nativeSrc": "5971:39:74", + "nodeType": "YulFunctionCall", + "src": "5971:39:74" + }, + "nativeSrc": "5971:39:74", + "nodeType": "YulExpressionStatement", + "src": "5971:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "5910:5:74", + "nodeType": "YulIdentifier", + "src": "5910:5:74" + }, + { + "name": "end", + "nativeSrc": "5917:3:74", + "nodeType": "YulIdentifier", + "src": "5917:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "5907:2:74", + "nodeType": "YulIdentifier", + "src": "5907:2:74" + }, + "nativeSrc": "5907:14:74", + "nodeType": "YulFunctionCall", + "src": "5907:14:74" + }, + "nativeSrc": "5900:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "5922:26:74", + "nodeType": "YulBlock", + "src": "5922:26:74", + "statements": [ + { + "nativeSrc": "5924:22:74", + "nodeType": "YulAssignment", + "src": "5924:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "5937:5:74", + "nodeType": "YulIdentifier", + "src": "5937:5:74" + }, + { + "kind": "number", + "nativeSrc": "5944:1:74", + "nodeType": "YulLiteral", + "src": "5944:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5933:3:74", + "nodeType": "YulIdentifier", + "src": "5933:3:74" + }, + "nativeSrc": "5933:13:74", + "nodeType": "YulFunctionCall", + "src": "5933:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "5924:5:74", + "nodeType": "YulIdentifier", + "src": "5924:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "5904:2:74", + "nodeType": "YulBlock", + "src": "5904:2:74", + "statements": [] + }, + "src": "5900:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "5840:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "5878:5:74", + "nodeType": "YulTypedName", + "src": "5878:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5885:3:74", + "nodeType": "YulTypedName", + "src": "5885:3:74", + "type": "" + } + ], + "src": "5840:186:74" + }, + { + "body": { + "nativeSrc": "6111:464:74", + "nodeType": "YulBlock", + "src": "6111:464:74", + "statements": [ + { + "body": { + "nativeSrc": "6137:431:74", + "nodeType": "YulBlock", + "src": "6137:431:74", + "statements": [ + { + "nativeSrc": "6151:54:74", + "nodeType": "YulVariableDeclaration", + "src": "6151:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "6199:5:74", + "nodeType": "YulIdentifier", + "src": "6199:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "6167:31:74", + "nodeType": "YulIdentifier", + "src": "6167:31:74" + }, + "nativeSrc": "6167:38:74", + "nodeType": "YulFunctionCall", + "src": "6167:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "6155:8:74", + "nodeType": "YulTypedName", + "src": "6155:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6218:63:74", + "nodeType": "YulVariableDeclaration", + "src": "6218:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "6241:8:74", + "nodeType": "YulIdentifier", + "src": "6241:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "6269:10:74", + "nodeType": "YulIdentifier", + "src": "6269:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "6251:17:74", + "nodeType": "YulIdentifier", + "src": "6251:17:74" + }, + "nativeSrc": "6251:29:74", + "nodeType": "YulFunctionCall", + "src": "6251:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6237:3:74", + "nodeType": "YulIdentifier", + "src": "6237:3:74" + }, + "nativeSrc": "6237:44:74", + "nodeType": "YulFunctionCall", + "src": "6237:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "6222:11:74", + "nodeType": "YulTypedName", + "src": "6222:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6438:27:74", + "nodeType": "YulBlock", + "src": "6438:27:74", + "statements": [ + { + "nativeSrc": "6440:23:74", + "nodeType": "YulAssignment", + "src": "6440:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "6455:8:74", + "nodeType": "YulIdentifier", + "src": "6455:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "6440:11:74", + "nodeType": "YulIdentifier", + "src": "6440:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "6422:10:74", + "nodeType": "YulIdentifier", + "src": "6422:10:74" + }, + { + "kind": "number", + "nativeSrc": "6434:2:74", + "nodeType": "YulLiteral", + "src": "6434:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "6419:2:74", + "nodeType": "YulIdentifier", + "src": "6419:2:74" + }, + "nativeSrc": "6419:18:74", + "nodeType": "YulFunctionCall", + "src": "6419:18:74" + }, + "nativeSrc": "6416:49:74", + "nodeType": "YulIf", + "src": "6416:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "6507:11:74", + "nodeType": "YulIdentifier", + "src": "6507:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "6524:8:74", + "nodeType": "YulIdentifier", + "src": "6524:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "6552:3:74", + "nodeType": "YulIdentifier", + "src": "6552:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "6534:17:74", + "nodeType": "YulIdentifier", + "src": "6534:17:74" + }, + "nativeSrc": "6534:22:74", + "nodeType": "YulFunctionCall", + "src": "6534:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6520:3:74", + "nodeType": "YulIdentifier", + "src": "6520:3:74" + }, + "nativeSrc": "6520:37:74", + "nodeType": "YulFunctionCall", + "src": "6520:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "6478:28:74", + "nodeType": "YulIdentifier", + "src": "6478:28:74" + }, + "nativeSrc": "6478:80:74", + "nodeType": "YulFunctionCall", + "src": "6478:80:74" + }, + "nativeSrc": "6478:80:74", + "nodeType": "YulExpressionStatement", + "src": "6478:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "6128:3:74", + "nodeType": "YulIdentifier", + "src": "6128:3:74" + }, + { + "kind": "number", + "nativeSrc": "6133:2:74", + "nodeType": "YulLiteral", + "src": "6133:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6125:2:74", + "nodeType": "YulIdentifier", + "src": "6125:2:74" + }, + "nativeSrc": "6125:11:74", + "nodeType": "YulFunctionCall", + "src": "6125:11:74" + }, + "nativeSrc": "6122:446:74", + "nodeType": "YulIf", + "src": "6122:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "6032:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "6087:5:74", + "nodeType": "YulTypedName", + "src": "6087:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "6094:3:74", + "nodeType": "YulTypedName", + "src": "6094:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "6099:10:74", + "nodeType": "YulTypedName", + "src": "6099:10:74", + "type": "" + } + ], + "src": "6032:543:74" + }, + { + "body": { + "nativeSrc": "6644:54:74", + "nodeType": "YulBlock", + "src": "6644:54:74", + "statements": [ + { + "nativeSrc": "6654:37:74", + "nodeType": "YulAssignment", + "src": "6654:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "6679:4:74", + "nodeType": "YulIdentifier", + "src": "6679:4:74" + }, + { + "name": "value", + "nativeSrc": "6685:5:74", + "nodeType": "YulIdentifier", + "src": "6685:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "6675:3:74", + "nodeType": "YulIdentifier", + "src": "6675:3:74" + }, + "nativeSrc": "6675:16:74", + "nodeType": "YulFunctionCall", + "src": "6675:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "6654:8:74", + "nodeType": "YulIdentifier", + "src": "6654:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "6581:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "6619:4:74", + "nodeType": "YulTypedName", + "src": "6619:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "6625:5:74", + "nodeType": "YulTypedName", + "src": "6625:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "6635:8:74", + "nodeType": "YulTypedName", + "src": "6635:8:74", + "type": "" + } + ], + "src": "6581:117:74" + }, + { + "body": { + "nativeSrc": "6755:118:74", + "nodeType": "YulBlock", + "src": "6755:118:74", + "statements": [ + { + "nativeSrc": "6765:68:74", + "nodeType": "YulVariableDeclaration", + "src": "6765:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6814:1:74", + "nodeType": "YulLiteral", + "src": "6814:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "6817:5:74", + "nodeType": "YulIdentifier", + "src": "6817:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "6810:3:74", + "nodeType": "YulIdentifier", + "src": "6810:3:74" + }, + "nativeSrc": "6810:13:74", + "nodeType": "YulFunctionCall", + "src": "6810:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6829:1:74", + "nodeType": "YulLiteral", + "src": "6829:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6825:3:74", + "nodeType": "YulIdentifier", + "src": "6825:3:74" + }, + "nativeSrc": "6825:6:74", + "nodeType": "YulFunctionCall", + "src": "6825:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "6781:28:74", + "nodeType": "YulIdentifier", + "src": "6781:28:74" + }, + "nativeSrc": "6781:51:74", + "nodeType": "YulFunctionCall", + "src": "6781:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "6777:3:74", + "nodeType": "YulIdentifier", + "src": "6777:3:74" + }, + "nativeSrc": "6777:56:74", + "nodeType": "YulFunctionCall", + "src": "6777:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "6769:4:74", + "nodeType": "YulTypedName", + "src": "6769:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6842:25:74", + "nodeType": "YulAssignment", + "src": "6842:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "6856:4:74", + "nodeType": "YulIdentifier", + "src": "6856:4:74" + }, + { + "name": "mask", + "nativeSrc": "6862:4:74", + "nodeType": "YulIdentifier", + "src": "6862:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "6852:3:74", + "nodeType": "YulIdentifier", + "src": "6852:3:74" + }, + "nativeSrc": "6852:15:74", + "nodeType": "YulFunctionCall", + "src": "6852:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "6842:6:74", + "nodeType": "YulIdentifier", + "src": "6842:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "6704:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "6732:4:74", + "nodeType": "YulTypedName", + "src": "6732:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "6738:5:74", + "nodeType": "YulTypedName", + "src": "6738:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "6748:6:74", + "nodeType": "YulTypedName", + "src": "6748:6:74", + "type": "" + } + ], + "src": "6704:169:74" + }, + { + "body": { + "nativeSrc": "6959:214:74", + "nodeType": "YulBlock", + "src": "6959:214:74", + "statements": [ + { + "nativeSrc": "7092:37:74", + "nodeType": "YulAssignment", + "src": "7092:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "7119:4:74", + "nodeType": "YulIdentifier", + "src": "7119:4:74" + }, + { + "name": "len", + "nativeSrc": "7125:3:74", + "nodeType": "YulIdentifier", + "src": "7125:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "7100:18:74", + "nodeType": "YulIdentifier", + "src": "7100:18:74" + }, + "nativeSrc": "7100:29:74", + "nodeType": "YulFunctionCall", + "src": "7100:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "7092:4:74", + "nodeType": "YulIdentifier", + "src": "7092:4:74" + } + ] + }, + { + "nativeSrc": "7138:29:74", + "nodeType": "YulAssignment", + "src": "7138:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "7149:4:74", + "nodeType": "YulIdentifier", + "src": "7149:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7159:1:74", + "nodeType": "YulLiteral", + "src": "7159:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "7162:3:74", + "nodeType": "YulIdentifier", + "src": "7162:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "7155:3:74", + "nodeType": "YulIdentifier", + "src": "7155:3:74" + }, + "nativeSrc": "7155:11:74", + "nodeType": "YulFunctionCall", + "src": "7155:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "7146:2:74", + "nodeType": "YulIdentifier", + "src": "7146:2:74" + }, + "nativeSrc": "7146:21:74", + "nodeType": "YulFunctionCall", + "src": "7146:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "7138:4:74", + "nodeType": "YulIdentifier", + "src": "7138:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "6878:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "6940:4:74", + "nodeType": "YulTypedName", + "src": "6940:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "6946:3:74", + "nodeType": "YulTypedName", + "src": "6946:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "6954:4:74", + "nodeType": "YulTypedName", + "src": "6954:4:74", + "type": "" + } + ], + "src": "6878:295:74" + }, + { + "body": { + "nativeSrc": "7270:1303:74", + "nodeType": "YulBlock", + "src": "7270:1303:74", + "statements": [ + { + "nativeSrc": "7281:51:74", + "nodeType": "YulVariableDeclaration", + "src": "7281:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "7328:3:74", + "nodeType": "YulIdentifier", + "src": "7328:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "7295:32:74", + "nodeType": "YulIdentifier", + "src": "7295:32:74" + }, + "nativeSrc": "7295:37:74", + "nodeType": "YulFunctionCall", + "src": "7295:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "7285:6:74", + "nodeType": "YulTypedName", + "src": "7285:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7417:22:74", + "nodeType": "YulBlock", + "src": "7417:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7419:16:74", + "nodeType": "YulIdentifier", + "src": "7419:16:74" + }, + "nativeSrc": "7419:18:74", + "nodeType": "YulFunctionCall", + "src": "7419:18:74" + }, + "nativeSrc": "7419:18:74", + "nodeType": "YulExpressionStatement", + "src": "7419:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7389:6:74", + "nodeType": "YulIdentifier", + "src": "7389:6:74" + }, + { + "kind": "number", + "nativeSrc": "7397:18:74", + "nodeType": "YulLiteral", + "src": "7397:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7386:2:74", + "nodeType": "YulIdentifier", + "src": "7386:2:74" + }, + "nativeSrc": "7386:30:74", + "nodeType": "YulFunctionCall", + "src": "7386:30:74" + }, + "nativeSrc": "7383:56:74", + "nodeType": "YulIf", + "src": "7383:56:74" + }, + { + "nativeSrc": "7449:52:74", + "nodeType": "YulVariableDeclaration", + "src": "7449:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7495:4:74", + "nodeType": "YulIdentifier", + "src": "7495:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "7489:5:74", + "nodeType": "YulIdentifier", + "src": "7489:5:74" + }, + "nativeSrc": "7489:11:74", + "nodeType": "YulFunctionCall", + "src": "7489:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "7463:25:74", + "nodeType": "YulIdentifier", + "src": "7463:25:74" + }, + "nativeSrc": "7463:38:74", + "nodeType": "YulFunctionCall", + "src": "7463:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "7453:6:74", + "nodeType": "YulTypedName", + "src": "7453:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7594:4:74", + "nodeType": "YulIdentifier", + "src": "7594:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "7600:6:74", + "nodeType": "YulIdentifier", + "src": "7600:6:74" + }, + { + "name": "newLen", + "nativeSrc": "7608:6:74", + "nodeType": "YulIdentifier", + "src": "7608:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "7548:45:74", + "nodeType": "YulIdentifier", + "src": "7548:45:74" + }, + "nativeSrc": "7548:67:74", + "nodeType": "YulFunctionCall", + "src": "7548:67:74" + }, + "nativeSrc": "7548:67:74", + "nodeType": "YulExpressionStatement", + "src": "7548:67:74" + }, + { + "nativeSrc": "7625:18:74", + "nodeType": "YulVariableDeclaration", + "src": "7625:18:74", + "value": { + "kind": "number", + "nativeSrc": "7642:1:74", + "nodeType": "YulLiteral", + "src": "7642:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "7629:9:74", + "nodeType": "YulTypedName", + "src": "7629:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7653:17:74", + "nodeType": "YulAssignment", + "src": "7653:17:74", + "value": { + "kind": "number", + "nativeSrc": "7666:4:74", + "nodeType": "YulLiteral", + "src": "7666:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "7653:9:74", + "nodeType": "YulIdentifier", + "src": "7653:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "7717:611:74", + "nodeType": "YulBlock", + "src": "7717:611:74", + "statements": [ + { + "nativeSrc": "7731:37:74", + "nodeType": "YulVariableDeclaration", + "src": "7731:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7750:6:74", + "nodeType": "YulIdentifier", + "src": "7750:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7762:4:74", + "nodeType": "YulLiteral", + "src": "7762:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "7758:3:74", + "nodeType": "YulIdentifier", + "src": "7758:3:74" + }, + "nativeSrc": "7758:9:74", + "nodeType": "YulFunctionCall", + "src": "7758:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "7746:3:74", + "nodeType": "YulIdentifier", + "src": "7746:3:74" + }, + "nativeSrc": "7746:22:74", + "nodeType": "YulFunctionCall", + "src": "7746:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "7735:7:74", + "nodeType": "YulTypedName", + "src": "7735:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7782:51:74", + "nodeType": "YulVariableDeclaration", + "src": "7782:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "7828:4:74", + "nodeType": "YulIdentifier", + "src": "7828:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "7796:31:74", + "nodeType": "YulIdentifier", + "src": "7796:31:74" + }, + "nativeSrc": "7796:37:74", + "nodeType": "YulFunctionCall", + "src": "7796:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "7786:6:74", + "nodeType": "YulTypedName", + "src": "7786:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "7846:10:74", + "nodeType": "YulVariableDeclaration", + "src": "7846:10:74", + "value": { + "kind": "number", + "nativeSrc": "7855:1:74", + "nodeType": "YulLiteral", + "src": "7855:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "7850:1:74", + "nodeType": "YulTypedName", + "src": "7850:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7914:163:74", + "nodeType": "YulBlock", + "src": "7914:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "7939:6:74", + "nodeType": "YulIdentifier", + "src": "7939:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "7957:3:74", + "nodeType": "YulIdentifier", + "src": "7957:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "7962:9:74", + "nodeType": "YulIdentifier", + "src": "7962:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7953:3:74", + "nodeType": "YulIdentifier", + "src": "7953:3:74" + }, + "nativeSrc": "7953:19:74", + "nodeType": "YulFunctionCall", + "src": "7953:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "7947:5:74", + "nodeType": "YulIdentifier", + "src": "7947:5:74" + }, + "nativeSrc": "7947:26:74", + "nodeType": "YulFunctionCall", + "src": "7947:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "7932:6:74", + "nodeType": "YulIdentifier", + "src": "7932:6:74" + }, + "nativeSrc": "7932:42:74", + "nodeType": "YulFunctionCall", + "src": "7932:42:74" + }, + "nativeSrc": "7932:42:74", + "nodeType": "YulExpressionStatement", + "src": "7932:42:74" + }, + { + "nativeSrc": "7991:24:74", + "nodeType": "YulAssignment", + "src": "7991:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "8005:6:74", + "nodeType": "YulIdentifier", + "src": "8005:6:74" + }, + { + "kind": "number", + "nativeSrc": "8013:1:74", + "nodeType": "YulLiteral", + "src": "8013:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8001:3:74", + "nodeType": "YulIdentifier", + "src": "8001:3:74" + }, + "nativeSrc": "8001:14:74", + "nodeType": "YulFunctionCall", + "src": "8001:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "7991:6:74", + "nodeType": "YulIdentifier", + "src": "7991:6:74" + } + ] + }, + { + "nativeSrc": "8032:31:74", + "nodeType": "YulAssignment", + "src": "8032:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "8049:9:74", + "nodeType": "YulIdentifier", + "src": "8049:9:74" + }, + { + "kind": "number", + "nativeSrc": "8060:2:74", + "nodeType": "YulLiteral", + "src": "8060:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8045:3:74", + "nodeType": "YulIdentifier", + "src": "8045:3:74" + }, + "nativeSrc": "8045:18:74", + "nodeType": "YulFunctionCall", + "src": "8045:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "8032:9:74", + "nodeType": "YulIdentifier", + "src": "8032:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7880:1:74", + "nodeType": "YulIdentifier", + "src": "7880:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "7883:7:74", + "nodeType": "YulIdentifier", + "src": "7883:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7877:2:74", + "nodeType": "YulIdentifier", + "src": "7877:2:74" + }, + "nativeSrc": "7877:14:74", + "nodeType": "YulFunctionCall", + "src": "7877:14:74" + }, + "nativeSrc": "7869:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "7892:21:74", + "nodeType": "YulBlock", + "src": "7892:21:74", + "statements": [ + { + "nativeSrc": "7894:17:74", + "nodeType": "YulAssignment", + "src": "7894:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "7903:1:74", + "nodeType": "YulIdentifier", + "src": "7903:1:74" + }, + { + "kind": "number", + "nativeSrc": "7906:4:74", + "nodeType": "YulLiteral", + "src": "7906:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7899:3:74", + "nodeType": "YulIdentifier", + "src": "7899:3:74" + }, + "nativeSrc": "7899:12:74", + "nodeType": "YulFunctionCall", + "src": "7899:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "7894:1:74", + "nodeType": "YulIdentifier", + "src": "7894:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "7873:3:74", + "nodeType": "YulBlock", + "src": "7873:3:74", + "statements": [] + }, + "src": "7869:208:74" + }, + { + "body": { + "nativeSrc": "8113:156:74", + "nodeType": "YulBlock", + "src": "8113:156:74", + "statements": [ + { + "nativeSrc": "8131:43:74", + "nodeType": "YulVariableDeclaration", + "src": "8131:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8158:3:74", + "nodeType": "YulIdentifier", + "src": "8158:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "8163:9:74", + "nodeType": "YulIdentifier", + "src": "8163:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8154:3:74", + "nodeType": "YulIdentifier", + "src": "8154:3:74" + }, + "nativeSrc": "8154:19:74", + "nodeType": "YulFunctionCall", + "src": "8154:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8148:5:74", + "nodeType": "YulIdentifier", + "src": "8148:5:74" + }, + "nativeSrc": "8148:26:74", + "nodeType": "YulFunctionCall", + "src": "8148:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "8135:9:74", + "nodeType": "YulTypedName", + "src": "8135:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "8198:6:74", + "nodeType": "YulIdentifier", + "src": "8198:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "8225:9:74", + "nodeType": "YulIdentifier", + "src": "8225:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "8240:6:74", + "nodeType": "YulIdentifier", + "src": "8240:6:74" + }, + { + "kind": "number", + "nativeSrc": "8248:4:74", + "nodeType": "YulLiteral", + "src": "8248:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "8236:3:74", + "nodeType": "YulIdentifier", + "src": "8236:3:74" + }, + "nativeSrc": "8236:17:74", + "nodeType": "YulFunctionCall", + "src": "8236:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "8206:18:74", + "nodeType": "YulIdentifier", + "src": "8206:18:74" + }, + "nativeSrc": "8206:48:74", + "nodeType": "YulFunctionCall", + "src": "8206:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "8191:6:74", + "nodeType": "YulIdentifier", + "src": "8191:6:74" + }, + "nativeSrc": "8191:64:74", + "nodeType": "YulFunctionCall", + "src": "8191:64:74" + }, + "nativeSrc": "8191:64:74", + "nodeType": "YulExpressionStatement", + "src": "8191:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "8096:7:74", + "nodeType": "YulIdentifier", + "src": "8096:7:74" + }, + { + "name": "newLen", + "nativeSrc": "8105:6:74", + "nodeType": "YulIdentifier", + "src": "8105:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "8093:2:74", + "nodeType": "YulIdentifier", + "src": "8093:2:74" + }, + "nativeSrc": "8093:19:74", + "nodeType": "YulFunctionCall", + "src": "8093:19:74" + }, + "nativeSrc": "8090:179:74", + "nodeType": "YulIf", + "src": "8090:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "8289:4:74", + "nodeType": "YulIdentifier", + "src": "8289:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "8303:6:74", + "nodeType": "YulIdentifier", + "src": "8303:6:74" + }, + { + "kind": "number", + "nativeSrc": "8311:1:74", + "nodeType": "YulLiteral", + "src": "8311:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "8299:3:74", + "nodeType": "YulIdentifier", + "src": "8299:3:74" + }, + "nativeSrc": "8299:14:74", + "nodeType": "YulFunctionCall", + "src": "8299:14:74" + }, + { + "kind": "number", + "nativeSrc": "8315:1:74", + "nodeType": "YulLiteral", + "src": "8315:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8295:3:74", + "nodeType": "YulIdentifier", + "src": "8295:3:74" + }, + "nativeSrc": "8295:22:74", + "nodeType": "YulFunctionCall", + "src": "8295:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "8282:6:74", + "nodeType": "YulIdentifier", + "src": "8282:6:74" + }, + "nativeSrc": "8282:36:74", + "nodeType": "YulFunctionCall", + "src": "8282:36:74" + }, + "nativeSrc": "8282:36:74", + "nodeType": "YulExpressionStatement", + "src": "8282:36:74" + } + ] + }, + "nativeSrc": "7710:618:74", + "nodeType": "YulCase", + "src": "7710:618:74", + "value": { + "kind": "number", + "nativeSrc": "7715:1:74", + "nodeType": "YulLiteral", + "src": "7715:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "8345:222:74", + "nodeType": "YulBlock", + "src": "8345:222:74", + "statements": [ + { + "nativeSrc": "8359:14:74", + "nodeType": "YulVariableDeclaration", + "src": "8359:14:74", + "value": { + "kind": "number", + "nativeSrc": "8372:1:74", + "nodeType": "YulLiteral", + "src": "8372:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "8363:5:74", + "nodeType": "YulTypedName", + "src": "8363:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8396:67:74", + "nodeType": "YulBlock", + "src": "8396:67:74", + "statements": [ + { + "nativeSrc": "8414:35:74", + "nodeType": "YulAssignment", + "src": "8414:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8433:3:74", + "nodeType": "YulIdentifier", + "src": "8433:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "8438:9:74", + "nodeType": "YulIdentifier", + "src": "8438:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8429:3:74", + "nodeType": "YulIdentifier", + "src": "8429:3:74" + }, + "nativeSrc": "8429:19:74", + "nodeType": "YulFunctionCall", + "src": "8429:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "8423:5:74", + "nodeType": "YulIdentifier", + "src": "8423:5:74" + }, + "nativeSrc": "8423:26:74", + "nodeType": "YulFunctionCall", + "src": "8423:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "8414:5:74", + "nodeType": "YulIdentifier", + "src": "8414:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "8389:6:74", + "nodeType": "YulIdentifier", + "src": "8389:6:74" + }, + "nativeSrc": "8386:77:74", + "nodeType": "YulIf", + "src": "8386:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "8483:4:74", + "nodeType": "YulIdentifier", + "src": "8483:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8542:5:74", + "nodeType": "YulIdentifier", + "src": "8542:5:74" + }, + { + "name": "newLen", + "nativeSrc": "8549:6:74", + "nodeType": "YulIdentifier", + "src": "8549:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "8489:52:74", + "nodeType": "YulIdentifier", + "src": "8489:52:74" + }, + "nativeSrc": "8489:67:74", + "nodeType": "YulFunctionCall", + "src": "8489:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "8476:6:74", + "nodeType": "YulIdentifier", + "src": "8476:6:74" + }, + "nativeSrc": "8476:81:74", + "nodeType": "YulFunctionCall", + "src": "8476:81:74" + }, + "nativeSrc": "8476:81:74", + "nodeType": "YulExpressionStatement", + "src": "8476:81:74" + } + ] + }, + "nativeSrc": "8337:230:74", + "nodeType": "YulCase", + "src": "8337:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "7690:6:74", + "nodeType": "YulIdentifier", + "src": "7690:6:74" + }, + { + "kind": "number", + "nativeSrc": "7698:2:74", + "nodeType": "YulLiteral", + "src": "7698:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7687:2:74", + "nodeType": "YulIdentifier", + "src": "7687:2:74" + }, + "nativeSrc": "7687:14:74", + "nodeType": "YulFunctionCall", + "src": "7687:14:74" + }, + "nativeSrc": "7680:887:74", + "nodeType": "YulSwitch", + "src": "7680:887:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nativeSrc": "7178:1395:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "7259:4:74", + "nodeType": "YulTypedName", + "src": "7259:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "7265:3:74", + "nodeType": "YulTypedName", + "src": "7265:3:74", + "type": "" + } + ], + "src": "7178:1395:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50604051612668380380612668833981810160405281019061003291906101ce565b81600090816100419190610467565b5080600190816100519190610467565b505050610539565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6100c082610077565b810181811067ffffffffffffffff821117156100df576100de610088565b5b80604052505050565b60006100f2610059565b90506100fe82826100b7565b919050565b600067ffffffffffffffff82111561011e5761011d610088565b5b61012782610077565b9050602081019050919050565b60005b83811015610152578082015181840152602081019050610137565b60008484015250505050565b600061017161016c84610103565b6100e8565b90508281526020810184848401111561018d5761018c610072565b5b610198848285610134565b509392505050565b600082601f8301126101b5576101b461006d565b5b81516101c584826020860161015e565b91505092915050565b600080604083850312156101e5576101e4610063565b5b600083015167ffffffffffffffff81111561020357610202610068565b5b61020f858286016101a0565b925050602083015167ffffffffffffffff8111156102305761022f610068565b5b61023c858286016101a0565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061029857607f821691505b6020821081036102ab576102aa610251565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026103137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102d6565b61031d86836102d6565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061036461035f61035a84610335565b61033f565b610335565b9050919050565b6000819050919050565b61037e83610349565b61039261038a8261036b565b8484546102e3565b825550505050565b600090565b6103a761039a565b6103b2818484610375565b505050565b5b818110156103d6576103cb60008261039f565b6001810190506103b8565b5050565b601f82111561041b576103ec816102b1565b6103f5846102c6565b81016020851015610404578190505b610418610410856102c6565b8301826103b7565b50505b505050565b600082821c905092915050565b600061043e60001984600802610420565b1980831691505092915050565b6000610457838361042d565b9150826002028217905092915050565b61047082610246565b67ffffffffffffffff81111561048957610488610088565b5b6104938254610280565b61049e8282856103da565b600060209050601f8311600181146104d157600084156104bf578287015190505b6104c9858261044b565b865550610531565b601f1984166104df866102b1565b60005b82811015610507578489015182556001820191506020850194506020810190506104e2565b868310156105245784890151610520601f89168261042d565b8355505b6001600288020188555050505b505050505050565b612120806105486000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610224578063b88d4fde14610240578063c87b56dd1461025c578063e985e9c51461028c576100cf565b80636352211e146101a657806370a08231146101d657806395d89b4114610206576100cf565b806301ffc9a7146100d457806306fdde0314610104578063081812fc14610122578063095ea7b31461015257806323b872dd1461016e57806342842e0e1461018a575b600080fd5b6100ee60048036038101906100e991906114f4565b6102bc565b6040516100fb919061153c565b60405180910390f35b61010c61039e565b60405161011991906115e7565b60405180910390f35b61013c6004803603810190610137919061163f565b610430565b60405161014991906116ad565b60405180910390f35b61016c600480360381019061016791906116f4565b610476565b005b61018860048036038101906101839190611734565b61058d565b005b6101a4600480360381019061019f9190611734565b6105ed565b005b6101c060048036038101906101bb919061163f565b61060d565b6040516101cd91906116ad565b60405180910390f35b6101f060048036038101906101eb9190611787565b610693565b6040516101fd91906117c3565b60405180910390f35b61020e61074a565b60405161021b91906115e7565b60405180910390f35b61023e6004803603810190610239919061180a565b6107dc565b005b61025a6004803603810190610255919061197f565b6107f2565b005b6102766004803603810190610271919061163f565b610854565b60405161028391906115e7565b60405180910390f35b6102a660048036038101906102a19190611a02565b6108bc565b6040516102b3919061153c565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061038757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610397575061039682610950565b5b9050919050565b6060600080546103ad90611a71565b80601f01602080910402602001604051908101604052809291908181526020018280546103d990611a71565b80156104265780601f106103fb57610100808354040283529160200191610426565b820191906000526020600020905b81548152906001019060200180831161040957829003601f168201915b5050505050905090565b600061043b826109ba565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104818261060d565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036104f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e890611b14565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610510610a05565b73ffffffffffffffffffffffffffffffffffffffff16148061053f575061053e81610539610a05565b6108bc565b5b61057e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057590611ba6565b60405180910390fd5b6105888383610a0d565b505050565b61059e610598610a05565b82610ac6565b6105dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d490611c38565b60405180910390fd5b6105e8838383610b5b565b505050565b610608838383604051806020016040528060008152506107f2565b505050565b60008061061983610e54565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361068a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068190611ca4565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa90611d36565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606001805461075990611a71565b80601f016020809104026020016040519081016040528092919081815260200182805461078590611a71565b80156107d25780601f106107a7576101008083540402835291602001916107d2565b820191906000526020600020905b8154815290600101906020018083116107b557829003601f168201915b5050505050905090565b6107ee6107e7610a05565b8383610e91565b5050565b6108036107fd610a05565b83610ac6565b610842576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083990611c38565b60405180910390fd5b61084e84848484610ffd565b50505050565b606061085f826109ba565b6000610869611059565b9050600081511161088957604051806020016040528060008152506108b4565b8061089384611070565b6040516020016108a4929190611d92565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6109c38161113e565b610a02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f990611ca4565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610a808361060d565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610ad28361060d565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610b145750610b1381856108bc565b5b80610b5257508373ffffffffffffffffffffffffffffffffffffffff16610b3a84610430565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610b7b8261060d565b73ffffffffffffffffffffffffffffffffffffffff1614610bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc890611e28565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3790611eba565b60405180910390fd5b610c4d838383600161117f565b8273ffffffffffffffffffffffffffffffffffffffff16610c6d8261060d565b73ffffffffffffffffffffffffffffffffffffffff1614610cc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cba90611e28565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610e4f8383836001611185565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef690611f26565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610ff0919061153c565b60405180910390a3505050565b611008848484610b5b565b6110148484848461118b565b611053576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104a90611fb8565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b60606000600161107f84611312565b01905060008167ffffffffffffffff81111561109e5761109d611854565b5b6040519080825280601f01601f1916602001820160405280156110d05781602001600182028036833780820191505090505b509050600082602001820190505b600115611133578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161112757611126611fd8565b5b049450600085036110de575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff1661116083610e54565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b50505050565b50505050565b60006111ac8473ffffffffffffffffffffffffffffffffffffffff16611465565b15611305578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026111d5610a05565b8786866040518563ffffffff1660e01b81526004016111f7949392919061205c565b6020604051808303816000875af192505050801561123357506040513d601f19601f8201168201806040525081019061123091906120bd565b60015b6112b5573d8060008114611263576040519150601f19603f3d011682016040523d82523d6000602084013e611268565b606091505b5060008151036112ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a490611fb8565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061130a565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611370577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161136657611365611fd8565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106113ad576d04ee2d6d415b85acef810000000083816113a3576113a2611fd8565b5b0492506020810190505b662386f26fc1000083106113dc57662386f26fc1000083816113d2576113d1611fd8565b5b0492506010810190505b6305f5e1008310611405576305f5e10083816113fb576113fa611fd8565b5b0492506008810190505b612710831061142a5761271083816114205761141f611fd8565b5b0492506004810190505b6064831061144d576064838161144357611442611fd8565b5b0492506002810190505b600a831061145c576001810190505b80915050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114d18161149c565b81146114dc57600080fd5b50565b6000813590506114ee816114c8565b92915050565b60006020828403121561150a57611509611492565b5b6000611518848285016114df565b91505092915050565b60008115159050919050565b61153681611521565b82525050565b6000602082019050611551600083018461152d565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611591578082015181840152602081019050611576565b60008484015250505050565b6000601f19601f8301169050919050565b60006115b982611557565b6115c38185611562565b93506115d3818560208601611573565b6115dc8161159d565b840191505092915050565b6000602082019050818103600083015261160181846115ae565b905092915050565b6000819050919050565b61161c81611609565b811461162757600080fd5b50565b60008135905061163981611613565b92915050565b60006020828403121561165557611654611492565b5b60006116638482850161162a565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116978261166c565b9050919050565b6116a78161168c565b82525050565b60006020820190506116c2600083018461169e565b92915050565b6116d18161168c565b81146116dc57600080fd5b50565b6000813590506116ee816116c8565b92915050565b6000806040838503121561170b5761170a611492565b5b6000611719858286016116df565b925050602061172a8582860161162a565b9150509250929050565b60008060006060848603121561174d5761174c611492565b5b600061175b868287016116df565b935050602061176c868287016116df565b925050604061177d8682870161162a565b9150509250925092565b60006020828403121561179d5761179c611492565b5b60006117ab848285016116df565b91505092915050565b6117bd81611609565b82525050565b60006020820190506117d860008301846117b4565b92915050565b6117e781611521565b81146117f257600080fd5b50565b600081359050611804816117de565b92915050565b6000806040838503121561182157611820611492565b5b600061182f858286016116df565b9250506020611840858286016117f5565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61188c8261159d565b810181811067ffffffffffffffff821117156118ab576118aa611854565b5b80604052505050565b60006118be611488565b90506118ca8282611883565b919050565b600067ffffffffffffffff8211156118ea576118e9611854565b5b6118f38261159d565b9050602081019050919050565b82818337600083830152505050565b600061192261191d846118cf565b6118b4565b90508281526020810184848401111561193e5761193d61184f565b5b611949848285611900565b509392505050565b600082601f8301126119665761196561184a565b5b813561197684826020860161190f565b91505092915050565b6000806000806080858703121561199957611998611492565b5b60006119a7878288016116df565b94505060206119b8878288016116df565b93505060406119c98782880161162a565b925050606085013567ffffffffffffffff8111156119ea576119e9611497565b5b6119f687828801611951565b91505092959194509250565b60008060408385031215611a1957611a18611492565b5b6000611a27858286016116df565b9250506020611a38858286016116df565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611a8957607f821691505b602082108103611a9c57611a9b611a42565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611afe602183611562565b9150611b0982611aa2565b604082019050919050565b60006020820190508181036000830152611b2d81611af1565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000611b90603d83611562565b9150611b9b82611b34565b604082019050919050565b60006020820190508181036000830152611bbf81611b83565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000611c22602d83611562565b9150611c2d82611bc6565b604082019050919050565b60006020820190508181036000830152611c5181611c15565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000611c8e601883611562565b9150611c9982611c58565b602082019050919050565b60006020820190508181036000830152611cbd81611c81565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000611d20602983611562565b9150611d2b82611cc4565b604082019050919050565b60006020820190508181036000830152611d4f81611d13565b9050919050565b600081905092915050565b6000611d6c82611557565b611d768185611d56565b9350611d86818560208601611573565b80840191505092915050565b6000611d9e8285611d61565b9150611daa8284611d61565b91508190509392505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611e12602583611562565b9150611e1d82611db6565b604082019050919050565b60006020820190508181036000830152611e4181611e05565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611ea4602483611562565b9150611eaf82611e48565b604082019050919050565b60006020820190508181036000830152611ed381611e97565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000611f10601983611562565b9150611f1b82611eda565b602082019050919050565b60006020820190508181036000830152611f3f81611f03565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000611fa2603283611562565b9150611fad82611f46565b604082019050919050565b60006020820190508181036000830152611fd181611f95565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b600061202e82612007565b6120388185612012565b9350612048818560208601611573565b6120518161159d565b840191505092915050565b6000608082019050612071600083018761169e565b61207e602083018661169e565b61208b60408301856117b4565b818103606083015261209d8184612023565b905095945050505050565b6000815190506120b7816114c8565b92915050565b6000602082840312156120d3576120d2611492565b5b60006120e1848285016120a8565b9150509291505056fea26469706673582212208187a433705b7db01eeb53df512e7e78c9604dae90bbae3f8281a0f9013dd7f364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x2668 CODESIZE SUB DUP1 PUSH2 0x2668 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x1CE JUMP JUMPDEST DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x41 SWAP2 SWAP1 PUSH2 0x467 JUMP JUMPDEST POP DUP1 PUSH1 0x1 SWAP1 DUP2 PUSH2 0x51 SWAP2 SWAP1 PUSH2 0x467 JUMP JUMPDEST POP POP POP PUSH2 0x539 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0xC0 DUP3 PUSH2 0x77 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xDF JUMPI PUSH2 0xDE PUSH2 0x88 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF2 PUSH2 0x59 JUMP JUMPDEST SWAP1 POP PUSH2 0xFE DUP3 DUP3 PUSH2 0xB7 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x11E JUMPI PUSH2 0x11D PUSH2 0x88 JUMP JUMPDEST JUMPDEST PUSH2 0x127 DUP3 PUSH2 0x77 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x152 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x137 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x171 PUSH2 0x16C DUP5 PUSH2 0x103 JUMP JUMPDEST PUSH2 0xE8 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x18D JUMPI PUSH2 0x18C PUSH2 0x72 JUMP JUMPDEST JUMPDEST PUSH2 0x198 DUP5 DUP3 DUP6 PUSH2 0x134 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B5 JUMPI PUSH2 0x1B4 PUSH2 0x6D JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1C5 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x15E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1E5 JUMPI PUSH2 0x1E4 PUSH2 0x63 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x203 JUMPI PUSH2 0x202 PUSH2 0x68 JUMP JUMPDEST JUMPDEST PUSH2 0x20F DUP6 DUP3 DUP7 ADD PUSH2 0x1A0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x230 JUMPI PUSH2 0x22F PUSH2 0x68 JUMP JUMPDEST JUMPDEST PUSH2 0x23C DUP6 DUP3 DUP7 ADD PUSH2 0x1A0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x298 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x2AB JUMPI PUSH2 0x2AA PUSH2 0x251 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x313 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x2D6 JUMP JUMPDEST PUSH2 0x31D DUP7 DUP4 PUSH2 0x2D6 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x364 PUSH2 0x35F PUSH2 0x35A DUP5 PUSH2 0x335 JUMP JUMPDEST PUSH2 0x33F JUMP JUMPDEST PUSH2 0x335 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x37E DUP4 PUSH2 0x349 JUMP JUMPDEST PUSH2 0x392 PUSH2 0x38A DUP3 PUSH2 0x36B JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x2E3 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x3A7 PUSH2 0x39A JUMP JUMPDEST PUSH2 0x3B2 DUP2 DUP5 DUP5 PUSH2 0x375 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3D6 JUMPI PUSH2 0x3CB PUSH1 0x0 DUP3 PUSH2 0x39F JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x3B8 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x41B JUMPI PUSH2 0x3EC DUP2 PUSH2 0x2B1 JUMP JUMPDEST PUSH2 0x3F5 DUP5 PUSH2 0x2C6 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x404 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x418 PUSH2 0x410 DUP6 PUSH2 0x2C6 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x3B7 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x43E PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x420 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x457 DUP4 DUP4 PUSH2 0x42D JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x470 DUP3 PUSH2 0x246 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x489 JUMPI PUSH2 0x488 PUSH2 0x88 JUMP JUMPDEST JUMPDEST PUSH2 0x493 DUP3 SLOAD PUSH2 0x280 JUMP JUMPDEST PUSH2 0x49E DUP3 DUP3 DUP6 PUSH2 0x3DA JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4D1 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4BF JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x4C9 DUP6 DUP3 PUSH2 0x44B JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x531 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x4DF DUP7 PUSH2 0x2B1 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x507 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4E2 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x524 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x520 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x42D JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2120 DUP1 PUSH2 0x548 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xCF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6352211E GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x224 JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x240 JUMPI DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x25C JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x28C JUMPI PUSH2 0xCF JUMP JUMPDEST DUP1 PUSH4 0x6352211E EQ PUSH2 0x1A6 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x1D6 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x206 JUMPI PUSH2 0xCF JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x104 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x122 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x152 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0x42842E0E EQ PUSH2 0x18A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xEE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x14F4 JUMP JUMPDEST PUSH2 0x2BC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xFB SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x10C PUSH2 0x39E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x13C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x137 SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x430 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x149 SWAP2 SWAP1 PUSH2 0x16AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x16C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x167 SWAP2 SWAP1 PUSH2 0x16F4 JUMP JUMPDEST PUSH2 0x476 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x1734 JUMP JUMPDEST PUSH2 0x58D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1A4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x19F SWAP2 SWAP1 PUSH2 0x1734 JUMP JUMPDEST PUSH2 0x5ED JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1BB SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x60D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CD SWAP2 SWAP1 PUSH2 0x16AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1EB SWAP2 SWAP1 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x693 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FD SWAP2 SWAP1 PUSH2 0x17C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20E PUSH2 0x74A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x21B SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x239 SWAP2 SWAP1 PUSH2 0x180A JUMP JUMPDEST PUSH2 0x7DC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x25A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x255 SWAP2 SWAP1 PUSH2 0x197F JUMP JUMPDEST PUSH2 0x7F2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x276 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x271 SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x854 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x283 SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2A6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A1 SWAP2 SWAP1 PUSH2 0x1A02 JUMP JUMPDEST PUSH2 0x8BC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B3 SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x80AC58CD00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x387 JUMPI POP PUSH32 0x5B5E139F00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x397 JUMPI POP PUSH2 0x396 DUP3 PUSH2 0x950 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x3AD SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x3D9 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x426 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x3FB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x426 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x409 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x43B DUP3 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x481 DUP3 PUSH2 0x60D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x4F1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E8 SWAP1 PUSH2 0x1B14 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x510 PUSH2 0xA05 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x53F JUMPI POP PUSH2 0x53E DUP2 PUSH2 0x539 PUSH2 0xA05 JUMP JUMPDEST PUSH2 0x8BC JUMP JUMPDEST JUMPDEST PUSH2 0x57E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x575 SWAP1 PUSH2 0x1BA6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x588 DUP4 DUP4 PUSH2 0xA0D JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x59E PUSH2 0x598 PUSH2 0xA05 JUMP JUMPDEST DUP3 PUSH2 0xAC6 JUMP JUMPDEST PUSH2 0x5DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5D4 SWAP1 PUSH2 0x1C38 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x5E8 DUP4 DUP4 DUP4 PUSH2 0xB5B JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x608 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x7F2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x619 DUP4 PUSH2 0xE54 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x68A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x681 SWAP1 PUSH2 0x1CA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x703 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FA SWAP1 PUSH2 0x1D36 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x759 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x785 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7D2 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x7A7 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7D2 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7B5 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EE PUSH2 0x7E7 PUSH2 0xA05 JUMP JUMPDEST DUP4 DUP4 PUSH2 0xE91 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x803 PUSH2 0x7FD PUSH2 0xA05 JUMP JUMPDEST DUP4 PUSH2 0xAC6 JUMP JUMPDEST PUSH2 0x842 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x839 SWAP1 PUSH2 0x1C38 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x84E DUP5 DUP5 DUP5 DUP5 PUSH2 0xFFD JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x85F DUP3 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x0 PUSH2 0x869 PUSH2 0x1059 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x889 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x8B4 JUMP JUMPDEST DUP1 PUSH2 0x893 DUP5 PUSH2 0x1070 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x8A4 SWAP3 SWAP2 SWAP1 PUSH2 0x1D92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x9C3 DUP2 PUSH2 0x113E JUMP JUMPDEST PUSH2 0xA02 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9F9 SWAP1 PUSH2 0x1CA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xA80 DUP4 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xAD2 DUP4 PUSH2 0x60D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB14 JUMPI POP PUSH2 0xB13 DUP2 DUP6 PUSH2 0x8BC JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xB52 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB3A DUP5 PUSH2 0x430 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB7B DUP3 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xBD1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC8 SWAP1 PUSH2 0x1E28 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xC40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC37 SWAP1 PUSH2 0x1EBA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xC4D DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x117F JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC6D DUP3 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xCC3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCBA SWAP1 PUSH2 0x1E28 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0xE4F DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1185 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xEFF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEF6 SWAP1 PUSH2 0x1F26 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0xFF0 SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x1008 DUP5 DUP5 DUP5 PUSH2 0xB5B JUMP JUMPDEST PUSH2 0x1014 DUP5 DUP5 DUP5 DUP5 PUSH2 0x118B JUMP JUMPDEST PUSH2 0x1053 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x104A SWAP1 PUSH2 0x1FB8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x107F DUP5 PUSH2 0x1312 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x109E JUMPI PUSH2 0x109D PUSH2 0x1854 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x10D0 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x1133 JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x1127 JUMPI PUSH2 0x1126 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x10DE JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1160 DUP4 PUSH2 0xE54 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11AC DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1465 JUMP JUMPDEST ISZERO PUSH2 0x1305 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x11D5 PUSH2 0xA05 JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11F7 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x1233 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1230 SWAP2 SWAP1 PUSH2 0x20BD JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x12B5 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x1263 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x1268 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x12AD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A4 SWAP1 PUSH2 0x1FB8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x130A JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x1370 JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x1366 JUMPI PUSH2 0x1365 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x13AD JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x13A3 JUMPI PUSH2 0x13A2 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x13DC JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x13D2 JUMPI PUSH2 0x13D1 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x1405 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x13FB JUMPI PUSH2 0x13FA PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x142A JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x1420 JUMPI PUSH2 0x141F PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x144D JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x1443 JUMPI PUSH2 0x1442 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x145C JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x14D1 DUP2 PUSH2 0x149C JUMP JUMPDEST DUP2 EQ PUSH2 0x14DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14EE DUP2 PUSH2 0x14C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x150A JUMPI PUSH2 0x1509 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1518 DUP5 DUP3 DUP6 ADD PUSH2 0x14DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1536 DUP2 PUSH2 0x1521 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1551 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1591 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1576 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15B9 DUP3 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x15C3 DUP2 DUP6 PUSH2 0x1562 JUMP JUMPDEST SWAP4 POP PUSH2 0x15D3 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST PUSH2 0x15DC DUP2 PUSH2 0x159D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1601 DUP2 DUP5 PUSH2 0x15AE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x161C DUP2 PUSH2 0x1609 JUMP JUMPDEST DUP2 EQ PUSH2 0x1627 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1639 DUP2 PUSH2 0x1613 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1655 JUMPI PUSH2 0x1654 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1663 DUP5 DUP3 DUP6 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1697 DUP3 PUSH2 0x166C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x16A7 DUP2 PUSH2 0x168C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x16C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x169E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x16D1 DUP2 PUSH2 0x168C JUMP JUMPDEST DUP2 EQ PUSH2 0x16DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x16EE DUP2 PUSH2 0x16C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x170B JUMPI PUSH2 0x170A PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1719 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x172A DUP6 DUP3 DUP7 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x174D JUMPI PUSH2 0x174C PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x175B DUP7 DUP3 DUP8 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x176C DUP7 DUP3 DUP8 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x177D DUP7 DUP3 DUP8 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x179D JUMPI PUSH2 0x179C PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x17AB DUP5 DUP3 DUP6 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x17BD DUP2 PUSH2 0x1609 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x17D8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x17B4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x17E7 DUP2 PUSH2 0x1521 JUMP JUMPDEST DUP2 EQ PUSH2 0x17F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1804 DUP2 PUSH2 0x17DE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1821 JUMPI PUSH2 0x1820 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x182F DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1840 DUP6 DUP3 DUP7 ADD PUSH2 0x17F5 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x188C DUP3 PUSH2 0x159D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x18AB JUMPI PUSH2 0x18AA PUSH2 0x1854 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18BE PUSH2 0x1488 JUMP JUMPDEST SWAP1 POP PUSH2 0x18CA DUP3 DUP3 PUSH2 0x1883 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x18EA JUMPI PUSH2 0x18E9 PUSH2 0x1854 JUMP JUMPDEST JUMPDEST PUSH2 0x18F3 DUP3 PUSH2 0x159D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1922 PUSH2 0x191D DUP5 PUSH2 0x18CF JUMP JUMPDEST PUSH2 0x18B4 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x193E JUMPI PUSH2 0x193D PUSH2 0x184F JUMP JUMPDEST JUMPDEST PUSH2 0x1949 DUP5 DUP3 DUP6 PUSH2 0x1900 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1966 JUMPI PUSH2 0x1965 PUSH2 0x184A JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1976 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x190F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1999 JUMPI PUSH2 0x1998 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x19A7 DUP8 DUP3 DUP9 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x19B8 DUP8 DUP3 DUP9 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x19C9 DUP8 DUP3 DUP9 ADD PUSH2 0x162A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x19EA JUMPI PUSH2 0x19E9 PUSH2 0x1497 JUMP JUMPDEST JUMPDEST PUSH2 0x19F6 DUP8 DUP3 DUP9 ADD PUSH2 0x1951 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1A19 JUMPI PUSH2 0x1A18 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A27 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1A38 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1A89 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1A9C JUMPI PUSH2 0x1A9B PUSH2 0x1A42 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AFE PUSH1 0x21 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B09 DUP3 PUSH2 0x1AA2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1B2D DUP2 PUSH2 0x1AF1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B90 PUSH1 0x3D DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B9B DUP3 PUSH2 0x1B34 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1BBF DUP2 PUSH2 0x1B83 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C22 PUSH1 0x2D DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C2D DUP3 PUSH2 0x1BC6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1C51 DUP2 PUSH2 0x1C15 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C8E PUSH1 0x18 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C99 DUP3 PUSH2 0x1C58 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1CBD DUP2 PUSH2 0x1C81 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D20 PUSH1 0x29 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D2B DUP3 PUSH2 0x1CC4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1D4F DUP2 PUSH2 0x1D13 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D6C DUP3 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x1D76 DUP2 DUP6 PUSH2 0x1D56 JUMP JUMPDEST SWAP4 POP PUSH2 0x1D86 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D9E DUP3 DUP6 PUSH2 0x1D61 JUMP JUMPDEST SWAP2 POP PUSH2 0x1DAA DUP3 DUP5 PUSH2 0x1D61 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E12 PUSH1 0x25 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E1D DUP3 PUSH2 0x1DB6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E41 DUP2 PUSH2 0x1E05 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EA4 PUSH1 0x24 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EAF DUP3 PUSH2 0x1E48 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1ED3 DUP2 PUSH2 0x1E97 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F10 PUSH1 0x19 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F1B DUP3 PUSH2 0x1EDA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1F3F DUP2 PUSH2 0x1F03 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA2 PUSH1 0x32 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FAD DUP3 PUSH2 0x1F46 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1FD1 DUP2 PUSH2 0x1F95 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x202E DUP3 PUSH2 0x2007 JUMP JUMPDEST PUSH2 0x2038 DUP2 DUP6 PUSH2 0x2012 JUMP JUMPDEST SWAP4 POP PUSH2 0x2048 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST PUSH2 0x2051 DUP2 PUSH2 0x159D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x2071 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x169E JUMP JUMPDEST PUSH2 0x207E PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x169E JUMP JUMPDEST PUSH2 0x208B PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x17B4 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x209D DUP2 DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x20B7 DUP2 PUSH2 0x14C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20D3 JUMPI PUSH2 0x20D2 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x20E1 DUP5 DUP3 DUP6 ADD PUSH2 0x20A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP2 DUP8 LOG4 CALLER PUSH17 0x5B7DB01EEB53DF512E7E78C9604DAE90BB 0xAE EXTCODEHASH DUP3 DUP2 LOG0 0xF9 ADD RETURNDATASIZE 0xD7 RETURN PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "628:16377:55:-:0;;;1390:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1464:5;1456;:13;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;:::i;:::-;;1390:113;;628:16377;;7:75:74;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:308::-;1358:4;1448:18;1440:6;1437:30;1434:56;;;1470:18;;:::i;:::-;1434:56;1508:29;1530:6;1508:29;:::i;:::-;1500:37;;1592:4;1586;1582:15;1574:23;;1296:308;;;:::o;1610:248::-;1692:1;1702:113;1716:6;1713:1;1710:13;1702:113;;;1801:1;1796:3;1792:11;1786:18;1782:1;1777:3;1773:11;1766:39;1738:2;1735:1;1731:10;1726:15;;1702:113;;;1849:1;1840:6;1835:3;1831:16;1824:27;1672:186;1610:248;;;:::o;1864:434::-;1953:5;1978:66;1994:49;2036:6;1994:49;:::i;:::-;1978:66;:::i;:::-;1969:75;;2067:6;2060:5;2053:21;2105:4;2098:5;2094:16;2143:3;2134:6;2129:3;2125:16;2122:25;2119:112;;;2150:79;;:::i;:::-;2119:112;2240:52;2285:6;2280:3;2275;2240:52;:::i;:::-;1959:339;1864:434;;;;;:::o;2318:355::-;2385:5;2434:3;2427:4;2419:6;2415:17;2411:27;2401:122;;2442:79;;:::i;:::-;2401:122;2552:6;2546:13;2577:90;2663:3;2655:6;2648:4;2640:6;2636:17;2577:90;:::i;:::-;2568:99;;2391:282;2318:355;;;;:::o;2679:853::-;2778:6;2786;2835:2;2823:9;2814:7;2810:23;2806:32;2803:119;;;2841:79;;:::i;:::-;2803:119;2982:1;2971:9;2967:17;2961:24;3012:18;3004:6;3001:30;2998:117;;;3034:79;;:::i;:::-;2998:117;3139:74;3205:7;3196:6;3185:9;3181:22;3139:74;:::i;:::-;3129:84;;2932:291;3283:2;3272:9;3268:18;3262:25;3314:18;3306:6;3303:30;3300:117;;;3336:79;;:::i;:::-;3300:117;3441:74;3507:7;3498:6;3487:9;3483:22;3441:74;:::i;:::-;3431:84;;3233:292;2679:853;;;;;:::o;3538:99::-;3590:6;3624:5;3618:12;3608:22;;3538:99;;;:::o;3643:180::-;3691:77;3688:1;3681:88;3788:4;3785:1;3778:15;3812:4;3809:1;3802:15;3829:320;3873:6;3910:1;3904:4;3900:12;3890:22;;3957:1;3951:4;3947:12;3978:18;3968:81;;4034:4;4026:6;4022:17;4012:27;;3968:81;4096:2;4088:6;4085:14;4065:18;4062:38;4059:84;;4115:18;;:::i;:::-;4059:84;3880:269;3829:320;;;:::o;4155:141::-;4204:4;4227:3;4219:11;;4250:3;4247:1;4240:14;4284:4;4281:1;4271:18;4263:26;;4155:141;;;:::o;4302:93::-;4339:6;4386:2;4381;4374:5;4370:14;4366:23;4356:33;;4302:93;;;:::o;4401:107::-;4445:8;4495:5;4489:4;4485:16;4464:37;;4401:107;;;;:::o;4514:393::-;4583:6;4633:1;4621:10;4617:18;4656:97;4686:66;4675:9;4656:97;:::i;:::-;4774:39;4804:8;4793:9;4774:39;:::i;:::-;4762:51;;4846:4;4842:9;4835:5;4831:21;4822:30;;4895:4;4885:8;4881:19;4874:5;4871:30;4861:40;;4590:317;;4514:393;;;;;:::o;4913:77::-;4950:7;4979:5;4968:16;;4913:77;;;:::o;4996:60::-;5024:3;5045:5;5038:12;;4996:60;;;:::o;5062:142::-;5112:9;5145:53;5163:34;5172:24;5190:5;5172:24;:::i;:::-;5163:34;:::i;:::-;5145:53;:::i;:::-;5132:66;;5062:142;;;:::o;5210:75::-;5253:3;5274:5;5267:12;;5210:75;;;:::o;5291:269::-;5401:39;5432:7;5401:39;:::i;:::-;5462:91;5511:41;5535:16;5511:41;:::i;:::-;5503:6;5496:4;5490:11;5462:91;:::i;:::-;5456:4;5449:105;5367:193;5291:269;;;:::o;5566:73::-;5611:3;5566:73;:::o;5645:189::-;5722:32;;:::i;:::-;5763:65;5821:6;5813;5807:4;5763:65;:::i;:::-;5698:136;5645:189;;:::o;5840:186::-;5900:120;5917:3;5910:5;5907:14;5900:120;;;5971:39;6008:1;6001:5;5971:39;:::i;:::-;5944:1;5937:5;5933:13;5924:22;;5900:120;;;5840:186;;:::o;6032:543::-;6133:2;6128:3;6125:11;6122:446;;;6167:38;6199:5;6167:38;:::i;:::-;6251:29;6269:10;6251:29;:::i;:::-;6241:8;6237:44;6434:2;6422:10;6419:18;6416:49;;;6455:8;6440:23;;6416:49;6478:80;6534:22;6552:3;6534:22;:::i;:::-;6524:8;6520:37;6507:11;6478:80;:::i;:::-;6137:431;;6122:446;6032:543;;;:::o;6581:117::-;6635:8;6685:5;6679:4;6675:16;6654:37;;6581:117;;;;:::o;6704:169::-;6748:6;6781:51;6829:1;6825:6;6817:5;6814:1;6810:13;6781:51;:::i;:::-;6777:56;6862:4;6856;6852:15;6842:25;;6755:118;6704:169;;;;:::o;6878:295::-;6954:4;7100:29;7125:3;7119:4;7100:29;:::i;:::-;7092:37;;7162:3;7159:1;7155:11;7149:4;7146:21;7138:29;;6878:295;;;;:::o;7178:1395::-;7295:37;7328:3;7295:37;:::i;:::-;7397:18;7389:6;7386:30;7383:56;;;7419:18;;:::i;:::-;7383:56;7463:38;7495:4;7489:11;7463:38;:::i;:::-;7548:67;7608:6;7600;7594:4;7548:67;:::i;:::-;7642:1;7666:4;7653:17;;7698:2;7690:6;7687:14;7715:1;7710:618;;;;8372:1;8389:6;8386:77;;;8438:9;8433:3;8429:19;8423:26;8414:35;;8386:77;8489:67;8549:6;8542:5;8489:67;:::i;:::-;8483:4;8476:81;8345:222;7680:887;;7710:618;7762:4;7758:9;7750:6;7746:22;7796:37;7828:4;7796:37;:::i;:::-;7855:1;7869:208;7883:7;7880:1;7877:14;7869:208;;;7962:9;7957:3;7953:19;7947:26;7939:6;7932:42;8013:1;8005:6;8001:14;7991:24;;8060:2;8049:9;8045:18;8032:31;;7906:4;7903:1;7899:12;7894:17;;7869:208;;;8105:6;8096:7;8093:19;8090:179;;;8163:9;8158:3;8154:19;8148:26;8206:48;8248:4;8240:6;8236:17;8225:9;8206:48;:::i;:::-;8198:6;8191:64;8113:156;8090:179;8315:1;8311;8303:6;8299:14;8295:22;8289:4;8282:36;7717:611;;;7680:887;;7270:1303;;;7178:1395;;:::o;628:16377:55:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_afterTokenTransfer_14334": { + "entryPoint": 4485, + "id": 14334, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_approve_14200": { + "entryPoint": 2573, + "id": 14200, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_baseURI_13637": { + "entryPoint": 4185, + "id": 13637, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_beforeTokenTransfer_14321": { + "entryPoint": 4479, + "id": 14321, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_checkOnERC721Received_14308": { + "entryPoint": 4491, + "id": 14308, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@_exists_13869": { + "entryPoint": 4414, + "id": 13869, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_isApprovedOrOwner_13903": { + "entryPoint": 2758, + "id": 13903, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_msgSender_14853": { + "entryPoint": 2565, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_ownerOf_13851": { + "entryPoint": 3668, + "id": 13851, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_requireMinted_14246": { + "entryPoint": 2490, + "id": 14246, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_safeTransfer_13838": { + "entryPoint": 4093, + "id": 13838, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_setApprovalForAll_14232": { + "entryPoint": 3729, + "id": 14232, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_transfer_14176": { + "entryPoint": 2907, + "id": 14176, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@approve_13680": { + "entryPoint": 1142, + "id": 13680, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@balanceOf_13541": { + "entryPoint": 1683, + "id": 13541, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@getApproved_13698": { + "entryPoint": 1072, + "id": 13698, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isApprovedForAll_13733": { + "entryPoint": 2236, + "id": 13733, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isContract_14529": { + "entryPoint": 5221, + "id": 14529, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@log10_15839": { + "entryPoint": 4882, + "id": 15839, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@name_13579": { + "entryPoint": 926, + "id": 13579, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@ownerOf_13569": { + "entryPoint": 1549, + "id": 13569, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@safeTransferFrom_13779": { + "entryPoint": 1517, + "id": 13779, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@safeTransferFrom_13809": { + "entryPoint": 2034, + "id": 13809, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setApprovalForAll_13715": { + "entryPoint": 2012, + "id": 13715, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@supportsInterface_13517": { + "entryPoint": 700, + "id": 13517, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_15123": { + "entryPoint": 2384, + "id": 15123, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@symbol_13589": { + "entryPoint": 1866, + "id": 13589, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@toString_14930": { + "entryPoint": 4208, + "id": 14930, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@tokenURI_13628": { + "entryPoint": 2132, + "id": 13628, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@transferFrom_13760": { + "entryPoint": 1421, + "id": 13760, + "parameterSlots": 3, + "returnSlots": 0 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 6415, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 5855, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 6133, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 5343, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4_fromMemory": { + "entryPoint": 8360, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 6481, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 5674, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 6023, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 6658, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 5940, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr": { + "entryPoint": 6527, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 6154, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 5876, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 5364, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4_fromMemory": { + "entryPoint": 8381, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 5695, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 5790, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 5421, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 8227, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 5550, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 7521, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7189, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8085, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7685, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7831, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7939, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7443, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7297, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack": { + "entryPoint": 6897, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7043, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 6068, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 7570, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 5805, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 8284, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 5436, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5607, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7224, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8120, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7720, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7866, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7974, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7478, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7332, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 6932, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7078, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 6083, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 6324, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 5256, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 6351, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 8199, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 5463, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 8210, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 5474, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 7510, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 5772, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 5409, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 5276, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 5740, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 5641, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 6400, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 5491, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 6769, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 6275, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "panic_error_0x12": { + "entryPoint": 8152, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 6722, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 6228, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 6218, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 6223, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 5271, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 5266, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 5533, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af": { + "entryPoint": 7110, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e": { + "entryPoint": 8006, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48": { + "entryPoint": 7606, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4": { + "entryPoint": 7752, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05": { + "entryPoint": 7898, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159": { + "entryPoint": 7364, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f": { + "entryPoint": 7256, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942": { + "entryPoint": 6818, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83": { + "entryPoint": 6964, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 5832, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 6110, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 5320, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 5651, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:23154:74", + "nodeType": "YulBlock", + "src": "0:23154:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "378:105:74", + "nodeType": "YulBlock", + "src": "378:105:74", + "statements": [ + { + "nativeSrc": "388:89:74", + "nodeType": "YulAssignment", + "src": "388:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "403:5:74", + "nodeType": "YulIdentifier", + "src": "403:5:74" + }, + { + "kind": "number", + "nativeSrc": "410:66:74", + "nodeType": "YulLiteral", + "src": "410:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "399:3:74", + "nodeType": "YulIdentifier", + "src": "399:3:74" + }, + "nativeSrc": "399:78:74", + "nodeType": "YulFunctionCall", + "src": "399:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "388:7:74", + "nodeType": "YulIdentifier", + "src": "388:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "334:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "360:5:74", + "nodeType": "YulTypedName", + "src": "360:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "370:7:74", + "nodeType": "YulTypedName", + "src": "370:7:74", + "type": "" + } + ], + "src": "334:149:74" + }, + { + "body": { + "nativeSrc": "531:78:74", + "nodeType": "YulBlock", + "src": "531:78:74", + "statements": [ + { + "body": { + "nativeSrc": "587:16:74", + "nodeType": "YulBlock", + "src": "587:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "596:1:74", + "nodeType": "YulLiteral", + "src": "596:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "599:1:74", + "nodeType": "YulLiteral", + "src": "599:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "589:6:74", + "nodeType": "YulIdentifier", + "src": "589:6:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulFunctionCall", + "src": "589:12:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulExpressionStatement", + "src": "589:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "554:5:74", + "nodeType": "YulIdentifier", + "src": "554:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "578:5:74", + "nodeType": "YulIdentifier", + "src": "578:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "561:16:74", + "nodeType": "YulIdentifier", + "src": "561:16:74" + }, + "nativeSrc": "561:23:74", + "nodeType": "YulFunctionCall", + "src": "561:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "551:2:74", + "nodeType": "YulIdentifier", + "src": "551:2:74" + }, + "nativeSrc": "551:34:74", + "nodeType": "YulFunctionCall", + "src": "551:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "544:6:74", + "nodeType": "YulIdentifier", + "src": "544:6:74" + }, + "nativeSrc": "544:42:74", + "nodeType": "YulFunctionCall", + "src": "544:42:74" + }, + "nativeSrc": "541:62:74", + "nodeType": "YulIf", + "src": "541:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "489:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "524:5:74", + "nodeType": "YulTypedName", + "src": "524:5:74", + "type": "" + } + ], + "src": "489:120:74" + }, + { + "body": { + "nativeSrc": "666:86:74", + "nodeType": "YulBlock", + "src": "666:86:74", + "statements": [ + { + "nativeSrc": "676:29:74", + "nodeType": "YulAssignment", + "src": "676:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "698:6:74", + "nodeType": "YulIdentifier", + "src": "698:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "685:12:74", + "nodeType": "YulIdentifier", + "src": "685:12:74" + }, + "nativeSrc": "685:20:74", + "nodeType": "YulFunctionCall", + "src": "685:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "676:5:74", + "nodeType": "YulIdentifier", + "src": "676:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "740:5:74", + "nodeType": "YulIdentifier", + "src": "740:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "714:25:74", + "nodeType": "YulIdentifier", + "src": "714:25:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulFunctionCall", + "src": "714:32:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulExpressionStatement", + "src": "714:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "615:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "644:6:74", + "nodeType": "YulTypedName", + "src": "644:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "652:3:74", + "nodeType": "YulTypedName", + "src": "652:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "660:5:74", + "nodeType": "YulTypedName", + "src": "660:5:74", + "type": "" + } + ], + "src": "615:137:74" + }, + { + "body": { + "nativeSrc": "823:262:74", + "nodeType": "YulBlock", + "src": "823:262:74", + "statements": [ + { + "body": { + "nativeSrc": "869:83:74", + "nodeType": "YulBlock", + "src": "869:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "871:77:74", + "nodeType": "YulIdentifier", + "src": "871:77:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulFunctionCall", + "src": "871:79:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulExpressionStatement", + "src": "871:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "844:7:74", + "nodeType": "YulIdentifier", + "src": "844:7:74" + }, + { + "name": "headStart", + "nativeSrc": "853:9:74", + "nodeType": "YulIdentifier", + "src": "853:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "840:3:74", + "nodeType": "YulIdentifier", + "src": "840:3:74" + }, + "nativeSrc": "840:23:74", + "nodeType": "YulFunctionCall", + "src": "840:23:74" + }, + { + "kind": "number", + "nativeSrc": "865:2:74", + "nodeType": "YulLiteral", + "src": "865:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "836:3:74", + "nodeType": "YulIdentifier", + "src": "836:3:74" + }, + "nativeSrc": "836:32:74", + "nodeType": "YulFunctionCall", + "src": "836:32:74" + }, + "nativeSrc": "833:119:74", + "nodeType": "YulIf", + "src": "833:119:74" + }, + { + "nativeSrc": "962:116:74", + "nodeType": "YulBlock", + "src": "962:116:74", + "statements": [ + { + "nativeSrc": "977:15:74", + "nodeType": "YulVariableDeclaration", + "src": "977:15:74", + "value": { + "kind": "number", + "nativeSrc": "991:1:74", + "nodeType": "YulLiteral", + "src": "991:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "981:6:74", + "nodeType": "YulTypedName", + "src": "981:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1006:62:74", + "nodeType": "YulAssignment", + "src": "1006:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1040:9:74", + "nodeType": "YulIdentifier", + "src": "1040:9:74" + }, + { + "name": "offset", + "nativeSrc": "1051:6:74", + "nodeType": "YulIdentifier", + "src": "1051:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1036:3:74", + "nodeType": "YulIdentifier", + "src": "1036:3:74" + }, + "nativeSrc": "1036:22:74", + "nodeType": "YulFunctionCall", + "src": "1036:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1060:7:74", + "nodeType": "YulIdentifier", + "src": "1060:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "1016:19:74", + "nodeType": "YulIdentifier", + "src": "1016:19:74" + }, + "nativeSrc": "1016:52:74", + "nodeType": "YulFunctionCall", + "src": "1016:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1006:6:74", + "nodeType": "YulIdentifier", + "src": "1006:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "758:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "793:9:74", + "nodeType": "YulTypedName", + "src": "793:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "804:7:74", + "nodeType": "YulTypedName", + "src": "804:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "816:6:74", + "nodeType": "YulTypedName", + "src": "816:6:74", + "type": "" + } + ], + "src": "758:327:74" + }, + { + "body": { + "nativeSrc": "1133:48:74", + "nodeType": "YulBlock", + "src": "1133:48:74", + "statements": [ + { + "nativeSrc": "1143:32:74", + "nodeType": "YulAssignment", + "src": "1143:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1168:5:74", + "nodeType": "YulIdentifier", + "src": "1168:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1161:6:74", + "nodeType": "YulIdentifier", + "src": "1161:6:74" + }, + "nativeSrc": "1161:13:74", + "nodeType": "YulFunctionCall", + "src": "1161:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1154:6:74", + "nodeType": "YulIdentifier", + "src": "1154:6:74" + }, + "nativeSrc": "1154:21:74", + "nodeType": "YulFunctionCall", + "src": "1154:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1143:7:74", + "nodeType": "YulIdentifier", + "src": "1143:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1091:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1115:5:74", + "nodeType": "YulTypedName", + "src": "1115:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1125:7:74", + "nodeType": "YulTypedName", + "src": "1125:7:74", + "type": "" + } + ], + "src": "1091:90:74" + }, + { + "body": { + "nativeSrc": "1246:50:74", + "nodeType": "YulBlock", + "src": "1246:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1263:3:74", + "nodeType": "YulIdentifier", + "src": "1263:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1283:5:74", + "nodeType": "YulIdentifier", + "src": "1283:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1268:14:74", + "nodeType": "YulIdentifier", + "src": "1268:14:74" + }, + "nativeSrc": "1268:21:74", + "nodeType": "YulFunctionCall", + "src": "1268:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1256:6:74", + "nodeType": "YulIdentifier", + "src": "1256:6:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulFunctionCall", + "src": "1256:34:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulExpressionStatement", + "src": "1256:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1187:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1234:5:74", + "nodeType": "YulTypedName", + "src": "1234:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1241:3:74", + "nodeType": "YulTypedName", + "src": "1241:3:74", + "type": "" + } + ], + "src": "1187:109:74" + }, + { + "body": { + "nativeSrc": "1394:118:74", + "nodeType": "YulBlock", + "src": "1394:118:74", + "statements": [ + { + "nativeSrc": "1404:26:74", + "nodeType": "YulAssignment", + "src": "1404:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1416:9:74", + "nodeType": "YulIdentifier", + "src": "1416:9:74" + }, + { + "kind": "number", + "nativeSrc": "1427:2:74", + "nodeType": "YulLiteral", + "src": "1427:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1412:3:74", + "nodeType": "YulIdentifier", + "src": "1412:3:74" + }, + "nativeSrc": "1412:18:74", + "nodeType": "YulFunctionCall", + "src": "1412:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1404:4:74", + "nodeType": "YulIdentifier", + "src": "1404:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1478:6:74", + "nodeType": "YulIdentifier", + "src": "1478:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1491:9:74", + "nodeType": "YulIdentifier", + "src": "1491:9:74" + }, + { + "kind": "number", + "nativeSrc": "1502:1:74", + "nodeType": "YulLiteral", + "src": "1502:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1487:3:74", + "nodeType": "YulIdentifier", + "src": "1487:3:74" + }, + "nativeSrc": "1487:17:74", + "nodeType": "YulFunctionCall", + "src": "1487:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1440:37:74", + "nodeType": "YulIdentifier", + "src": "1440:37:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulFunctionCall", + "src": "1440:65:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulExpressionStatement", + "src": "1440:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1302:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1366:9:74", + "nodeType": "YulTypedName", + "src": "1366:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1378:6:74", + "nodeType": "YulTypedName", + "src": "1378:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1389:4:74", + "nodeType": "YulTypedName", + "src": "1389:4:74", + "type": "" + } + ], + "src": "1302:210:74" + }, + { + "body": { + "nativeSrc": "1577:40:74", + "nodeType": "YulBlock", + "src": "1577:40:74", + "statements": [ + { + "nativeSrc": "1588:22:74", + "nodeType": "YulAssignment", + "src": "1588:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1604:5:74", + "nodeType": "YulIdentifier", + "src": "1604:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1598:5:74", + "nodeType": "YulIdentifier", + "src": "1598:5:74" + }, + "nativeSrc": "1598:12:74", + "nodeType": "YulFunctionCall", + "src": "1598:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "1588:6:74", + "nodeType": "YulIdentifier", + "src": "1588:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1518:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1560:5:74", + "nodeType": "YulTypedName", + "src": "1560:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "1570:6:74", + "nodeType": "YulTypedName", + "src": "1570:6:74", + "type": "" + } + ], + "src": "1518:99:74" + }, + { + "body": { + "nativeSrc": "1719:73:74", + "nodeType": "YulBlock", + "src": "1719:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1736:3:74", + "nodeType": "YulIdentifier", + "src": "1736:3:74" + }, + { + "name": "length", + "nativeSrc": "1741:6:74", + "nodeType": "YulIdentifier", + "src": "1741:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1729:6:74", + "nodeType": "YulIdentifier", + "src": "1729:6:74" + }, + "nativeSrc": "1729:19:74", + "nodeType": "YulFunctionCall", + "src": "1729:19:74" + }, + "nativeSrc": "1729:19:74", + "nodeType": "YulExpressionStatement", + "src": "1729:19:74" + }, + { + "nativeSrc": "1757:29:74", + "nodeType": "YulAssignment", + "src": "1757:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1776:3:74", + "nodeType": "YulIdentifier", + "src": "1776:3:74" + }, + { + "kind": "number", + "nativeSrc": "1781:4:74", + "nodeType": "YulLiteral", + "src": "1781:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1772:3:74", + "nodeType": "YulIdentifier", + "src": "1772:3:74" + }, + "nativeSrc": "1772:14:74", + "nodeType": "YulFunctionCall", + "src": "1772:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "1757:11:74", + "nodeType": "YulIdentifier", + "src": "1757:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "1623:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "1691:3:74", + "nodeType": "YulTypedName", + "src": "1691:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1696:6:74", + "nodeType": "YulTypedName", + "src": "1696:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "1707:11:74", + "nodeType": "YulTypedName", + "src": "1707:11:74", + "type": "" + } + ], + "src": "1623:169:74" + }, + { + "body": { + "nativeSrc": "1860:186:74", + "nodeType": "YulBlock", + "src": "1860:186:74", + "statements": [ + { + "nativeSrc": "1871:10:74", + "nodeType": "YulVariableDeclaration", + "src": "1871:10:74", + "value": { + "kind": "number", + "nativeSrc": "1880:1:74", + "nodeType": "YulLiteral", + "src": "1880:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "1875:1:74", + "nodeType": "YulTypedName", + "src": "1875:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1940:63:74", + "nodeType": "YulBlock", + "src": "1940:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1965:3:74", + "nodeType": "YulIdentifier", + "src": "1965:3:74" + }, + { + "name": "i", + "nativeSrc": "1970:1:74", + "nodeType": "YulIdentifier", + "src": "1970:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1961:3:74", + "nodeType": "YulIdentifier", + "src": "1961:3:74" + }, + "nativeSrc": "1961:11:74", + "nodeType": "YulFunctionCall", + "src": "1961:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "1984:3:74", + "nodeType": "YulIdentifier", + "src": "1984:3:74" + }, + { + "name": "i", + "nativeSrc": "1989:1:74", + "nodeType": "YulIdentifier", + "src": "1989:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1980:3:74", + "nodeType": "YulIdentifier", + "src": "1980:3:74" + }, + "nativeSrc": "1980:11:74", + "nodeType": "YulFunctionCall", + "src": "1980:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1974:5:74", + "nodeType": "YulIdentifier", + "src": "1974:5:74" + }, + "nativeSrc": "1974:18:74", + "nodeType": "YulFunctionCall", + "src": "1974:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1954:6:74", + "nodeType": "YulIdentifier", + "src": "1954:6:74" + }, + "nativeSrc": "1954:39:74", + "nodeType": "YulFunctionCall", + "src": "1954:39:74" + }, + "nativeSrc": "1954:39:74", + "nodeType": "YulExpressionStatement", + "src": "1954:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1901:1:74", + "nodeType": "YulIdentifier", + "src": "1901:1:74" + }, + { + "name": "length", + "nativeSrc": "1904:6:74", + "nodeType": "YulIdentifier", + "src": "1904:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1898:2:74", + "nodeType": "YulIdentifier", + "src": "1898:2:74" + }, + "nativeSrc": "1898:13:74", + "nodeType": "YulFunctionCall", + "src": "1898:13:74" + }, + "nativeSrc": "1890:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "1912:19:74", + "nodeType": "YulBlock", + "src": "1912:19:74", + "statements": [ + { + "nativeSrc": "1914:15:74", + "nodeType": "YulAssignment", + "src": "1914:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "1923:1:74", + "nodeType": "YulIdentifier", + "src": "1923:1:74" + }, + { + "kind": "number", + "nativeSrc": "1926:2:74", + "nodeType": "YulLiteral", + "src": "1926:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1919:3:74", + "nodeType": "YulIdentifier", + "src": "1919:3:74" + }, + "nativeSrc": "1919:10:74", + "nodeType": "YulFunctionCall", + "src": "1919:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "1914:1:74", + "nodeType": "YulIdentifier", + "src": "1914:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "1894:3:74", + "nodeType": "YulBlock", + "src": "1894:3:74", + "statements": [] + }, + "src": "1890:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2023:3:74", + "nodeType": "YulIdentifier", + "src": "2023:3:74" + }, + { + "name": "length", + "nativeSrc": "2028:6:74", + "nodeType": "YulIdentifier", + "src": "2028:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2019:3:74", + "nodeType": "YulIdentifier", + "src": "2019:3:74" + }, + "nativeSrc": "2019:16:74", + "nodeType": "YulFunctionCall", + "src": "2019:16:74" + }, + { + "kind": "number", + "nativeSrc": "2037:1:74", + "nodeType": "YulLiteral", + "src": "2037:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2012:6:74", + "nodeType": "YulIdentifier", + "src": "2012:6:74" + }, + "nativeSrc": "2012:27:74", + "nodeType": "YulFunctionCall", + "src": "2012:27:74" + }, + "nativeSrc": "2012:27:74", + "nodeType": "YulExpressionStatement", + "src": "2012:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "1798:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1842:3:74", + "nodeType": "YulTypedName", + "src": "1842:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1847:3:74", + "nodeType": "YulTypedName", + "src": "1847:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1852:6:74", + "nodeType": "YulTypedName", + "src": "1852:6:74", + "type": "" + } + ], + "src": "1798:248:74" + }, + { + "body": { + "nativeSrc": "2100:54:74", + "nodeType": "YulBlock", + "src": "2100:54:74", + "statements": [ + { + "nativeSrc": "2110:38:74", + "nodeType": "YulAssignment", + "src": "2110:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2128:5:74", + "nodeType": "YulIdentifier", + "src": "2128:5:74" + }, + { + "kind": "number", + "nativeSrc": "2135:2:74", + "nodeType": "YulLiteral", + "src": "2135:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2124:3:74", + "nodeType": "YulIdentifier", + "src": "2124:3:74" + }, + "nativeSrc": "2124:14:74", + "nodeType": "YulFunctionCall", + "src": "2124:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2144:2:74", + "nodeType": "YulLiteral", + "src": "2144:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "2140:3:74", + "nodeType": "YulIdentifier", + "src": "2140:3:74" + }, + "nativeSrc": "2140:7:74", + "nodeType": "YulFunctionCall", + "src": "2140:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2120:3:74", + "nodeType": "YulIdentifier", + "src": "2120:3:74" + }, + "nativeSrc": "2120:28:74", + "nodeType": "YulFunctionCall", + "src": "2120:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "2110:6:74", + "nodeType": "YulIdentifier", + "src": "2110:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "2052:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2083:5:74", + "nodeType": "YulTypedName", + "src": "2083:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "2093:6:74", + "nodeType": "YulTypedName", + "src": "2093:6:74", + "type": "" + } + ], + "src": "2052:102:74" + }, + { + "body": { + "nativeSrc": "2252:285:74", + "nodeType": "YulBlock", + "src": "2252:285:74", + "statements": [ + { + "nativeSrc": "2262:53:74", + "nodeType": "YulVariableDeclaration", + "src": "2262:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2309:5:74", + "nodeType": "YulIdentifier", + "src": "2309:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "2276:32:74", + "nodeType": "YulIdentifier", + "src": "2276:32:74" + }, + "nativeSrc": "2276:39:74", + "nodeType": "YulFunctionCall", + "src": "2276:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2266:6:74", + "nodeType": "YulTypedName", + "src": "2266:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2324:78:74", + "nodeType": "YulAssignment", + "src": "2324:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2390:3:74", + "nodeType": "YulIdentifier", + "src": "2390:3:74" + }, + { + "name": "length", + "nativeSrc": "2395:6:74", + "nodeType": "YulIdentifier", + "src": "2395:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2331:58:74", + "nodeType": "YulIdentifier", + "src": "2331:58:74" + }, + "nativeSrc": "2331:71:74", + "nodeType": "YulFunctionCall", + "src": "2331:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "2324:3:74", + "nodeType": "YulIdentifier", + "src": "2324:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2450:5:74", + "nodeType": "YulIdentifier", + "src": "2450:5:74" + }, + { + "kind": "number", + "nativeSrc": "2457:4:74", + "nodeType": "YulLiteral", + "src": "2457:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2446:3:74", + "nodeType": "YulIdentifier", + "src": "2446:3:74" + }, + "nativeSrc": "2446:16:74", + "nodeType": "YulFunctionCall", + "src": "2446:16:74" + }, + { + "name": "pos", + "nativeSrc": "2464:3:74", + "nodeType": "YulIdentifier", + "src": "2464:3:74" + }, + { + "name": "length", + "nativeSrc": "2469:6:74", + "nodeType": "YulIdentifier", + "src": "2469:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2411:34:74", + "nodeType": "YulIdentifier", + "src": "2411:34:74" + }, + "nativeSrc": "2411:65:74", + "nodeType": "YulFunctionCall", + "src": "2411:65:74" + }, + "nativeSrc": "2411:65:74", + "nodeType": "YulExpressionStatement", + "src": "2411:65:74" + }, + { + "nativeSrc": "2485:46:74", + "nodeType": "YulAssignment", + "src": "2485:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2496:3:74", + "nodeType": "YulIdentifier", + "src": "2496:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2523:6:74", + "nodeType": "YulIdentifier", + "src": "2523:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2501:21:74", + "nodeType": "YulIdentifier", + "src": "2501:21:74" + }, + "nativeSrc": "2501:29:74", + "nodeType": "YulFunctionCall", + "src": "2501:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2492:3:74", + "nodeType": "YulIdentifier", + "src": "2492:3:74" + }, + "nativeSrc": "2492:39:74", + "nodeType": "YulFunctionCall", + "src": "2492:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "2485:3:74", + "nodeType": "YulIdentifier", + "src": "2485:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2160:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2233:5:74", + "nodeType": "YulTypedName", + "src": "2233:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2240:3:74", + "nodeType": "YulTypedName", + "src": "2240:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "2248:3:74", + "nodeType": "YulTypedName", + "src": "2248:3:74", + "type": "" + } + ], + "src": "2160:377:74" + }, + { + "body": { + "nativeSrc": "2661:195:74", + "nodeType": "YulBlock", + "src": "2661:195:74", + "statements": [ + { + "nativeSrc": "2671:26:74", + "nodeType": "YulAssignment", + "src": "2671:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2683:9:74", + "nodeType": "YulIdentifier", + "src": "2683:9:74" + }, + { + "kind": "number", + "nativeSrc": "2694:2:74", + "nodeType": "YulLiteral", + "src": "2694:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2679:3:74", + "nodeType": "YulIdentifier", + "src": "2679:3:74" + }, + "nativeSrc": "2679:18:74", + "nodeType": "YulFunctionCall", + "src": "2679:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2671:4:74", + "nodeType": "YulIdentifier", + "src": "2671:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2718:9:74", + "nodeType": "YulIdentifier", + "src": "2718:9:74" + }, + { + "kind": "number", + "nativeSrc": "2729:1:74", + "nodeType": "YulLiteral", + "src": "2729:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2714:3:74", + "nodeType": "YulIdentifier", + "src": "2714:3:74" + }, + "nativeSrc": "2714:17:74", + "nodeType": "YulFunctionCall", + "src": "2714:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "2737:4:74", + "nodeType": "YulIdentifier", + "src": "2737:4:74" + }, + { + "name": "headStart", + "nativeSrc": "2743:9:74", + "nodeType": "YulIdentifier", + "src": "2743:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2733:3:74", + "nodeType": "YulIdentifier", + "src": "2733:3:74" + }, + "nativeSrc": "2733:20:74", + "nodeType": "YulFunctionCall", + "src": "2733:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2707:6:74", + "nodeType": "YulIdentifier", + "src": "2707:6:74" + }, + "nativeSrc": "2707:47:74", + "nodeType": "YulFunctionCall", + "src": "2707:47:74" + }, + "nativeSrc": "2707:47:74", + "nodeType": "YulExpressionStatement", + "src": "2707:47:74" + }, + { + "nativeSrc": "2763:86:74", + "nodeType": "YulAssignment", + "src": "2763:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2835:6:74", + "nodeType": "YulIdentifier", + "src": "2835:6:74" + }, + { + "name": "tail", + "nativeSrc": "2844:4:74", + "nodeType": "YulIdentifier", + "src": "2844:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2771:63:74", + "nodeType": "YulIdentifier", + "src": "2771:63:74" + }, + "nativeSrc": "2771:78:74", + "nodeType": "YulFunctionCall", + "src": "2771:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2763:4:74", + "nodeType": "YulIdentifier", + "src": "2763:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "2543:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2633:9:74", + "nodeType": "YulTypedName", + "src": "2633:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2645:6:74", + "nodeType": "YulTypedName", + "src": "2645:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2656:4:74", + "nodeType": "YulTypedName", + "src": "2656:4:74", + "type": "" + } + ], + "src": "2543:313:74" + }, + { + "body": { + "nativeSrc": "2907:32:74", + "nodeType": "YulBlock", + "src": "2907:32:74", + "statements": [ + { + "nativeSrc": "2917:16:74", + "nodeType": "YulAssignment", + "src": "2917:16:74", + "value": { + "name": "value", + "nativeSrc": "2928:5:74", + "nodeType": "YulIdentifier", + "src": "2928:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2917:7:74", + "nodeType": "YulIdentifier", + "src": "2917:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "2862:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2889:5:74", + "nodeType": "YulTypedName", + "src": "2889:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2899:7:74", + "nodeType": "YulTypedName", + "src": "2899:7:74", + "type": "" + } + ], + "src": "2862:77:74" + }, + { + "body": { + "nativeSrc": "2988:79:74", + "nodeType": "YulBlock", + "src": "2988:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3045:16:74", + "nodeType": "YulBlock", + "src": "3045:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3054:1:74", + "nodeType": "YulLiteral", + "src": "3054:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3057:1:74", + "nodeType": "YulLiteral", + "src": "3057:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3047:6:74", + "nodeType": "YulIdentifier", + "src": "3047:6:74" + }, + "nativeSrc": "3047:12:74", + "nodeType": "YulFunctionCall", + "src": "3047:12:74" + }, + "nativeSrc": "3047:12:74", + "nodeType": "YulExpressionStatement", + "src": "3047:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3011:5:74", + "nodeType": "YulIdentifier", + "src": "3011:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3036:5:74", + "nodeType": "YulIdentifier", + "src": "3036:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3018:17:74", + "nodeType": "YulIdentifier", + "src": "3018:17:74" + }, + "nativeSrc": "3018:24:74", + "nodeType": "YulFunctionCall", + "src": "3018:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3008:2:74", + "nodeType": "YulIdentifier", + "src": "3008:2:74" + }, + "nativeSrc": "3008:35:74", + "nodeType": "YulFunctionCall", + "src": "3008:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3001:6:74", + "nodeType": "YulIdentifier", + "src": "3001:6:74" + }, + "nativeSrc": "3001:43:74", + "nodeType": "YulFunctionCall", + "src": "3001:43:74" + }, + "nativeSrc": "2998:63:74", + "nodeType": "YulIf", + "src": "2998:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "2945:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2981:5:74", + "nodeType": "YulTypedName", + "src": "2981:5:74", + "type": "" + } + ], + "src": "2945:122:74" + }, + { + "body": { + "nativeSrc": "3125:87:74", + "nodeType": "YulBlock", + "src": "3125:87:74", + "statements": [ + { + "nativeSrc": "3135:29:74", + "nodeType": "YulAssignment", + "src": "3135:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3157:6:74", + "nodeType": "YulIdentifier", + "src": "3157:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3144:12:74", + "nodeType": "YulIdentifier", + "src": "3144:12:74" + }, + "nativeSrc": "3144:20:74", + "nodeType": "YulFunctionCall", + "src": "3144:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3135:5:74", + "nodeType": "YulIdentifier", + "src": "3135:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3200:5:74", + "nodeType": "YulIdentifier", + "src": "3200:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "3173:26:74", + "nodeType": "YulIdentifier", + "src": "3173:26:74" + }, + "nativeSrc": "3173:33:74", + "nodeType": "YulFunctionCall", + "src": "3173:33:74" + }, + "nativeSrc": "3173:33:74", + "nodeType": "YulExpressionStatement", + "src": "3173:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "3073:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3103:6:74", + "nodeType": "YulTypedName", + "src": "3103:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3111:3:74", + "nodeType": "YulTypedName", + "src": "3111:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3119:5:74", + "nodeType": "YulTypedName", + "src": "3119:5:74", + "type": "" + } + ], + "src": "3073:139:74" + }, + { + "body": { + "nativeSrc": "3284:263:74", + "nodeType": "YulBlock", + "src": "3284:263:74", + "statements": [ + { + "body": { + "nativeSrc": "3330:83:74", + "nodeType": "YulBlock", + "src": "3330:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3332:77:74", + "nodeType": "YulIdentifier", + "src": "3332:77:74" + }, + "nativeSrc": "3332:79:74", + "nodeType": "YulFunctionCall", + "src": "3332:79:74" + }, + "nativeSrc": "3332:79:74", + "nodeType": "YulExpressionStatement", + "src": "3332:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3305:7:74", + "nodeType": "YulIdentifier", + "src": "3305:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3314:9:74", + "nodeType": "YulIdentifier", + "src": "3314:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3301:3:74", + "nodeType": "YulIdentifier", + "src": "3301:3:74" + }, + "nativeSrc": "3301:23:74", + "nodeType": "YulFunctionCall", + "src": "3301:23:74" + }, + { + "kind": "number", + "nativeSrc": "3326:2:74", + "nodeType": "YulLiteral", + "src": "3326:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3297:3:74", + "nodeType": "YulIdentifier", + "src": "3297:3:74" + }, + "nativeSrc": "3297:32:74", + "nodeType": "YulFunctionCall", + "src": "3297:32:74" + }, + "nativeSrc": "3294:119:74", + "nodeType": "YulIf", + "src": "3294:119:74" + }, + { + "nativeSrc": "3423:117:74", + "nodeType": "YulBlock", + "src": "3423:117:74", + "statements": [ + { + "nativeSrc": "3438:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3438:15:74", + "value": { + "kind": "number", + "nativeSrc": "3452:1:74", + "nodeType": "YulLiteral", + "src": "3452:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3442:6:74", + "nodeType": "YulTypedName", + "src": "3442:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3467:63:74", + "nodeType": "YulAssignment", + "src": "3467:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3502:9:74", + "nodeType": "YulIdentifier", + "src": "3502:9:74" + }, + { + "name": "offset", + "nativeSrc": "3513:6:74", + "nodeType": "YulIdentifier", + "src": "3513:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3498:3:74", + "nodeType": "YulIdentifier", + "src": "3498:3:74" + }, + "nativeSrc": "3498:22:74", + "nodeType": "YulFunctionCall", + "src": "3498:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3522:7:74", + "nodeType": "YulIdentifier", + "src": "3522:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "3477:20:74", + "nodeType": "YulIdentifier", + "src": "3477:20:74" + }, + "nativeSrc": "3477:53:74", + "nodeType": "YulFunctionCall", + "src": "3477:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3467:6:74", + "nodeType": "YulIdentifier", + "src": "3467:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "3218:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3254:9:74", + "nodeType": "YulTypedName", + "src": "3254:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3265:7:74", + "nodeType": "YulTypedName", + "src": "3265:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3277:6:74", + "nodeType": "YulTypedName", + "src": "3277:6:74", + "type": "" + } + ], + "src": "3218:329:74" + }, + { + "body": { + "nativeSrc": "3598:81:74", + "nodeType": "YulBlock", + "src": "3598:81:74", + "statements": [ + { + "nativeSrc": "3608:65:74", + "nodeType": "YulAssignment", + "src": "3608:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3623:5:74", + "nodeType": "YulIdentifier", + "src": "3623:5:74" + }, + { + "kind": "number", + "nativeSrc": "3630:42:74", + "nodeType": "YulLiteral", + "src": "3630:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3619:3:74", + "nodeType": "YulIdentifier", + "src": "3619:3:74" + }, + "nativeSrc": "3619:54:74", + "nodeType": "YulFunctionCall", + "src": "3619:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3608:7:74", + "nodeType": "YulIdentifier", + "src": "3608:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "3553:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3580:5:74", + "nodeType": "YulTypedName", + "src": "3580:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3590:7:74", + "nodeType": "YulTypedName", + "src": "3590:7:74", + "type": "" + } + ], + "src": "3553:126:74" + }, + { + "body": { + "nativeSrc": "3730:51:74", + "nodeType": "YulBlock", + "src": "3730:51:74", + "statements": [ + { + "nativeSrc": "3740:35:74", + "nodeType": "YulAssignment", + "src": "3740:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3769:5:74", + "nodeType": "YulIdentifier", + "src": "3769:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "3751:17:74", + "nodeType": "YulIdentifier", + "src": "3751:17:74" + }, + "nativeSrc": "3751:24:74", + "nodeType": "YulFunctionCall", + "src": "3751:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3740:7:74", + "nodeType": "YulIdentifier", + "src": "3740:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "3685:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3712:5:74", + "nodeType": "YulTypedName", + "src": "3712:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3722:7:74", + "nodeType": "YulTypedName", + "src": "3722:7:74", + "type": "" + } + ], + "src": "3685:96:74" + }, + { + "body": { + "nativeSrc": "3852:53:74", + "nodeType": "YulBlock", + "src": "3852:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3869:3:74", + "nodeType": "YulIdentifier", + "src": "3869:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3892:5:74", + "nodeType": "YulIdentifier", + "src": "3892:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "3874:17:74", + "nodeType": "YulIdentifier", + "src": "3874:17:74" + }, + "nativeSrc": "3874:24:74", + "nodeType": "YulFunctionCall", + "src": "3874:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3862:6:74", + "nodeType": "YulIdentifier", + "src": "3862:6:74" + }, + "nativeSrc": "3862:37:74", + "nodeType": "YulFunctionCall", + "src": "3862:37:74" + }, + "nativeSrc": "3862:37:74", + "nodeType": "YulExpressionStatement", + "src": "3862:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "3787:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3840:5:74", + "nodeType": "YulTypedName", + "src": "3840:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3847:3:74", + "nodeType": "YulTypedName", + "src": "3847:3:74", + "type": "" + } + ], + "src": "3787:118:74" + }, + { + "body": { + "nativeSrc": "4009:124:74", + "nodeType": "YulBlock", + "src": "4009:124:74", + "statements": [ + { + "nativeSrc": "4019:26:74", + "nodeType": "YulAssignment", + "src": "4019:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4031:9:74", + "nodeType": "YulIdentifier", + "src": "4031:9:74" + }, + { + "kind": "number", + "nativeSrc": "4042:2:74", + "nodeType": "YulLiteral", + "src": "4042:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4027:3:74", + "nodeType": "YulIdentifier", + "src": "4027:3:74" + }, + "nativeSrc": "4027:18:74", + "nodeType": "YulFunctionCall", + "src": "4027:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4019:4:74", + "nodeType": "YulIdentifier", + "src": "4019:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4099:6:74", + "nodeType": "YulIdentifier", + "src": "4099:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4112:9:74", + "nodeType": "YulIdentifier", + "src": "4112:9:74" + }, + { + "kind": "number", + "nativeSrc": "4123:1:74", + "nodeType": "YulLiteral", + "src": "4123:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4108:3:74", + "nodeType": "YulIdentifier", + "src": "4108:3:74" + }, + "nativeSrc": "4108:17:74", + "nodeType": "YulFunctionCall", + "src": "4108:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4055:43:74", + "nodeType": "YulIdentifier", + "src": "4055:43:74" + }, + "nativeSrc": "4055:71:74", + "nodeType": "YulFunctionCall", + "src": "4055:71:74" + }, + "nativeSrc": "4055:71:74", + "nodeType": "YulExpressionStatement", + "src": "4055:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "3911:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3981:9:74", + "nodeType": "YulTypedName", + "src": "3981:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3993:6:74", + "nodeType": "YulTypedName", + "src": "3993:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4004:4:74", + "nodeType": "YulTypedName", + "src": "4004:4:74", + "type": "" + } + ], + "src": "3911:222:74" + }, + { + "body": { + "nativeSrc": "4182:79:74", + "nodeType": "YulBlock", + "src": "4182:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4239:16:74", + "nodeType": "YulBlock", + "src": "4239:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4248:1:74", + "nodeType": "YulLiteral", + "src": "4248:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4251:1:74", + "nodeType": "YulLiteral", + "src": "4251:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4241:6:74", + "nodeType": "YulIdentifier", + "src": "4241:6:74" + }, + "nativeSrc": "4241:12:74", + "nodeType": "YulFunctionCall", + "src": "4241:12:74" + }, + "nativeSrc": "4241:12:74", + "nodeType": "YulExpressionStatement", + "src": "4241:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4205:5:74", + "nodeType": "YulIdentifier", + "src": "4205:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4230:5:74", + "nodeType": "YulIdentifier", + "src": "4230:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4212:17:74", + "nodeType": "YulIdentifier", + "src": "4212:17:74" + }, + "nativeSrc": "4212:24:74", + "nodeType": "YulFunctionCall", + "src": "4212:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4202:2:74", + "nodeType": "YulIdentifier", + "src": "4202:2:74" + }, + "nativeSrc": "4202:35:74", + "nodeType": "YulFunctionCall", + "src": "4202:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4195:6:74", + "nodeType": "YulIdentifier", + "src": "4195:6:74" + }, + "nativeSrc": "4195:43:74", + "nodeType": "YulFunctionCall", + "src": "4195:43:74" + }, + "nativeSrc": "4192:63:74", + "nodeType": "YulIf", + "src": "4192:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "4139:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4175:5:74", + "nodeType": "YulTypedName", + "src": "4175:5:74", + "type": "" + } + ], + "src": "4139:122:74" + }, + { + "body": { + "nativeSrc": "4319:87:74", + "nodeType": "YulBlock", + "src": "4319:87:74", + "statements": [ + { + "nativeSrc": "4329:29:74", + "nodeType": "YulAssignment", + "src": "4329:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4351:6:74", + "nodeType": "YulIdentifier", + "src": "4351:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4338:12:74", + "nodeType": "YulIdentifier", + "src": "4338:12:74" + }, + "nativeSrc": "4338:20:74", + "nodeType": "YulFunctionCall", + "src": "4338:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4329:5:74", + "nodeType": "YulIdentifier", + "src": "4329:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4394:5:74", + "nodeType": "YulIdentifier", + "src": "4394:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "4367:26:74", + "nodeType": "YulIdentifier", + "src": "4367:26:74" + }, + "nativeSrc": "4367:33:74", + "nodeType": "YulFunctionCall", + "src": "4367:33:74" + }, + "nativeSrc": "4367:33:74", + "nodeType": "YulExpressionStatement", + "src": "4367:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "4267:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4297:6:74", + "nodeType": "YulTypedName", + "src": "4297:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4305:3:74", + "nodeType": "YulTypedName", + "src": "4305:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4313:5:74", + "nodeType": "YulTypedName", + "src": "4313:5:74", + "type": "" + } + ], + "src": "4267:139:74" + }, + { + "body": { + "nativeSrc": "4495:391:74", + "nodeType": "YulBlock", + "src": "4495:391:74", + "statements": [ + { + "body": { + "nativeSrc": "4541:83:74", + "nodeType": "YulBlock", + "src": "4541:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4543:77:74", + "nodeType": "YulIdentifier", + "src": "4543:77:74" + }, + "nativeSrc": "4543:79:74", + "nodeType": "YulFunctionCall", + "src": "4543:79:74" + }, + "nativeSrc": "4543:79:74", + "nodeType": "YulExpressionStatement", + "src": "4543:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4516:7:74", + "nodeType": "YulIdentifier", + "src": "4516:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4525:9:74", + "nodeType": "YulIdentifier", + "src": "4525:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4512:3:74", + "nodeType": "YulIdentifier", + "src": "4512:3:74" + }, + "nativeSrc": "4512:23:74", + "nodeType": "YulFunctionCall", + "src": "4512:23:74" + }, + { + "kind": "number", + "nativeSrc": "4537:2:74", + "nodeType": "YulLiteral", + "src": "4537:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4508:3:74", + "nodeType": "YulIdentifier", + "src": "4508:3:74" + }, + "nativeSrc": "4508:32:74", + "nodeType": "YulFunctionCall", + "src": "4508:32:74" + }, + "nativeSrc": "4505:119:74", + "nodeType": "YulIf", + "src": "4505:119:74" + }, + { + "nativeSrc": "4634:117:74", + "nodeType": "YulBlock", + "src": "4634:117:74", + "statements": [ + { + "nativeSrc": "4649:15:74", + "nodeType": "YulVariableDeclaration", + "src": "4649:15:74", + "value": { + "kind": "number", + "nativeSrc": "4663:1:74", + "nodeType": "YulLiteral", + "src": "4663:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4653:6:74", + "nodeType": "YulTypedName", + "src": "4653:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4678:63:74", + "nodeType": "YulAssignment", + "src": "4678:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4713:9:74", + "nodeType": "YulIdentifier", + "src": "4713:9:74" + }, + { + "name": "offset", + "nativeSrc": "4724:6:74", + "nodeType": "YulIdentifier", + "src": "4724:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4709:3:74", + "nodeType": "YulIdentifier", + "src": "4709:3:74" + }, + "nativeSrc": "4709:22:74", + "nodeType": "YulFunctionCall", + "src": "4709:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4733:7:74", + "nodeType": "YulIdentifier", + "src": "4733:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "4688:20:74", + "nodeType": "YulIdentifier", + "src": "4688:20:74" + }, + "nativeSrc": "4688:53:74", + "nodeType": "YulFunctionCall", + "src": "4688:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4678:6:74", + "nodeType": "YulIdentifier", + "src": "4678:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "4761:118:74", + "nodeType": "YulBlock", + "src": "4761:118:74", + "statements": [ + { + "nativeSrc": "4776:16:74", + "nodeType": "YulVariableDeclaration", + "src": "4776:16:74", + "value": { + "kind": "number", + "nativeSrc": "4790:2:74", + "nodeType": "YulLiteral", + "src": "4790:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "4780:6:74", + "nodeType": "YulTypedName", + "src": "4780:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4806:63:74", + "nodeType": "YulAssignment", + "src": "4806:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4841:9:74", + "nodeType": "YulIdentifier", + "src": "4841:9:74" + }, + { + "name": "offset", + "nativeSrc": "4852:6:74", + "nodeType": "YulIdentifier", + "src": "4852:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4837:3:74", + "nodeType": "YulIdentifier", + "src": "4837:3:74" + }, + "nativeSrc": "4837:22:74", + "nodeType": "YulFunctionCall", + "src": "4837:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4861:7:74", + "nodeType": "YulIdentifier", + "src": "4861:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "4816:20:74", + "nodeType": "YulIdentifier", + "src": "4816:20:74" + }, + "nativeSrc": "4816:53:74", + "nodeType": "YulFunctionCall", + "src": "4816:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "4806:6:74", + "nodeType": "YulIdentifier", + "src": "4806:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nativeSrc": "4412:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4457:9:74", + "nodeType": "YulTypedName", + "src": "4457:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4468:7:74", + "nodeType": "YulTypedName", + "src": "4468:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4480:6:74", + "nodeType": "YulTypedName", + "src": "4480:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4488:6:74", + "nodeType": "YulTypedName", + "src": "4488:6:74", + "type": "" + } + ], + "src": "4412:474:74" + }, + { + "body": { + "nativeSrc": "4992:519:74", + "nodeType": "YulBlock", + "src": "4992:519:74", + "statements": [ + { + "body": { + "nativeSrc": "5038:83:74", + "nodeType": "YulBlock", + "src": "5038:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5040:77:74", + "nodeType": "YulIdentifier", + "src": "5040:77:74" + }, + "nativeSrc": "5040:79:74", + "nodeType": "YulFunctionCall", + "src": "5040:79:74" + }, + "nativeSrc": "5040:79:74", + "nodeType": "YulExpressionStatement", + "src": "5040:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5013:7:74", + "nodeType": "YulIdentifier", + "src": "5013:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5022:9:74", + "nodeType": "YulIdentifier", + "src": "5022:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5009:3:74", + "nodeType": "YulIdentifier", + "src": "5009:3:74" + }, + "nativeSrc": "5009:23:74", + "nodeType": "YulFunctionCall", + "src": "5009:23:74" + }, + { + "kind": "number", + "nativeSrc": "5034:2:74", + "nodeType": "YulLiteral", + "src": "5034:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5005:3:74", + "nodeType": "YulIdentifier", + "src": "5005:3:74" + }, + "nativeSrc": "5005:32:74", + "nodeType": "YulFunctionCall", + "src": "5005:32:74" + }, + "nativeSrc": "5002:119:74", + "nodeType": "YulIf", + "src": "5002:119:74" + }, + { + "nativeSrc": "5131:117:74", + "nodeType": "YulBlock", + "src": "5131:117:74", + "statements": [ + { + "nativeSrc": "5146:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5146:15:74", + "value": { + "kind": "number", + "nativeSrc": "5160:1:74", + "nodeType": "YulLiteral", + "src": "5160:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5150:6:74", + "nodeType": "YulTypedName", + "src": "5150:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5175:63:74", + "nodeType": "YulAssignment", + "src": "5175:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5210:9:74", + "nodeType": "YulIdentifier", + "src": "5210:9:74" + }, + { + "name": "offset", + "nativeSrc": "5221:6:74", + "nodeType": "YulIdentifier", + "src": "5221:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5206:3:74", + "nodeType": "YulIdentifier", + "src": "5206:3:74" + }, + "nativeSrc": "5206:22:74", + "nodeType": "YulFunctionCall", + "src": "5206:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5230:7:74", + "nodeType": "YulIdentifier", + "src": "5230:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5185:20:74", + "nodeType": "YulIdentifier", + "src": "5185:20:74" + }, + "nativeSrc": "5185:53:74", + "nodeType": "YulFunctionCall", + "src": "5185:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5175:6:74", + "nodeType": "YulIdentifier", + "src": "5175:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5258:118:74", + "nodeType": "YulBlock", + "src": "5258:118:74", + "statements": [ + { + "nativeSrc": "5273:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5273:16:74", + "value": { + "kind": "number", + "nativeSrc": "5287:2:74", + "nodeType": "YulLiteral", + "src": "5287:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5277:6:74", + "nodeType": "YulTypedName", + "src": "5277:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5303:63:74", + "nodeType": "YulAssignment", + "src": "5303:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5338:9:74", + "nodeType": "YulIdentifier", + "src": "5338:9:74" + }, + { + "name": "offset", + "nativeSrc": "5349:6:74", + "nodeType": "YulIdentifier", + "src": "5349:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5334:3:74", + "nodeType": "YulIdentifier", + "src": "5334:3:74" + }, + "nativeSrc": "5334:22:74", + "nodeType": "YulFunctionCall", + "src": "5334:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5358:7:74", + "nodeType": "YulIdentifier", + "src": "5358:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5313:20:74", + "nodeType": "YulIdentifier", + "src": "5313:20:74" + }, + "nativeSrc": "5313:53:74", + "nodeType": "YulFunctionCall", + "src": "5313:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5303:6:74", + "nodeType": "YulIdentifier", + "src": "5303:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5386:118:74", + "nodeType": "YulBlock", + "src": "5386:118:74", + "statements": [ + { + "nativeSrc": "5401:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5401:16:74", + "value": { + "kind": "number", + "nativeSrc": "5415:2:74", + "nodeType": "YulLiteral", + "src": "5415:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5405:6:74", + "nodeType": "YulTypedName", + "src": "5405:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5431:63:74", + "nodeType": "YulAssignment", + "src": "5431:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5466:9:74", + "nodeType": "YulIdentifier", + "src": "5466:9:74" + }, + { + "name": "offset", + "nativeSrc": "5477:6:74", + "nodeType": "YulIdentifier", + "src": "5477:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5462:3:74", + "nodeType": "YulIdentifier", + "src": "5462:3:74" + }, + "nativeSrc": "5462:22:74", + "nodeType": "YulFunctionCall", + "src": "5462:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5486:7:74", + "nodeType": "YulIdentifier", + "src": "5486:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "5441:20:74", + "nodeType": "YulIdentifier", + "src": "5441:20:74" + }, + "nativeSrc": "5441:53:74", + "nodeType": "YulFunctionCall", + "src": "5441:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "5431:6:74", + "nodeType": "YulIdentifier", + "src": "5431:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nativeSrc": "4892:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4946:9:74", + "nodeType": "YulTypedName", + "src": "4946:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4957:7:74", + "nodeType": "YulTypedName", + "src": "4957:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4969:6:74", + "nodeType": "YulTypedName", + "src": "4969:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4977:6:74", + "nodeType": "YulTypedName", + "src": "4977:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "4985:6:74", + "nodeType": "YulTypedName", + "src": "4985:6:74", + "type": "" + } + ], + "src": "4892:619:74" + }, + { + "body": { + "nativeSrc": "5583:263:74", + "nodeType": "YulBlock", + "src": "5583:263:74", + "statements": [ + { + "body": { + "nativeSrc": "5629:83:74", + "nodeType": "YulBlock", + "src": "5629:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5631:77:74", + "nodeType": "YulIdentifier", + "src": "5631:77:74" + }, + "nativeSrc": "5631:79:74", + "nodeType": "YulFunctionCall", + "src": "5631:79:74" + }, + "nativeSrc": "5631:79:74", + "nodeType": "YulExpressionStatement", + "src": "5631:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5604:7:74", + "nodeType": "YulIdentifier", + "src": "5604:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5613:9:74", + "nodeType": "YulIdentifier", + "src": "5613:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5600:3:74", + "nodeType": "YulIdentifier", + "src": "5600:3:74" + }, + "nativeSrc": "5600:23:74", + "nodeType": "YulFunctionCall", + "src": "5600:23:74" + }, + { + "kind": "number", + "nativeSrc": "5625:2:74", + "nodeType": "YulLiteral", + "src": "5625:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5596:3:74", + "nodeType": "YulIdentifier", + "src": "5596:3:74" + }, + "nativeSrc": "5596:32:74", + "nodeType": "YulFunctionCall", + "src": "5596:32:74" + }, + "nativeSrc": "5593:119:74", + "nodeType": "YulIf", + "src": "5593:119:74" + }, + { + "nativeSrc": "5722:117:74", + "nodeType": "YulBlock", + "src": "5722:117:74", + "statements": [ + { + "nativeSrc": "5737:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5737:15:74", + "value": { + "kind": "number", + "nativeSrc": "5751:1:74", + "nodeType": "YulLiteral", + "src": "5751:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5741:6:74", + "nodeType": "YulTypedName", + "src": "5741:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5766:63:74", + "nodeType": "YulAssignment", + "src": "5766:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5801:9:74", + "nodeType": "YulIdentifier", + "src": "5801:9:74" + }, + { + "name": "offset", + "nativeSrc": "5812:6:74", + "nodeType": "YulIdentifier", + "src": "5812:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5797:3:74", + "nodeType": "YulIdentifier", + "src": "5797:3:74" + }, + "nativeSrc": "5797:22:74", + "nodeType": "YulFunctionCall", + "src": "5797:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5821:7:74", + "nodeType": "YulIdentifier", + "src": "5821:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5776:20:74", + "nodeType": "YulIdentifier", + "src": "5776:20:74" + }, + "nativeSrc": "5776:53:74", + "nodeType": "YulFunctionCall", + "src": "5776:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5766:6:74", + "nodeType": "YulIdentifier", + "src": "5766:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "5517:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5553:9:74", + "nodeType": "YulTypedName", + "src": "5553:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5564:7:74", + "nodeType": "YulTypedName", + "src": "5564:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5576:6:74", + "nodeType": "YulTypedName", + "src": "5576:6:74", + "type": "" + } + ], + "src": "5517:329:74" + }, + { + "body": { + "nativeSrc": "5917:53:74", + "nodeType": "YulBlock", + "src": "5917:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5934:3:74", + "nodeType": "YulIdentifier", + "src": "5934:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5957:5:74", + "nodeType": "YulIdentifier", + "src": "5957:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5939:17:74", + "nodeType": "YulIdentifier", + "src": "5939:17:74" + }, + "nativeSrc": "5939:24:74", + "nodeType": "YulFunctionCall", + "src": "5939:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5927:6:74", + "nodeType": "YulIdentifier", + "src": "5927:6:74" + }, + "nativeSrc": "5927:37:74", + "nodeType": "YulFunctionCall", + "src": "5927:37:74" + }, + "nativeSrc": "5927:37:74", + "nodeType": "YulExpressionStatement", + "src": "5927:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "5852:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "5905:5:74", + "nodeType": "YulTypedName", + "src": "5905:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "5912:3:74", + "nodeType": "YulTypedName", + "src": "5912:3:74", + "type": "" + } + ], + "src": "5852:118:74" + }, + { + "body": { + "nativeSrc": "6074:124:74", + "nodeType": "YulBlock", + "src": "6074:124:74", + "statements": [ + { + "nativeSrc": "6084:26:74", + "nodeType": "YulAssignment", + "src": "6084:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6096:9:74", + "nodeType": "YulIdentifier", + "src": "6096:9:74" + }, + { + "kind": "number", + "nativeSrc": "6107:2:74", + "nodeType": "YulLiteral", + "src": "6107:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6092:3:74", + "nodeType": "YulIdentifier", + "src": "6092:3:74" + }, + "nativeSrc": "6092:18:74", + "nodeType": "YulFunctionCall", + "src": "6092:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6084:4:74", + "nodeType": "YulIdentifier", + "src": "6084:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "6164:6:74", + "nodeType": "YulIdentifier", + "src": "6164:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6177:9:74", + "nodeType": "YulIdentifier", + "src": "6177:9:74" + }, + { + "kind": "number", + "nativeSrc": "6188:1:74", + "nodeType": "YulLiteral", + "src": "6188:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6173:3:74", + "nodeType": "YulIdentifier", + "src": "6173:3:74" + }, + "nativeSrc": "6173:17:74", + "nodeType": "YulFunctionCall", + "src": "6173:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "6120:43:74", + "nodeType": "YulIdentifier", + "src": "6120:43:74" + }, + "nativeSrc": "6120:71:74", + "nodeType": "YulFunctionCall", + "src": "6120:71:74" + }, + "nativeSrc": "6120:71:74", + "nodeType": "YulExpressionStatement", + "src": "6120:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "5976:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6046:9:74", + "nodeType": "YulTypedName", + "src": "6046:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "6058:6:74", + "nodeType": "YulTypedName", + "src": "6058:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6069:4:74", + "nodeType": "YulTypedName", + "src": "6069:4:74", + "type": "" + } + ], + "src": "5976:222:74" + }, + { + "body": { + "nativeSrc": "6244:76:74", + "nodeType": "YulBlock", + "src": "6244:76:74", + "statements": [ + { + "body": { + "nativeSrc": "6298:16:74", + "nodeType": "YulBlock", + "src": "6298:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6307:1:74", + "nodeType": "YulLiteral", + "src": "6307:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6310:1:74", + "nodeType": "YulLiteral", + "src": "6310:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6300:6:74", + "nodeType": "YulIdentifier", + "src": "6300:6:74" + }, + "nativeSrc": "6300:12:74", + "nodeType": "YulFunctionCall", + "src": "6300:12:74" + }, + "nativeSrc": "6300:12:74", + "nodeType": "YulExpressionStatement", + "src": "6300:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6267:5:74", + "nodeType": "YulIdentifier", + "src": "6267:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6289:5:74", + "nodeType": "YulIdentifier", + "src": "6289:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "6274:14:74", + "nodeType": "YulIdentifier", + "src": "6274:14:74" + }, + "nativeSrc": "6274:21:74", + "nodeType": "YulFunctionCall", + "src": "6274:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6264:2:74", + "nodeType": "YulIdentifier", + "src": "6264:2:74" + }, + "nativeSrc": "6264:32:74", + "nodeType": "YulFunctionCall", + "src": "6264:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6257:6:74", + "nodeType": "YulIdentifier", + "src": "6257:6:74" + }, + "nativeSrc": "6257:40:74", + "nodeType": "YulFunctionCall", + "src": "6257:40:74" + }, + "nativeSrc": "6254:60:74", + "nodeType": "YulIf", + "src": "6254:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "6204:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6237:5:74", + "nodeType": "YulTypedName", + "src": "6237:5:74", + "type": "" + } + ], + "src": "6204:116:74" + }, + { + "body": { + "nativeSrc": "6375:84:74", + "nodeType": "YulBlock", + "src": "6375:84:74", + "statements": [ + { + "nativeSrc": "6385:29:74", + "nodeType": "YulAssignment", + "src": "6385:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6407:6:74", + "nodeType": "YulIdentifier", + "src": "6407:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6394:12:74", + "nodeType": "YulIdentifier", + "src": "6394:12:74" + }, + "nativeSrc": "6394:20:74", + "nodeType": "YulFunctionCall", + "src": "6394:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6385:5:74", + "nodeType": "YulIdentifier", + "src": "6385:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6447:5:74", + "nodeType": "YulIdentifier", + "src": "6447:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "6423:23:74", + "nodeType": "YulIdentifier", + "src": "6423:23:74" + }, + "nativeSrc": "6423:30:74", + "nodeType": "YulFunctionCall", + "src": "6423:30:74" + }, + "nativeSrc": "6423:30:74", + "nodeType": "YulExpressionStatement", + "src": "6423:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "6326:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6353:6:74", + "nodeType": "YulTypedName", + "src": "6353:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6361:3:74", + "nodeType": "YulTypedName", + "src": "6361:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6369:5:74", + "nodeType": "YulTypedName", + "src": "6369:5:74", + "type": "" + } + ], + "src": "6326:133:74" + }, + { + "body": { + "nativeSrc": "6545:388:74", + "nodeType": "YulBlock", + "src": "6545:388:74", + "statements": [ + { + "body": { + "nativeSrc": "6591:83:74", + "nodeType": "YulBlock", + "src": "6591:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6593:77:74", + "nodeType": "YulIdentifier", + "src": "6593:77:74" + }, + "nativeSrc": "6593:79:74", + "nodeType": "YulFunctionCall", + "src": "6593:79:74" + }, + "nativeSrc": "6593:79:74", + "nodeType": "YulExpressionStatement", + "src": "6593:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6566:7:74", + "nodeType": "YulIdentifier", + "src": "6566:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6575:9:74", + "nodeType": "YulIdentifier", + "src": "6575:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6562:3:74", + "nodeType": "YulIdentifier", + "src": "6562:3:74" + }, + "nativeSrc": "6562:23:74", + "nodeType": "YulFunctionCall", + "src": "6562:23:74" + }, + { + "kind": "number", + "nativeSrc": "6587:2:74", + "nodeType": "YulLiteral", + "src": "6587:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6558:3:74", + "nodeType": "YulIdentifier", + "src": "6558:3:74" + }, + "nativeSrc": "6558:32:74", + "nodeType": "YulFunctionCall", + "src": "6558:32:74" + }, + "nativeSrc": "6555:119:74", + "nodeType": "YulIf", + "src": "6555:119:74" + }, + { + "nativeSrc": "6684:117:74", + "nodeType": "YulBlock", + "src": "6684:117:74", + "statements": [ + { + "nativeSrc": "6699:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6699:15:74", + "value": { + "kind": "number", + "nativeSrc": "6713:1:74", + "nodeType": "YulLiteral", + "src": "6713:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6703:6:74", + "nodeType": "YulTypedName", + "src": "6703:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6728:63:74", + "nodeType": "YulAssignment", + "src": "6728:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6763:9:74", + "nodeType": "YulIdentifier", + "src": "6763:9:74" + }, + { + "name": "offset", + "nativeSrc": "6774:6:74", + "nodeType": "YulIdentifier", + "src": "6774:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6759:3:74", + "nodeType": "YulIdentifier", + "src": "6759:3:74" + }, + "nativeSrc": "6759:22:74", + "nodeType": "YulFunctionCall", + "src": "6759:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6783:7:74", + "nodeType": "YulIdentifier", + "src": "6783:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6738:20:74", + "nodeType": "YulIdentifier", + "src": "6738:20:74" + }, + "nativeSrc": "6738:53:74", + "nodeType": "YulFunctionCall", + "src": "6738:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6728:6:74", + "nodeType": "YulIdentifier", + "src": "6728:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6811:115:74", + "nodeType": "YulBlock", + "src": "6811:115:74", + "statements": [ + { + "nativeSrc": "6826:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6826:16:74", + "value": { + "kind": "number", + "nativeSrc": "6840:2:74", + "nodeType": "YulLiteral", + "src": "6840:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6830:6:74", + "nodeType": "YulTypedName", + "src": "6830:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6856:60:74", + "nodeType": "YulAssignment", + "src": "6856:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6888:9:74", + "nodeType": "YulIdentifier", + "src": "6888:9:74" + }, + { + "name": "offset", + "nativeSrc": "6899:6:74", + "nodeType": "YulIdentifier", + "src": "6899:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6884:3:74", + "nodeType": "YulIdentifier", + "src": "6884:3:74" + }, + "nativeSrc": "6884:22:74", + "nodeType": "YulFunctionCall", + "src": "6884:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6908:7:74", + "nodeType": "YulIdentifier", + "src": "6908:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "6866:17:74", + "nodeType": "YulIdentifier", + "src": "6866:17:74" + }, + "nativeSrc": "6866:50:74", + "nodeType": "YulFunctionCall", + "src": "6866:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6856:6:74", + "nodeType": "YulIdentifier", + "src": "6856:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "6465:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6507:9:74", + "nodeType": "YulTypedName", + "src": "6507:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6518:7:74", + "nodeType": "YulTypedName", + "src": "6518:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6530:6:74", + "nodeType": "YulTypedName", + "src": "6530:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6538:6:74", + "nodeType": "YulTypedName", + "src": "6538:6:74", + "type": "" + } + ], + "src": "6465:468:74" + }, + { + "body": { + "nativeSrc": "7028:28:74", + "nodeType": "YulBlock", + "src": "7028:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7045:1:74", + "nodeType": "YulLiteral", + "src": "7045:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7048:1:74", + "nodeType": "YulLiteral", + "src": "7048:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7038:6:74", + "nodeType": "YulIdentifier", + "src": "7038:6:74" + }, + "nativeSrc": "7038:12:74", + "nodeType": "YulFunctionCall", + "src": "7038:12:74" + }, + "nativeSrc": "7038:12:74", + "nodeType": "YulExpressionStatement", + "src": "7038:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "6939:117:74", + "nodeType": "YulFunctionDefinition", + "src": "6939:117:74" + }, + { + "body": { + "nativeSrc": "7151:28:74", + "nodeType": "YulBlock", + "src": "7151:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7168:1:74", + "nodeType": "YulLiteral", + "src": "7168:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7171:1:74", + "nodeType": "YulLiteral", + "src": "7171:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7161:6:74", + "nodeType": "YulIdentifier", + "src": "7161:6:74" + }, + "nativeSrc": "7161:12:74", + "nodeType": "YulFunctionCall", + "src": "7161:12:74" + }, + "nativeSrc": "7161:12:74", + "nodeType": "YulExpressionStatement", + "src": "7161:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "7062:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7062:117:74" + }, + { + "body": { + "nativeSrc": "7213:152:74", + "nodeType": "YulBlock", + "src": "7213:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7230:1:74", + "nodeType": "YulLiteral", + "src": "7230:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7233:77:74", + "nodeType": "YulLiteral", + "src": "7233:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7223:6:74", + "nodeType": "YulIdentifier", + "src": "7223:6:74" + }, + "nativeSrc": "7223:88:74", + "nodeType": "YulFunctionCall", + "src": "7223:88:74" + }, + "nativeSrc": "7223:88:74", + "nodeType": "YulExpressionStatement", + "src": "7223:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7327:1:74", + "nodeType": "YulLiteral", + "src": "7327:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "7330:4:74", + "nodeType": "YulLiteral", + "src": "7330:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7320:6:74", + "nodeType": "YulIdentifier", + "src": "7320:6:74" + }, + "nativeSrc": "7320:15:74", + "nodeType": "YulFunctionCall", + "src": "7320:15:74" + }, + "nativeSrc": "7320:15:74", + "nodeType": "YulExpressionStatement", + "src": "7320:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7351:1:74", + "nodeType": "YulLiteral", + "src": "7351:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7354:4:74", + "nodeType": "YulLiteral", + "src": "7354:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7344:6:74", + "nodeType": "YulIdentifier", + "src": "7344:6:74" + }, + "nativeSrc": "7344:15:74", + "nodeType": "YulFunctionCall", + "src": "7344:15:74" + }, + "nativeSrc": "7344:15:74", + "nodeType": "YulExpressionStatement", + "src": "7344:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "7185:180:74", + "nodeType": "YulFunctionDefinition", + "src": "7185:180:74" + }, + { + "body": { + "nativeSrc": "7414:238:74", + "nodeType": "YulBlock", + "src": "7414:238:74", + "statements": [ + { + "nativeSrc": "7424:58:74", + "nodeType": "YulVariableDeclaration", + "src": "7424:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "7446:6:74", + "nodeType": "YulIdentifier", + "src": "7446:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "7476:4:74", + "nodeType": "YulIdentifier", + "src": "7476:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "7454:21:74", + "nodeType": "YulIdentifier", + "src": "7454:21:74" + }, + "nativeSrc": "7454:27:74", + "nodeType": "YulFunctionCall", + "src": "7454:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7442:3:74", + "nodeType": "YulIdentifier", + "src": "7442:3:74" + }, + "nativeSrc": "7442:40:74", + "nodeType": "YulFunctionCall", + "src": "7442:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "7428:10:74", + "nodeType": "YulTypedName", + "src": "7428:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7593:22:74", + "nodeType": "YulBlock", + "src": "7593:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7595:16:74", + "nodeType": "YulIdentifier", + "src": "7595:16:74" + }, + "nativeSrc": "7595:18:74", + "nodeType": "YulFunctionCall", + "src": "7595:18:74" + }, + "nativeSrc": "7595:18:74", + "nodeType": "YulExpressionStatement", + "src": "7595:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "7536:10:74", + "nodeType": "YulIdentifier", + "src": "7536:10:74" + }, + { + "kind": "number", + "nativeSrc": "7548:18:74", + "nodeType": "YulLiteral", + "src": "7548:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7533:2:74", + "nodeType": "YulIdentifier", + "src": "7533:2:74" + }, + "nativeSrc": "7533:34:74", + "nodeType": "YulFunctionCall", + "src": "7533:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "7572:10:74", + "nodeType": "YulIdentifier", + "src": "7572:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "7584:6:74", + "nodeType": "YulIdentifier", + "src": "7584:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7569:2:74", + "nodeType": "YulIdentifier", + "src": "7569:2:74" + }, + "nativeSrc": "7569:22:74", + "nodeType": "YulFunctionCall", + "src": "7569:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "7530:2:74", + "nodeType": "YulIdentifier", + "src": "7530:2:74" + }, + "nativeSrc": "7530:62:74", + "nodeType": "YulFunctionCall", + "src": "7530:62:74" + }, + "nativeSrc": "7527:88:74", + "nodeType": "YulIf", + "src": "7527:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7631:2:74", + "nodeType": "YulLiteral", + "src": "7631:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "7635:10:74", + "nodeType": "YulIdentifier", + "src": "7635:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7624:6:74", + "nodeType": "YulIdentifier", + "src": "7624:6:74" + }, + "nativeSrc": "7624:22:74", + "nodeType": "YulFunctionCall", + "src": "7624:22:74" + }, + "nativeSrc": "7624:22:74", + "nodeType": "YulExpressionStatement", + "src": "7624:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "7371:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "7400:6:74", + "nodeType": "YulTypedName", + "src": "7400:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "7408:4:74", + "nodeType": "YulTypedName", + "src": "7408:4:74", + "type": "" + } + ], + "src": "7371:281:74" + }, + { + "body": { + "nativeSrc": "7699:88:74", + "nodeType": "YulBlock", + "src": "7699:88:74", + "statements": [ + { + "nativeSrc": "7709:30:74", + "nodeType": "YulAssignment", + "src": "7709:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "7719:18:74", + "nodeType": "YulIdentifier", + "src": "7719:18:74" + }, + "nativeSrc": "7719:20:74", + "nodeType": "YulFunctionCall", + "src": "7719:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "7709:6:74", + "nodeType": "YulIdentifier", + "src": "7709:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "7768:6:74", + "nodeType": "YulIdentifier", + "src": "7768:6:74" + }, + { + "name": "size", + "nativeSrc": "7776:4:74", + "nodeType": "YulIdentifier", + "src": "7776:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "7748:19:74", + "nodeType": "YulIdentifier", + "src": "7748:19:74" + }, + "nativeSrc": "7748:33:74", + "nodeType": "YulFunctionCall", + "src": "7748:33:74" + }, + "nativeSrc": "7748:33:74", + "nodeType": "YulExpressionStatement", + "src": "7748:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "7658:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "7683:4:74", + "nodeType": "YulTypedName", + "src": "7683:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "7692:6:74", + "nodeType": "YulTypedName", + "src": "7692:6:74", + "type": "" + } + ], + "src": "7658:129:74" + }, + { + "body": { + "nativeSrc": "7859:241:74", + "nodeType": "YulBlock", + "src": "7859:241:74", + "statements": [ + { + "body": { + "nativeSrc": "7964:22:74", + "nodeType": "YulBlock", + "src": "7964:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7966:16:74", + "nodeType": "YulIdentifier", + "src": "7966:16:74" + }, + "nativeSrc": "7966:18:74", + "nodeType": "YulFunctionCall", + "src": "7966:18:74" + }, + "nativeSrc": "7966:18:74", + "nodeType": "YulExpressionStatement", + "src": "7966:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7936:6:74", + "nodeType": "YulIdentifier", + "src": "7936:6:74" + }, + { + "kind": "number", + "nativeSrc": "7944:18:74", + "nodeType": "YulLiteral", + "src": "7944:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7933:2:74", + "nodeType": "YulIdentifier", + "src": "7933:2:74" + }, + "nativeSrc": "7933:30:74", + "nodeType": "YulFunctionCall", + "src": "7933:30:74" + }, + "nativeSrc": "7930:56:74", + "nodeType": "YulIf", + "src": "7930:56:74" + }, + { + "nativeSrc": "7996:37:74", + "nodeType": "YulAssignment", + "src": "7996:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "8026:6:74", + "nodeType": "YulIdentifier", + "src": "8026:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "8004:21:74", + "nodeType": "YulIdentifier", + "src": "8004:21:74" + }, + "nativeSrc": "8004:29:74", + "nodeType": "YulFunctionCall", + "src": "8004:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7996:4:74", + "nodeType": "YulIdentifier", + "src": "7996:4:74" + } + ] + }, + { + "nativeSrc": "8070:23:74", + "nodeType": "YulAssignment", + "src": "8070:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "8082:4:74", + "nodeType": "YulIdentifier", + "src": "8082:4:74" + }, + { + "kind": "number", + "nativeSrc": "8088:4:74", + "nodeType": "YulLiteral", + "src": "8088:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8078:3:74", + "nodeType": "YulIdentifier", + "src": "8078:3:74" + }, + "nativeSrc": "8078:15:74", + "nodeType": "YulFunctionCall", + "src": "8078:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "8070:4:74", + "nodeType": "YulIdentifier", + "src": "8070:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "7793:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "7843:6:74", + "nodeType": "YulTypedName", + "src": "7843:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "7854:4:74", + "nodeType": "YulTypedName", + "src": "7854:4:74", + "type": "" + } + ], + "src": "7793:307:74" + }, + { + "body": { + "nativeSrc": "8170:84:74", + "nodeType": "YulBlock", + "src": "8170:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "8194:3:74", + "nodeType": "YulIdentifier", + "src": "8194:3:74" + }, + { + "name": "src", + "nativeSrc": "8199:3:74", + "nodeType": "YulIdentifier", + "src": "8199:3:74" + }, + { + "name": "length", + "nativeSrc": "8204:6:74", + "nodeType": "YulIdentifier", + "src": "8204:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "8181:12:74", + "nodeType": "YulIdentifier", + "src": "8181:12:74" + }, + "nativeSrc": "8181:30:74", + "nodeType": "YulFunctionCall", + "src": "8181:30:74" + }, + "nativeSrc": "8181:30:74", + "nodeType": "YulExpressionStatement", + "src": "8181:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "8231:3:74", + "nodeType": "YulIdentifier", + "src": "8231:3:74" + }, + { + "name": "length", + "nativeSrc": "8236:6:74", + "nodeType": "YulIdentifier", + "src": "8236:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8227:3:74", + "nodeType": "YulIdentifier", + "src": "8227:3:74" + }, + "nativeSrc": "8227:16:74", + "nodeType": "YulFunctionCall", + "src": "8227:16:74" + }, + { + "kind": "number", + "nativeSrc": "8245:1:74", + "nodeType": "YulLiteral", + "src": "8245:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8220:6:74", + "nodeType": "YulIdentifier", + "src": "8220:6:74" + }, + "nativeSrc": "8220:27:74", + "nodeType": "YulFunctionCall", + "src": "8220:27:74" + }, + "nativeSrc": "8220:27:74", + "nodeType": "YulExpressionStatement", + "src": "8220:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "8106:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "8152:3:74", + "nodeType": "YulTypedName", + "src": "8152:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "8157:3:74", + "nodeType": "YulTypedName", + "src": "8157:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8162:6:74", + "nodeType": "YulTypedName", + "src": "8162:6:74", + "type": "" + } + ], + "src": "8106:148:74" + }, + { + "body": { + "nativeSrc": "8343:340:74", + "nodeType": "YulBlock", + "src": "8343:340:74", + "statements": [ + { + "nativeSrc": "8353:74:74", + "nodeType": "YulAssignment", + "src": "8353:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "8419:6:74", + "nodeType": "YulIdentifier", + "src": "8419:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "8378:40:74", + "nodeType": "YulIdentifier", + "src": "8378:40:74" + }, + "nativeSrc": "8378:48:74", + "nodeType": "YulFunctionCall", + "src": "8378:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "8362:15:74", + "nodeType": "YulIdentifier", + "src": "8362:15:74" + }, + "nativeSrc": "8362:65:74", + "nodeType": "YulFunctionCall", + "src": "8362:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8353:5:74", + "nodeType": "YulIdentifier", + "src": "8353:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8443:5:74", + "nodeType": "YulIdentifier", + "src": "8443:5:74" + }, + { + "name": "length", + "nativeSrc": "8450:6:74", + "nodeType": "YulIdentifier", + "src": "8450:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8436:6:74", + "nodeType": "YulIdentifier", + "src": "8436:6:74" + }, + "nativeSrc": "8436:21:74", + "nodeType": "YulFunctionCall", + "src": "8436:21:74" + }, + "nativeSrc": "8436:21:74", + "nodeType": "YulExpressionStatement", + "src": "8436:21:74" + }, + { + "nativeSrc": "8466:27:74", + "nodeType": "YulVariableDeclaration", + "src": "8466:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8481:5:74", + "nodeType": "YulIdentifier", + "src": "8481:5:74" + }, + { + "kind": "number", + "nativeSrc": "8488:4:74", + "nodeType": "YulLiteral", + "src": "8488:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8477:3:74", + "nodeType": "YulIdentifier", + "src": "8477:3:74" + }, + "nativeSrc": "8477:16:74", + "nodeType": "YulFunctionCall", + "src": "8477:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "8470:3:74", + "nodeType": "YulTypedName", + "src": "8470:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8531:83:74", + "nodeType": "YulBlock", + "src": "8531:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "8533:77:74", + "nodeType": "YulIdentifier", + "src": "8533:77:74" + }, + "nativeSrc": "8533:79:74", + "nodeType": "YulFunctionCall", + "src": "8533:79:74" + }, + "nativeSrc": "8533:79:74", + "nodeType": "YulExpressionStatement", + "src": "8533:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8512:3:74", + "nodeType": "YulIdentifier", + "src": "8512:3:74" + }, + { + "name": "length", + "nativeSrc": "8517:6:74", + "nodeType": "YulIdentifier", + "src": "8517:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8508:3:74", + "nodeType": "YulIdentifier", + "src": "8508:3:74" + }, + "nativeSrc": "8508:16:74", + "nodeType": "YulFunctionCall", + "src": "8508:16:74" + }, + { + "name": "end", + "nativeSrc": "8526:3:74", + "nodeType": "YulIdentifier", + "src": "8526:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8505:2:74", + "nodeType": "YulIdentifier", + "src": "8505:2:74" + }, + "nativeSrc": "8505:25:74", + "nodeType": "YulFunctionCall", + "src": "8505:25:74" + }, + "nativeSrc": "8502:112:74", + "nodeType": "YulIf", + "src": "8502:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "8660:3:74", + "nodeType": "YulIdentifier", + "src": "8660:3:74" + }, + { + "name": "dst", + "nativeSrc": "8665:3:74", + "nodeType": "YulIdentifier", + "src": "8665:3:74" + }, + { + "name": "length", + "nativeSrc": "8670:6:74", + "nodeType": "YulIdentifier", + "src": "8670:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "8623:36:74", + "nodeType": "YulIdentifier", + "src": "8623:36:74" + }, + "nativeSrc": "8623:54:74", + "nodeType": "YulFunctionCall", + "src": "8623:54:74" + }, + "nativeSrc": "8623:54:74", + "nodeType": "YulExpressionStatement", + "src": "8623:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8260:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "8316:3:74", + "nodeType": "YulTypedName", + "src": "8316:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8321:6:74", + "nodeType": "YulTypedName", + "src": "8321:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8329:3:74", + "nodeType": "YulTypedName", + "src": "8329:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8337:5:74", + "nodeType": "YulTypedName", + "src": "8337:5:74", + "type": "" + } + ], + "src": "8260:423:74" + }, + { + "body": { + "nativeSrc": "8763:277:74", + "nodeType": "YulBlock", + "src": "8763:277:74", + "statements": [ + { + "body": { + "nativeSrc": "8812:83:74", + "nodeType": "YulBlock", + "src": "8812:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "8814:77:74", + "nodeType": "YulIdentifier", + "src": "8814:77:74" + }, + "nativeSrc": "8814:79:74", + "nodeType": "YulFunctionCall", + "src": "8814:79:74" + }, + "nativeSrc": "8814:79:74", + "nodeType": "YulExpressionStatement", + "src": "8814:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8791:6:74", + "nodeType": "YulIdentifier", + "src": "8791:6:74" + }, + { + "kind": "number", + "nativeSrc": "8799:4:74", + "nodeType": "YulLiteral", + "src": "8799:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8787:3:74", + "nodeType": "YulIdentifier", + "src": "8787:3:74" + }, + "nativeSrc": "8787:17:74", + "nodeType": "YulFunctionCall", + "src": "8787:17:74" + }, + { + "name": "end", + "nativeSrc": "8806:3:74", + "nodeType": "YulIdentifier", + "src": "8806:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8783:3:74", + "nodeType": "YulIdentifier", + "src": "8783:3:74" + }, + "nativeSrc": "8783:27:74", + "nodeType": "YulFunctionCall", + "src": "8783:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8776:6:74", + "nodeType": "YulIdentifier", + "src": "8776:6:74" + }, + "nativeSrc": "8776:35:74", + "nodeType": "YulFunctionCall", + "src": "8776:35:74" + }, + "nativeSrc": "8773:122:74", + "nodeType": "YulIf", + "src": "8773:122:74" + }, + { + "nativeSrc": "8904:34:74", + "nodeType": "YulVariableDeclaration", + "src": "8904:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8931:6:74", + "nodeType": "YulIdentifier", + "src": "8931:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8918:12:74", + "nodeType": "YulIdentifier", + "src": "8918:12:74" + }, + "nativeSrc": "8918:20:74", + "nodeType": "YulFunctionCall", + "src": "8918:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "8908:6:74", + "nodeType": "YulTypedName", + "src": "8908:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8947:87:74", + "nodeType": "YulAssignment", + "src": "8947:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9007:6:74", + "nodeType": "YulIdentifier", + "src": "9007:6:74" + }, + { + "kind": "number", + "nativeSrc": "9015:4:74", + "nodeType": "YulLiteral", + "src": "9015:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9003:3:74", + "nodeType": "YulIdentifier", + "src": "9003:3:74" + }, + "nativeSrc": "9003:17:74", + "nodeType": "YulFunctionCall", + "src": "9003:17:74" + }, + { + "name": "length", + "nativeSrc": "9022:6:74", + "nodeType": "YulIdentifier", + "src": "9022:6:74" + }, + { + "name": "end", + "nativeSrc": "9030:3:74", + "nodeType": "YulIdentifier", + "src": "9030:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8956:46:74", + "nodeType": "YulIdentifier", + "src": "8956:46:74" + }, + "nativeSrc": "8956:78:74", + "nodeType": "YulFunctionCall", + "src": "8956:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8947:5:74", + "nodeType": "YulIdentifier", + "src": "8947:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "8702:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8741:6:74", + "nodeType": "YulTypedName", + "src": "8741:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8749:3:74", + "nodeType": "YulTypedName", + "src": "8749:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8757:5:74", + "nodeType": "YulTypedName", + "src": "8757:5:74", + "type": "" + } + ], + "src": "8702:338:74" + }, + { + "body": { + "nativeSrc": "9172:817:74", + "nodeType": "YulBlock", + "src": "9172:817:74", + "statements": [ + { + "body": { + "nativeSrc": "9219:83:74", + "nodeType": "YulBlock", + "src": "9219:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "9221:77:74", + "nodeType": "YulIdentifier", + "src": "9221:77:74" + }, + "nativeSrc": "9221:79:74", + "nodeType": "YulFunctionCall", + "src": "9221:79:74" + }, + "nativeSrc": "9221:79:74", + "nodeType": "YulExpressionStatement", + "src": "9221:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "9193:7:74", + "nodeType": "YulIdentifier", + "src": "9193:7:74" + }, + { + "name": "headStart", + "nativeSrc": "9202:9:74", + "nodeType": "YulIdentifier", + "src": "9202:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "9189:3:74", + "nodeType": "YulIdentifier", + "src": "9189:3:74" + }, + "nativeSrc": "9189:23:74", + "nodeType": "YulFunctionCall", + "src": "9189:23:74" + }, + { + "kind": "number", + "nativeSrc": "9214:3:74", + "nodeType": "YulLiteral", + "src": "9214:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9185:3:74", + "nodeType": "YulIdentifier", + "src": "9185:3:74" + }, + "nativeSrc": "9185:33:74", + "nodeType": "YulFunctionCall", + "src": "9185:33:74" + }, + "nativeSrc": "9182:120:74", + "nodeType": "YulIf", + "src": "9182:120:74" + }, + { + "nativeSrc": "9312:117:74", + "nodeType": "YulBlock", + "src": "9312:117:74", + "statements": [ + { + "nativeSrc": "9327:15:74", + "nodeType": "YulVariableDeclaration", + "src": "9327:15:74", + "value": { + "kind": "number", + "nativeSrc": "9341:1:74", + "nodeType": "YulLiteral", + "src": "9341:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9331:6:74", + "nodeType": "YulTypedName", + "src": "9331:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9356:63:74", + "nodeType": "YulAssignment", + "src": "9356:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9391:9:74", + "nodeType": "YulIdentifier", + "src": "9391:9:74" + }, + { + "name": "offset", + "nativeSrc": "9402:6:74", + "nodeType": "YulIdentifier", + "src": "9402:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9387:3:74", + "nodeType": "YulIdentifier", + "src": "9387:3:74" + }, + "nativeSrc": "9387:22:74", + "nodeType": "YulFunctionCall", + "src": "9387:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9411:7:74", + "nodeType": "YulIdentifier", + "src": "9411:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9366:20:74", + "nodeType": "YulIdentifier", + "src": "9366:20:74" + }, + "nativeSrc": "9366:53:74", + "nodeType": "YulFunctionCall", + "src": "9366:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "9356:6:74", + "nodeType": "YulIdentifier", + "src": "9356:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9439:118:74", + "nodeType": "YulBlock", + "src": "9439:118:74", + "statements": [ + { + "nativeSrc": "9454:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9454:16:74", + "value": { + "kind": "number", + "nativeSrc": "9468:2:74", + "nodeType": "YulLiteral", + "src": "9468:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9458:6:74", + "nodeType": "YulTypedName", + "src": "9458:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9484:63:74", + "nodeType": "YulAssignment", + "src": "9484:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9519:9:74", + "nodeType": "YulIdentifier", + "src": "9519:9:74" + }, + { + "name": "offset", + "nativeSrc": "9530:6:74", + "nodeType": "YulIdentifier", + "src": "9530:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9515:3:74", + "nodeType": "YulIdentifier", + "src": "9515:3:74" + }, + "nativeSrc": "9515:22:74", + "nodeType": "YulFunctionCall", + "src": "9515:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9539:7:74", + "nodeType": "YulIdentifier", + "src": "9539:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9494:20:74", + "nodeType": "YulIdentifier", + "src": "9494:20:74" + }, + "nativeSrc": "9494:53:74", + "nodeType": "YulFunctionCall", + "src": "9494:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "9484:6:74", + "nodeType": "YulIdentifier", + "src": "9484:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9567:118:74", + "nodeType": "YulBlock", + "src": "9567:118:74", + "statements": [ + { + "nativeSrc": "9582:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9582:16:74", + "value": { + "kind": "number", + "nativeSrc": "9596:2:74", + "nodeType": "YulLiteral", + "src": "9596:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9586:6:74", + "nodeType": "YulTypedName", + "src": "9586:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9612:63:74", + "nodeType": "YulAssignment", + "src": "9612:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9647:9:74", + "nodeType": "YulIdentifier", + "src": "9647:9:74" + }, + { + "name": "offset", + "nativeSrc": "9658:6:74", + "nodeType": "YulIdentifier", + "src": "9658:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9643:3:74", + "nodeType": "YulIdentifier", + "src": "9643:3:74" + }, + "nativeSrc": "9643:22:74", + "nodeType": "YulFunctionCall", + "src": "9643:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9667:7:74", + "nodeType": "YulIdentifier", + "src": "9667:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "9622:20:74", + "nodeType": "YulIdentifier", + "src": "9622:20:74" + }, + "nativeSrc": "9622:53:74", + "nodeType": "YulFunctionCall", + "src": "9622:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "9612:6:74", + "nodeType": "YulIdentifier", + "src": "9612:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9695:287:74", + "nodeType": "YulBlock", + "src": "9695:287:74", + "statements": [ + { + "nativeSrc": "9710:46:74", + "nodeType": "YulVariableDeclaration", + "src": "9710:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9741:9:74", + "nodeType": "YulIdentifier", + "src": "9741:9:74" + }, + { + "kind": "number", + "nativeSrc": "9752:2:74", + "nodeType": "YulLiteral", + "src": "9752:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9737:3:74", + "nodeType": "YulIdentifier", + "src": "9737:3:74" + }, + "nativeSrc": "9737:18:74", + "nodeType": "YulFunctionCall", + "src": "9737:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "9724:12:74", + "nodeType": "YulIdentifier", + "src": "9724:12:74" + }, + "nativeSrc": "9724:32:74", + "nodeType": "YulFunctionCall", + "src": "9724:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9714:6:74", + "nodeType": "YulTypedName", + "src": "9714:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9803:83:74", + "nodeType": "YulBlock", + "src": "9803:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "9805:77:74", + "nodeType": "YulIdentifier", + "src": "9805:77:74" + }, + "nativeSrc": "9805:79:74", + "nodeType": "YulFunctionCall", + "src": "9805:79:74" + }, + "nativeSrc": "9805:79:74", + "nodeType": "YulExpressionStatement", + "src": "9805:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9775:6:74", + "nodeType": "YulIdentifier", + "src": "9775:6:74" + }, + { + "kind": "number", + "nativeSrc": "9783:18:74", + "nodeType": "YulLiteral", + "src": "9783:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9772:2:74", + "nodeType": "YulIdentifier", + "src": "9772:2:74" + }, + "nativeSrc": "9772:30:74", + "nodeType": "YulFunctionCall", + "src": "9772:30:74" + }, + "nativeSrc": "9769:117:74", + "nodeType": "YulIf", + "src": "9769:117:74" + }, + { + "nativeSrc": "9900:72:74", + "nodeType": "YulAssignment", + "src": "9900:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9944:9:74", + "nodeType": "YulIdentifier", + "src": "9944:9:74" + }, + { + "name": "offset", + "nativeSrc": "9955:6:74", + "nodeType": "YulIdentifier", + "src": "9955:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9940:3:74", + "nodeType": "YulIdentifier", + "src": "9940:3:74" + }, + "nativeSrc": "9940:22:74", + "nodeType": "YulFunctionCall", + "src": "9940:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9964:7:74", + "nodeType": "YulIdentifier", + "src": "9964:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "9910:29:74", + "nodeType": "YulIdentifier", + "src": "9910:29:74" + }, + "nativeSrc": "9910:62:74", + "nodeType": "YulFunctionCall", + "src": "9910:62:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "9900:6:74", + "nodeType": "YulIdentifier", + "src": "9900:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr", + "nativeSrc": "9046:943:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9118:9:74", + "nodeType": "YulTypedName", + "src": "9118:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "9129:7:74", + "nodeType": "YulTypedName", + "src": "9129:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "9141:6:74", + "nodeType": "YulTypedName", + "src": "9141:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "9149:6:74", + "nodeType": "YulTypedName", + "src": "9149:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "9157:6:74", + "nodeType": "YulTypedName", + "src": "9157:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "9165:6:74", + "nodeType": "YulTypedName", + "src": "9165:6:74", + "type": "" + } + ], + "src": "9046:943:74" + }, + { + "body": { + "nativeSrc": "10078:391:74", + "nodeType": "YulBlock", + "src": "10078:391:74", + "statements": [ + { + "body": { + "nativeSrc": "10124:83:74", + "nodeType": "YulBlock", + "src": "10124:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10126:77:74", + "nodeType": "YulIdentifier", + "src": "10126:77:74" + }, + "nativeSrc": "10126:79:74", + "nodeType": "YulFunctionCall", + "src": "10126:79:74" + }, + "nativeSrc": "10126:79:74", + "nodeType": "YulExpressionStatement", + "src": "10126:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10099:7:74", + "nodeType": "YulIdentifier", + "src": "10099:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10108:9:74", + "nodeType": "YulIdentifier", + "src": "10108:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10095:3:74", + "nodeType": "YulIdentifier", + "src": "10095:3:74" + }, + "nativeSrc": "10095:23:74", + "nodeType": "YulFunctionCall", + "src": "10095:23:74" + }, + { + "kind": "number", + "nativeSrc": "10120:2:74", + "nodeType": "YulLiteral", + "src": "10120:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10091:3:74", + "nodeType": "YulIdentifier", + "src": "10091:3:74" + }, + "nativeSrc": "10091:32:74", + "nodeType": "YulFunctionCall", + "src": "10091:32:74" + }, + "nativeSrc": "10088:119:74", + "nodeType": "YulIf", + "src": "10088:119:74" + }, + { + "nativeSrc": "10217:117:74", + "nodeType": "YulBlock", + "src": "10217:117:74", + "statements": [ + { + "nativeSrc": "10232:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10232:15:74", + "value": { + "kind": "number", + "nativeSrc": "10246:1:74", + "nodeType": "YulLiteral", + "src": "10246:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10236:6:74", + "nodeType": "YulTypedName", + "src": "10236:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10261:63:74", + "nodeType": "YulAssignment", + "src": "10261:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10296:9:74", + "nodeType": "YulIdentifier", + "src": "10296:9:74" + }, + { + "name": "offset", + "nativeSrc": "10307:6:74", + "nodeType": "YulIdentifier", + "src": "10307:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10292:3:74", + "nodeType": "YulIdentifier", + "src": "10292:3:74" + }, + "nativeSrc": "10292:22:74", + "nodeType": "YulFunctionCall", + "src": "10292:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10316:7:74", + "nodeType": "YulIdentifier", + "src": "10316:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "10271:20:74", + "nodeType": "YulIdentifier", + "src": "10271:20:74" + }, + "nativeSrc": "10271:53:74", + "nodeType": "YulFunctionCall", + "src": "10271:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10261:6:74", + "nodeType": "YulIdentifier", + "src": "10261:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "10344:118:74", + "nodeType": "YulBlock", + "src": "10344:118:74", + "statements": [ + { + "nativeSrc": "10359:16:74", + "nodeType": "YulVariableDeclaration", + "src": "10359:16:74", + "value": { + "kind": "number", + "nativeSrc": "10373:2:74", + "nodeType": "YulLiteral", + "src": "10373:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10363:6:74", + "nodeType": "YulTypedName", + "src": "10363:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10389:63:74", + "nodeType": "YulAssignment", + "src": "10389:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10424:9:74", + "nodeType": "YulIdentifier", + "src": "10424:9:74" + }, + { + "name": "offset", + "nativeSrc": "10435:6:74", + "nodeType": "YulIdentifier", + "src": "10435:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10420:3:74", + "nodeType": "YulIdentifier", + "src": "10420:3:74" + }, + "nativeSrc": "10420:22:74", + "nodeType": "YulFunctionCall", + "src": "10420:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10444:7:74", + "nodeType": "YulIdentifier", + "src": "10444:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "10399:20:74", + "nodeType": "YulIdentifier", + "src": "10399:20:74" + }, + "nativeSrc": "10399:53:74", + "nodeType": "YulFunctionCall", + "src": "10399:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "10389:6:74", + "nodeType": "YulIdentifier", + "src": "10389:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "9995:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10040:9:74", + "nodeType": "YulTypedName", + "src": "10040:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10051:7:74", + "nodeType": "YulTypedName", + "src": "10051:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10063:6:74", + "nodeType": "YulTypedName", + "src": "10063:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "10071:6:74", + "nodeType": "YulTypedName", + "src": "10071:6:74", + "type": "" + } + ], + "src": "9995:474:74" + }, + { + "body": { + "nativeSrc": "10503:152:74", + "nodeType": "YulBlock", + "src": "10503:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10520:1:74", + "nodeType": "YulLiteral", + "src": "10520:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10523:77:74", + "nodeType": "YulLiteral", + "src": "10523:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10513:6:74", + "nodeType": "YulIdentifier", + "src": "10513:6:74" + }, + "nativeSrc": "10513:88:74", + "nodeType": "YulFunctionCall", + "src": "10513:88:74" + }, + "nativeSrc": "10513:88:74", + "nodeType": "YulExpressionStatement", + "src": "10513:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10617:1:74", + "nodeType": "YulLiteral", + "src": "10617:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "10620:4:74", + "nodeType": "YulLiteral", + "src": "10620:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10610:6:74", + "nodeType": "YulIdentifier", + "src": "10610:6:74" + }, + "nativeSrc": "10610:15:74", + "nodeType": "YulFunctionCall", + "src": "10610:15:74" + }, + "nativeSrc": "10610:15:74", + "nodeType": "YulExpressionStatement", + "src": "10610:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10641:1:74", + "nodeType": "YulLiteral", + "src": "10641:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10644:4:74", + "nodeType": "YulLiteral", + "src": "10644:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "10634:6:74", + "nodeType": "YulIdentifier", + "src": "10634:6:74" + }, + "nativeSrc": "10634:15:74", + "nodeType": "YulFunctionCall", + "src": "10634:15:74" + }, + "nativeSrc": "10634:15:74", + "nodeType": "YulExpressionStatement", + "src": "10634:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "10475:180:74", + "nodeType": "YulFunctionDefinition", + "src": "10475:180:74" + }, + { + "body": { + "nativeSrc": "10712:269:74", + "nodeType": "YulBlock", + "src": "10712:269:74", + "statements": [ + { + "nativeSrc": "10722:22:74", + "nodeType": "YulAssignment", + "src": "10722:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "10736:4:74", + "nodeType": "YulIdentifier", + "src": "10736:4:74" + }, + { + "kind": "number", + "nativeSrc": "10742:1:74", + "nodeType": "YulLiteral", + "src": "10742:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "10732:3:74", + "nodeType": "YulIdentifier", + "src": "10732:3:74" + }, + "nativeSrc": "10732:12:74", + "nodeType": "YulFunctionCall", + "src": "10732:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "10722:6:74", + "nodeType": "YulIdentifier", + "src": "10722:6:74" + } + ] + }, + { + "nativeSrc": "10753:38:74", + "nodeType": "YulVariableDeclaration", + "src": "10753:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "10783:4:74", + "nodeType": "YulIdentifier", + "src": "10783:4:74" + }, + { + "kind": "number", + "nativeSrc": "10789:1:74", + "nodeType": "YulLiteral", + "src": "10789:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10779:3:74", + "nodeType": "YulIdentifier", + "src": "10779:3:74" + }, + "nativeSrc": "10779:12:74", + "nodeType": "YulFunctionCall", + "src": "10779:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10757:18:74", + "nodeType": "YulTypedName", + "src": "10757:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10830:51:74", + "nodeType": "YulBlock", + "src": "10830:51:74", + "statements": [ + { + "nativeSrc": "10844:27:74", + "nodeType": "YulAssignment", + "src": "10844:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "10858:6:74", + "nodeType": "YulIdentifier", + "src": "10858:6:74" + }, + { + "kind": "number", + "nativeSrc": "10866:4:74", + "nodeType": "YulLiteral", + "src": "10866:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10854:3:74", + "nodeType": "YulIdentifier", + "src": "10854:3:74" + }, + "nativeSrc": "10854:17:74", + "nodeType": "YulFunctionCall", + "src": "10854:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "10844:6:74", + "nodeType": "YulIdentifier", + "src": "10844:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10810:18:74", + "nodeType": "YulIdentifier", + "src": "10810:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "10803:6:74", + "nodeType": "YulIdentifier", + "src": "10803:6:74" + }, + "nativeSrc": "10803:26:74", + "nodeType": "YulFunctionCall", + "src": "10803:26:74" + }, + "nativeSrc": "10800:81:74", + "nodeType": "YulIf", + "src": "10800:81:74" + }, + { + "body": { + "nativeSrc": "10933:42:74", + "nodeType": "YulBlock", + "src": "10933:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "10947:16:74", + "nodeType": "YulIdentifier", + "src": "10947:16:74" + }, + "nativeSrc": "10947:18:74", + "nodeType": "YulFunctionCall", + "src": "10947:18:74" + }, + "nativeSrc": "10947:18:74", + "nodeType": "YulExpressionStatement", + "src": "10947:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10897:18:74", + "nodeType": "YulIdentifier", + "src": "10897:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "10920:6:74", + "nodeType": "YulIdentifier", + "src": "10920:6:74" + }, + { + "kind": "number", + "nativeSrc": "10928:2:74", + "nodeType": "YulLiteral", + "src": "10928:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "10917:2:74", + "nodeType": "YulIdentifier", + "src": "10917:2:74" + }, + "nativeSrc": "10917:14:74", + "nodeType": "YulFunctionCall", + "src": "10917:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "10894:2:74", + "nodeType": "YulIdentifier", + "src": "10894:2:74" + }, + "nativeSrc": "10894:38:74", + "nodeType": "YulFunctionCall", + "src": "10894:38:74" + }, + "nativeSrc": "10891:84:74", + "nodeType": "YulIf", + "src": "10891:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "10661:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "10696:4:74", + "nodeType": "YulTypedName", + "src": "10696:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "10705:6:74", + "nodeType": "YulTypedName", + "src": "10705:6:74", + "type": "" + } + ], + "src": "10661:320:74" + }, + { + "body": { + "nativeSrc": "11093:114:74", + "nodeType": "YulBlock", + "src": "11093:114:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "11115:6:74", + "nodeType": "YulIdentifier", + "src": "11115:6:74" + }, + { + "kind": "number", + "nativeSrc": "11123:1:74", + "nodeType": "YulLiteral", + "src": "11123:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11111:3:74", + "nodeType": "YulIdentifier", + "src": "11111:3:74" + }, + "nativeSrc": "11111:14:74", + "nodeType": "YulFunctionCall", + "src": "11111:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", + "kind": "string", + "nativeSrc": "11127:34:74", + "nodeType": "YulLiteral", + "src": "11127:34:74", + "type": "", + "value": "ERC721: approval to current owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11104:6:74", + "nodeType": "YulIdentifier", + "src": "11104:6:74" + }, + "nativeSrc": "11104:58:74", + "nodeType": "YulFunctionCall", + "src": "11104:58:74" + }, + "nativeSrc": "11104:58:74", + "nodeType": "YulExpressionStatement", + "src": "11104:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "11183:6:74", + "nodeType": "YulIdentifier", + "src": "11183:6:74" + }, + { + "kind": "number", + "nativeSrc": "11191:2:74", + "nodeType": "YulLiteral", + "src": "11191:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11179:3:74", + "nodeType": "YulIdentifier", + "src": "11179:3:74" + }, + "nativeSrc": "11179:15:74", + "nodeType": "YulFunctionCall", + "src": "11179:15:74" + }, + { + "hexValue": "72", + "kind": "string", + "nativeSrc": "11196:3:74", + "nodeType": "YulLiteral", + "src": "11196:3:74", + "type": "", + "value": "r" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11172:6:74", + "nodeType": "YulIdentifier", + "src": "11172:6:74" + }, + "nativeSrc": "11172:28:74", + "nodeType": "YulFunctionCall", + "src": "11172:28:74" + }, + "nativeSrc": "11172:28:74", + "nodeType": "YulExpressionStatement", + "src": "11172:28:74" + } + ] + }, + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "10987:220:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "11085:6:74", + "nodeType": "YulTypedName", + "src": "11085:6:74", + "type": "" + } + ], + "src": "10987:220:74" + }, + { + "body": { + "nativeSrc": "11359:220:74", + "nodeType": "YulBlock", + "src": "11359:220:74", + "statements": [ + { + "nativeSrc": "11369:74:74", + "nodeType": "YulAssignment", + "src": "11369:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11435:3:74", + "nodeType": "YulIdentifier", + "src": "11435:3:74" + }, + { + "kind": "number", + "nativeSrc": "11440:2:74", + "nodeType": "YulLiteral", + "src": "11440:2:74", + "type": "", + "value": "33" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "11376:58:74", + "nodeType": "YulIdentifier", + "src": "11376:58:74" + }, + "nativeSrc": "11376:67:74", + "nodeType": "YulFunctionCall", + "src": "11376:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "11369:3:74", + "nodeType": "YulIdentifier", + "src": "11369:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11541:3:74", + "nodeType": "YulIdentifier", + "src": "11541:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "11452:88:74", + "nodeType": "YulIdentifier", + "src": "11452:88:74" + }, + "nativeSrc": "11452:93:74", + "nodeType": "YulFunctionCall", + "src": "11452:93:74" + }, + "nativeSrc": "11452:93:74", + "nodeType": "YulExpressionStatement", + "src": "11452:93:74" + }, + { + "nativeSrc": "11554:19:74", + "nodeType": "YulAssignment", + "src": "11554:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11565:3:74", + "nodeType": "YulIdentifier", + "src": "11565:3:74" + }, + { + "kind": "number", + "nativeSrc": "11570:2:74", + "nodeType": "YulLiteral", + "src": "11570:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11561:3:74", + "nodeType": "YulIdentifier", + "src": "11561:3:74" + }, + "nativeSrc": "11561:12:74", + "nodeType": "YulFunctionCall", + "src": "11561:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "11554:3:74", + "nodeType": "YulIdentifier", + "src": "11554:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11213:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "11347:3:74", + "nodeType": "YulTypedName", + "src": "11347:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "11355:3:74", + "nodeType": "YulTypedName", + "src": "11355:3:74", + "type": "" + } + ], + "src": "11213:366:74" + }, + { + "body": { + "nativeSrc": "11756:248:74", + "nodeType": "YulBlock", + "src": "11756:248:74", + "statements": [ + { + "nativeSrc": "11766:26:74", + "nodeType": "YulAssignment", + "src": "11766:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11778:9:74", + "nodeType": "YulIdentifier", + "src": "11778:9:74" + }, + { + "kind": "number", + "nativeSrc": "11789:2:74", + "nodeType": "YulLiteral", + "src": "11789:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11774:3:74", + "nodeType": "YulIdentifier", + "src": "11774:3:74" + }, + "nativeSrc": "11774:18:74", + "nodeType": "YulFunctionCall", + "src": "11774:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11766:4:74", + "nodeType": "YulIdentifier", + "src": "11766:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11813:9:74", + "nodeType": "YulIdentifier", + "src": "11813:9:74" + }, + { + "kind": "number", + "nativeSrc": "11824:1:74", + "nodeType": "YulLiteral", + "src": "11824:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11809:3:74", + "nodeType": "YulIdentifier", + "src": "11809:3:74" + }, + "nativeSrc": "11809:17:74", + "nodeType": "YulFunctionCall", + "src": "11809:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11832:4:74", + "nodeType": "YulIdentifier", + "src": "11832:4:74" + }, + { + "name": "headStart", + "nativeSrc": "11838:9:74", + "nodeType": "YulIdentifier", + "src": "11838:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11828:3:74", + "nodeType": "YulIdentifier", + "src": "11828:3:74" + }, + "nativeSrc": "11828:20:74", + "nodeType": "YulFunctionCall", + "src": "11828:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11802:6:74", + "nodeType": "YulIdentifier", + "src": "11802:6:74" + }, + "nativeSrc": "11802:47:74", + "nodeType": "YulFunctionCall", + "src": "11802:47:74" + }, + "nativeSrc": "11802:47:74", + "nodeType": "YulExpressionStatement", + "src": "11802:47:74" + }, + { + "nativeSrc": "11858:139:74", + "nodeType": "YulAssignment", + "src": "11858:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11992:4:74", + "nodeType": "YulIdentifier", + "src": "11992:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11866:124:74", + "nodeType": "YulIdentifier", + "src": "11866:124:74" + }, + "nativeSrc": "11866:131:74", + "nodeType": "YulFunctionCall", + "src": "11866:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11858:4:74", + "nodeType": "YulIdentifier", + "src": "11858:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "11585:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11736:9:74", + "nodeType": "YulTypedName", + "src": "11736:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11751:4:74", + "nodeType": "YulTypedName", + "src": "11751:4:74", + "type": "" + } + ], + "src": "11585:419:74" + }, + { + "body": { + "nativeSrc": "12116:142:74", + "nodeType": "YulBlock", + "src": "12116:142:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "12138:6:74", + "nodeType": "YulIdentifier", + "src": "12138:6:74" + }, + { + "kind": "number", + "nativeSrc": "12146:1:74", + "nodeType": "YulLiteral", + "src": "12146:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12134:3:74", + "nodeType": "YulIdentifier", + "src": "12134:3:74" + }, + "nativeSrc": "12134:14:74", + "nodeType": "YulFunctionCall", + "src": "12134:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f", + "kind": "string", + "nativeSrc": "12150:34:74", + "nodeType": "YulLiteral", + "src": "12150:34:74", + "type": "", + "value": "ERC721: approve caller is not to" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12127:6:74", + "nodeType": "YulIdentifier", + "src": "12127:6:74" + }, + "nativeSrc": "12127:58:74", + "nodeType": "YulFunctionCall", + "src": "12127:58:74" + }, + "nativeSrc": "12127:58:74", + "nodeType": "YulExpressionStatement", + "src": "12127:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "12206:6:74", + "nodeType": "YulIdentifier", + "src": "12206:6:74" + }, + { + "kind": "number", + "nativeSrc": "12214:2:74", + "nodeType": "YulLiteral", + "src": "12214:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12202:3:74", + "nodeType": "YulIdentifier", + "src": "12202:3:74" + }, + "nativeSrc": "12202:15:74", + "nodeType": "YulFunctionCall", + "src": "12202:15:74" + }, + { + "hexValue": "6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "kind": "string", + "nativeSrc": "12219:31:74", + "nodeType": "YulLiteral", + "src": "12219:31:74", + "type": "", + "value": "ken owner or approved for all" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12195:6:74", + "nodeType": "YulIdentifier", + "src": "12195:6:74" + }, + "nativeSrc": "12195:56:74", + "nodeType": "YulFunctionCall", + "src": "12195:56:74" + }, + "nativeSrc": "12195:56:74", + "nodeType": "YulExpressionStatement", + "src": "12195:56:74" + } + ] + }, + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "12010:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "12108:6:74", + "nodeType": "YulTypedName", + "src": "12108:6:74", + "type": "" + } + ], + "src": "12010:248:74" + }, + { + "body": { + "nativeSrc": "12410:220:74", + "nodeType": "YulBlock", + "src": "12410:220:74", + "statements": [ + { + "nativeSrc": "12420:74:74", + "nodeType": "YulAssignment", + "src": "12420:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12486:3:74", + "nodeType": "YulIdentifier", + "src": "12486:3:74" + }, + { + "kind": "number", + "nativeSrc": "12491:2:74", + "nodeType": "YulLiteral", + "src": "12491:2:74", + "type": "", + "value": "61" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "12427:58:74", + "nodeType": "YulIdentifier", + "src": "12427:58:74" + }, + "nativeSrc": "12427:67:74", + "nodeType": "YulFunctionCall", + "src": "12427:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12420:3:74", + "nodeType": "YulIdentifier", + "src": "12420:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12592:3:74", + "nodeType": "YulIdentifier", + "src": "12592:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "12503:88:74", + "nodeType": "YulIdentifier", + "src": "12503:88:74" + }, + "nativeSrc": "12503:93:74", + "nodeType": "YulFunctionCall", + "src": "12503:93:74" + }, + "nativeSrc": "12503:93:74", + "nodeType": "YulExpressionStatement", + "src": "12503:93:74" + }, + { + "nativeSrc": "12605:19:74", + "nodeType": "YulAssignment", + "src": "12605:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12616:3:74", + "nodeType": "YulIdentifier", + "src": "12616:3:74" + }, + { + "kind": "number", + "nativeSrc": "12621:2:74", + "nodeType": "YulLiteral", + "src": "12621:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12612:3:74", + "nodeType": "YulIdentifier", + "src": "12612:3:74" + }, + "nativeSrc": "12612:12:74", + "nodeType": "YulFunctionCall", + "src": "12612:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "12605:3:74", + "nodeType": "YulIdentifier", + "src": "12605:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "12264:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "12398:3:74", + "nodeType": "YulTypedName", + "src": "12398:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "12406:3:74", + "nodeType": "YulTypedName", + "src": "12406:3:74", + "type": "" + } + ], + "src": "12264:366:74" + }, + { + "body": { + "nativeSrc": "12807:248:74", + "nodeType": "YulBlock", + "src": "12807:248:74", + "statements": [ + { + "nativeSrc": "12817:26:74", + "nodeType": "YulAssignment", + "src": "12817:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12829:9:74", + "nodeType": "YulIdentifier", + "src": "12829:9:74" + }, + { + "kind": "number", + "nativeSrc": "12840:2:74", + "nodeType": "YulLiteral", + "src": "12840:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12825:3:74", + "nodeType": "YulIdentifier", + "src": "12825:3:74" + }, + "nativeSrc": "12825:18:74", + "nodeType": "YulFunctionCall", + "src": "12825:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12817:4:74", + "nodeType": "YulIdentifier", + "src": "12817:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12864:9:74", + "nodeType": "YulIdentifier", + "src": "12864:9:74" + }, + { + "kind": "number", + "nativeSrc": "12875:1:74", + "nodeType": "YulLiteral", + "src": "12875:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12860:3:74", + "nodeType": "YulIdentifier", + "src": "12860:3:74" + }, + "nativeSrc": "12860:17:74", + "nodeType": "YulFunctionCall", + "src": "12860:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "12883:4:74", + "nodeType": "YulIdentifier", + "src": "12883:4:74" + }, + { + "name": "headStart", + "nativeSrc": "12889:9:74", + "nodeType": "YulIdentifier", + "src": "12889:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12879:3:74", + "nodeType": "YulIdentifier", + "src": "12879:3:74" + }, + "nativeSrc": "12879:20:74", + "nodeType": "YulFunctionCall", + "src": "12879:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12853:6:74", + "nodeType": "YulIdentifier", + "src": "12853:6:74" + }, + "nativeSrc": "12853:47:74", + "nodeType": "YulFunctionCall", + "src": "12853:47:74" + }, + "nativeSrc": "12853:47:74", + "nodeType": "YulExpressionStatement", + "src": "12853:47:74" + }, + { + "nativeSrc": "12909:139:74", + "nodeType": "YulAssignment", + "src": "12909:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "13043:4:74", + "nodeType": "YulIdentifier", + "src": "13043:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "12917:124:74", + "nodeType": "YulIdentifier", + "src": "12917:124:74" + }, + "nativeSrc": "12917:131:74", + "nodeType": "YulFunctionCall", + "src": "12917:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12909:4:74", + "nodeType": "YulIdentifier", + "src": "12909:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "12636:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12787:9:74", + "nodeType": "YulTypedName", + "src": "12787:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12802:4:74", + "nodeType": "YulTypedName", + "src": "12802:4:74", + "type": "" + } + ], + "src": "12636:419:74" + }, + { + "body": { + "nativeSrc": "13167:126:74", + "nodeType": "YulBlock", + "src": "13167:126:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13189:6:74", + "nodeType": "YulIdentifier", + "src": "13189:6:74" + }, + { + "kind": "number", + "nativeSrc": "13197:1:74", + "nodeType": "YulLiteral", + "src": "13197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13185:3:74", + "nodeType": "YulIdentifier", + "src": "13185:3:74" + }, + "nativeSrc": "13185:14:74", + "nodeType": "YulFunctionCall", + "src": "13185:14:74" + }, + { + "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e65", + "kind": "string", + "nativeSrc": "13201:34:74", + "nodeType": "YulLiteral", + "src": "13201:34:74", + "type": "", + "value": "ERC721: caller is not token owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13178:6:74", + "nodeType": "YulIdentifier", + "src": "13178:6:74" + }, + "nativeSrc": "13178:58:74", + "nodeType": "YulFunctionCall", + "src": "13178:58:74" + }, + "nativeSrc": "13178:58:74", + "nodeType": "YulExpressionStatement", + "src": "13178:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13257:6:74", + "nodeType": "YulIdentifier", + "src": "13257:6:74" + }, + { + "kind": "number", + "nativeSrc": "13265:2:74", + "nodeType": "YulLiteral", + "src": "13265:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13253:3:74", + "nodeType": "YulIdentifier", + "src": "13253:3:74" + }, + "nativeSrc": "13253:15:74", + "nodeType": "YulFunctionCall", + "src": "13253:15:74" + }, + { + "hexValue": "72206f7220617070726f766564", + "kind": "string", + "nativeSrc": "13270:15:74", + "nodeType": "YulLiteral", + "src": "13270:15:74", + "type": "", + "value": "r or approved" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13246:6:74", + "nodeType": "YulIdentifier", + "src": "13246:6:74" + }, + "nativeSrc": "13246:40:74", + "nodeType": "YulFunctionCall", + "src": "13246:40:74" + }, + "nativeSrc": "13246:40:74", + "nodeType": "YulExpressionStatement", + "src": "13246:40:74" + } + ] + }, + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "13061:232:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "13159:6:74", + "nodeType": "YulTypedName", + "src": "13159:6:74", + "type": "" + } + ], + "src": "13061:232:74" + }, + { + "body": { + "nativeSrc": "13445:220:74", + "nodeType": "YulBlock", + "src": "13445:220:74", + "statements": [ + { + "nativeSrc": "13455:74:74", + "nodeType": "YulAssignment", + "src": "13455:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13521:3:74", + "nodeType": "YulIdentifier", + "src": "13521:3:74" + }, + { + "kind": "number", + "nativeSrc": "13526:2:74", + "nodeType": "YulLiteral", + "src": "13526:2:74", + "type": "", + "value": "45" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "13462:58:74", + "nodeType": "YulIdentifier", + "src": "13462:58:74" + }, + "nativeSrc": "13462:67:74", + "nodeType": "YulFunctionCall", + "src": "13462:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13455:3:74", + "nodeType": "YulIdentifier", + "src": "13455:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13627:3:74", + "nodeType": "YulIdentifier", + "src": "13627:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "13538:88:74", + "nodeType": "YulIdentifier", + "src": "13538:88:74" + }, + "nativeSrc": "13538:93:74", + "nodeType": "YulFunctionCall", + "src": "13538:93:74" + }, + "nativeSrc": "13538:93:74", + "nodeType": "YulExpressionStatement", + "src": "13538:93:74" + }, + { + "nativeSrc": "13640:19:74", + "nodeType": "YulAssignment", + "src": "13640:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13651:3:74", + "nodeType": "YulIdentifier", + "src": "13651:3:74" + }, + { + "kind": "number", + "nativeSrc": "13656:2:74", + "nodeType": "YulLiteral", + "src": "13656:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13647:3:74", + "nodeType": "YulIdentifier", + "src": "13647:3:74" + }, + "nativeSrc": "13647:12:74", + "nodeType": "YulFunctionCall", + "src": "13647:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "13640:3:74", + "nodeType": "YulIdentifier", + "src": "13640:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "13299:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "13433:3:74", + "nodeType": "YulTypedName", + "src": "13433:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "13441:3:74", + "nodeType": "YulTypedName", + "src": "13441:3:74", + "type": "" + } + ], + "src": "13299:366:74" + }, + { + "body": { + "nativeSrc": "13842:248:74", + "nodeType": "YulBlock", + "src": "13842:248:74", + "statements": [ + { + "nativeSrc": "13852:26:74", + "nodeType": "YulAssignment", + "src": "13852:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13864:9:74", + "nodeType": "YulIdentifier", + "src": "13864:9:74" + }, + { + "kind": "number", + "nativeSrc": "13875:2:74", + "nodeType": "YulLiteral", + "src": "13875:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13860:3:74", + "nodeType": "YulIdentifier", + "src": "13860:3:74" + }, + "nativeSrc": "13860:18:74", + "nodeType": "YulFunctionCall", + "src": "13860:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "13852:4:74", + "nodeType": "YulIdentifier", + "src": "13852:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "13899:9:74", + "nodeType": "YulIdentifier", + "src": "13899:9:74" + }, + { + "kind": "number", + "nativeSrc": "13910:1:74", + "nodeType": "YulLiteral", + "src": "13910:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13895:3:74", + "nodeType": "YulIdentifier", + "src": "13895:3:74" + }, + "nativeSrc": "13895:17:74", + "nodeType": "YulFunctionCall", + "src": "13895:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "13918:4:74", + "nodeType": "YulIdentifier", + "src": "13918:4:74" + }, + { + "name": "headStart", + "nativeSrc": "13924:9:74", + "nodeType": "YulIdentifier", + "src": "13924:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "13914:3:74", + "nodeType": "YulIdentifier", + "src": "13914:3:74" + }, + "nativeSrc": "13914:20:74", + "nodeType": "YulFunctionCall", + "src": "13914:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13888:6:74", + "nodeType": "YulIdentifier", + "src": "13888:6:74" + }, + "nativeSrc": "13888:47:74", + "nodeType": "YulFunctionCall", + "src": "13888:47:74" + }, + "nativeSrc": "13888:47:74", + "nodeType": "YulExpressionStatement", + "src": "13888:47:74" + }, + { + "nativeSrc": "13944:139:74", + "nodeType": "YulAssignment", + "src": "13944:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14078:4:74", + "nodeType": "YulIdentifier", + "src": "14078:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "13952:124:74", + "nodeType": "YulIdentifier", + "src": "13952:124:74" + }, + "nativeSrc": "13952:131:74", + "nodeType": "YulFunctionCall", + "src": "13952:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "13944:4:74", + "nodeType": "YulIdentifier", + "src": "13944:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "13671:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "13822:9:74", + "nodeType": "YulTypedName", + "src": "13822:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "13837:4:74", + "nodeType": "YulTypedName", + "src": "13837:4:74", + "type": "" + } + ], + "src": "13671:419:74" + }, + { + "body": { + "nativeSrc": "14202:68:74", + "nodeType": "YulBlock", + "src": "14202:68:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14224:6:74", + "nodeType": "YulIdentifier", + "src": "14224:6:74" + }, + { + "kind": "number", + "nativeSrc": "14232:1:74", + "nodeType": "YulLiteral", + "src": "14232:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14220:3:74", + "nodeType": "YulIdentifier", + "src": "14220:3:74" + }, + "nativeSrc": "14220:14:74", + "nodeType": "YulFunctionCall", + "src": "14220:14:74" + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "kind": "string", + "nativeSrc": "14236:26:74", + "nodeType": "YulLiteral", + "src": "14236:26:74", + "type": "", + "value": "ERC721: invalid token ID" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14213:6:74", + "nodeType": "YulIdentifier", + "src": "14213:6:74" + }, + "nativeSrc": "14213:50:74", + "nodeType": "YulFunctionCall", + "src": "14213:50:74" + }, + "nativeSrc": "14213:50:74", + "nodeType": "YulExpressionStatement", + "src": "14213:50:74" + } + ] + }, + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "14096:174:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "14194:6:74", + "nodeType": "YulTypedName", + "src": "14194:6:74", + "type": "" + } + ], + "src": "14096:174:74" + }, + { + "body": { + "nativeSrc": "14422:220:74", + "nodeType": "YulBlock", + "src": "14422:220:74", + "statements": [ + { + "nativeSrc": "14432:74:74", + "nodeType": "YulAssignment", + "src": "14432:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14498:3:74", + "nodeType": "YulIdentifier", + "src": "14498:3:74" + }, + { + "kind": "number", + "nativeSrc": "14503:2:74", + "nodeType": "YulLiteral", + "src": "14503:2:74", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "14439:58:74", + "nodeType": "YulIdentifier", + "src": "14439:58:74" + }, + "nativeSrc": "14439:67:74", + "nodeType": "YulFunctionCall", + "src": "14439:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14432:3:74", + "nodeType": "YulIdentifier", + "src": "14432:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14604:3:74", + "nodeType": "YulIdentifier", + "src": "14604:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "14515:88:74", + "nodeType": "YulIdentifier", + "src": "14515:88:74" + }, + "nativeSrc": "14515:93:74", + "nodeType": "YulFunctionCall", + "src": "14515:93:74" + }, + "nativeSrc": "14515:93:74", + "nodeType": "YulExpressionStatement", + "src": "14515:93:74" + }, + { + "nativeSrc": "14617:19:74", + "nodeType": "YulAssignment", + "src": "14617:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14628:3:74", + "nodeType": "YulIdentifier", + "src": "14628:3:74" + }, + { + "kind": "number", + "nativeSrc": "14633:2:74", + "nodeType": "YulLiteral", + "src": "14633:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14624:3:74", + "nodeType": "YulIdentifier", + "src": "14624:3:74" + }, + "nativeSrc": "14624:12:74", + "nodeType": "YulFunctionCall", + "src": "14624:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "14617:3:74", + "nodeType": "YulIdentifier", + "src": "14617:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14276:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "14410:3:74", + "nodeType": "YulTypedName", + "src": "14410:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "14418:3:74", + "nodeType": "YulTypedName", + "src": "14418:3:74", + "type": "" + } + ], + "src": "14276:366:74" + }, + { + "body": { + "nativeSrc": "14819:248:74", + "nodeType": "YulBlock", + "src": "14819:248:74", + "statements": [ + { + "nativeSrc": "14829:26:74", + "nodeType": "YulAssignment", + "src": "14829:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14841:9:74", + "nodeType": "YulIdentifier", + "src": "14841:9:74" + }, + { + "kind": "number", + "nativeSrc": "14852:2:74", + "nodeType": "YulLiteral", + "src": "14852:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14837:3:74", + "nodeType": "YulIdentifier", + "src": "14837:3:74" + }, + "nativeSrc": "14837:18:74", + "nodeType": "YulFunctionCall", + "src": "14837:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14829:4:74", + "nodeType": "YulIdentifier", + "src": "14829:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14876:9:74", + "nodeType": "YulIdentifier", + "src": "14876:9:74" + }, + { + "kind": "number", + "nativeSrc": "14887:1:74", + "nodeType": "YulLiteral", + "src": "14887:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14872:3:74", + "nodeType": "YulIdentifier", + "src": "14872:3:74" + }, + "nativeSrc": "14872:17:74", + "nodeType": "YulFunctionCall", + "src": "14872:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14895:4:74", + "nodeType": "YulIdentifier", + "src": "14895:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14901:9:74", + "nodeType": "YulIdentifier", + "src": "14901:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14891:3:74", + "nodeType": "YulIdentifier", + "src": "14891:3:74" + }, + "nativeSrc": "14891:20:74", + "nodeType": "YulFunctionCall", + "src": "14891:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14865:6:74", + "nodeType": "YulIdentifier", + "src": "14865:6:74" + }, + "nativeSrc": "14865:47:74", + "nodeType": "YulFunctionCall", + "src": "14865:47:74" + }, + "nativeSrc": "14865:47:74", + "nodeType": "YulExpressionStatement", + "src": "14865:47:74" + }, + { + "nativeSrc": "14921:139:74", + "nodeType": "YulAssignment", + "src": "14921:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15055:4:74", + "nodeType": "YulIdentifier", + "src": "15055:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14929:124:74", + "nodeType": "YulIdentifier", + "src": "14929:124:74" + }, + "nativeSrc": "14929:131:74", + "nodeType": "YulFunctionCall", + "src": "14929:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14921:4:74", + "nodeType": "YulIdentifier", + "src": "14921:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "14648:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14799:9:74", + "nodeType": "YulTypedName", + "src": "14799:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14814:4:74", + "nodeType": "YulTypedName", + "src": "14814:4:74", + "type": "" + } + ], + "src": "14648:419:74" + }, + { + "body": { + "nativeSrc": "15179:122:74", + "nodeType": "YulBlock", + "src": "15179:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15201:6:74", + "nodeType": "YulIdentifier", + "src": "15201:6:74" + }, + { + "kind": "number", + "nativeSrc": "15209:1:74", + "nodeType": "YulLiteral", + "src": "15209:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15197:3:74", + "nodeType": "YulIdentifier", + "src": "15197:3:74" + }, + "nativeSrc": "15197:14:74", + "nodeType": "YulFunctionCall", + "src": "15197:14:74" + }, + { + "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f742061207661", + "kind": "string", + "nativeSrc": "15213:34:74", + "nodeType": "YulLiteral", + "src": "15213:34:74", + "type": "", + "value": "ERC721: address zero is not a va" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15190:6:74", + "nodeType": "YulIdentifier", + "src": "15190:6:74" + }, + "nativeSrc": "15190:58:74", + "nodeType": "YulFunctionCall", + "src": "15190:58:74" + }, + "nativeSrc": "15190:58:74", + "nodeType": "YulExpressionStatement", + "src": "15190:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15269:6:74", + "nodeType": "YulIdentifier", + "src": "15269:6:74" + }, + { + "kind": "number", + "nativeSrc": "15277:2:74", + "nodeType": "YulLiteral", + "src": "15277:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15265:3:74", + "nodeType": "YulIdentifier", + "src": "15265:3:74" + }, + "nativeSrc": "15265:15:74", + "nodeType": "YulFunctionCall", + "src": "15265:15:74" + }, + { + "hexValue": "6c6964206f776e6572", + "kind": "string", + "nativeSrc": "15282:11:74", + "nodeType": "YulLiteral", + "src": "15282:11:74", + "type": "", + "value": "lid owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15258:6:74", + "nodeType": "YulIdentifier", + "src": "15258:6:74" + }, + "nativeSrc": "15258:36:74", + "nodeType": "YulFunctionCall", + "src": "15258:36:74" + }, + "nativeSrc": "15258:36:74", + "nodeType": "YulExpressionStatement", + "src": "15258:36:74" + } + ] + }, + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "15073:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "15171:6:74", + "nodeType": "YulTypedName", + "src": "15171:6:74", + "type": "" + } + ], + "src": "15073:228:74" + }, + { + "body": { + "nativeSrc": "15453:220:74", + "nodeType": "YulBlock", + "src": "15453:220:74", + "statements": [ + { + "nativeSrc": "15463:74:74", + "nodeType": "YulAssignment", + "src": "15463:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15529:3:74", + "nodeType": "YulIdentifier", + "src": "15529:3:74" + }, + { + "kind": "number", + "nativeSrc": "15534:2:74", + "nodeType": "YulLiteral", + "src": "15534:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15470:58:74", + "nodeType": "YulIdentifier", + "src": "15470:58:74" + }, + "nativeSrc": "15470:67:74", + "nodeType": "YulFunctionCall", + "src": "15470:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15463:3:74", + "nodeType": "YulIdentifier", + "src": "15463:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15635:3:74", + "nodeType": "YulIdentifier", + "src": "15635:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "15546:88:74", + "nodeType": "YulIdentifier", + "src": "15546:88:74" + }, + "nativeSrc": "15546:93:74", + "nodeType": "YulFunctionCall", + "src": "15546:93:74" + }, + "nativeSrc": "15546:93:74", + "nodeType": "YulExpressionStatement", + "src": "15546:93:74" + }, + { + "nativeSrc": "15648:19:74", + "nodeType": "YulAssignment", + "src": "15648:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15659:3:74", + "nodeType": "YulIdentifier", + "src": "15659:3:74" + }, + { + "kind": "number", + "nativeSrc": "15664:2:74", + "nodeType": "YulLiteral", + "src": "15664:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15655:3:74", + "nodeType": "YulIdentifier", + "src": "15655:3:74" + }, + "nativeSrc": "15655:12:74", + "nodeType": "YulFunctionCall", + "src": "15655:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15648:3:74", + "nodeType": "YulIdentifier", + "src": "15648:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15307:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "15441:3:74", + "nodeType": "YulTypedName", + "src": "15441:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15449:3:74", + "nodeType": "YulTypedName", + "src": "15449:3:74", + "type": "" + } + ], + "src": "15307:366:74" + }, + { + "body": { + "nativeSrc": "15850:248:74", + "nodeType": "YulBlock", + "src": "15850:248:74", + "statements": [ + { + "nativeSrc": "15860:26:74", + "nodeType": "YulAssignment", + "src": "15860:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15872:9:74", + "nodeType": "YulIdentifier", + "src": "15872:9:74" + }, + { + "kind": "number", + "nativeSrc": "15883:2:74", + "nodeType": "YulLiteral", + "src": "15883:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15868:3:74", + "nodeType": "YulIdentifier", + "src": "15868:3:74" + }, + "nativeSrc": "15868:18:74", + "nodeType": "YulFunctionCall", + "src": "15868:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15860:4:74", + "nodeType": "YulIdentifier", + "src": "15860:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15907:9:74", + "nodeType": "YulIdentifier", + "src": "15907:9:74" + }, + { + "kind": "number", + "nativeSrc": "15918:1:74", + "nodeType": "YulLiteral", + "src": "15918:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15903:3:74", + "nodeType": "YulIdentifier", + "src": "15903:3:74" + }, + "nativeSrc": "15903:17:74", + "nodeType": "YulFunctionCall", + "src": "15903:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15926:4:74", + "nodeType": "YulIdentifier", + "src": "15926:4:74" + }, + { + "name": "headStart", + "nativeSrc": "15932:9:74", + "nodeType": "YulIdentifier", + "src": "15932:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15922:3:74", + "nodeType": "YulIdentifier", + "src": "15922:3:74" + }, + "nativeSrc": "15922:20:74", + "nodeType": "YulFunctionCall", + "src": "15922:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15896:6:74", + "nodeType": "YulIdentifier", + "src": "15896:6:74" + }, + "nativeSrc": "15896:47:74", + "nodeType": "YulFunctionCall", + "src": "15896:47:74" + }, + "nativeSrc": "15896:47:74", + "nodeType": "YulExpressionStatement", + "src": "15896:47:74" + }, + { + "nativeSrc": "15952:139:74", + "nodeType": "YulAssignment", + "src": "15952:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16086:4:74", + "nodeType": "YulIdentifier", + "src": "16086:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15960:124:74", + "nodeType": "YulIdentifier", + "src": "15960:124:74" + }, + "nativeSrc": "15960:131:74", + "nodeType": "YulFunctionCall", + "src": "15960:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15952:4:74", + "nodeType": "YulIdentifier", + "src": "15952:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "15679:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15830:9:74", + "nodeType": "YulTypedName", + "src": "15830:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15845:4:74", + "nodeType": "YulTypedName", + "src": "15845:4:74", + "type": "" + } + ], + "src": "15679:419:74" + }, + { + "body": { + "nativeSrc": "16218:34:74", + "nodeType": "YulBlock", + "src": "16218:34:74", + "statements": [ + { + "nativeSrc": "16228:18:74", + "nodeType": "YulAssignment", + "src": "16228:18:74", + "value": { + "name": "pos", + "nativeSrc": "16243:3:74", + "nodeType": "YulIdentifier", + "src": "16243:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "16228:11:74", + "nodeType": "YulIdentifier", + "src": "16228:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16104:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "16190:3:74", + "nodeType": "YulTypedName", + "src": "16190:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "16195:6:74", + "nodeType": "YulTypedName", + "src": "16195:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "16206:11:74", + "nodeType": "YulTypedName", + "src": "16206:11:74", + "type": "" + } + ], + "src": "16104:148:74" + }, + { + "body": { + "nativeSrc": "16368:280:74", + "nodeType": "YulBlock", + "src": "16368:280:74", + "statements": [ + { + "nativeSrc": "16378:53:74", + "nodeType": "YulVariableDeclaration", + "src": "16378:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16425:5:74", + "nodeType": "YulIdentifier", + "src": "16425:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "16392:32:74", + "nodeType": "YulIdentifier", + "src": "16392:32:74" + }, + "nativeSrc": "16392:39:74", + "nodeType": "YulFunctionCall", + "src": "16392:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "16382:6:74", + "nodeType": "YulTypedName", + "src": "16382:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16440:96:74", + "nodeType": "YulAssignment", + "src": "16440:96:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16524:3:74", + "nodeType": "YulIdentifier", + "src": "16524:3:74" + }, + { + "name": "length", + "nativeSrc": "16529:6:74", + "nodeType": "YulIdentifier", + "src": "16529:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16447:76:74", + "nodeType": "YulIdentifier", + "src": "16447:76:74" + }, + "nativeSrc": "16447:89:74", + "nodeType": "YulFunctionCall", + "src": "16447:89:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "16440:3:74", + "nodeType": "YulIdentifier", + "src": "16440:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "16584:5:74", + "nodeType": "YulIdentifier", + "src": "16584:5:74" + }, + { + "kind": "number", + "nativeSrc": "16591:4:74", + "nodeType": "YulLiteral", + "src": "16591:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16580:3:74", + "nodeType": "YulIdentifier", + "src": "16580:3:74" + }, + "nativeSrc": "16580:16:74", + "nodeType": "YulFunctionCall", + "src": "16580:16:74" + }, + { + "name": "pos", + "nativeSrc": "16598:3:74", + "nodeType": "YulIdentifier", + "src": "16598:3:74" + }, + { + "name": "length", + "nativeSrc": "16603:6:74", + "nodeType": "YulIdentifier", + "src": "16603:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "16545:34:74", + "nodeType": "YulIdentifier", + "src": "16545:34:74" + }, + "nativeSrc": "16545:65:74", + "nodeType": "YulFunctionCall", + "src": "16545:65:74" + }, + "nativeSrc": "16545:65:74", + "nodeType": "YulExpressionStatement", + "src": "16545:65:74" + }, + { + "nativeSrc": "16619:23:74", + "nodeType": "YulAssignment", + "src": "16619:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16630:3:74", + "nodeType": "YulIdentifier", + "src": "16630:3:74" + }, + { + "name": "length", + "nativeSrc": "16635:6:74", + "nodeType": "YulIdentifier", + "src": "16635:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16626:3:74", + "nodeType": "YulIdentifier", + "src": "16626:3:74" + }, + "nativeSrc": "16626:16:74", + "nodeType": "YulFunctionCall", + "src": "16626:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "16619:3:74", + "nodeType": "YulIdentifier", + "src": "16619:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16258:390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16349:5:74", + "nodeType": "YulTypedName", + "src": "16349:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "16356:3:74", + "nodeType": "YulTypedName", + "src": "16356:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "16364:3:74", + "nodeType": "YulTypedName", + "src": "16364:3:74", + "type": "" + } + ], + "src": "16258:390:74" + }, + { + "body": { + "nativeSrc": "16838:251:74", + "nodeType": "YulBlock", + "src": "16838:251:74", + "statements": [ + { + "nativeSrc": "16849:102:74", + "nodeType": "YulAssignment", + "src": "16849:102:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "16938:6:74", + "nodeType": "YulIdentifier", + "src": "16938:6:74" + }, + { + "name": "pos", + "nativeSrc": "16947:3:74", + "nodeType": "YulIdentifier", + "src": "16947:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16856:81:74", + "nodeType": "YulIdentifier", + "src": "16856:81:74" + }, + "nativeSrc": "16856:95:74", + "nodeType": "YulFunctionCall", + "src": "16856:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "16849:3:74", + "nodeType": "YulIdentifier", + "src": "16849:3:74" + } + ] + }, + { + "nativeSrc": "16961:102:74", + "nodeType": "YulAssignment", + "src": "16961:102:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "17050:6:74", + "nodeType": "YulIdentifier", + "src": "17050:6:74" + }, + { + "name": "pos", + "nativeSrc": "17059:3:74", + "nodeType": "YulIdentifier", + "src": "17059:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16968:81:74", + "nodeType": "YulIdentifier", + "src": "16968:81:74" + }, + "nativeSrc": "16968:95:74", + "nodeType": "YulFunctionCall", + "src": "16968:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "16961:3:74", + "nodeType": "YulIdentifier", + "src": "16961:3:74" + } + ] + }, + { + "nativeSrc": "17073:10:74", + "nodeType": "YulAssignment", + "src": "17073:10:74", + "value": { + "name": "pos", + "nativeSrc": "17080:3:74", + "nodeType": "YulIdentifier", + "src": "17080:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17073:3:74", + "nodeType": "YulIdentifier", + "src": "17073:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "16654:435:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "16809:3:74", + "nodeType": "YulTypedName", + "src": "16809:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "16815:6:74", + "nodeType": "YulTypedName", + "src": "16815:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "16823:6:74", + "nodeType": "YulTypedName", + "src": "16823:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "16834:3:74", + "nodeType": "YulTypedName", + "src": "16834:3:74", + "type": "" + } + ], + "src": "16654:435:74" + }, + { + "body": { + "nativeSrc": "17201:118:74", + "nodeType": "YulBlock", + "src": "17201:118:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "17223:6:74", + "nodeType": "YulIdentifier", + "src": "17223:6:74" + }, + { + "kind": "number", + "nativeSrc": "17231:1:74", + "nodeType": "YulLiteral", + "src": "17231:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17219:3:74", + "nodeType": "YulIdentifier", + "src": "17219:3:74" + }, + "nativeSrc": "17219:14:74", + "nodeType": "YulFunctionCall", + "src": "17219:14:74" + }, + { + "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", + "kind": "string", + "nativeSrc": "17235:34:74", + "nodeType": "YulLiteral", + "src": "17235:34:74", + "type": "", + "value": "ERC721: transfer from incorrect " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17212:6:74", + "nodeType": "YulIdentifier", + "src": "17212:6:74" + }, + "nativeSrc": "17212:58:74", + "nodeType": "YulFunctionCall", + "src": "17212:58:74" + }, + "nativeSrc": "17212:58:74", + "nodeType": "YulExpressionStatement", + "src": "17212:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "17291:6:74", + "nodeType": "YulIdentifier", + "src": "17291:6:74" + }, + { + "kind": "number", + "nativeSrc": "17299:2:74", + "nodeType": "YulLiteral", + "src": "17299:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17287:3:74", + "nodeType": "YulIdentifier", + "src": "17287:3:74" + }, + "nativeSrc": "17287:15:74", + "nodeType": "YulFunctionCall", + "src": "17287:15:74" + }, + { + "hexValue": "6f776e6572", + "kind": "string", + "nativeSrc": "17304:7:74", + "nodeType": "YulLiteral", + "src": "17304:7:74", + "type": "", + "value": "owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17280:6:74", + "nodeType": "YulIdentifier", + "src": "17280:6:74" + }, + "nativeSrc": "17280:32:74", + "nodeType": "YulFunctionCall", + "src": "17280:32:74" + }, + "nativeSrc": "17280:32:74", + "nodeType": "YulExpressionStatement", + "src": "17280:32:74" + } + ] + }, + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "17095:224:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "17193:6:74", + "nodeType": "YulTypedName", + "src": "17193:6:74", + "type": "" + } + ], + "src": "17095:224:74" + }, + { + "body": { + "nativeSrc": "17471:220:74", + "nodeType": "YulBlock", + "src": "17471:220:74", + "statements": [ + { + "nativeSrc": "17481:74:74", + "nodeType": "YulAssignment", + "src": "17481:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17547:3:74", + "nodeType": "YulIdentifier", + "src": "17547:3:74" + }, + { + "kind": "number", + "nativeSrc": "17552:2:74", + "nodeType": "YulLiteral", + "src": "17552:2:74", + "type": "", + "value": "37" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "17488:58:74", + "nodeType": "YulIdentifier", + "src": "17488:58:74" + }, + "nativeSrc": "17488:67:74", + "nodeType": "YulFunctionCall", + "src": "17488:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17481:3:74", + "nodeType": "YulIdentifier", + "src": "17481:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17653:3:74", + "nodeType": "YulIdentifier", + "src": "17653:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "17564:88:74", + "nodeType": "YulIdentifier", + "src": "17564:88:74" + }, + "nativeSrc": "17564:93:74", + "nodeType": "YulFunctionCall", + "src": "17564:93:74" + }, + "nativeSrc": "17564:93:74", + "nodeType": "YulExpressionStatement", + "src": "17564:93:74" + }, + { + "nativeSrc": "17666:19:74", + "nodeType": "YulAssignment", + "src": "17666:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17677:3:74", + "nodeType": "YulIdentifier", + "src": "17677:3:74" + }, + { + "kind": "number", + "nativeSrc": "17682:2:74", + "nodeType": "YulLiteral", + "src": "17682:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17673:3:74", + "nodeType": "YulIdentifier", + "src": "17673:3:74" + }, + "nativeSrc": "17673:12:74", + "nodeType": "YulFunctionCall", + "src": "17673:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17666:3:74", + "nodeType": "YulIdentifier", + "src": "17666:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "17325:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "17459:3:74", + "nodeType": "YulTypedName", + "src": "17459:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "17467:3:74", + "nodeType": "YulTypedName", + "src": "17467:3:74", + "type": "" + } + ], + "src": "17325:366:74" + }, + { + "body": { + "nativeSrc": "17868:248:74", + "nodeType": "YulBlock", + "src": "17868:248:74", + "statements": [ + { + "nativeSrc": "17878:26:74", + "nodeType": "YulAssignment", + "src": "17878:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17890:9:74", + "nodeType": "YulIdentifier", + "src": "17890:9:74" + }, + { + "kind": "number", + "nativeSrc": "17901:2:74", + "nodeType": "YulLiteral", + "src": "17901:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17886:3:74", + "nodeType": "YulIdentifier", + "src": "17886:3:74" + }, + "nativeSrc": "17886:18:74", + "nodeType": "YulFunctionCall", + "src": "17886:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17878:4:74", + "nodeType": "YulIdentifier", + "src": "17878:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17925:9:74", + "nodeType": "YulIdentifier", + "src": "17925:9:74" + }, + { + "kind": "number", + "nativeSrc": "17936:1:74", + "nodeType": "YulLiteral", + "src": "17936:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17921:3:74", + "nodeType": "YulIdentifier", + "src": "17921:3:74" + }, + "nativeSrc": "17921:17:74", + "nodeType": "YulFunctionCall", + "src": "17921:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "17944:4:74", + "nodeType": "YulIdentifier", + "src": "17944:4:74" + }, + { + "name": "headStart", + "nativeSrc": "17950:9:74", + "nodeType": "YulIdentifier", + "src": "17950:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17940:3:74", + "nodeType": "YulIdentifier", + "src": "17940:3:74" + }, + "nativeSrc": "17940:20:74", + "nodeType": "YulFunctionCall", + "src": "17940:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17914:6:74", + "nodeType": "YulIdentifier", + "src": "17914:6:74" + }, + "nativeSrc": "17914:47:74", + "nodeType": "YulFunctionCall", + "src": "17914:47:74" + }, + "nativeSrc": "17914:47:74", + "nodeType": "YulExpressionStatement", + "src": "17914:47:74" + }, + { + "nativeSrc": "17970:139:74", + "nodeType": "YulAssignment", + "src": "17970:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "18104:4:74", + "nodeType": "YulIdentifier", + "src": "18104:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "17978:124:74", + "nodeType": "YulIdentifier", + "src": "17978:124:74" + }, + "nativeSrc": "17978:131:74", + "nodeType": "YulFunctionCall", + "src": "17978:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17970:4:74", + "nodeType": "YulIdentifier", + "src": "17970:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "17697:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17848:9:74", + "nodeType": "YulTypedName", + "src": "17848:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17863:4:74", + "nodeType": "YulTypedName", + "src": "17863:4:74", + "type": "" + } + ], + "src": "17697:419:74" + }, + { + "body": { + "nativeSrc": "18228:117:74", + "nodeType": "YulBlock", + "src": "18228:117:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "18250:6:74", + "nodeType": "YulIdentifier", + "src": "18250:6:74" + }, + { + "kind": "number", + "nativeSrc": "18258:1:74", + "nodeType": "YulLiteral", + "src": "18258:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18246:3:74", + "nodeType": "YulIdentifier", + "src": "18246:3:74" + }, + "nativeSrc": "18246:14:74", + "nodeType": "YulFunctionCall", + "src": "18246:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", + "kind": "string", + "nativeSrc": "18262:34:74", + "nodeType": "YulLiteral", + "src": "18262:34:74", + "type": "", + "value": "ERC721: transfer to the zero add" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18239:6:74", + "nodeType": "YulIdentifier", + "src": "18239:6:74" + }, + "nativeSrc": "18239:58:74", + "nodeType": "YulFunctionCall", + "src": "18239:58:74" + }, + "nativeSrc": "18239:58:74", + "nodeType": "YulExpressionStatement", + "src": "18239:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "18318:6:74", + "nodeType": "YulIdentifier", + "src": "18318:6:74" + }, + { + "kind": "number", + "nativeSrc": "18326:2:74", + "nodeType": "YulLiteral", + "src": "18326:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18314:3:74", + "nodeType": "YulIdentifier", + "src": "18314:3:74" + }, + "nativeSrc": "18314:15:74", + "nodeType": "YulFunctionCall", + "src": "18314:15:74" + }, + { + "hexValue": "72657373", + "kind": "string", + "nativeSrc": "18331:6:74", + "nodeType": "YulLiteral", + "src": "18331:6:74", + "type": "", + "value": "ress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18307:6:74", + "nodeType": "YulIdentifier", + "src": "18307:6:74" + }, + "nativeSrc": "18307:31:74", + "nodeType": "YulFunctionCall", + "src": "18307:31:74" + }, + "nativeSrc": "18307:31:74", + "nodeType": "YulExpressionStatement", + "src": "18307:31:74" + } + ] + }, + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "18122:223:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "18220:6:74", + "nodeType": "YulTypedName", + "src": "18220:6:74", + "type": "" + } + ], + "src": "18122:223:74" + }, + { + "body": { + "nativeSrc": "18497:220:74", + "nodeType": "YulBlock", + "src": "18497:220:74", + "statements": [ + { + "nativeSrc": "18507:74:74", + "nodeType": "YulAssignment", + "src": "18507:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18573:3:74", + "nodeType": "YulIdentifier", + "src": "18573:3:74" + }, + { + "kind": "number", + "nativeSrc": "18578:2:74", + "nodeType": "YulLiteral", + "src": "18578:2:74", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "18514:58:74", + "nodeType": "YulIdentifier", + "src": "18514:58:74" + }, + "nativeSrc": "18514:67:74", + "nodeType": "YulFunctionCall", + "src": "18514:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "18507:3:74", + "nodeType": "YulIdentifier", + "src": "18507:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18679:3:74", + "nodeType": "YulIdentifier", + "src": "18679:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "18590:88:74", + "nodeType": "YulIdentifier", + "src": "18590:88:74" + }, + "nativeSrc": "18590:93:74", + "nodeType": "YulFunctionCall", + "src": "18590:93:74" + }, + "nativeSrc": "18590:93:74", + "nodeType": "YulExpressionStatement", + "src": "18590:93:74" + }, + { + "nativeSrc": "18692:19:74", + "nodeType": "YulAssignment", + "src": "18692:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18703:3:74", + "nodeType": "YulIdentifier", + "src": "18703:3:74" + }, + { + "kind": "number", + "nativeSrc": "18708:2:74", + "nodeType": "YulLiteral", + "src": "18708:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18699:3:74", + "nodeType": "YulIdentifier", + "src": "18699:3:74" + }, + "nativeSrc": "18699:12:74", + "nodeType": "YulFunctionCall", + "src": "18699:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "18692:3:74", + "nodeType": "YulIdentifier", + "src": "18692:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "18351:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "18485:3:74", + "nodeType": "YulTypedName", + "src": "18485:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "18493:3:74", + "nodeType": "YulTypedName", + "src": "18493:3:74", + "type": "" + } + ], + "src": "18351:366:74" + }, + { + "body": { + "nativeSrc": "18894:248:74", + "nodeType": "YulBlock", + "src": "18894:248:74", + "statements": [ + { + "nativeSrc": "18904:26:74", + "nodeType": "YulAssignment", + "src": "18904:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18916:9:74", + "nodeType": "YulIdentifier", + "src": "18916:9:74" + }, + { + "kind": "number", + "nativeSrc": "18927:2:74", + "nodeType": "YulLiteral", + "src": "18927:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18912:3:74", + "nodeType": "YulIdentifier", + "src": "18912:3:74" + }, + "nativeSrc": "18912:18:74", + "nodeType": "YulFunctionCall", + "src": "18912:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "18904:4:74", + "nodeType": "YulIdentifier", + "src": "18904:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18951:9:74", + "nodeType": "YulIdentifier", + "src": "18951:9:74" + }, + { + "kind": "number", + "nativeSrc": "18962:1:74", + "nodeType": "YulLiteral", + "src": "18962:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18947:3:74", + "nodeType": "YulIdentifier", + "src": "18947:3:74" + }, + "nativeSrc": "18947:17:74", + "nodeType": "YulFunctionCall", + "src": "18947:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "18970:4:74", + "nodeType": "YulIdentifier", + "src": "18970:4:74" + }, + { + "name": "headStart", + "nativeSrc": "18976:9:74", + "nodeType": "YulIdentifier", + "src": "18976:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18966:3:74", + "nodeType": "YulIdentifier", + "src": "18966:3:74" + }, + "nativeSrc": "18966:20:74", + "nodeType": "YulFunctionCall", + "src": "18966:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18940:6:74", + "nodeType": "YulIdentifier", + "src": "18940:6:74" + }, + "nativeSrc": "18940:47:74", + "nodeType": "YulFunctionCall", + "src": "18940:47:74" + }, + "nativeSrc": "18940:47:74", + "nodeType": "YulExpressionStatement", + "src": "18940:47:74" + }, + { + "nativeSrc": "18996:139:74", + "nodeType": "YulAssignment", + "src": "18996:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19130:4:74", + "nodeType": "YulIdentifier", + "src": "19130:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19004:124:74", + "nodeType": "YulIdentifier", + "src": "19004:124:74" + }, + "nativeSrc": "19004:131:74", + "nodeType": "YulFunctionCall", + "src": "19004:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "18996:4:74", + "nodeType": "YulIdentifier", + "src": "18996:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "18723:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18874:9:74", + "nodeType": "YulTypedName", + "src": "18874:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "18889:4:74", + "nodeType": "YulTypedName", + "src": "18889:4:74", + "type": "" + } + ], + "src": "18723:419:74" + }, + { + "body": { + "nativeSrc": "19254:69:74", + "nodeType": "YulBlock", + "src": "19254:69:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "19276:6:74", + "nodeType": "YulIdentifier", + "src": "19276:6:74" + }, + { + "kind": "number", + "nativeSrc": "19284:1:74", + "nodeType": "YulLiteral", + "src": "19284:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19272:3:74", + "nodeType": "YulIdentifier", + "src": "19272:3:74" + }, + "nativeSrc": "19272:14:74", + "nodeType": "YulFunctionCall", + "src": "19272:14:74" + }, + { + "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", + "kind": "string", + "nativeSrc": "19288:27:74", + "nodeType": "YulLiteral", + "src": "19288:27:74", + "type": "", + "value": "ERC721: approve to caller" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19265:6:74", + "nodeType": "YulIdentifier", + "src": "19265:6:74" + }, + "nativeSrc": "19265:51:74", + "nodeType": "YulFunctionCall", + "src": "19265:51:74" + }, + "nativeSrc": "19265:51:74", + "nodeType": "YulExpressionStatement", + "src": "19265:51:74" + } + ] + }, + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "19148:175:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "19246:6:74", + "nodeType": "YulTypedName", + "src": "19246:6:74", + "type": "" + } + ], + "src": "19148:175:74" + }, + { + "body": { + "nativeSrc": "19475:220:74", + "nodeType": "YulBlock", + "src": "19475:220:74", + "statements": [ + { + "nativeSrc": "19485:74:74", + "nodeType": "YulAssignment", + "src": "19485:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19551:3:74", + "nodeType": "YulIdentifier", + "src": "19551:3:74" + }, + { + "kind": "number", + "nativeSrc": "19556:2:74", + "nodeType": "YulLiteral", + "src": "19556:2:74", + "type": "", + "value": "25" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "19492:58:74", + "nodeType": "YulIdentifier", + "src": "19492:58:74" + }, + "nativeSrc": "19492:67:74", + "nodeType": "YulFunctionCall", + "src": "19492:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "19485:3:74", + "nodeType": "YulIdentifier", + "src": "19485:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19657:3:74", + "nodeType": "YulIdentifier", + "src": "19657:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "19568:88:74", + "nodeType": "YulIdentifier", + "src": "19568:88:74" + }, + "nativeSrc": "19568:93:74", + "nodeType": "YulFunctionCall", + "src": "19568:93:74" + }, + "nativeSrc": "19568:93:74", + "nodeType": "YulExpressionStatement", + "src": "19568:93:74" + }, + { + "nativeSrc": "19670:19:74", + "nodeType": "YulAssignment", + "src": "19670:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19681:3:74", + "nodeType": "YulIdentifier", + "src": "19681:3:74" + }, + { + "kind": "number", + "nativeSrc": "19686:2:74", + "nodeType": "YulLiteral", + "src": "19686:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19677:3:74", + "nodeType": "YulIdentifier", + "src": "19677:3:74" + }, + "nativeSrc": "19677:12:74", + "nodeType": "YulFunctionCall", + "src": "19677:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "19670:3:74", + "nodeType": "YulIdentifier", + "src": "19670:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19329:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "19463:3:74", + "nodeType": "YulTypedName", + "src": "19463:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "19471:3:74", + "nodeType": "YulTypedName", + "src": "19471:3:74", + "type": "" + } + ], + "src": "19329:366:74" + }, + { + "body": { + "nativeSrc": "19872:248:74", + "nodeType": "YulBlock", + "src": "19872:248:74", + "statements": [ + { + "nativeSrc": "19882:26:74", + "nodeType": "YulAssignment", + "src": "19882:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19894:9:74", + "nodeType": "YulIdentifier", + "src": "19894:9:74" + }, + { + "kind": "number", + "nativeSrc": "19905:2:74", + "nodeType": "YulLiteral", + "src": "19905:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19890:3:74", + "nodeType": "YulIdentifier", + "src": "19890:3:74" + }, + "nativeSrc": "19890:18:74", + "nodeType": "YulFunctionCall", + "src": "19890:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19882:4:74", + "nodeType": "YulIdentifier", + "src": "19882:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19929:9:74", + "nodeType": "YulIdentifier", + "src": "19929:9:74" + }, + { + "kind": "number", + "nativeSrc": "19940:1:74", + "nodeType": "YulLiteral", + "src": "19940:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19925:3:74", + "nodeType": "YulIdentifier", + "src": "19925:3:74" + }, + "nativeSrc": "19925:17:74", + "nodeType": "YulFunctionCall", + "src": "19925:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19948:4:74", + "nodeType": "YulIdentifier", + "src": "19948:4:74" + }, + { + "name": "headStart", + "nativeSrc": "19954:9:74", + "nodeType": "YulIdentifier", + "src": "19954:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19944:3:74", + "nodeType": "YulIdentifier", + "src": "19944:3:74" + }, + "nativeSrc": "19944:20:74", + "nodeType": "YulFunctionCall", + "src": "19944:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19918:6:74", + "nodeType": "YulIdentifier", + "src": "19918:6:74" + }, + "nativeSrc": "19918:47:74", + "nodeType": "YulFunctionCall", + "src": "19918:47:74" + }, + "nativeSrc": "19918:47:74", + "nodeType": "YulExpressionStatement", + "src": "19918:47:74" + }, + { + "nativeSrc": "19974:139:74", + "nodeType": "YulAssignment", + "src": "19974:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "20108:4:74", + "nodeType": "YulIdentifier", + "src": "20108:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19982:124:74", + "nodeType": "YulIdentifier", + "src": "19982:124:74" + }, + "nativeSrc": "19982:131:74", + "nodeType": "YulFunctionCall", + "src": "19982:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19974:4:74", + "nodeType": "YulIdentifier", + "src": "19974:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "19701:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "19852:9:74", + "nodeType": "YulTypedName", + "src": "19852:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "19867:4:74", + "nodeType": "YulTypedName", + "src": "19867:4:74", + "type": "" + } + ], + "src": "19701:419:74" + }, + { + "body": { + "nativeSrc": "20232:131:74", + "nodeType": "YulBlock", + "src": "20232:131:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "20254:6:74", + "nodeType": "YulIdentifier", + "src": "20254:6:74" + }, + { + "kind": "number", + "nativeSrc": "20262:1:74", + "nodeType": "YulLiteral", + "src": "20262:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20250:3:74", + "nodeType": "YulIdentifier", + "src": "20250:3:74" + }, + "nativeSrc": "20250:14:74", + "nodeType": "YulFunctionCall", + "src": "20250:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", + "kind": "string", + "nativeSrc": "20266:34:74", + "nodeType": "YulLiteral", + "src": "20266:34:74", + "type": "", + "value": "ERC721: transfer to non ERC721Re" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20243:6:74", + "nodeType": "YulIdentifier", + "src": "20243:6:74" + }, + "nativeSrc": "20243:58:74", + "nodeType": "YulFunctionCall", + "src": "20243:58:74" + }, + "nativeSrc": "20243:58:74", + "nodeType": "YulExpressionStatement", + "src": "20243:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "20322:6:74", + "nodeType": "YulIdentifier", + "src": "20322:6:74" + }, + { + "kind": "number", + "nativeSrc": "20330:2:74", + "nodeType": "YulLiteral", + "src": "20330:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20318:3:74", + "nodeType": "YulIdentifier", + "src": "20318:3:74" + }, + "nativeSrc": "20318:15:74", + "nodeType": "YulFunctionCall", + "src": "20318:15:74" + }, + { + "hexValue": "63656976657220696d706c656d656e746572", + "kind": "string", + "nativeSrc": "20335:20:74", + "nodeType": "YulLiteral", + "src": "20335:20:74", + "type": "", + "value": "ceiver implementer" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20311:6:74", + "nodeType": "YulIdentifier", + "src": "20311:6:74" + }, + "nativeSrc": "20311:45:74", + "nodeType": "YulFunctionCall", + "src": "20311:45:74" + }, + "nativeSrc": "20311:45:74", + "nodeType": "YulExpressionStatement", + "src": "20311:45:74" + } + ] + }, + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "20126:237:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "20224:6:74", + "nodeType": "YulTypedName", + "src": "20224:6:74", + "type": "" + } + ], + "src": "20126:237:74" + }, + { + "body": { + "nativeSrc": "20515:220:74", + "nodeType": "YulBlock", + "src": "20515:220:74", + "statements": [ + { + "nativeSrc": "20525:74:74", + "nodeType": "YulAssignment", + "src": "20525:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20591:3:74", + "nodeType": "YulIdentifier", + "src": "20591:3:74" + }, + { + "kind": "number", + "nativeSrc": "20596:2:74", + "nodeType": "YulLiteral", + "src": "20596:2:74", + "type": "", + "value": "50" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "20532:58:74", + "nodeType": "YulIdentifier", + "src": "20532:58:74" + }, + "nativeSrc": "20532:67:74", + "nodeType": "YulFunctionCall", + "src": "20532:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "20525:3:74", + "nodeType": "YulIdentifier", + "src": "20525:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20697:3:74", + "nodeType": "YulIdentifier", + "src": "20697:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "20608:88:74", + "nodeType": "YulIdentifier", + "src": "20608:88:74" + }, + "nativeSrc": "20608:93:74", + "nodeType": "YulFunctionCall", + "src": "20608:93:74" + }, + "nativeSrc": "20608:93:74", + "nodeType": "YulExpressionStatement", + "src": "20608:93:74" + }, + { + "nativeSrc": "20710:19:74", + "nodeType": "YulAssignment", + "src": "20710:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20721:3:74", + "nodeType": "YulIdentifier", + "src": "20721:3:74" + }, + { + "kind": "number", + "nativeSrc": "20726:2:74", + "nodeType": "YulLiteral", + "src": "20726:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20717:3:74", + "nodeType": "YulIdentifier", + "src": "20717:3:74" + }, + "nativeSrc": "20717:12:74", + "nodeType": "YulFunctionCall", + "src": "20717:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "20710:3:74", + "nodeType": "YulIdentifier", + "src": "20710:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "20369:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "20503:3:74", + "nodeType": "YulTypedName", + "src": "20503:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "20511:3:74", + "nodeType": "YulTypedName", + "src": "20511:3:74", + "type": "" + } + ], + "src": "20369:366:74" + }, + { + "body": { + "nativeSrc": "20912:248:74", + "nodeType": "YulBlock", + "src": "20912:248:74", + "statements": [ + { + "nativeSrc": "20922:26:74", + "nodeType": "YulAssignment", + "src": "20922:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20934:9:74", + "nodeType": "YulIdentifier", + "src": "20934:9:74" + }, + { + "kind": "number", + "nativeSrc": "20945:2:74", + "nodeType": "YulLiteral", + "src": "20945:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20930:3:74", + "nodeType": "YulIdentifier", + "src": "20930:3:74" + }, + "nativeSrc": "20930:18:74", + "nodeType": "YulFunctionCall", + "src": "20930:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "20922:4:74", + "nodeType": "YulIdentifier", + "src": "20922:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20969:9:74", + "nodeType": "YulIdentifier", + "src": "20969:9:74" + }, + { + "kind": "number", + "nativeSrc": "20980:1:74", + "nodeType": "YulLiteral", + "src": "20980:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20965:3:74", + "nodeType": "YulIdentifier", + "src": "20965:3:74" + }, + "nativeSrc": "20965:17:74", + "nodeType": "YulFunctionCall", + "src": "20965:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "20988:4:74", + "nodeType": "YulIdentifier", + "src": "20988:4:74" + }, + { + "name": "headStart", + "nativeSrc": "20994:9:74", + "nodeType": "YulIdentifier", + "src": "20994:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20984:3:74", + "nodeType": "YulIdentifier", + "src": "20984:3:74" + }, + "nativeSrc": "20984:20:74", + "nodeType": "YulFunctionCall", + "src": "20984:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20958:6:74", + "nodeType": "YulIdentifier", + "src": "20958:6:74" + }, + "nativeSrc": "20958:47:74", + "nodeType": "YulFunctionCall", + "src": "20958:47:74" + }, + "nativeSrc": "20958:47:74", + "nodeType": "YulExpressionStatement", + "src": "20958:47:74" + }, + { + "nativeSrc": "21014:139:74", + "nodeType": "YulAssignment", + "src": "21014:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "21148:4:74", + "nodeType": "YulIdentifier", + "src": "21148:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "21022:124:74", + "nodeType": "YulIdentifier", + "src": "21022:124:74" + }, + "nativeSrc": "21022:131:74", + "nodeType": "YulFunctionCall", + "src": "21022:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "21014:4:74", + "nodeType": "YulIdentifier", + "src": "21014:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "20741:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "20892:9:74", + "nodeType": "YulTypedName", + "src": "20892:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "20907:4:74", + "nodeType": "YulTypedName", + "src": "20907:4:74", + "type": "" + } + ], + "src": "20741:419:74" + }, + { + "body": { + "nativeSrc": "21194:152:74", + "nodeType": "YulBlock", + "src": "21194:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21211:1:74", + "nodeType": "YulLiteral", + "src": "21211:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "21214:77:74", + "nodeType": "YulLiteral", + "src": "21214:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21204:6:74", + "nodeType": "YulIdentifier", + "src": "21204:6:74" + }, + "nativeSrc": "21204:88:74", + "nodeType": "YulFunctionCall", + "src": "21204:88:74" + }, + "nativeSrc": "21204:88:74", + "nodeType": "YulExpressionStatement", + "src": "21204:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21308:1:74", + "nodeType": "YulLiteral", + "src": "21308:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "21311:4:74", + "nodeType": "YulLiteral", + "src": "21311:4:74", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21301:6:74", + "nodeType": "YulIdentifier", + "src": "21301:6:74" + }, + "nativeSrc": "21301:15:74", + "nodeType": "YulFunctionCall", + "src": "21301:15:74" + }, + "nativeSrc": "21301:15:74", + "nodeType": "YulExpressionStatement", + "src": "21301:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21332:1:74", + "nodeType": "YulLiteral", + "src": "21332:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "21335:4:74", + "nodeType": "YulLiteral", + "src": "21335:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "21325:6:74", + "nodeType": "YulIdentifier", + "src": "21325:6:74" + }, + "nativeSrc": "21325:15:74", + "nodeType": "YulFunctionCall", + "src": "21325:15:74" + }, + "nativeSrc": "21325:15:74", + "nodeType": "YulExpressionStatement", + "src": "21325:15:74" + } + ] + }, + "name": "panic_error_0x12", + "nativeSrc": "21166:180:74", + "nodeType": "YulFunctionDefinition", + "src": "21166:180:74" + }, + { + "body": { + "nativeSrc": "21410:40:74", + "nodeType": "YulBlock", + "src": "21410:40:74", + "statements": [ + { + "nativeSrc": "21421:22:74", + "nodeType": "YulAssignment", + "src": "21421:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "21437:5:74", + "nodeType": "YulIdentifier", + "src": "21437:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "21431:5:74", + "nodeType": "YulIdentifier", + "src": "21431:5:74" + }, + "nativeSrc": "21431:12:74", + "nodeType": "YulFunctionCall", + "src": "21431:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "21421:6:74", + "nodeType": "YulIdentifier", + "src": "21421:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "21352:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21393:5:74", + "nodeType": "YulTypedName", + "src": "21393:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "21403:6:74", + "nodeType": "YulTypedName", + "src": "21403:6:74", + "type": "" + } + ], + "src": "21352:98:74" + }, + { + "body": { + "nativeSrc": "21551:73:74", + "nodeType": "YulBlock", + "src": "21551:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21568:3:74", + "nodeType": "YulIdentifier", + "src": "21568:3:74" + }, + { + "name": "length", + "nativeSrc": "21573:6:74", + "nodeType": "YulIdentifier", + "src": "21573:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21561:6:74", + "nodeType": "YulIdentifier", + "src": "21561:6:74" + }, + "nativeSrc": "21561:19:74", + "nodeType": "YulFunctionCall", + "src": "21561:19:74" + }, + "nativeSrc": "21561:19:74", + "nodeType": "YulExpressionStatement", + "src": "21561:19:74" + }, + { + "nativeSrc": "21589:29:74", + "nodeType": "YulAssignment", + "src": "21589:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21608:3:74", + "nodeType": "YulIdentifier", + "src": "21608:3:74" + }, + { + "kind": "number", + "nativeSrc": "21613:4:74", + "nodeType": "YulLiteral", + "src": "21613:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21604:3:74", + "nodeType": "YulIdentifier", + "src": "21604:3:74" + }, + "nativeSrc": "21604:14:74", + "nodeType": "YulFunctionCall", + "src": "21604:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "21589:11:74", + "nodeType": "YulIdentifier", + "src": "21589:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "21456:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "21523:3:74", + "nodeType": "YulTypedName", + "src": "21523:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "21528:6:74", + "nodeType": "YulTypedName", + "src": "21528:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "21539:11:74", + "nodeType": "YulTypedName", + "src": "21539:11:74", + "type": "" + } + ], + "src": "21456:168:74" + }, + { + "body": { + "nativeSrc": "21720:283:74", + "nodeType": "YulBlock", + "src": "21720:283:74", + "statements": [ + { + "nativeSrc": "21730:52:74", + "nodeType": "YulVariableDeclaration", + "src": "21730:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "21776:5:74", + "nodeType": "YulIdentifier", + "src": "21776:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "21744:31:74", + "nodeType": "YulIdentifier", + "src": "21744:31:74" + }, + "nativeSrc": "21744:38:74", + "nodeType": "YulFunctionCall", + "src": "21744:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "21734:6:74", + "nodeType": "YulTypedName", + "src": "21734:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "21791:77:74", + "nodeType": "YulAssignment", + "src": "21791:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21856:3:74", + "nodeType": "YulIdentifier", + "src": "21856:3:74" + }, + { + "name": "length", + "nativeSrc": "21861:6:74", + "nodeType": "YulIdentifier", + "src": "21861:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "21798:57:74", + "nodeType": "YulIdentifier", + "src": "21798:57:74" + }, + "nativeSrc": "21798:70:74", + "nodeType": "YulFunctionCall", + "src": "21798:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "21791:3:74", + "nodeType": "YulIdentifier", + "src": "21791:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "21916:5:74", + "nodeType": "YulIdentifier", + "src": "21916:5:74" + }, + { + "kind": "number", + "nativeSrc": "21923:4:74", + "nodeType": "YulLiteral", + "src": "21923:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21912:3:74", + "nodeType": "YulIdentifier", + "src": "21912:3:74" + }, + "nativeSrc": "21912:16:74", + "nodeType": "YulFunctionCall", + "src": "21912:16:74" + }, + { + "name": "pos", + "nativeSrc": "21930:3:74", + "nodeType": "YulIdentifier", + "src": "21930:3:74" + }, + { + "name": "length", + "nativeSrc": "21935:6:74", + "nodeType": "YulIdentifier", + "src": "21935:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "21877:34:74", + "nodeType": "YulIdentifier", + "src": "21877:34:74" + }, + "nativeSrc": "21877:65:74", + "nodeType": "YulFunctionCall", + "src": "21877:65:74" + }, + "nativeSrc": "21877:65:74", + "nodeType": "YulExpressionStatement", + "src": "21877:65:74" + }, + { + "nativeSrc": "21951:46:74", + "nodeType": "YulAssignment", + "src": "21951:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21962:3:74", + "nodeType": "YulIdentifier", + "src": "21962:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "21989:6:74", + "nodeType": "YulIdentifier", + "src": "21989:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "21967:21:74", + "nodeType": "YulIdentifier", + "src": "21967:21:74" + }, + "nativeSrc": "21967:29:74", + "nodeType": "YulFunctionCall", + "src": "21967:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21958:3:74", + "nodeType": "YulIdentifier", + "src": "21958:3:74" + }, + "nativeSrc": "21958:39:74", + "nodeType": "YulFunctionCall", + "src": "21958:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "21951:3:74", + "nodeType": "YulIdentifier", + "src": "21951:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "21630:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21701:5:74", + "nodeType": "YulTypedName", + "src": "21701:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "21708:3:74", + "nodeType": "YulTypedName", + "src": "21708:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "21716:3:74", + "nodeType": "YulTypedName", + "src": "21716:3:74", + "type": "" + } + ], + "src": "21630:373:74" + }, + { + "body": { + "nativeSrc": "22209:440:74", + "nodeType": "YulBlock", + "src": "22209:440:74", + "statements": [ + { + "nativeSrc": "22219:27:74", + "nodeType": "YulAssignment", + "src": "22219:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22231:9:74", + "nodeType": "YulIdentifier", + "src": "22231:9:74" + }, + { + "kind": "number", + "nativeSrc": "22242:3:74", + "nodeType": "YulLiteral", + "src": "22242:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22227:3:74", + "nodeType": "YulIdentifier", + "src": "22227:3:74" + }, + "nativeSrc": "22227:19:74", + "nodeType": "YulFunctionCall", + "src": "22227:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22219:4:74", + "nodeType": "YulIdentifier", + "src": "22219:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "22300:6:74", + "nodeType": "YulIdentifier", + "src": "22300:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22313:9:74", + "nodeType": "YulIdentifier", + "src": "22313:9:74" + }, + { + "kind": "number", + "nativeSrc": "22324:1:74", + "nodeType": "YulLiteral", + "src": "22324:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22309:3:74", + "nodeType": "YulIdentifier", + "src": "22309:3:74" + }, + "nativeSrc": "22309:17:74", + "nodeType": "YulFunctionCall", + "src": "22309:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "22256:43:74", + "nodeType": "YulIdentifier", + "src": "22256:43:74" + }, + "nativeSrc": "22256:71:74", + "nodeType": "YulFunctionCall", + "src": "22256:71:74" + }, + "nativeSrc": "22256:71:74", + "nodeType": "YulExpressionStatement", + "src": "22256:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "22381:6:74", + "nodeType": "YulIdentifier", + "src": "22381:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22394:9:74", + "nodeType": "YulIdentifier", + "src": "22394:9:74" + }, + { + "kind": "number", + "nativeSrc": "22405:2:74", + "nodeType": "YulLiteral", + "src": "22405:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22390:3:74", + "nodeType": "YulIdentifier", + "src": "22390:3:74" + }, + "nativeSrc": "22390:18:74", + "nodeType": "YulFunctionCall", + "src": "22390:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "22337:43:74", + "nodeType": "YulIdentifier", + "src": "22337:43:74" + }, + "nativeSrc": "22337:72:74", + "nodeType": "YulFunctionCall", + "src": "22337:72:74" + }, + "nativeSrc": "22337:72:74", + "nodeType": "YulExpressionStatement", + "src": "22337:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "22463:6:74", + "nodeType": "YulIdentifier", + "src": "22463:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22476:9:74", + "nodeType": "YulIdentifier", + "src": "22476:9:74" + }, + { + "kind": "number", + "nativeSrc": "22487:2:74", + "nodeType": "YulLiteral", + "src": "22487:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22472:3:74", + "nodeType": "YulIdentifier", + "src": "22472:3:74" + }, + "nativeSrc": "22472:18:74", + "nodeType": "YulFunctionCall", + "src": "22472:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "22419:43:74", + "nodeType": "YulIdentifier", + "src": "22419:43:74" + }, + "nativeSrc": "22419:72:74", + "nodeType": "YulFunctionCall", + "src": "22419:72:74" + }, + "nativeSrc": "22419:72:74", + "nodeType": "YulExpressionStatement", + "src": "22419:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22512:9:74", + "nodeType": "YulIdentifier", + "src": "22512:9:74" + }, + { + "kind": "number", + "nativeSrc": "22523:2:74", + "nodeType": "YulLiteral", + "src": "22523:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22508:3:74", + "nodeType": "YulIdentifier", + "src": "22508:3:74" + }, + "nativeSrc": "22508:18:74", + "nodeType": "YulFunctionCall", + "src": "22508:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "22532:4:74", + "nodeType": "YulIdentifier", + "src": "22532:4:74" + }, + { + "name": "headStart", + "nativeSrc": "22538:9:74", + "nodeType": "YulIdentifier", + "src": "22538:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22528:3:74", + "nodeType": "YulIdentifier", + "src": "22528:3:74" + }, + "nativeSrc": "22528:20:74", + "nodeType": "YulFunctionCall", + "src": "22528:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22501:6:74", + "nodeType": "YulIdentifier", + "src": "22501:6:74" + }, + "nativeSrc": "22501:48:74", + "nodeType": "YulFunctionCall", + "src": "22501:48:74" + }, + "nativeSrc": "22501:48:74", + "nodeType": "YulExpressionStatement", + "src": "22501:48:74" + }, + { + "nativeSrc": "22558:84:74", + "nodeType": "YulAssignment", + "src": "22558:84:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "22628:6:74", + "nodeType": "YulIdentifier", + "src": "22628:6:74" + }, + { + "name": "tail", + "nativeSrc": "22637:4:74", + "nodeType": "YulIdentifier", + "src": "22637:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "22566:61:74", + "nodeType": "YulIdentifier", + "src": "22566:61:74" + }, + "nativeSrc": "22566:76:74", + "nodeType": "YulFunctionCall", + "src": "22566:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22558:4:74", + "nodeType": "YulIdentifier", + "src": "22558:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "22009:640:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22157:9:74", + "nodeType": "YulTypedName", + "src": "22157:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "22169:6:74", + "nodeType": "YulTypedName", + "src": "22169:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "22177:6:74", + "nodeType": "YulTypedName", + "src": "22177:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "22185:6:74", + "nodeType": "YulTypedName", + "src": "22185:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "22193:6:74", + "nodeType": "YulTypedName", + "src": "22193:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "22204:4:74", + "nodeType": "YulTypedName", + "src": "22204:4:74", + "type": "" + } + ], + "src": "22009:640:74" + }, + { + "body": { + "nativeSrc": "22717:79:74", + "nodeType": "YulBlock", + "src": "22717:79:74", + "statements": [ + { + "nativeSrc": "22727:22:74", + "nodeType": "YulAssignment", + "src": "22727:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "22742:6:74", + "nodeType": "YulIdentifier", + "src": "22742:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "22736:5:74", + "nodeType": "YulIdentifier", + "src": "22736:5:74" + }, + "nativeSrc": "22736:13:74", + "nodeType": "YulFunctionCall", + "src": "22736:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "22727:5:74", + "nodeType": "YulIdentifier", + "src": "22727:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22784:5:74", + "nodeType": "YulIdentifier", + "src": "22784:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "22758:25:74", + "nodeType": "YulIdentifier", + "src": "22758:25:74" + }, + "nativeSrc": "22758:32:74", + "nodeType": "YulFunctionCall", + "src": "22758:32:74" + }, + "nativeSrc": "22758:32:74", + "nodeType": "YulExpressionStatement", + "src": "22758:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "22655:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "22695:6:74", + "nodeType": "YulTypedName", + "src": "22695:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "22703:3:74", + "nodeType": "YulTypedName", + "src": "22703:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "22711:5:74", + "nodeType": "YulTypedName", + "src": "22711:5:74", + "type": "" + } + ], + "src": "22655:141:74" + }, + { + "body": { + "nativeSrc": "22878:273:74", + "nodeType": "YulBlock", + "src": "22878:273:74", + "statements": [ + { + "body": { + "nativeSrc": "22924:83:74", + "nodeType": "YulBlock", + "src": "22924:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "22926:77:74", + "nodeType": "YulIdentifier", + "src": "22926:77:74" + }, + "nativeSrc": "22926:79:74", + "nodeType": "YulFunctionCall", + "src": "22926:79:74" + }, + "nativeSrc": "22926:79:74", + "nodeType": "YulExpressionStatement", + "src": "22926:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "22899:7:74", + "nodeType": "YulIdentifier", + "src": "22899:7:74" + }, + { + "name": "headStart", + "nativeSrc": "22908:9:74", + "nodeType": "YulIdentifier", + "src": "22908:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22895:3:74", + "nodeType": "YulIdentifier", + "src": "22895:3:74" + }, + "nativeSrc": "22895:23:74", + "nodeType": "YulFunctionCall", + "src": "22895:23:74" + }, + { + "kind": "number", + "nativeSrc": "22920:2:74", + "nodeType": "YulLiteral", + "src": "22920:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "22891:3:74", + "nodeType": "YulIdentifier", + "src": "22891:3:74" + }, + "nativeSrc": "22891:32:74", + "nodeType": "YulFunctionCall", + "src": "22891:32:74" + }, + "nativeSrc": "22888:119:74", + "nodeType": "YulIf", + "src": "22888:119:74" + }, + { + "nativeSrc": "23017:127:74", + "nodeType": "YulBlock", + "src": "23017:127:74", + "statements": [ + { + "nativeSrc": "23032:15:74", + "nodeType": "YulVariableDeclaration", + "src": "23032:15:74", + "value": { + "kind": "number", + "nativeSrc": "23046:1:74", + "nodeType": "YulLiteral", + "src": "23046:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23036:6:74", + "nodeType": "YulTypedName", + "src": "23036:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23061:73:74", + "nodeType": "YulAssignment", + "src": "23061:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23106:9:74", + "nodeType": "YulIdentifier", + "src": "23106:9:74" + }, + { + "name": "offset", + "nativeSrc": "23117:6:74", + "nodeType": "YulIdentifier", + "src": "23117:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23102:3:74", + "nodeType": "YulIdentifier", + "src": "23102:3:74" + }, + "nativeSrc": "23102:22:74", + "nodeType": "YulFunctionCall", + "src": "23102:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "23126:7:74", + "nodeType": "YulIdentifier", + "src": "23126:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "23071:30:74", + "nodeType": "YulIdentifier", + "src": "23071:30:74" + }, + "nativeSrc": "23071:63:74", + "nodeType": "YulFunctionCall", + "src": "23071:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "23061:6:74", + "nodeType": "YulIdentifier", + "src": "23061:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4_fromMemory", + "nativeSrc": "22802:349:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22848:9:74", + "nodeType": "YulTypedName", + "src": "22848:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "22859:7:74", + "nodeType": "YulTypedName", + "src": "22859:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "22871:6:74", + "nodeType": "YulTypedName", + "src": "22871:6:74", + "type": "" + } + ], + "src": "22802:349:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: caller is not token owne\")\n\n mstore(add(memPtr, 32), \"r or approved\")\n\n }\n\n function abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: invalid token ID\")\n\n }\n\n function abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: address zero is not a va\")\n\n mstore(add(memPtr, 32), \"lid owner\")\n\n }\n\n function abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer from incorrect \")\n\n mstore(add(memPtr, 32), \"owner\")\n\n }\n\n function abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve to caller\")\n\n }\n\n function abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to non ERC721Re\")\n\n mstore(add(memPtr, 32), \"ceiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610224578063b88d4fde14610240578063c87b56dd1461025c578063e985e9c51461028c576100cf565b80636352211e146101a657806370a08231146101d657806395d89b4114610206576100cf565b806301ffc9a7146100d457806306fdde0314610104578063081812fc14610122578063095ea7b31461015257806323b872dd1461016e57806342842e0e1461018a575b600080fd5b6100ee60048036038101906100e991906114f4565b6102bc565b6040516100fb919061153c565b60405180910390f35b61010c61039e565b60405161011991906115e7565b60405180910390f35b61013c6004803603810190610137919061163f565b610430565b60405161014991906116ad565b60405180910390f35b61016c600480360381019061016791906116f4565b610476565b005b61018860048036038101906101839190611734565b61058d565b005b6101a4600480360381019061019f9190611734565b6105ed565b005b6101c060048036038101906101bb919061163f565b61060d565b6040516101cd91906116ad565b60405180910390f35b6101f060048036038101906101eb9190611787565b610693565b6040516101fd91906117c3565b60405180910390f35b61020e61074a565b60405161021b91906115e7565b60405180910390f35b61023e6004803603810190610239919061180a565b6107dc565b005b61025a6004803603810190610255919061197f565b6107f2565b005b6102766004803603810190610271919061163f565b610854565b60405161028391906115e7565b60405180910390f35b6102a660048036038101906102a19190611a02565b6108bc565b6040516102b3919061153c565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061038757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610397575061039682610950565b5b9050919050565b6060600080546103ad90611a71565b80601f01602080910402602001604051908101604052809291908181526020018280546103d990611a71565b80156104265780601f106103fb57610100808354040283529160200191610426565b820191906000526020600020905b81548152906001019060200180831161040957829003601f168201915b5050505050905090565b600061043b826109ba565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104818261060d565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036104f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e890611b14565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610510610a05565b73ffffffffffffffffffffffffffffffffffffffff16148061053f575061053e81610539610a05565b6108bc565b5b61057e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057590611ba6565b60405180910390fd5b6105888383610a0d565b505050565b61059e610598610a05565b82610ac6565b6105dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d490611c38565b60405180910390fd5b6105e8838383610b5b565b505050565b610608838383604051806020016040528060008152506107f2565b505050565b60008061061983610e54565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361068a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068190611ca4565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa90611d36565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606001805461075990611a71565b80601f016020809104026020016040519081016040528092919081815260200182805461078590611a71565b80156107d25780601f106107a7576101008083540402835291602001916107d2565b820191906000526020600020905b8154815290600101906020018083116107b557829003601f168201915b5050505050905090565b6107ee6107e7610a05565b8383610e91565b5050565b6108036107fd610a05565b83610ac6565b610842576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083990611c38565b60405180910390fd5b61084e84848484610ffd565b50505050565b606061085f826109ba565b6000610869611059565b9050600081511161088957604051806020016040528060008152506108b4565b8061089384611070565b6040516020016108a4929190611d92565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6109c38161113e565b610a02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f990611ca4565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610a808361060d565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610ad28361060d565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610b145750610b1381856108bc565b5b80610b5257508373ffffffffffffffffffffffffffffffffffffffff16610b3a84610430565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610b7b8261060d565b73ffffffffffffffffffffffffffffffffffffffff1614610bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc890611e28565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3790611eba565b60405180910390fd5b610c4d838383600161117f565b8273ffffffffffffffffffffffffffffffffffffffff16610c6d8261060d565b73ffffffffffffffffffffffffffffffffffffffff1614610cc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cba90611e28565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610e4f8383836001611185565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef690611f26565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610ff0919061153c565b60405180910390a3505050565b611008848484610b5b565b6110148484848461118b565b611053576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104a90611fb8565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b60606000600161107f84611312565b01905060008167ffffffffffffffff81111561109e5761109d611854565b5b6040519080825280601f01601f1916602001820160405280156110d05781602001600182028036833780820191505090505b509050600082602001820190505b600115611133578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161112757611126611fd8565b5b049450600085036110de575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff1661116083610e54565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b50505050565b50505050565b60006111ac8473ffffffffffffffffffffffffffffffffffffffff16611465565b15611305578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026111d5610a05565b8786866040518563ffffffff1660e01b81526004016111f7949392919061205c565b6020604051808303816000875af192505050801561123357506040513d601f19601f8201168201806040525081019061123091906120bd565b60015b6112b5573d8060008114611263576040519150601f19603f3d011682016040523d82523d6000602084013e611268565b606091505b5060008151036112ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a490611fb8565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061130a565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611370577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161136657611365611fd8565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106113ad576d04ee2d6d415b85acef810000000083816113a3576113a2611fd8565b5b0492506020810190505b662386f26fc1000083106113dc57662386f26fc1000083816113d2576113d1611fd8565b5b0492506010810190505b6305f5e1008310611405576305f5e10083816113fb576113fa611fd8565b5b0492506008810190505b612710831061142a5761271083816114205761141f611fd8565b5b0492506004810190505b6064831061144d576064838161144357611442611fd8565b5b0492506002810190505b600a831061145c576001810190505b80915050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114d18161149c565b81146114dc57600080fd5b50565b6000813590506114ee816114c8565b92915050565b60006020828403121561150a57611509611492565b5b6000611518848285016114df565b91505092915050565b60008115159050919050565b61153681611521565b82525050565b6000602082019050611551600083018461152d565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611591578082015181840152602081019050611576565b60008484015250505050565b6000601f19601f8301169050919050565b60006115b982611557565b6115c38185611562565b93506115d3818560208601611573565b6115dc8161159d565b840191505092915050565b6000602082019050818103600083015261160181846115ae565b905092915050565b6000819050919050565b61161c81611609565b811461162757600080fd5b50565b60008135905061163981611613565b92915050565b60006020828403121561165557611654611492565b5b60006116638482850161162a565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116978261166c565b9050919050565b6116a78161168c565b82525050565b60006020820190506116c2600083018461169e565b92915050565b6116d18161168c565b81146116dc57600080fd5b50565b6000813590506116ee816116c8565b92915050565b6000806040838503121561170b5761170a611492565b5b6000611719858286016116df565b925050602061172a8582860161162a565b9150509250929050565b60008060006060848603121561174d5761174c611492565b5b600061175b868287016116df565b935050602061176c868287016116df565b925050604061177d8682870161162a565b9150509250925092565b60006020828403121561179d5761179c611492565b5b60006117ab848285016116df565b91505092915050565b6117bd81611609565b82525050565b60006020820190506117d860008301846117b4565b92915050565b6117e781611521565b81146117f257600080fd5b50565b600081359050611804816117de565b92915050565b6000806040838503121561182157611820611492565b5b600061182f858286016116df565b9250506020611840858286016117f5565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61188c8261159d565b810181811067ffffffffffffffff821117156118ab576118aa611854565b5b80604052505050565b60006118be611488565b90506118ca8282611883565b919050565b600067ffffffffffffffff8211156118ea576118e9611854565b5b6118f38261159d565b9050602081019050919050565b82818337600083830152505050565b600061192261191d846118cf565b6118b4565b90508281526020810184848401111561193e5761193d61184f565b5b611949848285611900565b509392505050565b600082601f8301126119665761196561184a565b5b813561197684826020860161190f565b91505092915050565b6000806000806080858703121561199957611998611492565b5b60006119a7878288016116df565b94505060206119b8878288016116df565b93505060406119c98782880161162a565b925050606085013567ffffffffffffffff8111156119ea576119e9611497565b5b6119f687828801611951565b91505092959194509250565b60008060408385031215611a1957611a18611492565b5b6000611a27858286016116df565b9250506020611a38858286016116df565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611a8957607f821691505b602082108103611a9c57611a9b611a42565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611afe602183611562565b9150611b0982611aa2565b604082019050919050565b60006020820190508181036000830152611b2d81611af1565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000611b90603d83611562565b9150611b9b82611b34565b604082019050919050565b60006020820190508181036000830152611bbf81611b83565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000611c22602d83611562565b9150611c2d82611bc6565b604082019050919050565b60006020820190508181036000830152611c5181611c15565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000611c8e601883611562565b9150611c9982611c58565b602082019050919050565b60006020820190508181036000830152611cbd81611c81565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000611d20602983611562565b9150611d2b82611cc4565b604082019050919050565b60006020820190508181036000830152611d4f81611d13565b9050919050565b600081905092915050565b6000611d6c82611557565b611d768185611d56565b9350611d86818560208601611573565b80840191505092915050565b6000611d9e8285611d61565b9150611daa8284611d61565b91508190509392505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611e12602583611562565b9150611e1d82611db6565b604082019050919050565b60006020820190508181036000830152611e4181611e05565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611ea4602483611562565b9150611eaf82611e48565b604082019050919050565b60006020820190508181036000830152611ed381611e97565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000611f10601983611562565b9150611f1b82611eda565b602082019050919050565b60006020820190508181036000830152611f3f81611f03565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000611fa2603283611562565b9150611fad82611f46565b604082019050919050565b60006020820190508181036000830152611fd181611f95565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b600061202e82612007565b6120388185612012565b9350612048818560208601611573565b6120518161159d565b840191505092915050565b6000608082019050612071600083018761169e565b61207e602083018661169e565b61208b60408301856117b4565b818103606083015261209d8184612023565b905095945050505050565b6000815190506120b7816114c8565b92915050565b6000602082840312156120d3576120d2611492565b5b60006120e1848285016120a8565b9150509291505056fea26469706673582212208187a433705b7db01eeb53df512e7e78c9604dae90bbae3f8281a0f9013dd7f364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xCF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6352211E GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x224 JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x240 JUMPI DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x25C JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x28C JUMPI PUSH2 0xCF JUMP JUMPDEST DUP1 PUSH4 0x6352211E EQ PUSH2 0x1A6 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x1D6 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x206 JUMPI PUSH2 0xCF JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x104 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x122 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x152 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0x42842E0E EQ PUSH2 0x18A JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xEE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x14F4 JUMP JUMPDEST PUSH2 0x2BC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xFB SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x10C PUSH2 0x39E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x13C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x137 SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x430 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x149 SWAP2 SWAP1 PUSH2 0x16AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x16C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x167 SWAP2 SWAP1 PUSH2 0x16F4 JUMP JUMPDEST PUSH2 0x476 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x1734 JUMP JUMPDEST PUSH2 0x58D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1A4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x19F SWAP2 SWAP1 PUSH2 0x1734 JUMP JUMPDEST PUSH2 0x5ED JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1BB SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x60D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CD SWAP2 SWAP1 PUSH2 0x16AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1EB SWAP2 SWAP1 PUSH2 0x1787 JUMP JUMPDEST PUSH2 0x693 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FD SWAP2 SWAP1 PUSH2 0x17C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20E PUSH2 0x74A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x21B SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x239 SWAP2 SWAP1 PUSH2 0x180A JUMP JUMPDEST PUSH2 0x7DC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x25A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x255 SWAP2 SWAP1 PUSH2 0x197F JUMP JUMPDEST PUSH2 0x7F2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x276 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x271 SWAP2 SWAP1 PUSH2 0x163F JUMP JUMPDEST PUSH2 0x854 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x283 SWAP2 SWAP1 PUSH2 0x15E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2A6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A1 SWAP2 SWAP1 PUSH2 0x1A02 JUMP JUMPDEST PUSH2 0x8BC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B3 SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x80AC58CD00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x387 JUMPI POP PUSH32 0x5B5E139F00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x397 JUMPI POP PUSH2 0x396 DUP3 PUSH2 0x950 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x3AD SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x3D9 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x426 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x3FB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x426 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x409 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x43B DUP3 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x481 DUP3 PUSH2 0x60D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x4F1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E8 SWAP1 PUSH2 0x1B14 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x510 PUSH2 0xA05 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x53F JUMPI POP PUSH2 0x53E DUP2 PUSH2 0x539 PUSH2 0xA05 JUMP JUMPDEST PUSH2 0x8BC JUMP JUMPDEST JUMPDEST PUSH2 0x57E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x575 SWAP1 PUSH2 0x1BA6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x588 DUP4 DUP4 PUSH2 0xA0D JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x59E PUSH2 0x598 PUSH2 0xA05 JUMP JUMPDEST DUP3 PUSH2 0xAC6 JUMP JUMPDEST PUSH2 0x5DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5D4 SWAP1 PUSH2 0x1C38 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x5E8 DUP4 DUP4 DUP4 PUSH2 0xB5B JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x608 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x7F2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x619 DUP4 PUSH2 0xE54 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x68A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x681 SWAP1 PUSH2 0x1CA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x703 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FA SWAP1 PUSH2 0x1D36 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x759 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x785 SWAP1 PUSH2 0x1A71 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7D2 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x7A7 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7D2 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7B5 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EE PUSH2 0x7E7 PUSH2 0xA05 JUMP JUMPDEST DUP4 DUP4 PUSH2 0xE91 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x803 PUSH2 0x7FD PUSH2 0xA05 JUMP JUMPDEST DUP4 PUSH2 0xAC6 JUMP JUMPDEST PUSH2 0x842 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x839 SWAP1 PUSH2 0x1C38 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x84E DUP5 DUP5 DUP5 DUP5 PUSH2 0xFFD JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x85F DUP3 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x0 PUSH2 0x869 PUSH2 0x1059 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x889 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x8B4 JUMP JUMPDEST DUP1 PUSH2 0x893 DUP5 PUSH2 0x1070 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x8A4 SWAP3 SWAP2 SWAP1 PUSH2 0x1D92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x9C3 DUP2 PUSH2 0x113E JUMP JUMPDEST PUSH2 0xA02 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9F9 SWAP1 PUSH2 0x1CA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xA80 DUP4 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xAD2 DUP4 PUSH2 0x60D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB14 JUMPI POP PUSH2 0xB13 DUP2 DUP6 PUSH2 0x8BC JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xB52 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB3A DUP5 PUSH2 0x430 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xB7B DUP3 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xBD1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC8 SWAP1 PUSH2 0x1E28 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xC40 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC37 SWAP1 PUSH2 0x1EBA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xC4D DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x117F JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC6D DUP3 PUSH2 0x60D JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xCC3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCBA SWAP1 PUSH2 0x1E28 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0xE4F DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1185 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xEFF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEF6 SWAP1 PUSH2 0x1F26 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0xFF0 SWAP2 SWAP1 PUSH2 0x153C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x1008 DUP5 DUP5 DUP5 PUSH2 0xB5B JUMP JUMPDEST PUSH2 0x1014 DUP5 DUP5 DUP5 DUP5 PUSH2 0x118B JUMP JUMPDEST PUSH2 0x1053 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x104A SWAP1 PUSH2 0x1FB8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x107F DUP5 PUSH2 0x1312 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x109E JUMPI PUSH2 0x109D PUSH2 0x1854 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x10D0 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x1133 JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x1127 JUMPI PUSH2 0x1126 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x10DE JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1160 DUP4 PUSH2 0xE54 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x11AC DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1465 JUMP JUMPDEST ISZERO PUSH2 0x1305 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x11D5 PUSH2 0xA05 JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11F7 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x1233 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1230 SWAP2 SWAP1 PUSH2 0x20BD JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x12B5 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x1263 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x1268 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x12AD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A4 SWAP1 PUSH2 0x1FB8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x130A JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x1370 JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x1366 JUMPI PUSH2 0x1365 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x13AD JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x13A3 JUMPI PUSH2 0x13A2 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x13DC JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x13D2 JUMPI PUSH2 0x13D1 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x1405 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x13FB JUMPI PUSH2 0x13FA PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x142A JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x1420 JUMPI PUSH2 0x141F PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x144D JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x1443 JUMPI PUSH2 0x1442 PUSH2 0x1FD8 JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x145C JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x14D1 DUP2 PUSH2 0x149C JUMP JUMPDEST DUP2 EQ PUSH2 0x14DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14EE DUP2 PUSH2 0x14C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x150A JUMPI PUSH2 0x1509 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1518 DUP5 DUP3 DUP6 ADD PUSH2 0x14DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1536 DUP2 PUSH2 0x1521 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1551 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1591 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1576 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15B9 DUP3 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x15C3 DUP2 DUP6 PUSH2 0x1562 JUMP JUMPDEST SWAP4 POP PUSH2 0x15D3 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST PUSH2 0x15DC DUP2 PUSH2 0x159D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1601 DUP2 DUP5 PUSH2 0x15AE JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x161C DUP2 PUSH2 0x1609 JUMP JUMPDEST DUP2 EQ PUSH2 0x1627 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1639 DUP2 PUSH2 0x1613 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1655 JUMPI PUSH2 0x1654 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1663 DUP5 DUP3 DUP6 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1697 DUP3 PUSH2 0x166C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x16A7 DUP2 PUSH2 0x168C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x16C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x169E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x16D1 DUP2 PUSH2 0x168C JUMP JUMPDEST DUP2 EQ PUSH2 0x16DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x16EE DUP2 PUSH2 0x16C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x170B JUMPI PUSH2 0x170A PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1719 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x172A DUP6 DUP3 DUP7 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x174D JUMPI PUSH2 0x174C PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x175B DUP7 DUP3 DUP8 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x176C DUP7 DUP3 DUP8 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x177D DUP7 DUP3 DUP8 ADD PUSH2 0x162A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x179D JUMPI PUSH2 0x179C PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x17AB DUP5 DUP3 DUP6 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x17BD DUP2 PUSH2 0x1609 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x17D8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x17B4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x17E7 DUP2 PUSH2 0x1521 JUMP JUMPDEST DUP2 EQ PUSH2 0x17F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1804 DUP2 PUSH2 0x17DE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1821 JUMPI PUSH2 0x1820 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x182F DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1840 DUP6 DUP3 DUP7 ADD PUSH2 0x17F5 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x188C DUP3 PUSH2 0x159D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x18AB JUMPI PUSH2 0x18AA PUSH2 0x1854 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18BE PUSH2 0x1488 JUMP JUMPDEST SWAP1 POP PUSH2 0x18CA DUP3 DUP3 PUSH2 0x1883 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x18EA JUMPI PUSH2 0x18E9 PUSH2 0x1854 JUMP JUMPDEST JUMPDEST PUSH2 0x18F3 DUP3 PUSH2 0x159D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1922 PUSH2 0x191D DUP5 PUSH2 0x18CF JUMP JUMPDEST PUSH2 0x18B4 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x193E JUMPI PUSH2 0x193D PUSH2 0x184F JUMP JUMPDEST JUMPDEST PUSH2 0x1949 DUP5 DUP3 DUP6 PUSH2 0x1900 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1966 JUMPI PUSH2 0x1965 PUSH2 0x184A JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1976 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x190F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1999 JUMPI PUSH2 0x1998 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x19A7 DUP8 DUP3 DUP9 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x19B8 DUP8 DUP3 DUP9 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x19C9 DUP8 DUP3 DUP9 ADD PUSH2 0x162A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x19EA JUMPI PUSH2 0x19E9 PUSH2 0x1497 JUMP JUMPDEST JUMPDEST PUSH2 0x19F6 DUP8 DUP3 DUP9 ADD PUSH2 0x1951 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1A19 JUMPI PUSH2 0x1A18 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A27 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1A38 DUP6 DUP3 DUP7 ADD PUSH2 0x16DF JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1A89 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1A9C JUMPI PUSH2 0x1A9B PUSH2 0x1A42 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AFE PUSH1 0x21 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B09 DUP3 PUSH2 0x1AA2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1B2D DUP2 PUSH2 0x1AF1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B90 PUSH1 0x3D DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B9B DUP3 PUSH2 0x1B34 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1BBF DUP2 PUSH2 0x1B83 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C22 PUSH1 0x2D DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C2D DUP3 PUSH2 0x1BC6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1C51 DUP2 PUSH2 0x1C15 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C8E PUSH1 0x18 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C99 DUP3 PUSH2 0x1C58 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1CBD DUP2 PUSH2 0x1C81 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D20 PUSH1 0x29 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D2B DUP3 PUSH2 0x1CC4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1D4F DUP2 PUSH2 0x1D13 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D6C DUP3 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x1D76 DUP2 DUP6 PUSH2 0x1D56 JUMP JUMPDEST SWAP4 POP PUSH2 0x1D86 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D9E DUP3 DUP6 PUSH2 0x1D61 JUMP JUMPDEST SWAP2 POP PUSH2 0x1DAA DUP3 DUP5 PUSH2 0x1D61 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E12 PUSH1 0x25 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E1D DUP3 PUSH2 0x1DB6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E41 DUP2 PUSH2 0x1E05 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EA4 PUSH1 0x24 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EAF DUP3 PUSH2 0x1E48 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1ED3 DUP2 PUSH2 0x1E97 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F10 PUSH1 0x19 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F1B DUP3 PUSH2 0x1EDA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1F3F DUP2 PUSH2 0x1F03 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA2 PUSH1 0x32 DUP4 PUSH2 0x1562 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FAD DUP3 PUSH2 0x1F46 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1FD1 DUP2 PUSH2 0x1F95 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x202E DUP3 PUSH2 0x2007 JUMP JUMPDEST PUSH2 0x2038 DUP2 DUP6 PUSH2 0x2012 JUMP JUMPDEST SWAP4 POP PUSH2 0x2048 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1573 JUMP JUMPDEST PUSH2 0x2051 DUP2 PUSH2 0x159D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x2071 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x169E JUMP JUMPDEST PUSH2 0x207E PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x169E JUMP JUMPDEST PUSH2 0x208B PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x17B4 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x209D DUP2 DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x20B7 DUP2 PUSH2 0x14C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20D3 JUMPI PUSH2 0x20D2 PUSH2 0x1492 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x20E1 DUP5 DUP3 DUP6 ADD PUSH2 0x20A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP2 DUP8 LOG4 CALLER PUSH17 0x5B7DB01EEB53DF512E7E78C9604DAE90BB 0xAE EXTCODEHASH DUP3 DUP2 LOG0 0xF9 ADD RETURNDATASIZE 0xD7 RETURN PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "628:16377:55:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570:300;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3935:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4612:296;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4974:149;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2190:219;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2633:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4169:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5189:276;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2801;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4388:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1570:300;1672:4;1722:25;1707:40;;;:11;:40;;;;:104;;;;1778:33;1763:48;;;:11;:48;;;;1707:104;:156;;;;1827:36;1851:11;1827:23;:36::i;:::-;1707:156;1688:175;;1570:300;;;:::o;2471:98::-;2525:13;2557:5;2550:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2471:98;:::o;3935:167::-;4011:7;4030:23;4045:7;4030:14;:23::i;:::-;4071:15;:24;4087:7;4071:24;;;;;;;;;;;;;;;;;;;;;4064:31;;3935:167;;;:::o;3468:406::-;3548:13;3564:23;3579:7;3564:14;:23::i;:::-;3548:39;;3611:5;3605:11;;:2;:11;;;3597:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3702:5;3686:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3711:37;3728:5;3735:12;:10;:12::i;:::-;3711:16;:37::i;:::-;3686:62;3665:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;3846:21;3855:2;3859:7;3846:8;:21::i;:::-;3538:336;3468:406;;:::o;4612:296::-;4771:41;4790:12;:10;:12::i;:::-;4804:7;4771:18;:41::i;:::-;4763:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;4873:28;4883:4;4889:2;4893:7;4873:9;:28::i;:::-;4612:296;;;:::o;4974:149::-;5077:39;5094:4;5100:2;5104:7;5077:39;;;;;;;;;;;;:16;:39::i;:::-;4974:149;;;:::o;2190:219::-;2262:7;2281:13;2297:17;2306:7;2297:8;:17::i;:::-;2281:33;;2349:1;2332:19;;:5;:19;;;2324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2397:5;2390:12;;;2190:219;;;:::o;1929:204::-;2001:7;2045:1;2028:19;;:5;:19;;;2020:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2110:9;:16;2120:5;2110:16;;;;;;;;;;;;;;;;2103:23;;1929:204;;;:::o;2633:102::-;2689:13;2721:7;2714:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:102;:::o;4169:153::-;4263:52;4282:12;:10;:12::i;:::-;4296:8;4306;4263:18;:52::i;:::-;4169:153;;:::o;5189:276::-;5319:41;5338:12;:10;:12::i;:::-;5352:7;5319:18;:41::i;:::-;5311:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;5420:38;5434:4;5440:2;5444:7;5453:4;5420:13;:38::i;:::-;5189:276;;;;:::o;2801:::-;2874:13;2899:23;2914:7;2899:14;:23::i;:::-;2933:21;2957:10;:8;:10::i;:::-;2933:34;;3008:1;2990:7;2984:21;:25;:86;;;;;;;;;;;;;;;;;3036:7;3045:18;:7;:16;:18::i;:::-;3019:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2984:86;2977:93;;;2801:276;;;:::o;4388:162::-;4485:4;4508:18;:25;4527:5;4508:25;;;;;;;;;;;;;;;:35;4534:8;4508:35;;;;;;;;;;;;;;;;;;;;;;;;;4501:42;;4388:162;;;;:::o;829:155:62:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;13240:133:55:-;13321:16;13329:7;13321;:16::i;:::-;13313:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;13240:133;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;12572:171:55:-;12673:2;12646:15;:24;12662:7;12646:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12728:7;12724:2;12690:46;;12699:23;12714:7;12699:14;:23::i;:::-;12690:46;;;;;;;;;;;;12572:171;;:::o;7404:261::-;7497:4;7513:13;7529:23;7544:7;7529:14;:23::i;:::-;7513:39;;7581:5;7570:16;;:7;:16;;;:52;;;;7590:32;7607:5;7614:7;7590:16;:32::i;:::-;7570:52;:87;;;;7650:7;7626:31;;:20;7638:7;7626:11;:20::i;:::-;:31;;;7570:87;7562:96;;;7404:261;;;;:::o;11257:1203::-;11381:4;11354:31;;:23;11369:7;11354:14;:23::i;:::-;:31;;;11346:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11459:1;11445:16;;:2;:16;;;11437:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;11513:42;11534:4;11540:2;11544:7;11553:1;11513:20;:42::i;:::-;11682:4;11655:31;;:23;11670:7;11655:14;:23::i;:::-;:31;;;11647:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11797:15;:24;11813:7;11797:24;;;;;;;;;;;;11790:31;;;;;;;;;;;12284:1;12265:9;:15;12275:4;12265:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;12316:1;12299:9;:13;12309:2;12299:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;12356:2;12337:7;:16;12345:7;12337:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12393:7;12389:2;12374:27;;12383:4;12374:27;;;;;;;;;;;;12412:41;12432:4;12438:2;12442:7;12451:1;12412:19;:41::i;:::-;11257:1203;;;:::o;6702:115::-;6768:7;6794;:16;6802:7;6794:16;;;;;;;;;;;;;;;;;;;;;6787:23;;6702:115;;;:::o;12879:277::-;12999:8;12990:17;;:5;:17;;;12982:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13085:8;13047:18;:25;13066:5;13047:25;;;;;;;;;;;;;;;:35;13073:8;13047:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;13130:8;13108:41;;13123:5;13108:41;;;13140:8;13108:41;;;;;;:::i;:::-;;;;;;;;12879:277;;;:::o;6326:267::-;6438:28;6448:4;6454:2;6458:7;6438:9;:28::i;:::-;6484:47;6507:4;6513:2;6517:7;6526:4;6484:22;:47::i;:::-;6476:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;6326:267;;;;:::o;3319:92::-;3370:13;3395:9;;;;;;;;;;;;;;3319:92;:::o;447:696:61:-;503:13;552:14;589:1;569:17;580:5;569:10;:17::i;:::-;:21;552:38;;604:20;638:6;627:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;604:41;;659:11;785:6;781:2;777:15;769:6;765:28;758:35;;820:280;827:4;820:280;;;851:5;;;;;;;;990:8;985:2;978:5;974:14;969:30;964:3;956:44;1044:2;1035:11;;;;;;:::i;:::-;;;;;1077:1;1068:5;:10;820:280;1064:21;820:280;1120:6;1113:13;;;;;447:696;;;:::o;7120:126:55:-;7185:4;7237:1;7208:31;;:17;7217:7;7208:8;:17::i;:::-;:31;;;;7201:38;;7120:126;;;:::o;15472:116::-;;;;;:::o;16294:115::-;;;;;:::o;13925:831::-;14074:4;14094:15;:2;:13;;;:15::i;:::-;14090:660;;;14145:2;14129:36;;;14166:12;:10;:12::i;:::-;14180:4;14186:7;14195:4;14129:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;14125:573;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14384:1;14367:6;:13;:18;14363:321;;14409:60;;;;;;;;;;:::i;:::-;;;;;;;;14363:321;14636:6;14630:13;14621:6;14617:2;14613:15;14606:38;14125:573;14260:41;;;14250:51;;;:6;:51;;;;14243:58;;;;;14090:660;14735:4;14728:11;;13925:831;;;;;;;:::o;10139:916:64:-;10192:7;10211:14;10228:1;10211:18;;10276:8;10267:5;:17;10263:103;;10313:8;10304:17;;;;;;:::i;:::-;;;;;10349:2;10339:12;;;;10263:103;10392:8;10383:5;:17;10379:103;;10429:8;10420:17;;;;;;:::i;:::-;;;;;10465:2;10455:12;;;;10379:103;10508:8;10499:5;:17;10495:103;;10545:8;10536:17;;;;;;:::i;:::-;;;;;10581:2;10571:12;;;;10495:103;10624:7;10615:5;:16;10611:100;;10660:7;10651:16;;;;;;:::i;:::-;;;;;10695:1;10685:11;;;;10611:100;10737:7;10728:5;:16;10724:100;;10773:7;10764:16;;;;;;:::i;:::-;;;;;10808:1;10798:11;;;;10724:100;10850:7;10841:5;:16;10837:100;;10886:7;10877:16;;;;;;:::i;:::-;;;;;10921:1;10911:11;;;;10837:100;10963:7;10954:5;:16;10950:66;;11000:1;10990:11;;;;10950:66;11042:6;11035:13;;;10139:916;;;:::o;1412:320:59:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:99::-;1570:6;1604:5;1598:12;1588:22;;1518:99;;;:::o;1623:169::-;1707:11;1741:6;1736:3;1729:19;1781:4;1776:3;1772:14;1757:29;;1623:169;;;;:::o;1798:248::-;1880:1;1890:113;1904:6;1901:1;1898:13;1890:113;;;1989:1;1984:3;1980:11;1974:18;1970:1;1965:3;1961:11;1954:39;1926:2;1923:1;1919:10;1914:15;;1890:113;;;2037:1;2028:6;2023:3;2019:16;2012:27;1860:186;1798:248;;;:::o;2052:102::-;2093:6;2144:2;2140:7;2135:2;2128:5;2124:14;2120:28;2110:38;;2052:102;;;:::o;2160:377::-;2248:3;2276:39;2309:5;2276:39;:::i;:::-;2331:71;2395:6;2390:3;2331:71;:::i;:::-;2324:78;;2411:65;2469:6;2464:3;2457:4;2450:5;2446:16;2411:65;:::i;:::-;2501:29;2523:6;2501:29;:::i;:::-;2496:3;2492:39;2485:46;;2252:285;2160:377;;;;:::o;2543:313::-;2656:4;2694:2;2683:9;2679:18;2671:26;;2743:9;2737:4;2733:20;2729:1;2718:9;2714:17;2707:47;2771:78;2844:4;2835:6;2771:78;:::i;:::-;2763:86;;2543:313;;;;:::o;2862:77::-;2899:7;2928:5;2917:16;;2862:77;;;:::o;2945:122::-;3018:24;3036:5;3018:24;:::i;:::-;3011:5;3008:35;2998:63;;3057:1;3054;3047:12;2998:63;2945:122;:::o;3073:139::-;3119:5;3157:6;3144:20;3135:29;;3173:33;3200:5;3173:33;:::i;:::-;3073:139;;;;:::o;3218:329::-;3277:6;3326:2;3314:9;3305:7;3301:23;3297:32;3294:119;;;3332:79;;:::i;:::-;3294:119;3452:1;3477:53;3522:7;3513:6;3502:9;3498:22;3477:53;:::i;:::-;3467:63;;3423:117;3218:329;;;;:::o;3553:126::-;3590:7;3630:42;3623:5;3619:54;3608:65;;3553:126;;;:::o;3685:96::-;3722:7;3751:24;3769:5;3751:24;:::i;:::-;3740:35;;3685:96;;;:::o;3787:118::-;3874:24;3892:5;3874:24;:::i;:::-;3869:3;3862:37;3787:118;;:::o;3911:222::-;4004:4;4042:2;4031:9;4027:18;4019:26;;4055:71;4123:1;4112:9;4108:17;4099:6;4055:71;:::i;:::-;3911:222;;;;:::o;4139:122::-;4212:24;4230:5;4212:24;:::i;:::-;4205:5;4202:35;4192:63;;4251:1;4248;4241:12;4192:63;4139:122;:::o;4267:139::-;4313:5;4351:6;4338:20;4329:29;;4367:33;4394:5;4367:33;:::i;:::-;4267:139;;;;:::o;4412:474::-;4480:6;4488;4537:2;4525:9;4516:7;4512:23;4508:32;4505:119;;;4543:79;;:::i;:::-;4505:119;4663:1;4688:53;4733:7;4724:6;4713:9;4709:22;4688:53;:::i;:::-;4678:63;;4634:117;4790:2;4816:53;4861:7;4852:6;4841:9;4837:22;4816:53;:::i;:::-;4806:63;;4761:118;4412:474;;;;;:::o;4892:619::-;4969:6;4977;4985;5034:2;5022:9;5013:7;5009:23;5005:32;5002:119;;;5040:79;;:::i;:::-;5002:119;5160:1;5185:53;5230:7;5221:6;5210:9;5206:22;5185:53;:::i;:::-;5175:63;;5131:117;5287:2;5313:53;5358:7;5349:6;5338:9;5334:22;5313:53;:::i;:::-;5303:63;;5258:118;5415:2;5441:53;5486:7;5477:6;5466:9;5462:22;5441:53;:::i;:::-;5431:63;;5386:118;4892:619;;;;;:::o;5517:329::-;5576:6;5625:2;5613:9;5604:7;5600:23;5596:32;5593:119;;;5631:79;;:::i;:::-;5593:119;5751:1;5776:53;5821:7;5812:6;5801:9;5797:22;5776:53;:::i;:::-;5766:63;;5722:117;5517:329;;;;:::o;5852:118::-;5939:24;5957:5;5939:24;:::i;:::-;5934:3;5927:37;5852:118;;:::o;5976:222::-;6069:4;6107:2;6096:9;6092:18;6084:26;;6120:71;6188:1;6177:9;6173:17;6164:6;6120:71;:::i;:::-;5976:222;;;;:::o;6204:116::-;6274:21;6289:5;6274:21;:::i;:::-;6267:5;6264:32;6254:60;;6310:1;6307;6300:12;6254:60;6204:116;:::o;6326:133::-;6369:5;6407:6;6394:20;6385:29;;6423:30;6447:5;6423:30;:::i;:::-;6326:133;;;;:::o;6465:468::-;6530:6;6538;6587:2;6575:9;6566:7;6562:23;6558:32;6555:119;;;6593:79;;:::i;:::-;6555:119;6713:1;6738:53;6783:7;6774:6;6763:9;6759:22;6738:53;:::i;:::-;6728:63;;6684:117;6840:2;6866:50;6908:7;6899:6;6888:9;6884:22;6866:50;:::i;:::-;6856:60;;6811:115;6465:468;;;;;:::o;6939:117::-;7048:1;7045;7038:12;7062:117;7171:1;7168;7161:12;7185:180;7233:77;7230:1;7223:88;7330:4;7327:1;7320:15;7354:4;7351:1;7344:15;7371:281;7454:27;7476:4;7454:27;:::i;:::-;7446:6;7442:40;7584:6;7572:10;7569:22;7548:18;7536:10;7533:34;7530:62;7527:88;;;7595:18;;:::i;:::-;7527:88;7635:10;7631:2;7624:22;7414:238;7371:281;;:::o;7658:129::-;7692:6;7719:20;;:::i;:::-;7709:30;;7748:33;7776:4;7768:6;7748:33;:::i;:::-;7658:129;;;:::o;7793:307::-;7854:4;7944:18;7936:6;7933:30;7930:56;;;7966:18;;:::i;:::-;7930:56;8004:29;8026:6;8004:29;:::i;:::-;7996:37;;8088:4;8082;8078:15;8070:23;;7793:307;;;:::o;8106:148::-;8204:6;8199:3;8194;8181:30;8245:1;8236:6;8231:3;8227:16;8220:27;8106:148;;;:::o;8260:423::-;8337:5;8362:65;8378:48;8419:6;8378:48;:::i;:::-;8362:65;:::i;:::-;8353:74;;8450:6;8443:5;8436:21;8488:4;8481:5;8477:16;8526:3;8517:6;8512:3;8508:16;8505:25;8502:112;;;8533:79;;:::i;:::-;8502:112;8623:54;8670:6;8665:3;8660;8623:54;:::i;:::-;8343:340;8260:423;;;;;:::o;8702:338::-;8757:5;8806:3;8799:4;8791:6;8787:17;8783:27;8773:122;;8814:79;;:::i;:::-;8773:122;8931:6;8918:20;8956:78;9030:3;9022:6;9015:4;9007:6;9003:17;8956:78;:::i;:::-;8947:87;;8763:277;8702:338;;;;:::o;9046:943::-;9141:6;9149;9157;9165;9214:3;9202:9;9193:7;9189:23;9185:33;9182:120;;;9221:79;;:::i;:::-;9182:120;9341:1;9366:53;9411:7;9402:6;9391:9;9387:22;9366:53;:::i;:::-;9356:63;;9312:117;9468:2;9494:53;9539:7;9530:6;9519:9;9515:22;9494:53;:::i;:::-;9484:63;;9439:118;9596:2;9622:53;9667:7;9658:6;9647:9;9643:22;9622:53;:::i;:::-;9612:63;;9567:118;9752:2;9741:9;9737:18;9724:32;9783:18;9775:6;9772:30;9769:117;;;9805:79;;:::i;:::-;9769:117;9910:62;9964:7;9955:6;9944:9;9940:22;9910:62;:::i;:::-;9900:72;;9695:287;9046:943;;;;;;;:::o;9995:474::-;10063:6;10071;10120:2;10108:9;10099:7;10095:23;10091:32;10088:119;;;10126:79;;:::i;:::-;10088:119;10246:1;10271:53;10316:7;10307:6;10296:9;10292:22;10271:53;:::i;:::-;10261:63;;10217:117;10373:2;10399:53;10444:7;10435:6;10424:9;10420:22;10399:53;:::i;:::-;10389:63;;10344:118;9995:474;;;;;:::o;10475:180::-;10523:77;10520:1;10513:88;10620:4;10617:1;10610:15;10644:4;10641:1;10634:15;10661:320;10705:6;10742:1;10736:4;10732:12;10722:22;;10789:1;10783:4;10779:12;10810:18;10800:81;;10866:4;10858:6;10854:17;10844:27;;10800:81;10928:2;10920:6;10917:14;10897:18;10894:38;10891:84;;10947:18;;:::i;:::-;10891:84;10712:269;10661:320;;;:::o;10987:220::-;11127:34;11123:1;11115:6;11111:14;11104:58;11196:3;11191:2;11183:6;11179:15;11172:28;10987:220;:::o;11213:366::-;11355:3;11376:67;11440:2;11435:3;11376:67;:::i;:::-;11369:74;;11452:93;11541:3;11452:93;:::i;:::-;11570:2;11565:3;11561:12;11554:19;;11213:366;;;:::o;11585:419::-;11751:4;11789:2;11778:9;11774:18;11766:26;;11838:9;11832:4;11828:20;11824:1;11813:9;11809:17;11802:47;11866:131;11992:4;11866:131;:::i;:::-;11858:139;;11585:419;;;:::o;12010:248::-;12150:34;12146:1;12138:6;12134:14;12127:58;12219:31;12214:2;12206:6;12202:15;12195:56;12010:248;:::o;12264:366::-;12406:3;12427:67;12491:2;12486:3;12427:67;:::i;:::-;12420:74;;12503:93;12592:3;12503:93;:::i;:::-;12621:2;12616:3;12612:12;12605:19;;12264:366;;;:::o;12636:419::-;12802:4;12840:2;12829:9;12825:18;12817:26;;12889:9;12883:4;12879:20;12875:1;12864:9;12860:17;12853:47;12917:131;13043:4;12917:131;:::i;:::-;12909:139;;12636:419;;;:::o;13061:232::-;13201:34;13197:1;13189:6;13185:14;13178:58;13270:15;13265:2;13257:6;13253:15;13246:40;13061:232;:::o;13299:366::-;13441:3;13462:67;13526:2;13521:3;13462:67;:::i;:::-;13455:74;;13538:93;13627:3;13538:93;:::i;:::-;13656:2;13651:3;13647:12;13640:19;;13299:366;;;:::o;13671:419::-;13837:4;13875:2;13864:9;13860:18;13852:26;;13924:9;13918:4;13914:20;13910:1;13899:9;13895:17;13888:47;13952:131;14078:4;13952:131;:::i;:::-;13944:139;;13671:419;;;:::o;14096:174::-;14236:26;14232:1;14224:6;14220:14;14213:50;14096:174;:::o;14276:366::-;14418:3;14439:67;14503:2;14498:3;14439:67;:::i;:::-;14432:74;;14515:93;14604:3;14515:93;:::i;:::-;14633:2;14628:3;14624:12;14617:19;;14276:366;;;:::o;14648:419::-;14814:4;14852:2;14841:9;14837:18;14829:26;;14901:9;14895:4;14891:20;14887:1;14876:9;14872:17;14865:47;14929:131;15055:4;14929:131;:::i;:::-;14921:139;;14648:419;;;:::o;15073:228::-;15213:34;15209:1;15201:6;15197:14;15190:58;15282:11;15277:2;15269:6;15265:15;15258:36;15073:228;:::o;15307:366::-;15449:3;15470:67;15534:2;15529:3;15470:67;:::i;:::-;15463:74;;15546:93;15635:3;15546:93;:::i;:::-;15664:2;15659:3;15655:12;15648:19;;15307:366;;;:::o;15679:419::-;15845:4;15883:2;15872:9;15868:18;15860:26;;15932:9;15926:4;15922:20;15918:1;15907:9;15903:17;15896:47;15960:131;16086:4;15960:131;:::i;:::-;15952:139;;15679:419;;;:::o;16104:148::-;16206:11;16243:3;16228:18;;16104:148;;;;:::o;16258:390::-;16364:3;16392:39;16425:5;16392:39;:::i;:::-;16447:89;16529:6;16524:3;16447:89;:::i;:::-;16440:96;;16545:65;16603:6;16598:3;16591:4;16584:5;16580:16;16545:65;:::i;:::-;16635:6;16630:3;16626:16;16619:23;;16368:280;16258:390;;;;:::o;16654:435::-;16834:3;16856:95;16947:3;16938:6;16856:95;:::i;:::-;16849:102;;16968:95;17059:3;17050:6;16968:95;:::i;:::-;16961:102;;17080:3;17073:10;;16654:435;;;;;:::o;17095:224::-;17235:34;17231:1;17223:6;17219:14;17212:58;17304:7;17299:2;17291:6;17287:15;17280:32;17095:224;:::o;17325:366::-;17467:3;17488:67;17552:2;17547:3;17488:67;:::i;:::-;17481:74;;17564:93;17653:3;17564:93;:::i;:::-;17682:2;17677:3;17673:12;17666:19;;17325:366;;;:::o;17697:419::-;17863:4;17901:2;17890:9;17886:18;17878:26;;17950:9;17944:4;17940:20;17936:1;17925:9;17921:17;17914:47;17978:131;18104:4;17978:131;:::i;:::-;17970:139;;17697:419;;;:::o;18122:223::-;18262:34;18258:1;18250:6;18246:14;18239:58;18331:6;18326:2;18318:6;18314:15;18307:31;18122:223;:::o;18351:366::-;18493:3;18514:67;18578:2;18573:3;18514:67;:::i;:::-;18507:74;;18590:93;18679:3;18590:93;:::i;:::-;18708:2;18703:3;18699:12;18692:19;;18351:366;;;:::o;18723:419::-;18889:4;18927:2;18916:9;18912:18;18904:26;;18976:9;18970:4;18966:20;18962:1;18951:9;18947:17;18940:47;19004:131;19130:4;19004:131;:::i;:::-;18996:139;;18723:419;;;:::o;19148:175::-;19288:27;19284:1;19276:6;19272:14;19265:51;19148:175;:::o;19329:366::-;19471:3;19492:67;19556:2;19551:3;19492:67;:::i;:::-;19485:74;;19568:93;19657:3;19568:93;:::i;:::-;19686:2;19681:3;19677:12;19670:19;;19329:366;;;:::o;19701:419::-;19867:4;19905:2;19894:9;19890:18;19882:26;;19954:9;19948:4;19944:20;19940:1;19929:9;19925:17;19918:47;19982:131;20108:4;19982:131;:::i;:::-;19974:139;;19701:419;;;:::o;20126:237::-;20266:34;20262:1;20254:6;20250:14;20243:58;20335:20;20330:2;20322:6;20318:15;20311:45;20126:237;:::o;20369:366::-;20511:3;20532:67;20596:2;20591:3;20532:67;:::i;:::-;20525:74;;20608:93;20697:3;20608:93;:::i;:::-;20726:2;20721:3;20717:12;20710:19;;20369:366;;;:::o;20741:419::-;20907:4;20945:2;20934:9;20930:18;20922:26;;20994:9;20988:4;20984:20;20980:1;20969:9;20965:17;20958:47;21022:131;21148:4;21022:131;:::i;:::-;21014:139;;20741:419;;;:::o;21166:180::-;21214:77;21211:1;21204:88;21311:4;21308:1;21301:15;21335:4;21332:1;21325:15;21352:98;21403:6;21437:5;21431:12;21421:22;;21352:98;;;:::o;21456:168::-;21539:11;21573:6;21568:3;21561:19;21613:4;21608:3;21604:14;21589:29;;21456:168;;;;:::o;21630:373::-;21716:3;21744:38;21776:5;21744:38;:::i;:::-;21798:70;21861:6;21856:3;21798:70;:::i;:::-;21791:77;;21877:65;21935:6;21930:3;21923:4;21916:5;21912:16;21877:65;:::i;:::-;21967:29;21989:6;21967:29;:::i;:::-;21962:3;21958:39;21951:46;;21720:283;21630:373;;;;:::o;22009:640::-;22204:4;22242:3;22231:9;22227:19;22219:27;;22256:71;22324:1;22313:9;22309:17;22300:6;22256:71;:::i;:::-;22337:72;22405:2;22394:9;22390:18;22381:6;22337:72;:::i;:::-;22419;22487:2;22476:9;22472:18;22463:6;22419:72;:::i;:::-;22538:9;22532:4;22528:20;22523:2;22512:9;22508:18;22501:48;22566:76;22637:4;22628:6;22566:76;:::i;:::-;22558:84;;22009:640;;;;;;;:::o;22655:141::-;22711:5;22742:6;22736:13;22727:22;;22758:32;22784:5;22758:32;:::i;:::-;22655:141;;;;:::o;22802:349::-;22871:6;22920:2;22908:9;22899:7;22895:23;22891:32;22888:119;;;22926:79;;:::i;:::-;22888:119;23046:1;23071:63;23126:7;23117:6;23106:9;23102:22;23071:63;:::i;:::-;23061:73;;23017:127;22802:349;;;;:::o" + }, + "methodIdentifiers": { + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "name()": "06fdde03", + "ownerOf(uint256)": "6352211e", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "symbol()": "95d89b41", + "tokenURI(uint256)": "c87b56dd", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including the Metadata extension, but not including the Enumerable extension, which is available separately as {ERC721Enumerable}.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"constructor\":{\"details\":\"Initializes the contract by setting a `name` and a `symbol` to the token collection.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenURI(uint256)\":{\"details\":\"See {IERC721Metadata-tokenURI}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":\"ERC721\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x2c309e7df9e05e6ce15bedfe74f3c61b467fc37e0fae9eab496acf5ea0bbd7ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7063b5c98711a98018ba4635ac74cee1c1cfa2ea01099498e062699ed9530005\",\"dweb:/ipfs/QmeJ8rGXkcv7RrqLdAW8PCXPAykxVsddfYY6g5NaTwmRFE\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC721/IERC721.sol": { + "IERC721": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "ownerOf(uint256)": "6352211e", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Required interface of an ERC721 compliant contract.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must understand this adds an external call which potentially creates a reentrancy vulnerability. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":\"IERC721\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": { + "IERC721Receiver": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "onERC721Received(address,address,uint256,bytes)": "150b7a02" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for any contract that wants to support safeTransfers from ERC721 asset contracts.\",\"kind\":\"dev\",\"methods\":{\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom} by `operator` from `from`, this function is called. It must return its Solidity selector to confirm the token transfer. If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted. The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\"}},\"title\":\"ERC721 token receiver interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":\"IERC721Receiver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol": { + "IERC721Metadata": { + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "name()": "06fdde03", + "ownerOf(uint256)": "6352211e", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "symbol()": "95d89b41", + "tokenURI(uint256)": "c87b56dd", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://eips.ethereum.org/EIPS/eip-721\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}\"},\"name()\":{\"details\":\"Returns the token collection name.\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"symbol()\":{\"details\":\"Returns the token collection symbol.\"},\"tokenURI(uint256)\":{\"details\":\"Returns the Uniform Resource Identifier (URI) for `tokenId` token.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must understand this adds an external call which potentially creates a reentrancy vulnerability. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"title\":\"ERC-721 Non-Fungible Token Standard, optional metadata extension\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":\"IERC721Metadata\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/Address.sol": { + "Address": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203abc4c91783600f43b20051ac9e406300d8d10f8d0d9f4def01a983a9fcfea2064736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 GASPRICE 0xBC 0x4C SWAP2 PUSH25 0x3600F43B20051AC9E406300D8D10F8D0D9F4DEF01A983A9FCF 0xEA KECCAK256 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "194:9169:59:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203abc4c91783600f43b20051ac9e406300d8d10f8d0d9f4def01a983a9fcfea2064736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 GASPRICE 0xBC 0x4C SWAP2 PUSH25 0x3600F43B20051AC9E406300D8D10F8D0D9F4DEF01A983A9FCF 0xEA KECCAK256 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "194:9169:59:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Address.sol\":\"Address\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/Context.sol": { + "Context": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Context.sol\":\"Context\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/Strings.sol": { + "Strings": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122044ede94d1e86e8d04faecb3f827c825973b47fb4051d3c19f22894325c14196764736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PREVRANDAO 0xED 0xE9 0x4D 0x1E DUP7 0xE8 0xD0 0x4F 0xAE 0xCB EXTCODEHASH DUP3 PUSH29 0x825973B47FB4051D3C19F22894325C14196764736F6C63430008190033 ", + "sourceMap": "220:2559:61:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122044ede94d1e86e8d04faecb3f827c825973b47fb4051d3c19f22894325c14196764736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PREVRANDAO 0xED 0xE9 0x4D 0x1E DUP7 0xE8 0xD0 0x4F 0xAE 0xCB EXTCODEHASH DUP3 PUSH29 0x825973B47FB4051D3C19F22894325C14196764736F6C63430008190033 ", + "sourceMap": "220:2559:61:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"String operations.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Strings.sol\":\"Strings\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/introspection/ERC165.sol": { + "ERC165": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC165} interface. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check for the additional interface id that will be supported. For example: ```solidity function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId); } ``` Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":\"ERC165\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/introspection/IERC165.sol": { + "IERC165": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "supportsInterface(bytes4)": "01ffc9a7" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC165 standard, as defined in the https://eips.ethereum.org/EIPS/eip-165[EIP]. Implementers can declare support of contract interfaces, which can then be queried by others ({ERC165Checker}). For an implementation, see {ERC165}.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":\"IERC165\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/math/Math.sol": { + "Math": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f44788f868e29ca9348fceac2c2df9eacba19104f092bf520542d13acfef419d64736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL SELFBALANCE DUP9 0xF8 PUSH9 0xE29CA9348FCEAC2C2D 0xF9 0xEA 0xCB LOG1 SWAP2 DIV CREATE SWAP3 0xBF MSTORE SDIV TIMESTAMP 0xD1 GASPRICE 0xCF 0xEF COINBASE SWAP14 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "202:12582:64:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f44788f868e29ca9348fceac2c2df9eacba19104f092bf520542d13acfef419d64736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL SELFBALANCE DUP9 0xF8 PUSH9 0xE29CA9348FCEAC2C2D 0xF9 0xEA 0xCB LOG1 SWAP2 DIV CREATE SWAP3 0xBF MSTORE SDIV TIMESTAMP 0xD1 GASPRICE 0xCF 0xEF COINBASE SWAP14 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "202:12582:64:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Standard math utilities missing in the Solidity language.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/math/Math.sol\":\"Math\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]}},\"version\":1}" + } + }, + "@openzeppelin/contracts/utils/math/SignedMath.sol": { + "SignedMath": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203c73af559da24e788e96b7fc99a3832f49220aa5ab578a6bdc455388f72ed8cd64736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 EXTCODECOPY PUSH20 0xAF559DA24E788E96B7FC99A3832F49220AA5AB57 DUP11 PUSH12 0xDC455388F72ED8CD64736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "215:1047:65:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203c73af559da24e788e96b7fc99a3832f49220aa5ab578a6bdc455388f72ed8cd64736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 EXTCODECOPY PUSH20 0xAF559DA24E788E96B7FC99A3832F49220AA5AB57 DUP11 PUSH12 0xDC455388F72ED8CD64736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "215:1047:65:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Standard signed math utilities missing in the Solidity language.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/math/SignedMath.sol\":\"SignedMath\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]}},\"version\":1}" + } + }, + "contracts/IAddrSetter.sol": { + "IAddrSetter": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "setAddr(bytes,address)": "f00eebf4" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/IAddrSetter.sol\":\"IAddrSetter\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/IAddrSetter.sol\":{\"keccak256\":\"0xf7493c0fc452bd785cdf3d563f45eefb64c1498711dbe024126d247be56fe808\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4a92c0ddfee4e552979e5215448d6a5a6d3f90e7706aaab203d44466d1d05263\",\"dweb:/ipfs/QmNiSn57hsD7fmPTZsPqzY7D8BuQGuPyujjHsHewjNgrhm\"]}},\"version\":1}" + } + }, + "contracts/ITargetResolver.sol": { + "ITargetResolver": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "getTarget", + "outputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "getTarget(bytes)": "15f64386" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"}],\"name\":\"getTarget\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/ITargetResolver.sol\":\"ITargetResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/ITargetResolver.sol\":{\"keccak256\":\"0xbe5a66f254ce775902d6d20db27a50bfe28b70747cc33f28188beff59185b71a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7c6d753a198934d7d911818c553532f8a5f97f96c86c60c5b709da345ab8de9\",\"dweb:/ipfs/QmYegW3aiohrSn34H5yHmxpUxm72iJXa4auCcX1mJNVkz3\"]}},\"version\":1}" + } + }, + "contracts/LabelUtils.sol": { + "LabelUtils": { + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "extractFirstLabel", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "label", + "type": "bytes" + } + ], + "name": "extractNumericSuffix", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "610738610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806308dea91d1461004557806394bc2db614610075575b600080fd5b61005f600480360381019061005a9190610409565b6100a5565b60405161006c919061046b565b60405180910390f35b61008f600480360381019061008a9190610409565b610193565b60405161009c9190610505565b60405180910390f35b600080600090506000805b84518110156101485760008582815181106100ce576100cd610527565b5b602001015160f81c60f81b60f81c905060308160ff16101580156100f6575060398160ff1611155b1561012d576030816101089190610592565b60ff16600a8561011891906105c7565b6101229190610609565b93506001925061013a565b82156101395750610148565b5b5080806001019150506100b0565b5080610189576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101809061069a565b60405180910390fd5b8192505050919050565b60606000808382815181106101ab576101aa610527565b5b602001015160f81c60f81b60f81c905081806101c6906106ba565b92505060008160ff1667ffffffffffffffff8111156101e8576101e76102de565b5b6040519080825280601f01601f19166020018201604052801561021a5781602001600182028036833780820191505090505b50905060005b8260ff168110156102a3578581856102389190610609565b8151811061024957610248610527565b5b602001015160f81c60f81b82828151811061026757610266610527565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610220565b50809350505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610316826102cd565b810181811067ffffffffffffffff82111715610335576103346102de565b5b80604052505050565b60006103486102af565b9050610354828261030d565b919050565b600067ffffffffffffffff821115610374576103736102de565b5b61037d826102cd565b9050602081019050919050565b82818337600083830152505050565b60006103ac6103a784610359565b61033e565b9050828152602081018484840111156103c8576103c76102c8565b5b6103d384828561038a565b509392505050565b600082601f8301126103f0576103ef6102c3565b5b8135610400848260208601610399565b91505092915050565b60006020828403121561041f5761041e6102b9565b5b600082013567ffffffffffffffff81111561043d5761043c6102be565b5b610449848285016103db565b91505092915050565b6000819050919050565b61046581610452565b82525050565b6000602082019050610480600083018461045c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104c05780820151818401526020810190506104a5565b60008484015250505050565b60006104d782610486565b6104e18185610491565b93506104f18185602086016104a2565b6104fa816102cd565b840191505092915050565b6000602082019050818103600083015261051f81846104cc565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061059d82610556565b91506105a883610556565b9250828203905060ff8111156105c1576105c0610563565b5b92915050565b60006105d282610452565b91506105dd83610452565b92508282026105eb81610452565b9150828204841483151761060257610601610563565b5b5092915050565b600061061482610452565b915061061f83610452565b925082820190508082111561063757610636610563565b5b92915050565b600082825260208201905092915050565b7f4e6f206e756d657269632073756666697820666f756e64000000000000000000600082015250565b600061068460178361063d565b915061068f8261064e565b602082019050919050565b600060208201905081810360008301526106b381610677565b9050919050565b60006106c582610452565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106f7576106f6610563565b5b60018201905091905056fea2646970667358221220fd64dc77b8c67827745419800c3980f933551e388779f20784cc6bf95b81b97c64736f6c63430008190033", + "opcodes": "PUSH2 0x738 PUSH2 0x52 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x45 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x40 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DEA91D EQ PUSH2 0x45 JUMPI DUP1 PUSH4 0x94BC2DB6 EQ PUSH2 0x75 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x5F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5A SWAP2 SWAP1 PUSH2 0x409 JUMP JUMPDEST PUSH2 0xA5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6C SWAP2 SWAP1 PUSH2 0x46B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8A SWAP2 SWAP1 PUSH2 0x409 JUMP JUMPDEST PUSH2 0x193 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9C SWAP2 SWAP1 PUSH2 0x505 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 DUP1 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x148 JUMPI PUSH1 0x0 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xCE JUMPI PUSH2 0xCD PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP PUSH1 0x30 DUP2 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0xF6 JUMPI POP PUSH1 0x39 DUP2 PUSH1 0xFF AND GT ISZERO JUMPDEST ISZERO PUSH2 0x12D JUMPI PUSH1 0x30 DUP2 PUSH2 0x108 SWAP2 SWAP1 PUSH2 0x592 JUMP JUMPDEST PUSH1 0xFF AND PUSH1 0xA DUP6 PUSH2 0x118 SWAP2 SWAP1 PUSH2 0x5C7 JUMP JUMPDEST PUSH2 0x122 SWAP2 SWAP1 PUSH2 0x609 JUMP JUMPDEST SWAP4 POP PUSH1 0x1 SWAP3 POP PUSH2 0x13A JUMP JUMPDEST DUP3 ISZERO PUSH2 0x139 JUMPI POP PUSH2 0x148 JUMP JUMPDEST JUMPDEST POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0xB0 JUMP JUMPDEST POP DUP1 PUSH2 0x189 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x180 SWAP1 PUSH2 0x69A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1AB JUMPI PUSH2 0x1AA PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP DUP2 DUP1 PUSH2 0x1C6 SWAP1 PUSH2 0x6BA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x0 DUP2 PUSH1 0xFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E8 JUMPI PUSH2 0x1E7 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x21A JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x2A3 JUMPI DUP6 DUP2 DUP6 PUSH2 0x238 SWAP2 SWAP1 PUSH2 0x609 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x249 JUMPI PUSH2 0x248 PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x267 JUMPI PUSH2 0x266 PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x220 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x316 DUP3 PUSH2 0x2CD JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x335 JUMPI PUSH2 0x334 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0x2AF JUMP JUMPDEST SWAP1 POP PUSH2 0x354 DUP3 DUP3 PUSH2 0x30D JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x374 JUMPI PUSH2 0x373 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST PUSH2 0x37D DUP3 PUSH2 0x2CD JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3AC PUSH2 0x3A7 DUP5 PUSH2 0x359 JUMP JUMPDEST PUSH2 0x33E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x3C8 JUMPI PUSH2 0x3C7 PUSH2 0x2C8 JUMP JUMPDEST JUMPDEST PUSH2 0x3D3 DUP5 DUP3 DUP6 PUSH2 0x38A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x3F0 JUMPI PUSH2 0x3EF PUSH2 0x2C3 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x400 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x399 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x41F JUMPI PUSH2 0x41E PUSH2 0x2B9 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x43D JUMPI PUSH2 0x43C PUSH2 0x2BE JUMP JUMPDEST JUMPDEST PUSH2 0x449 DUP5 DUP3 DUP6 ADD PUSH2 0x3DB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x465 DUP2 PUSH2 0x452 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x480 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x45C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4C0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4A5 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D7 DUP3 PUSH2 0x486 JUMP JUMPDEST PUSH2 0x4E1 DUP2 DUP6 PUSH2 0x491 JUMP JUMPDEST SWAP4 POP PUSH2 0x4F1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x4A2 JUMP JUMPDEST PUSH2 0x4FA DUP2 PUSH2 0x2CD JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x51F DUP2 DUP5 PUSH2 0x4CC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x59D DUP3 PUSH2 0x556 JUMP JUMPDEST SWAP2 POP PUSH2 0x5A8 DUP4 PUSH2 0x556 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x5C1 JUMPI PUSH2 0x5C0 PUSH2 0x563 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D2 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DD DUP4 PUSH2 0x452 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x5EB DUP2 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x602 JUMPI PUSH2 0x601 PUSH2 0x563 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x614 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH2 0x61F DUP4 PUSH2 0x452 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x637 JUMPI PUSH2 0x636 PUSH2 0x563 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E6F206E756D657269632073756666697820666F756E64000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x684 PUSH1 0x17 DUP4 PUSH2 0x63D JUMP JUMPDEST SWAP2 POP PUSH2 0x68F DUP3 PUSH2 0x64E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6B3 DUP2 PUSH2 0x677 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6C5 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x6F7 JUMPI PUSH2 0x6F6 PUSH2 0x563 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 REVERT PUSH5 0xDC77B8C678 0x27 PUSH21 0x5419800C3980F933551E388779F20784CC6BF95B81 0xB9 PUSH29 0x64736F6C63430008190033000000000000000000000000000000000000 ", + "sourceMap": "159:1383:68:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@extractFirstLabel_16190": { + "entryPoint": 403, + "id": 16190, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@extractNumericSuffix_16264": { + "entryPoint": 165, + "id": 16264, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 921, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 987, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_memory_ptr": { + "entryPoint": 1033, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 1228, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1655, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack_library": { + "entryPoint": 1116, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 1285, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1690, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed": { + "entryPoint": 1131, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 830, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 687, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 857, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 1158, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 1169, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1597, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 1545, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 1479, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint8": { + "entryPoint": 1426, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 1106, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint8": { + "entryPoint": 1366, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 906, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 1186, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "finalize_allocation": { + "entryPoint": 781, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "increment_t_uint256": { + "entryPoint": 1722, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 1379, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 1319, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 734, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 707, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 712, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 702, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 697, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 717, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46": { + "entryPoint": 1614, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:7448:74", + "nodeType": "YulBlock", + "src": "0:7448:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "423:28:74", + "nodeType": "YulBlock", + "src": "423:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "443:1:74", + "nodeType": "YulLiteral", + "src": "443:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulFunctionCall", + "src": "433:12:74" + }, + "nativeSrc": "433:12:74", + "nodeType": "YulExpressionStatement", + "src": "433:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "334:117:74", + "nodeType": "YulFunctionDefinition", + "src": "334:117:74" + }, + { + "body": { + "nativeSrc": "546:28:74", + "nodeType": "YulBlock", + "src": "546:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "563:1:74", + "nodeType": "YulLiteral", + "src": "563:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "566:1:74", + "nodeType": "YulLiteral", + "src": "566:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "556:6:74", + "nodeType": "YulIdentifier", + "src": "556:6:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulFunctionCall", + "src": "556:12:74" + }, + "nativeSrc": "556:12:74", + "nodeType": "YulExpressionStatement", + "src": "556:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "457:117:74", + "nodeType": "YulFunctionDefinition", + "src": "457:117:74" + }, + { + "body": { + "nativeSrc": "628:54:74", + "nodeType": "YulBlock", + "src": "628:54:74", + "statements": [ + { + "nativeSrc": "638:38:74", + "nodeType": "YulAssignment", + "src": "638:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "656:5:74", + "nodeType": "YulIdentifier", + "src": "656:5:74" + }, + { + "kind": "number", + "nativeSrc": "663:2:74", + "nodeType": "YulLiteral", + "src": "663:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "652:3:74", + "nodeType": "YulIdentifier", + "src": "652:3:74" + }, + "nativeSrc": "652:14:74", + "nodeType": "YulFunctionCall", + "src": "652:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "672:2:74", + "nodeType": "YulLiteral", + "src": "672:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "668:3:74", + "nodeType": "YulIdentifier", + "src": "668:3:74" + }, + "nativeSrc": "668:7:74", + "nodeType": "YulFunctionCall", + "src": "668:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "648:3:74", + "nodeType": "YulIdentifier", + "src": "648:3:74" + }, + "nativeSrc": "648:28:74", + "nodeType": "YulFunctionCall", + "src": "648:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "638:6:74", + "nodeType": "YulIdentifier", + "src": "638:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "580:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "611:5:74", + "nodeType": "YulTypedName", + "src": "611:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "621:6:74", + "nodeType": "YulTypedName", + "src": "621:6:74", + "type": "" + } + ], + "src": "580:102:74" + }, + { + "body": { + "nativeSrc": "716:152:74", + "nodeType": "YulBlock", + "src": "716:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "733:1:74", + "nodeType": "YulLiteral", + "src": "733:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "736:77:74", + "nodeType": "YulLiteral", + "src": "736:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "726:6:74", + "nodeType": "YulIdentifier", + "src": "726:6:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulFunctionCall", + "src": "726:88:74" + }, + "nativeSrc": "726:88:74", + "nodeType": "YulExpressionStatement", + "src": "726:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "830:1:74", + "nodeType": "YulLiteral", + "src": "830:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "833:4:74", + "nodeType": "YulLiteral", + "src": "833:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "823:6:74", + "nodeType": "YulIdentifier", + "src": "823:6:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulFunctionCall", + "src": "823:15:74" + }, + "nativeSrc": "823:15:74", + "nodeType": "YulExpressionStatement", + "src": "823:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "854:1:74", + "nodeType": "YulLiteral", + "src": "854:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "857:4:74", + "nodeType": "YulLiteral", + "src": "857:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "847:6:74", + "nodeType": "YulIdentifier", + "src": "847:6:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulFunctionCall", + "src": "847:15:74" + }, + "nativeSrc": "847:15:74", + "nodeType": "YulExpressionStatement", + "src": "847:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "688:180:74", + "nodeType": "YulFunctionDefinition", + "src": "688:180:74" + }, + { + "body": { + "nativeSrc": "917:238:74", + "nodeType": "YulBlock", + "src": "917:238:74", + "statements": [ + { + "nativeSrc": "927:58:74", + "nodeType": "YulVariableDeclaration", + "src": "927:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "949:6:74", + "nodeType": "YulIdentifier", + "src": "949:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "979:4:74", + "nodeType": "YulIdentifier", + "src": "979:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "957:21:74", + "nodeType": "YulIdentifier", + "src": "957:21:74" + }, + "nativeSrc": "957:27:74", + "nodeType": "YulFunctionCall", + "src": "957:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "945:3:74", + "nodeType": "YulIdentifier", + "src": "945:3:74" + }, + "nativeSrc": "945:40:74", + "nodeType": "YulFunctionCall", + "src": "945:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "931:10:74", + "nodeType": "YulTypedName", + "src": "931:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "1096:22:74", + "nodeType": "YulBlock", + "src": "1096:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1098:16:74", + "nodeType": "YulIdentifier", + "src": "1098:16:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulFunctionCall", + "src": "1098:18:74" + }, + "nativeSrc": "1098:18:74", + "nodeType": "YulExpressionStatement", + "src": "1098:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1039:10:74", + "nodeType": "YulIdentifier", + "src": "1039:10:74" + }, + { + "kind": "number", + "nativeSrc": "1051:18:74", + "nodeType": "YulLiteral", + "src": "1051:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1036:2:74", + "nodeType": "YulIdentifier", + "src": "1036:2:74" + }, + "nativeSrc": "1036:34:74", + "nodeType": "YulFunctionCall", + "src": "1036:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "1075:10:74", + "nodeType": "YulIdentifier", + "src": "1075:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "1087:6:74", + "nodeType": "YulIdentifier", + "src": "1087:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "1072:2:74", + "nodeType": "YulIdentifier", + "src": "1072:2:74" + }, + "nativeSrc": "1072:22:74", + "nodeType": "YulFunctionCall", + "src": "1072:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "1033:2:74", + "nodeType": "YulIdentifier", + "src": "1033:2:74" + }, + "nativeSrc": "1033:62:74", + "nodeType": "YulFunctionCall", + "src": "1033:62:74" + }, + "nativeSrc": "1030:88:74", + "nodeType": "YulIf", + "src": "1030:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1134:2:74", + "nodeType": "YulLiteral", + "src": "1134:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "1138:10:74", + "nodeType": "YulIdentifier", + "src": "1138:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1127:6:74", + "nodeType": "YulIdentifier", + "src": "1127:6:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulFunctionCall", + "src": "1127:22:74" + }, + "nativeSrc": "1127:22:74", + "nodeType": "YulExpressionStatement", + "src": "1127:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "874:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "903:6:74", + "nodeType": "YulTypedName", + "src": "903:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "911:4:74", + "nodeType": "YulTypedName", + "src": "911:4:74", + "type": "" + } + ], + "src": "874:281:74" + }, + { + "body": { + "nativeSrc": "1202:88:74", + "nodeType": "YulBlock", + "src": "1202:88:74", + "statements": [ + { + "nativeSrc": "1212:30:74", + "nodeType": "YulAssignment", + "src": "1212:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "1222:18:74", + "nodeType": "YulIdentifier", + "src": "1222:18:74" + }, + "nativeSrc": "1222:20:74", + "nodeType": "YulFunctionCall", + "src": "1222:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "1212:6:74", + "nodeType": "YulIdentifier", + "src": "1212:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "1271:6:74", + "nodeType": "YulIdentifier", + "src": "1271:6:74" + }, + { + "name": "size", + "nativeSrc": "1279:4:74", + "nodeType": "YulIdentifier", + "src": "1279:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "1251:19:74", + "nodeType": "YulIdentifier", + "src": "1251:19:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulFunctionCall", + "src": "1251:33:74" + }, + "nativeSrc": "1251:33:74", + "nodeType": "YulExpressionStatement", + "src": "1251:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "1161:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "1186:4:74", + "nodeType": "YulTypedName", + "src": "1186:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "1195:6:74", + "nodeType": "YulTypedName", + "src": "1195:6:74", + "type": "" + } + ], + "src": "1161:129:74" + }, + { + "body": { + "nativeSrc": "1362:241:74", + "nodeType": "YulBlock", + "src": "1362:241:74", + "statements": [ + { + "body": { + "nativeSrc": "1467:22:74", + "nodeType": "YulBlock", + "src": "1467:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "1469:16:74", + "nodeType": "YulIdentifier", + "src": "1469:16:74" + }, + "nativeSrc": "1469:18:74", + "nodeType": "YulFunctionCall", + "src": "1469:18:74" + }, + "nativeSrc": "1469:18:74", + "nodeType": "YulExpressionStatement", + "src": "1469:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1439:6:74", + "nodeType": "YulIdentifier", + "src": "1439:6:74" + }, + { + "kind": "number", + "nativeSrc": "1447:18:74", + "nodeType": "YulLiteral", + "src": "1447:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "1436:2:74", + "nodeType": "YulIdentifier", + "src": "1436:2:74" + }, + "nativeSrc": "1436:30:74", + "nodeType": "YulFunctionCall", + "src": "1436:30:74" + }, + "nativeSrc": "1433:56:74", + "nodeType": "YulIf", + "src": "1433:56:74" + }, + { + "nativeSrc": "1499:37:74", + "nodeType": "YulAssignment", + "src": "1499:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "1529:6:74", + "nodeType": "YulIdentifier", + "src": "1529:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "1507:21:74", + "nodeType": "YulIdentifier", + "src": "1507:21:74" + }, + "nativeSrc": "1507:29:74", + "nodeType": "YulFunctionCall", + "src": "1507:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1499:4:74", + "nodeType": "YulIdentifier", + "src": "1499:4:74" + } + ] + }, + { + "nativeSrc": "1573:23:74", + "nodeType": "YulAssignment", + "src": "1573:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "1585:4:74", + "nodeType": "YulIdentifier", + "src": "1585:4:74" + }, + { + "kind": "number", + "nativeSrc": "1591:4:74", + "nodeType": "YulLiteral", + "src": "1591:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1581:3:74", + "nodeType": "YulIdentifier", + "src": "1581:3:74" + }, + "nativeSrc": "1581:15:74", + "nodeType": "YulFunctionCall", + "src": "1581:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "1573:4:74", + "nodeType": "YulIdentifier", + "src": "1573:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "1296:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "1346:6:74", + "nodeType": "YulTypedName", + "src": "1346:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "1357:4:74", + "nodeType": "YulTypedName", + "src": "1357:4:74", + "type": "" + } + ], + "src": "1296:307:74" + }, + { + "body": { + "nativeSrc": "1673:84:74", + "nodeType": "YulBlock", + "src": "1673:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1697:3:74", + "nodeType": "YulIdentifier", + "src": "1697:3:74" + }, + { + "name": "src", + "nativeSrc": "1702:3:74", + "nodeType": "YulIdentifier", + "src": "1702:3:74" + }, + { + "name": "length", + "nativeSrc": "1707:6:74", + "nodeType": "YulIdentifier", + "src": "1707:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "1684:12:74", + "nodeType": "YulIdentifier", + "src": "1684:12:74" + }, + "nativeSrc": "1684:30:74", + "nodeType": "YulFunctionCall", + "src": "1684:30:74" + }, + "nativeSrc": "1684:30:74", + "nodeType": "YulExpressionStatement", + "src": "1684:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "1734:3:74", + "nodeType": "YulIdentifier", + "src": "1734:3:74" + }, + { + "name": "length", + "nativeSrc": "1739:6:74", + "nodeType": "YulIdentifier", + "src": "1739:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1730:3:74", + "nodeType": "YulIdentifier", + "src": "1730:3:74" + }, + "nativeSrc": "1730:16:74", + "nodeType": "YulFunctionCall", + "src": "1730:16:74" + }, + { + "kind": "number", + "nativeSrc": "1748:1:74", + "nodeType": "YulLiteral", + "src": "1748:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1723:6:74", + "nodeType": "YulIdentifier", + "src": "1723:6:74" + }, + "nativeSrc": "1723:27:74", + "nodeType": "YulFunctionCall", + "src": "1723:27:74" + }, + "nativeSrc": "1723:27:74", + "nodeType": "YulExpressionStatement", + "src": "1723:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "1609:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1655:3:74", + "nodeType": "YulTypedName", + "src": "1655:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "1660:3:74", + "nodeType": "YulTypedName", + "src": "1660:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1665:6:74", + "nodeType": "YulTypedName", + "src": "1665:6:74", + "type": "" + } + ], + "src": "1609:148:74" + }, + { + "body": { + "nativeSrc": "1846:340:74", + "nodeType": "YulBlock", + "src": "1846:340:74", + "statements": [ + { + "nativeSrc": "1856:74:74", + "nodeType": "YulAssignment", + "src": "1856:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "1922:6:74", + "nodeType": "YulIdentifier", + "src": "1922:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "1881:40:74", + "nodeType": "YulIdentifier", + "src": "1881:40:74" + }, + "nativeSrc": "1881:48:74", + "nodeType": "YulFunctionCall", + "src": "1881:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "1865:15:74", + "nodeType": "YulIdentifier", + "src": "1865:15:74" + }, + "nativeSrc": "1865:65:74", + "nodeType": "YulFunctionCall", + "src": "1865:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "1856:5:74", + "nodeType": "YulIdentifier", + "src": "1856:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "1946:5:74", + "nodeType": "YulIdentifier", + "src": "1946:5:74" + }, + { + "name": "length", + "nativeSrc": "1953:6:74", + "nodeType": "YulIdentifier", + "src": "1953:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1939:6:74", + "nodeType": "YulIdentifier", + "src": "1939:6:74" + }, + "nativeSrc": "1939:21:74", + "nodeType": "YulFunctionCall", + "src": "1939:21:74" + }, + "nativeSrc": "1939:21:74", + "nodeType": "YulExpressionStatement", + "src": "1939:21:74" + }, + { + "nativeSrc": "1969:27:74", + "nodeType": "YulVariableDeclaration", + "src": "1969:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "1984:5:74", + "nodeType": "YulIdentifier", + "src": "1984:5:74" + }, + { + "kind": "number", + "nativeSrc": "1991:4:74", + "nodeType": "YulLiteral", + "src": "1991:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1980:3:74", + "nodeType": "YulIdentifier", + "src": "1980:3:74" + }, + "nativeSrc": "1980:16:74", + "nodeType": "YulFunctionCall", + "src": "1980:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "1973:3:74", + "nodeType": "YulTypedName", + "src": "1973:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2034:83:74", + "nodeType": "YulBlock", + "src": "2034:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "2036:77:74", + "nodeType": "YulIdentifier", + "src": "2036:77:74" + }, + "nativeSrc": "2036:79:74", + "nodeType": "YulFunctionCall", + "src": "2036:79:74" + }, + "nativeSrc": "2036:79:74", + "nodeType": "YulExpressionStatement", + "src": "2036:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2015:3:74", + "nodeType": "YulIdentifier", + "src": "2015:3:74" + }, + { + "name": "length", + "nativeSrc": "2020:6:74", + "nodeType": "YulIdentifier", + "src": "2020:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2011:3:74", + "nodeType": "YulIdentifier", + "src": "2011:3:74" + }, + "nativeSrc": "2011:16:74", + "nodeType": "YulFunctionCall", + "src": "2011:16:74" + }, + { + "name": "end", + "nativeSrc": "2029:3:74", + "nodeType": "YulIdentifier", + "src": "2029:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2008:2:74", + "nodeType": "YulIdentifier", + "src": "2008:2:74" + }, + "nativeSrc": "2008:25:74", + "nodeType": "YulFunctionCall", + "src": "2008:25:74" + }, + "nativeSrc": "2005:112:74", + "nodeType": "YulIf", + "src": "2005:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "2163:3:74", + "nodeType": "YulIdentifier", + "src": "2163:3:74" + }, + { + "name": "dst", + "nativeSrc": "2168:3:74", + "nodeType": "YulIdentifier", + "src": "2168:3:74" + }, + { + "name": "length", + "nativeSrc": "2173:6:74", + "nodeType": "YulIdentifier", + "src": "2173:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "2126:36:74", + "nodeType": "YulIdentifier", + "src": "2126:36:74" + }, + "nativeSrc": "2126:54:74", + "nodeType": "YulFunctionCall", + "src": "2126:54:74" + }, + "nativeSrc": "2126:54:74", + "nodeType": "YulExpressionStatement", + "src": "2126:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "1763:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "1819:3:74", + "nodeType": "YulTypedName", + "src": "1819:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "1824:6:74", + "nodeType": "YulTypedName", + "src": "1824:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1832:3:74", + "nodeType": "YulTypedName", + "src": "1832:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "1840:5:74", + "nodeType": "YulTypedName", + "src": "1840:5:74", + "type": "" + } + ], + "src": "1763:423:74" + }, + { + "body": { + "nativeSrc": "2266:277:74", + "nodeType": "YulBlock", + "src": "2266:277:74", + "statements": [ + { + "body": { + "nativeSrc": "2315:83:74", + "nodeType": "YulBlock", + "src": "2315:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "2317:77:74", + "nodeType": "YulIdentifier", + "src": "2317:77:74" + }, + "nativeSrc": "2317:79:74", + "nodeType": "YulFunctionCall", + "src": "2317:79:74" + }, + "nativeSrc": "2317:79:74", + "nodeType": "YulExpressionStatement", + "src": "2317:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2294:6:74", + "nodeType": "YulIdentifier", + "src": "2294:6:74" + }, + { + "kind": "number", + "nativeSrc": "2302:4:74", + "nodeType": "YulLiteral", + "src": "2302:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2290:3:74", + "nodeType": "YulIdentifier", + "src": "2290:3:74" + }, + "nativeSrc": "2290:17:74", + "nodeType": "YulFunctionCall", + "src": "2290:17:74" + }, + { + "name": "end", + "nativeSrc": "2309:3:74", + "nodeType": "YulIdentifier", + "src": "2309:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2286:3:74", + "nodeType": "YulIdentifier", + "src": "2286:3:74" + }, + "nativeSrc": "2286:27:74", + "nodeType": "YulFunctionCall", + "src": "2286:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2279:6:74", + "nodeType": "YulIdentifier", + "src": "2279:6:74" + }, + "nativeSrc": "2279:35:74", + "nodeType": "YulFunctionCall", + "src": "2279:35:74" + }, + "nativeSrc": "2276:122:74", + "nodeType": "YulIf", + "src": "2276:122:74" + }, + { + "nativeSrc": "2407:34:74", + "nodeType": "YulVariableDeclaration", + "src": "2407:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2434:6:74", + "nodeType": "YulIdentifier", + "src": "2434:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2421:12:74", + "nodeType": "YulIdentifier", + "src": "2421:12:74" + }, + "nativeSrc": "2421:20:74", + "nodeType": "YulFunctionCall", + "src": "2421:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2411:6:74", + "nodeType": "YulTypedName", + "src": "2411:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2450:87:74", + "nodeType": "YulAssignment", + "src": "2450:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2510:6:74", + "nodeType": "YulIdentifier", + "src": "2510:6:74" + }, + { + "kind": "number", + "nativeSrc": "2518:4:74", + "nodeType": "YulLiteral", + "src": "2518:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2506:3:74", + "nodeType": "YulIdentifier", + "src": "2506:3:74" + }, + "nativeSrc": "2506:17:74", + "nodeType": "YulFunctionCall", + "src": "2506:17:74" + }, + { + "name": "length", + "nativeSrc": "2525:6:74", + "nodeType": "YulIdentifier", + "src": "2525:6:74" + }, + { + "name": "end", + "nativeSrc": "2533:3:74", + "nodeType": "YulIdentifier", + "src": "2533:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "2459:46:74", + "nodeType": "YulIdentifier", + "src": "2459:46:74" + }, + "nativeSrc": "2459:78:74", + "nodeType": "YulFunctionCall", + "src": "2459:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "2450:5:74", + "nodeType": "YulIdentifier", + "src": "2450:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "2205:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2244:6:74", + "nodeType": "YulTypedName", + "src": "2244:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2252:3:74", + "nodeType": "YulTypedName", + "src": "2252:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "2260:5:74", + "nodeType": "YulTypedName", + "src": "2260:5:74", + "type": "" + } + ], + "src": "2205:338:74" + }, + { + "body": { + "nativeSrc": "2624:432:74", + "nodeType": "YulBlock", + "src": "2624:432:74", + "statements": [ + { + "body": { + "nativeSrc": "2670:83:74", + "nodeType": "YulBlock", + "src": "2670:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2672:77:74", + "nodeType": "YulIdentifier", + "src": "2672:77:74" + }, + "nativeSrc": "2672:79:74", + "nodeType": "YulFunctionCall", + "src": "2672:79:74" + }, + "nativeSrc": "2672:79:74", + "nodeType": "YulExpressionStatement", + "src": "2672:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2645:7:74", + "nodeType": "YulIdentifier", + "src": "2645:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2654:9:74", + "nodeType": "YulIdentifier", + "src": "2654:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2641:3:74", + "nodeType": "YulIdentifier", + "src": "2641:3:74" + }, + "nativeSrc": "2641:23:74", + "nodeType": "YulFunctionCall", + "src": "2641:23:74" + }, + { + "kind": "number", + "nativeSrc": "2666:2:74", + "nodeType": "YulLiteral", + "src": "2666:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2637:3:74", + "nodeType": "YulIdentifier", + "src": "2637:3:74" + }, + "nativeSrc": "2637:32:74", + "nodeType": "YulFunctionCall", + "src": "2637:32:74" + }, + "nativeSrc": "2634:119:74", + "nodeType": "YulIf", + "src": "2634:119:74" + }, + { + "nativeSrc": "2763:286:74", + "nodeType": "YulBlock", + "src": "2763:286:74", + "statements": [ + { + "nativeSrc": "2778:45:74", + "nodeType": "YulVariableDeclaration", + "src": "2778:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2809:9:74", + "nodeType": "YulIdentifier", + "src": "2809:9:74" + }, + { + "kind": "number", + "nativeSrc": "2820:1:74", + "nodeType": "YulLiteral", + "src": "2820:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2805:3:74", + "nodeType": "YulIdentifier", + "src": "2805:3:74" + }, + "nativeSrc": "2805:17:74", + "nodeType": "YulFunctionCall", + "src": "2805:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "2792:12:74", + "nodeType": "YulIdentifier", + "src": "2792:12:74" + }, + "nativeSrc": "2792:31:74", + "nodeType": "YulFunctionCall", + "src": "2792:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2782:6:74", + "nodeType": "YulTypedName", + "src": "2782:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2870:83:74", + "nodeType": "YulBlock", + "src": "2870:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "2872:77:74", + "nodeType": "YulIdentifier", + "src": "2872:77:74" + }, + "nativeSrc": "2872:79:74", + "nodeType": "YulFunctionCall", + "src": "2872:79:74" + }, + "nativeSrc": "2872:79:74", + "nodeType": "YulExpressionStatement", + "src": "2872:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2842:6:74", + "nodeType": "YulIdentifier", + "src": "2842:6:74" + }, + { + "kind": "number", + "nativeSrc": "2850:18:74", + "nodeType": "YulLiteral", + "src": "2850:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2839:2:74", + "nodeType": "YulIdentifier", + "src": "2839:2:74" + }, + "nativeSrc": "2839:30:74", + "nodeType": "YulFunctionCall", + "src": "2839:30:74" + }, + "nativeSrc": "2836:117:74", + "nodeType": "YulIf", + "src": "2836:117:74" + }, + { + "nativeSrc": "2967:72:74", + "nodeType": "YulAssignment", + "src": "2967:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3011:9:74", + "nodeType": "YulIdentifier", + "src": "3011:9:74" + }, + { + "name": "offset", + "nativeSrc": "3022:6:74", + "nodeType": "YulIdentifier", + "src": "3022:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3007:3:74", + "nodeType": "YulIdentifier", + "src": "3007:3:74" + }, + "nativeSrc": "3007:22:74", + "nodeType": "YulFunctionCall", + "src": "3007:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3031:7:74", + "nodeType": "YulIdentifier", + "src": "3031:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "2977:29:74", + "nodeType": "YulIdentifier", + "src": "2977:29:74" + }, + "nativeSrc": "2977:62:74", + "nodeType": "YulFunctionCall", + "src": "2977:62:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2967:6:74", + "nodeType": "YulIdentifier", + "src": "2967:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptr", + "nativeSrc": "2549:507:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2594:9:74", + "nodeType": "YulTypedName", + "src": "2594:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2605:7:74", + "nodeType": "YulTypedName", + "src": "2605:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2617:6:74", + "nodeType": "YulTypedName", + "src": "2617:6:74", + "type": "" + } + ], + "src": "2549:507:74" + }, + { + "body": { + "nativeSrc": "3107:32:74", + "nodeType": "YulBlock", + "src": "3107:32:74", + "statements": [ + { + "nativeSrc": "3117:16:74", + "nodeType": "YulAssignment", + "src": "3117:16:74", + "value": { + "name": "value", + "nativeSrc": "3128:5:74", + "nodeType": "YulIdentifier", + "src": "3128:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3117:7:74", + "nodeType": "YulIdentifier", + "src": "3117:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "3062:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3089:5:74", + "nodeType": "YulTypedName", + "src": "3089:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3099:7:74", + "nodeType": "YulTypedName", + "src": "3099:7:74", + "type": "" + } + ], + "src": "3062:77:74" + }, + { + "body": { + "nativeSrc": "3218:53:74", + "nodeType": "YulBlock", + "src": "3218:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3235:3:74", + "nodeType": "YulIdentifier", + "src": "3235:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3258:5:74", + "nodeType": "YulIdentifier", + "src": "3258:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3240:17:74", + "nodeType": "YulIdentifier", + "src": "3240:17:74" + }, + "nativeSrc": "3240:24:74", + "nodeType": "YulFunctionCall", + "src": "3240:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3228:6:74", + "nodeType": "YulIdentifier", + "src": "3228:6:74" + }, + "nativeSrc": "3228:37:74", + "nodeType": "YulFunctionCall", + "src": "3228:37:74" + }, + "nativeSrc": "3228:37:74", + "nodeType": "YulExpressionStatement", + "src": "3228:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack_library", + "nativeSrc": "3145:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3206:5:74", + "nodeType": "YulTypedName", + "src": "3206:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "3213:3:74", + "nodeType": "YulTypedName", + "src": "3213:3:74", + "type": "" + } + ], + "src": "3145:126:74" + }, + { + "body": { + "nativeSrc": "3383:132:74", + "nodeType": "YulBlock", + "src": "3383:132:74", + "statements": [ + { + "nativeSrc": "3393:26:74", + "nodeType": "YulAssignment", + "src": "3393:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3405:9:74", + "nodeType": "YulIdentifier", + "src": "3405:9:74" + }, + { + "kind": "number", + "nativeSrc": "3416:2:74", + "nodeType": "YulLiteral", + "src": "3416:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3401:3:74", + "nodeType": "YulIdentifier", + "src": "3401:3:74" + }, + "nativeSrc": "3401:18:74", + "nodeType": "YulFunctionCall", + "src": "3401:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3393:4:74", + "nodeType": "YulIdentifier", + "src": "3393:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3481:6:74", + "nodeType": "YulIdentifier", + "src": "3481:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3494:9:74", + "nodeType": "YulIdentifier", + "src": "3494:9:74" + }, + { + "kind": "number", + "nativeSrc": "3505:1:74", + "nodeType": "YulLiteral", + "src": "3505:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3490:3:74", + "nodeType": "YulIdentifier", + "src": "3490:3:74" + }, + "nativeSrc": "3490:17:74", + "nodeType": "YulFunctionCall", + "src": "3490:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack_library", + "nativeSrc": "3429:51:74", + "nodeType": "YulIdentifier", + "src": "3429:51:74" + }, + "nativeSrc": "3429:79:74", + "nodeType": "YulFunctionCall", + "src": "3429:79:74" + }, + "nativeSrc": "3429:79:74", + "nodeType": "YulExpressionStatement", + "src": "3429:79:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed", + "nativeSrc": "3277:238:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3355:9:74", + "nodeType": "YulTypedName", + "src": "3355:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3367:6:74", + "nodeType": "YulTypedName", + "src": "3367:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3378:4:74", + "nodeType": "YulTypedName", + "src": "3378:4:74", + "type": "" + } + ], + "src": "3277:238:74" + }, + { + "body": { + "nativeSrc": "3579:40:74", + "nodeType": "YulBlock", + "src": "3579:40:74", + "statements": [ + { + "nativeSrc": "3590:22:74", + "nodeType": "YulAssignment", + "src": "3590:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3606:5:74", + "nodeType": "YulIdentifier", + "src": "3606:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3600:5:74", + "nodeType": "YulIdentifier", + "src": "3600:5:74" + }, + "nativeSrc": "3600:12:74", + "nodeType": "YulFunctionCall", + "src": "3600:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "3590:6:74", + "nodeType": "YulIdentifier", + "src": "3590:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "3521:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3562:5:74", + "nodeType": "YulTypedName", + "src": "3562:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "3572:6:74", + "nodeType": "YulTypedName", + "src": "3572:6:74", + "type": "" + } + ], + "src": "3521:98:74" + }, + { + "body": { + "nativeSrc": "3728:73:74", + "nodeType": "YulBlock", + "src": "3728:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3745:3:74", + "nodeType": "YulIdentifier", + "src": "3745:3:74" + }, + { + "name": "length", + "nativeSrc": "3750:6:74", + "nodeType": "YulIdentifier", + "src": "3750:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3738:6:74", + "nodeType": "YulIdentifier", + "src": "3738:6:74" + }, + "nativeSrc": "3738:19:74", + "nodeType": "YulFunctionCall", + "src": "3738:19:74" + }, + "nativeSrc": "3738:19:74", + "nodeType": "YulExpressionStatement", + "src": "3738:19:74" + }, + { + "nativeSrc": "3766:29:74", + "nodeType": "YulAssignment", + "src": "3766:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3785:3:74", + "nodeType": "YulIdentifier", + "src": "3785:3:74" + }, + { + "kind": "number", + "nativeSrc": "3790:4:74", + "nodeType": "YulLiteral", + "src": "3790:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3781:3:74", + "nodeType": "YulIdentifier", + "src": "3781:3:74" + }, + "nativeSrc": "3781:14:74", + "nodeType": "YulFunctionCall", + "src": "3781:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "3766:11:74", + "nodeType": "YulIdentifier", + "src": "3766:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "3625:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3700:3:74", + "nodeType": "YulTypedName", + "src": "3700:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3705:6:74", + "nodeType": "YulTypedName", + "src": "3705:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "3716:11:74", + "nodeType": "YulTypedName", + "src": "3716:11:74", + "type": "" + } + ], + "src": "3625:176:74" + }, + { + "body": { + "nativeSrc": "3869:186:74", + "nodeType": "YulBlock", + "src": "3869:186:74", + "statements": [ + { + "nativeSrc": "3880:10:74", + "nodeType": "YulVariableDeclaration", + "src": "3880:10:74", + "value": { + "kind": "number", + "nativeSrc": "3889:1:74", + "nodeType": "YulLiteral", + "src": "3889:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "3884:1:74", + "nodeType": "YulTypedName", + "src": "3884:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3949:63:74", + "nodeType": "YulBlock", + "src": "3949:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "3974:3:74", + "nodeType": "YulIdentifier", + "src": "3974:3:74" + }, + { + "name": "i", + "nativeSrc": "3979:1:74", + "nodeType": "YulIdentifier", + "src": "3979:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3970:3:74", + "nodeType": "YulIdentifier", + "src": "3970:3:74" + }, + "nativeSrc": "3970:11:74", + "nodeType": "YulFunctionCall", + "src": "3970:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "3993:3:74", + "nodeType": "YulIdentifier", + "src": "3993:3:74" + }, + { + "name": "i", + "nativeSrc": "3998:1:74", + "nodeType": "YulIdentifier", + "src": "3998:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3989:3:74", + "nodeType": "YulIdentifier", + "src": "3989:3:74" + }, + "nativeSrc": "3989:11:74", + "nodeType": "YulFunctionCall", + "src": "3989:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "3983:5:74", + "nodeType": "YulIdentifier", + "src": "3983:5:74" + }, + "nativeSrc": "3983:18:74", + "nodeType": "YulFunctionCall", + "src": "3983:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3963:6:74", + "nodeType": "YulIdentifier", + "src": "3963:6:74" + }, + "nativeSrc": "3963:39:74", + "nodeType": "YulFunctionCall", + "src": "3963:39:74" + }, + "nativeSrc": "3963:39:74", + "nodeType": "YulExpressionStatement", + "src": "3963:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "3910:1:74", + "nodeType": "YulIdentifier", + "src": "3910:1:74" + }, + { + "name": "length", + "nativeSrc": "3913:6:74", + "nodeType": "YulIdentifier", + "src": "3913:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "3907:2:74", + "nodeType": "YulIdentifier", + "src": "3907:2:74" + }, + "nativeSrc": "3907:13:74", + "nodeType": "YulFunctionCall", + "src": "3907:13:74" + }, + "nativeSrc": "3899:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "3921:19:74", + "nodeType": "YulBlock", + "src": "3921:19:74", + "statements": [ + { + "nativeSrc": "3923:15:74", + "nodeType": "YulAssignment", + "src": "3923:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "3932:1:74", + "nodeType": "YulIdentifier", + "src": "3932:1:74" + }, + { + "kind": "number", + "nativeSrc": "3935:2:74", + "nodeType": "YulLiteral", + "src": "3935:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3928:3:74", + "nodeType": "YulIdentifier", + "src": "3928:3:74" + }, + "nativeSrc": "3928:10:74", + "nodeType": "YulFunctionCall", + "src": "3928:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "3923:1:74", + "nodeType": "YulIdentifier", + "src": "3923:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "3903:3:74", + "nodeType": "YulBlock", + "src": "3903:3:74", + "statements": [] + }, + "src": "3899:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "4032:3:74", + "nodeType": "YulIdentifier", + "src": "4032:3:74" + }, + { + "name": "length", + "nativeSrc": "4037:6:74", + "nodeType": "YulIdentifier", + "src": "4037:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4028:3:74", + "nodeType": "YulIdentifier", + "src": "4028:3:74" + }, + "nativeSrc": "4028:16:74", + "nodeType": "YulFunctionCall", + "src": "4028:16:74" + }, + { + "kind": "number", + "nativeSrc": "4046:1:74", + "nodeType": "YulLiteral", + "src": "4046:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4021:6:74", + "nodeType": "YulIdentifier", + "src": "4021:6:74" + }, + "nativeSrc": "4021:27:74", + "nodeType": "YulFunctionCall", + "src": "4021:27:74" + }, + "nativeSrc": "4021:27:74", + "nodeType": "YulExpressionStatement", + "src": "4021:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "3807:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "3851:3:74", + "nodeType": "YulTypedName", + "src": "3851:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "3856:3:74", + "nodeType": "YulTypedName", + "src": "3856:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3861:6:74", + "nodeType": "YulTypedName", + "src": "3861:6:74", + "type": "" + } + ], + "src": "3807:248:74" + }, + { + "body": { + "nativeSrc": "4159:291:74", + "nodeType": "YulBlock", + "src": "4159:291:74", + "statements": [ + { + "nativeSrc": "4169:52:74", + "nodeType": "YulVariableDeclaration", + "src": "4169:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4215:5:74", + "nodeType": "YulIdentifier", + "src": "4215:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "4183:31:74", + "nodeType": "YulIdentifier", + "src": "4183:31:74" + }, + "nativeSrc": "4183:38:74", + "nodeType": "YulFunctionCall", + "src": "4183:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "4173:6:74", + "nodeType": "YulTypedName", + "src": "4173:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4230:85:74", + "nodeType": "YulAssignment", + "src": "4230:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4303:3:74", + "nodeType": "YulIdentifier", + "src": "4303:3:74" + }, + { + "name": "length", + "nativeSrc": "4308:6:74", + "nodeType": "YulIdentifier", + "src": "4308:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4237:65:74", + "nodeType": "YulIdentifier", + "src": "4237:65:74" + }, + "nativeSrc": "4237:78:74", + "nodeType": "YulFunctionCall", + "src": "4237:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4230:3:74", + "nodeType": "YulIdentifier", + "src": "4230:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4363:5:74", + "nodeType": "YulIdentifier", + "src": "4363:5:74" + }, + { + "kind": "number", + "nativeSrc": "4370:4:74", + "nodeType": "YulLiteral", + "src": "4370:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4359:3:74", + "nodeType": "YulIdentifier", + "src": "4359:3:74" + }, + "nativeSrc": "4359:16:74", + "nodeType": "YulFunctionCall", + "src": "4359:16:74" + }, + { + "name": "pos", + "nativeSrc": "4377:3:74", + "nodeType": "YulIdentifier", + "src": "4377:3:74" + }, + { + "name": "length", + "nativeSrc": "4382:6:74", + "nodeType": "YulIdentifier", + "src": "4382:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "4324:34:74", + "nodeType": "YulIdentifier", + "src": "4324:34:74" + }, + "nativeSrc": "4324:65:74", + "nodeType": "YulFunctionCall", + "src": "4324:65:74" + }, + "nativeSrc": "4324:65:74", + "nodeType": "YulExpressionStatement", + "src": "4324:65:74" + }, + { + "nativeSrc": "4398:46:74", + "nodeType": "YulAssignment", + "src": "4398:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4409:3:74", + "nodeType": "YulIdentifier", + "src": "4409:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "4436:6:74", + "nodeType": "YulIdentifier", + "src": "4436:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "4414:21:74", + "nodeType": "YulIdentifier", + "src": "4414:21:74" + }, + "nativeSrc": "4414:29:74", + "nodeType": "YulFunctionCall", + "src": "4414:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4405:3:74", + "nodeType": "YulIdentifier", + "src": "4405:3:74" + }, + "nativeSrc": "4405:39:74", + "nodeType": "YulFunctionCall", + "src": "4405:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4398:3:74", + "nodeType": "YulIdentifier", + "src": "4398:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4061:389:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4140:5:74", + "nodeType": "YulTypedName", + "src": "4140:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4147:3:74", + "nodeType": "YulTypedName", + "src": "4147:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4155:3:74", + "nodeType": "YulTypedName", + "src": "4155:3:74", + "type": "" + } + ], + "src": "4061:389:74" + }, + { + "body": { + "nativeSrc": "4580:201:74", + "nodeType": "YulBlock", + "src": "4580:201:74", + "statements": [ + { + "nativeSrc": "4590:26:74", + "nodeType": "YulAssignment", + "src": "4590:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4602:9:74", + "nodeType": "YulIdentifier", + "src": "4602:9:74" + }, + { + "kind": "number", + "nativeSrc": "4613:2:74", + "nodeType": "YulLiteral", + "src": "4613:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4598:3:74", + "nodeType": "YulIdentifier", + "src": "4598:3:74" + }, + "nativeSrc": "4598:18:74", + "nodeType": "YulFunctionCall", + "src": "4598:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4590:4:74", + "nodeType": "YulIdentifier", + "src": "4590:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4637:9:74", + "nodeType": "YulIdentifier", + "src": "4637:9:74" + }, + { + "kind": "number", + "nativeSrc": "4648:1:74", + "nodeType": "YulLiteral", + "src": "4648:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4633:3:74", + "nodeType": "YulIdentifier", + "src": "4633:3:74" + }, + "nativeSrc": "4633:17:74", + "nodeType": "YulFunctionCall", + "src": "4633:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4656:4:74", + "nodeType": "YulIdentifier", + "src": "4656:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4662:9:74", + "nodeType": "YulIdentifier", + "src": "4662:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4652:3:74", + "nodeType": "YulIdentifier", + "src": "4652:3:74" + }, + "nativeSrc": "4652:20:74", + "nodeType": "YulFunctionCall", + "src": "4652:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4626:6:74", + "nodeType": "YulIdentifier", + "src": "4626:6:74" + }, + "nativeSrc": "4626:47:74", + "nodeType": "YulFunctionCall", + "src": "4626:47:74" + }, + "nativeSrc": "4626:47:74", + "nodeType": "YulExpressionStatement", + "src": "4626:47:74" + }, + { + "nativeSrc": "4682:92:74", + "nodeType": "YulAssignment", + "src": "4682:92:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4760:6:74", + "nodeType": "YulIdentifier", + "src": "4760:6:74" + }, + { + "name": "tail", + "nativeSrc": "4769:4:74", + "nodeType": "YulIdentifier", + "src": "4769:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "4690:69:74", + "nodeType": "YulIdentifier", + "src": "4690:69:74" + }, + "nativeSrc": "4690:84:74", + "nodeType": "YulFunctionCall", + "src": "4690:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4682:4:74", + "nodeType": "YulIdentifier", + "src": "4682:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "4456:325:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4552:9:74", + "nodeType": "YulTypedName", + "src": "4552:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4564:6:74", + "nodeType": "YulTypedName", + "src": "4564:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4575:4:74", + "nodeType": "YulTypedName", + "src": "4575:4:74", + "type": "" + } + ], + "src": "4456:325:74" + }, + { + "body": { + "nativeSrc": "4815:152:74", + "nodeType": "YulBlock", + "src": "4815:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4832:1:74", + "nodeType": "YulLiteral", + "src": "4832:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4835:77:74", + "nodeType": "YulLiteral", + "src": "4835:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4825:6:74", + "nodeType": "YulIdentifier", + "src": "4825:6:74" + }, + "nativeSrc": "4825:88:74", + "nodeType": "YulFunctionCall", + "src": "4825:88:74" + }, + "nativeSrc": "4825:88:74", + "nodeType": "YulExpressionStatement", + "src": "4825:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4929:1:74", + "nodeType": "YulLiteral", + "src": "4929:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "4932:4:74", + "nodeType": "YulLiteral", + "src": "4932:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4922:6:74", + "nodeType": "YulIdentifier", + "src": "4922:6:74" + }, + "nativeSrc": "4922:15:74", + "nodeType": "YulFunctionCall", + "src": "4922:15:74" + }, + "nativeSrc": "4922:15:74", + "nodeType": "YulExpressionStatement", + "src": "4922:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4953:1:74", + "nodeType": "YulLiteral", + "src": "4953:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4956:4:74", + "nodeType": "YulLiteral", + "src": "4956:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4946:6:74", + "nodeType": "YulIdentifier", + "src": "4946:6:74" + }, + "nativeSrc": "4946:15:74", + "nodeType": "YulFunctionCall", + "src": "4946:15:74" + }, + "nativeSrc": "4946:15:74", + "nodeType": "YulExpressionStatement", + "src": "4946:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "4787:180:74", + "nodeType": "YulFunctionDefinition", + "src": "4787:180:74" + }, + { + "body": { + "nativeSrc": "5016:43:74", + "nodeType": "YulBlock", + "src": "5016:43:74", + "statements": [ + { + "nativeSrc": "5026:27:74", + "nodeType": "YulAssignment", + "src": "5026:27:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "5041:5:74", + "nodeType": "YulIdentifier", + "src": "5041:5:74" + }, + { + "kind": "number", + "nativeSrc": "5048:4:74", + "nodeType": "YulLiteral", + "src": "5048:4:74", + "type": "", + "value": "0xff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "5037:3:74", + "nodeType": "YulIdentifier", + "src": "5037:3:74" + }, + "nativeSrc": "5037:16:74", + "nodeType": "YulFunctionCall", + "src": "5037:16:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "5026:7:74", + "nodeType": "YulIdentifier", + "src": "5026:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint8", + "nativeSrc": "4973:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4998:5:74", + "nodeType": "YulTypedName", + "src": "4998:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "5008:7:74", + "nodeType": "YulTypedName", + "src": "5008:7:74", + "type": "" + } + ], + "src": "4973:86:74" + }, + { + "body": { + "nativeSrc": "5093:152:74", + "nodeType": "YulBlock", + "src": "5093:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5110:1:74", + "nodeType": "YulLiteral", + "src": "5110:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5113:77:74", + "nodeType": "YulLiteral", + "src": "5113:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5103:6:74", + "nodeType": "YulIdentifier", + "src": "5103:6:74" + }, + "nativeSrc": "5103:88:74", + "nodeType": "YulFunctionCall", + "src": "5103:88:74" + }, + "nativeSrc": "5103:88:74", + "nodeType": "YulExpressionStatement", + "src": "5103:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5207:1:74", + "nodeType": "YulLiteral", + "src": "5207:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "5210:4:74", + "nodeType": "YulLiteral", + "src": "5210:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5200:6:74", + "nodeType": "YulIdentifier", + "src": "5200:6:74" + }, + "nativeSrc": "5200:15:74", + "nodeType": "YulFunctionCall", + "src": "5200:15:74" + }, + "nativeSrc": "5200:15:74", + "nodeType": "YulExpressionStatement", + "src": "5200:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5231:1:74", + "nodeType": "YulLiteral", + "src": "5231:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5234:4:74", + "nodeType": "YulLiteral", + "src": "5234:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5224:6:74", + "nodeType": "YulIdentifier", + "src": "5224:6:74" + }, + "nativeSrc": "5224:15:74", + "nodeType": "YulFunctionCall", + "src": "5224:15:74" + }, + "nativeSrc": "5224:15:74", + "nodeType": "YulExpressionStatement", + "src": "5224:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "5065:180:74", + "nodeType": "YulFunctionDefinition", + "src": "5065:180:74" + }, + { + "body": { + "nativeSrc": "5294:148:74", + "nodeType": "YulBlock", + "src": "5294:148:74", + "statements": [ + { + "nativeSrc": "5304:23:74", + "nodeType": "YulAssignment", + "src": "5304:23:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5325:1:74", + "nodeType": "YulIdentifier", + "src": "5325:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint8", + "nativeSrc": "5309:15:74", + "nodeType": "YulIdentifier", + "src": "5309:15:74" + }, + "nativeSrc": "5309:18:74", + "nodeType": "YulFunctionCall", + "src": "5309:18:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "5304:1:74", + "nodeType": "YulIdentifier", + "src": "5304:1:74" + } + ] + }, + { + "nativeSrc": "5336:23:74", + "nodeType": "YulAssignment", + "src": "5336:23:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "5357:1:74", + "nodeType": "YulIdentifier", + "src": "5357:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint8", + "nativeSrc": "5341:15:74", + "nodeType": "YulIdentifier", + "src": "5341:15:74" + }, + "nativeSrc": "5341:18:74", + "nodeType": "YulFunctionCall", + "src": "5341:18:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "5336:1:74", + "nodeType": "YulIdentifier", + "src": "5336:1:74" + } + ] + }, + { + "nativeSrc": "5368:17:74", + "nodeType": "YulAssignment", + "src": "5368:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5380:1:74", + "nodeType": "YulIdentifier", + "src": "5380:1:74" + }, + { + "name": "y", + "nativeSrc": "5383:1:74", + "nodeType": "YulIdentifier", + "src": "5383:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5376:3:74", + "nodeType": "YulIdentifier", + "src": "5376:3:74" + }, + "nativeSrc": "5376:9:74", + "nodeType": "YulFunctionCall", + "src": "5376:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "5368:4:74", + "nodeType": "YulIdentifier", + "src": "5368:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "5413:22:74", + "nodeType": "YulBlock", + "src": "5413:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "5415:16:74", + "nodeType": "YulIdentifier", + "src": "5415:16:74" + }, + "nativeSrc": "5415:18:74", + "nodeType": "YulFunctionCall", + "src": "5415:18:74" + }, + "nativeSrc": "5415:18:74", + "nodeType": "YulExpressionStatement", + "src": "5415:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "5401:4:74", + "nodeType": "YulIdentifier", + "src": "5401:4:74" + }, + { + "kind": "number", + "nativeSrc": "5407:4:74", + "nodeType": "YulLiteral", + "src": "5407:4:74", + "type": "", + "value": "0xff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5398:2:74", + "nodeType": "YulIdentifier", + "src": "5398:2:74" + }, + "nativeSrc": "5398:14:74", + "nodeType": "YulFunctionCall", + "src": "5398:14:74" + }, + "nativeSrc": "5395:40:74", + "nodeType": "YulIf", + "src": "5395:40:74" + } + ] + }, + "name": "checked_sub_t_uint8", + "nativeSrc": "5251:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "5280:1:74", + "nodeType": "YulTypedName", + "src": "5280:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "5283:1:74", + "nodeType": "YulTypedName", + "src": "5283:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "5289:4:74", + "nodeType": "YulTypedName", + "src": "5289:4:74", + "type": "" + } + ], + "src": "5251:191:74" + }, + { + "body": { + "nativeSrc": "5496:362:74", + "nodeType": "YulBlock", + "src": "5496:362:74", + "statements": [ + { + "nativeSrc": "5506:25:74", + "nodeType": "YulAssignment", + "src": "5506:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5529:1:74", + "nodeType": "YulIdentifier", + "src": "5529:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5511:17:74", + "nodeType": "YulIdentifier", + "src": "5511:17:74" + }, + "nativeSrc": "5511:20:74", + "nodeType": "YulFunctionCall", + "src": "5511:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "5506:1:74", + "nodeType": "YulIdentifier", + "src": "5506:1:74" + } + ] + }, + { + "nativeSrc": "5540:25:74", + "nodeType": "YulAssignment", + "src": "5540:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "5563:1:74", + "nodeType": "YulIdentifier", + "src": "5563:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5545:17:74", + "nodeType": "YulIdentifier", + "src": "5545:17:74" + }, + "nativeSrc": "5545:20:74", + "nodeType": "YulFunctionCall", + "src": "5545:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "5540:1:74", + "nodeType": "YulIdentifier", + "src": "5540:1:74" + } + ] + }, + { + "nativeSrc": "5574:28:74", + "nodeType": "YulVariableDeclaration", + "src": "5574:28:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5597:1:74", + "nodeType": "YulIdentifier", + "src": "5597:1:74" + }, + { + "name": "y", + "nativeSrc": "5600:1:74", + "nodeType": "YulIdentifier", + "src": "5600:1:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "5593:3:74", + "nodeType": "YulIdentifier", + "src": "5593:3:74" + }, + "nativeSrc": "5593:9:74", + "nodeType": "YulFunctionCall", + "src": "5593:9:74" + }, + "variables": [ + { + "name": "product_raw", + "nativeSrc": "5578:11:74", + "nodeType": "YulTypedName", + "src": "5578:11:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5611:41:74", + "nodeType": "YulAssignment", + "src": "5611:41:74", + "value": { + "arguments": [ + { + "name": "product_raw", + "nativeSrc": "5640:11:74", + "nodeType": "YulIdentifier", + "src": "5640:11:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5622:17:74", + "nodeType": "YulIdentifier", + "src": "5622:17:74" + }, + "nativeSrc": "5622:30:74", + "nodeType": "YulFunctionCall", + "src": "5622:30:74" + }, + "variableNames": [ + { + "name": "product", + "nativeSrc": "5611:7:74", + "nodeType": "YulIdentifier", + "src": "5611:7:74" + } + ] + }, + { + "body": { + "nativeSrc": "5829:22:74", + "nodeType": "YulBlock", + "src": "5829:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "5831:16:74", + "nodeType": "YulIdentifier", + "src": "5831:16:74" + }, + "nativeSrc": "5831:18:74", + "nodeType": "YulFunctionCall", + "src": "5831:18:74" + }, + "nativeSrc": "5831:18:74", + "nodeType": "YulExpressionStatement", + "src": "5831:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nativeSrc": "5762:1:74", + "nodeType": "YulIdentifier", + "src": "5762:1:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5755:6:74", + "nodeType": "YulIdentifier", + "src": "5755:6:74" + }, + "nativeSrc": "5755:9:74", + "nodeType": "YulFunctionCall", + "src": "5755:9:74" + }, + { + "arguments": [ + { + "name": "y", + "nativeSrc": "5785:1:74", + "nodeType": "YulIdentifier", + "src": "5785:1:74" + }, + { + "arguments": [ + { + "name": "product", + "nativeSrc": "5792:7:74", + "nodeType": "YulIdentifier", + "src": "5792:7:74" + }, + { + "name": "x", + "nativeSrc": "5801:1:74", + "nodeType": "YulIdentifier", + "src": "5801:1:74" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "5788:3:74", + "nodeType": "YulIdentifier", + "src": "5788:3:74" + }, + "nativeSrc": "5788:15:74", + "nodeType": "YulFunctionCall", + "src": "5788:15:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "5782:2:74", + "nodeType": "YulIdentifier", + "src": "5782:2:74" + }, + "nativeSrc": "5782:22:74", + "nodeType": "YulFunctionCall", + "src": "5782:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "5735:2:74", + "nodeType": "YulIdentifier", + "src": "5735:2:74" + }, + "nativeSrc": "5735:83:74", + "nodeType": "YulFunctionCall", + "src": "5735:83:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5715:6:74", + "nodeType": "YulIdentifier", + "src": "5715:6:74" + }, + "nativeSrc": "5715:113:74", + "nodeType": "YulFunctionCall", + "src": "5715:113:74" + }, + "nativeSrc": "5712:139:74", + "nodeType": "YulIf", + "src": "5712:139:74" + } + ] + }, + "name": "checked_mul_t_uint256", + "nativeSrc": "5448:410:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "5479:1:74", + "nodeType": "YulTypedName", + "src": "5479:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "5482:1:74", + "nodeType": "YulTypedName", + "src": "5482:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nativeSrc": "5488:7:74", + "nodeType": "YulTypedName", + "src": "5488:7:74", + "type": "" + } + ], + "src": "5448:410:74" + }, + { + "body": { + "nativeSrc": "5908:147:74", + "nodeType": "YulBlock", + "src": "5908:147:74", + "statements": [ + { + "nativeSrc": "5918:25:74", + "nodeType": "YulAssignment", + "src": "5918:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5941:1:74", + "nodeType": "YulIdentifier", + "src": "5941:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5923:17:74", + "nodeType": "YulIdentifier", + "src": "5923:17:74" + }, + "nativeSrc": "5923:20:74", + "nodeType": "YulFunctionCall", + "src": "5923:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "5918:1:74", + "nodeType": "YulIdentifier", + "src": "5918:1:74" + } + ] + }, + { + "nativeSrc": "5952:25:74", + "nodeType": "YulAssignment", + "src": "5952:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "5975:1:74", + "nodeType": "YulIdentifier", + "src": "5975:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "5957:17:74", + "nodeType": "YulIdentifier", + "src": "5957:17:74" + }, + "nativeSrc": "5957:20:74", + "nodeType": "YulFunctionCall", + "src": "5957:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "5952:1:74", + "nodeType": "YulIdentifier", + "src": "5952:1:74" + } + ] + }, + { + "nativeSrc": "5986:16:74", + "nodeType": "YulAssignment", + "src": "5986:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "5997:1:74", + "nodeType": "YulIdentifier", + "src": "5997:1:74" + }, + { + "name": "y", + "nativeSrc": "6000:1:74", + "nodeType": "YulIdentifier", + "src": "6000:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5993:3:74", + "nodeType": "YulIdentifier", + "src": "5993:3:74" + }, + "nativeSrc": "5993:9:74", + "nodeType": "YulFunctionCall", + "src": "5993:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "5986:3:74", + "nodeType": "YulIdentifier", + "src": "5986:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "6026:22:74", + "nodeType": "YulBlock", + "src": "6026:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "6028:16:74", + "nodeType": "YulIdentifier", + "src": "6028:16:74" + }, + "nativeSrc": "6028:18:74", + "nodeType": "YulFunctionCall", + "src": "6028:18:74" + }, + "nativeSrc": "6028:18:74", + "nodeType": "YulExpressionStatement", + "src": "6028:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "6018:1:74", + "nodeType": "YulIdentifier", + "src": "6018:1:74" + }, + { + "name": "sum", + "nativeSrc": "6021:3:74", + "nodeType": "YulIdentifier", + "src": "6021:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6015:2:74", + "nodeType": "YulIdentifier", + "src": "6015:2:74" + }, + "nativeSrc": "6015:10:74", + "nodeType": "YulFunctionCall", + "src": "6015:10:74" + }, + "nativeSrc": "6012:36:74", + "nodeType": "YulIf", + "src": "6012:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "5864:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "5895:1:74", + "nodeType": "YulTypedName", + "src": "5895:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "5898:1:74", + "nodeType": "YulTypedName", + "src": "5898:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "5904:3:74", + "nodeType": "YulTypedName", + "src": "5904:3:74", + "type": "" + } + ], + "src": "5864:191:74" + }, + { + "body": { + "nativeSrc": "6157:73:74", + "nodeType": "YulBlock", + "src": "6157:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6174:3:74", + "nodeType": "YulIdentifier", + "src": "6174:3:74" + }, + { + "name": "length", + "nativeSrc": "6179:6:74", + "nodeType": "YulIdentifier", + "src": "6179:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6167:6:74", + "nodeType": "YulIdentifier", + "src": "6167:6:74" + }, + "nativeSrc": "6167:19:74", + "nodeType": "YulFunctionCall", + "src": "6167:19:74" + }, + "nativeSrc": "6167:19:74", + "nodeType": "YulExpressionStatement", + "src": "6167:19:74" + }, + { + "nativeSrc": "6195:29:74", + "nodeType": "YulAssignment", + "src": "6195:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6214:3:74", + "nodeType": "YulIdentifier", + "src": "6214:3:74" + }, + { + "kind": "number", + "nativeSrc": "6219:4:74", + "nodeType": "YulLiteral", + "src": "6219:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6210:3:74", + "nodeType": "YulIdentifier", + "src": "6210:3:74" + }, + "nativeSrc": "6210:14:74", + "nodeType": "YulFunctionCall", + "src": "6210:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "6195:11:74", + "nodeType": "YulIdentifier", + "src": "6195:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "6061:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "6129:3:74", + "nodeType": "YulTypedName", + "src": "6129:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "6134:6:74", + "nodeType": "YulTypedName", + "src": "6134:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "6145:11:74", + "nodeType": "YulTypedName", + "src": "6145:11:74", + "type": "" + } + ], + "src": "6061:169:74" + }, + { + "body": { + "nativeSrc": "6342:67:74", + "nodeType": "YulBlock", + "src": "6342:67:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "6364:6:74", + "nodeType": "YulIdentifier", + "src": "6364:6:74" + }, + { + "kind": "number", + "nativeSrc": "6372:1:74", + "nodeType": "YulLiteral", + "src": "6372:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6360:3:74", + "nodeType": "YulIdentifier", + "src": "6360:3:74" + }, + "nativeSrc": "6360:14:74", + "nodeType": "YulFunctionCall", + "src": "6360:14:74" + }, + { + "hexValue": "4e6f206e756d657269632073756666697820666f756e64", + "kind": "string", + "nativeSrc": "6376:25:74", + "nodeType": "YulLiteral", + "src": "6376:25:74", + "type": "", + "value": "No numeric suffix found" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6353:6:74", + "nodeType": "YulIdentifier", + "src": "6353:6:74" + }, + "nativeSrc": "6353:49:74", + "nodeType": "YulFunctionCall", + "src": "6353:49:74" + }, + "nativeSrc": "6353:49:74", + "nodeType": "YulExpressionStatement", + "src": "6353:49:74" + } + ] + }, + "name": "store_literal_in_memory_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46", + "nativeSrc": "6236:173:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "6334:6:74", + "nodeType": "YulTypedName", + "src": "6334:6:74", + "type": "" + } + ], + "src": "6236:173:74" + }, + { + "body": { + "nativeSrc": "6561:220:74", + "nodeType": "YulBlock", + "src": "6561:220:74", + "statements": [ + { + "nativeSrc": "6571:74:74", + "nodeType": "YulAssignment", + "src": "6571:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6637:3:74", + "nodeType": "YulIdentifier", + "src": "6637:3:74" + }, + { + "kind": "number", + "nativeSrc": "6642:2:74", + "nodeType": "YulLiteral", + "src": "6642:2:74", + "type": "", + "value": "23" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "6578:58:74", + "nodeType": "YulIdentifier", + "src": "6578:58:74" + }, + "nativeSrc": "6578:67:74", + "nodeType": "YulFunctionCall", + "src": "6578:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "6571:3:74", + "nodeType": "YulIdentifier", + "src": "6571:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6743:3:74", + "nodeType": "YulIdentifier", + "src": "6743:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46", + "nativeSrc": "6654:88:74", + "nodeType": "YulIdentifier", + "src": "6654:88:74" + }, + "nativeSrc": "6654:93:74", + "nodeType": "YulFunctionCall", + "src": "6654:93:74" + }, + "nativeSrc": "6654:93:74", + "nodeType": "YulExpressionStatement", + "src": "6654:93:74" + }, + { + "nativeSrc": "6756:19:74", + "nodeType": "YulAssignment", + "src": "6756:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6767:3:74", + "nodeType": "YulIdentifier", + "src": "6767:3:74" + }, + { + "kind": "number", + "nativeSrc": "6772:2:74", + "nodeType": "YulLiteral", + "src": "6772:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6763:3:74", + "nodeType": "YulIdentifier", + "src": "6763:3:74" + }, + "nativeSrc": "6763:12:74", + "nodeType": "YulFunctionCall", + "src": "6763:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "6756:3:74", + "nodeType": "YulIdentifier", + "src": "6756:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46_to_t_string_memory_ptr_fromStack", + "nativeSrc": "6415:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "6549:3:74", + "nodeType": "YulTypedName", + "src": "6549:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "6557:3:74", + "nodeType": "YulTypedName", + "src": "6557:3:74", + "type": "" + } + ], + "src": "6415:366:74" + }, + { + "body": { + "nativeSrc": "6958:248:74", + "nodeType": "YulBlock", + "src": "6958:248:74", + "statements": [ + { + "nativeSrc": "6968:26:74", + "nodeType": "YulAssignment", + "src": "6968:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6980:9:74", + "nodeType": "YulIdentifier", + "src": "6980:9:74" + }, + { + "kind": "number", + "nativeSrc": "6991:2:74", + "nodeType": "YulLiteral", + "src": "6991:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6976:3:74", + "nodeType": "YulIdentifier", + "src": "6976:3:74" + }, + "nativeSrc": "6976:18:74", + "nodeType": "YulFunctionCall", + "src": "6976:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6968:4:74", + "nodeType": "YulIdentifier", + "src": "6968:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7015:9:74", + "nodeType": "YulIdentifier", + "src": "7015:9:74" + }, + { + "kind": "number", + "nativeSrc": "7026:1:74", + "nodeType": "YulLiteral", + "src": "7026:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7011:3:74", + "nodeType": "YulIdentifier", + "src": "7011:3:74" + }, + "nativeSrc": "7011:17:74", + "nodeType": "YulFunctionCall", + "src": "7011:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "7034:4:74", + "nodeType": "YulIdentifier", + "src": "7034:4:74" + }, + { + "name": "headStart", + "nativeSrc": "7040:9:74", + "nodeType": "YulIdentifier", + "src": "7040:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "7030:3:74", + "nodeType": "YulIdentifier", + "src": "7030:3:74" + }, + "nativeSrc": "7030:20:74", + "nodeType": "YulFunctionCall", + "src": "7030:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7004:6:74", + "nodeType": "YulIdentifier", + "src": "7004:6:74" + }, + "nativeSrc": "7004:47:74", + "nodeType": "YulFunctionCall", + "src": "7004:47:74" + }, + "nativeSrc": "7004:47:74", + "nodeType": "YulExpressionStatement", + "src": "7004:47:74" + }, + { + "nativeSrc": "7060:139:74", + "nodeType": "YulAssignment", + "src": "7060:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "7194:4:74", + "nodeType": "YulIdentifier", + "src": "7194:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46_to_t_string_memory_ptr_fromStack", + "nativeSrc": "7068:124:74", + "nodeType": "YulIdentifier", + "src": "7068:124:74" + }, + "nativeSrc": "7068:131:74", + "nodeType": "YulFunctionCall", + "src": "7068:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7060:4:74", + "nodeType": "YulIdentifier", + "src": "7060:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "6787:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6938:9:74", + "nodeType": "YulTypedName", + "src": "6938:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6953:4:74", + "nodeType": "YulTypedName", + "src": "6953:4:74", + "type": "" + } + ], + "src": "6787:419:74" + }, + { + "body": { + "nativeSrc": "7255:190:74", + "nodeType": "YulBlock", + "src": "7255:190:74", + "statements": [ + { + "nativeSrc": "7265:33:74", + "nodeType": "YulAssignment", + "src": "7265:33:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7292:5:74", + "nodeType": "YulIdentifier", + "src": "7292:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "7274:17:74", + "nodeType": "YulIdentifier", + "src": "7274:17:74" + }, + "nativeSrc": "7274:24:74", + "nodeType": "YulFunctionCall", + "src": "7274:24:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "7265:5:74", + "nodeType": "YulIdentifier", + "src": "7265:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "7388:22:74", + "nodeType": "YulBlock", + "src": "7388:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "7390:16:74", + "nodeType": "YulIdentifier", + "src": "7390:16:74" + }, + "nativeSrc": "7390:18:74", + "nodeType": "YulFunctionCall", + "src": "7390:18:74" + }, + "nativeSrc": "7390:18:74", + "nodeType": "YulExpressionStatement", + "src": "7390:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7313:5:74", + "nodeType": "YulIdentifier", + "src": "7313:5:74" + }, + { + "kind": "number", + "nativeSrc": "7320:66:74", + "nodeType": "YulLiteral", + "src": "7320:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "7310:2:74", + "nodeType": "YulIdentifier", + "src": "7310:2:74" + }, + "nativeSrc": "7310:77:74", + "nodeType": "YulFunctionCall", + "src": "7310:77:74" + }, + "nativeSrc": "7307:103:74", + "nodeType": "YulIf", + "src": "7307:103:74" + }, + { + "nativeSrc": "7419:20:74", + "nodeType": "YulAssignment", + "src": "7419:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7430:5:74", + "nodeType": "YulIdentifier", + "src": "7430:5:74" + }, + { + "kind": "number", + "nativeSrc": "7437:1:74", + "nodeType": "YulLiteral", + "src": "7437:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7426:3:74", + "nodeType": "YulIdentifier", + "src": "7426:3:74" + }, + "nativeSrc": "7426:13:74", + "nodeType": "YulFunctionCall", + "src": "7426:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "7419:3:74", + "nodeType": "YulIdentifier", + "src": "7419:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nativeSrc": "7212:233:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7241:5:74", + "nodeType": "YulTypedName", + "src": "7241:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "7251:3:74", + "nodeType": "YulTypedName", + "src": "7251:3:74", + "type": "" + } + ], + "src": "7212:233:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack_library(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack_library(value0, add(headStart, 0))\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint8(x, y) -> diff {\n x := cleanup_t_uint8(x)\n y := cleanup_t_uint8(y)\n diff := sub(x, y)\n\n if gt(diff, 0xff) { panic_error_0x11() }\n\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n let product_raw := mul(x, y)\n product := cleanup_t_uint256(product_raw)\n\n // overflow, if x != 0 and y != product/x\n if iszero(\n or(\n iszero(x),\n eq(y, div(product, x))\n )\n ) { panic_error_0x11() }\n\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46(memPtr) {\n\n mstore(add(memPtr, 0), \"No numeric suffix found\")\n\n }\n\n function abi_encode_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_7a44fd8a47458bae26d803c8fc78b661bb186532592b492e791dbbc5fce49a46_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806308dea91d1461004557806394bc2db614610075575b600080fd5b61005f600480360381019061005a9190610409565b6100a5565b60405161006c919061046b565b60405180910390f35b61008f600480360381019061008a9190610409565b610193565b60405161009c9190610505565b60405180910390f35b600080600090506000805b84518110156101485760008582815181106100ce576100cd610527565b5b602001015160f81c60f81b60f81c905060308160ff16101580156100f6575060398160ff1611155b1561012d576030816101089190610592565b60ff16600a8561011891906105c7565b6101229190610609565b93506001925061013a565b82156101395750610148565b5b5080806001019150506100b0565b5080610189576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101809061069a565b60405180910390fd5b8192505050919050565b60606000808382815181106101ab576101aa610527565b5b602001015160f81c60f81b60f81c905081806101c6906106ba565b92505060008160ff1667ffffffffffffffff8111156101e8576101e76102de565b5b6040519080825280601f01601f19166020018201604052801561021a5781602001600182028036833780820191505090505b50905060005b8260ff168110156102a3578581856102389190610609565b8151811061024957610248610527565b5b602001015160f81c60f81b82828151811061026757610266610527565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610220565b50809350505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610316826102cd565b810181811067ffffffffffffffff82111715610335576103346102de565b5b80604052505050565b60006103486102af565b9050610354828261030d565b919050565b600067ffffffffffffffff821115610374576103736102de565b5b61037d826102cd565b9050602081019050919050565b82818337600083830152505050565b60006103ac6103a784610359565b61033e565b9050828152602081018484840111156103c8576103c76102c8565b5b6103d384828561038a565b509392505050565b600082601f8301126103f0576103ef6102c3565b5b8135610400848260208601610399565b91505092915050565b60006020828403121561041f5761041e6102b9565b5b600082013567ffffffffffffffff81111561043d5761043c6102be565b5b610449848285016103db565b91505092915050565b6000819050919050565b61046581610452565b82525050565b6000602082019050610480600083018461045c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104c05780820151818401526020810190506104a5565b60008484015250505050565b60006104d782610486565b6104e18185610491565b93506104f18185602086016104a2565b6104fa816102cd565b840191505092915050565b6000602082019050818103600083015261051f81846104cc565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061059d82610556565b91506105a883610556565b9250828203905060ff8111156105c1576105c0610563565b5b92915050565b60006105d282610452565b91506105dd83610452565b92508282026105eb81610452565b9150828204841483151761060257610601610563565b5b5092915050565b600061061482610452565b915061061f83610452565b925082820190508082111561063757610636610563565b5b92915050565b600082825260208201905092915050565b7f4e6f206e756d657269632073756666697820666f756e64000000000000000000600082015250565b600061068460178361063d565b915061068f8261064e565b602082019050919050565b600060208201905081810360008301526106b381610677565b9050919050565b60006106c582610452565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106f7576106f6610563565b5b60018201905091905056fea2646970667358221220fd64dc77b8c67827745419800c3980f933551e388779f20784cc6bf95b81b97c64736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x40 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DEA91D EQ PUSH2 0x45 JUMPI DUP1 PUSH4 0x94BC2DB6 EQ PUSH2 0x75 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x5F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5A SWAP2 SWAP1 PUSH2 0x409 JUMP JUMPDEST PUSH2 0xA5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6C SWAP2 SWAP1 PUSH2 0x46B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8A SWAP2 SWAP1 PUSH2 0x409 JUMP JUMPDEST PUSH2 0x193 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9C SWAP2 SWAP1 PUSH2 0x505 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 DUP1 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x148 JUMPI PUSH1 0x0 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xCE JUMPI PUSH2 0xCD PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP PUSH1 0x30 DUP2 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0xF6 JUMPI POP PUSH1 0x39 DUP2 PUSH1 0xFF AND GT ISZERO JUMPDEST ISZERO PUSH2 0x12D JUMPI PUSH1 0x30 DUP2 PUSH2 0x108 SWAP2 SWAP1 PUSH2 0x592 JUMP JUMPDEST PUSH1 0xFF AND PUSH1 0xA DUP6 PUSH2 0x118 SWAP2 SWAP1 PUSH2 0x5C7 JUMP JUMPDEST PUSH2 0x122 SWAP2 SWAP1 PUSH2 0x609 JUMP JUMPDEST SWAP4 POP PUSH1 0x1 SWAP3 POP PUSH2 0x13A JUMP JUMPDEST DUP3 ISZERO PUSH2 0x139 JUMPI POP PUSH2 0x148 JUMP JUMPDEST JUMPDEST POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0xB0 JUMP JUMPDEST POP DUP1 PUSH2 0x189 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x180 SWAP1 PUSH2 0x69A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1AB JUMPI PUSH2 0x1AA PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP DUP2 DUP1 PUSH2 0x1C6 SWAP1 PUSH2 0x6BA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x0 DUP2 PUSH1 0xFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E8 JUMPI PUSH2 0x1E7 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x21A JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x2A3 JUMPI DUP6 DUP2 DUP6 PUSH2 0x238 SWAP2 SWAP1 PUSH2 0x609 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x249 JUMPI PUSH2 0x248 PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x267 JUMPI PUSH2 0x266 PUSH2 0x527 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0x220 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x316 DUP3 PUSH2 0x2CD JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x335 JUMPI PUSH2 0x334 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0x2AF JUMP JUMPDEST SWAP1 POP PUSH2 0x354 DUP3 DUP3 PUSH2 0x30D JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x374 JUMPI PUSH2 0x373 PUSH2 0x2DE JUMP JUMPDEST JUMPDEST PUSH2 0x37D DUP3 PUSH2 0x2CD JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3AC PUSH2 0x3A7 DUP5 PUSH2 0x359 JUMP JUMPDEST PUSH2 0x33E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x3C8 JUMPI PUSH2 0x3C7 PUSH2 0x2C8 JUMP JUMPDEST JUMPDEST PUSH2 0x3D3 DUP5 DUP3 DUP6 PUSH2 0x38A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x3F0 JUMPI PUSH2 0x3EF PUSH2 0x2C3 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x400 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x399 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x41F JUMPI PUSH2 0x41E PUSH2 0x2B9 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x43D JUMPI PUSH2 0x43C PUSH2 0x2BE JUMP JUMPDEST JUMPDEST PUSH2 0x449 DUP5 DUP3 DUP6 ADD PUSH2 0x3DB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x465 DUP2 PUSH2 0x452 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x480 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x45C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4C0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4A5 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D7 DUP3 PUSH2 0x486 JUMP JUMPDEST PUSH2 0x4E1 DUP2 DUP6 PUSH2 0x491 JUMP JUMPDEST SWAP4 POP PUSH2 0x4F1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x4A2 JUMP JUMPDEST PUSH2 0x4FA DUP2 PUSH2 0x2CD JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x51F DUP2 DUP5 PUSH2 0x4CC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x59D DUP3 PUSH2 0x556 JUMP JUMPDEST SWAP2 POP PUSH2 0x5A8 DUP4 PUSH2 0x556 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x5C1 JUMPI PUSH2 0x5C0 PUSH2 0x563 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D2 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DD DUP4 PUSH2 0x452 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x5EB DUP2 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x602 JUMPI PUSH2 0x601 PUSH2 0x563 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x614 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH2 0x61F DUP4 PUSH2 0x452 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x637 JUMPI PUSH2 0x636 PUSH2 0x563 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E6F206E756D657269632073756666697820666F756E64000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x684 PUSH1 0x17 DUP4 PUSH2 0x63D JUMP JUMPDEST SWAP2 POP PUSH2 0x68F DUP3 PUSH2 0x64E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x6B3 DUP2 PUSH2 0x677 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6C5 DUP3 PUSH2 0x452 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x6F7 JUMPI PUSH2 0x6F6 PUSH2 0x563 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 REVERT PUSH5 0xDC77B8C678 0x27 PUSH21 0x5419800C3980F933551E388779F20784CC6BF95B81 0xB9 PUSH29 0x64736F6C63430008190033000000000000000000000000000000000000 ", + "sourceMap": "159:1383:68:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;873:667;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;342:365;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;873:667;960:7;979:11;993:1;979:15;;1004:14;1042:9;1037:421;1061:5;:12;1057:1;:16;1037:421;;;1094:10;1113:5;1119:1;1113:8;;;;;;;;:::i;:::-;;;;;;;;;;1107:15;;1094:28;;1148:2;1140:4;:10;;;;:24;;;;;1162:2;1154:4;:10;;;;1140:24;1136:312;;;1262:2;1255:4;:9;;;;:::i;:::-;1243:22;;1249:2;1243:3;:8;;;;:::i;:::-;:22;;;;:::i;:::-;1237:28;;1295:4;1283:16;;1136:312;;;1324:9;1320:128;;;1428:5;;;1320:128;1136:312;1080:378;1075:3;;;;;;;1037:421;;;;1476:9;1468:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;1530:3;1523:10;;;;873:667;;;:::o;342:365::-;425:12;449:11;474:17;500:4;505:3;500:9;;;;;;;;:::i;:::-;;;;;;;;;;494:16;;474:36;;520:5;;;;;:::i;:::-;;;;535:18;566:11;556:22;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;535:43;;593:9;588:91;612:11;608:15;;:1;:15;588:91;;;655:4;666:1;660:3;:7;;;;:::i;:::-;655:13;;;;;;;;:::i;:::-;;;;;;;;;;644:5;650:1;644:8;;;;;;;;:::i;:::-;;;;;:24;;;;;;;;;;;625:3;;;;;;;588:91;;;;695:5;688:12;;;;;342:365;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:307::-;1357:4;1447:18;1439:6;1436:30;1433:56;;;1469:18;;:::i;:::-;1433:56;1507:29;1529:6;1507:29;:::i;:::-;1499:37;;1591:4;1585;1581:15;1573:23;;1296:307;;;:::o;1609:148::-;1707:6;1702:3;1697;1684:30;1748:1;1739:6;1734:3;1730:16;1723:27;1609:148;;;:::o;1763:423::-;1840:5;1865:65;1881:48;1922:6;1881:48;:::i;:::-;1865:65;:::i;:::-;1856:74;;1953:6;1946:5;1939:21;1991:4;1984:5;1980:16;2029:3;2020:6;2015:3;2011:16;2008:25;2005:112;;;2036:79;;:::i;:::-;2005:112;2126:54;2173:6;2168:3;2163;2126:54;:::i;:::-;1846:340;1763:423;;;;;:::o;2205:338::-;2260:5;2309:3;2302:4;2294:6;2290:17;2286:27;2276:122;;2317:79;;:::i;:::-;2276:122;2434:6;2421:20;2459:78;2533:3;2525:6;2518:4;2510:6;2506:17;2459:78;:::i;:::-;2450:87;;2266:277;2205:338;;;;:::o;2549:507::-;2617:6;2666:2;2654:9;2645:7;2641:23;2637:32;2634:119;;;2672:79;;:::i;:::-;2634:119;2820:1;2809:9;2805:17;2792:31;2850:18;2842:6;2839:30;2836:117;;;2872:79;;:::i;:::-;2836:117;2977:62;3031:7;3022:6;3011:9;3007:22;2977:62;:::i;:::-;2967:72;;2763:286;2549:507;;;;:::o;3062:77::-;3099:7;3128:5;3117:16;;3062:77;;;:::o;3145:126::-;3240:24;3258:5;3240:24;:::i;:::-;3235:3;3228:37;3145:126;;:::o;3277:238::-;3378:4;3416:2;3405:9;3401:18;3393:26;;3429:79;3505:1;3494:9;3490:17;3481:6;3429:79;:::i;:::-;3277:238;;;;:::o;3521:98::-;3572:6;3606:5;3600:12;3590:22;;3521:98;;;:::o;3625:176::-;3716:11;3750:6;3745:3;3738:19;3790:4;3785:3;3781:14;3766:29;;3625:176;;;;:::o;3807:248::-;3889:1;3899:113;3913:6;3910:1;3907:13;3899:113;;;3998:1;3993:3;3989:11;3983:18;3979:1;3974:3;3970:11;3963:39;3935:2;3932:1;3928:10;3923:15;;3899:113;;;4046:1;4037:6;4032:3;4028:16;4021:27;3869:186;3807:248;;;:::o;4061:389::-;4155:3;4183:38;4215:5;4183:38;:::i;:::-;4237:78;4308:6;4303:3;4237:78;:::i;:::-;4230:85;;4324:65;4382:6;4377:3;4370:4;4363:5;4359:16;4324:65;:::i;:::-;4414:29;4436:6;4414:29;:::i;:::-;4409:3;4405:39;4398:46;;4159:291;4061:389;;;;:::o;4456:325::-;4575:4;4613:2;4602:9;4598:18;4590:26;;4662:9;4656:4;4652:20;4648:1;4637:9;4633:17;4626:47;4690:84;4769:4;4760:6;4690:84;:::i;:::-;4682:92;;4456:325;;;;:::o;4787:180::-;4835:77;4832:1;4825:88;4932:4;4929:1;4922:15;4956:4;4953:1;4946:15;4973:86;5008:7;5048:4;5041:5;5037:16;5026:27;;4973:86;;;:::o;5065:180::-;5113:77;5110:1;5103:88;5210:4;5207:1;5200:15;5234:4;5231:1;5224:15;5251:191;5289:4;5309:18;5325:1;5309:18;:::i;:::-;5304:23;;5341:18;5357:1;5341:18;:::i;:::-;5336:23;;5383:1;5380;5376:9;5368:17;;5407:4;5401;5398:14;5395:40;;;5415:18;;:::i;:::-;5395:40;5251:191;;;;:::o;5448:410::-;5488:7;5511:20;5529:1;5511:20;:::i;:::-;5506:25;;5545:20;5563:1;5545:20;:::i;:::-;5540:25;;5600:1;5597;5593:9;5622:30;5640:11;5622:30;:::i;:::-;5611:41;;5801:1;5792:7;5788:15;5785:1;5782:22;5762:1;5755:9;5735:83;5712:139;;5831:18;;:::i;:::-;5712:139;5496:362;5448:410;;;;:::o;5864:191::-;5904:3;5923:20;5941:1;5923:20;:::i;:::-;5918:25;;5957:20;5975:1;5957:20;:::i;:::-;5952:25;;6000:1;5997;5993:9;5986:16;;6021:3;6018:1;6015:10;6012:36;;;6028:18;;:::i;:::-;6012:36;5864:191;;;;:::o;6061:169::-;6145:11;6179:6;6174:3;6167:19;6219:4;6214:3;6210:14;6195:29;;6061:169;;;;:::o;6236:173::-;6376:25;6372:1;6364:6;6360:14;6353:49;6236:173;:::o;6415:366::-;6557:3;6578:67;6642:2;6637:3;6578:67;:::i;:::-;6571:74;;6654:93;6743:3;6654:93;:::i;:::-;6772:2;6767:3;6763:12;6756:19;;6415:366;;;:::o;6787:419::-;6953:4;6991:2;6980:9;6976:18;6968:26;;7040:9;7034:4;7030:20;7026:1;7015:9;7011:17;7004:47;7068:131;7194:4;7068:131;:::i;:::-;7060:139;;6787:419;;;:::o;7212:233::-;7251:3;7274:24;7292:5;7274:24;:::i;:::-;7265:33;;7320:66;7313:5;7310:77;7307:103;;7390:18;;:::i;:::-;7307:103;7437:1;7430:5;7426:13;7419:20;;7212:233;;;:::o" + }, + "methodIdentifiers": { + "extractFirstLabel(bytes)": "94bc2db6", + "extractNumericSuffix(bytes)": "08dea91d" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"}],\"name\":\"extractFirstLabel\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"label\",\"type\":\"bytes\"}],\"name\":\"extractNumericSuffix\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"ConsenSys Software Inc.\",\"kind\":\"dev\",\"methods\":{\"extractFirstLabel(bytes)\":{\"params\":{\"name\":\"the dns encoded ENS domain\"},\"returns\":{\"_0\":\"label as bytes\"}},\"extractNumericSuffix(bytes)\":{\"params\":{\"label\":\"the dns encoded label\"},\"returns\":{\"_0\":\"number the numeric suffix\"}}},\"title\":\"Library to perform ENS label manipulation\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"extractFirstLabel(bytes)\":{\"notice\":\"Extract the first label name from a dns encoded ens domain\"},\"extractNumericSuffix(bytes)\":{\"notice\":\"Extract the numeric suffix from the dns encoded label\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/LabelUtils.sol\":\"LabelUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/LabelUtils.sol\":{\"keccak256\":\"0xc39e8f7e7185766e3c44db43af0103564c8980670268c3b09588195d199d8b87\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1b82487b40e734269f267c6b44d0a09ec98c84fd054cddebd7f72e546ce7d88d\",\"dweb:/ipfs/QmUrTcp7BMRWE2M72duR2anYgBFySEgRAyR3bGamPX2kkK\"]}},\"version\":1}" + } + }, + "contracts/NFTMock.sol": { + "NFTMock": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentTokenId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_13486": { + "entryPoint": null, + "id": 13486, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_16284": { + "entryPoint": null, + "id": 16284, + "parameterSlots": 0, + "returnSlots": 0 + }, + "array_dataslot_t_string_storage": { + "entryPoint": 326, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 172, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_t_string_storage": { + "entryPoint": 623, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "cleanup_t_uint256": { + "entryPoint": 458, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clear_storage_range_t_bytes1": { + "entryPoint": 588, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "convert_t_uint256_to_t_uint256": { + "entryPoint": 478, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 764, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "divide_by_32_ceil": { + "entryPoint": 347, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 277, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": 736, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "identity": { + "entryPoint": 468, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "mask_bytes_dynamic": { + "entryPoint": 706, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x22": { + "entryPoint": 230, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 183, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "prepare_store_t_uint256": { + "entryPoint": 512, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 363, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "shift_right_unsigned_dynamic": { + "entryPoint": 693, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "storage_set_to_zero_t_uint256": { + "entryPoint": 564, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "update_byte_slice_dynamic32": { + "entryPoint": 376, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "update_storage_value_t_uint256_to_t_uint256": { + "entryPoint": 522, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "zero_value_for_split_t_uint256": { + "entryPoint": 559, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:5231:74", + "nodeType": "YulBlock", + "src": "0:5231:74", + "statements": [ + { + "body": { + "nativeSrc": "66:40:74", + "nodeType": "YulBlock", + "src": "66:40:74", + "statements": [ + { + "nativeSrc": "77:22:74", + "nodeType": "YulAssignment", + "src": "77:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "93:5:74", + "nodeType": "YulIdentifier", + "src": "93:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "87:5:74", + "nodeType": "YulIdentifier", + "src": "87:5:74" + }, + "nativeSrc": "87:12:74", + "nodeType": "YulFunctionCall", + "src": "87:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "77:6:74", + "nodeType": "YulIdentifier", + "src": "77:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "7:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "49:5:74", + "nodeType": "YulTypedName", + "src": "49:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "59:6:74", + "nodeType": "YulTypedName", + "src": "59:6:74", + "type": "" + } + ], + "src": "7:99:74" + }, + { + "body": { + "nativeSrc": "140:152:74", + "nodeType": "YulBlock", + "src": "140:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "157:1:74", + "nodeType": "YulLiteral", + "src": "157:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "160:77:74", + "nodeType": "YulLiteral", + "src": "160:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "150:6:74", + "nodeType": "YulIdentifier", + "src": "150:6:74" + }, + "nativeSrc": "150:88:74", + "nodeType": "YulFunctionCall", + "src": "150:88:74" + }, + "nativeSrc": "150:88:74", + "nodeType": "YulExpressionStatement", + "src": "150:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "254:1:74", + "nodeType": "YulLiteral", + "src": "254:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "257:4:74", + "nodeType": "YulLiteral", + "src": "257:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "247:6:74", + "nodeType": "YulIdentifier", + "src": "247:6:74" + }, + "nativeSrc": "247:15:74", + "nodeType": "YulFunctionCall", + "src": "247:15:74" + }, + "nativeSrc": "247:15:74", + "nodeType": "YulExpressionStatement", + "src": "247:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "278:1:74", + "nodeType": "YulLiteral", + "src": "278:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "281:4:74", + "nodeType": "YulLiteral", + "src": "281:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "271:6:74", + "nodeType": "YulIdentifier", + "src": "271:6:74" + }, + "nativeSrc": "271:15:74", + "nodeType": "YulFunctionCall", + "src": "271:15:74" + }, + "nativeSrc": "271:15:74", + "nodeType": "YulExpressionStatement", + "src": "271:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "112:180:74", + "nodeType": "YulFunctionDefinition", + "src": "112:180:74" + }, + { + "body": { + "nativeSrc": "326:152:74", + "nodeType": "YulBlock", + "src": "326:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "343:1:74", + "nodeType": "YulLiteral", + "src": "343:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "346:77:74", + "nodeType": "YulLiteral", + "src": "346:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "336:6:74", + "nodeType": "YulIdentifier", + "src": "336:6:74" + }, + "nativeSrc": "336:88:74", + "nodeType": "YulFunctionCall", + "src": "336:88:74" + }, + "nativeSrc": "336:88:74", + "nodeType": "YulExpressionStatement", + "src": "336:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "440:1:74", + "nodeType": "YulLiteral", + "src": "440:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "443:4:74", + "nodeType": "YulLiteral", + "src": "443:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "433:6:74", + "nodeType": "YulIdentifier", + "src": "433:6:74" + }, + "nativeSrc": "433:15:74", + "nodeType": "YulFunctionCall", + "src": "433:15:74" + }, + "nativeSrc": "433:15:74", + "nodeType": "YulExpressionStatement", + "src": "433:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "464:1:74", + "nodeType": "YulLiteral", + "src": "464:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "467:4:74", + "nodeType": "YulLiteral", + "src": "467:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "457:6:74", + "nodeType": "YulIdentifier", + "src": "457:6:74" + }, + "nativeSrc": "457:15:74", + "nodeType": "YulFunctionCall", + "src": "457:15:74" + }, + "nativeSrc": "457:15:74", + "nodeType": "YulExpressionStatement", + "src": "457:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "298:180:74", + "nodeType": "YulFunctionDefinition", + "src": "298:180:74" + }, + { + "body": { + "nativeSrc": "535:269:74", + "nodeType": "YulBlock", + "src": "535:269:74", + "statements": [ + { + "nativeSrc": "545:22:74", + "nodeType": "YulAssignment", + "src": "545:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "559:4:74", + "nodeType": "YulIdentifier", + "src": "559:4:74" + }, + { + "kind": "number", + "nativeSrc": "565:1:74", + "nodeType": "YulLiteral", + "src": "565:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "555:3:74", + "nodeType": "YulIdentifier", + "src": "555:3:74" + }, + "nativeSrc": "555:12:74", + "nodeType": "YulFunctionCall", + "src": "555:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "545:6:74", + "nodeType": "YulIdentifier", + "src": "545:6:74" + } + ] + }, + { + "nativeSrc": "576:38:74", + "nodeType": "YulVariableDeclaration", + "src": "576:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "606:4:74", + "nodeType": "YulIdentifier", + "src": "606:4:74" + }, + { + "kind": "number", + "nativeSrc": "612:1:74", + "nodeType": "YulLiteral", + "src": "612:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "602:3:74", + "nodeType": "YulIdentifier", + "src": "602:3:74" + }, + "nativeSrc": "602:12:74", + "nodeType": "YulFunctionCall", + "src": "602:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "580:18:74", + "nodeType": "YulTypedName", + "src": "580:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "653:51:74", + "nodeType": "YulBlock", + "src": "653:51:74", + "statements": [ + { + "nativeSrc": "667:27:74", + "nodeType": "YulAssignment", + "src": "667:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "681:6:74", + "nodeType": "YulIdentifier", + "src": "681:6:74" + }, + { + "kind": "number", + "nativeSrc": "689:4:74", + "nodeType": "YulLiteral", + "src": "689:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "677:3:74", + "nodeType": "YulIdentifier", + "src": "677:3:74" + }, + "nativeSrc": "677:17:74", + "nodeType": "YulFunctionCall", + "src": "677:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "667:6:74", + "nodeType": "YulIdentifier", + "src": "667:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "633:18:74", + "nodeType": "YulIdentifier", + "src": "633:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "626:6:74", + "nodeType": "YulIdentifier", + "src": "626:6:74" + }, + "nativeSrc": "626:26:74", + "nodeType": "YulFunctionCall", + "src": "626:26:74" + }, + "nativeSrc": "623:81:74", + "nodeType": "YulIf", + "src": "623:81:74" + }, + { + "body": { + "nativeSrc": "756:42:74", + "nodeType": "YulBlock", + "src": "756:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "770:16:74", + "nodeType": "YulIdentifier", + "src": "770:16:74" + }, + "nativeSrc": "770:18:74", + "nodeType": "YulFunctionCall", + "src": "770:18:74" + }, + "nativeSrc": "770:18:74", + "nodeType": "YulExpressionStatement", + "src": "770:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "720:18:74", + "nodeType": "YulIdentifier", + "src": "720:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "743:6:74", + "nodeType": "YulIdentifier", + "src": "743:6:74" + }, + { + "kind": "number", + "nativeSrc": "751:2:74", + "nodeType": "YulLiteral", + "src": "751:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "740:2:74", + "nodeType": "YulIdentifier", + "src": "740:2:74" + }, + "nativeSrc": "740:14:74", + "nodeType": "YulFunctionCall", + "src": "740:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "717:2:74", + "nodeType": "YulIdentifier", + "src": "717:2:74" + }, + "nativeSrc": "717:38:74", + "nodeType": "YulFunctionCall", + "src": "717:38:74" + }, + "nativeSrc": "714:84:74", + "nodeType": "YulIf", + "src": "714:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "484:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "519:4:74", + "nodeType": "YulTypedName", + "src": "519:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "528:6:74", + "nodeType": "YulTypedName", + "src": "528:6:74", + "type": "" + } + ], + "src": "484:320:74" + }, + { + "body": { + "nativeSrc": "864:87:74", + "nodeType": "YulBlock", + "src": "864:87:74", + "statements": [ + { + "nativeSrc": "874:11:74", + "nodeType": "YulAssignment", + "src": "874:11:74", + "value": { + "name": "ptr", + "nativeSrc": "882:3:74", + "nodeType": "YulIdentifier", + "src": "882:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "874:4:74", + "nodeType": "YulIdentifier", + "src": "874:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "902:1:74", + "nodeType": "YulLiteral", + "src": "902:1:74", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nativeSrc": "905:3:74", + "nodeType": "YulIdentifier", + "src": "905:3:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "895:6:74", + "nodeType": "YulIdentifier", + "src": "895:6:74" + }, + "nativeSrc": "895:14:74", + "nodeType": "YulFunctionCall", + "src": "895:14:74" + }, + "nativeSrc": "895:14:74", + "nodeType": "YulExpressionStatement", + "src": "895:14:74" + }, + { + "nativeSrc": "918:26:74", + "nodeType": "YulAssignment", + "src": "918:26:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "936:1:74", + "nodeType": "YulLiteral", + "src": "936:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "939:4:74", + "nodeType": "YulLiteral", + "src": "939:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nativeSrc": "926:9:74", + "nodeType": "YulIdentifier", + "src": "926:9:74" + }, + "nativeSrc": "926:18:74", + "nodeType": "YulFunctionCall", + "src": "926:18:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "918:4:74", + "nodeType": "YulIdentifier", + "src": "918:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_string_storage", + "nativeSrc": "810:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "851:3:74", + "nodeType": "YulTypedName", + "src": "851:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "859:4:74", + "nodeType": "YulTypedName", + "src": "859:4:74", + "type": "" + } + ], + "src": "810:141:74" + }, + { + "body": { + "nativeSrc": "1001:49:74", + "nodeType": "YulBlock", + "src": "1001:49:74", + "statements": [ + { + "nativeSrc": "1011:33:74", + "nodeType": "YulAssignment", + "src": "1011:33:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1029:5:74", + "nodeType": "YulIdentifier", + "src": "1029:5:74" + }, + { + "kind": "number", + "nativeSrc": "1036:2:74", + "nodeType": "YulLiteral", + "src": "1036:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1025:3:74", + "nodeType": "YulIdentifier", + "src": "1025:3:74" + }, + "nativeSrc": "1025:14:74", + "nodeType": "YulFunctionCall", + "src": "1025:14:74" + }, + { + "kind": "number", + "nativeSrc": "1041:2:74", + "nodeType": "YulLiteral", + "src": "1041:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "1021:3:74", + "nodeType": "YulIdentifier", + "src": "1021:3:74" + }, + "nativeSrc": "1021:23:74", + "nodeType": "YulFunctionCall", + "src": "1021:23:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "1011:6:74", + "nodeType": "YulIdentifier", + "src": "1011:6:74" + } + ] + } + ] + }, + "name": "divide_by_32_ceil", + "nativeSrc": "957:93:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "984:5:74", + "nodeType": "YulTypedName", + "src": "984:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "994:6:74", + "nodeType": "YulTypedName", + "src": "994:6:74", + "type": "" + } + ], + "src": "957:93:74" + }, + { + "body": { + "nativeSrc": "1109:54:74", + "nodeType": "YulBlock", + "src": "1109:54:74", + "statements": [ + { + "nativeSrc": "1119:37:74", + "nodeType": "YulAssignment", + "src": "1119:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "1144:4:74", + "nodeType": "YulIdentifier", + "src": "1144:4:74" + }, + { + "name": "value", + "nativeSrc": "1150:5:74", + "nodeType": "YulIdentifier", + "src": "1150:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "1140:3:74", + "nodeType": "YulIdentifier", + "src": "1140:3:74" + }, + "nativeSrc": "1140:16:74", + "nodeType": "YulFunctionCall", + "src": "1140:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "1119:8:74", + "nodeType": "YulIdentifier", + "src": "1119:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "1056:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "1084:4:74", + "nodeType": "YulTypedName", + "src": "1084:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "1090:5:74", + "nodeType": "YulTypedName", + "src": "1090:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "1100:8:74", + "nodeType": "YulTypedName", + "src": "1100:8:74", + "type": "" + } + ], + "src": "1056:107:74" + }, + { + "body": { + "nativeSrc": "1245:317:74", + "nodeType": "YulBlock", + "src": "1245:317:74", + "statements": [ + { + "nativeSrc": "1255:35:74", + "nodeType": "YulVariableDeclaration", + "src": "1255:35:74", + "value": { + "arguments": [ + { + "name": "shiftBytes", + "nativeSrc": "1276:10:74", + "nodeType": "YulIdentifier", + "src": "1276:10:74" + }, + { + "kind": "number", + "nativeSrc": "1288:1:74", + "nodeType": "YulLiteral", + "src": "1288:1:74", + "type": "", + "value": "8" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "1272:3:74", + "nodeType": "YulIdentifier", + "src": "1272:3:74" + }, + "nativeSrc": "1272:18:74", + "nodeType": "YulFunctionCall", + "src": "1272:18:74" + }, + "variables": [ + { + "name": "shiftBits", + "nativeSrc": "1259:9:74", + "nodeType": "YulTypedName", + "src": "1259:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1299:109:74", + "nodeType": "YulVariableDeclaration", + "src": "1299:109:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "1330:9:74", + "nodeType": "YulIdentifier", + "src": "1330:9:74" + }, + { + "kind": "number", + "nativeSrc": "1341:66:74", + "nodeType": "YulLiteral", + "src": "1341:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "1311:18:74", + "nodeType": "YulIdentifier", + "src": "1311:18:74" + }, + "nativeSrc": "1311:97:74", + "nodeType": "YulFunctionCall", + "src": "1311:97:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "1303:4:74", + "nodeType": "YulTypedName", + "src": "1303:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1417:51:74", + "nodeType": "YulAssignment", + "src": "1417:51:74", + "value": { + "arguments": [ + { + "name": "shiftBits", + "nativeSrc": "1448:9:74", + "nodeType": "YulIdentifier", + "src": "1448:9:74" + }, + { + "name": "toInsert", + "nativeSrc": "1459:8:74", + "nodeType": "YulIdentifier", + "src": "1459:8:74" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "1429:18:74", + "nodeType": "YulIdentifier", + "src": "1429:18:74" + }, + "nativeSrc": "1429:39:74", + "nodeType": "YulFunctionCall", + "src": "1429:39:74" + }, + "variableNames": [ + { + "name": "toInsert", + "nativeSrc": "1417:8:74", + "nodeType": "YulIdentifier", + "src": "1417:8:74" + } + ] + }, + { + "nativeSrc": "1477:30:74", + "nodeType": "YulAssignment", + "src": "1477:30:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1490:5:74", + "nodeType": "YulIdentifier", + "src": "1490:5:74" + }, + { + "arguments": [ + { + "name": "mask", + "nativeSrc": "1501:4:74", + "nodeType": "YulIdentifier", + "src": "1501:4:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "1497:3:74", + "nodeType": "YulIdentifier", + "src": "1497:3:74" + }, + "nativeSrc": "1497:9:74", + "nodeType": "YulFunctionCall", + "src": "1497:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1486:3:74", + "nodeType": "YulIdentifier", + "src": "1486:3:74" + }, + "nativeSrc": "1486:21:74", + "nodeType": "YulFunctionCall", + "src": "1486:21:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1477:5:74", + "nodeType": "YulIdentifier", + "src": "1477:5:74" + } + ] + }, + { + "nativeSrc": "1516:40:74", + "nodeType": "YulAssignment", + "src": "1516:40:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1529:5:74", + "nodeType": "YulIdentifier", + "src": "1529:5:74" + }, + { + "arguments": [ + { + "name": "toInsert", + "nativeSrc": "1540:8:74", + "nodeType": "YulIdentifier", + "src": "1540:8:74" + }, + { + "name": "mask", + "nativeSrc": "1550:4:74", + "nodeType": "YulIdentifier", + "src": "1550:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1536:3:74", + "nodeType": "YulIdentifier", + "src": "1536:3:74" + }, + "nativeSrc": "1536:19:74", + "nodeType": "YulFunctionCall", + "src": "1536:19:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "1526:2:74", + "nodeType": "YulIdentifier", + "src": "1526:2:74" + }, + "nativeSrc": "1526:30:74", + "nodeType": "YulFunctionCall", + "src": "1526:30:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "1516:6:74", + "nodeType": "YulIdentifier", + "src": "1516:6:74" + } + ] + } + ] + }, + "name": "update_byte_slice_dynamic32", + "nativeSrc": "1169:393:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1206:5:74", + "nodeType": "YulTypedName", + "src": "1206:5:74", + "type": "" + }, + { + "name": "shiftBytes", + "nativeSrc": "1213:10:74", + "nodeType": "YulTypedName", + "src": "1213:10:74", + "type": "" + }, + { + "name": "toInsert", + "nativeSrc": "1225:8:74", + "nodeType": "YulTypedName", + "src": "1225:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "1238:6:74", + "nodeType": "YulTypedName", + "src": "1238:6:74", + "type": "" + } + ], + "src": "1169:393:74" + }, + { + "body": { + "nativeSrc": "1613:32:74", + "nodeType": "YulBlock", + "src": "1613:32:74", + "statements": [ + { + "nativeSrc": "1623:16:74", + "nodeType": "YulAssignment", + "src": "1623:16:74", + "value": { + "name": "value", + "nativeSrc": "1634:5:74", + "nodeType": "YulIdentifier", + "src": "1634:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1623:7:74", + "nodeType": "YulIdentifier", + "src": "1623:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "1568:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1595:5:74", + "nodeType": "YulTypedName", + "src": "1595:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1605:7:74", + "nodeType": "YulTypedName", + "src": "1605:7:74", + "type": "" + } + ], + "src": "1568:77:74" + }, + { + "body": { + "nativeSrc": "1683:28:74", + "nodeType": "YulBlock", + "src": "1683:28:74", + "statements": [ + { + "nativeSrc": "1693:12:74", + "nodeType": "YulAssignment", + "src": "1693:12:74", + "value": { + "name": "value", + "nativeSrc": "1700:5:74", + "nodeType": "YulIdentifier", + "src": "1700:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "1693:3:74", + "nodeType": "YulIdentifier", + "src": "1693:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "1651:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1669:5:74", + "nodeType": "YulTypedName", + "src": "1669:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "1679:3:74", + "nodeType": "YulTypedName", + "src": "1679:3:74", + "type": "" + } + ], + "src": "1651:60:74" + }, + { + "body": { + "nativeSrc": "1777:82:74", + "nodeType": "YulBlock", + "src": "1777:82:74", + "statements": [ + { + "nativeSrc": "1787:66:74", + "nodeType": "YulAssignment", + "src": "1787:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1845:5:74", + "nodeType": "YulIdentifier", + "src": "1845:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "1827:17:74", + "nodeType": "YulIdentifier", + "src": "1827:17:74" + }, + "nativeSrc": "1827:24:74", + "nodeType": "YulFunctionCall", + "src": "1827:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "1818:8:74", + "nodeType": "YulIdentifier", + "src": "1818:8:74" + }, + "nativeSrc": "1818:34:74", + "nodeType": "YulFunctionCall", + "src": "1818:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "1800:17:74", + "nodeType": "YulIdentifier", + "src": "1800:17:74" + }, + "nativeSrc": "1800:53:74", + "nodeType": "YulFunctionCall", + "src": "1800:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "1787:9:74", + "nodeType": "YulIdentifier", + "src": "1787:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "1717:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1757:5:74", + "nodeType": "YulTypedName", + "src": "1757:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "1767:9:74", + "nodeType": "YulTypedName", + "src": "1767:9:74", + "type": "" + } + ], + "src": "1717:142:74" + }, + { + "body": { + "nativeSrc": "1912:28:74", + "nodeType": "YulBlock", + "src": "1912:28:74", + "statements": [ + { + "nativeSrc": "1922:12:74", + "nodeType": "YulAssignment", + "src": "1922:12:74", + "value": { + "name": "value", + "nativeSrc": "1929:5:74", + "nodeType": "YulIdentifier", + "src": "1929:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "1922:3:74", + "nodeType": "YulIdentifier", + "src": "1922:3:74" + } + ] + } + ] + }, + "name": "prepare_store_t_uint256", + "nativeSrc": "1865:75:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1898:5:74", + "nodeType": "YulTypedName", + "src": "1898:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "1908:3:74", + "nodeType": "YulTypedName", + "src": "1908:3:74", + "type": "" + } + ], + "src": "1865:75:74" + }, + { + "body": { + "nativeSrc": "2022:193:74", + "nodeType": "YulBlock", + "src": "2022:193:74", + "statements": [ + { + "nativeSrc": "2032:63:74", + "nodeType": "YulVariableDeclaration", + "src": "2032:63:74", + "value": { + "arguments": [ + { + "name": "value_0", + "nativeSrc": "2087:7:74", + "nodeType": "YulIdentifier", + "src": "2087:7:74" + } + ], + "functionName": { + "name": "convert_t_uint256_to_t_uint256", + "nativeSrc": "2056:30:74", + "nodeType": "YulIdentifier", + "src": "2056:30:74" + }, + "nativeSrc": "2056:39:74", + "nodeType": "YulFunctionCall", + "src": "2056:39:74" + }, + "variables": [ + { + "name": "convertedValue_0", + "nativeSrc": "2036:16:74", + "nodeType": "YulTypedName", + "src": "2036:16:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "2111:4:74", + "nodeType": "YulIdentifier", + "src": "2111:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "2151:4:74", + "nodeType": "YulIdentifier", + "src": "2151:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "2145:5:74", + "nodeType": "YulIdentifier", + "src": "2145:5:74" + }, + "nativeSrc": "2145:11:74", + "nodeType": "YulFunctionCall", + "src": "2145:11:74" + }, + { + "name": "offset", + "nativeSrc": "2158:6:74", + "nodeType": "YulIdentifier", + "src": "2158:6:74" + }, + { + "arguments": [ + { + "name": "convertedValue_0", + "nativeSrc": "2190:16:74", + "nodeType": "YulIdentifier", + "src": "2190:16:74" + } + ], + "functionName": { + "name": "prepare_store_t_uint256", + "nativeSrc": "2166:23:74", + "nodeType": "YulIdentifier", + "src": "2166:23:74" + }, + "nativeSrc": "2166:41:74", + "nodeType": "YulFunctionCall", + "src": "2166:41:74" + } + ], + "functionName": { + "name": "update_byte_slice_dynamic32", + "nativeSrc": "2117:27:74", + "nodeType": "YulIdentifier", + "src": "2117:27:74" + }, + "nativeSrc": "2117:91:74", + "nodeType": "YulFunctionCall", + "src": "2117:91:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "2104:6:74", + "nodeType": "YulIdentifier", + "src": "2104:6:74" + }, + "nativeSrc": "2104:105:74", + "nodeType": "YulFunctionCall", + "src": "2104:105:74" + }, + "nativeSrc": "2104:105:74", + "nodeType": "YulExpressionStatement", + "src": "2104:105:74" + } + ] + }, + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "1946:269:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "1999:4:74", + "nodeType": "YulTypedName", + "src": "1999:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "2005:6:74", + "nodeType": "YulTypedName", + "src": "2005:6:74", + "type": "" + }, + { + "name": "value_0", + "nativeSrc": "2013:7:74", + "nodeType": "YulTypedName", + "src": "2013:7:74", + "type": "" + } + ], + "src": "1946:269:74" + }, + { + "body": { + "nativeSrc": "2270:24:74", + "nodeType": "YulBlock", + "src": "2270:24:74", + "statements": [ + { + "nativeSrc": "2280:8:74", + "nodeType": "YulAssignment", + "src": "2280:8:74", + "value": { + "kind": "number", + "nativeSrc": "2287:1:74", + "nodeType": "YulLiteral", + "src": "2287:1:74", + "type": "", + "value": "0" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "2280:3:74", + "nodeType": "YulIdentifier", + "src": "2280:3:74" + } + ] + } + ] + }, + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "2221:73:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "2266:3:74", + "nodeType": "YulTypedName", + "src": "2266:3:74", + "type": "" + } + ], + "src": "2221:73:74" + }, + { + "body": { + "nativeSrc": "2353:136:74", + "nodeType": "YulBlock", + "src": "2353:136:74", + "statements": [ + { + "nativeSrc": "2363:46:74", + "nodeType": "YulVariableDeclaration", + "src": "2363:46:74", + "value": { + "arguments": [], + "functionName": { + "name": "zero_value_for_split_t_uint256", + "nativeSrc": "2377:30:74", + "nodeType": "YulIdentifier", + "src": "2377:30:74" + }, + "nativeSrc": "2377:32:74", + "nodeType": "YulFunctionCall", + "src": "2377:32:74" + }, + "variables": [ + { + "name": "zero_0", + "nativeSrc": "2367:6:74", + "nodeType": "YulTypedName", + "src": "2367:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "2462:4:74", + "nodeType": "YulIdentifier", + "src": "2462:4:74" + }, + { + "name": "offset", + "nativeSrc": "2468:6:74", + "nodeType": "YulIdentifier", + "src": "2468:6:74" + }, + { + "name": "zero_0", + "nativeSrc": "2476:6:74", + "nodeType": "YulIdentifier", + "src": "2476:6:74" + } + ], + "functionName": { + "name": "update_storage_value_t_uint256_to_t_uint256", + "nativeSrc": "2418:43:74", + "nodeType": "YulIdentifier", + "src": "2418:43:74" + }, + "nativeSrc": "2418:65:74", + "nodeType": "YulFunctionCall", + "src": "2418:65:74" + }, + "nativeSrc": "2418:65:74", + "nodeType": "YulExpressionStatement", + "src": "2418:65:74" + } + ] + }, + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "2300:189:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "2339:4:74", + "nodeType": "YulTypedName", + "src": "2339:4:74", + "type": "" + }, + { + "name": "offset", + "nativeSrc": "2345:6:74", + "nodeType": "YulTypedName", + "src": "2345:6:74", + "type": "" + } + ], + "src": "2300:189:74" + }, + { + "body": { + "nativeSrc": "2545:136:74", + "nodeType": "YulBlock", + "src": "2545:136:74", + "statements": [ + { + "body": { + "nativeSrc": "2612:63:74", + "nodeType": "YulBlock", + "src": "2612:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "2656:5:74", + "nodeType": "YulIdentifier", + "src": "2656:5:74" + }, + { + "kind": "number", + "nativeSrc": "2663:1:74", + "nodeType": "YulLiteral", + "src": "2663:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "storage_set_to_zero_t_uint256", + "nativeSrc": "2626:29:74", + "nodeType": "YulIdentifier", + "src": "2626:29:74" + }, + "nativeSrc": "2626:39:74", + "nodeType": "YulFunctionCall", + "src": "2626:39:74" + }, + "nativeSrc": "2626:39:74", + "nodeType": "YulExpressionStatement", + "src": "2626:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nativeSrc": "2565:5:74", + "nodeType": "YulIdentifier", + "src": "2565:5:74" + }, + { + "name": "end", + "nativeSrc": "2572:3:74", + "nodeType": "YulIdentifier", + "src": "2572:3:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2562:2:74", + "nodeType": "YulIdentifier", + "src": "2562:2:74" + }, + "nativeSrc": "2562:14:74", + "nodeType": "YulFunctionCall", + "src": "2562:14:74" + }, + "nativeSrc": "2555:120:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "2577:26:74", + "nodeType": "YulBlock", + "src": "2577:26:74", + "statements": [ + { + "nativeSrc": "2579:22:74", + "nodeType": "YulAssignment", + "src": "2579:22:74", + "value": { + "arguments": [ + { + "name": "start", + "nativeSrc": "2592:5:74", + "nodeType": "YulIdentifier", + "src": "2592:5:74" + }, + { + "kind": "number", + "nativeSrc": "2599:1:74", + "nodeType": "YulLiteral", + "src": "2599:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2588:3:74", + "nodeType": "YulIdentifier", + "src": "2588:3:74" + }, + "nativeSrc": "2588:13:74", + "nodeType": "YulFunctionCall", + "src": "2588:13:74" + }, + "variableNames": [ + { + "name": "start", + "nativeSrc": "2579:5:74", + "nodeType": "YulIdentifier", + "src": "2579:5:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "2559:2:74", + "nodeType": "YulBlock", + "src": "2559:2:74", + "statements": [] + }, + "src": "2555:120:74" + } + ] + }, + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "2495:186:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "2533:5:74", + "nodeType": "YulTypedName", + "src": "2533:5:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2540:3:74", + "nodeType": "YulTypedName", + "src": "2540:3:74", + "type": "" + } + ], + "src": "2495:186:74" + }, + { + "body": { + "nativeSrc": "2766:464:74", + "nodeType": "YulBlock", + "src": "2766:464:74", + "statements": [ + { + "body": { + "nativeSrc": "2792:431:74", + "nodeType": "YulBlock", + "src": "2792:431:74", + "statements": [ + { + "nativeSrc": "2806:54:74", + "nodeType": "YulVariableDeclaration", + "src": "2806:54:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "2854:5:74", + "nodeType": "YulIdentifier", + "src": "2854:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "2822:31:74", + "nodeType": "YulIdentifier", + "src": "2822:31:74" + }, + "nativeSrc": "2822:38:74", + "nodeType": "YulFunctionCall", + "src": "2822:38:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "2810:8:74", + "nodeType": "YulTypedName", + "src": "2810:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2873:63:74", + "nodeType": "YulVariableDeclaration", + "src": "2873:63:74", + "value": { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "2896:8:74", + "nodeType": "YulIdentifier", + "src": "2896:8:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "2924:10:74", + "nodeType": "YulIdentifier", + "src": "2924:10:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "2906:17:74", + "nodeType": "YulIdentifier", + "src": "2906:17:74" + }, + "nativeSrc": "2906:29:74", + "nodeType": "YulFunctionCall", + "src": "2906:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2892:3:74", + "nodeType": "YulIdentifier", + "src": "2892:3:74" + }, + "nativeSrc": "2892:44:74", + "nodeType": "YulFunctionCall", + "src": "2892:44:74" + }, + "variables": [ + { + "name": "deleteStart", + "nativeSrc": "2877:11:74", + "nodeType": "YulTypedName", + "src": "2877:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3093:27:74", + "nodeType": "YulBlock", + "src": "3093:27:74", + "statements": [ + { + "nativeSrc": "3095:23:74", + "nodeType": "YulAssignment", + "src": "3095:23:74", + "value": { + "name": "dataArea", + "nativeSrc": "3110:8:74", + "nodeType": "YulIdentifier", + "src": "3110:8:74" + }, + "variableNames": [ + { + "name": "deleteStart", + "nativeSrc": "3095:11:74", + "nodeType": "YulIdentifier", + "src": "3095:11:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "3077:10:74", + "nodeType": "YulIdentifier", + "src": "3077:10:74" + }, + { + "kind": "number", + "nativeSrc": "3089:2:74", + "nodeType": "YulLiteral", + "src": "3089:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "3074:2:74", + "nodeType": "YulIdentifier", + "src": "3074:2:74" + }, + "nativeSrc": "3074:18:74", + "nodeType": "YulFunctionCall", + "src": "3074:18:74" + }, + "nativeSrc": "3071:49:74", + "nodeType": "YulIf", + "src": "3071:49:74" + }, + { + "expression": { + "arguments": [ + { + "name": "deleteStart", + "nativeSrc": "3162:11:74", + "nodeType": "YulIdentifier", + "src": "3162:11:74" + }, + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "3179:8:74", + "nodeType": "YulIdentifier", + "src": "3179:8:74" + }, + { + "arguments": [ + { + "name": "len", + "nativeSrc": "3207:3:74", + "nodeType": "YulIdentifier", + "src": "3207:3:74" + } + ], + "functionName": { + "name": "divide_by_32_ceil", + "nativeSrc": "3189:17:74", + "nodeType": "YulIdentifier", + "src": "3189:17:74" + }, + "nativeSrc": "3189:22:74", + "nodeType": "YulFunctionCall", + "src": "3189:22:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3175:3:74", + "nodeType": "YulIdentifier", + "src": "3175:3:74" + }, + "nativeSrc": "3175:37:74", + "nodeType": "YulFunctionCall", + "src": "3175:37:74" + } + ], + "functionName": { + "name": "clear_storage_range_t_bytes1", + "nativeSrc": "3133:28:74", + "nodeType": "YulIdentifier", + "src": "3133:28:74" + }, + "nativeSrc": "3133:80:74", + "nodeType": "YulFunctionCall", + "src": "3133:80:74" + }, + "nativeSrc": "3133:80:74", + "nodeType": "YulExpressionStatement", + "src": "3133:80:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nativeSrc": "2783:3:74", + "nodeType": "YulIdentifier", + "src": "2783:3:74" + }, + { + "kind": "number", + "nativeSrc": "2788:2:74", + "nodeType": "YulLiteral", + "src": "2788:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2780:2:74", + "nodeType": "YulIdentifier", + "src": "2780:2:74" + }, + "nativeSrc": "2780:11:74", + "nodeType": "YulFunctionCall", + "src": "2780:11:74" + }, + "nativeSrc": "2777:446:74", + "nodeType": "YulIf", + "src": "2777:446:74" + } + ] + }, + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "2687:543:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "2742:5:74", + "nodeType": "YulTypedName", + "src": "2742:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "2749:3:74", + "nodeType": "YulTypedName", + "src": "2749:3:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "2754:10:74", + "nodeType": "YulTypedName", + "src": "2754:10:74", + "type": "" + } + ], + "src": "2687:543:74" + }, + { + "body": { + "nativeSrc": "3299:54:74", + "nodeType": "YulBlock", + "src": "3299:54:74", + "statements": [ + { + "nativeSrc": "3309:37:74", + "nodeType": "YulAssignment", + "src": "3309:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "3334:4:74", + "nodeType": "YulIdentifier", + "src": "3334:4:74" + }, + { + "name": "value", + "nativeSrc": "3340:5:74", + "nodeType": "YulIdentifier", + "src": "3340:5:74" + } + ], + "functionName": { + "name": "shr", + "nativeSrc": "3330:3:74", + "nodeType": "YulIdentifier", + "src": "3330:3:74" + }, + "nativeSrc": "3330:16:74", + "nodeType": "YulFunctionCall", + "src": "3330:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "3309:8:74", + "nodeType": "YulIdentifier", + "src": "3309:8:74" + } + ] + } + ] + }, + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "3236:117:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "3274:4:74", + "nodeType": "YulTypedName", + "src": "3274:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "3280:5:74", + "nodeType": "YulTypedName", + "src": "3280:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "3290:8:74", + "nodeType": "YulTypedName", + "src": "3290:8:74", + "type": "" + } + ], + "src": "3236:117:74" + }, + { + "body": { + "nativeSrc": "3410:118:74", + "nodeType": "YulBlock", + "src": "3410:118:74", + "statements": [ + { + "nativeSrc": "3420:68:74", + "nodeType": "YulVariableDeclaration", + "src": "3420:68:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3469:1:74", + "nodeType": "YulLiteral", + "src": "3469:1:74", + "type": "", + "value": "8" + }, + { + "name": "bytes", + "nativeSrc": "3472:5:74", + "nodeType": "YulIdentifier", + "src": "3472:5:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "3465:3:74", + "nodeType": "YulIdentifier", + "src": "3465:3:74" + }, + "nativeSrc": "3465:13:74", + "nodeType": "YulFunctionCall", + "src": "3465:13:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3484:1:74", + "nodeType": "YulLiteral", + "src": "3484:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "3480:3:74", + "nodeType": "YulIdentifier", + "src": "3480:3:74" + }, + "nativeSrc": "3480:6:74", + "nodeType": "YulFunctionCall", + "src": "3480:6:74" + } + ], + "functionName": { + "name": "shift_right_unsigned_dynamic", + "nativeSrc": "3436:28:74", + "nodeType": "YulIdentifier", + "src": "3436:28:74" + }, + "nativeSrc": "3436:51:74", + "nodeType": "YulFunctionCall", + "src": "3436:51:74" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "3432:3:74", + "nodeType": "YulIdentifier", + "src": "3432:3:74" + }, + "nativeSrc": "3432:56:74", + "nodeType": "YulFunctionCall", + "src": "3432:56:74" + }, + "variables": [ + { + "name": "mask", + "nativeSrc": "3424:4:74", + "nodeType": "YulTypedName", + "src": "3424:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3497:25:74", + "nodeType": "YulAssignment", + "src": "3497:25:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3511:4:74", + "nodeType": "YulIdentifier", + "src": "3511:4:74" + }, + { + "name": "mask", + "nativeSrc": "3517:4:74", + "nodeType": "YulIdentifier", + "src": "3517:4:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3507:3:74", + "nodeType": "YulIdentifier", + "src": "3507:3:74" + }, + "nativeSrc": "3507:15:74", + "nodeType": "YulFunctionCall", + "src": "3507:15:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "3497:6:74", + "nodeType": "YulIdentifier", + "src": "3497:6:74" + } + ] + } + ] + }, + "name": "mask_bytes_dynamic", + "nativeSrc": "3359:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "3387:4:74", + "nodeType": "YulTypedName", + "src": "3387:4:74", + "type": "" + }, + { + "name": "bytes", + "nativeSrc": "3393:5:74", + "nodeType": "YulTypedName", + "src": "3393:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "3403:6:74", + "nodeType": "YulTypedName", + "src": "3403:6:74", + "type": "" + } + ], + "src": "3359:169:74" + }, + { + "body": { + "nativeSrc": "3614:214:74", + "nodeType": "YulBlock", + "src": "3614:214:74", + "statements": [ + { + "nativeSrc": "3747:37:74", + "nodeType": "YulAssignment", + "src": "3747:37:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3774:4:74", + "nodeType": "YulIdentifier", + "src": "3774:4:74" + }, + { + "name": "len", + "nativeSrc": "3780:3:74", + "nodeType": "YulIdentifier", + "src": "3780:3:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "3755:18:74", + "nodeType": "YulIdentifier", + "src": "3755:18:74" + }, + "nativeSrc": "3755:29:74", + "nodeType": "YulFunctionCall", + "src": "3755:29:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "3747:4:74", + "nodeType": "YulIdentifier", + "src": "3747:4:74" + } + ] + }, + { + "nativeSrc": "3793:29:74", + "nodeType": "YulAssignment", + "src": "3793:29:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "3804:4:74", + "nodeType": "YulIdentifier", + "src": "3804:4:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3814:1:74", + "nodeType": "YulLiteral", + "src": "3814:1:74", + "type": "", + "value": "2" + }, + { + "name": "len", + "nativeSrc": "3817:3:74", + "nodeType": "YulIdentifier", + "src": "3817:3:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "3810:3:74", + "nodeType": "YulIdentifier", + "src": "3810:3:74" + }, + "nativeSrc": "3810:11:74", + "nodeType": "YulFunctionCall", + "src": "3810:11:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "3801:2:74", + "nodeType": "YulIdentifier", + "src": "3801:2:74" + }, + "nativeSrc": "3801:21:74", + "nodeType": "YulFunctionCall", + "src": "3801:21:74" + }, + "variableNames": [ + { + "name": "used", + "nativeSrc": "3793:4:74", + "nodeType": "YulIdentifier", + "src": "3793:4:74" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "3533:295:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "3595:4:74", + "nodeType": "YulTypedName", + "src": "3595:4:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "3601:3:74", + "nodeType": "YulTypedName", + "src": "3601:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nativeSrc": "3609:4:74", + "nodeType": "YulTypedName", + "src": "3609:4:74", + "type": "" + } + ], + "src": "3533:295:74" + }, + { + "body": { + "nativeSrc": "3925:1303:74", + "nodeType": "YulBlock", + "src": "3925:1303:74", + "statements": [ + { + "nativeSrc": "3936:51:74", + "nodeType": "YulVariableDeclaration", + "src": "3936:51:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "3983:3:74", + "nodeType": "YulIdentifier", + "src": "3983:3:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "3950:32:74", + "nodeType": "YulIdentifier", + "src": "3950:32:74" + }, + "nativeSrc": "3950:37:74", + "nodeType": "YulFunctionCall", + "src": "3950:37:74" + }, + "variables": [ + { + "name": "newLen", + "nativeSrc": "3940:6:74", + "nodeType": "YulTypedName", + "src": "3940:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4072:22:74", + "nodeType": "YulBlock", + "src": "4072:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "4074:16:74", + "nodeType": "YulIdentifier", + "src": "4074:16:74" + }, + "nativeSrc": "4074:18:74", + "nodeType": "YulFunctionCall", + "src": "4074:18:74" + }, + "nativeSrc": "4074:18:74", + "nodeType": "YulExpressionStatement", + "src": "4074:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "4044:6:74", + "nodeType": "YulIdentifier", + "src": "4044:6:74" + }, + { + "kind": "number", + "nativeSrc": "4052:18:74", + "nodeType": "YulLiteral", + "src": "4052:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4041:2:74", + "nodeType": "YulIdentifier", + "src": "4041:2:74" + }, + "nativeSrc": "4041:30:74", + "nodeType": "YulFunctionCall", + "src": "4041:30:74" + }, + "nativeSrc": "4038:56:74", + "nodeType": "YulIf", + "src": "4038:56:74" + }, + { + "nativeSrc": "4104:52:74", + "nodeType": "YulVariableDeclaration", + "src": "4104:52:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4150:4:74", + "nodeType": "YulIdentifier", + "src": "4150:4:74" + } + ], + "functionName": { + "name": "sload", + "nativeSrc": "4144:5:74", + "nodeType": "YulIdentifier", + "src": "4144:5:74" + }, + "nativeSrc": "4144:11:74", + "nodeType": "YulFunctionCall", + "src": "4144:11:74" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nativeSrc": "4118:25:74", + "nodeType": "YulIdentifier", + "src": "4118:25:74" + }, + "nativeSrc": "4118:38:74", + "nodeType": "YulFunctionCall", + "src": "4118:38:74" + }, + "variables": [ + { + "name": "oldLen", + "nativeSrc": "4108:6:74", + "nodeType": "YulTypedName", + "src": "4108:6:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4249:4:74", + "nodeType": "YulIdentifier", + "src": "4249:4:74" + }, + { + "name": "oldLen", + "nativeSrc": "4255:6:74", + "nodeType": "YulIdentifier", + "src": "4255:6:74" + }, + { + "name": "newLen", + "nativeSrc": "4263:6:74", + "nodeType": "YulIdentifier", + "src": "4263:6:74" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_t_string_storage", + "nativeSrc": "4203:45:74", + "nodeType": "YulIdentifier", + "src": "4203:45:74" + }, + "nativeSrc": "4203:67:74", + "nodeType": "YulFunctionCall", + "src": "4203:67:74" + }, + "nativeSrc": "4203:67:74", + "nodeType": "YulExpressionStatement", + "src": "4203:67:74" + }, + { + "nativeSrc": "4280:18:74", + "nodeType": "YulVariableDeclaration", + "src": "4280:18:74", + "value": { + "kind": "number", + "nativeSrc": "4297:1:74", + "nodeType": "YulLiteral", + "src": "4297:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nativeSrc": "4284:9:74", + "nodeType": "YulTypedName", + "src": "4284:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4308:17:74", + "nodeType": "YulAssignment", + "src": "4308:17:74", + "value": { + "kind": "number", + "nativeSrc": "4321:4:74", + "nodeType": "YulLiteral", + "src": "4321:4:74", + "type": "", + "value": "0x20" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "4308:9:74", + "nodeType": "YulIdentifier", + "src": "4308:9:74" + } + ] + }, + { + "cases": [ + { + "body": { + "nativeSrc": "4372:611:74", + "nodeType": "YulBlock", + "src": "4372:611:74", + "statements": [ + { + "nativeSrc": "4386:37:74", + "nodeType": "YulVariableDeclaration", + "src": "4386:37:74", + "value": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "4405:6:74", + "nodeType": "YulIdentifier", + "src": "4405:6:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4417:4:74", + "nodeType": "YulLiteral", + "src": "4417:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "4413:3:74", + "nodeType": "YulIdentifier", + "src": "4413:3:74" + }, + "nativeSrc": "4413:9:74", + "nodeType": "YulFunctionCall", + "src": "4413:9:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4401:3:74", + "nodeType": "YulIdentifier", + "src": "4401:3:74" + }, + "nativeSrc": "4401:22:74", + "nodeType": "YulFunctionCall", + "src": "4401:22:74" + }, + "variables": [ + { + "name": "loopEnd", + "nativeSrc": "4390:7:74", + "nodeType": "YulTypedName", + "src": "4390:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4437:51:74", + "nodeType": "YulVariableDeclaration", + "src": "4437:51:74", + "value": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4483:4:74", + "nodeType": "YulIdentifier", + "src": "4483:4:74" + } + ], + "functionName": { + "name": "array_dataslot_t_string_storage", + "nativeSrc": "4451:31:74", + "nodeType": "YulIdentifier", + "src": "4451:31:74" + }, + "nativeSrc": "4451:37:74", + "nodeType": "YulFunctionCall", + "src": "4451:37:74" + }, + "variables": [ + { + "name": "dstPtr", + "nativeSrc": "4441:6:74", + "nodeType": "YulTypedName", + "src": "4441:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "4501:10:74", + "nodeType": "YulVariableDeclaration", + "src": "4501:10:74", + "value": { + "kind": "number", + "nativeSrc": "4510:1:74", + "nodeType": "YulLiteral", + "src": "4510:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "4505:1:74", + "nodeType": "YulTypedName", + "src": "4505:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4569:163:74", + "nodeType": "YulBlock", + "src": "4569:163:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "4594:6:74", + "nodeType": "YulIdentifier", + "src": "4594:6:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "4612:3:74", + "nodeType": "YulIdentifier", + "src": "4612:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "4617:9:74", + "nodeType": "YulIdentifier", + "src": "4617:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4608:3:74", + "nodeType": "YulIdentifier", + "src": "4608:3:74" + }, + "nativeSrc": "4608:19:74", + "nodeType": "YulFunctionCall", + "src": "4608:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4602:5:74", + "nodeType": "YulIdentifier", + "src": "4602:5:74" + }, + "nativeSrc": "4602:26:74", + "nodeType": "YulFunctionCall", + "src": "4602:26:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "4587:6:74", + "nodeType": "YulIdentifier", + "src": "4587:6:74" + }, + "nativeSrc": "4587:42:74", + "nodeType": "YulFunctionCall", + "src": "4587:42:74" + }, + "nativeSrc": "4587:42:74", + "nodeType": "YulExpressionStatement", + "src": "4587:42:74" + }, + { + "nativeSrc": "4646:24:74", + "nodeType": "YulAssignment", + "src": "4646:24:74", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "4660:6:74", + "nodeType": "YulIdentifier", + "src": "4660:6:74" + }, + { + "kind": "number", + "nativeSrc": "4668:1:74", + "nodeType": "YulLiteral", + "src": "4668:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4656:3:74", + "nodeType": "YulIdentifier", + "src": "4656:3:74" + }, + "nativeSrc": "4656:14:74", + "nodeType": "YulFunctionCall", + "src": "4656:14:74" + }, + "variableNames": [ + { + "name": "dstPtr", + "nativeSrc": "4646:6:74", + "nodeType": "YulIdentifier", + "src": "4646:6:74" + } + ] + }, + { + "nativeSrc": "4687:31:74", + "nodeType": "YulAssignment", + "src": "4687:31:74", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nativeSrc": "4704:9:74", + "nodeType": "YulIdentifier", + "src": "4704:9:74" + }, + { + "kind": "number", + "nativeSrc": "4715:2:74", + "nodeType": "YulLiteral", + "src": "4715:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4700:3:74", + "nodeType": "YulIdentifier", + "src": "4700:3:74" + }, + "nativeSrc": "4700:18:74", + "nodeType": "YulFunctionCall", + "src": "4700:18:74" + }, + "variableNames": [ + { + "name": "srcOffset", + "nativeSrc": "4687:9:74", + "nodeType": "YulIdentifier", + "src": "4687:9:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4535:1:74", + "nodeType": "YulIdentifier", + "src": "4535:1:74" + }, + { + "name": "loopEnd", + "nativeSrc": "4538:7:74", + "nodeType": "YulIdentifier", + "src": "4538:7:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4532:2:74", + "nodeType": "YulIdentifier", + "src": "4532:2:74" + }, + "nativeSrc": "4532:14:74", + "nodeType": "YulFunctionCall", + "src": "4532:14:74" + }, + "nativeSrc": "4524:208:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "4547:21:74", + "nodeType": "YulBlock", + "src": "4547:21:74", + "statements": [ + { + "nativeSrc": "4549:17:74", + "nodeType": "YulAssignment", + "src": "4549:17:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "4558:1:74", + "nodeType": "YulIdentifier", + "src": "4558:1:74" + }, + { + "kind": "number", + "nativeSrc": "4561:4:74", + "nodeType": "YulLiteral", + "src": "4561:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4554:3:74", + "nodeType": "YulIdentifier", + "src": "4554:3:74" + }, + "nativeSrc": "4554:12:74", + "nodeType": "YulFunctionCall", + "src": "4554:12:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "4549:1:74", + "nodeType": "YulIdentifier", + "src": "4549:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "4528:3:74", + "nodeType": "YulBlock", + "src": "4528:3:74", + "statements": [] + }, + "src": "4524:208:74" + }, + { + "body": { + "nativeSrc": "4768:156:74", + "nodeType": "YulBlock", + "src": "4768:156:74", + "statements": [ + { + "nativeSrc": "4786:43:74", + "nodeType": "YulVariableDeclaration", + "src": "4786:43:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "4813:3:74", + "nodeType": "YulIdentifier", + "src": "4813:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "4818:9:74", + "nodeType": "YulIdentifier", + "src": "4818:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4809:3:74", + "nodeType": "YulIdentifier", + "src": "4809:3:74" + }, + "nativeSrc": "4809:19:74", + "nodeType": "YulFunctionCall", + "src": "4809:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "4803:5:74", + "nodeType": "YulIdentifier", + "src": "4803:5:74" + }, + "nativeSrc": "4803:26:74", + "nodeType": "YulFunctionCall", + "src": "4803:26:74" + }, + "variables": [ + { + "name": "lastValue", + "nativeSrc": "4790:9:74", + "nodeType": "YulTypedName", + "src": "4790:9:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nativeSrc": "4853:6:74", + "nodeType": "YulIdentifier", + "src": "4853:6:74" + }, + { + "arguments": [ + { + "name": "lastValue", + "nativeSrc": "4880:9:74", + "nodeType": "YulIdentifier", + "src": "4880:9:74" + }, + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "4895:6:74", + "nodeType": "YulIdentifier", + "src": "4895:6:74" + }, + { + "kind": "number", + "nativeSrc": "4903:4:74", + "nodeType": "YulLiteral", + "src": "4903:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4891:3:74", + "nodeType": "YulIdentifier", + "src": "4891:3:74" + }, + "nativeSrc": "4891:17:74", + "nodeType": "YulFunctionCall", + "src": "4891:17:74" + } + ], + "functionName": { + "name": "mask_bytes_dynamic", + "nativeSrc": "4861:18:74", + "nodeType": "YulIdentifier", + "src": "4861:18:74" + }, + "nativeSrc": "4861:48:74", + "nodeType": "YulFunctionCall", + "src": "4861:48:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "4846:6:74", + "nodeType": "YulIdentifier", + "src": "4846:6:74" + }, + "nativeSrc": "4846:64:74", + "nodeType": "YulFunctionCall", + "src": "4846:64:74" + }, + "nativeSrc": "4846:64:74", + "nodeType": "YulExpressionStatement", + "src": "4846:64:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nativeSrc": "4751:7:74", + "nodeType": "YulIdentifier", + "src": "4751:7:74" + }, + { + "name": "newLen", + "nativeSrc": "4760:6:74", + "nodeType": "YulIdentifier", + "src": "4760:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "4748:2:74", + "nodeType": "YulIdentifier", + "src": "4748:2:74" + }, + "nativeSrc": "4748:19:74", + "nodeType": "YulFunctionCall", + "src": "4748:19:74" + }, + "nativeSrc": "4745:179:74", + "nodeType": "YulIf", + "src": "4745:179:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "4944:4:74", + "nodeType": "YulIdentifier", + "src": "4944:4:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "4958:6:74", + "nodeType": "YulIdentifier", + "src": "4958:6:74" + }, + { + "kind": "number", + "nativeSrc": "4966:1:74", + "nodeType": "YulLiteral", + "src": "4966:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "4954:3:74", + "nodeType": "YulIdentifier", + "src": "4954:3:74" + }, + "nativeSrc": "4954:14:74", + "nodeType": "YulFunctionCall", + "src": "4954:14:74" + }, + { + "kind": "number", + "nativeSrc": "4970:1:74", + "nodeType": "YulLiteral", + "src": "4970:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4950:3:74", + "nodeType": "YulIdentifier", + "src": "4950:3:74" + }, + "nativeSrc": "4950:22:74", + "nodeType": "YulFunctionCall", + "src": "4950:22:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "4937:6:74", + "nodeType": "YulIdentifier", + "src": "4937:6:74" + }, + "nativeSrc": "4937:36:74", + "nodeType": "YulFunctionCall", + "src": "4937:36:74" + }, + "nativeSrc": "4937:36:74", + "nodeType": "YulExpressionStatement", + "src": "4937:36:74" + } + ] + }, + "nativeSrc": "4365:618:74", + "nodeType": "YulCase", + "src": "4365:618:74", + "value": { + "kind": "number", + "nativeSrc": "4370:1:74", + "nodeType": "YulLiteral", + "src": "4370:1:74", + "type": "", + "value": "1" + } + }, + { + "body": { + "nativeSrc": "5000:222:74", + "nodeType": "YulBlock", + "src": "5000:222:74", + "statements": [ + { + "nativeSrc": "5014:14:74", + "nodeType": "YulVariableDeclaration", + "src": "5014:14:74", + "value": { + "kind": "number", + "nativeSrc": "5027:1:74", + "nodeType": "YulLiteral", + "src": "5027:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nativeSrc": "5018:5:74", + "nodeType": "YulTypedName", + "src": "5018:5:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "5051:67:74", + "nodeType": "YulBlock", + "src": "5051:67:74", + "statements": [ + { + "nativeSrc": "5069:35:74", + "nodeType": "YulAssignment", + "src": "5069:35:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "5088:3:74", + "nodeType": "YulIdentifier", + "src": "5088:3:74" + }, + { + "name": "srcOffset", + "nativeSrc": "5093:9:74", + "nodeType": "YulIdentifier", + "src": "5093:9:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5084:3:74", + "nodeType": "YulIdentifier", + "src": "5084:3:74" + }, + "nativeSrc": "5084:19:74", + "nodeType": "YulFunctionCall", + "src": "5084:19:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "5078:5:74", + "nodeType": "YulIdentifier", + "src": "5078:5:74" + }, + "nativeSrc": "5078:26:74", + "nodeType": "YulFunctionCall", + "src": "5078:26:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "5069:5:74", + "nodeType": "YulIdentifier", + "src": "5069:5:74" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nativeSrc": "5044:6:74", + "nodeType": "YulIdentifier", + "src": "5044:6:74" + }, + "nativeSrc": "5041:77:74", + "nodeType": "YulIf", + "src": "5041:77:74" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nativeSrc": "5138:4:74", + "nodeType": "YulIdentifier", + "src": "5138:4:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "5197:5:74", + "nodeType": "YulIdentifier", + "src": "5197:5:74" + }, + { + "name": "newLen", + "nativeSrc": "5204:6:74", + "nodeType": "YulIdentifier", + "src": "5204:6:74" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nativeSrc": "5144:52:74", + "nodeType": "YulIdentifier", + "src": "5144:52:74" + }, + "nativeSrc": "5144:67:74", + "nodeType": "YulFunctionCall", + "src": "5144:67:74" + } + ], + "functionName": { + "name": "sstore", + "nativeSrc": "5131:6:74", + "nodeType": "YulIdentifier", + "src": "5131:6:74" + }, + "nativeSrc": "5131:81:74", + "nodeType": "YulFunctionCall", + "src": "5131:81:74" + }, + "nativeSrc": "5131:81:74", + "nodeType": "YulExpressionStatement", + "src": "5131:81:74" + } + ] + }, + "nativeSrc": "4992:230:74", + "nodeType": "YulCase", + "src": "4992:230:74", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nativeSrc": "4345:6:74", + "nodeType": "YulIdentifier", + "src": "4345:6:74" + }, + { + "kind": "number", + "nativeSrc": "4353:2:74", + "nodeType": "YulLiteral", + "src": "4353:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4342:2:74", + "nodeType": "YulIdentifier", + "src": "4342:2:74" + }, + "nativeSrc": "4342:14:74", + "nodeType": "YulFunctionCall", + "src": "4342:14:74" + }, + "nativeSrc": "4335:887:74", + "nodeType": "YulSwitch", + "src": "4335:887:74" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nativeSrc": "3833:1395:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nativeSrc": "3914:4:74", + "nodeType": "YulTypedName", + "src": "3914:4:74", + "type": "" + }, + { + "name": "src", + "nativeSrc": "3920:3:74", + "nodeType": "YulTypedName", + "src": "3920:3:74", + "type": "" + } + ], + "src": "3833:1395:74" + } + ] + }, + "contents": "{\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506040518060400160405280600481526020017f54657374000000000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f5453540000000000000000000000000000000000000000000000000000000000815250816000908161008c91906102fc565b50806001908161009c91906102fc565b50505060016006819055506103ce565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061012d57607f821691505b6020821081036101405761013f6100e6565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026101a87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261016b565b6101b2868361016b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006101f96101f46101ef846101ca565b6101d4565b6101ca565b9050919050565b6000819050919050565b610213836101de565b61022761021f82610200565b848454610178565b825550505050565b600090565b61023c61022f565b61024781848461020a565b505050565b5b8181101561026b57610260600082610234565b60018101905061024d565b5050565b601f8211156102b05761028181610146565b61028a8461015b565b81016020851015610299578190505b6102ad6102a58561015b565b83018261024c565b50505b505050565b600082821c905092915050565b60006102d3600019846008026102b5565b1980831691505092915050565b60006102ec83836102c2565b9150826002028217905092915050565b610305826100ac565b67ffffffffffffffff81111561031e5761031d6100b7565b5b6103288254610115565b61033382828561026f565b600060209050601f8311600181146103665760008415610354578287015190505b61035e85826102e0565b8655506103c6565b601f19841661037486610146565b60005b8281101561039c57848901518255600182019150602085019450602081019050610377565b868310156103b957848901516103b5601f8916826102c2565b8355505b6001600288020188555050505b505050505050565b61257e806103dd6000396000f3fe608060405234801561001057600080fd5b50600436106100f45760003560e01c806342842e0e11610097578063a22cb46511610066578063a22cb46514610271578063b88d4fde1461028d578063c87b56dd146102a9578063e985e9c5146102d9576100f4565b806342842e0e146101d75780636352211e146101f357806370a082311461022357806395d89b4114610253576100f4565b8063081812fc116100d3578063081812fc14610165578063095ea7b3146101955780631249c58b146101b157806323b872dd146101bb576100f4565b80629a9b7b146100f957806301ffc9a71461011757806306fdde0314610147575b600080fd5b610101610309565b60405161010e91906117b0565b60405180910390f35b610131600480360381019061012c9190611837565b61030f565b60405161013e919061187f565b60405180910390f35b61014f6103f1565b60405161015c919061192a565b60405180910390f35b61017f600480360381019061017a9190611978565b610483565b60405161018c91906119e6565b60405180910390f35b6101af60048036038101906101aa9190611a2d565b6104c9565b005b6101b96105e0565b005b6101d560048036038101906101d09190611a6d565b610606565b005b6101f160048036038101906101ec9190611a6d565b610666565b005b61020d60048036038101906102089190611978565b610686565b60405161021a91906119e6565b60405180910390f35b61023d60048036038101906102389190611ac0565b61070c565b60405161024a91906117b0565b60405180910390f35b61025b6107c3565b604051610268919061192a565b60405180910390f35b61028b60048036038101906102869190611b19565b610855565b005b6102a760048036038101906102a29190611c8e565b61086b565b005b6102c360048036038101906102be9190611978565b6108cd565b6040516102d0919061192a565b60405180910390f35b6102f360048036038101906102ee9190611d11565b610935565b604051610300919061187f565b60405180910390f35b60065481565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103da57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103ea57506103e9826109c9565b5b9050919050565b60606000805461040090611d80565b80601f016020809104026020016040519081016040528092919081815260200182805461042c90611d80565b80156104795780601f1061044e57610100808354040283529160200191610479565b820191906000526020600020905b81548152906001019060200180831161045c57829003601f168201915b5050505050905090565b600061048e82610a33565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104d482610686565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053b90611e23565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610563610a7e565b73ffffffffffffffffffffffffffffffffffffffff16148061059257506105918161058c610a7e565b610935565b5b6105d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c890611eb5565b60405180910390fd5b6105db8383610a86565b505050565b6105ec33600654610b3f565b600660008154809291906105ff90611f04565b9190505550565b610617610611610a7e565b82610b5d565b610656576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064d90611fbe565b60405180910390fd5b610661838383610bf2565b505050565b6106818383836040518060200160405280600081525061086b565b505050565b60008061069283610eeb565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa9061202a565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361077c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610773906120bc565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546107d290611d80565b80601f01602080910402602001604051908101604052809291908181526020018280546107fe90611d80565b801561084b5780601f106108205761010080835404028352916020019161084b565b820191906000526020600020905b81548152906001019060200180831161082e57829003601f168201915b5050505050905090565b610867610860610a7e565b8383610f28565b5050565b61087c610876610a7e565b83610b5d565b6108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b290611fbe565b60405180910390fd5b6108c784848484611094565b50505050565b60606108d882610a33565b60006108e26110f0565b90506000815111610902576040518060200160405280600081525061092d565b8061090c84611107565b60405160200161091d929190612118565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610a3c816111d5565b610a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a729061202a565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610af983610686565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b610b59828260405180602001604052806000815250611216565b5050565b600080610b6983610686565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610bab5750610baa8185610935565b5b80610be957508373ffffffffffffffffffffffffffffffffffffffff16610bd184610483565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610c1282610686565b73ffffffffffffffffffffffffffffffffffffffff1614610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f906121ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cce90612240565b60405180910390fd5b610ce48383836001611271565b8273ffffffffffffffffffffffffffffffffffffffff16610d0482610686565b73ffffffffffffffffffffffffffffffffffffffff1614610d5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d51906121ae565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ee68383836001611277565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8d906122ac565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611087919061187f565b60405180910390a3505050565b61109f848484610bf2565b6110ab8484848461127d565b6110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e19061233e565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b60606000600161111684611404565b01905060008167ffffffffffffffff81111561113557611134611b63565b5b6040519080825280601f01601f1916602001820160405280156111675781602001600182028036833780820191505090505b509050600082602001820190505b6001156111ca578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816111be576111bd61235e565b5b04945060008503611175575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166111f783610eeb565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6112208383611557565b61122d600084848461127d565b61126c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112639061233e565b60405180910390fd5b505050565b50505050565b50505050565b600061129e8473ffffffffffffffffffffffffffffffffffffffff16611774565b156113f7578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026112c7610a7e565b8786866040518563ffffffff1660e01b81526004016112e994939291906123e2565b6020604051808303816000875af192505050801561132557506040513d601f19601f820116820180604052508101906113229190612443565b60015b6113a7573d8060008114611355576040519150601f19603f3d011682016040523d82523d6000602084013e61135a565b606091505b50600081510361139f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113969061233e565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506113fc565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611462577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816114585761145761235e565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061149f576d04ee2d6d415b85acef810000000083816114955761149461235e565b5b0492506020810190505b662386f26fc1000083106114ce57662386f26fc1000083816114c4576114c361235e565b5b0492506010810190505b6305f5e10083106114f7576305f5e10083816114ed576114ec61235e565b5b0492506008810190505b612710831061151c5761271083816115125761151161235e565b5b0492506004810190505b6064831061153f57606483816115355761153461235e565b5b0492506002810190505b600a831061154e576001810190505b80915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bd906124bc565b60405180910390fd5b6115cf816111d5565b1561160f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160690612528565b60405180910390fd5b61161d600083836001611271565b611626816111d5565b15611666576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165d90612528565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611770600083836001611277565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000819050919050565b6117aa81611797565b82525050565b60006020820190506117c560008301846117a1565b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611814816117df565b811461181f57600080fd5b50565b6000813590506118318161180b565b92915050565b60006020828403121561184d5761184c6117d5565b5b600061185b84828501611822565b91505092915050565b60008115159050919050565b61187981611864565b82525050565b60006020820190506118946000830184611870565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156118d45780820151818401526020810190506118b9565b60008484015250505050565b6000601f19601f8301169050919050565b60006118fc8261189a565b61190681856118a5565b93506119168185602086016118b6565b61191f816118e0565b840191505092915050565b6000602082019050818103600083015261194481846118f1565b905092915050565b61195581611797565b811461196057600080fd5b50565b6000813590506119728161194c565b92915050565b60006020828403121561198e5761198d6117d5565b5b600061199c84828501611963565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119d0826119a5565b9050919050565b6119e0816119c5565b82525050565b60006020820190506119fb60008301846119d7565b92915050565b611a0a816119c5565b8114611a1557600080fd5b50565b600081359050611a2781611a01565b92915050565b60008060408385031215611a4457611a436117d5565b5b6000611a5285828601611a18565b9250506020611a6385828601611963565b9150509250929050565b600080600060608486031215611a8657611a856117d5565b5b6000611a9486828701611a18565b9350506020611aa586828701611a18565b9250506040611ab686828701611963565b9150509250925092565b600060208284031215611ad657611ad56117d5565b5b6000611ae484828501611a18565b91505092915050565b611af681611864565b8114611b0157600080fd5b50565b600081359050611b1381611aed565b92915050565b60008060408385031215611b3057611b2f6117d5565b5b6000611b3e85828601611a18565b9250506020611b4f85828601611b04565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611b9b826118e0565b810181811067ffffffffffffffff82111715611bba57611bb9611b63565b5b80604052505050565b6000611bcd6117cb565b9050611bd98282611b92565b919050565b600067ffffffffffffffff821115611bf957611bf8611b63565b5b611c02826118e0565b9050602081019050919050565b82818337600083830152505050565b6000611c31611c2c84611bde565b611bc3565b905082815260208101848484011115611c4d57611c4c611b5e565b5b611c58848285611c0f565b509392505050565b600082601f830112611c7557611c74611b59565b5b8135611c85848260208601611c1e565b91505092915050565b60008060008060808587031215611ca857611ca76117d5565b5b6000611cb687828801611a18565b9450506020611cc787828801611a18565b9350506040611cd887828801611963565b925050606085013567ffffffffffffffff811115611cf957611cf86117da565b5b611d0587828801611c60565b91505092959194509250565b60008060408385031215611d2857611d276117d5565b5b6000611d3685828601611a18565b9250506020611d4785828601611a18565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611d9857607f821691505b602082108103611dab57611daa611d51565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e0d6021836118a5565b9150611e1882611db1565b604082019050919050565b60006020820190508181036000830152611e3c81611e00565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000611e9f603d836118a5565b9150611eaa82611e43565b604082019050919050565b60006020820190508181036000830152611ece81611e92565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611f0f82611797565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f4157611f40611ed5565b5b600182019050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000611fa8602d836118a5565b9150611fb382611f4c565b604082019050919050565b60006020820190508181036000830152611fd781611f9b565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006120146018836118a5565b915061201f82611fde565b602082019050919050565b6000602082019050818103600083015261204381612007565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b60006120a66029836118a5565b91506120b18261204a565b604082019050919050565b600060208201905081810360008301526120d581612099565b9050919050565b600081905092915050565b60006120f28261189a565b6120fc81856120dc565b935061210c8185602086016118b6565b80840191505092915050565b600061212482856120e7565b915061213082846120e7565b91508190509392505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006121986025836118a5565b91506121a38261213c565b604082019050919050565b600060208201905081810360008301526121c78161218b565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061222a6024836118a5565b9150612235826121ce565b604082019050919050565b600060208201905081810360008301526122598161221d565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006122966019836118a5565b91506122a182612260565b602082019050919050565b600060208201905081810360008301526122c581612289565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006123286032836118a5565b9150612333826122cc565b604082019050919050565b600060208201905081810360008301526123578161231b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006123b48261238d565b6123be8185612398565b93506123ce8185602086016118b6565b6123d7816118e0565b840191505092915050565b60006080820190506123f760008301876119d7565b61240460208301866119d7565b61241160408301856117a1565b818103606083015261242381846123a9565b905095945050505050565b60008151905061243d8161180b565b92915050565b600060208284031215612459576124586117d5565b5b60006124678482850161242e565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006124a66020836118a5565b91506124b182612470565b602082019050919050565b600060208201905081810360008301526124d581612499565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000612512601c836118a5565b915061251d826124dc565b602082019050919050565b6000602082019050818103600083015261254181612505565b905091905056fea2646970667358221220ada89150c5d72aaf83fd35515ab6e67df75e9d0b0f8827fe1173d36182b4852a64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5465737400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x3 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5453540000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x8C SWAP2 SWAP1 PUSH2 0x2FC JUMP JUMPDEST POP DUP1 PUSH1 0x1 SWAP1 DUP2 PUSH2 0x9C SWAP2 SWAP1 PUSH2 0x2FC JUMP JUMPDEST POP POP POP PUSH1 0x1 PUSH1 0x6 DUP2 SWAP1 SSTORE POP PUSH2 0x3CE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x12D JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x140 JUMPI PUSH2 0x13F PUSH2 0xE6 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x1A8 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x16B JUMP JUMPDEST PUSH2 0x1B2 DUP7 DUP4 PUSH2 0x16B JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F9 PUSH2 0x1F4 PUSH2 0x1EF DUP5 PUSH2 0x1CA JUMP JUMPDEST PUSH2 0x1D4 JUMP JUMPDEST PUSH2 0x1CA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x213 DUP4 PUSH2 0x1DE JUMP JUMPDEST PUSH2 0x227 PUSH2 0x21F DUP3 PUSH2 0x200 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x178 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x23C PUSH2 0x22F JUMP JUMPDEST PUSH2 0x247 DUP2 DUP5 DUP5 PUSH2 0x20A JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x26B JUMPI PUSH2 0x260 PUSH1 0x0 DUP3 PUSH2 0x234 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x24D JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x2B0 JUMPI PUSH2 0x281 DUP2 PUSH2 0x146 JUMP JUMPDEST PUSH2 0x28A DUP5 PUSH2 0x15B JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x299 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x2AD PUSH2 0x2A5 DUP6 PUSH2 0x15B JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x24C JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D3 PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x2B5 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2EC DUP4 DUP4 PUSH2 0x2C2 JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x305 DUP3 PUSH2 0xAC JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x31E JUMPI PUSH2 0x31D PUSH2 0xB7 JUMP JUMPDEST JUMPDEST PUSH2 0x328 DUP3 SLOAD PUSH2 0x115 JUMP JUMPDEST PUSH2 0x333 DUP3 DUP3 DUP6 PUSH2 0x26F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x366 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x354 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x35E DUP6 DUP3 PUSH2 0x2E0 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x3C6 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x374 DUP7 PUSH2 0x146 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x39C JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x377 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x3B9 JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x3B5 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x2C2 JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x257E DUP1 PUSH2 0x3DD PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xF4 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x42842E0E GT PUSH2 0x97 JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x271 JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x28D JUMPI DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x2A9 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x2D9 JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH4 0x42842E0E EQ PUSH2 0x1D7 JUMPI DUP1 PUSH4 0x6352211E EQ PUSH2 0x1F3 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x223 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x253 JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH4 0x81812FC GT PUSH2 0xD3 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x165 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x195 JUMPI DUP1 PUSH4 0x1249C58B EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x1BB JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH3 0x9A9B7B EQ PUSH2 0xF9 JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x147 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x101 PUSH2 0x309 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x10E SWAP2 SWAP1 PUSH2 0x17B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x131 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x12C SWAP2 SWAP1 PUSH2 0x1837 JUMP JUMPDEST PUSH2 0x30F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x13E SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14F PUSH2 0x3F1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x15C SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17A SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x483 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18C SWAP2 SWAP1 PUSH2 0x19E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x1A2D JUMP JUMPDEST PUSH2 0x4C9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1B9 PUSH2 0x5E0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1D5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D0 SWAP2 SWAP1 PUSH2 0x1A6D JUMP JUMPDEST PUSH2 0x606 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1F1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1EC SWAP2 SWAP1 PUSH2 0x1A6D JUMP JUMPDEST PUSH2 0x666 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x20D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x208 SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x686 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x21A SWAP2 SWAP1 PUSH2 0x19E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x238 SWAP2 SWAP1 PUSH2 0x1AC0 JUMP JUMPDEST PUSH2 0x70C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x24A SWAP2 SWAP1 PUSH2 0x17B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x25B PUSH2 0x7C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x268 SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x28B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x286 SWAP2 SWAP1 PUSH2 0x1B19 JUMP JUMPDEST PUSH2 0x855 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A2 SWAP2 SWAP1 PUSH2 0x1C8E JUMP JUMPDEST PUSH2 0x86B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2C3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BE SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x8CD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2D0 SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2F3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2EE SWAP2 SWAP1 PUSH2 0x1D11 JUMP JUMPDEST PUSH2 0x935 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x6 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x80AC58CD00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3DA JUMPI POP PUSH32 0x5B5E139F00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x3EA JUMPI POP PUSH2 0x3E9 DUP3 PUSH2 0x9C9 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x400 SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x42C SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x479 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x44E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x479 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x45C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x48E DUP3 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D4 DUP3 PUSH2 0x686 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x544 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x53B SWAP1 PUSH2 0x1E23 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x563 PUSH2 0xA7E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x592 JUMPI POP PUSH2 0x591 DUP2 PUSH2 0x58C PUSH2 0xA7E JUMP JUMPDEST PUSH2 0x935 JUMP JUMPDEST JUMPDEST PUSH2 0x5D1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C8 SWAP1 PUSH2 0x1EB5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x5DB DUP4 DUP4 PUSH2 0xA86 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x5EC CALLER PUSH1 0x6 SLOAD PUSH2 0xB3F JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x5FF SWAP1 PUSH2 0x1F04 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP JUMP JUMPDEST PUSH2 0x617 PUSH2 0x611 PUSH2 0xA7E JUMP JUMPDEST DUP3 PUSH2 0xB5D JUMP JUMPDEST PUSH2 0x656 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64D SWAP1 PUSH2 0x1FBE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x661 DUP4 DUP4 DUP4 PUSH2 0xBF2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x681 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x86B JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x692 DUP4 PUSH2 0xEEB JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x703 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FA SWAP1 PUSH2 0x202A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x77C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x773 SWAP1 PUSH2 0x20BC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x7D2 SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x7FE SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x84B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x820 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x84B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x82E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x867 PUSH2 0x860 PUSH2 0xA7E JUMP JUMPDEST DUP4 DUP4 PUSH2 0xF28 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x87C PUSH2 0x876 PUSH2 0xA7E JUMP JUMPDEST DUP4 PUSH2 0xB5D JUMP JUMPDEST PUSH2 0x8BB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8B2 SWAP1 PUSH2 0x1FBE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x8C7 DUP5 DUP5 DUP5 DUP5 PUSH2 0x1094 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x8D8 DUP3 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E2 PUSH2 0x10F0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x92D JUMP JUMPDEST DUP1 PUSH2 0x90C DUP5 PUSH2 0x1107 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x91D SWAP3 SWAP2 SWAP1 PUSH2 0x2118 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xA3C DUP2 PUSH2 0x11D5 JUMP JUMPDEST PUSH2 0xA7B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA72 SWAP1 PUSH2 0x202A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xAF9 DUP4 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH2 0xB59 DUP3 DUP3 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x1216 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB69 DUP4 PUSH2 0x686 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xBAB JUMPI POP PUSH2 0xBAA DUP2 DUP6 PUSH2 0x935 JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xBE9 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xBD1 DUP5 PUSH2 0x483 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC12 DUP3 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC68 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC5F SWAP1 PUSH2 0x21AE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xCD7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCCE SWAP1 PUSH2 0x2240 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCE4 DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1271 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD04 DUP3 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD5A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD51 SWAP1 PUSH2 0x21AE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0xEE6 DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1277 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xF96 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF8D SWAP1 PUSH2 0x22AC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1087 SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x109F DUP5 DUP5 DUP5 PUSH2 0xBF2 JUMP JUMPDEST PUSH2 0x10AB DUP5 DUP5 DUP5 DUP5 PUSH2 0x127D JUMP JUMPDEST PUSH2 0x10EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10E1 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x1116 DUP5 PUSH2 0x1404 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1135 JUMPI PUSH2 0x1134 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1167 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x11CA JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x11BE JUMPI PUSH2 0x11BD PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x1175 JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x11F7 DUP4 PUSH2 0xEEB JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1220 DUP4 DUP4 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x122D PUSH1 0x0 DUP5 DUP5 DUP5 PUSH2 0x127D JUMP JUMPDEST PUSH2 0x126C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1263 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x129E DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1774 JUMP JUMPDEST ISZERO PUSH2 0x13F7 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x12C7 PUSH2 0xA7E JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12E9 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x23E2 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x1325 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1322 SWAP2 SWAP1 PUSH2 0x2443 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x13A7 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x1355 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x135A JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x139F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1396 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x13FC JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x1462 JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x1458 JUMPI PUSH2 0x1457 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x149F JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x1495 JUMPI PUSH2 0x1494 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x14CE JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x14C4 JUMPI PUSH2 0x14C3 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x14F7 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x14ED JUMPI PUSH2 0x14EC PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x151C JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x1512 JUMPI PUSH2 0x1511 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x153F JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x1535 JUMPI PUSH2 0x1534 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x154E JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x15C6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15BD SWAP1 PUSH2 0x24BC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x15CF DUP2 PUSH2 0x11D5 JUMP JUMPDEST ISZERO PUSH2 0x160F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1606 SWAP1 PUSH2 0x2528 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x161D PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1271 JUMP JUMPDEST PUSH2 0x1626 DUP2 PUSH2 0x11D5 JUMP JUMPDEST ISZERO PUSH2 0x1666 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x165D SWAP1 PUSH2 0x2528 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1770 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1277 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x17AA DUP2 PUSH2 0x1797 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x17C5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x17A1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1814 DUP2 PUSH2 0x17DF JUMP JUMPDEST DUP2 EQ PUSH2 0x181F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1831 DUP2 PUSH2 0x180B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x184D JUMPI PUSH2 0x184C PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x185B DUP5 DUP3 DUP6 ADD PUSH2 0x1822 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1879 DUP2 PUSH2 0x1864 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1894 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1870 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x18D4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x18B9 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18FC DUP3 PUSH2 0x189A JUMP JUMPDEST PUSH2 0x1906 DUP2 DUP6 PUSH2 0x18A5 JUMP JUMPDEST SWAP4 POP PUSH2 0x1916 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST PUSH2 0x191F DUP2 PUSH2 0x18E0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1944 DUP2 DUP5 PUSH2 0x18F1 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1955 DUP2 PUSH2 0x1797 JUMP JUMPDEST DUP2 EQ PUSH2 0x1960 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1972 DUP2 PUSH2 0x194C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x198E JUMPI PUSH2 0x198D PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x199C DUP5 DUP3 DUP6 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x19D0 DUP3 PUSH2 0x19A5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19E0 DUP2 PUSH2 0x19C5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19FB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1A0A DUP2 PUSH2 0x19C5 JUMP JUMPDEST DUP2 EQ PUSH2 0x1A15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1A27 DUP2 PUSH2 0x1A01 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1A44 JUMPI PUSH2 0x1A43 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A52 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1A63 DUP6 DUP3 DUP7 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1A86 JUMPI PUSH2 0x1A85 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A94 DUP7 DUP3 DUP8 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x1AA5 DUP7 DUP3 DUP8 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x1AB6 DUP7 DUP3 DUP8 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1AD6 JUMPI PUSH2 0x1AD5 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1AE4 DUP5 DUP3 DUP6 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1AF6 DUP2 PUSH2 0x1864 JUMP JUMPDEST DUP2 EQ PUSH2 0x1B01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B13 DUP2 PUSH2 0x1AED JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1B30 JUMPI PUSH2 0x1B2F PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B3E DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1B4F DUP6 DUP3 DUP7 ADD PUSH2 0x1B04 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1B9B DUP3 PUSH2 0x18E0 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1BBA JUMPI PUSH2 0x1BB9 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BCD PUSH2 0x17CB JUMP JUMPDEST SWAP1 POP PUSH2 0x1BD9 DUP3 DUP3 PUSH2 0x1B92 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1BF9 JUMPI PUSH2 0x1BF8 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST PUSH2 0x1C02 DUP3 PUSH2 0x18E0 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C31 PUSH2 0x1C2C DUP5 PUSH2 0x1BDE JUMP JUMPDEST PUSH2 0x1BC3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C4D JUMPI PUSH2 0x1C4C PUSH2 0x1B5E JUMP JUMPDEST JUMPDEST PUSH2 0x1C58 DUP5 DUP3 DUP6 PUSH2 0x1C0F JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1C75 JUMPI PUSH2 0x1C74 PUSH2 0x1B59 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1C85 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C1E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1CA8 JUMPI PUSH2 0x1CA7 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CB6 DUP8 DUP3 DUP9 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x1CC7 DUP8 DUP3 DUP9 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1CD8 DUP8 DUP3 DUP9 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1CF9 JUMPI PUSH2 0x1CF8 PUSH2 0x17DA JUMP JUMPDEST JUMPDEST PUSH2 0x1D05 DUP8 DUP3 DUP9 ADD PUSH2 0x1C60 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1D28 JUMPI PUSH2 0x1D27 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1D36 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1D47 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1D98 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1DAB JUMPI PUSH2 0x1DAA PUSH2 0x1D51 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E0D PUSH1 0x21 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E18 DUP3 PUSH2 0x1DB1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E3C DUP2 PUSH2 0x1E00 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E9F PUSH1 0x3D DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EAA DUP3 PUSH2 0x1E43 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1ECE DUP2 PUSH2 0x1E92 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1F0F DUP3 PUSH2 0x1797 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1F41 JUMPI PUSH2 0x1F40 PUSH2 0x1ED5 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA8 PUSH1 0x2D DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB3 DUP3 PUSH2 0x1F4C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1FD7 DUP2 PUSH2 0x1F9B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2014 PUSH1 0x18 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x201F DUP3 PUSH2 0x1FDE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2043 DUP2 PUSH2 0x2007 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20A6 PUSH1 0x29 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B1 DUP3 PUSH2 0x204A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x20D5 DUP2 PUSH2 0x2099 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20F2 DUP3 PUSH2 0x189A JUMP JUMPDEST PUSH2 0x20FC DUP2 DUP6 PUSH2 0x20DC JUMP JUMPDEST SWAP4 POP PUSH2 0x210C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2124 DUP3 DUP6 PUSH2 0x20E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2130 DUP3 DUP5 PUSH2 0x20E7 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2198 PUSH1 0x25 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x21A3 DUP3 PUSH2 0x213C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21C7 DUP2 PUSH2 0x218B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222A PUSH1 0x24 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x2235 DUP3 PUSH2 0x21CE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2259 DUP2 PUSH2 0x221D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2296 PUSH1 0x19 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x22A1 DUP3 PUSH2 0x2260 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x22C5 DUP2 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2328 PUSH1 0x32 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x2333 DUP3 PUSH2 0x22CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2357 DUP2 PUSH2 0x231B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B4 DUP3 PUSH2 0x238D JUMP JUMPDEST PUSH2 0x23BE DUP2 DUP6 PUSH2 0x2398 JUMP JUMPDEST SWAP4 POP PUSH2 0x23CE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST PUSH2 0x23D7 DUP2 PUSH2 0x18E0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x23F7 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x19D7 JUMP JUMPDEST PUSH2 0x2404 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x19D7 JUMP JUMPDEST PUSH2 0x2411 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x17A1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x2423 DUP2 DUP5 PUSH2 0x23A9 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x243D DUP2 PUSH2 0x180B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2459 JUMPI PUSH2 0x2458 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2467 DUP5 DUP3 DUP6 ADD PUSH2 0x242E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4552433732313A206D696E7420746F20746865207A65726F2061646472657373 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24A6 PUSH1 0x20 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x24B1 DUP3 PUSH2 0x2470 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x24D5 DUP2 PUSH2 0x2499 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20746F6B656E20616C7265616479206D696E74656400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2512 PUSH1 0x1C DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x251D DUP3 PUSH2 0x24DC JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2541 DUP2 PUSH2 0x2505 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xAD 0xA8 SWAP2 POP 0xC5 0xD7 0x2A 0xAF DUP4 REVERT CALLDATALOAD MLOAD GAS 0xB6 0xE6 PUSH30 0xF75E9D0B0F8827FE1173D36182B4852A64736F6C63430008190033000000 ", + "sourceMap": "84:253:69:-:0;;;153:71;;;;;;;;;;1390:113:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1464:5;1456;:13;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;:::i;:::-;;1390:113;;216:1:69::1;199:14;:18;;;;84:253:::0;;7:99:74;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:180::-;160:77;157:1;150:88;257:4;254:1;247:15;281:4;278:1;271:15;298:180;346:77;343:1;336:88;443:4;440:1;433:15;467:4;464:1;457:15;484:320;528:6;565:1;559:4;555:12;545:22;;612:1;606:4;602:12;633:18;623:81;;689:4;681:6;677:17;667:27;;623:81;751:2;743:6;740:14;720:18;717:38;714:84;;770:18;;:::i;:::-;714:84;535:269;484:320;;;:::o;810:141::-;859:4;882:3;874:11;;905:3;902:1;895:14;939:4;936:1;926:18;918:26;;810:141;;;:::o;957:93::-;994:6;1041:2;1036;1029:5;1025:14;1021:23;1011:33;;957:93;;;:::o;1056:107::-;1100:8;1150:5;1144:4;1140:16;1119:37;;1056:107;;;;:::o;1169:393::-;1238:6;1288:1;1276:10;1272:18;1311:97;1341:66;1330:9;1311:97;:::i;:::-;1429:39;1459:8;1448:9;1429:39;:::i;:::-;1417:51;;1501:4;1497:9;1490:5;1486:21;1477:30;;1550:4;1540:8;1536:19;1529:5;1526:30;1516:40;;1245:317;;1169:393;;;;;:::o;1568:77::-;1605:7;1634:5;1623:16;;1568:77;;;:::o;1651:60::-;1679:3;1700:5;1693:12;;1651:60;;;:::o;1717:142::-;1767:9;1800:53;1818:34;1827:24;1845:5;1827:24;:::i;:::-;1818:34;:::i;:::-;1800:53;:::i;:::-;1787:66;;1717:142;;;:::o;1865:75::-;1908:3;1929:5;1922:12;;1865:75;;;:::o;1946:269::-;2056:39;2087:7;2056:39;:::i;:::-;2117:91;2166:41;2190:16;2166:41;:::i;:::-;2158:6;2151:4;2145:11;2117:91;:::i;:::-;2111:4;2104:105;2022:193;1946:269;;;:::o;2221:73::-;2266:3;2221:73;:::o;2300:189::-;2377:32;;:::i;:::-;2418:65;2476:6;2468;2462:4;2418:65;:::i;:::-;2353:136;2300:189;;:::o;2495:186::-;2555:120;2572:3;2565:5;2562:14;2555:120;;;2626:39;2663:1;2656:5;2626:39;:::i;:::-;2599:1;2592:5;2588:13;2579:22;;2555:120;;;2495:186;;:::o;2687:543::-;2788:2;2783:3;2780:11;2777:446;;;2822:38;2854:5;2822:38;:::i;:::-;2906:29;2924:10;2906:29;:::i;:::-;2896:8;2892:44;3089:2;3077:10;3074:18;3071:49;;;3110:8;3095:23;;3071:49;3133:80;3189:22;3207:3;3189:22;:::i;:::-;3179:8;3175:37;3162:11;3133:80;:::i;:::-;2792:431;;2777:446;2687:543;;;:::o;3236:117::-;3290:8;3340:5;3334:4;3330:16;3309:37;;3236:117;;;;:::o;3359:169::-;3403:6;3436:51;3484:1;3480:6;3472:5;3469:1;3465:13;3436:51;:::i;:::-;3432:56;3517:4;3511;3507:15;3497:25;;3410:118;3359:169;;;;:::o;3533:295::-;3609:4;3755:29;3780:3;3774:4;3755:29;:::i;:::-;3747:37;;3817:3;3814:1;3810:11;3804:4;3801:21;3793:29;;3533:295;;;;:::o;3833:1395::-;3950:37;3983:3;3950:37;:::i;:::-;4052:18;4044:6;4041:30;4038:56;;;4074:18;;:::i;:::-;4038:56;4118:38;4150:4;4144:11;4118:38;:::i;:::-;4203:67;4263:6;4255;4249:4;4203:67;:::i;:::-;4297:1;4321:4;4308:17;;4353:2;4345:6;4342:14;4370:1;4365:618;;;;5027:1;5044:6;5041:77;;;5093:9;5088:3;5084:19;5078:26;5069:35;;5041:77;5144:67;5204:6;5197:5;5144:67;:::i;:::-;5138:4;5131:81;5000:222;4335:887;;4365:618;4417:4;4413:9;4405:6;4401:22;4451:37;4483:4;4451:37;:::i;:::-;4510:1;4524:208;4538:7;4535:1;4532:14;4524:208;;;4617:9;4612:3;4608:19;4602:26;4594:6;4587:42;4668:1;4660:6;4656:14;4646:24;;4715:2;4704:9;4700:18;4687:31;;4561:4;4558:1;4554:12;4549:17;;4524:208;;;4760:6;4751:7;4748:19;4745:179;;;4818:9;4813:3;4809:19;4803:26;4861:48;4903:4;4895:6;4891:17;4880:9;4861:48;:::i;:::-;4853:6;4846:64;4768:156;4745:179;4970:1;4966;4958:6;4954:14;4950:22;4944:4;4937:36;4372:611;;;4335:887;;3925:1303;;;3833:1395;;:::o;84:253:69:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_afterTokenTransfer_14334": { + "entryPoint": 4727, + "id": 14334, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_approve_14200": { + "entryPoint": 2694, + "id": 14200, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_baseURI_13637": { + "entryPoint": 4336, + "id": 13637, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_beforeTokenTransfer_14321": { + "entryPoint": 4721, + "id": 14321, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_checkOnERC721Received_14308": { + "entryPoint": 4733, + "id": 14308, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@_exists_13869": { + "entryPoint": 4565, + "id": 13869, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_isApprovedOrOwner_13903": { + "entryPoint": 2909, + "id": 13903, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_mint_14024": { + "entryPoint": 5463, + "id": 14024, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_msgSender_14853": { + "entryPoint": 2686, + "id": 14853, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@_ownerOf_13851": { + "entryPoint": 3819, + "id": 13851, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_requireMinted_14246": { + "entryPoint": 2611, + "id": 14246, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_safeMint_13918": { + "entryPoint": 2879, + "id": 13918, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_safeMint_13947": { + "entryPoint": 4630, + "id": 13947, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_safeTransfer_13838": { + "entryPoint": 4244, + "id": 13838, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@_setApprovalForAll_14232": { + "entryPoint": 3880, + "id": 14232, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_transfer_14176": { + "entryPoint": 3058, + "id": 14176, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@approve_13680": { + "entryPoint": 1225, + "id": 13680, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@balanceOf_13541": { + "entryPoint": 1804, + "id": 13541, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@currentTokenId_16272": { + "entryPoint": 777, + "id": 16272, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@getApproved_13698": { + "entryPoint": 1155, + "id": 13698, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isApprovedForAll_13733": { + "entryPoint": 2357, + "id": 13733, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@isContract_14529": { + "entryPoint": 6004, + "id": 14529, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@log10_15839": { + "entryPoint": 5124, + "id": 15839, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@mint_16297": { + "entryPoint": 1504, + "id": 16297, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@name_13579": { + "entryPoint": 1009, + "id": 13579, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@ownerOf_13569": { + "entryPoint": 1670, + "id": 13569, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@safeTransferFrom_13779": { + "entryPoint": 1638, + "id": 13779, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@safeTransferFrom_13809": { + "entryPoint": 2155, + "id": 13809, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@setApprovalForAll_13715": { + "entryPoint": 2133, + "id": 13715, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@supportsInterface_13517": { + "entryPoint": 783, + "id": 13517, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_15123": { + "entryPoint": 2505, + "id": 15123, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@symbol_13589": { + "entryPoint": 1987, + "id": 13589, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@toString_14930": { + "entryPoint": 4359, + "id": 14930, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@tokenURI_13628": { + "entryPoint": 2253, + "id": 13628, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@transferFrom_13760": { + "entryPoint": 1542, + "id": 13760, + "parameterSlots": 3, + "returnSlots": 0 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 7198, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 6680, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 6916, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 6178, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4_fromMemory": { + "entryPoint": 9262, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 7264, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 6499, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 6848, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_address": { + "entryPoint": 7441, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 6765, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr": { + "entryPoint": 7310, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 6937, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 6701, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 6199, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4_fromMemory": { + "entryPoint": 9283, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 6520, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 6615, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 6256, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 9129, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 6385, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 8423, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8091, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8987, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8587, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack": { + "entryPoint": 9477, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8733, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8841, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8345, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack": { + "entryPoint": 9369, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 8199, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7680, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack": { + "entryPoint": 7826, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 6049, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 8472, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 6630, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 9186, + "id": null, + "parameterSlots": 5, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 6271, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 6442, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8126, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 9022, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8622, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 9512, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8768, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8876, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8380, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 9404, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 8234, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7715, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 7861, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 6064, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 7107, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 6091, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 7134, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 9101, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 6298, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 9112, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 6309, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 8412, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 6597, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 6244, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 6111, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 6565, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 6039, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 7183, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 6326, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 7552, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 7058, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "increment_t_uint256": { + "entryPoint": 7940, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 7893, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x12": { + "entryPoint": 9054, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 7505, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 7011, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 7001, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 7006, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 6106, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 6101, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 6368, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af": { + "entryPoint": 8012, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e": { + "entryPoint": 8908, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48": { + "entryPoint": 8508, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57": { + "entryPoint": 9436, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4": { + "entryPoint": 8654, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05": { + "entryPoint": 8800, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159": { + "entryPoint": 8266, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6": { + "entryPoint": 9328, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f": { + "entryPoint": 8158, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942": { + "entryPoint": 7601, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83": { + "entryPoint": 7747, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 6657, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 6893, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 6155, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 6476, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:25545:74", + "nodeType": "YulBlock", + "src": "0:25545:74", + "statements": [ + { + "body": { + "nativeSrc": "52:32:74", + "nodeType": "YulBlock", + "src": "52:32:74", + "statements": [ + { + "nativeSrc": "62:16:74", + "nodeType": "YulAssignment", + "src": "62:16:74", + "value": { + "name": "value", + "nativeSrc": "73:5:74", + "nodeType": "YulIdentifier", + "src": "73:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "62:7:74", + "nodeType": "YulIdentifier", + "src": "62:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "7:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "34:5:74", + "nodeType": "YulTypedName", + "src": "34:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "44:7:74", + "nodeType": "YulTypedName", + "src": "44:7:74", + "type": "" + } + ], + "src": "7:77:74" + }, + { + "body": { + "nativeSrc": "155:53:74", + "nodeType": "YulBlock", + "src": "155:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "172:3:74", + "nodeType": "YulIdentifier", + "src": "172:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "195:5:74", + "nodeType": "YulIdentifier", + "src": "195:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "177:17:74", + "nodeType": "YulIdentifier", + "src": "177:17:74" + }, + "nativeSrc": "177:24:74", + "nodeType": "YulFunctionCall", + "src": "177:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "165:6:74", + "nodeType": "YulIdentifier", + "src": "165:6:74" + }, + "nativeSrc": "165:37:74", + "nodeType": "YulFunctionCall", + "src": "165:37:74" + }, + "nativeSrc": "165:37:74", + "nodeType": "YulExpressionStatement", + "src": "165:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "90:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "143:5:74", + "nodeType": "YulTypedName", + "src": "143:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "150:3:74", + "nodeType": "YulTypedName", + "src": "150:3:74", + "type": "" + } + ], + "src": "90:118:74" + }, + { + "body": { + "nativeSrc": "312:124:74", + "nodeType": "YulBlock", + "src": "312:124:74", + "statements": [ + { + "nativeSrc": "322:26:74", + "nodeType": "YulAssignment", + "src": "322:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "334:9:74", + "nodeType": "YulIdentifier", + "src": "334:9:74" + }, + { + "kind": "number", + "nativeSrc": "345:2:74", + "nodeType": "YulLiteral", + "src": "345:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "330:3:74", + "nodeType": "YulIdentifier", + "src": "330:3:74" + }, + "nativeSrc": "330:18:74", + "nodeType": "YulFunctionCall", + "src": "330:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "322:4:74", + "nodeType": "YulIdentifier", + "src": "322:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "402:6:74", + "nodeType": "YulIdentifier", + "src": "402:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "415:9:74", + "nodeType": "YulIdentifier", + "src": "415:9:74" + }, + { + "kind": "number", + "nativeSrc": "426:1:74", + "nodeType": "YulLiteral", + "src": "426:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "411:3:74", + "nodeType": "YulIdentifier", + "src": "411:3:74" + }, + "nativeSrc": "411:17:74", + "nodeType": "YulFunctionCall", + "src": "411:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "358:43:74", + "nodeType": "YulIdentifier", + "src": "358:43:74" + }, + "nativeSrc": "358:71:74", + "nodeType": "YulFunctionCall", + "src": "358:71:74" + }, + "nativeSrc": "358:71:74", + "nodeType": "YulExpressionStatement", + "src": "358:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "214:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "284:9:74", + "nodeType": "YulTypedName", + "src": "284:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "296:6:74", + "nodeType": "YulTypedName", + "src": "296:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "307:4:74", + "nodeType": "YulTypedName", + "src": "307:4:74", + "type": "" + } + ], + "src": "214:222:74" + }, + { + "body": { + "nativeSrc": "482:35:74", + "nodeType": "YulBlock", + "src": "482:35:74", + "statements": [ + { + "nativeSrc": "492:19:74", + "nodeType": "YulAssignment", + "src": "492:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "508:2:74", + "nodeType": "YulLiteral", + "src": "508:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "502:5:74", + "nodeType": "YulIdentifier", + "src": "502:5:74" + }, + "nativeSrc": "502:9:74", + "nodeType": "YulFunctionCall", + "src": "502:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "492:6:74", + "nodeType": "YulIdentifier", + "src": "492:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "442:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "475:6:74", + "nodeType": "YulTypedName", + "src": "475:6:74", + "type": "" + } + ], + "src": "442:75:74" + }, + { + "body": { + "nativeSrc": "612:28:74", + "nodeType": "YulBlock", + "src": "612:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "629:1:74", + "nodeType": "YulLiteral", + "src": "629:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "632:1:74", + "nodeType": "YulLiteral", + "src": "632:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "622:6:74", + "nodeType": "YulIdentifier", + "src": "622:6:74" + }, + "nativeSrc": "622:12:74", + "nodeType": "YulFunctionCall", + "src": "622:12:74" + }, + "nativeSrc": "622:12:74", + "nodeType": "YulExpressionStatement", + "src": "622:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "523:117:74", + "nodeType": "YulFunctionDefinition", + "src": "523:117:74" + }, + { + "body": { + "nativeSrc": "735:28:74", + "nodeType": "YulBlock", + "src": "735:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "752:1:74", + "nodeType": "YulLiteral", + "src": "752:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "755:1:74", + "nodeType": "YulLiteral", + "src": "755:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "745:6:74", + "nodeType": "YulIdentifier", + "src": "745:6:74" + }, + "nativeSrc": "745:12:74", + "nodeType": "YulFunctionCall", + "src": "745:12:74" + }, + "nativeSrc": "745:12:74", + "nodeType": "YulExpressionStatement", + "src": "745:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "646:117:74", + "nodeType": "YulFunctionDefinition", + "src": "646:117:74" + }, + { + "body": { + "nativeSrc": "813:105:74", + "nodeType": "YulBlock", + "src": "813:105:74", + "statements": [ + { + "nativeSrc": "823:89:74", + "nodeType": "YulAssignment", + "src": "823:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "838:5:74", + "nodeType": "YulIdentifier", + "src": "838:5:74" + }, + { + "kind": "number", + "nativeSrc": "845:66:74", + "nodeType": "YulLiteral", + "src": "845:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "834:3:74", + "nodeType": "YulIdentifier", + "src": "834:3:74" + }, + "nativeSrc": "834:78:74", + "nodeType": "YulFunctionCall", + "src": "834:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "823:7:74", + "nodeType": "YulIdentifier", + "src": "823:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "769:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "795:5:74", + "nodeType": "YulTypedName", + "src": "795:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "805:7:74", + "nodeType": "YulTypedName", + "src": "805:7:74", + "type": "" + } + ], + "src": "769:149:74" + }, + { + "body": { + "nativeSrc": "966:78:74", + "nodeType": "YulBlock", + "src": "966:78:74", + "statements": [ + { + "body": { + "nativeSrc": "1022:16:74", + "nodeType": "YulBlock", + "src": "1022:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1031:1:74", + "nodeType": "YulLiteral", + "src": "1031:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1034:1:74", + "nodeType": "YulLiteral", + "src": "1034:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1024:6:74", + "nodeType": "YulIdentifier", + "src": "1024:6:74" + }, + "nativeSrc": "1024:12:74", + "nodeType": "YulFunctionCall", + "src": "1024:12:74" + }, + "nativeSrc": "1024:12:74", + "nodeType": "YulExpressionStatement", + "src": "1024:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "989:5:74", + "nodeType": "YulIdentifier", + "src": "989:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1013:5:74", + "nodeType": "YulIdentifier", + "src": "1013:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "996:16:74", + "nodeType": "YulIdentifier", + "src": "996:16:74" + }, + "nativeSrc": "996:23:74", + "nodeType": "YulFunctionCall", + "src": "996:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "986:2:74", + "nodeType": "YulIdentifier", + "src": "986:2:74" + }, + "nativeSrc": "986:34:74", + "nodeType": "YulFunctionCall", + "src": "986:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "979:6:74", + "nodeType": "YulIdentifier", + "src": "979:6:74" + }, + "nativeSrc": "979:42:74", + "nodeType": "YulFunctionCall", + "src": "979:42:74" + }, + "nativeSrc": "976:62:74", + "nodeType": "YulIf", + "src": "976:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "924:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "959:5:74", + "nodeType": "YulTypedName", + "src": "959:5:74", + "type": "" + } + ], + "src": "924:120:74" + }, + { + "body": { + "nativeSrc": "1101:86:74", + "nodeType": "YulBlock", + "src": "1101:86:74", + "statements": [ + { + "nativeSrc": "1111:29:74", + "nodeType": "YulAssignment", + "src": "1111:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1133:6:74", + "nodeType": "YulIdentifier", + "src": "1133:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "1120:12:74", + "nodeType": "YulIdentifier", + "src": "1120:12:74" + }, + "nativeSrc": "1120:20:74", + "nodeType": "YulFunctionCall", + "src": "1120:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1111:5:74", + "nodeType": "YulIdentifier", + "src": "1111:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1175:5:74", + "nodeType": "YulIdentifier", + "src": "1175:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "1149:25:74", + "nodeType": "YulIdentifier", + "src": "1149:25:74" + }, + "nativeSrc": "1149:32:74", + "nodeType": "YulFunctionCall", + "src": "1149:32:74" + }, + "nativeSrc": "1149:32:74", + "nodeType": "YulExpressionStatement", + "src": "1149:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "1050:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1079:6:74", + "nodeType": "YulTypedName", + "src": "1079:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1087:3:74", + "nodeType": "YulTypedName", + "src": "1087:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1095:5:74", + "nodeType": "YulTypedName", + "src": "1095:5:74", + "type": "" + } + ], + "src": "1050:137:74" + }, + { + "body": { + "nativeSrc": "1258:262:74", + "nodeType": "YulBlock", + "src": "1258:262:74", + "statements": [ + { + "body": { + "nativeSrc": "1304:83:74", + "nodeType": "YulBlock", + "src": "1304:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1306:77:74", + "nodeType": "YulIdentifier", + "src": "1306:77:74" + }, + "nativeSrc": "1306:79:74", + "nodeType": "YulFunctionCall", + "src": "1306:79:74" + }, + "nativeSrc": "1306:79:74", + "nodeType": "YulExpressionStatement", + "src": "1306:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1279:7:74", + "nodeType": "YulIdentifier", + "src": "1279:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1288:9:74", + "nodeType": "YulIdentifier", + "src": "1288:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1275:3:74", + "nodeType": "YulIdentifier", + "src": "1275:3:74" + }, + "nativeSrc": "1275:23:74", + "nodeType": "YulFunctionCall", + "src": "1275:23:74" + }, + { + "kind": "number", + "nativeSrc": "1300:2:74", + "nodeType": "YulLiteral", + "src": "1300:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1271:3:74", + "nodeType": "YulIdentifier", + "src": "1271:3:74" + }, + "nativeSrc": "1271:32:74", + "nodeType": "YulFunctionCall", + "src": "1271:32:74" + }, + "nativeSrc": "1268:119:74", + "nodeType": "YulIf", + "src": "1268:119:74" + }, + { + "nativeSrc": "1397:116:74", + "nodeType": "YulBlock", + "src": "1397:116:74", + "statements": [ + { + "nativeSrc": "1412:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1412:15:74", + "value": { + "kind": "number", + "nativeSrc": "1426:1:74", + "nodeType": "YulLiteral", + "src": "1426:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1416:6:74", + "nodeType": "YulTypedName", + "src": "1416:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1441:62:74", + "nodeType": "YulAssignment", + "src": "1441:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1475:9:74", + "nodeType": "YulIdentifier", + "src": "1475:9:74" + }, + { + "name": "offset", + "nativeSrc": "1486:6:74", + "nodeType": "YulIdentifier", + "src": "1486:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1471:3:74", + "nodeType": "YulIdentifier", + "src": "1471:3:74" + }, + "nativeSrc": "1471:22:74", + "nodeType": "YulFunctionCall", + "src": "1471:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1495:7:74", + "nodeType": "YulIdentifier", + "src": "1495:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "1451:19:74", + "nodeType": "YulIdentifier", + "src": "1451:19:74" + }, + "nativeSrc": "1451:52:74", + "nodeType": "YulFunctionCall", + "src": "1451:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1441:6:74", + "nodeType": "YulIdentifier", + "src": "1441:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "1193:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1228:9:74", + "nodeType": "YulTypedName", + "src": "1228:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1239:7:74", + "nodeType": "YulTypedName", + "src": "1239:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1251:6:74", + "nodeType": "YulTypedName", + "src": "1251:6:74", + "type": "" + } + ], + "src": "1193:327:74" + }, + { + "body": { + "nativeSrc": "1568:48:74", + "nodeType": "YulBlock", + "src": "1568:48:74", + "statements": [ + { + "nativeSrc": "1578:32:74", + "nodeType": "YulAssignment", + "src": "1578:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1603:5:74", + "nodeType": "YulIdentifier", + "src": "1603:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1596:6:74", + "nodeType": "YulIdentifier", + "src": "1596:6:74" + }, + "nativeSrc": "1596:13:74", + "nodeType": "YulFunctionCall", + "src": "1596:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1589:6:74", + "nodeType": "YulIdentifier", + "src": "1589:6:74" + }, + "nativeSrc": "1589:21:74", + "nodeType": "YulFunctionCall", + "src": "1589:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1578:7:74", + "nodeType": "YulIdentifier", + "src": "1578:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1526:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1550:5:74", + "nodeType": "YulTypedName", + "src": "1550:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1560:7:74", + "nodeType": "YulTypedName", + "src": "1560:7:74", + "type": "" + } + ], + "src": "1526:90:74" + }, + { + "body": { + "nativeSrc": "1681:50:74", + "nodeType": "YulBlock", + "src": "1681:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1698:3:74", + "nodeType": "YulIdentifier", + "src": "1698:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1718:5:74", + "nodeType": "YulIdentifier", + "src": "1718:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1703:14:74", + "nodeType": "YulIdentifier", + "src": "1703:14:74" + }, + "nativeSrc": "1703:21:74", + "nodeType": "YulFunctionCall", + "src": "1703:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1691:6:74", + "nodeType": "YulIdentifier", + "src": "1691:6:74" + }, + "nativeSrc": "1691:34:74", + "nodeType": "YulFunctionCall", + "src": "1691:34:74" + }, + "nativeSrc": "1691:34:74", + "nodeType": "YulExpressionStatement", + "src": "1691:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1622:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1669:5:74", + "nodeType": "YulTypedName", + "src": "1669:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1676:3:74", + "nodeType": "YulTypedName", + "src": "1676:3:74", + "type": "" + } + ], + "src": "1622:109:74" + }, + { + "body": { + "nativeSrc": "1829:118:74", + "nodeType": "YulBlock", + "src": "1829:118:74", + "statements": [ + { + "nativeSrc": "1839:26:74", + "nodeType": "YulAssignment", + "src": "1839:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1851:9:74", + "nodeType": "YulIdentifier", + "src": "1851:9:74" + }, + { + "kind": "number", + "nativeSrc": "1862:2:74", + "nodeType": "YulLiteral", + "src": "1862:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1847:3:74", + "nodeType": "YulIdentifier", + "src": "1847:3:74" + }, + "nativeSrc": "1847:18:74", + "nodeType": "YulFunctionCall", + "src": "1847:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1839:4:74", + "nodeType": "YulIdentifier", + "src": "1839:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1913:6:74", + "nodeType": "YulIdentifier", + "src": "1913:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1926:9:74", + "nodeType": "YulIdentifier", + "src": "1926:9:74" + }, + { + "kind": "number", + "nativeSrc": "1937:1:74", + "nodeType": "YulLiteral", + "src": "1937:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1922:3:74", + "nodeType": "YulIdentifier", + "src": "1922:3:74" + }, + "nativeSrc": "1922:17:74", + "nodeType": "YulFunctionCall", + "src": "1922:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1875:37:74", + "nodeType": "YulIdentifier", + "src": "1875:37:74" + }, + "nativeSrc": "1875:65:74", + "nodeType": "YulFunctionCall", + "src": "1875:65:74" + }, + "nativeSrc": "1875:65:74", + "nodeType": "YulExpressionStatement", + "src": "1875:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1737:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1801:9:74", + "nodeType": "YulTypedName", + "src": "1801:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1813:6:74", + "nodeType": "YulTypedName", + "src": "1813:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1824:4:74", + "nodeType": "YulTypedName", + "src": "1824:4:74", + "type": "" + } + ], + "src": "1737:210:74" + }, + { + "body": { + "nativeSrc": "2012:40:74", + "nodeType": "YulBlock", + "src": "2012:40:74", + "statements": [ + { + "nativeSrc": "2023:22:74", + "nodeType": "YulAssignment", + "src": "2023:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2039:5:74", + "nodeType": "YulIdentifier", + "src": "2039:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2033:5:74", + "nodeType": "YulIdentifier", + "src": "2033:5:74" + }, + "nativeSrc": "2033:12:74", + "nodeType": "YulFunctionCall", + "src": "2033:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "2023:6:74", + "nodeType": "YulIdentifier", + "src": "2023:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "1953:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1995:5:74", + "nodeType": "YulTypedName", + "src": "1995:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "2005:6:74", + "nodeType": "YulTypedName", + "src": "2005:6:74", + "type": "" + } + ], + "src": "1953:99:74" + }, + { + "body": { + "nativeSrc": "2154:73:74", + "nodeType": "YulBlock", + "src": "2154:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2171:3:74", + "nodeType": "YulIdentifier", + "src": "2171:3:74" + }, + { + "name": "length", + "nativeSrc": "2176:6:74", + "nodeType": "YulIdentifier", + "src": "2176:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2164:6:74", + "nodeType": "YulIdentifier", + "src": "2164:6:74" + }, + "nativeSrc": "2164:19:74", + "nodeType": "YulFunctionCall", + "src": "2164:19:74" + }, + "nativeSrc": "2164:19:74", + "nodeType": "YulExpressionStatement", + "src": "2164:19:74" + }, + { + "nativeSrc": "2192:29:74", + "nodeType": "YulAssignment", + "src": "2192:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2211:3:74", + "nodeType": "YulIdentifier", + "src": "2211:3:74" + }, + { + "kind": "number", + "nativeSrc": "2216:4:74", + "nodeType": "YulLiteral", + "src": "2216:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2207:3:74", + "nodeType": "YulIdentifier", + "src": "2207:3:74" + }, + "nativeSrc": "2207:14:74", + "nodeType": "YulFunctionCall", + "src": "2207:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "2192:11:74", + "nodeType": "YulIdentifier", + "src": "2192:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2058:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "2126:3:74", + "nodeType": "YulTypedName", + "src": "2126:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2131:6:74", + "nodeType": "YulTypedName", + "src": "2131:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "2142:11:74", + "nodeType": "YulTypedName", + "src": "2142:11:74", + "type": "" + } + ], + "src": "2058:169:74" + }, + { + "body": { + "nativeSrc": "2295:186:74", + "nodeType": "YulBlock", + "src": "2295:186:74", + "statements": [ + { + "nativeSrc": "2306:10:74", + "nodeType": "YulVariableDeclaration", + "src": "2306:10:74", + "value": { + "kind": "number", + "nativeSrc": "2315:1:74", + "nodeType": "YulLiteral", + "src": "2315:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "2310:1:74", + "nodeType": "YulTypedName", + "src": "2310:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2375:63:74", + "nodeType": "YulBlock", + "src": "2375:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2400:3:74", + "nodeType": "YulIdentifier", + "src": "2400:3:74" + }, + { + "name": "i", + "nativeSrc": "2405:1:74", + "nodeType": "YulIdentifier", + "src": "2405:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2396:3:74", + "nodeType": "YulIdentifier", + "src": "2396:3:74" + }, + "nativeSrc": "2396:11:74", + "nodeType": "YulFunctionCall", + "src": "2396:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "2419:3:74", + "nodeType": "YulIdentifier", + "src": "2419:3:74" + }, + { + "name": "i", + "nativeSrc": "2424:1:74", + "nodeType": "YulIdentifier", + "src": "2424:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2415:3:74", + "nodeType": "YulIdentifier", + "src": "2415:3:74" + }, + "nativeSrc": "2415:11:74", + "nodeType": "YulFunctionCall", + "src": "2415:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2409:5:74", + "nodeType": "YulIdentifier", + "src": "2409:5:74" + }, + "nativeSrc": "2409:18:74", + "nodeType": "YulFunctionCall", + "src": "2409:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2389:6:74", + "nodeType": "YulIdentifier", + "src": "2389:6:74" + }, + "nativeSrc": "2389:39:74", + "nodeType": "YulFunctionCall", + "src": "2389:39:74" + }, + "nativeSrc": "2389:39:74", + "nodeType": "YulExpressionStatement", + "src": "2389:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "2336:1:74", + "nodeType": "YulIdentifier", + "src": "2336:1:74" + }, + { + "name": "length", + "nativeSrc": "2339:6:74", + "nodeType": "YulIdentifier", + "src": "2339:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2333:2:74", + "nodeType": "YulIdentifier", + "src": "2333:2:74" + }, + "nativeSrc": "2333:13:74", + "nodeType": "YulFunctionCall", + "src": "2333:13:74" + }, + "nativeSrc": "2325:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "2347:19:74", + "nodeType": "YulBlock", + "src": "2347:19:74", + "statements": [ + { + "nativeSrc": "2349:15:74", + "nodeType": "YulAssignment", + "src": "2349:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "2358:1:74", + "nodeType": "YulIdentifier", + "src": "2358:1:74" + }, + { + "kind": "number", + "nativeSrc": "2361:2:74", + "nodeType": "YulLiteral", + "src": "2361:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2354:3:74", + "nodeType": "YulIdentifier", + "src": "2354:3:74" + }, + "nativeSrc": "2354:10:74", + "nodeType": "YulFunctionCall", + "src": "2354:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "2349:1:74", + "nodeType": "YulIdentifier", + "src": "2349:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "2329:3:74", + "nodeType": "YulBlock", + "src": "2329:3:74", + "statements": [] + }, + "src": "2325:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2458:3:74", + "nodeType": "YulIdentifier", + "src": "2458:3:74" + }, + { + "name": "length", + "nativeSrc": "2463:6:74", + "nodeType": "YulIdentifier", + "src": "2463:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2454:3:74", + "nodeType": "YulIdentifier", + "src": "2454:3:74" + }, + "nativeSrc": "2454:16:74", + "nodeType": "YulFunctionCall", + "src": "2454:16:74" + }, + { + "kind": "number", + "nativeSrc": "2472:1:74", + "nodeType": "YulLiteral", + "src": "2472:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2447:6:74", + "nodeType": "YulIdentifier", + "src": "2447:6:74" + }, + "nativeSrc": "2447:27:74", + "nodeType": "YulFunctionCall", + "src": "2447:27:74" + }, + "nativeSrc": "2447:27:74", + "nodeType": "YulExpressionStatement", + "src": "2447:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2233:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "2277:3:74", + "nodeType": "YulTypedName", + "src": "2277:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "2282:3:74", + "nodeType": "YulTypedName", + "src": "2282:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2287:6:74", + "nodeType": "YulTypedName", + "src": "2287:6:74", + "type": "" + } + ], + "src": "2233:248:74" + }, + { + "body": { + "nativeSrc": "2535:54:74", + "nodeType": "YulBlock", + "src": "2535:54:74", + "statements": [ + { + "nativeSrc": "2545:38:74", + "nodeType": "YulAssignment", + "src": "2545:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2563:5:74", + "nodeType": "YulIdentifier", + "src": "2563:5:74" + }, + { + "kind": "number", + "nativeSrc": "2570:2:74", + "nodeType": "YulLiteral", + "src": "2570:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2559:3:74", + "nodeType": "YulIdentifier", + "src": "2559:3:74" + }, + "nativeSrc": "2559:14:74", + "nodeType": "YulFunctionCall", + "src": "2559:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2579:2:74", + "nodeType": "YulLiteral", + "src": "2579:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "2575:3:74", + "nodeType": "YulIdentifier", + "src": "2575:3:74" + }, + "nativeSrc": "2575:7:74", + "nodeType": "YulFunctionCall", + "src": "2575:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "2555:3:74", + "nodeType": "YulIdentifier", + "src": "2555:3:74" + }, + "nativeSrc": "2555:28:74", + "nodeType": "YulFunctionCall", + "src": "2555:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "2545:6:74", + "nodeType": "YulIdentifier", + "src": "2545:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "2487:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2518:5:74", + "nodeType": "YulTypedName", + "src": "2518:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "2528:6:74", + "nodeType": "YulTypedName", + "src": "2528:6:74", + "type": "" + } + ], + "src": "2487:102:74" + }, + { + "body": { + "nativeSrc": "2687:285:74", + "nodeType": "YulBlock", + "src": "2687:285:74", + "statements": [ + { + "nativeSrc": "2697:53:74", + "nodeType": "YulVariableDeclaration", + "src": "2697:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2744:5:74", + "nodeType": "YulIdentifier", + "src": "2744:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "2711:32:74", + "nodeType": "YulIdentifier", + "src": "2711:32:74" + }, + "nativeSrc": "2711:39:74", + "nodeType": "YulFunctionCall", + "src": "2711:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "2701:6:74", + "nodeType": "YulTypedName", + "src": "2701:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2759:78:74", + "nodeType": "YulAssignment", + "src": "2759:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2825:3:74", + "nodeType": "YulIdentifier", + "src": "2825:3:74" + }, + { + "name": "length", + "nativeSrc": "2830:6:74", + "nodeType": "YulIdentifier", + "src": "2830:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "2766:58:74", + "nodeType": "YulIdentifier", + "src": "2766:58:74" + }, + "nativeSrc": "2766:71:74", + "nodeType": "YulFunctionCall", + "src": "2766:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "2759:3:74", + "nodeType": "YulIdentifier", + "src": "2759:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2885:5:74", + "nodeType": "YulIdentifier", + "src": "2885:5:74" + }, + { + "kind": "number", + "nativeSrc": "2892:4:74", + "nodeType": "YulLiteral", + "src": "2892:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2881:3:74", + "nodeType": "YulIdentifier", + "src": "2881:3:74" + }, + "nativeSrc": "2881:16:74", + "nodeType": "YulFunctionCall", + "src": "2881:16:74" + }, + { + "name": "pos", + "nativeSrc": "2899:3:74", + "nodeType": "YulIdentifier", + "src": "2899:3:74" + }, + { + "name": "length", + "nativeSrc": "2904:6:74", + "nodeType": "YulIdentifier", + "src": "2904:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "2846:34:74", + "nodeType": "YulIdentifier", + "src": "2846:34:74" + }, + "nativeSrc": "2846:65:74", + "nodeType": "YulFunctionCall", + "src": "2846:65:74" + }, + "nativeSrc": "2846:65:74", + "nodeType": "YulExpressionStatement", + "src": "2846:65:74" + }, + { + "nativeSrc": "2920:46:74", + "nodeType": "YulAssignment", + "src": "2920:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2931:3:74", + "nodeType": "YulIdentifier", + "src": "2931:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "2958:6:74", + "nodeType": "YulIdentifier", + "src": "2958:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2936:21:74", + "nodeType": "YulIdentifier", + "src": "2936:21:74" + }, + "nativeSrc": "2936:29:74", + "nodeType": "YulFunctionCall", + "src": "2936:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2927:3:74", + "nodeType": "YulIdentifier", + "src": "2927:3:74" + }, + "nativeSrc": "2927:39:74", + "nodeType": "YulFunctionCall", + "src": "2927:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "2920:3:74", + "nodeType": "YulIdentifier", + "src": "2920:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "2595:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2668:5:74", + "nodeType": "YulTypedName", + "src": "2668:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2675:3:74", + "nodeType": "YulTypedName", + "src": "2675:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "2683:3:74", + "nodeType": "YulTypedName", + "src": "2683:3:74", + "type": "" + } + ], + "src": "2595:377:74" + }, + { + "body": { + "nativeSrc": "3096:195:74", + "nodeType": "YulBlock", + "src": "3096:195:74", + "statements": [ + { + "nativeSrc": "3106:26:74", + "nodeType": "YulAssignment", + "src": "3106:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3118:9:74", + "nodeType": "YulIdentifier", + "src": "3118:9:74" + }, + { + "kind": "number", + "nativeSrc": "3129:2:74", + "nodeType": "YulLiteral", + "src": "3129:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3114:3:74", + "nodeType": "YulIdentifier", + "src": "3114:3:74" + }, + "nativeSrc": "3114:18:74", + "nodeType": "YulFunctionCall", + "src": "3114:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3106:4:74", + "nodeType": "YulIdentifier", + "src": "3106:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3153:9:74", + "nodeType": "YulIdentifier", + "src": "3153:9:74" + }, + { + "kind": "number", + "nativeSrc": "3164:1:74", + "nodeType": "YulLiteral", + "src": "3164:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3149:3:74", + "nodeType": "YulIdentifier", + "src": "3149:3:74" + }, + "nativeSrc": "3149:17:74", + "nodeType": "YulFunctionCall", + "src": "3149:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "3172:4:74", + "nodeType": "YulIdentifier", + "src": "3172:4:74" + }, + { + "name": "headStart", + "nativeSrc": "3178:9:74", + "nodeType": "YulIdentifier", + "src": "3178:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3168:3:74", + "nodeType": "YulIdentifier", + "src": "3168:3:74" + }, + "nativeSrc": "3168:20:74", + "nodeType": "YulFunctionCall", + "src": "3168:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3142:6:74", + "nodeType": "YulIdentifier", + "src": "3142:6:74" + }, + "nativeSrc": "3142:47:74", + "nodeType": "YulFunctionCall", + "src": "3142:47:74" + }, + "nativeSrc": "3142:47:74", + "nodeType": "YulExpressionStatement", + "src": "3142:47:74" + }, + { + "nativeSrc": "3198:86:74", + "nodeType": "YulAssignment", + "src": "3198:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "3270:6:74", + "nodeType": "YulIdentifier", + "src": "3270:6:74" + }, + { + "name": "tail", + "nativeSrc": "3279:4:74", + "nodeType": "YulIdentifier", + "src": "3279:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "3206:63:74", + "nodeType": "YulIdentifier", + "src": "3206:63:74" + }, + "nativeSrc": "3206:78:74", + "nodeType": "YulFunctionCall", + "src": "3206:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "3198:4:74", + "nodeType": "YulIdentifier", + "src": "3198:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "2978:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3068:9:74", + "nodeType": "YulTypedName", + "src": "3068:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "3080:6:74", + "nodeType": "YulTypedName", + "src": "3080:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "3091:4:74", + "nodeType": "YulTypedName", + "src": "3091:4:74", + "type": "" + } + ], + "src": "2978:313:74" + }, + { + "body": { + "nativeSrc": "3340:79:74", + "nodeType": "YulBlock", + "src": "3340:79:74", + "statements": [ + { + "body": { + "nativeSrc": "3397:16:74", + "nodeType": "YulBlock", + "src": "3397:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "3406:1:74", + "nodeType": "YulLiteral", + "src": "3406:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "3409:1:74", + "nodeType": "YulLiteral", + "src": "3409:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "3399:6:74", + "nodeType": "YulIdentifier", + "src": "3399:6:74" + }, + "nativeSrc": "3399:12:74", + "nodeType": "YulFunctionCall", + "src": "3399:12:74" + }, + "nativeSrc": "3399:12:74", + "nodeType": "YulExpressionStatement", + "src": "3399:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3363:5:74", + "nodeType": "YulIdentifier", + "src": "3363:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "3388:5:74", + "nodeType": "YulIdentifier", + "src": "3388:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "3370:17:74", + "nodeType": "YulIdentifier", + "src": "3370:17:74" + }, + "nativeSrc": "3370:24:74", + "nodeType": "YulFunctionCall", + "src": "3370:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "3360:2:74", + "nodeType": "YulIdentifier", + "src": "3360:2:74" + }, + "nativeSrc": "3360:35:74", + "nodeType": "YulFunctionCall", + "src": "3360:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3353:6:74", + "nodeType": "YulIdentifier", + "src": "3353:6:74" + }, + "nativeSrc": "3353:43:74", + "nodeType": "YulFunctionCall", + "src": "3353:43:74" + }, + "nativeSrc": "3350:63:74", + "nodeType": "YulIf", + "src": "3350:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "3297:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3333:5:74", + "nodeType": "YulTypedName", + "src": "3333:5:74", + "type": "" + } + ], + "src": "3297:122:74" + }, + { + "body": { + "nativeSrc": "3477:87:74", + "nodeType": "YulBlock", + "src": "3477:87:74", + "statements": [ + { + "nativeSrc": "3487:29:74", + "nodeType": "YulAssignment", + "src": "3487:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3509:6:74", + "nodeType": "YulIdentifier", + "src": "3509:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3496:12:74", + "nodeType": "YulIdentifier", + "src": "3496:12:74" + }, + "nativeSrc": "3496:20:74", + "nodeType": "YulFunctionCall", + "src": "3496:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "3487:5:74", + "nodeType": "YulIdentifier", + "src": "3487:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3552:5:74", + "nodeType": "YulIdentifier", + "src": "3552:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "3525:26:74", + "nodeType": "YulIdentifier", + "src": "3525:26:74" + }, + "nativeSrc": "3525:33:74", + "nodeType": "YulFunctionCall", + "src": "3525:33:74" + }, + "nativeSrc": "3525:33:74", + "nodeType": "YulExpressionStatement", + "src": "3525:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "3425:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3455:6:74", + "nodeType": "YulTypedName", + "src": "3455:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3463:3:74", + "nodeType": "YulTypedName", + "src": "3463:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "3471:5:74", + "nodeType": "YulTypedName", + "src": "3471:5:74", + "type": "" + } + ], + "src": "3425:139:74" + }, + { + "body": { + "nativeSrc": "3636:263:74", + "nodeType": "YulBlock", + "src": "3636:263:74", + "statements": [ + { + "body": { + "nativeSrc": "3682:83:74", + "nodeType": "YulBlock", + "src": "3682:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3684:77:74", + "nodeType": "YulIdentifier", + "src": "3684:77:74" + }, + "nativeSrc": "3684:79:74", + "nodeType": "YulFunctionCall", + "src": "3684:79:74" + }, + "nativeSrc": "3684:79:74", + "nodeType": "YulExpressionStatement", + "src": "3684:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3657:7:74", + "nodeType": "YulIdentifier", + "src": "3657:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3666:9:74", + "nodeType": "YulIdentifier", + "src": "3666:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3653:3:74", + "nodeType": "YulIdentifier", + "src": "3653:3:74" + }, + "nativeSrc": "3653:23:74", + "nodeType": "YulFunctionCall", + "src": "3653:23:74" + }, + { + "kind": "number", + "nativeSrc": "3678:2:74", + "nodeType": "YulLiteral", + "src": "3678:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3649:3:74", + "nodeType": "YulIdentifier", + "src": "3649:3:74" + }, + "nativeSrc": "3649:32:74", + "nodeType": "YulFunctionCall", + "src": "3649:32:74" + }, + "nativeSrc": "3646:119:74", + "nodeType": "YulIf", + "src": "3646:119:74" + }, + { + "nativeSrc": "3775:117:74", + "nodeType": "YulBlock", + "src": "3775:117:74", + "statements": [ + { + "nativeSrc": "3790:15:74", + "nodeType": "YulVariableDeclaration", + "src": "3790:15:74", + "value": { + "kind": "number", + "nativeSrc": "3804:1:74", + "nodeType": "YulLiteral", + "src": "3804:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3794:6:74", + "nodeType": "YulTypedName", + "src": "3794:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3819:63:74", + "nodeType": "YulAssignment", + "src": "3819:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3854:9:74", + "nodeType": "YulIdentifier", + "src": "3854:9:74" + }, + { + "name": "offset", + "nativeSrc": "3865:6:74", + "nodeType": "YulIdentifier", + "src": "3865:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3850:3:74", + "nodeType": "YulIdentifier", + "src": "3850:3:74" + }, + "nativeSrc": "3850:22:74", + "nodeType": "YulFunctionCall", + "src": "3850:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3874:7:74", + "nodeType": "YulIdentifier", + "src": "3874:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "3829:20:74", + "nodeType": "YulIdentifier", + "src": "3829:20:74" + }, + "nativeSrc": "3829:53:74", + "nodeType": "YulFunctionCall", + "src": "3829:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "3819:6:74", + "nodeType": "YulIdentifier", + "src": "3819:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "3570:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3606:9:74", + "nodeType": "YulTypedName", + "src": "3606:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3617:7:74", + "nodeType": "YulTypedName", + "src": "3617:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3629:6:74", + "nodeType": "YulTypedName", + "src": "3629:6:74", + "type": "" + } + ], + "src": "3570:329:74" + }, + { + "body": { + "nativeSrc": "3950:81:74", + "nodeType": "YulBlock", + "src": "3950:81:74", + "statements": [ + { + "nativeSrc": "3960:65:74", + "nodeType": "YulAssignment", + "src": "3960:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "3975:5:74", + "nodeType": "YulIdentifier", + "src": "3975:5:74" + }, + { + "kind": "number", + "nativeSrc": "3982:42:74", + "nodeType": "YulLiteral", + "src": "3982:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "3971:3:74", + "nodeType": "YulIdentifier", + "src": "3971:3:74" + }, + "nativeSrc": "3971:54:74", + "nodeType": "YulFunctionCall", + "src": "3971:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "3960:7:74", + "nodeType": "YulIdentifier", + "src": "3960:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "3905:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "3932:5:74", + "nodeType": "YulTypedName", + "src": "3932:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "3942:7:74", + "nodeType": "YulTypedName", + "src": "3942:7:74", + "type": "" + } + ], + "src": "3905:126:74" + }, + { + "body": { + "nativeSrc": "4082:51:74", + "nodeType": "YulBlock", + "src": "4082:51:74", + "statements": [ + { + "nativeSrc": "4092:35:74", + "nodeType": "YulAssignment", + "src": "4092:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4121:5:74", + "nodeType": "YulIdentifier", + "src": "4121:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "4103:17:74", + "nodeType": "YulIdentifier", + "src": "4103:17:74" + }, + "nativeSrc": "4103:24:74", + "nodeType": "YulFunctionCall", + "src": "4103:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4092:7:74", + "nodeType": "YulIdentifier", + "src": "4092:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "4037:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4064:5:74", + "nodeType": "YulTypedName", + "src": "4064:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4074:7:74", + "nodeType": "YulTypedName", + "src": "4074:7:74", + "type": "" + } + ], + "src": "4037:96:74" + }, + { + "body": { + "nativeSrc": "4204:53:74", + "nodeType": "YulBlock", + "src": "4204:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4221:3:74", + "nodeType": "YulIdentifier", + "src": "4221:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4244:5:74", + "nodeType": "YulIdentifier", + "src": "4244:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4226:17:74", + "nodeType": "YulIdentifier", + "src": "4226:17:74" + }, + "nativeSrc": "4226:24:74", + "nodeType": "YulFunctionCall", + "src": "4226:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4214:6:74", + "nodeType": "YulIdentifier", + "src": "4214:6:74" + }, + "nativeSrc": "4214:37:74", + "nodeType": "YulFunctionCall", + "src": "4214:37:74" + }, + "nativeSrc": "4214:37:74", + "nodeType": "YulExpressionStatement", + "src": "4214:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4139:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4192:5:74", + "nodeType": "YulTypedName", + "src": "4192:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4199:3:74", + "nodeType": "YulTypedName", + "src": "4199:3:74", + "type": "" + } + ], + "src": "4139:118:74" + }, + { + "body": { + "nativeSrc": "4361:124:74", + "nodeType": "YulBlock", + "src": "4361:124:74", + "statements": [ + { + "nativeSrc": "4371:26:74", + "nodeType": "YulAssignment", + "src": "4371:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4383:9:74", + "nodeType": "YulIdentifier", + "src": "4383:9:74" + }, + { + "kind": "number", + "nativeSrc": "4394:2:74", + "nodeType": "YulLiteral", + "src": "4394:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4379:3:74", + "nodeType": "YulIdentifier", + "src": "4379:3:74" + }, + "nativeSrc": "4379:18:74", + "nodeType": "YulFunctionCall", + "src": "4379:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4371:4:74", + "nodeType": "YulIdentifier", + "src": "4371:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "4451:6:74", + "nodeType": "YulIdentifier", + "src": "4451:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4464:9:74", + "nodeType": "YulIdentifier", + "src": "4464:9:74" + }, + { + "kind": "number", + "nativeSrc": "4475:1:74", + "nodeType": "YulLiteral", + "src": "4475:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4460:3:74", + "nodeType": "YulIdentifier", + "src": "4460:3:74" + }, + "nativeSrc": "4460:17:74", + "nodeType": "YulFunctionCall", + "src": "4460:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4407:43:74", + "nodeType": "YulIdentifier", + "src": "4407:43:74" + }, + "nativeSrc": "4407:71:74", + "nodeType": "YulFunctionCall", + "src": "4407:71:74" + }, + "nativeSrc": "4407:71:74", + "nodeType": "YulExpressionStatement", + "src": "4407:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "4263:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4333:9:74", + "nodeType": "YulTypedName", + "src": "4333:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4345:6:74", + "nodeType": "YulTypedName", + "src": "4345:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4356:4:74", + "nodeType": "YulTypedName", + "src": "4356:4:74", + "type": "" + } + ], + "src": "4263:222:74" + }, + { + "body": { + "nativeSrc": "4534:79:74", + "nodeType": "YulBlock", + "src": "4534:79:74", + "statements": [ + { + "body": { + "nativeSrc": "4591:16:74", + "nodeType": "YulBlock", + "src": "4591:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "4600:1:74", + "nodeType": "YulLiteral", + "src": "4600:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "4603:1:74", + "nodeType": "YulLiteral", + "src": "4603:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "4593:6:74", + "nodeType": "YulIdentifier", + "src": "4593:6:74" + }, + "nativeSrc": "4593:12:74", + "nodeType": "YulFunctionCall", + "src": "4593:12:74" + }, + "nativeSrc": "4593:12:74", + "nodeType": "YulExpressionStatement", + "src": "4593:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4557:5:74", + "nodeType": "YulIdentifier", + "src": "4557:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4582:5:74", + "nodeType": "YulIdentifier", + "src": "4582:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4564:17:74", + "nodeType": "YulIdentifier", + "src": "4564:17:74" + }, + "nativeSrc": "4564:24:74", + "nodeType": "YulFunctionCall", + "src": "4564:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "4554:2:74", + "nodeType": "YulIdentifier", + "src": "4554:2:74" + }, + "nativeSrc": "4554:35:74", + "nodeType": "YulFunctionCall", + "src": "4554:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "4547:6:74", + "nodeType": "YulIdentifier", + "src": "4547:6:74" + }, + "nativeSrc": "4547:43:74", + "nodeType": "YulFunctionCall", + "src": "4547:43:74" + }, + "nativeSrc": "4544:63:74", + "nodeType": "YulIf", + "src": "4544:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "4491:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4527:5:74", + "nodeType": "YulTypedName", + "src": "4527:5:74", + "type": "" + } + ], + "src": "4491:122:74" + }, + { + "body": { + "nativeSrc": "4671:87:74", + "nodeType": "YulBlock", + "src": "4671:87:74", + "statements": [ + { + "nativeSrc": "4681:29:74", + "nodeType": "YulAssignment", + "src": "4681:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4703:6:74", + "nodeType": "YulIdentifier", + "src": "4703:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "4690:12:74", + "nodeType": "YulIdentifier", + "src": "4690:12:74" + }, + "nativeSrc": "4690:20:74", + "nodeType": "YulFunctionCall", + "src": "4690:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "4681:5:74", + "nodeType": "YulIdentifier", + "src": "4681:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4746:5:74", + "nodeType": "YulIdentifier", + "src": "4746:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "4719:26:74", + "nodeType": "YulIdentifier", + "src": "4719:26:74" + }, + "nativeSrc": "4719:33:74", + "nodeType": "YulFunctionCall", + "src": "4719:33:74" + }, + "nativeSrc": "4719:33:74", + "nodeType": "YulExpressionStatement", + "src": "4719:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "4619:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "4649:6:74", + "nodeType": "YulTypedName", + "src": "4649:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "4657:3:74", + "nodeType": "YulTypedName", + "src": "4657:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "4665:5:74", + "nodeType": "YulTypedName", + "src": "4665:5:74", + "type": "" + } + ], + "src": "4619:139:74" + }, + { + "body": { + "nativeSrc": "4847:391:74", + "nodeType": "YulBlock", + "src": "4847:391:74", + "statements": [ + { + "body": { + "nativeSrc": "4893:83:74", + "nodeType": "YulBlock", + "src": "4893:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "4895:77:74", + "nodeType": "YulIdentifier", + "src": "4895:77:74" + }, + "nativeSrc": "4895:79:74", + "nodeType": "YulFunctionCall", + "src": "4895:79:74" + }, + "nativeSrc": "4895:79:74", + "nodeType": "YulExpressionStatement", + "src": "4895:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "4868:7:74", + "nodeType": "YulIdentifier", + "src": "4868:7:74" + }, + { + "name": "headStart", + "nativeSrc": "4877:9:74", + "nodeType": "YulIdentifier", + "src": "4877:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4864:3:74", + "nodeType": "YulIdentifier", + "src": "4864:3:74" + }, + "nativeSrc": "4864:23:74", + "nodeType": "YulFunctionCall", + "src": "4864:23:74" + }, + { + "kind": "number", + "nativeSrc": "4889:2:74", + "nodeType": "YulLiteral", + "src": "4889:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "4860:3:74", + "nodeType": "YulIdentifier", + "src": "4860:3:74" + }, + "nativeSrc": "4860:32:74", + "nodeType": "YulFunctionCall", + "src": "4860:32:74" + }, + "nativeSrc": "4857:119:74", + "nodeType": "YulIf", + "src": "4857:119:74" + }, + { + "nativeSrc": "4986:117:74", + "nodeType": "YulBlock", + "src": "4986:117:74", + "statements": [ + { + "nativeSrc": "5001:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5001:15:74", + "value": { + "kind": "number", + "nativeSrc": "5015:1:74", + "nodeType": "YulLiteral", + "src": "5015:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5005:6:74", + "nodeType": "YulTypedName", + "src": "5005:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5030:63:74", + "nodeType": "YulAssignment", + "src": "5030:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5065:9:74", + "nodeType": "YulIdentifier", + "src": "5065:9:74" + }, + { + "name": "offset", + "nativeSrc": "5076:6:74", + "nodeType": "YulIdentifier", + "src": "5076:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5061:3:74", + "nodeType": "YulIdentifier", + "src": "5061:3:74" + }, + "nativeSrc": "5061:22:74", + "nodeType": "YulFunctionCall", + "src": "5061:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5085:7:74", + "nodeType": "YulIdentifier", + "src": "5085:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5040:20:74", + "nodeType": "YulIdentifier", + "src": "5040:20:74" + }, + "nativeSrc": "5040:53:74", + "nodeType": "YulFunctionCall", + "src": "5040:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5030:6:74", + "nodeType": "YulIdentifier", + "src": "5030:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5113:118:74", + "nodeType": "YulBlock", + "src": "5113:118:74", + "statements": [ + { + "nativeSrc": "5128:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5128:16:74", + "value": { + "kind": "number", + "nativeSrc": "5142:2:74", + "nodeType": "YulLiteral", + "src": "5142:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5132:6:74", + "nodeType": "YulTypedName", + "src": "5132:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5158:63:74", + "nodeType": "YulAssignment", + "src": "5158:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5193:9:74", + "nodeType": "YulIdentifier", + "src": "5193:9:74" + }, + { + "name": "offset", + "nativeSrc": "5204:6:74", + "nodeType": "YulIdentifier", + "src": "5204:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5189:3:74", + "nodeType": "YulIdentifier", + "src": "5189:3:74" + }, + "nativeSrc": "5189:22:74", + "nodeType": "YulFunctionCall", + "src": "5189:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5213:7:74", + "nodeType": "YulIdentifier", + "src": "5213:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "5168:20:74", + "nodeType": "YulIdentifier", + "src": "5168:20:74" + }, + "nativeSrc": "5168:53:74", + "nodeType": "YulFunctionCall", + "src": "5168:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5158:6:74", + "nodeType": "YulIdentifier", + "src": "5158:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nativeSrc": "4764:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4809:9:74", + "nodeType": "YulTypedName", + "src": "4809:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "4820:7:74", + "nodeType": "YulTypedName", + "src": "4820:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "4832:6:74", + "nodeType": "YulTypedName", + "src": "4832:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4840:6:74", + "nodeType": "YulTypedName", + "src": "4840:6:74", + "type": "" + } + ], + "src": "4764:474:74" + }, + { + "body": { + "nativeSrc": "5344:519:74", + "nodeType": "YulBlock", + "src": "5344:519:74", + "statements": [ + { + "body": { + "nativeSrc": "5390:83:74", + "nodeType": "YulBlock", + "src": "5390:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5392:77:74", + "nodeType": "YulIdentifier", + "src": "5392:77:74" + }, + "nativeSrc": "5392:79:74", + "nodeType": "YulFunctionCall", + "src": "5392:79:74" + }, + "nativeSrc": "5392:79:74", + "nodeType": "YulExpressionStatement", + "src": "5392:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5365:7:74", + "nodeType": "YulIdentifier", + "src": "5365:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5374:9:74", + "nodeType": "YulIdentifier", + "src": "5374:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5361:3:74", + "nodeType": "YulIdentifier", + "src": "5361:3:74" + }, + "nativeSrc": "5361:23:74", + "nodeType": "YulFunctionCall", + "src": "5361:23:74" + }, + { + "kind": "number", + "nativeSrc": "5386:2:74", + "nodeType": "YulLiteral", + "src": "5386:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5357:3:74", + "nodeType": "YulIdentifier", + "src": "5357:3:74" + }, + "nativeSrc": "5357:32:74", + "nodeType": "YulFunctionCall", + "src": "5357:32:74" + }, + "nativeSrc": "5354:119:74", + "nodeType": "YulIf", + "src": "5354:119:74" + }, + { + "nativeSrc": "5483:117:74", + "nodeType": "YulBlock", + "src": "5483:117:74", + "statements": [ + { + "nativeSrc": "5498:15:74", + "nodeType": "YulVariableDeclaration", + "src": "5498:15:74", + "value": { + "kind": "number", + "nativeSrc": "5512:1:74", + "nodeType": "YulLiteral", + "src": "5512:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5502:6:74", + "nodeType": "YulTypedName", + "src": "5502:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5527:63:74", + "nodeType": "YulAssignment", + "src": "5527:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5562:9:74", + "nodeType": "YulIdentifier", + "src": "5562:9:74" + }, + { + "name": "offset", + "nativeSrc": "5573:6:74", + "nodeType": "YulIdentifier", + "src": "5573:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5558:3:74", + "nodeType": "YulIdentifier", + "src": "5558:3:74" + }, + "nativeSrc": "5558:22:74", + "nodeType": "YulFunctionCall", + "src": "5558:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5582:7:74", + "nodeType": "YulIdentifier", + "src": "5582:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5537:20:74", + "nodeType": "YulIdentifier", + "src": "5537:20:74" + }, + "nativeSrc": "5537:53:74", + "nodeType": "YulFunctionCall", + "src": "5537:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "5527:6:74", + "nodeType": "YulIdentifier", + "src": "5527:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5610:118:74", + "nodeType": "YulBlock", + "src": "5610:118:74", + "statements": [ + { + "nativeSrc": "5625:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5625:16:74", + "value": { + "kind": "number", + "nativeSrc": "5639:2:74", + "nodeType": "YulLiteral", + "src": "5639:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5629:6:74", + "nodeType": "YulTypedName", + "src": "5629:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5655:63:74", + "nodeType": "YulAssignment", + "src": "5655:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5690:9:74", + "nodeType": "YulIdentifier", + "src": "5690:9:74" + }, + { + "name": "offset", + "nativeSrc": "5701:6:74", + "nodeType": "YulIdentifier", + "src": "5701:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5686:3:74", + "nodeType": "YulIdentifier", + "src": "5686:3:74" + }, + "nativeSrc": "5686:22:74", + "nodeType": "YulFunctionCall", + "src": "5686:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5710:7:74", + "nodeType": "YulIdentifier", + "src": "5710:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "5665:20:74", + "nodeType": "YulIdentifier", + "src": "5665:20:74" + }, + "nativeSrc": "5665:53:74", + "nodeType": "YulFunctionCall", + "src": "5665:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "5655:6:74", + "nodeType": "YulIdentifier", + "src": "5655:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "5738:118:74", + "nodeType": "YulBlock", + "src": "5738:118:74", + "statements": [ + { + "nativeSrc": "5753:16:74", + "nodeType": "YulVariableDeclaration", + "src": "5753:16:74", + "value": { + "kind": "number", + "nativeSrc": "5767:2:74", + "nodeType": "YulLiteral", + "src": "5767:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "5757:6:74", + "nodeType": "YulTypedName", + "src": "5757:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "5783:63:74", + "nodeType": "YulAssignment", + "src": "5783:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5818:9:74", + "nodeType": "YulIdentifier", + "src": "5818:9:74" + }, + { + "name": "offset", + "nativeSrc": "5829:6:74", + "nodeType": "YulIdentifier", + "src": "5829:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5814:3:74", + "nodeType": "YulIdentifier", + "src": "5814:3:74" + }, + "nativeSrc": "5814:22:74", + "nodeType": "YulFunctionCall", + "src": "5814:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "5838:7:74", + "nodeType": "YulIdentifier", + "src": "5838:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "5793:20:74", + "nodeType": "YulIdentifier", + "src": "5793:20:74" + }, + "nativeSrc": "5793:53:74", + "nodeType": "YulFunctionCall", + "src": "5793:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "5783:6:74", + "nodeType": "YulIdentifier", + "src": "5783:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nativeSrc": "5244:619:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5298:9:74", + "nodeType": "YulTypedName", + "src": "5298:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5309:7:74", + "nodeType": "YulTypedName", + "src": "5309:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5321:6:74", + "nodeType": "YulTypedName", + "src": "5321:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "5329:6:74", + "nodeType": "YulTypedName", + "src": "5329:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "5337:6:74", + "nodeType": "YulTypedName", + "src": "5337:6:74", + "type": "" + } + ], + "src": "5244:619:74" + }, + { + "body": { + "nativeSrc": "5935:263:74", + "nodeType": "YulBlock", + "src": "5935:263:74", + "statements": [ + { + "body": { + "nativeSrc": "5981:83:74", + "nodeType": "YulBlock", + "src": "5981:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "5983:77:74", + "nodeType": "YulIdentifier", + "src": "5983:77:74" + }, + "nativeSrc": "5983:79:74", + "nodeType": "YulFunctionCall", + "src": "5983:79:74" + }, + "nativeSrc": "5983:79:74", + "nodeType": "YulExpressionStatement", + "src": "5983:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "5956:7:74", + "nodeType": "YulIdentifier", + "src": "5956:7:74" + }, + { + "name": "headStart", + "nativeSrc": "5965:9:74", + "nodeType": "YulIdentifier", + "src": "5965:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5952:3:74", + "nodeType": "YulIdentifier", + "src": "5952:3:74" + }, + "nativeSrc": "5952:23:74", + "nodeType": "YulFunctionCall", + "src": "5952:23:74" + }, + { + "kind": "number", + "nativeSrc": "5977:2:74", + "nodeType": "YulLiteral", + "src": "5977:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5948:3:74", + "nodeType": "YulIdentifier", + "src": "5948:3:74" + }, + "nativeSrc": "5948:32:74", + "nodeType": "YulFunctionCall", + "src": "5948:32:74" + }, + "nativeSrc": "5945:119:74", + "nodeType": "YulIf", + "src": "5945:119:74" + }, + { + "nativeSrc": "6074:117:74", + "nodeType": "YulBlock", + "src": "6074:117:74", + "statements": [ + { + "nativeSrc": "6089:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6089:15:74", + "value": { + "kind": "number", + "nativeSrc": "6103:1:74", + "nodeType": "YulLiteral", + "src": "6103:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6093:6:74", + "nodeType": "YulTypedName", + "src": "6093:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6118:63:74", + "nodeType": "YulAssignment", + "src": "6118:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6153:9:74", + "nodeType": "YulIdentifier", + "src": "6153:9:74" + }, + { + "name": "offset", + "nativeSrc": "6164:6:74", + "nodeType": "YulIdentifier", + "src": "6164:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6149:3:74", + "nodeType": "YulIdentifier", + "src": "6149:3:74" + }, + "nativeSrc": "6149:22:74", + "nodeType": "YulFunctionCall", + "src": "6149:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6173:7:74", + "nodeType": "YulIdentifier", + "src": "6173:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6128:20:74", + "nodeType": "YulIdentifier", + "src": "6128:20:74" + }, + "nativeSrc": "6128:53:74", + "nodeType": "YulFunctionCall", + "src": "6128:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6118:6:74", + "nodeType": "YulIdentifier", + "src": "6118:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nativeSrc": "5869:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5905:9:74", + "nodeType": "YulTypedName", + "src": "5905:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "5916:7:74", + "nodeType": "YulTypedName", + "src": "5916:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "5928:6:74", + "nodeType": "YulTypedName", + "src": "5928:6:74", + "type": "" + } + ], + "src": "5869:329:74" + }, + { + "body": { + "nativeSrc": "6244:76:74", + "nodeType": "YulBlock", + "src": "6244:76:74", + "statements": [ + { + "body": { + "nativeSrc": "6298:16:74", + "nodeType": "YulBlock", + "src": "6298:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "6307:1:74", + "nodeType": "YulLiteral", + "src": "6307:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "6310:1:74", + "nodeType": "YulLiteral", + "src": "6310:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "6300:6:74", + "nodeType": "YulIdentifier", + "src": "6300:6:74" + }, + "nativeSrc": "6300:12:74", + "nodeType": "YulFunctionCall", + "src": "6300:12:74" + }, + "nativeSrc": "6300:12:74", + "nodeType": "YulExpressionStatement", + "src": "6300:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6267:5:74", + "nodeType": "YulIdentifier", + "src": "6267:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6289:5:74", + "nodeType": "YulIdentifier", + "src": "6289:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "6274:14:74", + "nodeType": "YulIdentifier", + "src": "6274:14:74" + }, + "nativeSrc": "6274:21:74", + "nodeType": "YulFunctionCall", + "src": "6274:21:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "6264:2:74", + "nodeType": "YulIdentifier", + "src": "6264:2:74" + }, + "nativeSrc": "6264:32:74", + "nodeType": "YulFunctionCall", + "src": "6264:32:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "6257:6:74", + "nodeType": "YulIdentifier", + "src": "6257:6:74" + }, + "nativeSrc": "6257:40:74", + "nodeType": "YulFunctionCall", + "src": "6257:40:74" + }, + "nativeSrc": "6254:60:74", + "nodeType": "YulIf", + "src": "6254:60:74" + } + ] + }, + "name": "validator_revert_t_bool", + "nativeSrc": "6204:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6237:5:74", + "nodeType": "YulTypedName", + "src": "6237:5:74", + "type": "" + } + ], + "src": "6204:116:74" + }, + { + "body": { + "nativeSrc": "6375:84:74", + "nodeType": "YulBlock", + "src": "6375:84:74", + "statements": [ + { + "nativeSrc": "6385:29:74", + "nodeType": "YulAssignment", + "src": "6385:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6407:6:74", + "nodeType": "YulIdentifier", + "src": "6407:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6394:12:74", + "nodeType": "YulIdentifier", + "src": "6394:12:74" + }, + "nativeSrc": "6394:20:74", + "nodeType": "YulFunctionCall", + "src": "6394:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "6385:5:74", + "nodeType": "YulIdentifier", + "src": "6385:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "6447:5:74", + "nodeType": "YulIdentifier", + "src": "6447:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nativeSrc": "6423:23:74", + "nodeType": "YulIdentifier", + "src": "6423:23:74" + }, + "nativeSrc": "6423:30:74", + "nodeType": "YulFunctionCall", + "src": "6423:30:74" + }, + "nativeSrc": "6423:30:74", + "nodeType": "YulExpressionStatement", + "src": "6423:30:74" + } + ] + }, + "name": "abi_decode_t_bool", + "nativeSrc": "6326:133:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "6353:6:74", + "nodeType": "YulTypedName", + "src": "6353:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "6361:3:74", + "nodeType": "YulTypedName", + "src": "6361:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "6369:5:74", + "nodeType": "YulTypedName", + "src": "6369:5:74", + "type": "" + } + ], + "src": "6326:133:74" + }, + { + "body": { + "nativeSrc": "6545:388:74", + "nodeType": "YulBlock", + "src": "6545:388:74", + "statements": [ + { + "body": { + "nativeSrc": "6591:83:74", + "nodeType": "YulBlock", + "src": "6591:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6593:77:74", + "nodeType": "YulIdentifier", + "src": "6593:77:74" + }, + "nativeSrc": "6593:79:74", + "nodeType": "YulFunctionCall", + "src": "6593:79:74" + }, + "nativeSrc": "6593:79:74", + "nodeType": "YulExpressionStatement", + "src": "6593:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6566:7:74", + "nodeType": "YulIdentifier", + "src": "6566:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6575:9:74", + "nodeType": "YulIdentifier", + "src": "6575:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6562:3:74", + "nodeType": "YulIdentifier", + "src": "6562:3:74" + }, + "nativeSrc": "6562:23:74", + "nodeType": "YulFunctionCall", + "src": "6562:23:74" + }, + { + "kind": "number", + "nativeSrc": "6587:2:74", + "nodeType": "YulLiteral", + "src": "6587:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6558:3:74", + "nodeType": "YulIdentifier", + "src": "6558:3:74" + }, + "nativeSrc": "6558:32:74", + "nodeType": "YulFunctionCall", + "src": "6558:32:74" + }, + "nativeSrc": "6555:119:74", + "nodeType": "YulIf", + "src": "6555:119:74" + }, + { + "nativeSrc": "6684:117:74", + "nodeType": "YulBlock", + "src": "6684:117:74", + "statements": [ + { + "nativeSrc": "6699:15:74", + "nodeType": "YulVariableDeclaration", + "src": "6699:15:74", + "value": { + "kind": "number", + "nativeSrc": "6713:1:74", + "nodeType": "YulLiteral", + "src": "6713:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6703:6:74", + "nodeType": "YulTypedName", + "src": "6703:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6728:63:74", + "nodeType": "YulAssignment", + "src": "6728:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6763:9:74", + "nodeType": "YulIdentifier", + "src": "6763:9:74" + }, + { + "name": "offset", + "nativeSrc": "6774:6:74", + "nodeType": "YulIdentifier", + "src": "6774:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6759:3:74", + "nodeType": "YulIdentifier", + "src": "6759:3:74" + }, + "nativeSrc": "6759:22:74", + "nodeType": "YulFunctionCall", + "src": "6759:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6783:7:74", + "nodeType": "YulIdentifier", + "src": "6783:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "6738:20:74", + "nodeType": "YulIdentifier", + "src": "6738:20:74" + }, + "nativeSrc": "6738:53:74", + "nodeType": "YulFunctionCall", + "src": "6738:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6728:6:74", + "nodeType": "YulIdentifier", + "src": "6728:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "6811:115:74", + "nodeType": "YulBlock", + "src": "6811:115:74", + "statements": [ + { + "nativeSrc": "6826:16:74", + "nodeType": "YulVariableDeclaration", + "src": "6826:16:74", + "value": { + "kind": "number", + "nativeSrc": "6840:2:74", + "nodeType": "YulLiteral", + "src": "6840:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6830:6:74", + "nodeType": "YulTypedName", + "src": "6830:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "6856:60:74", + "nodeType": "YulAssignment", + "src": "6856:60:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6888:9:74", + "nodeType": "YulIdentifier", + "src": "6888:9:74" + }, + { + "name": "offset", + "nativeSrc": "6899:6:74", + "nodeType": "YulIdentifier", + "src": "6899:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6884:3:74", + "nodeType": "YulIdentifier", + "src": "6884:3:74" + }, + "nativeSrc": "6884:22:74", + "nodeType": "YulFunctionCall", + "src": "6884:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6908:7:74", + "nodeType": "YulIdentifier", + "src": "6908:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nativeSrc": "6866:17:74", + "nodeType": "YulIdentifier", + "src": "6866:17:74" + }, + "nativeSrc": "6866:50:74", + "nodeType": "YulFunctionCall", + "src": "6866:50:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "6856:6:74", + "nodeType": "YulIdentifier", + "src": "6856:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nativeSrc": "6465:468:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6507:9:74", + "nodeType": "YulTypedName", + "src": "6507:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6518:7:74", + "nodeType": "YulTypedName", + "src": "6518:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6530:6:74", + "nodeType": "YulTypedName", + "src": "6530:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6538:6:74", + "nodeType": "YulTypedName", + "src": "6538:6:74", + "type": "" + } + ], + "src": "6465:468:74" + }, + { + "body": { + "nativeSrc": "7028:28:74", + "nodeType": "YulBlock", + "src": "7028:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7045:1:74", + "nodeType": "YulLiteral", + "src": "7045:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7048:1:74", + "nodeType": "YulLiteral", + "src": "7048:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7038:6:74", + "nodeType": "YulIdentifier", + "src": "7038:6:74" + }, + "nativeSrc": "7038:12:74", + "nodeType": "YulFunctionCall", + "src": "7038:12:74" + }, + "nativeSrc": "7038:12:74", + "nodeType": "YulExpressionStatement", + "src": "7038:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "6939:117:74", + "nodeType": "YulFunctionDefinition", + "src": "6939:117:74" + }, + { + "body": { + "nativeSrc": "7151:28:74", + "nodeType": "YulBlock", + "src": "7151:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7168:1:74", + "nodeType": "YulLiteral", + "src": "7168:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7171:1:74", + "nodeType": "YulLiteral", + "src": "7171:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7161:6:74", + "nodeType": "YulIdentifier", + "src": "7161:6:74" + }, + "nativeSrc": "7161:12:74", + "nodeType": "YulFunctionCall", + "src": "7161:12:74" + }, + "nativeSrc": "7161:12:74", + "nodeType": "YulExpressionStatement", + "src": "7161:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "7062:117:74", + "nodeType": "YulFunctionDefinition", + "src": "7062:117:74" + }, + { + "body": { + "nativeSrc": "7213:152:74", + "nodeType": "YulBlock", + "src": "7213:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7230:1:74", + "nodeType": "YulLiteral", + "src": "7230:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7233:77:74", + "nodeType": "YulLiteral", + "src": "7233:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7223:6:74", + "nodeType": "YulIdentifier", + "src": "7223:6:74" + }, + "nativeSrc": "7223:88:74", + "nodeType": "YulFunctionCall", + "src": "7223:88:74" + }, + "nativeSrc": "7223:88:74", + "nodeType": "YulExpressionStatement", + "src": "7223:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7327:1:74", + "nodeType": "YulLiteral", + "src": "7327:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "7330:4:74", + "nodeType": "YulLiteral", + "src": "7330:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7320:6:74", + "nodeType": "YulIdentifier", + "src": "7320:6:74" + }, + "nativeSrc": "7320:15:74", + "nodeType": "YulFunctionCall", + "src": "7320:15:74" + }, + "nativeSrc": "7320:15:74", + "nodeType": "YulExpressionStatement", + "src": "7320:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7351:1:74", + "nodeType": "YulLiteral", + "src": "7351:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "7354:4:74", + "nodeType": "YulLiteral", + "src": "7354:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "7344:6:74", + "nodeType": "YulIdentifier", + "src": "7344:6:74" + }, + "nativeSrc": "7344:15:74", + "nodeType": "YulFunctionCall", + "src": "7344:15:74" + }, + "nativeSrc": "7344:15:74", + "nodeType": "YulExpressionStatement", + "src": "7344:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "7185:180:74", + "nodeType": "YulFunctionDefinition", + "src": "7185:180:74" + }, + { + "body": { + "nativeSrc": "7414:238:74", + "nodeType": "YulBlock", + "src": "7414:238:74", + "statements": [ + { + "nativeSrc": "7424:58:74", + "nodeType": "YulVariableDeclaration", + "src": "7424:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "7446:6:74", + "nodeType": "YulIdentifier", + "src": "7446:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "7476:4:74", + "nodeType": "YulIdentifier", + "src": "7476:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "7454:21:74", + "nodeType": "YulIdentifier", + "src": "7454:21:74" + }, + "nativeSrc": "7454:27:74", + "nodeType": "YulFunctionCall", + "src": "7454:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7442:3:74", + "nodeType": "YulIdentifier", + "src": "7442:3:74" + }, + "nativeSrc": "7442:40:74", + "nodeType": "YulFunctionCall", + "src": "7442:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "7428:10:74", + "nodeType": "YulTypedName", + "src": "7428:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "7593:22:74", + "nodeType": "YulBlock", + "src": "7593:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7595:16:74", + "nodeType": "YulIdentifier", + "src": "7595:16:74" + }, + "nativeSrc": "7595:18:74", + "nodeType": "YulFunctionCall", + "src": "7595:18:74" + }, + "nativeSrc": "7595:18:74", + "nodeType": "YulExpressionStatement", + "src": "7595:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "7536:10:74", + "nodeType": "YulIdentifier", + "src": "7536:10:74" + }, + { + "kind": "number", + "nativeSrc": "7548:18:74", + "nodeType": "YulLiteral", + "src": "7548:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7533:2:74", + "nodeType": "YulIdentifier", + "src": "7533:2:74" + }, + "nativeSrc": "7533:34:74", + "nodeType": "YulFunctionCall", + "src": "7533:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "7572:10:74", + "nodeType": "YulIdentifier", + "src": "7572:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "7584:6:74", + "nodeType": "YulIdentifier", + "src": "7584:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "7569:2:74", + "nodeType": "YulIdentifier", + "src": "7569:2:74" + }, + "nativeSrc": "7569:22:74", + "nodeType": "YulFunctionCall", + "src": "7569:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "7530:2:74", + "nodeType": "YulIdentifier", + "src": "7530:2:74" + }, + "nativeSrc": "7530:62:74", + "nodeType": "YulFunctionCall", + "src": "7530:62:74" + }, + "nativeSrc": "7527:88:74", + "nodeType": "YulIf", + "src": "7527:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "7631:2:74", + "nodeType": "YulLiteral", + "src": "7631:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "7635:10:74", + "nodeType": "YulIdentifier", + "src": "7635:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7624:6:74", + "nodeType": "YulIdentifier", + "src": "7624:6:74" + }, + "nativeSrc": "7624:22:74", + "nodeType": "YulFunctionCall", + "src": "7624:22:74" + }, + "nativeSrc": "7624:22:74", + "nodeType": "YulExpressionStatement", + "src": "7624:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "7371:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "7400:6:74", + "nodeType": "YulTypedName", + "src": "7400:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "7408:4:74", + "nodeType": "YulTypedName", + "src": "7408:4:74", + "type": "" + } + ], + "src": "7371:281:74" + }, + { + "body": { + "nativeSrc": "7699:88:74", + "nodeType": "YulBlock", + "src": "7699:88:74", + "statements": [ + { + "nativeSrc": "7709:30:74", + "nodeType": "YulAssignment", + "src": "7709:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "7719:18:74", + "nodeType": "YulIdentifier", + "src": "7719:18:74" + }, + "nativeSrc": "7719:20:74", + "nodeType": "YulFunctionCall", + "src": "7719:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "7709:6:74", + "nodeType": "YulIdentifier", + "src": "7709:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "7768:6:74", + "nodeType": "YulIdentifier", + "src": "7768:6:74" + }, + { + "name": "size", + "nativeSrc": "7776:4:74", + "nodeType": "YulIdentifier", + "src": "7776:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "7748:19:74", + "nodeType": "YulIdentifier", + "src": "7748:19:74" + }, + "nativeSrc": "7748:33:74", + "nodeType": "YulFunctionCall", + "src": "7748:33:74" + }, + "nativeSrc": "7748:33:74", + "nodeType": "YulExpressionStatement", + "src": "7748:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "7658:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "7683:4:74", + "nodeType": "YulTypedName", + "src": "7683:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "7692:6:74", + "nodeType": "YulTypedName", + "src": "7692:6:74", + "type": "" + } + ], + "src": "7658:129:74" + }, + { + "body": { + "nativeSrc": "7859:241:74", + "nodeType": "YulBlock", + "src": "7859:241:74", + "statements": [ + { + "body": { + "nativeSrc": "7964:22:74", + "nodeType": "YulBlock", + "src": "7964:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "7966:16:74", + "nodeType": "YulIdentifier", + "src": "7966:16:74" + }, + "nativeSrc": "7966:18:74", + "nodeType": "YulFunctionCall", + "src": "7966:18:74" + }, + "nativeSrc": "7966:18:74", + "nodeType": "YulExpressionStatement", + "src": "7966:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "7936:6:74", + "nodeType": "YulIdentifier", + "src": "7936:6:74" + }, + { + "kind": "number", + "nativeSrc": "7944:18:74", + "nodeType": "YulLiteral", + "src": "7944:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "7933:2:74", + "nodeType": "YulIdentifier", + "src": "7933:2:74" + }, + "nativeSrc": "7933:30:74", + "nodeType": "YulFunctionCall", + "src": "7933:30:74" + }, + "nativeSrc": "7930:56:74", + "nodeType": "YulIf", + "src": "7930:56:74" + }, + { + "nativeSrc": "7996:37:74", + "nodeType": "YulAssignment", + "src": "7996:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "8026:6:74", + "nodeType": "YulIdentifier", + "src": "8026:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "8004:21:74", + "nodeType": "YulIdentifier", + "src": "8004:21:74" + }, + "nativeSrc": "8004:29:74", + "nodeType": "YulFunctionCall", + "src": "8004:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "7996:4:74", + "nodeType": "YulIdentifier", + "src": "7996:4:74" + } + ] + }, + { + "nativeSrc": "8070:23:74", + "nodeType": "YulAssignment", + "src": "8070:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "8082:4:74", + "nodeType": "YulIdentifier", + "src": "8082:4:74" + }, + { + "kind": "number", + "nativeSrc": "8088:4:74", + "nodeType": "YulLiteral", + "src": "8088:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8078:3:74", + "nodeType": "YulIdentifier", + "src": "8078:3:74" + }, + "nativeSrc": "8078:15:74", + "nodeType": "YulFunctionCall", + "src": "8078:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "8070:4:74", + "nodeType": "YulIdentifier", + "src": "8070:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "7793:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "7843:6:74", + "nodeType": "YulTypedName", + "src": "7843:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "7854:4:74", + "nodeType": "YulTypedName", + "src": "7854:4:74", + "type": "" + } + ], + "src": "7793:307:74" + }, + { + "body": { + "nativeSrc": "8170:84:74", + "nodeType": "YulBlock", + "src": "8170:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "8194:3:74", + "nodeType": "YulIdentifier", + "src": "8194:3:74" + }, + { + "name": "src", + "nativeSrc": "8199:3:74", + "nodeType": "YulIdentifier", + "src": "8199:3:74" + }, + { + "name": "length", + "nativeSrc": "8204:6:74", + "nodeType": "YulIdentifier", + "src": "8204:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "8181:12:74", + "nodeType": "YulIdentifier", + "src": "8181:12:74" + }, + "nativeSrc": "8181:30:74", + "nodeType": "YulFunctionCall", + "src": "8181:30:74" + }, + "nativeSrc": "8181:30:74", + "nodeType": "YulExpressionStatement", + "src": "8181:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "8231:3:74", + "nodeType": "YulIdentifier", + "src": "8231:3:74" + }, + { + "name": "length", + "nativeSrc": "8236:6:74", + "nodeType": "YulIdentifier", + "src": "8236:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8227:3:74", + "nodeType": "YulIdentifier", + "src": "8227:3:74" + }, + "nativeSrc": "8227:16:74", + "nodeType": "YulFunctionCall", + "src": "8227:16:74" + }, + { + "kind": "number", + "nativeSrc": "8245:1:74", + "nodeType": "YulLiteral", + "src": "8245:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8220:6:74", + "nodeType": "YulIdentifier", + "src": "8220:6:74" + }, + "nativeSrc": "8220:27:74", + "nodeType": "YulFunctionCall", + "src": "8220:27:74" + }, + "nativeSrc": "8220:27:74", + "nodeType": "YulExpressionStatement", + "src": "8220:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "8106:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "8152:3:74", + "nodeType": "YulTypedName", + "src": "8152:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "8157:3:74", + "nodeType": "YulTypedName", + "src": "8157:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8162:6:74", + "nodeType": "YulTypedName", + "src": "8162:6:74", + "type": "" + } + ], + "src": "8106:148:74" + }, + { + "body": { + "nativeSrc": "8343:340:74", + "nodeType": "YulBlock", + "src": "8343:340:74", + "statements": [ + { + "nativeSrc": "8353:74:74", + "nodeType": "YulAssignment", + "src": "8353:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "8419:6:74", + "nodeType": "YulIdentifier", + "src": "8419:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "8378:40:74", + "nodeType": "YulIdentifier", + "src": "8378:40:74" + }, + "nativeSrc": "8378:48:74", + "nodeType": "YulFunctionCall", + "src": "8378:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "8362:15:74", + "nodeType": "YulIdentifier", + "src": "8362:15:74" + }, + "nativeSrc": "8362:65:74", + "nodeType": "YulFunctionCall", + "src": "8362:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8353:5:74", + "nodeType": "YulIdentifier", + "src": "8353:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8443:5:74", + "nodeType": "YulIdentifier", + "src": "8443:5:74" + }, + { + "name": "length", + "nativeSrc": "8450:6:74", + "nodeType": "YulIdentifier", + "src": "8450:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8436:6:74", + "nodeType": "YulIdentifier", + "src": "8436:6:74" + }, + "nativeSrc": "8436:21:74", + "nodeType": "YulFunctionCall", + "src": "8436:21:74" + }, + "nativeSrc": "8436:21:74", + "nodeType": "YulExpressionStatement", + "src": "8436:21:74" + }, + { + "nativeSrc": "8466:27:74", + "nodeType": "YulVariableDeclaration", + "src": "8466:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "8481:5:74", + "nodeType": "YulIdentifier", + "src": "8481:5:74" + }, + { + "kind": "number", + "nativeSrc": "8488:4:74", + "nodeType": "YulLiteral", + "src": "8488:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8477:3:74", + "nodeType": "YulIdentifier", + "src": "8477:3:74" + }, + "nativeSrc": "8477:16:74", + "nodeType": "YulFunctionCall", + "src": "8477:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "8470:3:74", + "nodeType": "YulTypedName", + "src": "8470:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8531:83:74", + "nodeType": "YulBlock", + "src": "8531:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "8533:77:74", + "nodeType": "YulIdentifier", + "src": "8533:77:74" + }, + "nativeSrc": "8533:79:74", + "nodeType": "YulFunctionCall", + "src": "8533:79:74" + }, + "nativeSrc": "8533:79:74", + "nodeType": "YulExpressionStatement", + "src": "8533:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "8512:3:74", + "nodeType": "YulIdentifier", + "src": "8512:3:74" + }, + { + "name": "length", + "nativeSrc": "8517:6:74", + "nodeType": "YulIdentifier", + "src": "8517:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8508:3:74", + "nodeType": "YulIdentifier", + "src": "8508:3:74" + }, + "nativeSrc": "8508:16:74", + "nodeType": "YulFunctionCall", + "src": "8508:16:74" + }, + { + "name": "end", + "nativeSrc": "8526:3:74", + "nodeType": "YulIdentifier", + "src": "8526:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8505:2:74", + "nodeType": "YulIdentifier", + "src": "8505:2:74" + }, + "nativeSrc": "8505:25:74", + "nodeType": "YulFunctionCall", + "src": "8505:25:74" + }, + "nativeSrc": "8502:112:74", + "nodeType": "YulIf", + "src": "8502:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "8660:3:74", + "nodeType": "YulIdentifier", + "src": "8660:3:74" + }, + { + "name": "dst", + "nativeSrc": "8665:3:74", + "nodeType": "YulIdentifier", + "src": "8665:3:74" + }, + { + "name": "length", + "nativeSrc": "8670:6:74", + "nodeType": "YulIdentifier", + "src": "8670:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "8623:36:74", + "nodeType": "YulIdentifier", + "src": "8623:36:74" + }, + "nativeSrc": "8623:54:74", + "nodeType": "YulFunctionCall", + "src": "8623:54:74" + }, + "nativeSrc": "8623:54:74", + "nodeType": "YulExpressionStatement", + "src": "8623:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8260:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "8316:3:74", + "nodeType": "YulTypedName", + "src": "8316:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "8321:6:74", + "nodeType": "YulTypedName", + "src": "8321:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8329:3:74", + "nodeType": "YulTypedName", + "src": "8329:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8337:5:74", + "nodeType": "YulTypedName", + "src": "8337:5:74", + "type": "" + } + ], + "src": "8260:423:74" + }, + { + "body": { + "nativeSrc": "8763:277:74", + "nodeType": "YulBlock", + "src": "8763:277:74", + "statements": [ + { + "body": { + "nativeSrc": "8812:83:74", + "nodeType": "YulBlock", + "src": "8812:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "8814:77:74", + "nodeType": "YulIdentifier", + "src": "8814:77:74" + }, + "nativeSrc": "8814:79:74", + "nodeType": "YulFunctionCall", + "src": "8814:79:74" + }, + "nativeSrc": "8814:79:74", + "nodeType": "YulExpressionStatement", + "src": "8814:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8791:6:74", + "nodeType": "YulIdentifier", + "src": "8791:6:74" + }, + { + "kind": "number", + "nativeSrc": "8799:4:74", + "nodeType": "YulLiteral", + "src": "8799:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8787:3:74", + "nodeType": "YulIdentifier", + "src": "8787:3:74" + }, + "nativeSrc": "8787:17:74", + "nodeType": "YulFunctionCall", + "src": "8787:17:74" + }, + { + "name": "end", + "nativeSrc": "8806:3:74", + "nodeType": "YulIdentifier", + "src": "8806:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8783:3:74", + "nodeType": "YulIdentifier", + "src": "8783:3:74" + }, + "nativeSrc": "8783:27:74", + "nodeType": "YulFunctionCall", + "src": "8783:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "8776:6:74", + "nodeType": "YulIdentifier", + "src": "8776:6:74" + }, + "nativeSrc": "8776:35:74", + "nodeType": "YulFunctionCall", + "src": "8776:35:74" + }, + "nativeSrc": "8773:122:74", + "nodeType": "YulIf", + "src": "8773:122:74" + }, + { + "nativeSrc": "8904:34:74", + "nodeType": "YulVariableDeclaration", + "src": "8904:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8931:6:74", + "nodeType": "YulIdentifier", + "src": "8931:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8918:12:74", + "nodeType": "YulIdentifier", + "src": "8918:12:74" + }, + "nativeSrc": "8918:20:74", + "nodeType": "YulFunctionCall", + "src": "8918:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "8908:6:74", + "nodeType": "YulTypedName", + "src": "8908:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "8947:87:74", + "nodeType": "YulAssignment", + "src": "8947:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9007:6:74", + "nodeType": "YulIdentifier", + "src": "9007:6:74" + }, + { + "kind": "number", + "nativeSrc": "9015:4:74", + "nodeType": "YulLiteral", + "src": "9015:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9003:3:74", + "nodeType": "YulIdentifier", + "src": "9003:3:74" + }, + "nativeSrc": "9003:17:74", + "nodeType": "YulFunctionCall", + "src": "9003:17:74" + }, + { + "name": "length", + "nativeSrc": "9022:6:74", + "nodeType": "YulIdentifier", + "src": "9022:6:74" + }, + { + "name": "end", + "nativeSrc": "9030:3:74", + "nodeType": "YulIdentifier", + "src": "9030:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "8956:46:74", + "nodeType": "YulIdentifier", + "src": "8956:46:74" + }, + "nativeSrc": "8956:78:74", + "nodeType": "YulFunctionCall", + "src": "8956:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "8947:5:74", + "nodeType": "YulIdentifier", + "src": "8947:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "8702:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "8741:6:74", + "nodeType": "YulTypedName", + "src": "8741:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "8749:3:74", + "nodeType": "YulTypedName", + "src": "8749:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "8757:5:74", + "nodeType": "YulTypedName", + "src": "8757:5:74", + "type": "" + } + ], + "src": "8702:338:74" + }, + { + "body": { + "nativeSrc": "9172:817:74", + "nodeType": "YulBlock", + "src": "9172:817:74", + "statements": [ + { + "body": { + "nativeSrc": "9219:83:74", + "nodeType": "YulBlock", + "src": "9219:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "9221:77:74", + "nodeType": "YulIdentifier", + "src": "9221:77:74" + }, + "nativeSrc": "9221:79:74", + "nodeType": "YulFunctionCall", + "src": "9221:79:74" + }, + "nativeSrc": "9221:79:74", + "nodeType": "YulExpressionStatement", + "src": "9221:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "9193:7:74", + "nodeType": "YulIdentifier", + "src": "9193:7:74" + }, + { + "name": "headStart", + "nativeSrc": "9202:9:74", + "nodeType": "YulIdentifier", + "src": "9202:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "9189:3:74", + "nodeType": "YulIdentifier", + "src": "9189:3:74" + }, + "nativeSrc": "9189:23:74", + "nodeType": "YulFunctionCall", + "src": "9189:23:74" + }, + { + "kind": "number", + "nativeSrc": "9214:3:74", + "nodeType": "YulLiteral", + "src": "9214:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "9185:3:74", + "nodeType": "YulIdentifier", + "src": "9185:3:74" + }, + "nativeSrc": "9185:33:74", + "nodeType": "YulFunctionCall", + "src": "9185:33:74" + }, + "nativeSrc": "9182:120:74", + "nodeType": "YulIf", + "src": "9182:120:74" + }, + { + "nativeSrc": "9312:117:74", + "nodeType": "YulBlock", + "src": "9312:117:74", + "statements": [ + { + "nativeSrc": "9327:15:74", + "nodeType": "YulVariableDeclaration", + "src": "9327:15:74", + "value": { + "kind": "number", + "nativeSrc": "9341:1:74", + "nodeType": "YulLiteral", + "src": "9341:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9331:6:74", + "nodeType": "YulTypedName", + "src": "9331:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9356:63:74", + "nodeType": "YulAssignment", + "src": "9356:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9391:9:74", + "nodeType": "YulIdentifier", + "src": "9391:9:74" + }, + { + "name": "offset", + "nativeSrc": "9402:6:74", + "nodeType": "YulIdentifier", + "src": "9402:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9387:3:74", + "nodeType": "YulIdentifier", + "src": "9387:3:74" + }, + "nativeSrc": "9387:22:74", + "nodeType": "YulFunctionCall", + "src": "9387:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9411:7:74", + "nodeType": "YulIdentifier", + "src": "9411:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9366:20:74", + "nodeType": "YulIdentifier", + "src": "9366:20:74" + }, + "nativeSrc": "9366:53:74", + "nodeType": "YulFunctionCall", + "src": "9366:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "9356:6:74", + "nodeType": "YulIdentifier", + "src": "9356:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9439:118:74", + "nodeType": "YulBlock", + "src": "9439:118:74", + "statements": [ + { + "nativeSrc": "9454:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9454:16:74", + "value": { + "kind": "number", + "nativeSrc": "9468:2:74", + "nodeType": "YulLiteral", + "src": "9468:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9458:6:74", + "nodeType": "YulTypedName", + "src": "9458:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9484:63:74", + "nodeType": "YulAssignment", + "src": "9484:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9519:9:74", + "nodeType": "YulIdentifier", + "src": "9519:9:74" + }, + { + "name": "offset", + "nativeSrc": "9530:6:74", + "nodeType": "YulIdentifier", + "src": "9530:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9515:3:74", + "nodeType": "YulIdentifier", + "src": "9515:3:74" + }, + "nativeSrc": "9515:22:74", + "nodeType": "YulFunctionCall", + "src": "9515:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9539:7:74", + "nodeType": "YulIdentifier", + "src": "9539:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "9494:20:74", + "nodeType": "YulIdentifier", + "src": "9494:20:74" + }, + "nativeSrc": "9494:53:74", + "nodeType": "YulFunctionCall", + "src": "9494:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "9484:6:74", + "nodeType": "YulIdentifier", + "src": "9484:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9567:118:74", + "nodeType": "YulBlock", + "src": "9567:118:74", + "statements": [ + { + "nativeSrc": "9582:16:74", + "nodeType": "YulVariableDeclaration", + "src": "9582:16:74", + "value": { + "kind": "number", + "nativeSrc": "9596:2:74", + "nodeType": "YulLiteral", + "src": "9596:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9586:6:74", + "nodeType": "YulTypedName", + "src": "9586:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "9612:63:74", + "nodeType": "YulAssignment", + "src": "9612:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9647:9:74", + "nodeType": "YulIdentifier", + "src": "9647:9:74" + }, + { + "name": "offset", + "nativeSrc": "9658:6:74", + "nodeType": "YulIdentifier", + "src": "9658:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9643:3:74", + "nodeType": "YulIdentifier", + "src": "9643:3:74" + }, + "nativeSrc": "9643:22:74", + "nodeType": "YulFunctionCall", + "src": "9643:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9667:7:74", + "nodeType": "YulIdentifier", + "src": "9667:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "9622:20:74", + "nodeType": "YulIdentifier", + "src": "9622:20:74" + }, + "nativeSrc": "9622:53:74", + "nodeType": "YulFunctionCall", + "src": "9622:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "9612:6:74", + "nodeType": "YulIdentifier", + "src": "9612:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9695:287:74", + "nodeType": "YulBlock", + "src": "9695:287:74", + "statements": [ + { + "nativeSrc": "9710:46:74", + "nodeType": "YulVariableDeclaration", + "src": "9710:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9741:9:74", + "nodeType": "YulIdentifier", + "src": "9741:9:74" + }, + { + "kind": "number", + "nativeSrc": "9752:2:74", + "nodeType": "YulLiteral", + "src": "9752:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9737:3:74", + "nodeType": "YulIdentifier", + "src": "9737:3:74" + }, + "nativeSrc": "9737:18:74", + "nodeType": "YulFunctionCall", + "src": "9737:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "9724:12:74", + "nodeType": "YulIdentifier", + "src": "9724:12:74" + }, + "nativeSrc": "9724:32:74", + "nodeType": "YulFunctionCall", + "src": "9724:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9714:6:74", + "nodeType": "YulTypedName", + "src": "9714:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9803:83:74", + "nodeType": "YulBlock", + "src": "9803:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "9805:77:74", + "nodeType": "YulIdentifier", + "src": "9805:77:74" + }, + "nativeSrc": "9805:79:74", + "nodeType": "YulFunctionCall", + "src": "9805:79:74" + }, + "nativeSrc": "9805:79:74", + "nodeType": "YulExpressionStatement", + "src": "9805:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9775:6:74", + "nodeType": "YulIdentifier", + "src": "9775:6:74" + }, + { + "kind": "number", + "nativeSrc": "9783:18:74", + "nodeType": "YulLiteral", + "src": "9783:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9772:2:74", + "nodeType": "YulIdentifier", + "src": "9772:2:74" + }, + "nativeSrc": "9772:30:74", + "nodeType": "YulFunctionCall", + "src": "9772:30:74" + }, + "nativeSrc": "9769:117:74", + "nodeType": "YulIf", + "src": "9769:117:74" + }, + { + "nativeSrc": "9900:72:74", + "nodeType": "YulAssignment", + "src": "9900:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9944:9:74", + "nodeType": "YulIdentifier", + "src": "9944:9:74" + }, + { + "name": "offset", + "nativeSrc": "9955:6:74", + "nodeType": "YulIdentifier", + "src": "9955:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9940:3:74", + "nodeType": "YulIdentifier", + "src": "9940:3:74" + }, + "nativeSrc": "9940:22:74", + "nodeType": "YulFunctionCall", + "src": "9940:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9964:7:74", + "nodeType": "YulIdentifier", + "src": "9964:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "9910:29:74", + "nodeType": "YulIdentifier", + "src": "9910:29:74" + }, + "nativeSrc": "9910:62:74", + "nodeType": "YulFunctionCall", + "src": "9910:62:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "9900:6:74", + "nodeType": "YulIdentifier", + "src": "9900:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr", + "nativeSrc": "9046:943:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "9118:9:74", + "nodeType": "YulTypedName", + "src": "9118:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "9129:7:74", + "nodeType": "YulTypedName", + "src": "9129:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "9141:6:74", + "nodeType": "YulTypedName", + "src": "9141:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "9149:6:74", + "nodeType": "YulTypedName", + "src": "9149:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "9157:6:74", + "nodeType": "YulTypedName", + "src": "9157:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "9165:6:74", + "nodeType": "YulTypedName", + "src": "9165:6:74", + "type": "" + } + ], + "src": "9046:943:74" + }, + { + "body": { + "nativeSrc": "10078:391:74", + "nodeType": "YulBlock", + "src": "10078:391:74", + "statements": [ + { + "body": { + "nativeSrc": "10124:83:74", + "nodeType": "YulBlock", + "src": "10124:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "10126:77:74", + "nodeType": "YulIdentifier", + "src": "10126:77:74" + }, + "nativeSrc": "10126:79:74", + "nodeType": "YulFunctionCall", + "src": "10126:79:74" + }, + "nativeSrc": "10126:79:74", + "nodeType": "YulExpressionStatement", + "src": "10126:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "10099:7:74", + "nodeType": "YulIdentifier", + "src": "10099:7:74" + }, + { + "name": "headStart", + "nativeSrc": "10108:9:74", + "nodeType": "YulIdentifier", + "src": "10108:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10095:3:74", + "nodeType": "YulIdentifier", + "src": "10095:3:74" + }, + "nativeSrc": "10095:23:74", + "nodeType": "YulFunctionCall", + "src": "10095:23:74" + }, + { + "kind": "number", + "nativeSrc": "10120:2:74", + "nodeType": "YulLiteral", + "src": "10120:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "10091:3:74", + "nodeType": "YulIdentifier", + "src": "10091:3:74" + }, + "nativeSrc": "10091:32:74", + "nodeType": "YulFunctionCall", + "src": "10091:32:74" + }, + "nativeSrc": "10088:119:74", + "nodeType": "YulIf", + "src": "10088:119:74" + }, + { + "nativeSrc": "10217:117:74", + "nodeType": "YulBlock", + "src": "10217:117:74", + "statements": [ + { + "nativeSrc": "10232:15:74", + "nodeType": "YulVariableDeclaration", + "src": "10232:15:74", + "value": { + "kind": "number", + "nativeSrc": "10246:1:74", + "nodeType": "YulLiteral", + "src": "10246:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10236:6:74", + "nodeType": "YulTypedName", + "src": "10236:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10261:63:74", + "nodeType": "YulAssignment", + "src": "10261:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10296:9:74", + "nodeType": "YulIdentifier", + "src": "10296:9:74" + }, + { + "name": "offset", + "nativeSrc": "10307:6:74", + "nodeType": "YulIdentifier", + "src": "10307:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10292:3:74", + "nodeType": "YulIdentifier", + "src": "10292:3:74" + }, + "nativeSrc": "10292:22:74", + "nodeType": "YulFunctionCall", + "src": "10292:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10316:7:74", + "nodeType": "YulIdentifier", + "src": "10316:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "10271:20:74", + "nodeType": "YulIdentifier", + "src": "10271:20:74" + }, + "nativeSrc": "10271:53:74", + "nodeType": "YulFunctionCall", + "src": "10271:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "10261:6:74", + "nodeType": "YulIdentifier", + "src": "10261:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "10344:118:74", + "nodeType": "YulBlock", + "src": "10344:118:74", + "statements": [ + { + "nativeSrc": "10359:16:74", + "nodeType": "YulVariableDeclaration", + "src": "10359:16:74", + "value": { + "kind": "number", + "nativeSrc": "10373:2:74", + "nodeType": "YulLiteral", + "src": "10373:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "10363:6:74", + "nodeType": "YulTypedName", + "src": "10363:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10389:63:74", + "nodeType": "YulAssignment", + "src": "10389:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10424:9:74", + "nodeType": "YulIdentifier", + "src": "10424:9:74" + }, + { + "name": "offset", + "nativeSrc": "10435:6:74", + "nodeType": "YulIdentifier", + "src": "10435:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10420:3:74", + "nodeType": "YulIdentifier", + "src": "10420:3:74" + }, + "nativeSrc": "10420:22:74", + "nodeType": "YulFunctionCall", + "src": "10420:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "10444:7:74", + "nodeType": "YulIdentifier", + "src": "10444:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "10399:20:74", + "nodeType": "YulIdentifier", + "src": "10399:20:74" + }, + "nativeSrc": "10399:53:74", + "nodeType": "YulFunctionCall", + "src": "10399:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "10389:6:74", + "nodeType": "YulIdentifier", + "src": "10389:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_address", + "nativeSrc": "9995:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10040:9:74", + "nodeType": "YulTypedName", + "src": "10040:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "10051:7:74", + "nodeType": "YulTypedName", + "src": "10051:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "10063:6:74", + "nodeType": "YulTypedName", + "src": "10063:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "10071:6:74", + "nodeType": "YulTypedName", + "src": "10071:6:74", + "type": "" + } + ], + "src": "9995:474:74" + }, + { + "body": { + "nativeSrc": "10503:152:74", + "nodeType": "YulBlock", + "src": "10503:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10520:1:74", + "nodeType": "YulLiteral", + "src": "10520:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10523:77:74", + "nodeType": "YulLiteral", + "src": "10523:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10513:6:74", + "nodeType": "YulIdentifier", + "src": "10513:6:74" + }, + "nativeSrc": "10513:88:74", + "nodeType": "YulFunctionCall", + "src": "10513:88:74" + }, + "nativeSrc": "10513:88:74", + "nodeType": "YulExpressionStatement", + "src": "10513:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10617:1:74", + "nodeType": "YulLiteral", + "src": "10617:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "10620:4:74", + "nodeType": "YulLiteral", + "src": "10620:4:74", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10610:6:74", + "nodeType": "YulIdentifier", + "src": "10610:6:74" + }, + "nativeSrc": "10610:15:74", + "nodeType": "YulFunctionCall", + "src": "10610:15:74" + }, + "nativeSrc": "10610:15:74", + "nodeType": "YulExpressionStatement", + "src": "10610:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "10641:1:74", + "nodeType": "YulLiteral", + "src": "10641:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "10644:4:74", + "nodeType": "YulLiteral", + "src": "10644:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "10634:6:74", + "nodeType": "YulIdentifier", + "src": "10634:6:74" + }, + "nativeSrc": "10634:15:74", + "nodeType": "YulFunctionCall", + "src": "10634:15:74" + }, + "nativeSrc": "10634:15:74", + "nodeType": "YulExpressionStatement", + "src": "10634:15:74" + } + ] + }, + "name": "panic_error_0x22", + "nativeSrc": "10475:180:74", + "nodeType": "YulFunctionDefinition", + "src": "10475:180:74" + }, + { + "body": { + "nativeSrc": "10712:269:74", + "nodeType": "YulBlock", + "src": "10712:269:74", + "statements": [ + { + "nativeSrc": "10722:22:74", + "nodeType": "YulAssignment", + "src": "10722:22:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "10736:4:74", + "nodeType": "YulIdentifier", + "src": "10736:4:74" + }, + { + "kind": "number", + "nativeSrc": "10742:1:74", + "nodeType": "YulLiteral", + "src": "10742:1:74", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "10732:3:74", + "nodeType": "YulIdentifier", + "src": "10732:3:74" + }, + "nativeSrc": "10732:12:74", + "nodeType": "YulFunctionCall", + "src": "10732:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "10722:6:74", + "nodeType": "YulIdentifier", + "src": "10722:6:74" + } + ] + }, + { + "nativeSrc": "10753:38:74", + "nodeType": "YulVariableDeclaration", + "src": "10753:38:74", + "value": { + "arguments": [ + { + "name": "data", + "nativeSrc": "10783:4:74", + "nodeType": "YulIdentifier", + "src": "10783:4:74" + }, + { + "kind": "number", + "nativeSrc": "10789:1:74", + "nodeType": "YulLiteral", + "src": "10789:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10779:3:74", + "nodeType": "YulIdentifier", + "src": "10779:3:74" + }, + "nativeSrc": "10779:12:74", + "nodeType": "YulFunctionCall", + "src": "10779:12:74" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10757:18:74", + "nodeType": "YulTypedName", + "src": "10757:18:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "10830:51:74", + "nodeType": "YulBlock", + "src": "10830:51:74", + "statements": [ + { + "nativeSrc": "10844:27:74", + "nodeType": "YulAssignment", + "src": "10844:27:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "10858:6:74", + "nodeType": "YulIdentifier", + "src": "10858:6:74" + }, + { + "kind": "number", + "nativeSrc": "10866:4:74", + "nodeType": "YulLiteral", + "src": "10866:4:74", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "10854:3:74", + "nodeType": "YulIdentifier", + "src": "10854:3:74" + }, + "nativeSrc": "10854:17:74", + "nodeType": "YulFunctionCall", + "src": "10854:17:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "10844:6:74", + "nodeType": "YulIdentifier", + "src": "10844:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10810:18:74", + "nodeType": "YulIdentifier", + "src": "10810:18:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "10803:6:74", + "nodeType": "YulIdentifier", + "src": "10803:6:74" + }, + "nativeSrc": "10803:26:74", + "nodeType": "YulFunctionCall", + "src": "10803:26:74" + }, + "nativeSrc": "10800:81:74", + "nodeType": "YulIf", + "src": "10800:81:74" + }, + { + "body": { + "nativeSrc": "10933:42:74", + "nodeType": "YulBlock", + "src": "10933:42:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nativeSrc": "10947:16:74", + "nodeType": "YulIdentifier", + "src": "10947:16:74" + }, + "nativeSrc": "10947:18:74", + "nodeType": "YulFunctionCall", + "src": "10947:18:74" + }, + "nativeSrc": "10947:18:74", + "nodeType": "YulExpressionStatement", + "src": "10947:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nativeSrc": "10897:18:74", + "nodeType": "YulIdentifier", + "src": "10897:18:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "10920:6:74", + "nodeType": "YulIdentifier", + "src": "10920:6:74" + }, + { + "kind": "number", + "nativeSrc": "10928:2:74", + "nodeType": "YulLiteral", + "src": "10928:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "10917:2:74", + "nodeType": "YulIdentifier", + "src": "10917:2:74" + }, + "nativeSrc": "10917:14:74", + "nodeType": "YulFunctionCall", + "src": "10917:14:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "10894:2:74", + "nodeType": "YulIdentifier", + "src": "10894:2:74" + }, + "nativeSrc": "10894:38:74", + "nodeType": "YulFunctionCall", + "src": "10894:38:74" + }, + "nativeSrc": "10891:84:74", + "nodeType": "YulIf", + "src": "10891:84:74" + } + ] + }, + "name": "extract_byte_array_length", + "nativeSrc": "10661:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nativeSrc": "10696:4:74", + "nodeType": "YulTypedName", + "src": "10696:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "10705:6:74", + "nodeType": "YulTypedName", + "src": "10705:6:74", + "type": "" + } + ], + "src": "10661:320:74" + }, + { + "body": { + "nativeSrc": "11093:114:74", + "nodeType": "YulBlock", + "src": "11093:114:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "11115:6:74", + "nodeType": "YulIdentifier", + "src": "11115:6:74" + }, + { + "kind": "number", + "nativeSrc": "11123:1:74", + "nodeType": "YulLiteral", + "src": "11123:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11111:3:74", + "nodeType": "YulIdentifier", + "src": "11111:3:74" + }, + "nativeSrc": "11111:14:74", + "nodeType": "YulFunctionCall", + "src": "11111:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", + "kind": "string", + "nativeSrc": "11127:34:74", + "nodeType": "YulLiteral", + "src": "11127:34:74", + "type": "", + "value": "ERC721: approval to current owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11104:6:74", + "nodeType": "YulIdentifier", + "src": "11104:6:74" + }, + "nativeSrc": "11104:58:74", + "nodeType": "YulFunctionCall", + "src": "11104:58:74" + }, + "nativeSrc": "11104:58:74", + "nodeType": "YulExpressionStatement", + "src": "11104:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "11183:6:74", + "nodeType": "YulIdentifier", + "src": "11183:6:74" + }, + { + "kind": "number", + "nativeSrc": "11191:2:74", + "nodeType": "YulLiteral", + "src": "11191:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11179:3:74", + "nodeType": "YulIdentifier", + "src": "11179:3:74" + }, + "nativeSrc": "11179:15:74", + "nodeType": "YulFunctionCall", + "src": "11179:15:74" + }, + { + "hexValue": "72", + "kind": "string", + "nativeSrc": "11196:3:74", + "nodeType": "YulLiteral", + "src": "11196:3:74", + "type": "", + "value": "r" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11172:6:74", + "nodeType": "YulIdentifier", + "src": "11172:6:74" + }, + "nativeSrc": "11172:28:74", + "nodeType": "YulFunctionCall", + "src": "11172:28:74" + }, + "nativeSrc": "11172:28:74", + "nodeType": "YulExpressionStatement", + "src": "11172:28:74" + } + ] + }, + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "10987:220:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "11085:6:74", + "nodeType": "YulTypedName", + "src": "11085:6:74", + "type": "" + } + ], + "src": "10987:220:74" + }, + { + "body": { + "nativeSrc": "11359:220:74", + "nodeType": "YulBlock", + "src": "11359:220:74", + "statements": [ + { + "nativeSrc": "11369:74:74", + "nodeType": "YulAssignment", + "src": "11369:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11435:3:74", + "nodeType": "YulIdentifier", + "src": "11435:3:74" + }, + { + "kind": "number", + "nativeSrc": "11440:2:74", + "nodeType": "YulLiteral", + "src": "11440:2:74", + "type": "", + "value": "33" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "11376:58:74", + "nodeType": "YulIdentifier", + "src": "11376:58:74" + }, + "nativeSrc": "11376:67:74", + "nodeType": "YulFunctionCall", + "src": "11376:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "11369:3:74", + "nodeType": "YulIdentifier", + "src": "11369:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11541:3:74", + "nodeType": "YulIdentifier", + "src": "11541:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", + "nativeSrc": "11452:88:74", + "nodeType": "YulIdentifier", + "src": "11452:88:74" + }, + "nativeSrc": "11452:93:74", + "nodeType": "YulFunctionCall", + "src": "11452:93:74" + }, + "nativeSrc": "11452:93:74", + "nodeType": "YulExpressionStatement", + "src": "11452:93:74" + }, + { + "nativeSrc": "11554:19:74", + "nodeType": "YulAssignment", + "src": "11554:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "11565:3:74", + "nodeType": "YulIdentifier", + "src": "11565:3:74" + }, + { + "kind": "number", + "nativeSrc": "11570:2:74", + "nodeType": "YulLiteral", + "src": "11570:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11561:3:74", + "nodeType": "YulIdentifier", + "src": "11561:3:74" + }, + "nativeSrc": "11561:12:74", + "nodeType": "YulFunctionCall", + "src": "11561:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "11554:3:74", + "nodeType": "YulIdentifier", + "src": "11554:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11213:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "11347:3:74", + "nodeType": "YulTypedName", + "src": "11347:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "11355:3:74", + "nodeType": "YulTypedName", + "src": "11355:3:74", + "type": "" + } + ], + "src": "11213:366:74" + }, + { + "body": { + "nativeSrc": "11756:248:74", + "nodeType": "YulBlock", + "src": "11756:248:74", + "statements": [ + { + "nativeSrc": "11766:26:74", + "nodeType": "YulAssignment", + "src": "11766:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11778:9:74", + "nodeType": "YulIdentifier", + "src": "11778:9:74" + }, + { + "kind": "number", + "nativeSrc": "11789:2:74", + "nodeType": "YulLiteral", + "src": "11789:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11774:3:74", + "nodeType": "YulIdentifier", + "src": "11774:3:74" + }, + "nativeSrc": "11774:18:74", + "nodeType": "YulFunctionCall", + "src": "11774:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11766:4:74", + "nodeType": "YulIdentifier", + "src": "11766:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11813:9:74", + "nodeType": "YulIdentifier", + "src": "11813:9:74" + }, + { + "kind": "number", + "nativeSrc": "11824:1:74", + "nodeType": "YulLiteral", + "src": "11824:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11809:3:74", + "nodeType": "YulIdentifier", + "src": "11809:3:74" + }, + "nativeSrc": "11809:17:74", + "nodeType": "YulFunctionCall", + "src": "11809:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11832:4:74", + "nodeType": "YulIdentifier", + "src": "11832:4:74" + }, + { + "name": "headStart", + "nativeSrc": "11838:9:74", + "nodeType": "YulIdentifier", + "src": "11838:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11828:3:74", + "nodeType": "YulIdentifier", + "src": "11828:3:74" + }, + "nativeSrc": "11828:20:74", + "nodeType": "YulFunctionCall", + "src": "11828:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "11802:6:74", + "nodeType": "YulIdentifier", + "src": "11802:6:74" + }, + "nativeSrc": "11802:47:74", + "nodeType": "YulFunctionCall", + "src": "11802:47:74" + }, + "nativeSrc": "11802:47:74", + "nodeType": "YulExpressionStatement", + "src": "11802:47:74" + }, + { + "nativeSrc": "11858:139:74", + "nodeType": "YulAssignment", + "src": "11858:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "11992:4:74", + "nodeType": "YulIdentifier", + "src": "11992:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", + "nativeSrc": "11866:124:74", + "nodeType": "YulIdentifier", + "src": "11866:124:74" + }, + "nativeSrc": "11866:131:74", + "nodeType": "YulFunctionCall", + "src": "11866:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11858:4:74", + "nodeType": "YulIdentifier", + "src": "11858:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "11585:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11736:9:74", + "nodeType": "YulTypedName", + "src": "11736:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "11751:4:74", + "nodeType": "YulTypedName", + "src": "11751:4:74", + "type": "" + } + ], + "src": "11585:419:74" + }, + { + "body": { + "nativeSrc": "12116:142:74", + "nodeType": "YulBlock", + "src": "12116:142:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "12138:6:74", + "nodeType": "YulIdentifier", + "src": "12138:6:74" + }, + { + "kind": "number", + "nativeSrc": "12146:1:74", + "nodeType": "YulLiteral", + "src": "12146:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12134:3:74", + "nodeType": "YulIdentifier", + "src": "12134:3:74" + }, + "nativeSrc": "12134:14:74", + "nodeType": "YulFunctionCall", + "src": "12134:14:74" + }, + { + "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f", + "kind": "string", + "nativeSrc": "12150:34:74", + "nodeType": "YulLiteral", + "src": "12150:34:74", + "type": "", + "value": "ERC721: approve caller is not to" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12127:6:74", + "nodeType": "YulIdentifier", + "src": "12127:6:74" + }, + "nativeSrc": "12127:58:74", + "nodeType": "YulFunctionCall", + "src": "12127:58:74" + }, + "nativeSrc": "12127:58:74", + "nodeType": "YulExpressionStatement", + "src": "12127:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "12206:6:74", + "nodeType": "YulIdentifier", + "src": "12206:6:74" + }, + { + "kind": "number", + "nativeSrc": "12214:2:74", + "nodeType": "YulLiteral", + "src": "12214:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12202:3:74", + "nodeType": "YulIdentifier", + "src": "12202:3:74" + }, + "nativeSrc": "12202:15:74", + "nodeType": "YulFunctionCall", + "src": "12202:15:74" + }, + { + "hexValue": "6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", + "kind": "string", + "nativeSrc": "12219:31:74", + "nodeType": "YulLiteral", + "src": "12219:31:74", + "type": "", + "value": "ken owner or approved for all" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12195:6:74", + "nodeType": "YulIdentifier", + "src": "12195:6:74" + }, + "nativeSrc": "12195:56:74", + "nodeType": "YulFunctionCall", + "src": "12195:56:74" + }, + "nativeSrc": "12195:56:74", + "nodeType": "YulExpressionStatement", + "src": "12195:56:74" + } + ] + }, + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "12010:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "12108:6:74", + "nodeType": "YulTypedName", + "src": "12108:6:74", + "type": "" + } + ], + "src": "12010:248:74" + }, + { + "body": { + "nativeSrc": "12410:220:74", + "nodeType": "YulBlock", + "src": "12410:220:74", + "statements": [ + { + "nativeSrc": "12420:74:74", + "nodeType": "YulAssignment", + "src": "12420:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12486:3:74", + "nodeType": "YulIdentifier", + "src": "12486:3:74" + }, + { + "kind": "number", + "nativeSrc": "12491:2:74", + "nodeType": "YulLiteral", + "src": "12491:2:74", + "type": "", + "value": "61" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "12427:58:74", + "nodeType": "YulIdentifier", + "src": "12427:58:74" + }, + "nativeSrc": "12427:67:74", + "nodeType": "YulFunctionCall", + "src": "12427:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "12420:3:74", + "nodeType": "YulIdentifier", + "src": "12420:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12592:3:74", + "nodeType": "YulIdentifier", + "src": "12592:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", + "nativeSrc": "12503:88:74", + "nodeType": "YulIdentifier", + "src": "12503:88:74" + }, + "nativeSrc": "12503:93:74", + "nodeType": "YulFunctionCall", + "src": "12503:93:74" + }, + "nativeSrc": "12503:93:74", + "nodeType": "YulExpressionStatement", + "src": "12503:93:74" + }, + { + "nativeSrc": "12605:19:74", + "nodeType": "YulAssignment", + "src": "12605:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "12616:3:74", + "nodeType": "YulIdentifier", + "src": "12616:3:74" + }, + { + "kind": "number", + "nativeSrc": "12621:2:74", + "nodeType": "YulLiteral", + "src": "12621:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12612:3:74", + "nodeType": "YulIdentifier", + "src": "12612:3:74" + }, + "nativeSrc": "12612:12:74", + "nodeType": "YulFunctionCall", + "src": "12612:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "12605:3:74", + "nodeType": "YulIdentifier", + "src": "12605:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "12264:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "12398:3:74", + "nodeType": "YulTypedName", + "src": "12398:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "12406:3:74", + "nodeType": "YulTypedName", + "src": "12406:3:74", + "type": "" + } + ], + "src": "12264:366:74" + }, + { + "body": { + "nativeSrc": "12807:248:74", + "nodeType": "YulBlock", + "src": "12807:248:74", + "statements": [ + { + "nativeSrc": "12817:26:74", + "nodeType": "YulAssignment", + "src": "12817:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12829:9:74", + "nodeType": "YulIdentifier", + "src": "12829:9:74" + }, + { + "kind": "number", + "nativeSrc": "12840:2:74", + "nodeType": "YulLiteral", + "src": "12840:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12825:3:74", + "nodeType": "YulIdentifier", + "src": "12825:3:74" + }, + "nativeSrc": "12825:18:74", + "nodeType": "YulFunctionCall", + "src": "12825:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12817:4:74", + "nodeType": "YulIdentifier", + "src": "12817:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12864:9:74", + "nodeType": "YulIdentifier", + "src": "12864:9:74" + }, + { + "kind": "number", + "nativeSrc": "12875:1:74", + "nodeType": "YulLiteral", + "src": "12875:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12860:3:74", + "nodeType": "YulIdentifier", + "src": "12860:3:74" + }, + "nativeSrc": "12860:17:74", + "nodeType": "YulFunctionCall", + "src": "12860:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "12883:4:74", + "nodeType": "YulIdentifier", + "src": "12883:4:74" + }, + { + "name": "headStart", + "nativeSrc": "12889:9:74", + "nodeType": "YulIdentifier", + "src": "12889:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "12879:3:74", + "nodeType": "YulIdentifier", + "src": "12879:3:74" + }, + "nativeSrc": "12879:20:74", + "nodeType": "YulFunctionCall", + "src": "12879:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12853:6:74", + "nodeType": "YulIdentifier", + "src": "12853:6:74" + }, + "nativeSrc": "12853:47:74", + "nodeType": "YulFunctionCall", + "src": "12853:47:74" + }, + "nativeSrc": "12853:47:74", + "nodeType": "YulExpressionStatement", + "src": "12853:47:74" + }, + { + "nativeSrc": "12909:139:74", + "nodeType": "YulAssignment", + "src": "12909:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "13043:4:74", + "nodeType": "YulIdentifier", + "src": "13043:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", + "nativeSrc": "12917:124:74", + "nodeType": "YulIdentifier", + "src": "12917:124:74" + }, + "nativeSrc": "12917:131:74", + "nodeType": "YulFunctionCall", + "src": "12917:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "12909:4:74", + "nodeType": "YulIdentifier", + "src": "12909:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "12636:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "12787:9:74", + "nodeType": "YulTypedName", + "src": "12787:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "12802:4:74", + "nodeType": "YulTypedName", + "src": "12802:4:74", + "type": "" + } + ], + "src": "12636:419:74" + }, + { + "body": { + "nativeSrc": "13089:152:74", + "nodeType": "YulBlock", + "src": "13089:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13106:1:74", + "nodeType": "YulLiteral", + "src": "13106:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13109:77:74", + "nodeType": "YulLiteral", + "src": "13109:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13099:6:74", + "nodeType": "YulIdentifier", + "src": "13099:6:74" + }, + "nativeSrc": "13099:88:74", + "nodeType": "YulFunctionCall", + "src": "13099:88:74" + }, + "nativeSrc": "13099:88:74", + "nodeType": "YulExpressionStatement", + "src": "13099:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13203:1:74", + "nodeType": "YulLiteral", + "src": "13203:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "13206:4:74", + "nodeType": "YulLiteral", + "src": "13206:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13196:6:74", + "nodeType": "YulIdentifier", + "src": "13196:6:74" + }, + "nativeSrc": "13196:15:74", + "nodeType": "YulFunctionCall", + "src": "13196:15:74" + }, + "nativeSrc": "13196:15:74", + "nodeType": "YulExpressionStatement", + "src": "13196:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "13227:1:74", + "nodeType": "YulLiteral", + "src": "13227:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "13230:4:74", + "nodeType": "YulLiteral", + "src": "13230:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "13220:6:74", + "nodeType": "YulIdentifier", + "src": "13220:6:74" + }, + "nativeSrc": "13220:15:74", + "nodeType": "YulFunctionCall", + "src": "13220:15:74" + }, + "nativeSrc": "13220:15:74", + "nodeType": "YulExpressionStatement", + "src": "13220:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "13061:180:74", + "nodeType": "YulFunctionDefinition", + "src": "13061:180:74" + }, + { + "body": { + "nativeSrc": "13290:190:74", + "nodeType": "YulBlock", + "src": "13290:190:74", + "statements": [ + { + "nativeSrc": "13300:33:74", + "nodeType": "YulAssignment", + "src": "13300:33:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13327:5:74", + "nodeType": "YulIdentifier", + "src": "13327:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "13309:17:74", + "nodeType": "YulIdentifier", + "src": "13309:17:74" + }, + "nativeSrc": "13309:24:74", + "nodeType": "YulFunctionCall", + "src": "13309:24:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "13300:5:74", + "nodeType": "YulIdentifier", + "src": "13300:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "13423:22:74", + "nodeType": "YulBlock", + "src": "13423:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "13425:16:74", + "nodeType": "YulIdentifier", + "src": "13425:16:74" + }, + "nativeSrc": "13425:18:74", + "nodeType": "YulFunctionCall", + "src": "13425:18:74" + }, + "nativeSrc": "13425:18:74", + "nodeType": "YulExpressionStatement", + "src": "13425:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13348:5:74", + "nodeType": "YulIdentifier", + "src": "13348:5:74" + }, + { + "kind": "number", + "nativeSrc": "13355:66:74", + "nodeType": "YulLiteral", + "src": "13355:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "13345:2:74", + "nodeType": "YulIdentifier", + "src": "13345:2:74" + }, + "nativeSrc": "13345:77:74", + "nodeType": "YulFunctionCall", + "src": "13345:77:74" + }, + "nativeSrc": "13342:103:74", + "nodeType": "YulIf", + "src": "13342:103:74" + }, + { + "nativeSrc": "13454:20:74", + "nodeType": "YulAssignment", + "src": "13454:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "13465:5:74", + "nodeType": "YulIdentifier", + "src": "13465:5:74" + }, + { + "kind": "number", + "nativeSrc": "13472:1:74", + "nodeType": "YulLiteral", + "src": "13472:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13461:3:74", + "nodeType": "YulIdentifier", + "src": "13461:3:74" + }, + "nativeSrc": "13461:13:74", + "nodeType": "YulFunctionCall", + "src": "13461:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "13454:3:74", + "nodeType": "YulIdentifier", + "src": "13454:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nativeSrc": "13247:233:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "13276:5:74", + "nodeType": "YulTypedName", + "src": "13276:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "13286:3:74", + "nodeType": "YulTypedName", + "src": "13286:3:74", + "type": "" + } + ], + "src": "13247:233:74" + }, + { + "body": { + "nativeSrc": "13592:126:74", + "nodeType": "YulBlock", + "src": "13592:126:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13614:6:74", + "nodeType": "YulIdentifier", + "src": "13614:6:74" + }, + { + "kind": "number", + "nativeSrc": "13622:1:74", + "nodeType": "YulLiteral", + "src": "13622:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13610:3:74", + "nodeType": "YulIdentifier", + "src": "13610:3:74" + }, + "nativeSrc": "13610:14:74", + "nodeType": "YulFunctionCall", + "src": "13610:14:74" + }, + { + "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e65", + "kind": "string", + "nativeSrc": "13626:34:74", + "nodeType": "YulLiteral", + "src": "13626:34:74", + "type": "", + "value": "ERC721: caller is not token owne" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13603:6:74", + "nodeType": "YulIdentifier", + "src": "13603:6:74" + }, + "nativeSrc": "13603:58:74", + "nodeType": "YulFunctionCall", + "src": "13603:58:74" + }, + "nativeSrc": "13603:58:74", + "nodeType": "YulExpressionStatement", + "src": "13603:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "13682:6:74", + "nodeType": "YulIdentifier", + "src": "13682:6:74" + }, + { + "kind": "number", + "nativeSrc": "13690:2:74", + "nodeType": "YulLiteral", + "src": "13690:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13678:3:74", + "nodeType": "YulIdentifier", + "src": "13678:3:74" + }, + "nativeSrc": "13678:15:74", + "nodeType": "YulFunctionCall", + "src": "13678:15:74" + }, + { + "hexValue": "72206f7220617070726f766564", + "kind": "string", + "nativeSrc": "13695:15:74", + "nodeType": "YulLiteral", + "src": "13695:15:74", + "type": "", + "value": "r or approved" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13671:6:74", + "nodeType": "YulIdentifier", + "src": "13671:6:74" + }, + "nativeSrc": "13671:40:74", + "nodeType": "YulFunctionCall", + "src": "13671:40:74" + }, + "nativeSrc": "13671:40:74", + "nodeType": "YulExpressionStatement", + "src": "13671:40:74" + } + ] + }, + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "13486:232:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "13584:6:74", + "nodeType": "YulTypedName", + "src": "13584:6:74", + "type": "" + } + ], + "src": "13486:232:74" + }, + { + "body": { + "nativeSrc": "13870:220:74", + "nodeType": "YulBlock", + "src": "13870:220:74", + "statements": [ + { + "nativeSrc": "13880:74:74", + "nodeType": "YulAssignment", + "src": "13880:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "13946:3:74", + "nodeType": "YulIdentifier", + "src": "13946:3:74" + }, + { + "kind": "number", + "nativeSrc": "13951:2:74", + "nodeType": "YulLiteral", + "src": "13951:2:74", + "type": "", + "value": "45" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "13887:58:74", + "nodeType": "YulIdentifier", + "src": "13887:58:74" + }, + "nativeSrc": "13887:67:74", + "nodeType": "YulFunctionCall", + "src": "13887:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "13880:3:74", + "nodeType": "YulIdentifier", + "src": "13880:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14052:3:74", + "nodeType": "YulIdentifier", + "src": "14052:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", + "nativeSrc": "13963:88:74", + "nodeType": "YulIdentifier", + "src": "13963:88:74" + }, + "nativeSrc": "13963:93:74", + "nodeType": "YulFunctionCall", + "src": "13963:93:74" + }, + "nativeSrc": "13963:93:74", + "nodeType": "YulExpressionStatement", + "src": "13963:93:74" + }, + { + "nativeSrc": "14065:19:74", + "nodeType": "YulAssignment", + "src": "14065:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14076:3:74", + "nodeType": "YulIdentifier", + "src": "14076:3:74" + }, + { + "kind": "number", + "nativeSrc": "14081:2:74", + "nodeType": "YulLiteral", + "src": "14081:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14072:3:74", + "nodeType": "YulIdentifier", + "src": "14072:3:74" + }, + "nativeSrc": "14072:12:74", + "nodeType": "YulFunctionCall", + "src": "14072:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "14065:3:74", + "nodeType": "YulIdentifier", + "src": "14065:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "13724:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "13858:3:74", + "nodeType": "YulTypedName", + "src": "13858:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "13866:3:74", + "nodeType": "YulTypedName", + "src": "13866:3:74", + "type": "" + } + ], + "src": "13724:366:74" + }, + { + "body": { + "nativeSrc": "14267:248:74", + "nodeType": "YulBlock", + "src": "14267:248:74", + "statements": [ + { + "nativeSrc": "14277:26:74", + "nodeType": "YulAssignment", + "src": "14277:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14289:9:74", + "nodeType": "YulIdentifier", + "src": "14289:9:74" + }, + { + "kind": "number", + "nativeSrc": "14300:2:74", + "nodeType": "YulLiteral", + "src": "14300:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14285:3:74", + "nodeType": "YulIdentifier", + "src": "14285:3:74" + }, + "nativeSrc": "14285:18:74", + "nodeType": "YulFunctionCall", + "src": "14285:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14277:4:74", + "nodeType": "YulIdentifier", + "src": "14277:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14324:9:74", + "nodeType": "YulIdentifier", + "src": "14324:9:74" + }, + { + "kind": "number", + "nativeSrc": "14335:1:74", + "nodeType": "YulLiteral", + "src": "14335:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14320:3:74", + "nodeType": "YulIdentifier", + "src": "14320:3:74" + }, + "nativeSrc": "14320:17:74", + "nodeType": "YulFunctionCall", + "src": "14320:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14343:4:74", + "nodeType": "YulIdentifier", + "src": "14343:4:74" + }, + { + "name": "headStart", + "nativeSrc": "14349:9:74", + "nodeType": "YulIdentifier", + "src": "14349:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "14339:3:74", + "nodeType": "YulIdentifier", + "src": "14339:3:74" + }, + "nativeSrc": "14339:20:74", + "nodeType": "YulFunctionCall", + "src": "14339:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14313:6:74", + "nodeType": "YulIdentifier", + "src": "14313:6:74" + }, + "nativeSrc": "14313:47:74", + "nodeType": "YulFunctionCall", + "src": "14313:47:74" + }, + "nativeSrc": "14313:47:74", + "nodeType": "YulExpressionStatement", + "src": "14313:47:74" + }, + { + "nativeSrc": "14369:139:74", + "nodeType": "YulAssignment", + "src": "14369:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "14503:4:74", + "nodeType": "YulIdentifier", + "src": "14503:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14377:124:74", + "nodeType": "YulIdentifier", + "src": "14377:124:74" + }, + "nativeSrc": "14377:131:74", + "nodeType": "YulFunctionCall", + "src": "14377:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14369:4:74", + "nodeType": "YulIdentifier", + "src": "14369:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "14096:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14247:9:74", + "nodeType": "YulTypedName", + "src": "14247:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14262:4:74", + "nodeType": "YulTypedName", + "src": "14262:4:74", + "type": "" + } + ], + "src": "14096:419:74" + }, + { + "body": { + "nativeSrc": "14627:68:74", + "nodeType": "YulBlock", + "src": "14627:68:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "14649:6:74", + "nodeType": "YulIdentifier", + "src": "14649:6:74" + }, + { + "kind": "number", + "nativeSrc": "14657:1:74", + "nodeType": "YulLiteral", + "src": "14657:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14645:3:74", + "nodeType": "YulIdentifier", + "src": "14645:3:74" + }, + "nativeSrc": "14645:14:74", + "nodeType": "YulFunctionCall", + "src": "14645:14:74" + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "kind": "string", + "nativeSrc": "14661:26:74", + "nodeType": "YulLiteral", + "src": "14661:26:74", + "type": "", + "value": "ERC721: invalid token ID" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "14638:6:74", + "nodeType": "YulIdentifier", + "src": "14638:6:74" + }, + "nativeSrc": "14638:50:74", + "nodeType": "YulFunctionCall", + "src": "14638:50:74" + }, + "nativeSrc": "14638:50:74", + "nodeType": "YulExpressionStatement", + "src": "14638:50:74" + } + ] + }, + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "14521:174:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "14619:6:74", + "nodeType": "YulTypedName", + "src": "14619:6:74", + "type": "" + } + ], + "src": "14521:174:74" + }, + { + "body": { + "nativeSrc": "14847:220:74", + "nodeType": "YulBlock", + "src": "14847:220:74", + "statements": [ + { + "nativeSrc": "14857:74:74", + "nodeType": "YulAssignment", + "src": "14857:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "14923:3:74", + "nodeType": "YulIdentifier", + "src": "14923:3:74" + }, + { + "kind": "number", + "nativeSrc": "14928:2:74", + "nodeType": "YulLiteral", + "src": "14928:2:74", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "14864:58:74", + "nodeType": "YulIdentifier", + "src": "14864:58:74" + }, + "nativeSrc": "14864:67:74", + "nodeType": "YulFunctionCall", + "src": "14864:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "14857:3:74", + "nodeType": "YulIdentifier", + "src": "14857:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15029:3:74", + "nodeType": "YulIdentifier", + "src": "15029:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nativeSrc": "14940:88:74", + "nodeType": "YulIdentifier", + "src": "14940:88:74" + }, + "nativeSrc": "14940:93:74", + "nodeType": "YulFunctionCall", + "src": "14940:93:74" + }, + "nativeSrc": "14940:93:74", + "nodeType": "YulExpressionStatement", + "src": "14940:93:74" + }, + { + "nativeSrc": "15042:19:74", + "nodeType": "YulAssignment", + "src": "15042:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15053:3:74", + "nodeType": "YulIdentifier", + "src": "15053:3:74" + }, + { + "kind": "number", + "nativeSrc": "15058:2:74", + "nodeType": "YulLiteral", + "src": "15058:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15049:3:74", + "nodeType": "YulIdentifier", + "src": "15049:3:74" + }, + "nativeSrc": "15049:12:74", + "nodeType": "YulFunctionCall", + "src": "15049:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15042:3:74", + "nodeType": "YulIdentifier", + "src": "15042:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "14701:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "14835:3:74", + "nodeType": "YulTypedName", + "src": "14835:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "14843:3:74", + "nodeType": "YulTypedName", + "src": "14843:3:74", + "type": "" + } + ], + "src": "14701:366:74" + }, + { + "body": { + "nativeSrc": "15244:248:74", + "nodeType": "YulBlock", + "src": "15244:248:74", + "statements": [ + { + "nativeSrc": "15254:26:74", + "nodeType": "YulAssignment", + "src": "15254:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15266:9:74", + "nodeType": "YulIdentifier", + "src": "15266:9:74" + }, + { + "kind": "number", + "nativeSrc": "15277:2:74", + "nodeType": "YulLiteral", + "src": "15277:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15262:3:74", + "nodeType": "YulIdentifier", + "src": "15262:3:74" + }, + "nativeSrc": "15262:18:74", + "nodeType": "YulFunctionCall", + "src": "15262:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15254:4:74", + "nodeType": "YulIdentifier", + "src": "15254:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15301:9:74", + "nodeType": "YulIdentifier", + "src": "15301:9:74" + }, + { + "kind": "number", + "nativeSrc": "15312:1:74", + "nodeType": "YulLiteral", + "src": "15312:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15297:3:74", + "nodeType": "YulIdentifier", + "src": "15297:3:74" + }, + "nativeSrc": "15297:17:74", + "nodeType": "YulFunctionCall", + "src": "15297:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15320:4:74", + "nodeType": "YulIdentifier", + "src": "15320:4:74" + }, + { + "name": "headStart", + "nativeSrc": "15326:9:74", + "nodeType": "YulIdentifier", + "src": "15326:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15316:3:74", + "nodeType": "YulIdentifier", + "src": "15316:3:74" + }, + "nativeSrc": "15316:20:74", + "nodeType": "YulFunctionCall", + "src": "15316:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15290:6:74", + "nodeType": "YulIdentifier", + "src": "15290:6:74" + }, + "nativeSrc": "15290:47:74", + "nodeType": "YulFunctionCall", + "src": "15290:47:74" + }, + "nativeSrc": "15290:47:74", + "nodeType": "YulExpressionStatement", + "src": "15290:47:74" + }, + { + "nativeSrc": "15346:139:74", + "nodeType": "YulAssignment", + "src": "15346:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15480:4:74", + "nodeType": "YulIdentifier", + "src": "15480:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15354:124:74", + "nodeType": "YulIdentifier", + "src": "15354:124:74" + }, + "nativeSrc": "15354:131:74", + "nodeType": "YulFunctionCall", + "src": "15354:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15346:4:74", + "nodeType": "YulIdentifier", + "src": "15346:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "15073:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15224:9:74", + "nodeType": "YulTypedName", + "src": "15224:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15239:4:74", + "nodeType": "YulTypedName", + "src": "15239:4:74", + "type": "" + } + ], + "src": "15073:419:74" + }, + { + "body": { + "nativeSrc": "15604:122:74", + "nodeType": "YulBlock", + "src": "15604:122:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15626:6:74", + "nodeType": "YulIdentifier", + "src": "15626:6:74" + }, + { + "kind": "number", + "nativeSrc": "15634:1:74", + "nodeType": "YulLiteral", + "src": "15634:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15622:3:74", + "nodeType": "YulIdentifier", + "src": "15622:3:74" + }, + "nativeSrc": "15622:14:74", + "nodeType": "YulFunctionCall", + "src": "15622:14:74" + }, + { + "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f742061207661", + "kind": "string", + "nativeSrc": "15638:34:74", + "nodeType": "YulLiteral", + "src": "15638:34:74", + "type": "", + "value": "ERC721: address zero is not a va" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15615:6:74", + "nodeType": "YulIdentifier", + "src": "15615:6:74" + }, + "nativeSrc": "15615:58:74", + "nodeType": "YulFunctionCall", + "src": "15615:58:74" + }, + "nativeSrc": "15615:58:74", + "nodeType": "YulExpressionStatement", + "src": "15615:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "15694:6:74", + "nodeType": "YulIdentifier", + "src": "15694:6:74" + }, + { + "kind": "number", + "nativeSrc": "15702:2:74", + "nodeType": "YulLiteral", + "src": "15702:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15690:3:74", + "nodeType": "YulIdentifier", + "src": "15690:3:74" + }, + "nativeSrc": "15690:15:74", + "nodeType": "YulFunctionCall", + "src": "15690:15:74" + }, + { + "hexValue": "6c6964206f776e6572", + "kind": "string", + "nativeSrc": "15707:11:74", + "nodeType": "YulLiteral", + "src": "15707:11:74", + "type": "", + "value": "lid owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15683:6:74", + "nodeType": "YulIdentifier", + "src": "15683:6:74" + }, + "nativeSrc": "15683:36:74", + "nodeType": "YulFunctionCall", + "src": "15683:36:74" + }, + "nativeSrc": "15683:36:74", + "nodeType": "YulExpressionStatement", + "src": "15683:36:74" + } + ] + }, + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "15498:228:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "15596:6:74", + "nodeType": "YulTypedName", + "src": "15596:6:74", + "type": "" + } + ], + "src": "15498:228:74" + }, + { + "body": { + "nativeSrc": "15878:220:74", + "nodeType": "YulBlock", + "src": "15878:220:74", + "statements": [ + { + "nativeSrc": "15888:74:74", + "nodeType": "YulAssignment", + "src": "15888:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15954:3:74", + "nodeType": "YulIdentifier", + "src": "15954:3:74" + }, + { + "kind": "number", + "nativeSrc": "15959:2:74", + "nodeType": "YulLiteral", + "src": "15959:2:74", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "15895:58:74", + "nodeType": "YulIdentifier", + "src": "15895:58:74" + }, + "nativeSrc": "15895:67:74", + "nodeType": "YulFunctionCall", + "src": "15895:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15888:3:74", + "nodeType": "YulIdentifier", + "src": "15888:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16060:3:74", + "nodeType": "YulIdentifier", + "src": "16060:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nativeSrc": "15971:88:74", + "nodeType": "YulIdentifier", + "src": "15971:88:74" + }, + "nativeSrc": "15971:93:74", + "nodeType": "YulFunctionCall", + "src": "15971:93:74" + }, + "nativeSrc": "15971:93:74", + "nodeType": "YulExpressionStatement", + "src": "15971:93:74" + }, + { + "nativeSrc": "16073:19:74", + "nodeType": "YulAssignment", + "src": "16073:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16084:3:74", + "nodeType": "YulIdentifier", + "src": "16084:3:74" + }, + { + "kind": "number", + "nativeSrc": "16089:2:74", + "nodeType": "YulLiteral", + "src": "16089:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16080:3:74", + "nodeType": "YulIdentifier", + "src": "16080:3:74" + }, + "nativeSrc": "16080:12:74", + "nodeType": "YulFunctionCall", + "src": "16080:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "16073:3:74", + "nodeType": "YulIdentifier", + "src": "16073:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "15732:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "15866:3:74", + "nodeType": "YulTypedName", + "src": "15866:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15874:3:74", + "nodeType": "YulTypedName", + "src": "15874:3:74", + "type": "" + } + ], + "src": "15732:366:74" + }, + { + "body": { + "nativeSrc": "16275:248:74", + "nodeType": "YulBlock", + "src": "16275:248:74", + "statements": [ + { + "nativeSrc": "16285:26:74", + "nodeType": "YulAssignment", + "src": "16285:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16297:9:74", + "nodeType": "YulIdentifier", + "src": "16297:9:74" + }, + { + "kind": "number", + "nativeSrc": "16308:2:74", + "nodeType": "YulLiteral", + "src": "16308:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16293:3:74", + "nodeType": "YulIdentifier", + "src": "16293:3:74" + }, + "nativeSrc": "16293:18:74", + "nodeType": "YulFunctionCall", + "src": "16293:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16285:4:74", + "nodeType": "YulIdentifier", + "src": "16285:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16332:9:74", + "nodeType": "YulIdentifier", + "src": "16332:9:74" + }, + { + "kind": "number", + "nativeSrc": "16343:1:74", + "nodeType": "YulLiteral", + "src": "16343:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16328:3:74", + "nodeType": "YulIdentifier", + "src": "16328:3:74" + }, + "nativeSrc": "16328:17:74", + "nodeType": "YulFunctionCall", + "src": "16328:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16351:4:74", + "nodeType": "YulIdentifier", + "src": "16351:4:74" + }, + { + "name": "headStart", + "nativeSrc": "16357:9:74", + "nodeType": "YulIdentifier", + "src": "16357:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16347:3:74", + "nodeType": "YulIdentifier", + "src": "16347:3:74" + }, + "nativeSrc": "16347:20:74", + "nodeType": "YulFunctionCall", + "src": "16347:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "16321:6:74", + "nodeType": "YulIdentifier", + "src": "16321:6:74" + }, + "nativeSrc": "16321:47:74", + "nodeType": "YulFunctionCall", + "src": "16321:47:74" + }, + "nativeSrc": "16321:47:74", + "nodeType": "YulExpressionStatement", + "src": "16321:47:74" + }, + { + "nativeSrc": "16377:139:74", + "nodeType": "YulAssignment", + "src": "16377:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "16511:4:74", + "nodeType": "YulIdentifier", + "src": "16511:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", + "nativeSrc": "16385:124:74", + "nodeType": "YulIdentifier", + "src": "16385:124:74" + }, + "nativeSrc": "16385:131:74", + "nodeType": "YulFunctionCall", + "src": "16385:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "16377:4:74", + "nodeType": "YulIdentifier", + "src": "16377:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "16104:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16255:9:74", + "nodeType": "YulTypedName", + "src": "16255:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "16270:4:74", + "nodeType": "YulTypedName", + "src": "16270:4:74", + "type": "" + } + ], + "src": "16104:419:74" + }, + { + "body": { + "nativeSrc": "16643:34:74", + "nodeType": "YulBlock", + "src": "16643:34:74", + "statements": [ + { + "nativeSrc": "16653:18:74", + "nodeType": "YulAssignment", + "src": "16653:18:74", + "value": { + "name": "pos", + "nativeSrc": "16668:3:74", + "nodeType": "YulIdentifier", + "src": "16668:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "16653:11:74", + "nodeType": "YulIdentifier", + "src": "16653:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16529:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "16615:3:74", + "nodeType": "YulTypedName", + "src": "16615:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "16620:6:74", + "nodeType": "YulTypedName", + "src": "16620:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "16631:11:74", + "nodeType": "YulTypedName", + "src": "16631:11:74", + "type": "" + } + ], + "src": "16529:148:74" + }, + { + "body": { + "nativeSrc": "16793:280:74", + "nodeType": "YulBlock", + "src": "16793:280:74", + "statements": [ + { + "nativeSrc": "16803:53:74", + "nodeType": "YulVariableDeclaration", + "src": "16803:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "16850:5:74", + "nodeType": "YulIdentifier", + "src": "16850:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "16817:32:74", + "nodeType": "YulIdentifier", + "src": "16817:32:74" + }, + "nativeSrc": "16817:39:74", + "nodeType": "YulFunctionCall", + "src": "16817:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "16807:6:74", + "nodeType": "YulTypedName", + "src": "16807:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16865:96:74", + "nodeType": "YulAssignment", + "src": "16865:96:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "16949:3:74", + "nodeType": "YulIdentifier", + "src": "16949:3:74" + }, + { + "name": "length", + "nativeSrc": "16954:6:74", + "nodeType": "YulIdentifier", + "src": "16954:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16872:76:74", + "nodeType": "YulIdentifier", + "src": "16872:76:74" + }, + "nativeSrc": "16872:89:74", + "nodeType": "YulFunctionCall", + "src": "16872:89:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "16865:3:74", + "nodeType": "YulIdentifier", + "src": "16865:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17009:5:74", + "nodeType": "YulIdentifier", + "src": "17009:5:74" + }, + { + "kind": "number", + "nativeSrc": "17016:4:74", + "nodeType": "YulLiteral", + "src": "17016:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17005:3:74", + "nodeType": "YulIdentifier", + "src": "17005:3:74" + }, + "nativeSrc": "17005:16:74", + "nodeType": "YulFunctionCall", + "src": "17005:16:74" + }, + { + "name": "pos", + "nativeSrc": "17023:3:74", + "nodeType": "YulIdentifier", + "src": "17023:3:74" + }, + { + "name": "length", + "nativeSrc": "17028:6:74", + "nodeType": "YulIdentifier", + "src": "17028:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "16970:34:74", + "nodeType": "YulIdentifier", + "src": "16970:34:74" + }, + "nativeSrc": "16970:65:74", + "nodeType": "YulFunctionCall", + "src": "16970:65:74" + }, + "nativeSrc": "16970:65:74", + "nodeType": "YulExpressionStatement", + "src": "16970:65:74" + }, + { + "nativeSrc": "17044:23:74", + "nodeType": "YulAssignment", + "src": "17044:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17055:3:74", + "nodeType": "YulIdentifier", + "src": "17055:3:74" + }, + { + "name": "length", + "nativeSrc": "17060:6:74", + "nodeType": "YulIdentifier", + "src": "17060:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17051:3:74", + "nodeType": "YulIdentifier", + "src": "17051:3:74" + }, + "nativeSrc": "17051:16:74", + "nodeType": "YulFunctionCall", + "src": "17051:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17044:3:74", + "nodeType": "YulIdentifier", + "src": "17044:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "16683:390:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "16774:5:74", + "nodeType": "YulTypedName", + "src": "16774:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "16781:3:74", + "nodeType": "YulTypedName", + "src": "16781:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "16789:3:74", + "nodeType": "YulTypedName", + "src": "16789:3:74", + "type": "" + } + ], + "src": "16683:390:74" + }, + { + "body": { + "nativeSrc": "17263:251:74", + "nodeType": "YulBlock", + "src": "17263:251:74", + "statements": [ + { + "nativeSrc": "17274:102:74", + "nodeType": "YulAssignment", + "src": "17274:102:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17363:6:74", + "nodeType": "YulIdentifier", + "src": "17363:6:74" + }, + { + "name": "pos", + "nativeSrc": "17372:3:74", + "nodeType": "YulIdentifier", + "src": "17372:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "17281:81:74", + "nodeType": "YulIdentifier", + "src": "17281:81:74" + }, + "nativeSrc": "17281:95:74", + "nodeType": "YulFunctionCall", + "src": "17281:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17274:3:74", + "nodeType": "YulIdentifier", + "src": "17274:3:74" + } + ] + }, + { + "nativeSrc": "17386:102:74", + "nodeType": "YulAssignment", + "src": "17386:102:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "17475:6:74", + "nodeType": "YulIdentifier", + "src": "17475:6:74" + }, + { + "name": "pos", + "nativeSrc": "17484:3:74", + "nodeType": "YulIdentifier", + "src": "17484:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "17393:81:74", + "nodeType": "YulIdentifier", + "src": "17393:81:74" + }, + "nativeSrc": "17393:95:74", + "nodeType": "YulFunctionCall", + "src": "17393:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17386:3:74", + "nodeType": "YulIdentifier", + "src": "17386:3:74" + } + ] + }, + { + "nativeSrc": "17498:10:74", + "nodeType": "YulAssignment", + "src": "17498:10:74", + "value": { + "name": "pos", + "nativeSrc": "17505:3:74", + "nodeType": "YulIdentifier", + "src": "17505:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17498:3:74", + "nodeType": "YulIdentifier", + "src": "17498:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "17079:435:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "17234:3:74", + "nodeType": "YulTypedName", + "src": "17234:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "17240:6:74", + "nodeType": "YulTypedName", + "src": "17240:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "17248:6:74", + "nodeType": "YulTypedName", + "src": "17248:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "17259:3:74", + "nodeType": "YulTypedName", + "src": "17259:3:74", + "type": "" + } + ], + "src": "17079:435:74" + }, + { + "body": { + "nativeSrc": "17626:118:74", + "nodeType": "YulBlock", + "src": "17626:118:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "17648:6:74", + "nodeType": "YulIdentifier", + "src": "17648:6:74" + }, + { + "kind": "number", + "nativeSrc": "17656:1:74", + "nodeType": "YulLiteral", + "src": "17656:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17644:3:74", + "nodeType": "YulIdentifier", + "src": "17644:3:74" + }, + "nativeSrc": "17644:14:74", + "nodeType": "YulFunctionCall", + "src": "17644:14:74" + }, + { + "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", + "kind": "string", + "nativeSrc": "17660:34:74", + "nodeType": "YulLiteral", + "src": "17660:34:74", + "type": "", + "value": "ERC721: transfer from incorrect " + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17637:6:74", + "nodeType": "YulIdentifier", + "src": "17637:6:74" + }, + "nativeSrc": "17637:58:74", + "nodeType": "YulFunctionCall", + "src": "17637:58:74" + }, + "nativeSrc": "17637:58:74", + "nodeType": "YulExpressionStatement", + "src": "17637:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "17716:6:74", + "nodeType": "YulIdentifier", + "src": "17716:6:74" + }, + { + "kind": "number", + "nativeSrc": "17724:2:74", + "nodeType": "YulLiteral", + "src": "17724:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17712:3:74", + "nodeType": "YulIdentifier", + "src": "17712:3:74" + }, + "nativeSrc": "17712:15:74", + "nodeType": "YulFunctionCall", + "src": "17712:15:74" + }, + { + "hexValue": "6f776e6572", + "kind": "string", + "nativeSrc": "17729:7:74", + "nodeType": "YulLiteral", + "src": "17729:7:74", + "type": "", + "value": "owner" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17705:6:74", + "nodeType": "YulIdentifier", + "src": "17705:6:74" + }, + "nativeSrc": "17705:32:74", + "nodeType": "YulFunctionCall", + "src": "17705:32:74" + }, + "nativeSrc": "17705:32:74", + "nodeType": "YulExpressionStatement", + "src": "17705:32:74" + } + ] + }, + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "17520:224:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "17618:6:74", + "nodeType": "YulTypedName", + "src": "17618:6:74", + "type": "" + } + ], + "src": "17520:224:74" + }, + { + "body": { + "nativeSrc": "17896:220:74", + "nodeType": "YulBlock", + "src": "17896:220:74", + "statements": [ + { + "nativeSrc": "17906:74:74", + "nodeType": "YulAssignment", + "src": "17906:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17972:3:74", + "nodeType": "YulIdentifier", + "src": "17972:3:74" + }, + { + "kind": "number", + "nativeSrc": "17977:2:74", + "nodeType": "YulLiteral", + "src": "17977:2:74", + "type": "", + "value": "37" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "17913:58:74", + "nodeType": "YulIdentifier", + "src": "17913:58:74" + }, + "nativeSrc": "17913:67:74", + "nodeType": "YulFunctionCall", + "src": "17913:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17906:3:74", + "nodeType": "YulIdentifier", + "src": "17906:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18078:3:74", + "nodeType": "YulIdentifier", + "src": "18078:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", + "nativeSrc": "17989:88:74", + "nodeType": "YulIdentifier", + "src": "17989:88:74" + }, + "nativeSrc": "17989:93:74", + "nodeType": "YulFunctionCall", + "src": "17989:93:74" + }, + "nativeSrc": "17989:93:74", + "nodeType": "YulExpressionStatement", + "src": "17989:93:74" + }, + { + "nativeSrc": "18091:19:74", + "nodeType": "YulAssignment", + "src": "18091:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18102:3:74", + "nodeType": "YulIdentifier", + "src": "18102:3:74" + }, + { + "kind": "number", + "nativeSrc": "18107:2:74", + "nodeType": "YulLiteral", + "src": "18107:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18098:3:74", + "nodeType": "YulIdentifier", + "src": "18098:3:74" + }, + "nativeSrc": "18098:12:74", + "nodeType": "YulFunctionCall", + "src": "18098:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "18091:3:74", + "nodeType": "YulIdentifier", + "src": "18091:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "17750:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "17884:3:74", + "nodeType": "YulTypedName", + "src": "17884:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "17892:3:74", + "nodeType": "YulTypedName", + "src": "17892:3:74", + "type": "" + } + ], + "src": "17750:366:74" + }, + { + "body": { + "nativeSrc": "18293:248:74", + "nodeType": "YulBlock", + "src": "18293:248:74", + "statements": [ + { + "nativeSrc": "18303:26:74", + "nodeType": "YulAssignment", + "src": "18303:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18315:9:74", + "nodeType": "YulIdentifier", + "src": "18315:9:74" + }, + { + "kind": "number", + "nativeSrc": "18326:2:74", + "nodeType": "YulLiteral", + "src": "18326:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18311:3:74", + "nodeType": "YulIdentifier", + "src": "18311:3:74" + }, + "nativeSrc": "18311:18:74", + "nodeType": "YulFunctionCall", + "src": "18311:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "18303:4:74", + "nodeType": "YulIdentifier", + "src": "18303:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18350:9:74", + "nodeType": "YulIdentifier", + "src": "18350:9:74" + }, + { + "kind": "number", + "nativeSrc": "18361:1:74", + "nodeType": "YulLiteral", + "src": "18361:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18346:3:74", + "nodeType": "YulIdentifier", + "src": "18346:3:74" + }, + "nativeSrc": "18346:17:74", + "nodeType": "YulFunctionCall", + "src": "18346:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "18369:4:74", + "nodeType": "YulIdentifier", + "src": "18369:4:74" + }, + { + "name": "headStart", + "nativeSrc": "18375:9:74", + "nodeType": "YulIdentifier", + "src": "18375:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18365:3:74", + "nodeType": "YulIdentifier", + "src": "18365:3:74" + }, + "nativeSrc": "18365:20:74", + "nodeType": "YulFunctionCall", + "src": "18365:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18339:6:74", + "nodeType": "YulIdentifier", + "src": "18339:6:74" + }, + "nativeSrc": "18339:47:74", + "nodeType": "YulFunctionCall", + "src": "18339:47:74" + }, + "nativeSrc": "18339:47:74", + "nodeType": "YulExpressionStatement", + "src": "18339:47:74" + }, + { + "nativeSrc": "18395:139:74", + "nodeType": "YulAssignment", + "src": "18395:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "18529:4:74", + "nodeType": "YulIdentifier", + "src": "18529:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", + "nativeSrc": "18403:124:74", + "nodeType": "YulIdentifier", + "src": "18403:124:74" + }, + "nativeSrc": "18403:131:74", + "nodeType": "YulFunctionCall", + "src": "18403:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "18395:4:74", + "nodeType": "YulIdentifier", + "src": "18395:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "18122:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18273:9:74", + "nodeType": "YulTypedName", + "src": "18273:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "18288:4:74", + "nodeType": "YulTypedName", + "src": "18288:4:74", + "type": "" + } + ], + "src": "18122:419:74" + }, + { + "body": { + "nativeSrc": "18653:117:74", + "nodeType": "YulBlock", + "src": "18653:117:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "18675:6:74", + "nodeType": "YulIdentifier", + "src": "18675:6:74" + }, + { + "kind": "number", + "nativeSrc": "18683:1:74", + "nodeType": "YulLiteral", + "src": "18683:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18671:3:74", + "nodeType": "YulIdentifier", + "src": "18671:3:74" + }, + "nativeSrc": "18671:14:74", + "nodeType": "YulFunctionCall", + "src": "18671:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", + "kind": "string", + "nativeSrc": "18687:34:74", + "nodeType": "YulLiteral", + "src": "18687:34:74", + "type": "", + "value": "ERC721: transfer to the zero add" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18664:6:74", + "nodeType": "YulIdentifier", + "src": "18664:6:74" + }, + "nativeSrc": "18664:58:74", + "nodeType": "YulFunctionCall", + "src": "18664:58:74" + }, + "nativeSrc": "18664:58:74", + "nodeType": "YulExpressionStatement", + "src": "18664:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "18743:6:74", + "nodeType": "YulIdentifier", + "src": "18743:6:74" + }, + { + "kind": "number", + "nativeSrc": "18751:2:74", + "nodeType": "YulLiteral", + "src": "18751:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18739:3:74", + "nodeType": "YulIdentifier", + "src": "18739:3:74" + }, + "nativeSrc": "18739:15:74", + "nodeType": "YulFunctionCall", + "src": "18739:15:74" + }, + { + "hexValue": "72657373", + "kind": "string", + "nativeSrc": "18756:6:74", + "nodeType": "YulLiteral", + "src": "18756:6:74", + "type": "", + "value": "ress" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "18732:6:74", + "nodeType": "YulIdentifier", + "src": "18732:6:74" + }, + "nativeSrc": "18732:31:74", + "nodeType": "YulFunctionCall", + "src": "18732:31:74" + }, + "nativeSrc": "18732:31:74", + "nodeType": "YulExpressionStatement", + "src": "18732:31:74" + } + ] + }, + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "18547:223:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "18645:6:74", + "nodeType": "YulTypedName", + "src": "18645:6:74", + "type": "" + } + ], + "src": "18547:223:74" + }, + { + "body": { + "nativeSrc": "18922:220:74", + "nodeType": "YulBlock", + "src": "18922:220:74", + "statements": [ + { + "nativeSrc": "18932:74:74", + "nodeType": "YulAssignment", + "src": "18932:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "18998:3:74", + "nodeType": "YulIdentifier", + "src": "18998:3:74" + }, + { + "kind": "number", + "nativeSrc": "19003:2:74", + "nodeType": "YulLiteral", + "src": "19003:2:74", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "18939:58:74", + "nodeType": "YulIdentifier", + "src": "18939:58:74" + }, + "nativeSrc": "18939:67:74", + "nodeType": "YulFunctionCall", + "src": "18939:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "18932:3:74", + "nodeType": "YulIdentifier", + "src": "18932:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19104:3:74", + "nodeType": "YulIdentifier", + "src": "19104:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", + "nativeSrc": "19015:88:74", + "nodeType": "YulIdentifier", + "src": "19015:88:74" + }, + "nativeSrc": "19015:93:74", + "nodeType": "YulFunctionCall", + "src": "19015:93:74" + }, + "nativeSrc": "19015:93:74", + "nodeType": "YulExpressionStatement", + "src": "19015:93:74" + }, + { + "nativeSrc": "19117:19:74", + "nodeType": "YulAssignment", + "src": "19117:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19128:3:74", + "nodeType": "YulIdentifier", + "src": "19128:3:74" + }, + { + "kind": "number", + "nativeSrc": "19133:2:74", + "nodeType": "YulLiteral", + "src": "19133:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19124:3:74", + "nodeType": "YulIdentifier", + "src": "19124:3:74" + }, + "nativeSrc": "19124:12:74", + "nodeType": "YulFunctionCall", + "src": "19124:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "19117:3:74", + "nodeType": "YulIdentifier", + "src": "19117:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "18776:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "18910:3:74", + "nodeType": "YulTypedName", + "src": "18910:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "18918:3:74", + "nodeType": "YulTypedName", + "src": "18918:3:74", + "type": "" + } + ], + "src": "18776:366:74" + }, + { + "body": { + "nativeSrc": "19319:248:74", + "nodeType": "YulBlock", + "src": "19319:248:74", + "statements": [ + { + "nativeSrc": "19329:26:74", + "nodeType": "YulAssignment", + "src": "19329:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19341:9:74", + "nodeType": "YulIdentifier", + "src": "19341:9:74" + }, + { + "kind": "number", + "nativeSrc": "19352:2:74", + "nodeType": "YulLiteral", + "src": "19352:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19337:3:74", + "nodeType": "YulIdentifier", + "src": "19337:3:74" + }, + "nativeSrc": "19337:18:74", + "nodeType": "YulFunctionCall", + "src": "19337:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19329:4:74", + "nodeType": "YulIdentifier", + "src": "19329:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "19376:9:74", + "nodeType": "YulIdentifier", + "src": "19376:9:74" + }, + { + "kind": "number", + "nativeSrc": "19387:1:74", + "nodeType": "YulLiteral", + "src": "19387:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19372:3:74", + "nodeType": "YulIdentifier", + "src": "19372:3:74" + }, + "nativeSrc": "19372:17:74", + "nodeType": "YulFunctionCall", + "src": "19372:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19395:4:74", + "nodeType": "YulIdentifier", + "src": "19395:4:74" + }, + { + "name": "headStart", + "nativeSrc": "19401:9:74", + "nodeType": "YulIdentifier", + "src": "19401:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "19391:3:74", + "nodeType": "YulIdentifier", + "src": "19391:3:74" + }, + "nativeSrc": "19391:20:74", + "nodeType": "YulFunctionCall", + "src": "19391:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19365:6:74", + "nodeType": "YulIdentifier", + "src": "19365:6:74" + }, + "nativeSrc": "19365:47:74", + "nodeType": "YulFunctionCall", + "src": "19365:47:74" + }, + "nativeSrc": "19365:47:74", + "nodeType": "YulExpressionStatement", + "src": "19365:47:74" + }, + { + "nativeSrc": "19421:139:74", + "nodeType": "YulAssignment", + "src": "19421:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "19555:4:74", + "nodeType": "YulIdentifier", + "src": "19555:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19429:124:74", + "nodeType": "YulIdentifier", + "src": "19429:124:74" + }, + "nativeSrc": "19429:131:74", + "nodeType": "YulFunctionCall", + "src": "19429:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "19421:4:74", + "nodeType": "YulIdentifier", + "src": "19421:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "19148:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "19299:9:74", + "nodeType": "YulTypedName", + "src": "19299:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "19314:4:74", + "nodeType": "YulTypedName", + "src": "19314:4:74", + "type": "" + } + ], + "src": "19148:419:74" + }, + { + "body": { + "nativeSrc": "19679:69:74", + "nodeType": "YulBlock", + "src": "19679:69:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "19701:6:74", + "nodeType": "YulIdentifier", + "src": "19701:6:74" + }, + { + "kind": "number", + "nativeSrc": "19709:1:74", + "nodeType": "YulLiteral", + "src": "19709:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19697:3:74", + "nodeType": "YulIdentifier", + "src": "19697:3:74" + }, + "nativeSrc": "19697:14:74", + "nodeType": "YulFunctionCall", + "src": "19697:14:74" + }, + { + "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", + "kind": "string", + "nativeSrc": "19713:27:74", + "nodeType": "YulLiteral", + "src": "19713:27:74", + "type": "", + "value": "ERC721: approve to caller" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "19690:6:74", + "nodeType": "YulIdentifier", + "src": "19690:6:74" + }, + "nativeSrc": "19690:51:74", + "nodeType": "YulFunctionCall", + "src": "19690:51:74" + }, + "nativeSrc": "19690:51:74", + "nodeType": "YulExpressionStatement", + "src": "19690:51:74" + } + ] + }, + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "19573:175:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "19671:6:74", + "nodeType": "YulTypedName", + "src": "19671:6:74", + "type": "" + } + ], + "src": "19573:175:74" + }, + { + "body": { + "nativeSrc": "19900:220:74", + "nodeType": "YulBlock", + "src": "19900:220:74", + "statements": [ + { + "nativeSrc": "19910:74:74", + "nodeType": "YulAssignment", + "src": "19910:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "19976:3:74", + "nodeType": "YulIdentifier", + "src": "19976:3:74" + }, + { + "kind": "number", + "nativeSrc": "19981:2:74", + "nodeType": "YulLiteral", + "src": "19981:2:74", + "type": "", + "value": "25" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "19917:58:74", + "nodeType": "YulIdentifier", + "src": "19917:58:74" + }, + "nativeSrc": "19917:67:74", + "nodeType": "YulFunctionCall", + "src": "19917:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "19910:3:74", + "nodeType": "YulIdentifier", + "src": "19910:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20082:3:74", + "nodeType": "YulIdentifier", + "src": "20082:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", + "nativeSrc": "19993:88:74", + "nodeType": "YulIdentifier", + "src": "19993:88:74" + }, + "nativeSrc": "19993:93:74", + "nodeType": "YulFunctionCall", + "src": "19993:93:74" + }, + "nativeSrc": "19993:93:74", + "nodeType": "YulExpressionStatement", + "src": "19993:93:74" + }, + { + "nativeSrc": "20095:19:74", + "nodeType": "YulAssignment", + "src": "20095:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "20106:3:74", + "nodeType": "YulIdentifier", + "src": "20106:3:74" + }, + { + "kind": "number", + "nativeSrc": "20111:2:74", + "nodeType": "YulLiteral", + "src": "20111:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20102:3:74", + "nodeType": "YulIdentifier", + "src": "20102:3:74" + }, + "nativeSrc": "20102:12:74", + "nodeType": "YulFunctionCall", + "src": "20102:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "20095:3:74", + "nodeType": "YulIdentifier", + "src": "20095:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "19754:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "19888:3:74", + "nodeType": "YulTypedName", + "src": "19888:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "19896:3:74", + "nodeType": "YulTypedName", + "src": "19896:3:74", + "type": "" + } + ], + "src": "19754:366:74" + }, + { + "body": { + "nativeSrc": "20297:248:74", + "nodeType": "YulBlock", + "src": "20297:248:74", + "statements": [ + { + "nativeSrc": "20307:26:74", + "nodeType": "YulAssignment", + "src": "20307:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20319:9:74", + "nodeType": "YulIdentifier", + "src": "20319:9:74" + }, + { + "kind": "number", + "nativeSrc": "20330:2:74", + "nodeType": "YulLiteral", + "src": "20330:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20315:3:74", + "nodeType": "YulIdentifier", + "src": "20315:3:74" + }, + "nativeSrc": "20315:18:74", + "nodeType": "YulFunctionCall", + "src": "20315:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "20307:4:74", + "nodeType": "YulIdentifier", + "src": "20307:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "20354:9:74", + "nodeType": "YulIdentifier", + "src": "20354:9:74" + }, + { + "kind": "number", + "nativeSrc": "20365:1:74", + "nodeType": "YulLiteral", + "src": "20365:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20350:3:74", + "nodeType": "YulIdentifier", + "src": "20350:3:74" + }, + "nativeSrc": "20350:17:74", + "nodeType": "YulFunctionCall", + "src": "20350:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "20373:4:74", + "nodeType": "YulIdentifier", + "src": "20373:4:74" + }, + { + "name": "headStart", + "nativeSrc": "20379:9:74", + "nodeType": "YulIdentifier", + "src": "20379:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "20369:3:74", + "nodeType": "YulIdentifier", + "src": "20369:3:74" + }, + "nativeSrc": "20369:20:74", + "nodeType": "YulFunctionCall", + "src": "20369:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20343:6:74", + "nodeType": "YulIdentifier", + "src": "20343:6:74" + }, + "nativeSrc": "20343:47:74", + "nodeType": "YulFunctionCall", + "src": "20343:47:74" + }, + "nativeSrc": "20343:47:74", + "nodeType": "YulExpressionStatement", + "src": "20343:47:74" + }, + { + "nativeSrc": "20399:139:74", + "nodeType": "YulAssignment", + "src": "20399:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "20533:4:74", + "nodeType": "YulIdentifier", + "src": "20533:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", + "nativeSrc": "20407:124:74", + "nodeType": "YulIdentifier", + "src": "20407:124:74" + }, + "nativeSrc": "20407:131:74", + "nodeType": "YulFunctionCall", + "src": "20407:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "20399:4:74", + "nodeType": "YulIdentifier", + "src": "20399:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "20126:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "20277:9:74", + "nodeType": "YulTypedName", + "src": "20277:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "20292:4:74", + "nodeType": "YulTypedName", + "src": "20292:4:74", + "type": "" + } + ], + "src": "20126:419:74" + }, + { + "body": { + "nativeSrc": "20657:131:74", + "nodeType": "YulBlock", + "src": "20657:131:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "20679:6:74", + "nodeType": "YulIdentifier", + "src": "20679:6:74" + }, + { + "kind": "number", + "nativeSrc": "20687:1:74", + "nodeType": "YulLiteral", + "src": "20687:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20675:3:74", + "nodeType": "YulIdentifier", + "src": "20675:3:74" + }, + "nativeSrc": "20675:14:74", + "nodeType": "YulFunctionCall", + "src": "20675:14:74" + }, + { + "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", + "kind": "string", + "nativeSrc": "20691:34:74", + "nodeType": "YulLiteral", + "src": "20691:34:74", + "type": "", + "value": "ERC721: transfer to non ERC721Re" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20668:6:74", + "nodeType": "YulIdentifier", + "src": "20668:6:74" + }, + "nativeSrc": "20668:58:74", + "nodeType": "YulFunctionCall", + "src": "20668:58:74" + }, + "nativeSrc": "20668:58:74", + "nodeType": "YulExpressionStatement", + "src": "20668:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "20747:6:74", + "nodeType": "YulIdentifier", + "src": "20747:6:74" + }, + { + "kind": "number", + "nativeSrc": "20755:2:74", + "nodeType": "YulLiteral", + "src": "20755:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20743:3:74", + "nodeType": "YulIdentifier", + "src": "20743:3:74" + }, + "nativeSrc": "20743:15:74", + "nodeType": "YulFunctionCall", + "src": "20743:15:74" + }, + { + "hexValue": "63656976657220696d706c656d656e746572", + "kind": "string", + "nativeSrc": "20760:20:74", + "nodeType": "YulLiteral", + "src": "20760:20:74", + "type": "", + "value": "ceiver implementer" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20736:6:74", + "nodeType": "YulIdentifier", + "src": "20736:6:74" + }, + "nativeSrc": "20736:45:74", + "nodeType": "YulFunctionCall", + "src": "20736:45:74" + }, + "nativeSrc": "20736:45:74", + "nodeType": "YulExpressionStatement", + "src": "20736:45:74" + } + ] + }, + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "20551:237:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "20649:6:74", + "nodeType": "YulTypedName", + "src": "20649:6:74", + "type": "" + } + ], + "src": "20551:237:74" + }, + { + "body": { + "nativeSrc": "20940:220:74", + "nodeType": "YulBlock", + "src": "20940:220:74", + "statements": [ + { + "nativeSrc": "20950:74:74", + "nodeType": "YulAssignment", + "src": "20950:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21016:3:74", + "nodeType": "YulIdentifier", + "src": "21016:3:74" + }, + { + "kind": "number", + "nativeSrc": "21021:2:74", + "nodeType": "YulLiteral", + "src": "21021:2:74", + "type": "", + "value": "50" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "20957:58:74", + "nodeType": "YulIdentifier", + "src": "20957:58:74" + }, + "nativeSrc": "20957:67:74", + "nodeType": "YulFunctionCall", + "src": "20957:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "20950:3:74", + "nodeType": "YulIdentifier", + "src": "20950:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21122:3:74", + "nodeType": "YulIdentifier", + "src": "21122:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", + "nativeSrc": "21033:88:74", + "nodeType": "YulIdentifier", + "src": "21033:88:74" + }, + "nativeSrc": "21033:93:74", + "nodeType": "YulFunctionCall", + "src": "21033:93:74" + }, + "nativeSrc": "21033:93:74", + "nodeType": "YulExpressionStatement", + "src": "21033:93:74" + }, + { + "nativeSrc": "21135:19:74", + "nodeType": "YulAssignment", + "src": "21135:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21146:3:74", + "nodeType": "YulIdentifier", + "src": "21146:3:74" + }, + { + "kind": "number", + "nativeSrc": "21151:2:74", + "nodeType": "YulLiteral", + "src": "21151:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21142:3:74", + "nodeType": "YulIdentifier", + "src": "21142:3:74" + }, + "nativeSrc": "21142:12:74", + "nodeType": "YulFunctionCall", + "src": "21142:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "21135:3:74", + "nodeType": "YulIdentifier", + "src": "21135:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "20794:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "20928:3:74", + "nodeType": "YulTypedName", + "src": "20928:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "20936:3:74", + "nodeType": "YulTypedName", + "src": "20936:3:74", + "type": "" + } + ], + "src": "20794:366:74" + }, + { + "body": { + "nativeSrc": "21337:248:74", + "nodeType": "YulBlock", + "src": "21337:248:74", + "statements": [ + { + "nativeSrc": "21347:26:74", + "nodeType": "YulAssignment", + "src": "21347:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21359:9:74", + "nodeType": "YulIdentifier", + "src": "21359:9:74" + }, + { + "kind": "number", + "nativeSrc": "21370:2:74", + "nodeType": "YulLiteral", + "src": "21370:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21355:3:74", + "nodeType": "YulIdentifier", + "src": "21355:3:74" + }, + "nativeSrc": "21355:18:74", + "nodeType": "YulFunctionCall", + "src": "21355:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "21347:4:74", + "nodeType": "YulIdentifier", + "src": "21347:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21394:9:74", + "nodeType": "YulIdentifier", + "src": "21394:9:74" + }, + { + "kind": "number", + "nativeSrc": "21405:1:74", + "nodeType": "YulLiteral", + "src": "21405:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21390:3:74", + "nodeType": "YulIdentifier", + "src": "21390:3:74" + }, + "nativeSrc": "21390:17:74", + "nodeType": "YulFunctionCall", + "src": "21390:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "21413:4:74", + "nodeType": "YulIdentifier", + "src": "21413:4:74" + }, + { + "name": "headStart", + "nativeSrc": "21419:9:74", + "nodeType": "YulIdentifier", + "src": "21419:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "21409:3:74", + "nodeType": "YulIdentifier", + "src": "21409:3:74" + }, + "nativeSrc": "21409:20:74", + "nodeType": "YulFunctionCall", + "src": "21409:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21383:6:74", + "nodeType": "YulIdentifier", + "src": "21383:6:74" + }, + "nativeSrc": "21383:47:74", + "nodeType": "YulFunctionCall", + "src": "21383:47:74" + }, + "nativeSrc": "21383:47:74", + "nodeType": "YulExpressionStatement", + "src": "21383:47:74" + }, + { + "nativeSrc": "21439:139:74", + "nodeType": "YulAssignment", + "src": "21439:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "21573:4:74", + "nodeType": "YulIdentifier", + "src": "21573:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", + "nativeSrc": "21447:124:74", + "nodeType": "YulIdentifier", + "src": "21447:124:74" + }, + "nativeSrc": "21447:131:74", + "nodeType": "YulFunctionCall", + "src": "21447:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "21439:4:74", + "nodeType": "YulIdentifier", + "src": "21439:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "21166:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "21317:9:74", + "nodeType": "YulTypedName", + "src": "21317:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "21332:4:74", + "nodeType": "YulTypedName", + "src": "21332:4:74", + "type": "" + } + ], + "src": "21166:419:74" + }, + { + "body": { + "nativeSrc": "21619:152:74", + "nodeType": "YulBlock", + "src": "21619:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21636:1:74", + "nodeType": "YulLiteral", + "src": "21636:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "21639:77:74", + "nodeType": "YulLiteral", + "src": "21639:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21629:6:74", + "nodeType": "YulIdentifier", + "src": "21629:6:74" + }, + "nativeSrc": "21629:88:74", + "nodeType": "YulFunctionCall", + "src": "21629:88:74" + }, + "nativeSrc": "21629:88:74", + "nodeType": "YulExpressionStatement", + "src": "21629:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21733:1:74", + "nodeType": "YulLiteral", + "src": "21733:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "21736:4:74", + "nodeType": "YulLiteral", + "src": "21736:4:74", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21726:6:74", + "nodeType": "YulIdentifier", + "src": "21726:6:74" + }, + "nativeSrc": "21726:15:74", + "nodeType": "YulFunctionCall", + "src": "21726:15:74" + }, + "nativeSrc": "21726:15:74", + "nodeType": "YulExpressionStatement", + "src": "21726:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "21757:1:74", + "nodeType": "YulLiteral", + "src": "21757:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "21760:4:74", + "nodeType": "YulLiteral", + "src": "21760:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "21750:6:74", + "nodeType": "YulIdentifier", + "src": "21750:6:74" + }, + "nativeSrc": "21750:15:74", + "nodeType": "YulFunctionCall", + "src": "21750:15:74" + }, + "nativeSrc": "21750:15:74", + "nodeType": "YulExpressionStatement", + "src": "21750:15:74" + } + ] + }, + "name": "panic_error_0x12", + "nativeSrc": "21591:180:74", + "nodeType": "YulFunctionDefinition", + "src": "21591:180:74" + }, + { + "body": { + "nativeSrc": "21835:40:74", + "nodeType": "YulBlock", + "src": "21835:40:74", + "statements": [ + { + "nativeSrc": "21846:22:74", + "nodeType": "YulAssignment", + "src": "21846:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "21862:5:74", + "nodeType": "YulIdentifier", + "src": "21862:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "21856:5:74", + "nodeType": "YulIdentifier", + "src": "21856:5:74" + }, + "nativeSrc": "21856:12:74", + "nodeType": "YulFunctionCall", + "src": "21856:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "21846:6:74", + "nodeType": "YulIdentifier", + "src": "21846:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "21777:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "21818:5:74", + "nodeType": "YulTypedName", + "src": "21818:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "21828:6:74", + "nodeType": "YulTypedName", + "src": "21828:6:74", + "type": "" + } + ], + "src": "21777:98:74" + }, + { + "body": { + "nativeSrc": "21976:73:74", + "nodeType": "YulBlock", + "src": "21976:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "21993:3:74", + "nodeType": "YulIdentifier", + "src": "21993:3:74" + }, + { + "name": "length", + "nativeSrc": "21998:6:74", + "nodeType": "YulIdentifier", + "src": "21998:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "21986:6:74", + "nodeType": "YulIdentifier", + "src": "21986:6:74" + }, + "nativeSrc": "21986:19:74", + "nodeType": "YulFunctionCall", + "src": "21986:19:74" + }, + "nativeSrc": "21986:19:74", + "nodeType": "YulExpressionStatement", + "src": "21986:19:74" + }, + { + "nativeSrc": "22014:29:74", + "nodeType": "YulAssignment", + "src": "22014:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22033:3:74", + "nodeType": "YulIdentifier", + "src": "22033:3:74" + }, + { + "kind": "number", + "nativeSrc": "22038:4:74", + "nodeType": "YulLiteral", + "src": "22038:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22029:3:74", + "nodeType": "YulIdentifier", + "src": "22029:3:74" + }, + "nativeSrc": "22029:14:74", + "nodeType": "YulFunctionCall", + "src": "22029:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "22014:11:74", + "nodeType": "YulIdentifier", + "src": "22014:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "21881:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "21948:3:74", + "nodeType": "YulTypedName", + "src": "21948:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "21953:6:74", + "nodeType": "YulTypedName", + "src": "21953:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "21964:11:74", + "nodeType": "YulTypedName", + "src": "21964:11:74", + "type": "" + } + ], + "src": "21881:168:74" + }, + { + "body": { + "nativeSrc": "22145:283:74", + "nodeType": "YulBlock", + "src": "22145:283:74", + "statements": [ + { + "nativeSrc": "22155:52:74", + "nodeType": "YulVariableDeclaration", + "src": "22155:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22201:5:74", + "nodeType": "YulIdentifier", + "src": "22201:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "22169:31:74", + "nodeType": "YulIdentifier", + "src": "22169:31:74" + }, + "nativeSrc": "22169:38:74", + "nodeType": "YulFunctionCall", + "src": "22169:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "22159:6:74", + "nodeType": "YulTypedName", + "src": "22159:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22216:77:74", + "nodeType": "YulAssignment", + "src": "22216:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22281:3:74", + "nodeType": "YulIdentifier", + "src": "22281:3:74" + }, + { + "name": "length", + "nativeSrc": "22286:6:74", + "nodeType": "YulIdentifier", + "src": "22286:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "22223:57:74", + "nodeType": "YulIdentifier", + "src": "22223:57:74" + }, + "nativeSrc": "22223:70:74", + "nodeType": "YulFunctionCall", + "src": "22223:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "22216:3:74", + "nodeType": "YulIdentifier", + "src": "22216:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "22341:5:74", + "nodeType": "YulIdentifier", + "src": "22341:5:74" + }, + { + "kind": "number", + "nativeSrc": "22348:4:74", + "nodeType": "YulLiteral", + "src": "22348:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22337:3:74", + "nodeType": "YulIdentifier", + "src": "22337:3:74" + }, + "nativeSrc": "22337:16:74", + "nodeType": "YulFunctionCall", + "src": "22337:16:74" + }, + { + "name": "pos", + "nativeSrc": "22355:3:74", + "nodeType": "YulIdentifier", + "src": "22355:3:74" + }, + { + "name": "length", + "nativeSrc": "22360:6:74", + "nodeType": "YulIdentifier", + "src": "22360:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "22302:34:74", + "nodeType": "YulIdentifier", + "src": "22302:34:74" + }, + "nativeSrc": "22302:65:74", + "nodeType": "YulFunctionCall", + "src": "22302:65:74" + }, + "nativeSrc": "22302:65:74", + "nodeType": "YulExpressionStatement", + "src": "22302:65:74" + }, + { + "nativeSrc": "22376:46:74", + "nodeType": "YulAssignment", + "src": "22376:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "22387:3:74", + "nodeType": "YulIdentifier", + "src": "22387:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "22414:6:74", + "nodeType": "YulIdentifier", + "src": "22414:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "22392:21:74", + "nodeType": "YulIdentifier", + "src": "22392:21:74" + }, + "nativeSrc": "22392:29:74", + "nodeType": "YulFunctionCall", + "src": "22392:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22383:3:74", + "nodeType": "YulIdentifier", + "src": "22383:3:74" + }, + "nativeSrc": "22383:39:74", + "nodeType": "YulFunctionCall", + "src": "22383:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "22376:3:74", + "nodeType": "YulIdentifier", + "src": "22376:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "22055:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22126:5:74", + "nodeType": "YulTypedName", + "src": "22126:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "22133:3:74", + "nodeType": "YulTypedName", + "src": "22133:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "22141:3:74", + "nodeType": "YulTypedName", + "src": "22141:3:74", + "type": "" + } + ], + "src": "22055:373:74" + }, + { + "body": { + "nativeSrc": "22634:440:74", + "nodeType": "YulBlock", + "src": "22634:440:74", + "statements": [ + { + "nativeSrc": "22644:27:74", + "nodeType": "YulAssignment", + "src": "22644:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22656:9:74", + "nodeType": "YulIdentifier", + "src": "22656:9:74" + }, + { + "kind": "number", + "nativeSrc": "22667:3:74", + "nodeType": "YulLiteral", + "src": "22667:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22652:3:74", + "nodeType": "YulIdentifier", + "src": "22652:3:74" + }, + "nativeSrc": "22652:19:74", + "nodeType": "YulFunctionCall", + "src": "22652:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22644:4:74", + "nodeType": "YulIdentifier", + "src": "22644:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "22725:6:74", + "nodeType": "YulIdentifier", + "src": "22725:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22738:9:74", + "nodeType": "YulIdentifier", + "src": "22738:9:74" + }, + { + "kind": "number", + "nativeSrc": "22749:1:74", + "nodeType": "YulLiteral", + "src": "22749:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22734:3:74", + "nodeType": "YulIdentifier", + "src": "22734:3:74" + }, + "nativeSrc": "22734:17:74", + "nodeType": "YulFunctionCall", + "src": "22734:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "22681:43:74", + "nodeType": "YulIdentifier", + "src": "22681:43:74" + }, + "nativeSrc": "22681:71:74", + "nodeType": "YulFunctionCall", + "src": "22681:71:74" + }, + "nativeSrc": "22681:71:74", + "nodeType": "YulExpressionStatement", + "src": "22681:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "22806:6:74", + "nodeType": "YulIdentifier", + "src": "22806:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22819:9:74", + "nodeType": "YulIdentifier", + "src": "22819:9:74" + }, + { + "kind": "number", + "nativeSrc": "22830:2:74", + "nodeType": "YulLiteral", + "src": "22830:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22815:3:74", + "nodeType": "YulIdentifier", + "src": "22815:3:74" + }, + "nativeSrc": "22815:18:74", + "nodeType": "YulFunctionCall", + "src": "22815:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "22762:43:74", + "nodeType": "YulIdentifier", + "src": "22762:43:74" + }, + "nativeSrc": "22762:72:74", + "nodeType": "YulFunctionCall", + "src": "22762:72:74" + }, + "nativeSrc": "22762:72:74", + "nodeType": "YulExpressionStatement", + "src": "22762:72:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "22888:6:74", + "nodeType": "YulIdentifier", + "src": "22888:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22901:9:74", + "nodeType": "YulIdentifier", + "src": "22901:9:74" + }, + { + "kind": "number", + "nativeSrc": "22912:2:74", + "nodeType": "YulLiteral", + "src": "22912:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22897:3:74", + "nodeType": "YulIdentifier", + "src": "22897:3:74" + }, + "nativeSrc": "22897:18:74", + "nodeType": "YulFunctionCall", + "src": "22897:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "22844:43:74", + "nodeType": "YulIdentifier", + "src": "22844:43:74" + }, + "nativeSrc": "22844:72:74", + "nodeType": "YulFunctionCall", + "src": "22844:72:74" + }, + "nativeSrc": "22844:72:74", + "nodeType": "YulExpressionStatement", + "src": "22844:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22937:9:74", + "nodeType": "YulIdentifier", + "src": "22937:9:74" + }, + { + "kind": "number", + "nativeSrc": "22948:2:74", + "nodeType": "YulLiteral", + "src": "22948:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22933:3:74", + "nodeType": "YulIdentifier", + "src": "22933:3:74" + }, + "nativeSrc": "22933:18:74", + "nodeType": "YulFunctionCall", + "src": "22933:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "22957:4:74", + "nodeType": "YulIdentifier", + "src": "22957:4:74" + }, + { + "name": "headStart", + "nativeSrc": "22963:9:74", + "nodeType": "YulIdentifier", + "src": "22963:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "22953:3:74", + "nodeType": "YulIdentifier", + "src": "22953:3:74" + }, + "nativeSrc": "22953:20:74", + "nodeType": "YulFunctionCall", + "src": "22953:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "22926:6:74", + "nodeType": "YulIdentifier", + "src": "22926:6:74" + }, + "nativeSrc": "22926:48:74", + "nodeType": "YulFunctionCall", + "src": "22926:48:74" + }, + "nativeSrc": "22926:48:74", + "nodeType": "YulExpressionStatement", + "src": "22926:48:74" + }, + { + "nativeSrc": "22983:84:74", + "nodeType": "YulAssignment", + "src": "22983:84:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "23053:6:74", + "nodeType": "YulIdentifier", + "src": "23053:6:74" + }, + { + "name": "tail", + "nativeSrc": "23062:4:74", + "nodeType": "YulIdentifier", + "src": "23062:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "22991:61:74", + "nodeType": "YulIdentifier", + "src": "22991:61:74" + }, + "nativeSrc": "22991:76:74", + "nodeType": "YulFunctionCall", + "src": "22991:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "22983:4:74", + "nodeType": "YulIdentifier", + "src": "22983:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "22434:640:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "22582:9:74", + "nodeType": "YulTypedName", + "src": "22582:9:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "22594:6:74", + "nodeType": "YulTypedName", + "src": "22594:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "22602:6:74", + "nodeType": "YulTypedName", + "src": "22602:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "22610:6:74", + "nodeType": "YulTypedName", + "src": "22610:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "22618:6:74", + "nodeType": "YulTypedName", + "src": "22618:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "22629:4:74", + "nodeType": "YulTypedName", + "src": "22629:4:74", + "type": "" + } + ], + "src": "22434:640:74" + }, + { + "body": { + "nativeSrc": "23142:79:74", + "nodeType": "YulBlock", + "src": "23142:79:74", + "statements": [ + { + "nativeSrc": "23152:22:74", + "nodeType": "YulAssignment", + "src": "23152:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "23167:6:74", + "nodeType": "YulIdentifier", + "src": "23167:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "23161:5:74", + "nodeType": "YulIdentifier", + "src": "23161:5:74" + }, + "nativeSrc": "23161:13:74", + "nodeType": "YulFunctionCall", + "src": "23161:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "23152:5:74", + "nodeType": "YulIdentifier", + "src": "23152:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23209:5:74", + "nodeType": "YulIdentifier", + "src": "23209:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "23183:25:74", + "nodeType": "YulIdentifier", + "src": "23183:25:74" + }, + "nativeSrc": "23183:32:74", + "nodeType": "YulFunctionCall", + "src": "23183:32:74" + }, + "nativeSrc": "23183:32:74", + "nodeType": "YulExpressionStatement", + "src": "23183:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "23080:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "23120:6:74", + "nodeType": "YulTypedName", + "src": "23120:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "23128:3:74", + "nodeType": "YulTypedName", + "src": "23128:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "23136:5:74", + "nodeType": "YulTypedName", + "src": "23136:5:74", + "type": "" + } + ], + "src": "23080:141:74" + }, + { + "body": { + "nativeSrc": "23303:273:74", + "nodeType": "YulBlock", + "src": "23303:273:74", + "statements": [ + { + "body": { + "nativeSrc": "23349:83:74", + "nodeType": "YulBlock", + "src": "23349:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "23351:77:74", + "nodeType": "YulIdentifier", + "src": "23351:77:74" + }, + "nativeSrc": "23351:79:74", + "nodeType": "YulFunctionCall", + "src": "23351:79:74" + }, + "nativeSrc": "23351:79:74", + "nodeType": "YulExpressionStatement", + "src": "23351:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "23324:7:74", + "nodeType": "YulIdentifier", + "src": "23324:7:74" + }, + { + "name": "headStart", + "nativeSrc": "23333:9:74", + "nodeType": "YulIdentifier", + "src": "23333:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "23320:3:74", + "nodeType": "YulIdentifier", + "src": "23320:3:74" + }, + "nativeSrc": "23320:23:74", + "nodeType": "YulFunctionCall", + "src": "23320:23:74" + }, + { + "kind": "number", + "nativeSrc": "23345:2:74", + "nodeType": "YulLiteral", + "src": "23345:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "23316:3:74", + "nodeType": "YulIdentifier", + "src": "23316:3:74" + }, + "nativeSrc": "23316:32:74", + "nodeType": "YulFunctionCall", + "src": "23316:32:74" + }, + "nativeSrc": "23313:119:74", + "nodeType": "YulIf", + "src": "23313:119:74" + }, + { + "nativeSrc": "23442:127:74", + "nodeType": "YulBlock", + "src": "23442:127:74", + "statements": [ + { + "nativeSrc": "23457:15:74", + "nodeType": "YulVariableDeclaration", + "src": "23457:15:74", + "value": { + "kind": "number", + "nativeSrc": "23471:1:74", + "nodeType": "YulLiteral", + "src": "23471:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "23461:6:74", + "nodeType": "YulTypedName", + "src": "23461:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23486:73:74", + "nodeType": "YulAssignment", + "src": "23486:73:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "23531:9:74", + "nodeType": "YulIdentifier", + "src": "23531:9:74" + }, + { + "name": "offset", + "nativeSrc": "23542:6:74", + "nodeType": "YulIdentifier", + "src": "23542:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23527:3:74", + "nodeType": "YulIdentifier", + "src": "23527:3:74" + }, + "nativeSrc": "23527:22:74", + "nodeType": "YulFunctionCall", + "src": "23527:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "23551:7:74", + "nodeType": "YulIdentifier", + "src": "23551:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4_fromMemory", + "nativeSrc": "23496:30:74", + "nodeType": "YulIdentifier", + "src": "23496:30:74" + }, + "nativeSrc": "23496:63:74", + "nodeType": "YulFunctionCall", + "src": "23496:63:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "23486:6:74", + "nodeType": "YulIdentifier", + "src": "23486:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4_fromMemory", + "nativeSrc": "23227:349:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "23273:9:74", + "nodeType": "YulTypedName", + "src": "23273:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "23284:7:74", + "nodeType": "YulTypedName", + "src": "23284:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "23296:6:74", + "nodeType": "YulTypedName", + "src": "23296:6:74", + "type": "" + } + ], + "src": "23227:349:74" + }, + { + "body": { + "nativeSrc": "23688:76:74", + "nodeType": "YulBlock", + "src": "23688:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "23710:6:74", + "nodeType": "YulIdentifier", + "src": "23710:6:74" + }, + { + "kind": "number", + "nativeSrc": "23718:1:74", + "nodeType": "YulLiteral", + "src": "23718:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23706:3:74", + "nodeType": "YulIdentifier", + "src": "23706:3:74" + }, + "nativeSrc": "23706:14:74", + "nodeType": "YulFunctionCall", + "src": "23706:14:74" + }, + { + "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", + "kind": "string", + "nativeSrc": "23722:34:74", + "nodeType": "YulLiteral", + "src": "23722:34:74", + "type": "", + "value": "ERC721: mint to the zero address" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23699:6:74", + "nodeType": "YulIdentifier", + "src": "23699:6:74" + }, + "nativeSrc": "23699:58:74", + "nodeType": "YulFunctionCall", + "src": "23699:58:74" + }, + "nativeSrc": "23699:58:74", + "nodeType": "YulExpressionStatement", + "src": "23699:58:74" + } + ] + }, + "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "nativeSrc": "23582:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "23680:6:74", + "nodeType": "YulTypedName", + "src": "23680:6:74", + "type": "" + } + ], + "src": "23582:182:74" + }, + { + "body": { + "nativeSrc": "23916:220:74", + "nodeType": "YulBlock", + "src": "23916:220:74", + "statements": [ + { + "nativeSrc": "23926:74:74", + "nodeType": "YulAssignment", + "src": "23926:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23992:3:74", + "nodeType": "YulIdentifier", + "src": "23992:3:74" + }, + { + "kind": "number", + "nativeSrc": "23997:2:74", + "nodeType": "YulLiteral", + "src": "23997:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "23933:58:74", + "nodeType": "YulIdentifier", + "src": "23933:58:74" + }, + "nativeSrc": "23933:67:74", + "nodeType": "YulFunctionCall", + "src": "23933:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "23926:3:74", + "nodeType": "YulIdentifier", + "src": "23926:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24098:3:74", + "nodeType": "YulIdentifier", + "src": "24098:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", + "nativeSrc": "24009:88:74", + "nodeType": "YulIdentifier", + "src": "24009:88:74" + }, + "nativeSrc": "24009:93:74", + "nodeType": "YulFunctionCall", + "src": "24009:93:74" + }, + "nativeSrc": "24009:93:74", + "nodeType": "YulExpressionStatement", + "src": "24009:93:74" + }, + { + "nativeSrc": "24111:19:74", + "nodeType": "YulAssignment", + "src": "24111:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24122:3:74", + "nodeType": "YulIdentifier", + "src": "24122:3:74" + }, + { + "kind": "number", + "nativeSrc": "24127:2:74", + "nodeType": "YulLiteral", + "src": "24127:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24118:3:74", + "nodeType": "YulIdentifier", + "src": "24118:3:74" + }, + "nativeSrc": "24118:12:74", + "nodeType": "YulFunctionCall", + "src": "24118:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "24111:3:74", + "nodeType": "YulIdentifier", + "src": "24111:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", + "nativeSrc": "23770:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "23904:3:74", + "nodeType": "YulTypedName", + "src": "23904:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "23912:3:74", + "nodeType": "YulTypedName", + "src": "23912:3:74", + "type": "" + } + ], + "src": "23770:366:74" + }, + { + "body": { + "nativeSrc": "24313:248:74", + "nodeType": "YulBlock", + "src": "24313:248:74", + "statements": [ + { + "nativeSrc": "24323:26:74", + "nodeType": "YulAssignment", + "src": "24323:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24335:9:74", + "nodeType": "YulIdentifier", + "src": "24335:9:74" + }, + { + "kind": "number", + "nativeSrc": "24346:2:74", + "nodeType": "YulLiteral", + "src": "24346:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24331:3:74", + "nodeType": "YulIdentifier", + "src": "24331:3:74" + }, + "nativeSrc": "24331:18:74", + "nodeType": "YulFunctionCall", + "src": "24331:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24323:4:74", + "nodeType": "YulIdentifier", + "src": "24323:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "24370:9:74", + "nodeType": "YulIdentifier", + "src": "24370:9:74" + }, + { + "kind": "number", + "nativeSrc": "24381:1:74", + "nodeType": "YulLiteral", + "src": "24381:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24366:3:74", + "nodeType": "YulIdentifier", + "src": "24366:3:74" + }, + "nativeSrc": "24366:17:74", + "nodeType": "YulFunctionCall", + "src": "24366:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "24389:4:74", + "nodeType": "YulIdentifier", + "src": "24389:4:74" + }, + { + "name": "headStart", + "nativeSrc": "24395:9:74", + "nodeType": "YulIdentifier", + "src": "24395:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "24385:3:74", + "nodeType": "YulIdentifier", + "src": "24385:3:74" + }, + "nativeSrc": "24385:20:74", + "nodeType": "YulFunctionCall", + "src": "24385:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24359:6:74", + "nodeType": "YulIdentifier", + "src": "24359:6:74" + }, + "nativeSrc": "24359:47:74", + "nodeType": "YulFunctionCall", + "src": "24359:47:74" + }, + "nativeSrc": "24359:47:74", + "nodeType": "YulExpressionStatement", + "src": "24359:47:74" + }, + { + "nativeSrc": "24415:139:74", + "nodeType": "YulAssignment", + "src": "24415:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "24549:4:74", + "nodeType": "YulIdentifier", + "src": "24549:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", + "nativeSrc": "24423:124:74", + "nodeType": "YulIdentifier", + "src": "24423:124:74" + }, + "nativeSrc": "24423:131:74", + "nodeType": "YulFunctionCall", + "src": "24423:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "24415:4:74", + "nodeType": "YulIdentifier", + "src": "24415:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "24142:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "24293:9:74", + "nodeType": "YulTypedName", + "src": "24293:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "24308:4:74", + "nodeType": "YulTypedName", + "src": "24308:4:74", + "type": "" + } + ], + "src": "24142:419:74" + }, + { + "body": { + "nativeSrc": "24673:72:74", + "nodeType": "YulBlock", + "src": "24673:72:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "24695:6:74", + "nodeType": "YulIdentifier", + "src": "24695:6:74" + }, + { + "kind": "number", + "nativeSrc": "24703:1:74", + "nodeType": "YulLiteral", + "src": "24703:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24691:3:74", + "nodeType": "YulIdentifier", + "src": "24691:3:74" + }, + "nativeSrc": "24691:14:74", + "nodeType": "YulFunctionCall", + "src": "24691:14:74" + }, + { + "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", + "kind": "string", + "nativeSrc": "24707:30:74", + "nodeType": "YulLiteral", + "src": "24707:30:74", + "type": "", + "value": "ERC721: token already minted" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24684:6:74", + "nodeType": "YulIdentifier", + "src": "24684:6:74" + }, + "nativeSrc": "24684:54:74", + "nodeType": "YulFunctionCall", + "src": "24684:54:74" + }, + "nativeSrc": "24684:54:74", + "nodeType": "YulExpressionStatement", + "src": "24684:54:74" + } + ] + }, + "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "nativeSrc": "24567:178:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "24665:6:74", + "nodeType": "YulTypedName", + "src": "24665:6:74", + "type": "" + } + ], + "src": "24567:178:74" + }, + { + "body": { + "nativeSrc": "24897:220:74", + "nodeType": "YulBlock", + "src": "24897:220:74", + "statements": [ + { + "nativeSrc": "24907:74:74", + "nodeType": "YulAssignment", + "src": "24907:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24973:3:74", + "nodeType": "YulIdentifier", + "src": "24973:3:74" + }, + { + "kind": "number", + "nativeSrc": "24978:2:74", + "nodeType": "YulLiteral", + "src": "24978:2:74", + "type": "", + "value": "28" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "24914:58:74", + "nodeType": "YulIdentifier", + "src": "24914:58:74" + }, + "nativeSrc": "24914:67:74", + "nodeType": "YulFunctionCall", + "src": "24914:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "24907:3:74", + "nodeType": "YulIdentifier", + "src": "24907:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25079:3:74", + "nodeType": "YulIdentifier", + "src": "25079:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", + "nativeSrc": "24990:88:74", + "nodeType": "YulIdentifier", + "src": "24990:88:74" + }, + "nativeSrc": "24990:93:74", + "nodeType": "YulFunctionCall", + "src": "24990:93:74" + }, + "nativeSrc": "24990:93:74", + "nodeType": "YulExpressionStatement", + "src": "24990:93:74" + }, + { + "nativeSrc": "25092:19:74", + "nodeType": "YulAssignment", + "src": "25092:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25103:3:74", + "nodeType": "YulIdentifier", + "src": "25103:3:74" + }, + { + "kind": "number", + "nativeSrc": "25108:2:74", + "nodeType": "YulLiteral", + "src": "25108:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25099:3:74", + "nodeType": "YulIdentifier", + "src": "25099:3:74" + }, + "nativeSrc": "25099:12:74", + "nodeType": "YulFunctionCall", + "src": "25099:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "25092:3:74", + "nodeType": "YulIdentifier", + "src": "25092:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", + "nativeSrc": "24751:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "24885:3:74", + "nodeType": "YulTypedName", + "src": "24885:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "24893:3:74", + "nodeType": "YulTypedName", + "src": "24893:3:74", + "type": "" + } + ], + "src": "24751:366:74" + }, + { + "body": { + "nativeSrc": "25294:248:74", + "nodeType": "YulBlock", + "src": "25294:248:74", + "statements": [ + { + "nativeSrc": "25304:26:74", + "nodeType": "YulAssignment", + "src": "25304:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25316:9:74", + "nodeType": "YulIdentifier", + "src": "25316:9:74" + }, + { + "kind": "number", + "nativeSrc": "25327:2:74", + "nodeType": "YulLiteral", + "src": "25327:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25312:3:74", + "nodeType": "YulIdentifier", + "src": "25312:3:74" + }, + "nativeSrc": "25312:18:74", + "nodeType": "YulFunctionCall", + "src": "25312:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "25304:4:74", + "nodeType": "YulIdentifier", + "src": "25304:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "25351:9:74", + "nodeType": "YulIdentifier", + "src": "25351:9:74" + }, + { + "kind": "number", + "nativeSrc": "25362:1:74", + "nodeType": "YulLiteral", + "src": "25362:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25347:3:74", + "nodeType": "YulIdentifier", + "src": "25347:3:74" + }, + "nativeSrc": "25347:17:74", + "nodeType": "YulFunctionCall", + "src": "25347:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "25370:4:74", + "nodeType": "YulIdentifier", + "src": "25370:4:74" + }, + { + "name": "headStart", + "nativeSrc": "25376:9:74", + "nodeType": "YulIdentifier", + "src": "25376:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "25366:3:74", + "nodeType": "YulIdentifier", + "src": "25366:3:74" + }, + "nativeSrc": "25366:20:74", + "nodeType": "YulFunctionCall", + "src": "25366:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25340:6:74", + "nodeType": "YulIdentifier", + "src": "25340:6:74" + }, + "nativeSrc": "25340:47:74", + "nodeType": "YulFunctionCall", + "src": "25340:47:74" + }, + "nativeSrc": "25340:47:74", + "nodeType": "YulExpressionStatement", + "src": "25340:47:74" + }, + { + "nativeSrc": "25396:139:74", + "nodeType": "YulAssignment", + "src": "25396:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "25530:4:74", + "nodeType": "YulIdentifier", + "src": "25530:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", + "nativeSrc": "25404:124:74", + "nodeType": "YulIdentifier", + "src": "25404:124:74" + }, + "nativeSrc": "25404:131:74", + "nodeType": "YulFunctionCall", + "src": "25404:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "25396:4:74", + "nodeType": "YulIdentifier", + "src": "25396:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "25123:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "25274:9:74", + "nodeType": "YulTypedName", + "src": "25274:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "25289:4:74", + "nodeType": "YulTypedName", + "src": "25289:4:74", + "type": "" + } + ], + "src": "25123:419:74" + } + ] + }, + "contents": "{\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: caller is not token owne\")\n\n mstore(add(memPtr, 32), \"r or approved\")\n\n }\n\n function abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: invalid token ID\")\n\n }\n\n function abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: address zero is not a va\")\n\n mstore(add(memPtr, 32), \"lid owner\")\n\n }\n\n function abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer from incorrect \")\n\n mstore(add(memPtr, 32), \"owner\")\n\n }\n\n function abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve to caller\")\n\n }\n\n function abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to non ERC721Re\")\n\n mstore(add(memPtr, 32), \"ceiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: mint to the zero address\")\n\n }\n\n function abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: token already minted\")\n\n }\n\n function abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100f45760003560e01c806342842e0e11610097578063a22cb46511610066578063a22cb46514610271578063b88d4fde1461028d578063c87b56dd146102a9578063e985e9c5146102d9576100f4565b806342842e0e146101d75780636352211e146101f357806370a082311461022357806395d89b4114610253576100f4565b8063081812fc116100d3578063081812fc14610165578063095ea7b3146101955780631249c58b146101b157806323b872dd146101bb576100f4565b80629a9b7b146100f957806301ffc9a71461011757806306fdde0314610147575b600080fd5b610101610309565b60405161010e91906117b0565b60405180910390f35b610131600480360381019061012c9190611837565b61030f565b60405161013e919061187f565b60405180910390f35b61014f6103f1565b60405161015c919061192a565b60405180910390f35b61017f600480360381019061017a9190611978565b610483565b60405161018c91906119e6565b60405180910390f35b6101af60048036038101906101aa9190611a2d565b6104c9565b005b6101b96105e0565b005b6101d560048036038101906101d09190611a6d565b610606565b005b6101f160048036038101906101ec9190611a6d565b610666565b005b61020d60048036038101906102089190611978565b610686565b60405161021a91906119e6565b60405180910390f35b61023d60048036038101906102389190611ac0565b61070c565b60405161024a91906117b0565b60405180910390f35b61025b6107c3565b604051610268919061192a565b60405180910390f35b61028b60048036038101906102869190611b19565b610855565b005b6102a760048036038101906102a29190611c8e565b61086b565b005b6102c360048036038101906102be9190611978565b6108cd565b6040516102d0919061192a565b60405180910390f35b6102f360048036038101906102ee9190611d11565b610935565b604051610300919061187f565b60405180910390f35b60065481565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103da57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103ea57506103e9826109c9565b5b9050919050565b60606000805461040090611d80565b80601f016020809104026020016040519081016040528092919081815260200182805461042c90611d80565b80156104795780601f1061044e57610100808354040283529160200191610479565b820191906000526020600020905b81548152906001019060200180831161045c57829003601f168201915b5050505050905090565b600061048e82610a33565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104d482610686565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053b90611e23565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610563610a7e565b73ffffffffffffffffffffffffffffffffffffffff16148061059257506105918161058c610a7e565b610935565b5b6105d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c890611eb5565b60405180910390fd5b6105db8383610a86565b505050565b6105ec33600654610b3f565b600660008154809291906105ff90611f04565b9190505550565b610617610611610a7e565b82610b5d565b610656576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064d90611fbe565b60405180910390fd5b610661838383610bf2565b505050565b6106818383836040518060200160405280600081525061086b565b505050565b60008061069283610eeb565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa9061202a565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361077c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610773906120bc565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546107d290611d80565b80601f01602080910402602001604051908101604052809291908181526020018280546107fe90611d80565b801561084b5780601f106108205761010080835404028352916020019161084b565b820191906000526020600020905b81548152906001019060200180831161082e57829003601f168201915b5050505050905090565b610867610860610a7e565b8383610f28565b5050565b61087c610876610a7e565b83610b5d565b6108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b290611fbe565b60405180910390fd5b6108c784848484611094565b50505050565b60606108d882610a33565b60006108e26110f0565b90506000815111610902576040518060200160405280600081525061092d565b8061090c84611107565b60405160200161091d929190612118565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610a3c816111d5565b610a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a729061202a565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610af983610686565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b610b59828260405180602001604052806000815250611216565b5050565b600080610b6983610686565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610bab5750610baa8185610935565b5b80610be957508373ffffffffffffffffffffffffffffffffffffffff16610bd184610483565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610c1282610686565b73ffffffffffffffffffffffffffffffffffffffff1614610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f906121ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cce90612240565b60405180910390fd5b610ce48383836001611271565b8273ffffffffffffffffffffffffffffffffffffffff16610d0482610686565b73ffffffffffffffffffffffffffffffffffffffff1614610d5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d51906121ae565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ee68383836001611277565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8d906122ac565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611087919061187f565b60405180910390a3505050565b61109f848484610bf2565b6110ab8484848461127d565b6110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e19061233e565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b60606000600161111684611404565b01905060008167ffffffffffffffff81111561113557611134611b63565b5b6040519080825280601f01601f1916602001820160405280156111675781602001600182028036833780820191505090505b509050600082602001820190505b6001156111ca578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816111be576111bd61235e565b5b04945060008503611175575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166111f783610eeb565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6112208383611557565b61122d600084848461127d565b61126c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112639061233e565b60405180910390fd5b505050565b50505050565b50505050565b600061129e8473ffffffffffffffffffffffffffffffffffffffff16611774565b156113f7578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026112c7610a7e565b8786866040518563ffffffff1660e01b81526004016112e994939291906123e2565b6020604051808303816000875af192505050801561132557506040513d601f19601f820116820180604052508101906113229190612443565b60015b6113a7573d8060008114611355576040519150601f19603f3d011682016040523d82523d6000602084013e61135a565b606091505b50600081510361139f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113969061233e565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506113fc565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611462577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816114585761145761235e565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061149f576d04ee2d6d415b85acef810000000083816114955761149461235e565b5b0492506020810190505b662386f26fc1000083106114ce57662386f26fc1000083816114c4576114c361235e565b5b0492506010810190505b6305f5e10083106114f7576305f5e10083816114ed576114ec61235e565b5b0492506008810190505b612710831061151c5761271083816115125761151161235e565b5b0492506004810190505b6064831061153f57606483816115355761153461235e565b5b0492506002810190505b600a831061154e576001810190505b80915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bd906124bc565b60405180910390fd5b6115cf816111d5565b1561160f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160690612528565b60405180910390fd5b61161d600083836001611271565b611626816111d5565b15611666576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165d90612528565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611770600083836001611277565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000819050919050565b6117aa81611797565b82525050565b60006020820190506117c560008301846117a1565b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611814816117df565b811461181f57600080fd5b50565b6000813590506118318161180b565b92915050565b60006020828403121561184d5761184c6117d5565b5b600061185b84828501611822565b91505092915050565b60008115159050919050565b61187981611864565b82525050565b60006020820190506118946000830184611870565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156118d45780820151818401526020810190506118b9565b60008484015250505050565b6000601f19601f8301169050919050565b60006118fc8261189a565b61190681856118a5565b93506119168185602086016118b6565b61191f816118e0565b840191505092915050565b6000602082019050818103600083015261194481846118f1565b905092915050565b61195581611797565b811461196057600080fd5b50565b6000813590506119728161194c565b92915050565b60006020828403121561198e5761198d6117d5565b5b600061199c84828501611963565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119d0826119a5565b9050919050565b6119e0816119c5565b82525050565b60006020820190506119fb60008301846119d7565b92915050565b611a0a816119c5565b8114611a1557600080fd5b50565b600081359050611a2781611a01565b92915050565b60008060408385031215611a4457611a436117d5565b5b6000611a5285828601611a18565b9250506020611a6385828601611963565b9150509250929050565b600080600060608486031215611a8657611a856117d5565b5b6000611a9486828701611a18565b9350506020611aa586828701611a18565b9250506040611ab686828701611963565b9150509250925092565b600060208284031215611ad657611ad56117d5565b5b6000611ae484828501611a18565b91505092915050565b611af681611864565b8114611b0157600080fd5b50565b600081359050611b1381611aed565b92915050565b60008060408385031215611b3057611b2f6117d5565b5b6000611b3e85828601611a18565b9250506020611b4f85828601611b04565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611b9b826118e0565b810181811067ffffffffffffffff82111715611bba57611bb9611b63565b5b80604052505050565b6000611bcd6117cb565b9050611bd98282611b92565b919050565b600067ffffffffffffffff821115611bf957611bf8611b63565b5b611c02826118e0565b9050602081019050919050565b82818337600083830152505050565b6000611c31611c2c84611bde565b611bc3565b905082815260208101848484011115611c4d57611c4c611b5e565b5b611c58848285611c0f565b509392505050565b600082601f830112611c7557611c74611b59565b5b8135611c85848260208601611c1e565b91505092915050565b60008060008060808587031215611ca857611ca76117d5565b5b6000611cb687828801611a18565b9450506020611cc787828801611a18565b9350506040611cd887828801611963565b925050606085013567ffffffffffffffff811115611cf957611cf86117da565b5b611d0587828801611c60565b91505092959194509250565b60008060408385031215611d2857611d276117d5565b5b6000611d3685828601611a18565b9250506020611d4785828601611a18565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611d9857607f821691505b602082108103611dab57611daa611d51565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e0d6021836118a5565b9150611e1882611db1565b604082019050919050565b60006020820190508181036000830152611e3c81611e00565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000611e9f603d836118a5565b9150611eaa82611e43565b604082019050919050565b60006020820190508181036000830152611ece81611e92565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611f0f82611797565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f4157611f40611ed5565b5b600182019050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000611fa8602d836118a5565b9150611fb382611f4c565b604082019050919050565b60006020820190508181036000830152611fd781611f9b565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006120146018836118a5565b915061201f82611fde565b602082019050919050565b6000602082019050818103600083015261204381612007565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b60006120a66029836118a5565b91506120b18261204a565b604082019050919050565b600060208201905081810360008301526120d581612099565b9050919050565b600081905092915050565b60006120f28261189a565b6120fc81856120dc565b935061210c8185602086016118b6565b80840191505092915050565b600061212482856120e7565b915061213082846120e7565b91508190509392505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006121986025836118a5565b91506121a38261213c565b604082019050919050565b600060208201905081810360008301526121c78161218b565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061222a6024836118a5565b9150612235826121ce565b604082019050919050565b600060208201905081810360008301526122598161221d565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006122966019836118a5565b91506122a182612260565b602082019050919050565b600060208201905081810360008301526122c581612289565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006123286032836118a5565b9150612333826122cc565b604082019050919050565b600060208201905081810360008301526123578161231b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006123b48261238d565b6123be8185612398565b93506123ce8185602086016118b6565b6123d7816118e0565b840191505092915050565b60006080820190506123f760008301876119d7565b61240460208301866119d7565b61241160408301856117a1565b818103606083015261242381846123a9565b905095945050505050565b60008151905061243d8161180b565b92915050565b600060208284031215612459576124586117d5565b5b60006124678482850161242e565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006124a66020836118a5565b91506124b182612470565b602082019050919050565b600060208201905081810360008301526124d581612499565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000612512601c836118a5565b915061251d826124dc565b602082019050919050565b6000602082019050818103600083015261254181612505565b905091905056fea2646970667358221220ada89150c5d72aaf83fd35515ab6e67df75e9d0b0f8827fe1173d36182b4852a64736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xF4 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x42842E0E GT PUSH2 0x97 JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x271 JUMPI DUP1 PUSH4 0xB88D4FDE EQ PUSH2 0x28D JUMPI DUP1 PUSH4 0xC87B56DD EQ PUSH2 0x2A9 JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x2D9 JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH4 0x42842E0E EQ PUSH2 0x1D7 JUMPI DUP1 PUSH4 0x6352211E EQ PUSH2 0x1F3 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x223 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x253 JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH4 0x81812FC GT PUSH2 0xD3 JUMPI DUP1 PUSH4 0x81812FC EQ PUSH2 0x165 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x195 JUMPI DUP1 PUSH4 0x1249C58B EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x1BB JUMPI PUSH2 0xF4 JUMP JUMPDEST DUP1 PUSH3 0x9A9B7B EQ PUSH2 0xF9 JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x147 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x101 PUSH2 0x309 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x10E SWAP2 SWAP1 PUSH2 0x17B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x131 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x12C SWAP2 SWAP1 PUSH2 0x1837 JUMP JUMPDEST PUSH2 0x30F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x13E SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14F PUSH2 0x3F1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x15C SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17A SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x483 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18C SWAP2 SWAP1 PUSH2 0x19E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x1A2D JUMP JUMPDEST PUSH2 0x4C9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1B9 PUSH2 0x5E0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1D5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D0 SWAP2 SWAP1 PUSH2 0x1A6D JUMP JUMPDEST PUSH2 0x606 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1F1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1EC SWAP2 SWAP1 PUSH2 0x1A6D JUMP JUMPDEST PUSH2 0x666 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x20D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x208 SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x686 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x21A SWAP2 SWAP1 PUSH2 0x19E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x238 SWAP2 SWAP1 PUSH2 0x1AC0 JUMP JUMPDEST PUSH2 0x70C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x24A SWAP2 SWAP1 PUSH2 0x17B0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x25B PUSH2 0x7C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x268 SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x28B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x286 SWAP2 SWAP1 PUSH2 0x1B19 JUMP JUMPDEST PUSH2 0x855 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A2 SWAP2 SWAP1 PUSH2 0x1C8E JUMP JUMPDEST PUSH2 0x86B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2C3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BE SWAP2 SWAP1 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x8CD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2D0 SWAP2 SWAP1 PUSH2 0x192A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2F3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2EE SWAP2 SWAP1 PUSH2 0x1D11 JUMP JUMPDEST PUSH2 0x935 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x6 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x80AC58CD00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3DA JUMPI POP PUSH32 0x5B5E139F00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x3EA JUMPI POP PUSH2 0x3E9 DUP3 PUSH2 0x9C9 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x400 SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x42C SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x479 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x44E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x479 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x45C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x48E DUP3 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D4 DUP3 PUSH2 0x686 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x544 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x53B SWAP1 PUSH2 0x1E23 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x563 PUSH2 0xA7E JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x592 JUMPI POP PUSH2 0x591 DUP2 PUSH2 0x58C PUSH2 0xA7E JUMP JUMPDEST PUSH2 0x935 JUMP JUMPDEST JUMPDEST PUSH2 0x5D1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C8 SWAP1 PUSH2 0x1EB5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x5DB DUP4 DUP4 PUSH2 0xA86 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x5EC CALLER PUSH1 0x6 SLOAD PUSH2 0xB3F JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x5FF SWAP1 PUSH2 0x1F04 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP JUMP JUMPDEST PUSH2 0x617 PUSH2 0x611 PUSH2 0xA7E JUMP JUMPDEST DUP3 PUSH2 0xB5D JUMP JUMPDEST PUSH2 0x656 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64D SWAP1 PUSH2 0x1FBE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x661 DUP4 DUP4 DUP4 PUSH2 0xBF2 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x681 DUP4 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x86B JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x692 DUP4 PUSH2 0xEEB JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x703 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FA SWAP1 PUSH2 0x202A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x77C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x773 SWAP1 PUSH2 0x20BC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x7D2 SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x7FE SWAP1 PUSH2 0x1D80 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x84B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x820 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x84B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x82E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x867 PUSH2 0x860 PUSH2 0xA7E JUMP JUMPDEST DUP4 DUP4 PUSH2 0xF28 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x87C PUSH2 0x876 PUSH2 0xA7E JUMP JUMPDEST DUP4 PUSH2 0xB5D JUMP JUMPDEST PUSH2 0x8BB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8B2 SWAP1 PUSH2 0x1FBE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x8C7 DUP5 DUP5 DUP5 DUP5 PUSH2 0x1094 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x8D8 DUP3 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E2 PUSH2 0x10F0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x92D JUMP JUMPDEST DUP1 PUSH2 0x90C DUP5 PUSH2 0x1107 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x91D SWAP3 SWAP2 SWAP1 PUSH2 0x2118 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xA3C DUP2 PUSH2 0x11D5 JUMP JUMPDEST PUSH2 0xA7B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA72 SWAP1 PUSH2 0x202A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST DUP2 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xAF9 DUP4 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH2 0xB59 DUP3 DUP3 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0x1216 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB69 DUP4 PUSH2 0x686 JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xBAB JUMPI POP PUSH2 0xBAA DUP2 DUP6 PUSH2 0x935 JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0xBE9 JUMPI POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xBD1 DUP5 PUSH2 0x483 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC12 DUP3 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC68 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC5F SWAP1 PUSH2 0x21AE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xCD7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCCE SWAP1 PUSH2 0x2240 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCE4 DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1271 JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD04 DUP3 PUSH2 0x686 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD5A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD51 SWAP1 PUSH2 0x21AE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD SUB SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0xEE6 DUP4 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1277 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xF96 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF8D SWAP1 PUSH2 0x22AC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1087 SWAP2 SWAP1 PUSH2 0x187F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH2 0x109F DUP5 DUP5 DUP5 PUSH2 0xBF2 JUMP JUMPDEST PUSH2 0x10AB DUP5 DUP5 DUP5 DUP5 PUSH2 0x127D JUMP JUMPDEST PUSH2 0x10EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10E1 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x1 PUSH2 0x1116 DUP5 PUSH2 0x1404 JUMP JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1135 JUMPI PUSH2 0x1134 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1167 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x20 ADD DUP3 ADD SWAP1 POP JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x11CA JUMPI DUP1 DUP1 PUSH1 0x1 SWAP1 SUB SWAP2 POP POP PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0xA DUP7 MOD BYTE DUP2 MSTORE8 PUSH1 0xA DUP6 DUP2 PUSH2 0x11BE JUMPI PUSH2 0x11BD PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP5 POP PUSH1 0x0 DUP6 SUB PUSH2 0x1175 JUMPI JUMPDEST DUP2 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x11F7 DUP4 PUSH2 0xEEB JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1220 DUP4 DUP4 PUSH2 0x1557 JUMP JUMPDEST PUSH2 0x122D PUSH1 0x0 DUP5 DUP5 DUP5 PUSH2 0x127D JUMP JUMPDEST PUSH2 0x126C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1263 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x129E DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1774 JUMP JUMPDEST ISZERO PUSH2 0x13F7 JUMPI DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x150B7A02 PUSH2 0x12C7 PUSH2 0xA7E JUMP JUMPDEST DUP8 DUP7 DUP7 PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12E9 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x23E2 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x1325 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1322 SWAP2 SWAP1 PUSH2 0x2443 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x13A7 JUMPI RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x1355 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x135A JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0x0 DUP2 MLOAD SUB PUSH2 0x139F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1396 SWAP1 PUSH2 0x233E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 MLOAD DUP2 PUSH1 0x20 ADD REVERT JUMPDEST PUSH4 0x150B7A02 PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP2 POP POP PUSH2 0x13FC JUMP JUMPDEST PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 LT PUSH2 0x1462 JUMPI PUSH27 0x184F03E93FF9F4DAA797ED6E38ED64BF6A1F010000000000000000 DUP4 DUP2 PUSH2 0x1458 JUMPI PUSH2 0x1457 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x40 DUP2 ADD SWAP1 POP JUMPDEST PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 LT PUSH2 0x149F JUMPI PUSH14 0x4EE2D6D415B85ACEF8100000000 DUP4 DUP2 PUSH2 0x1495 JUMPI PUSH2 0x1494 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x20 DUP2 ADD SWAP1 POP JUMPDEST PUSH7 0x2386F26FC10000 DUP4 LT PUSH2 0x14CE JUMPI PUSH7 0x2386F26FC10000 DUP4 DUP2 PUSH2 0x14C4 JUMPI PUSH2 0x14C3 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x10 DUP2 ADD SWAP1 POP JUMPDEST PUSH4 0x5F5E100 DUP4 LT PUSH2 0x14F7 JUMPI PUSH4 0x5F5E100 DUP4 DUP2 PUSH2 0x14ED JUMPI PUSH2 0x14EC PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x8 DUP2 ADD SWAP1 POP JUMPDEST PUSH2 0x2710 DUP4 LT PUSH2 0x151C JUMPI PUSH2 0x2710 DUP4 DUP2 PUSH2 0x1512 JUMPI PUSH2 0x1511 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x4 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0x64 DUP4 LT PUSH2 0x153F JUMPI PUSH1 0x64 DUP4 DUP2 PUSH2 0x1535 JUMPI PUSH2 0x1534 PUSH2 0x235E JUMP JUMPDEST JUMPDEST DIV SWAP3 POP PUSH1 0x2 DUP2 ADD SWAP1 POP JUMPDEST PUSH1 0xA DUP4 LT PUSH2 0x154E JUMPI PUSH1 0x1 DUP2 ADD SWAP1 POP JUMPDEST DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x15C6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15BD SWAP1 PUSH2 0x24BC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x15CF DUP2 PUSH2 0x11D5 JUMP JUMPDEST ISZERO PUSH2 0x160F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1606 SWAP1 PUSH2 0x2528 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x161D PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1271 JUMP JUMPDEST PUSH2 0x1626 DUP2 PUSH2 0x11D5 JUMP JUMPDEST ISZERO PUSH2 0x1666 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x165D SWAP1 PUSH2 0x2528 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1770 PUSH1 0x0 DUP4 DUP4 PUSH1 0x1 PUSH2 0x1277 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x17AA DUP2 PUSH2 0x1797 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x17C5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x17A1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1814 DUP2 PUSH2 0x17DF JUMP JUMPDEST DUP2 EQ PUSH2 0x181F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1831 DUP2 PUSH2 0x180B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x184D JUMPI PUSH2 0x184C PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x185B DUP5 DUP3 DUP6 ADD PUSH2 0x1822 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1879 DUP2 PUSH2 0x1864 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1894 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1870 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x18D4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x18B9 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x18FC DUP3 PUSH2 0x189A JUMP JUMPDEST PUSH2 0x1906 DUP2 DUP6 PUSH2 0x18A5 JUMP JUMPDEST SWAP4 POP PUSH2 0x1916 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST PUSH2 0x191F DUP2 PUSH2 0x18E0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1944 DUP2 DUP5 PUSH2 0x18F1 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1955 DUP2 PUSH2 0x1797 JUMP JUMPDEST DUP2 EQ PUSH2 0x1960 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1972 DUP2 PUSH2 0x194C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x198E JUMPI PUSH2 0x198D PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x199C DUP5 DUP3 DUP6 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x19D0 DUP3 PUSH2 0x19A5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19E0 DUP2 PUSH2 0x19C5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19FB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1A0A DUP2 PUSH2 0x19C5 JUMP JUMPDEST DUP2 EQ PUSH2 0x1A15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1A27 DUP2 PUSH2 0x1A01 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1A44 JUMPI PUSH2 0x1A43 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A52 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1A63 DUP6 DUP3 DUP7 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1A86 JUMPI PUSH2 0x1A85 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1A94 DUP7 DUP3 DUP8 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x1AA5 DUP7 DUP3 DUP8 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x1AB6 DUP7 DUP3 DUP8 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1AD6 JUMPI PUSH2 0x1AD5 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1AE4 DUP5 DUP3 DUP6 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1AF6 DUP2 PUSH2 0x1864 JUMP JUMPDEST DUP2 EQ PUSH2 0x1B01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B13 DUP2 PUSH2 0x1AED JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1B30 JUMPI PUSH2 0x1B2F PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B3E DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1B4F DUP6 DUP3 DUP7 ADD PUSH2 0x1B04 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1B9B DUP3 PUSH2 0x18E0 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1BBA JUMPI PUSH2 0x1BB9 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BCD PUSH2 0x17CB JUMP JUMPDEST SWAP1 POP PUSH2 0x1BD9 DUP3 DUP3 PUSH2 0x1B92 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1BF9 JUMPI PUSH2 0x1BF8 PUSH2 0x1B63 JUMP JUMPDEST JUMPDEST PUSH2 0x1C02 DUP3 PUSH2 0x18E0 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C31 PUSH2 0x1C2C DUP5 PUSH2 0x1BDE JUMP JUMPDEST PUSH2 0x1BC3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C4D JUMPI PUSH2 0x1C4C PUSH2 0x1B5E JUMP JUMPDEST JUMPDEST PUSH2 0x1C58 DUP5 DUP3 DUP6 PUSH2 0x1C0F JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1C75 JUMPI PUSH2 0x1C74 PUSH2 0x1B59 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1C85 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C1E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1CA8 JUMPI PUSH2 0x1CA7 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CB6 DUP8 DUP3 DUP9 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x1CC7 DUP8 DUP3 DUP9 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH2 0x1CD8 DUP8 DUP3 DUP9 ADD PUSH2 0x1963 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1CF9 JUMPI PUSH2 0x1CF8 PUSH2 0x17DA JUMP JUMPDEST JUMPDEST PUSH2 0x1D05 DUP8 DUP3 DUP9 ADD PUSH2 0x1C60 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1D28 JUMPI PUSH2 0x1D27 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1D36 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1D47 DUP6 DUP3 DUP7 ADD PUSH2 0x1A18 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1D98 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1DAB JUMPI PUSH2 0x1DAA PUSH2 0x1D51 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76616C20746F2063757272656E74206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7200000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E0D PUSH1 0x21 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E18 DUP3 PUSH2 0x1DB1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E3C DUP2 PUSH2 0x1E00 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F76652063616C6C6572206973206E6F7420746F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6B656E206F776E6572206F7220617070726F76656420666F7220616C6C000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E9F PUSH1 0x3D DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EAA DUP3 PUSH2 0x1E43 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1ECE DUP2 PUSH2 0x1E92 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1F0F DUP3 PUSH2 0x1797 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1F41 JUMPI PUSH2 0x1F40 PUSH2 0x1ED5 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2063616C6C6572206973206E6F7420746F6B656E206F776E65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72206F7220617070726F76656400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA8 PUSH1 0x2D DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB3 DUP3 PUSH2 0x1F4C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1FD7 DUP2 PUSH2 0x1F9B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20696E76616C696420746F6B656E2049440000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2014 PUSH1 0x18 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x201F DUP3 PUSH2 0x1FDE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2043 DUP2 PUSH2 0x2007 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A2061646472657373207A65726F206973206E6F742061207661 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C6964206F776E65720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20A6 PUSH1 0x29 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B1 DUP3 PUSH2 0x204A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x20D5 DUP2 PUSH2 0x2099 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20F2 DUP3 PUSH2 0x189A JUMP JUMPDEST PUSH2 0x20FC DUP2 DUP6 PUSH2 0x20DC JUMP JUMPDEST SWAP4 POP PUSH2 0x210C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2124 DUP3 DUP6 PUSH2 0x20E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2130 DUP3 DUP5 PUSH2 0x20E7 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E736665722066726F6D20696E636F727265637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F776E6572000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2198 PUSH1 0x25 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x21A3 DUP3 PUSH2 0x213C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21C7 DUP2 PUSH2 0x218B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222A PUSH1 0x24 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x2235 DUP3 PUSH2 0x21CE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2259 DUP2 PUSH2 0x221D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20617070726F766520746F2063616C6C657200000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2296 PUSH1 0x19 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x22A1 DUP3 PUSH2 0x2260 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x22C5 DUP2 PUSH2 0x2289 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A207472616E7366657220746F206E6F6E204552433732315265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63656976657220696D706C656D656E7465720000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2328 PUSH1 0x32 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x2333 DUP3 PUSH2 0x22CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2357 DUP2 PUSH2 0x231B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B4 DUP3 PUSH2 0x238D JUMP JUMPDEST PUSH2 0x23BE DUP2 DUP6 PUSH2 0x2398 JUMP JUMPDEST SWAP4 POP PUSH2 0x23CE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x18B6 JUMP JUMPDEST PUSH2 0x23D7 DUP2 PUSH2 0x18E0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x23F7 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x19D7 JUMP JUMPDEST PUSH2 0x2404 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x19D7 JUMP JUMPDEST PUSH2 0x2411 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x17A1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x2423 DUP2 DUP5 PUSH2 0x23A9 JUMP JUMPDEST SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x243D DUP2 PUSH2 0x180B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2459 JUMPI PUSH2 0x2458 PUSH2 0x17D5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2467 DUP5 DUP3 DUP6 ADD PUSH2 0x242E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4552433732313A206D696E7420746F20746865207A65726F2061646472657373 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24A6 PUSH1 0x20 DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x24B1 DUP3 PUSH2 0x2470 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x24D5 DUP2 PUSH2 0x2499 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4552433732313A20746F6B656E20616C7265616479206D696E74656400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2512 PUSH1 0x1C DUP4 PUSH2 0x18A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x251D DUP3 PUSH2 0x24DC JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2541 DUP2 PUSH2 0x2505 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xAD 0xA8 SWAP2 POP 0xC5 0xD7 0x2A 0xAF DUP4 REVERT CALLDATALOAD MLOAD GAS 0xB6 0xE6 PUSH30 0xF75E9D0B0F8827FE1173D36182B4852A64736F6C63430008190033000000 ", + "sourceMap": "84:253:69:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;117:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1570:300:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3935:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;230:105:69;;;:::i;:::-;;4612:296:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4974:149;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2190:219;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2633:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4169:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5189:276;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2801;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4388:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;117:29:69;;;;:::o;1570:300:55:-;1672:4;1722:25;1707:40;;;:11;:40;;;;:104;;;;1778:33;1763:48;;;:11;:48;;;;1707:104;:156;;;;1827:36;1851:11;1827:23;:36::i;:::-;1707:156;1688:175;;1570:300;;;:::o;2471:98::-;2525:13;2557:5;2550:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2471:98;:::o;3935:167::-;4011:7;4030:23;4045:7;4030:14;:23::i;:::-;4071:15;:24;4087:7;4071:24;;;;;;;;;;;;;;;;;;;;;4064:31;;3935:167;;;:::o;3468:406::-;3548:13;3564:23;3579:7;3564:14;:23::i;:::-;3548:39;;3611:5;3605:11;;:2;:11;;;3597:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3702:5;3686:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3711:37;3728:5;3735:12;:10;:12::i;:::-;3711:16;:37::i;:::-;3686:62;3665:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;3846:21;3855:2;3859:7;3846:8;:21::i;:::-;3538:336;3468:406;;:::o;230:105:69:-;265:37;275:10;287:14;;265:9;:37::i;:::-;312:14;;:16;;;;;;;;;:::i;:::-;;;;;;230:105::o;4612:296:55:-;4771:41;4790:12;:10;:12::i;:::-;4804:7;4771:18;:41::i;:::-;4763:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;4873:28;4883:4;4889:2;4893:7;4873:9;:28::i;:::-;4612:296;;;:::o;4974:149::-;5077:39;5094:4;5100:2;5104:7;5077:39;;;;;;;;;;;;:16;:39::i;:::-;4974:149;;;:::o;2190:219::-;2262:7;2281:13;2297:17;2306:7;2297:8;:17::i;:::-;2281:33;;2349:1;2332:19;;:5;:19;;;2324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2397:5;2390:12;;;2190:219;;;:::o;1929:204::-;2001:7;2045:1;2028:19;;:5;:19;;;2020:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2110:9;:16;2120:5;2110:16;;;;;;;;;;;;;;;;2103:23;;1929:204;;;:::o;2633:102::-;2689:13;2721:7;2714:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:102;:::o;4169:153::-;4263:52;4282:12;:10;:12::i;:::-;4296:8;4306;4263:18;:52::i;:::-;4169:153;;:::o;5189:276::-;5319:41;5338:12;:10;:12::i;:::-;5352:7;5319:18;:41::i;:::-;5311:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;5420:38;5434:4;5440:2;5444:7;5453:4;5420:13;:38::i;:::-;5189:276;;;;:::o;2801:::-;2874:13;2899:23;2914:7;2899:14;:23::i;:::-;2933:21;2957:10;:8;:10::i;:::-;2933:34;;3008:1;2990:7;2984:21;:25;:86;;;;;;;;;;;;;;;;;3036:7;3045:18;:7;:16;:18::i;:::-;3019:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2984:86;2977:93;;;2801:276;;;:::o;4388:162::-;4485:4;4508:18;:25;4527:5;4508:25;;;;;;;;;;;;;;;:35;4534:8;4508:35;;;;;;;;;;;;;;;;;;;;;;;;;4501:42;;4388:162;;;;:::o;829:155:62:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;13240:133:55:-;13321:16;13329:7;13321;:16::i;:::-;13313:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;13240:133;:::o;655:96:60:-;708:7;734:10;727:17;;655:96;:::o;12572:171:55:-;12673:2;12646:15;:24;12662:7;12646:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12728:7;12724:2;12690:46;;12699:23;12714:7;12699:14;:23::i;:::-;12690:46;;;;;;;;;;;;12572:171;;:::o;7995:108::-;8070:26;8080:2;8084:7;8070:26;;;;;;;;;;;;:9;:26::i;:::-;7995:108;;:::o;7404:261::-;7497:4;7513:13;7529:23;7544:7;7529:14;:23::i;:::-;7513:39;;7581:5;7570:16;;:7;:16;;;:52;;;;7590:32;7607:5;7614:7;7590:16;:32::i;:::-;7570:52;:87;;;;7650:7;7626:31;;:20;7638:7;7626:11;:20::i;:::-;:31;;;7570:87;7562:96;;;7404:261;;;;:::o;11257:1203::-;11381:4;11354:31;;:23;11369:7;11354:14;:23::i;:::-;:31;;;11346:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11459:1;11445:16;;:2;:16;;;11437:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;11513:42;11534:4;11540:2;11544:7;11553:1;11513:20;:42::i;:::-;11682:4;11655:31;;:23;11670:7;11655:14;:23::i;:::-;:31;;;11647:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11797:15;:24;11813:7;11797:24;;;;;;;;;;;;11790:31;;;;;;;;;;;12284:1;12265:9;:15;12275:4;12265:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;12316:1;12299:9;:13;12309:2;12299:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;12356:2;12337:7;:16;12345:7;12337:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12393:7;12389:2;12374:27;;12383:4;12374:27;;;;;;;;;;;;12412:41;12432:4;12438:2;12442:7;12451:1;12412:19;:41::i;:::-;11257:1203;;;:::o;6702:115::-;6768:7;6794;:16;6802:7;6794:16;;;;;;;;;;;;;;;;;;;;;6787:23;;6702:115;;;:::o;12879:277::-;12999:8;12990:17;;:5;:17;;;12982:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13085:8;13047:18;:25;13066:5;13047:25;;;;;;;;;;;;;;;:35;13073:8;13047:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;13130:8;13108:41;;13123:5;13108:41;;;13140:8;13108:41;;;;;;:::i;:::-;;;;;;;;12879:277;;;:::o;6326:267::-;6438:28;6448:4;6454:2;6458:7;6438:9;:28::i;:::-;6484:47;6507:4;6513:2;6517:7;6526:4;6484:22;:47::i;:::-;6476:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;6326:267;;;;:::o;3319:92::-;3370:13;3395:9;;;;;;;;;;;;;;3319:92;:::o;447:696:61:-;503:13;552:14;589:1;569:17;580:5;569:10;:17::i;:::-;:21;552:38;;604:20;638:6;627:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;604:41;;659:11;785:6;781:2;777:15;769:6;765:28;758:35;;820:280;827:4;820:280;;;851:5;;;;;;;;990:8;985:2;978:5;974:14;969:30;964:3;956:44;1044:2;1035:11;;;;;;:::i;:::-;;;;;1077:1;1068:5;:10;820:280;1064:21;820:280;1120:6;1113:13;;;;;447:696;;;:::o;7120:126:55:-;7185:4;7237:1;7208:31;;:17;7217:7;7208:8;:17::i;:::-;:31;;;;7201:38;;7120:126;;;:::o;8324:279::-;8418:18;8424:2;8428:7;8418:5;:18::i;:::-;8467:53;8498:1;8502:2;8506:7;8515:4;8467:22;:53::i;:::-;8446:150;;;;;;;;;;;;:::i;:::-;;;;;;;;;8324:279;;;:::o;15472:116::-;;;;;:::o;16294:115::-;;;;;:::o;13925:831::-;14074:4;14094:15;:2;:13;;;:15::i;:::-;14090:660;;;14145:2;14129:36;;;14166:12;:10;:12::i;:::-;14180:4;14186:7;14195:4;14129:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;14125:573;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14384:1;14367:6;:13;:18;14363:321;;14409:60;;;;;;;;;;:::i;:::-;;;;;;;;14363:321;14636:6;14630:13;14621:6;14617:2;14613:15;14606:38;14125:573;14260:41;;;14250:51;;;:6;:51;;;;14243:58;;;;;14090:660;14735:4;14728:11;;13925:831;;;;;;;:::o;10139:916:64:-;10192:7;10211:14;10228:1;10211:18;;10276:8;10267:5;:17;10263:103;;10313:8;10304:17;;;;;;:::i;:::-;;;;;10349:2;10339:12;;;;10263:103;10392:8;10383:5;:17;10379:103;;10429:8;10420:17;;;;;;:::i;:::-;;;;;10465:2;10455:12;;;;10379:103;10508:8;10499:5;:17;10495:103;;10545:8;10536:17;;;;;;:::i;:::-;;;;;10581:2;10571:12;;;;10495:103;10624:7;10615:5;:16;10611:100;;10660:7;10651:16;;;;;;:::i;:::-;;;;;10695:1;10685:11;;;;10611:100;10737:7;10728:5;:16;10724:100;;10773:7;10764:16;;;;;;:::i;:::-;;;;;10808:1;10798:11;;;;10724:100;10850:7;10841:5;:16;10837:100;;10886:7;10877:16;;;;;;:::i;:::-;;;;;10921:1;10911:11;;;;10837:100;10963:7;10954:5;:16;10950:66;;11000:1;10990:11;;;;10950:66;11042:6;11035:13;;;10139:916;;;:::o;8925:920:55:-;9018:1;9004:16;;:2;:16;;;8996:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9076:16;9084:7;9076;:16::i;:::-;9075:17;9067:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9136:48;9165:1;9169:2;9173:7;9182:1;9136:20;:48::i;:::-;9280:16;9288:7;9280;:16::i;:::-;9279:17;9271:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9688:1;9671:9;:13;9681:2;9671:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;9729:2;9710:7;:16;9718:7;9710:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9772:7;9768:2;9747:33;;9764:1;9747:33;;;;;;;;;;;;9791:47;9819:1;9823:2;9827:7;9836:1;9791:19;:47::i;:::-;8925:920;;:::o;1412:320:59:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;7:77:74:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:75::-;475:6;508:2;502:9;492:19;;442:75;:::o;523:117::-;632:1;629;622:12;646:117;755:1;752;745:12;769:149;805:7;845:66;838:5;834:78;823:89;;769:149;;;:::o;924:120::-;996:23;1013:5;996:23;:::i;:::-;989:5;986:34;976:62;;1034:1;1031;1024:12;976:62;924:120;:::o;1050:137::-;1095:5;1133:6;1120:20;1111:29;;1149:32;1175:5;1149:32;:::i;:::-;1050:137;;;;:::o;1193:327::-;1251:6;1300:2;1288:9;1279:7;1275:23;1271:32;1268:119;;;1306:79;;:::i;:::-;1268:119;1426:1;1451:52;1495:7;1486:6;1475:9;1471:22;1451:52;:::i;:::-;1441:62;;1397:116;1193:327;;;;:::o;1526:90::-;1560:7;1603:5;1596:13;1589:21;1578:32;;1526:90;;;:::o;1622:109::-;1703:21;1718:5;1703:21;:::i;:::-;1698:3;1691:34;1622:109;;:::o;1737:210::-;1824:4;1862:2;1851:9;1847:18;1839:26;;1875:65;1937:1;1926:9;1922:17;1913:6;1875:65;:::i;:::-;1737:210;;;;:::o;1953:99::-;2005:6;2039:5;2033:12;2023:22;;1953:99;;;:::o;2058:169::-;2142:11;2176:6;2171:3;2164:19;2216:4;2211:3;2207:14;2192:29;;2058:169;;;;:::o;2233:248::-;2315:1;2325:113;2339:6;2336:1;2333:13;2325:113;;;2424:1;2419:3;2415:11;2409:18;2405:1;2400:3;2396:11;2389:39;2361:2;2358:1;2354:10;2349:15;;2325:113;;;2472:1;2463:6;2458:3;2454:16;2447:27;2295:186;2233:248;;;:::o;2487:102::-;2528:6;2579:2;2575:7;2570:2;2563:5;2559:14;2555:28;2545:38;;2487:102;;;:::o;2595:377::-;2683:3;2711:39;2744:5;2711:39;:::i;:::-;2766:71;2830:6;2825:3;2766:71;:::i;:::-;2759:78;;2846:65;2904:6;2899:3;2892:4;2885:5;2881:16;2846:65;:::i;:::-;2936:29;2958:6;2936:29;:::i;:::-;2931:3;2927:39;2920:46;;2687:285;2595:377;;;;:::o;2978:313::-;3091:4;3129:2;3118:9;3114:18;3106:26;;3178:9;3172:4;3168:20;3164:1;3153:9;3149:17;3142:47;3206:78;3279:4;3270:6;3206:78;:::i;:::-;3198:86;;2978:313;;;;:::o;3297:122::-;3370:24;3388:5;3370:24;:::i;:::-;3363:5;3360:35;3350:63;;3409:1;3406;3399:12;3350:63;3297:122;:::o;3425:139::-;3471:5;3509:6;3496:20;3487:29;;3525:33;3552:5;3525:33;:::i;:::-;3425:139;;;;:::o;3570:329::-;3629:6;3678:2;3666:9;3657:7;3653:23;3649:32;3646:119;;;3684:79;;:::i;:::-;3646:119;3804:1;3829:53;3874:7;3865:6;3854:9;3850:22;3829:53;:::i;:::-;3819:63;;3775:117;3570:329;;;;:::o;3905:126::-;3942:7;3982:42;3975:5;3971:54;3960:65;;3905:126;;;:::o;4037:96::-;4074:7;4103:24;4121:5;4103:24;:::i;:::-;4092:35;;4037:96;;;:::o;4139:118::-;4226:24;4244:5;4226:24;:::i;:::-;4221:3;4214:37;4139:118;;:::o;4263:222::-;4356:4;4394:2;4383:9;4379:18;4371:26;;4407:71;4475:1;4464:9;4460:17;4451:6;4407:71;:::i;:::-;4263:222;;;;:::o;4491:122::-;4564:24;4582:5;4564:24;:::i;:::-;4557:5;4554:35;4544:63;;4603:1;4600;4593:12;4544:63;4491:122;:::o;4619:139::-;4665:5;4703:6;4690:20;4681:29;;4719:33;4746:5;4719:33;:::i;:::-;4619:139;;;;:::o;4764:474::-;4832:6;4840;4889:2;4877:9;4868:7;4864:23;4860:32;4857:119;;;4895:79;;:::i;:::-;4857:119;5015:1;5040:53;5085:7;5076:6;5065:9;5061:22;5040:53;:::i;:::-;5030:63;;4986:117;5142:2;5168:53;5213:7;5204:6;5193:9;5189:22;5168:53;:::i;:::-;5158:63;;5113:118;4764:474;;;;;:::o;5244:619::-;5321:6;5329;5337;5386:2;5374:9;5365:7;5361:23;5357:32;5354:119;;;5392:79;;:::i;:::-;5354:119;5512:1;5537:53;5582:7;5573:6;5562:9;5558:22;5537:53;:::i;:::-;5527:63;;5483:117;5639:2;5665:53;5710:7;5701:6;5690:9;5686:22;5665:53;:::i;:::-;5655:63;;5610:118;5767:2;5793:53;5838:7;5829:6;5818:9;5814:22;5793:53;:::i;:::-;5783:63;;5738:118;5244:619;;;;;:::o;5869:329::-;5928:6;5977:2;5965:9;5956:7;5952:23;5948:32;5945:119;;;5983:79;;:::i;:::-;5945:119;6103:1;6128:53;6173:7;6164:6;6153:9;6149:22;6128:53;:::i;:::-;6118:63;;6074:117;5869:329;;;;:::o;6204:116::-;6274:21;6289:5;6274:21;:::i;:::-;6267:5;6264:32;6254:60;;6310:1;6307;6300:12;6254:60;6204:116;:::o;6326:133::-;6369:5;6407:6;6394:20;6385:29;;6423:30;6447:5;6423:30;:::i;:::-;6326:133;;;;:::o;6465:468::-;6530:6;6538;6587:2;6575:9;6566:7;6562:23;6558:32;6555:119;;;6593:79;;:::i;:::-;6555:119;6713:1;6738:53;6783:7;6774:6;6763:9;6759:22;6738:53;:::i;:::-;6728:63;;6684:117;6840:2;6866:50;6908:7;6899:6;6888:9;6884:22;6866:50;:::i;:::-;6856:60;;6811:115;6465:468;;;;;:::o;6939:117::-;7048:1;7045;7038:12;7062:117;7171:1;7168;7161:12;7185:180;7233:77;7230:1;7223:88;7330:4;7327:1;7320:15;7354:4;7351:1;7344:15;7371:281;7454:27;7476:4;7454:27;:::i;:::-;7446:6;7442:40;7584:6;7572:10;7569:22;7548:18;7536:10;7533:34;7530:62;7527:88;;;7595:18;;:::i;:::-;7527:88;7635:10;7631:2;7624:22;7414:238;7371:281;;:::o;7658:129::-;7692:6;7719:20;;:::i;:::-;7709:30;;7748:33;7776:4;7768:6;7748:33;:::i;:::-;7658:129;;;:::o;7793:307::-;7854:4;7944:18;7936:6;7933:30;7930:56;;;7966:18;;:::i;:::-;7930:56;8004:29;8026:6;8004:29;:::i;:::-;7996:37;;8088:4;8082;8078:15;8070:23;;7793:307;;;:::o;8106:148::-;8204:6;8199:3;8194;8181:30;8245:1;8236:6;8231:3;8227:16;8220:27;8106:148;;;:::o;8260:423::-;8337:5;8362:65;8378:48;8419:6;8378:48;:::i;:::-;8362:65;:::i;:::-;8353:74;;8450:6;8443:5;8436:21;8488:4;8481:5;8477:16;8526:3;8517:6;8512:3;8508:16;8505:25;8502:112;;;8533:79;;:::i;:::-;8502:112;8623:54;8670:6;8665:3;8660;8623:54;:::i;:::-;8343:340;8260:423;;;;;:::o;8702:338::-;8757:5;8806:3;8799:4;8791:6;8787:17;8783:27;8773:122;;8814:79;;:::i;:::-;8773:122;8931:6;8918:20;8956:78;9030:3;9022:6;9015:4;9007:6;9003:17;8956:78;:::i;:::-;8947:87;;8763:277;8702:338;;;;:::o;9046:943::-;9141:6;9149;9157;9165;9214:3;9202:9;9193:7;9189:23;9185:33;9182:120;;;9221:79;;:::i;:::-;9182:120;9341:1;9366:53;9411:7;9402:6;9391:9;9387:22;9366:53;:::i;:::-;9356:63;;9312:117;9468:2;9494:53;9539:7;9530:6;9519:9;9515:22;9494:53;:::i;:::-;9484:63;;9439:118;9596:2;9622:53;9667:7;9658:6;9647:9;9643:22;9622:53;:::i;:::-;9612:63;;9567:118;9752:2;9741:9;9737:18;9724:32;9783:18;9775:6;9772:30;9769:117;;;9805:79;;:::i;:::-;9769:117;9910:62;9964:7;9955:6;9944:9;9940:22;9910:62;:::i;:::-;9900:72;;9695:287;9046:943;;;;;;;:::o;9995:474::-;10063:6;10071;10120:2;10108:9;10099:7;10095:23;10091:32;10088:119;;;10126:79;;:::i;:::-;10088:119;10246:1;10271:53;10316:7;10307:6;10296:9;10292:22;10271:53;:::i;:::-;10261:63;;10217:117;10373:2;10399:53;10444:7;10435:6;10424:9;10420:22;10399:53;:::i;:::-;10389:63;;10344:118;9995:474;;;;;:::o;10475:180::-;10523:77;10520:1;10513:88;10620:4;10617:1;10610:15;10644:4;10641:1;10634:15;10661:320;10705:6;10742:1;10736:4;10732:12;10722:22;;10789:1;10783:4;10779:12;10810:18;10800:81;;10866:4;10858:6;10854:17;10844:27;;10800:81;10928:2;10920:6;10917:14;10897:18;10894:38;10891:84;;10947:18;;:::i;:::-;10891:84;10712:269;10661:320;;;:::o;10987:220::-;11127:34;11123:1;11115:6;11111:14;11104:58;11196:3;11191:2;11183:6;11179:15;11172:28;10987:220;:::o;11213:366::-;11355:3;11376:67;11440:2;11435:3;11376:67;:::i;:::-;11369:74;;11452:93;11541:3;11452:93;:::i;:::-;11570:2;11565:3;11561:12;11554:19;;11213:366;;;:::o;11585:419::-;11751:4;11789:2;11778:9;11774:18;11766:26;;11838:9;11832:4;11828:20;11824:1;11813:9;11809:17;11802:47;11866:131;11992:4;11866:131;:::i;:::-;11858:139;;11585:419;;;:::o;12010:248::-;12150:34;12146:1;12138:6;12134:14;12127:58;12219:31;12214:2;12206:6;12202:15;12195:56;12010:248;:::o;12264:366::-;12406:3;12427:67;12491:2;12486:3;12427:67;:::i;:::-;12420:74;;12503:93;12592:3;12503:93;:::i;:::-;12621:2;12616:3;12612:12;12605:19;;12264:366;;;:::o;12636:419::-;12802:4;12840:2;12829:9;12825:18;12817:26;;12889:9;12883:4;12879:20;12875:1;12864:9;12860:17;12853:47;12917:131;13043:4;12917:131;:::i;:::-;12909:139;;12636:419;;;:::o;13061:180::-;13109:77;13106:1;13099:88;13206:4;13203:1;13196:15;13230:4;13227:1;13220:15;13247:233;13286:3;13309:24;13327:5;13309:24;:::i;:::-;13300:33;;13355:66;13348:5;13345:77;13342:103;;13425:18;;:::i;:::-;13342:103;13472:1;13465:5;13461:13;13454:20;;13247:233;;;:::o;13486:232::-;13626:34;13622:1;13614:6;13610:14;13603:58;13695:15;13690:2;13682:6;13678:15;13671:40;13486:232;:::o;13724:366::-;13866:3;13887:67;13951:2;13946:3;13887:67;:::i;:::-;13880:74;;13963:93;14052:3;13963:93;:::i;:::-;14081:2;14076:3;14072:12;14065:19;;13724:366;;;:::o;14096:419::-;14262:4;14300:2;14289:9;14285:18;14277:26;;14349:9;14343:4;14339:20;14335:1;14324:9;14320:17;14313:47;14377:131;14503:4;14377:131;:::i;:::-;14369:139;;14096:419;;;:::o;14521:174::-;14661:26;14657:1;14649:6;14645:14;14638:50;14521:174;:::o;14701:366::-;14843:3;14864:67;14928:2;14923:3;14864:67;:::i;:::-;14857:74;;14940:93;15029:3;14940:93;:::i;:::-;15058:2;15053:3;15049:12;15042:19;;14701:366;;;:::o;15073:419::-;15239:4;15277:2;15266:9;15262:18;15254:26;;15326:9;15320:4;15316:20;15312:1;15301:9;15297:17;15290:47;15354:131;15480:4;15354:131;:::i;:::-;15346:139;;15073:419;;;:::o;15498:228::-;15638:34;15634:1;15626:6;15622:14;15615:58;15707:11;15702:2;15694:6;15690:15;15683:36;15498:228;:::o;15732:366::-;15874:3;15895:67;15959:2;15954:3;15895:67;:::i;:::-;15888:74;;15971:93;16060:3;15971:93;:::i;:::-;16089:2;16084:3;16080:12;16073:19;;15732:366;;;:::o;16104:419::-;16270:4;16308:2;16297:9;16293:18;16285:26;;16357:9;16351:4;16347:20;16343:1;16332:9;16328:17;16321:47;16385:131;16511:4;16385:131;:::i;:::-;16377:139;;16104:419;;;:::o;16529:148::-;16631:11;16668:3;16653:18;;16529:148;;;;:::o;16683:390::-;16789:3;16817:39;16850:5;16817:39;:::i;:::-;16872:89;16954:6;16949:3;16872:89;:::i;:::-;16865:96;;16970:65;17028:6;17023:3;17016:4;17009:5;17005:16;16970:65;:::i;:::-;17060:6;17055:3;17051:16;17044:23;;16793:280;16683:390;;;;:::o;17079:435::-;17259:3;17281:95;17372:3;17363:6;17281:95;:::i;:::-;17274:102;;17393:95;17484:3;17475:6;17393:95;:::i;:::-;17386:102;;17505:3;17498:10;;17079:435;;;;;:::o;17520:224::-;17660:34;17656:1;17648:6;17644:14;17637:58;17729:7;17724:2;17716:6;17712:15;17705:32;17520:224;:::o;17750:366::-;17892:3;17913:67;17977:2;17972:3;17913:67;:::i;:::-;17906:74;;17989:93;18078:3;17989:93;:::i;:::-;18107:2;18102:3;18098:12;18091:19;;17750:366;;;:::o;18122:419::-;18288:4;18326:2;18315:9;18311:18;18303:26;;18375:9;18369:4;18365:20;18361:1;18350:9;18346:17;18339:47;18403:131;18529:4;18403:131;:::i;:::-;18395:139;;18122:419;;;:::o;18547:223::-;18687:34;18683:1;18675:6;18671:14;18664:58;18756:6;18751:2;18743:6;18739:15;18732:31;18547:223;:::o;18776:366::-;18918:3;18939:67;19003:2;18998:3;18939:67;:::i;:::-;18932:74;;19015:93;19104:3;19015:93;:::i;:::-;19133:2;19128:3;19124:12;19117:19;;18776:366;;;:::o;19148:419::-;19314:4;19352:2;19341:9;19337:18;19329:26;;19401:9;19395:4;19391:20;19387:1;19376:9;19372:17;19365:47;19429:131;19555:4;19429:131;:::i;:::-;19421:139;;19148:419;;;:::o;19573:175::-;19713:27;19709:1;19701:6;19697:14;19690:51;19573:175;:::o;19754:366::-;19896:3;19917:67;19981:2;19976:3;19917:67;:::i;:::-;19910:74;;19993:93;20082:3;19993:93;:::i;:::-;20111:2;20106:3;20102:12;20095:19;;19754:366;;;:::o;20126:419::-;20292:4;20330:2;20319:9;20315:18;20307:26;;20379:9;20373:4;20369:20;20365:1;20354:9;20350:17;20343:47;20407:131;20533:4;20407:131;:::i;:::-;20399:139;;20126:419;;;:::o;20551:237::-;20691:34;20687:1;20679:6;20675:14;20668:58;20760:20;20755:2;20747:6;20743:15;20736:45;20551:237;:::o;20794:366::-;20936:3;20957:67;21021:2;21016:3;20957:67;:::i;:::-;20950:74;;21033:93;21122:3;21033:93;:::i;:::-;21151:2;21146:3;21142:12;21135:19;;20794:366;;;:::o;21166:419::-;21332:4;21370:2;21359:9;21355:18;21347:26;;21419:9;21413:4;21409:20;21405:1;21394:9;21390:17;21383:47;21447:131;21573:4;21447:131;:::i;:::-;21439:139;;21166:419;;;:::o;21591:180::-;21639:77;21636:1;21629:88;21736:4;21733:1;21726:15;21760:4;21757:1;21750:15;21777:98;21828:6;21862:5;21856:12;21846:22;;21777:98;;;:::o;21881:168::-;21964:11;21998:6;21993:3;21986:19;22038:4;22033:3;22029:14;22014:29;;21881:168;;;;:::o;22055:373::-;22141:3;22169:38;22201:5;22169:38;:::i;:::-;22223:70;22286:6;22281:3;22223:70;:::i;:::-;22216:77;;22302:65;22360:6;22355:3;22348:4;22341:5;22337:16;22302:65;:::i;:::-;22392:29;22414:6;22392:29;:::i;:::-;22387:3;22383:39;22376:46;;22145:283;22055:373;;;;:::o;22434:640::-;22629:4;22667:3;22656:9;22652:19;22644:27;;22681:71;22749:1;22738:9;22734:17;22725:6;22681:71;:::i;:::-;22762:72;22830:2;22819:9;22815:18;22806:6;22762:72;:::i;:::-;22844;22912:2;22901:9;22897:18;22888:6;22844:72;:::i;:::-;22963:9;22957:4;22953:20;22948:2;22937:9;22933:18;22926:48;22991:76;23062:4;23053:6;22991:76;:::i;:::-;22983:84;;22434:640;;;;;;;:::o;23080:141::-;23136:5;23167:6;23161:13;23152:22;;23183:32;23209:5;23183:32;:::i;:::-;23080:141;;;;:::o;23227:349::-;23296:6;23345:2;23333:9;23324:7;23320:23;23316:32;23313:119;;;23351:79;;:::i;:::-;23313:119;23471:1;23496:63;23551:7;23542:6;23531:9;23527:22;23496:63;:::i;:::-;23486:73;;23442:127;23227:349;;;;:::o;23582:182::-;23722:34;23718:1;23710:6;23706:14;23699:58;23582:182;:::o;23770:366::-;23912:3;23933:67;23997:2;23992:3;23933:67;:::i;:::-;23926:74;;24009:93;24098:3;24009:93;:::i;:::-;24127:2;24122:3;24118:12;24111:19;;23770:366;;;:::o;24142:419::-;24308:4;24346:2;24335:9;24331:18;24323:26;;24395:9;24389:4;24385:20;24381:1;24370:9;24366:17;24359:47;24423:131;24549:4;24423:131;:::i;:::-;24415:139;;24142:419;;;:::o;24567:178::-;24707:30;24703:1;24695:6;24691:14;24684:54;24567:178;:::o;24751:366::-;24893:3;24914:67;24978:2;24973:3;24914:67;:::i;:::-;24907:74;;24990:93;25079:3;24990:93;:::i;:::-;25108:2;25103:3;25099:12;25092:19;;24751:366;;;:::o;25123:419::-;25289:4;25327:2;25316:9;25312:18;25304:26;;25376:9;25370:4;25366:20;25362:1;25351:9;25347:17;25340:47;25404:131;25530:4;25404:131;:::i;:::-;25396:139;;25123:419;;;:::o" + }, + "methodIdentifiers": { + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "currentTokenId()": "009a9b7b", + "getApproved(uint256)": "081812fc", + "isApprovedForAll(address,address)": "e985e9c5", + "mint()": "1249c58b", + "name()": "06fdde03", + "ownerOf(uint256)": "6352211e", + "safeTransferFrom(address,address,uint256)": "42842e0e", + "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde", + "setApprovalForAll(address,bool)": "a22cb465", + "supportsInterface(bytes4)": "01ffc9a7", + "symbol()": "95d89b41", + "tokenURI(uint256)": "c87b56dd", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenURI(uint256)\":{\"details\":\"See {IERC721Metadata-tokenURI}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/NFTMock.sol\":\"NFTMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x2c309e7df9e05e6ce15bedfe74f3c61b467fc37e0fae9eab496acf5ea0bbd7ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7063b5c98711a98018ba4635ac74cee1c1cfa2ea01099498e062699ed9530005\",\"dweb:/ipfs/QmeJ8rGXkcv7RrqLdAW8PCXPAykxVsddfYY6g5NaTwmRFE\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"contracts/NFTMock.sol\":{\"keccak256\":\"0x92b848c409fd3432dfbd3a802bbea0c61d5eb5c5778f40143e831f4de04d7e74\",\"urls\":[\"bzz-raw://b8467c7d46b843b68bbe4bcc57005044c1467f0c0e7ffcef7ee0b239da8d5dc0\",\"dweb:/ipfs/QmX76faq9wBNVXRqomn3cbKJ4c7o1KTbfe4QYgd14pir5V\"]}},\"version\":1}" + } + }, + "contracts/NFTResolver.sol": { + "NFTResolver": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract IEVMVerifier", + "name": "_verifier", + "type": "address" + }, + { + "internalType": "contract ENS", + "name": "_ens", + "type": "address" + }, + { + "internalType": "contract INameWrapper", + "name": "_nameWrapper", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_l2ChainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_publicResolver", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "CommandTooLong", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string[]", + "name": "urls", + "type": "string[]" + }, + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "callbackFunction", + "type": "bytes4" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "OffchainLookup", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "actual", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expected", + "type": "uint256" + } + ], + "name": "ResponseLengthMismatch", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "StorageHandledByL2", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "TooManyCommands", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "TargetSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "addrCallback", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "ens", + "outputs": [ + { + "internalType": "contract ENS", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "extractNFTId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getAcceptedL2BlockRangeLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "response", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extradata", + "type": "bytes" + } + ], + "name": "getStorageSlotsCallback", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + } + ], + "name": "getTarget", + "outputs": [ + { + "internalType": "bytes32", + "name": "node", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2ChainId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nameWrapper", + "outputs": [ + { + "internalType": "contract INameWrapper", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "publicResolver", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "resolve", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setAddr", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "name", + "type": "bytes" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "setTarget", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "verifier", + "outputs": [ + { + "internalType": "contract IEVMVerifier", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_16491": { + "entryPoint": null, + "id": 16491, + "parameterSlots": 5, + "returnSlots": 0 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 929, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_ENS_$4567_fromMemory": { + "entryPoint": 769, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_IEVMVerifier_$798_fromMemory": { + "entryPoint": 707, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_INameWrapper_$10064_fromMemory": { + "entryPoint": 831, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256_fromMemory": { + "entryPoint": 885, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_IEVMVerifier_$798t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_uint256t_address_fromMemory": { + "entryPoint": 950, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_encode_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1239, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1347, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1131, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1274, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1382, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1166, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1073, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 648, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_ENS_$4567": { + "entryPoint": 728, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_IEVMVerifier_$798": { + "entryPoint": 666, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_INameWrapper_$10064": { + "entryPoint": 790, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 616, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 852, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 611, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "store_literal_in_memory_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f": { + "entryPoint": 1198, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60": { + "entryPoint": 1306, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766": { + "entryPoint": 1090, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 906, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_ENS_$4567": { + "entryPoint": 746, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_IEVMVerifier_$798": { + "entryPoint": 684, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_INameWrapper_$10064": { + "entryPoint": 808, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 862, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:6822:74", + "nodeType": "YulBlock", + "src": "0:6822:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:81:74", + "nodeType": "YulBlock", + "src": "379:81:74", + "statements": [ + { + "nativeSrc": "389:65:74", + "nodeType": "YulAssignment", + "src": "389:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "404:5:74", + "nodeType": "YulIdentifier", + "src": "404:5:74" + }, + { + "kind": "number", + "nativeSrc": "411:42:74", + "nodeType": "YulLiteral", + "src": "411:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "400:3:74", + "nodeType": "YulIdentifier", + "src": "400:3:74" + }, + "nativeSrc": "400:54:74", + "nodeType": "YulFunctionCall", + "src": "400:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "334:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:126:74" + }, + { + "body": { + "nativeSrc": "511:51:74", + "nodeType": "YulBlock", + "src": "511:51:74", + "statements": [ + { + "nativeSrc": "521:35:74", + "nodeType": "YulAssignment", + "src": "521:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "550:5:74", + "nodeType": "YulIdentifier", + "src": "550:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "532:17:74", + "nodeType": "YulIdentifier", + "src": "532:17:74" + }, + "nativeSrc": "532:24:74", + "nodeType": "YulFunctionCall", + "src": "532:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "521:7:74", + "nodeType": "YulIdentifier", + "src": "521:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "466:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "493:5:74", + "nodeType": "YulTypedName", + "src": "493:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "503:7:74", + "nodeType": "YulTypedName", + "src": "503:7:74", + "type": "" + } + ], + "src": "466:96:74" + }, + { + "body": { + "nativeSrc": "633:51:74", + "nodeType": "YulBlock", + "src": "633:51:74", + "statements": [ + { + "nativeSrc": "643:35:74", + "nodeType": "YulAssignment", + "src": "643:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "672:5:74", + "nodeType": "YulIdentifier", + "src": "672:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "654:17:74", + "nodeType": "YulIdentifier", + "src": "654:17:74" + }, + "nativeSrc": "654:24:74", + "nodeType": "YulFunctionCall", + "src": "654:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "643:7:74", + "nodeType": "YulIdentifier", + "src": "643:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_IEVMVerifier_$798", + "nativeSrc": "568:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "615:5:74", + "nodeType": "YulTypedName", + "src": "615:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "625:7:74", + "nodeType": "YulTypedName", + "src": "625:7:74", + "type": "" + } + ], + "src": "568:116:74" + }, + { + "body": { + "nativeSrc": "753:99:74", + "nodeType": "YulBlock", + "src": "753:99:74", + "statements": [ + { + "body": { + "nativeSrc": "830:16:74", + "nodeType": "YulBlock", + "src": "830:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "839:1:74", + "nodeType": "YulLiteral", + "src": "839:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "842:1:74", + "nodeType": "YulLiteral", + "src": "842:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "832:6:74", + "nodeType": "YulIdentifier", + "src": "832:6:74" + }, + "nativeSrc": "832:12:74", + "nodeType": "YulFunctionCall", + "src": "832:12:74" + }, + "nativeSrc": "832:12:74", + "nodeType": "YulExpressionStatement", + "src": "832:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "776:5:74", + "nodeType": "YulIdentifier", + "src": "776:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "821:5:74", + "nodeType": "YulIdentifier", + "src": "821:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_IEVMVerifier_$798", + "nativeSrc": "783:37:74", + "nodeType": "YulIdentifier", + "src": "783:37:74" + }, + "nativeSrc": "783:44:74", + "nodeType": "YulFunctionCall", + "src": "783:44:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "773:2:74", + "nodeType": "YulIdentifier", + "src": "773:2:74" + }, + "nativeSrc": "773:55:74", + "nodeType": "YulFunctionCall", + "src": "773:55:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "766:6:74", + "nodeType": "YulIdentifier", + "src": "766:6:74" + }, + "nativeSrc": "766:63:74", + "nodeType": "YulFunctionCall", + "src": "766:63:74" + }, + "nativeSrc": "763:83:74", + "nodeType": "YulIf", + "src": "763:83:74" + } + ] + }, + "name": "validator_revert_t_contract$_IEVMVerifier_$798", + "nativeSrc": "690:162:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "746:5:74", + "nodeType": "YulTypedName", + "src": "746:5:74", + "type": "" + } + ], + "src": "690:162:74" + }, + { + "body": { + "nativeSrc": "941:100:74", + "nodeType": "YulBlock", + "src": "941:100:74", + "statements": [ + { + "nativeSrc": "951:22:74", + "nodeType": "YulAssignment", + "src": "951:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "966:6:74", + "nodeType": "YulIdentifier", + "src": "966:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "960:5:74", + "nodeType": "YulIdentifier", + "src": "960:5:74" + }, + "nativeSrc": "960:13:74", + "nodeType": "YulFunctionCall", + "src": "960:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "951:5:74", + "nodeType": "YulIdentifier", + "src": "951:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1029:5:74", + "nodeType": "YulIdentifier", + "src": "1029:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_IEVMVerifier_$798", + "nativeSrc": "982:46:74", + "nodeType": "YulIdentifier", + "src": "982:46:74" + }, + "nativeSrc": "982:53:74", + "nodeType": "YulFunctionCall", + "src": "982:53:74" + }, + "nativeSrc": "982:53:74", + "nodeType": "YulExpressionStatement", + "src": "982:53:74" + } + ] + }, + "name": "abi_decode_t_contract$_IEVMVerifier_$798_fromMemory", + "nativeSrc": "858:183:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "919:6:74", + "nodeType": "YulTypedName", + "src": "919:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "927:3:74", + "nodeType": "YulTypedName", + "src": "927:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "935:5:74", + "nodeType": "YulTypedName", + "src": "935:5:74", + "type": "" + } + ], + "src": "858:183:74" + }, + { + "body": { + "nativeSrc": "1104:51:74", + "nodeType": "YulBlock", + "src": "1104:51:74", + "statements": [ + { + "nativeSrc": "1114:35:74", + "nodeType": "YulAssignment", + "src": "1114:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1143:5:74", + "nodeType": "YulIdentifier", + "src": "1143:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1125:17:74", + "nodeType": "YulIdentifier", + "src": "1125:17:74" + }, + "nativeSrc": "1125:24:74", + "nodeType": "YulFunctionCall", + "src": "1125:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1114:7:74", + "nodeType": "YulIdentifier", + "src": "1114:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "1047:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1086:5:74", + "nodeType": "YulTypedName", + "src": "1086:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1096:7:74", + "nodeType": "YulTypedName", + "src": "1096:7:74", + "type": "" + } + ], + "src": "1047:108:74" + }, + { + "body": { + "nativeSrc": "1216:91:74", + "nodeType": "YulBlock", + "src": "1216:91:74", + "statements": [ + { + "body": { + "nativeSrc": "1285:16:74", + "nodeType": "YulBlock", + "src": "1285:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1294:1:74", + "nodeType": "YulLiteral", + "src": "1294:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1297:1:74", + "nodeType": "YulLiteral", + "src": "1297:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1287:6:74", + "nodeType": "YulIdentifier", + "src": "1287:6:74" + }, + "nativeSrc": "1287:12:74", + "nodeType": "YulFunctionCall", + "src": "1287:12:74" + }, + "nativeSrc": "1287:12:74", + "nodeType": "YulExpressionStatement", + "src": "1287:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1239:5:74", + "nodeType": "YulIdentifier", + "src": "1239:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1276:5:74", + "nodeType": "YulIdentifier", + "src": "1276:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_ENS_$4567", + "nativeSrc": "1246:29:74", + "nodeType": "YulIdentifier", + "src": "1246:29:74" + }, + "nativeSrc": "1246:36:74", + "nodeType": "YulFunctionCall", + "src": "1246:36:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1236:2:74", + "nodeType": "YulIdentifier", + "src": "1236:2:74" + }, + "nativeSrc": "1236:47:74", + "nodeType": "YulFunctionCall", + "src": "1236:47:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1229:6:74", + "nodeType": "YulIdentifier", + "src": "1229:6:74" + }, + "nativeSrc": "1229:55:74", + "nodeType": "YulFunctionCall", + "src": "1229:55:74" + }, + "nativeSrc": "1226:75:74", + "nodeType": "YulIf", + "src": "1226:75:74" + } + ] + }, + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "1161:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1209:5:74", + "nodeType": "YulTypedName", + "src": "1209:5:74", + "type": "" + } + ], + "src": "1161:146:74" + }, + { + "body": { + "nativeSrc": "1388:92:74", + "nodeType": "YulBlock", + "src": "1388:92:74", + "statements": [ + { + "nativeSrc": "1398:22:74", + "nodeType": "YulAssignment", + "src": "1398:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1413:6:74", + "nodeType": "YulIdentifier", + "src": "1413:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1407:5:74", + "nodeType": "YulIdentifier", + "src": "1407:5:74" + }, + "nativeSrc": "1407:13:74", + "nodeType": "YulFunctionCall", + "src": "1407:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1398:5:74", + "nodeType": "YulIdentifier", + "src": "1398:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1468:5:74", + "nodeType": "YulIdentifier", + "src": "1468:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_ENS_$4567", + "nativeSrc": "1429:38:74", + "nodeType": "YulIdentifier", + "src": "1429:38:74" + }, + "nativeSrc": "1429:45:74", + "nodeType": "YulFunctionCall", + "src": "1429:45:74" + }, + "nativeSrc": "1429:45:74", + "nodeType": "YulExpressionStatement", + "src": "1429:45:74" + } + ] + }, + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "1313:167:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1366:6:74", + "nodeType": "YulTypedName", + "src": "1366:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1374:3:74", + "nodeType": "YulTypedName", + "src": "1374:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1382:5:74", + "nodeType": "YulTypedName", + "src": "1382:5:74", + "type": "" + } + ], + "src": "1313:167:74" + }, + { + "body": { + "nativeSrc": "1553:51:74", + "nodeType": "YulBlock", + "src": "1553:51:74", + "statements": [ + { + "nativeSrc": "1563:35:74", + "nodeType": "YulAssignment", + "src": "1563:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1592:5:74", + "nodeType": "YulIdentifier", + "src": "1592:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "1574:17:74", + "nodeType": "YulIdentifier", + "src": "1574:17:74" + }, + "nativeSrc": "1574:24:74", + "nodeType": "YulFunctionCall", + "src": "1574:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1563:7:74", + "nodeType": "YulIdentifier", + "src": "1563:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_INameWrapper_$10064", + "nativeSrc": "1486:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1535:5:74", + "nodeType": "YulTypedName", + "src": "1535:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1545:7:74", + "nodeType": "YulTypedName", + "src": "1545:7:74", + "type": "" + } + ], + "src": "1486:118:74" + }, + { + "body": { + "nativeSrc": "1675:101:74", + "nodeType": "YulBlock", + "src": "1675:101:74", + "statements": [ + { + "body": { + "nativeSrc": "1754:16:74", + "nodeType": "YulBlock", + "src": "1754:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1763:1:74", + "nodeType": "YulLiteral", + "src": "1763:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1766:1:74", + "nodeType": "YulLiteral", + "src": "1766:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1756:6:74", + "nodeType": "YulIdentifier", + "src": "1756:6:74" + }, + "nativeSrc": "1756:12:74", + "nodeType": "YulFunctionCall", + "src": "1756:12:74" + }, + "nativeSrc": "1756:12:74", + "nodeType": "YulExpressionStatement", + "src": "1756:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1698:5:74", + "nodeType": "YulIdentifier", + "src": "1698:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1745:5:74", + "nodeType": "YulIdentifier", + "src": "1745:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_INameWrapper_$10064", + "nativeSrc": "1705:39:74", + "nodeType": "YulIdentifier", + "src": "1705:39:74" + }, + "nativeSrc": "1705:46:74", + "nodeType": "YulFunctionCall", + "src": "1705:46:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "1695:2:74", + "nodeType": "YulIdentifier", + "src": "1695:2:74" + }, + "nativeSrc": "1695:57:74", + "nodeType": "YulFunctionCall", + "src": "1695:57:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1688:6:74", + "nodeType": "YulIdentifier", + "src": "1688:6:74" + }, + "nativeSrc": "1688:65:74", + "nodeType": "YulFunctionCall", + "src": "1688:65:74" + }, + "nativeSrc": "1685:85:74", + "nodeType": "YulIf", + "src": "1685:85:74" + } + ] + }, + "name": "validator_revert_t_contract$_INameWrapper_$10064", + "nativeSrc": "1610:166:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1668:5:74", + "nodeType": "YulTypedName", + "src": "1668:5:74", + "type": "" + } + ], + "src": "1610:166:74" + }, + { + "body": { + "nativeSrc": "1867:102:74", + "nodeType": "YulBlock", + "src": "1867:102:74", + "statements": [ + { + "nativeSrc": "1877:22:74", + "nodeType": "YulAssignment", + "src": "1877:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "1892:6:74", + "nodeType": "YulIdentifier", + "src": "1892:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "1886:5:74", + "nodeType": "YulIdentifier", + "src": "1886:5:74" + }, + "nativeSrc": "1886:13:74", + "nodeType": "YulFunctionCall", + "src": "1886:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "1877:5:74", + "nodeType": "YulIdentifier", + "src": "1877:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1957:5:74", + "nodeType": "YulIdentifier", + "src": "1957:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_INameWrapper_$10064", + "nativeSrc": "1908:48:74", + "nodeType": "YulIdentifier", + "src": "1908:48:74" + }, + "nativeSrc": "1908:55:74", + "nodeType": "YulFunctionCall", + "src": "1908:55:74" + }, + "nativeSrc": "1908:55:74", + "nodeType": "YulExpressionStatement", + "src": "1908:55:74" + } + ] + }, + "name": "abi_decode_t_contract$_INameWrapper_$10064_fromMemory", + "nativeSrc": "1782:187:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "1845:6:74", + "nodeType": "YulTypedName", + "src": "1845:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "1853:3:74", + "nodeType": "YulTypedName", + "src": "1853:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "1861:5:74", + "nodeType": "YulTypedName", + "src": "1861:5:74", + "type": "" + } + ], + "src": "1782:187:74" + }, + { + "body": { + "nativeSrc": "2020:32:74", + "nodeType": "YulBlock", + "src": "2020:32:74", + "statements": [ + { + "nativeSrc": "2030:16:74", + "nodeType": "YulAssignment", + "src": "2030:16:74", + "value": { + "name": "value", + "nativeSrc": "2041:5:74", + "nodeType": "YulIdentifier", + "src": "2041:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2030:7:74", + "nodeType": "YulIdentifier", + "src": "2030:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "1975:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2002:5:74", + "nodeType": "YulTypedName", + "src": "2002:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2012:7:74", + "nodeType": "YulTypedName", + "src": "2012:7:74", + "type": "" + } + ], + "src": "1975:77:74" + }, + { + "body": { + "nativeSrc": "2101:79:74", + "nodeType": "YulBlock", + "src": "2101:79:74", + "statements": [ + { + "body": { + "nativeSrc": "2158:16:74", + "nodeType": "YulBlock", + "src": "2158:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2167:1:74", + "nodeType": "YulLiteral", + "src": "2167:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2170:1:74", + "nodeType": "YulLiteral", + "src": "2170:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2160:6:74", + "nodeType": "YulIdentifier", + "src": "2160:6:74" + }, + "nativeSrc": "2160:12:74", + "nodeType": "YulFunctionCall", + "src": "2160:12:74" + }, + "nativeSrc": "2160:12:74", + "nodeType": "YulExpressionStatement", + "src": "2160:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2124:5:74", + "nodeType": "YulIdentifier", + "src": "2124:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2149:5:74", + "nodeType": "YulIdentifier", + "src": "2149:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "2131:17:74", + "nodeType": "YulIdentifier", + "src": "2131:17:74" + }, + "nativeSrc": "2131:24:74", + "nodeType": "YulFunctionCall", + "src": "2131:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2121:2:74", + "nodeType": "YulIdentifier", + "src": "2121:2:74" + }, + "nativeSrc": "2121:35:74", + "nodeType": "YulFunctionCall", + "src": "2121:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2114:6:74", + "nodeType": "YulIdentifier", + "src": "2114:6:74" + }, + "nativeSrc": "2114:43:74", + "nodeType": "YulFunctionCall", + "src": "2114:43:74" + }, + "nativeSrc": "2111:63:74", + "nodeType": "YulIf", + "src": "2111:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "2058:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2094:5:74", + "nodeType": "YulTypedName", + "src": "2094:5:74", + "type": "" + } + ], + "src": "2058:122:74" + }, + { + "body": { + "nativeSrc": "2249:80:74", + "nodeType": "YulBlock", + "src": "2249:80:74", + "statements": [ + { + "nativeSrc": "2259:22:74", + "nodeType": "YulAssignment", + "src": "2259:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2274:6:74", + "nodeType": "YulIdentifier", + "src": "2274:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2268:5:74", + "nodeType": "YulIdentifier", + "src": "2268:5:74" + }, + "nativeSrc": "2268:13:74", + "nodeType": "YulFunctionCall", + "src": "2268:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2259:5:74", + "nodeType": "YulIdentifier", + "src": "2259:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2317:5:74", + "nodeType": "YulIdentifier", + "src": "2317:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "2290:26:74", + "nodeType": "YulIdentifier", + "src": "2290:26:74" + }, + "nativeSrc": "2290:33:74", + "nodeType": "YulFunctionCall", + "src": "2290:33:74" + }, + "nativeSrc": "2290:33:74", + "nodeType": "YulExpressionStatement", + "src": "2290:33:74" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "2186:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2227:6:74", + "nodeType": "YulTypedName", + "src": "2227:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2235:3:74", + "nodeType": "YulTypedName", + "src": "2235:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2243:5:74", + "nodeType": "YulTypedName", + "src": "2243:5:74", + "type": "" + } + ], + "src": "2186:143:74" + }, + { + "body": { + "nativeSrc": "2378:79:74", + "nodeType": "YulBlock", + "src": "2378:79:74", + "statements": [ + { + "body": { + "nativeSrc": "2435:16:74", + "nodeType": "YulBlock", + "src": "2435:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2444:1:74", + "nodeType": "YulLiteral", + "src": "2444:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2447:1:74", + "nodeType": "YulLiteral", + "src": "2447:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2437:6:74", + "nodeType": "YulIdentifier", + "src": "2437:6:74" + }, + "nativeSrc": "2437:12:74", + "nodeType": "YulFunctionCall", + "src": "2437:12:74" + }, + "nativeSrc": "2437:12:74", + "nodeType": "YulExpressionStatement", + "src": "2437:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2401:5:74", + "nodeType": "YulIdentifier", + "src": "2401:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2426:5:74", + "nodeType": "YulIdentifier", + "src": "2426:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "2408:17:74", + "nodeType": "YulIdentifier", + "src": "2408:17:74" + }, + "nativeSrc": "2408:24:74", + "nodeType": "YulFunctionCall", + "src": "2408:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "2398:2:74", + "nodeType": "YulIdentifier", + "src": "2398:2:74" + }, + "nativeSrc": "2398:35:74", + "nodeType": "YulFunctionCall", + "src": "2398:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2391:6:74", + "nodeType": "YulIdentifier", + "src": "2391:6:74" + }, + "nativeSrc": "2391:43:74", + "nodeType": "YulFunctionCall", + "src": "2391:43:74" + }, + "nativeSrc": "2388:63:74", + "nodeType": "YulIf", + "src": "2388:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "2335:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2371:5:74", + "nodeType": "YulTypedName", + "src": "2371:5:74", + "type": "" + } + ], + "src": "2335:122:74" + }, + { + "body": { + "nativeSrc": "2526:80:74", + "nodeType": "YulBlock", + "src": "2526:80:74", + "statements": [ + { + "nativeSrc": "2536:22:74", + "nodeType": "YulAssignment", + "src": "2536:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "2551:6:74", + "nodeType": "YulIdentifier", + "src": "2551:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "2545:5:74", + "nodeType": "YulIdentifier", + "src": "2545:5:74" + }, + "nativeSrc": "2545:13:74", + "nodeType": "YulFunctionCall", + "src": "2545:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "2536:5:74", + "nodeType": "YulIdentifier", + "src": "2536:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "2594:5:74", + "nodeType": "YulIdentifier", + "src": "2594:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "2567:26:74", + "nodeType": "YulIdentifier", + "src": "2567:26:74" + }, + "nativeSrc": "2567:33:74", + "nodeType": "YulFunctionCall", + "src": "2567:33:74" + }, + "nativeSrc": "2567:33:74", + "nodeType": "YulExpressionStatement", + "src": "2567:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "2463:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "2504:6:74", + "nodeType": "YulTypedName", + "src": "2504:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "2512:3:74", + "nodeType": "YulTypedName", + "src": "2512:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "2520:5:74", + "nodeType": "YulTypedName", + "src": "2520:5:74", + "type": "" + } + ], + "src": "2463:143:74" + }, + { + "body": { + "nativeSrc": "2811:886:74", + "nodeType": "YulBlock", + "src": "2811:886:74", + "statements": [ + { + "body": { + "nativeSrc": "2858:83:74", + "nodeType": "YulBlock", + "src": "2858:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "2860:77:74", + "nodeType": "YulIdentifier", + "src": "2860:77:74" + }, + "nativeSrc": "2860:79:74", + "nodeType": "YulFunctionCall", + "src": "2860:79:74" + }, + "nativeSrc": "2860:79:74", + "nodeType": "YulExpressionStatement", + "src": "2860:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "2832:7:74", + "nodeType": "YulIdentifier", + "src": "2832:7:74" + }, + { + "name": "headStart", + "nativeSrc": "2841:9:74", + "nodeType": "YulIdentifier", + "src": "2841:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "2828:3:74", + "nodeType": "YulIdentifier", + "src": "2828:3:74" + }, + "nativeSrc": "2828:23:74", + "nodeType": "YulFunctionCall", + "src": "2828:23:74" + }, + { + "kind": "number", + "nativeSrc": "2853:3:74", + "nodeType": "YulLiteral", + "src": "2853:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "2824:3:74", + "nodeType": "YulIdentifier", + "src": "2824:3:74" + }, + "nativeSrc": "2824:33:74", + "nodeType": "YulFunctionCall", + "src": "2824:33:74" + }, + "nativeSrc": "2821:120:74", + "nodeType": "YulIf", + "src": "2821:120:74" + }, + { + "nativeSrc": "2951:148:74", + "nodeType": "YulBlock", + "src": "2951:148:74", + "statements": [ + { + "nativeSrc": "2966:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2966:15:74", + "value": { + "kind": "number", + "nativeSrc": "2980:1:74", + "nodeType": "YulLiteral", + "src": "2980:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2970:6:74", + "nodeType": "YulTypedName", + "src": "2970:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2995:94:74", + "nodeType": "YulAssignment", + "src": "2995:94:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3061:9:74", + "nodeType": "YulIdentifier", + "src": "3061:9:74" + }, + { + "name": "offset", + "nativeSrc": "3072:6:74", + "nodeType": "YulIdentifier", + "src": "3072:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3057:3:74", + "nodeType": "YulIdentifier", + "src": "3057:3:74" + }, + "nativeSrc": "3057:22:74", + "nodeType": "YulFunctionCall", + "src": "3057:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3081:7:74", + "nodeType": "YulIdentifier", + "src": "3081:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_IEVMVerifier_$798_fromMemory", + "nativeSrc": "3005:51:74", + "nodeType": "YulIdentifier", + "src": "3005:51:74" + }, + "nativeSrc": "3005:84:74", + "nodeType": "YulFunctionCall", + "src": "3005:84:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2995:6:74", + "nodeType": "YulIdentifier", + "src": "2995:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3109:141:74", + "nodeType": "YulBlock", + "src": "3109:141:74", + "statements": [ + { + "nativeSrc": "3124:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3124:16:74", + "value": { + "kind": "number", + "nativeSrc": "3138:2:74", + "nodeType": "YulLiteral", + "src": "3138:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3128:6:74", + "nodeType": "YulTypedName", + "src": "3128:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3154:86:74", + "nodeType": "YulAssignment", + "src": "3154:86:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3212:9:74", + "nodeType": "YulIdentifier", + "src": "3212:9:74" + }, + { + "name": "offset", + "nativeSrc": "3223:6:74", + "nodeType": "YulIdentifier", + "src": "3223:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3208:3:74", + "nodeType": "YulIdentifier", + "src": "3208:3:74" + }, + "nativeSrc": "3208:22:74", + "nodeType": "YulFunctionCall", + "src": "3208:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3232:7:74", + "nodeType": "YulIdentifier", + "src": "3232:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_ENS_$4567_fromMemory", + "nativeSrc": "3164:43:74", + "nodeType": "YulIdentifier", + "src": "3164:43:74" + }, + "nativeSrc": "3164:76:74", + "nodeType": "YulFunctionCall", + "src": "3164:76:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "3154:6:74", + "nodeType": "YulIdentifier", + "src": "3154:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3260:151:74", + "nodeType": "YulBlock", + "src": "3260:151:74", + "statements": [ + { + "nativeSrc": "3275:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3275:16:74", + "value": { + "kind": "number", + "nativeSrc": "3289:2:74", + "nodeType": "YulLiteral", + "src": "3289:2:74", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3279:6:74", + "nodeType": "YulTypedName", + "src": "3279:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3305:96:74", + "nodeType": "YulAssignment", + "src": "3305:96:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3373:9:74", + "nodeType": "YulIdentifier", + "src": "3373:9:74" + }, + { + "name": "offset", + "nativeSrc": "3384:6:74", + "nodeType": "YulIdentifier", + "src": "3384:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3369:3:74", + "nodeType": "YulIdentifier", + "src": "3369:3:74" + }, + "nativeSrc": "3369:22:74", + "nodeType": "YulFunctionCall", + "src": "3369:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3393:7:74", + "nodeType": "YulIdentifier", + "src": "3393:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_INameWrapper_$10064_fromMemory", + "nativeSrc": "3315:53:74", + "nodeType": "YulIdentifier", + "src": "3315:53:74" + }, + "nativeSrc": "3315:86:74", + "nodeType": "YulFunctionCall", + "src": "3315:86:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "3305:6:74", + "nodeType": "YulIdentifier", + "src": "3305:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3421:129:74", + "nodeType": "YulBlock", + "src": "3421:129:74", + "statements": [ + { + "nativeSrc": "3436:16:74", + "nodeType": "YulVariableDeclaration", + "src": "3436:16:74", + "value": { + "kind": "number", + "nativeSrc": "3450:2:74", + "nodeType": "YulLiteral", + "src": "3450:2:74", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3440:6:74", + "nodeType": "YulTypedName", + "src": "3440:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3466:74:74", + "nodeType": "YulAssignment", + "src": "3466:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3512:9:74", + "nodeType": "YulIdentifier", + "src": "3512:9:74" + }, + { + "name": "offset", + "nativeSrc": "3523:6:74", + "nodeType": "YulIdentifier", + "src": "3523:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3508:3:74", + "nodeType": "YulIdentifier", + "src": "3508:3:74" + }, + "nativeSrc": "3508:22:74", + "nodeType": "YulFunctionCall", + "src": "3508:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3532:7:74", + "nodeType": "YulIdentifier", + "src": "3532:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "3476:31:74", + "nodeType": "YulIdentifier", + "src": "3476:31:74" + }, + "nativeSrc": "3476:64:74", + "nodeType": "YulFunctionCall", + "src": "3476:64:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "3466:6:74", + "nodeType": "YulIdentifier", + "src": "3466:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "3560:130:74", + "nodeType": "YulBlock", + "src": "3560:130:74", + "statements": [ + { + "nativeSrc": "3575:17:74", + "nodeType": "YulVariableDeclaration", + "src": "3575:17:74", + "value": { + "kind": "number", + "nativeSrc": "3589:3:74", + "nodeType": "YulLiteral", + "src": "3589:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3579:6:74", + "nodeType": "YulTypedName", + "src": "3579:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3606:74:74", + "nodeType": "YulAssignment", + "src": "3606:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3652:9:74", + "nodeType": "YulIdentifier", + "src": "3652:9:74" + }, + { + "name": "offset", + "nativeSrc": "3663:6:74", + "nodeType": "YulIdentifier", + "src": "3663:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3648:3:74", + "nodeType": "YulIdentifier", + "src": "3648:3:74" + }, + "nativeSrc": "3648:22:74", + "nodeType": "YulFunctionCall", + "src": "3648:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "3672:7:74", + "nodeType": "YulIdentifier", + "src": "3672:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "3616:31:74", + "nodeType": "YulIdentifier", + "src": "3616:31:74" + }, + "nativeSrc": "3616:64:74", + "nodeType": "YulFunctionCall", + "src": "3616:64:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "3606:6:74", + "nodeType": "YulIdentifier", + "src": "3606:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_IEVMVerifier_$798t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_uint256t_address_fromMemory", + "nativeSrc": "2612:1085:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2749:9:74", + "nodeType": "YulTypedName", + "src": "2749:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "2760:7:74", + "nodeType": "YulTypedName", + "src": "2760:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "2772:6:74", + "nodeType": "YulTypedName", + "src": "2772:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "2780:6:74", + "nodeType": "YulTypedName", + "src": "2780:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "2788:6:74", + "nodeType": "YulTypedName", + "src": "2788:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "2796:6:74", + "nodeType": "YulTypedName", + "src": "2796:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "2804:6:74", + "nodeType": "YulTypedName", + "src": "2804:6:74", + "type": "" + } + ], + "src": "2612:1085:74" + }, + { + "body": { + "nativeSrc": "3799:73:74", + "nodeType": "YulBlock", + "src": "3799:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3816:3:74", + "nodeType": "YulIdentifier", + "src": "3816:3:74" + }, + { + "name": "length", + "nativeSrc": "3821:6:74", + "nodeType": "YulIdentifier", + "src": "3821:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3809:6:74", + "nodeType": "YulIdentifier", + "src": "3809:6:74" + }, + "nativeSrc": "3809:19:74", + "nodeType": "YulFunctionCall", + "src": "3809:19:74" + }, + "nativeSrc": "3809:19:74", + "nodeType": "YulExpressionStatement", + "src": "3809:19:74" + }, + { + "nativeSrc": "3837:29:74", + "nodeType": "YulAssignment", + "src": "3837:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "3856:3:74", + "nodeType": "YulIdentifier", + "src": "3856:3:74" + }, + { + "kind": "number", + "nativeSrc": "3861:4:74", + "nodeType": "YulLiteral", + "src": "3861:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3852:3:74", + "nodeType": "YulIdentifier", + "src": "3852:3:74" + }, + "nativeSrc": "3852:14:74", + "nodeType": "YulFunctionCall", + "src": "3852:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "3837:11:74", + "nodeType": "YulIdentifier", + "src": "3837:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "3703:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "3771:3:74", + "nodeType": "YulTypedName", + "src": "3771:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3776:6:74", + "nodeType": "YulTypedName", + "src": "3776:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "3787:11:74", + "nodeType": "YulTypedName", + "src": "3787:11:74", + "type": "" + } + ], + "src": "3703:169:74" + }, + { + "body": { + "nativeSrc": "3984:76:74", + "nodeType": "YulBlock", + "src": "3984:76:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4006:6:74", + "nodeType": "YulIdentifier", + "src": "4006:6:74" + }, + { + "kind": "number", + "nativeSrc": "4014:1:74", + "nodeType": "YulLiteral", + "src": "4014:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4002:3:74", + "nodeType": "YulIdentifier", + "src": "4002:3:74" + }, + "nativeSrc": "4002:14:74", + "nodeType": "YulFunctionCall", + "src": "4002:14:74" + }, + { + "hexValue": "4e616d6520577261707065722061646472657373206d75737420626520736574", + "kind": "string", + "nativeSrc": "4018:34:74", + "nodeType": "YulLiteral", + "src": "4018:34:74", + "type": "", + "value": "Name Wrapper address must be set" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3995:6:74", + "nodeType": "YulIdentifier", + "src": "3995:6:74" + }, + "nativeSrc": "3995:58:74", + "nodeType": "YulFunctionCall", + "src": "3995:58:74" + }, + "nativeSrc": "3995:58:74", + "nodeType": "YulExpressionStatement", + "src": "3995:58:74" + } + ] + }, + "name": "store_literal_in_memory_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766", + "nativeSrc": "3878:182:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "3976:6:74", + "nodeType": "YulTypedName", + "src": "3976:6:74", + "type": "" + } + ], + "src": "3878:182:74" + }, + { + "body": { + "nativeSrc": "4212:220:74", + "nodeType": "YulBlock", + "src": "4212:220:74", + "statements": [ + { + "nativeSrc": "4222:74:74", + "nodeType": "YulAssignment", + "src": "4222:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4288:3:74", + "nodeType": "YulIdentifier", + "src": "4288:3:74" + }, + { + "kind": "number", + "nativeSrc": "4293:2:74", + "nodeType": "YulLiteral", + "src": "4293:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "4229:58:74", + "nodeType": "YulIdentifier", + "src": "4229:58:74" + }, + "nativeSrc": "4229:67:74", + "nodeType": "YulFunctionCall", + "src": "4229:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "4222:3:74", + "nodeType": "YulIdentifier", + "src": "4222:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4394:3:74", + "nodeType": "YulIdentifier", + "src": "4394:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766", + "nativeSrc": "4305:88:74", + "nodeType": "YulIdentifier", + "src": "4305:88:74" + }, + "nativeSrc": "4305:93:74", + "nodeType": "YulFunctionCall", + "src": "4305:93:74" + }, + "nativeSrc": "4305:93:74", + "nodeType": "YulExpressionStatement", + "src": "4305:93:74" + }, + { + "nativeSrc": "4407:19:74", + "nodeType": "YulAssignment", + "src": "4407:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4418:3:74", + "nodeType": "YulIdentifier", + "src": "4418:3:74" + }, + { + "kind": "number", + "nativeSrc": "4423:2:74", + "nodeType": "YulLiteral", + "src": "4423:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4414:3:74", + "nodeType": "YulIdentifier", + "src": "4414:3:74" + }, + "nativeSrc": "4414:12:74", + "nodeType": "YulFunctionCall", + "src": "4414:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "4407:3:74", + "nodeType": "YulIdentifier", + "src": "4407:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4066:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "4200:3:74", + "nodeType": "YulTypedName", + "src": "4200:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "4208:3:74", + "nodeType": "YulTypedName", + "src": "4208:3:74", + "type": "" + } + ], + "src": "4066:366:74" + }, + { + "body": { + "nativeSrc": "4609:248:74", + "nodeType": "YulBlock", + "src": "4609:248:74", + "statements": [ + { + "nativeSrc": "4619:26:74", + "nodeType": "YulAssignment", + "src": "4619:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4631:9:74", + "nodeType": "YulIdentifier", + "src": "4631:9:74" + }, + { + "kind": "number", + "nativeSrc": "4642:2:74", + "nodeType": "YulLiteral", + "src": "4642:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4627:3:74", + "nodeType": "YulIdentifier", + "src": "4627:3:74" + }, + "nativeSrc": "4627:18:74", + "nodeType": "YulFunctionCall", + "src": "4627:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4619:4:74", + "nodeType": "YulIdentifier", + "src": "4619:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4666:9:74", + "nodeType": "YulIdentifier", + "src": "4666:9:74" + }, + { + "kind": "number", + "nativeSrc": "4677:1:74", + "nodeType": "YulLiteral", + "src": "4677:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4662:3:74", + "nodeType": "YulIdentifier", + "src": "4662:3:74" + }, + "nativeSrc": "4662:17:74", + "nodeType": "YulFunctionCall", + "src": "4662:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4685:4:74", + "nodeType": "YulIdentifier", + "src": "4685:4:74" + }, + { + "name": "headStart", + "nativeSrc": "4691:9:74", + "nodeType": "YulIdentifier", + "src": "4691:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "4681:3:74", + "nodeType": "YulIdentifier", + "src": "4681:3:74" + }, + "nativeSrc": "4681:20:74", + "nodeType": "YulFunctionCall", + "src": "4681:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4655:6:74", + "nodeType": "YulIdentifier", + "src": "4655:6:74" + }, + "nativeSrc": "4655:47:74", + "nodeType": "YulFunctionCall", + "src": "4655:47:74" + }, + "nativeSrc": "4655:47:74", + "nodeType": "YulExpressionStatement", + "src": "4655:47:74" + }, + { + "nativeSrc": "4711:139:74", + "nodeType": "YulAssignment", + "src": "4711:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "4845:4:74", + "nodeType": "YulIdentifier", + "src": "4845:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766_to_t_string_memory_ptr_fromStack", + "nativeSrc": "4719:124:74", + "nodeType": "YulIdentifier", + "src": "4719:124:74" + }, + "nativeSrc": "4719:131:74", + "nodeType": "YulFunctionCall", + "src": "4719:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4711:4:74", + "nodeType": "YulIdentifier", + "src": "4711:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "4438:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4589:9:74", + "nodeType": "YulTypedName", + "src": "4589:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4604:4:74", + "nodeType": "YulTypedName", + "src": "4604:4:74", + "type": "" + } + ], + "src": "4438:419:74" + }, + { + "body": { + "nativeSrc": "4969:72:74", + "nodeType": "YulBlock", + "src": "4969:72:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "4991:6:74", + "nodeType": "YulIdentifier", + "src": "4991:6:74" + }, + { + "kind": "number", + "nativeSrc": "4999:1:74", + "nodeType": "YulLiteral", + "src": "4999:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4987:3:74", + "nodeType": "YulIdentifier", + "src": "4987:3:74" + }, + "nativeSrc": "4987:14:74", + "nodeType": "YulFunctionCall", + "src": "4987:14:74" + }, + { + "hexValue": "56657269666965722061646472657373206d75737420626520736574", + "kind": "string", + "nativeSrc": "5003:30:74", + "nodeType": "YulLiteral", + "src": "5003:30:74", + "type": "", + "value": "Verifier address must be set" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4980:6:74", + "nodeType": "YulIdentifier", + "src": "4980:6:74" + }, + "nativeSrc": "4980:54:74", + "nodeType": "YulFunctionCall", + "src": "4980:54:74" + }, + "nativeSrc": "4980:54:74", + "nodeType": "YulExpressionStatement", + "src": "4980:54:74" + } + ] + }, + "name": "store_literal_in_memory_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f", + "nativeSrc": "4863:178:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "4961:6:74", + "nodeType": "YulTypedName", + "src": "4961:6:74", + "type": "" + } + ], + "src": "4863:178:74" + }, + { + "body": { + "nativeSrc": "5193:220:74", + "nodeType": "YulBlock", + "src": "5193:220:74", + "statements": [ + { + "nativeSrc": "5203:74:74", + "nodeType": "YulAssignment", + "src": "5203:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5269:3:74", + "nodeType": "YulIdentifier", + "src": "5269:3:74" + }, + { + "kind": "number", + "nativeSrc": "5274:2:74", + "nodeType": "YulLiteral", + "src": "5274:2:74", + "type": "", + "value": "28" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "5210:58:74", + "nodeType": "YulIdentifier", + "src": "5210:58:74" + }, + "nativeSrc": "5210:67:74", + "nodeType": "YulFunctionCall", + "src": "5210:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "5203:3:74", + "nodeType": "YulIdentifier", + "src": "5203:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5375:3:74", + "nodeType": "YulIdentifier", + "src": "5375:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f", + "nativeSrc": "5286:88:74", + "nodeType": "YulIdentifier", + "src": "5286:88:74" + }, + "nativeSrc": "5286:93:74", + "nodeType": "YulFunctionCall", + "src": "5286:93:74" + }, + "nativeSrc": "5286:93:74", + "nodeType": "YulExpressionStatement", + "src": "5286:93:74" + }, + { + "nativeSrc": "5388:19:74", + "nodeType": "YulAssignment", + "src": "5388:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "5399:3:74", + "nodeType": "YulIdentifier", + "src": "5399:3:74" + }, + { + "kind": "number", + "nativeSrc": "5404:2:74", + "nodeType": "YulLiteral", + "src": "5404:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5395:3:74", + "nodeType": "YulIdentifier", + "src": "5395:3:74" + }, + "nativeSrc": "5395:12:74", + "nodeType": "YulFunctionCall", + "src": "5395:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "5388:3:74", + "nodeType": "YulIdentifier", + "src": "5388:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5047:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "5181:3:74", + "nodeType": "YulTypedName", + "src": "5181:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "5189:3:74", + "nodeType": "YulTypedName", + "src": "5189:3:74", + "type": "" + } + ], + "src": "5047:366:74" + }, + { + "body": { + "nativeSrc": "5590:248:74", + "nodeType": "YulBlock", + "src": "5590:248:74", + "statements": [ + { + "nativeSrc": "5600:26:74", + "nodeType": "YulAssignment", + "src": "5600:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5612:9:74", + "nodeType": "YulIdentifier", + "src": "5612:9:74" + }, + { + "kind": "number", + "nativeSrc": "5623:2:74", + "nodeType": "YulLiteral", + "src": "5623:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5608:3:74", + "nodeType": "YulIdentifier", + "src": "5608:3:74" + }, + "nativeSrc": "5608:18:74", + "nodeType": "YulFunctionCall", + "src": "5608:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5600:4:74", + "nodeType": "YulIdentifier", + "src": "5600:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5647:9:74", + "nodeType": "YulIdentifier", + "src": "5647:9:74" + }, + { + "kind": "number", + "nativeSrc": "5658:1:74", + "nodeType": "YulLiteral", + "src": "5658:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5643:3:74", + "nodeType": "YulIdentifier", + "src": "5643:3:74" + }, + "nativeSrc": "5643:17:74", + "nodeType": "YulFunctionCall", + "src": "5643:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "5666:4:74", + "nodeType": "YulIdentifier", + "src": "5666:4:74" + }, + { + "name": "headStart", + "nativeSrc": "5672:9:74", + "nodeType": "YulIdentifier", + "src": "5672:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "5662:3:74", + "nodeType": "YulIdentifier", + "src": "5662:3:74" + }, + "nativeSrc": "5662:20:74", + "nodeType": "YulFunctionCall", + "src": "5662:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5636:6:74", + "nodeType": "YulIdentifier", + "src": "5636:6:74" + }, + "nativeSrc": "5636:47:74", + "nodeType": "YulFunctionCall", + "src": "5636:47:74" + }, + "nativeSrc": "5636:47:74", + "nodeType": "YulExpressionStatement", + "src": "5636:47:74" + }, + { + "nativeSrc": "5692:139:74", + "nodeType": "YulAssignment", + "src": "5692:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "5826:4:74", + "nodeType": "YulIdentifier", + "src": "5826:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f_to_t_string_memory_ptr_fromStack", + "nativeSrc": "5700:124:74", + "nodeType": "YulIdentifier", + "src": "5700:124:74" + }, + "nativeSrc": "5700:131:74", + "nodeType": "YulFunctionCall", + "src": "5700:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "5692:4:74", + "nodeType": "YulIdentifier", + "src": "5692:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "5419:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "5570:9:74", + "nodeType": "YulTypedName", + "src": "5570:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "5585:4:74", + "nodeType": "YulTypedName", + "src": "5585:4:74", + "type": "" + } + ], + "src": "5419:419:74" + }, + { + "body": { + "nativeSrc": "5950:72:74", + "nodeType": "YulBlock", + "src": "5950:72:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "5972:6:74", + "nodeType": "YulIdentifier", + "src": "5972:6:74" + }, + { + "kind": "number", + "nativeSrc": "5980:1:74", + "nodeType": "YulLiteral", + "src": "5980:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5968:3:74", + "nodeType": "YulIdentifier", + "src": "5968:3:74" + }, + "nativeSrc": "5968:14:74", + "nodeType": "YulFunctionCall", + "src": "5968:14:74" + }, + { + "hexValue": "52656769737472792061646472657373206d75737420626520736574", + "kind": "string", + "nativeSrc": "5984:30:74", + "nodeType": "YulLiteral", + "src": "5984:30:74", + "type": "", + "value": "Registry address must be set" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "5961:6:74", + "nodeType": "YulIdentifier", + "src": "5961:6:74" + }, + "nativeSrc": "5961:54:74", + "nodeType": "YulFunctionCall", + "src": "5961:54:74" + }, + "nativeSrc": "5961:54:74", + "nodeType": "YulExpressionStatement", + "src": "5961:54:74" + } + ] + }, + "name": "store_literal_in_memory_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60", + "nativeSrc": "5844:178:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "5942:6:74", + "nodeType": "YulTypedName", + "src": "5942:6:74", + "type": "" + } + ], + "src": "5844:178:74" + }, + { + "body": { + "nativeSrc": "6174:220:74", + "nodeType": "YulBlock", + "src": "6174:220:74", + "statements": [ + { + "nativeSrc": "6184:74:74", + "nodeType": "YulAssignment", + "src": "6184:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6250:3:74", + "nodeType": "YulIdentifier", + "src": "6250:3:74" + }, + { + "kind": "number", + "nativeSrc": "6255:2:74", + "nodeType": "YulLiteral", + "src": "6255:2:74", + "type": "", + "value": "28" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "6191:58:74", + "nodeType": "YulIdentifier", + "src": "6191:58:74" + }, + "nativeSrc": "6191:67:74", + "nodeType": "YulFunctionCall", + "src": "6191:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "6184:3:74", + "nodeType": "YulIdentifier", + "src": "6184:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6356:3:74", + "nodeType": "YulIdentifier", + "src": "6356:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60", + "nativeSrc": "6267:88:74", + "nodeType": "YulIdentifier", + "src": "6267:88:74" + }, + "nativeSrc": "6267:93:74", + "nodeType": "YulFunctionCall", + "src": "6267:93:74" + }, + "nativeSrc": "6267:93:74", + "nodeType": "YulExpressionStatement", + "src": "6267:93:74" + }, + { + "nativeSrc": "6369:19:74", + "nodeType": "YulAssignment", + "src": "6369:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6380:3:74", + "nodeType": "YulIdentifier", + "src": "6380:3:74" + }, + { + "kind": "number", + "nativeSrc": "6385:2:74", + "nodeType": "YulLiteral", + "src": "6385:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6376:3:74", + "nodeType": "YulIdentifier", + "src": "6376:3:74" + }, + "nativeSrc": "6376:12:74", + "nodeType": "YulFunctionCall", + "src": "6376:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "6369:3:74", + "nodeType": "YulIdentifier", + "src": "6369:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60_to_t_string_memory_ptr_fromStack", + "nativeSrc": "6028:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "6162:3:74", + "nodeType": "YulTypedName", + "src": "6162:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "6170:3:74", + "nodeType": "YulTypedName", + "src": "6170:3:74", + "type": "" + } + ], + "src": "6028:366:74" + }, + { + "body": { + "nativeSrc": "6571:248:74", + "nodeType": "YulBlock", + "src": "6571:248:74", + "statements": [ + { + "nativeSrc": "6581:26:74", + "nodeType": "YulAssignment", + "src": "6581:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6593:9:74", + "nodeType": "YulIdentifier", + "src": "6593:9:74" + }, + { + "kind": "number", + "nativeSrc": "6604:2:74", + "nodeType": "YulLiteral", + "src": "6604:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6589:3:74", + "nodeType": "YulIdentifier", + "src": "6589:3:74" + }, + "nativeSrc": "6589:18:74", + "nodeType": "YulFunctionCall", + "src": "6589:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6581:4:74", + "nodeType": "YulIdentifier", + "src": "6581:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6628:9:74", + "nodeType": "YulIdentifier", + "src": "6628:9:74" + }, + { + "kind": "number", + "nativeSrc": "6639:1:74", + "nodeType": "YulLiteral", + "src": "6639:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6624:3:74", + "nodeType": "YulIdentifier", + "src": "6624:3:74" + }, + "nativeSrc": "6624:17:74", + "nodeType": "YulFunctionCall", + "src": "6624:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "6647:4:74", + "nodeType": "YulIdentifier", + "src": "6647:4:74" + }, + { + "name": "headStart", + "nativeSrc": "6653:9:74", + "nodeType": "YulIdentifier", + "src": "6653:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6643:3:74", + "nodeType": "YulIdentifier", + "src": "6643:3:74" + }, + "nativeSrc": "6643:20:74", + "nodeType": "YulFunctionCall", + "src": "6643:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6617:6:74", + "nodeType": "YulIdentifier", + "src": "6617:6:74" + }, + "nativeSrc": "6617:47:74", + "nodeType": "YulFunctionCall", + "src": "6617:47:74" + }, + "nativeSrc": "6617:47:74", + "nodeType": "YulExpressionStatement", + "src": "6617:47:74" + }, + { + "nativeSrc": "6673:139:74", + "nodeType": "YulAssignment", + "src": "6673:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "6807:4:74", + "nodeType": "YulIdentifier", + "src": "6807:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60_to_t_string_memory_ptr_fromStack", + "nativeSrc": "6681:124:74", + "nodeType": "YulIdentifier", + "src": "6681:124:74" + }, + "nativeSrc": "6681:131:74", + "nodeType": "YulFunctionCall", + "src": "6681:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6673:4:74", + "nodeType": "YulIdentifier", + "src": "6673:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "6400:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6551:9:74", + "nodeType": "YulTypedName", + "src": "6551:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6566:4:74", + "nodeType": "YulTypedName", + "src": "6566:4:74", + "type": "" + } + ], + "src": "6400:419:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_contract$_IEVMVerifier_$798(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_IEVMVerifier_$798(value) {\n if iszero(eq(value, cleanup_t_contract$_IEVMVerifier_$798(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_IEVMVerifier_$798_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_IEVMVerifier_$798(value)\n }\n\n function cleanup_t_contract$_ENS_$4567(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_ENS_$4567(value) {\n if iszero(eq(value, cleanup_t_contract$_ENS_$4567(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_ENS_$4567_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_ENS_$4567(value)\n }\n\n function cleanup_t_contract$_INameWrapper_$10064(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_INameWrapper_$10064(value) {\n if iszero(eq(value, cleanup_t_contract$_INameWrapper_$10064(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_INameWrapper_$10064_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_contract$_INameWrapper_$10064(value)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_contract$_IEVMVerifier_$798t_contract$_ENS_$4567t_contract$_INameWrapper_$10064t_uint256t_address_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_IEVMVerifier_$798_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_contract$_ENS_$4567_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_contract$_INameWrapper_$10064_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766(memPtr) {\n\n mstore(add(memPtr, 0), \"Name Wrapper address must be set\")\n\n }\n\n function abi_encode_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_985ae11de4d0fd8707a7648d3db0227064e8e605800abf907ea6ec9bbd2e1766_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f(memPtr) {\n\n mstore(add(memPtr, 0), \"Verifier address must be set\")\n\n }\n\n function abi_encode_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_257505de972b238e6dc12aaabd98ebbd0002fbdfb73d1cf961080c6d56fffd9f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60(memPtr) {\n\n mstore(add(memPtr, 0), \"Registry address must be set\")\n\n }\n\n function abi_encode_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_7764a128591ab68cda4ae05e7d403f3bfab455070c4177693c2b22b2f7ddbc60_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": { + "contracts/LabelUtils.sol": { + "LabelUtils": [ + { + "length": 20, + "start": 2666 + }, + { + "length": 20, + "start": 2795 + } + ] + } + }, + "object": "61012060405234801561001157600080fd5b506040516139bb3803806139bb833981810160405281019061003391906103b6565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036100a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100999061048e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610111576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610108906104fa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610180576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017790610566565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508160e081815250508073ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff16815250505050505050610586565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061029382610268565b9050919050565b60006102a582610288565b9050919050565b6102b58161029a565b81146102c057600080fd5b50565b6000815190506102d2816102ac565b92915050565b60006102e382610288565b9050919050565b6102f3816102d8565b81146102fe57600080fd5b50565b600081519050610310816102ea565b92915050565b600061032182610288565b9050919050565b61033181610316565b811461033c57600080fd5b50565b60008151905061034e81610328565b92915050565b6000819050919050565b61036781610354565b811461037257600080fd5b50565b6000815190506103848161035e565b92915050565b61039381610288565b811461039e57600080fd5b50565b6000815190506103b08161038a565b92915050565b600080600080600060a086880312156103d2576103d1610263565b5b60006103e0888289016102c3565b95505060206103f188828901610301565b94505060406104028882890161033f565b935050606061041388828901610375565b9250506080610424888289016103a1565b9150509295509295909350565b600082825260208201905092915050565b7f4e616d6520577261707065722061646472657373206d75737420626520736574600082015250565b6000610478602083610431565b915061048382610442565b602082019050919050565b600060208201905081810360008301526104a78161046b565b9050919050565b7f56657269666965722061646472657373206d7573742062652073657400000000600082015250565b60006104e4601c83610431565b91506104ef826104ae565b602082019050919050565b60006020820190508181036000830152610513816104d7565b9050919050565b7f52656769737472792061646472657373206d7573742062652073657400000000600082015250565b6000610550601c83610431565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b60805160a05160c05160e051610100516133c76105f460003960008181610c4a0152610e92015260008181610b610152611184015260008181610a110152818161105a01526110ad01526000818161059c0152610fbe0152600081816105780152610f6301526133c76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639061b9231161008c578063d6ae3cd511610066578063d6ae3cd514610274578063f00eebf414610292578063f470901a146102c2578063f8256121146102f2576100ea565b80639061b9231461020a578063a8e5fbc01461023a578063d358df7714610258576100ea565b80632b7ac3f3116100c85780632b7ac3f3146101805780633f15457f1461019e5780635bdaa916146101bc5780636d74e86e146101ec576100ea565b806301ffc9a7146100ef57806315f643861461011f5780631a33ddae14610150575b600080fd5b61010960048036038101906101049190611994565b610310565b60405161011691906119dc565b60405180910390f35b61013960048036038101906101349190611b3d565b61045a565b604051610147929190611be0565b60405180910390f35b61016a60048036038101906101659190611c69565b610471565b6040516101779190611ccf565b60405180910390f35b610188610576565b6040516101959190611d49565b60405180910390f35b6101a661059a565b6040516101b39190611d85565b60405180910390f35b6101d660048036038101906101d19190611da0565b6105be565b6040516101e39190611ea0565b60405180910390f35b6101f4610778565b6040516102019190611ccf565b60405180910390f35b610224600480360381019061021f9190611da0565b610783565b6040516102319190611ea0565b60405180910390f35b610242610a0f565b60405161024f9190611ee3565b60405180910390f35b610272600480360381019061026d9190611f2a565b610a33565b005b61027c610b5f565b6040516102899190611ccf565b60405180910390f35b6102ac60048036038101906102a79190611f2a565b610b83565b6040516102b99190611ea0565b60405180910390f35b6102dc60048036038101906102d7919061206b565b610bea565b6040516102e99190611ea0565b60405180910390f35b6102fa610c48565b60405161030791906120e3565b60405180910390f35b60007f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103db57507f15f64386000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061044357507ff00eebf4000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610453575061045282610c6c565b5b9050919050565b600080610468836000610cd6565b91509150915091565b60008073__$9c99182377933a0292ee16286dad4ecc22$__6394bc2db685856040518363ffffffff1660e01b81526004016104ad92919061213c565b600060405180830381865af41580156104ca573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104f391906121d0565b905073__$9c99182377933a0292ee16286dad4ecc22$__6308dea91d826040518263ffffffff1660e01b815260040161052c9190612252565b602060405180830381865af4158015610549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056d91906122a0565b91505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600085858101906105d19190611b3d565b905060008060008060008089898101906105eb9190612438565b95509550955095509550955060008673ffffffffffffffffffffffffffffffffffffffff1663c51ca02a8787878c610621610778565b6040518663ffffffff1660e01b81526004016106419594939291906126e3565b600060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106879190612800565b905084518151146106d357805185516040517f291894250000000000000000000000000000000000000000000000000000000081526004016106ca929190612849565b60405180910390fd5b600061076e8483856040516024016106ec929190612872565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16610e3f90919063ffffffff16565b9050805160208201f35b600062015180905090565b606060048383905010156107cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c390612906565b60405180910390fd5b6000838360049080926107e193929190612930565b8101906107ee919061296b565b905060008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905080156108f7576108ee87878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610e8b565b92505050610a07565b600061094888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050600086869061095a91906129b0565b9050633b3b57de60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036109cc5760006109b48a8a610471565b90506109c08184610f38565b95505050505050610a07565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fe90612a5b565b60405180910390fd5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610a8284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061045a565b509050610a8e81610fb9565b610acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac490612aed565b60405180910390fd5b8160008083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8848484604051610b5193929190612b3a565b60405180910390a150505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000610bd685858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050610be281611182565b509392505050565b6060600083600081518110610c0257610c01612b6c565b5b6020026020010151806020019051810190610c1d9190612bb0565b905080604051602001610c3091906120e3565b60405160208183030381529060405291505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000806000610cee84866111e190919063ffffffff16565b60ff1690506000801b92506000811115610e26576000610d25600186610d149190612c0c565b838861120c9092919063ffffffff16565b9050610d488660018488610d399190612c0c565b610d439190612c0c565b610cd6565b80945081955050508381604051602001610d63929190612c61565b604051602081830303815290604052805190602001209350600073ffffffffffffffffffffffffffffffffffffffff1660008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e20578360008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050610e38565b50610e36565b6000801b60009250925050610e38565b505b9250929050565b6060610e83838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250611238565b905092915050565b60606000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1684604051610ed59190612cc9565b600060405180830381855afa9150503d8060008114610f10576040519150601f19603f3d011682016040523d82523d6000602084013e610f15565b606091505b50915091508115610f2a578092505050610f32565b805160208201fd5b92915050565b6060610fb363f470901a60e01b60405180602001604052806000815250610fa486610f966002610f887f00000000000000000000000000000000000000000000000000000000000000008a611305565b61141490919063ffffffff16565b6114f590919063ffffffff16565b6115769092919063ffffffff16565b92915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b81526004016110159190612ce0565b602060405180830381865afa158015611032573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110569190612d10565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361114b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b81526004016111079190611ccf565b602060405180830381865afa158015611124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111489190612d10565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614915050919050565b7f0000000000000000000000000000000000000000000000000000000000000000816040517fe0a050710000000000000000000000000000000000000000000000000000000081526004016111d8929190612d3d565b60405180910390fd5b60008282815181106111f6576111f5612b6c565b5b602001015160f81c60f81b60f81c905092915050565b60008351828461121c9190612c0c565b111561122757600080fd5b818360208601012090509392505050565b60608247101561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612dd8565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516112a69190612cc9565b60006040518083038185875af1925050503d80600081146112e3576040519150601f19603f3d011682016040523d82523d6000602084013e6112e8565b606091505b50915091506112f987838387611701565b92505050949350505050565b61130d6118cd565b6000602067ffffffffffffffff81111561132a57611329611a12565b5b6040519080825280602002602001820160405280156113585781602001602082028036833780820191505090505b5090506000602067ffffffffffffffff81111561137857611377611a12565b5b6040519080825280602002602001820160405280156113ab57816020015b60608152602001906001900390816113965790505b50905060008252600081526040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200160008152602001828152509250505092915050565b61141c6118cd565b60008360400151905060008151905060008111801561143f575060208560600151105b156114505761144f8560ff611776565b5b600181018252602085604001515111156114a25760206040517f128e70080000000000000000000000000000000000000000000000000000000081526004016114999190611ccf565b60405180910390fd5b60008560600181815250506114b8856000611776565b6114ea856114e587876040516020016114d19190611ccf565b60405160208183030381529060405261181d565b611776565b849250505092915050565b6114fd6118cd565b602083606001511061153b576040517fb00fd63800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156d8361156885856040516020016115549190611ccf565b60405160208183030381529060405261181d565b611776565b82905092915050565b600083604001515111801561158f575060208360600151105b156115a05761159f8360ff611776565b5b30836000015173ffffffffffffffffffffffffffffffffffffffff1663b50f2fbc6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156115f0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116199190612f7a565b84602001518560400151866080015160405160240161163a93929190612fc3565b60405160208183030381529060405263ea9cd3bf60e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050635bdaa91660e01b866000015187602001518860400151896080015189896040516020016116b296959493929190613017565b6040516020818303038152906040526040517f556f18300000000000000000000000000000000000000000000000000000000081526004016116f89594939291906131a4565b60405180910390fd5b6060831561176357600083510361175b5761171b8561185a565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190613258565b60405180910390fd5b5b82905061176e565b61176d838361187d565b5b949350505050565b6000600183604001515161178a9190613278565b905082606001805180919061179e906132ac565b81525060086117ad91906132f4565b8260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c836040015182815181106117ec576117eb612b6c565b5b6020026020010151178360400151828151811061180c5761180b612b6c565b5b602002602001018181525050505050565b600080836080015190508051915060018201815282818360ff168151811061184857611847612b6c565b5b60200260200101819052505092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156118905781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c4919061336f565b60405180910390fd5b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6119718161193c565b811461197c57600080fd5b50565b60008135905061198e81611968565b92915050565b6000602082840312156119aa576119a9611932565b5b60006119b88482850161197f565b91505092915050565b60008115159050919050565b6119d6816119c1565b82525050565b60006020820190506119f160008301846119cd565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a4a82611a01565b810181811067ffffffffffffffff82111715611a6957611a68611a12565b5b80604052505050565b6000611a7c611928565b9050611a888282611a41565b919050565b600067ffffffffffffffff821115611aa857611aa7611a12565b5b611ab182611a01565b9050602081019050919050565b82818337600083830152505050565b6000611ae0611adb84611a8d565b611a72565b905082815260208101848484011115611afc57611afb6119fc565b5b611b07848285611abe565b509392505050565b600082601f830112611b2457611b236119f7565b5b8135611b34848260208601611acd565b91505092915050565b600060208284031215611b5357611b52611932565b5b600082013567ffffffffffffffff811115611b7157611b70611937565b5b611b7d84828501611b0f565b91505092915050565b6000819050919050565b611b9981611b86565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bca82611b9f565b9050919050565b611bda81611bbf565b82525050565b6000604082019050611bf56000830185611b90565b611c026020830184611bd1565b9392505050565b600080fd5b600080fd5b60008083601f840112611c2957611c286119f7565b5b8235905067ffffffffffffffff811115611c4657611c45611c09565b5b602083019150836001820283011115611c6257611c61611c0e565b5b9250929050565b60008060208385031215611c8057611c7f611932565b5b600083013567ffffffffffffffff811115611c9e57611c9d611937565b5b611caa85828601611c13565b92509250509250929050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b6000819050919050565b6000611d0f611d0a611d0584611b9f565b611cea565b611b9f565b9050919050565b6000611d2182611cf4565b9050919050565b6000611d3382611d16565b9050919050565b611d4381611d28565b82525050565b6000602082019050611d5e6000830184611d3a565b92915050565b6000611d6f82611d16565b9050919050565b611d7f81611d64565b82525050565b6000602082019050611d9a6000830184611d76565b92915050565b60008060008060408587031215611dba57611db9611932565b5b600085013567ffffffffffffffff811115611dd857611dd7611937565b5b611de487828801611c13565b9450945050602085013567ffffffffffffffff811115611e0757611e06611937565b5b611e1387828801611c13565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e5b578082015181840152602081019050611e40565b60008484015250505050565b6000611e7282611e21565b611e7c8185611e2c565b9350611e8c818560208601611e3d565b611e9581611a01565b840191505092915050565b60006020820190508181036000830152611eba8184611e67565b905092915050565b6000611ecd82611d16565b9050919050565b611edd81611ec2565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b611f0781611bbf565b8114611f1257600080fd5b50565b600081359050611f2481611efe565b92915050565b600080600060408486031215611f4357611f42611932565b5b600084013567ffffffffffffffff811115611f6157611f60611937565b5b611f6d86828701611c13565b93509350506020611f8086828701611f15565b9150509250925092565b600067ffffffffffffffff821115611fa557611fa4611a12565b5b602082029050602081019050919050565b6000611fc9611fc484611f8a565b611a72565b90508083825260208201905060208402830185811115611fec57611feb611c0e565b5b835b8181101561203357803567ffffffffffffffff811115612011576120106119f7565b5b80860161201e8982611b0f565b85526020850194505050602081019050611fee565b5050509392505050565b600082601f830112612052576120516119f7565b5b8135612062848260208601611fb6565b91505092915050565b6000806040838503121561208257612081611932565b5b600083013567ffffffffffffffff8111156120a05761209f611937565b5b6120ac8582860161203d565b925050602083013567ffffffffffffffff8111156120cd576120cc611937565b5b6120d985828601611b0f565b9150509250929050565b60006020820190506120f86000830184611bd1565b92915050565b600082825260208201905092915050565b600061211b83856120fe565b9350612128838584611abe565b61213183611a01565b840190509392505050565b6000602082019050818103600083015261215781848661210f565b90509392505050565b600061217361216e84611a8d565b611a72565b90508281526020810184848401111561218f5761218e6119fc565b5b61219a848285611e3d565b509392505050565b600082601f8301126121b7576121b66119f7565b5b81516121c7848260208601612160565b91505092915050565b6000602082840312156121e6576121e5611932565b5b600082015167ffffffffffffffff81111561220457612203611937565b5b612210848285016121a2565b91505092915050565b600061222482611e21565b61222e81856120fe565b935061223e818560208601611e3d565b61224781611a01565b840191505092915050565b6000602082019050818103600083015261226c8184612219565b905092915050565b61227d81611cb6565b811461228857600080fd5b50565b60008151905061229a81612274565b92915050565b6000602082840312156122b6576122b5611932565b5b60006122c48482850161228b565b91505092915050565b60006122d882611bbf565b9050919050565b6122e8816122cd565b81146122f357600080fd5b50565b600081359050612305816122df565b92915050565b600061231682611b9f565b9050919050565b6123268161230b565b811461233157600080fd5b50565b6000813590506123438161231d565b92915050565b600067ffffffffffffffff82111561236457612363611a12565b5b602082029050602081019050919050565b61237e81611b86565b811461238957600080fd5b50565b60008135905061239b81612375565b92915050565b60006123b46123af84612349565b611a72565b905080838252602082019050602084028301858111156123d7576123d6611c0e565b5b835b8181101561240057806123ec888261238c565b8452602084019350506020810190506123d9565b5050509392505050565b600082601f83011261241f5761241e6119f7565b5b813561242f8482602086016123a1565b91505092915050565b60008060008060008060c0878903121561245557612454611932565b5b600061246389828a016122f6565b965050602061247489828a01612334565b955050604087013567ffffffffffffffff81111561249557612494611937565b5b6124a189828a0161240a565b945050606087013567ffffffffffffffff8111156124c2576124c1611937565b5b6124ce89828a0161203d565b93505060806124df89828a0161197f565b92505060a087013567ffffffffffffffff811115612500576124ff611937565b5b61250c89828a01611b0f565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61254e81611b86565b82525050565b60006125608383612545565b60208301905092915050565b6000602082019050919050565b600061258482612519565b61258e8185612524565b935061259983612535565b8060005b838110156125ca5781516125b18882612554565b97506125bc8361256c565b92505060018101905061259d565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061261f82611e21565b6126298185612603565b9350612639818560208601611e3d565b61264281611a01565b840191505092915050565b60006126598383612614565b905092915050565b6000602082019050919050565b6000612679826125d7565b61268381856125e2565b935083602082028501612695856125f3565b8060005b858110156126d157848403895281516126b2858261264d565b94506126bd83612661565b925060208a01995050600181019050612699565b50829750879550505050505092915050565b600060a0820190506126f86000830188611bd1565b818103602083015261270a8187612579565b9050818103604083015261271e818661266e565b905081810360608301526127328185611e67565b90506127416080830184611cc0565b9695505050505050565b600061275e61275984611f8a565b611a72565b9050808382526020820190506020840283018581111561278157612780611c0e565b5b835b818110156127c857805167ffffffffffffffff8111156127a6576127a56119f7565b5b8086016127b389826121a2565b85526020850194505050602081019050612783565b5050509392505050565b600082601f8301126127e7576127e66119f7565b5b81516127f784826020860161274b565b91505092915050565b60006020828403121561281657612815611932565b5b600082015167ffffffffffffffff81111561283457612833611937565b5b612840848285016127d2565b91505092915050565b600060408201905061285e6000830185611cc0565b61286b6020830184611cc0565b9392505050565b6000604082019050818103600083015261288c818561266e565b905081810360208301526128a08184611e67565b90509392505050565b600082825260208201905092915050565b7f706172616d206461746120746f6f2073686f7274000000000000000000000000600082015250565b60006128f06014836128a9565b91506128fb826128ba565b602082019050919050565b6000602082019050818103600083015261291f816128e3565b9050919050565b600080fd5b600080fd5b6000808585111561294457612943612926565b5b838611156129555761295461292b565b5b6001850283019150848603905094509492505050565b60006020828403121561298157612980611932565b5b600061298f8482850161238c565b91505092915050565b600082905092915050565b600082821b905092915050565b60006129bc8383612998565b826129c7813561193c565b92506004821015612a0757612a027fffffffff00000000000000000000000000000000000000000000000000000000836004036008026129a3565b831692505b505092915050565b7f696e76616c69642073656c6563746f7200000000000000000000000000000000600082015250565b6000612a456010836128a9565b9150612a5082612a0f565b602082019050919050565b60006020820190508181036000830152612a7481612a38565b9050919050565b7f4e6f7420617574686f72697a656420746f207365742074617267657420666f7260008201527f2074686973206e6f646500000000000000000000000000000000000000000000602082015250565b6000612ad7602a836128a9565b9150612ae282612a7b565b604082019050919050565b60006020820190508181036000830152612b0681612aca565b9050919050565b6000612b198385611e2c565b9350612b26838584611abe565b612b2f83611a01565b840190509392505050565b60006040820190508181036000830152612b55818587612b0d565b9050612b646020830184611bd1565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612baa8161231d565b92915050565b600060208284031215612bc657612bc5611932565b5b6000612bd484828501612b9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c1782611cb6565b9150612c2283611cb6565b9250828201905080821115612c3a57612c39612bdd565b5b92915050565b6000819050919050565b612c5b612c5682611b86565b612c40565b82525050565b6000612c6d8285612c4a565b602082019150612c7d8284612c4a565b6020820191508190509392505050565b600081905092915050565b6000612ca382611e21565b612cad8185612c8d565b9350612cbd818560208601611e3d565b80840191505092915050565b6000612cd58284612c98565b915081905092915050565b6000602082019050612cf56000830184611b90565b92915050565b600081519050612d0a81611efe565b92915050565b600060208284031215612d2657612d25611932565b5b6000612d3484828501612cfb565b91505092915050565b6000604082019050612d526000830185611cc0565b612d5f6020830184611bd1565b9392505050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612dc26026836128a9565b9150612dcd82612d66565b604082019050919050565b60006020820190508181036000830152612df181612db5565b9050919050565b600067ffffffffffffffff821115612e1357612e12611a12565b5b602082029050602081019050919050565b600067ffffffffffffffff821115612e3f57612e3e611a12565b5b612e4882611a01565b9050602081019050919050565b6000612e68612e6384612e24565b611a72565b905082815260208101848484011115612e8457612e836119fc565b5b612e8f848285611e3d565b509392505050565b600082601f830112612eac57612eab6119f7565b5b8151612ebc848260208601612e55565b91505092915050565b6000612ed8612ed384612df8565b611a72565b90508083825260208201905060208402830185811115612efb57612efa611c0e565b5b835b81811015612f4257805167ffffffffffffffff811115612f2057612f1f6119f7565b5b808601612f2d8982612e97565b85526020850194505050602081019050612efd565b5050509392505050565b600082601f830112612f6157612f606119f7565b5b8151612f71848260208601612ec5565b91505092915050565b600060208284031215612f9057612f8f611932565b5b600082015167ffffffffffffffff811115612fae57612fad611937565b5b612fba84828501612f4c565b91505092915050565b6000606082019050612fd86000830186611bd1565b8181036020830152612fea8185612579565b90508181036040830152612ffe818461266e565b9050949350505050565b6130118161193c565b82525050565b600060c08201905061302c6000830189611d3a565b6130396020830188611bd1565b818103604083015261304b8187612579565b9050818103606083015261305f818661266e565b905061306e6080830185613008565b81810360a08301526130808184611e67565b9050979650505050505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60006130e0826130b9565b6130ea81856130c4565b93506130fa818560208601611e3d565b61310381611a01565b840191505092915050565b600061311a83836130d5565b905092915050565b6000602082019050919050565b600061313a8261308d565b6131448185613098565b935083602082028501613156856130a9565b8060005b858110156131925784840389528151613173858261310e565b945061317e83613122565b925060208a0199505060018101905061315a565b50829750879550505050505092915050565b600060a0820190506131b96000830188611bd1565b81810360208301526131cb818761312f565b905081810360408301526131df8186611e67565b90506131ee6060830185613008565b81810360808301526132008184611e67565b90509695505050505050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613242601d836128a9565b915061324d8261320c565b602082019050919050565b6000602082019050818103600083015261327181613235565b9050919050565b600061328382611cb6565b915061328e83611cb6565b92508282039050818111156132a6576132a5612bdd565b5b92915050565b60006132b782611cb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132e9576132e8612bdd565b5b600182019050919050565b60006132ff82611cb6565b915061330a83611cb6565b925082820261331881611cb6565b9150828204841483151761332f5761332e612bdd565b5b5092915050565b6000613341826130b9565b61334b81856128a9565b935061335b818560208601611e3d565b61336481611a01565b840191505092915050565b600060208201905081810360008301526133898184613336565b90509291505056fea26469706673582212205bb3f0bfa04cb3562838e41dbf668e48d8b109ef17a588380510fd0153dba59364736f6c63430008190033", + "opcodes": "PUSH2 0x120 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x39BB CODESIZE SUB DUP1 PUSH2 0x39BB DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x33 SWAP2 SWAP1 PUSH2 0x3B6 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xA2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x99 SWAP1 PUSH2 0x48E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x111 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x108 SWAP1 PUSH2 0x4FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x180 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x177 SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xC0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP2 PUSH1 0xE0 DUP2 DUP2 MSTORE POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x100 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP POP POP POP POP POP PUSH2 0x586 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x293 DUP3 PUSH2 0x268 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A5 DUP3 PUSH2 0x288 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2B5 DUP2 PUSH2 0x29A JUMP JUMPDEST DUP2 EQ PUSH2 0x2C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2D2 DUP2 PUSH2 0x2AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E3 DUP3 PUSH2 0x288 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2F3 DUP2 PUSH2 0x2D8 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x310 DUP2 PUSH2 0x2EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x321 DUP3 PUSH2 0x288 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x331 DUP2 PUSH2 0x316 JUMP JUMPDEST DUP2 EQ PUSH2 0x33C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x34E DUP2 PUSH2 0x328 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x367 DUP2 PUSH2 0x354 JUMP JUMPDEST DUP2 EQ PUSH2 0x372 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x384 DUP2 PUSH2 0x35E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x393 DUP2 PUSH2 0x288 JUMP JUMPDEST DUP2 EQ PUSH2 0x39E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x3B0 DUP2 PUSH2 0x38A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x3D2 JUMPI PUSH2 0x3D1 PUSH2 0x263 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3E0 DUP9 DUP3 DUP10 ADD PUSH2 0x2C3 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x3F1 DUP9 DUP3 DUP10 ADD PUSH2 0x301 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x402 DUP9 DUP3 DUP10 ADD PUSH2 0x33F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x413 DUP9 DUP3 DUP10 ADD PUSH2 0x375 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x424 DUP9 DUP3 DUP10 ADD PUSH2 0x3A1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E616D6520577261707065722061646472657373206D75737420626520736574 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x478 PUSH1 0x20 DUP4 PUSH2 0x431 JUMP JUMPDEST SWAP2 POP PUSH2 0x483 DUP3 PUSH2 0x442 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4A7 DUP2 PUSH2 0x46B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x56657269666965722061646472657373206D7573742062652073657400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4E4 PUSH1 0x1C DUP4 PUSH2 0x431 JUMP JUMPDEST SWAP2 POP PUSH2 0x4EF DUP3 PUSH2 0x4AE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x513 DUP2 PUSH2 0x4D7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x52656769737472792061646472657373206D7573742062652073657400000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x550 PUSH1 0x1C DUP4 PUSH2 0x431 JUMP JUMPDEST SWAP2 POP PUSH2 0x55B DUP3 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x57F DUP2 PUSH2 0x543 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH1 0xC0 MLOAD PUSH1 0xE0 MLOAD PUSH2 0x100 MLOAD PUSH2 0x33C7 PUSH2 0x5F4 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0xC4A ADD MSTORE PUSH2 0xE92 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0xB61 ADD MSTORE PUSH2 0x1184 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0xA11 ADD MSTORE DUP2 DUP2 PUSH2 0x105A ADD MSTORE PUSH2 0x10AD ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x59C ADD MSTORE PUSH2 0xFBE ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x578 ADD MSTORE PUSH2 0xF63 ADD MSTORE PUSH2 0x33C7 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xEA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9061B923 GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xD6AE3CD5 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xD6AE3CD5 EQ PUSH2 0x274 JUMPI DUP1 PUSH4 0xF00EEBF4 EQ PUSH2 0x292 JUMPI DUP1 PUSH4 0xF470901A EQ PUSH2 0x2C2 JUMPI DUP1 PUSH4 0xF8256121 EQ PUSH2 0x2F2 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x9061B923 EQ PUSH2 0x20A JUMPI DUP1 PUSH4 0xA8E5FBC0 EQ PUSH2 0x23A JUMPI DUP1 PUSH4 0xD358DF77 EQ PUSH2 0x258 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x2B7AC3F3 GT PUSH2 0xC8 JUMPI DUP1 PUSH4 0x2B7AC3F3 EQ PUSH2 0x180 JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x19E JUMPI DUP1 PUSH4 0x5BDAA916 EQ PUSH2 0x1BC JUMPI DUP1 PUSH4 0x6D74E86E EQ PUSH2 0x1EC JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0xEF JUMPI DUP1 PUSH4 0x15F64386 EQ PUSH2 0x11F JUMPI DUP1 PUSH4 0x1A33DDAE EQ PUSH2 0x150 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x109 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x104 SWAP2 SWAP1 PUSH2 0x1994 JUMP JUMPDEST PUSH2 0x310 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x116 SWAP2 SWAP1 PUSH2 0x19DC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x139 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x134 SWAP2 SWAP1 PUSH2 0x1B3D JUMP JUMPDEST PUSH2 0x45A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x147 SWAP3 SWAP2 SWAP1 PUSH2 0x1BE0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x16A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x165 SWAP2 SWAP1 PUSH2 0x1C69 JUMP JUMPDEST PUSH2 0x471 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x177 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH2 0x576 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x195 SWAP2 SWAP1 PUSH2 0x1D49 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1A6 PUSH2 0x59A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP2 SWAP1 PUSH2 0x1D85 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D1 SWAP2 SWAP1 PUSH2 0x1DA0 JUMP JUMPDEST PUSH2 0x5BE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E3 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F4 PUSH2 0x778 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x201 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x224 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x21F SWAP2 SWAP1 PUSH2 0x1DA0 JUMP JUMPDEST PUSH2 0x783 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x231 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x242 PUSH2 0xA0F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x24F SWAP2 SWAP1 PUSH2 0x1EE3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x272 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26D SWAP2 SWAP1 PUSH2 0x1F2A JUMP JUMPDEST PUSH2 0xA33 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x27C PUSH2 0xB5F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x289 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2AC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A7 SWAP2 SWAP1 PUSH2 0x1F2A JUMP JUMPDEST PUSH2 0xB83 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x206B JUMP JUMPDEST PUSH2 0xBEA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E9 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FA PUSH2 0xC48 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x307 SWAP2 SWAP1 PUSH2 0x20E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x9061B92300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3DB JUMPI POP PUSH32 0x15F6438600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x443 JUMPI POP PUSH32 0xF00EEBF400000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x453 JUMPI POP PUSH2 0x452 DUP3 PUSH2 0xC6C JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x468 DUP4 PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP SWAP2 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x0 PUSH4 0x94BC2DB6 DUP6 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4AD SWAP3 SWAP2 SWAP1 PUSH2 0x213C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x4CA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4F3 SWAP2 SWAP1 PUSH2 0x21D0 JUMP JUMPDEST SWAP1 POP PUSH20 0x0 PUSH4 0x8DEA91D DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x52C SWAP2 SWAP1 PUSH2 0x2252 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x549 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x22A0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP6 DUP6 DUP2 ADD SWAP1 PUSH2 0x5D1 SWAP2 SWAP1 PUSH2 0x1B3D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP10 DUP10 DUP2 ADD SWAP1 PUSH2 0x5EB SWAP2 SWAP1 PUSH2 0x2438 JUMP JUMPDEST SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC51CA02A DUP8 DUP8 DUP8 DUP13 PUSH2 0x621 PUSH2 0x778 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x641 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x26E3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x65E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x687 SWAP2 SWAP1 PUSH2 0x2800 JUMP JUMPDEST SWAP1 POP DUP5 MLOAD DUP2 MLOAD EQ PUSH2 0x6D3 JUMPI DUP1 MLOAD DUP6 MLOAD PUSH1 0x40 MLOAD PUSH32 0x2918942500000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6CA SWAP3 SWAP2 SWAP1 PUSH2 0x2849 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x76E DUP5 DUP4 DUP6 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x6EC SWAP3 SWAP2 SWAP1 PUSH2 0x2872 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xE3F SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP1 MLOAD PUSH1 0x20 DUP3 ADD RETURN JUMPDEST PUSH1 0x0 PUSH3 0x15180 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP4 DUP4 SWAP1 POP LT ISZERO PUSH2 0x7CC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7C3 SWAP1 PUSH2 0x2906 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x4 SWAP1 DUP1 SWAP3 PUSH2 0x7E1 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2930 JUMP JUMPDEST DUP2 ADD SWAP1 PUSH2 0x7EE SWAP2 SWAP1 PUSH2 0x296B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP DUP1 ISZERO PUSH2 0x8F7 JUMPI PUSH2 0x8EE DUP8 DUP8 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP7 DUP7 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0xE8B JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0xA07 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x948 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x0 DUP7 DUP7 SWAP1 PUSH2 0x95A SWAP2 SWAP1 PUSH2 0x29B0 JUMP JUMPDEST SWAP1 POP PUSH4 0x3B3B57DE PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SUB PUSH2 0x9CC JUMPI PUSH1 0x0 PUSH2 0x9B4 DUP11 DUP11 PUSH2 0x471 JUMP JUMPDEST SWAP1 POP PUSH2 0x9C0 DUP2 DUP5 PUSH2 0xF38 JUMP JUMPDEST SWAP6 POP POP POP POP POP POP PUSH2 0xA07 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9FE SWAP1 PUSH2 0x2A5B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA82 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x45A JUMP JUMPDEST POP SWAP1 POP PUSH2 0xA8E DUP2 PUSH2 0xFB9 JUMP JUMPDEST PUSH2 0xACD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAC4 SWAP1 PUSH2 0x2AED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH32 0x88781081CC340609705AF0F96BF3BA64EA267873444E91725BD072F2AF0F44D8 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0xB51 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2B3A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0xBD6 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE2 DUP2 PUSH2 0x1182 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC02 JUMPI PUSH2 0xC01 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0xC1D SWAP2 SWAP1 PUSH2 0x2BB0 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC30 SWAP2 SWAP1 PUSH2 0x20E3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xCEE DUP5 DUP7 PUSH2 0x11E1 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH1 0x0 DUP1 SHL SWAP3 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0xE26 JUMPI PUSH1 0x0 PUSH2 0xD25 PUSH1 0x1 DUP7 PUSH2 0xD14 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST DUP4 DUP9 PUSH2 0x120C SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0xD48 DUP7 PUSH1 0x1 DUP5 DUP9 PUSH2 0xD39 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST PUSH2 0xD43 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST PUSH2 0xCD6 JUMP JUMPDEST DUP1 SWAP5 POP DUP2 SWAP6 POP POP POP DUP4 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD63 SWAP3 SWAP2 SWAP1 PUSH2 0x2C61 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP4 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xE20 JUMPI DUP4 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP4 POP SWAP4 POP POP POP PUSH2 0xE38 JUMP JUMPDEST POP PUSH2 0xE36 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL PUSH1 0x0 SWAP3 POP SWAP3 POP POP PUSH2 0xE38 JUMP JUMPDEST POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xE83 DUP4 DUP4 PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1E DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x416464726573733A206C6F772D6C6576656C2063616C6C206661696C65640000 DUP2 MSTORE POP PUSH2 0x1238 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x40 MLOAD PUSH2 0xED5 SWAP2 SWAP1 PUSH2 0x2CC9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xF10 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xF15 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 ISZERO PUSH2 0xF2A JUMPI DUP1 SWAP3 POP POP POP PUSH2 0xF32 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP3 ADD REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xFB3 PUSH4 0xF470901A PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0xFA4 DUP7 PUSH2 0xF96 PUSH1 0x2 PUSH2 0xF88 PUSH32 0x0 DUP11 PUSH2 0x1305 JUMP JUMPDEST PUSH2 0x1414 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0x14F5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0x1576 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1015 SWAP2 SWAP1 PUSH2 0x2CE0 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1032 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1056 SWAP2 SWAP1 PUSH2 0x2D10 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x114B JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP5 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1107 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1124 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1148 SWAP2 SWAP1 PUSH2 0x2D10 JUMP JUMPDEST SWAP1 POP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 PUSH1 0x40 MLOAD PUSH32 0xE0A0507100000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11D8 SWAP3 SWAP2 SWAP1 PUSH2 0x2D3D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x11F6 JUMPI PUSH2 0x11F5 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x121C SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST GT ISZERO PUSH2 0x1227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP3 SELFBALANCE LT ISZERO PUSH2 0x127D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1274 SWAP1 PUSH2 0x2DD8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP8 PUSH1 0x40 MLOAD PUSH2 0x12A6 SWAP2 SWAP1 PUSH2 0x2CC9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x12E3 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x12E8 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x12F9 DUP8 DUP4 DUP4 DUP8 PUSH2 0x1701 JUMP JUMPDEST SWAP3 POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x130D PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x132A JUMPI PUSH2 0x1329 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1358 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 PUSH1 0x20 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1378 JUMPI PUSH2 0x1377 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13AB JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x1396 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x141C PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x40 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x143F JUMPI POP PUSH1 0x20 DUP6 PUSH1 0x60 ADD MLOAD LT JUMPDEST ISZERO PUSH2 0x1450 JUMPI PUSH2 0x144F DUP6 PUSH1 0xFF PUSH2 0x1776 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP2 ADD DUP3 MSTORE PUSH1 0x20 DUP6 PUSH1 0x40 ADD MLOAD MLOAD GT ISZERO PUSH2 0x14A2 JUMPI PUSH1 0x20 PUSH1 0x40 MLOAD PUSH32 0x128E700800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1499 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x60 ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x14B8 DUP6 PUSH1 0x0 PUSH2 0x1776 JUMP JUMPDEST PUSH2 0x14EA DUP6 PUSH2 0x14E5 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x14D1 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x181D JUMP JUMPDEST PUSH2 0x1776 JUMP JUMPDEST DUP5 SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x14FD PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x20 DUP4 PUSH1 0x60 ADD MLOAD LT PUSH2 0x153B JUMPI PUSH1 0x40 MLOAD PUSH32 0xB00FD63800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x156D DUP4 PUSH2 0x1568 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1554 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x181D JUMP JUMPDEST PUSH2 0x1776 JUMP JUMPDEST DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x40 ADD MLOAD MLOAD GT DUP1 ISZERO PUSH2 0x158F JUMPI POP PUSH1 0x20 DUP4 PUSH1 0x60 ADD MLOAD LT JUMPDEST ISZERO PUSH2 0x15A0 JUMPI PUSH2 0x159F DUP4 PUSH1 0xFF PUSH2 0x1776 JUMP JUMPDEST JUMPDEST ADDRESS DUP4 PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB50F2FBC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x15F0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1619 SWAP2 SWAP1 PUSH2 0x2F7A JUMP JUMPDEST DUP5 PUSH1 0x20 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD DUP7 PUSH1 0x80 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x163A SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2FC3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH4 0xEA9CD3BF PUSH1 0xE0 SHL PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH4 0x5BDAA916 PUSH1 0xE0 SHL DUP7 PUSH1 0x0 ADD MLOAD DUP8 PUSH1 0x20 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD DUP10 PUSH1 0x80 ADD MLOAD DUP10 DUP10 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x16B2 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3017 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD PUSH32 0x556F183000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16F8 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x31A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ISZERO PUSH2 0x1763 JUMPI PUSH1 0x0 DUP4 MLOAD SUB PUSH2 0x175B JUMPI PUSH2 0x171B DUP6 PUSH2 0x185A JUMP JUMPDEST PUSH2 0x175A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1751 SWAP1 PUSH2 0x3258 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST DUP3 SWAP1 POP PUSH2 0x176E JUMP JUMPDEST PUSH2 0x176D DUP4 DUP4 PUSH2 0x187D JUMP JUMPDEST JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP4 PUSH1 0x40 ADD MLOAD MLOAD PUSH2 0x178A SWAP2 SWAP1 PUSH2 0x3278 JUMP JUMPDEST SWAP1 POP DUP3 PUSH1 0x60 ADD DUP1 MLOAD DUP1 SWAP2 SWAP1 PUSH2 0x179E SWAP1 PUSH2 0x32AC JUMP JUMPDEST DUP2 MSTORE POP PUSH1 0x8 PUSH2 0x17AD SWAP2 SWAP1 PUSH2 0x32F4 JUMP JUMPDEST DUP3 PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 SHR DUP4 PUSH1 0x40 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x17EC JUMPI PUSH2 0x17EB PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD OR DUP4 PUSH1 0x40 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x180C JUMPI PUSH2 0x180B PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x80 ADD MLOAD SWAP1 POP DUP1 MLOAD SWAP2 POP PUSH1 0x1 DUP3 ADD DUP2 MSTORE DUP3 DUP2 DUP4 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1848 JUMPI PUSH2 0x1847 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD GT ISZERO PUSH2 0x1890 JUMPI DUP2 MLOAD DUP1 DUP4 PUSH1 0x20 ADD REVERT JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x18C4 SWAP2 SWAP1 PUSH2 0x336F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1971 DUP2 PUSH2 0x193C JUMP JUMPDEST DUP2 EQ PUSH2 0x197C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x198E DUP2 PUSH2 0x1968 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x19AA JUMPI PUSH2 0x19A9 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x19B8 DUP5 DUP3 DUP6 ADD PUSH2 0x197F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19D6 DUP2 PUSH2 0x19C1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19F1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19CD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1A4A DUP3 PUSH2 0x1A01 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1A69 JUMPI PUSH2 0x1A68 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A7C PUSH2 0x1928 JUMP JUMPDEST SWAP1 POP PUSH2 0x1A88 DUP3 DUP3 PUSH2 0x1A41 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1AA8 JUMPI PUSH2 0x1AA7 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH2 0x1AB1 DUP3 PUSH2 0x1A01 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AE0 PUSH2 0x1ADB DUP5 PUSH2 0x1A8D JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AFC JUMPI PUSH2 0x1AFB PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x1B07 DUP5 DUP3 DUP6 PUSH2 0x1ABE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B24 JUMPI PUSH2 0x1B23 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B34 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1ACD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B53 JUMPI PUSH2 0x1B52 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1B71 JUMPI PUSH2 0x1B70 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1B7D DUP5 DUP3 DUP6 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1B99 DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BCA DUP3 PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1BDA DUP2 PUSH2 0x1BBF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1BF5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1B90 JUMP JUMPDEST PUSH2 0x1C02 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x1C29 JUMPI PUSH2 0x1C28 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C46 JUMPI PUSH2 0x1C45 PUSH2 0x1C09 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x1C62 JUMPI PUSH2 0x1C61 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C80 JUMPI PUSH2 0x1C7F PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C9E JUMPI PUSH2 0x1C9D PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1CAA DUP6 DUP3 DUP7 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CC9 DUP2 PUSH2 0x1CB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1CE4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D0F PUSH2 0x1D0A PUSH2 0x1D05 DUP5 PUSH2 0x1B9F JUMP JUMPDEST PUSH2 0x1CEA JUMP JUMPDEST PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D21 DUP3 PUSH2 0x1CF4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D33 DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1D43 DUP2 PUSH2 0x1D28 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1D5E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1D3A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D6F DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1D7F DUP2 PUSH2 0x1D64 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1D9A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1D76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1DBA JUMPI PUSH2 0x1DB9 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DD8 JUMPI PUSH2 0x1DD7 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1DE4 DUP8 DUP3 DUP9 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E07 JUMPI PUSH2 0x1E06 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1E13 DUP8 DUP3 DUP9 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E5B JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E40 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E72 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x1E7C DUP2 DUP6 PUSH2 0x1E2C JUMP JUMPDEST SWAP4 POP PUSH2 0x1E8C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x1E95 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1EBA DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ECD DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1EDD DUP2 PUSH2 0x1EC2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1EF8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1ED4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1F07 DUP2 PUSH2 0x1BBF JUMP JUMPDEST DUP2 EQ PUSH2 0x1F12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1F24 DUP2 PUSH2 0x1EFE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1F43 JUMPI PUSH2 0x1F42 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1F61 JUMPI PUSH2 0x1F60 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1F6D DUP7 DUP3 DUP8 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP4 POP SWAP4 POP POP PUSH1 0x20 PUSH2 0x1F80 DUP7 DUP3 DUP8 ADD PUSH2 0x1F15 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1FA5 JUMPI PUSH2 0x1FA4 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FC9 PUSH2 0x1FC4 DUP5 PUSH2 0x1F8A JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x1FEC JUMPI PUSH2 0x1FEB PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2033 JUMPI DUP1 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2011 JUMPI PUSH2 0x2010 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x201E DUP10 DUP3 PUSH2 0x1B0F JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1FEE JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2052 JUMPI PUSH2 0x2051 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2062 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FB6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2082 JUMPI PUSH2 0x2081 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20A0 JUMPI PUSH2 0x209F PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x20AC DUP6 DUP3 DUP7 ADD PUSH2 0x203D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20CD JUMPI PUSH2 0x20CC PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x20D9 DUP6 DUP3 DUP7 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x211B DUP4 DUP6 PUSH2 0x20FE JUMP JUMPDEST SWAP4 POP PUSH2 0x2128 DUP4 DUP6 DUP5 PUSH2 0x1ABE JUMP JUMPDEST PUSH2 0x2131 DUP4 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2157 DUP2 DUP5 DUP7 PUSH2 0x210F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2173 PUSH2 0x216E DUP5 PUSH2 0x1A8D JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x218F JUMPI PUSH2 0x218E PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x219A DUP5 DUP3 DUP6 PUSH2 0x1E3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21B7 JUMPI PUSH2 0x21B6 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x21C7 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2160 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21E6 JUMPI PUSH2 0x21E5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2204 JUMPI PUSH2 0x2203 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2210 DUP5 DUP3 DUP6 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2224 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x222E DUP2 DUP6 PUSH2 0x20FE JUMP JUMPDEST SWAP4 POP PUSH2 0x223E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x2247 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x226C DUP2 DUP5 PUSH2 0x2219 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x227D DUP2 PUSH2 0x1CB6 JUMP JUMPDEST DUP2 EQ PUSH2 0x2288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x229A DUP2 PUSH2 0x2274 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x22B6 JUMPI PUSH2 0x22B5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22C4 DUP5 DUP3 DUP6 ADD PUSH2 0x228B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22D8 DUP3 PUSH2 0x1BBF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x22E8 DUP2 PUSH2 0x22CD JUMP JUMPDEST DUP2 EQ PUSH2 0x22F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2305 DUP2 PUSH2 0x22DF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2316 DUP3 PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2326 DUP2 PUSH2 0x230B JUMP JUMPDEST DUP2 EQ PUSH2 0x2331 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2343 DUP2 PUSH2 0x231D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2364 JUMPI PUSH2 0x2363 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x237E DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP2 EQ PUSH2 0x2389 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x239B DUP2 PUSH2 0x2375 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B4 PUSH2 0x23AF DUP5 PUSH2 0x2349 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x23D7 JUMPI PUSH2 0x23D6 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2400 JUMPI DUP1 PUSH2 0x23EC DUP9 DUP3 PUSH2 0x238C JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x23D9 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x241F JUMPI PUSH2 0x241E PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x242F DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x23A1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x2455 JUMPI PUSH2 0x2454 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2463 DUP10 DUP3 DUP11 ADD PUSH2 0x22F6 JUMP JUMPDEST SWAP7 POP POP PUSH1 0x20 PUSH2 0x2474 DUP10 DUP3 DUP11 ADD PUSH2 0x2334 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x40 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2495 JUMPI PUSH2 0x2494 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x24A1 DUP10 DUP3 DUP11 ADD PUSH2 0x240A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x60 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x24C2 JUMPI PUSH2 0x24C1 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x24CE DUP10 DUP3 DUP11 ADD PUSH2 0x203D JUMP JUMPDEST SWAP4 POP POP PUSH1 0x80 PUSH2 0x24DF DUP10 DUP3 DUP11 ADD PUSH2 0x197F JUMP JUMPDEST SWAP3 POP POP PUSH1 0xA0 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2500 JUMPI PUSH2 0x24FF PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x250C DUP10 DUP3 DUP11 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x254E DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2560 DUP4 DUP4 PUSH2 0x2545 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2584 DUP3 PUSH2 0x2519 JUMP JUMPDEST PUSH2 0x258E DUP2 DUP6 PUSH2 0x2524 JUMP JUMPDEST SWAP4 POP PUSH2 0x2599 DUP4 PUSH2 0x2535 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x25CA JUMPI DUP2 MLOAD PUSH2 0x25B1 DUP9 DUP3 PUSH2 0x2554 JUMP JUMPDEST SWAP8 POP PUSH2 0x25BC DUP4 PUSH2 0x256C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x259D JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x261F DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x2629 DUP2 DUP6 PUSH2 0x2603 JUMP JUMPDEST SWAP4 POP PUSH2 0x2639 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x2642 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2659 DUP4 DUP4 PUSH2 0x2614 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2679 DUP3 PUSH2 0x25D7 JUMP JUMPDEST PUSH2 0x2683 DUP2 DUP6 PUSH2 0x25E2 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2695 DUP6 PUSH2 0x25F3 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x26D1 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x26B2 DUP6 DUP3 PUSH2 0x264D JUMP JUMPDEST SWAP5 POP PUSH2 0x26BD DUP4 PUSH2 0x2661 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2699 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x26F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x270A DUP2 DUP8 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x271E DUP2 DUP7 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x2732 DUP2 DUP6 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP PUSH2 0x2741 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x275E PUSH2 0x2759 DUP5 PUSH2 0x1F8A JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2781 JUMPI PUSH2 0x2780 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x27C8 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x27A6 JUMPI PUSH2 0x27A5 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x27B3 DUP10 DUP3 PUSH2 0x21A2 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2783 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x27E7 JUMPI PUSH2 0x27E6 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x27F7 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x274B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2816 JUMPI PUSH2 0x2815 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2834 JUMPI PUSH2 0x2833 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2840 DUP5 DUP3 DUP6 ADD PUSH2 0x27D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x285E PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1CC0 JUMP JUMPDEST PUSH2 0x286B PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x288C DUP2 DUP6 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x28A0 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x706172616D206461746120746F6F2073686F7274000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28F0 PUSH1 0x14 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x28FB DUP3 PUSH2 0x28BA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x291F DUP2 PUSH2 0x28E3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x2944 JUMPI PUSH2 0x2943 PUSH2 0x2926 JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x2955 JUMPI PUSH2 0x2954 PUSH2 0x292B JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2981 JUMPI PUSH2 0x2980 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x298F DUP5 DUP3 DUP6 ADD PUSH2 0x238C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29BC DUP4 DUP4 PUSH2 0x2998 JUMP JUMPDEST DUP3 PUSH2 0x29C7 DUP2 CALLDATALOAD PUSH2 0x193C JUMP JUMPDEST SWAP3 POP PUSH1 0x4 DUP3 LT ISZERO PUSH2 0x2A07 JUMPI PUSH2 0x2A02 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 PUSH1 0x4 SUB PUSH1 0x8 MUL PUSH2 0x29A3 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x696E76616C69642073656C6563746F7200000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A45 PUSH1 0x10 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A50 DUP3 PUSH2 0x2A0F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A74 DUP2 PUSH2 0x2A38 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420617574686F72697A656420746F207365742074617267657420666F72 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2074686973206E6F646500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD7 PUSH1 0x2A DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2AE2 DUP3 PUSH2 0x2A7B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B06 DUP2 PUSH2 0x2ACA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B19 DUP4 DUP6 PUSH2 0x1E2C JUMP JUMPDEST SWAP4 POP PUSH2 0x2B26 DUP4 DUP6 DUP5 PUSH2 0x1ABE JUMP JUMPDEST PUSH2 0x2B2F DUP4 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B55 DUP2 DUP6 DUP8 PUSH2 0x2B0D JUMP JUMPDEST SWAP1 POP PUSH2 0x2B64 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2BAA DUP2 PUSH2 0x231D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BC6 JUMPI PUSH2 0x2BC5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BD4 DUP5 DUP3 DUP6 ADD PUSH2 0x2B9B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2C17 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C22 DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2C3A JUMPI PUSH2 0x2C39 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2C5B PUSH2 0x2C56 DUP3 PUSH2 0x1B86 JUMP JUMPDEST PUSH2 0x2C40 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C6D DUP3 DUP6 PUSH2 0x2C4A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2C7D DUP3 DUP5 PUSH2 0x2C4A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CA3 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x2CAD DUP2 DUP6 PUSH2 0x2C8D JUMP JUMPDEST SWAP4 POP PUSH2 0x2CBD DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CD5 DUP3 DUP5 PUSH2 0x2C98 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2CF5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B90 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2D0A DUP2 PUSH2 0x1EFE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D26 JUMPI PUSH2 0x2D25 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D34 DUP5 DUP3 DUP6 ADD PUSH2 0x2CFB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2D52 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1CC0 JUMP JUMPDEST PUSH2 0x2D5F PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x416464726573733A20696E73756666696369656E742062616C616E636520666F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x722063616C6C0000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DC2 PUSH1 0x26 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2DCD DUP3 PUSH2 0x2D66 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2DF1 DUP2 PUSH2 0x2DB5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2E13 JUMPI PUSH2 0x2E12 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2E3F JUMPI PUSH2 0x2E3E PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH2 0x2E48 DUP3 PUSH2 0x1A01 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E68 PUSH2 0x2E63 DUP5 PUSH2 0x2E24 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2E84 JUMPI PUSH2 0x2E83 PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x2E8F DUP5 DUP3 DUP6 PUSH2 0x1E3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2EAC JUMPI PUSH2 0x2EAB PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2EBC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2E55 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2ED8 PUSH2 0x2ED3 DUP5 PUSH2 0x2DF8 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2EFB JUMPI PUSH2 0x2EFA PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2F42 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2F20 JUMPI PUSH2 0x2F1F PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x2F2D DUP10 DUP3 PUSH2 0x2E97 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2EFD JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2F61 JUMPI PUSH2 0x2F60 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2F71 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2EC5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2F90 JUMPI PUSH2 0x2F8F PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2FAE JUMPI PUSH2 0x2FAD PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2FBA DUP5 DUP3 DUP6 ADD PUSH2 0x2F4C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2FD8 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x2FEA DUP2 DUP6 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2FFE DUP2 DUP5 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x3011 DUP2 PUSH2 0x193C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0x302C PUSH1 0x0 DUP4 ADD DUP10 PUSH2 0x1D3A JUMP JUMPDEST PUSH2 0x3039 PUSH1 0x20 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x304B DUP2 DUP8 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x305F DUP2 DUP7 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP PUSH2 0x306E PUSH1 0x80 DUP4 ADD DUP6 PUSH2 0x3008 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x3080 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30E0 DUP3 PUSH2 0x30B9 JUMP JUMPDEST PUSH2 0x30EA DUP2 DUP6 PUSH2 0x30C4 JUMP JUMPDEST SWAP4 POP PUSH2 0x30FA DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x3103 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x311A DUP4 DUP4 PUSH2 0x30D5 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x313A DUP3 PUSH2 0x308D JUMP JUMPDEST PUSH2 0x3144 DUP2 DUP6 PUSH2 0x3098 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x3156 DUP6 PUSH2 0x30A9 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x3192 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x3173 DUP6 DUP3 PUSH2 0x310E JUMP JUMPDEST SWAP5 POP PUSH2 0x317E DUP4 PUSH2 0x3122 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x315A JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x31B9 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x31CB DUP2 DUP8 PUSH2 0x312F JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x31DF DUP2 DUP7 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP PUSH2 0x31EE PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x3008 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x3200 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x416464726573733A2063616C6C20746F206E6F6E2D636F6E7472616374000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3242 PUSH1 0x1D DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x324D DUP3 PUSH2 0x320C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3271 DUP2 PUSH2 0x3235 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3283 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x328E DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x32A6 JUMPI PUSH2 0x32A5 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32B7 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x32E9 JUMPI PUSH2 0x32E8 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32FF DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x330A DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x3318 DUP2 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x332F JUMPI PUSH2 0x332E PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3341 DUP3 PUSH2 0x30B9 JUMP JUMPDEST PUSH2 0x334B DUP2 DUP6 PUSH2 0x28A9 JUMP JUMPDEST SWAP4 POP PUSH2 0x335B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x3364 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3389 DUP2 DUP5 PUSH2 0x3336 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 JUMPDEST 0xB3 CREATE 0xBF LOG0 0x4C 0xB3 JUMP 0x28 CODESIZE 0xE4 SAR 0xBF PUSH7 0x8E48D8B109EF17 0xA5 DUP9 CODESIZE SDIV LT REVERT ADD MSTORE8 0xDB 0xA5 SWAP4 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "1084:8097:70:-:0;;;2807:650;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3035:1;3002:35;;3010:12;3002:35;;;2981:114;;;;;;;;;;;;:::i;:::-;;;;;;;;;3156:1;3126:32;;3134:9;3126:32;;;3105:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;3255:1;3230:27;;3238:4;3230:27;;;3222:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3311:9;3300:20;;;;;;;;;;3336:4;3330:10;;;;;;;;;;3364:12;3350:26;;;;;;;;;;3398:10;3386:22;;;;;;3435:15;3418:32;;;;;;;;;;2807:650;;;;;1084:8097;;88:117:74;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:116::-;625:7;654:24;672:5;654:24;:::i;:::-;643:35;;568:116;;;:::o;690:162::-;783:44;821:5;783:44;:::i;:::-;776:5;773:55;763:83;;842:1;839;832:12;763:83;690:162;:::o;858:183::-;935:5;966:6;960:13;951:22;;982:53;1029:5;982:53;:::i;:::-;858:183;;;;:::o;1047:108::-;1096:7;1125:24;1143:5;1125:24;:::i;:::-;1114:35;;1047:108;;;:::o;1161:146::-;1246:36;1276:5;1246:36;:::i;:::-;1239:5;1236:47;1226:75;;1297:1;1294;1287:12;1226:75;1161:146;:::o;1313:167::-;1382:5;1413:6;1407:13;1398:22;;1429:45;1468:5;1429:45;:::i;:::-;1313:167;;;;:::o;1486:118::-;1545:7;1574:24;1592:5;1574:24;:::i;:::-;1563:35;;1486:118;;;:::o;1610:166::-;1705:46;1745:5;1705:46;:::i;:::-;1698:5;1695:57;1685:85;;1766:1;1763;1756:12;1685:85;1610:166;:::o;1782:187::-;1861:5;1892:6;1886:13;1877:22;;1908:55;1957:5;1908:55;:::i;:::-;1782:187;;;;:::o;1975:77::-;2012:7;2041:5;2030:16;;1975:77;;;:::o;2058:122::-;2131:24;2149:5;2131:24;:::i;:::-;2124:5;2121:35;2111:63;;2170:1;2167;2160:12;2111:63;2058:122;:::o;2186:143::-;2243:5;2274:6;2268:13;2259:22;;2290:33;2317:5;2290:33;:::i;:::-;2186:143;;;;:::o;2335:122::-;2408:24;2426:5;2408:24;:::i;:::-;2401:5;2398:35;2388:63;;2447:1;2444;2437:12;2388:63;2335:122;:::o;2463:143::-;2520:5;2551:6;2545:13;2536:22;;2567:33;2594:5;2567:33;:::i;:::-;2463:143;;;;:::o;2612:1085::-;2772:6;2780;2788;2796;2804;2853:3;2841:9;2832:7;2828:23;2824:33;2821:120;;;2860:79;;:::i;:::-;2821:120;2980:1;3005:84;3081:7;3072:6;3061:9;3057:22;3005:84;:::i;:::-;2995:94;;2951:148;3138:2;3164:76;3232:7;3223:6;3212:9;3208:22;3164:76;:::i;:::-;3154:86;;3109:141;3289:2;3315:86;3393:7;3384:6;3373:9;3369:22;3315:86;:::i;:::-;3305:96;;3260:151;3450:2;3476:64;3532:7;3523:6;3512:9;3508:22;3476:64;:::i;:::-;3466:74;;3421:129;3589:3;3616:64;3672:7;3663:6;3652:9;3648:22;3616:64;:::i;:::-;3606:74;;3560:130;2612:1085;;;;;;;;:::o;3703:169::-;3787:11;3821:6;3816:3;3809:19;3861:4;3856:3;3852:14;3837:29;;3703:169;;;;:::o;3878:182::-;4018:34;4014:1;4006:6;4002:14;3995:58;3878:182;:::o;4066:366::-;4208:3;4229:67;4293:2;4288:3;4229:67;:::i;:::-;4222:74;;4305:93;4394:3;4305:93;:::i;:::-;4423:2;4418:3;4414:12;4407:19;;4066:366;;;:::o;4438:419::-;4604:4;4642:2;4631:9;4627:18;4619:26;;4691:9;4685:4;4681:20;4677:1;4666:9;4662:17;4655:47;4719:131;4845:4;4719:131;:::i;:::-;4711:139;;4438:419;;;:::o;4863:178::-;5003:30;4999:1;4991:6;4987:14;4980:54;4863:178;:::o;5047:366::-;5189:3;5210:67;5274:2;5269:3;5210:67;:::i;:::-;5203:74;;5286:93;5375:3;5286:93;:::i;:::-;5404:2;5399:3;5395:12;5388:19;;5047:366;;;:::o;5419:419::-;5585:4;5623:2;5612:9;5608:18;5600:26;;5672:9;5666:4;5662:20;5658:1;5647:9;5643:17;5636:47;5700:131;5826:4;5700:131;:::i;:::-;5692:139;;5419:419;;;:::o;5844:178::-;5984:30;5980:1;5972:6;5968:14;5961:54;5844:178;:::o;6028:366::-;6170:3;6191:67;6255:2;6250:3;6191:67;:::i;:::-;6184:74;;6267:93;6356:3;6267:93;:::i;:::-;6385:2;6380:3;6376:12;6369:19;;6028:366;;;:::o;6400:419::-;6566:4;6604:2;6593:9;6589:18;6581:26;;6653:9;6647:4;6643:20;6639:1;6628:9;6624:17;6617:47;6681:131;6807:4;6681:131;:::i;:::-;6673:139;;6400:419;;;:::o;1084:8097:70:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_addConstant_726": { + "entryPoint": 6173, + "id": 726, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_addOperation_770": { + "entryPoint": 6006, + "id": 770, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_addr_16830": { + "entryPoint": 3896, + "id": 16830, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_getTarget_16645": { + "entryPoint": 3286, + "id": 16645, + "parameterSlots": 2, + "returnSlots": 2 + }, + "@_resolve_16801": { + "entryPoint": 3723, + "id": 16801, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_revert_14840": { + "entryPoint": 6269, + "id": 14840, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_writeDeferral_16904": { + "entryPoint": 4482, + "id": 16904, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@addrCallback_16858": { + "entryPoint": 3050, + "id": 16858, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@element_438": { + "entryPoint": 5365, + "id": 438, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@ens_16346": { + "entryPoint": 1434, + "id": 16346, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@extractNFTId_16752": { + "entryPoint": 1137, + "id": 16752, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@fetch_692": { + "entryPoint": 5494, + "id": 692, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@functionCallWithValue_14665": { + "entryPoint": 4664, + "id": 14665, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@functionCall_14581": { + "entryPoint": 3647, + "id": 14581, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@getAcceptedL2BlockRangeLength_16501": { + "entryPoint": 1912, + "id": 16501, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@getStatic_326": { + "entryPoint": 5140, + "id": 326, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@getStorageSlotsCallback_115": { + "entryPoint": 1470, + "id": 115, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@getTarget_16550": { + "entryPoint": 1114, + "id": 16550, + "parameterSlots": 1, + "returnSlots": 2 + }, + "@isAuthorised_16407": { + "entryPoint": 4025, + "id": 16407, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@isContract_14529": { + "entryPoint": 6234, + "id": 14529, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@keccak_7703": { + "entryPoint": 4620, + "id": 7703, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@l2ChainId_16351": { + "entryPoint": 2911, + "id": 16351, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@nameWrapper_16349": { + "entryPoint": 2575, + "id": 16349, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@newFetchRequest_249": { + "entryPoint": 4869, + "id": 249, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@publicResolver_16353": { + "entryPoint": 3144, + "id": 16353, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@readUint8_8144": { + "entryPoint": 4577, + "id": 8144, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@resolve_16731": { + "entryPoint": 1923, + "id": 16731, + "parameterSlots": 4, + "returnSlots": 1 + }, + "@setAddr_16774": { + "entryPoint": 2947, + "id": 16774, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@setTarget_16534": { + "entryPoint": 2611, + "id": 16534, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@supportsInterface_15123": { + "entryPoint": 3180, + "id": 15123, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@supportsInterface_16893": { + "entryPoint": 784, + "id": 16893, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@verifier_16343": { + "entryPoint": 1398, + "id": 16343, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@verifyCallResultFromTarget_14796": { + "entryPoint": 5889, + "id": 14796, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9121, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 8118, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 10059, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 11973, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr": { + "entryPoint": 6861, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_bytes_memory_ptr_fromMemory": { + "entryPoint": 8544, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr_fromMemory": { + "entryPoint": 11861, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 7957, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_fromMemory": { + "entryPoint": 11515, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_payable": { + "entryPoint": 9012, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_address_payable_fromMemory": { + "entryPoint": 11163, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9226, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 8253, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 10194, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 12108, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes32": { + "entryPoint": 9100, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes4": { + "entryPoint": 6527, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_calldata_ptr": { + "entryPoint": 7187, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_t_bytes_memory_ptr": { + "entryPoint": 6927, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bytes_memory_ptr_fromMemory": { + "entryPoint": 8610, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_contract$_IEVMVerifier_$798": { + "entryPoint": 8950, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr_fromMemory": { + "entryPoint": 11927, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256_fromMemory": { + "entryPoint": 8843, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 11536, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address_payable_fromMemory": { + "entryPoint": 11184, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 10240, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptr": { + "entryPoint": 8299, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory": { + "entryPoint": 12154, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 10603, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes4": { + "entryPoint": 6548, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_calldata_ptr": { + "entryPoint": 7273, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bytes_calldata_ptrt_address": { + "entryPoint": 7978, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 7584, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_bytes_memory_ptr": { + "entryPoint": 6973, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes_memory_ptr_fromMemory": { + "entryPoint": 8656, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_contract$_IEVMVerifier_$798t_address_payablet_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes4t_bytes_memory_ptr": { + "entryPoint": 9272, + "id": null, + "parameterSlots": 2, + "returnSlots": 6 + }, + "abi_decode_tuple_t_uint256_fromMemory": { + "entryPoint": 8864, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_bytes32_to_t_bytes32": { + "entryPoint": 9556, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 9805, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 12558, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 7121, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack": { + "entryPoint": 9593, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 9838, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 12591, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 6605, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32": { + "entryPoint": 9541, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 7056, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { + "entryPoint": 11338, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes4_to_t_bytes4_fromStack": { + "entryPoint": 12296, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 11021, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 8463, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr": { + "entryPoint": 9748, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { + "entryPoint": 7783, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 8729, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 11416, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack": { + "entryPoint": 7542, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack": { + "entryPoint": 7482, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_contract$_INameWrapper_$10064_to_t_address_fromStack": { + "entryPoint": 7892, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 12501, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { + "entryPoint": 13110, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10808, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c_to_t_string_memory_ptr_fromStack": { + "entryPoint": 11701, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack": { + "entryPoint": 12853, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10467, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10954, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 7360, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 11361, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 11465, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 8419, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 12227, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__fromStack_reversed": { + "entryPoint": 9955, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 12708, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 10354, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 6620, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 11488, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed": { + "entryPoint": 7136, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 8508, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_calldata_ptr_t_address__to_t_bytes_memory_ptr_t_address__fromStack_reversed": { + "entryPoint": 11066, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed": { + "entryPoint": 8786, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 7840, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed": { + "entryPoint": 7557, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IEVMVerifier_$798__to_t_address__fromStack_reversed": { + "entryPoint": 7497, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IEVMVerifier_$798_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 12311, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_INameWrapper_$10064__to_t_address__fromStack_reversed": { + "entryPoint": 7907, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13167, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10843, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 11736, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 12888, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10502, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10989, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 7375, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed": { + "entryPoint": 11581, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { + "entryPoint": 10313, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 6770, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 6440, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9033, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 8074, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 11768, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_bytes_memory_ptr": { + "entryPoint": 6797, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 11812, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9525, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 9715, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 12457, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_bytes_calldata_ptr": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9497, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 9687, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 12429, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_bytes_calldata_ptr": { + "entryPoint": 10648, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_length_t_bytes_memory_ptr": { + "entryPoint": 7713, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 12473, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_bytes32_$dyn_memory_ptr": { + "entryPoint": 9580, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 9825, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 12578, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_bytes32_$dyn_memory_ptr_fromStack": { + "entryPoint": 9508, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 9698, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 12440, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr": { + "entryPoint": 9731, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { + "entryPoint": 7724, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library": { + "entryPoint": 8446, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack": { + "entryPoint": 11405, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr": { + "entryPoint": 12484, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 10409, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "calldata_array_index_range_access_t_bytes_calldata_ptr": { + "entryPoint": 10544, + "id": null, + "parameterSlots": 4, + "returnSlots": 2 + }, + "checked_add_t_uint256": { + "entryPoint": 11276, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 13044, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 12920, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 7103, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_address_payable": { + "entryPoint": 8971, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 6593, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 7046, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes4": { + "entryPoint": 6460, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_contract$_IEVMVerifier_$798": { + "entryPoint": 8909, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 7071, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 7350, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes4": { + "entryPoint": 10672, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "convert_t_contract$_ENS_$4567_to_t_address": { + "entryPoint": 7524, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_IEVMVerifier_$798_to_t_address": { + "entryPoint": 7464, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_contract$_INameWrapper_$10064_to_t_address": { + "entryPoint": 7874, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_address": { + "entryPoint": 7446, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "convert_t_uint160_to_t_uint160": { + "entryPoint": 7412, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory_with_cleanup": { + "entryPoint": 6846, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 7741, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "finalize_allocation": { + "entryPoint": 6721, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "identity": { + "entryPoint": 7402, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 12972, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "leftAlign_t_bytes32": { + "entryPoint": 11328, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 11229, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 11116, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 6674, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { + "entryPoint": 7177, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 6647, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c": { + "entryPoint": 10539, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a": { + "entryPoint": 10534, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { + "entryPoint": 7182, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 6652, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 6455, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 6450, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 6657, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "shift_left_dynamic": { + "entryPoint": 10659, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "store_literal_in_memory_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92": { + "entryPoint": 10767, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c": { + "entryPoint": 11622, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad": { + "entryPoint": 12812, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a": { + "entryPoint": 10426, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838": { + "entryPoint": 10875, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 7934, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address_payable": { + "entryPoint": 8989, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 9077, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bytes4": { + "entryPoint": 6504, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_contract$_IEVMVerifier_$798": { + "entryPoint": 8927, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 8820, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:52993:74", + "nodeType": "YulBlock", + "src": "0:52993:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "378:105:74", + "nodeType": "YulBlock", + "src": "378:105:74", + "statements": [ + { + "nativeSrc": "388:89:74", + "nodeType": "YulAssignment", + "src": "388:89:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "403:5:74", + "nodeType": "YulIdentifier", + "src": "403:5:74" + }, + { + "kind": "number", + "nativeSrc": "410:66:74", + "nodeType": "YulLiteral", + "src": "410:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "399:3:74", + "nodeType": "YulIdentifier", + "src": "399:3:74" + }, + "nativeSrc": "399:78:74", + "nodeType": "YulFunctionCall", + "src": "399:78:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "388:7:74", + "nodeType": "YulIdentifier", + "src": "388:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes4", + "nativeSrc": "334:149:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "360:5:74", + "nodeType": "YulTypedName", + "src": "360:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "370:7:74", + "nodeType": "YulTypedName", + "src": "370:7:74", + "type": "" + } + ], + "src": "334:149:74" + }, + { + "body": { + "nativeSrc": "531:78:74", + "nodeType": "YulBlock", + "src": "531:78:74", + "statements": [ + { + "body": { + "nativeSrc": "587:16:74", + "nodeType": "YulBlock", + "src": "587:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "596:1:74", + "nodeType": "YulLiteral", + "src": "596:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "599:1:74", + "nodeType": "YulLiteral", + "src": "599:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "589:6:74", + "nodeType": "YulIdentifier", + "src": "589:6:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulFunctionCall", + "src": "589:12:74" + }, + "nativeSrc": "589:12:74", + "nodeType": "YulExpressionStatement", + "src": "589:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "554:5:74", + "nodeType": "YulIdentifier", + "src": "554:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "578:5:74", + "nodeType": "YulIdentifier", + "src": "578:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "561:16:74", + "nodeType": "YulIdentifier", + "src": "561:16:74" + }, + "nativeSrc": "561:23:74", + "nodeType": "YulFunctionCall", + "src": "561:23:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "551:2:74", + "nodeType": "YulIdentifier", + "src": "551:2:74" + }, + "nativeSrc": "551:34:74", + "nodeType": "YulFunctionCall", + "src": "551:34:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "544:6:74", + "nodeType": "YulIdentifier", + "src": "544:6:74" + }, + "nativeSrc": "544:42:74", + "nodeType": "YulFunctionCall", + "src": "544:42:74" + }, + "nativeSrc": "541:62:74", + "nodeType": "YulIf", + "src": "541:62:74" + } + ] + }, + "name": "validator_revert_t_bytes4", + "nativeSrc": "489:120:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "524:5:74", + "nodeType": "YulTypedName", + "src": "524:5:74", + "type": "" + } + ], + "src": "489:120:74" + }, + { + "body": { + "nativeSrc": "666:86:74", + "nodeType": "YulBlock", + "src": "666:86:74", + "statements": [ + { + "nativeSrc": "676:29:74", + "nodeType": "YulAssignment", + "src": "676:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "698:6:74", + "nodeType": "YulIdentifier", + "src": "698:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "685:12:74", + "nodeType": "YulIdentifier", + "src": "685:12:74" + }, + "nativeSrc": "685:20:74", + "nodeType": "YulFunctionCall", + "src": "685:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "676:5:74", + "nodeType": "YulIdentifier", + "src": "676:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "740:5:74", + "nodeType": "YulIdentifier", + "src": "740:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes4", + "nativeSrc": "714:25:74", + "nodeType": "YulIdentifier", + "src": "714:25:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulFunctionCall", + "src": "714:32:74" + }, + "nativeSrc": "714:32:74", + "nodeType": "YulExpressionStatement", + "src": "714:32:74" + } + ] + }, + "name": "abi_decode_t_bytes4", + "nativeSrc": "615:137:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "644:6:74", + "nodeType": "YulTypedName", + "src": "644:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "652:3:74", + "nodeType": "YulTypedName", + "src": "652:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "660:5:74", + "nodeType": "YulTypedName", + "src": "660:5:74", + "type": "" + } + ], + "src": "615:137:74" + }, + { + "body": { + "nativeSrc": "823:262:74", + "nodeType": "YulBlock", + "src": "823:262:74", + "statements": [ + { + "body": { + "nativeSrc": "869:83:74", + "nodeType": "YulBlock", + "src": "869:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "871:77:74", + "nodeType": "YulIdentifier", + "src": "871:77:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulFunctionCall", + "src": "871:79:74" + }, + "nativeSrc": "871:79:74", + "nodeType": "YulExpressionStatement", + "src": "871:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "844:7:74", + "nodeType": "YulIdentifier", + "src": "844:7:74" + }, + { + "name": "headStart", + "nativeSrc": "853:9:74", + "nodeType": "YulIdentifier", + "src": "853:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "840:3:74", + "nodeType": "YulIdentifier", + "src": "840:3:74" + }, + "nativeSrc": "840:23:74", + "nodeType": "YulFunctionCall", + "src": "840:23:74" + }, + { + "kind": "number", + "nativeSrc": "865:2:74", + "nodeType": "YulLiteral", + "src": "865:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "836:3:74", + "nodeType": "YulIdentifier", + "src": "836:3:74" + }, + "nativeSrc": "836:32:74", + "nodeType": "YulFunctionCall", + "src": "836:32:74" + }, + "nativeSrc": "833:119:74", + "nodeType": "YulIf", + "src": "833:119:74" + }, + { + "nativeSrc": "962:116:74", + "nodeType": "YulBlock", + "src": "962:116:74", + "statements": [ + { + "nativeSrc": "977:15:74", + "nodeType": "YulVariableDeclaration", + "src": "977:15:74", + "value": { + "kind": "number", + "nativeSrc": "991:1:74", + "nodeType": "YulLiteral", + "src": "991:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "981:6:74", + "nodeType": "YulTypedName", + "src": "981:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1006:62:74", + "nodeType": "YulAssignment", + "src": "1006:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1040:9:74", + "nodeType": "YulIdentifier", + "src": "1040:9:74" + }, + { + "name": "offset", + "nativeSrc": "1051:6:74", + "nodeType": "YulIdentifier", + "src": "1051:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1036:3:74", + "nodeType": "YulIdentifier", + "src": "1036:3:74" + }, + "nativeSrc": "1036:22:74", + "nodeType": "YulFunctionCall", + "src": "1036:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1060:7:74", + "nodeType": "YulIdentifier", + "src": "1060:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "1016:19:74", + "nodeType": "YulIdentifier", + "src": "1016:19:74" + }, + "nativeSrc": "1016:52:74", + "nodeType": "YulFunctionCall", + "src": "1016:52:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1006:6:74", + "nodeType": "YulIdentifier", + "src": "1006:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes4", + "nativeSrc": "758:327:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "793:9:74", + "nodeType": "YulTypedName", + "src": "793:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "804:7:74", + "nodeType": "YulTypedName", + "src": "804:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "816:6:74", + "nodeType": "YulTypedName", + "src": "816:6:74", + "type": "" + } + ], + "src": "758:327:74" + }, + { + "body": { + "nativeSrc": "1133:48:74", + "nodeType": "YulBlock", + "src": "1133:48:74", + "statements": [ + { + "nativeSrc": "1143:32:74", + "nodeType": "YulAssignment", + "src": "1143:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1168:5:74", + "nodeType": "YulIdentifier", + "src": "1168:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1161:6:74", + "nodeType": "YulIdentifier", + "src": "1161:6:74" + }, + "nativeSrc": "1161:13:74", + "nodeType": "YulFunctionCall", + "src": "1161:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1154:6:74", + "nodeType": "YulIdentifier", + "src": "1154:6:74" + }, + "nativeSrc": "1154:21:74", + "nodeType": "YulFunctionCall", + "src": "1154:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1143:7:74", + "nodeType": "YulIdentifier", + "src": "1143:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1091:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1115:5:74", + "nodeType": "YulTypedName", + "src": "1115:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1125:7:74", + "nodeType": "YulTypedName", + "src": "1125:7:74", + "type": "" + } + ], + "src": "1091:90:74" + }, + { + "body": { + "nativeSrc": "1246:50:74", + "nodeType": "YulBlock", + "src": "1246:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1263:3:74", + "nodeType": "YulIdentifier", + "src": "1263:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1283:5:74", + "nodeType": "YulIdentifier", + "src": "1283:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1268:14:74", + "nodeType": "YulIdentifier", + "src": "1268:14:74" + }, + "nativeSrc": "1268:21:74", + "nodeType": "YulFunctionCall", + "src": "1268:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1256:6:74", + "nodeType": "YulIdentifier", + "src": "1256:6:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulFunctionCall", + "src": "1256:34:74" + }, + "nativeSrc": "1256:34:74", + "nodeType": "YulExpressionStatement", + "src": "1256:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1187:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1234:5:74", + "nodeType": "YulTypedName", + "src": "1234:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1241:3:74", + "nodeType": "YulTypedName", + "src": "1241:3:74", + "type": "" + } + ], + "src": "1187:109:74" + }, + { + "body": { + "nativeSrc": "1394:118:74", + "nodeType": "YulBlock", + "src": "1394:118:74", + "statements": [ + { + "nativeSrc": "1404:26:74", + "nodeType": "YulAssignment", + "src": "1404:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1416:9:74", + "nodeType": "YulIdentifier", + "src": "1416:9:74" + }, + { + "kind": "number", + "nativeSrc": "1427:2:74", + "nodeType": "YulLiteral", + "src": "1427:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1412:3:74", + "nodeType": "YulIdentifier", + "src": "1412:3:74" + }, + "nativeSrc": "1412:18:74", + "nodeType": "YulFunctionCall", + "src": "1412:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1404:4:74", + "nodeType": "YulIdentifier", + "src": "1404:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1478:6:74", + "nodeType": "YulIdentifier", + "src": "1478:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1491:9:74", + "nodeType": "YulIdentifier", + "src": "1491:9:74" + }, + { + "kind": "number", + "nativeSrc": "1502:1:74", + "nodeType": "YulLiteral", + "src": "1502:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1487:3:74", + "nodeType": "YulIdentifier", + "src": "1487:3:74" + }, + "nativeSrc": "1487:17:74", + "nodeType": "YulFunctionCall", + "src": "1487:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1440:37:74", + "nodeType": "YulIdentifier", + "src": "1440:37:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulFunctionCall", + "src": "1440:65:74" + }, + "nativeSrc": "1440:65:74", + "nodeType": "YulExpressionStatement", + "src": "1440:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1302:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1366:9:74", + "nodeType": "YulTypedName", + "src": "1366:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1378:6:74", + "nodeType": "YulTypedName", + "src": "1378:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1389:4:74", + "nodeType": "YulTypedName", + "src": "1389:4:74", + "type": "" + } + ], + "src": "1302:210:74" + }, + { + "body": { + "nativeSrc": "1607:28:74", + "nodeType": "YulBlock", + "src": "1607:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1624:1:74", + "nodeType": "YulLiteral", + "src": "1624:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1627:1:74", + "nodeType": "YulLiteral", + "src": "1627:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1617:6:74", + "nodeType": "YulIdentifier", + "src": "1617:6:74" + }, + "nativeSrc": "1617:12:74", + "nodeType": "YulFunctionCall", + "src": "1617:12:74" + }, + "nativeSrc": "1617:12:74", + "nodeType": "YulExpressionStatement", + "src": "1617:12:74" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "1518:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1518:117:74" + }, + { + "body": { + "nativeSrc": "1730:28:74", + "nodeType": "YulBlock", + "src": "1730:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1747:1:74", + "nodeType": "YulLiteral", + "src": "1747:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1750:1:74", + "nodeType": "YulLiteral", + "src": "1750:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "1740:6:74", + "nodeType": "YulIdentifier", + "src": "1740:6:74" + }, + "nativeSrc": "1740:12:74", + "nodeType": "YulFunctionCall", + "src": "1740:12:74" + }, + "nativeSrc": "1740:12:74", + "nodeType": "YulExpressionStatement", + "src": "1740:12:74" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "1641:117:74", + "nodeType": "YulFunctionDefinition", + "src": "1641:117:74" + }, + { + "body": { + "nativeSrc": "1812:54:74", + "nodeType": "YulBlock", + "src": "1812:54:74", + "statements": [ + { + "nativeSrc": "1822:38:74", + "nodeType": "YulAssignment", + "src": "1822:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1840:5:74", + "nodeType": "YulIdentifier", + "src": "1840:5:74" + }, + { + "kind": "number", + "nativeSrc": "1847:2:74", + "nodeType": "YulLiteral", + "src": "1847:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1836:3:74", + "nodeType": "YulIdentifier", + "src": "1836:3:74" + }, + "nativeSrc": "1836:14:74", + "nodeType": "YulFunctionCall", + "src": "1836:14:74" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1856:2:74", + "nodeType": "YulLiteral", + "src": "1856:2:74", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nativeSrc": "1852:3:74", + "nodeType": "YulIdentifier", + "src": "1852:3:74" + }, + "nativeSrc": "1852:7:74", + "nodeType": "YulFunctionCall", + "src": "1852:7:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "1832:3:74", + "nodeType": "YulIdentifier", + "src": "1832:3:74" + }, + "nativeSrc": "1832:28:74", + "nodeType": "YulFunctionCall", + "src": "1832:28:74" + }, + "variableNames": [ + { + "name": "result", + "nativeSrc": "1822:6:74", + "nodeType": "YulIdentifier", + "src": "1822:6:74" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nativeSrc": "1764:102:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1795:5:74", + "nodeType": "YulTypedName", + "src": "1795:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nativeSrc": "1805:6:74", + "nodeType": "YulTypedName", + "src": "1805:6:74", + "type": "" + } + ], + "src": "1764:102:74" + }, + { + "body": { + "nativeSrc": "1900:152:74", + "nodeType": "YulBlock", + "src": "1900:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "1917:1:74", + "nodeType": "YulLiteral", + "src": "1917:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "1920:77:74", + "nodeType": "YulLiteral", + "src": "1920:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1910:6:74", + "nodeType": "YulIdentifier", + "src": "1910:6:74" + }, + "nativeSrc": "1910:88:74", + "nodeType": "YulFunctionCall", + "src": "1910:88:74" + }, + "nativeSrc": "1910:88:74", + "nodeType": "YulExpressionStatement", + "src": "1910:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2014:1:74", + "nodeType": "YulLiteral", + "src": "2014:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "2017:4:74", + "nodeType": "YulLiteral", + "src": "2017:4:74", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2007:6:74", + "nodeType": "YulIdentifier", + "src": "2007:6:74" + }, + "nativeSrc": "2007:15:74", + "nodeType": "YulFunctionCall", + "src": "2007:15:74" + }, + "nativeSrc": "2007:15:74", + "nodeType": "YulExpressionStatement", + "src": "2007:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2038:1:74", + "nodeType": "YulLiteral", + "src": "2038:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "2041:4:74", + "nodeType": "YulLiteral", + "src": "2041:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "2031:6:74", + "nodeType": "YulIdentifier", + "src": "2031:6:74" + }, + "nativeSrc": "2031:15:74", + "nodeType": "YulFunctionCall", + "src": "2031:15:74" + }, + "nativeSrc": "2031:15:74", + "nodeType": "YulExpressionStatement", + "src": "2031:15:74" + } + ] + }, + "name": "panic_error_0x41", + "nativeSrc": "1872:180:74", + "nodeType": "YulFunctionDefinition", + "src": "1872:180:74" + }, + { + "body": { + "nativeSrc": "2101:238:74", + "nodeType": "YulBlock", + "src": "2101:238:74", + "statements": [ + { + "nativeSrc": "2111:58:74", + "nodeType": "YulVariableDeclaration", + "src": "2111:58:74", + "value": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "2133:6:74", + "nodeType": "YulIdentifier", + "src": "2133:6:74" + }, + { + "arguments": [ + { + "name": "size", + "nativeSrc": "2163:4:74", + "nodeType": "YulIdentifier", + "src": "2163:4:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2141:21:74", + "nodeType": "YulIdentifier", + "src": "2141:21:74" + }, + "nativeSrc": "2141:27:74", + "nodeType": "YulFunctionCall", + "src": "2141:27:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2129:3:74", + "nodeType": "YulIdentifier", + "src": "2129:3:74" + }, + "nativeSrc": "2129:40:74", + "nodeType": "YulFunctionCall", + "src": "2129:40:74" + }, + "variables": [ + { + "name": "newFreePtr", + "nativeSrc": "2115:10:74", + "nodeType": "YulTypedName", + "src": "2115:10:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "2280:22:74", + "nodeType": "YulBlock", + "src": "2280:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "2282:16:74", + "nodeType": "YulIdentifier", + "src": "2282:16:74" + }, + "nativeSrc": "2282:18:74", + "nodeType": "YulFunctionCall", + "src": "2282:18:74" + }, + "nativeSrc": "2282:18:74", + "nodeType": "YulExpressionStatement", + "src": "2282:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "2223:10:74", + "nodeType": "YulIdentifier", + "src": "2223:10:74" + }, + { + "kind": "number", + "nativeSrc": "2235:18:74", + "nodeType": "YulLiteral", + "src": "2235:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2220:2:74", + "nodeType": "YulIdentifier", + "src": "2220:2:74" + }, + "nativeSrc": "2220:34:74", + "nodeType": "YulFunctionCall", + "src": "2220:34:74" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nativeSrc": "2259:10:74", + "nodeType": "YulIdentifier", + "src": "2259:10:74" + }, + { + "name": "memPtr", + "nativeSrc": "2271:6:74", + "nodeType": "YulIdentifier", + "src": "2271:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "2256:2:74", + "nodeType": "YulIdentifier", + "src": "2256:2:74" + }, + "nativeSrc": "2256:22:74", + "nodeType": "YulFunctionCall", + "src": "2256:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "2217:2:74", + "nodeType": "YulIdentifier", + "src": "2217:2:74" + }, + "nativeSrc": "2217:62:74", + "nodeType": "YulFunctionCall", + "src": "2217:62:74" + }, + "nativeSrc": "2214:88:74", + "nodeType": "YulIf", + "src": "2214:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "2318:2:74", + "nodeType": "YulLiteral", + "src": "2318:2:74", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nativeSrc": "2322:10:74", + "nodeType": "YulIdentifier", + "src": "2322:10:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2311:6:74", + "nodeType": "YulIdentifier", + "src": "2311:6:74" + }, + "nativeSrc": "2311:22:74", + "nodeType": "YulFunctionCall", + "src": "2311:22:74" + }, + "nativeSrc": "2311:22:74", + "nodeType": "YulExpressionStatement", + "src": "2311:22:74" + } + ] + }, + "name": "finalize_allocation", + "nativeSrc": "2058:281:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "2087:6:74", + "nodeType": "YulTypedName", + "src": "2087:6:74", + "type": "" + }, + { + "name": "size", + "nativeSrc": "2095:4:74", + "nodeType": "YulTypedName", + "src": "2095:4:74", + "type": "" + } + ], + "src": "2058:281:74" + }, + { + "body": { + "nativeSrc": "2386:88:74", + "nodeType": "YulBlock", + "src": "2386:88:74", + "statements": [ + { + "nativeSrc": "2396:30:74", + "nodeType": "YulAssignment", + "src": "2396:30:74", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nativeSrc": "2406:18:74", + "nodeType": "YulIdentifier", + "src": "2406:18:74" + }, + "nativeSrc": "2406:20:74", + "nodeType": "YulFunctionCall", + "src": "2406:20:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "2396:6:74", + "nodeType": "YulIdentifier", + "src": "2396:6:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "2455:6:74", + "nodeType": "YulIdentifier", + "src": "2455:6:74" + }, + { + "name": "size", + "nativeSrc": "2463:4:74", + "nodeType": "YulIdentifier", + "src": "2463:4:74" + } + ], + "functionName": { + "name": "finalize_allocation", + "nativeSrc": "2435:19:74", + "nodeType": "YulIdentifier", + "src": "2435:19:74" + }, + "nativeSrc": "2435:33:74", + "nodeType": "YulFunctionCall", + "src": "2435:33:74" + }, + "nativeSrc": "2435:33:74", + "nodeType": "YulExpressionStatement", + "src": "2435:33:74" + } + ] + }, + "name": "allocate_memory", + "nativeSrc": "2345:129:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nativeSrc": "2370:4:74", + "nodeType": "YulTypedName", + "src": "2370:4:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "2379:6:74", + "nodeType": "YulTypedName", + "src": "2379:6:74", + "type": "" + } + ], + "src": "2345:129:74" + }, + { + "body": { + "nativeSrc": "2546:241:74", + "nodeType": "YulBlock", + "src": "2546:241:74", + "statements": [ + { + "body": { + "nativeSrc": "2651:22:74", + "nodeType": "YulBlock", + "src": "2651:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "2653:16:74", + "nodeType": "YulIdentifier", + "src": "2653:16:74" + }, + "nativeSrc": "2653:18:74", + "nodeType": "YulFunctionCall", + "src": "2653:18:74" + }, + "nativeSrc": "2653:18:74", + "nodeType": "YulExpressionStatement", + "src": "2653:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "2623:6:74", + "nodeType": "YulIdentifier", + "src": "2623:6:74" + }, + { + "kind": "number", + "nativeSrc": "2631:18:74", + "nodeType": "YulLiteral", + "src": "2631:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "2620:2:74", + "nodeType": "YulIdentifier", + "src": "2620:2:74" + }, + "nativeSrc": "2620:30:74", + "nodeType": "YulFunctionCall", + "src": "2620:30:74" + }, + "nativeSrc": "2617:56:74", + "nodeType": "YulIf", + "src": "2617:56:74" + }, + { + "nativeSrc": "2683:37:74", + "nodeType": "YulAssignment", + "src": "2683:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "2713:6:74", + "nodeType": "YulIdentifier", + "src": "2713:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "2691:21:74", + "nodeType": "YulIdentifier", + "src": "2691:21:74" + }, + "nativeSrc": "2691:29:74", + "nodeType": "YulFunctionCall", + "src": "2691:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "2683:4:74", + "nodeType": "YulIdentifier", + "src": "2683:4:74" + } + ] + }, + { + "nativeSrc": "2757:23:74", + "nodeType": "YulAssignment", + "src": "2757:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "2769:4:74", + "nodeType": "YulIdentifier", + "src": "2769:4:74" + }, + { + "kind": "number", + "nativeSrc": "2775:4:74", + "nodeType": "YulLiteral", + "src": "2775:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2765:3:74", + "nodeType": "YulIdentifier", + "src": "2765:3:74" + }, + "nativeSrc": "2765:15:74", + "nodeType": "YulFunctionCall", + "src": "2765:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "2757:4:74", + "nodeType": "YulIdentifier", + "src": "2757:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "2480:307:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "2530:6:74", + "nodeType": "YulTypedName", + "src": "2530:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "2541:4:74", + "nodeType": "YulTypedName", + "src": "2541:4:74", + "type": "" + } + ], + "src": "2480:307:74" + }, + { + "body": { + "nativeSrc": "2857:84:74", + "nodeType": "YulBlock", + "src": "2857:84:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2881:3:74", + "nodeType": "YulIdentifier", + "src": "2881:3:74" + }, + { + "name": "src", + "nativeSrc": "2886:3:74", + "nodeType": "YulIdentifier", + "src": "2886:3:74" + }, + { + "name": "length", + "nativeSrc": "2891:6:74", + "nodeType": "YulIdentifier", + "src": "2891:6:74" + } + ], + "functionName": { + "name": "calldatacopy", + "nativeSrc": "2868:12:74", + "nodeType": "YulIdentifier", + "src": "2868:12:74" + }, + "nativeSrc": "2868:30:74", + "nodeType": "YulFunctionCall", + "src": "2868:30:74" + }, + "nativeSrc": "2868:30:74", + "nodeType": "YulExpressionStatement", + "src": "2868:30:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "2918:3:74", + "nodeType": "YulIdentifier", + "src": "2918:3:74" + }, + { + "name": "length", + "nativeSrc": "2923:6:74", + "nodeType": "YulIdentifier", + "src": "2923:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2914:3:74", + "nodeType": "YulIdentifier", + "src": "2914:3:74" + }, + "nativeSrc": "2914:16:74", + "nodeType": "YulFunctionCall", + "src": "2914:16:74" + }, + { + "kind": "number", + "nativeSrc": "2932:1:74", + "nodeType": "YulLiteral", + "src": "2932:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2907:6:74", + "nodeType": "YulIdentifier", + "src": "2907:6:74" + }, + "nativeSrc": "2907:27:74", + "nodeType": "YulFunctionCall", + "src": "2907:27:74" + }, + "nativeSrc": "2907:27:74", + "nodeType": "YulExpressionStatement", + "src": "2907:27:74" + } + ] + }, + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "2793:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "2839:3:74", + "nodeType": "YulTypedName", + "src": "2839:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "2844:3:74", + "nodeType": "YulTypedName", + "src": "2844:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "2849:6:74", + "nodeType": "YulTypedName", + "src": "2849:6:74", + "type": "" + } + ], + "src": "2793:148:74" + }, + { + "body": { + "nativeSrc": "3030:340:74", + "nodeType": "YulBlock", + "src": "3030:340:74", + "statements": [ + { + "nativeSrc": "3040:74:74", + "nodeType": "YulAssignment", + "src": "3040:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "3106:6:74", + "nodeType": "YulIdentifier", + "src": "3106:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "3065:40:74", + "nodeType": "YulIdentifier", + "src": "3065:40:74" + }, + "nativeSrc": "3065:48:74", + "nodeType": "YulFunctionCall", + "src": "3065:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "3049:15:74", + "nodeType": "YulIdentifier", + "src": "3049:15:74" + }, + "nativeSrc": "3049:65:74", + "nodeType": "YulFunctionCall", + "src": "3049:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "3040:5:74", + "nodeType": "YulIdentifier", + "src": "3040:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "3130:5:74", + "nodeType": "YulIdentifier", + "src": "3130:5:74" + }, + { + "name": "length", + "nativeSrc": "3137:6:74", + "nodeType": "YulIdentifier", + "src": "3137:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "3123:6:74", + "nodeType": "YulIdentifier", + "src": "3123:6:74" + }, + "nativeSrc": "3123:21:74", + "nodeType": "YulFunctionCall", + "src": "3123:21:74" + }, + "nativeSrc": "3123:21:74", + "nodeType": "YulExpressionStatement", + "src": "3123:21:74" + }, + { + "nativeSrc": "3153:27:74", + "nodeType": "YulVariableDeclaration", + "src": "3153:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "3168:5:74", + "nodeType": "YulIdentifier", + "src": "3168:5:74" + }, + { + "kind": "number", + "nativeSrc": "3175:4:74", + "nodeType": "YulLiteral", + "src": "3175:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3164:3:74", + "nodeType": "YulIdentifier", + "src": "3164:3:74" + }, + "nativeSrc": "3164:16:74", + "nodeType": "YulFunctionCall", + "src": "3164:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "3157:3:74", + "nodeType": "YulTypedName", + "src": "3157:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "3218:83:74", + "nodeType": "YulBlock", + "src": "3218:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "3220:77:74", + "nodeType": "YulIdentifier", + "src": "3220:77:74" + }, + "nativeSrc": "3220:79:74", + "nodeType": "YulFunctionCall", + "src": "3220:79:74" + }, + "nativeSrc": "3220:79:74", + "nodeType": "YulExpressionStatement", + "src": "3220:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "3199:3:74", + "nodeType": "YulIdentifier", + "src": "3199:3:74" + }, + { + "name": "length", + "nativeSrc": "3204:6:74", + "nodeType": "YulIdentifier", + "src": "3204:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3195:3:74", + "nodeType": "YulIdentifier", + "src": "3195:3:74" + }, + "nativeSrc": "3195:16:74", + "nodeType": "YulFunctionCall", + "src": "3195:16:74" + }, + { + "name": "end", + "nativeSrc": "3213:3:74", + "nodeType": "YulIdentifier", + "src": "3213:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "3192:2:74", + "nodeType": "YulIdentifier", + "src": "3192:2:74" + }, + "nativeSrc": "3192:25:74", + "nodeType": "YulFunctionCall", + "src": "3192:25:74" + }, + "nativeSrc": "3189:112:74", + "nodeType": "YulIf", + "src": "3189:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "3347:3:74", + "nodeType": "YulIdentifier", + "src": "3347:3:74" + }, + { + "name": "dst", + "nativeSrc": "3352:3:74", + "nodeType": "YulIdentifier", + "src": "3352:3:74" + }, + { + "name": "length", + "nativeSrc": "3357:6:74", + "nodeType": "YulIdentifier", + "src": "3357:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "3310:36:74", + "nodeType": "YulIdentifier", + "src": "3310:36:74" + }, + "nativeSrc": "3310:54:74", + "nodeType": "YulFunctionCall", + "src": "3310:54:74" + }, + "nativeSrc": "3310:54:74", + "nodeType": "YulExpressionStatement", + "src": "3310:54:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "2947:423:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "3003:3:74", + "nodeType": "YulTypedName", + "src": "3003:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "3008:6:74", + "nodeType": "YulTypedName", + "src": "3008:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3016:3:74", + "nodeType": "YulTypedName", + "src": "3016:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "3024:5:74", + "nodeType": "YulTypedName", + "src": "3024:5:74", + "type": "" + } + ], + "src": "2947:423:74" + }, + { + "body": { + "nativeSrc": "3450:277:74", + "nodeType": "YulBlock", + "src": "3450:277:74", + "statements": [ + { + "body": { + "nativeSrc": "3499:83:74", + "nodeType": "YulBlock", + "src": "3499:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "3501:77:74", + "nodeType": "YulIdentifier", + "src": "3501:77:74" + }, + "nativeSrc": "3501:79:74", + "nodeType": "YulFunctionCall", + "src": "3501:79:74" + }, + "nativeSrc": "3501:79:74", + "nodeType": "YulExpressionStatement", + "src": "3501:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3478:6:74", + "nodeType": "YulIdentifier", + "src": "3478:6:74" + }, + { + "kind": "number", + "nativeSrc": "3486:4:74", + "nodeType": "YulLiteral", + "src": "3486:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3474:3:74", + "nodeType": "YulIdentifier", + "src": "3474:3:74" + }, + "nativeSrc": "3474:17:74", + "nodeType": "YulFunctionCall", + "src": "3474:17:74" + }, + { + "name": "end", + "nativeSrc": "3493:3:74", + "nodeType": "YulIdentifier", + "src": "3493:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3470:3:74", + "nodeType": "YulIdentifier", + "src": "3470:3:74" + }, + "nativeSrc": "3470:27:74", + "nodeType": "YulFunctionCall", + "src": "3470:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "3463:6:74", + "nodeType": "YulIdentifier", + "src": "3463:6:74" + }, + "nativeSrc": "3463:35:74", + "nodeType": "YulFunctionCall", + "src": "3463:35:74" + }, + "nativeSrc": "3460:122:74", + "nodeType": "YulIf", + "src": "3460:122:74" + }, + { + "nativeSrc": "3591:34:74", + "nodeType": "YulVariableDeclaration", + "src": "3591:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3618:6:74", + "nodeType": "YulIdentifier", + "src": "3618:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3605:12:74", + "nodeType": "YulIdentifier", + "src": "3605:12:74" + }, + "nativeSrc": "3605:20:74", + "nodeType": "YulFunctionCall", + "src": "3605:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "3595:6:74", + "nodeType": "YulTypedName", + "src": "3595:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "3634:87:74", + "nodeType": "YulAssignment", + "src": "3634:87:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "3694:6:74", + "nodeType": "YulIdentifier", + "src": "3694:6:74" + }, + { + "kind": "number", + "nativeSrc": "3702:4:74", + "nodeType": "YulLiteral", + "src": "3702:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3690:3:74", + "nodeType": "YulIdentifier", + "src": "3690:3:74" + }, + "nativeSrc": "3690:17:74", + "nodeType": "YulFunctionCall", + "src": "3690:17:74" + }, + { + "name": "length", + "nativeSrc": "3709:6:74", + "nodeType": "YulIdentifier", + "src": "3709:6:74" + }, + { + "name": "end", + "nativeSrc": "3717:3:74", + "nodeType": "YulIdentifier", + "src": "3717:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr", + "nativeSrc": "3643:46:74", + "nodeType": "YulIdentifier", + "src": "3643:46:74" + }, + "nativeSrc": "3643:78:74", + "nodeType": "YulFunctionCall", + "src": "3643:78:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "3634:5:74", + "nodeType": "YulIdentifier", + "src": "3634:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "3389:338:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "3428:6:74", + "nodeType": "YulTypedName", + "src": "3428:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "3436:3:74", + "nodeType": "YulTypedName", + "src": "3436:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "3444:5:74", + "nodeType": "YulTypedName", + "src": "3444:5:74", + "type": "" + } + ], + "src": "3389:338:74" + }, + { + "body": { + "nativeSrc": "3808:432:74", + "nodeType": "YulBlock", + "src": "3808:432:74", + "statements": [ + { + "body": { + "nativeSrc": "3854:83:74", + "nodeType": "YulBlock", + "src": "3854:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "3856:77:74", + "nodeType": "YulIdentifier", + "src": "3856:77:74" + }, + "nativeSrc": "3856:79:74", + "nodeType": "YulFunctionCall", + "src": "3856:79:74" + }, + "nativeSrc": "3856:79:74", + "nodeType": "YulExpressionStatement", + "src": "3856:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "3829:7:74", + "nodeType": "YulIdentifier", + "src": "3829:7:74" + }, + { + "name": "headStart", + "nativeSrc": "3838:9:74", + "nodeType": "YulIdentifier", + "src": "3838:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "3825:3:74", + "nodeType": "YulIdentifier", + "src": "3825:3:74" + }, + "nativeSrc": "3825:23:74", + "nodeType": "YulFunctionCall", + "src": "3825:23:74" + }, + { + "kind": "number", + "nativeSrc": "3850:2:74", + "nodeType": "YulLiteral", + "src": "3850:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "3821:3:74", + "nodeType": "YulIdentifier", + "src": "3821:3:74" + }, + "nativeSrc": "3821:32:74", + "nodeType": "YulFunctionCall", + "src": "3821:32:74" + }, + "nativeSrc": "3818:119:74", + "nodeType": "YulIf", + "src": "3818:119:74" + }, + { + "nativeSrc": "3947:286:74", + "nodeType": "YulBlock", + "src": "3947:286:74", + "statements": [ + { + "nativeSrc": "3962:45:74", + "nodeType": "YulVariableDeclaration", + "src": "3962:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "3993:9:74", + "nodeType": "YulIdentifier", + "src": "3993:9:74" + }, + { + "kind": "number", + "nativeSrc": "4004:1:74", + "nodeType": "YulLiteral", + "src": "4004:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "3989:3:74", + "nodeType": "YulIdentifier", + "src": "3989:3:74" + }, + "nativeSrc": "3989:17:74", + "nodeType": "YulFunctionCall", + "src": "3989:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "3976:12:74", + "nodeType": "YulIdentifier", + "src": "3976:12:74" + }, + "nativeSrc": "3976:31:74", + "nodeType": "YulFunctionCall", + "src": "3976:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "3966:6:74", + "nodeType": "YulTypedName", + "src": "3966:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "4054:83:74", + "nodeType": "YulBlock", + "src": "4054:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "4056:77:74", + "nodeType": "YulIdentifier", + "src": "4056:77:74" + }, + "nativeSrc": "4056:79:74", + "nodeType": "YulFunctionCall", + "src": "4056:79:74" + }, + "nativeSrc": "4056:79:74", + "nodeType": "YulExpressionStatement", + "src": "4056:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "4026:6:74", + "nodeType": "YulIdentifier", + "src": "4026:6:74" + }, + { + "kind": "number", + "nativeSrc": "4034:18:74", + "nodeType": "YulLiteral", + "src": "4034:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "4023:2:74", + "nodeType": "YulIdentifier", + "src": "4023:2:74" + }, + "nativeSrc": "4023:30:74", + "nodeType": "YulFunctionCall", + "src": "4023:30:74" + }, + "nativeSrc": "4020:117:74", + "nodeType": "YulIf", + "src": "4020:117:74" + }, + { + "nativeSrc": "4151:72:74", + "nodeType": "YulAssignment", + "src": "4151:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4195:9:74", + "nodeType": "YulIdentifier", + "src": "4195:9:74" + }, + { + "name": "offset", + "nativeSrc": "4206:6:74", + "nodeType": "YulIdentifier", + "src": "4206:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4191:3:74", + "nodeType": "YulIdentifier", + "src": "4191:3:74" + }, + "nativeSrc": "4191:22:74", + "nodeType": "YulFunctionCall", + "src": "4191:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "4215:7:74", + "nodeType": "YulIdentifier", + "src": "4215:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "4161:29:74", + "nodeType": "YulIdentifier", + "src": "4161:29:74" + }, + "nativeSrc": "4161:62:74", + "nodeType": "YulFunctionCall", + "src": "4161:62:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "4151:6:74", + "nodeType": "YulIdentifier", + "src": "4151:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptr", + "nativeSrc": "3733:507:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "3778:9:74", + "nodeType": "YulTypedName", + "src": "3778:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "3789:7:74", + "nodeType": "YulTypedName", + "src": "3789:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "3801:6:74", + "nodeType": "YulTypedName", + "src": "3801:6:74", + "type": "" + } + ], + "src": "3733:507:74" + }, + { + "body": { + "nativeSrc": "4291:32:74", + "nodeType": "YulBlock", + "src": "4291:32:74", + "statements": [ + { + "nativeSrc": "4301:16:74", + "nodeType": "YulAssignment", + "src": "4301:16:74", + "value": { + "name": "value", + "nativeSrc": "4312:5:74", + "nodeType": "YulIdentifier", + "src": "4312:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4301:7:74", + "nodeType": "YulIdentifier", + "src": "4301:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "4246:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4273:5:74", + "nodeType": "YulTypedName", + "src": "4273:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4283:7:74", + "nodeType": "YulTypedName", + "src": "4283:7:74", + "type": "" + } + ], + "src": "4246:77:74" + }, + { + "body": { + "nativeSrc": "4394:53:74", + "nodeType": "YulBlock", + "src": "4394:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4411:3:74", + "nodeType": "YulIdentifier", + "src": "4411:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4434:5:74", + "nodeType": "YulIdentifier", + "src": "4434:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "4416:17:74", + "nodeType": "YulIdentifier", + "src": "4416:17:74" + }, + "nativeSrc": "4416:24:74", + "nodeType": "YulFunctionCall", + "src": "4416:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4404:6:74", + "nodeType": "YulIdentifier", + "src": "4404:6:74" + }, + "nativeSrc": "4404:37:74", + "nodeType": "YulFunctionCall", + "src": "4404:37:74" + }, + "nativeSrc": "4404:37:74", + "nodeType": "YulExpressionStatement", + "src": "4404:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "4329:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4382:5:74", + "nodeType": "YulTypedName", + "src": "4382:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4389:3:74", + "nodeType": "YulTypedName", + "src": "4389:3:74", + "type": "" + } + ], + "src": "4329:118:74" + }, + { + "body": { + "nativeSrc": "4498:81:74", + "nodeType": "YulBlock", + "src": "4498:81:74", + "statements": [ + { + "nativeSrc": "4508:65:74", + "nodeType": "YulAssignment", + "src": "4508:65:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4523:5:74", + "nodeType": "YulIdentifier", + "src": "4523:5:74" + }, + { + "kind": "number", + "nativeSrc": "4530:42:74", + "nodeType": "YulLiteral", + "src": "4530:42:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "4519:3:74", + "nodeType": "YulIdentifier", + "src": "4519:3:74" + }, + "nativeSrc": "4519:54:74", + "nodeType": "YulFunctionCall", + "src": "4519:54:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4508:7:74", + "nodeType": "YulIdentifier", + "src": "4508:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nativeSrc": "4453:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4480:5:74", + "nodeType": "YulTypedName", + "src": "4480:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4490:7:74", + "nodeType": "YulTypedName", + "src": "4490:7:74", + "type": "" + } + ], + "src": "4453:126:74" + }, + { + "body": { + "nativeSrc": "4630:51:74", + "nodeType": "YulBlock", + "src": "4630:51:74", + "statements": [ + { + "nativeSrc": "4640:35:74", + "nodeType": "YulAssignment", + "src": "4640:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "4669:5:74", + "nodeType": "YulIdentifier", + "src": "4669:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "4651:17:74", + "nodeType": "YulIdentifier", + "src": "4651:17:74" + }, + "nativeSrc": "4651:24:74", + "nodeType": "YulFunctionCall", + "src": "4651:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "4640:7:74", + "nodeType": "YulIdentifier", + "src": "4640:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nativeSrc": "4585:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4612:5:74", + "nodeType": "YulTypedName", + "src": "4612:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "4622:7:74", + "nodeType": "YulTypedName", + "src": "4622:7:74", + "type": "" + } + ], + "src": "4585:96:74" + }, + { + "body": { + "nativeSrc": "4752:53:74", + "nodeType": "YulBlock", + "src": "4752:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "4769:3:74", + "nodeType": "YulIdentifier", + "src": "4769:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "4792:5:74", + "nodeType": "YulIdentifier", + "src": "4792:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "4774:17:74", + "nodeType": "YulIdentifier", + "src": "4774:17:74" + }, + "nativeSrc": "4774:24:74", + "nodeType": "YulFunctionCall", + "src": "4774:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "4762:6:74", + "nodeType": "YulIdentifier", + "src": "4762:6:74" + }, + "nativeSrc": "4762:37:74", + "nodeType": "YulFunctionCall", + "src": "4762:37:74" + }, + "nativeSrc": "4762:37:74", + "nodeType": "YulExpressionStatement", + "src": "4762:37:74" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "4687:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "4740:5:74", + "nodeType": "YulTypedName", + "src": "4740:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "4747:3:74", + "nodeType": "YulTypedName", + "src": "4747:3:74", + "type": "" + } + ], + "src": "4687:118:74" + }, + { + "body": { + "nativeSrc": "4937:206:74", + "nodeType": "YulBlock", + "src": "4937:206:74", + "statements": [ + { + "nativeSrc": "4947:26:74", + "nodeType": "YulAssignment", + "src": "4947:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "4959:9:74", + "nodeType": "YulIdentifier", + "src": "4959:9:74" + }, + { + "kind": "number", + "nativeSrc": "4970:2:74", + "nodeType": "YulLiteral", + "src": "4970:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "4955:3:74", + "nodeType": "YulIdentifier", + "src": "4955:3:74" + }, + "nativeSrc": "4955:18:74", + "nodeType": "YulFunctionCall", + "src": "4955:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "4947:4:74", + "nodeType": "YulIdentifier", + "src": "4947:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "5027:6:74", + "nodeType": "YulIdentifier", + "src": "5027:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5040:9:74", + "nodeType": "YulIdentifier", + "src": "5040:9:74" + }, + { + "kind": "number", + "nativeSrc": "5051:1:74", + "nodeType": "YulLiteral", + "src": "5051:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5036:3:74", + "nodeType": "YulIdentifier", + "src": "5036:3:74" + }, + "nativeSrc": "5036:17:74", + "nodeType": "YulFunctionCall", + "src": "5036:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "4983:43:74", + "nodeType": "YulIdentifier", + "src": "4983:43:74" + }, + "nativeSrc": "4983:71:74", + "nodeType": "YulFunctionCall", + "src": "4983:71:74" + }, + "nativeSrc": "4983:71:74", + "nodeType": "YulExpressionStatement", + "src": "4983:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "5108:6:74", + "nodeType": "YulIdentifier", + "src": "5108:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "5121:9:74", + "nodeType": "YulIdentifier", + "src": "5121:9:74" + }, + { + "kind": "number", + "nativeSrc": "5132:2:74", + "nodeType": "YulLiteral", + "src": "5132:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5117:3:74", + "nodeType": "YulIdentifier", + "src": "5117:3:74" + }, + "nativeSrc": "5117:18:74", + "nodeType": "YulFunctionCall", + "src": "5117:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "5064:43:74", + "nodeType": "YulIdentifier", + "src": "5064:43:74" + }, + "nativeSrc": "5064:72:74", + "nodeType": "YulFunctionCall", + "src": "5064:72:74" + }, + "nativeSrc": "5064:72:74", + "nodeType": "YulExpressionStatement", + "src": "5064:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed", + "nativeSrc": "4811:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "4901:9:74", + "nodeType": "YulTypedName", + "src": "4901:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "4913:6:74", + "nodeType": "YulTypedName", + "src": "4913:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "4921:6:74", + "nodeType": "YulTypedName", + "src": "4921:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "4932:4:74", + "nodeType": "YulTypedName", + "src": "4932:4:74", + "type": "" + } + ], + "src": "4811:332:74" + }, + { + "body": { + "nativeSrc": "5238:28:74", + "nodeType": "YulBlock", + "src": "5238:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5255:1:74", + "nodeType": "YulLiteral", + "src": "5255:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5258:1:74", + "nodeType": "YulLiteral", + "src": "5258:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5248:6:74", + "nodeType": "YulIdentifier", + "src": "5248:6:74" + }, + "nativeSrc": "5248:12:74", + "nodeType": "YulFunctionCall", + "src": "5248:12:74" + }, + "nativeSrc": "5248:12:74", + "nodeType": "YulExpressionStatement", + "src": "5248:12:74" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "5149:117:74", + "nodeType": "YulFunctionDefinition", + "src": "5149:117:74" + }, + { + "body": { + "nativeSrc": "5361:28:74", + "nodeType": "YulBlock", + "src": "5361:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "5378:1:74", + "nodeType": "YulLiteral", + "src": "5378:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "5381:1:74", + "nodeType": "YulLiteral", + "src": "5381:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "5371:6:74", + "nodeType": "YulIdentifier", + "src": "5371:6:74" + }, + "nativeSrc": "5371:12:74", + "nodeType": "YulFunctionCall", + "src": "5371:12:74" + }, + "nativeSrc": "5371:12:74", + "nodeType": "YulExpressionStatement", + "src": "5371:12:74" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "5272:117:74", + "nodeType": "YulFunctionDefinition", + "src": "5272:117:74" + }, + { + "body": { + "nativeSrc": "5482:478:74", + "nodeType": "YulBlock", + "src": "5482:478:74", + "statements": [ + { + "body": { + "nativeSrc": "5531:83:74", + "nodeType": "YulBlock", + "src": "5531:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "5533:77:74", + "nodeType": "YulIdentifier", + "src": "5533:77:74" + }, + "nativeSrc": "5533:79:74", + "nodeType": "YulFunctionCall", + "src": "5533:79:74" + }, + "nativeSrc": "5533:79:74", + "nodeType": "YulExpressionStatement", + "src": "5533:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5510:6:74", + "nodeType": "YulIdentifier", + "src": "5510:6:74" + }, + { + "kind": "number", + "nativeSrc": "5518:4:74", + "nodeType": "YulLiteral", + "src": "5518:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5506:3:74", + "nodeType": "YulIdentifier", + "src": "5506:3:74" + }, + "nativeSrc": "5506:17:74", + "nodeType": "YulFunctionCall", + "src": "5506:17:74" + }, + { + "name": "end", + "nativeSrc": "5525:3:74", + "nodeType": "YulIdentifier", + "src": "5525:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "5502:3:74", + "nodeType": "YulIdentifier", + "src": "5502:3:74" + }, + "nativeSrc": "5502:27:74", + "nodeType": "YulFunctionCall", + "src": "5502:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "5495:6:74", + "nodeType": "YulIdentifier", + "src": "5495:6:74" + }, + "nativeSrc": "5495:35:74", + "nodeType": "YulFunctionCall", + "src": "5495:35:74" + }, + "nativeSrc": "5492:122:74", + "nodeType": "YulIf", + "src": "5492:122:74" + }, + { + "nativeSrc": "5623:30:74", + "nodeType": "YulAssignment", + "src": "5623:30:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5646:6:74", + "nodeType": "YulIdentifier", + "src": "5646:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "5633:12:74", + "nodeType": "YulIdentifier", + "src": "5633:12:74" + }, + "nativeSrc": "5633:20:74", + "nodeType": "YulFunctionCall", + "src": "5633:20:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "5623:6:74", + "nodeType": "YulIdentifier", + "src": "5623:6:74" + } + ] + }, + { + "body": { + "nativeSrc": "5696:83:74", + "nodeType": "YulBlock", + "src": "5696:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nativeSrc": "5698:77:74", + "nodeType": "YulIdentifier", + "src": "5698:77:74" + }, + "nativeSrc": "5698:79:74", + "nodeType": "YulFunctionCall", + "src": "5698:79:74" + }, + "nativeSrc": "5698:79:74", + "nodeType": "YulExpressionStatement", + "src": "5698:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "5668:6:74", + "nodeType": "YulIdentifier", + "src": "5668:6:74" + }, + { + "kind": "number", + "nativeSrc": "5676:18:74", + "nodeType": "YulLiteral", + "src": "5676:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5665:2:74", + "nodeType": "YulIdentifier", + "src": "5665:2:74" + }, + "nativeSrc": "5665:30:74", + "nodeType": "YulFunctionCall", + "src": "5665:30:74" + }, + "nativeSrc": "5662:117:74", + "nodeType": "YulIf", + "src": "5662:117:74" + }, + { + "nativeSrc": "5788:29:74", + "nodeType": "YulAssignment", + "src": "5788:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "5804:6:74", + "nodeType": "YulIdentifier", + "src": "5804:6:74" + }, + { + "kind": "number", + "nativeSrc": "5812:4:74", + "nodeType": "YulLiteral", + "src": "5812:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5800:3:74", + "nodeType": "YulIdentifier", + "src": "5800:3:74" + }, + "nativeSrc": "5800:17:74", + "nodeType": "YulFunctionCall", + "src": "5800:17:74" + }, + "variableNames": [ + { + "name": "arrayPos", + "nativeSrc": "5788:8:74", + "nodeType": "YulIdentifier", + "src": "5788:8:74" + } + ] + }, + { + "body": { + "nativeSrc": "5871:83:74", + "nodeType": "YulBlock", + "src": "5871:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "5873:77:74", + "nodeType": "YulIdentifier", + "src": "5873:77:74" + }, + "nativeSrc": "5873:79:74", + "nodeType": "YulFunctionCall", + "src": "5873:79:74" + }, + "nativeSrc": "5873:79:74", + "nodeType": "YulExpressionStatement", + "src": "5873:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nativeSrc": "5836:8:74", + "nodeType": "YulIdentifier", + "src": "5836:8:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "5850:6:74", + "nodeType": "YulIdentifier", + "src": "5850:6:74" + }, + { + "kind": "number", + "nativeSrc": "5858:4:74", + "nodeType": "YulLiteral", + "src": "5858:4:74", + "type": "", + "value": "0x01" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "5846:3:74", + "nodeType": "YulIdentifier", + "src": "5846:3:74" + }, + "nativeSrc": "5846:17:74", + "nodeType": "YulFunctionCall", + "src": "5846:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "5832:3:74", + "nodeType": "YulIdentifier", + "src": "5832:3:74" + }, + "nativeSrc": "5832:32:74", + "nodeType": "YulFunctionCall", + "src": "5832:32:74" + }, + { + "name": "end", + "nativeSrc": "5866:3:74", + "nodeType": "YulIdentifier", + "src": "5866:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "5829:2:74", + "nodeType": "YulIdentifier", + "src": "5829:2:74" + }, + "nativeSrc": "5829:41:74", + "nodeType": "YulFunctionCall", + "src": "5829:41:74" + }, + "nativeSrc": "5826:128:74", + "nodeType": "YulIf", + "src": "5826:128:74" + } + ] + }, + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "5408:552:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "5449:6:74", + "nodeType": "YulTypedName", + "src": "5449:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "5457:3:74", + "nodeType": "YulTypedName", + "src": "5457:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nativeSrc": "5465:8:74", + "nodeType": "YulTypedName", + "src": "5465:8:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "5475:6:74", + "nodeType": "YulTypedName", + "src": "5475:6:74", + "type": "" + } + ], + "src": "5408:552:74" + }, + { + "body": { + "nativeSrc": "6051:442:74", + "nodeType": "YulBlock", + "src": "6051:442:74", + "statements": [ + { + "body": { + "nativeSrc": "6097:83:74", + "nodeType": "YulBlock", + "src": "6097:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "6099:77:74", + "nodeType": "YulIdentifier", + "src": "6099:77:74" + }, + "nativeSrc": "6099:79:74", + "nodeType": "YulFunctionCall", + "src": "6099:79:74" + }, + "nativeSrc": "6099:79:74", + "nodeType": "YulExpressionStatement", + "src": "6099:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "6072:7:74", + "nodeType": "YulIdentifier", + "src": "6072:7:74" + }, + { + "name": "headStart", + "nativeSrc": "6081:9:74", + "nodeType": "YulIdentifier", + "src": "6081:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "6068:3:74", + "nodeType": "YulIdentifier", + "src": "6068:3:74" + }, + "nativeSrc": "6068:23:74", + "nodeType": "YulFunctionCall", + "src": "6068:23:74" + }, + { + "kind": "number", + "nativeSrc": "6093:2:74", + "nodeType": "YulLiteral", + "src": "6093:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "6064:3:74", + "nodeType": "YulIdentifier", + "src": "6064:3:74" + }, + "nativeSrc": "6064:32:74", + "nodeType": "YulFunctionCall", + "src": "6064:32:74" + }, + "nativeSrc": "6061:119:74", + "nodeType": "YulIf", + "src": "6061:119:74" + }, + { + "nativeSrc": "6190:296:74", + "nodeType": "YulBlock", + "src": "6190:296:74", + "statements": [ + { + "nativeSrc": "6205:45:74", + "nodeType": "YulVariableDeclaration", + "src": "6205:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6236:9:74", + "nodeType": "YulIdentifier", + "src": "6236:9:74" + }, + { + "kind": "number", + "nativeSrc": "6247:1:74", + "nodeType": "YulLiteral", + "src": "6247:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6232:3:74", + "nodeType": "YulIdentifier", + "src": "6232:3:74" + }, + "nativeSrc": "6232:17:74", + "nodeType": "YulFunctionCall", + "src": "6232:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "6219:12:74", + "nodeType": "YulIdentifier", + "src": "6219:12:74" + }, + "nativeSrc": "6219:31:74", + "nodeType": "YulFunctionCall", + "src": "6219:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "6209:6:74", + "nodeType": "YulTypedName", + "src": "6209:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "6297:83:74", + "nodeType": "YulBlock", + "src": "6297:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "6299:77:74", + "nodeType": "YulIdentifier", + "src": "6299:77:74" + }, + "nativeSrc": "6299:79:74", + "nodeType": "YulFunctionCall", + "src": "6299:79:74" + }, + "nativeSrc": "6299:79:74", + "nodeType": "YulExpressionStatement", + "src": "6299:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "6269:6:74", + "nodeType": "YulIdentifier", + "src": "6269:6:74" + }, + { + "kind": "number", + "nativeSrc": "6277:18:74", + "nodeType": "YulLiteral", + "src": "6277:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "6266:2:74", + "nodeType": "YulIdentifier", + "src": "6266:2:74" + }, + "nativeSrc": "6266:30:74", + "nodeType": "YulFunctionCall", + "src": "6266:30:74" + }, + "nativeSrc": "6263:117:74", + "nodeType": "YulIf", + "src": "6263:117:74" + }, + { + "nativeSrc": "6394:82:74", + "nodeType": "YulAssignment", + "src": "6394:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6448:9:74", + "nodeType": "YulIdentifier", + "src": "6448:9:74" + }, + { + "name": "offset", + "nativeSrc": "6459:6:74", + "nodeType": "YulIdentifier", + "src": "6459:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6444:3:74", + "nodeType": "YulIdentifier", + "src": "6444:3:74" + }, + "nativeSrc": "6444:22:74", + "nodeType": "YulFunctionCall", + "src": "6444:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "6468:7:74", + "nodeType": "YulIdentifier", + "src": "6468:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "6412:31:74", + "nodeType": "YulIdentifier", + "src": "6412:31:74" + }, + "nativeSrc": "6412:64:74", + "nodeType": "YulFunctionCall", + "src": "6412:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "6394:6:74", + "nodeType": "YulIdentifier", + "src": "6394:6:74" + }, + { + "name": "value1", + "nativeSrc": "6402:6:74", + "nodeType": "YulIdentifier", + "src": "6402:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptr", + "nativeSrc": "5966:527:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6013:9:74", + "nodeType": "YulTypedName", + "src": "6013:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "6024:7:74", + "nodeType": "YulTypedName", + "src": "6024:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "6036:6:74", + "nodeType": "YulTypedName", + "src": "6036:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "6044:6:74", + "nodeType": "YulTypedName", + "src": "6044:6:74", + "type": "" + } + ], + "src": "5966:527:74" + }, + { + "body": { + "nativeSrc": "6544:32:74", + "nodeType": "YulBlock", + "src": "6544:32:74", + "statements": [ + { + "nativeSrc": "6554:16:74", + "nodeType": "YulAssignment", + "src": "6554:16:74", + "value": { + "name": "value", + "nativeSrc": "6565:5:74", + "nodeType": "YulIdentifier", + "src": "6565:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "6554:7:74", + "nodeType": "YulIdentifier", + "src": "6554:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "6499:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6526:5:74", + "nodeType": "YulTypedName", + "src": "6526:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "6536:7:74", + "nodeType": "YulTypedName", + "src": "6536:7:74", + "type": "" + } + ], + "src": "6499:77:74" + }, + { + "body": { + "nativeSrc": "6647:53:74", + "nodeType": "YulBlock", + "src": "6647:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "6664:3:74", + "nodeType": "YulIdentifier", + "src": "6664:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "6687:5:74", + "nodeType": "YulIdentifier", + "src": "6687:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "6669:17:74", + "nodeType": "YulIdentifier", + "src": "6669:17:74" + }, + "nativeSrc": "6669:24:74", + "nodeType": "YulFunctionCall", + "src": "6669:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "6657:6:74", + "nodeType": "YulIdentifier", + "src": "6657:6:74" + }, + "nativeSrc": "6657:37:74", + "nodeType": "YulFunctionCall", + "src": "6657:37:74" + }, + "nativeSrc": "6657:37:74", + "nodeType": "YulExpressionStatement", + "src": "6657:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "6582:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6635:5:74", + "nodeType": "YulTypedName", + "src": "6635:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "6642:3:74", + "nodeType": "YulTypedName", + "src": "6642:3:74", + "type": "" + } + ], + "src": "6582:118:74" + }, + { + "body": { + "nativeSrc": "6804:124:74", + "nodeType": "YulBlock", + "src": "6804:124:74", + "statements": [ + { + "nativeSrc": "6814:26:74", + "nodeType": "YulAssignment", + "src": "6814:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6826:9:74", + "nodeType": "YulIdentifier", + "src": "6826:9:74" + }, + { + "kind": "number", + "nativeSrc": "6837:2:74", + "nodeType": "YulLiteral", + "src": "6837:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6822:3:74", + "nodeType": "YulIdentifier", + "src": "6822:3:74" + }, + "nativeSrc": "6822:18:74", + "nodeType": "YulFunctionCall", + "src": "6822:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "6814:4:74", + "nodeType": "YulIdentifier", + "src": "6814:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "6894:6:74", + "nodeType": "YulIdentifier", + "src": "6894:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "6907:9:74", + "nodeType": "YulIdentifier", + "src": "6907:9:74" + }, + { + "kind": "number", + "nativeSrc": "6918:1:74", + "nodeType": "YulLiteral", + "src": "6918:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "6903:3:74", + "nodeType": "YulIdentifier", + "src": "6903:3:74" + }, + "nativeSrc": "6903:17:74", + "nodeType": "YulFunctionCall", + "src": "6903:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "6850:43:74", + "nodeType": "YulIdentifier", + "src": "6850:43:74" + }, + "nativeSrc": "6850:71:74", + "nodeType": "YulFunctionCall", + "src": "6850:71:74" + }, + "nativeSrc": "6850:71:74", + "nodeType": "YulExpressionStatement", + "src": "6850:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "6706:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "6776:9:74", + "nodeType": "YulTypedName", + "src": "6776:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "6788:6:74", + "nodeType": "YulTypedName", + "src": "6788:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "6799:4:74", + "nodeType": "YulTypedName", + "src": "6799:4:74", + "type": "" + } + ], + "src": "6706:222:74" + }, + { + "body": { + "nativeSrc": "6966:28:74", + "nodeType": "YulBlock", + "src": "6966:28:74", + "statements": [ + { + "nativeSrc": "6976:12:74", + "nodeType": "YulAssignment", + "src": "6976:12:74", + "value": { + "name": "value", + "nativeSrc": "6983:5:74", + "nodeType": "YulIdentifier", + "src": "6983:5:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "6976:3:74", + "nodeType": "YulIdentifier", + "src": "6976:3:74" + } + ] + } + ] + }, + "name": "identity", + "nativeSrc": "6934:60:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "6952:5:74", + "nodeType": "YulTypedName", + "src": "6952:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "6962:3:74", + "nodeType": "YulTypedName", + "src": "6962:3:74", + "type": "" + } + ], + "src": "6934:60:74" + }, + { + "body": { + "nativeSrc": "7060:82:74", + "nodeType": "YulBlock", + "src": "7060:82:74", + "statements": [ + { + "nativeSrc": "7070:66:74", + "nodeType": "YulAssignment", + "src": "7070:66:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7128:5:74", + "nodeType": "YulIdentifier", + "src": "7128:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "7110:17:74", + "nodeType": "YulIdentifier", + "src": "7110:17:74" + }, + "nativeSrc": "7110:24:74", + "nodeType": "YulFunctionCall", + "src": "7110:24:74" + } + ], + "functionName": { + "name": "identity", + "nativeSrc": "7101:8:74", + "nodeType": "YulIdentifier", + "src": "7101:8:74" + }, + "nativeSrc": "7101:34:74", + "nodeType": "YulFunctionCall", + "src": "7101:34:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "7083:17:74", + "nodeType": "YulIdentifier", + "src": "7083:17:74" + }, + "nativeSrc": "7083:53:74", + "nodeType": "YulFunctionCall", + "src": "7083:53:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7070:9:74", + "nodeType": "YulIdentifier", + "src": "7070:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "7000:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7040:5:74", + "nodeType": "YulTypedName", + "src": "7040:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7050:9:74", + "nodeType": "YulTypedName", + "src": "7050:9:74", + "type": "" + } + ], + "src": "7000:142:74" + }, + { + "body": { + "nativeSrc": "7208:66:74", + "nodeType": "YulBlock", + "src": "7208:66:74", + "statements": [ + { + "nativeSrc": "7218:50:74", + "nodeType": "YulAssignment", + "src": "7218:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7262:5:74", + "nodeType": "YulIdentifier", + "src": "7262:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nativeSrc": "7231:30:74", + "nodeType": "YulIdentifier", + "src": "7231:30:74" + }, + "nativeSrc": "7231:37:74", + "nodeType": "YulFunctionCall", + "src": "7231:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7218:9:74", + "nodeType": "YulIdentifier", + "src": "7218:9:74" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "7148:126:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7188:5:74", + "nodeType": "YulTypedName", + "src": "7188:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7198:9:74", + "nodeType": "YulTypedName", + "src": "7198:9:74", + "type": "" + } + ], + "src": "7148:126:74" + }, + { + "body": { + "nativeSrc": "7360:66:74", + "nodeType": "YulBlock", + "src": "7360:66:74", + "statements": [ + { + "nativeSrc": "7370:50:74", + "nodeType": "YulAssignment", + "src": "7370:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "7414:5:74", + "nodeType": "YulIdentifier", + "src": "7414:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "7383:30:74", + "nodeType": "YulIdentifier", + "src": "7383:30:74" + }, + "nativeSrc": "7383:37:74", + "nodeType": "YulFunctionCall", + "src": "7383:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7370:9:74", + "nodeType": "YulIdentifier", + "src": "7370:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_IEVMVerifier_$798_to_t_address", + "nativeSrc": "7280:146:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7340:5:74", + "nodeType": "YulTypedName", + "src": "7340:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7350:9:74", + "nodeType": "YulTypedName", + "src": "7350:9:74", + "type": "" + } + ], + "src": "7280:146:74" + }, + { + "body": { + "nativeSrc": "7517:86:74", + "nodeType": "YulBlock", + "src": "7517:86:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "7534:3:74", + "nodeType": "YulIdentifier", + "src": "7534:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "7590:5:74", + "nodeType": "YulIdentifier", + "src": "7590:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_IEVMVerifier_$798_to_t_address", + "nativeSrc": "7539:50:74", + "nodeType": "YulIdentifier", + "src": "7539:50:74" + }, + "nativeSrc": "7539:57:74", + "nodeType": "YulFunctionCall", + "src": "7539:57:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "7527:6:74", + "nodeType": "YulIdentifier", + "src": "7527:6:74" + }, + "nativeSrc": "7527:70:74", + "nodeType": "YulFunctionCall", + "src": "7527:70:74" + }, + "nativeSrc": "7527:70:74", + "nodeType": "YulExpressionStatement", + "src": "7527:70:74" + } + ] + }, + "name": "abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack", + "nativeSrc": "7432:171:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7505:5:74", + "nodeType": "YulTypedName", + "src": "7505:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "7512:3:74", + "nodeType": "YulTypedName", + "src": "7512:3:74", + "type": "" + } + ], + "src": "7432:171:74" + }, + { + "body": { + "nativeSrc": "7727:144:74", + "nodeType": "YulBlock", + "src": "7727:144:74", + "statements": [ + { + "nativeSrc": "7737:26:74", + "nodeType": "YulAssignment", + "src": "7737:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7749:9:74", + "nodeType": "YulIdentifier", + "src": "7749:9:74" + }, + { + "kind": "number", + "nativeSrc": "7760:2:74", + "nodeType": "YulLiteral", + "src": "7760:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7745:3:74", + "nodeType": "YulIdentifier", + "src": "7745:3:74" + }, + "nativeSrc": "7745:18:74", + "nodeType": "YulFunctionCall", + "src": "7745:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "7737:4:74", + "nodeType": "YulIdentifier", + "src": "7737:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "7837:6:74", + "nodeType": "YulIdentifier", + "src": "7837:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "7850:9:74", + "nodeType": "YulIdentifier", + "src": "7850:9:74" + }, + { + "kind": "number", + "nativeSrc": "7861:1:74", + "nodeType": "YulLiteral", + "src": "7861:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "7846:3:74", + "nodeType": "YulIdentifier", + "src": "7846:3:74" + }, + "nativeSrc": "7846:17:74", + "nodeType": "YulFunctionCall", + "src": "7846:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack", + "nativeSrc": "7773:63:74", + "nodeType": "YulIdentifier", + "src": "7773:63:74" + }, + "nativeSrc": "7773:91:74", + "nodeType": "YulFunctionCall", + "src": "7773:91:74" + }, + "nativeSrc": "7773:91:74", + "nodeType": "YulExpressionStatement", + "src": "7773:91:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IEVMVerifier_$798__to_t_address__fromStack_reversed", + "nativeSrc": "7609:262:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "7699:9:74", + "nodeType": "YulTypedName", + "src": "7699:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "7711:6:74", + "nodeType": "YulTypedName", + "src": "7711:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "7722:4:74", + "nodeType": "YulTypedName", + "src": "7722:4:74", + "type": "" + } + ], + "src": "7609:262:74" + }, + { + "body": { + "nativeSrc": "7949:66:74", + "nodeType": "YulBlock", + "src": "7949:66:74", + "statements": [ + { + "nativeSrc": "7959:50:74", + "nodeType": "YulAssignment", + "src": "7959:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "8003:5:74", + "nodeType": "YulIdentifier", + "src": "8003:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "7972:30:74", + "nodeType": "YulIdentifier", + "src": "7972:30:74" + }, + "nativeSrc": "7972:37:74", + "nodeType": "YulFunctionCall", + "src": "7972:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "7959:9:74", + "nodeType": "YulIdentifier", + "src": "7959:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "7877:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "7929:5:74", + "nodeType": "YulTypedName", + "src": "7929:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "7939:9:74", + "nodeType": "YulTypedName", + "src": "7939:9:74", + "type": "" + } + ], + "src": "7877:138:74" + }, + { + "body": { + "nativeSrc": "8098:78:74", + "nodeType": "YulBlock", + "src": "8098:78:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "8115:3:74", + "nodeType": "YulIdentifier", + "src": "8115:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "8163:5:74", + "nodeType": "YulIdentifier", + "src": "8163:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_ENS_$4567_to_t_address", + "nativeSrc": "8120:42:74", + "nodeType": "YulIdentifier", + "src": "8120:42:74" + }, + "nativeSrc": "8120:49:74", + "nodeType": "YulFunctionCall", + "src": "8120:49:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "8108:6:74", + "nodeType": "YulIdentifier", + "src": "8108:6:74" + }, + "nativeSrc": "8108:62:74", + "nodeType": "YulFunctionCall", + "src": "8108:62:74" + }, + "nativeSrc": "8108:62:74", + "nodeType": "YulExpressionStatement", + "src": "8108:62:74" + } + ] + }, + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "8021:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "8086:5:74", + "nodeType": "YulTypedName", + "src": "8086:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "8093:3:74", + "nodeType": "YulTypedName", + "src": "8093:3:74", + "type": "" + } + ], + "src": "8021:155:74" + }, + { + "body": { + "nativeSrc": "8292:136:74", + "nodeType": "YulBlock", + "src": "8292:136:74", + "statements": [ + { + "nativeSrc": "8302:26:74", + "nodeType": "YulAssignment", + "src": "8302:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8314:9:74", + "nodeType": "YulIdentifier", + "src": "8314:9:74" + }, + { + "kind": "number", + "nativeSrc": "8325:2:74", + "nodeType": "YulLiteral", + "src": "8325:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8310:3:74", + "nodeType": "YulIdentifier", + "src": "8310:3:74" + }, + "nativeSrc": "8310:18:74", + "nodeType": "YulFunctionCall", + "src": "8310:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "8302:4:74", + "nodeType": "YulIdentifier", + "src": "8302:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "8394:6:74", + "nodeType": "YulIdentifier", + "src": "8394:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8407:9:74", + "nodeType": "YulIdentifier", + "src": "8407:9:74" + }, + { + "kind": "number", + "nativeSrc": "8418:1:74", + "nodeType": "YulLiteral", + "src": "8418:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8403:3:74", + "nodeType": "YulIdentifier", + "src": "8403:3:74" + }, + "nativeSrc": "8403:17:74", + "nodeType": "YulFunctionCall", + "src": "8403:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack", + "nativeSrc": "8338:55:74", + "nodeType": "YulIdentifier", + "src": "8338:55:74" + }, + "nativeSrc": "8338:83:74", + "nodeType": "YulFunctionCall", + "src": "8338:83:74" + }, + "nativeSrc": "8338:83:74", + "nodeType": "YulExpressionStatement", + "src": "8338:83:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed", + "nativeSrc": "8182:246:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8264:9:74", + "nodeType": "YulTypedName", + "src": "8264:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "8276:6:74", + "nodeType": "YulTypedName", + "src": "8276:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "8287:4:74", + "nodeType": "YulTypedName", + "src": "8287:4:74", + "type": "" + } + ], + "src": "8182:246:74" + }, + { + "body": { + "nativeSrc": "8555:749:74", + "nodeType": "YulBlock", + "src": "8555:749:74", + "statements": [ + { + "body": { + "nativeSrc": "8601:83:74", + "nodeType": "YulBlock", + "src": "8601:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "8603:77:74", + "nodeType": "YulIdentifier", + "src": "8603:77:74" + }, + "nativeSrc": "8603:79:74", + "nodeType": "YulFunctionCall", + "src": "8603:79:74" + }, + "nativeSrc": "8603:79:74", + "nodeType": "YulExpressionStatement", + "src": "8603:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "8576:7:74", + "nodeType": "YulIdentifier", + "src": "8576:7:74" + }, + { + "name": "headStart", + "nativeSrc": "8585:9:74", + "nodeType": "YulIdentifier", + "src": "8585:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "8572:3:74", + "nodeType": "YulIdentifier", + "src": "8572:3:74" + }, + "nativeSrc": "8572:23:74", + "nodeType": "YulFunctionCall", + "src": "8572:23:74" + }, + { + "kind": "number", + "nativeSrc": "8597:2:74", + "nodeType": "YulLiteral", + "src": "8597:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "8568:3:74", + "nodeType": "YulIdentifier", + "src": "8568:3:74" + }, + "nativeSrc": "8568:32:74", + "nodeType": "YulFunctionCall", + "src": "8568:32:74" + }, + "nativeSrc": "8565:119:74", + "nodeType": "YulIf", + "src": "8565:119:74" + }, + { + "nativeSrc": "8694:296:74", + "nodeType": "YulBlock", + "src": "8694:296:74", + "statements": [ + { + "nativeSrc": "8709:45:74", + "nodeType": "YulVariableDeclaration", + "src": "8709:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8740:9:74", + "nodeType": "YulIdentifier", + "src": "8740:9:74" + }, + { + "kind": "number", + "nativeSrc": "8751:1:74", + "nodeType": "YulLiteral", + "src": "8751:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8736:3:74", + "nodeType": "YulIdentifier", + "src": "8736:3:74" + }, + "nativeSrc": "8736:17:74", + "nodeType": "YulFunctionCall", + "src": "8736:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "8723:12:74", + "nodeType": "YulIdentifier", + "src": "8723:12:74" + }, + "nativeSrc": "8723:31:74", + "nodeType": "YulFunctionCall", + "src": "8723:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "8713:6:74", + "nodeType": "YulTypedName", + "src": "8713:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "8801:83:74", + "nodeType": "YulBlock", + "src": "8801:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "8803:77:74", + "nodeType": "YulIdentifier", + "src": "8803:77:74" + }, + "nativeSrc": "8803:79:74", + "nodeType": "YulFunctionCall", + "src": "8803:79:74" + }, + "nativeSrc": "8803:79:74", + "nodeType": "YulExpressionStatement", + "src": "8803:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "8773:6:74", + "nodeType": "YulIdentifier", + "src": "8773:6:74" + }, + { + "kind": "number", + "nativeSrc": "8781:18:74", + "nodeType": "YulLiteral", + "src": "8781:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "8770:2:74", + "nodeType": "YulIdentifier", + "src": "8770:2:74" + }, + "nativeSrc": "8770:30:74", + "nodeType": "YulFunctionCall", + "src": "8770:30:74" + }, + "nativeSrc": "8767:117:74", + "nodeType": "YulIf", + "src": "8767:117:74" + }, + { + "nativeSrc": "8898:82:74", + "nodeType": "YulAssignment", + "src": "8898:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "8952:9:74", + "nodeType": "YulIdentifier", + "src": "8952:9:74" + }, + { + "name": "offset", + "nativeSrc": "8963:6:74", + "nodeType": "YulIdentifier", + "src": "8963:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "8948:3:74", + "nodeType": "YulIdentifier", + "src": "8948:3:74" + }, + "nativeSrc": "8948:22:74", + "nodeType": "YulFunctionCall", + "src": "8948:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "8972:7:74", + "nodeType": "YulIdentifier", + "src": "8972:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "8916:31:74", + "nodeType": "YulIdentifier", + "src": "8916:31:74" + }, + "nativeSrc": "8916:64:74", + "nodeType": "YulFunctionCall", + "src": "8916:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "8898:6:74", + "nodeType": "YulIdentifier", + "src": "8898:6:74" + }, + { + "name": "value1", + "nativeSrc": "8906:6:74", + "nodeType": "YulIdentifier", + "src": "8906:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "9000:297:74", + "nodeType": "YulBlock", + "src": "9000:297:74", + "statements": [ + { + "nativeSrc": "9015:46:74", + "nodeType": "YulVariableDeclaration", + "src": "9015:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9046:9:74", + "nodeType": "YulIdentifier", + "src": "9046:9:74" + }, + { + "kind": "number", + "nativeSrc": "9057:2:74", + "nodeType": "YulLiteral", + "src": "9057:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9042:3:74", + "nodeType": "YulIdentifier", + "src": "9042:3:74" + }, + "nativeSrc": "9042:18:74", + "nodeType": "YulFunctionCall", + "src": "9042:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "9029:12:74", + "nodeType": "YulIdentifier", + "src": "9029:12:74" + }, + "nativeSrc": "9029:32:74", + "nodeType": "YulFunctionCall", + "src": "9029:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "9019:6:74", + "nodeType": "YulTypedName", + "src": "9019:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9108:83:74", + "nodeType": "YulBlock", + "src": "9108:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "9110:77:74", + "nodeType": "YulIdentifier", + "src": "9110:77:74" + }, + "nativeSrc": "9110:79:74", + "nodeType": "YulFunctionCall", + "src": "9110:79:74" + }, + "nativeSrc": "9110:79:74", + "nodeType": "YulExpressionStatement", + "src": "9110:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "9080:6:74", + "nodeType": "YulIdentifier", + "src": "9080:6:74" + }, + { + "kind": "number", + "nativeSrc": "9088:18:74", + "nodeType": "YulLiteral", + "src": "9088:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "9077:2:74", + "nodeType": "YulIdentifier", + "src": "9077:2:74" + }, + "nativeSrc": "9077:30:74", + "nodeType": "YulFunctionCall", + "src": "9077:30:74" + }, + "nativeSrc": "9074:117:74", + "nodeType": "YulIf", + "src": "9074:117:74" + }, + { + "nativeSrc": "9205:82:74", + "nodeType": "YulAssignment", + "src": "9205:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "9259:9:74", + "nodeType": "YulIdentifier", + "src": "9259:9:74" + }, + { + "name": "offset", + "nativeSrc": "9270:6:74", + "nodeType": "YulIdentifier", + "src": "9270:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9255:3:74", + "nodeType": "YulIdentifier", + "src": "9255:3:74" + }, + "nativeSrc": "9255:22:74", + "nodeType": "YulFunctionCall", + "src": "9255:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "9279:7:74", + "nodeType": "YulIdentifier", + "src": "9279:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "9223:31:74", + "nodeType": "YulIdentifier", + "src": "9223:31:74" + }, + "nativeSrc": "9223:64:74", + "nodeType": "YulFunctionCall", + "src": "9223:64:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "9205:6:74", + "nodeType": "YulIdentifier", + "src": "9205:6:74" + }, + { + "name": "value3", + "nativeSrc": "9213:6:74", + "nodeType": "YulIdentifier", + "src": "9213:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr", + "nativeSrc": "8434:870:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "8501:9:74", + "nodeType": "YulTypedName", + "src": "8501:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "8512:7:74", + "nodeType": "YulTypedName", + "src": "8512:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "8524:6:74", + "nodeType": "YulTypedName", + "src": "8524:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "8532:6:74", + "nodeType": "YulTypedName", + "src": "8532:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "8540:6:74", + "nodeType": "YulTypedName", + "src": "8540:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "8548:6:74", + "nodeType": "YulTypedName", + "src": "8548:6:74", + "type": "" + } + ], + "src": "8434:870:74" + }, + { + "body": { + "nativeSrc": "9368:40:74", + "nodeType": "YulBlock", + "src": "9368:40:74", + "statements": [ + { + "nativeSrc": "9379:22:74", + "nodeType": "YulAssignment", + "src": "9379:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "9395:5:74", + "nodeType": "YulIdentifier", + "src": "9395:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9389:5:74", + "nodeType": "YulIdentifier", + "src": "9389:5:74" + }, + "nativeSrc": "9389:12:74", + "nodeType": "YulFunctionCall", + "src": "9389:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "9379:6:74", + "nodeType": "YulIdentifier", + "src": "9379:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "9310:98:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9351:5:74", + "nodeType": "YulTypedName", + "src": "9351:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "9361:6:74", + "nodeType": "YulTypedName", + "src": "9361:6:74", + "type": "" + } + ], + "src": "9310:98:74" + }, + { + "body": { + "nativeSrc": "9509:73:74", + "nodeType": "YulBlock", + "src": "9509:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "9526:3:74", + "nodeType": "YulIdentifier", + "src": "9526:3:74" + }, + { + "name": "length", + "nativeSrc": "9531:6:74", + "nodeType": "YulIdentifier", + "src": "9531:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9519:6:74", + "nodeType": "YulIdentifier", + "src": "9519:6:74" + }, + "nativeSrc": "9519:19:74", + "nodeType": "YulFunctionCall", + "src": "9519:19:74" + }, + "nativeSrc": "9519:19:74", + "nodeType": "YulExpressionStatement", + "src": "9519:19:74" + }, + { + "nativeSrc": "9547:29:74", + "nodeType": "YulAssignment", + "src": "9547:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "9566:3:74", + "nodeType": "YulIdentifier", + "src": "9566:3:74" + }, + { + "kind": "number", + "nativeSrc": "9571:4:74", + "nodeType": "YulLiteral", + "src": "9571:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9562:3:74", + "nodeType": "YulIdentifier", + "src": "9562:3:74" + }, + "nativeSrc": "9562:14:74", + "nodeType": "YulFunctionCall", + "src": "9562:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "9547:11:74", + "nodeType": "YulIdentifier", + "src": "9547:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "9414:168:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "9481:3:74", + "nodeType": "YulTypedName", + "src": "9481:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "9486:6:74", + "nodeType": "YulTypedName", + "src": "9486:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "9497:11:74", + "nodeType": "YulTypedName", + "src": "9497:11:74", + "type": "" + } + ], + "src": "9414:168:74" + }, + { + "body": { + "nativeSrc": "9650:186:74", + "nodeType": "YulBlock", + "src": "9650:186:74", + "statements": [ + { + "nativeSrc": "9661:10:74", + "nodeType": "YulVariableDeclaration", + "src": "9661:10:74", + "value": { + "kind": "number", + "nativeSrc": "9670:1:74", + "nodeType": "YulLiteral", + "src": "9670:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "9665:1:74", + "nodeType": "YulTypedName", + "src": "9665:1:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "9730:63:74", + "nodeType": "YulBlock", + "src": "9730:63:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "9755:3:74", + "nodeType": "YulIdentifier", + "src": "9755:3:74" + }, + { + "name": "i", + "nativeSrc": "9760:1:74", + "nodeType": "YulIdentifier", + "src": "9760:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9751:3:74", + "nodeType": "YulIdentifier", + "src": "9751:3:74" + }, + "nativeSrc": "9751:11:74", + "nodeType": "YulFunctionCall", + "src": "9751:11:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "9774:3:74", + "nodeType": "YulIdentifier", + "src": "9774:3:74" + }, + { + "name": "i", + "nativeSrc": "9779:1:74", + "nodeType": "YulIdentifier", + "src": "9779:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9770:3:74", + "nodeType": "YulIdentifier", + "src": "9770:3:74" + }, + "nativeSrc": "9770:11:74", + "nodeType": "YulFunctionCall", + "src": "9770:11:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "9764:5:74", + "nodeType": "YulIdentifier", + "src": "9764:5:74" + }, + "nativeSrc": "9764:18:74", + "nodeType": "YulFunctionCall", + "src": "9764:18:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9744:6:74", + "nodeType": "YulIdentifier", + "src": "9744:6:74" + }, + "nativeSrc": "9744:39:74", + "nodeType": "YulFunctionCall", + "src": "9744:39:74" + }, + "nativeSrc": "9744:39:74", + "nodeType": "YulExpressionStatement", + "src": "9744:39:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "9691:1:74", + "nodeType": "YulIdentifier", + "src": "9691:1:74" + }, + { + "name": "length", + "nativeSrc": "9694:6:74", + "nodeType": "YulIdentifier", + "src": "9694:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "9688:2:74", + "nodeType": "YulIdentifier", + "src": "9688:2:74" + }, + "nativeSrc": "9688:13:74", + "nodeType": "YulFunctionCall", + "src": "9688:13:74" + }, + "nativeSrc": "9680:113:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "9702:19:74", + "nodeType": "YulBlock", + "src": "9702:19:74", + "statements": [ + { + "nativeSrc": "9704:15:74", + "nodeType": "YulAssignment", + "src": "9704:15:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "9713:1:74", + "nodeType": "YulIdentifier", + "src": "9713:1:74" + }, + { + "kind": "number", + "nativeSrc": "9716:2:74", + "nodeType": "YulLiteral", + "src": "9716:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9709:3:74", + "nodeType": "YulIdentifier", + "src": "9709:3:74" + }, + "nativeSrc": "9709:10:74", + "nodeType": "YulFunctionCall", + "src": "9709:10:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "9704:1:74", + "nodeType": "YulIdentifier", + "src": "9704:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "9684:3:74", + "nodeType": "YulBlock", + "src": "9684:3:74", + "statements": [] + }, + "src": "9680:113:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nativeSrc": "9813:3:74", + "nodeType": "YulIdentifier", + "src": "9813:3:74" + }, + { + "name": "length", + "nativeSrc": "9818:6:74", + "nodeType": "YulIdentifier", + "src": "9818:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "9809:3:74", + "nodeType": "YulIdentifier", + "src": "9809:3:74" + }, + "nativeSrc": "9809:16:74", + "nodeType": "YulFunctionCall", + "src": "9809:16:74" + }, + { + "kind": "number", + "nativeSrc": "9827:1:74", + "nodeType": "YulLiteral", + "src": "9827:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "9802:6:74", + "nodeType": "YulIdentifier", + "src": "9802:6:74" + }, + "nativeSrc": "9802:27:74", + "nodeType": "YulFunctionCall", + "src": "9802:27:74" + }, + "nativeSrc": "9802:27:74", + "nodeType": "YulExpressionStatement", + "src": "9802:27:74" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "9588:248:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "9632:3:74", + "nodeType": "YulTypedName", + "src": "9632:3:74", + "type": "" + }, + { + "name": "dst", + "nativeSrc": "9637:3:74", + "nodeType": "YulTypedName", + "src": "9637:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "9642:6:74", + "nodeType": "YulTypedName", + "src": "9642:6:74", + "type": "" + } + ], + "src": "9588:248:74" + }, + { + "body": { + "nativeSrc": "9932:283:74", + "nodeType": "YulBlock", + "src": "9932:283:74", + "statements": [ + { + "nativeSrc": "9942:52:74", + "nodeType": "YulVariableDeclaration", + "src": "9942:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "9988:5:74", + "nodeType": "YulIdentifier", + "src": "9988:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "9956:31:74", + "nodeType": "YulIdentifier", + "src": "9956:31:74" + }, + "nativeSrc": "9956:38:74", + "nodeType": "YulFunctionCall", + "src": "9956:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "9946:6:74", + "nodeType": "YulTypedName", + "src": "9946:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "10003:77:74", + "nodeType": "YulAssignment", + "src": "10003:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10068:3:74", + "nodeType": "YulIdentifier", + "src": "10068:3:74" + }, + { + "name": "length", + "nativeSrc": "10073:6:74", + "nodeType": "YulIdentifier", + "src": "10073:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "10010:57:74", + "nodeType": "YulIdentifier", + "src": "10010:57:74" + }, + "nativeSrc": "10010:70:74", + "nodeType": "YulFunctionCall", + "src": "10010:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "10003:3:74", + "nodeType": "YulIdentifier", + "src": "10003:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10128:5:74", + "nodeType": "YulIdentifier", + "src": "10128:5:74" + }, + { + "kind": "number", + "nativeSrc": "10135:4:74", + "nodeType": "YulLiteral", + "src": "10135:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10124:3:74", + "nodeType": "YulIdentifier", + "src": "10124:3:74" + }, + "nativeSrc": "10124:16:74", + "nodeType": "YulFunctionCall", + "src": "10124:16:74" + }, + { + "name": "pos", + "nativeSrc": "10142:3:74", + "nodeType": "YulIdentifier", + "src": "10142:3:74" + }, + { + "name": "length", + "nativeSrc": "10147:6:74", + "nodeType": "YulIdentifier", + "src": "10147:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "10089:34:74", + "nodeType": "YulIdentifier", + "src": "10089:34:74" + }, + "nativeSrc": "10089:65:74", + "nodeType": "YulFunctionCall", + "src": "10089:65:74" + }, + "nativeSrc": "10089:65:74", + "nodeType": "YulExpressionStatement", + "src": "10089:65:74" + }, + { + "nativeSrc": "10163:46:74", + "nodeType": "YulAssignment", + "src": "10163:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10174:3:74", + "nodeType": "YulIdentifier", + "src": "10174:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "10201:6:74", + "nodeType": "YulIdentifier", + "src": "10201:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "10179:21:74", + "nodeType": "YulIdentifier", + "src": "10179:21:74" + }, + "nativeSrc": "10179:29:74", + "nodeType": "YulFunctionCall", + "src": "10179:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10170:3:74", + "nodeType": "YulIdentifier", + "src": "10170:3:74" + }, + "nativeSrc": "10170:39:74", + "nodeType": "YulFunctionCall", + "src": "10170:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "10163:3:74", + "nodeType": "YulIdentifier", + "src": "10163:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "9842:373:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "9913:5:74", + "nodeType": "YulTypedName", + "src": "9913:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "9920:3:74", + "nodeType": "YulTypedName", + "src": "9920:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "9928:3:74", + "nodeType": "YulTypedName", + "src": "9928:3:74", + "type": "" + } + ], + "src": "9842:373:74" + }, + { + "body": { + "nativeSrc": "10337:193:74", + "nodeType": "YulBlock", + "src": "10337:193:74", + "statements": [ + { + "nativeSrc": "10347:26:74", + "nodeType": "YulAssignment", + "src": "10347:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10359:9:74", + "nodeType": "YulIdentifier", + "src": "10359:9:74" + }, + { + "kind": "number", + "nativeSrc": "10370:2:74", + "nodeType": "YulLiteral", + "src": "10370:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10355:3:74", + "nodeType": "YulIdentifier", + "src": "10355:3:74" + }, + "nativeSrc": "10355:18:74", + "nodeType": "YulFunctionCall", + "src": "10355:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "10347:4:74", + "nodeType": "YulIdentifier", + "src": "10347:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "10394:9:74", + "nodeType": "YulIdentifier", + "src": "10394:9:74" + }, + { + "kind": "number", + "nativeSrc": "10405:1:74", + "nodeType": "YulLiteral", + "src": "10405:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "10390:3:74", + "nodeType": "YulIdentifier", + "src": "10390:3:74" + }, + "nativeSrc": "10390:17:74", + "nodeType": "YulFunctionCall", + "src": "10390:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "10413:4:74", + "nodeType": "YulIdentifier", + "src": "10413:4:74" + }, + { + "name": "headStart", + "nativeSrc": "10419:9:74", + "nodeType": "YulIdentifier", + "src": "10419:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "10409:3:74", + "nodeType": "YulIdentifier", + "src": "10409:3:74" + }, + "nativeSrc": "10409:20:74", + "nodeType": "YulFunctionCall", + "src": "10409:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10383:6:74", + "nodeType": "YulIdentifier", + "src": "10383:6:74" + }, + "nativeSrc": "10383:47:74", + "nodeType": "YulFunctionCall", + "src": "10383:47:74" + }, + "nativeSrc": "10383:47:74", + "nodeType": "YulExpressionStatement", + "src": "10383:47:74" + }, + { + "nativeSrc": "10439:84:74", + "nodeType": "YulAssignment", + "src": "10439:84:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "10509:6:74", + "nodeType": "YulIdentifier", + "src": "10509:6:74" + }, + { + "name": "tail", + "nativeSrc": "10518:4:74", + "nodeType": "YulIdentifier", + "src": "10518:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "10447:61:74", + "nodeType": "YulIdentifier", + "src": "10447:61:74" + }, + "nativeSrc": "10447:76:74", + "nodeType": "YulFunctionCall", + "src": "10447:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "10439:4:74", + "nodeType": "YulIdentifier", + "src": "10439:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "10221:309:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10309:9:74", + "nodeType": "YulTypedName", + "src": "10309:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "10321:6:74", + "nodeType": "YulTypedName", + "src": "10321:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "10332:4:74", + "nodeType": "YulTypedName", + "src": "10332:4:74", + "type": "" + } + ], + "src": "10221:309:74" + }, + { + "body": { + "nativeSrc": "10618:66:74", + "nodeType": "YulBlock", + "src": "10618:66:74", + "statements": [ + { + "nativeSrc": "10628:50:74", + "nodeType": "YulAssignment", + "src": "10628:50:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "10672:5:74", + "nodeType": "YulIdentifier", + "src": "10672:5:74" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nativeSrc": "10641:30:74", + "nodeType": "YulIdentifier", + "src": "10641:30:74" + }, + "nativeSrc": "10641:37:74", + "nodeType": "YulFunctionCall", + "src": "10641:37:74" + }, + "variableNames": [ + { + "name": "converted", + "nativeSrc": "10628:9:74", + "nodeType": "YulIdentifier", + "src": "10628:9:74" + } + ] + } + ] + }, + "name": "convert_t_contract$_INameWrapper_$10064_to_t_address", + "nativeSrc": "10536:148:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10598:5:74", + "nodeType": "YulTypedName", + "src": "10598:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nativeSrc": "10608:9:74", + "nodeType": "YulTypedName", + "src": "10608:9:74", + "type": "" + } + ], + "src": "10536:148:74" + }, + { + "body": { + "nativeSrc": "10777:88:74", + "nodeType": "YulBlock", + "src": "10777:88:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "10794:3:74", + "nodeType": "YulIdentifier", + "src": "10794:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "10852:5:74", + "nodeType": "YulIdentifier", + "src": "10852:5:74" + } + ], + "functionName": { + "name": "convert_t_contract$_INameWrapper_$10064_to_t_address", + "nativeSrc": "10799:52:74", + "nodeType": "YulIdentifier", + "src": "10799:52:74" + }, + "nativeSrc": "10799:59:74", + "nodeType": "YulFunctionCall", + "src": "10799:59:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "10787:6:74", + "nodeType": "YulIdentifier", + "src": "10787:6:74" + }, + "nativeSrc": "10787:72:74", + "nodeType": "YulFunctionCall", + "src": "10787:72:74" + }, + "nativeSrc": "10787:72:74", + "nodeType": "YulExpressionStatement", + "src": "10787:72:74" + } + ] + }, + "name": "abi_encode_t_contract$_INameWrapper_$10064_to_t_address_fromStack", + "nativeSrc": "10690:175:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "10765:5:74", + "nodeType": "YulTypedName", + "src": "10765:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "10772:3:74", + "nodeType": "YulTypedName", + "src": "10772:3:74", + "type": "" + } + ], + "src": "10690:175:74" + }, + { + "body": { + "nativeSrc": "10991:146:74", + "nodeType": "YulBlock", + "src": "10991:146:74", + "statements": [ + { + "nativeSrc": "11001:26:74", + "nodeType": "YulAssignment", + "src": "11001:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11013:9:74", + "nodeType": "YulIdentifier", + "src": "11013:9:74" + }, + { + "kind": "number", + "nativeSrc": "11024:2:74", + "nodeType": "YulLiteral", + "src": "11024:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11009:3:74", + "nodeType": "YulIdentifier", + "src": "11009:3:74" + }, + "nativeSrc": "11009:18:74", + "nodeType": "YulFunctionCall", + "src": "11009:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "11001:4:74", + "nodeType": "YulIdentifier", + "src": "11001:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "11103:6:74", + "nodeType": "YulIdentifier", + "src": "11103:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11116:9:74", + "nodeType": "YulIdentifier", + "src": "11116:9:74" + }, + { + "kind": "number", + "nativeSrc": "11127:1:74", + "nodeType": "YulLiteral", + "src": "11127:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11112:3:74", + "nodeType": "YulIdentifier", + "src": "11112:3:74" + }, + "nativeSrc": "11112:17:74", + "nodeType": "YulFunctionCall", + "src": "11112:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_INameWrapper_$10064_to_t_address_fromStack", + "nativeSrc": "11037:65:74", + "nodeType": "YulIdentifier", + "src": "11037:65:74" + }, + "nativeSrc": "11037:93:74", + "nodeType": "YulFunctionCall", + "src": "11037:93:74" + }, + "nativeSrc": "11037:93:74", + "nodeType": "YulExpressionStatement", + "src": "11037:93:74" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_INameWrapper_$10064__to_t_address__fromStack_reversed", + "nativeSrc": "10871:266:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "10963:9:74", + "nodeType": "YulTypedName", + "src": "10963:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "10975:6:74", + "nodeType": "YulTypedName", + "src": "10975:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "10986:4:74", + "nodeType": "YulTypedName", + "src": "10986:4:74", + "type": "" + } + ], + "src": "10871:266:74" + }, + { + "body": { + "nativeSrc": "11186:79:74", + "nodeType": "YulBlock", + "src": "11186:79:74", + "statements": [ + { + "body": { + "nativeSrc": "11243:16:74", + "nodeType": "YulBlock", + "src": "11243:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "11252:1:74", + "nodeType": "YulLiteral", + "src": "11252:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "11255:1:74", + "nodeType": "YulLiteral", + "src": "11255:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "11245:6:74", + "nodeType": "YulIdentifier", + "src": "11245:6:74" + }, + "nativeSrc": "11245:12:74", + "nodeType": "YulFunctionCall", + "src": "11245:12:74" + }, + "nativeSrc": "11245:12:74", + "nodeType": "YulExpressionStatement", + "src": "11245:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11209:5:74", + "nodeType": "YulIdentifier", + "src": "11209:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "11234:5:74", + "nodeType": "YulIdentifier", + "src": "11234:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "11216:17:74", + "nodeType": "YulIdentifier", + "src": "11216:17:74" + }, + "nativeSrc": "11216:24:74", + "nodeType": "YulFunctionCall", + "src": "11216:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "11206:2:74", + "nodeType": "YulIdentifier", + "src": "11206:2:74" + }, + "nativeSrc": "11206:35:74", + "nodeType": "YulFunctionCall", + "src": "11206:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "11199:6:74", + "nodeType": "YulIdentifier", + "src": "11199:6:74" + }, + "nativeSrc": "11199:43:74", + "nodeType": "YulFunctionCall", + "src": "11199:43:74" + }, + "nativeSrc": "11196:63:74", + "nodeType": "YulIf", + "src": "11196:63:74" + } + ] + }, + "name": "validator_revert_t_address", + "nativeSrc": "11143:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "11179:5:74", + "nodeType": "YulTypedName", + "src": "11179:5:74", + "type": "" + } + ], + "src": "11143:122:74" + }, + { + "body": { + "nativeSrc": "11323:87:74", + "nodeType": "YulBlock", + "src": "11323:87:74", + "statements": [ + { + "nativeSrc": "11333:29:74", + "nodeType": "YulAssignment", + "src": "11333:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11355:6:74", + "nodeType": "YulIdentifier", + "src": "11355:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11342:12:74", + "nodeType": "YulIdentifier", + "src": "11342:12:74" + }, + "nativeSrc": "11342:20:74", + "nodeType": "YulFunctionCall", + "src": "11342:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "11333:5:74", + "nodeType": "YulIdentifier", + "src": "11333:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "11398:5:74", + "nodeType": "YulIdentifier", + "src": "11398:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "11371:26:74", + "nodeType": "YulIdentifier", + "src": "11371:26:74" + }, + "nativeSrc": "11371:33:74", + "nodeType": "YulFunctionCall", + "src": "11371:33:74" + }, + "nativeSrc": "11371:33:74", + "nodeType": "YulExpressionStatement", + "src": "11371:33:74" + } + ] + }, + "name": "abi_decode_t_address", + "nativeSrc": "11271:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "11301:6:74", + "nodeType": "YulTypedName", + "src": "11301:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "11309:3:74", + "nodeType": "YulTypedName", + "src": "11309:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "11317:5:74", + "nodeType": "YulTypedName", + "src": "11317:5:74", + "type": "" + } + ], + "src": "11271:139:74" + }, + { + "body": { + "nativeSrc": "11518:570:74", + "nodeType": "YulBlock", + "src": "11518:570:74", + "statements": [ + { + "body": { + "nativeSrc": "11564:83:74", + "nodeType": "YulBlock", + "src": "11564:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "11566:77:74", + "nodeType": "YulIdentifier", + "src": "11566:77:74" + }, + "nativeSrc": "11566:79:74", + "nodeType": "YulFunctionCall", + "src": "11566:79:74" + }, + "nativeSrc": "11566:79:74", + "nodeType": "YulExpressionStatement", + "src": "11566:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "11539:7:74", + "nodeType": "YulIdentifier", + "src": "11539:7:74" + }, + { + "name": "headStart", + "nativeSrc": "11548:9:74", + "nodeType": "YulIdentifier", + "src": "11548:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "11535:3:74", + "nodeType": "YulIdentifier", + "src": "11535:3:74" + }, + "nativeSrc": "11535:23:74", + "nodeType": "YulFunctionCall", + "src": "11535:23:74" + }, + { + "kind": "number", + "nativeSrc": "11560:2:74", + "nodeType": "YulLiteral", + "src": "11560:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "11531:3:74", + "nodeType": "YulIdentifier", + "src": "11531:3:74" + }, + "nativeSrc": "11531:32:74", + "nodeType": "YulFunctionCall", + "src": "11531:32:74" + }, + "nativeSrc": "11528:119:74", + "nodeType": "YulIf", + "src": "11528:119:74" + }, + { + "nativeSrc": "11657:296:74", + "nodeType": "YulBlock", + "src": "11657:296:74", + "statements": [ + { + "nativeSrc": "11672:45:74", + "nodeType": "YulVariableDeclaration", + "src": "11672:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11703:9:74", + "nodeType": "YulIdentifier", + "src": "11703:9:74" + }, + { + "kind": "number", + "nativeSrc": "11714:1:74", + "nodeType": "YulLiteral", + "src": "11714:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11699:3:74", + "nodeType": "YulIdentifier", + "src": "11699:3:74" + }, + "nativeSrc": "11699:17:74", + "nodeType": "YulFunctionCall", + "src": "11699:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "11686:12:74", + "nodeType": "YulIdentifier", + "src": "11686:12:74" + }, + "nativeSrc": "11686:31:74", + "nodeType": "YulFunctionCall", + "src": "11686:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11676:6:74", + "nodeType": "YulTypedName", + "src": "11676:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "11764:83:74", + "nodeType": "YulBlock", + "src": "11764:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "11766:77:74", + "nodeType": "YulIdentifier", + "src": "11766:77:74" + }, + "nativeSrc": "11766:79:74", + "nodeType": "YulFunctionCall", + "src": "11766:79:74" + }, + "nativeSrc": "11766:79:74", + "nodeType": "YulExpressionStatement", + "src": "11766:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "11736:6:74", + "nodeType": "YulIdentifier", + "src": "11736:6:74" + }, + { + "kind": "number", + "nativeSrc": "11744:18:74", + "nodeType": "YulLiteral", + "src": "11744:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "11733:2:74", + "nodeType": "YulIdentifier", + "src": "11733:2:74" + }, + "nativeSrc": "11733:30:74", + "nodeType": "YulFunctionCall", + "src": "11733:30:74" + }, + "nativeSrc": "11730:117:74", + "nodeType": "YulIf", + "src": "11730:117:74" + }, + { + "nativeSrc": "11861:82:74", + "nodeType": "YulAssignment", + "src": "11861:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "11915:9:74", + "nodeType": "YulIdentifier", + "src": "11915:9:74" + }, + { + "name": "offset", + "nativeSrc": "11926:6:74", + "nodeType": "YulIdentifier", + "src": "11926:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "11911:3:74", + "nodeType": "YulIdentifier", + "src": "11911:3:74" + }, + "nativeSrc": "11911:22:74", + "nodeType": "YulFunctionCall", + "src": "11911:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "11935:7:74", + "nodeType": "YulIdentifier", + "src": "11935:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_calldata_ptr", + "nativeSrc": "11879:31:74", + "nodeType": "YulIdentifier", + "src": "11879:31:74" + }, + "nativeSrc": "11879:64:74", + "nodeType": "YulFunctionCall", + "src": "11879:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "11861:6:74", + "nodeType": "YulIdentifier", + "src": "11861:6:74" + }, + { + "name": "value1", + "nativeSrc": "11869:6:74", + "nodeType": "YulIdentifier", + "src": "11869:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "11963:118:74", + "nodeType": "YulBlock", + "src": "11963:118:74", + "statements": [ + { + "nativeSrc": "11978:16:74", + "nodeType": "YulVariableDeclaration", + "src": "11978:16:74", + "value": { + "kind": "number", + "nativeSrc": "11992:2:74", + "nodeType": "YulLiteral", + "src": "11992:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "11982:6:74", + "nodeType": "YulTypedName", + "src": "11982:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "12008:63:74", + "nodeType": "YulAssignment", + "src": "12008:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "12043:9:74", + "nodeType": "YulIdentifier", + "src": "12043:9:74" + }, + { + "name": "offset", + "nativeSrc": "12054:6:74", + "nodeType": "YulIdentifier", + "src": "12054:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12039:3:74", + "nodeType": "YulIdentifier", + "src": "12039:3:74" + }, + "nativeSrc": "12039:22:74", + "nodeType": "YulFunctionCall", + "src": "12039:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "12063:7:74", + "nodeType": "YulIdentifier", + "src": "12063:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nativeSrc": "12018:20:74", + "nodeType": "YulIdentifier", + "src": "12018:20:74" + }, + "nativeSrc": "12018:53:74", + "nodeType": "YulFunctionCall", + "src": "12018:53:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "12008:6:74", + "nodeType": "YulIdentifier", + "src": "12008:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_calldata_ptrt_address", + "nativeSrc": "11416:672:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "11472:9:74", + "nodeType": "YulTypedName", + "src": "11472:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "11483:7:74", + "nodeType": "YulTypedName", + "src": "11483:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "11495:6:74", + "nodeType": "YulTypedName", + "src": "11495:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "11503:6:74", + "nodeType": "YulTypedName", + "src": "11503:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "11511:6:74", + "nodeType": "YulTypedName", + "src": "11511:6:74", + "type": "" + } + ], + "src": "11416:672:74" + }, + { + "body": { + "nativeSrc": "12185:229:74", + "nodeType": "YulBlock", + "src": "12185:229:74", + "statements": [ + { + "body": { + "nativeSrc": "12290:22:74", + "nodeType": "YulBlock", + "src": "12290:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "12292:16:74", + "nodeType": "YulIdentifier", + "src": "12292:16:74" + }, + "nativeSrc": "12292:18:74", + "nodeType": "YulFunctionCall", + "src": "12292:18:74" + }, + "nativeSrc": "12292:18:74", + "nodeType": "YulExpressionStatement", + "src": "12292:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "12262:6:74", + "nodeType": "YulIdentifier", + "src": "12262:6:74" + }, + { + "kind": "number", + "nativeSrc": "12270:18:74", + "nodeType": "YulLiteral", + "src": "12270:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "12259:2:74", + "nodeType": "YulIdentifier", + "src": "12259:2:74" + }, + "nativeSrc": "12259:30:74", + "nodeType": "YulFunctionCall", + "src": "12259:30:74" + }, + "nativeSrc": "12256:56:74", + "nodeType": "YulIf", + "src": "12256:56:74" + }, + { + "nativeSrc": "12322:25:74", + "nodeType": "YulAssignment", + "src": "12322:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "12334:6:74", + "nodeType": "YulIdentifier", + "src": "12334:6:74" + }, + { + "kind": "number", + "nativeSrc": "12342:4:74", + "nodeType": "YulLiteral", + "src": "12342:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "12330:3:74", + "nodeType": "YulIdentifier", + "src": "12330:3:74" + }, + "nativeSrc": "12330:17:74", + "nodeType": "YulFunctionCall", + "src": "12330:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "12322:4:74", + "nodeType": "YulIdentifier", + "src": "12322:4:74" + } + ] + }, + { + "nativeSrc": "12384:23:74", + "nodeType": "YulAssignment", + "src": "12384:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "12396:4:74", + "nodeType": "YulIdentifier", + "src": "12396:4:74" + }, + { + "kind": "number", + "nativeSrc": "12402:4:74", + "nodeType": "YulLiteral", + "src": "12402:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12392:3:74", + "nodeType": "YulIdentifier", + "src": "12392:3:74" + }, + "nativeSrc": "12392:15:74", + "nodeType": "YulFunctionCall", + "src": "12392:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "12384:4:74", + "nodeType": "YulIdentifier", + "src": "12384:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "12094:320:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "12169:6:74", + "nodeType": "YulTypedName", + "src": "12169:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "12180:4:74", + "nodeType": "YulTypedName", + "src": "12180:4:74", + "type": "" + } + ], + "src": "12094:320:74" + }, + { + "body": { + "nativeSrc": "12546:831:74", + "nodeType": "YulBlock", + "src": "12546:831:74", + "statements": [ + { + "nativeSrc": "12556:99:74", + "nodeType": "YulAssignment", + "src": "12556:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "12647:6:74", + "nodeType": "YulIdentifier", + "src": "12647:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "12581:65:74", + "nodeType": "YulIdentifier", + "src": "12581:65:74" + }, + "nativeSrc": "12581:73:74", + "nodeType": "YulFunctionCall", + "src": "12581:73:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "12565:15:74", + "nodeType": "YulIdentifier", + "src": "12565:15:74" + }, + "nativeSrc": "12565:90:74", + "nodeType": "YulFunctionCall", + "src": "12565:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "12556:5:74", + "nodeType": "YulIdentifier", + "src": "12556:5:74" + } + ] + }, + { + "nativeSrc": "12664:16:74", + "nodeType": "YulVariableDeclaration", + "src": "12664:16:74", + "value": { + "name": "array", + "nativeSrc": "12675:5:74", + "nodeType": "YulIdentifier", + "src": "12675:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "12668:3:74", + "nodeType": "YulTypedName", + "src": "12668:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "12697:5:74", + "nodeType": "YulIdentifier", + "src": "12697:5:74" + }, + { + "name": "length", + "nativeSrc": "12704:6:74", + "nodeType": "YulIdentifier", + "src": "12704:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "12690:6:74", + "nodeType": "YulIdentifier", + "src": "12690:6:74" + }, + "nativeSrc": "12690:21:74", + "nodeType": "YulFunctionCall", + "src": "12690:21:74" + }, + "nativeSrc": "12690:21:74", + "nodeType": "YulExpressionStatement", + "src": "12690:21:74" + }, + { + "nativeSrc": "12720:23:74", + "nodeType": "YulAssignment", + "src": "12720:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "12731:5:74", + "nodeType": "YulIdentifier", + "src": "12731:5:74" + }, + { + "kind": "number", + "nativeSrc": "12738:4:74", + "nodeType": "YulLiteral", + "src": "12738:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12727:3:74", + "nodeType": "YulIdentifier", + "src": "12727:3:74" + }, + "nativeSrc": "12727:16:74", + "nodeType": "YulFunctionCall", + "src": "12727:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "12720:3:74", + "nodeType": "YulIdentifier", + "src": "12720:3:74" + } + ] + }, + { + "nativeSrc": "12753:44:74", + "nodeType": "YulVariableDeclaration", + "src": "12753:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "12771:6:74", + "nodeType": "YulIdentifier", + "src": "12771:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "12783:6:74", + "nodeType": "YulIdentifier", + "src": "12783:6:74" + }, + { + "kind": "number", + "nativeSrc": "12791:4:74", + "nodeType": "YulLiteral", + "src": "12791:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "12779:3:74", + "nodeType": "YulIdentifier", + "src": "12779:3:74" + }, + "nativeSrc": "12779:17:74", + "nodeType": "YulFunctionCall", + "src": "12779:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12767:3:74", + "nodeType": "YulIdentifier", + "src": "12767:3:74" + }, + "nativeSrc": "12767:30:74", + "nodeType": "YulFunctionCall", + "src": "12767:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "12757:6:74", + "nodeType": "YulTypedName", + "src": "12757:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "12825:103:74", + "nodeType": "YulBlock", + "src": "12825:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "12839:77:74", + "nodeType": "YulIdentifier", + "src": "12839:77:74" + }, + "nativeSrc": "12839:79:74", + "nodeType": "YulFunctionCall", + "src": "12839:79:74" + }, + "nativeSrc": "12839:79:74", + "nodeType": "YulExpressionStatement", + "src": "12839:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "12812:6:74", + "nodeType": "YulIdentifier", + "src": "12812:6:74" + }, + { + "name": "end", + "nativeSrc": "12820:3:74", + "nodeType": "YulIdentifier", + "src": "12820:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "12809:2:74", + "nodeType": "YulIdentifier", + "src": "12809:2:74" + }, + "nativeSrc": "12809:15:74", + "nodeType": "YulFunctionCall", + "src": "12809:15:74" + }, + "nativeSrc": "12806:122:74", + "nodeType": "YulIf", + "src": "12806:122:74" + }, + { + "body": { + "nativeSrc": "13013:358:74", + "nodeType": "YulBlock", + "src": "13013:358:74", + "statements": [ + { + "nativeSrc": "13028:36:74", + "nodeType": "YulVariableDeclaration", + "src": "13028:36:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "13060:3:74", + "nodeType": "YulIdentifier", + "src": "13060:3:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "13047:12:74", + "nodeType": "YulIdentifier", + "src": "13047:12:74" + }, + "nativeSrc": "13047:17:74", + "nodeType": "YulFunctionCall", + "src": "13047:17:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "13032:11:74", + "nodeType": "YulTypedName", + "src": "13032:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "13116:83:74", + "nodeType": "YulBlock", + "src": "13116:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "13118:77:74", + "nodeType": "YulIdentifier", + "src": "13118:77:74" + }, + "nativeSrc": "13118:79:74", + "nodeType": "YulFunctionCall", + "src": "13118:79:74" + }, + "nativeSrc": "13118:79:74", + "nodeType": "YulExpressionStatement", + "src": "13118:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "13083:11:74", + "nodeType": "YulIdentifier", + "src": "13083:11:74" + }, + { + "kind": "number", + "nativeSrc": "13096:18:74", + "nodeType": "YulLiteral", + "src": "13096:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "13080:2:74", + "nodeType": "YulIdentifier", + "src": "13080:2:74" + }, + "nativeSrc": "13080:35:74", + "nodeType": "YulFunctionCall", + "src": "13080:35:74" + }, + "nativeSrc": "13077:122:74", + "nodeType": "YulIf", + "src": "13077:122:74" + }, + { + "nativeSrc": "13212:42:74", + "nodeType": "YulVariableDeclaration", + "src": "13212:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "13234:6:74", + "nodeType": "YulIdentifier", + "src": "13234:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "13242:11:74", + "nodeType": "YulIdentifier", + "src": "13242:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13230:3:74", + "nodeType": "YulIdentifier", + "src": "13230:3:74" + }, + "nativeSrc": "13230:24:74", + "nodeType": "YulFunctionCall", + "src": "13230:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "13216:10:74", + "nodeType": "YulTypedName", + "src": "13216:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "13275:3:74", + "nodeType": "YulIdentifier", + "src": "13275:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "13310:10:74", + "nodeType": "YulIdentifier", + "src": "13310:10:74" + }, + { + "name": "end", + "nativeSrc": "13322:3:74", + "nodeType": "YulIdentifier", + "src": "13322:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "13280:29:74", + "nodeType": "YulIdentifier", + "src": "13280:29:74" + }, + "nativeSrc": "13280:46:74", + "nodeType": "YulFunctionCall", + "src": "13280:46:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "13268:6:74", + "nodeType": "YulIdentifier", + "src": "13268:6:74" + }, + "nativeSrc": "13268:59:74", + "nodeType": "YulFunctionCall", + "src": "13268:59:74" + }, + "nativeSrc": "13268:59:74", + "nodeType": "YulExpressionStatement", + "src": "13268:59:74" + }, + { + "nativeSrc": "13340:21:74", + "nodeType": "YulAssignment", + "src": "13340:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "13351:3:74", + "nodeType": "YulIdentifier", + "src": "13351:3:74" + }, + { + "kind": "number", + "nativeSrc": "13356:4:74", + "nodeType": "YulLiteral", + "src": "13356:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13347:3:74", + "nodeType": "YulIdentifier", + "src": "13347:3:74" + }, + "nativeSrc": "13347:14:74", + "nodeType": "YulFunctionCall", + "src": "13347:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "13340:3:74", + "nodeType": "YulIdentifier", + "src": "13340:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "12966:3:74", + "nodeType": "YulIdentifier", + "src": "12966:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "12971:6:74", + "nodeType": "YulIdentifier", + "src": "12971:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "12963:2:74", + "nodeType": "YulIdentifier", + "src": "12963:2:74" + }, + "nativeSrc": "12963:15:74", + "nodeType": "YulFunctionCall", + "src": "12963:15:74" + }, + "nativeSrc": "12937:434:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "12979:25:74", + "nodeType": "YulBlock", + "src": "12979:25:74", + "statements": [ + { + "nativeSrc": "12981:21:74", + "nodeType": "YulAssignment", + "src": "12981:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "12992:3:74", + "nodeType": "YulIdentifier", + "src": "12992:3:74" + }, + { + "kind": "number", + "nativeSrc": "12997:4:74", + "nodeType": "YulLiteral", + "src": "12997:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "12988:3:74", + "nodeType": "YulIdentifier", + "src": "12988:3:74" + }, + "nativeSrc": "12988:14:74", + "nodeType": "YulFunctionCall", + "src": "12988:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "12981:3:74", + "nodeType": "YulIdentifier", + "src": "12981:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "12941:21:74", + "nodeType": "YulBlock", + "src": "12941:21:74", + "statements": [ + { + "nativeSrc": "12943:17:74", + "nodeType": "YulVariableDeclaration", + "src": "12943:17:74", + "value": { + "name": "offset", + "nativeSrc": "12954:6:74", + "nodeType": "YulIdentifier", + "src": "12954:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "12947:3:74", + "nodeType": "YulTypedName", + "src": "12947:3:74", + "type": "" + } + ] + } + ] + }, + "src": "12937:434:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "12435:942:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "12516:6:74", + "nodeType": "YulTypedName", + "src": "12516:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "12524:6:74", + "nodeType": "YulTypedName", + "src": "12524:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "12532:3:74", + "nodeType": "YulTypedName", + "src": "12532:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "12540:5:74", + "nodeType": "YulTypedName", + "src": "12540:5:74", + "type": "" + } + ], + "src": "12435:942:74" + }, + { + "body": { + "nativeSrc": "13484:302:74", + "nodeType": "YulBlock", + "src": "13484:302:74", + "statements": [ + { + "body": { + "nativeSrc": "13533:83:74", + "nodeType": "YulBlock", + "src": "13533:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "13535:77:74", + "nodeType": "YulIdentifier", + "src": "13535:77:74" + }, + "nativeSrc": "13535:79:74", + "nodeType": "YulFunctionCall", + "src": "13535:79:74" + }, + "nativeSrc": "13535:79:74", + "nodeType": "YulExpressionStatement", + "src": "13535:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "13512:6:74", + "nodeType": "YulIdentifier", + "src": "13512:6:74" + }, + { + "kind": "number", + "nativeSrc": "13520:4:74", + "nodeType": "YulLiteral", + "src": "13520:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13508:3:74", + "nodeType": "YulIdentifier", + "src": "13508:3:74" + }, + "nativeSrc": "13508:17:74", + "nodeType": "YulFunctionCall", + "src": "13508:17:74" + }, + { + "name": "end", + "nativeSrc": "13527:3:74", + "nodeType": "YulIdentifier", + "src": "13527:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "13504:3:74", + "nodeType": "YulIdentifier", + "src": "13504:3:74" + }, + "nativeSrc": "13504:27:74", + "nodeType": "YulFunctionCall", + "src": "13504:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "13497:6:74", + "nodeType": "YulIdentifier", + "src": "13497:6:74" + }, + "nativeSrc": "13497:35:74", + "nodeType": "YulFunctionCall", + "src": "13497:35:74" + }, + "nativeSrc": "13494:122:74", + "nodeType": "YulIf", + "src": "13494:122:74" + }, + { + "nativeSrc": "13625:34:74", + "nodeType": "YulVariableDeclaration", + "src": "13625:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "13652:6:74", + "nodeType": "YulIdentifier", + "src": "13652:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "13639:12:74", + "nodeType": "YulIdentifier", + "src": "13639:12:74" + }, + "nativeSrc": "13639:20:74", + "nodeType": "YulFunctionCall", + "src": "13639:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "13629:6:74", + "nodeType": "YulTypedName", + "src": "13629:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "13668:112:74", + "nodeType": "YulAssignment", + "src": "13668:112:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "13753:6:74", + "nodeType": "YulIdentifier", + "src": "13753:6:74" + }, + { + "kind": "number", + "nativeSrc": "13761:4:74", + "nodeType": "YulLiteral", + "src": "13761:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "13749:3:74", + "nodeType": "YulIdentifier", + "src": "13749:3:74" + }, + "nativeSrc": "13749:17:74", + "nodeType": "YulFunctionCall", + "src": "13749:17:74" + }, + { + "name": "length", + "nativeSrc": "13768:6:74", + "nodeType": "YulIdentifier", + "src": "13768:6:74" + }, + { + "name": "end", + "nativeSrc": "13776:3:74", + "nodeType": "YulIdentifier", + "src": "13776:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "13677:71:74", + "nodeType": "YulIdentifier", + "src": "13677:71:74" + }, + "nativeSrc": "13677:103:74", + "nodeType": "YulFunctionCall", + "src": "13677:103:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "13668:5:74", + "nodeType": "YulIdentifier", + "src": "13668:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "13398:388:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "13462:6:74", + "nodeType": "YulTypedName", + "src": "13462:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "13470:3:74", + "nodeType": "YulTypedName", + "src": "13470:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "13478:5:74", + "nodeType": "YulTypedName", + "src": "13478:5:74", + "type": "" + } + ], + "src": "13398:388:74" + }, + { + "body": { + "nativeSrc": "13918:754:74", + "nodeType": "YulBlock", + "src": "13918:754:74", + "statements": [ + { + "body": { + "nativeSrc": "13964:83:74", + "nodeType": "YulBlock", + "src": "13964:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "13966:77:74", + "nodeType": "YulIdentifier", + "src": "13966:77:74" + }, + "nativeSrc": "13966:79:74", + "nodeType": "YulFunctionCall", + "src": "13966:79:74" + }, + "nativeSrc": "13966:79:74", + "nodeType": "YulExpressionStatement", + "src": "13966:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "13939:7:74", + "nodeType": "YulIdentifier", + "src": "13939:7:74" + }, + { + "name": "headStart", + "nativeSrc": "13948:9:74", + "nodeType": "YulIdentifier", + "src": "13948:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "13935:3:74", + "nodeType": "YulIdentifier", + "src": "13935:3:74" + }, + "nativeSrc": "13935:23:74", + "nodeType": "YulFunctionCall", + "src": "13935:23:74" + }, + { + "kind": "number", + "nativeSrc": "13960:2:74", + "nodeType": "YulLiteral", + "src": "13960:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "13931:3:74", + "nodeType": "YulIdentifier", + "src": "13931:3:74" + }, + "nativeSrc": "13931:32:74", + "nodeType": "YulFunctionCall", + "src": "13931:32:74" + }, + "nativeSrc": "13928:119:74", + "nodeType": "YulIf", + "src": "13928:119:74" + }, + { + "nativeSrc": "14057:311:74", + "nodeType": "YulBlock", + "src": "14057:311:74", + "statements": [ + { + "nativeSrc": "14072:45:74", + "nodeType": "YulVariableDeclaration", + "src": "14072:45:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14103:9:74", + "nodeType": "YulIdentifier", + "src": "14103:9:74" + }, + { + "kind": "number", + "nativeSrc": "14114:1:74", + "nodeType": "YulLiteral", + "src": "14114:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14099:3:74", + "nodeType": "YulIdentifier", + "src": "14099:3:74" + }, + "nativeSrc": "14099:17:74", + "nodeType": "YulFunctionCall", + "src": "14099:17:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "14086:12:74", + "nodeType": "YulIdentifier", + "src": "14086:12:74" + }, + "nativeSrc": "14086:31:74", + "nodeType": "YulFunctionCall", + "src": "14086:31:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "14076:6:74", + "nodeType": "YulTypedName", + "src": "14076:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "14164:83:74", + "nodeType": "YulBlock", + "src": "14164:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "14166:77:74", + "nodeType": "YulIdentifier", + "src": "14166:77:74" + }, + "nativeSrc": "14166:79:74", + "nodeType": "YulFunctionCall", + "src": "14166:79:74" + }, + "nativeSrc": "14166:79:74", + "nodeType": "YulExpressionStatement", + "src": "14166:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "14136:6:74", + "nodeType": "YulIdentifier", + "src": "14136:6:74" + }, + { + "kind": "number", + "nativeSrc": "14144:18:74", + "nodeType": "YulLiteral", + "src": "14144:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14133:2:74", + "nodeType": "YulIdentifier", + "src": "14133:2:74" + }, + "nativeSrc": "14133:30:74", + "nodeType": "YulFunctionCall", + "src": "14133:30:74" + }, + "nativeSrc": "14130:117:74", + "nodeType": "YulIf", + "src": "14130:117:74" + }, + { + "nativeSrc": "14261:97:74", + "nodeType": "YulAssignment", + "src": "14261:97:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14330:9:74", + "nodeType": "YulIdentifier", + "src": "14330:9:74" + }, + { + "name": "offset", + "nativeSrc": "14341:6:74", + "nodeType": "YulIdentifier", + "src": "14341:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14326:3:74", + "nodeType": "YulIdentifier", + "src": "14326:3:74" + }, + "nativeSrc": "14326:22:74", + "nodeType": "YulFunctionCall", + "src": "14326:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "14350:7:74", + "nodeType": "YulIdentifier", + "src": "14350:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "14271:54:74", + "nodeType": "YulIdentifier", + "src": "14271:54:74" + }, + "nativeSrc": "14271:87:74", + "nodeType": "YulFunctionCall", + "src": "14271:87:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "14261:6:74", + "nodeType": "YulIdentifier", + "src": "14261:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "14378:287:74", + "nodeType": "YulBlock", + "src": "14378:287:74", + "statements": [ + { + "nativeSrc": "14393:46:74", + "nodeType": "YulVariableDeclaration", + "src": "14393:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14424:9:74", + "nodeType": "YulIdentifier", + "src": "14424:9:74" + }, + { + "kind": "number", + "nativeSrc": "14435:2:74", + "nodeType": "YulLiteral", + "src": "14435:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14420:3:74", + "nodeType": "YulIdentifier", + "src": "14420:3:74" + }, + "nativeSrc": "14420:18:74", + "nodeType": "YulFunctionCall", + "src": "14420:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "14407:12:74", + "nodeType": "YulIdentifier", + "src": "14407:12:74" + }, + "nativeSrc": "14407:32:74", + "nodeType": "YulFunctionCall", + "src": "14407:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "14397:6:74", + "nodeType": "YulTypedName", + "src": "14397:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "14486:83:74", + "nodeType": "YulBlock", + "src": "14486:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "14488:77:74", + "nodeType": "YulIdentifier", + "src": "14488:77:74" + }, + "nativeSrc": "14488:79:74", + "nodeType": "YulFunctionCall", + "src": "14488:79:74" + }, + "nativeSrc": "14488:79:74", + "nodeType": "YulExpressionStatement", + "src": "14488:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "14458:6:74", + "nodeType": "YulIdentifier", + "src": "14458:6:74" + }, + { + "kind": "number", + "nativeSrc": "14466:18:74", + "nodeType": "YulLiteral", + "src": "14466:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "14455:2:74", + "nodeType": "YulIdentifier", + "src": "14455:2:74" + }, + "nativeSrc": "14455:30:74", + "nodeType": "YulFunctionCall", + "src": "14455:30:74" + }, + "nativeSrc": "14452:117:74", + "nodeType": "YulIf", + "src": "14452:117:74" + }, + { + "nativeSrc": "14583:72:74", + "nodeType": "YulAssignment", + "src": "14583:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14627:9:74", + "nodeType": "YulIdentifier", + "src": "14627:9:74" + }, + { + "name": "offset", + "nativeSrc": "14638:6:74", + "nodeType": "YulIdentifier", + "src": "14638:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14623:3:74", + "nodeType": "YulIdentifier", + "src": "14623:3:74" + }, + "nativeSrc": "14623:22:74", + "nodeType": "YulFunctionCall", + "src": "14623:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "14647:7:74", + "nodeType": "YulIdentifier", + "src": "14647:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "14593:29:74", + "nodeType": "YulIdentifier", + "src": "14593:29:74" + }, + "nativeSrc": "14593:62:74", + "nodeType": "YulFunctionCall", + "src": "14593:62:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "14583:6:74", + "nodeType": "YulIdentifier", + "src": "14583:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptr", + "nativeSrc": "13792:880:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "13880:9:74", + "nodeType": "YulTypedName", + "src": "13880:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "13891:7:74", + "nodeType": "YulTypedName", + "src": "13891:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "13903:6:74", + "nodeType": "YulTypedName", + "src": "13903:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "13911:6:74", + "nodeType": "YulTypedName", + "src": "13911:6:74", + "type": "" + } + ], + "src": "13792:880:74" + }, + { + "body": { + "nativeSrc": "14776:124:74", + "nodeType": "YulBlock", + "src": "14776:124:74", + "statements": [ + { + "nativeSrc": "14786:26:74", + "nodeType": "YulAssignment", + "src": "14786:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14798:9:74", + "nodeType": "YulIdentifier", + "src": "14798:9:74" + }, + { + "kind": "number", + "nativeSrc": "14809:2:74", + "nodeType": "YulLiteral", + "src": "14809:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14794:3:74", + "nodeType": "YulIdentifier", + "src": "14794:3:74" + }, + "nativeSrc": "14794:18:74", + "nodeType": "YulFunctionCall", + "src": "14794:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "14786:4:74", + "nodeType": "YulIdentifier", + "src": "14786:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "14866:6:74", + "nodeType": "YulIdentifier", + "src": "14866:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "14879:9:74", + "nodeType": "YulIdentifier", + "src": "14879:9:74" + }, + { + "kind": "number", + "nativeSrc": "14890:1:74", + "nodeType": "YulLiteral", + "src": "14890:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "14875:3:74", + "nodeType": "YulIdentifier", + "src": "14875:3:74" + }, + "nativeSrc": "14875:17:74", + "nodeType": "YulFunctionCall", + "src": "14875:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "14822:43:74", + "nodeType": "YulIdentifier", + "src": "14822:43:74" + }, + "nativeSrc": "14822:71:74", + "nodeType": "YulFunctionCall", + "src": "14822:71:74" + }, + "nativeSrc": "14822:71:74", + "nodeType": "YulExpressionStatement", + "src": "14822:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nativeSrc": "14678:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "14748:9:74", + "nodeType": "YulTypedName", + "src": "14748:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "14760:6:74", + "nodeType": "YulTypedName", + "src": "14760:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "14771:4:74", + "nodeType": "YulTypedName", + "src": "14771:4:74", + "type": "" + } + ], + "src": "14678:222:74" + }, + { + "body": { + "nativeSrc": "15009:73:74", + "nodeType": "YulBlock", + "src": "15009:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15026:3:74", + "nodeType": "YulIdentifier", + "src": "15026:3:74" + }, + { + "name": "length", + "nativeSrc": "15031:6:74", + "nodeType": "YulIdentifier", + "src": "15031:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15019:6:74", + "nodeType": "YulIdentifier", + "src": "15019:6:74" + }, + "nativeSrc": "15019:19:74", + "nodeType": "YulFunctionCall", + "src": "15019:19:74" + }, + "nativeSrc": "15019:19:74", + "nodeType": "YulExpressionStatement", + "src": "15019:19:74" + }, + { + "nativeSrc": "15047:29:74", + "nodeType": "YulAssignment", + "src": "15047:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15066:3:74", + "nodeType": "YulIdentifier", + "src": "15066:3:74" + }, + { + "kind": "number", + "nativeSrc": "15071:4:74", + "nodeType": "YulLiteral", + "src": "15071:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15062:3:74", + "nodeType": "YulIdentifier", + "src": "15062:3:74" + }, + "nativeSrc": "15062:14:74", + "nodeType": "YulFunctionCall", + "src": "15062:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "15047:11:74", + "nodeType": "YulIdentifier", + "src": "15047:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "14906:176:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "14981:3:74", + "nodeType": "YulTypedName", + "src": "14981:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "14986:6:74", + "nodeType": "YulTypedName", + "src": "14986:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "14997:11:74", + "nodeType": "YulTypedName", + "src": "14997:11:74", + "type": "" + } + ], + "src": "14906:176:74" + }, + { + "body": { + "nativeSrc": "15218:222:74", + "nodeType": "YulBlock", + "src": "15218:222:74", + "statements": [ + { + "nativeSrc": "15228:85:74", + "nodeType": "YulAssignment", + "src": "15228:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15301:3:74", + "nodeType": "YulIdentifier", + "src": "15301:3:74" + }, + { + "name": "length", + "nativeSrc": "15306:6:74", + "nodeType": "YulIdentifier", + "src": "15306:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "15235:65:74", + "nodeType": "YulIdentifier", + "src": "15235:65:74" + }, + "nativeSrc": "15235:78:74", + "nodeType": "YulFunctionCall", + "src": "15235:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "15228:3:74", + "nodeType": "YulIdentifier", + "src": "15228:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "15360:5:74", + "nodeType": "YulIdentifier", + "src": "15360:5:74" + }, + { + "name": "pos", + "nativeSrc": "15367:3:74", + "nodeType": "YulIdentifier", + "src": "15367:3:74" + }, + { + "name": "length", + "nativeSrc": "15372:6:74", + "nodeType": "YulIdentifier", + "src": "15372:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "15323:36:74", + "nodeType": "YulIdentifier", + "src": "15323:36:74" + }, + "nativeSrc": "15323:56:74", + "nodeType": "YulFunctionCall", + "src": "15323:56:74" + }, + "nativeSrc": "15323:56:74", + "nodeType": "YulExpressionStatement", + "src": "15323:56:74" + }, + { + "nativeSrc": "15388:46:74", + "nodeType": "YulAssignment", + "src": "15388:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "15399:3:74", + "nodeType": "YulIdentifier", + "src": "15399:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "15426:6:74", + "nodeType": "YulIdentifier", + "src": "15426:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "15404:21:74", + "nodeType": "YulIdentifier", + "src": "15404:21:74" + }, + "nativeSrc": "15404:29:74", + "nodeType": "YulFunctionCall", + "src": "15404:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15395:3:74", + "nodeType": "YulIdentifier", + "src": "15395:3:74" + }, + "nativeSrc": "15395:39:74", + "nodeType": "YulFunctionCall", + "src": "15395:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "15388:3:74", + "nodeType": "YulIdentifier", + "src": "15388:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "15110:330:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "15191:5:74", + "nodeType": "YulTypedName", + "src": "15191:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "15198:6:74", + "nodeType": "YulTypedName", + "src": "15198:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "15206:3:74", + "nodeType": "YulTypedName", + "src": "15206:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "15214:3:74", + "nodeType": "YulTypedName", + "src": "15214:3:74", + "type": "" + } + ], + "src": "15110:330:74" + }, + { + "body": { + "nativeSrc": "15580:211:74", + "nodeType": "YulBlock", + "src": "15580:211:74", + "statements": [ + { + "nativeSrc": "15590:26:74", + "nodeType": "YulAssignment", + "src": "15590:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15602:9:74", + "nodeType": "YulIdentifier", + "src": "15602:9:74" + }, + { + "kind": "number", + "nativeSrc": "15613:2:74", + "nodeType": "YulLiteral", + "src": "15613:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15598:3:74", + "nodeType": "YulIdentifier", + "src": "15598:3:74" + }, + "nativeSrc": "15598:18:74", + "nodeType": "YulFunctionCall", + "src": "15598:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15590:4:74", + "nodeType": "YulIdentifier", + "src": "15590:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "15637:9:74", + "nodeType": "YulIdentifier", + "src": "15637:9:74" + }, + { + "kind": "number", + "nativeSrc": "15648:1:74", + "nodeType": "YulLiteral", + "src": "15648:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "15633:3:74", + "nodeType": "YulIdentifier", + "src": "15633:3:74" + }, + "nativeSrc": "15633:17:74", + "nodeType": "YulFunctionCall", + "src": "15633:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "15656:4:74", + "nodeType": "YulIdentifier", + "src": "15656:4:74" + }, + { + "name": "headStart", + "nativeSrc": "15662:9:74", + "nodeType": "YulIdentifier", + "src": "15662:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "15652:3:74", + "nodeType": "YulIdentifier", + "src": "15652:3:74" + }, + "nativeSrc": "15652:20:74", + "nodeType": "YulFunctionCall", + "src": "15652:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15626:6:74", + "nodeType": "YulIdentifier", + "src": "15626:6:74" + }, + "nativeSrc": "15626:47:74", + "nodeType": "YulFunctionCall", + "src": "15626:47:74" + }, + "nativeSrc": "15626:47:74", + "nodeType": "YulExpressionStatement", + "src": "15626:47:74" + }, + { + "nativeSrc": "15682:102:74", + "nodeType": "YulAssignment", + "src": "15682:102:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "15762:6:74", + "nodeType": "YulIdentifier", + "src": "15762:6:74" + }, + { + "name": "value1", + "nativeSrc": "15770:6:74", + "nodeType": "YulIdentifier", + "src": "15770:6:74" + }, + { + "name": "tail", + "nativeSrc": "15779:4:74", + "nodeType": "YulIdentifier", + "src": "15779:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "15690:71:74", + "nodeType": "YulIdentifier", + "src": "15690:71:74" + }, + "nativeSrc": "15690:94:74", + "nodeType": "YulFunctionCall", + "src": "15690:94:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "15682:4:74", + "nodeType": "YulIdentifier", + "src": "15682:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "15446:345:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "15544:9:74", + "nodeType": "YulTypedName", + "src": "15544:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "15556:6:74", + "nodeType": "YulTypedName", + "src": "15556:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "15564:6:74", + "nodeType": "YulTypedName", + "src": "15564:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "15575:4:74", + "nodeType": "YulTypedName", + "src": "15575:4:74", + "type": "" + } + ], + "src": "15446:345:74" + }, + { + "body": { + "nativeSrc": "15891:338:74", + "nodeType": "YulBlock", + "src": "15891:338:74", + "statements": [ + { + "nativeSrc": "15901:74:74", + "nodeType": "YulAssignment", + "src": "15901:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "15967:6:74", + "nodeType": "YulIdentifier", + "src": "15967:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nativeSrc": "15926:40:74", + "nodeType": "YulIdentifier", + "src": "15926:40:74" + }, + "nativeSrc": "15926:48:74", + "nodeType": "YulFunctionCall", + "src": "15926:48:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "15910:15:74", + "nodeType": "YulIdentifier", + "src": "15910:15:74" + }, + "nativeSrc": "15910:65:74", + "nodeType": "YulFunctionCall", + "src": "15910:65:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "15901:5:74", + "nodeType": "YulIdentifier", + "src": "15901:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "15991:5:74", + "nodeType": "YulIdentifier", + "src": "15991:5:74" + }, + { + "name": "length", + "nativeSrc": "15998:6:74", + "nodeType": "YulIdentifier", + "src": "15998:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "15984:6:74", + "nodeType": "YulIdentifier", + "src": "15984:6:74" + }, + "nativeSrc": "15984:21:74", + "nodeType": "YulFunctionCall", + "src": "15984:21:74" + }, + "nativeSrc": "15984:21:74", + "nodeType": "YulExpressionStatement", + "src": "15984:21:74" + }, + { + "nativeSrc": "16014:27:74", + "nodeType": "YulVariableDeclaration", + "src": "16014:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "16029:5:74", + "nodeType": "YulIdentifier", + "src": "16029:5:74" + }, + { + "kind": "number", + "nativeSrc": "16036:4:74", + "nodeType": "YulLiteral", + "src": "16036:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16025:3:74", + "nodeType": "YulIdentifier", + "src": "16025:3:74" + }, + "nativeSrc": "16025:16:74", + "nodeType": "YulFunctionCall", + "src": "16025:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "16018:3:74", + "nodeType": "YulTypedName", + "src": "16018:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "16079:83:74", + "nodeType": "YulBlock", + "src": "16079:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "16081:77:74", + "nodeType": "YulIdentifier", + "src": "16081:77:74" + }, + "nativeSrc": "16081:79:74", + "nodeType": "YulFunctionCall", + "src": "16081:79:74" + }, + "nativeSrc": "16081:79:74", + "nodeType": "YulExpressionStatement", + "src": "16081:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "16060:3:74", + "nodeType": "YulIdentifier", + "src": "16060:3:74" + }, + { + "name": "length", + "nativeSrc": "16065:6:74", + "nodeType": "YulIdentifier", + "src": "16065:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16056:3:74", + "nodeType": "YulIdentifier", + "src": "16056:3:74" + }, + "nativeSrc": "16056:16:74", + "nodeType": "YulFunctionCall", + "src": "16056:16:74" + }, + { + "name": "end", + "nativeSrc": "16074:3:74", + "nodeType": "YulIdentifier", + "src": "16074:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "16053:2:74", + "nodeType": "YulIdentifier", + "src": "16053:2:74" + }, + "nativeSrc": "16053:25:74", + "nodeType": "YulFunctionCall", + "src": "16053:25:74" + }, + "nativeSrc": "16050:112:74", + "nodeType": "YulIf", + "src": "16050:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "16206:3:74", + "nodeType": "YulIdentifier", + "src": "16206:3:74" + }, + { + "name": "dst", + "nativeSrc": "16211:3:74", + "nodeType": "YulIdentifier", + "src": "16211:3:74" + }, + { + "name": "length", + "nativeSrc": "16216:6:74", + "nodeType": "YulIdentifier", + "src": "16216:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "16171:34:74", + "nodeType": "YulIdentifier", + "src": "16171:34:74" + }, + "nativeSrc": "16171:52:74", + "nodeType": "YulFunctionCall", + "src": "16171:52:74" + }, + "nativeSrc": "16171:52:74", + "nodeType": "YulExpressionStatement", + "src": "16171:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "15797:432:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "15864:3:74", + "nodeType": "YulTypedName", + "src": "15864:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "15869:6:74", + "nodeType": "YulTypedName", + "src": "15869:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "15877:3:74", + "nodeType": "YulTypedName", + "src": "15877:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "15885:5:74", + "nodeType": "YulTypedName", + "src": "15885:5:74", + "type": "" + } + ], + "src": "15797:432:74" + }, + { + "body": { + "nativeSrc": "16320:281:74", + "nodeType": "YulBlock", + "src": "16320:281:74", + "statements": [ + { + "body": { + "nativeSrc": "16369:83:74", + "nodeType": "YulBlock", + "src": "16369:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "16371:77:74", + "nodeType": "YulIdentifier", + "src": "16371:77:74" + }, + "nativeSrc": "16371:79:74", + "nodeType": "YulFunctionCall", + "src": "16371:79:74" + }, + "nativeSrc": "16371:79:74", + "nodeType": "YulExpressionStatement", + "src": "16371:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16348:6:74", + "nodeType": "YulIdentifier", + "src": "16348:6:74" + }, + { + "kind": "number", + "nativeSrc": "16356:4:74", + "nodeType": "YulLiteral", + "src": "16356:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16344:3:74", + "nodeType": "YulIdentifier", + "src": "16344:3:74" + }, + "nativeSrc": "16344:17:74", + "nodeType": "YulFunctionCall", + "src": "16344:17:74" + }, + { + "name": "end", + "nativeSrc": "16363:3:74", + "nodeType": "YulIdentifier", + "src": "16363:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "16340:3:74", + "nodeType": "YulIdentifier", + "src": "16340:3:74" + }, + "nativeSrc": "16340:27:74", + "nodeType": "YulFunctionCall", + "src": "16340:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "16333:6:74", + "nodeType": "YulIdentifier", + "src": "16333:6:74" + }, + "nativeSrc": "16333:35:74", + "nodeType": "YulFunctionCall", + "src": "16333:35:74" + }, + "nativeSrc": "16330:122:74", + "nodeType": "YulIf", + "src": "16330:122:74" + }, + { + "nativeSrc": "16461:27:74", + "nodeType": "YulVariableDeclaration", + "src": "16461:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16481:6:74", + "nodeType": "YulIdentifier", + "src": "16481:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "16475:5:74", + "nodeType": "YulIdentifier", + "src": "16475:5:74" + }, + "nativeSrc": "16475:13:74", + "nodeType": "YulFunctionCall", + "src": "16475:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "16465:6:74", + "nodeType": "YulTypedName", + "src": "16465:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "16497:98:74", + "nodeType": "YulAssignment", + "src": "16497:98:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16568:6:74", + "nodeType": "YulIdentifier", + "src": "16568:6:74" + }, + { + "kind": "number", + "nativeSrc": "16576:4:74", + "nodeType": "YulLiteral", + "src": "16576:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16564:3:74", + "nodeType": "YulIdentifier", + "src": "16564:3:74" + }, + "nativeSrc": "16564:17:74", + "nodeType": "YulFunctionCall", + "src": "16564:17:74" + }, + { + "name": "length", + "nativeSrc": "16583:6:74", + "nodeType": "YulIdentifier", + "src": "16583:6:74" + }, + { + "name": "end", + "nativeSrc": "16591:3:74", + "nodeType": "YulIdentifier", + "src": "16591:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "16506:57:74", + "nodeType": "YulIdentifier", + "src": "16506:57:74" + }, + "nativeSrc": "16506:89:74", + "nodeType": "YulFunctionCall", + "src": "16506:89:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "16497:5:74", + "nodeType": "YulIdentifier", + "src": "16497:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "16248:353:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "16298:6:74", + "nodeType": "YulTypedName", + "src": "16298:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "16306:3:74", + "nodeType": "YulTypedName", + "src": "16306:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "16314:5:74", + "nodeType": "YulTypedName", + "src": "16314:5:74", + "type": "" + } + ], + "src": "16248:353:74" + }, + { + "body": { + "nativeSrc": "16693:436:74", + "nodeType": "YulBlock", + "src": "16693:436:74", + "statements": [ + { + "body": { + "nativeSrc": "16739:83:74", + "nodeType": "YulBlock", + "src": "16739:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "16741:77:74", + "nodeType": "YulIdentifier", + "src": "16741:77:74" + }, + "nativeSrc": "16741:79:74", + "nodeType": "YulFunctionCall", + "src": "16741:79:74" + }, + "nativeSrc": "16741:79:74", + "nodeType": "YulExpressionStatement", + "src": "16741:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "16714:7:74", + "nodeType": "YulIdentifier", + "src": "16714:7:74" + }, + { + "name": "headStart", + "nativeSrc": "16723:9:74", + "nodeType": "YulIdentifier", + "src": "16723:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "16710:3:74", + "nodeType": "YulIdentifier", + "src": "16710:3:74" + }, + "nativeSrc": "16710:23:74", + "nodeType": "YulFunctionCall", + "src": "16710:23:74" + }, + { + "kind": "number", + "nativeSrc": "16735:2:74", + "nodeType": "YulLiteral", + "src": "16735:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "16706:3:74", + "nodeType": "YulIdentifier", + "src": "16706:3:74" + }, + "nativeSrc": "16706:32:74", + "nodeType": "YulFunctionCall", + "src": "16706:32:74" + }, + "nativeSrc": "16703:119:74", + "nodeType": "YulIf", + "src": "16703:119:74" + }, + { + "nativeSrc": "16832:290:74", + "nodeType": "YulBlock", + "src": "16832:290:74", + "statements": [ + { + "nativeSrc": "16847:38:74", + "nodeType": "YulVariableDeclaration", + "src": "16847:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "16871:9:74", + "nodeType": "YulIdentifier", + "src": "16871:9:74" + }, + { + "kind": "number", + "nativeSrc": "16882:1:74", + "nodeType": "YulLiteral", + "src": "16882:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "16867:3:74", + "nodeType": "YulIdentifier", + "src": "16867:3:74" + }, + "nativeSrc": "16867:17:74", + "nodeType": "YulFunctionCall", + "src": "16867:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "16861:5:74", + "nodeType": "YulIdentifier", + "src": "16861:5:74" + }, + "nativeSrc": "16861:24:74", + "nodeType": "YulFunctionCall", + "src": "16861:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "16851:6:74", + "nodeType": "YulTypedName", + "src": "16851:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "16932:83:74", + "nodeType": "YulBlock", + "src": "16932:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "16934:77:74", + "nodeType": "YulIdentifier", + "src": "16934:77:74" + }, + "nativeSrc": "16934:79:74", + "nodeType": "YulFunctionCall", + "src": "16934:79:74" + }, + "nativeSrc": "16934:79:74", + "nodeType": "YulExpressionStatement", + "src": "16934:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "16904:6:74", + "nodeType": "YulIdentifier", + "src": "16904:6:74" + }, + { + "kind": "number", + "nativeSrc": "16912:18:74", + "nodeType": "YulLiteral", + "src": "16912:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "16901:2:74", + "nodeType": "YulIdentifier", + "src": "16901:2:74" + }, + "nativeSrc": "16901:30:74", + "nodeType": "YulFunctionCall", + "src": "16901:30:74" + }, + "nativeSrc": "16898:117:74", + "nodeType": "YulIf", + "src": "16898:117:74" + }, + { + "nativeSrc": "17029:83:74", + "nodeType": "YulAssignment", + "src": "17029:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17084:9:74", + "nodeType": "YulIdentifier", + "src": "17084:9:74" + }, + { + "name": "offset", + "nativeSrc": "17095:6:74", + "nodeType": "YulIdentifier", + "src": "17095:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17080:3:74", + "nodeType": "YulIdentifier", + "src": "17080:3:74" + }, + "nativeSrc": "17080:22:74", + "nodeType": "YulFunctionCall", + "src": "17080:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "17104:7:74", + "nodeType": "YulIdentifier", + "src": "17104:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "17039:40:74", + "nodeType": "YulIdentifier", + "src": "17039:40:74" + }, + "nativeSrc": "17039:73:74", + "nodeType": "YulFunctionCall", + "src": "17039:73:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "17029:6:74", + "nodeType": "YulIdentifier", + "src": "17029:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "16607:522:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "16663:9:74", + "nodeType": "YulTypedName", + "src": "16663:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "16674:7:74", + "nodeType": "YulTypedName", + "src": "16674:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "16686:6:74", + "nodeType": "YulTypedName", + "src": "16686:6:74", + "type": "" + } + ], + "src": "16607:522:74" + }, + { + "body": { + "nativeSrc": "17233:291:74", + "nodeType": "YulBlock", + "src": "17233:291:74", + "statements": [ + { + "nativeSrc": "17243:52:74", + "nodeType": "YulVariableDeclaration", + "src": "17243:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "17289:5:74", + "nodeType": "YulIdentifier", + "src": "17289:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "17257:31:74", + "nodeType": "YulIdentifier", + "src": "17257:31:74" + }, + "nativeSrc": "17257:38:74", + "nodeType": "YulFunctionCall", + "src": "17257:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "17247:6:74", + "nodeType": "YulTypedName", + "src": "17247:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "17304:85:74", + "nodeType": "YulAssignment", + "src": "17304:85:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17377:3:74", + "nodeType": "YulIdentifier", + "src": "17377:3:74" + }, + { + "name": "length", + "nativeSrc": "17382:6:74", + "nodeType": "YulIdentifier", + "src": "17382:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "17311:65:74", + "nodeType": "YulIdentifier", + "src": "17311:65:74" + }, + "nativeSrc": "17311:78:74", + "nodeType": "YulFunctionCall", + "src": "17311:78:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "17304:3:74", + "nodeType": "YulIdentifier", + "src": "17304:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17437:5:74", + "nodeType": "YulIdentifier", + "src": "17437:5:74" + }, + { + "kind": "number", + "nativeSrc": "17444:4:74", + "nodeType": "YulLiteral", + "src": "17444:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17433:3:74", + "nodeType": "YulIdentifier", + "src": "17433:3:74" + }, + "nativeSrc": "17433:16:74", + "nodeType": "YulFunctionCall", + "src": "17433:16:74" + }, + { + "name": "pos", + "nativeSrc": "17451:3:74", + "nodeType": "YulIdentifier", + "src": "17451:3:74" + }, + { + "name": "length", + "nativeSrc": "17456:6:74", + "nodeType": "YulIdentifier", + "src": "17456:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "17398:34:74", + "nodeType": "YulIdentifier", + "src": "17398:34:74" + }, + "nativeSrc": "17398:65:74", + "nodeType": "YulFunctionCall", + "src": "17398:65:74" + }, + "nativeSrc": "17398:65:74", + "nodeType": "YulExpressionStatement", + "src": "17398:65:74" + }, + { + "nativeSrc": "17472:46:74", + "nodeType": "YulAssignment", + "src": "17472:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "17483:3:74", + "nodeType": "YulIdentifier", + "src": "17483:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "17510:6:74", + "nodeType": "YulIdentifier", + "src": "17510:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "17488:21:74", + "nodeType": "YulIdentifier", + "src": "17488:21:74" + }, + "nativeSrc": "17488:29:74", + "nodeType": "YulFunctionCall", + "src": "17488:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17479:3:74", + "nodeType": "YulIdentifier", + "src": "17479:3:74" + }, + "nativeSrc": "17479:39:74", + "nodeType": "YulFunctionCall", + "src": "17479:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "17472:3:74", + "nodeType": "YulIdentifier", + "src": "17472:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "17135:389:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17214:5:74", + "nodeType": "YulTypedName", + "src": "17214:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "17221:3:74", + "nodeType": "YulTypedName", + "src": "17221:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "17229:3:74", + "nodeType": "YulTypedName", + "src": "17229:3:74", + "type": "" + } + ], + "src": "17135:389:74" + }, + { + "body": { + "nativeSrc": "17654:201:74", + "nodeType": "YulBlock", + "src": "17654:201:74", + "statements": [ + { + "nativeSrc": "17664:26:74", + "nodeType": "YulAssignment", + "src": "17664:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17676:9:74", + "nodeType": "YulIdentifier", + "src": "17676:9:74" + }, + { + "kind": "number", + "nativeSrc": "17687:2:74", + "nodeType": "YulLiteral", + "src": "17687:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17672:3:74", + "nodeType": "YulIdentifier", + "src": "17672:3:74" + }, + "nativeSrc": "17672:18:74", + "nodeType": "YulFunctionCall", + "src": "17672:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17664:4:74", + "nodeType": "YulIdentifier", + "src": "17664:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "17711:9:74", + "nodeType": "YulIdentifier", + "src": "17711:9:74" + }, + { + "kind": "number", + "nativeSrc": "17722:1:74", + "nodeType": "YulLiteral", + "src": "17722:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "17707:3:74", + "nodeType": "YulIdentifier", + "src": "17707:3:74" + }, + "nativeSrc": "17707:17:74", + "nodeType": "YulFunctionCall", + "src": "17707:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "17730:4:74", + "nodeType": "YulIdentifier", + "src": "17730:4:74" + }, + { + "name": "headStart", + "nativeSrc": "17736:9:74", + "nodeType": "YulIdentifier", + "src": "17736:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "17726:3:74", + "nodeType": "YulIdentifier", + "src": "17726:3:74" + }, + "nativeSrc": "17726:20:74", + "nodeType": "YulFunctionCall", + "src": "17726:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "17700:6:74", + "nodeType": "YulIdentifier", + "src": "17700:6:74" + }, + "nativeSrc": "17700:47:74", + "nodeType": "YulFunctionCall", + "src": "17700:47:74" + }, + "nativeSrc": "17700:47:74", + "nodeType": "YulExpressionStatement", + "src": "17700:47:74" + }, + { + "nativeSrc": "17756:92:74", + "nodeType": "YulAssignment", + "src": "17756:92:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "17834:6:74", + "nodeType": "YulIdentifier", + "src": "17834:6:74" + }, + { + "name": "tail", + "nativeSrc": "17843:4:74", + "nodeType": "YulIdentifier", + "src": "17843:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library", + "nativeSrc": "17764:69:74", + "nodeType": "YulIdentifier", + "src": "17764:69:74" + }, + "nativeSrc": "17764:84:74", + "nodeType": "YulFunctionCall", + "src": "17764:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "17756:4:74", + "nodeType": "YulIdentifier", + "src": "17756:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", + "nativeSrc": "17530:325:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "17626:9:74", + "nodeType": "YulTypedName", + "src": "17626:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "17638:6:74", + "nodeType": "YulTypedName", + "src": "17638:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "17649:4:74", + "nodeType": "YulTypedName", + "src": "17649:4:74", + "type": "" + } + ], + "src": "17530:325:74" + }, + { + "body": { + "nativeSrc": "17904:79:74", + "nodeType": "YulBlock", + "src": "17904:79:74", + "statements": [ + { + "body": { + "nativeSrc": "17961:16:74", + "nodeType": "YulBlock", + "src": "17961:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "17970:1:74", + "nodeType": "YulLiteral", + "src": "17970:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "17973:1:74", + "nodeType": "YulLiteral", + "src": "17973:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "17963:6:74", + "nodeType": "YulIdentifier", + "src": "17963:6:74" + }, + "nativeSrc": "17963:12:74", + "nodeType": "YulFunctionCall", + "src": "17963:12:74" + }, + "nativeSrc": "17963:12:74", + "nodeType": "YulExpressionStatement", + "src": "17963:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17927:5:74", + "nodeType": "YulIdentifier", + "src": "17927:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "17952:5:74", + "nodeType": "YulIdentifier", + "src": "17952:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "17934:17:74", + "nodeType": "YulIdentifier", + "src": "17934:17:74" + }, + "nativeSrc": "17934:24:74", + "nodeType": "YulFunctionCall", + "src": "17934:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "17924:2:74", + "nodeType": "YulIdentifier", + "src": "17924:2:74" + }, + "nativeSrc": "17924:35:74", + "nodeType": "YulFunctionCall", + "src": "17924:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "17917:6:74", + "nodeType": "YulIdentifier", + "src": "17917:6:74" + }, + "nativeSrc": "17917:43:74", + "nodeType": "YulFunctionCall", + "src": "17917:43:74" + }, + "nativeSrc": "17914:63:74", + "nodeType": "YulIf", + "src": "17914:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "17861:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "17897:5:74", + "nodeType": "YulTypedName", + "src": "17897:5:74", + "type": "" + } + ], + "src": "17861:122:74" + }, + { + "body": { + "nativeSrc": "18052:80:74", + "nodeType": "YulBlock", + "src": "18052:80:74", + "statements": [ + { + "nativeSrc": "18062:22:74", + "nodeType": "YulAssignment", + "src": "18062:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18077:6:74", + "nodeType": "YulIdentifier", + "src": "18077:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "18071:5:74", + "nodeType": "YulIdentifier", + "src": "18071:5:74" + }, + "nativeSrc": "18071:13:74", + "nodeType": "YulFunctionCall", + "src": "18071:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "18062:5:74", + "nodeType": "YulIdentifier", + "src": "18062:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "18120:5:74", + "nodeType": "YulIdentifier", + "src": "18120:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "18093:26:74", + "nodeType": "YulIdentifier", + "src": "18093:26:74" + }, + "nativeSrc": "18093:33:74", + "nodeType": "YulFunctionCall", + "src": "18093:33:74" + }, + "nativeSrc": "18093:33:74", + "nodeType": "YulExpressionStatement", + "src": "18093:33:74" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "17989:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18030:6:74", + "nodeType": "YulTypedName", + "src": "18030:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18038:3:74", + "nodeType": "YulTypedName", + "src": "18038:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "18046:5:74", + "nodeType": "YulTypedName", + "src": "18046:5:74", + "type": "" + } + ], + "src": "17989:143:74" + }, + { + "body": { + "nativeSrc": "18215:274:74", + "nodeType": "YulBlock", + "src": "18215:274:74", + "statements": [ + { + "body": { + "nativeSrc": "18261:83:74", + "nodeType": "YulBlock", + "src": "18261:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "18263:77:74", + "nodeType": "YulIdentifier", + "src": "18263:77:74" + }, + "nativeSrc": "18263:79:74", + "nodeType": "YulFunctionCall", + "src": "18263:79:74" + }, + "nativeSrc": "18263:79:74", + "nodeType": "YulExpressionStatement", + "src": "18263:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "18236:7:74", + "nodeType": "YulIdentifier", + "src": "18236:7:74" + }, + { + "name": "headStart", + "nativeSrc": "18245:9:74", + "nodeType": "YulIdentifier", + "src": "18245:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "18232:3:74", + "nodeType": "YulIdentifier", + "src": "18232:3:74" + }, + "nativeSrc": "18232:23:74", + "nodeType": "YulFunctionCall", + "src": "18232:23:74" + }, + { + "kind": "number", + "nativeSrc": "18257:2:74", + "nodeType": "YulLiteral", + "src": "18257:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "18228:3:74", + "nodeType": "YulIdentifier", + "src": "18228:3:74" + }, + "nativeSrc": "18228:32:74", + "nodeType": "YulFunctionCall", + "src": "18228:32:74" + }, + "nativeSrc": "18225:119:74", + "nodeType": "YulIf", + "src": "18225:119:74" + }, + { + "nativeSrc": "18354:128:74", + "nodeType": "YulBlock", + "src": "18354:128:74", + "statements": [ + { + "nativeSrc": "18369:15:74", + "nodeType": "YulVariableDeclaration", + "src": "18369:15:74", + "value": { + "kind": "number", + "nativeSrc": "18383:1:74", + "nodeType": "YulLiteral", + "src": "18383:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "18373:6:74", + "nodeType": "YulTypedName", + "src": "18373:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "18398:74:74", + "nodeType": "YulAssignment", + "src": "18398:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "18444:9:74", + "nodeType": "YulIdentifier", + "src": "18444:9:74" + }, + { + "name": "offset", + "nativeSrc": "18455:6:74", + "nodeType": "YulIdentifier", + "src": "18455:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "18440:3:74", + "nodeType": "YulIdentifier", + "src": "18440:3:74" + }, + "nativeSrc": "18440:22:74", + "nodeType": "YulFunctionCall", + "src": "18440:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "18464:7:74", + "nodeType": "YulIdentifier", + "src": "18464:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "18408:31:74", + "nodeType": "YulIdentifier", + "src": "18408:31:74" + }, + "nativeSrc": "18408:64:74", + "nodeType": "YulFunctionCall", + "src": "18408:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "18398:6:74", + "nodeType": "YulIdentifier", + "src": "18398:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256_fromMemory", + "nativeSrc": "18138:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "18185:9:74", + "nodeType": "YulTypedName", + "src": "18185:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "18196:7:74", + "nodeType": "YulTypedName", + "src": "18196:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "18208:6:74", + "nodeType": "YulTypedName", + "src": "18208:6:74", + "type": "" + } + ], + "src": "18138:351:74" + }, + { + "body": { + "nativeSrc": "18560:51:74", + "nodeType": "YulBlock", + "src": "18560:51:74", + "statements": [ + { + "nativeSrc": "18570:35:74", + "nodeType": "YulAssignment", + "src": "18570:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "18599:5:74", + "nodeType": "YulIdentifier", + "src": "18599:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nativeSrc": "18581:17:74", + "nodeType": "YulIdentifier", + "src": "18581:17:74" + }, + "nativeSrc": "18581:24:74", + "nodeType": "YulFunctionCall", + "src": "18581:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "18570:7:74", + "nodeType": "YulIdentifier", + "src": "18570:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_contract$_IEVMVerifier_$798", + "nativeSrc": "18495:116:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "18542:5:74", + "nodeType": "YulTypedName", + "src": "18542:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "18552:7:74", + "nodeType": "YulTypedName", + "src": "18552:7:74", + "type": "" + } + ], + "src": "18495:116:74" + }, + { + "body": { + "nativeSrc": "18680:99:74", + "nodeType": "YulBlock", + "src": "18680:99:74", + "statements": [ + { + "body": { + "nativeSrc": "18757:16:74", + "nodeType": "YulBlock", + "src": "18757:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "18766:1:74", + "nodeType": "YulLiteral", + "src": "18766:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "18769:1:74", + "nodeType": "YulLiteral", + "src": "18769:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "18759:6:74", + "nodeType": "YulIdentifier", + "src": "18759:6:74" + }, + "nativeSrc": "18759:12:74", + "nodeType": "YulFunctionCall", + "src": "18759:12:74" + }, + "nativeSrc": "18759:12:74", + "nodeType": "YulExpressionStatement", + "src": "18759:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18703:5:74", + "nodeType": "YulIdentifier", + "src": "18703:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "18748:5:74", + "nodeType": "YulIdentifier", + "src": "18748:5:74" + } + ], + "functionName": { + "name": "cleanup_t_contract$_IEVMVerifier_$798", + "nativeSrc": "18710:37:74", + "nodeType": "YulIdentifier", + "src": "18710:37:74" + }, + "nativeSrc": "18710:44:74", + "nodeType": "YulFunctionCall", + "src": "18710:44:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "18700:2:74", + "nodeType": "YulIdentifier", + "src": "18700:2:74" + }, + "nativeSrc": "18700:55:74", + "nodeType": "YulFunctionCall", + "src": "18700:55:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "18693:6:74", + "nodeType": "YulIdentifier", + "src": "18693:6:74" + }, + "nativeSrc": "18693:63:74", + "nodeType": "YulFunctionCall", + "src": "18693:63:74" + }, + "nativeSrc": "18690:83:74", + "nodeType": "YulIf", + "src": "18690:83:74" + } + ] + }, + "name": "validator_revert_t_contract$_IEVMVerifier_$798", + "nativeSrc": "18617:162:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "18673:5:74", + "nodeType": "YulTypedName", + "src": "18673:5:74", + "type": "" + } + ], + "src": "18617:162:74" + }, + { + "body": { + "nativeSrc": "18857:107:74", + "nodeType": "YulBlock", + "src": "18857:107:74", + "statements": [ + { + "nativeSrc": "18867:29:74", + "nodeType": "YulAssignment", + "src": "18867:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "18889:6:74", + "nodeType": "YulIdentifier", + "src": "18889:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "18876:12:74", + "nodeType": "YulIdentifier", + "src": "18876:12:74" + }, + "nativeSrc": "18876:20:74", + "nodeType": "YulFunctionCall", + "src": "18876:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "18867:5:74", + "nodeType": "YulIdentifier", + "src": "18867:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "18952:5:74", + "nodeType": "YulIdentifier", + "src": "18952:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_contract$_IEVMVerifier_$798", + "nativeSrc": "18905:46:74", + "nodeType": "YulIdentifier", + "src": "18905:46:74" + }, + "nativeSrc": "18905:53:74", + "nodeType": "YulFunctionCall", + "src": "18905:53:74" + }, + "nativeSrc": "18905:53:74", + "nodeType": "YulExpressionStatement", + "src": "18905:53:74" + } + ] + }, + "name": "abi_decode_t_contract$_IEVMVerifier_$798", + "nativeSrc": "18785:179:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "18835:6:74", + "nodeType": "YulTypedName", + "src": "18835:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "18843:3:74", + "nodeType": "YulTypedName", + "src": "18843:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "18851:5:74", + "nodeType": "YulTypedName", + "src": "18851:5:74", + "type": "" + } + ], + "src": "18785:179:74" + }, + { + "body": { + "nativeSrc": "19023:51:74", + "nodeType": "YulBlock", + "src": "19023:51:74", + "statements": [ + { + "nativeSrc": "19033:35:74", + "nodeType": "YulAssignment", + "src": "19033:35:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "19062:5:74", + "nodeType": "YulIdentifier", + "src": "19062:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nativeSrc": "19044:17:74", + "nodeType": "YulIdentifier", + "src": "19044:17:74" + }, + "nativeSrc": "19044:24:74", + "nodeType": "YulFunctionCall", + "src": "19044:24:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "19033:7:74", + "nodeType": "YulIdentifier", + "src": "19033:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_address_payable", + "nativeSrc": "18970:104:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "19005:5:74", + "nodeType": "YulTypedName", + "src": "19005:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "19015:7:74", + "nodeType": "YulTypedName", + "src": "19015:7:74", + "type": "" + } + ], + "src": "18970:104:74" + }, + { + "body": { + "nativeSrc": "19131:87:74", + "nodeType": "YulBlock", + "src": "19131:87:74", + "statements": [ + { + "body": { + "nativeSrc": "19196:16:74", + "nodeType": "YulBlock", + "src": "19196:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19205:1:74", + "nodeType": "YulLiteral", + "src": "19205:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19208:1:74", + "nodeType": "YulLiteral", + "src": "19208:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "19198:6:74", + "nodeType": "YulIdentifier", + "src": "19198:6:74" + }, + "nativeSrc": "19198:12:74", + "nodeType": "YulFunctionCall", + "src": "19198:12:74" + }, + "nativeSrc": "19198:12:74", + "nodeType": "YulExpressionStatement", + "src": "19198:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "19154:5:74", + "nodeType": "YulIdentifier", + "src": "19154:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "19187:5:74", + "nodeType": "YulIdentifier", + "src": "19187:5:74" + } + ], + "functionName": { + "name": "cleanup_t_address_payable", + "nativeSrc": "19161:25:74", + "nodeType": "YulIdentifier", + "src": "19161:25:74" + }, + "nativeSrc": "19161:32:74", + "nodeType": "YulFunctionCall", + "src": "19161:32:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "19151:2:74", + "nodeType": "YulIdentifier", + "src": "19151:2:74" + }, + "nativeSrc": "19151:43:74", + "nodeType": "YulFunctionCall", + "src": "19151:43:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "19144:6:74", + "nodeType": "YulIdentifier", + "src": "19144:6:74" + }, + "nativeSrc": "19144:51:74", + "nodeType": "YulFunctionCall", + "src": "19144:51:74" + }, + "nativeSrc": "19141:71:74", + "nodeType": "YulIf", + "src": "19141:71:74" + } + ] + }, + "name": "validator_revert_t_address_payable", + "nativeSrc": "19080:138:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "19124:5:74", + "nodeType": "YulTypedName", + "src": "19124:5:74", + "type": "" + } + ], + "src": "19080:138:74" + }, + { + "body": { + "nativeSrc": "19284:95:74", + "nodeType": "YulBlock", + "src": "19284:95:74", + "statements": [ + { + "nativeSrc": "19294:29:74", + "nodeType": "YulAssignment", + "src": "19294:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19316:6:74", + "nodeType": "YulIdentifier", + "src": "19316:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "19303:12:74", + "nodeType": "YulIdentifier", + "src": "19303:12:74" + }, + "nativeSrc": "19303:20:74", + "nodeType": "YulFunctionCall", + "src": "19303:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "19294:5:74", + "nodeType": "YulIdentifier", + "src": "19294:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "19367:5:74", + "nodeType": "YulIdentifier", + "src": "19367:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address_payable", + "nativeSrc": "19332:34:74", + "nodeType": "YulIdentifier", + "src": "19332:34:74" + }, + "nativeSrc": "19332:41:74", + "nodeType": "YulFunctionCall", + "src": "19332:41:74" + }, + "nativeSrc": "19332:41:74", + "nodeType": "YulExpressionStatement", + "src": "19332:41:74" + } + ] + }, + "name": "abi_decode_t_address_payable", + "nativeSrc": "19224:155:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "19262:6:74", + "nodeType": "YulTypedName", + "src": "19262:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19270:3:74", + "nodeType": "YulTypedName", + "src": "19270:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "19278:5:74", + "nodeType": "YulTypedName", + "src": "19278:5:74", + "type": "" + } + ], + "src": "19224:155:74" + }, + { + "body": { + "nativeSrc": "19467:229:74", + "nodeType": "YulBlock", + "src": "19467:229:74", + "statements": [ + { + "body": { + "nativeSrc": "19572:22:74", + "nodeType": "YulBlock", + "src": "19572:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "19574:16:74", + "nodeType": "YulIdentifier", + "src": "19574:16:74" + }, + "nativeSrc": "19574:18:74", + "nodeType": "YulFunctionCall", + "src": "19574:18:74" + }, + "nativeSrc": "19574:18:74", + "nodeType": "YulExpressionStatement", + "src": "19574:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "19544:6:74", + "nodeType": "YulIdentifier", + "src": "19544:6:74" + }, + { + "kind": "number", + "nativeSrc": "19552:18:74", + "nodeType": "YulLiteral", + "src": "19552:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "19541:2:74", + "nodeType": "YulIdentifier", + "src": "19541:2:74" + }, + "nativeSrc": "19541:30:74", + "nodeType": "YulFunctionCall", + "src": "19541:30:74" + }, + "nativeSrc": "19538:56:74", + "nodeType": "YulIf", + "src": "19538:56:74" + }, + { + "nativeSrc": "19604:25:74", + "nodeType": "YulAssignment", + "src": "19604:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "19616:6:74", + "nodeType": "YulIdentifier", + "src": "19616:6:74" + }, + { + "kind": "number", + "nativeSrc": "19624:4:74", + "nodeType": "YulLiteral", + "src": "19624:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "19612:3:74", + "nodeType": "YulIdentifier", + "src": "19612:3:74" + }, + "nativeSrc": "19612:17:74", + "nodeType": "YulFunctionCall", + "src": "19612:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "19604:4:74", + "nodeType": "YulIdentifier", + "src": "19604:4:74" + } + ] + }, + { + "nativeSrc": "19666:23:74", + "nodeType": "YulAssignment", + "src": "19666:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "19678:4:74", + "nodeType": "YulIdentifier", + "src": "19678:4:74" + }, + { + "kind": "number", + "nativeSrc": "19684:4:74", + "nodeType": "YulLiteral", + "src": "19684:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "19674:3:74", + "nodeType": "YulIdentifier", + "src": "19674:3:74" + }, + "nativeSrc": "19674:15:74", + "nodeType": "YulFunctionCall", + "src": "19674:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "19666:4:74", + "nodeType": "YulIdentifier", + "src": "19666:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "19385:311:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "19451:6:74", + "nodeType": "YulTypedName", + "src": "19451:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "19462:4:74", + "nodeType": "YulTypedName", + "src": "19462:4:74", + "type": "" + } + ], + "src": "19385:311:74" + }, + { + "body": { + "nativeSrc": "19745:79:74", + "nodeType": "YulBlock", + "src": "19745:79:74", + "statements": [ + { + "body": { + "nativeSrc": "19802:16:74", + "nodeType": "YulBlock", + "src": "19802:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "19811:1:74", + "nodeType": "YulLiteral", + "src": "19811:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "19814:1:74", + "nodeType": "YulLiteral", + "src": "19814:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "19804:6:74", + "nodeType": "YulIdentifier", + "src": "19804:6:74" + }, + "nativeSrc": "19804:12:74", + "nodeType": "YulFunctionCall", + "src": "19804:12:74" + }, + "nativeSrc": "19804:12:74", + "nodeType": "YulExpressionStatement", + "src": "19804:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "19768:5:74", + "nodeType": "YulIdentifier", + "src": "19768:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "19793:5:74", + "nodeType": "YulIdentifier", + "src": "19793:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "19775:17:74", + "nodeType": "YulIdentifier", + "src": "19775:17:74" + }, + "nativeSrc": "19775:24:74", + "nodeType": "YulFunctionCall", + "src": "19775:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "19765:2:74", + "nodeType": "YulIdentifier", + "src": "19765:2:74" + }, + "nativeSrc": "19765:35:74", + "nodeType": "YulFunctionCall", + "src": "19765:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "19758:6:74", + "nodeType": "YulIdentifier", + "src": "19758:6:74" + }, + "nativeSrc": "19758:43:74", + "nodeType": "YulFunctionCall", + "src": "19758:43:74" + }, + "nativeSrc": "19755:63:74", + "nodeType": "YulIf", + "src": "19755:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "19702:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "19738:5:74", + "nodeType": "YulTypedName", + "src": "19738:5:74", + "type": "" + } + ], + "src": "19702:122:74" + }, + { + "body": { + "nativeSrc": "19882:87:74", + "nodeType": "YulBlock", + "src": "19882:87:74", + "statements": [ + { + "nativeSrc": "19892:29:74", + "nodeType": "YulAssignment", + "src": "19892:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "19914:6:74", + "nodeType": "YulIdentifier", + "src": "19914:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "19901:12:74", + "nodeType": "YulIdentifier", + "src": "19901:12:74" + }, + "nativeSrc": "19901:20:74", + "nodeType": "YulFunctionCall", + "src": "19901:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "19892:5:74", + "nodeType": "YulIdentifier", + "src": "19892:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "19957:5:74", + "nodeType": "YulIdentifier", + "src": "19957:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "19930:26:74", + "nodeType": "YulIdentifier", + "src": "19930:26:74" + }, + "nativeSrc": "19930:33:74", + "nodeType": "YulFunctionCall", + "src": "19930:33:74" + }, + "nativeSrc": "19930:33:74", + "nodeType": "YulExpressionStatement", + "src": "19930:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "19830:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "19860:6:74", + "nodeType": "YulTypedName", + "src": "19860:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "19868:3:74", + "nodeType": "YulTypedName", + "src": "19868:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "19876:5:74", + "nodeType": "YulTypedName", + "src": "19876:5:74", + "type": "" + } + ], + "src": "19830:139:74" + }, + { + "body": { + "nativeSrc": "20094:608:74", + "nodeType": "YulBlock", + "src": "20094:608:74", + "statements": [ + { + "nativeSrc": "20104:90:74", + "nodeType": "YulAssignment", + "src": "20104:90:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "20186:6:74", + "nodeType": "YulIdentifier", + "src": "20186:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "20129:56:74", + "nodeType": "YulIdentifier", + "src": "20129:56:74" + }, + "nativeSrc": "20129:64:74", + "nodeType": "YulFunctionCall", + "src": "20129:64:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "20113:15:74", + "nodeType": "YulIdentifier", + "src": "20113:15:74" + }, + "nativeSrc": "20113:81:74", + "nodeType": "YulFunctionCall", + "src": "20113:81:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "20104:5:74", + "nodeType": "YulIdentifier", + "src": "20104:5:74" + } + ] + }, + { + "nativeSrc": "20203:16:74", + "nodeType": "YulVariableDeclaration", + "src": "20203:16:74", + "value": { + "name": "array", + "nativeSrc": "20214:5:74", + "nodeType": "YulIdentifier", + "src": "20214:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "20207:3:74", + "nodeType": "YulTypedName", + "src": "20207:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "20236:5:74", + "nodeType": "YulIdentifier", + "src": "20236:5:74" + }, + { + "name": "length", + "nativeSrc": "20243:6:74", + "nodeType": "YulIdentifier", + "src": "20243:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20229:6:74", + "nodeType": "YulIdentifier", + "src": "20229:6:74" + }, + "nativeSrc": "20229:21:74", + "nodeType": "YulFunctionCall", + "src": "20229:21:74" + }, + "nativeSrc": "20229:21:74", + "nodeType": "YulExpressionStatement", + "src": "20229:21:74" + }, + { + "nativeSrc": "20259:23:74", + "nodeType": "YulAssignment", + "src": "20259:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "20270:5:74", + "nodeType": "YulIdentifier", + "src": "20270:5:74" + }, + { + "kind": "number", + "nativeSrc": "20277:4:74", + "nodeType": "YulLiteral", + "src": "20277:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20266:3:74", + "nodeType": "YulIdentifier", + "src": "20266:3:74" + }, + "nativeSrc": "20266:16:74", + "nodeType": "YulFunctionCall", + "src": "20266:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "20259:3:74", + "nodeType": "YulIdentifier", + "src": "20259:3:74" + } + ] + }, + { + "nativeSrc": "20292:44:74", + "nodeType": "YulVariableDeclaration", + "src": "20292:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20310:6:74", + "nodeType": "YulIdentifier", + "src": "20310:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "20322:6:74", + "nodeType": "YulIdentifier", + "src": "20322:6:74" + }, + { + "kind": "number", + "nativeSrc": "20330:4:74", + "nodeType": "YulLiteral", + "src": "20330:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "20318:3:74", + "nodeType": "YulIdentifier", + "src": "20318:3:74" + }, + "nativeSrc": "20318:17:74", + "nodeType": "YulFunctionCall", + "src": "20318:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20306:3:74", + "nodeType": "YulIdentifier", + "src": "20306:3:74" + }, + "nativeSrc": "20306:30:74", + "nodeType": "YulFunctionCall", + "src": "20306:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "20296:6:74", + "nodeType": "YulTypedName", + "src": "20296:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "20364:103:74", + "nodeType": "YulBlock", + "src": "20364:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "20378:77:74", + "nodeType": "YulIdentifier", + "src": "20378:77:74" + }, + "nativeSrc": "20378:79:74", + "nodeType": "YulFunctionCall", + "src": "20378:79:74" + }, + "nativeSrc": "20378:79:74", + "nodeType": "YulExpressionStatement", + "src": "20378:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "20351:6:74", + "nodeType": "YulIdentifier", + "src": "20351:6:74" + }, + { + "name": "end", + "nativeSrc": "20359:3:74", + "nodeType": "YulIdentifier", + "src": "20359:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "20348:2:74", + "nodeType": "YulIdentifier", + "src": "20348:2:74" + }, + "nativeSrc": "20348:15:74", + "nodeType": "YulFunctionCall", + "src": "20348:15:74" + }, + "nativeSrc": "20345:122:74", + "nodeType": "YulIf", + "src": "20345:122:74" + }, + { + "body": { + "nativeSrc": "20552:144:74", + "nodeType": "YulBlock", + "src": "20552:144:74", + "statements": [ + { + "nativeSrc": "20567:21:74", + "nodeType": "YulVariableDeclaration", + "src": "20567:21:74", + "value": { + "name": "src", + "nativeSrc": "20585:3:74", + "nodeType": "YulIdentifier", + "src": "20585:3:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "20571:10:74", + "nodeType": "YulTypedName", + "src": "20571:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "20609:3:74", + "nodeType": "YulIdentifier", + "src": "20609:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "20635:10:74", + "nodeType": "YulIdentifier", + "src": "20635:10:74" + }, + { + "name": "end", + "nativeSrc": "20647:3:74", + "nodeType": "YulIdentifier", + "src": "20647:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "20614:20:74", + "nodeType": "YulIdentifier", + "src": "20614:20:74" + }, + "nativeSrc": "20614:37:74", + "nodeType": "YulFunctionCall", + "src": "20614:37:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "20602:6:74", + "nodeType": "YulIdentifier", + "src": "20602:6:74" + }, + "nativeSrc": "20602:50:74", + "nodeType": "YulFunctionCall", + "src": "20602:50:74" + }, + "nativeSrc": "20602:50:74", + "nodeType": "YulExpressionStatement", + "src": "20602:50:74" + }, + { + "nativeSrc": "20665:21:74", + "nodeType": "YulAssignment", + "src": "20665:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "20676:3:74", + "nodeType": "YulIdentifier", + "src": "20676:3:74" + }, + { + "kind": "number", + "nativeSrc": "20681:4:74", + "nodeType": "YulLiteral", + "src": "20681:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20672:3:74", + "nodeType": "YulIdentifier", + "src": "20672:3:74" + }, + "nativeSrc": "20672:14:74", + "nodeType": "YulFunctionCall", + "src": "20672:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "20665:3:74", + "nodeType": "YulIdentifier", + "src": "20665:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "20505:3:74", + "nodeType": "YulIdentifier", + "src": "20505:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "20510:6:74", + "nodeType": "YulIdentifier", + "src": "20510:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "20502:2:74", + "nodeType": "YulIdentifier", + "src": "20502:2:74" + }, + "nativeSrc": "20502:15:74", + "nodeType": "YulFunctionCall", + "src": "20502:15:74" + }, + "nativeSrc": "20476:220:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "20518:25:74", + "nodeType": "YulBlock", + "src": "20518:25:74", + "statements": [ + { + "nativeSrc": "20520:21:74", + "nodeType": "YulAssignment", + "src": "20520:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "20531:3:74", + "nodeType": "YulIdentifier", + "src": "20531:3:74" + }, + { + "kind": "number", + "nativeSrc": "20536:4:74", + "nodeType": "YulLiteral", + "src": "20536:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20527:3:74", + "nodeType": "YulIdentifier", + "src": "20527:3:74" + }, + "nativeSrc": "20527:14:74", + "nodeType": "YulFunctionCall", + "src": "20527:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "20520:3:74", + "nodeType": "YulIdentifier", + "src": "20520:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "20480:21:74", + "nodeType": "YulBlock", + "src": "20480:21:74", + "statements": [ + { + "nativeSrc": "20482:17:74", + "nodeType": "YulVariableDeclaration", + "src": "20482:17:74", + "value": { + "name": "offset", + "nativeSrc": "20493:6:74", + "nodeType": "YulIdentifier", + "src": "20493:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "20486:3:74", + "nodeType": "YulTypedName", + "src": "20486:3:74", + "type": "" + } + ] + } + ] + }, + "src": "20476:220:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "19992:710:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "20064:6:74", + "nodeType": "YulTypedName", + "src": "20064:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "20072:6:74", + "nodeType": "YulTypedName", + "src": "20072:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "20080:3:74", + "nodeType": "YulTypedName", + "src": "20080:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "20088:5:74", + "nodeType": "YulTypedName", + "src": "20088:5:74", + "type": "" + } + ], + "src": "19992:710:74" + }, + { + "body": { + "nativeSrc": "20802:293:74", + "nodeType": "YulBlock", + "src": "20802:293:74", + "statements": [ + { + "body": { + "nativeSrc": "20851:83:74", + "nodeType": "YulBlock", + "src": "20851:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "20853:77:74", + "nodeType": "YulIdentifier", + "src": "20853:77:74" + }, + "nativeSrc": "20853:79:74", + "nodeType": "YulFunctionCall", + "src": "20853:79:74" + }, + "nativeSrc": "20853:79:74", + "nodeType": "YulExpressionStatement", + "src": "20853:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20830:6:74", + "nodeType": "YulIdentifier", + "src": "20830:6:74" + }, + { + "kind": "number", + "nativeSrc": "20838:4:74", + "nodeType": "YulLiteral", + "src": "20838:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "20826:3:74", + "nodeType": "YulIdentifier", + "src": "20826:3:74" + }, + "nativeSrc": "20826:17:74", + "nodeType": "YulFunctionCall", + "src": "20826:17:74" + }, + { + "name": "end", + "nativeSrc": "20845:3:74", + "nodeType": "YulIdentifier", + "src": "20845:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "20822:3:74", + "nodeType": "YulIdentifier", + "src": "20822:3:74" + }, + "nativeSrc": "20822:27:74", + "nodeType": "YulFunctionCall", + "src": "20822:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "20815:6:74", + "nodeType": "YulIdentifier", + "src": "20815:6:74" + }, + "nativeSrc": "20815:35:74", + "nodeType": "YulFunctionCall", + "src": "20815:35:74" + }, + "nativeSrc": "20812:122:74", + "nodeType": "YulIf", + "src": "20812:122:74" + }, + { + "nativeSrc": "20943:34:74", + "nodeType": "YulVariableDeclaration", + "src": "20943:34:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "20970:6:74", + "nodeType": "YulIdentifier", + "src": "20970:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "20957:12:74", + "nodeType": "YulIdentifier", + "src": "20957:12:74" + }, + "nativeSrc": "20957:20:74", + "nodeType": "YulFunctionCall", + "src": "20957:20:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "20947:6:74", + "nodeType": "YulTypedName", + "src": "20947:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "20986:103:74", + "nodeType": "YulAssignment", + "src": "20986:103:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21062:6:74", + "nodeType": "YulIdentifier", + "src": "21062:6:74" + }, + { + "kind": "number", + "nativeSrc": "21070:4:74", + "nodeType": "YulLiteral", + "src": "21070:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21058:3:74", + "nodeType": "YulIdentifier", + "src": "21058:3:74" + }, + "nativeSrc": "21058:17:74", + "nodeType": "YulFunctionCall", + "src": "21058:17:74" + }, + { + "name": "length", + "nativeSrc": "21077:6:74", + "nodeType": "YulIdentifier", + "src": "21077:6:74" + }, + { + "name": "end", + "nativeSrc": "21085:3:74", + "nodeType": "YulIdentifier", + "src": "21085:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "20995:62:74", + "nodeType": "YulIdentifier", + "src": "20995:62:74" + }, + "nativeSrc": "20995:94:74", + "nodeType": "YulFunctionCall", + "src": "20995:94:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "20986:5:74", + "nodeType": "YulIdentifier", + "src": "20986:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "20725:370:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "20780:6:74", + "nodeType": "YulTypedName", + "src": "20780:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "20788:3:74", + "nodeType": "YulTypedName", + "src": "20788:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "20796:5:74", + "nodeType": "YulTypedName", + "src": "20796:5:74", + "type": "" + } + ], + "src": "20725:370:74" + }, + { + "body": { + "nativeSrc": "21347:1481:74", + "nodeType": "YulBlock", + "src": "21347:1481:74", + "statements": [ + { + "body": { + "nativeSrc": "21394:83:74", + "nodeType": "YulBlock", + "src": "21394:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "21396:77:74", + "nodeType": "YulIdentifier", + "src": "21396:77:74" + }, + "nativeSrc": "21396:79:74", + "nodeType": "YulFunctionCall", + "src": "21396:79:74" + }, + "nativeSrc": "21396:79:74", + "nodeType": "YulExpressionStatement", + "src": "21396:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "21368:7:74", + "nodeType": "YulIdentifier", + "src": "21368:7:74" + }, + { + "name": "headStart", + "nativeSrc": "21377:9:74", + "nodeType": "YulIdentifier", + "src": "21377:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "21364:3:74", + "nodeType": "YulIdentifier", + "src": "21364:3:74" + }, + "nativeSrc": "21364:23:74", + "nodeType": "YulFunctionCall", + "src": "21364:23:74" + }, + { + "kind": "number", + "nativeSrc": "21389:3:74", + "nodeType": "YulLiteral", + "src": "21389:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "21360:3:74", + "nodeType": "YulIdentifier", + "src": "21360:3:74" + }, + "nativeSrc": "21360:33:74", + "nodeType": "YulFunctionCall", + "src": "21360:33:74" + }, + "nativeSrc": "21357:120:74", + "nodeType": "YulIf", + "src": "21357:120:74" + }, + { + "nativeSrc": "21487:137:74", + "nodeType": "YulBlock", + "src": "21487:137:74", + "statements": [ + { + "nativeSrc": "21502:15:74", + "nodeType": "YulVariableDeclaration", + "src": "21502:15:74", + "value": { + "kind": "number", + "nativeSrc": "21516:1:74", + "nodeType": "YulLiteral", + "src": "21516:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21506:6:74", + "nodeType": "YulTypedName", + "src": "21506:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "21531:83:74", + "nodeType": "YulAssignment", + "src": "21531:83:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21586:9:74", + "nodeType": "YulIdentifier", + "src": "21586:9:74" + }, + { + "name": "offset", + "nativeSrc": "21597:6:74", + "nodeType": "YulIdentifier", + "src": "21597:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21582:3:74", + "nodeType": "YulIdentifier", + "src": "21582:3:74" + }, + "nativeSrc": "21582:22:74", + "nodeType": "YulFunctionCall", + "src": "21582:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "21606:7:74", + "nodeType": "YulIdentifier", + "src": "21606:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_contract$_IEVMVerifier_$798", + "nativeSrc": "21541:40:74", + "nodeType": "YulIdentifier", + "src": "21541:40:74" + }, + "nativeSrc": "21541:73:74", + "nodeType": "YulFunctionCall", + "src": "21541:73:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "21531:6:74", + "nodeType": "YulIdentifier", + "src": "21531:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "21634:126:74", + "nodeType": "YulBlock", + "src": "21634:126:74", + "statements": [ + { + "nativeSrc": "21649:16:74", + "nodeType": "YulVariableDeclaration", + "src": "21649:16:74", + "value": { + "kind": "number", + "nativeSrc": "21663:2:74", + "nodeType": "YulLiteral", + "src": "21663:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21653:6:74", + "nodeType": "YulTypedName", + "src": "21653:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "21679:71:74", + "nodeType": "YulAssignment", + "src": "21679:71:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21722:9:74", + "nodeType": "YulIdentifier", + "src": "21722:9:74" + }, + { + "name": "offset", + "nativeSrc": "21733:6:74", + "nodeType": "YulIdentifier", + "src": "21733:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21718:3:74", + "nodeType": "YulIdentifier", + "src": "21718:3:74" + }, + "nativeSrc": "21718:22:74", + "nodeType": "YulFunctionCall", + "src": "21718:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "21742:7:74", + "nodeType": "YulIdentifier", + "src": "21742:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable", + "nativeSrc": "21689:28:74", + "nodeType": "YulIdentifier", + "src": "21689:28:74" + }, + "nativeSrc": "21689:61:74", + "nodeType": "YulFunctionCall", + "src": "21689:61:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "21679:6:74", + "nodeType": "YulIdentifier", + "src": "21679:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "21770:303:74", + "nodeType": "YulBlock", + "src": "21770:303:74", + "statements": [ + { + "nativeSrc": "21785:46:74", + "nodeType": "YulVariableDeclaration", + "src": "21785:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "21816:9:74", + "nodeType": "YulIdentifier", + "src": "21816:9:74" + }, + { + "kind": "number", + "nativeSrc": "21827:2:74", + "nodeType": "YulLiteral", + "src": "21827:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "21812:3:74", + "nodeType": "YulIdentifier", + "src": "21812:3:74" + }, + "nativeSrc": "21812:18:74", + "nodeType": "YulFunctionCall", + "src": "21812:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "21799:12:74", + "nodeType": "YulIdentifier", + "src": "21799:12:74" + }, + "nativeSrc": "21799:32:74", + "nodeType": "YulFunctionCall", + "src": "21799:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "21789:6:74", + "nodeType": "YulTypedName", + "src": "21789:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "21878:83:74", + "nodeType": "YulBlock", + "src": "21878:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "21880:77:74", + "nodeType": "YulIdentifier", + "src": "21880:77:74" + }, + "nativeSrc": "21880:79:74", + "nodeType": "YulFunctionCall", + "src": "21880:79:74" + }, + "nativeSrc": "21880:79:74", + "nodeType": "YulExpressionStatement", + "src": "21880:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "21850:6:74", + "nodeType": "YulIdentifier", + "src": "21850:6:74" + }, + { + "kind": "number", + "nativeSrc": "21858:18:74", + "nodeType": "YulLiteral", + "src": "21858:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "21847:2:74", + "nodeType": "YulIdentifier", + "src": "21847:2:74" + }, + "nativeSrc": "21847:30:74", + "nodeType": "YulFunctionCall", + "src": "21847:30:74" + }, + "nativeSrc": "21844:117:74", + "nodeType": "YulIf", + "src": "21844:117:74" + }, + { + "nativeSrc": "21975:88:74", + "nodeType": "YulAssignment", + "src": "21975:88:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22035:9:74", + "nodeType": "YulIdentifier", + "src": "22035:9:74" + }, + { + "name": "offset", + "nativeSrc": "22046:6:74", + "nodeType": "YulIdentifier", + "src": "22046:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22031:3:74", + "nodeType": "YulIdentifier", + "src": "22031:3:74" + }, + "nativeSrc": "22031:22:74", + "nodeType": "YulFunctionCall", + "src": "22031:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22055:7:74", + "nodeType": "YulIdentifier", + "src": "22055:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "21985:45:74", + "nodeType": "YulIdentifier", + "src": "21985:45:74" + }, + "nativeSrc": "21985:78:74", + "nodeType": "YulFunctionCall", + "src": "21985:78:74" + }, + "variableNames": [ + { + "name": "value2", + "nativeSrc": "21975:6:74", + "nodeType": "YulIdentifier", + "src": "21975:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22083:312:74", + "nodeType": "YulBlock", + "src": "22083:312:74", + "statements": [ + { + "nativeSrc": "22098:46:74", + "nodeType": "YulVariableDeclaration", + "src": "22098:46:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22129:9:74", + "nodeType": "YulIdentifier", + "src": "22129:9:74" + }, + { + "kind": "number", + "nativeSrc": "22140:2:74", + "nodeType": "YulLiteral", + "src": "22140:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22125:3:74", + "nodeType": "YulIdentifier", + "src": "22125:3:74" + }, + "nativeSrc": "22125:18:74", + "nodeType": "YulFunctionCall", + "src": "22125:18:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "22112:12:74", + "nodeType": "YulIdentifier", + "src": "22112:12:74" + }, + "nativeSrc": "22112:32:74", + "nodeType": "YulFunctionCall", + "src": "22112:32:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22102:6:74", + "nodeType": "YulTypedName", + "src": "22102:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "22191:83:74", + "nodeType": "YulBlock", + "src": "22191:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "22193:77:74", + "nodeType": "YulIdentifier", + "src": "22193:77:74" + }, + "nativeSrc": "22193:79:74", + "nodeType": "YulFunctionCall", + "src": "22193:79:74" + }, + "nativeSrc": "22193:79:74", + "nodeType": "YulExpressionStatement", + "src": "22193:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "22163:6:74", + "nodeType": "YulIdentifier", + "src": "22163:6:74" + }, + { + "kind": "number", + "nativeSrc": "22171:18:74", + "nodeType": "YulLiteral", + "src": "22171:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "22160:2:74", + "nodeType": "YulIdentifier", + "src": "22160:2:74" + }, + "nativeSrc": "22160:30:74", + "nodeType": "YulFunctionCall", + "src": "22160:30:74" + }, + "nativeSrc": "22157:117:74", + "nodeType": "YulIf", + "src": "22157:117:74" + }, + { + "nativeSrc": "22288:97:74", + "nodeType": "YulAssignment", + "src": "22288:97:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22357:9:74", + "nodeType": "YulIdentifier", + "src": "22357:9:74" + }, + { + "name": "offset", + "nativeSrc": "22368:6:74", + "nodeType": "YulIdentifier", + "src": "22368:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22353:3:74", + "nodeType": "YulIdentifier", + "src": "22353:3:74" + }, + "nativeSrc": "22353:22:74", + "nodeType": "YulFunctionCall", + "src": "22353:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22377:7:74", + "nodeType": "YulIdentifier", + "src": "22377:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "22298:54:74", + "nodeType": "YulIdentifier", + "src": "22298:54:74" + }, + "nativeSrc": "22298:87:74", + "nodeType": "YulFunctionCall", + "src": "22298:87:74" + }, + "variableNames": [ + { + "name": "value3", + "nativeSrc": "22288:6:74", + "nodeType": "YulIdentifier", + "src": "22288:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22405:118:74", + "nodeType": "YulBlock", + "src": "22405:118:74", + "statements": [ + { + "nativeSrc": "22420:17:74", + "nodeType": "YulVariableDeclaration", + "src": "22420:17:74", + "value": { + "kind": "number", + "nativeSrc": "22434:3:74", + "nodeType": "YulLiteral", + "src": "22434:3:74", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22424:6:74", + "nodeType": "YulTypedName", + "src": "22424:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "22451:62:74", + "nodeType": "YulAssignment", + "src": "22451:62:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22485:9:74", + "nodeType": "YulIdentifier", + "src": "22485:9:74" + }, + { + "name": "offset", + "nativeSrc": "22496:6:74", + "nodeType": "YulIdentifier", + "src": "22496:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22481:3:74", + "nodeType": "YulIdentifier", + "src": "22481:3:74" + }, + "nativeSrc": "22481:22:74", + "nodeType": "YulFunctionCall", + "src": "22481:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22505:7:74", + "nodeType": "YulIdentifier", + "src": "22505:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes4", + "nativeSrc": "22461:19:74", + "nodeType": "YulIdentifier", + "src": "22461:19:74" + }, + "nativeSrc": "22461:52:74", + "nodeType": "YulFunctionCall", + "src": "22461:52:74" + }, + "variableNames": [ + { + "name": "value4", + "nativeSrc": "22451:6:74", + "nodeType": "YulIdentifier", + "src": "22451:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "22533:288:74", + "nodeType": "YulBlock", + "src": "22533:288:74", + "statements": [ + { + "nativeSrc": "22548:47:74", + "nodeType": "YulVariableDeclaration", + "src": "22548:47:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22579:9:74", + "nodeType": "YulIdentifier", + "src": "22579:9:74" + }, + { + "kind": "number", + "nativeSrc": "22590:3:74", + "nodeType": "YulLiteral", + "src": "22590:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22575:3:74", + "nodeType": "YulIdentifier", + "src": "22575:3:74" + }, + "nativeSrc": "22575:19:74", + "nodeType": "YulFunctionCall", + "src": "22575:19:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "22562:12:74", + "nodeType": "YulIdentifier", + "src": "22562:12:74" + }, + "nativeSrc": "22562:33:74", + "nodeType": "YulFunctionCall", + "src": "22562:33:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "22552:6:74", + "nodeType": "YulTypedName", + "src": "22552:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "22642:83:74", + "nodeType": "YulBlock", + "src": "22642:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "22644:77:74", + "nodeType": "YulIdentifier", + "src": "22644:77:74" + }, + "nativeSrc": "22644:79:74", + "nodeType": "YulFunctionCall", + "src": "22644:79:74" + }, + "nativeSrc": "22644:79:74", + "nodeType": "YulExpressionStatement", + "src": "22644:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "22614:6:74", + "nodeType": "YulIdentifier", + "src": "22614:6:74" + }, + { + "kind": "number", + "nativeSrc": "22622:18:74", + "nodeType": "YulLiteral", + "src": "22622:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "22611:2:74", + "nodeType": "YulIdentifier", + "src": "22611:2:74" + }, + "nativeSrc": "22611:30:74", + "nodeType": "YulFunctionCall", + "src": "22611:30:74" + }, + "nativeSrc": "22608:117:74", + "nodeType": "YulIf", + "src": "22608:117:74" + }, + { + "nativeSrc": "22739:72:74", + "nodeType": "YulAssignment", + "src": "22739:72:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "22783:9:74", + "nodeType": "YulIdentifier", + "src": "22783:9:74" + }, + { + "name": "offset", + "nativeSrc": "22794:6:74", + "nodeType": "YulIdentifier", + "src": "22794:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "22779:3:74", + "nodeType": "YulIdentifier", + "src": "22779:3:74" + }, + "nativeSrc": "22779:22:74", + "nodeType": "YulFunctionCall", + "src": "22779:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "22803:7:74", + "nodeType": "YulIdentifier", + "src": "22803:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr", + "nativeSrc": "22749:29:74", + "nodeType": "YulIdentifier", + "src": "22749:29:74" + }, + "nativeSrc": "22749:62:74", + "nodeType": "YulFunctionCall", + "src": "22749:62:74" + }, + "variableNames": [ + { + "name": "value5", + "nativeSrc": "22739:6:74", + "nodeType": "YulIdentifier", + "src": "22739:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_contract$_IEVMVerifier_$798t_address_payablet_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes4t_bytes_memory_ptr", + "nativeSrc": "21101:1727:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "21277:9:74", + "nodeType": "YulTypedName", + "src": "21277:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "21288:7:74", + "nodeType": "YulTypedName", + "src": "21288:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "21300:6:74", + "nodeType": "YulTypedName", + "src": "21300:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "21308:6:74", + "nodeType": "YulTypedName", + "src": "21308:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "21316:6:74", + "nodeType": "YulTypedName", + "src": "21316:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "21324:6:74", + "nodeType": "YulTypedName", + "src": "21324:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "21332:6:74", + "nodeType": "YulTypedName", + "src": "21332:6:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "21340:6:74", + "nodeType": "YulTypedName", + "src": "21340:6:74", + "type": "" + } + ], + "src": "21101:1727:74" + }, + { + "body": { + "nativeSrc": "22908:40:74", + "nodeType": "YulBlock", + "src": "22908:40:74", + "statements": [ + { + "nativeSrc": "22919:22:74", + "nodeType": "YulAssignment", + "src": "22919:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "22935:5:74", + "nodeType": "YulIdentifier", + "src": "22935:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "22929:5:74", + "nodeType": "YulIdentifier", + "src": "22929:5:74" + }, + "nativeSrc": "22929:12:74", + "nodeType": "YulFunctionCall", + "src": "22929:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "22919:6:74", + "nodeType": "YulIdentifier", + "src": "22919:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "22834:114:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "22891:5:74", + "nodeType": "YulTypedName", + "src": "22891:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "22901:6:74", + "nodeType": "YulTypedName", + "src": "22901:6:74", + "type": "" + } + ], + "src": "22834:114:74" + }, + { + "body": { + "nativeSrc": "23065:73:74", + "nodeType": "YulBlock", + "src": "23065:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23082:3:74", + "nodeType": "YulIdentifier", + "src": "23082:3:74" + }, + { + "name": "length", + "nativeSrc": "23087:6:74", + "nodeType": "YulIdentifier", + "src": "23087:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23075:6:74", + "nodeType": "YulIdentifier", + "src": "23075:6:74" + }, + "nativeSrc": "23075:19:74", + "nodeType": "YulFunctionCall", + "src": "23075:19:74" + }, + "nativeSrc": "23075:19:74", + "nodeType": "YulExpressionStatement", + "src": "23075:19:74" + }, + { + "nativeSrc": "23103:29:74", + "nodeType": "YulAssignment", + "src": "23103:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23122:3:74", + "nodeType": "YulIdentifier", + "src": "23122:3:74" + }, + { + "kind": "number", + "nativeSrc": "23127:4:74", + "nodeType": "YulLiteral", + "src": "23127:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23118:3:74", + "nodeType": "YulIdentifier", + "src": "23118:3:74" + }, + "nativeSrc": "23118:14:74", + "nodeType": "YulFunctionCall", + "src": "23118:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "23103:11:74", + "nodeType": "YulIdentifier", + "src": "23103:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "22954:184:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "23037:3:74", + "nodeType": "YulTypedName", + "src": "23037:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "23042:6:74", + "nodeType": "YulTypedName", + "src": "23042:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "23053:11:74", + "nodeType": "YulTypedName", + "src": "23053:11:74", + "type": "" + } + ], + "src": "22954:184:74" + }, + { + "body": { + "nativeSrc": "23216:60:74", + "nodeType": "YulBlock", + "src": "23216:60:74", + "statements": [ + { + "nativeSrc": "23226:11:74", + "nodeType": "YulAssignment", + "src": "23226:11:74", + "value": { + "name": "ptr", + "nativeSrc": "23234:3:74", + "nodeType": "YulIdentifier", + "src": "23234:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "23226:4:74", + "nodeType": "YulIdentifier", + "src": "23226:4:74" + } + ] + }, + { + "nativeSrc": "23247:22:74", + "nodeType": "YulAssignment", + "src": "23247:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "23259:3:74", + "nodeType": "YulIdentifier", + "src": "23259:3:74" + }, + { + "kind": "number", + "nativeSrc": "23264:4:74", + "nodeType": "YulLiteral", + "src": "23264:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23255:3:74", + "nodeType": "YulIdentifier", + "src": "23255:3:74" + }, + "nativeSrc": "23255:14:74", + "nodeType": "YulFunctionCall", + "src": "23255:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "23247:4:74", + "nodeType": "YulIdentifier", + "src": "23247:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "23144:132:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "23203:3:74", + "nodeType": "YulTypedName", + "src": "23203:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "23211:4:74", + "nodeType": "YulTypedName", + "src": "23211:4:74", + "type": "" + } + ], + "src": "23144:132:74" + }, + { + "body": { + "nativeSrc": "23337:53:74", + "nodeType": "YulBlock", + "src": "23337:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23354:3:74", + "nodeType": "YulIdentifier", + "src": "23354:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "23377:5:74", + "nodeType": "YulIdentifier", + "src": "23377:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "23359:17:74", + "nodeType": "YulIdentifier", + "src": "23359:17:74" + }, + "nativeSrc": "23359:24:74", + "nodeType": "YulFunctionCall", + "src": "23359:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "23347:6:74", + "nodeType": "YulIdentifier", + "src": "23347:6:74" + }, + "nativeSrc": "23347:37:74", + "nodeType": "YulFunctionCall", + "src": "23347:37:74" + }, + "nativeSrc": "23347:37:74", + "nodeType": "YulExpressionStatement", + "src": "23347:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32", + "nativeSrc": "23282:108:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23325:5:74", + "nodeType": "YulTypedName", + "src": "23325:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "23332:3:74", + "nodeType": "YulTypedName", + "src": "23332:3:74", + "type": "" + } + ], + "src": "23282:108:74" + }, + { + "body": { + "nativeSrc": "23476:99:74", + "nodeType": "YulBlock", + "src": "23476:99:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "23520:6:74", + "nodeType": "YulIdentifier", + "src": "23520:6:74" + }, + { + "name": "pos", + "nativeSrc": "23528:3:74", + "nodeType": "YulIdentifier", + "src": "23528:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32", + "nativeSrc": "23486:33:74", + "nodeType": "YulIdentifier", + "src": "23486:33:74" + }, + "nativeSrc": "23486:46:74", + "nodeType": "YulFunctionCall", + "src": "23486:46:74" + }, + "nativeSrc": "23486:46:74", + "nodeType": "YulExpressionStatement", + "src": "23486:46:74" + }, + { + "nativeSrc": "23541:28:74", + "nodeType": "YulAssignment", + "src": "23541:28:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "23559:3:74", + "nodeType": "YulIdentifier", + "src": "23559:3:74" + }, + { + "kind": "number", + "nativeSrc": "23564:4:74", + "nodeType": "YulLiteral", + "src": "23564:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23555:3:74", + "nodeType": "YulIdentifier", + "src": "23555:3:74" + }, + "nativeSrc": "23555:14:74", + "nodeType": "YulFunctionCall", + "src": "23555:14:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "23541:10:74", + "nodeType": "YulIdentifier", + "src": "23541:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_bytes32_to_t_bytes32", + "nativeSrc": "23396:179:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "23449:6:74", + "nodeType": "YulTypedName", + "src": "23449:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "23457:3:74", + "nodeType": "YulTypedName", + "src": "23457:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "23465:10:74", + "nodeType": "YulTypedName", + "src": "23465:10:74", + "type": "" + } + ], + "src": "23396:179:74" + }, + { + "body": { + "nativeSrc": "23656:38:74", + "nodeType": "YulBlock", + "src": "23656:38:74", + "statements": [ + { + "nativeSrc": "23666:22:74", + "nodeType": "YulAssignment", + "src": "23666:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "23678:3:74", + "nodeType": "YulIdentifier", + "src": "23678:3:74" + }, + { + "kind": "number", + "nativeSrc": "23683:4:74", + "nodeType": "YulLiteral", + "src": "23683:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "23674:3:74", + "nodeType": "YulIdentifier", + "src": "23674:3:74" + }, + "nativeSrc": "23674:14:74", + "nodeType": "YulFunctionCall", + "src": "23674:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "23666:4:74", + "nodeType": "YulIdentifier", + "src": "23666:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "23581:113:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "23643:3:74", + "nodeType": "YulTypedName", + "src": "23643:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "23651:4:74", + "nodeType": "YulTypedName", + "src": "23651:4:74", + "type": "" + } + ], + "src": "23581:113:74" + }, + { + "body": { + "nativeSrc": "23854:608:74", + "nodeType": "YulBlock", + "src": "23854:608:74", + "statements": [ + { + "nativeSrc": "23864:68:74", + "nodeType": "YulVariableDeclaration", + "src": "23864:68:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "23926:5:74", + "nodeType": "YulIdentifier", + "src": "23926:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "23878:47:74", + "nodeType": "YulIdentifier", + "src": "23878:47:74" + }, + "nativeSrc": "23878:54:74", + "nodeType": "YulFunctionCall", + "src": "23878:54:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "23868:6:74", + "nodeType": "YulTypedName", + "src": "23868:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "23941:93:74", + "nodeType": "YulAssignment", + "src": "23941:93:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24022:3:74", + "nodeType": "YulIdentifier", + "src": "24022:3:74" + }, + { + "name": "length", + "nativeSrc": "24027:6:74", + "nodeType": "YulIdentifier", + "src": "24027:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "23948:73:74", + "nodeType": "YulIdentifier", + "src": "23948:73:74" + }, + "nativeSrc": "23948:86:74", + "nodeType": "YulFunctionCall", + "src": "23948:86:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "23941:3:74", + "nodeType": "YulIdentifier", + "src": "23941:3:74" + } + ] + }, + { + "nativeSrc": "24043:71:74", + "nodeType": "YulVariableDeclaration", + "src": "24043:71:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "24108:5:74", + "nodeType": "YulIdentifier", + "src": "24108:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "24058:49:74", + "nodeType": "YulIdentifier", + "src": "24058:49:74" + }, + "nativeSrc": "24058:56:74", + "nodeType": "YulFunctionCall", + "src": "24058:56:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "24047:7:74", + "nodeType": "YulTypedName", + "src": "24047:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "24123:21:74", + "nodeType": "YulVariableDeclaration", + "src": "24123:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "24137:7:74", + "nodeType": "YulIdentifier", + "src": "24137:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "24127:6:74", + "nodeType": "YulTypedName", + "src": "24127:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "24213:224:74", + "nodeType": "YulBlock", + "src": "24213:224:74", + "statements": [ + { + "nativeSrc": "24227:34:74", + "nodeType": "YulVariableDeclaration", + "src": "24227:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "24254:6:74", + "nodeType": "YulIdentifier", + "src": "24254:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "24248:5:74", + "nodeType": "YulIdentifier", + "src": "24248:5:74" + }, + "nativeSrc": "24248:13:74", + "nodeType": "YulFunctionCall", + "src": "24248:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "24231:13:74", + "nodeType": "YulTypedName", + "src": "24231:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "24274:70:74", + "nodeType": "YulAssignment", + "src": "24274:70:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "24325:13:74", + "nodeType": "YulIdentifier", + "src": "24325:13:74" + }, + { + "name": "pos", + "nativeSrc": "24340:3:74", + "nodeType": "YulIdentifier", + "src": "24340:3:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_bytes32_to_t_bytes32", + "nativeSrc": "24281:43:74", + "nodeType": "YulIdentifier", + "src": "24281:43:74" + }, + "nativeSrc": "24281:63:74", + "nodeType": "YulFunctionCall", + "src": "24281:63:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "24274:3:74", + "nodeType": "YulIdentifier", + "src": "24274:3:74" + } + ] + }, + { + "nativeSrc": "24357:70:74", + "nodeType": "YulAssignment", + "src": "24357:70:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "24420:6:74", + "nodeType": "YulIdentifier", + "src": "24420:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_bytes32_$dyn_memory_ptr", + "nativeSrc": "24367:52:74", + "nodeType": "YulIdentifier", + "src": "24367:52:74" + }, + "nativeSrc": "24367:60:74", + "nodeType": "YulFunctionCall", + "src": "24367:60:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "24357:6:74", + "nodeType": "YulIdentifier", + "src": "24357:6:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "24175:1:74", + "nodeType": "YulIdentifier", + "src": "24175:1:74" + }, + { + "name": "length", + "nativeSrc": "24178:6:74", + "nodeType": "YulIdentifier", + "src": "24178:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "24172:2:74", + "nodeType": "YulIdentifier", + "src": "24172:2:74" + }, + "nativeSrc": "24172:13:74", + "nodeType": "YulFunctionCall", + "src": "24172:13:74" + }, + "nativeSrc": "24153:284:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "24186:18:74", + "nodeType": "YulBlock", + "src": "24186:18:74", + "statements": [ + { + "nativeSrc": "24188:14:74", + "nodeType": "YulAssignment", + "src": "24188:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "24197:1:74", + "nodeType": "YulIdentifier", + "src": "24197:1:74" + }, + { + "kind": "number", + "nativeSrc": "24200:1:74", + "nodeType": "YulLiteral", + "src": "24200:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24193:3:74", + "nodeType": "YulIdentifier", + "src": "24193:3:74" + }, + "nativeSrc": "24193:9:74", + "nodeType": "YulFunctionCall", + "src": "24193:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "24188:1:74", + "nodeType": "YulIdentifier", + "src": "24188:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "24157:14:74", + "nodeType": "YulBlock", + "src": "24157:14:74", + "statements": [ + { + "nativeSrc": "24159:10:74", + "nodeType": "YulVariableDeclaration", + "src": "24159:10:74", + "value": { + "kind": "number", + "nativeSrc": "24168:1:74", + "nodeType": "YulLiteral", + "src": "24168:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "24163:1:74", + "nodeType": "YulTypedName", + "src": "24163:1:74", + "type": "" + } + ] + } + ] + }, + "src": "24153:284:74" + }, + { + "nativeSrc": "24446:10:74", + "nodeType": "YulAssignment", + "src": "24446:10:74", + "value": { + "name": "pos", + "nativeSrc": "24453:3:74", + "nodeType": "YulIdentifier", + "src": "24453:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "24446:3:74", + "nodeType": "YulIdentifier", + "src": "24446:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "23730:732:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "23833:5:74", + "nodeType": "YulTypedName", + "src": "23833:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "23840:3:74", + "nodeType": "YulTypedName", + "src": "23840:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "23849:3:74", + "nodeType": "YulTypedName", + "src": "23849:3:74", + "type": "" + } + ], + "src": "23730:732:74" + }, + { + "body": { + "nativeSrc": "24551:40:74", + "nodeType": "YulBlock", + "src": "24551:40:74", + "statements": [ + { + "nativeSrc": "24562:22:74", + "nodeType": "YulAssignment", + "src": "24562:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "24578:5:74", + "nodeType": "YulIdentifier", + "src": "24578:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "24572:5:74", + "nodeType": "YulIdentifier", + "src": "24572:5:74" + }, + "nativeSrc": "24572:12:74", + "nodeType": "YulFunctionCall", + "src": "24572:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "24562:6:74", + "nodeType": "YulIdentifier", + "src": "24562:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "24468:123:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "24534:5:74", + "nodeType": "YulTypedName", + "src": "24534:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "24544:6:74", + "nodeType": "YulTypedName", + "src": "24544:6:74", + "type": "" + } + ], + "src": "24468:123:74" + }, + { + "body": { + "nativeSrc": "24717:73:74", + "nodeType": "YulBlock", + "src": "24717:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24734:3:74", + "nodeType": "YulIdentifier", + "src": "24734:3:74" + }, + { + "name": "length", + "nativeSrc": "24739:6:74", + "nodeType": "YulIdentifier", + "src": "24739:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "24727:6:74", + "nodeType": "YulIdentifier", + "src": "24727:6:74" + }, + "nativeSrc": "24727:19:74", + "nodeType": "YulFunctionCall", + "src": "24727:19:74" + }, + "nativeSrc": "24727:19:74", + "nodeType": "YulExpressionStatement", + "src": "24727:19:74" + }, + { + "nativeSrc": "24755:29:74", + "nodeType": "YulAssignment", + "src": "24755:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "24774:3:74", + "nodeType": "YulIdentifier", + "src": "24774:3:74" + }, + { + "kind": "number", + "nativeSrc": "24779:4:74", + "nodeType": "YulLiteral", + "src": "24779:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24770:3:74", + "nodeType": "YulIdentifier", + "src": "24770:3:74" + }, + "nativeSrc": "24770:14:74", + "nodeType": "YulFunctionCall", + "src": "24770:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "24755:11:74", + "nodeType": "YulIdentifier", + "src": "24755:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "24597:193:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "24689:3:74", + "nodeType": "YulTypedName", + "src": "24689:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "24694:6:74", + "nodeType": "YulTypedName", + "src": "24694:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "24705:11:74", + "nodeType": "YulTypedName", + "src": "24705:11:74", + "type": "" + } + ], + "src": "24597:193:74" + }, + { + "body": { + "nativeSrc": "24877:60:74", + "nodeType": "YulBlock", + "src": "24877:60:74", + "statements": [ + { + "nativeSrc": "24887:11:74", + "nodeType": "YulAssignment", + "src": "24887:11:74", + "value": { + "name": "ptr", + "nativeSrc": "24895:3:74", + "nodeType": "YulIdentifier", + "src": "24895:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "24887:4:74", + "nodeType": "YulIdentifier", + "src": "24887:4:74" + } + ] + }, + { + "nativeSrc": "24908:22:74", + "nodeType": "YulAssignment", + "src": "24908:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "24920:3:74", + "nodeType": "YulIdentifier", + "src": "24920:3:74" + }, + { + "kind": "number", + "nativeSrc": "24925:4:74", + "nodeType": "YulLiteral", + "src": "24925:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "24916:3:74", + "nodeType": "YulIdentifier", + "src": "24916:3:74" + }, + "nativeSrc": "24916:14:74", + "nodeType": "YulFunctionCall", + "src": "24916:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "24908:4:74", + "nodeType": "YulIdentifier", + "src": "24908:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "24796:141:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "24864:3:74", + "nodeType": "YulTypedName", + "src": "24864:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "24872:4:74", + "nodeType": "YulTypedName", + "src": "24872:4:74", + "type": "" + } + ], + "src": "24796:141:74" + }, + { + "body": { + "nativeSrc": "25028:73:74", + "nodeType": "YulBlock", + "src": "25028:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25045:3:74", + "nodeType": "YulIdentifier", + "src": "25045:3:74" + }, + { + "name": "length", + "nativeSrc": "25050:6:74", + "nodeType": "YulIdentifier", + "src": "25050:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "25038:6:74", + "nodeType": "YulIdentifier", + "src": "25038:6:74" + }, + "nativeSrc": "25038:19:74", + "nodeType": "YulFunctionCall", + "src": "25038:19:74" + }, + "nativeSrc": "25038:19:74", + "nodeType": "YulExpressionStatement", + "src": "25038:19:74" + }, + { + "nativeSrc": "25066:29:74", + "nodeType": "YulAssignment", + "src": "25066:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25085:3:74", + "nodeType": "YulIdentifier", + "src": "25085:3:74" + }, + { + "kind": "number", + "nativeSrc": "25090:4:74", + "nodeType": "YulLiteral", + "src": "25090:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25081:3:74", + "nodeType": "YulIdentifier", + "src": "25081:3:74" + }, + "nativeSrc": "25081:14:74", + "nodeType": "YulFunctionCall", + "src": "25081:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "25066:11:74", + "nodeType": "YulIdentifier", + "src": "25066:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "24943:158:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "25000:3:74", + "nodeType": "YulTypedName", + "src": "25000:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "25005:6:74", + "nodeType": "YulTypedName", + "src": "25005:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "25016:11:74", + "nodeType": "YulTypedName", + "src": "25016:11:74", + "type": "" + } + ], + "src": "24943:158:74" + }, + { + "body": { + "nativeSrc": "25187:273:74", + "nodeType": "YulBlock", + "src": "25187:273:74", + "statements": [ + { + "nativeSrc": "25197:52:74", + "nodeType": "YulVariableDeclaration", + "src": "25197:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "25243:5:74", + "nodeType": "YulIdentifier", + "src": "25243:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "25211:31:74", + "nodeType": "YulIdentifier", + "src": "25211:31:74" + }, + "nativeSrc": "25211:38:74", + "nodeType": "YulFunctionCall", + "src": "25211:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "25201:6:74", + "nodeType": "YulTypedName", + "src": "25201:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "25258:67:74", + "nodeType": "YulAssignment", + "src": "25258:67:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25313:3:74", + "nodeType": "YulIdentifier", + "src": "25313:3:74" + }, + { + "name": "length", + "nativeSrc": "25318:6:74", + "nodeType": "YulIdentifier", + "src": "25318:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr", + "nativeSrc": "25265:47:74", + "nodeType": "YulIdentifier", + "src": "25265:47:74" + }, + "nativeSrc": "25265:60:74", + "nodeType": "YulFunctionCall", + "src": "25265:60:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "25258:3:74", + "nodeType": "YulIdentifier", + "src": "25258:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "25373:5:74", + "nodeType": "YulIdentifier", + "src": "25373:5:74" + }, + { + "kind": "number", + "nativeSrc": "25380:4:74", + "nodeType": "YulLiteral", + "src": "25380:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25369:3:74", + "nodeType": "YulIdentifier", + "src": "25369:3:74" + }, + "nativeSrc": "25369:16:74", + "nodeType": "YulFunctionCall", + "src": "25369:16:74" + }, + { + "name": "pos", + "nativeSrc": "25387:3:74", + "nodeType": "YulIdentifier", + "src": "25387:3:74" + }, + { + "name": "length", + "nativeSrc": "25392:6:74", + "nodeType": "YulIdentifier", + "src": "25392:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "25334:34:74", + "nodeType": "YulIdentifier", + "src": "25334:34:74" + }, + "nativeSrc": "25334:65:74", + "nodeType": "YulFunctionCall", + "src": "25334:65:74" + }, + "nativeSrc": "25334:65:74", + "nodeType": "YulExpressionStatement", + "src": "25334:65:74" + }, + { + "nativeSrc": "25408:46:74", + "nodeType": "YulAssignment", + "src": "25408:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "25419:3:74", + "nodeType": "YulIdentifier", + "src": "25419:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "25446:6:74", + "nodeType": "YulIdentifier", + "src": "25446:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "25424:21:74", + "nodeType": "YulIdentifier", + "src": "25424:21:74" + }, + "nativeSrc": "25424:29:74", + "nodeType": "YulFunctionCall", + "src": "25424:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25415:3:74", + "nodeType": "YulIdentifier", + "src": "25415:3:74" + }, + "nativeSrc": "25415:39:74", + "nodeType": "YulFunctionCall", + "src": "25415:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "25408:3:74", + "nodeType": "YulIdentifier", + "src": "25408:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "25107:353:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "25168:5:74", + "nodeType": "YulTypedName", + "src": "25168:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "25175:3:74", + "nodeType": "YulTypedName", + "src": "25175:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "25183:3:74", + "nodeType": "YulTypedName", + "src": "25183:3:74", + "type": "" + } + ], + "src": "25107:353:74" + }, + { + "body": { + "nativeSrc": "25564:94:74", + "nodeType": "YulBlock", + "src": "25564:94:74", + "statements": [ + { + "nativeSrc": "25574:78:74", + "nodeType": "YulAssignment", + "src": "25574:78:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "25640:6:74", + "nodeType": "YulIdentifier", + "src": "25640:6:74" + }, + { + "name": "pos", + "nativeSrc": "25648:3:74", + "nodeType": "YulIdentifier", + "src": "25648:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "25588:51:74", + "nodeType": "YulIdentifier", + "src": "25588:51:74" + }, + "nativeSrc": "25588:64:74", + "nodeType": "YulFunctionCall", + "src": "25588:64:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "25574:10:74", + "nodeType": "YulIdentifier", + "src": "25574:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "25466:192:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "25537:6:74", + "nodeType": "YulTypedName", + "src": "25537:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "25545:3:74", + "nodeType": "YulTypedName", + "src": "25545:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "25553:10:74", + "nodeType": "YulTypedName", + "src": "25553:10:74", + "type": "" + } + ], + "src": "25466:192:74" + }, + { + "body": { + "nativeSrc": "25748:38:74", + "nodeType": "YulBlock", + "src": "25748:38:74", + "statements": [ + { + "nativeSrc": "25758:22:74", + "nodeType": "YulAssignment", + "src": "25758:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "25770:3:74", + "nodeType": "YulIdentifier", + "src": "25770:3:74" + }, + { + "kind": "number", + "nativeSrc": "25775:4:74", + "nodeType": "YulLiteral", + "src": "25775:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "25766:3:74", + "nodeType": "YulIdentifier", + "src": "25766:3:74" + }, + "nativeSrc": "25766:14:74", + "nodeType": "YulFunctionCall", + "src": "25766:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "25758:4:74", + "nodeType": "YulIdentifier", + "src": "25758:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "25664:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "25735:3:74", + "nodeType": "YulTypedName", + "src": "25735:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "25743:4:74", + "nodeType": "YulTypedName", + "src": "25743:4:74", + "type": "" + } + ], + "src": "25664:122:74" + }, + { + "body": { + "nativeSrc": "25960:841:74", + "nodeType": "YulBlock", + "src": "25960:841:74", + "statements": [ + { + "nativeSrc": "25970:77:74", + "nodeType": "YulVariableDeclaration", + "src": "25970:77:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "26041:5:74", + "nodeType": "YulIdentifier", + "src": "26041:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "25984:56:74", + "nodeType": "YulIdentifier", + "src": "25984:56:74" + }, + "nativeSrc": "25984:63:74", + "nodeType": "YulFunctionCall", + "src": "25984:63:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "25974:6:74", + "nodeType": "YulTypedName", + "src": "25974:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26056:102:74", + "nodeType": "YulAssignment", + "src": "26056:102:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26146:3:74", + "nodeType": "YulIdentifier", + "src": "26146:3:74" + }, + { + "name": "length", + "nativeSrc": "26151:6:74", + "nodeType": "YulIdentifier", + "src": "26151:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "26063:82:74", + "nodeType": "YulIdentifier", + "src": "26063:82:74" + }, + "nativeSrc": "26063:95:74", + "nodeType": "YulFunctionCall", + "src": "26063:95:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "26056:3:74", + "nodeType": "YulIdentifier", + "src": "26056:3:74" + } + ] + }, + { + "nativeSrc": "26167:20:74", + "nodeType": "YulVariableDeclaration", + "src": "26167:20:74", + "value": { + "name": "pos", + "nativeSrc": "26184:3:74", + "nodeType": "YulIdentifier", + "src": "26184:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "26171:9:74", + "nodeType": "YulTypedName", + "src": "26171:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26196:39:74", + "nodeType": "YulVariableDeclaration", + "src": "26196:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26212:3:74", + "nodeType": "YulIdentifier", + "src": "26212:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "26221:6:74", + "nodeType": "YulIdentifier", + "src": "26221:6:74" + }, + { + "kind": "number", + "nativeSrc": "26229:4:74", + "nodeType": "YulLiteral", + "src": "26229:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "26217:3:74", + "nodeType": "YulIdentifier", + "src": "26217:3:74" + }, + "nativeSrc": "26217:17:74", + "nodeType": "YulFunctionCall", + "src": "26217:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26208:3:74", + "nodeType": "YulIdentifier", + "src": "26208:3:74" + }, + "nativeSrc": "26208:27:74", + "nodeType": "YulFunctionCall", + "src": "26208:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "26200:4:74", + "nodeType": "YulTypedName", + "src": "26200:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26244:80:74", + "nodeType": "YulVariableDeclaration", + "src": "26244:80:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "26318:5:74", + "nodeType": "YulIdentifier", + "src": "26318:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "26259:58:74", + "nodeType": "YulIdentifier", + "src": "26259:58:74" + }, + "nativeSrc": "26259:65:74", + "nodeType": "YulFunctionCall", + "src": "26259:65:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "26248:7:74", + "nodeType": "YulTypedName", + "src": "26248:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26333:21:74", + "nodeType": "YulVariableDeclaration", + "src": "26333:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "26347:7:74", + "nodeType": "YulIdentifier", + "src": "26347:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "26337:6:74", + "nodeType": "YulTypedName", + "src": "26337:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "26423:333:74", + "nodeType": "YulBlock", + "src": "26423:333:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26444:3:74", + "nodeType": "YulIdentifier", + "src": "26444:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "26453:4:74", + "nodeType": "YulIdentifier", + "src": "26453:4:74" + }, + { + "name": "headStart", + "nativeSrc": "26459:9:74", + "nodeType": "YulIdentifier", + "src": "26459:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "26449:3:74", + "nodeType": "YulIdentifier", + "src": "26449:3:74" + }, + "nativeSrc": "26449:20:74", + "nodeType": "YulFunctionCall", + "src": "26449:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "26437:6:74", + "nodeType": "YulIdentifier", + "src": "26437:6:74" + }, + "nativeSrc": "26437:33:74", + "nodeType": "YulFunctionCall", + "src": "26437:33:74" + }, + "nativeSrc": "26437:33:74", + "nodeType": "YulExpressionStatement", + "src": "26437:33:74" + }, + { + "nativeSrc": "26483:34:74", + "nodeType": "YulVariableDeclaration", + "src": "26483:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "26510:6:74", + "nodeType": "YulIdentifier", + "src": "26510:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "26504:5:74", + "nodeType": "YulIdentifier", + "src": "26504:5:74" + }, + "nativeSrc": "26504:13:74", + "nodeType": "YulFunctionCall", + "src": "26504:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "26487:13:74", + "nodeType": "YulTypedName", + "src": "26487:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "26530:90:74", + "nodeType": "YulAssignment", + "src": "26530:90:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "26600:13:74", + "nodeType": "YulIdentifier", + "src": "26600:13:74" + }, + { + "name": "tail", + "nativeSrc": "26615:4:74", + "nodeType": "YulIdentifier", + "src": "26615:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr", + "nativeSrc": "26538:61:74", + "nodeType": "YulIdentifier", + "src": "26538:61:74" + }, + "nativeSrc": "26538:82:74", + "nodeType": "YulFunctionCall", + "src": "26538:82:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "26530:4:74", + "nodeType": "YulIdentifier", + "src": "26530:4:74" + } + ] + }, + { + "nativeSrc": "26633:79:74", + "nodeType": "YulAssignment", + "src": "26633:79:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "26705:6:74", + "nodeType": "YulIdentifier", + "src": "26705:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "26643:61:74", + "nodeType": "YulIdentifier", + "src": "26643:61:74" + }, + "nativeSrc": "26643:69:74", + "nodeType": "YulFunctionCall", + "src": "26643:69:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "26633:6:74", + "nodeType": "YulIdentifier", + "src": "26633:6:74" + } + ] + }, + { + "nativeSrc": "26725:21:74", + "nodeType": "YulAssignment", + "src": "26725:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "26736:3:74", + "nodeType": "YulIdentifier", + "src": "26736:3:74" + }, + { + "kind": "number", + "nativeSrc": "26741:4:74", + "nodeType": "YulLiteral", + "src": "26741:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26732:3:74", + "nodeType": "YulIdentifier", + "src": "26732:3:74" + }, + "nativeSrc": "26732:14:74", + "nodeType": "YulFunctionCall", + "src": "26732:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "26725:3:74", + "nodeType": "YulIdentifier", + "src": "26725:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "26385:1:74", + "nodeType": "YulIdentifier", + "src": "26385:1:74" + }, + { + "name": "length", + "nativeSrc": "26388:6:74", + "nodeType": "YulIdentifier", + "src": "26388:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "26382:2:74", + "nodeType": "YulIdentifier", + "src": "26382:2:74" + }, + "nativeSrc": "26382:13:74", + "nodeType": "YulFunctionCall", + "src": "26382:13:74" + }, + "nativeSrc": "26363:393:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "26396:18:74", + "nodeType": "YulBlock", + "src": "26396:18:74", + "statements": [ + { + "nativeSrc": "26398:14:74", + "nodeType": "YulAssignment", + "src": "26398:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "26407:1:74", + "nodeType": "YulIdentifier", + "src": "26407:1:74" + }, + { + "kind": "number", + "nativeSrc": "26410:1:74", + "nodeType": "YulLiteral", + "src": "26410:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "26403:3:74", + "nodeType": "YulIdentifier", + "src": "26403:3:74" + }, + "nativeSrc": "26403:9:74", + "nodeType": "YulFunctionCall", + "src": "26403:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "26398:1:74", + "nodeType": "YulIdentifier", + "src": "26398:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "26367:14:74", + "nodeType": "YulBlock", + "src": "26367:14:74", + "statements": [ + { + "nativeSrc": "26369:10:74", + "nodeType": "YulVariableDeclaration", + "src": "26369:10:74", + "value": { + "kind": "number", + "nativeSrc": "26378:1:74", + "nodeType": "YulLiteral", + "src": "26378:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "26373:1:74", + "nodeType": "YulTypedName", + "src": "26373:1:74", + "type": "" + } + ] + } + ] + }, + "src": "26363:393:74" + }, + { + "nativeSrc": "26765:11:74", + "nodeType": "YulAssignment", + "src": "26765:11:74", + "value": { + "name": "tail", + "nativeSrc": "26772:4:74", + "nodeType": "YulIdentifier", + "src": "26772:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "26765:3:74", + "nodeType": "YulIdentifier", + "src": "26765:3:74" + } + ] + }, + { + "nativeSrc": "26785:10:74", + "nodeType": "YulAssignment", + "src": "26785:10:74", + "value": { + "name": "pos", + "nativeSrc": "26792:3:74", + "nodeType": "YulIdentifier", + "src": "26792:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "26785:3:74", + "nodeType": "YulIdentifier", + "src": "26785:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "25818:983:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "25939:5:74", + "nodeType": "YulTypedName", + "src": "25939:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "25946:3:74", + "nodeType": "YulTypedName", + "src": "25946:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "25955:3:74", + "nodeType": "YulTypedName", + "src": "25955:3:74", + "type": "" + } + ], + "src": "25818:983:74" + }, + { + "body": { + "nativeSrc": "27153:743:74", + "nodeType": "YulBlock", + "src": "27153:743:74", + "statements": [ + { + "nativeSrc": "27163:27:74", + "nodeType": "YulAssignment", + "src": "27163:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27175:9:74", + "nodeType": "YulIdentifier", + "src": "27175:9:74" + }, + { + "kind": "number", + "nativeSrc": "27186:3:74", + "nodeType": "YulLiteral", + "src": "27186:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27171:3:74", + "nodeType": "YulIdentifier", + "src": "27171:3:74" + }, + "nativeSrc": "27171:19:74", + "nodeType": "YulFunctionCall", + "src": "27171:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27163:4:74", + "nodeType": "YulIdentifier", + "src": "27163:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "27244:6:74", + "nodeType": "YulIdentifier", + "src": "27244:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27257:9:74", + "nodeType": "YulIdentifier", + "src": "27257:9:74" + }, + { + "kind": "number", + "nativeSrc": "27268:1:74", + "nodeType": "YulLiteral", + "src": "27268:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27253:3:74", + "nodeType": "YulIdentifier", + "src": "27253:3:74" + }, + "nativeSrc": "27253:17:74", + "nodeType": "YulFunctionCall", + "src": "27253:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "27200:43:74", + "nodeType": "YulIdentifier", + "src": "27200:43:74" + }, + "nativeSrc": "27200:71:74", + "nodeType": "YulFunctionCall", + "src": "27200:71:74" + }, + "nativeSrc": "27200:71:74", + "nodeType": "YulExpressionStatement", + "src": "27200:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27292:9:74", + "nodeType": "YulIdentifier", + "src": "27292:9:74" + }, + { + "kind": "number", + "nativeSrc": "27303:2:74", + "nodeType": "YulLiteral", + "src": "27303:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27288:3:74", + "nodeType": "YulIdentifier", + "src": "27288:3:74" + }, + "nativeSrc": "27288:18:74", + "nodeType": "YulFunctionCall", + "src": "27288:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "27312:4:74", + "nodeType": "YulIdentifier", + "src": "27312:4:74" + }, + { + "name": "headStart", + "nativeSrc": "27318:9:74", + "nodeType": "YulIdentifier", + "src": "27318:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27308:3:74", + "nodeType": "YulIdentifier", + "src": "27308:3:74" + }, + "nativeSrc": "27308:20:74", + "nodeType": "YulFunctionCall", + "src": "27308:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27281:6:74", + "nodeType": "YulIdentifier", + "src": "27281:6:74" + }, + "nativeSrc": "27281:48:74", + "nodeType": "YulFunctionCall", + "src": "27281:48:74" + }, + "nativeSrc": "27281:48:74", + "nodeType": "YulExpressionStatement", + "src": "27281:48:74" + }, + { + "nativeSrc": "27338:116:74", + "nodeType": "YulAssignment", + "src": "27338:116:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "27440:6:74", + "nodeType": "YulIdentifier", + "src": "27440:6:74" + }, + { + "name": "tail", + "nativeSrc": "27449:4:74", + "nodeType": "YulIdentifier", + "src": "27449:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "27346:93:74", + "nodeType": "YulIdentifier", + "src": "27346:93:74" + }, + "nativeSrc": "27346:108:74", + "nodeType": "YulFunctionCall", + "src": "27346:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27338:4:74", + "nodeType": "YulIdentifier", + "src": "27338:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27475:9:74", + "nodeType": "YulIdentifier", + "src": "27475:9:74" + }, + { + "kind": "number", + "nativeSrc": "27486:2:74", + "nodeType": "YulLiteral", + "src": "27486:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27471:3:74", + "nodeType": "YulIdentifier", + "src": "27471:3:74" + }, + "nativeSrc": "27471:18:74", + "nodeType": "YulFunctionCall", + "src": "27471:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "27495:4:74", + "nodeType": "YulIdentifier", + "src": "27495:4:74" + }, + { + "name": "headStart", + "nativeSrc": "27501:9:74", + "nodeType": "YulIdentifier", + "src": "27501:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27491:3:74", + "nodeType": "YulIdentifier", + "src": "27491:3:74" + }, + "nativeSrc": "27491:20:74", + "nodeType": "YulFunctionCall", + "src": "27491:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27464:6:74", + "nodeType": "YulIdentifier", + "src": "27464:6:74" + }, + "nativeSrc": "27464:48:74", + "nodeType": "YulFunctionCall", + "src": "27464:48:74" + }, + "nativeSrc": "27464:48:74", + "nodeType": "YulExpressionStatement", + "src": "27464:48:74" + }, + { + "nativeSrc": "27521:134:74", + "nodeType": "YulAssignment", + "src": "27521:134:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "27641:6:74", + "nodeType": "YulIdentifier", + "src": "27641:6:74" + }, + { + "name": "tail", + "nativeSrc": "27650:4:74", + "nodeType": "YulIdentifier", + "src": "27650:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "27529:111:74", + "nodeType": "YulIdentifier", + "src": "27529:111:74" + }, + "nativeSrc": "27529:126:74", + "nodeType": "YulFunctionCall", + "src": "27529:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27521:4:74", + "nodeType": "YulIdentifier", + "src": "27521:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27676:9:74", + "nodeType": "YulIdentifier", + "src": "27676:9:74" + }, + { + "kind": "number", + "nativeSrc": "27687:2:74", + "nodeType": "YulLiteral", + "src": "27687:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27672:3:74", + "nodeType": "YulIdentifier", + "src": "27672:3:74" + }, + "nativeSrc": "27672:18:74", + "nodeType": "YulFunctionCall", + "src": "27672:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "27696:4:74", + "nodeType": "YulIdentifier", + "src": "27696:4:74" + }, + { + "name": "headStart", + "nativeSrc": "27702:9:74", + "nodeType": "YulIdentifier", + "src": "27702:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "27692:3:74", + "nodeType": "YulIdentifier", + "src": "27692:3:74" + }, + "nativeSrc": "27692:20:74", + "nodeType": "YulFunctionCall", + "src": "27692:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "27665:6:74", + "nodeType": "YulIdentifier", + "src": "27665:6:74" + }, + "nativeSrc": "27665:48:74", + "nodeType": "YulFunctionCall", + "src": "27665:48:74" + }, + "nativeSrc": "27665:48:74", + "nodeType": "YulExpressionStatement", + "src": "27665:48:74" + }, + { + "nativeSrc": "27722:84:74", + "nodeType": "YulAssignment", + "src": "27722:84:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "27792:6:74", + "nodeType": "YulIdentifier", + "src": "27792:6:74" + }, + { + "name": "tail", + "nativeSrc": "27801:4:74", + "nodeType": "YulIdentifier", + "src": "27801:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "27730:61:74", + "nodeType": "YulIdentifier", + "src": "27730:61:74" + }, + "nativeSrc": "27730:76:74", + "nodeType": "YulFunctionCall", + "src": "27730:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "27722:4:74", + "nodeType": "YulIdentifier", + "src": "27722:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "27860:6:74", + "nodeType": "YulIdentifier", + "src": "27860:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "27873:9:74", + "nodeType": "YulIdentifier", + "src": "27873:9:74" + }, + { + "kind": "number", + "nativeSrc": "27884:3:74", + "nodeType": "YulLiteral", + "src": "27884:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "27869:3:74", + "nodeType": "YulIdentifier", + "src": "27869:3:74" + }, + "nativeSrc": "27869:19:74", + "nodeType": "YulFunctionCall", + "src": "27869:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "27816:43:74", + "nodeType": "YulIdentifier", + "src": "27816:43:74" + }, + "nativeSrc": "27816:73:74", + "nodeType": "YulFunctionCall", + "src": "27816:73:74" + }, + "nativeSrc": "27816:73:74", + "nodeType": "YulExpressionStatement", + "src": "27816:73:74" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__fromStack_reversed", + "nativeSrc": "26807:1089:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "27093:9:74", + "nodeType": "YulTypedName", + "src": "27093:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "27105:6:74", + "nodeType": "YulTypedName", + "src": "27105:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "27113:6:74", + "nodeType": "YulTypedName", + "src": "27113:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "27121:6:74", + "nodeType": "YulTypedName", + "src": "27121:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "27129:6:74", + "nodeType": "YulTypedName", + "src": "27129:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "27137:6:74", + "nodeType": "YulTypedName", + "src": "27137:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "27148:4:74", + "nodeType": "YulTypedName", + "src": "27148:4:74", + "type": "" + } + ], + "src": "26807:1089:74" + }, + { + "body": { + "nativeSrc": "28039:835:74", + "nodeType": "YulBlock", + "src": "28039:835:74", + "statements": [ + { + "nativeSrc": "28049:99:74", + "nodeType": "YulAssignment", + "src": "28049:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "28140:6:74", + "nodeType": "YulIdentifier", + "src": "28140:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "28074:65:74", + "nodeType": "YulIdentifier", + "src": "28074:65:74" + }, + "nativeSrc": "28074:73:74", + "nodeType": "YulFunctionCall", + "src": "28074:73:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "28058:15:74", + "nodeType": "YulIdentifier", + "src": "28058:15:74" + }, + "nativeSrc": "28058:90:74", + "nodeType": "YulFunctionCall", + "src": "28058:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "28049:5:74", + "nodeType": "YulIdentifier", + "src": "28049:5:74" + } + ] + }, + { + "nativeSrc": "28157:16:74", + "nodeType": "YulVariableDeclaration", + "src": "28157:16:74", + "value": { + "name": "array", + "nativeSrc": "28168:5:74", + "nodeType": "YulIdentifier", + "src": "28168:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "28161:3:74", + "nodeType": "YulTypedName", + "src": "28161:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "28190:5:74", + "nodeType": "YulIdentifier", + "src": "28190:5:74" + }, + { + "name": "length", + "nativeSrc": "28197:6:74", + "nodeType": "YulIdentifier", + "src": "28197:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28183:6:74", + "nodeType": "YulIdentifier", + "src": "28183:6:74" + }, + "nativeSrc": "28183:21:74", + "nodeType": "YulFunctionCall", + "src": "28183:21:74" + }, + "nativeSrc": "28183:21:74", + "nodeType": "YulExpressionStatement", + "src": "28183:21:74" + }, + { + "nativeSrc": "28213:23:74", + "nodeType": "YulAssignment", + "src": "28213:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "28224:5:74", + "nodeType": "YulIdentifier", + "src": "28224:5:74" + }, + { + "kind": "number", + "nativeSrc": "28231:4:74", + "nodeType": "YulLiteral", + "src": "28231:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28220:3:74", + "nodeType": "YulIdentifier", + "src": "28220:3:74" + }, + "nativeSrc": "28220:16:74", + "nodeType": "YulFunctionCall", + "src": "28220:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "28213:3:74", + "nodeType": "YulIdentifier", + "src": "28213:3:74" + } + ] + }, + { + "nativeSrc": "28246:44:74", + "nodeType": "YulVariableDeclaration", + "src": "28246:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "28264:6:74", + "nodeType": "YulIdentifier", + "src": "28264:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "28276:6:74", + "nodeType": "YulIdentifier", + "src": "28276:6:74" + }, + { + "kind": "number", + "nativeSrc": "28284:4:74", + "nodeType": "YulLiteral", + "src": "28284:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "28272:3:74", + "nodeType": "YulIdentifier", + "src": "28272:3:74" + }, + "nativeSrc": "28272:17:74", + "nodeType": "YulFunctionCall", + "src": "28272:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28260:3:74", + "nodeType": "YulIdentifier", + "src": "28260:3:74" + }, + "nativeSrc": "28260:30:74", + "nodeType": "YulFunctionCall", + "src": "28260:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "28250:6:74", + "nodeType": "YulTypedName", + "src": "28250:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "28318:103:74", + "nodeType": "YulBlock", + "src": "28318:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "28332:77:74", + "nodeType": "YulIdentifier", + "src": "28332:77:74" + }, + "nativeSrc": "28332:79:74", + "nodeType": "YulFunctionCall", + "src": "28332:79:74" + }, + "nativeSrc": "28332:79:74", + "nodeType": "YulExpressionStatement", + "src": "28332:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "28305:6:74", + "nodeType": "YulIdentifier", + "src": "28305:6:74" + }, + { + "name": "end", + "nativeSrc": "28313:3:74", + "nodeType": "YulIdentifier", + "src": "28313:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "28302:2:74", + "nodeType": "YulIdentifier", + "src": "28302:2:74" + }, + "nativeSrc": "28302:15:74", + "nodeType": "YulFunctionCall", + "src": "28302:15:74" + }, + "nativeSrc": "28299:122:74", + "nodeType": "YulIf", + "src": "28299:122:74" + }, + { + "body": { + "nativeSrc": "28506:362:74", + "nodeType": "YulBlock", + "src": "28506:362:74", + "statements": [ + { + "nativeSrc": "28521:29:74", + "nodeType": "YulVariableDeclaration", + "src": "28521:29:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "28546:3:74", + "nodeType": "YulIdentifier", + "src": "28546:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "28540:5:74", + "nodeType": "YulIdentifier", + "src": "28540:5:74" + }, + "nativeSrc": "28540:10:74", + "nodeType": "YulFunctionCall", + "src": "28540:10:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "28525:11:74", + "nodeType": "YulTypedName", + "src": "28525:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "28602:83:74", + "nodeType": "YulBlock", + "src": "28602:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "28604:77:74", + "nodeType": "YulIdentifier", + "src": "28604:77:74" + }, + "nativeSrc": "28604:79:74", + "nodeType": "YulFunctionCall", + "src": "28604:79:74" + }, + "nativeSrc": "28604:79:74", + "nodeType": "YulExpressionStatement", + "src": "28604:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "28569:11:74", + "nodeType": "YulIdentifier", + "src": "28569:11:74" + }, + { + "kind": "number", + "nativeSrc": "28582:18:74", + "nodeType": "YulLiteral", + "src": "28582:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "28566:2:74", + "nodeType": "YulIdentifier", + "src": "28566:2:74" + }, + "nativeSrc": "28566:35:74", + "nodeType": "YulFunctionCall", + "src": "28566:35:74" + }, + "nativeSrc": "28563:122:74", + "nodeType": "YulIf", + "src": "28563:122:74" + }, + { + "nativeSrc": "28698:42:74", + "nodeType": "YulVariableDeclaration", + "src": "28698:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "28720:6:74", + "nodeType": "YulIdentifier", + "src": "28720:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "28728:11:74", + "nodeType": "YulIdentifier", + "src": "28728:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28716:3:74", + "nodeType": "YulIdentifier", + "src": "28716:3:74" + }, + "nativeSrc": "28716:24:74", + "nodeType": "YulFunctionCall", + "src": "28716:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "28702:10:74", + "nodeType": "YulTypedName", + "src": "28702:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "28761:3:74", + "nodeType": "YulIdentifier", + "src": "28761:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "28807:10:74", + "nodeType": "YulIdentifier", + "src": "28807:10:74" + }, + { + "name": "end", + "nativeSrc": "28819:3:74", + "nodeType": "YulIdentifier", + "src": "28819:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nativeSrc": "28766:40:74", + "nodeType": "YulIdentifier", + "src": "28766:40:74" + }, + "nativeSrc": "28766:57:74", + "nodeType": "YulFunctionCall", + "src": "28766:57:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "28754:6:74", + "nodeType": "YulIdentifier", + "src": "28754:6:74" + }, + "nativeSrc": "28754:70:74", + "nodeType": "YulFunctionCall", + "src": "28754:70:74" + }, + "nativeSrc": "28754:70:74", + "nodeType": "YulExpressionStatement", + "src": "28754:70:74" + }, + { + "nativeSrc": "28837:21:74", + "nodeType": "YulAssignment", + "src": "28837:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "28848:3:74", + "nodeType": "YulIdentifier", + "src": "28848:3:74" + }, + { + "kind": "number", + "nativeSrc": "28853:4:74", + "nodeType": "YulLiteral", + "src": "28853:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28844:3:74", + "nodeType": "YulIdentifier", + "src": "28844:3:74" + }, + "nativeSrc": "28844:14:74", + "nodeType": "YulFunctionCall", + "src": "28844:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "28837:3:74", + "nodeType": "YulIdentifier", + "src": "28837:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "28459:3:74", + "nodeType": "YulIdentifier", + "src": "28459:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "28464:6:74", + "nodeType": "YulIdentifier", + "src": "28464:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "28456:2:74", + "nodeType": "YulIdentifier", + "src": "28456:2:74" + }, + "nativeSrc": "28456:15:74", + "nodeType": "YulFunctionCall", + "src": "28456:15:74" + }, + "nativeSrc": "28430:438:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "28472:25:74", + "nodeType": "YulBlock", + "src": "28472:25:74", + "statements": [ + { + "nativeSrc": "28474:21:74", + "nodeType": "YulAssignment", + "src": "28474:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "28485:3:74", + "nodeType": "YulIdentifier", + "src": "28485:3:74" + }, + { + "kind": "number", + "nativeSrc": "28490:4:74", + "nodeType": "YulLiteral", + "src": "28490:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "28481:3:74", + "nodeType": "YulIdentifier", + "src": "28481:3:74" + }, + "nativeSrc": "28481:14:74", + "nodeType": "YulFunctionCall", + "src": "28481:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "28474:3:74", + "nodeType": "YulIdentifier", + "src": "28474:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "28434:21:74", + "nodeType": "YulBlock", + "src": "28434:21:74", + "statements": [ + { + "nativeSrc": "28436:17:74", + "nodeType": "YulVariableDeclaration", + "src": "28436:17:74", + "value": { + "name": "offset", + "nativeSrc": "28447:6:74", + "nodeType": "YulIdentifier", + "src": "28447:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "28440:3:74", + "nodeType": "YulTypedName", + "src": "28440:3:74", + "type": "" + } + ] + } + ] + }, + "src": "28430:438:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "27917:957:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "28009:6:74", + "nodeType": "YulTypedName", + "src": "28009:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "28017:6:74", + "nodeType": "YulTypedName", + "src": "28017:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "28025:3:74", + "nodeType": "YulTypedName", + "src": "28025:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "28033:5:74", + "nodeType": "YulTypedName", + "src": "28033:5:74", + "type": "" + } + ], + "src": "27917:957:74" + }, + { + "body": { + "nativeSrc": "28992:306:74", + "nodeType": "YulBlock", + "src": "28992:306:74", + "statements": [ + { + "body": { + "nativeSrc": "29041:83:74", + "nodeType": "YulBlock", + "src": "29041:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "29043:77:74", + "nodeType": "YulIdentifier", + "src": "29043:77:74" + }, + "nativeSrc": "29043:79:74", + "nodeType": "YulFunctionCall", + "src": "29043:79:74" + }, + "nativeSrc": "29043:79:74", + "nodeType": "YulExpressionStatement", + "src": "29043:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "29020:6:74", + "nodeType": "YulIdentifier", + "src": "29020:6:74" + }, + { + "kind": "number", + "nativeSrc": "29028:4:74", + "nodeType": "YulLiteral", + "src": "29028:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29016:3:74", + "nodeType": "YulIdentifier", + "src": "29016:3:74" + }, + "nativeSrc": "29016:17:74", + "nodeType": "YulFunctionCall", + "src": "29016:17:74" + }, + { + "name": "end", + "nativeSrc": "29035:3:74", + "nodeType": "YulIdentifier", + "src": "29035:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "29012:3:74", + "nodeType": "YulIdentifier", + "src": "29012:3:74" + }, + "nativeSrc": "29012:27:74", + "nodeType": "YulFunctionCall", + "src": "29012:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "29005:6:74", + "nodeType": "YulIdentifier", + "src": "29005:6:74" + }, + "nativeSrc": "29005:35:74", + "nodeType": "YulFunctionCall", + "src": "29005:35:74" + }, + "nativeSrc": "29002:122:74", + "nodeType": "YulIf", + "src": "29002:122:74" + }, + { + "nativeSrc": "29133:27:74", + "nodeType": "YulVariableDeclaration", + "src": "29133:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "29153:6:74", + "nodeType": "YulIdentifier", + "src": "29153:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "29147:5:74", + "nodeType": "YulIdentifier", + "src": "29147:5:74" + }, + "nativeSrc": "29147:13:74", + "nodeType": "YulFunctionCall", + "src": "29147:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "29137:6:74", + "nodeType": "YulTypedName", + "src": "29137:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "29169:123:74", + "nodeType": "YulAssignment", + "src": "29169:123:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "29265:6:74", + "nodeType": "YulIdentifier", + "src": "29265:6:74" + }, + { + "kind": "number", + "nativeSrc": "29273:4:74", + "nodeType": "YulLiteral", + "src": "29273:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29261:3:74", + "nodeType": "YulIdentifier", + "src": "29261:3:74" + }, + "nativeSrc": "29261:17:74", + "nodeType": "YulFunctionCall", + "src": "29261:17:74" + }, + { + "name": "length", + "nativeSrc": "29280:6:74", + "nodeType": "YulIdentifier", + "src": "29280:6:74" + }, + { + "name": "end", + "nativeSrc": "29288:3:74", + "nodeType": "YulIdentifier", + "src": "29288:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "29178:82:74", + "nodeType": "YulIdentifier", + "src": "29178:82:74" + }, + "nativeSrc": "29178:114:74", + "nodeType": "YulFunctionCall", + "src": "29178:114:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "29169:5:74", + "nodeType": "YulIdentifier", + "src": "29169:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "28895:403:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "28970:6:74", + "nodeType": "YulTypedName", + "src": "28970:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "28978:3:74", + "nodeType": "YulTypedName", + "src": "28978:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "28986:5:74", + "nodeType": "YulTypedName", + "src": "28986:5:74", + "type": "" + } + ], + "src": "28895:403:74" + }, + { + "body": { + "nativeSrc": "29415:461:74", + "nodeType": "YulBlock", + "src": "29415:461:74", + "statements": [ + { + "body": { + "nativeSrc": "29461:83:74", + "nodeType": "YulBlock", + "src": "29461:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "29463:77:74", + "nodeType": "YulIdentifier", + "src": "29463:77:74" + }, + "nativeSrc": "29463:79:74", + "nodeType": "YulFunctionCall", + "src": "29463:79:74" + }, + "nativeSrc": "29463:79:74", + "nodeType": "YulExpressionStatement", + "src": "29463:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "29436:7:74", + "nodeType": "YulIdentifier", + "src": "29436:7:74" + }, + { + "name": "headStart", + "nativeSrc": "29445:9:74", + "nodeType": "YulIdentifier", + "src": "29445:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "29432:3:74", + "nodeType": "YulIdentifier", + "src": "29432:3:74" + }, + "nativeSrc": "29432:23:74", + "nodeType": "YulFunctionCall", + "src": "29432:23:74" + }, + { + "kind": "number", + "nativeSrc": "29457:2:74", + "nodeType": "YulLiteral", + "src": "29457:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "29428:3:74", + "nodeType": "YulIdentifier", + "src": "29428:3:74" + }, + "nativeSrc": "29428:32:74", + "nodeType": "YulFunctionCall", + "src": "29428:32:74" + }, + "nativeSrc": "29425:119:74", + "nodeType": "YulIf", + "src": "29425:119:74" + }, + { + "nativeSrc": "29554:315:74", + "nodeType": "YulBlock", + "src": "29554:315:74", + "statements": [ + { + "nativeSrc": "29569:38:74", + "nodeType": "YulVariableDeclaration", + "src": "29569:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29593:9:74", + "nodeType": "YulIdentifier", + "src": "29593:9:74" + }, + { + "kind": "number", + "nativeSrc": "29604:1:74", + "nodeType": "YulLiteral", + "src": "29604:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29589:3:74", + "nodeType": "YulIdentifier", + "src": "29589:3:74" + }, + "nativeSrc": "29589:17:74", + "nodeType": "YulFunctionCall", + "src": "29589:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "29583:5:74", + "nodeType": "YulIdentifier", + "src": "29583:5:74" + }, + "nativeSrc": "29583:24:74", + "nodeType": "YulFunctionCall", + "src": "29583:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "29573:6:74", + "nodeType": "YulTypedName", + "src": "29573:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "29654:83:74", + "nodeType": "YulBlock", + "src": "29654:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "29656:77:74", + "nodeType": "YulIdentifier", + "src": "29656:77:74" + }, + "nativeSrc": "29656:79:74", + "nodeType": "YulFunctionCall", + "src": "29656:79:74" + }, + "nativeSrc": "29656:79:74", + "nodeType": "YulExpressionStatement", + "src": "29656:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "29626:6:74", + "nodeType": "YulIdentifier", + "src": "29626:6:74" + }, + { + "kind": "number", + "nativeSrc": "29634:18:74", + "nodeType": "YulLiteral", + "src": "29634:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "29623:2:74", + "nodeType": "YulIdentifier", + "src": "29623:2:74" + }, + "nativeSrc": "29623:30:74", + "nodeType": "YulFunctionCall", + "src": "29623:30:74" + }, + "nativeSrc": "29620:117:74", + "nodeType": "YulIf", + "src": "29620:117:74" + }, + { + "nativeSrc": "29751:108:74", + "nodeType": "YulAssignment", + "src": "29751:108:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "29831:9:74", + "nodeType": "YulIdentifier", + "src": "29831:9:74" + }, + { + "name": "offset", + "nativeSrc": "29842:6:74", + "nodeType": "YulIdentifier", + "src": "29842:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "29827:3:74", + "nodeType": "YulIdentifier", + "src": "29827:3:74" + }, + "nativeSrc": "29827:22:74", + "nodeType": "YulFunctionCall", + "src": "29827:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "29851:7:74", + "nodeType": "YulIdentifier", + "src": "29851:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "29761:65:74", + "nodeType": "YulIdentifier", + "src": "29761:65:74" + }, + "nativeSrc": "29761:98:74", + "nodeType": "YulFunctionCall", + "src": "29761:98:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "29751:6:74", + "nodeType": "YulIdentifier", + "src": "29751:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "29304:572:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29385:9:74", + "nodeType": "YulTypedName", + "src": "29385:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "29396:7:74", + "nodeType": "YulTypedName", + "src": "29396:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "29408:6:74", + "nodeType": "YulTypedName", + "src": "29408:6:74", + "type": "" + } + ], + "src": "29304:572:74" + }, + { + "body": { + "nativeSrc": "30008:206:74", + "nodeType": "YulBlock", + "src": "30008:206:74", + "statements": [ + { + "nativeSrc": "30018:26:74", + "nodeType": "YulAssignment", + "src": "30018:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30030:9:74", + "nodeType": "YulIdentifier", + "src": "30030:9:74" + }, + { + "kind": "number", + "nativeSrc": "30041:2:74", + "nodeType": "YulLiteral", + "src": "30041:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30026:3:74", + "nodeType": "YulIdentifier", + "src": "30026:3:74" + }, + "nativeSrc": "30026:18:74", + "nodeType": "YulFunctionCall", + "src": "30026:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30018:4:74", + "nodeType": "YulIdentifier", + "src": "30018:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "30098:6:74", + "nodeType": "YulIdentifier", + "src": "30098:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30111:9:74", + "nodeType": "YulIdentifier", + "src": "30111:9:74" + }, + { + "kind": "number", + "nativeSrc": "30122:1:74", + "nodeType": "YulLiteral", + "src": "30122:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30107:3:74", + "nodeType": "YulIdentifier", + "src": "30107:3:74" + }, + "nativeSrc": "30107:17:74", + "nodeType": "YulFunctionCall", + "src": "30107:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "30054:43:74", + "nodeType": "YulIdentifier", + "src": "30054:43:74" + }, + "nativeSrc": "30054:71:74", + "nodeType": "YulFunctionCall", + "src": "30054:71:74" + }, + "nativeSrc": "30054:71:74", + "nodeType": "YulExpressionStatement", + "src": "30054:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "30179:6:74", + "nodeType": "YulIdentifier", + "src": "30179:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30192:9:74", + "nodeType": "YulIdentifier", + "src": "30192:9:74" + }, + { + "kind": "number", + "nativeSrc": "30203:2:74", + "nodeType": "YulLiteral", + "src": "30203:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30188:3:74", + "nodeType": "YulIdentifier", + "src": "30188:3:74" + }, + "nativeSrc": "30188:18:74", + "nodeType": "YulFunctionCall", + "src": "30188:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "30135:43:74", + "nodeType": "YulIdentifier", + "src": "30135:43:74" + }, + "nativeSrc": "30135:72:74", + "nodeType": "YulFunctionCall", + "src": "30135:72:74" + }, + "nativeSrc": "30135:72:74", + "nodeType": "YulExpressionStatement", + "src": "30135:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", + "nativeSrc": "29882:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "29972:9:74", + "nodeType": "YulTypedName", + "src": "29972:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "29984:6:74", + "nodeType": "YulTypedName", + "src": "29984:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "29992:6:74", + "nodeType": "YulTypedName", + "src": "29992:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "30003:4:74", + "nodeType": "YulTypedName", + "src": "30003:4:74", + "type": "" + } + ], + "src": "29882:332:74" + }, + { + "body": { + "nativeSrc": "30432:394:74", + "nodeType": "YulBlock", + "src": "30432:394:74", + "statements": [ + { + "nativeSrc": "30442:26:74", + "nodeType": "YulAssignment", + "src": "30442:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30454:9:74", + "nodeType": "YulIdentifier", + "src": "30454:9:74" + }, + { + "kind": "number", + "nativeSrc": "30465:2:74", + "nodeType": "YulLiteral", + "src": "30465:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30450:3:74", + "nodeType": "YulIdentifier", + "src": "30450:3:74" + }, + "nativeSrc": "30450:18:74", + "nodeType": "YulFunctionCall", + "src": "30450:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30442:4:74", + "nodeType": "YulIdentifier", + "src": "30442:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30489:9:74", + "nodeType": "YulIdentifier", + "src": "30489:9:74" + }, + { + "kind": "number", + "nativeSrc": "30500:1:74", + "nodeType": "YulLiteral", + "src": "30500:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30485:3:74", + "nodeType": "YulIdentifier", + "src": "30485:3:74" + }, + "nativeSrc": "30485:17:74", + "nodeType": "YulFunctionCall", + "src": "30485:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30508:4:74", + "nodeType": "YulIdentifier", + "src": "30508:4:74" + }, + { + "name": "headStart", + "nativeSrc": "30514:9:74", + "nodeType": "YulIdentifier", + "src": "30514:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "30504:3:74", + "nodeType": "YulIdentifier", + "src": "30504:3:74" + }, + "nativeSrc": "30504:20:74", + "nodeType": "YulFunctionCall", + "src": "30504:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30478:6:74", + "nodeType": "YulIdentifier", + "src": "30478:6:74" + }, + "nativeSrc": "30478:47:74", + "nodeType": "YulFunctionCall", + "src": "30478:47:74" + }, + "nativeSrc": "30478:47:74", + "nodeType": "YulExpressionStatement", + "src": "30478:47:74" + }, + { + "nativeSrc": "30534:134:74", + "nodeType": "YulAssignment", + "src": "30534:134:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "30654:6:74", + "nodeType": "YulIdentifier", + "src": "30654:6:74" + }, + { + "name": "tail", + "nativeSrc": "30663:4:74", + "nodeType": "YulIdentifier", + "src": "30663:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "30542:111:74", + "nodeType": "YulIdentifier", + "src": "30542:111:74" + }, + "nativeSrc": "30542:126:74", + "nodeType": "YulFunctionCall", + "src": "30542:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30534:4:74", + "nodeType": "YulIdentifier", + "src": "30534:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "30689:9:74", + "nodeType": "YulIdentifier", + "src": "30689:9:74" + }, + { + "kind": "number", + "nativeSrc": "30700:2:74", + "nodeType": "YulLiteral", + "src": "30700:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30685:3:74", + "nodeType": "YulIdentifier", + "src": "30685:3:74" + }, + "nativeSrc": "30685:18:74", + "nodeType": "YulFunctionCall", + "src": "30685:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "30709:4:74", + "nodeType": "YulIdentifier", + "src": "30709:4:74" + }, + { + "name": "headStart", + "nativeSrc": "30715:9:74", + "nodeType": "YulIdentifier", + "src": "30715:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "30705:3:74", + "nodeType": "YulIdentifier", + "src": "30705:3:74" + }, + "nativeSrc": "30705:20:74", + "nodeType": "YulFunctionCall", + "src": "30705:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30678:6:74", + "nodeType": "YulIdentifier", + "src": "30678:6:74" + }, + "nativeSrc": "30678:48:74", + "nodeType": "YulFunctionCall", + "src": "30678:48:74" + }, + "nativeSrc": "30678:48:74", + "nodeType": "YulExpressionStatement", + "src": "30678:48:74" + }, + { + "nativeSrc": "30735:84:74", + "nodeType": "YulAssignment", + "src": "30735:84:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "30805:6:74", + "nodeType": "YulIdentifier", + "src": "30805:6:74" + }, + { + "name": "tail", + "nativeSrc": "30814:4:74", + "nodeType": "YulIdentifier", + "src": "30814:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "30743:61:74", + "nodeType": "YulIdentifier", + "src": "30743:61:74" + }, + "nativeSrc": "30743:76:74", + "nodeType": "YulFunctionCall", + "src": "30743:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "30735:4:74", + "nodeType": "YulIdentifier", + "src": "30735:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "30220:606:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "30396:9:74", + "nodeType": "YulTypedName", + "src": "30396:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "30408:6:74", + "nodeType": "YulTypedName", + "src": "30408:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "30416:6:74", + "nodeType": "YulTypedName", + "src": "30416:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "30427:4:74", + "nodeType": "YulTypedName", + "src": "30427:4:74", + "type": "" + } + ], + "src": "30220:606:74" + }, + { + "body": { + "nativeSrc": "30928:73:74", + "nodeType": "YulBlock", + "src": "30928:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30945:3:74", + "nodeType": "YulIdentifier", + "src": "30945:3:74" + }, + { + "name": "length", + "nativeSrc": "30950:6:74", + "nodeType": "YulIdentifier", + "src": "30950:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "30938:6:74", + "nodeType": "YulIdentifier", + "src": "30938:6:74" + }, + "nativeSrc": "30938:19:74", + "nodeType": "YulFunctionCall", + "src": "30938:19:74" + }, + "nativeSrc": "30938:19:74", + "nodeType": "YulExpressionStatement", + "src": "30938:19:74" + }, + { + "nativeSrc": "30966:29:74", + "nodeType": "YulAssignment", + "src": "30966:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "30985:3:74", + "nodeType": "YulIdentifier", + "src": "30985:3:74" + }, + { + "kind": "number", + "nativeSrc": "30990:4:74", + "nodeType": "YulLiteral", + "src": "30990:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "30981:3:74", + "nodeType": "YulIdentifier", + "src": "30981:3:74" + }, + "nativeSrc": "30981:14:74", + "nodeType": "YulFunctionCall", + "src": "30981:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "30966:11:74", + "nodeType": "YulIdentifier", + "src": "30966:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "30832:169:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "30900:3:74", + "nodeType": "YulTypedName", + "src": "30900:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "30905:6:74", + "nodeType": "YulTypedName", + "src": "30905:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "30916:11:74", + "nodeType": "YulTypedName", + "src": "30916:11:74", + "type": "" + } + ], + "src": "30832:169:74" + }, + { + "body": { + "nativeSrc": "31113:64:74", + "nodeType": "YulBlock", + "src": "31113:64:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "31135:6:74", + "nodeType": "YulIdentifier", + "src": "31135:6:74" + }, + { + "kind": "number", + "nativeSrc": "31143:1:74", + "nodeType": "YulLiteral", + "src": "31143:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31131:3:74", + "nodeType": "YulIdentifier", + "src": "31131:3:74" + }, + "nativeSrc": "31131:14:74", + "nodeType": "YulFunctionCall", + "src": "31131:14:74" + }, + { + "hexValue": "706172616d206461746120746f6f2073686f7274", + "kind": "string", + "nativeSrc": "31147:22:74", + "nodeType": "YulLiteral", + "src": "31147:22:74", + "type": "", + "value": "param data too short" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "31124:6:74", + "nodeType": "YulIdentifier", + "src": "31124:6:74" + }, + "nativeSrc": "31124:46:74", + "nodeType": "YulFunctionCall", + "src": "31124:46:74" + }, + "nativeSrc": "31124:46:74", + "nodeType": "YulExpressionStatement", + "src": "31124:46:74" + } + ] + }, + "name": "store_literal_in_memory_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a", + "nativeSrc": "31007:170:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "31105:6:74", + "nodeType": "YulTypedName", + "src": "31105:6:74", + "type": "" + } + ], + "src": "31007:170:74" + }, + { + "body": { + "nativeSrc": "31329:220:74", + "nodeType": "YulBlock", + "src": "31329:220:74", + "statements": [ + { + "nativeSrc": "31339:74:74", + "nodeType": "YulAssignment", + "src": "31339:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31405:3:74", + "nodeType": "YulIdentifier", + "src": "31405:3:74" + }, + { + "kind": "number", + "nativeSrc": "31410:2:74", + "nodeType": "YulLiteral", + "src": "31410:2:74", + "type": "", + "value": "20" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "31346:58:74", + "nodeType": "YulIdentifier", + "src": "31346:58:74" + }, + "nativeSrc": "31346:67:74", + "nodeType": "YulFunctionCall", + "src": "31346:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "31339:3:74", + "nodeType": "YulIdentifier", + "src": "31339:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31511:3:74", + "nodeType": "YulIdentifier", + "src": "31511:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a", + "nativeSrc": "31422:88:74", + "nodeType": "YulIdentifier", + "src": "31422:88:74" + }, + "nativeSrc": "31422:93:74", + "nodeType": "YulFunctionCall", + "src": "31422:93:74" + }, + "nativeSrc": "31422:93:74", + "nodeType": "YulExpressionStatement", + "src": "31422:93:74" + }, + { + "nativeSrc": "31524:19:74", + "nodeType": "YulAssignment", + "src": "31524:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "31535:3:74", + "nodeType": "YulIdentifier", + "src": "31535:3:74" + }, + { + "kind": "number", + "nativeSrc": "31540:2:74", + "nodeType": "YulLiteral", + "src": "31540:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31531:3:74", + "nodeType": "YulIdentifier", + "src": "31531:3:74" + }, + "nativeSrc": "31531:12:74", + "nodeType": "YulFunctionCall", + "src": "31531:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "31524:3:74", + "nodeType": "YulIdentifier", + "src": "31524:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "31183:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "31317:3:74", + "nodeType": "YulTypedName", + "src": "31317:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "31325:3:74", + "nodeType": "YulTypedName", + "src": "31325:3:74", + "type": "" + } + ], + "src": "31183:366:74" + }, + { + "body": { + "nativeSrc": "31726:248:74", + "nodeType": "YulBlock", + "src": "31726:248:74", + "statements": [ + { + "nativeSrc": "31736:26:74", + "nodeType": "YulAssignment", + "src": "31736:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31748:9:74", + "nodeType": "YulIdentifier", + "src": "31748:9:74" + }, + { + "kind": "number", + "nativeSrc": "31759:2:74", + "nodeType": "YulLiteral", + "src": "31759:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31744:3:74", + "nodeType": "YulIdentifier", + "src": "31744:3:74" + }, + "nativeSrc": "31744:18:74", + "nodeType": "YulFunctionCall", + "src": "31744:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31736:4:74", + "nodeType": "YulIdentifier", + "src": "31736:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "31783:9:74", + "nodeType": "YulIdentifier", + "src": "31783:9:74" + }, + { + "kind": "number", + "nativeSrc": "31794:1:74", + "nodeType": "YulLiteral", + "src": "31794:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "31779:3:74", + "nodeType": "YulIdentifier", + "src": "31779:3:74" + }, + "nativeSrc": "31779:17:74", + "nodeType": "YulFunctionCall", + "src": "31779:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "31802:4:74", + "nodeType": "YulIdentifier", + "src": "31802:4:74" + }, + { + "name": "headStart", + "nativeSrc": "31808:9:74", + "nodeType": "YulIdentifier", + "src": "31808:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "31798:3:74", + "nodeType": "YulIdentifier", + "src": "31798:3:74" + }, + "nativeSrc": "31798:20:74", + "nodeType": "YulFunctionCall", + "src": "31798:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "31772:6:74", + "nodeType": "YulIdentifier", + "src": "31772:6:74" + }, + "nativeSrc": "31772:47:74", + "nodeType": "YulFunctionCall", + "src": "31772:47:74" + }, + "nativeSrc": "31772:47:74", + "nodeType": "YulExpressionStatement", + "src": "31772:47:74" + }, + { + "nativeSrc": "31828:139:74", + "nodeType": "YulAssignment", + "src": "31828:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "31962:4:74", + "nodeType": "YulIdentifier", + "src": "31962:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a_to_t_string_memory_ptr_fromStack", + "nativeSrc": "31836:124:74", + "nodeType": "YulIdentifier", + "src": "31836:124:74" + }, + "nativeSrc": "31836:131:74", + "nodeType": "YulFunctionCall", + "src": "31836:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "31828:4:74", + "nodeType": "YulIdentifier", + "src": "31828:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "31555:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "31706:9:74", + "nodeType": "YulTypedName", + "src": "31706:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "31721:4:74", + "nodeType": "YulTypedName", + "src": "31721:4:74", + "type": "" + } + ], + "src": "31555:419:74" + }, + { + "body": { + "nativeSrc": "32069:28:74", + "nodeType": "YulBlock", + "src": "32069:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32086:1:74", + "nodeType": "YulLiteral", + "src": "32086:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "32089:1:74", + "nodeType": "YulLiteral", + "src": "32089:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "32079:6:74", + "nodeType": "YulIdentifier", + "src": "32079:6:74" + }, + "nativeSrc": "32079:12:74", + "nodeType": "YulFunctionCall", + "src": "32079:12:74" + }, + "nativeSrc": "32079:12:74", + "nodeType": "YulExpressionStatement", + "src": "32079:12:74" + } + ] + }, + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "31980:117:74", + "nodeType": "YulFunctionDefinition", + "src": "31980:117:74" + }, + { + "body": { + "nativeSrc": "32192:28:74", + "nodeType": "YulBlock", + "src": "32192:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "32209:1:74", + "nodeType": "YulLiteral", + "src": "32209:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "32212:1:74", + "nodeType": "YulLiteral", + "src": "32212:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "32202:6:74", + "nodeType": "YulIdentifier", + "src": "32202:6:74" + }, + "nativeSrc": "32202:12:74", + "nodeType": "YulFunctionCall", + "src": "32202:12:74" + }, + "nativeSrc": "32202:12:74", + "nodeType": "YulExpressionStatement", + "src": "32202:12:74" + } + ] + }, + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "32103:117:74", + "nodeType": "YulFunctionDefinition", + "src": "32103:117:74" + }, + { + "body": { + "nativeSrc": "32352:343:74", + "nodeType": "YulBlock", + "src": "32352:343:74", + "statements": [ + { + "body": { + "nativeSrc": "32390:83:74", + "nodeType": "YulBlock", + "src": "32390:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a", + "nativeSrc": "32392:77:74", + "nodeType": "YulIdentifier", + "src": "32392:77:74" + }, + "nativeSrc": "32392:79:74", + "nodeType": "YulFunctionCall", + "src": "32392:79:74" + }, + "nativeSrc": "32392:79:74", + "nodeType": "YulExpressionStatement", + "src": "32392:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "32368:10:74", + "nodeType": "YulIdentifier", + "src": "32368:10:74" + }, + { + "name": "endIndex", + "nativeSrc": "32380:8:74", + "nodeType": "YulIdentifier", + "src": "32380:8:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "32365:2:74", + "nodeType": "YulIdentifier", + "src": "32365:2:74" + }, + "nativeSrc": "32365:24:74", + "nodeType": "YulFunctionCall", + "src": "32365:24:74" + }, + "nativeSrc": "32362:111:74", + "nodeType": "YulIf", + "src": "32362:111:74" + }, + { + "body": { + "nativeSrc": "32506:83:74", + "nodeType": "YulBlock", + "src": "32506:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c", + "nativeSrc": "32508:77:74", + "nodeType": "YulIdentifier", + "src": "32508:77:74" + }, + "nativeSrc": "32508:79:74", + "nodeType": "YulFunctionCall", + "src": "32508:79:74" + }, + "nativeSrc": "32508:79:74", + "nodeType": "YulExpressionStatement", + "src": "32508:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "32488:8:74", + "nodeType": "YulIdentifier", + "src": "32488:8:74" + }, + { + "name": "length", + "nativeSrc": "32498:6:74", + "nodeType": "YulIdentifier", + "src": "32498:6:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "32485:2:74", + "nodeType": "YulIdentifier", + "src": "32485:2:74" + }, + "nativeSrc": "32485:20:74", + "nodeType": "YulFunctionCall", + "src": "32485:20:74" + }, + "nativeSrc": "32482:107:74", + "nodeType": "YulIf", + "src": "32482:107:74" + }, + { + "nativeSrc": "32598:44:74", + "nodeType": "YulAssignment", + "src": "32598:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "32615:6:74", + "nodeType": "YulIdentifier", + "src": "32615:6:74" + }, + { + "arguments": [ + { + "name": "startIndex", + "nativeSrc": "32627:10:74", + "nodeType": "YulIdentifier", + "src": "32627:10:74" + }, + { + "kind": "number", + "nativeSrc": "32639:1:74", + "nodeType": "YulLiteral", + "src": "32639:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "32623:3:74", + "nodeType": "YulIdentifier", + "src": "32623:3:74" + }, + "nativeSrc": "32623:18:74", + "nodeType": "YulFunctionCall", + "src": "32623:18:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32611:3:74", + "nodeType": "YulIdentifier", + "src": "32611:3:74" + }, + "nativeSrc": "32611:31:74", + "nodeType": "YulFunctionCall", + "src": "32611:31:74" + }, + "variableNames": [ + { + "name": "offsetOut", + "nativeSrc": "32598:9:74", + "nodeType": "YulIdentifier", + "src": "32598:9:74" + } + ] + }, + { + "nativeSrc": "32651:38:74", + "nodeType": "YulAssignment", + "src": "32651:38:74", + "value": { + "arguments": [ + { + "name": "endIndex", + "nativeSrc": "32668:8:74", + "nodeType": "YulIdentifier", + "src": "32668:8:74" + }, + { + "name": "startIndex", + "nativeSrc": "32678:10:74", + "nodeType": "YulIdentifier", + "src": "32678:10:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "32664:3:74", + "nodeType": "YulIdentifier", + "src": "32664:3:74" + }, + "nativeSrc": "32664:25:74", + "nodeType": "YulFunctionCall", + "src": "32664:25:74" + }, + "variableNames": [ + { + "name": "lengthOut", + "nativeSrc": "32651:9:74", + "nodeType": "YulIdentifier", + "src": "32651:9:74" + } + ] + } + ] + }, + "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", + "nativeSrc": "32226:469:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "32290:6:74", + "nodeType": "YulTypedName", + "src": "32290:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "32298:6:74", + "nodeType": "YulTypedName", + "src": "32298:6:74", + "type": "" + }, + { + "name": "startIndex", + "nativeSrc": "32306:10:74", + "nodeType": "YulTypedName", + "src": "32306:10:74", + "type": "" + }, + { + "name": "endIndex", + "nativeSrc": "32318:8:74", + "nodeType": "YulTypedName", + "src": "32318:8:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "offsetOut", + "nativeSrc": "32331:9:74", + "nodeType": "YulTypedName", + "src": "32331:9:74", + "type": "" + }, + { + "name": "lengthOut", + "nativeSrc": "32342:9:74", + "nodeType": "YulTypedName", + "src": "32342:9:74", + "type": "" + } + ], + "src": "32226:469:74" + }, + { + "body": { + "nativeSrc": "32767:263:74", + "nodeType": "YulBlock", + "src": "32767:263:74", + "statements": [ + { + "body": { + "nativeSrc": "32813:83:74", + "nodeType": "YulBlock", + "src": "32813:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "32815:77:74", + "nodeType": "YulIdentifier", + "src": "32815:77:74" + }, + "nativeSrc": "32815:79:74", + "nodeType": "YulFunctionCall", + "src": "32815:79:74" + }, + "nativeSrc": "32815:79:74", + "nodeType": "YulExpressionStatement", + "src": "32815:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "32788:7:74", + "nodeType": "YulIdentifier", + "src": "32788:7:74" + }, + { + "name": "headStart", + "nativeSrc": "32797:9:74", + "nodeType": "YulIdentifier", + "src": "32797:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "32784:3:74", + "nodeType": "YulIdentifier", + "src": "32784:3:74" + }, + "nativeSrc": "32784:23:74", + "nodeType": "YulFunctionCall", + "src": "32784:23:74" + }, + { + "kind": "number", + "nativeSrc": "32809:2:74", + "nodeType": "YulLiteral", + "src": "32809:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "32780:3:74", + "nodeType": "YulIdentifier", + "src": "32780:3:74" + }, + "nativeSrc": "32780:32:74", + "nodeType": "YulFunctionCall", + "src": "32780:32:74" + }, + "nativeSrc": "32777:119:74", + "nodeType": "YulIf", + "src": "32777:119:74" + }, + { + "nativeSrc": "32906:117:74", + "nodeType": "YulBlock", + "src": "32906:117:74", + "statements": [ + { + "nativeSrc": "32921:15:74", + "nodeType": "YulVariableDeclaration", + "src": "32921:15:74", + "value": { + "kind": "number", + "nativeSrc": "32935:1:74", + "nodeType": "YulLiteral", + "src": "32935:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "32925:6:74", + "nodeType": "YulTypedName", + "src": "32925:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "32950:63:74", + "nodeType": "YulAssignment", + "src": "32950:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "32985:9:74", + "nodeType": "YulIdentifier", + "src": "32985:9:74" + }, + { + "name": "offset", + "nativeSrc": "32996:6:74", + "nodeType": "YulIdentifier", + "src": "32996:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "32981:3:74", + "nodeType": "YulIdentifier", + "src": "32981:3:74" + }, + "nativeSrc": "32981:22:74", + "nodeType": "YulFunctionCall", + "src": "32981:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "33005:7:74", + "nodeType": "YulIdentifier", + "src": "33005:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "32960:20:74", + "nodeType": "YulIdentifier", + "src": "32960:20:74" + }, + "nativeSrc": "32960:53:74", + "nodeType": "YulFunctionCall", + "src": "32960:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "32950:6:74", + "nodeType": "YulIdentifier", + "src": "32950:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "32701:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "32737:9:74", + "nodeType": "YulTypedName", + "src": "32737:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "32748:7:74", + "nodeType": "YulTypedName", + "src": "32748:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "32760:6:74", + "nodeType": "YulTypedName", + "src": "32760:6:74", + "type": "" + } + ], + "src": "32701:329:74" + }, + { + "body": { + "nativeSrc": "33101:31:74", + "nodeType": "YulBlock", + "src": "33101:31:74", + "statements": [ + { + "nativeSrc": "33112:13:74", + "nodeType": "YulAssignment", + "src": "33112:13:74", + "value": { + "name": "len", + "nativeSrc": "33122:3:74", + "nodeType": "YulIdentifier", + "src": "33122:3:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "33112:6:74", + "nodeType": "YulIdentifier", + "src": "33112:6:74" + } + ] + } + ] + }, + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "33036:96:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "33079:5:74", + "nodeType": "YulTypedName", + "src": "33079:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "33086:3:74", + "nodeType": "YulTypedName", + "src": "33086:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "33094:6:74", + "nodeType": "YulTypedName", + "src": "33094:6:74", + "type": "" + } + ], + "src": "33036:96:74" + }, + { + "body": { + "nativeSrc": "33196:28:74", + "nodeType": "YulBlock", + "src": "33196:28:74", + "statements": [ + { + "nativeSrc": "33206:11:74", + "nodeType": "YulAssignment", + "src": "33206:11:74", + "value": { + "name": "ptr", + "nativeSrc": "33214:3:74", + "nodeType": "YulIdentifier", + "src": "33214:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "33206:4:74", + "nodeType": "YulIdentifier", + "src": "33206:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_bytes_calldata_ptr", + "nativeSrc": "33138:86:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "33183:3:74", + "nodeType": "YulTypedName", + "src": "33183:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "33191:4:74", + "nodeType": "YulTypedName", + "src": "33191:4:74", + "type": "" + } + ], + "src": "33138:86:74" + }, + { + "body": { + "nativeSrc": "33283:54:74", + "nodeType": "YulBlock", + "src": "33283:54:74", + "statements": [ + { + "nativeSrc": "33293:37:74", + "nodeType": "YulAssignment", + "src": "33293:37:74", + "value": { + "arguments": [ + { + "name": "bits", + "nativeSrc": "33318:4:74", + "nodeType": "YulIdentifier", + "src": "33318:4:74" + }, + { + "name": "value", + "nativeSrc": "33324:5:74", + "nodeType": "YulIdentifier", + "src": "33324:5:74" + } + ], + "functionName": { + "name": "shl", + "nativeSrc": "33314:3:74", + "nodeType": "YulIdentifier", + "src": "33314:3:74" + }, + "nativeSrc": "33314:16:74", + "nodeType": "YulFunctionCall", + "src": "33314:16:74" + }, + "variableNames": [ + { + "name": "newValue", + "nativeSrc": "33293:8:74", + "nodeType": "YulIdentifier", + "src": "33293:8:74" + } + ] + } + ] + }, + "name": "shift_left_dynamic", + "nativeSrc": "33230:107:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "bits", + "nativeSrc": "33258:4:74", + "nodeType": "YulTypedName", + "src": "33258:4:74", + "type": "" + }, + { + "name": "value", + "nativeSrc": "33264:5:74", + "nodeType": "YulTypedName", + "src": "33264:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nativeSrc": "33274:8:74", + "nodeType": "YulTypedName", + "src": "33274:8:74", + "type": "" + } + ], + "src": "33230:107:74" + }, + { + "body": { + "nativeSrc": "33439:452:74", + "nodeType": "YulBlock", + "src": "33439:452:74", + "statements": [ + { + "nativeSrc": "33450:59:74", + "nodeType": "YulVariableDeclaration", + "src": "33450:59:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "33498:5:74", + "nodeType": "YulIdentifier", + "src": "33498:5:74" + }, + { + "name": "len", + "nativeSrc": "33505:3:74", + "nodeType": "YulIdentifier", + "src": "33505:3:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_calldata_ptr", + "nativeSrc": "33464:33:74", + "nodeType": "YulIdentifier", + "src": "33464:33:74" + }, + "nativeSrc": "33464:45:74", + "nodeType": "YulFunctionCall", + "src": "33464:45:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "33454:6:74", + "nodeType": "YulTypedName", + "src": "33454:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "33518:21:74", + "nodeType": "YulVariableDeclaration", + "src": "33518:21:74", + "value": { + "name": "array", + "nativeSrc": "33534:5:74", + "nodeType": "YulIdentifier", + "src": "33534:5:74" + }, + "variables": [ + { + "name": "dataArea", + "nativeSrc": "33522:8:74", + "nodeType": "YulTypedName", + "src": "33522:8:74", + "type": "" + } + ] + }, + { + "nativeSrc": "33549:49:74", + "nodeType": "YulAssignment", + "src": "33549:49:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "dataArea", + "nativeSrc": "33588:8:74", + "nodeType": "YulIdentifier", + "src": "33588:8:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "33575:12:74", + "nodeType": "YulIdentifier", + "src": "33575:12:74" + }, + "nativeSrc": "33575:22:74", + "nodeType": "YulFunctionCall", + "src": "33575:22:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "33558:16:74", + "nodeType": "YulIdentifier", + "src": "33558:16:74" + }, + "nativeSrc": "33558:40:74", + "nodeType": "YulFunctionCall", + "src": "33558:40:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "33549:5:74", + "nodeType": "YulIdentifier", + "src": "33549:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "33625:259:74", + "nodeType": "YulBlock", + "src": "33625:259:74", + "statements": [ + { + "nativeSrc": "33639:235:74", + "nodeType": "YulAssignment", + "src": "33639:235:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "33669:5:74", + "nodeType": "YulIdentifier", + "src": "33669:5:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "33736:1:74", + "nodeType": "YulLiteral", + "src": "33736:1:74", + "type": "", + "value": "8" + }, + { + "arguments": [ + { + "kind": "number", + "nativeSrc": "33743:1:74", + "nodeType": "YulLiteral", + "src": "33743:1:74", + "type": "", + "value": "4" + }, + { + "name": "length", + "nativeSrc": "33746:6:74", + "nodeType": "YulIdentifier", + "src": "33746:6:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "33739:3:74", + "nodeType": "YulIdentifier", + "src": "33739:3:74" + }, + "nativeSrc": "33739:14:74", + "nodeType": "YulFunctionCall", + "src": "33739:14:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "33732:3:74", + "nodeType": "YulIdentifier", + "src": "33732:3:74" + }, + "nativeSrc": "33732:22:74", + "nodeType": "YulFunctionCall", + "src": "33732:22:74" + }, + { + "kind": "number", + "nativeSrc": "33776:66:74", + "nodeType": "YulLiteral", + "src": "33776:66:74", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "shift_left_dynamic", + "nativeSrc": "33692:18:74", + "nodeType": "YulIdentifier", + "src": "33692:18:74" + }, + "nativeSrc": "33692:168:74", + "nodeType": "YulFunctionCall", + "src": "33692:168:74" + } + ], + "functionName": { + "name": "and", + "nativeSrc": "33648:3:74", + "nodeType": "YulIdentifier", + "src": "33648:3:74" + }, + "nativeSrc": "33648:226:74", + "nodeType": "YulFunctionCall", + "src": "33648:226:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "33639:5:74", + "nodeType": "YulIdentifier", + "src": "33639:5:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "33614:6:74", + "nodeType": "YulIdentifier", + "src": "33614:6:74" + }, + { + "kind": "number", + "nativeSrc": "33622:1:74", + "nodeType": "YulLiteral", + "src": "33622:1:74", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "33611:2:74", + "nodeType": "YulIdentifier", + "src": "33611:2:74" + }, + "nativeSrc": "33611:13:74", + "nodeType": "YulFunctionCall", + "src": "33611:13:74" + }, + "nativeSrc": "33608:276:74", + "nodeType": "YulIf", + "src": "33608:276:74" + } + ] + }, + "name": "convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes4", + "nativeSrc": "33343:548:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nativeSrc": "33418:5:74", + "nodeType": "YulTypedName", + "src": "33418:5:74", + "type": "" + }, + { + "name": "len", + "nativeSrc": "33425:3:74", + "nodeType": "YulTypedName", + "src": "33425:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "33433:5:74", + "nodeType": "YulTypedName", + "src": "33433:5:74", + "type": "" + } + ], + "src": "33343:548:74" + }, + { + "body": { + "nativeSrc": "34003:60:74", + "nodeType": "YulBlock", + "src": "34003:60:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "34025:6:74", + "nodeType": "YulIdentifier", + "src": "34025:6:74" + }, + { + "kind": "number", + "nativeSrc": "34033:1:74", + "nodeType": "YulLiteral", + "src": "34033:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34021:3:74", + "nodeType": "YulIdentifier", + "src": "34021:3:74" + }, + "nativeSrc": "34021:14:74", + "nodeType": "YulFunctionCall", + "src": "34021:14:74" + }, + { + "hexValue": "696e76616c69642073656c6563746f72", + "kind": "string", + "nativeSrc": "34037:18:74", + "nodeType": "YulLiteral", + "src": "34037:18:74", + "type": "", + "value": "invalid selector" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34014:6:74", + "nodeType": "YulIdentifier", + "src": "34014:6:74" + }, + "nativeSrc": "34014:42:74", + "nodeType": "YulFunctionCall", + "src": "34014:42:74" + }, + "nativeSrc": "34014:42:74", + "nodeType": "YulExpressionStatement", + "src": "34014:42:74" + } + ] + }, + "name": "store_literal_in_memory_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92", + "nativeSrc": "33897:166:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "33995:6:74", + "nodeType": "YulTypedName", + "src": "33995:6:74", + "type": "" + } + ], + "src": "33897:166:74" + }, + { + "body": { + "nativeSrc": "34215:220:74", + "nodeType": "YulBlock", + "src": "34215:220:74", + "statements": [ + { + "nativeSrc": "34225:74:74", + "nodeType": "YulAssignment", + "src": "34225:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "34291:3:74", + "nodeType": "YulIdentifier", + "src": "34291:3:74" + }, + { + "kind": "number", + "nativeSrc": "34296:2:74", + "nodeType": "YulLiteral", + "src": "34296:2:74", + "type": "", + "value": "16" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "34232:58:74", + "nodeType": "YulIdentifier", + "src": "34232:58:74" + }, + "nativeSrc": "34232:67:74", + "nodeType": "YulFunctionCall", + "src": "34232:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "34225:3:74", + "nodeType": "YulIdentifier", + "src": "34225:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "34397:3:74", + "nodeType": "YulIdentifier", + "src": "34397:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92", + "nativeSrc": "34308:88:74", + "nodeType": "YulIdentifier", + "src": "34308:88:74" + }, + "nativeSrc": "34308:93:74", + "nodeType": "YulFunctionCall", + "src": "34308:93:74" + }, + "nativeSrc": "34308:93:74", + "nodeType": "YulExpressionStatement", + "src": "34308:93:74" + }, + { + "nativeSrc": "34410:19:74", + "nodeType": "YulAssignment", + "src": "34410:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "34421:3:74", + "nodeType": "YulIdentifier", + "src": "34421:3:74" + }, + { + "kind": "number", + "nativeSrc": "34426:2:74", + "nodeType": "YulLiteral", + "src": "34426:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34417:3:74", + "nodeType": "YulIdentifier", + "src": "34417:3:74" + }, + "nativeSrc": "34417:12:74", + "nodeType": "YulFunctionCall", + "src": "34417:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "34410:3:74", + "nodeType": "YulIdentifier", + "src": "34410:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92_to_t_string_memory_ptr_fromStack", + "nativeSrc": "34069:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "34203:3:74", + "nodeType": "YulTypedName", + "src": "34203:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "34211:3:74", + "nodeType": "YulTypedName", + "src": "34211:3:74", + "type": "" + } + ], + "src": "34069:366:74" + }, + { + "body": { + "nativeSrc": "34612:248:74", + "nodeType": "YulBlock", + "src": "34612:248:74", + "statements": [ + { + "nativeSrc": "34622:26:74", + "nodeType": "YulAssignment", + "src": "34622:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34634:9:74", + "nodeType": "YulIdentifier", + "src": "34634:9:74" + }, + { + "kind": "number", + "nativeSrc": "34645:2:74", + "nodeType": "YulLiteral", + "src": "34645:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34630:3:74", + "nodeType": "YulIdentifier", + "src": "34630:3:74" + }, + "nativeSrc": "34630:18:74", + "nodeType": "YulFunctionCall", + "src": "34630:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34622:4:74", + "nodeType": "YulIdentifier", + "src": "34622:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "34669:9:74", + "nodeType": "YulIdentifier", + "src": "34669:9:74" + }, + { + "kind": "number", + "nativeSrc": "34680:1:74", + "nodeType": "YulLiteral", + "src": "34680:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34665:3:74", + "nodeType": "YulIdentifier", + "src": "34665:3:74" + }, + "nativeSrc": "34665:17:74", + "nodeType": "YulFunctionCall", + "src": "34665:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "34688:4:74", + "nodeType": "YulIdentifier", + "src": "34688:4:74" + }, + { + "name": "headStart", + "nativeSrc": "34694:9:74", + "nodeType": "YulIdentifier", + "src": "34694:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "34684:3:74", + "nodeType": "YulIdentifier", + "src": "34684:3:74" + }, + "nativeSrc": "34684:20:74", + "nodeType": "YulFunctionCall", + "src": "34684:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34658:6:74", + "nodeType": "YulIdentifier", + "src": "34658:6:74" + }, + "nativeSrc": "34658:47:74", + "nodeType": "YulFunctionCall", + "src": "34658:47:74" + }, + "nativeSrc": "34658:47:74", + "nodeType": "YulExpressionStatement", + "src": "34658:47:74" + }, + { + "nativeSrc": "34714:139:74", + "nodeType": "YulAssignment", + "src": "34714:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "34848:4:74", + "nodeType": "YulIdentifier", + "src": "34848:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92_to_t_string_memory_ptr_fromStack", + "nativeSrc": "34722:124:74", + "nodeType": "YulIdentifier", + "src": "34722:124:74" + }, + "nativeSrc": "34722:131:74", + "nodeType": "YulFunctionCall", + "src": "34722:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "34714:4:74", + "nodeType": "YulIdentifier", + "src": "34714:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "34441:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "34592:9:74", + "nodeType": "YulTypedName", + "src": "34592:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "34607:4:74", + "nodeType": "YulTypedName", + "src": "34607:4:74", + "type": "" + } + ], + "src": "34441:419:74" + }, + { + "body": { + "nativeSrc": "34972:123:74", + "nodeType": "YulBlock", + "src": "34972:123:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "34994:6:74", + "nodeType": "YulIdentifier", + "src": "34994:6:74" + }, + { + "kind": "number", + "nativeSrc": "35002:1:74", + "nodeType": "YulLiteral", + "src": "35002:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "34990:3:74", + "nodeType": "YulIdentifier", + "src": "34990:3:74" + }, + "nativeSrc": "34990:14:74", + "nodeType": "YulFunctionCall", + "src": "34990:14:74" + }, + { + "hexValue": "4e6f7420617574686f72697a656420746f207365742074617267657420666f72", + "kind": "string", + "nativeSrc": "35006:34:74", + "nodeType": "YulLiteral", + "src": "35006:34:74", + "type": "", + "value": "Not authorized to set target for" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "34983:6:74", + "nodeType": "YulIdentifier", + "src": "34983:6:74" + }, + "nativeSrc": "34983:58:74", + "nodeType": "YulFunctionCall", + "src": "34983:58:74" + }, + "nativeSrc": "34983:58:74", + "nodeType": "YulExpressionStatement", + "src": "34983:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "35062:6:74", + "nodeType": "YulIdentifier", + "src": "35062:6:74" + }, + { + "kind": "number", + "nativeSrc": "35070:2:74", + "nodeType": "YulLiteral", + "src": "35070:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35058:3:74", + "nodeType": "YulIdentifier", + "src": "35058:3:74" + }, + "nativeSrc": "35058:15:74", + "nodeType": "YulFunctionCall", + "src": "35058:15:74" + }, + { + "hexValue": "2074686973206e6f6465", + "kind": "string", + "nativeSrc": "35075:12:74", + "nodeType": "YulLiteral", + "src": "35075:12:74", + "type": "", + "value": " this node" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "35051:6:74", + "nodeType": "YulIdentifier", + "src": "35051:6:74" + }, + "nativeSrc": "35051:37:74", + "nodeType": "YulFunctionCall", + "src": "35051:37:74" + }, + "nativeSrc": "35051:37:74", + "nodeType": "YulExpressionStatement", + "src": "35051:37:74" + } + ] + }, + "name": "store_literal_in_memory_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838", + "nativeSrc": "34866:229:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "34964:6:74", + "nodeType": "YulTypedName", + "src": "34964:6:74", + "type": "" + } + ], + "src": "34866:229:74" + }, + { + "body": { + "nativeSrc": "35247:220:74", + "nodeType": "YulBlock", + "src": "35247:220:74", + "statements": [ + { + "nativeSrc": "35257:74:74", + "nodeType": "YulAssignment", + "src": "35257:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "35323:3:74", + "nodeType": "YulIdentifier", + "src": "35323:3:74" + }, + { + "kind": "number", + "nativeSrc": "35328:2:74", + "nodeType": "YulLiteral", + "src": "35328:2:74", + "type": "", + "value": "42" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "35264:58:74", + "nodeType": "YulIdentifier", + "src": "35264:58:74" + }, + "nativeSrc": "35264:67:74", + "nodeType": "YulFunctionCall", + "src": "35264:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "35257:3:74", + "nodeType": "YulIdentifier", + "src": "35257:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "35429:3:74", + "nodeType": "YulIdentifier", + "src": "35429:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838", + "nativeSrc": "35340:88:74", + "nodeType": "YulIdentifier", + "src": "35340:88:74" + }, + "nativeSrc": "35340:93:74", + "nodeType": "YulFunctionCall", + "src": "35340:93:74" + }, + "nativeSrc": "35340:93:74", + "nodeType": "YulExpressionStatement", + "src": "35340:93:74" + }, + { + "nativeSrc": "35442:19:74", + "nodeType": "YulAssignment", + "src": "35442:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "35453:3:74", + "nodeType": "YulIdentifier", + "src": "35453:3:74" + }, + { + "kind": "number", + "nativeSrc": "35458:2:74", + "nodeType": "YulLiteral", + "src": "35458:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35449:3:74", + "nodeType": "YulIdentifier", + "src": "35449:3:74" + }, + "nativeSrc": "35449:12:74", + "nodeType": "YulFunctionCall", + "src": "35449:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "35442:3:74", + "nodeType": "YulIdentifier", + "src": "35442:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838_to_t_string_memory_ptr_fromStack", + "nativeSrc": "35101:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "35235:3:74", + "nodeType": "YulTypedName", + "src": "35235:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "35243:3:74", + "nodeType": "YulTypedName", + "src": "35243:3:74", + "type": "" + } + ], + "src": "35101:366:74" + }, + { + "body": { + "nativeSrc": "35644:248:74", + "nodeType": "YulBlock", + "src": "35644:248:74", + "statements": [ + { + "nativeSrc": "35654:26:74", + "nodeType": "YulAssignment", + "src": "35654:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "35666:9:74", + "nodeType": "YulIdentifier", + "src": "35666:9:74" + }, + { + "kind": "number", + "nativeSrc": "35677:2:74", + "nodeType": "YulLiteral", + "src": "35677:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35662:3:74", + "nodeType": "YulIdentifier", + "src": "35662:3:74" + }, + "nativeSrc": "35662:18:74", + "nodeType": "YulFunctionCall", + "src": "35662:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "35654:4:74", + "nodeType": "YulIdentifier", + "src": "35654:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "35701:9:74", + "nodeType": "YulIdentifier", + "src": "35701:9:74" + }, + { + "kind": "number", + "nativeSrc": "35712:1:74", + "nodeType": "YulLiteral", + "src": "35712:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "35697:3:74", + "nodeType": "YulIdentifier", + "src": "35697:3:74" + }, + "nativeSrc": "35697:17:74", + "nodeType": "YulFunctionCall", + "src": "35697:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "35720:4:74", + "nodeType": "YulIdentifier", + "src": "35720:4:74" + }, + { + "name": "headStart", + "nativeSrc": "35726:9:74", + "nodeType": "YulIdentifier", + "src": "35726:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "35716:3:74", + "nodeType": "YulIdentifier", + "src": "35716:3:74" + }, + "nativeSrc": "35716:20:74", + "nodeType": "YulFunctionCall", + "src": "35716:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "35690:6:74", + "nodeType": "YulIdentifier", + "src": "35690:6:74" + }, + "nativeSrc": "35690:47:74", + "nodeType": "YulFunctionCall", + "src": "35690:47:74" + }, + "nativeSrc": "35690:47:74", + "nodeType": "YulExpressionStatement", + "src": "35690:47:74" + }, + { + "nativeSrc": "35746:139:74", + "nodeType": "YulAssignment", + "src": "35746:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "35880:4:74", + "nodeType": "YulIdentifier", + "src": "35880:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838_to_t_string_memory_ptr_fromStack", + "nativeSrc": "35754:124:74", + "nodeType": "YulIdentifier", + "src": "35754:124:74" + }, + "nativeSrc": "35754:131:74", + "nodeType": "YulFunctionCall", + "src": "35754:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "35746:4:74", + "nodeType": "YulIdentifier", + "src": "35746:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "35473:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "35624:9:74", + "nodeType": "YulTypedName", + "src": "35624:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "35639:4:74", + "nodeType": "YulTypedName", + "src": "35639:4:74", + "type": "" + } + ], + "src": "35473:419:74" + }, + { + "body": { + "nativeSrc": "36020:214:74", + "nodeType": "YulBlock", + "src": "36020:214:74", + "statements": [ + { + "nativeSrc": "36030:77:74", + "nodeType": "YulAssignment", + "src": "36030:77:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "36095:3:74", + "nodeType": "YulIdentifier", + "src": "36095:3:74" + }, + { + "name": "length", + "nativeSrc": "36100:6:74", + "nodeType": "YulIdentifier", + "src": "36100:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nativeSrc": "36037:57:74", + "nodeType": "YulIdentifier", + "src": "36037:57:74" + }, + "nativeSrc": "36037:70:74", + "nodeType": "YulFunctionCall", + "src": "36037:70:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "36030:3:74", + "nodeType": "YulIdentifier", + "src": "36030:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "start", + "nativeSrc": "36154:5:74", + "nodeType": "YulIdentifier", + "src": "36154:5:74" + }, + { + "name": "pos", + "nativeSrc": "36161:3:74", + "nodeType": "YulIdentifier", + "src": "36161:3:74" + }, + { + "name": "length", + "nativeSrc": "36166:6:74", + "nodeType": "YulIdentifier", + "src": "36166:6:74" + } + ], + "functionName": { + "name": "copy_calldata_to_memory_with_cleanup", + "nativeSrc": "36117:36:74", + "nodeType": "YulIdentifier", + "src": "36117:36:74" + }, + "nativeSrc": "36117:56:74", + "nodeType": "YulFunctionCall", + "src": "36117:56:74" + }, + "nativeSrc": "36117:56:74", + "nodeType": "YulExpressionStatement", + "src": "36117:56:74" + }, + { + "nativeSrc": "36182:46:74", + "nodeType": "YulAssignment", + "src": "36182:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "36193:3:74", + "nodeType": "YulIdentifier", + "src": "36193:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "36220:6:74", + "nodeType": "YulIdentifier", + "src": "36220:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "36198:21:74", + "nodeType": "YulIdentifier", + "src": "36198:21:74" + }, + "nativeSrc": "36198:29:74", + "nodeType": "YulFunctionCall", + "src": "36198:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36189:3:74", + "nodeType": "YulIdentifier", + "src": "36189:3:74" + }, + "nativeSrc": "36189:39:74", + "nodeType": "YulFunctionCall", + "src": "36189:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "36182:3:74", + "nodeType": "YulIdentifier", + "src": "36182:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "35920:314:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nativeSrc": "35993:5:74", + "nodeType": "YulTypedName", + "src": "35993:5:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "36000:6:74", + "nodeType": "YulTypedName", + "src": "36000:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "36008:3:74", + "nodeType": "YulTypedName", + "src": "36008:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "36016:3:74", + "nodeType": "YulTypedName", + "src": "36016:3:74", + "type": "" + } + ], + "src": "35920:314:74" + }, + { + "body": { + "nativeSrc": "36394:285:74", + "nodeType": "YulBlock", + "src": "36394:285:74", + "statements": [ + { + "nativeSrc": "36404:26:74", + "nodeType": "YulAssignment", + "src": "36404:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36416:9:74", + "nodeType": "YulIdentifier", + "src": "36416:9:74" + }, + { + "kind": "number", + "nativeSrc": "36427:2:74", + "nodeType": "YulLiteral", + "src": "36427:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36412:3:74", + "nodeType": "YulIdentifier", + "src": "36412:3:74" + }, + "nativeSrc": "36412:18:74", + "nodeType": "YulFunctionCall", + "src": "36412:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "36404:4:74", + "nodeType": "YulIdentifier", + "src": "36404:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36451:9:74", + "nodeType": "YulIdentifier", + "src": "36451:9:74" + }, + { + "kind": "number", + "nativeSrc": "36462:1:74", + "nodeType": "YulLiteral", + "src": "36462:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36447:3:74", + "nodeType": "YulIdentifier", + "src": "36447:3:74" + }, + "nativeSrc": "36447:17:74", + "nodeType": "YulFunctionCall", + "src": "36447:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "36470:4:74", + "nodeType": "YulIdentifier", + "src": "36470:4:74" + }, + { + "name": "headStart", + "nativeSrc": "36476:9:74", + "nodeType": "YulIdentifier", + "src": "36476:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "36466:3:74", + "nodeType": "YulIdentifier", + "src": "36466:3:74" + }, + "nativeSrc": "36466:20:74", + "nodeType": "YulFunctionCall", + "src": "36466:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36440:6:74", + "nodeType": "YulIdentifier", + "src": "36440:6:74" + }, + "nativeSrc": "36440:47:74", + "nodeType": "YulFunctionCall", + "src": "36440:47:74" + }, + "nativeSrc": "36440:47:74", + "nodeType": "YulExpressionStatement", + "src": "36440:47:74" + }, + { + "nativeSrc": "36496:94:74", + "nodeType": "YulAssignment", + "src": "36496:94:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "36568:6:74", + "nodeType": "YulIdentifier", + "src": "36568:6:74" + }, + { + "name": "value1", + "nativeSrc": "36576:6:74", + "nodeType": "YulIdentifier", + "src": "36576:6:74" + }, + { + "name": "tail", + "nativeSrc": "36585:4:74", + "nodeType": "YulIdentifier", + "src": "36585:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "36504:63:74", + "nodeType": "YulIdentifier", + "src": "36504:63:74" + }, + "nativeSrc": "36504:86:74", + "nodeType": "YulFunctionCall", + "src": "36504:86:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "36496:4:74", + "nodeType": "YulIdentifier", + "src": "36496:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "36644:6:74", + "nodeType": "YulIdentifier", + "src": "36644:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "36657:9:74", + "nodeType": "YulIdentifier", + "src": "36657:9:74" + }, + { + "kind": "number", + "nativeSrc": "36668:2:74", + "nodeType": "YulLiteral", + "src": "36668:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "36653:3:74", + "nodeType": "YulIdentifier", + "src": "36653:3:74" + }, + "nativeSrc": "36653:18:74", + "nodeType": "YulFunctionCall", + "src": "36653:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "36600:43:74", + "nodeType": "YulIdentifier", + "src": "36600:43:74" + }, + "nativeSrc": "36600:72:74", + "nodeType": "YulFunctionCall", + "src": "36600:72:74" + }, + "nativeSrc": "36600:72:74", + "nodeType": "YulExpressionStatement", + "src": "36600:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes_calldata_ptr_t_address__to_t_bytes_memory_ptr_t_address__fromStack_reversed", + "nativeSrc": "36240:439:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "36350:9:74", + "nodeType": "YulTypedName", + "src": "36350:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "36362:6:74", + "nodeType": "YulTypedName", + "src": "36362:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "36370:6:74", + "nodeType": "YulTypedName", + "src": "36370:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "36378:6:74", + "nodeType": "YulTypedName", + "src": "36378:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "36389:4:74", + "nodeType": "YulTypedName", + "src": "36389:4:74", + "type": "" + } + ], + "src": "36240:439:74" + }, + { + "body": { + "nativeSrc": "36713:152:74", + "nodeType": "YulBlock", + "src": "36713:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "36730:1:74", + "nodeType": "YulLiteral", + "src": "36730:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "36733:77:74", + "nodeType": "YulLiteral", + "src": "36733:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36723:6:74", + "nodeType": "YulIdentifier", + "src": "36723:6:74" + }, + "nativeSrc": "36723:88:74", + "nodeType": "YulFunctionCall", + "src": "36723:88:74" + }, + "nativeSrc": "36723:88:74", + "nodeType": "YulExpressionStatement", + "src": "36723:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "36827:1:74", + "nodeType": "YulLiteral", + "src": "36827:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "36830:4:74", + "nodeType": "YulLiteral", + "src": "36830:4:74", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "36820:6:74", + "nodeType": "YulIdentifier", + "src": "36820:6:74" + }, + "nativeSrc": "36820:15:74", + "nodeType": "YulFunctionCall", + "src": "36820:15:74" + }, + "nativeSrc": "36820:15:74", + "nodeType": "YulExpressionStatement", + "src": "36820:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "36851:1:74", + "nodeType": "YulLiteral", + "src": "36851:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "36854:4:74", + "nodeType": "YulLiteral", + "src": "36854:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "36844:6:74", + "nodeType": "YulIdentifier", + "src": "36844:6:74" + }, + "nativeSrc": "36844:15:74", + "nodeType": "YulFunctionCall", + "src": "36844:15:74" + }, + "nativeSrc": "36844:15:74", + "nodeType": "YulExpressionStatement", + "src": "36844:15:74" + } + ] + }, + "name": "panic_error_0x32", + "nativeSrc": "36685:180:74", + "nodeType": "YulFunctionDefinition", + "src": "36685:180:74" + }, + { + "body": { + "nativeSrc": "36942:88:74", + "nodeType": "YulBlock", + "src": "36942:88:74", + "statements": [ + { + "nativeSrc": "36952:22:74", + "nodeType": "YulAssignment", + "src": "36952:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "36967:6:74", + "nodeType": "YulIdentifier", + "src": "36967:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "36961:5:74", + "nodeType": "YulIdentifier", + "src": "36961:5:74" + }, + "nativeSrc": "36961:13:74", + "nodeType": "YulFunctionCall", + "src": "36961:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "36952:5:74", + "nodeType": "YulIdentifier", + "src": "36952:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "37018:5:74", + "nodeType": "YulIdentifier", + "src": "37018:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address_payable", + "nativeSrc": "36983:34:74", + "nodeType": "YulIdentifier", + "src": "36983:34:74" + }, + "nativeSrc": "36983:41:74", + "nodeType": "YulFunctionCall", + "src": "36983:41:74" + }, + "nativeSrc": "36983:41:74", + "nodeType": "YulExpressionStatement", + "src": "36983:41:74" + } + ] + }, + "name": "abi_decode_t_address_payable_fromMemory", + "nativeSrc": "36871:159:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "36920:6:74", + "nodeType": "YulTypedName", + "src": "36920:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "36928:3:74", + "nodeType": "YulTypedName", + "src": "36928:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "36936:5:74", + "nodeType": "YulTypedName", + "src": "36936:5:74", + "type": "" + } + ], + "src": "36871:159:74" + }, + { + "body": { + "nativeSrc": "37121:282:74", + "nodeType": "YulBlock", + "src": "37121:282:74", + "statements": [ + { + "body": { + "nativeSrc": "37167:83:74", + "nodeType": "YulBlock", + "src": "37167:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "37169:77:74", + "nodeType": "YulIdentifier", + "src": "37169:77:74" + }, + "nativeSrc": "37169:79:74", + "nodeType": "YulFunctionCall", + "src": "37169:79:74" + }, + "nativeSrc": "37169:79:74", + "nodeType": "YulExpressionStatement", + "src": "37169:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "37142:7:74", + "nodeType": "YulIdentifier", + "src": "37142:7:74" + }, + { + "name": "headStart", + "nativeSrc": "37151:9:74", + "nodeType": "YulIdentifier", + "src": "37151:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "37138:3:74", + "nodeType": "YulIdentifier", + "src": "37138:3:74" + }, + "nativeSrc": "37138:23:74", + "nodeType": "YulFunctionCall", + "src": "37138:23:74" + }, + { + "kind": "number", + "nativeSrc": "37163:2:74", + "nodeType": "YulLiteral", + "src": "37163:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "37134:3:74", + "nodeType": "YulIdentifier", + "src": "37134:3:74" + }, + "nativeSrc": "37134:32:74", + "nodeType": "YulFunctionCall", + "src": "37134:32:74" + }, + "nativeSrc": "37131:119:74", + "nodeType": "YulIf", + "src": "37131:119:74" + }, + { + "nativeSrc": "37260:136:74", + "nodeType": "YulBlock", + "src": "37260:136:74", + "statements": [ + { + "nativeSrc": "37275:15:74", + "nodeType": "YulVariableDeclaration", + "src": "37275:15:74", + "value": { + "kind": "number", + "nativeSrc": "37289:1:74", + "nodeType": "YulLiteral", + "src": "37289:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "37279:6:74", + "nodeType": "YulTypedName", + "src": "37279:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "37304:82:74", + "nodeType": "YulAssignment", + "src": "37304:82:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "37358:9:74", + "nodeType": "YulIdentifier", + "src": "37358:9:74" + }, + { + "name": "offset", + "nativeSrc": "37369:6:74", + "nodeType": "YulIdentifier", + "src": "37369:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37354:3:74", + "nodeType": "YulIdentifier", + "src": "37354:3:74" + }, + "nativeSrc": "37354:22:74", + "nodeType": "YulFunctionCall", + "src": "37354:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "37378:7:74", + "nodeType": "YulIdentifier", + "src": "37378:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable_fromMemory", + "nativeSrc": "37314:39:74", + "nodeType": "YulIdentifier", + "src": "37314:39:74" + }, + "nativeSrc": "37314:72:74", + "nodeType": "YulFunctionCall", + "src": "37314:72:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "37304:6:74", + "nodeType": "YulIdentifier", + "src": "37304:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_payable_fromMemory", + "nativeSrc": "37036:367:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "37091:9:74", + "nodeType": "YulTypedName", + "src": "37091:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "37102:7:74", + "nodeType": "YulTypedName", + "src": "37102:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "37114:6:74", + "nodeType": "YulTypedName", + "src": "37114:6:74", + "type": "" + } + ], + "src": "37036:367:74" + }, + { + "body": { + "nativeSrc": "37437:152:74", + "nodeType": "YulBlock", + "src": "37437:152:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "37454:1:74", + "nodeType": "YulLiteral", + "src": "37454:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "37457:77:74", + "nodeType": "YulLiteral", + "src": "37457:77:74", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37447:6:74", + "nodeType": "YulIdentifier", + "src": "37447:6:74" + }, + "nativeSrc": "37447:88:74", + "nodeType": "YulFunctionCall", + "src": "37447:88:74" + }, + "nativeSrc": "37447:88:74", + "nodeType": "YulExpressionStatement", + "src": "37447:88:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "37551:1:74", + "nodeType": "YulLiteral", + "src": "37551:1:74", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nativeSrc": "37554:4:74", + "nodeType": "YulLiteral", + "src": "37554:4:74", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37544:6:74", + "nodeType": "YulIdentifier", + "src": "37544:6:74" + }, + "nativeSrc": "37544:15:74", + "nodeType": "YulFunctionCall", + "src": "37544:15:74" + }, + "nativeSrc": "37544:15:74", + "nodeType": "YulExpressionStatement", + "src": "37544:15:74" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "37575:1:74", + "nodeType": "YulLiteral", + "src": "37575:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "37578:4:74", + "nodeType": "YulLiteral", + "src": "37578:4:74", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "37568:6:74", + "nodeType": "YulIdentifier", + "src": "37568:6:74" + }, + "nativeSrc": "37568:15:74", + "nodeType": "YulFunctionCall", + "src": "37568:15:74" + }, + "nativeSrc": "37568:15:74", + "nodeType": "YulExpressionStatement", + "src": "37568:15:74" + } + ] + }, + "name": "panic_error_0x11", + "nativeSrc": "37409:180:74", + "nodeType": "YulFunctionDefinition", + "src": "37409:180:74" + }, + { + "body": { + "nativeSrc": "37639:147:74", + "nodeType": "YulBlock", + "src": "37639:147:74", + "statements": [ + { + "nativeSrc": "37649:25:74", + "nodeType": "YulAssignment", + "src": "37649:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "37672:1:74", + "nodeType": "YulIdentifier", + "src": "37672:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "37654:17:74", + "nodeType": "YulIdentifier", + "src": "37654:17:74" + }, + "nativeSrc": "37654:20:74", + "nodeType": "YulFunctionCall", + "src": "37654:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "37649:1:74", + "nodeType": "YulIdentifier", + "src": "37649:1:74" + } + ] + }, + { + "nativeSrc": "37683:25:74", + "nodeType": "YulAssignment", + "src": "37683:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "37706:1:74", + "nodeType": "YulIdentifier", + "src": "37706:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "37688:17:74", + "nodeType": "YulIdentifier", + "src": "37688:17:74" + }, + "nativeSrc": "37688:20:74", + "nodeType": "YulFunctionCall", + "src": "37688:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "37683:1:74", + "nodeType": "YulIdentifier", + "src": "37683:1:74" + } + ] + }, + { + "nativeSrc": "37717:16:74", + "nodeType": "YulAssignment", + "src": "37717:16:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "37728:1:74", + "nodeType": "YulIdentifier", + "src": "37728:1:74" + }, + { + "name": "y", + "nativeSrc": "37731:1:74", + "nodeType": "YulIdentifier", + "src": "37731:1:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "37724:3:74", + "nodeType": "YulIdentifier", + "src": "37724:3:74" + }, + "nativeSrc": "37724:9:74", + "nodeType": "YulFunctionCall", + "src": "37724:9:74" + }, + "variableNames": [ + { + "name": "sum", + "nativeSrc": "37717:3:74", + "nodeType": "YulIdentifier", + "src": "37717:3:74" + } + ] + }, + { + "body": { + "nativeSrc": "37757:22:74", + "nodeType": "YulBlock", + "src": "37757:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "37759:16:74", + "nodeType": "YulIdentifier", + "src": "37759:16:74" + }, + "nativeSrc": "37759:18:74", + "nodeType": "YulFunctionCall", + "src": "37759:18:74" + }, + "nativeSrc": "37759:18:74", + "nodeType": "YulExpressionStatement", + "src": "37759:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nativeSrc": "37749:1:74", + "nodeType": "YulIdentifier", + "src": "37749:1:74" + }, + { + "name": "sum", + "nativeSrc": "37752:3:74", + "nodeType": "YulIdentifier", + "src": "37752:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "37746:2:74", + "nodeType": "YulIdentifier", + "src": "37746:2:74" + }, + "nativeSrc": "37746:10:74", + "nodeType": "YulFunctionCall", + "src": "37746:10:74" + }, + "nativeSrc": "37743:36:74", + "nodeType": "YulIf", + "src": "37743:36:74" + } + ] + }, + "name": "checked_add_t_uint256", + "nativeSrc": "37595:191:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "37626:1:74", + "nodeType": "YulTypedName", + "src": "37626:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "37629:1:74", + "nodeType": "YulTypedName", + "src": "37629:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nativeSrc": "37635:3:74", + "nodeType": "YulTypedName", + "src": "37635:3:74", + "type": "" + } + ], + "src": "37595:191:74" + }, + { + "body": { + "nativeSrc": "37839:32:74", + "nodeType": "YulBlock", + "src": "37839:32:74", + "statements": [ + { + "nativeSrc": "37849:16:74", + "nodeType": "YulAssignment", + "src": "37849:16:74", + "value": { + "name": "value", + "nativeSrc": "37860:5:74", + "nodeType": "YulIdentifier", + "src": "37860:5:74" + }, + "variableNames": [ + { + "name": "aligned", + "nativeSrc": "37849:7:74", + "nodeType": "YulIdentifier", + "src": "37849:7:74" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nativeSrc": "37792:79:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "37821:5:74", + "nodeType": "YulTypedName", + "src": "37821:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nativeSrc": "37831:7:74", + "nodeType": "YulTypedName", + "src": "37831:7:74", + "type": "" + } + ], + "src": "37792:79:74" + }, + { + "body": { + "nativeSrc": "37960:74:74", + "nodeType": "YulBlock", + "src": "37960:74:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "37977:3:74", + "nodeType": "YulIdentifier", + "src": "37977:3:74" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "38020:5:74", + "nodeType": "YulIdentifier", + "src": "38020:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "38002:17:74", + "nodeType": "YulIdentifier", + "src": "38002:17:74" + }, + "nativeSrc": "38002:24:74", + "nodeType": "YulFunctionCall", + "src": "38002:24:74" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nativeSrc": "37982:19:74", + "nodeType": "YulIdentifier", + "src": "37982:19:74" + }, + "nativeSrc": "37982:45:74", + "nodeType": "YulFunctionCall", + "src": "37982:45:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "37970:6:74", + "nodeType": "YulIdentifier", + "src": "37970:6:74" + }, + "nativeSrc": "37970:58:74", + "nodeType": "YulFunctionCall", + "src": "37970:58:74" + }, + "nativeSrc": "37970:58:74", + "nodeType": "YulExpressionStatement", + "src": "37970:58:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "37877:157:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "37948:5:74", + "nodeType": "YulTypedName", + "src": "37948:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "37955:3:74", + "nodeType": "YulTypedName", + "src": "37955:3:74", + "type": "" + } + ], + "src": "37877:157:74" + }, + { + "body": { + "nativeSrc": "38184:253:74", + "nodeType": "YulBlock", + "src": "38184:253:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "38257:6:74", + "nodeType": "YulIdentifier", + "src": "38257:6:74" + }, + { + "name": "pos", + "nativeSrc": "38266:3:74", + "nodeType": "YulIdentifier", + "src": "38266:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "38195:61:74", + "nodeType": "YulIdentifier", + "src": "38195:61:74" + }, + "nativeSrc": "38195:75:74", + "nodeType": "YulFunctionCall", + "src": "38195:75:74" + }, + "nativeSrc": "38195:75:74", + "nodeType": "YulExpressionStatement", + "src": "38195:75:74" + }, + { + "nativeSrc": "38279:19:74", + "nodeType": "YulAssignment", + "src": "38279:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38290:3:74", + "nodeType": "YulIdentifier", + "src": "38290:3:74" + }, + { + "kind": "number", + "nativeSrc": "38295:2:74", + "nodeType": "YulLiteral", + "src": "38295:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38286:3:74", + "nodeType": "YulIdentifier", + "src": "38286:3:74" + }, + "nativeSrc": "38286:12:74", + "nodeType": "YulFunctionCall", + "src": "38286:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "38279:3:74", + "nodeType": "YulIdentifier", + "src": "38279:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "38370:6:74", + "nodeType": "YulIdentifier", + "src": "38370:6:74" + }, + { + "name": "pos", + "nativeSrc": "38379:3:74", + "nodeType": "YulIdentifier", + "src": "38379:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nativeSrc": "38308:61:74", + "nodeType": "YulIdentifier", + "src": "38308:61:74" + }, + "nativeSrc": "38308:75:74", + "nodeType": "YulFunctionCall", + "src": "38308:75:74" + }, + "nativeSrc": "38308:75:74", + "nodeType": "YulExpressionStatement", + "src": "38308:75:74" + }, + { + "nativeSrc": "38392:19:74", + "nodeType": "YulAssignment", + "src": "38392:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38403:3:74", + "nodeType": "YulIdentifier", + "src": "38403:3:74" + }, + { + "kind": "number", + "nativeSrc": "38408:2:74", + "nodeType": "YulLiteral", + "src": "38408:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38399:3:74", + "nodeType": "YulIdentifier", + "src": "38399:3:74" + }, + "nativeSrc": "38399:12:74", + "nodeType": "YulFunctionCall", + "src": "38399:12:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "38392:3:74", + "nodeType": "YulIdentifier", + "src": "38392:3:74" + } + ] + }, + { + "nativeSrc": "38421:10:74", + "nodeType": "YulAssignment", + "src": "38421:10:74", + "value": { + "name": "pos", + "nativeSrc": "38428:3:74", + "nodeType": "YulIdentifier", + "src": "38428:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "38421:3:74", + "nodeType": "YulIdentifier", + "src": "38421:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "38040:397:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "38155:3:74", + "nodeType": "YulTypedName", + "src": "38155:3:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "38161:6:74", + "nodeType": "YulTypedName", + "src": "38161:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "38169:6:74", + "nodeType": "YulTypedName", + "src": "38169:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "38180:3:74", + "nodeType": "YulTypedName", + "src": "38180:3:74", + "type": "" + } + ], + "src": "38040:397:74" + }, + { + "body": { + "nativeSrc": "38556:34:74", + "nodeType": "YulBlock", + "src": "38556:34:74", + "statements": [ + { + "nativeSrc": "38566:18:74", + "nodeType": "YulAssignment", + "src": "38566:18:74", + "value": { + "name": "pos", + "nativeSrc": "38581:3:74", + "nodeType": "YulIdentifier", + "src": "38581:3:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "38566:11:74", + "nodeType": "YulIdentifier", + "src": "38566:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "38443:147:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "38528:3:74", + "nodeType": "YulTypedName", + "src": "38528:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "38533:6:74", + "nodeType": "YulTypedName", + "src": "38533:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "38544:11:74", + "nodeType": "YulTypedName", + "src": "38544:11:74", + "type": "" + } + ], + "src": "38443:147:74" + }, + { + "body": { + "nativeSrc": "38704:278:74", + "nodeType": "YulBlock", + "src": "38704:278:74", + "statements": [ + { + "nativeSrc": "38714:52:74", + "nodeType": "YulVariableDeclaration", + "src": "38714:52:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "38760:5:74", + "nodeType": "YulIdentifier", + "src": "38760:5:74" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nativeSrc": "38728:31:74", + "nodeType": "YulIdentifier", + "src": "38728:31:74" + }, + "nativeSrc": "38728:38:74", + "nodeType": "YulFunctionCall", + "src": "38728:38:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "38718:6:74", + "nodeType": "YulTypedName", + "src": "38718:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "38775:95:74", + "nodeType": "YulAssignment", + "src": "38775:95:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38858:3:74", + "nodeType": "YulIdentifier", + "src": "38858:3:74" + }, + { + "name": "length", + "nativeSrc": "38863:6:74", + "nodeType": "YulIdentifier", + "src": "38863:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "38782:75:74", + "nodeType": "YulIdentifier", + "src": "38782:75:74" + }, + "nativeSrc": "38782:88:74", + "nodeType": "YulFunctionCall", + "src": "38782:88:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "38775:3:74", + "nodeType": "YulIdentifier", + "src": "38775:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "38918:5:74", + "nodeType": "YulIdentifier", + "src": "38918:5:74" + }, + { + "kind": "number", + "nativeSrc": "38925:4:74", + "nodeType": "YulLiteral", + "src": "38925:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38914:3:74", + "nodeType": "YulIdentifier", + "src": "38914:3:74" + }, + "nativeSrc": "38914:16:74", + "nodeType": "YulFunctionCall", + "src": "38914:16:74" + }, + { + "name": "pos", + "nativeSrc": "38932:3:74", + "nodeType": "YulIdentifier", + "src": "38932:3:74" + }, + { + "name": "length", + "nativeSrc": "38937:6:74", + "nodeType": "YulIdentifier", + "src": "38937:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "38879:34:74", + "nodeType": "YulIdentifier", + "src": "38879:34:74" + }, + "nativeSrc": "38879:65:74", + "nodeType": "YulFunctionCall", + "src": "38879:65:74" + }, + "nativeSrc": "38879:65:74", + "nodeType": "YulExpressionStatement", + "src": "38879:65:74" + }, + { + "nativeSrc": "38953:23:74", + "nodeType": "YulAssignment", + "src": "38953:23:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "38964:3:74", + "nodeType": "YulIdentifier", + "src": "38964:3:74" + }, + { + "name": "length", + "nativeSrc": "38969:6:74", + "nodeType": "YulIdentifier", + "src": "38969:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "38960:3:74", + "nodeType": "YulIdentifier", + "src": "38960:3:74" + }, + "nativeSrc": "38960:16:74", + "nodeType": "YulFunctionCall", + "src": "38960:16:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "38953:3:74", + "nodeType": "YulIdentifier", + "src": "38953:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "38596:386:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "38685:5:74", + "nodeType": "YulTypedName", + "src": "38685:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "38692:3:74", + "nodeType": "YulTypedName", + "src": "38692:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "38700:3:74", + "nodeType": "YulTypedName", + "src": "38700:3:74", + "type": "" + } + ], + "src": "38596:386:74" + }, + { + "body": { + "nativeSrc": "39122:137:74", + "nodeType": "YulBlock", + "src": "39122:137:74", + "statements": [ + { + "nativeSrc": "39133:100:74", + "nodeType": "YulAssignment", + "src": "39133:100:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "39220:6:74", + "nodeType": "YulIdentifier", + "src": "39220:6:74" + }, + { + "name": "pos", + "nativeSrc": "39229:3:74", + "nodeType": "YulIdentifier", + "src": "39229:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack", + "nativeSrc": "39140:79:74", + "nodeType": "YulIdentifier", + "src": "39140:79:74" + }, + "nativeSrc": "39140:93:74", + "nodeType": "YulFunctionCall", + "src": "39140:93:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "39133:3:74", + "nodeType": "YulIdentifier", + "src": "39133:3:74" + } + ] + }, + { + "nativeSrc": "39243:10:74", + "nodeType": "YulAssignment", + "src": "39243:10:74", + "value": { + "name": "pos", + "nativeSrc": "39250:3:74", + "nodeType": "YulIdentifier", + "src": "39250:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "39243:3:74", + "nodeType": "YulIdentifier", + "src": "39243:3:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nativeSrc": "38988:271:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "39101:3:74", + "nodeType": "YulTypedName", + "src": "39101:3:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "39107:6:74", + "nodeType": "YulTypedName", + "src": "39107:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "39118:3:74", + "nodeType": "YulTypedName", + "src": "39118:3:74", + "type": "" + } + ], + "src": "38988:271:74" + }, + { + "body": { + "nativeSrc": "39363:124:74", + "nodeType": "YulBlock", + "src": "39363:124:74", + "statements": [ + { + "nativeSrc": "39373:26:74", + "nodeType": "YulAssignment", + "src": "39373:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39385:9:74", + "nodeType": "YulIdentifier", + "src": "39385:9:74" + }, + { + "kind": "number", + "nativeSrc": "39396:2:74", + "nodeType": "YulLiteral", + "src": "39396:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39381:3:74", + "nodeType": "YulIdentifier", + "src": "39381:3:74" + }, + "nativeSrc": "39381:18:74", + "nodeType": "YulFunctionCall", + "src": "39381:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "39373:4:74", + "nodeType": "YulIdentifier", + "src": "39373:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "39453:6:74", + "nodeType": "YulIdentifier", + "src": "39453:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39466:9:74", + "nodeType": "YulIdentifier", + "src": "39466:9:74" + }, + { + "kind": "number", + "nativeSrc": "39477:1:74", + "nodeType": "YulLiteral", + "src": "39477:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39462:3:74", + "nodeType": "YulIdentifier", + "src": "39462:3:74" + }, + "nativeSrc": "39462:17:74", + "nodeType": "YulFunctionCall", + "src": "39462:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "39409:43:74", + "nodeType": "YulIdentifier", + "src": "39409:43:74" + }, + "nativeSrc": "39409:71:74", + "nodeType": "YulFunctionCall", + "src": "39409:71:74" + }, + "nativeSrc": "39409:71:74", + "nodeType": "YulExpressionStatement", + "src": "39409:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "39265:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "39335:9:74", + "nodeType": "YulTypedName", + "src": "39335:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "39347:6:74", + "nodeType": "YulTypedName", + "src": "39347:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "39358:4:74", + "nodeType": "YulTypedName", + "src": "39358:4:74", + "type": "" + } + ], + "src": "39265:222:74" + }, + { + "body": { + "nativeSrc": "39556:80:74", + "nodeType": "YulBlock", + "src": "39556:80:74", + "statements": [ + { + "nativeSrc": "39566:22:74", + "nodeType": "YulAssignment", + "src": "39566:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "39581:6:74", + "nodeType": "YulIdentifier", + "src": "39581:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "39575:5:74", + "nodeType": "YulIdentifier", + "src": "39575:5:74" + }, + "nativeSrc": "39575:13:74", + "nodeType": "YulFunctionCall", + "src": "39575:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "39566:5:74", + "nodeType": "YulIdentifier", + "src": "39566:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "39624:5:74", + "nodeType": "YulIdentifier", + "src": "39624:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nativeSrc": "39597:26:74", + "nodeType": "YulIdentifier", + "src": "39597:26:74" + }, + "nativeSrc": "39597:33:74", + "nodeType": "YulFunctionCall", + "src": "39597:33:74" + }, + "nativeSrc": "39597:33:74", + "nodeType": "YulExpressionStatement", + "src": "39597:33:74" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "39493:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "39534:6:74", + "nodeType": "YulTypedName", + "src": "39534:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "39542:3:74", + "nodeType": "YulTypedName", + "src": "39542:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "39550:5:74", + "nodeType": "YulTypedName", + "src": "39550:5:74", + "type": "" + } + ], + "src": "39493:143:74" + }, + { + "body": { + "nativeSrc": "39719:274:74", + "nodeType": "YulBlock", + "src": "39719:274:74", + "statements": [ + { + "body": { + "nativeSrc": "39765:83:74", + "nodeType": "YulBlock", + "src": "39765:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "39767:77:74", + "nodeType": "YulIdentifier", + "src": "39767:77:74" + }, + "nativeSrc": "39767:79:74", + "nodeType": "YulFunctionCall", + "src": "39767:79:74" + }, + "nativeSrc": "39767:79:74", + "nodeType": "YulExpressionStatement", + "src": "39767:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "39740:7:74", + "nodeType": "YulIdentifier", + "src": "39740:7:74" + }, + { + "name": "headStart", + "nativeSrc": "39749:9:74", + "nodeType": "YulIdentifier", + "src": "39749:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "39736:3:74", + "nodeType": "YulIdentifier", + "src": "39736:3:74" + }, + "nativeSrc": "39736:23:74", + "nodeType": "YulFunctionCall", + "src": "39736:23:74" + }, + { + "kind": "number", + "nativeSrc": "39761:2:74", + "nodeType": "YulLiteral", + "src": "39761:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "39732:3:74", + "nodeType": "YulIdentifier", + "src": "39732:3:74" + }, + "nativeSrc": "39732:32:74", + "nodeType": "YulFunctionCall", + "src": "39732:32:74" + }, + "nativeSrc": "39729:119:74", + "nodeType": "YulIf", + "src": "39729:119:74" + }, + { + "nativeSrc": "39858:128:74", + "nodeType": "YulBlock", + "src": "39858:128:74", + "statements": [ + { + "nativeSrc": "39873:15:74", + "nodeType": "YulVariableDeclaration", + "src": "39873:15:74", + "value": { + "kind": "number", + "nativeSrc": "39887:1:74", + "nodeType": "YulLiteral", + "src": "39887:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "39877:6:74", + "nodeType": "YulTypedName", + "src": "39877:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "39902:74:74", + "nodeType": "YulAssignment", + "src": "39902:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "39948:9:74", + "nodeType": "YulIdentifier", + "src": "39948:9:74" + }, + { + "name": "offset", + "nativeSrc": "39959:6:74", + "nodeType": "YulIdentifier", + "src": "39959:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "39944:3:74", + "nodeType": "YulIdentifier", + "src": "39944:3:74" + }, + "nativeSrc": "39944:22:74", + "nodeType": "YulFunctionCall", + "src": "39944:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "39968:7:74", + "nodeType": "YulIdentifier", + "src": "39968:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nativeSrc": "39912:31:74", + "nodeType": "YulIdentifier", + "src": "39912:31:74" + }, + "nativeSrc": "39912:64:74", + "nodeType": "YulFunctionCall", + "src": "39912:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "39902:6:74", + "nodeType": "YulIdentifier", + "src": "39902:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nativeSrc": "39642:351:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "39689:9:74", + "nodeType": "YulTypedName", + "src": "39689:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "39700:7:74", + "nodeType": "YulTypedName", + "src": "39700:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "39712:6:74", + "nodeType": "YulTypedName", + "src": "39712:6:74", + "type": "" + } + ], + "src": "39642:351:74" + }, + { + "body": { + "nativeSrc": "40125:206:74", + "nodeType": "YulBlock", + "src": "40125:206:74", + "statements": [ + { + "nativeSrc": "40135:26:74", + "nodeType": "YulAssignment", + "src": "40135:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40147:9:74", + "nodeType": "YulIdentifier", + "src": "40147:9:74" + }, + { + "kind": "number", + "nativeSrc": "40158:2:74", + "nodeType": "YulLiteral", + "src": "40158:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40143:3:74", + "nodeType": "YulIdentifier", + "src": "40143:3:74" + }, + "nativeSrc": "40143:18:74", + "nodeType": "YulFunctionCall", + "src": "40143:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "40135:4:74", + "nodeType": "YulIdentifier", + "src": "40135:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "40215:6:74", + "nodeType": "YulIdentifier", + "src": "40215:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40228:9:74", + "nodeType": "YulIdentifier", + "src": "40228:9:74" + }, + { + "kind": "number", + "nativeSrc": "40239:1:74", + "nodeType": "YulLiteral", + "src": "40239:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40224:3:74", + "nodeType": "YulIdentifier", + "src": "40224:3:74" + }, + "nativeSrc": "40224:17:74", + "nodeType": "YulFunctionCall", + "src": "40224:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "40171:43:74", + "nodeType": "YulIdentifier", + "src": "40171:43:74" + }, + "nativeSrc": "40171:71:74", + "nodeType": "YulFunctionCall", + "src": "40171:71:74" + }, + "nativeSrc": "40171:71:74", + "nodeType": "YulExpressionStatement", + "src": "40171:71:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "40296:6:74", + "nodeType": "YulIdentifier", + "src": "40296:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "40309:9:74", + "nodeType": "YulIdentifier", + "src": "40309:9:74" + }, + { + "kind": "number", + "nativeSrc": "40320:2:74", + "nodeType": "YulLiteral", + "src": "40320:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40305:3:74", + "nodeType": "YulIdentifier", + "src": "40305:3:74" + }, + "nativeSrc": "40305:18:74", + "nodeType": "YulFunctionCall", + "src": "40305:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "40252:43:74", + "nodeType": "YulIdentifier", + "src": "40252:43:74" + }, + "nativeSrc": "40252:72:74", + "nodeType": "YulFunctionCall", + "src": "40252:72:74" + }, + "nativeSrc": "40252:72:74", + "nodeType": "YulExpressionStatement", + "src": "40252:72:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed", + "nativeSrc": "39999:332:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "40089:9:74", + "nodeType": "YulTypedName", + "src": "40089:9:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "40101:6:74", + "nodeType": "YulTypedName", + "src": "40101:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "40109:6:74", + "nodeType": "YulTypedName", + "src": "40109:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "40120:4:74", + "nodeType": "YulTypedName", + "src": "40120:4:74", + "type": "" + } + ], + "src": "39999:332:74" + }, + { + "body": { + "nativeSrc": "40443:119:74", + "nodeType": "YulBlock", + "src": "40443:119:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "40465:6:74", + "nodeType": "YulIdentifier", + "src": "40465:6:74" + }, + { + "kind": "number", + "nativeSrc": "40473:1:74", + "nodeType": "YulLiteral", + "src": "40473:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40461:3:74", + "nodeType": "YulIdentifier", + "src": "40461:3:74" + }, + "nativeSrc": "40461:14:74", + "nodeType": "YulFunctionCall", + "src": "40461:14:74" + }, + { + "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f", + "kind": "string", + "nativeSrc": "40477:34:74", + "nodeType": "YulLiteral", + "src": "40477:34:74", + "type": "", + "value": "Address: insufficient balance fo" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40454:6:74", + "nodeType": "YulIdentifier", + "src": "40454:6:74" + }, + "nativeSrc": "40454:58:74", + "nodeType": "YulFunctionCall", + "src": "40454:58:74" + }, + "nativeSrc": "40454:58:74", + "nodeType": "YulExpressionStatement", + "src": "40454:58:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "40533:6:74", + "nodeType": "YulIdentifier", + "src": "40533:6:74" + }, + { + "kind": "number", + "nativeSrc": "40541:2:74", + "nodeType": "YulLiteral", + "src": "40541:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40529:3:74", + "nodeType": "YulIdentifier", + "src": "40529:3:74" + }, + "nativeSrc": "40529:15:74", + "nodeType": "YulFunctionCall", + "src": "40529:15:74" + }, + { + "hexValue": "722063616c6c", + "kind": "string", + "nativeSrc": "40546:8:74", + "nodeType": "YulLiteral", + "src": "40546:8:74", + "type": "", + "value": "r call" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "40522:6:74", + "nodeType": "YulIdentifier", + "src": "40522:6:74" + }, + "nativeSrc": "40522:33:74", + "nodeType": "YulFunctionCall", + "src": "40522:33:74" + }, + "nativeSrc": "40522:33:74", + "nodeType": "YulExpressionStatement", + "src": "40522:33:74" + } + ] + }, + "name": "store_literal_in_memory_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", + "nativeSrc": "40337:225:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "40435:6:74", + "nodeType": "YulTypedName", + "src": "40435:6:74", + "type": "" + } + ], + "src": "40337:225:74" + }, + { + "body": { + "nativeSrc": "40714:220:74", + "nodeType": "YulBlock", + "src": "40714:220:74", + "statements": [ + { + "nativeSrc": "40724:74:74", + "nodeType": "YulAssignment", + "src": "40724:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40790:3:74", + "nodeType": "YulIdentifier", + "src": "40790:3:74" + }, + { + "kind": "number", + "nativeSrc": "40795:2:74", + "nodeType": "YulLiteral", + "src": "40795:2:74", + "type": "", + "value": "38" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "40731:58:74", + "nodeType": "YulIdentifier", + "src": "40731:58:74" + }, + "nativeSrc": "40731:67:74", + "nodeType": "YulFunctionCall", + "src": "40731:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "40724:3:74", + "nodeType": "YulIdentifier", + "src": "40724:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40896:3:74", + "nodeType": "YulIdentifier", + "src": "40896:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", + "nativeSrc": "40807:88:74", + "nodeType": "YulIdentifier", + "src": "40807:88:74" + }, + "nativeSrc": "40807:93:74", + "nodeType": "YulFunctionCall", + "src": "40807:93:74" + }, + "nativeSrc": "40807:93:74", + "nodeType": "YulExpressionStatement", + "src": "40807:93:74" + }, + { + "nativeSrc": "40909:19:74", + "nodeType": "YulAssignment", + "src": "40909:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "40920:3:74", + "nodeType": "YulIdentifier", + "src": "40920:3:74" + }, + { + "kind": "number", + "nativeSrc": "40925:2:74", + "nodeType": "YulLiteral", + "src": "40925:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "40916:3:74", + "nodeType": "YulIdentifier", + "src": "40916:3:74" + }, + "nativeSrc": "40916:12:74", + "nodeType": "YulFunctionCall", + "src": "40916:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "40909:3:74", + "nodeType": "YulIdentifier", + "src": "40909:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c_to_t_string_memory_ptr_fromStack", + "nativeSrc": "40568:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "40702:3:74", + "nodeType": "YulTypedName", + "src": "40702:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "40710:3:74", + "nodeType": "YulTypedName", + "src": "40710:3:74", + "type": "" + } + ], + "src": "40568:366:74" + }, + { + "body": { + "nativeSrc": "41111:248:74", + "nodeType": "YulBlock", + "src": "41111:248:74", + "statements": [ + { + "nativeSrc": "41121:26:74", + "nodeType": "YulAssignment", + "src": "41121:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41133:9:74", + "nodeType": "YulIdentifier", + "src": "41133:9:74" + }, + { + "kind": "number", + "nativeSrc": "41144:2:74", + "nodeType": "YulLiteral", + "src": "41144:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41129:3:74", + "nodeType": "YulIdentifier", + "src": "41129:3:74" + }, + "nativeSrc": "41129:18:74", + "nodeType": "YulFunctionCall", + "src": "41129:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41121:4:74", + "nodeType": "YulIdentifier", + "src": "41121:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "41168:9:74", + "nodeType": "YulIdentifier", + "src": "41168:9:74" + }, + { + "kind": "number", + "nativeSrc": "41179:1:74", + "nodeType": "YulLiteral", + "src": "41179:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41164:3:74", + "nodeType": "YulIdentifier", + "src": "41164:3:74" + }, + "nativeSrc": "41164:17:74", + "nodeType": "YulFunctionCall", + "src": "41164:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "41187:4:74", + "nodeType": "YulIdentifier", + "src": "41187:4:74" + }, + { + "name": "headStart", + "nativeSrc": "41193:9:74", + "nodeType": "YulIdentifier", + "src": "41193:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "41183:3:74", + "nodeType": "YulIdentifier", + "src": "41183:3:74" + }, + "nativeSrc": "41183:20:74", + "nodeType": "YulFunctionCall", + "src": "41183:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "41157:6:74", + "nodeType": "YulIdentifier", + "src": "41157:6:74" + }, + "nativeSrc": "41157:47:74", + "nodeType": "YulFunctionCall", + "src": "41157:47:74" + }, + "nativeSrc": "41157:47:74", + "nodeType": "YulExpressionStatement", + "src": "41157:47:74" + }, + { + "nativeSrc": "41213:139:74", + "nodeType": "YulAssignment", + "src": "41213:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "41347:4:74", + "nodeType": "YulIdentifier", + "src": "41347:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c_to_t_string_memory_ptr_fromStack", + "nativeSrc": "41221:124:74", + "nodeType": "YulIdentifier", + "src": "41221:124:74" + }, + "nativeSrc": "41221:131:74", + "nodeType": "YulFunctionCall", + "src": "41221:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "41213:4:74", + "nodeType": "YulIdentifier", + "src": "41213:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "40940:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "41091:9:74", + "nodeType": "YulTypedName", + "src": "41091:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "41106:4:74", + "nodeType": "YulTypedName", + "src": "41106:4:74", + "type": "" + } + ], + "src": "40940:419:74" + }, + { + "body": { + "nativeSrc": "41457:229:74", + "nodeType": "YulBlock", + "src": "41457:229:74", + "statements": [ + { + "body": { + "nativeSrc": "41562:22:74", + "nodeType": "YulBlock", + "src": "41562:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "41564:16:74", + "nodeType": "YulIdentifier", + "src": "41564:16:74" + }, + "nativeSrc": "41564:18:74", + "nodeType": "YulFunctionCall", + "src": "41564:18:74" + }, + "nativeSrc": "41564:18:74", + "nodeType": "YulExpressionStatement", + "src": "41564:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "41534:6:74", + "nodeType": "YulIdentifier", + "src": "41534:6:74" + }, + { + "kind": "number", + "nativeSrc": "41542:18:74", + "nodeType": "YulLiteral", + "src": "41542:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "41531:2:74", + "nodeType": "YulIdentifier", + "src": "41531:2:74" + }, + "nativeSrc": "41531:30:74", + "nodeType": "YulFunctionCall", + "src": "41531:30:74" + }, + "nativeSrc": "41528:56:74", + "nodeType": "YulIf", + "src": "41528:56:74" + }, + { + "nativeSrc": "41594:25:74", + "nodeType": "YulAssignment", + "src": "41594:25:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "41606:6:74", + "nodeType": "YulIdentifier", + "src": "41606:6:74" + }, + { + "kind": "number", + "nativeSrc": "41614:4:74", + "nodeType": "YulLiteral", + "src": "41614:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "41602:3:74", + "nodeType": "YulIdentifier", + "src": "41602:3:74" + }, + "nativeSrc": "41602:17:74", + "nodeType": "YulFunctionCall", + "src": "41602:17:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "41594:4:74", + "nodeType": "YulIdentifier", + "src": "41594:4:74" + } + ] + }, + { + "nativeSrc": "41656:23:74", + "nodeType": "YulAssignment", + "src": "41656:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "41668:4:74", + "nodeType": "YulIdentifier", + "src": "41668:4:74" + }, + { + "kind": "number", + "nativeSrc": "41674:4:74", + "nodeType": "YulLiteral", + "src": "41674:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41664:3:74", + "nodeType": "YulIdentifier", + "src": "41664:3:74" + }, + "nativeSrc": "41664:15:74", + "nodeType": "YulFunctionCall", + "src": "41664:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "41656:4:74", + "nodeType": "YulIdentifier", + "src": "41656:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "41365:321:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "41441:6:74", + "nodeType": "YulTypedName", + "src": "41441:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "41452:4:74", + "nodeType": "YulTypedName", + "src": "41452:4:74", + "type": "" + } + ], + "src": "41365:321:74" + }, + { + "body": { + "nativeSrc": "41759:241:74", + "nodeType": "YulBlock", + "src": "41759:241:74", + "statements": [ + { + "body": { + "nativeSrc": "41864:22:74", + "nodeType": "YulBlock", + "src": "41864:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nativeSrc": "41866:16:74", + "nodeType": "YulIdentifier", + "src": "41866:16:74" + }, + "nativeSrc": "41866:18:74", + "nodeType": "YulFunctionCall", + "src": "41866:18:74" + }, + "nativeSrc": "41866:18:74", + "nodeType": "YulExpressionStatement", + "src": "41866:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nativeSrc": "41836:6:74", + "nodeType": "YulIdentifier", + "src": "41836:6:74" + }, + { + "kind": "number", + "nativeSrc": "41844:18:74", + "nodeType": "YulLiteral", + "src": "41844:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "41833:2:74", + "nodeType": "YulIdentifier", + "src": "41833:2:74" + }, + "nativeSrc": "41833:30:74", + "nodeType": "YulFunctionCall", + "src": "41833:30:74" + }, + "nativeSrc": "41830:56:74", + "nodeType": "YulIf", + "src": "41830:56:74" + }, + { + "nativeSrc": "41896:37:74", + "nodeType": "YulAssignment", + "src": "41896:37:74", + "value": { + "arguments": [ + { + "name": "length", + "nativeSrc": "41926:6:74", + "nodeType": "YulIdentifier", + "src": "41926:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "41904:21:74", + "nodeType": "YulIdentifier", + "src": "41904:21:74" + }, + "nativeSrc": "41904:29:74", + "nodeType": "YulFunctionCall", + "src": "41904:29:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "41896:4:74", + "nodeType": "YulIdentifier", + "src": "41896:4:74" + } + ] + }, + { + "nativeSrc": "41970:23:74", + "nodeType": "YulAssignment", + "src": "41970:23:74", + "value": { + "arguments": [ + { + "name": "size", + "nativeSrc": "41982:4:74", + "nodeType": "YulIdentifier", + "src": "41982:4:74" + }, + { + "kind": "number", + "nativeSrc": "41988:4:74", + "nodeType": "YulLiteral", + "src": "41988:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "41978:3:74", + "nodeType": "YulIdentifier", + "src": "41978:3:74" + }, + "nativeSrc": "41978:15:74", + "nodeType": "YulFunctionCall", + "src": "41978:15:74" + }, + "variableNames": [ + { + "name": "size", + "nativeSrc": "41970:4:74", + "nodeType": "YulIdentifier", + "src": "41970:4:74" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "41692:308:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nativeSrc": "41743:6:74", + "nodeType": "YulTypedName", + "src": "41743:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nativeSrc": "41754:4:74", + "nodeType": "YulTypedName", + "src": "41754:4:74", + "type": "" + } + ], + "src": "41692:308:74" + }, + { + "body": { + "nativeSrc": "42101:339:74", + "nodeType": "YulBlock", + "src": "42101:339:74", + "statements": [ + { + "nativeSrc": "42111:75:74", + "nodeType": "YulAssignment", + "src": "42111:75:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "42178:6:74", + "nodeType": "YulIdentifier", + "src": "42178:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nativeSrc": "42136:41:74", + "nodeType": "YulIdentifier", + "src": "42136:41:74" + }, + "nativeSrc": "42136:49:74", + "nodeType": "YulFunctionCall", + "src": "42136:49:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "42120:15:74", + "nodeType": "YulIdentifier", + "src": "42120:15:74" + }, + "nativeSrc": "42120:66:74", + "nodeType": "YulFunctionCall", + "src": "42120:66:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "42111:5:74", + "nodeType": "YulIdentifier", + "src": "42111:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "42202:5:74", + "nodeType": "YulIdentifier", + "src": "42202:5:74" + }, + { + "name": "length", + "nativeSrc": "42209:6:74", + "nodeType": "YulIdentifier", + "src": "42209:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "42195:6:74", + "nodeType": "YulIdentifier", + "src": "42195:6:74" + }, + "nativeSrc": "42195:21:74", + "nodeType": "YulFunctionCall", + "src": "42195:21:74" + }, + "nativeSrc": "42195:21:74", + "nodeType": "YulExpressionStatement", + "src": "42195:21:74" + }, + { + "nativeSrc": "42225:27:74", + "nodeType": "YulVariableDeclaration", + "src": "42225:27:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "42240:5:74", + "nodeType": "YulIdentifier", + "src": "42240:5:74" + }, + { + "kind": "number", + "nativeSrc": "42247:4:74", + "nodeType": "YulLiteral", + "src": "42247:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42236:3:74", + "nodeType": "YulIdentifier", + "src": "42236:3:74" + }, + "nativeSrc": "42236:16:74", + "nodeType": "YulFunctionCall", + "src": "42236:16:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "42229:3:74", + "nodeType": "YulTypedName", + "src": "42229:3:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "42290:83:74", + "nodeType": "YulBlock", + "src": "42290:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nativeSrc": "42292:77:74", + "nodeType": "YulIdentifier", + "src": "42292:77:74" + }, + "nativeSrc": "42292:79:74", + "nodeType": "YulFunctionCall", + "src": "42292:79:74" + }, + "nativeSrc": "42292:79:74", + "nodeType": "YulExpressionStatement", + "src": "42292:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nativeSrc": "42271:3:74", + "nodeType": "YulIdentifier", + "src": "42271:3:74" + }, + { + "name": "length", + "nativeSrc": "42276:6:74", + "nodeType": "YulIdentifier", + "src": "42276:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42267:3:74", + "nodeType": "YulIdentifier", + "src": "42267:3:74" + }, + "nativeSrc": "42267:16:74", + "nodeType": "YulFunctionCall", + "src": "42267:16:74" + }, + { + "name": "end", + "nativeSrc": "42285:3:74", + "nodeType": "YulIdentifier", + "src": "42285:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "42264:2:74", + "nodeType": "YulIdentifier", + "src": "42264:2:74" + }, + "nativeSrc": "42264:25:74", + "nodeType": "YulFunctionCall", + "src": "42264:25:74" + }, + "nativeSrc": "42261:112:74", + "nodeType": "YulIf", + "src": "42261:112:74" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nativeSrc": "42417:3:74", + "nodeType": "YulIdentifier", + "src": "42417:3:74" + }, + { + "name": "dst", + "nativeSrc": "42422:3:74", + "nodeType": "YulIdentifier", + "src": "42422:3:74" + }, + { + "name": "length", + "nativeSrc": "42427:6:74", + "nodeType": "YulIdentifier", + "src": "42427:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "42382:34:74", + "nodeType": "YulIdentifier", + "src": "42382:34:74" + }, + "nativeSrc": "42382:52:74", + "nodeType": "YulFunctionCall", + "src": "42382:52:74" + }, + "nativeSrc": "42382:52:74", + "nodeType": "YulExpressionStatement", + "src": "42382:52:74" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "42006:434:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nativeSrc": "42074:3:74", + "nodeType": "YulTypedName", + "src": "42074:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "42079:6:74", + "nodeType": "YulTypedName", + "src": "42079:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "42087:3:74", + "nodeType": "YulTypedName", + "src": "42087:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "42095:5:74", + "nodeType": "YulTypedName", + "src": "42095:5:74", + "type": "" + } + ], + "src": "42006:434:74" + }, + { + "body": { + "nativeSrc": "42533:282:74", + "nodeType": "YulBlock", + "src": "42533:282:74", + "statements": [ + { + "body": { + "nativeSrc": "42582:83:74", + "nodeType": "YulBlock", + "src": "42582:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "42584:77:74", + "nodeType": "YulIdentifier", + "src": "42584:77:74" + }, + "nativeSrc": "42584:79:74", + "nodeType": "YulFunctionCall", + "src": "42584:79:74" + }, + "nativeSrc": "42584:79:74", + "nodeType": "YulExpressionStatement", + "src": "42584:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "42561:6:74", + "nodeType": "YulIdentifier", + "src": "42561:6:74" + }, + { + "kind": "number", + "nativeSrc": "42569:4:74", + "nodeType": "YulLiteral", + "src": "42569:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42557:3:74", + "nodeType": "YulIdentifier", + "src": "42557:3:74" + }, + "nativeSrc": "42557:17:74", + "nodeType": "YulFunctionCall", + "src": "42557:17:74" + }, + { + "name": "end", + "nativeSrc": "42576:3:74", + "nodeType": "YulIdentifier", + "src": "42576:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "42553:3:74", + "nodeType": "YulIdentifier", + "src": "42553:3:74" + }, + "nativeSrc": "42553:27:74", + "nodeType": "YulFunctionCall", + "src": "42553:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "42546:6:74", + "nodeType": "YulIdentifier", + "src": "42546:6:74" + }, + "nativeSrc": "42546:35:74", + "nodeType": "YulFunctionCall", + "src": "42546:35:74" + }, + "nativeSrc": "42543:122:74", + "nodeType": "YulIf", + "src": "42543:122:74" + }, + { + "nativeSrc": "42674:27:74", + "nodeType": "YulVariableDeclaration", + "src": "42674:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "42694:6:74", + "nodeType": "YulIdentifier", + "src": "42694:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "42688:5:74", + "nodeType": "YulIdentifier", + "src": "42688:5:74" + }, + "nativeSrc": "42688:13:74", + "nodeType": "YulFunctionCall", + "src": "42688:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "42678:6:74", + "nodeType": "YulTypedName", + "src": "42678:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "42710:99:74", + "nodeType": "YulAssignment", + "src": "42710:99:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "42782:6:74", + "nodeType": "YulIdentifier", + "src": "42782:6:74" + }, + { + "kind": "number", + "nativeSrc": "42790:4:74", + "nodeType": "YulLiteral", + "src": "42790:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "42778:3:74", + "nodeType": "YulIdentifier", + "src": "42778:3:74" + }, + "nativeSrc": "42778:17:74", + "nodeType": "YulFunctionCall", + "src": "42778:17:74" + }, + { + "name": "length", + "nativeSrc": "42797:6:74", + "nodeType": "YulIdentifier", + "src": "42797:6:74" + }, + { + "name": "end", + "nativeSrc": "42805:3:74", + "nodeType": "YulIdentifier", + "src": "42805:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", + "nativeSrc": "42719:58:74", + "nodeType": "YulIdentifier", + "src": "42719:58:74" + }, + "nativeSrc": "42719:90:74", + "nodeType": "YulFunctionCall", + "src": "42719:90:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "42710:5:74", + "nodeType": "YulIdentifier", + "src": "42710:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "42460:355:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "42511:6:74", + "nodeType": "YulTypedName", + "src": "42511:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "42519:3:74", + "nodeType": "YulTypedName", + "src": "42519:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "42527:5:74", + "nodeType": "YulTypedName", + "src": "42527:5:74", + "type": "" + } + ], + "src": "42460:355:74" + }, + { + "body": { + "nativeSrc": "42960:837:74", + "nodeType": "YulBlock", + "src": "42960:837:74", + "statements": [ + { + "nativeSrc": "42970:100:74", + "nodeType": "YulAssignment", + "src": "42970:100:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nativeSrc": "43062:6:74", + "nodeType": "YulIdentifier", + "src": "43062:6:74" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "42995:66:74", + "nodeType": "YulIdentifier", + "src": "42995:66:74" + }, + "nativeSrc": "42995:74:74", + "nodeType": "YulFunctionCall", + "src": "42995:74:74" + } + ], + "functionName": { + "name": "allocate_memory", + "nativeSrc": "42979:15:74", + "nodeType": "YulIdentifier", + "src": "42979:15:74" + }, + "nativeSrc": "42979:91:74", + "nodeType": "YulFunctionCall", + "src": "42979:91:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "42970:5:74", + "nodeType": "YulIdentifier", + "src": "42970:5:74" + } + ] + }, + { + "nativeSrc": "43079:16:74", + "nodeType": "YulVariableDeclaration", + "src": "43079:16:74", + "value": { + "name": "array", + "nativeSrc": "43090:5:74", + "nodeType": "YulIdentifier", + "src": "43090:5:74" + }, + "variables": [ + { + "name": "dst", + "nativeSrc": "43083:3:74", + "nodeType": "YulTypedName", + "src": "43083:3:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nativeSrc": "43112:5:74", + "nodeType": "YulIdentifier", + "src": "43112:5:74" + }, + { + "name": "length", + "nativeSrc": "43119:6:74", + "nodeType": "YulIdentifier", + "src": "43119:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43105:6:74", + "nodeType": "YulIdentifier", + "src": "43105:6:74" + }, + "nativeSrc": "43105:21:74", + "nodeType": "YulFunctionCall", + "src": "43105:21:74" + }, + "nativeSrc": "43105:21:74", + "nodeType": "YulExpressionStatement", + "src": "43105:21:74" + }, + { + "nativeSrc": "43135:23:74", + "nodeType": "YulAssignment", + "src": "43135:23:74", + "value": { + "arguments": [ + { + "name": "array", + "nativeSrc": "43146:5:74", + "nodeType": "YulIdentifier", + "src": "43146:5:74" + }, + { + "kind": "number", + "nativeSrc": "43153:4:74", + "nodeType": "YulLiteral", + "src": "43153:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43142:3:74", + "nodeType": "YulIdentifier", + "src": "43142:3:74" + }, + "nativeSrc": "43142:16:74", + "nodeType": "YulFunctionCall", + "src": "43142:16:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "43135:3:74", + "nodeType": "YulIdentifier", + "src": "43135:3:74" + } + ] + }, + { + "nativeSrc": "43168:44:74", + "nodeType": "YulVariableDeclaration", + "src": "43168:44:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "43186:6:74", + "nodeType": "YulIdentifier", + "src": "43186:6:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "43198:6:74", + "nodeType": "YulIdentifier", + "src": "43198:6:74" + }, + { + "kind": "number", + "nativeSrc": "43206:4:74", + "nodeType": "YulLiteral", + "src": "43206:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "43194:3:74", + "nodeType": "YulIdentifier", + "src": "43194:3:74" + }, + "nativeSrc": "43194:17:74", + "nodeType": "YulFunctionCall", + "src": "43194:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43182:3:74", + "nodeType": "YulIdentifier", + "src": "43182:3:74" + }, + "nativeSrc": "43182:30:74", + "nodeType": "YulFunctionCall", + "src": "43182:30:74" + }, + "variables": [ + { + "name": "srcEnd", + "nativeSrc": "43172:6:74", + "nodeType": "YulTypedName", + "src": "43172:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "43240:103:74", + "nodeType": "YulBlock", + "src": "43240:103:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nativeSrc": "43254:77:74", + "nodeType": "YulIdentifier", + "src": "43254:77:74" + }, + "nativeSrc": "43254:79:74", + "nodeType": "YulFunctionCall", + "src": "43254:79:74" + }, + "nativeSrc": "43254:79:74", + "nodeType": "YulExpressionStatement", + "src": "43254:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nativeSrc": "43227:6:74", + "nodeType": "YulIdentifier", + "src": "43227:6:74" + }, + { + "name": "end", + "nativeSrc": "43235:3:74", + "nodeType": "YulIdentifier", + "src": "43235:3:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "43224:2:74", + "nodeType": "YulIdentifier", + "src": "43224:2:74" + }, + "nativeSrc": "43224:15:74", + "nodeType": "YulFunctionCall", + "src": "43224:15:74" + }, + "nativeSrc": "43221:122:74", + "nodeType": "YulIf", + "src": "43221:122:74" + }, + { + "body": { + "nativeSrc": "43428:363:74", + "nodeType": "YulBlock", + "src": "43428:363:74", + "statements": [ + { + "nativeSrc": "43443:29:74", + "nodeType": "YulVariableDeclaration", + "src": "43443:29:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "43468:3:74", + "nodeType": "YulIdentifier", + "src": "43468:3:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "43462:5:74", + "nodeType": "YulIdentifier", + "src": "43462:5:74" + }, + "nativeSrc": "43462:10:74", + "nodeType": "YulFunctionCall", + "src": "43462:10:74" + }, + "variables": [ + { + "name": "innerOffset", + "nativeSrc": "43447:11:74", + "nodeType": "YulTypedName", + "src": "43447:11:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "43524:83:74", + "nodeType": "YulBlock", + "src": "43524:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "43526:77:74", + "nodeType": "YulIdentifier", + "src": "43526:77:74" + }, + "nativeSrc": "43526:79:74", + "nodeType": "YulFunctionCall", + "src": "43526:79:74" + }, + "nativeSrc": "43526:79:74", + "nodeType": "YulExpressionStatement", + "src": "43526:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nativeSrc": "43491:11:74", + "nodeType": "YulIdentifier", + "src": "43491:11:74" + }, + { + "kind": "number", + "nativeSrc": "43504:18:74", + "nodeType": "YulLiteral", + "src": "43504:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "43488:2:74", + "nodeType": "YulIdentifier", + "src": "43488:2:74" + }, + "nativeSrc": "43488:35:74", + "nodeType": "YulFunctionCall", + "src": "43488:35:74" + }, + "nativeSrc": "43485:122:74", + "nodeType": "YulIf", + "src": "43485:122:74" + }, + { + "nativeSrc": "43620:42:74", + "nodeType": "YulVariableDeclaration", + "src": "43620:42:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "43642:6:74", + "nodeType": "YulIdentifier", + "src": "43642:6:74" + }, + { + "name": "innerOffset", + "nativeSrc": "43650:11:74", + "nodeType": "YulIdentifier", + "src": "43650:11:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43638:3:74", + "nodeType": "YulIdentifier", + "src": "43638:3:74" + }, + "nativeSrc": "43638:24:74", + "nodeType": "YulFunctionCall", + "src": "43638:24:74" + }, + "variables": [ + { + "name": "elementPos", + "nativeSrc": "43624:10:74", + "nodeType": "YulTypedName", + "src": "43624:10:74", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "43683:3:74", + "nodeType": "YulIdentifier", + "src": "43683:3:74" + }, + { + "arguments": [ + { + "name": "elementPos", + "nativeSrc": "43730:10:74", + "nodeType": "YulIdentifier", + "src": "43730:10:74" + }, + { + "name": "end", + "nativeSrc": "43742:3:74", + "nodeType": "YulIdentifier", + "src": "43742:3:74" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr_fromMemory", + "nativeSrc": "43688:41:74", + "nodeType": "YulIdentifier", + "src": "43688:41:74" + }, + "nativeSrc": "43688:58:74", + "nodeType": "YulFunctionCall", + "src": "43688:58:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "43676:6:74", + "nodeType": "YulIdentifier", + "src": "43676:6:74" + }, + "nativeSrc": "43676:71:74", + "nodeType": "YulFunctionCall", + "src": "43676:71:74" + }, + "nativeSrc": "43676:71:74", + "nodeType": "YulExpressionStatement", + "src": "43676:71:74" + }, + { + "nativeSrc": "43760:21:74", + "nodeType": "YulAssignment", + "src": "43760:21:74", + "value": { + "arguments": [ + { + "name": "dst", + "nativeSrc": "43771:3:74", + "nodeType": "YulIdentifier", + "src": "43771:3:74" + }, + { + "kind": "number", + "nativeSrc": "43776:4:74", + "nodeType": "YulLiteral", + "src": "43776:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43767:3:74", + "nodeType": "YulIdentifier", + "src": "43767:3:74" + }, + "nativeSrc": "43767:14:74", + "nodeType": "YulFunctionCall", + "src": "43767:14:74" + }, + "variableNames": [ + { + "name": "dst", + "nativeSrc": "43760:3:74", + "nodeType": "YulIdentifier", + "src": "43760:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nativeSrc": "43381:3:74", + "nodeType": "YulIdentifier", + "src": "43381:3:74" + }, + { + "name": "srcEnd", + "nativeSrc": "43386:6:74", + "nodeType": "YulIdentifier", + "src": "43386:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "43378:2:74", + "nodeType": "YulIdentifier", + "src": "43378:2:74" + }, + "nativeSrc": "43378:15:74", + "nodeType": "YulFunctionCall", + "src": "43378:15:74" + }, + "nativeSrc": "43352:439:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "43394:25:74", + "nodeType": "YulBlock", + "src": "43394:25:74", + "statements": [ + { + "nativeSrc": "43396:21:74", + "nodeType": "YulAssignment", + "src": "43396:21:74", + "value": { + "arguments": [ + { + "name": "src", + "nativeSrc": "43407:3:74", + "nodeType": "YulIdentifier", + "src": "43407:3:74" + }, + { + "kind": "number", + "nativeSrc": "43412:4:74", + "nodeType": "YulLiteral", + "src": "43412:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43403:3:74", + "nodeType": "YulIdentifier", + "src": "43403:3:74" + }, + "nativeSrc": "43403:14:74", + "nodeType": "YulFunctionCall", + "src": "43403:14:74" + }, + "variableNames": [ + { + "name": "src", + "nativeSrc": "43396:3:74", + "nodeType": "YulIdentifier", + "src": "43396:3:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "43356:21:74", + "nodeType": "YulBlock", + "src": "43356:21:74", + "statements": [ + { + "nativeSrc": "43358:17:74", + "nodeType": "YulVariableDeclaration", + "src": "43358:17:74", + "value": { + "name": "offset", + "nativeSrc": "43369:6:74", + "nodeType": "YulIdentifier", + "src": "43369:6:74" + }, + "variables": [ + { + "name": "src", + "nativeSrc": "43362:3:74", + "nodeType": "YulTypedName", + "src": "43362:3:74", + "type": "" + } + ] + } + ] + }, + "src": "43352:439:74" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "42837:960:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "42930:6:74", + "nodeType": "YulTypedName", + "src": "42930:6:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "42938:6:74", + "nodeType": "YulTypedName", + "src": "42938:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "42946:3:74", + "nodeType": "YulTypedName", + "src": "42946:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "42954:5:74", + "nodeType": "YulTypedName", + "src": "42954:5:74", + "type": "" + } + ], + "src": "42837:960:74" + }, + { + "body": { + "nativeSrc": "43917:307:74", + "nodeType": "YulBlock", + "src": "43917:307:74", + "statements": [ + { + "body": { + "nativeSrc": "43966:83:74", + "nodeType": "YulBlock", + "src": "43966:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nativeSrc": "43968:77:74", + "nodeType": "YulIdentifier", + "src": "43968:77:74" + }, + "nativeSrc": "43968:79:74", + "nodeType": "YulFunctionCall", + "src": "43968:79:74" + }, + "nativeSrc": "43968:79:74", + "nodeType": "YulExpressionStatement", + "src": "43968:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "43945:6:74", + "nodeType": "YulIdentifier", + "src": "43945:6:74" + }, + { + "kind": "number", + "nativeSrc": "43953:4:74", + "nodeType": "YulLiteral", + "src": "43953:4:74", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "43941:3:74", + "nodeType": "YulIdentifier", + "src": "43941:3:74" + }, + "nativeSrc": "43941:17:74", + "nodeType": "YulFunctionCall", + "src": "43941:17:74" + }, + { + "name": "end", + "nativeSrc": "43960:3:74", + "nodeType": "YulIdentifier", + "src": "43960:3:74" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "43937:3:74", + "nodeType": "YulIdentifier", + "src": "43937:3:74" + }, + "nativeSrc": "43937:27:74", + "nodeType": "YulFunctionCall", + "src": "43937:27:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "43930:6:74", + "nodeType": "YulIdentifier", + "src": "43930:6:74" + }, + "nativeSrc": "43930:35:74", + "nodeType": "YulFunctionCall", + "src": "43930:35:74" + }, + "nativeSrc": "43927:122:74", + "nodeType": "YulIf", + "src": "43927:122:74" + }, + { + "nativeSrc": "44058:27:74", + "nodeType": "YulVariableDeclaration", + "src": "44058:27:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44078:6:74", + "nodeType": "YulIdentifier", + "src": "44078:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "44072:5:74", + "nodeType": "YulIdentifier", + "src": "44072:5:74" + }, + "nativeSrc": "44072:13:74", + "nodeType": "YulFunctionCall", + "src": "44072:13:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "44062:6:74", + "nodeType": "YulTypedName", + "src": "44062:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "44094:124:74", + "nodeType": "YulAssignment", + "src": "44094:124:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44191:6:74", + "nodeType": "YulIdentifier", + "src": "44191:6:74" + }, + { + "kind": "number", + "nativeSrc": "44199:4:74", + "nodeType": "YulLiteral", + "src": "44199:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44187:3:74", + "nodeType": "YulIdentifier", + "src": "44187:3:74" + }, + "nativeSrc": "44187:17:74", + "nodeType": "YulFunctionCall", + "src": "44187:17:74" + }, + { + "name": "length", + "nativeSrc": "44206:6:74", + "nodeType": "YulIdentifier", + "src": "44206:6:74" + }, + { + "name": "end", + "nativeSrc": "44214:3:74", + "nodeType": "YulIdentifier", + "src": "44214:3:74" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "44103:83:74", + "nodeType": "YulIdentifier", + "src": "44103:83:74" + }, + "nativeSrc": "44103:115:74", + "nodeType": "YulFunctionCall", + "src": "44103:115:74" + }, + "variableNames": [ + { + "name": "array", + "nativeSrc": "44094:5:74", + "nodeType": "YulIdentifier", + "src": "44094:5:74" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "43819:405:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "43895:6:74", + "nodeType": "YulTypedName", + "src": "43895:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "43903:3:74", + "nodeType": "YulTypedName", + "src": "43903:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nativeSrc": "43911:5:74", + "nodeType": "YulTypedName", + "src": "43911:5:74", + "type": "" + } + ], + "src": "43819:405:74" + }, + { + "body": { + "nativeSrc": "44342:462:74", + "nodeType": "YulBlock", + "src": "44342:462:74", + "statements": [ + { + "body": { + "nativeSrc": "44388:83:74", + "nodeType": "YulBlock", + "src": "44388:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "44390:77:74", + "nodeType": "YulIdentifier", + "src": "44390:77:74" + }, + "nativeSrc": "44390:79:74", + "nodeType": "YulFunctionCall", + "src": "44390:79:74" + }, + "nativeSrc": "44390:79:74", + "nodeType": "YulExpressionStatement", + "src": "44390:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "44363:7:74", + "nodeType": "YulIdentifier", + "src": "44363:7:74" + }, + { + "name": "headStart", + "nativeSrc": "44372:9:74", + "nodeType": "YulIdentifier", + "src": "44372:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "44359:3:74", + "nodeType": "YulIdentifier", + "src": "44359:3:74" + }, + "nativeSrc": "44359:23:74", + "nodeType": "YulFunctionCall", + "src": "44359:23:74" + }, + { + "kind": "number", + "nativeSrc": "44384:2:74", + "nodeType": "YulLiteral", + "src": "44384:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "44355:3:74", + "nodeType": "YulIdentifier", + "src": "44355:3:74" + }, + "nativeSrc": "44355:32:74", + "nodeType": "YulFunctionCall", + "src": "44355:32:74" + }, + "nativeSrc": "44352:119:74", + "nodeType": "YulIf", + "src": "44352:119:74" + }, + { + "nativeSrc": "44481:316:74", + "nodeType": "YulBlock", + "src": "44481:316:74", + "statements": [ + { + "nativeSrc": "44496:38:74", + "nodeType": "YulVariableDeclaration", + "src": "44496:38:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44520:9:74", + "nodeType": "YulIdentifier", + "src": "44520:9:74" + }, + { + "kind": "number", + "nativeSrc": "44531:1:74", + "nodeType": "YulLiteral", + "src": "44531:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44516:3:74", + "nodeType": "YulIdentifier", + "src": "44516:3:74" + }, + "nativeSrc": "44516:17:74", + "nodeType": "YulFunctionCall", + "src": "44516:17:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "44510:5:74", + "nodeType": "YulIdentifier", + "src": "44510:5:74" + }, + "nativeSrc": "44510:24:74", + "nodeType": "YulFunctionCall", + "src": "44510:24:74" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "44500:6:74", + "nodeType": "YulTypedName", + "src": "44500:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "44581:83:74", + "nodeType": "YulBlock", + "src": "44581:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "44583:77:74", + "nodeType": "YulIdentifier", + "src": "44583:77:74" + }, + "nativeSrc": "44583:79:74", + "nodeType": "YulFunctionCall", + "src": "44583:79:74" + }, + "nativeSrc": "44583:79:74", + "nodeType": "YulExpressionStatement", + "src": "44583:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "44553:6:74", + "nodeType": "YulIdentifier", + "src": "44553:6:74" + }, + { + "kind": "number", + "nativeSrc": "44561:18:74", + "nodeType": "YulLiteral", + "src": "44561:18:74", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "44550:2:74", + "nodeType": "YulIdentifier", + "src": "44550:2:74" + }, + "nativeSrc": "44550:30:74", + "nodeType": "YulFunctionCall", + "src": "44550:30:74" + }, + "nativeSrc": "44547:117:74", + "nodeType": "YulIf", + "src": "44547:117:74" + }, + { + "nativeSrc": "44678:109:74", + "nodeType": "YulAssignment", + "src": "44678:109:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "44759:9:74", + "nodeType": "YulIdentifier", + "src": "44759:9:74" + }, + { + "name": "offset", + "nativeSrc": "44770:6:74", + "nodeType": "YulIdentifier", + "src": "44770:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "44755:3:74", + "nodeType": "YulIdentifier", + "src": "44755:3:74" + }, + "nativeSrc": "44755:22:74", + "nodeType": "YulFunctionCall", + "src": "44755:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "44779:7:74", + "nodeType": "YulIdentifier", + "src": "44779:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "44688:66:74", + "nodeType": "YulIdentifier", + "src": "44688:66:74" + }, + "nativeSrc": "44688:99:74", + "nodeType": "YulFunctionCall", + "src": "44688:99:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "44678:6:74", + "nodeType": "YulIdentifier", + "src": "44678:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory", + "nativeSrc": "44230:574:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "44312:9:74", + "nodeType": "YulTypedName", + "src": "44312:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "44323:7:74", + "nodeType": "YulTypedName", + "src": "44323:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "44335:6:74", + "nodeType": "YulTypedName", + "src": "44335:6:74", + "type": "" + } + ], + "src": "44230:574:74" + }, + { + "body": { + "nativeSrc": "45082:508:74", + "nodeType": "YulBlock", + "src": "45082:508:74", + "statements": [ + { + "nativeSrc": "45092:26:74", + "nodeType": "YulAssignment", + "src": "45092:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45104:9:74", + "nodeType": "YulIdentifier", + "src": "45104:9:74" + }, + { + "kind": "number", + "nativeSrc": "45115:2:74", + "nodeType": "YulLiteral", + "src": "45115:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45100:3:74", + "nodeType": "YulIdentifier", + "src": "45100:3:74" + }, + "nativeSrc": "45100:18:74", + "nodeType": "YulFunctionCall", + "src": "45100:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45092:4:74", + "nodeType": "YulIdentifier", + "src": "45092:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "45172:6:74", + "nodeType": "YulIdentifier", + "src": "45172:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45185:9:74", + "nodeType": "YulIdentifier", + "src": "45185:9:74" + }, + { + "kind": "number", + "nativeSrc": "45196:1:74", + "nodeType": "YulLiteral", + "src": "45196:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45181:3:74", + "nodeType": "YulIdentifier", + "src": "45181:3:74" + }, + "nativeSrc": "45181:17:74", + "nodeType": "YulFunctionCall", + "src": "45181:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "45128:43:74", + "nodeType": "YulIdentifier", + "src": "45128:43:74" + }, + "nativeSrc": "45128:71:74", + "nodeType": "YulFunctionCall", + "src": "45128:71:74" + }, + "nativeSrc": "45128:71:74", + "nodeType": "YulExpressionStatement", + "src": "45128:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45220:9:74", + "nodeType": "YulIdentifier", + "src": "45220:9:74" + }, + { + "kind": "number", + "nativeSrc": "45231:2:74", + "nodeType": "YulLiteral", + "src": "45231:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45216:3:74", + "nodeType": "YulIdentifier", + "src": "45216:3:74" + }, + "nativeSrc": "45216:18:74", + "nodeType": "YulFunctionCall", + "src": "45216:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "45240:4:74", + "nodeType": "YulIdentifier", + "src": "45240:4:74" + }, + { + "name": "headStart", + "nativeSrc": "45246:9:74", + "nodeType": "YulIdentifier", + "src": "45246:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "45236:3:74", + "nodeType": "YulIdentifier", + "src": "45236:3:74" + }, + "nativeSrc": "45236:20:74", + "nodeType": "YulFunctionCall", + "src": "45236:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45209:6:74", + "nodeType": "YulIdentifier", + "src": "45209:6:74" + }, + "nativeSrc": "45209:48:74", + "nodeType": "YulFunctionCall", + "src": "45209:48:74" + }, + "nativeSrc": "45209:48:74", + "nodeType": "YulExpressionStatement", + "src": "45209:48:74" + }, + { + "nativeSrc": "45266:116:74", + "nodeType": "YulAssignment", + "src": "45266:116:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "45368:6:74", + "nodeType": "YulIdentifier", + "src": "45368:6:74" + }, + { + "name": "tail", + "nativeSrc": "45377:4:74", + "nodeType": "YulIdentifier", + "src": "45377:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "45274:93:74", + "nodeType": "YulIdentifier", + "src": "45274:93:74" + }, + "nativeSrc": "45274:108:74", + "nodeType": "YulFunctionCall", + "src": "45274:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45266:4:74", + "nodeType": "YulIdentifier", + "src": "45266:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "45403:9:74", + "nodeType": "YulIdentifier", + "src": "45403:9:74" + }, + { + "kind": "number", + "nativeSrc": "45414:2:74", + "nodeType": "YulLiteral", + "src": "45414:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "45399:3:74", + "nodeType": "YulIdentifier", + "src": "45399:3:74" + }, + "nativeSrc": "45399:18:74", + "nodeType": "YulFunctionCall", + "src": "45399:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "45423:4:74", + "nodeType": "YulIdentifier", + "src": "45423:4:74" + }, + { + "name": "headStart", + "nativeSrc": "45429:9:74", + "nodeType": "YulIdentifier", + "src": "45429:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "45419:3:74", + "nodeType": "YulIdentifier", + "src": "45419:3:74" + }, + "nativeSrc": "45419:20:74", + "nodeType": "YulFunctionCall", + "src": "45419:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45392:6:74", + "nodeType": "YulIdentifier", + "src": "45392:6:74" + }, + "nativeSrc": "45392:48:74", + "nodeType": "YulFunctionCall", + "src": "45392:48:74" + }, + "nativeSrc": "45392:48:74", + "nodeType": "YulExpressionStatement", + "src": "45392:48:74" + }, + { + "nativeSrc": "45449:134:74", + "nodeType": "YulAssignment", + "src": "45449:134:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "45569:6:74", + "nodeType": "YulIdentifier", + "src": "45569:6:74" + }, + { + "name": "tail", + "nativeSrc": "45578:4:74", + "nodeType": "YulIdentifier", + "src": "45578:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "45457:111:74", + "nodeType": "YulIdentifier", + "src": "45457:111:74" + }, + "nativeSrc": "45457:126:74", + "nodeType": "YulFunctionCall", + "src": "45457:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "45449:4:74", + "nodeType": "YulIdentifier", + "src": "45449:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nativeSrc": "44810:780:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "45038:9:74", + "nodeType": "YulTypedName", + "src": "45038:9:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "45050:6:74", + "nodeType": "YulTypedName", + "src": "45050:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "45058:6:74", + "nodeType": "YulTypedName", + "src": "45058:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "45066:6:74", + "nodeType": "YulTypedName", + "src": "45066:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "45077:4:74", + "nodeType": "YulTypedName", + "src": "45077:4:74", + "type": "" + } + ], + "src": "44810:780:74" + }, + { + "body": { + "nativeSrc": "45659:52:74", + "nodeType": "YulBlock", + "src": "45659:52:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "45676:3:74", + "nodeType": "YulIdentifier", + "src": "45676:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "45698:5:74", + "nodeType": "YulIdentifier", + "src": "45698:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes4", + "nativeSrc": "45681:16:74", + "nodeType": "YulIdentifier", + "src": "45681:16:74" + }, + "nativeSrc": "45681:23:74", + "nodeType": "YulFunctionCall", + "src": "45681:23:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "45669:6:74", + "nodeType": "YulIdentifier", + "src": "45669:6:74" + }, + "nativeSrc": "45669:36:74", + "nodeType": "YulFunctionCall", + "src": "45669:36:74" + }, + "nativeSrc": "45669:36:74", + "nodeType": "YulExpressionStatement", + "src": "45669:36:74" + } + ] + }, + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "45596:115:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "45647:5:74", + "nodeType": "YulTypedName", + "src": "45647:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "45654:3:74", + "nodeType": "YulTypedName", + "src": "45654:3:74", + "type": "" + } + ], + "src": "45596:115:74" + }, + { + "body": { + "nativeSrc": "46109:844:74", + "nodeType": "YulBlock", + "src": "46109:844:74", + "statements": [ + { + "nativeSrc": "46119:27:74", + "nodeType": "YulAssignment", + "src": "46119:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46131:9:74", + "nodeType": "YulIdentifier", + "src": "46131:9:74" + }, + { + "kind": "number", + "nativeSrc": "46142:3:74", + "nodeType": "YulLiteral", + "src": "46142:3:74", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46127:3:74", + "nodeType": "YulIdentifier", + "src": "46127:3:74" + }, + "nativeSrc": "46127:19:74", + "nodeType": "YulFunctionCall", + "src": "46127:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "46119:4:74", + "nodeType": "YulIdentifier", + "src": "46119:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "46220:6:74", + "nodeType": "YulIdentifier", + "src": "46220:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46233:9:74", + "nodeType": "YulIdentifier", + "src": "46233:9:74" + }, + { + "kind": "number", + "nativeSrc": "46244:1:74", + "nodeType": "YulLiteral", + "src": "46244:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46229:3:74", + "nodeType": "YulIdentifier", + "src": "46229:3:74" + }, + "nativeSrc": "46229:17:74", + "nodeType": "YulFunctionCall", + "src": "46229:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack", + "nativeSrc": "46156:63:74", + "nodeType": "YulIdentifier", + "src": "46156:63:74" + }, + "nativeSrc": "46156:91:74", + "nodeType": "YulFunctionCall", + "src": "46156:91:74" + }, + "nativeSrc": "46156:91:74", + "nodeType": "YulExpressionStatement", + "src": "46156:91:74" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "46301:6:74", + "nodeType": "YulIdentifier", + "src": "46301:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46314:9:74", + "nodeType": "YulIdentifier", + "src": "46314:9:74" + }, + { + "kind": "number", + "nativeSrc": "46325:2:74", + "nodeType": "YulLiteral", + "src": "46325:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46310:3:74", + "nodeType": "YulIdentifier", + "src": "46310:3:74" + }, + "nativeSrc": "46310:18:74", + "nodeType": "YulFunctionCall", + "src": "46310:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "46257:43:74", + "nodeType": "YulIdentifier", + "src": "46257:43:74" + }, + "nativeSrc": "46257:72:74", + "nodeType": "YulFunctionCall", + "src": "46257:72:74" + }, + "nativeSrc": "46257:72:74", + "nodeType": "YulExpressionStatement", + "src": "46257:72:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46350:9:74", + "nodeType": "YulIdentifier", + "src": "46350:9:74" + }, + { + "kind": "number", + "nativeSrc": "46361:2:74", + "nodeType": "YulLiteral", + "src": "46361:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46346:3:74", + "nodeType": "YulIdentifier", + "src": "46346:3:74" + }, + "nativeSrc": "46346:18:74", + "nodeType": "YulFunctionCall", + "src": "46346:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "46370:4:74", + "nodeType": "YulIdentifier", + "src": "46370:4:74" + }, + { + "name": "headStart", + "nativeSrc": "46376:9:74", + "nodeType": "YulIdentifier", + "src": "46376:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46366:3:74", + "nodeType": "YulIdentifier", + "src": "46366:3:74" + }, + "nativeSrc": "46366:20:74", + "nodeType": "YulFunctionCall", + "src": "46366:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "46339:6:74", + "nodeType": "YulIdentifier", + "src": "46339:6:74" + }, + "nativeSrc": "46339:48:74", + "nodeType": "YulFunctionCall", + "src": "46339:48:74" + }, + "nativeSrc": "46339:48:74", + "nodeType": "YulExpressionStatement", + "src": "46339:48:74" + }, + { + "nativeSrc": "46396:116:74", + "nodeType": "YulAssignment", + "src": "46396:116:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "46498:6:74", + "nodeType": "YulIdentifier", + "src": "46498:6:74" + }, + { + "name": "tail", + "nativeSrc": "46507:4:74", + "nodeType": "YulIdentifier", + "src": "46507:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack", + "nativeSrc": "46404:93:74", + "nodeType": "YulIdentifier", + "src": "46404:93:74" + }, + "nativeSrc": "46404:108:74", + "nodeType": "YulFunctionCall", + "src": "46404:108:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "46396:4:74", + "nodeType": "YulIdentifier", + "src": "46396:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46533:9:74", + "nodeType": "YulIdentifier", + "src": "46533:9:74" + }, + { + "kind": "number", + "nativeSrc": "46544:2:74", + "nodeType": "YulLiteral", + "src": "46544:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46529:3:74", + "nodeType": "YulIdentifier", + "src": "46529:3:74" + }, + "nativeSrc": "46529:18:74", + "nodeType": "YulFunctionCall", + "src": "46529:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "46553:4:74", + "nodeType": "YulIdentifier", + "src": "46553:4:74" + }, + { + "name": "headStart", + "nativeSrc": "46559:9:74", + "nodeType": "YulIdentifier", + "src": "46559:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46549:3:74", + "nodeType": "YulIdentifier", + "src": "46549:3:74" + }, + "nativeSrc": "46549:20:74", + "nodeType": "YulFunctionCall", + "src": "46549:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "46522:6:74", + "nodeType": "YulIdentifier", + "src": "46522:6:74" + }, + "nativeSrc": "46522:48:74", + "nodeType": "YulFunctionCall", + "src": "46522:48:74" + }, + "nativeSrc": "46522:48:74", + "nodeType": "YulExpressionStatement", + "src": "46522:48:74" + }, + { + "nativeSrc": "46579:134:74", + "nodeType": "YulAssignment", + "src": "46579:134:74", + "value": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "46699:6:74", + "nodeType": "YulIdentifier", + "src": "46699:6:74" + }, + { + "name": "tail", + "nativeSrc": "46708:4:74", + "nodeType": "YulIdentifier", + "src": "46708:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "46587:111:74", + "nodeType": "YulIdentifier", + "src": "46587:111:74" + }, + "nativeSrc": "46587:126:74", + "nodeType": "YulFunctionCall", + "src": "46587:126:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "46579:4:74", + "nodeType": "YulIdentifier", + "src": "46579:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "46765:6:74", + "nodeType": "YulIdentifier", + "src": "46765:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46778:9:74", + "nodeType": "YulIdentifier", + "src": "46778:9:74" + }, + { + "kind": "number", + "nativeSrc": "46789:3:74", + "nodeType": "YulLiteral", + "src": "46789:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46774:3:74", + "nodeType": "YulIdentifier", + "src": "46774:3:74" + }, + "nativeSrc": "46774:19:74", + "nodeType": "YulFunctionCall", + "src": "46774:19:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "46723:41:74", + "nodeType": "YulIdentifier", + "src": "46723:41:74" + }, + "nativeSrc": "46723:71:74", + "nodeType": "YulFunctionCall", + "src": "46723:71:74" + }, + "nativeSrc": "46723:71:74", + "nodeType": "YulExpressionStatement", + "src": "46723:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "46815:9:74", + "nodeType": "YulIdentifier", + "src": "46815:9:74" + }, + { + "kind": "number", + "nativeSrc": "46826:3:74", + "nodeType": "YulLiteral", + "src": "46826:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "46811:3:74", + "nodeType": "YulIdentifier", + "src": "46811:3:74" + }, + "nativeSrc": "46811:19:74", + "nodeType": "YulFunctionCall", + "src": "46811:19:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "46836:4:74", + "nodeType": "YulIdentifier", + "src": "46836:4:74" + }, + { + "name": "headStart", + "nativeSrc": "46842:9:74", + "nodeType": "YulIdentifier", + "src": "46842:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "46832:3:74", + "nodeType": "YulIdentifier", + "src": "46832:3:74" + }, + "nativeSrc": "46832:20:74", + "nodeType": "YulFunctionCall", + "src": "46832:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "46804:6:74", + "nodeType": "YulIdentifier", + "src": "46804:6:74" + }, + "nativeSrc": "46804:49:74", + "nodeType": "YulFunctionCall", + "src": "46804:49:74" + }, + "nativeSrc": "46804:49:74", + "nodeType": "YulExpressionStatement", + "src": "46804:49:74" + }, + { + "nativeSrc": "46862:84:74", + "nodeType": "YulAssignment", + "src": "46862:84:74", + "value": { + "arguments": [ + { + "name": "value5", + "nativeSrc": "46932:6:74", + "nodeType": "YulIdentifier", + "src": "46932:6:74" + }, + { + "name": "tail", + "nativeSrc": "46941:4:74", + "nodeType": "YulIdentifier", + "src": "46941:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "46870:61:74", + "nodeType": "YulIdentifier", + "src": "46870:61:74" + }, + "nativeSrc": "46870:76:74", + "nodeType": "YulFunctionCall", + "src": "46870:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "46862:4:74", + "nodeType": "YulIdentifier", + "src": "46862:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IEVMVerifier_$798_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "45717:1236:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "46041:9:74", + "nodeType": "YulTypedName", + "src": "46041:9:74", + "type": "" + }, + { + "name": "value5", + "nativeSrc": "46053:6:74", + "nodeType": "YulTypedName", + "src": "46053:6:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "46061:6:74", + "nodeType": "YulTypedName", + "src": "46061:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "46069:6:74", + "nodeType": "YulTypedName", + "src": "46069:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "46077:6:74", + "nodeType": "YulTypedName", + "src": "46077:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "46085:6:74", + "nodeType": "YulTypedName", + "src": "46085:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "46093:6:74", + "nodeType": "YulTypedName", + "src": "46093:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "46104:4:74", + "nodeType": "YulTypedName", + "src": "46104:4:74", + "type": "" + } + ], + "src": "45717:1236:74" + }, + { + "body": { + "nativeSrc": "47043:40:74", + "nodeType": "YulBlock", + "src": "47043:40:74", + "statements": [ + { + "nativeSrc": "47054:22:74", + "nodeType": "YulAssignment", + "src": "47054:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "47070:5:74", + "nodeType": "YulIdentifier", + "src": "47070:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "47064:5:74", + "nodeType": "YulIdentifier", + "src": "47064:5:74" + }, + "nativeSrc": "47064:12:74", + "nodeType": "YulFunctionCall", + "src": "47064:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "47054:6:74", + "nodeType": "YulIdentifier", + "src": "47054:6:74" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "46959:124:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "47026:5:74", + "nodeType": "YulTypedName", + "src": "47026:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "47036:6:74", + "nodeType": "YulTypedName", + "src": "47036:6:74", + "type": "" + } + ], + "src": "46959:124:74" + }, + { + "body": { + "nativeSrc": "47210:73:74", + "nodeType": "YulBlock", + "src": "47210:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47227:3:74", + "nodeType": "YulIdentifier", + "src": "47227:3:74" + }, + { + "name": "length", + "nativeSrc": "47232:6:74", + "nodeType": "YulIdentifier", + "src": "47232:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "47220:6:74", + "nodeType": "YulIdentifier", + "src": "47220:6:74" + }, + "nativeSrc": "47220:19:74", + "nodeType": "YulFunctionCall", + "src": "47220:19:74" + }, + "nativeSrc": "47220:19:74", + "nodeType": "YulExpressionStatement", + "src": "47220:19:74" + }, + { + "nativeSrc": "47248:29:74", + "nodeType": "YulAssignment", + "src": "47248:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47267:3:74", + "nodeType": "YulIdentifier", + "src": "47267:3:74" + }, + { + "kind": "number", + "nativeSrc": "47272:4:74", + "nodeType": "YulLiteral", + "src": "47272:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47263:3:74", + "nodeType": "YulIdentifier", + "src": "47263:3:74" + }, + "nativeSrc": "47263:14:74", + "nodeType": "YulFunctionCall", + "src": "47263:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "47248:11:74", + "nodeType": "YulIdentifier", + "src": "47248:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "47089:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "47182:3:74", + "nodeType": "YulTypedName", + "src": "47182:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "47187:6:74", + "nodeType": "YulTypedName", + "src": "47187:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "47198:11:74", + "nodeType": "YulTypedName", + "src": "47198:11:74", + "type": "" + } + ], + "src": "47089:194:74" + }, + { + "body": { + "nativeSrc": "47371:60:74", + "nodeType": "YulBlock", + "src": "47371:60:74", + "statements": [ + { + "nativeSrc": "47381:11:74", + "nodeType": "YulAssignment", + "src": "47381:11:74", + "value": { + "name": "ptr", + "nativeSrc": "47389:3:74", + "nodeType": "YulIdentifier", + "src": "47389:3:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "47381:4:74", + "nodeType": "YulIdentifier", + "src": "47381:4:74" + } + ] + }, + { + "nativeSrc": "47402:22:74", + "nodeType": "YulAssignment", + "src": "47402:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "47414:3:74", + "nodeType": "YulIdentifier", + "src": "47414:3:74" + }, + { + "kind": "number", + "nativeSrc": "47419:4:74", + "nodeType": "YulLiteral", + "src": "47419:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47410:3:74", + "nodeType": "YulIdentifier", + "src": "47410:3:74" + }, + "nativeSrc": "47410:14:74", + "nodeType": "YulFunctionCall", + "src": "47410:14:74" + }, + "variableNames": [ + { + "name": "data", + "nativeSrc": "47402:4:74", + "nodeType": "YulIdentifier", + "src": "47402:4:74" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "47289:142:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "47358:3:74", + "nodeType": "YulTypedName", + "src": "47358:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nativeSrc": "47366:4:74", + "nodeType": "YulTypedName", + "src": "47366:4:74", + "type": "" + } + ], + "src": "47289:142:74" + }, + { + "body": { + "nativeSrc": "47496:40:74", + "nodeType": "YulBlock", + "src": "47496:40:74", + "statements": [ + { + "nativeSrc": "47507:22:74", + "nodeType": "YulAssignment", + "src": "47507:22:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "47523:5:74", + "nodeType": "YulIdentifier", + "src": "47523:5:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "47517:5:74", + "nodeType": "YulIdentifier", + "src": "47517:5:74" + }, + "nativeSrc": "47517:12:74", + "nodeType": "YulFunctionCall", + "src": "47517:12:74" + }, + "variableNames": [ + { + "name": "length", + "nativeSrc": "47507:6:74", + "nodeType": "YulIdentifier", + "src": "47507:6:74" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "47437:99:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "47479:5:74", + "nodeType": "YulTypedName", + "src": "47479:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nativeSrc": "47489:6:74", + "nodeType": "YulTypedName", + "src": "47489:6:74", + "type": "" + } + ], + "src": "47437:99:74" + }, + { + "body": { + "nativeSrc": "47628:73:74", + "nodeType": "YulBlock", + "src": "47628:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47645:3:74", + "nodeType": "YulIdentifier", + "src": "47645:3:74" + }, + { + "name": "length", + "nativeSrc": "47650:6:74", + "nodeType": "YulIdentifier", + "src": "47650:6:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "47638:6:74", + "nodeType": "YulIdentifier", + "src": "47638:6:74" + }, + "nativeSrc": "47638:19:74", + "nodeType": "YulFunctionCall", + "src": "47638:19:74" + }, + "nativeSrc": "47638:19:74", + "nodeType": "YulExpressionStatement", + "src": "47638:19:74" + }, + { + "nativeSrc": "47666:29:74", + "nodeType": "YulAssignment", + "src": "47666:29:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47685:3:74", + "nodeType": "YulIdentifier", + "src": "47685:3:74" + }, + { + "kind": "number", + "nativeSrc": "47690:4:74", + "nodeType": "YulLiteral", + "src": "47690:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47681:3:74", + "nodeType": "YulIdentifier", + "src": "47681:3:74" + }, + "nativeSrc": "47681:14:74", + "nodeType": "YulFunctionCall", + "src": "47681:14:74" + }, + "variableNames": [ + { + "name": "updated_pos", + "nativeSrc": "47666:11:74", + "nodeType": "YulIdentifier", + "src": "47666:11:74" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nativeSrc": "47542:159:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "47600:3:74", + "nodeType": "YulTypedName", + "src": "47600:3:74", + "type": "" + }, + { + "name": "length", + "nativeSrc": "47605:6:74", + "nodeType": "YulTypedName", + "src": "47605:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nativeSrc": "47616:11:74", + "nodeType": "YulTypedName", + "src": "47616:11:74", + "type": "" + } + ], + "src": "47542:159:74" + }, + { + "body": { + "nativeSrc": "47789:275:74", + "nodeType": "YulBlock", + "src": "47789:275:74", + "statements": [ + { + "nativeSrc": "47799:53:74", + "nodeType": "YulVariableDeclaration", + "src": "47799:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "47846:5:74", + "nodeType": "YulIdentifier", + "src": "47846:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "47813:32:74", + "nodeType": "YulIdentifier", + "src": "47813:32:74" + }, + "nativeSrc": "47813:39:74", + "nodeType": "YulFunctionCall", + "src": "47813:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "47803:6:74", + "nodeType": "YulTypedName", + "src": "47803:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "47861:68:74", + "nodeType": "YulAssignment", + "src": "47861:68:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "47917:3:74", + "nodeType": "YulIdentifier", + "src": "47917:3:74" + }, + { + "name": "length", + "nativeSrc": "47922:6:74", + "nodeType": "YulIdentifier", + "src": "47922:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nativeSrc": "47868:48:74", + "nodeType": "YulIdentifier", + "src": "47868:48:74" + }, + "nativeSrc": "47868:61:74", + "nodeType": "YulFunctionCall", + "src": "47868:61:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "47861:3:74", + "nodeType": "YulIdentifier", + "src": "47861:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "47977:5:74", + "nodeType": "YulIdentifier", + "src": "47977:5:74" + }, + { + "kind": "number", + "nativeSrc": "47984:4:74", + "nodeType": "YulLiteral", + "src": "47984:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "47973:3:74", + "nodeType": "YulIdentifier", + "src": "47973:3:74" + }, + "nativeSrc": "47973:16:74", + "nodeType": "YulFunctionCall", + "src": "47973:16:74" + }, + { + "name": "pos", + "nativeSrc": "47991:3:74", + "nodeType": "YulIdentifier", + "src": "47991:3:74" + }, + { + "name": "length", + "nativeSrc": "47996:6:74", + "nodeType": "YulIdentifier", + "src": "47996:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "47938:34:74", + "nodeType": "YulIdentifier", + "src": "47938:34:74" + }, + "nativeSrc": "47938:65:74", + "nodeType": "YulFunctionCall", + "src": "47938:65:74" + }, + "nativeSrc": "47938:65:74", + "nodeType": "YulExpressionStatement", + "src": "47938:65:74" + }, + { + "nativeSrc": "48012:46:74", + "nodeType": "YulAssignment", + "src": "48012:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48023:3:74", + "nodeType": "YulIdentifier", + "src": "48023:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "48050:6:74", + "nodeType": "YulIdentifier", + "src": "48050:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "48028:21:74", + "nodeType": "YulIdentifier", + "src": "48028:21:74" + }, + "nativeSrc": "48028:29:74", + "nodeType": "YulFunctionCall", + "src": "48028:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48019:3:74", + "nodeType": "YulIdentifier", + "src": "48019:3:74" + }, + "nativeSrc": "48019:39:74", + "nodeType": "YulFunctionCall", + "src": "48019:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "48012:3:74", + "nodeType": "YulIdentifier", + "src": "48012:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "47707:357:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "47770:5:74", + "nodeType": "YulTypedName", + "src": "47770:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "47777:3:74", + "nodeType": "YulTypedName", + "src": "47777:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "47785:3:74", + "nodeType": "YulTypedName", + "src": "47785:3:74", + "type": "" + } + ], + "src": "47707:357:74" + }, + { + "body": { + "nativeSrc": "48170:96:74", + "nodeType": "YulBlock", + "src": "48170:96:74", + "statements": [ + { + "nativeSrc": "48180:80:74", + "nodeType": "YulAssignment", + "src": "48180:80:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "48248:6:74", + "nodeType": "YulIdentifier", + "src": "48248:6:74" + }, + { + "name": "pos", + "nativeSrc": "48256:3:74", + "nodeType": "YulIdentifier", + "src": "48256:3:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "48194:53:74", + "nodeType": "YulIdentifier", + "src": "48194:53:74" + }, + "nativeSrc": "48194:66:74", + "nodeType": "YulFunctionCall", + "src": "48194:66:74" + }, + "variableNames": [ + { + "name": "updatedPos", + "nativeSrc": "48180:10:74", + "nodeType": "YulIdentifier", + "src": "48180:10:74" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "48070:196:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nativeSrc": "48143:6:74", + "nodeType": "YulTypedName", + "src": "48143:6:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "48151:3:74", + "nodeType": "YulTypedName", + "src": "48151:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nativeSrc": "48159:10:74", + "nodeType": "YulTypedName", + "src": "48159:10:74", + "type": "" + } + ], + "src": "48070:196:74" + }, + { + "body": { + "nativeSrc": "48357:38:74", + "nodeType": "YulBlock", + "src": "48357:38:74", + "statements": [ + { + "nativeSrc": "48367:22:74", + "nodeType": "YulAssignment", + "src": "48367:22:74", + "value": { + "arguments": [ + { + "name": "ptr", + "nativeSrc": "48379:3:74", + "nodeType": "YulIdentifier", + "src": "48379:3:74" + }, + { + "kind": "number", + "nativeSrc": "48384:4:74", + "nodeType": "YulLiteral", + "src": "48384:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48375:3:74", + "nodeType": "YulIdentifier", + "src": "48375:3:74" + }, + "nativeSrc": "48375:14:74", + "nodeType": "YulFunctionCall", + "src": "48375:14:74" + }, + "variableNames": [ + { + "name": "next", + "nativeSrc": "48367:4:74", + "nodeType": "YulIdentifier", + "src": "48367:4:74" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "48272:123:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nativeSrc": "48344:3:74", + "nodeType": "YulTypedName", + "src": "48344:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nativeSrc": "48352:4:74", + "nodeType": "YulTypedName", + "src": "48352:4:74", + "type": "" + } + ], + "src": "48272:123:74" + }, + { + "body": { + "nativeSrc": "48573:847:74", + "nodeType": "YulBlock", + "src": "48573:847:74", + "statements": [ + { + "nativeSrc": "48583:78:74", + "nodeType": "YulVariableDeclaration", + "src": "48583:78:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "48655:5:74", + "nodeType": "YulIdentifier", + "src": "48655:5:74" + } + ], + "functionName": { + "name": "array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "48597:57:74", + "nodeType": "YulIdentifier", + "src": "48597:57:74" + }, + "nativeSrc": "48597:64:74", + "nodeType": "YulFunctionCall", + "src": "48597:64:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "48587:6:74", + "nodeType": "YulTypedName", + "src": "48587:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "48670:103:74", + "nodeType": "YulAssignment", + "src": "48670:103:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48761:3:74", + "nodeType": "YulIdentifier", + "src": "48761:3:74" + }, + { + "name": "length", + "nativeSrc": "48766:6:74", + "nodeType": "YulIdentifier", + "src": "48766:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "48677:83:74", + "nodeType": "YulIdentifier", + "src": "48677:83:74" + }, + "nativeSrc": "48677:96:74", + "nodeType": "YulFunctionCall", + "src": "48677:96:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "48670:3:74", + "nodeType": "YulIdentifier", + "src": "48670:3:74" + } + ] + }, + { + "nativeSrc": "48782:20:74", + "nodeType": "YulVariableDeclaration", + "src": "48782:20:74", + "value": { + "name": "pos", + "nativeSrc": "48799:3:74", + "nodeType": "YulIdentifier", + "src": "48799:3:74" + }, + "variables": [ + { + "name": "headStart", + "nativeSrc": "48786:9:74", + "nodeType": "YulTypedName", + "src": "48786:9:74", + "type": "" + } + ] + }, + { + "nativeSrc": "48811:39:74", + "nodeType": "YulVariableDeclaration", + "src": "48811:39:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "48827:3:74", + "nodeType": "YulIdentifier", + "src": "48827:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "48836:6:74", + "nodeType": "YulIdentifier", + "src": "48836:6:74" + }, + { + "kind": "number", + "nativeSrc": "48844:4:74", + "nodeType": "YulLiteral", + "src": "48844:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "48832:3:74", + "nodeType": "YulIdentifier", + "src": "48832:3:74" + }, + "nativeSrc": "48832:17:74", + "nodeType": "YulFunctionCall", + "src": "48832:17:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "48823:3:74", + "nodeType": "YulIdentifier", + "src": "48823:3:74" + }, + "nativeSrc": "48823:27:74", + "nodeType": "YulFunctionCall", + "src": "48823:27:74" + }, + "variables": [ + { + "name": "tail", + "nativeSrc": "48815:4:74", + "nodeType": "YulTypedName", + "src": "48815:4:74", + "type": "" + } + ] + }, + { + "nativeSrc": "48859:81:74", + "nodeType": "YulVariableDeclaration", + "src": "48859:81:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "48934:5:74", + "nodeType": "YulIdentifier", + "src": "48934:5:74" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "48874:59:74", + "nodeType": "YulIdentifier", + "src": "48874:59:74" + }, + "nativeSrc": "48874:66:74", + "nodeType": "YulFunctionCall", + "src": "48874:66:74" + }, + "variables": [ + { + "name": "baseRef", + "nativeSrc": "48863:7:74", + "nodeType": "YulTypedName", + "src": "48863:7:74", + "type": "" + } + ] + }, + { + "nativeSrc": "48949:21:74", + "nodeType": "YulVariableDeclaration", + "src": "48949:21:74", + "value": { + "name": "baseRef", + "nativeSrc": "48963:7:74", + "nodeType": "YulIdentifier", + "src": "48963:7:74" + }, + "variables": [ + { + "name": "srcPtr", + "nativeSrc": "48953:6:74", + "nodeType": "YulTypedName", + "src": "48953:6:74", + "type": "" + } + ] + }, + { + "body": { + "nativeSrc": "49039:336:74", + "nodeType": "YulBlock", + "src": "49039:336:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "49060:3:74", + "nodeType": "YulIdentifier", + "src": "49060:3:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49069:4:74", + "nodeType": "YulIdentifier", + "src": "49069:4:74" + }, + { + "name": "headStart", + "nativeSrc": "49075:9:74", + "nodeType": "YulIdentifier", + "src": "49075:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "49065:3:74", + "nodeType": "YulIdentifier", + "src": "49065:3:74" + }, + "nativeSrc": "49065:20:74", + "nodeType": "YulFunctionCall", + "src": "49065:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49053:6:74", + "nodeType": "YulIdentifier", + "src": "49053:6:74" + }, + "nativeSrc": "49053:33:74", + "nodeType": "YulFunctionCall", + "src": "49053:33:74" + }, + "nativeSrc": "49053:33:74", + "nodeType": "YulExpressionStatement", + "src": "49053:33:74" + }, + { + "nativeSrc": "49099:34:74", + "nodeType": "YulVariableDeclaration", + "src": "49099:34:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "49126:6:74", + "nodeType": "YulIdentifier", + "src": "49126:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "49120:5:74", + "nodeType": "YulIdentifier", + "src": "49120:5:74" + }, + "nativeSrc": "49120:13:74", + "nodeType": "YulFunctionCall", + "src": "49120:13:74" + }, + "variables": [ + { + "name": "elementValue0", + "nativeSrc": "49103:13:74", + "nodeType": "YulTypedName", + "src": "49103:13:74", + "type": "" + } + ] + }, + { + "nativeSrc": "49146:92:74", + "nodeType": "YulAssignment", + "src": "49146:92:74", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nativeSrc": "49218:13:74", + "nodeType": "YulIdentifier", + "src": "49218:13:74" + }, + { + "name": "tail", + "nativeSrc": "49233:4:74", + "nodeType": "YulIdentifier", + "src": "49233:4:74" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr", + "nativeSrc": "49154:63:74", + "nodeType": "YulIdentifier", + "src": "49154:63:74" + }, + "nativeSrc": "49154:84:74", + "nodeType": "YulFunctionCall", + "src": "49154:84:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49146:4:74", + "nodeType": "YulIdentifier", + "src": "49146:4:74" + } + ] + }, + { + "nativeSrc": "49251:80:74", + "nodeType": "YulAssignment", + "src": "49251:80:74", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nativeSrc": "49324:6:74", + "nodeType": "YulIdentifier", + "src": "49324:6:74" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "nativeSrc": "49261:62:74", + "nodeType": "YulIdentifier", + "src": "49261:62:74" + }, + "nativeSrc": "49261:70:74", + "nodeType": "YulFunctionCall", + "src": "49261:70:74" + }, + "variableNames": [ + { + "name": "srcPtr", + "nativeSrc": "49251:6:74", + "nodeType": "YulIdentifier", + "src": "49251:6:74" + } + ] + }, + { + "nativeSrc": "49344:21:74", + "nodeType": "YulAssignment", + "src": "49344:21:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "49355:3:74", + "nodeType": "YulIdentifier", + "src": "49355:3:74" + }, + { + "kind": "number", + "nativeSrc": "49360:4:74", + "nodeType": "YulLiteral", + "src": "49360:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49351:3:74", + "nodeType": "YulIdentifier", + "src": "49351:3:74" + }, + "nativeSrc": "49351:14:74", + "nodeType": "YulFunctionCall", + "src": "49351:14:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "49344:3:74", + "nodeType": "YulIdentifier", + "src": "49344:3:74" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nativeSrc": "49001:1:74", + "nodeType": "YulIdentifier", + "src": "49001:1:74" + }, + { + "name": "length", + "nativeSrc": "49004:6:74", + "nodeType": "YulIdentifier", + "src": "49004:6:74" + } + ], + "functionName": { + "name": "lt", + "nativeSrc": "48998:2:74", + "nodeType": "YulIdentifier", + "src": "48998:2:74" + }, + "nativeSrc": "48998:13:74", + "nodeType": "YulFunctionCall", + "src": "48998:13:74" + }, + "nativeSrc": "48979:396:74", + "nodeType": "YulForLoop", + "post": { + "nativeSrc": "49012:18:74", + "nodeType": "YulBlock", + "src": "49012:18:74", + "statements": [ + { + "nativeSrc": "49014:14:74", + "nodeType": "YulAssignment", + "src": "49014:14:74", + "value": { + "arguments": [ + { + "name": "i", + "nativeSrc": "49023:1:74", + "nodeType": "YulIdentifier", + "src": "49023:1:74" + }, + { + "kind": "number", + "nativeSrc": "49026:1:74", + "nodeType": "YulLiteral", + "src": "49026:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49019:3:74", + "nodeType": "YulIdentifier", + "src": "49019:3:74" + }, + "nativeSrc": "49019:9:74", + "nodeType": "YulFunctionCall", + "src": "49019:9:74" + }, + "variableNames": [ + { + "name": "i", + "nativeSrc": "49014:1:74", + "nodeType": "YulIdentifier", + "src": "49014:1:74" + } + ] + } + ] + }, + "pre": { + "nativeSrc": "48983:14:74", + "nodeType": "YulBlock", + "src": "48983:14:74", + "statements": [ + { + "nativeSrc": "48985:10:74", + "nodeType": "YulVariableDeclaration", + "src": "48985:10:74", + "value": { + "kind": "number", + "nativeSrc": "48994:1:74", + "nodeType": "YulLiteral", + "src": "48994:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nativeSrc": "48989:1:74", + "nodeType": "YulTypedName", + "src": "48989:1:74", + "type": "" + } + ] + } + ] + }, + "src": "48979:396:74" + }, + { + "nativeSrc": "49384:11:74", + "nodeType": "YulAssignment", + "src": "49384:11:74", + "value": { + "name": "tail", + "nativeSrc": "49391:4:74", + "nodeType": "YulIdentifier", + "src": "49391:4:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "49384:3:74", + "nodeType": "YulIdentifier", + "src": "49384:3:74" + } + ] + }, + { + "nativeSrc": "49404:10:74", + "nodeType": "YulAssignment", + "src": "49404:10:74", + "value": { + "name": "pos", + "nativeSrc": "49411:3:74", + "nodeType": "YulIdentifier", + "src": "49411:3:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "49404:3:74", + "nodeType": "YulIdentifier", + "src": "49404:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "48429:991:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "48552:5:74", + "nodeType": "YulTypedName", + "src": "48552:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "48559:3:74", + "nodeType": "YulTypedName", + "src": "48559:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "48568:3:74", + "nodeType": "YulTypedName", + "src": "48568:3:74", + "type": "" + } + ], + "src": "48429:991:74" + }, + { + "body": { + "nativeSrc": "49740:711:74", + "nodeType": "YulBlock", + "src": "49740:711:74", + "statements": [ + { + "nativeSrc": "49750:27:74", + "nodeType": "YulAssignment", + "src": "49750:27:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49762:9:74", + "nodeType": "YulIdentifier", + "src": "49762:9:74" + }, + { + "kind": "number", + "nativeSrc": "49773:3:74", + "nodeType": "YulLiteral", + "src": "49773:3:74", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49758:3:74", + "nodeType": "YulIdentifier", + "src": "49758:3:74" + }, + "nativeSrc": "49758:19:74", + "nodeType": "YulFunctionCall", + "src": "49758:19:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49750:4:74", + "nodeType": "YulIdentifier", + "src": "49750:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "49831:6:74", + "nodeType": "YulIdentifier", + "src": "49831:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49844:9:74", + "nodeType": "YulIdentifier", + "src": "49844:9:74" + }, + { + "kind": "number", + "nativeSrc": "49855:1:74", + "nodeType": "YulLiteral", + "src": "49855:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49840:3:74", + "nodeType": "YulIdentifier", + "src": "49840:3:74" + }, + "nativeSrc": "49840:17:74", + "nodeType": "YulFunctionCall", + "src": "49840:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nativeSrc": "49787:43:74", + "nodeType": "YulIdentifier", + "src": "49787:43:74" + }, + "nativeSrc": "49787:71:74", + "nodeType": "YulFunctionCall", + "src": "49787:71:74" + }, + "nativeSrc": "49787:71:74", + "nodeType": "YulExpressionStatement", + "src": "49787:71:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "49879:9:74", + "nodeType": "YulIdentifier", + "src": "49879:9:74" + }, + { + "kind": "number", + "nativeSrc": "49890:2:74", + "nodeType": "YulLiteral", + "src": "49890:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "49875:3:74", + "nodeType": "YulIdentifier", + "src": "49875:3:74" + }, + "nativeSrc": "49875:18:74", + "nodeType": "YulFunctionCall", + "src": "49875:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "49899:4:74", + "nodeType": "YulIdentifier", + "src": "49899:4:74" + }, + { + "name": "headStart", + "nativeSrc": "49905:9:74", + "nodeType": "YulIdentifier", + "src": "49905:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "49895:3:74", + "nodeType": "YulIdentifier", + "src": "49895:3:74" + }, + "nativeSrc": "49895:20:74", + "nodeType": "YulFunctionCall", + "src": "49895:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "49868:6:74", + "nodeType": "YulIdentifier", + "src": "49868:6:74" + }, + "nativeSrc": "49868:48:74", + "nodeType": "YulFunctionCall", + "src": "49868:48:74" + }, + "nativeSrc": "49868:48:74", + "nodeType": "YulExpressionStatement", + "src": "49868:48:74" + }, + { + "nativeSrc": "49925:136:74", + "nodeType": "YulAssignment", + "src": "49925:136:74", + "value": { + "arguments": [ + { + "name": "value1", + "nativeSrc": "50047:6:74", + "nodeType": "YulIdentifier", + "src": "50047:6:74" + }, + { + "name": "tail", + "nativeSrc": "50056:4:74", + "nodeType": "YulIdentifier", + "src": "50056:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack", + "nativeSrc": "49933:113:74", + "nodeType": "YulIdentifier", + "src": "49933:113:74" + }, + "nativeSrc": "49933:128:74", + "nodeType": "YulFunctionCall", + "src": "49933:128:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "49925:4:74", + "nodeType": "YulIdentifier", + "src": "49925:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50082:9:74", + "nodeType": "YulIdentifier", + "src": "50082:9:74" + }, + { + "kind": "number", + "nativeSrc": "50093:2:74", + "nodeType": "YulLiteral", + "src": "50093:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50078:3:74", + "nodeType": "YulIdentifier", + "src": "50078:3:74" + }, + "nativeSrc": "50078:18:74", + "nodeType": "YulFunctionCall", + "src": "50078:18:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "50102:4:74", + "nodeType": "YulIdentifier", + "src": "50102:4:74" + }, + { + "name": "headStart", + "nativeSrc": "50108:9:74", + "nodeType": "YulIdentifier", + "src": "50108:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "50098:3:74", + "nodeType": "YulIdentifier", + "src": "50098:3:74" + }, + "nativeSrc": "50098:20:74", + "nodeType": "YulFunctionCall", + "src": "50098:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50071:6:74", + "nodeType": "YulIdentifier", + "src": "50071:6:74" + }, + "nativeSrc": "50071:48:74", + "nodeType": "YulFunctionCall", + "src": "50071:48:74" + }, + "nativeSrc": "50071:48:74", + "nodeType": "YulExpressionStatement", + "src": "50071:48:74" + }, + { + "nativeSrc": "50128:84:74", + "nodeType": "YulAssignment", + "src": "50128:84:74", + "value": { + "arguments": [ + { + "name": "value2", + "nativeSrc": "50198:6:74", + "nodeType": "YulIdentifier", + "src": "50198:6:74" + }, + { + "name": "tail", + "nativeSrc": "50207:4:74", + "nodeType": "YulIdentifier", + "src": "50207:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "50136:61:74", + "nodeType": "YulIdentifier", + "src": "50136:61:74" + }, + "nativeSrc": "50136:76:74", + "nodeType": "YulFunctionCall", + "src": "50136:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "50128:4:74", + "nodeType": "YulIdentifier", + "src": "50128:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value3", + "nativeSrc": "50264:6:74", + "nodeType": "YulIdentifier", + "src": "50264:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50277:9:74", + "nodeType": "YulIdentifier", + "src": "50277:9:74" + }, + { + "kind": "number", + "nativeSrc": "50288:2:74", + "nodeType": "YulLiteral", + "src": "50288:2:74", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50273:3:74", + "nodeType": "YulIdentifier", + "src": "50273:3:74" + }, + "nativeSrc": "50273:18:74", + "nodeType": "YulFunctionCall", + "src": "50273:18:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes4_to_t_bytes4_fromStack", + "nativeSrc": "50222:41:74", + "nodeType": "YulIdentifier", + "src": "50222:41:74" + }, + "nativeSrc": "50222:70:74", + "nodeType": "YulFunctionCall", + "src": "50222:70:74" + }, + "nativeSrc": "50222:70:74", + "nodeType": "YulExpressionStatement", + "src": "50222:70:74" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "50313:9:74", + "nodeType": "YulIdentifier", + "src": "50313:9:74" + }, + { + "kind": "number", + "nativeSrc": "50324:3:74", + "nodeType": "YulLiteral", + "src": "50324:3:74", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50309:3:74", + "nodeType": "YulIdentifier", + "src": "50309:3:74" + }, + "nativeSrc": "50309:19:74", + "nodeType": "YulFunctionCall", + "src": "50309:19:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "50334:4:74", + "nodeType": "YulIdentifier", + "src": "50334:4:74" + }, + { + "name": "headStart", + "nativeSrc": "50340:9:74", + "nodeType": "YulIdentifier", + "src": "50340:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "50330:3:74", + "nodeType": "YulIdentifier", + "src": "50330:3:74" + }, + "nativeSrc": "50330:20:74", + "nodeType": "YulFunctionCall", + "src": "50330:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50302:6:74", + "nodeType": "YulIdentifier", + "src": "50302:6:74" + }, + "nativeSrc": "50302:49:74", + "nodeType": "YulFunctionCall", + "src": "50302:49:74" + }, + "nativeSrc": "50302:49:74", + "nodeType": "YulExpressionStatement", + "src": "50302:49:74" + }, + { + "nativeSrc": "50360:84:74", + "nodeType": "YulAssignment", + "src": "50360:84:74", + "value": { + "arguments": [ + { + "name": "value4", + "nativeSrc": "50430:6:74", + "nodeType": "YulIdentifier", + "src": "50430:6:74" + }, + { + "name": "tail", + "nativeSrc": "50439:4:74", + "nodeType": "YulIdentifier", + "src": "50439:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nativeSrc": "50368:61:74", + "nodeType": "YulIdentifier", + "src": "50368:61:74" + }, + "nativeSrc": "50368:76:74", + "nodeType": "YulFunctionCall", + "src": "50368:76:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "50360:4:74", + "nodeType": "YulIdentifier", + "src": "50360:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed", + "nativeSrc": "49426:1025:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "49680:9:74", + "nodeType": "YulTypedName", + "src": "49680:9:74", + "type": "" + }, + { + "name": "value4", + "nativeSrc": "49692:6:74", + "nodeType": "YulTypedName", + "src": "49692:6:74", + "type": "" + }, + { + "name": "value3", + "nativeSrc": "49700:6:74", + "nodeType": "YulTypedName", + "src": "49700:6:74", + "type": "" + }, + { + "name": "value2", + "nativeSrc": "49708:6:74", + "nodeType": "YulTypedName", + "src": "49708:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "49716:6:74", + "nodeType": "YulTypedName", + "src": "49716:6:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "49724:6:74", + "nodeType": "YulTypedName", + "src": "49724:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "49735:4:74", + "nodeType": "YulTypedName", + "src": "49735:4:74", + "type": "" + } + ], + "src": "49426:1025:74" + }, + { + "body": { + "nativeSrc": "50563:73:74", + "nodeType": "YulBlock", + "src": "50563:73:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nativeSrc": "50585:6:74", + "nodeType": "YulIdentifier", + "src": "50585:6:74" + }, + { + "kind": "number", + "nativeSrc": "50593:1:74", + "nodeType": "YulLiteral", + "src": "50593:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50581:3:74", + "nodeType": "YulIdentifier", + "src": "50581:3:74" + }, + "nativeSrc": "50581:14:74", + "nodeType": "YulFunctionCall", + "src": "50581:14:74" + }, + { + "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", + "kind": "string", + "nativeSrc": "50597:31:74", + "nodeType": "YulLiteral", + "src": "50597:31:74", + "type": "", + "value": "Address: call to non-contract" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "50574:6:74", + "nodeType": "YulIdentifier", + "src": "50574:6:74" + }, + "nativeSrc": "50574:55:74", + "nodeType": "YulFunctionCall", + "src": "50574:55:74" + }, + "nativeSrc": "50574:55:74", + "nodeType": "YulExpressionStatement", + "src": "50574:55:74" + } + ] + }, + "name": "store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", + "nativeSrc": "50457:179:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nativeSrc": "50555:6:74", + "nodeType": "YulTypedName", + "src": "50555:6:74", + "type": "" + } + ], + "src": "50457:179:74" + }, + { + "body": { + "nativeSrc": "50788:220:74", + "nodeType": "YulBlock", + "src": "50788:220:74", + "statements": [ + { + "nativeSrc": "50798:74:74", + "nodeType": "YulAssignment", + "src": "50798:74:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50864:3:74", + "nodeType": "YulIdentifier", + "src": "50864:3:74" + }, + { + "kind": "number", + "nativeSrc": "50869:2:74", + "nodeType": "YulLiteral", + "src": "50869:2:74", + "type": "", + "value": "29" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "50805:58:74", + "nodeType": "YulIdentifier", + "src": "50805:58:74" + }, + "nativeSrc": "50805:67:74", + "nodeType": "YulFunctionCall", + "src": "50805:67:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "50798:3:74", + "nodeType": "YulIdentifier", + "src": "50798:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50970:3:74", + "nodeType": "YulIdentifier", + "src": "50970:3:74" + } + ], + "functionName": { + "name": "store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", + "nativeSrc": "50881:88:74", + "nodeType": "YulIdentifier", + "src": "50881:88:74" + }, + "nativeSrc": "50881:93:74", + "nodeType": "YulFunctionCall", + "src": "50881:93:74" + }, + "nativeSrc": "50881:93:74", + "nodeType": "YulExpressionStatement", + "src": "50881:93:74" + }, + { + "nativeSrc": "50983:19:74", + "nodeType": "YulAssignment", + "src": "50983:19:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "50994:3:74", + "nodeType": "YulIdentifier", + "src": "50994:3:74" + }, + { + "kind": "number", + "nativeSrc": "50999:2:74", + "nodeType": "YulLiteral", + "src": "50999:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "50990:3:74", + "nodeType": "YulIdentifier", + "src": "50990:3:74" + }, + "nativeSrc": "50990:12:74", + "nodeType": "YulFunctionCall", + "src": "50990:12:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "50983:3:74", + "nodeType": "YulIdentifier", + "src": "50983:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack", + "nativeSrc": "50642:366:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nativeSrc": "50776:3:74", + "nodeType": "YulTypedName", + "src": "50776:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "50784:3:74", + "nodeType": "YulTypedName", + "src": "50784:3:74", + "type": "" + } + ], + "src": "50642:366:74" + }, + { + "body": { + "nativeSrc": "51185:248:74", + "nodeType": "YulBlock", + "src": "51185:248:74", + "statements": [ + { + "nativeSrc": "51195:26:74", + "nodeType": "YulAssignment", + "src": "51195:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "51207:9:74", + "nodeType": "YulIdentifier", + "src": "51207:9:74" + }, + { + "kind": "number", + "nativeSrc": "51218:2:74", + "nodeType": "YulLiteral", + "src": "51218:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51203:3:74", + "nodeType": "YulIdentifier", + "src": "51203:3:74" + }, + "nativeSrc": "51203:18:74", + "nodeType": "YulFunctionCall", + "src": "51203:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "51195:4:74", + "nodeType": "YulIdentifier", + "src": "51195:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "51242:9:74", + "nodeType": "YulIdentifier", + "src": "51242:9:74" + }, + { + "kind": "number", + "nativeSrc": "51253:1:74", + "nodeType": "YulLiteral", + "src": "51253:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51238:3:74", + "nodeType": "YulIdentifier", + "src": "51238:3:74" + }, + "nativeSrc": "51238:17:74", + "nodeType": "YulFunctionCall", + "src": "51238:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "51261:4:74", + "nodeType": "YulIdentifier", + "src": "51261:4:74" + }, + { + "name": "headStart", + "nativeSrc": "51267:9:74", + "nodeType": "YulIdentifier", + "src": "51267:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "51257:3:74", + "nodeType": "YulIdentifier", + "src": "51257:3:74" + }, + "nativeSrc": "51257:20:74", + "nodeType": "YulFunctionCall", + "src": "51257:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "51231:6:74", + "nodeType": "YulIdentifier", + "src": "51231:6:74" + }, + "nativeSrc": "51231:47:74", + "nodeType": "YulFunctionCall", + "src": "51231:47:74" + }, + "nativeSrc": "51231:47:74", + "nodeType": "YulExpressionStatement", + "src": "51231:47:74" + }, + { + "nativeSrc": "51287:139:74", + "nodeType": "YulAssignment", + "src": "51287:139:74", + "value": { + "arguments": [ + { + "name": "tail", + "nativeSrc": "51421:4:74", + "nodeType": "YulIdentifier", + "src": "51421:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack", + "nativeSrc": "51295:124:74", + "nodeType": "YulIdentifier", + "src": "51295:124:74" + }, + "nativeSrc": "51295:131:74", + "nodeType": "YulFunctionCall", + "src": "51295:131:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "51287:4:74", + "nodeType": "YulIdentifier", + "src": "51287:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "51014:419:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "51165:9:74", + "nodeType": "YulTypedName", + "src": "51165:9:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "51180:4:74", + "nodeType": "YulTypedName", + "src": "51180:4:74", + "type": "" + } + ], + "src": "51014:419:74" + }, + { + "body": { + "nativeSrc": "51484:149:74", + "nodeType": "YulBlock", + "src": "51484:149:74", + "statements": [ + { + "nativeSrc": "51494:25:74", + "nodeType": "YulAssignment", + "src": "51494:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "51517:1:74", + "nodeType": "YulIdentifier", + "src": "51517:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "51499:17:74", + "nodeType": "YulIdentifier", + "src": "51499:17:74" + }, + "nativeSrc": "51499:20:74", + "nodeType": "YulFunctionCall", + "src": "51499:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "51494:1:74", + "nodeType": "YulIdentifier", + "src": "51494:1:74" + } + ] + }, + { + "nativeSrc": "51528:25:74", + "nodeType": "YulAssignment", + "src": "51528:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "51551:1:74", + "nodeType": "YulIdentifier", + "src": "51551:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "51533:17:74", + "nodeType": "YulIdentifier", + "src": "51533:17:74" + }, + "nativeSrc": "51533:20:74", + "nodeType": "YulFunctionCall", + "src": "51533:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "51528:1:74", + "nodeType": "YulIdentifier", + "src": "51528:1:74" + } + ] + }, + { + "nativeSrc": "51562:17:74", + "nodeType": "YulAssignment", + "src": "51562:17:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "51574:1:74", + "nodeType": "YulIdentifier", + "src": "51574:1:74" + }, + { + "name": "y", + "nativeSrc": "51577:1:74", + "nodeType": "YulIdentifier", + "src": "51577:1:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "51570:3:74", + "nodeType": "YulIdentifier", + "src": "51570:3:74" + }, + "nativeSrc": "51570:9:74", + "nodeType": "YulFunctionCall", + "src": "51570:9:74" + }, + "variableNames": [ + { + "name": "diff", + "nativeSrc": "51562:4:74", + "nodeType": "YulIdentifier", + "src": "51562:4:74" + } + ] + }, + { + "body": { + "nativeSrc": "51604:22:74", + "nodeType": "YulBlock", + "src": "51604:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "51606:16:74", + "nodeType": "YulIdentifier", + "src": "51606:16:74" + }, + "nativeSrc": "51606:18:74", + "nodeType": "YulFunctionCall", + "src": "51606:18:74" + }, + "nativeSrc": "51606:18:74", + "nodeType": "YulExpressionStatement", + "src": "51606:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nativeSrc": "51595:4:74", + "nodeType": "YulIdentifier", + "src": "51595:4:74" + }, + { + "name": "x", + "nativeSrc": "51601:1:74", + "nodeType": "YulIdentifier", + "src": "51601:1:74" + } + ], + "functionName": { + "name": "gt", + "nativeSrc": "51592:2:74", + "nodeType": "YulIdentifier", + "src": "51592:2:74" + }, + "nativeSrc": "51592:11:74", + "nodeType": "YulFunctionCall", + "src": "51592:11:74" + }, + "nativeSrc": "51589:37:74", + "nodeType": "YulIf", + "src": "51589:37:74" + } + ] + }, + "name": "checked_sub_t_uint256", + "nativeSrc": "51439:194:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "51470:1:74", + "nodeType": "YulTypedName", + "src": "51470:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "51473:1:74", + "nodeType": "YulTypedName", + "src": "51473:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nativeSrc": "51479:4:74", + "nodeType": "YulTypedName", + "src": "51479:4:74", + "type": "" + } + ], + "src": "51439:194:74" + }, + { + "body": { + "nativeSrc": "51682:190:74", + "nodeType": "YulBlock", + "src": "51682:190:74", + "statements": [ + { + "nativeSrc": "51692:33:74", + "nodeType": "YulAssignment", + "src": "51692:33:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "51719:5:74", + "nodeType": "YulIdentifier", + "src": "51719:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "51701:17:74", + "nodeType": "YulIdentifier", + "src": "51701:17:74" + }, + "nativeSrc": "51701:24:74", + "nodeType": "YulFunctionCall", + "src": "51701:24:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "51692:5:74", + "nodeType": "YulIdentifier", + "src": "51692:5:74" + } + ] + }, + { + "body": { + "nativeSrc": "51815:22:74", + "nodeType": "YulBlock", + "src": "51815:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "51817:16:74", + "nodeType": "YulIdentifier", + "src": "51817:16:74" + }, + "nativeSrc": "51817:18:74", + "nodeType": "YulFunctionCall", + "src": "51817:18:74" + }, + "nativeSrc": "51817:18:74", + "nodeType": "YulExpressionStatement", + "src": "51817:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nativeSrc": "51740:5:74", + "nodeType": "YulIdentifier", + "src": "51740:5:74" + }, + { + "kind": "number", + "nativeSrc": "51747:66:74", + "nodeType": "YulLiteral", + "src": "51747:66:74", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "51737:2:74", + "nodeType": "YulIdentifier", + "src": "51737:2:74" + }, + "nativeSrc": "51737:77:74", + "nodeType": "YulFunctionCall", + "src": "51737:77:74" + }, + "nativeSrc": "51734:103:74", + "nodeType": "YulIf", + "src": "51734:103:74" + }, + { + "nativeSrc": "51846:20:74", + "nodeType": "YulAssignment", + "src": "51846:20:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "51857:5:74", + "nodeType": "YulIdentifier", + "src": "51857:5:74" + }, + { + "kind": "number", + "nativeSrc": "51864:1:74", + "nodeType": "YulLiteral", + "src": "51864:1:74", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "51853:3:74", + "nodeType": "YulIdentifier", + "src": "51853:3:74" + }, + "nativeSrc": "51853:13:74", + "nodeType": "YulFunctionCall", + "src": "51853:13:74" + }, + "variableNames": [ + { + "name": "ret", + "nativeSrc": "51846:3:74", + "nodeType": "YulIdentifier", + "src": "51846:3:74" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nativeSrc": "51639:233:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "51668:5:74", + "nodeType": "YulTypedName", + "src": "51668:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nativeSrc": "51678:3:74", + "nodeType": "YulTypedName", + "src": "51678:3:74", + "type": "" + } + ], + "src": "51639:233:74" + }, + { + "body": { + "nativeSrc": "51926:362:74", + "nodeType": "YulBlock", + "src": "51926:362:74", + "statements": [ + { + "nativeSrc": "51936:25:74", + "nodeType": "YulAssignment", + "src": "51936:25:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "51959:1:74", + "nodeType": "YulIdentifier", + "src": "51959:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "51941:17:74", + "nodeType": "YulIdentifier", + "src": "51941:17:74" + }, + "nativeSrc": "51941:20:74", + "nodeType": "YulFunctionCall", + "src": "51941:20:74" + }, + "variableNames": [ + { + "name": "x", + "nativeSrc": "51936:1:74", + "nodeType": "YulIdentifier", + "src": "51936:1:74" + } + ] + }, + { + "nativeSrc": "51970:25:74", + "nodeType": "YulAssignment", + "src": "51970:25:74", + "value": { + "arguments": [ + { + "name": "y", + "nativeSrc": "51993:1:74", + "nodeType": "YulIdentifier", + "src": "51993:1:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "51975:17:74", + "nodeType": "YulIdentifier", + "src": "51975:17:74" + }, + "nativeSrc": "51975:20:74", + "nodeType": "YulFunctionCall", + "src": "51975:20:74" + }, + "variableNames": [ + { + "name": "y", + "nativeSrc": "51970:1:74", + "nodeType": "YulIdentifier", + "src": "51970:1:74" + } + ] + }, + { + "nativeSrc": "52004:28:74", + "nodeType": "YulVariableDeclaration", + "src": "52004:28:74", + "value": { + "arguments": [ + { + "name": "x", + "nativeSrc": "52027:1:74", + "nodeType": "YulIdentifier", + "src": "52027:1:74" + }, + { + "name": "y", + "nativeSrc": "52030:1:74", + "nodeType": "YulIdentifier", + "src": "52030:1:74" + } + ], + "functionName": { + "name": "mul", + "nativeSrc": "52023:3:74", + "nodeType": "YulIdentifier", + "src": "52023:3:74" + }, + "nativeSrc": "52023:9:74", + "nodeType": "YulFunctionCall", + "src": "52023:9:74" + }, + "variables": [ + { + "name": "product_raw", + "nativeSrc": "52008:11:74", + "nodeType": "YulTypedName", + "src": "52008:11:74", + "type": "" + } + ] + }, + { + "nativeSrc": "52041:41:74", + "nodeType": "YulAssignment", + "src": "52041:41:74", + "value": { + "arguments": [ + { + "name": "product_raw", + "nativeSrc": "52070:11:74", + "nodeType": "YulIdentifier", + "src": "52070:11:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "52052:17:74", + "nodeType": "YulIdentifier", + "src": "52052:17:74" + }, + "nativeSrc": "52052:30:74", + "nodeType": "YulFunctionCall", + "src": "52052:30:74" + }, + "variableNames": [ + { + "name": "product", + "nativeSrc": "52041:7:74", + "nodeType": "YulIdentifier", + "src": "52041:7:74" + } + ] + }, + { + "body": { + "nativeSrc": "52259:22:74", + "nodeType": "YulBlock", + "src": "52259:22:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nativeSrc": "52261:16:74", + "nodeType": "YulIdentifier", + "src": "52261:16:74" + }, + "nativeSrc": "52261:18:74", + "nodeType": "YulFunctionCall", + "src": "52261:18:74" + }, + "nativeSrc": "52261:18:74", + "nodeType": "YulExpressionStatement", + "src": "52261:18:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nativeSrc": "52192:1:74", + "nodeType": "YulIdentifier", + "src": "52192:1:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "52185:6:74", + "nodeType": "YulIdentifier", + "src": "52185:6:74" + }, + "nativeSrc": "52185:9:74", + "nodeType": "YulFunctionCall", + "src": "52185:9:74" + }, + { + "arguments": [ + { + "name": "y", + "nativeSrc": "52215:1:74", + "nodeType": "YulIdentifier", + "src": "52215:1:74" + }, + { + "arguments": [ + { + "name": "product", + "nativeSrc": "52222:7:74", + "nodeType": "YulIdentifier", + "src": "52222:7:74" + }, + { + "name": "x", + "nativeSrc": "52231:1:74", + "nodeType": "YulIdentifier", + "src": "52231:1:74" + } + ], + "functionName": { + "name": "div", + "nativeSrc": "52218:3:74", + "nodeType": "YulIdentifier", + "src": "52218:3:74" + }, + "nativeSrc": "52218:15:74", + "nodeType": "YulFunctionCall", + "src": "52218:15:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "52212:2:74", + "nodeType": "YulIdentifier", + "src": "52212:2:74" + }, + "nativeSrc": "52212:22:74", + "nodeType": "YulFunctionCall", + "src": "52212:22:74" + } + ], + "functionName": { + "name": "or", + "nativeSrc": "52165:2:74", + "nodeType": "YulIdentifier", + "src": "52165:2:74" + }, + "nativeSrc": "52165:83:74", + "nodeType": "YulFunctionCall", + "src": "52165:83:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "52145:6:74", + "nodeType": "YulIdentifier", + "src": "52145:6:74" + }, + "nativeSrc": "52145:113:74", + "nodeType": "YulFunctionCall", + "src": "52145:113:74" + }, + "nativeSrc": "52142:139:74", + "nodeType": "YulIf", + "src": "52142:139:74" + } + ] + }, + "name": "checked_mul_t_uint256", + "nativeSrc": "51878:410:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nativeSrc": "51909:1:74", + "nodeType": "YulTypedName", + "src": "51909:1:74", + "type": "" + }, + { + "name": "y", + "nativeSrc": "51912:1:74", + "nodeType": "YulTypedName", + "src": "51912:1:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nativeSrc": "51918:7:74", + "nodeType": "YulTypedName", + "src": "51918:7:74", + "type": "" + } + ], + "src": "51878:410:74" + }, + { + "body": { + "nativeSrc": "52386:285:74", + "nodeType": "YulBlock", + "src": "52386:285:74", + "statements": [ + { + "nativeSrc": "52396:53:74", + "nodeType": "YulVariableDeclaration", + "src": "52396:53:74", + "value": { + "arguments": [ + { + "name": "value", + "nativeSrc": "52443:5:74", + "nodeType": "YulIdentifier", + "src": "52443:5:74" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nativeSrc": "52410:32:74", + "nodeType": "YulIdentifier", + "src": "52410:32:74" + }, + "nativeSrc": "52410:39:74", + "nodeType": "YulFunctionCall", + "src": "52410:39:74" + }, + "variables": [ + { + "name": "length", + "nativeSrc": "52400:6:74", + "nodeType": "YulTypedName", + "src": "52400:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "52458:78:74", + "nodeType": "YulAssignment", + "src": "52458:78:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "52524:3:74", + "nodeType": "YulIdentifier", + "src": "52524:3:74" + }, + { + "name": "length", + "nativeSrc": "52529:6:74", + "nodeType": "YulIdentifier", + "src": "52529:6:74" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nativeSrc": "52465:58:74", + "nodeType": "YulIdentifier", + "src": "52465:58:74" + }, + "nativeSrc": "52465:71:74", + "nodeType": "YulFunctionCall", + "src": "52465:71:74" + }, + "variableNames": [ + { + "name": "pos", + "nativeSrc": "52458:3:74", + "nodeType": "YulIdentifier", + "src": "52458:3:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "52584:5:74", + "nodeType": "YulIdentifier", + "src": "52584:5:74" + }, + { + "kind": "number", + "nativeSrc": "52591:4:74", + "nodeType": "YulLiteral", + "src": "52591:4:74", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52580:3:74", + "nodeType": "YulIdentifier", + "src": "52580:3:74" + }, + "nativeSrc": "52580:16:74", + "nodeType": "YulFunctionCall", + "src": "52580:16:74" + }, + { + "name": "pos", + "nativeSrc": "52598:3:74", + "nodeType": "YulIdentifier", + "src": "52598:3:74" + }, + { + "name": "length", + "nativeSrc": "52603:6:74", + "nodeType": "YulIdentifier", + "src": "52603:6:74" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nativeSrc": "52545:34:74", + "nodeType": "YulIdentifier", + "src": "52545:34:74" + }, + "nativeSrc": "52545:65:74", + "nodeType": "YulFunctionCall", + "src": "52545:65:74" + }, + "nativeSrc": "52545:65:74", + "nodeType": "YulExpressionStatement", + "src": "52545:65:74" + }, + { + "nativeSrc": "52619:46:74", + "nodeType": "YulAssignment", + "src": "52619:46:74", + "value": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "52630:3:74", + "nodeType": "YulIdentifier", + "src": "52630:3:74" + }, + { + "arguments": [ + { + "name": "length", + "nativeSrc": "52657:6:74", + "nodeType": "YulIdentifier", + "src": "52657:6:74" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nativeSrc": "52635:21:74", + "nodeType": "YulIdentifier", + "src": "52635:21:74" + }, + "nativeSrc": "52635:29:74", + "nodeType": "YulFunctionCall", + "src": "52635:29:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52626:3:74", + "nodeType": "YulIdentifier", + "src": "52626:3:74" + }, + "nativeSrc": "52626:39:74", + "nodeType": "YulFunctionCall", + "src": "52626:39:74" + }, + "variableNames": [ + { + "name": "end", + "nativeSrc": "52619:3:74", + "nodeType": "YulIdentifier", + "src": "52619:3:74" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "52294:377:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "52367:5:74", + "nodeType": "YulTypedName", + "src": "52367:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "52374:3:74", + "nodeType": "YulTypedName", + "src": "52374:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nativeSrc": "52382:3:74", + "nodeType": "YulTypedName", + "src": "52382:3:74", + "type": "" + } + ], + "src": "52294:377:74" + }, + { + "body": { + "nativeSrc": "52795:195:74", + "nodeType": "YulBlock", + "src": "52795:195:74", + "statements": [ + { + "nativeSrc": "52805:26:74", + "nodeType": "YulAssignment", + "src": "52805:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "52817:9:74", + "nodeType": "YulIdentifier", + "src": "52817:9:74" + }, + { + "kind": "number", + "nativeSrc": "52828:2:74", + "nodeType": "YulLiteral", + "src": "52828:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52813:3:74", + "nodeType": "YulIdentifier", + "src": "52813:3:74" + }, + "nativeSrc": "52813:18:74", + "nodeType": "YulFunctionCall", + "src": "52813:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "52805:4:74", + "nodeType": "YulIdentifier", + "src": "52805:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "52852:9:74", + "nodeType": "YulIdentifier", + "src": "52852:9:74" + }, + { + "kind": "number", + "nativeSrc": "52863:1:74", + "nodeType": "YulLiteral", + "src": "52863:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "52848:3:74", + "nodeType": "YulIdentifier", + "src": "52848:3:74" + }, + "nativeSrc": "52848:17:74", + "nodeType": "YulFunctionCall", + "src": "52848:17:74" + }, + { + "arguments": [ + { + "name": "tail", + "nativeSrc": "52871:4:74", + "nodeType": "YulIdentifier", + "src": "52871:4:74" + }, + { + "name": "headStart", + "nativeSrc": "52877:9:74", + "nodeType": "YulIdentifier", + "src": "52877:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "52867:3:74", + "nodeType": "YulIdentifier", + "src": "52867:3:74" + }, + "nativeSrc": "52867:20:74", + "nodeType": "YulFunctionCall", + "src": "52867:20:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "52841:6:74", + "nodeType": "YulIdentifier", + "src": "52841:6:74" + }, + "nativeSrc": "52841:47:74", + "nodeType": "YulFunctionCall", + "src": "52841:47:74" + }, + "nativeSrc": "52841:47:74", + "nodeType": "YulExpressionStatement", + "src": "52841:47:74" + }, + { + "nativeSrc": "52897:86:74", + "nodeType": "YulAssignment", + "src": "52897:86:74", + "value": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "52969:6:74", + "nodeType": "YulIdentifier", + "src": "52969:6:74" + }, + { + "name": "tail", + "nativeSrc": "52978:4:74", + "nodeType": "YulIdentifier", + "src": "52978:4:74" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", + "nativeSrc": "52905:63:74", + "nodeType": "YulIdentifier", + "src": "52905:63:74" + }, + "nativeSrc": "52905:78:74", + "nodeType": "YulFunctionCall", + "src": "52905:78:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "52897:4:74", + "nodeType": "YulIdentifier", + "src": "52897:4:74" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nativeSrc": "52677:313:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "52767:9:74", + "nodeType": "YulTypedName", + "src": "52767:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "52779:6:74", + "nodeType": "YulTypedName", + "src": "52779:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "52790:4:74", + "nodeType": "YulTypedName", + "src": "52790:4:74", + "type": "" + } + ], + "src": "52677:313:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory_with_cleanup(src, dst, length) {\n\n calldatacopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_bytes32_t_address__to_t_bytes32_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_IEVMVerifier_$798_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_IEVMVerifier_$798_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_IEVMVerifier_$798__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function convert_t_contract$_ENS_$4567_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ENS_$4567_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_ENS_$4567__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ENS_$4567_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2, value3 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function convert_t_contract$_INameWrapper_$10064_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_INameWrapper_$10064_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_INameWrapper_$10064_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_INameWrapper_$10064__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_INameWrapper_$10064_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_bytes_calldata_ptrt_address(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value2 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n // bytes[]\n function abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := calldataload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_bytes_memory_ptr(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, value1, tail)\n\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value0, tail)\n\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_contract$_IEVMVerifier_$798(value) -> cleaned {\n cleaned := cleanup_t_address(value)\n }\n\n function validator_revert_t_contract$_IEVMVerifier_$798(value) {\n if iszero(eq(value, cleanup_t_contract$_IEVMVerifier_$798(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_contract$_IEVMVerifier_$798(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_contract$_IEVMVerifier_$798(value)\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_payable(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes32[]\n function abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes32_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_bytes32(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes32[]\n function abi_decode_t_array$_t_bytes32_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_bytes32_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_contract$_IEVMVerifier_$798t_address_payablet_array$_t_bytes32_$dyn_memory_ptrt_array$_t_bytes_memory_ptr_$dyn_memory_ptrt_bytes4t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5 {\n if slt(sub(dataEnd, headStart), 192) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_contract$_IEVMVerifier_$798(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address_payable(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_array$_t_bytes32_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 160))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value5 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_bytes32_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_bytes32_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encodeUpdatedPos_t_bytes32_to_t_bytes32(value0, pos) -> updatedPos {\n abi_encode_t_bytes32_to_t_bytes32(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_bytes32_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // bytes32[] -> bytes32[]\n function abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_bytes32_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_bytes32_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_bytes32_to_t_bytes32(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_bytes32_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // bytes[] -> bytes[]\n function abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_uint256__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(value1, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value2, tail)\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 128))\n\n }\n\n // bytes[]\n function abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := mload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_bytes_memory_ptr_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // bytes[]\n function abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a(memPtr) {\n\n mstore(add(memPtr, 0), \"param data too short\")\n\n }\n\n function abi_encode_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 20)\n store_literal_in_memory_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_dbefb2482f8126b4642518459e79e2d4ae2f793dc482f41846265a2dadeb223a_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() {\n revert(0, 0)\n }\n\n function revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() {\n revert(0, 0)\n }\n\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut {\n if gt(startIndex, endIndex) { revert_error_7678404c0552a58cf14944d1a786cf4c81aab3563e2735cb332aee47bbb57c4a() }\n if gt(endIndex, length) { revert_error_46e3e63c93837e9efa638abb3b4e76ced8c11259a873f1381a0abdf6ae6a823c() }\n offsetOut := add(offset, mul(startIndex, 1))\n lengthOut := sub(endIndex, startIndex)\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_bytes_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function array_dataslot_t_bytes_calldata_ptr(ptr) -> data {\n data := ptr\n\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function convert_bytes_to_fixedbytes_from_t_bytes_calldata_ptr_to_t_bytes4(array, len) -> value {\n\n let length := array_length_t_bytes_calldata_ptr(array, len)\n let dataArea := array\n\n value := cleanup_t_bytes4(calldataload(dataArea))\n\n if lt(length, 4) {\n value := and(\n value,\n shift_left_dynamic(\n mul(8, sub(4, length)),\n 0xffffffff00000000000000000000000000000000000000000000000000000000\n )\n )\n }\n\n }\n\n function store_literal_in_memory_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92(memPtr) {\n\n mstore(add(memPtr, 0), \"invalid selector\")\n\n }\n\n function abi_encode_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 16)\n store_literal_in_memory_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_08c3a6be97f4652a768cb4743e456770198d688a966f5e7ebd882c354bc4dd92_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838(memPtr) {\n\n mstore(add(memPtr, 0), \"Not authorized to set target for\")\n\n mstore(add(memPtr, 32), \" this node\")\n\n }\n\n function abi_encode_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_f4aeefc8735062c722cad9987e3ad36df74e05a09a1025ec1f7deebed3f77838_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory_with_cleanup(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_bytes_calldata_ptr_t_address__to_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value0, value1, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value2, add(headStart, 32))\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function abi_decode_t_address_payable_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_bytes32__to_t_bytes32_t_bytes32__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n }\n\n function store_literal_in_memory_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c(memPtr) {\n\n mstore(add(memPtr, 0), \"Address: insufficient balance fo\")\n\n mstore(add(memPtr, 32), \"r call\")\n\n }\n\n function abi_encode_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n store_literal_in_memory_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n // string[]\n function abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let innerOffset := mload(src)\n if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let elementPos := add(offset, innerOffset)\n\n mstore(dst, abi_decode_t_string_memory_ptr_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // string[]\n function abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(value1, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_t_bytes4_to_t_bytes4_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes4(value))\n }\n\n function abi_encode_tuple_t_contract$_IEVMVerifier_$798_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_address_t_array$_t_bytes32_$dyn_memory_ptr_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed(headStart , value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 192)\n\n abi_encode_t_contract$_IEVMVerifier_$798_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes32_$dyn_memory_ptr_to_t_array$_t_bytes32_$dyn_memory_ptr_fromStack(value2, tail)\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack(value3, tail)\n\n abi_encode_t_bytes4_to_t_bytes4_fromStack(value4, add(headStart, 128))\n\n mstore(add(headStart, 160), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value5, tail)\n\n }\n\n function array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // string[] -> string[]\n function abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__to_t_address_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr_t_bytes4_t_bytes_memory_ptr__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value1, tail)\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n abi_encode_t_bytes4_to_t_bytes4_fromStack(value3, add(headStart, 96))\n\n mstore(add(headStart, 128), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value4, tail)\n\n }\n\n function store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad(memPtr) {\n\n mstore(add(memPtr, 0), \"Address: call to non-contract\")\n\n }\n\n function abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 29)\n store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n diff := sub(x, y)\n\n if gt(diff, x) { panic_error_0x11() }\n\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n let product_raw := mul(x, y)\n product := cleanup_t_uint256(product_raw)\n\n // overflow, if x != 0 and y != product/x\n if iszero(\n or(\n iszero(x),\n eq(y, div(product, x))\n )\n ) { panic_error_0x11() }\n\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "16343": [ + { + "length": 32, + "start": 1400 + }, + { + "length": 32, + "start": 3939 + } + ], + "16346": [ + { + "length": 32, + "start": 1436 + }, + { + "length": 32, + "start": 4030 + } + ], + "16349": [ + { + "length": 32, + "start": 2577 + }, + { + "length": 32, + "start": 4186 + }, + { + "length": 32, + "start": 4269 + } + ], + "16351": [ + { + "length": 32, + "start": 2913 + }, + { + "length": 32, + "start": 4484 + } + ], + "16353": [ + { + "length": 32, + "start": 3146 + }, + { + "length": 32, + "start": 3730 + } + ] + }, + "linkReferences": { + "contracts/LabelUtils.sol": { + "LabelUtils": [ + { + "length": 20, + "start": 1142 + }, + { + "length": 20, + "start": 1271 + } + ] + } + }, + "object": "608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639061b9231161008c578063d6ae3cd511610066578063d6ae3cd514610274578063f00eebf414610292578063f470901a146102c2578063f8256121146102f2576100ea565b80639061b9231461020a578063a8e5fbc01461023a578063d358df7714610258576100ea565b80632b7ac3f3116100c85780632b7ac3f3146101805780633f15457f1461019e5780635bdaa916146101bc5780636d74e86e146101ec576100ea565b806301ffc9a7146100ef57806315f643861461011f5780631a33ddae14610150575b600080fd5b61010960048036038101906101049190611994565b610310565b60405161011691906119dc565b60405180910390f35b61013960048036038101906101349190611b3d565b61045a565b604051610147929190611be0565b60405180910390f35b61016a60048036038101906101659190611c69565b610471565b6040516101779190611ccf565b60405180910390f35b610188610576565b6040516101959190611d49565b60405180910390f35b6101a661059a565b6040516101b39190611d85565b60405180910390f35b6101d660048036038101906101d19190611da0565b6105be565b6040516101e39190611ea0565b60405180910390f35b6101f4610778565b6040516102019190611ccf565b60405180910390f35b610224600480360381019061021f9190611da0565b610783565b6040516102319190611ea0565b60405180910390f35b610242610a0f565b60405161024f9190611ee3565b60405180910390f35b610272600480360381019061026d9190611f2a565b610a33565b005b61027c610b5f565b6040516102899190611ccf565b60405180910390f35b6102ac60048036038101906102a79190611f2a565b610b83565b6040516102b99190611ea0565b60405180910390f35b6102dc60048036038101906102d7919061206b565b610bea565b6040516102e99190611ea0565b60405180910390f35b6102fa610c48565b60405161030791906120e3565b60405180910390f35b60007f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103db57507f15f64386000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061044357507ff00eebf4000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610453575061045282610c6c565b5b9050919050565b600080610468836000610cd6565b91509150915091565b60008073__$9c99182377933a0292ee16286dad4ecc22$__6394bc2db685856040518363ffffffff1660e01b81526004016104ad92919061213c565b600060405180830381865af41580156104ca573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104f391906121d0565b905073__$9c99182377933a0292ee16286dad4ecc22$__6308dea91d826040518263ffffffff1660e01b815260040161052c9190612252565b602060405180830381865af4158015610549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056d91906122a0565b91505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600085858101906105d19190611b3d565b905060008060008060008089898101906105eb9190612438565b95509550955095509550955060008673ffffffffffffffffffffffffffffffffffffffff1663c51ca02a8787878c610621610778565b6040518663ffffffff1660e01b81526004016106419594939291906126e3565b600060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106879190612800565b905084518151146106d357805185516040517f291894250000000000000000000000000000000000000000000000000000000081526004016106ca929190612849565b60405180910390fd5b600061076e8483856040516024016106ec929190612872565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16610e3f90919063ffffffff16565b9050805160208201f35b600062015180905090565b606060048383905010156107cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c390612906565b60405180910390fd5b6000838360049080926107e193929190612930565b8101906107ee919061296b565b905060008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905080156108f7576108ee87878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610e8b565b92505050610a07565b600061094888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050600086869061095a91906129b0565b9050633b3b57de60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036109cc5760006109b48a8a610471565b90506109c08184610f38565b95505050505050610a07565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fe90612a5b565b60405180910390fd5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610a8284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061045a565b509050610a8e81610fb9565b610acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac490612aed565b60405180910390fd5b8160008083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8848484604051610b5193929190612b3a565b60405180910390a150505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000610bd685858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050610be281611182565b509392505050565b6060600083600081518110610c0257610c01612b6c565b5b6020026020010151806020019051810190610c1d9190612bb0565b905080604051602001610c3091906120e3565b60405160208183030381529060405291505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000806000610cee84866111e190919063ffffffff16565b60ff1690506000801b92506000811115610e26576000610d25600186610d149190612c0c565b838861120c9092919063ffffffff16565b9050610d488660018488610d399190612c0c565b610d439190612c0c565b610cd6565b80945081955050508381604051602001610d63929190612c61565b604051602081830303815290604052805190602001209350600073ffffffffffffffffffffffffffffffffffffffff1660008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e20578360008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050610e38565b50610e36565b6000801b60009250925050610e38565b505b9250929050565b6060610e83838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250611238565b905092915050565b60606000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1684604051610ed59190612cc9565b600060405180830381855afa9150503d8060008114610f10576040519150601f19603f3d011682016040523d82523d6000602084013e610f15565b606091505b50915091508115610f2a578092505050610f32565b805160208201fd5b92915050565b6060610fb363f470901a60e01b60405180602001604052806000815250610fa486610f966002610f887f00000000000000000000000000000000000000000000000000000000000000008a611305565b61141490919063ffffffff16565b6114f590919063ffffffff16565b6115769092919063ffffffff16565b92915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b81526004016110159190612ce0565b602060405180830381865afa158015611032573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110569190612d10565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361114b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b81526004016111079190611ccf565b602060405180830381865afa158015611124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111489190612d10565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614915050919050565b7f0000000000000000000000000000000000000000000000000000000000000000816040517fe0a050710000000000000000000000000000000000000000000000000000000081526004016111d8929190612d3d565b60405180910390fd5b60008282815181106111f6576111f5612b6c565b5b602001015160f81c60f81b60f81c905092915050565b60008351828461121c9190612c0c565b111561122757600080fd5b818360208601012090509392505050565b60608247101561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612dd8565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516112a69190612cc9565b60006040518083038185875af1925050503d80600081146112e3576040519150601f19603f3d011682016040523d82523d6000602084013e6112e8565b606091505b50915091506112f987838387611701565b92505050949350505050565b61130d6118cd565b6000602067ffffffffffffffff81111561132a57611329611a12565b5b6040519080825280602002602001820160405280156113585781602001602082028036833780820191505090505b5090506000602067ffffffffffffffff81111561137857611377611a12565b5b6040519080825280602002602001820160405280156113ab57816020015b60608152602001906001900390816113965790505b50905060008252600081526040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200160008152602001828152509250505092915050565b61141c6118cd565b60008360400151905060008151905060008111801561143f575060208560600151105b156114505761144f8560ff611776565b5b600181018252602085604001515111156114a25760206040517f128e70080000000000000000000000000000000000000000000000000000000081526004016114999190611ccf565b60405180910390fd5b60008560600181815250506114b8856000611776565b6114ea856114e587876040516020016114d19190611ccf565b60405160208183030381529060405261181d565b611776565b849250505092915050565b6114fd6118cd565b602083606001511061153b576040517fb00fd63800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156d8361156885856040516020016115549190611ccf565b60405160208183030381529060405261181d565b611776565b82905092915050565b600083604001515111801561158f575060208360600151105b156115a05761159f8360ff611776565b5b30836000015173ffffffffffffffffffffffffffffffffffffffff1663b50f2fbc6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156115f0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116199190612f7a565b84602001518560400151866080015160405160240161163a93929190612fc3565b60405160208183030381529060405263ea9cd3bf60e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050635bdaa91660e01b866000015187602001518860400151896080015189896040516020016116b296959493929190613017565b6040516020818303038152906040526040517f556f18300000000000000000000000000000000000000000000000000000000081526004016116f89594939291906131a4565b60405180910390fd5b6060831561176357600083510361175b5761171b8561185a565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190613258565b60405180910390fd5b5b82905061176e565b61176d838361187d565b5b949350505050565b6000600183604001515161178a9190613278565b905082606001805180919061179e906132ac565b81525060086117ad91906132f4565b8260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c836040015182815181106117ec576117eb612b6c565b5b6020026020010151178360400151828151811061180c5761180b612b6c565b5b602002602001018181525050505050565b600080836080015190508051915060018201815282818360ff168151811061184857611847612b6c565b5b60200260200101819052505092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156118905781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c4919061336f565b60405180910390fd5b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6119718161193c565b811461197c57600080fd5b50565b60008135905061198e81611968565b92915050565b6000602082840312156119aa576119a9611932565b5b60006119b88482850161197f565b91505092915050565b60008115159050919050565b6119d6816119c1565b82525050565b60006020820190506119f160008301846119cd565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a4a82611a01565b810181811067ffffffffffffffff82111715611a6957611a68611a12565b5b80604052505050565b6000611a7c611928565b9050611a888282611a41565b919050565b600067ffffffffffffffff821115611aa857611aa7611a12565b5b611ab182611a01565b9050602081019050919050565b82818337600083830152505050565b6000611ae0611adb84611a8d565b611a72565b905082815260208101848484011115611afc57611afb6119fc565b5b611b07848285611abe565b509392505050565b600082601f830112611b2457611b236119f7565b5b8135611b34848260208601611acd565b91505092915050565b600060208284031215611b5357611b52611932565b5b600082013567ffffffffffffffff811115611b7157611b70611937565b5b611b7d84828501611b0f565b91505092915050565b6000819050919050565b611b9981611b86565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bca82611b9f565b9050919050565b611bda81611bbf565b82525050565b6000604082019050611bf56000830185611b90565b611c026020830184611bd1565b9392505050565b600080fd5b600080fd5b60008083601f840112611c2957611c286119f7565b5b8235905067ffffffffffffffff811115611c4657611c45611c09565b5b602083019150836001820283011115611c6257611c61611c0e565b5b9250929050565b60008060208385031215611c8057611c7f611932565b5b600083013567ffffffffffffffff811115611c9e57611c9d611937565b5b611caa85828601611c13565b92509250509250929050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b6000819050919050565b6000611d0f611d0a611d0584611b9f565b611cea565b611b9f565b9050919050565b6000611d2182611cf4565b9050919050565b6000611d3382611d16565b9050919050565b611d4381611d28565b82525050565b6000602082019050611d5e6000830184611d3a565b92915050565b6000611d6f82611d16565b9050919050565b611d7f81611d64565b82525050565b6000602082019050611d9a6000830184611d76565b92915050565b60008060008060408587031215611dba57611db9611932565b5b600085013567ffffffffffffffff811115611dd857611dd7611937565b5b611de487828801611c13565b9450945050602085013567ffffffffffffffff811115611e0757611e06611937565b5b611e1387828801611c13565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e5b578082015181840152602081019050611e40565b60008484015250505050565b6000611e7282611e21565b611e7c8185611e2c565b9350611e8c818560208601611e3d565b611e9581611a01565b840191505092915050565b60006020820190508181036000830152611eba8184611e67565b905092915050565b6000611ecd82611d16565b9050919050565b611edd81611ec2565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b611f0781611bbf565b8114611f1257600080fd5b50565b600081359050611f2481611efe565b92915050565b600080600060408486031215611f4357611f42611932565b5b600084013567ffffffffffffffff811115611f6157611f60611937565b5b611f6d86828701611c13565b93509350506020611f8086828701611f15565b9150509250925092565b600067ffffffffffffffff821115611fa557611fa4611a12565b5b602082029050602081019050919050565b6000611fc9611fc484611f8a565b611a72565b90508083825260208201905060208402830185811115611fec57611feb611c0e565b5b835b8181101561203357803567ffffffffffffffff811115612011576120106119f7565b5b80860161201e8982611b0f565b85526020850194505050602081019050611fee565b5050509392505050565b600082601f830112612052576120516119f7565b5b8135612062848260208601611fb6565b91505092915050565b6000806040838503121561208257612081611932565b5b600083013567ffffffffffffffff8111156120a05761209f611937565b5b6120ac8582860161203d565b925050602083013567ffffffffffffffff8111156120cd576120cc611937565b5b6120d985828601611b0f565b9150509250929050565b60006020820190506120f86000830184611bd1565b92915050565b600082825260208201905092915050565b600061211b83856120fe565b9350612128838584611abe565b61213183611a01565b840190509392505050565b6000602082019050818103600083015261215781848661210f565b90509392505050565b600061217361216e84611a8d565b611a72565b90508281526020810184848401111561218f5761218e6119fc565b5b61219a848285611e3d565b509392505050565b600082601f8301126121b7576121b66119f7565b5b81516121c7848260208601612160565b91505092915050565b6000602082840312156121e6576121e5611932565b5b600082015167ffffffffffffffff81111561220457612203611937565b5b612210848285016121a2565b91505092915050565b600061222482611e21565b61222e81856120fe565b935061223e818560208601611e3d565b61224781611a01565b840191505092915050565b6000602082019050818103600083015261226c8184612219565b905092915050565b61227d81611cb6565b811461228857600080fd5b50565b60008151905061229a81612274565b92915050565b6000602082840312156122b6576122b5611932565b5b60006122c48482850161228b565b91505092915050565b60006122d882611bbf565b9050919050565b6122e8816122cd565b81146122f357600080fd5b50565b600081359050612305816122df565b92915050565b600061231682611b9f565b9050919050565b6123268161230b565b811461233157600080fd5b50565b6000813590506123438161231d565b92915050565b600067ffffffffffffffff82111561236457612363611a12565b5b602082029050602081019050919050565b61237e81611b86565b811461238957600080fd5b50565b60008135905061239b81612375565b92915050565b60006123b46123af84612349565b611a72565b905080838252602082019050602084028301858111156123d7576123d6611c0e565b5b835b8181101561240057806123ec888261238c565b8452602084019350506020810190506123d9565b5050509392505050565b600082601f83011261241f5761241e6119f7565b5b813561242f8482602086016123a1565b91505092915050565b60008060008060008060c0878903121561245557612454611932565b5b600061246389828a016122f6565b965050602061247489828a01612334565b955050604087013567ffffffffffffffff81111561249557612494611937565b5b6124a189828a0161240a565b945050606087013567ffffffffffffffff8111156124c2576124c1611937565b5b6124ce89828a0161203d565b93505060806124df89828a0161197f565b92505060a087013567ffffffffffffffff811115612500576124ff611937565b5b61250c89828a01611b0f565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61254e81611b86565b82525050565b60006125608383612545565b60208301905092915050565b6000602082019050919050565b600061258482612519565b61258e8185612524565b935061259983612535565b8060005b838110156125ca5781516125b18882612554565b97506125bc8361256c565b92505060018101905061259d565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061261f82611e21565b6126298185612603565b9350612639818560208601611e3d565b61264281611a01565b840191505092915050565b60006126598383612614565b905092915050565b6000602082019050919050565b6000612679826125d7565b61268381856125e2565b935083602082028501612695856125f3565b8060005b858110156126d157848403895281516126b2858261264d565b94506126bd83612661565b925060208a01995050600181019050612699565b50829750879550505050505092915050565b600060a0820190506126f86000830188611bd1565b818103602083015261270a8187612579565b9050818103604083015261271e818661266e565b905081810360608301526127328185611e67565b90506127416080830184611cc0565b9695505050505050565b600061275e61275984611f8a565b611a72565b9050808382526020820190506020840283018581111561278157612780611c0e565b5b835b818110156127c857805167ffffffffffffffff8111156127a6576127a56119f7565b5b8086016127b389826121a2565b85526020850194505050602081019050612783565b5050509392505050565b600082601f8301126127e7576127e66119f7565b5b81516127f784826020860161274b565b91505092915050565b60006020828403121561281657612815611932565b5b600082015167ffffffffffffffff81111561283457612833611937565b5b612840848285016127d2565b91505092915050565b600060408201905061285e6000830185611cc0565b61286b6020830184611cc0565b9392505050565b6000604082019050818103600083015261288c818561266e565b905081810360208301526128a08184611e67565b90509392505050565b600082825260208201905092915050565b7f706172616d206461746120746f6f2073686f7274000000000000000000000000600082015250565b60006128f06014836128a9565b91506128fb826128ba565b602082019050919050565b6000602082019050818103600083015261291f816128e3565b9050919050565b600080fd5b600080fd5b6000808585111561294457612943612926565b5b838611156129555761295461292b565b5b6001850283019150848603905094509492505050565b60006020828403121561298157612980611932565b5b600061298f8482850161238c565b91505092915050565b600082905092915050565b600082821b905092915050565b60006129bc8383612998565b826129c7813561193c565b92506004821015612a0757612a027fffffffff00000000000000000000000000000000000000000000000000000000836004036008026129a3565b831692505b505092915050565b7f696e76616c69642073656c6563746f7200000000000000000000000000000000600082015250565b6000612a456010836128a9565b9150612a5082612a0f565b602082019050919050565b60006020820190508181036000830152612a7481612a38565b9050919050565b7f4e6f7420617574686f72697a656420746f207365742074617267657420666f7260008201527f2074686973206e6f646500000000000000000000000000000000000000000000602082015250565b6000612ad7602a836128a9565b9150612ae282612a7b565b604082019050919050565b60006020820190508181036000830152612b0681612aca565b9050919050565b6000612b198385611e2c565b9350612b26838584611abe565b612b2f83611a01565b840190509392505050565b60006040820190508181036000830152612b55818587612b0d565b9050612b646020830184611bd1565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612baa8161231d565b92915050565b600060208284031215612bc657612bc5611932565b5b6000612bd484828501612b9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c1782611cb6565b9150612c2283611cb6565b9250828201905080821115612c3a57612c39612bdd565b5b92915050565b6000819050919050565b612c5b612c5682611b86565b612c40565b82525050565b6000612c6d8285612c4a565b602082019150612c7d8284612c4a565b6020820191508190509392505050565b600081905092915050565b6000612ca382611e21565b612cad8185612c8d565b9350612cbd818560208601611e3d565b80840191505092915050565b6000612cd58284612c98565b915081905092915050565b6000602082019050612cf56000830184611b90565b92915050565b600081519050612d0a81611efe565b92915050565b600060208284031215612d2657612d25611932565b5b6000612d3484828501612cfb565b91505092915050565b6000604082019050612d526000830185611cc0565b612d5f6020830184611bd1565b9392505050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612dc26026836128a9565b9150612dcd82612d66565b604082019050919050565b60006020820190508181036000830152612df181612db5565b9050919050565b600067ffffffffffffffff821115612e1357612e12611a12565b5b602082029050602081019050919050565b600067ffffffffffffffff821115612e3f57612e3e611a12565b5b612e4882611a01565b9050602081019050919050565b6000612e68612e6384612e24565b611a72565b905082815260208101848484011115612e8457612e836119fc565b5b612e8f848285611e3d565b509392505050565b600082601f830112612eac57612eab6119f7565b5b8151612ebc848260208601612e55565b91505092915050565b6000612ed8612ed384612df8565b611a72565b90508083825260208201905060208402830185811115612efb57612efa611c0e565b5b835b81811015612f4257805167ffffffffffffffff811115612f2057612f1f6119f7565b5b808601612f2d8982612e97565b85526020850194505050602081019050612efd565b5050509392505050565b600082601f830112612f6157612f606119f7565b5b8151612f71848260208601612ec5565b91505092915050565b600060208284031215612f9057612f8f611932565b5b600082015167ffffffffffffffff811115612fae57612fad611937565b5b612fba84828501612f4c565b91505092915050565b6000606082019050612fd86000830186611bd1565b8181036020830152612fea8185612579565b90508181036040830152612ffe818461266e565b9050949350505050565b6130118161193c565b82525050565b600060c08201905061302c6000830189611d3a565b6130396020830188611bd1565b818103604083015261304b8187612579565b9050818103606083015261305f818661266e565b905061306e6080830185613008565b81810360a08301526130808184611e67565b9050979650505050505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60006130e0826130b9565b6130ea81856130c4565b93506130fa818560208601611e3d565b61310381611a01565b840191505092915050565b600061311a83836130d5565b905092915050565b6000602082019050919050565b600061313a8261308d565b6131448185613098565b935083602082028501613156856130a9565b8060005b858110156131925784840389528151613173858261310e565b945061317e83613122565b925060208a0199505060018101905061315a565b50829750879550505050505092915050565b600060a0820190506131b96000830188611bd1565b81810360208301526131cb818761312f565b905081810360408301526131df8186611e67565b90506131ee6060830185613008565b81810360808301526132008184611e67565b90509695505050505050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613242601d836128a9565b915061324d8261320c565b602082019050919050565b6000602082019050818103600083015261327181613235565b9050919050565b600061328382611cb6565b915061328e83611cb6565b92508282039050818111156132a6576132a5612bdd565b5b92915050565b60006132b782611cb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132e9576132e8612bdd565b5b600182019050919050565b60006132ff82611cb6565b915061330a83611cb6565b925082820261331881611cb6565b9150828204841483151761332f5761332e612bdd565b5b5092915050565b6000613341826130b9565b61334b81856128a9565b935061335b818560208601611e3d565b61336481611a01565b840191505092915050565b600060208201905081810360008301526133898184613336565b90509291505056fea26469706673582212205bb3f0bfa04cb3562838e41dbf668e48d8b109ef17a588380510fd0153dba59364736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xEA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9061B923 GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xD6AE3CD5 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xD6AE3CD5 EQ PUSH2 0x274 JUMPI DUP1 PUSH4 0xF00EEBF4 EQ PUSH2 0x292 JUMPI DUP1 PUSH4 0xF470901A EQ PUSH2 0x2C2 JUMPI DUP1 PUSH4 0xF8256121 EQ PUSH2 0x2F2 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x9061B923 EQ PUSH2 0x20A JUMPI DUP1 PUSH4 0xA8E5FBC0 EQ PUSH2 0x23A JUMPI DUP1 PUSH4 0xD358DF77 EQ PUSH2 0x258 JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x2B7AC3F3 GT PUSH2 0xC8 JUMPI DUP1 PUSH4 0x2B7AC3F3 EQ PUSH2 0x180 JUMPI DUP1 PUSH4 0x3F15457F EQ PUSH2 0x19E JUMPI DUP1 PUSH4 0x5BDAA916 EQ PUSH2 0x1BC JUMPI DUP1 PUSH4 0x6D74E86E EQ PUSH2 0x1EC JUMPI PUSH2 0xEA JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0xEF JUMPI DUP1 PUSH4 0x15F64386 EQ PUSH2 0x11F JUMPI DUP1 PUSH4 0x1A33DDAE EQ PUSH2 0x150 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x109 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x104 SWAP2 SWAP1 PUSH2 0x1994 JUMP JUMPDEST PUSH2 0x310 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x116 SWAP2 SWAP1 PUSH2 0x19DC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x139 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x134 SWAP2 SWAP1 PUSH2 0x1B3D JUMP JUMPDEST PUSH2 0x45A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x147 SWAP3 SWAP2 SWAP1 PUSH2 0x1BE0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x16A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x165 SWAP2 SWAP1 PUSH2 0x1C69 JUMP JUMPDEST PUSH2 0x471 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x177 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH2 0x576 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x195 SWAP2 SWAP1 PUSH2 0x1D49 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1A6 PUSH2 0x59A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP2 SWAP1 PUSH2 0x1D85 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D1 SWAP2 SWAP1 PUSH2 0x1DA0 JUMP JUMPDEST PUSH2 0x5BE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E3 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F4 PUSH2 0x778 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x201 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x224 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x21F SWAP2 SWAP1 PUSH2 0x1DA0 JUMP JUMPDEST PUSH2 0x783 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x231 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x242 PUSH2 0xA0F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x24F SWAP2 SWAP1 PUSH2 0x1EE3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x272 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26D SWAP2 SWAP1 PUSH2 0x1F2A JUMP JUMPDEST PUSH2 0xA33 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x27C PUSH2 0xB5F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x289 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2AC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A7 SWAP2 SWAP1 PUSH2 0x1F2A JUMP JUMPDEST PUSH2 0xB83 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x206B JUMP JUMPDEST PUSH2 0xBEA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E9 SWAP2 SWAP1 PUSH2 0x1EA0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FA PUSH2 0xC48 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x307 SWAP2 SWAP1 PUSH2 0x20E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH32 0x9061B92300000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ DUP1 PUSH2 0x3DB JUMPI POP PUSH32 0x15F6438600000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x443 JUMPI POP PUSH32 0xF00EEBF400000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ JUMPDEST DUP1 PUSH2 0x453 JUMPI POP PUSH2 0x452 DUP3 PUSH2 0xC6C JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x468 DUP4 PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP SWAP2 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x0 PUSH4 0x94BC2DB6 DUP6 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4AD SWAP3 SWAP2 SWAP1 PUSH2 0x213C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x4CA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4F3 SWAP2 SWAP1 PUSH2 0x21D0 JUMP JUMPDEST SWAP1 POP PUSH20 0x0 PUSH4 0x8DEA91D DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x52C SWAP2 SWAP1 PUSH2 0x2252 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x549 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x22A0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP6 DUP6 DUP2 ADD SWAP1 PUSH2 0x5D1 SWAP2 SWAP1 PUSH2 0x1B3D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 DUP10 DUP10 DUP2 ADD SWAP1 PUSH2 0x5EB SWAP2 SWAP1 PUSH2 0x2438 JUMP JUMPDEST SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP SWAP6 POP PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC51CA02A DUP8 DUP8 DUP8 DUP13 PUSH2 0x621 PUSH2 0x778 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x641 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x26E3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x65E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x687 SWAP2 SWAP1 PUSH2 0x2800 JUMP JUMPDEST SWAP1 POP DUP5 MLOAD DUP2 MLOAD EQ PUSH2 0x6D3 JUMPI DUP1 MLOAD DUP6 MLOAD PUSH1 0x40 MLOAD PUSH32 0x2918942500000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6CA SWAP3 SWAP2 SWAP1 PUSH2 0x2849 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x76E DUP5 DUP4 DUP6 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x6EC SWAP3 SWAP2 SWAP1 PUSH2 0x2872 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xE3F SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP1 MLOAD PUSH1 0x20 DUP3 ADD RETURN JUMPDEST PUSH1 0x0 PUSH3 0x15180 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP4 DUP4 SWAP1 POP LT ISZERO PUSH2 0x7CC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7C3 SWAP1 PUSH2 0x2906 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x4 SWAP1 DUP1 SWAP3 PUSH2 0x7E1 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2930 JUMP JUMPDEST DUP2 ADD SWAP1 PUSH2 0x7EE SWAP2 SWAP1 PUSH2 0x296B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP DUP1 ISZERO PUSH2 0x8F7 JUMPI PUSH2 0x8EE DUP8 DUP8 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP DUP7 DUP7 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0xE8B JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0xA07 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x948 DUP9 DUP9 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x0 DUP7 DUP7 SWAP1 PUSH2 0x95A SWAP2 SWAP1 PUSH2 0x29B0 JUMP JUMPDEST SWAP1 POP PUSH4 0x3B3B57DE PUSH1 0xE0 SHL PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SUB PUSH2 0x9CC JUMPI PUSH1 0x0 PUSH2 0x9B4 DUP11 DUP11 PUSH2 0x471 JUMP JUMPDEST SWAP1 POP PUSH2 0x9C0 DUP2 DUP5 PUSH2 0xF38 JUMP JUMPDEST SWAP6 POP POP POP POP POP POP PUSH2 0xA07 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9FE SWAP1 PUSH2 0x2A5B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA82 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x45A JUMP JUMPDEST POP SWAP1 POP PUSH2 0xA8E DUP2 PUSH2 0xFB9 JUMP JUMPDEST PUSH2 0xACD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAC4 SWAP1 PUSH2 0x2AED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH32 0x88781081CC340609705AF0F96BF3BA64EA267873444E91725BD072F2AF0F44D8 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH2 0xB51 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2B3A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0xBD6 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH1 0x0 PUSH2 0xCD6 JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE2 DUP2 PUSH2 0x1182 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC02 JUMPI PUSH2 0xC01 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0xC1D SWAP2 SWAP1 PUSH2 0x2BB0 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC30 SWAP2 SWAP1 PUSH2 0x20E3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x1FFC9A700000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP3 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xCEE DUP5 DUP7 PUSH2 0x11E1 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH1 0x0 DUP1 SHL SWAP3 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0xE26 JUMPI PUSH1 0x0 PUSH2 0xD25 PUSH1 0x1 DUP7 PUSH2 0xD14 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST DUP4 DUP9 PUSH2 0x120C SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0xD48 DUP7 PUSH1 0x1 DUP5 DUP9 PUSH2 0xD39 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST PUSH2 0xD43 SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST PUSH2 0xCD6 JUMP JUMPDEST DUP1 SWAP5 POP DUP2 SWAP6 POP POP POP DUP4 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD63 SWAP3 SWAP2 SWAP1 PUSH2 0x2C61 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP4 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xE20 JUMPI DUP4 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP4 POP SWAP4 POP POP POP PUSH2 0xE38 JUMP JUMPDEST POP PUSH2 0xE36 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL PUSH1 0x0 SWAP3 POP SWAP3 POP POP PUSH2 0xE38 JUMP JUMPDEST POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xE83 DUP4 DUP4 PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1E DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x416464726573733A206C6F772D6C6576656C2063616C6C206661696C65640000 DUP2 MSTORE POP PUSH2 0x1238 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x40 MLOAD PUSH2 0xED5 SWAP2 SWAP1 PUSH2 0x2CC9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xF10 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xF15 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 ISZERO PUSH2 0xF2A JUMPI DUP1 SWAP3 POP POP POP PUSH2 0xF32 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP3 ADD REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xFB3 PUSH4 0xF470901A PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH2 0xFA4 DUP7 PUSH2 0xF96 PUSH1 0x2 PUSH2 0xF88 PUSH32 0x0 DUP11 PUSH2 0x1305 JUMP JUMPDEST PUSH2 0x1414 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0x14F5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0x1576 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x2571BE3 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1015 SWAP2 SWAP1 PUSH2 0x2CE0 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1032 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1056 SWAP2 SWAP1 PUSH2 0x2D10 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x114B JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6352211E DUP5 PUSH1 0x0 SHR PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1107 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1124 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1148 SWAP2 SWAP1 PUSH2 0x2D10 JUMP JUMPDEST SWAP1 POP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 PUSH1 0x40 MLOAD PUSH32 0xE0A0507100000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11D8 SWAP3 SWAP2 SWAP1 PUSH2 0x2D3D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x11F6 JUMPI PUSH2 0x11F5 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL PUSH1 0xF8 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 MLOAD DUP3 DUP5 PUSH2 0x121C SWAP2 SWAP1 PUSH2 0x2C0C JUMP JUMPDEST GT ISZERO PUSH2 0x1227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 PUSH1 0x20 DUP7 ADD ADD KECCAK256 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP3 SELFBALANCE LT ISZERO PUSH2 0x127D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1274 SWAP1 PUSH2 0x2DD8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP8 PUSH1 0x40 MLOAD PUSH2 0x12A6 SWAP2 SWAP1 PUSH2 0x2CC9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x12E3 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x12E8 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x12F9 DUP8 DUP4 DUP4 DUP8 PUSH2 0x1701 JUMP JUMPDEST SWAP3 POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x130D PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x132A JUMPI PUSH2 0x1329 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1358 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 PUSH1 0x20 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1378 JUMPI PUSH2 0x1377 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13AB JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x1396 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP3 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x141C PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x40 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x143F JUMPI POP PUSH1 0x20 DUP6 PUSH1 0x60 ADD MLOAD LT JUMPDEST ISZERO PUSH2 0x1450 JUMPI PUSH2 0x144F DUP6 PUSH1 0xFF PUSH2 0x1776 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP2 ADD DUP3 MSTORE PUSH1 0x20 DUP6 PUSH1 0x40 ADD MLOAD MLOAD GT ISZERO PUSH2 0x14A2 JUMPI PUSH1 0x20 PUSH1 0x40 MLOAD PUSH32 0x128E700800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1499 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x60 ADD DUP2 DUP2 MSTORE POP POP PUSH2 0x14B8 DUP6 PUSH1 0x0 PUSH2 0x1776 JUMP JUMPDEST PUSH2 0x14EA DUP6 PUSH2 0x14E5 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x14D1 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x181D JUMP JUMPDEST PUSH2 0x1776 JUMP JUMPDEST DUP5 SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x14FD PUSH2 0x18CD JUMP JUMPDEST PUSH1 0x20 DUP4 PUSH1 0x60 ADD MLOAD LT PUSH2 0x153B JUMPI PUSH1 0x40 MLOAD PUSH32 0xB00FD63800000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x156D DUP4 PUSH2 0x1568 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1554 SWAP2 SWAP1 PUSH2 0x1CCF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x181D JUMP JUMPDEST PUSH2 0x1776 JUMP JUMPDEST DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP4 PUSH1 0x40 ADD MLOAD MLOAD GT DUP1 ISZERO PUSH2 0x158F JUMPI POP PUSH1 0x20 DUP4 PUSH1 0x60 ADD MLOAD LT JUMPDEST ISZERO PUSH2 0x15A0 JUMPI PUSH2 0x159F DUP4 PUSH1 0xFF PUSH2 0x1776 JUMP JUMPDEST JUMPDEST ADDRESS DUP4 PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB50F2FBC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x15F0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1619 SWAP2 SWAP1 PUSH2 0x2F7A JUMP JUMPDEST DUP5 PUSH1 0x20 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD DUP7 PUSH1 0x80 ADD MLOAD PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x163A SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2FC3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH4 0xEA9CD3BF PUSH1 0xE0 SHL PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH4 0x5BDAA916 PUSH1 0xE0 SHL DUP7 PUSH1 0x0 ADD MLOAD DUP8 PUSH1 0x20 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD DUP10 PUSH1 0x80 ADD MLOAD DUP10 DUP10 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x16B2 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3017 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD PUSH32 0x556F183000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16F8 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x31A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ISZERO PUSH2 0x1763 JUMPI PUSH1 0x0 DUP4 MLOAD SUB PUSH2 0x175B JUMPI PUSH2 0x171B DUP6 PUSH2 0x185A JUMP JUMPDEST PUSH2 0x175A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1751 SWAP1 PUSH2 0x3258 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST DUP3 SWAP1 POP PUSH2 0x176E JUMP JUMPDEST PUSH2 0x176D DUP4 DUP4 PUSH2 0x187D JUMP JUMPDEST JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP4 PUSH1 0x40 ADD MLOAD MLOAD PUSH2 0x178A SWAP2 SWAP1 PUSH2 0x3278 JUMP JUMPDEST SWAP1 POP DUP3 PUSH1 0x60 ADD DUP1 MLOAD DUP1 SWAP2 SWAP1 PUSH2 0x179E SWAP1 PUSH2 0x32AC JUMP JUMPDEST DUP2 MSTORE POP PUSH1 0x8 PUSH2 0x17AD SWAP2 SWAP1 PUSH2 0x32F4 JUMP JUMPDEST DUP3 PUSH1 0xF8 SHL PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 SHR DUP4 PUSH1 0x40 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x17EC JUMPI PUSH2 0x17EB PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD OR DUP4 PUSH1 0x40 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x180C JUMPI PUSH2 0x180B PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x80 ADD MLOAD SWAP1 POP DUP1 MLOAD SWAP2 POP PUSH1 0x1 DUP3 ADD DUP2 MSTORE DUP3 DUP2 DUP4 PUSH1 0xFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1848 JUMPI PUSH2 0x1847 PUSH2 0x2B6C JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD GT ISZERO PUSH2 0x1890 JUMPI DUP2 MLOAD DUP1 DUP4 PUSH1 0x20 ADD REVERT JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x18C4 SWAP2 SWAP1 PUSH2 0x336F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1971 DUP2 PUSH2 0x193C JUMP JUMPDEST DUP2 EQ PUSH2 0x197C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x198E DUP2 PUSH2 0x1968 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x19AA JUMPI PUSH2 0x19A9 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x19B8 DUP5 DUP3 DUP6 ADD PUSH2 0x197F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19D6 DUP2 PUSH2 0x19C1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19F1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19CD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x1A4A DUP3 PUSH2 0x1A01 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1A69 JUMPI PUSH2 0x1A68 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A7C PUSH2 0x1928 JUMP JUMPDEST SWAP1 POP PUSH2 0x1A88 DUP3 DUP3 PUSH2 0x1A41 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1AA8 JUMPI PUSH2 0x1AA7 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH2 0x1AB1 DUP3 PUSH2 0x1A01 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AE0 PUSH2 0x1ADB DUP5 PUSH2 0x1A8D JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AFC JUMPI PUSH2 0x1AFB PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x1B07 DUP5 DUP3 DUP6 PUSH2 0x1ABE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B24 JUMPI PUSH2 0x1B23 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B34 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1ACD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B53 JUMPI PUSH2 0x1B52 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1B71 JUMPI PUSH2 0x1B70 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1B7D DUP5 DUP3 DUP6 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1B99 DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BCA DUP3 PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1BDA DUP2 PUSH2 0x1BBF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1BF5 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1B90 JUMP JUMPDEST PUSH2 0x1C02 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x1C29 JUMPI PUSH2 0x1C28 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C46 JUMPI PUSH2 0x1C45 PUSH2 0x1C09 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x1C62 JUMPI PUSH2 0x1C61 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C80 JUMPI PUSH2 0x1C7F PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C9E JUMPI PUSH2 0x1C9D PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1CAA DUP6 DUP3 DUP7 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CC9 DUP2 PUSH2 0x1CB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1CE4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D0F PUSH2 0x1D0A PUSH2 0x1D05 DUP5 PUSH2 0x1B9F JUMP JUMPDEST PUSH2 0x1CEA JUMP JUMPDEST PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D21 DUP3 PUSH2 0x1CF4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D33 DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1D43 DUP2 PUSH2 0x1D28 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1D5E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1D3A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D6F DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1D7F DUP2 PUSH2 0x1D64 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1D9A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1D76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x1DBA JUMPI PUSH2 0x1DB9 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DD8 JUMPI PUSH2 0x1DD7 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1DE4 DUP8 DUP3 DUP9 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E07 JUMPI PUSH2 0x1E06 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1E13 DUP8 DUP3 DUP9 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E5B JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E40 JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E72 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x1E7C DUP2 DUP6 PUSH2 0x1E2C JUMP JUMPDEST SWAP4 POP PUSH2 0x1E8C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x1E95 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1EBA DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ECD DUP3 PUSH2 0x1D16 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1EDD DUP2 PUSH2 0x1EC2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1EF8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1ED4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1F07 DUP2 PUSH2 0x1BBF JUMP JUMPDEST DUP2 EQ PUSH2 0x1F12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1F24 DUP2 PUSH2 0x1EFE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1F43 JUMPI PUSH2 0x1F42 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1F61 JUMPI PUSH2 0x1F60 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x1F6D DUP7 DUP3 DUP8 ADD PUSH2 0x1C13 JUMP JUMPDEST SWAP4 POP SWAP4 POP POP PUSH1 0x20 PUSH2 0x1F80 DUP7 DUP3 DUP8 ADD PUSH2 0x1F15 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1FA5 JUMPI PUSH2 0x1FA4 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FC9 PUSH2 0x1FC4 DUP5 PUSH2 0x1F8A JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x1FEC JUMPI PUSH2 0x1FEB PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2033 JUMPI DUP1 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2011 JUMPI PUSH2 0x2010 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x201E DUP10 DUP3 PUSH2 0x1B0F JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1FEE JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2052 JUMPI PUSH2 0x2051 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x2062 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FB6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2082 JUMPI PUSH2 0x2081 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20A0 JUMPI PUSH2 0x209F PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x20AC DUP6 DUP3 DUP7 ADD PUSH2 0x203D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20CD JUMPI PUSH2 0x20CC PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x20D9 DUP6 DUP3 DUP7 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x211B DUP4 DUP6 PUSH2 0x20FE JUMP JUMPDEST SWAP4 POP PUSH2 0x2128 DUP4 DUP6 DUP5 PUSH2 0x1ABE JUMP JUMPDEST PUSH2 0x2131 DUP4 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2157 DUP2 DUP5 DUP7 PUSH2 0x210F JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2173 PUSH2 0x216E DUP5 PUSH2 0x1A8D JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x218F JUMPI PUSH2 0x218E PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x219A DUP5 DUP3 DUP6 PUSH2 0x1E3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21B7 JUMPI PUSH2 0x21B6 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x21C7 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2160 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21E6 JUMPI PUSH2 0x21E5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2204 JUMPI PUSH2 0x2203 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2210 DUP5 DUP3 DUP6 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2224 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x222E DUP2 DUP6 PUSH2 0x20FE JUMP JUMPDEST SWAP4 POP PUSH2 0x223E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x2247 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x226C DUP2 DUP5 PUSH2 0x2219 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x227D DUP2 PUSH2 0x1CB6 JUMP JUMPDEST DUP2 EQ PUSH2 0x2288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x229A DUP2 PUSH2 0x2274 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x22B6 JUMPI PUSH2 0x22B5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22C4 DUP5 DUP3 DUP6 ADD PUSH2 0x228B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22D8 DUP3 PUSH2 0x1BBF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x22E8 DUP2 PUSH2 0x22CD JUMP JUMPDEST DUP2 EQ PUSH2 0x22F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2305 DUP2 PUSH2 0x22DF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2316 DUP3 PUSH2 0x1B9F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2326 DUP2 PUSH2 0x230B JUMP JUMPDEST DUP2 EQ PUSH2 0x2331 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2343 DUP2 PUSH2 0x231D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2364 JUMPI PUSH2 0x2363 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x237E DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP2 EQ PUSH2 0x2389 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x239B DUP2 PUSH2 0x2375 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B4 PUSH2 0x23AF DUP5 PUSH2 0x2349 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x23D7 JUMPI PUSH2 0x23D6 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2400 JUMPI DUP1 PUSH2 0x23EC DUP9 DUP3 PUSH2 0x238C JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x23D9 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x241F JUMPI PUSH2 0x241E PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x242F DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x23A1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x2455 JUMPI PUSH2 0x2454 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2463 DUP10 DUP3 DUP11 ADD PUSH2 0x22F6 JUMP JUMPDEST SWAP7 POP POP PUSH1 0x20 PUSH2 0x2474 DUP10 DUP3 DUP11 ADD PUSH2 0x2334 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x40 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2495 JUMPI PUSH2 0x2494 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x24A1 DUP10 DUP3 DUP11 ADD PUSH2 0x240A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x60 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x24C2 JUMPI PUSH2 0x24C1 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x24CE DUP10 DUP3 DUP11 ADD PUSH2 0x203D JUMP JUMPDEST SWAP4 POP POP PUSH1 0x80 PUSH2 0x24DF DUP10 DUP3 DUP11 ADD PUSH2 0x197F JUMP JUMPDEST SWAP3 POP POP PUSH1 0xA0 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2500 JUMPI PUSH2 0x24FF PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x250C DUP10 DUP3 DUP11 ADD PUSH2 0x1B0F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 POP SWAP3 SWAP6 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x254E DUP2 PUSH2 0x1B86 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2560 DUP4 DUP4 PUSH2 0x2545 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2584 DUP3 PUSH2 0x2519 JUMP JUMPDEST PUSH2 0x258E DUP2 DUP6 PUSH2 0x2524 JUMP JUMPDEST SWAP4 POP PUSH2 0x2599 DUP4 PUSH2 0x2535 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x25CA JUMPI DUP2 MLOAD PUSH2 0x25B1 DUP9 DUP3 PUSH2 0x2554 JUMP JUMPDEST SWAP8 POP PUSH2 0x25BC DUP4 PUSH2 0x256C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x259D JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x261F DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x2629 DUP2 DUP6 PUSH2 0x2603 JUMP JUMPDEST SWAP4 POP PUSH2 0x2639 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x2642 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2659 DUP4 DUP4 PUSH2 0x2614 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2679 DUP3 PUSH2 0x25D7 JUMP JUMPDEST PUSH2 0x2683 DUP2 DUP6 PUSH2 0x25E2 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2695 DUP6 PUSH2 0x25F3 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x26D1 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x26B2 DUP6 DUP3 PUSH2 0x264D JUMP JUMPDEST SWAP5 POP PUSH2 0x26BD DUP4 PUSH2 0x2661 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2699 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x26F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x270A DUP2 DUP8 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x271E DUP2 DUP7 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x2732 DUP2 DUP6 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP PUSH2 0x2741 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x275E PUSH2 0x2759 DUP5 PUSH2 0x1F8A JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2781 JUMPI PUSH2 0x2780 PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x27C8 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x27A6 JUMPI PUSH2 0x27A5 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x27B3 DUP10 DUP3 PUSH2 0x21A2 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2783 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x27E7 JUMPI PUSH2 0x27E6 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x27F7 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x274B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2816 JUMPI PUSH2 0x2815 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2834 JUMPI PUSH2 0x2833 PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2840 DUP5 DUP3 DUP6 ADD PUSH2 0x27D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x285E PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1CC0 JUMP JUMPDEST PUSH2 0x286B PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1CC0 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x288C DUP2 DUP6 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x28A0 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x706172616D206461746120746F6F2073686F7274000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28F0 PUSH1 0x14 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x28FB DUP3 PUSH2 0x28BA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x291F DUP2 PUSH2 0x28E3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x2944 JUMPI PUSH2 0x2943 PUSH2 0x2926 JUMP JUMPDEST JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x2955 JUMPI PUSH2 0x2954 PUSH2 0x292B JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 MUL DUP4 ADD SWAP2 POP DUP5 DUP7 SUB SWAP1 POP SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2981 JUMPI PUSH2 0x2980 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x298F DUP5 DUP3 DUP6 ADD PUSH2 0x238C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29BC DUP4 DUP4 PUSH2 0x2998 JUMP JUMPDEST DUP3 PUSH2 0x29C7 DUP2 CALLDATALOAD PUSH2 0x193C JUMP JUMPDEST SWAP3 POP PUSH1 0x4 DUP3 LT ISZERO PUSH2 0x2A07 JUMPI PUSH2 0x2A02 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 PUSH1 0x4 SUB PUSH1 0x8 MUL PUSH2 0x29A3 JUMP JUMPDEST DUP4 AND SWAP3 POP JUMPDEST POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x696E76616C69642073656C6563746F7200000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A45 PUSH1 0x10 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A50 DUP3 PUSH2 0x2A0F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A74 DUP2 PUSH2 0x2A38 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420617574686F72697A656420746F207365742074617267657420666F72 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2074686973206E6F646500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD7 PUSH1 0x2A DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2AE2 DUP3 PUSH2 0x2A7B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B06 DUP2 PUSH2 0x2ACA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B19 DUP4 DUP6 PUSH2 0x1E2C JUMP JUMPDEST SWAP4 POP PUSH2 0x2B26 DUP4 DUP6 DUP5 PUSH2 0x1ABE JUMP JUMPDEST PUSH2 0x2B2F DUP4 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B55 DUP2 DUP6 DUP8 PUSH2 0x2B0D JUMP JUMPDEST SWAP1 POP PUSH2 0x2B64 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2BAA DUP2 PUSH2 0x231D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BC6 JUMPI PUSH2 0x2BC5 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BD4 DUP5 DUP3 DUP6 ADD PUSH2 0x2B9B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2C17 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C22 DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2C3A JUMPI PUSH2 0x2C39 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2C5B PUSH2 0x2C56 DUP3 PUSH2 0x1B86 JUMP JUMPDEST PUSH2 0x2C40 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C6D DUP3 DUP6 PUSH2 0x2C4A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2C7D DUP3 DUP5 PUSH2 0x2C4A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CA3 DUP3 PUSH2 0x1E21 JUMP JUMPDEST PUSH2 0x2CAD DUP2 DUP6 PUSH2 0x2C8D JUMP JUMPDEST SWAP4 POP PUSH2 0x2CBD DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CD5 DUP3 DUP5 PUSH2 0x2C98 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2CF5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B90 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2D0A DUP2 PUSH2 0x1EFE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D26 JUMPI PUSH2 0x2D25 PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D34 DUP5 DUP3 DUP6 ADD PUSH2 0x2CFB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2D52 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1CC0 JUMP JUMPDEST PUSH2 0x2D5F PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1BD1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH32 0x416464726573733A20696E73756666696369656E742062616C616E636520666F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x722063616C6C0000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DC2 PUSH1 0x26 DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2DCD DUP3 PUSH2 0x2D66 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2DF1 DUP2 PUSH2 0x2DB5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2E13 JUMPI PUSH2 0x2E12 PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2E3F JUMPI PUSH2 0x2E3E PUSH2 0x1A12 JUMP JUMPDEST JUMPDEST PUSH2 0x2E48 DUP3 PUSH2 0x1A01 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E68 PUSH2 0x2E63 DUP5 PUSH2 0x2E24 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2E84 JUMPI PUSH2 0x2E83 PUSH2 0x19FC JUMP JUMPDEST JUMPDEST PUSH2 0x2E8F DUP5 DUP3 DUP6 PUSH2 0x1E3D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2EAC JUMPI PUSH2 0x2EAB PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2EBC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2E55 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2ED8 PUSH2 0x2ED3 DUP5 PUSH2 0x2DF8 JUMP JUMPDEST PUSH2 0x1A72 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x2EFB JUMPI PUSH2 0x2EFA PUSH2 0x1C0E JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2F42 JUMPI DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2F20 JUMPI PUSH2 0x2F1F PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x2F2D DUP10 DUP3 PUSH2 0x2E97 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2EFD JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2F61 JUMPI PUSH2 0x2F60 PUSH2 0x19F7 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2F71 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2EC5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2F90 JUMPI PUSH2 0x2F8F PUSH2 0x1932 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2FAE JUMPI PUSH2 0x2FAD PUSH2 0x1937 JUMP JUMPDEST JUMPDEST PUSH2 0x2FBA DUP5 DUP3 DUP6 ADD PUSH2 0x2F4C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2FD8 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x2FEA DUP2 DUP6 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2FFE DUP2 DUP5 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH2 0x3011 DUP2 PUSH2 0x193C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0x302C PUSH1 0x0 DUP4 ADD DUP10 PUSH2 0x1D3A JUMP JUMPDEST PUSH2 0x3039 PUSH1 0x20 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x304B DUP2 DUP8 PUSH2 0x2579 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x60 DUP4 ADD MSTORE PUSH2 0x305F DUP2 DUP7 PUSH2 0x266E JUMP JUMPDEST SWAP1 POP PUSH2 0x306E PUSH1 0x80 DUP4 ADD DUP6 PUSH2 0x3008 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x3080 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30E0 DUP3 PUSH2 0x30B9 JUMP JUMPDEST PUSH2 0x30EA DUP2 DUP6 PUSH2 0x30C4 JUMP JUMPDEST SWAP4 POP PUSH2 0x30FA DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x3103 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x311A DUP4 DUP4 PUSH2 0x30D5 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x313A DUP3 PUSH2 0x308D JUMP JUMPDEST PUSH2 0x3144 DUP2 DUP6 PUSH2 0x3098 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x3156 DUP6 PUSH2 0x30A9 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x3192 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x3173 DUP6 DUP3 PUSH2 0x310E JUMP JUMPDEST SWAP5 POP PUSH2 0x317E DUP4 PUSH2 0x3122 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x315A JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x31B9 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x1BD1 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x31CB DUP2 DUP8 PUSH2 0x312F JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x31DF DUP2 DUP7 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP PUSH2 0x31EE PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x3008 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x3200 DUP2 DUP5 PUSH2 0x1E67 JUMP JUMPDEST SWAP1 POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x416464726573733A2063616C6C20746F206E6F6E2D636F6E7472616374000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3242 PUSH1 0x1D DUP4 PUSH2 0x28A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x324D DUP3 PUSH2 0x320C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3271 DUP2 PUSH2 0x3235 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3283 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x328E DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x32A6 JUMPI PUSH2 0x32A5 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32B7 DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x32E9 JUMPI PUSH2 0x32E8 PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32FF DUP3 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP PUSH2 0x330A DUP4 PUSH2 0x1CB6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x3318 DUP2 PUSH2 0x1CB6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x332F JUMPI PUSH2 0x332E PUSH2 0x2BDD JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3341 DUP3 PUSH2 0x30B9 JUMP JUMPDEST PUSH2 0x334B DUP2 DUP6 PUSH2 0x28A9 JUMP JUMPDEST SWAP4 POP PUSH2 0x335B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1E3D JUMP JUMPDEST PUSH2 0x3364 DUP2 PUSH2 0x1A01 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3389 DUP2 DUP5 PUSH2 0x3336 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 JUMPDEST 0xB3 CREATE 0xBF LOG0 0x4C 0xB3 JUMP 0x28 CODESIZE 0xE4 SAR 0xBF PUSH7 0x8E48D8B109EF17 0xA5 DUP9 CODESIZE SDIV LT REVERT ADD MSTORE8 0xDB 0xA5 SWAP4 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ", + "sourceMap": "1084:8097:70:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8699:359;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4424:146;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6468:210;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1291:38;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1335:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;620:1099:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3520:170:70;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5496:833;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1365:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3866:303;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1412:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6889:208;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8478:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1533:39;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8699:359;8790:4;8840:35;8825:50;;;:11;:50;;;;:114;;;;8906:33;8891:48;;;:11;:48;;;;8825:114;:174;;;;8970:29;8955:44;;;:11;:44;;;;8825:174;:226;;;;9015:36;9039:11;9015:23;:36::i;:::-;8825:226;8806:245;;8699:359;;;:::o;4424:146::-;4497:12;4511:14;4544:19;4555:4;4561:1;4544:10;:19::i;:::-;4537:26;;;;4424:146;;;:::o;6468:210::-;6532:7;6551:23;6577:10;:28;6606:4;;6577:34;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6551:60;;6628:10;:31;6660:10;6628:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6621:50;;;6468:210;;;;:::o;1291:38::-;;;:::o;1335:24::-;;;:::o;620:1099:0:-;744:12;768:18;800:8;;789:29;;;;;;;:::i;:::-;768:50;;842:21;877:12;903:25;942:24;980:15;1009:25;1075:9;;1047:127;;;;;;;:::i;:::-;828:346;;;;;;;;;;;;1185:21;1209:8;:25;;;1248:4;1266:8;1288:9;1311:5;1330:31;:29;:31::i;:::-;1209:162;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1185:186;;1403:8;:15;1386:6;:13;:32;1382:124;;1464:6;:13;1479:8;:15;1441:54;;;;;;;;;;;;:::i;:::-;;;;;;;;1382:124;1515:16;1534:104;1597:8;1607:6;1615:12;1574:54;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1542:4;1534:26;;;;:104;;;;:::i;:::-;1515:123;;1698:3;1692:10;1687:2;1682:3;1678:12;1671:32;3520:170:70;3623:7;1790:5;3646:37;;3520:170;:::o;5496:833::-;5600:19;5654:1;5639:4;;:11;;:16;;5631:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;5691:12;5717:4;;5722:1;5717:8;;;;;;;;;:::i;:::-;5706:31;;;;;;;:::i;:::-;5691:46;;5747:17;5792:1;5767:27;;:7;:13;5775:4;5767:13;;;;;;;;;;;;;;;;;;;;;:27;;;;5747:47;;5884:12;5880:70;;;5919:20;5928:4;;5919:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5934:4;;5919:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:8;:20::i;:::-;5912:27;;;;;;5880:70;5963:14;5981:19;5992:4;;5981:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5998:1;5981:10;:19::i;:::-;5960:40;;;6011:15;6036:4;;6029:12;;;;;:::i;:::-;6011:30;;6068:27;;;6056:39;;;:8;:39;;;;6052:183;;6149:13;6165:18;6178:4;;6165:12;:18::i;:::-;6149:34;;6204:20;6210:5;6217:6;6204:5;:20::i;:::-;6197:27;;;;;;;;;6052:183;6296:26;;;;;;;;;;:::i;:::-;;;;;;;;5496:833;;;;;;;:::o;1365:41::-;;;:::o;3866:303::-;3942:12;3960:15;3970:4;;3960:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;:15::i;:::-;3941:34;;;4006:18;4019:4;4006:12;:18::i;:::-;3985:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;4118:6;4102:7;:13;4110:4;4102:13;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;4139:23;4149:4;;4155:6;4139:23;;;;;;;;:::i;:::-;;;;;;;;3931:238;3866:303;;;:::o;1412:34::-;;;:::o;6889:208::-;6987:19;7021:14;7039:19;7050:4;;7039:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7056:1;7039:10;:19::i;:::-;7018:40;;;7068:22;7083:6;7068:14;:22::i;:::-;7008:89;6889:208;;;;;:::o;8478:215::-;8582:12;8606;8632:6;8639:1;8632:9;;;;;;;;:::i;:::-;;;;;;;;8621:32;;;;;;;;;;;;:::i;:::-;8606:47;;8681:4;8670:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;8663:23;;;8478:215;;;;:::o;1533:39::-;;;:::o;829:155:62:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;4576:626:70:-;4675:12;4689:14;4715:11;4729:22;4744:6;4729:4;:14;;:22;;;;:::i;:::-;4715:36;;;;4776:1;4768:10;;4761:17;;4798:1;4792:3;:7;4788:377;;;4815:13;4831:28;4852:1;4843:6;:10;;;;:::i;:::-;4855:3;4831:4;:11;;:28;;;;;:::i;:::-;4815:44;;4890:34;4901:4;4922:1;4916:3;4907:6;:12;;;;:::i;:::-;:16;;;;:::i;:::-;4890:10;:34::i;:::-;4873:51;;;;;;;;4972:4;4978:5;4955:29;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4945:40;;;;;;4938:47;;5028:1;5003:27;;:7;:13;5011:4;5003:13;;;;;;;;;;;;;;;;;;;;;:27;;;4999:94;;5058:4;5064:7;:13;5072:4;5064:13;;;;;;;;;;;;;;;;;;;;;5050:28;;;;;;;;4999:94;4801:302;4788:377;;;5139:1;5131:10;;5151:1;5123:31;;;;;;;4788:377;5174:21;4576:626;;;;;;:::o;3701:185:59:-;3776:12;3807:72;3829:6;3837:4;3843:1;3807:72;;;;;;;;;;;;;;;;;:21;:72::i;:::-;3800:79;;3701:185;;;;:::o;7725:426:70:-;7821:12;7846;7860:19;7883:14;:25;;7909:4;7883:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7845:69;;;;7928:7;7924:221;;;7958:6;7951:13;;;;;;7924:221;8113:6;8107:13;8100:4;8092:6;8088:17;8081:40;7725:426;;;;;:::o;8157:315::-;8249:12;8273:174;8416:26;;;8273:174;;;;;;;;;;;;:123;8388:7;8273:93;1650:1;8273:57;8313:8;8323:6;8273:39;:57::i;:::-;:80;;:93;;;;:::i;:::-;:114;;:123;;;;:::i;:::-;:142;;:174;;;;;:::i;:::-;8157:315;;;;:::o;1852:260::-;1911:4;1927:13;1943:3;:9;;;1953:4;1943:15;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1927:31;;1989:11;1972:29;;:5;:29;;;1968:102;;2025:11;:19;;;2053:4;2045:13;;2025:34;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2017:42;;1968:102;2095:10;2086:19;;:5;:19;;;2079:26;;;1852:260;;;:::o;9064:115::-;9154:9;9165:6;9135:37;;;;;;;;;;;;:::i;:::-;;;;;;;;7616:147:41;7712:9;7746:4;7751:3;7746:9;;;;;;;;:::i;:::-;;;;;;;;;;7740:16;;7733:23;;7616:147;;;;:::o;409:274::-;526:11;573:4;:11;566:3;557:6;:12;;;;:::i;:::-;:27;;549:36;;;;;;663:3;654:6;649:2;643:4;639:13;635:26;625:42;618:49;;409:274;;;;;:::o;5165:446:59:-;5330:12;5387:5;5362:21;:30;;5354:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;5446:12;5460:23;5487:6;:11;;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;:::-;5528:76;;;;5165:446;;;;;;:::o;1825:469:1:-;1934:22;;:::i;:::-;1968:25;796:2;1996:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1968:55;;2033:24;837:2;2060:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2033:53;;2136:1;2126:8;2119:19;2202:1;2191:9;2184:20;2230:57;;;;;;;;2246:8;2230:57;;;;;;2256:6;2230:57;;;;;;2264:8;2230:57;;;;2274:1;2230:57;;;;2277:9;2230:57;;;2223:64;;;;1825:469;;;;:::o;2744:796::-;2858:22;;:::i;:::-;2892:25;2920:7;:16;;;2892:44;;2946:18;2967:8;:15;2946:36;;3009:1;2996:10;:14;:43;;;;;3037:2;3014:7;:20;;;:25;2996:43;2992:146;;;3097:30;3111:7;555:4;3097:13;:30::i;:::-;2992:146;3203:1;3191:10;3187:18;3177:8;3170:36;796:2;3263:7;:16;;;:23;:38;3259:105;;;796:2;3324:29;;;;;;;;;;;:::i;:::-;;;;;;;;3259:105;3396:1;3373:7;:20;;:24;;;;;3407:25;3421:7;3430:1;3407:13;:25::i;:::-;3442:67;3456:7;3465:43;3478:7;3498:8;3487:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;3465:12;:43::i;:::-;3442:13;:67::i;:::-;3526:7;3519:14;;;;2744:796;;;;:::o;4975:321::-;5081:22;;:::i;:::-;5143:2;5119:7;:20;;;:26;5115:80;;5168:16;;;;;;;;;;;;;;5115:80;5204:61;5218:7;5227:37;5240:7;5260:2;5249:14;;;;;;;;:::i;:::-;;;;;;;;;;;;;5227:12;:37::i;:::-;5204:13;:61::i;:::-;5282:7;5275:14;;4975:321;;;;:::o;8650:871::-;8827:1;8801:7;:16;;;:23;:27;:56;;;;;8855:2;8832:7;:20;;;:25;8801:56;8797:155;;;8911:30;8925:7;555:4;8911:13;:30::i;:::-;8797:155;9005:4;9024:7;:16;;;:28;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9146:7;:14;;;9162:7;:16;;;9180:7;:17;;;9068:144;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9226:47;;;9315:7;:16;;;9349:7;:14;;;9381:7;:16;;;9415:7;:17;;;9450:10;9478:12;9287:217;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;8969:545;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;7671:628:59;7851:12;7879:7;7875:418;;;7927:1;7906:10;:17;:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;7902:286;8208:10;8201:17;;;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;;:::o;9901:314:1:-;10011:18;10058:1;10032:7;:16;;;:23;:27;;;;:::i;:::-;10011:48;;10184:7;:20;;:22;;;;;;;;:::i;:::-;;;;10180:1;:26;;;;:::i;:::-;10171:2;10164:10;;10156:19;;;:51;;10112:7;:16;;;10129:10;10112:28;;;;;;;;:::i;:::-;;;;;;;;:96;10069:7;:16;;;10086:10;10069:28;;;;;;;;:::i;:::-;;;;;;;:139;;;;;10001:214;9901:314;;:::o;9527:368::-;9645:9;9666:24;9693:7;:17;;;9666:44;;9732:9;:16;9720:29;;9809:1;9804:3;9800:11;9789:9;9782:30;9883:5;9866:9;9876:3;9866:14;;;;;;;;;;:::i;:::-;;;;;;;:22;;;;9656:239;9527:368;;;;:::o;1412:320:59:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;8821:540::-;9000:1;8980:10;:17;:21;8976:379;;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:75:74:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:117::-;1627:1;1624;1617:12;1641:117;1750:1;1747;1740:12;1764:102;1805:6;1856:2;1852:7;1847:2;1840:5;1836:14;1832:28;1822:38;;1764:102;;;:::o;1872:180::-;1920:77;1917:1;1910:88;2017:4;2014:1;2007:15;2041:4;2038:1;2031:15;2058:281;2141:27;2163:4;2141:27;:::i;:::-;2133:6;2129:40;2271:6;2259:10;2256:22;2235:18;2223:10;2220:34;2217:62;2214:88;;;2282:18;;:::i;:::-;2214:88;2322:10;2318:2;2311:22;2101:238;2058:281;;:::o;2345:129::-;2379:6;2406:20;;:::i;:::-;2396:30;;2435:33;2463:4;2455:6;2435:33;:::i;:::-;2345:129;;;:::o;2480:307::-;2541:4;2631:18;2623:6;2620:30;2617:56;;;2653:18;;:::i;:::-;2617:56;2691:29;2713:6;2691:29;:::i;:::-;2683:37;;2775:4;2769;2765:15;2757:23;;2480:307;;;:::o;2793:148::-;2891:6;2886:3;2881;2868:30;2932:1;2923:6;2918:3;2914:16;2907:27;2793:148;;;:::o;2947:423::-;3024:5;3049:65;3065:48;3106:6;3065:48;:::i;:::-;3049:65;:::i;:::-;3040:74;;3137:6;3130:5;3123:21;3175:4;3168:5;3164:16;3213:3;3204:6;3199:3;3195:16;3192:25;3189:112;;;3220:79;;:::i;:::-;3189:112;3310:54;3357:6;3352:3;3347;3310:54;:::i;:::-;3030:340;2947:423;;;;;:::o;3389:338::-;3444:5;3493:3;3486:4;3478:6;3474:17;3470:27;3460:122;;3501:79;;:::i;:::-;3460:122;3618:6;3605:20;3643:78;3717:3;3709:6;3702:4;3694:6;3690:17;3643:78;:::i;:::-;3634:87;;3450:277;3389:338;;;;:::o;3733:507::-;3801:6;3850:2;3838:9;3829:7;3825:23;3821:32;3818:119;;;3856:79;;:::i;:::-;3818:119;4004:1;3993:9;3989:17;3976:31;4034:18;4026:6;4023:30;4020:117;;;4056:79;;:::i;:::-;4020:117;4161:62;4215:7;4206:6;4195:9;4191:22;4161:62;:::i;:::-;4151:72;;3947:286;3733:507;;;;:::o;4246:77::-;4283:7;4312:5;4301:16;;4246:77;;;:::o;4329:118::-;4416:24;4434:5;4416:24;:::i;:::-;4411:3;4404:37;4329:118;;:::o;4453:126::-;4490:7;4530:42;4523:5;4519:54;4508:65;;4453:126;;;:::o;4585:96::-;4622:7;4651:24;4669:5;4651:24;:::i;:::-;4640:35;;4585:96;;;:::o;4687:118::-;4774:24;4792:5;4774:24;:::i;:::-;4769:3;4762:37;4687:118;;:::o;4811:332::-;4932:4;4970:2;4959:9;4955:18;4947:26;;4983:71;5051:1;5040:9;5036:17;5027:6;4983:71;:::i;:::-;5064:72;5132:2;5121:9;5117:18;5108:6;5064:72;:::i;:::-;4811:332;;;;;:::o;5149:117::-;5258:1;5255;5248:12;5272:117;5381:1;5378;5371:12;5408:552;5465:8;5475:6;5525:3;5518:4;5510:6;5506:17;5502:27;5492:122;;5533:79;;:::i;:::-;5492:122;5646:6;5633:20;5623:30;;5676:18;5668:6;5665:30;5662:117;;;5698:79;;:::i;:::-;5662:117;5812:4;5804:6;5800:17;5788:29;;5866:3;5858:4;5850:6;5846:17;5836:8;5832:32;5829:41;5826:128;;;5873:79;;:::i;:::-;5826:128;5408:552;;;;;:::o;5966:527::-;6036:6;6044;6093:2;6081:9;6072:7;6068:23;6064:32;6061:119;;;6099:79;;:::i;:::-;6061:119;6247:1;6236:9;6232:17;6219:31;6277:18;6269:6;6266:30;6263:117;;;6299:79;;:::i;:::-;6263:117;6412:64;6468:7;6459:6;6448:9;6444:22;6412:64;:::i;:::-;6394:82;;;;6190:296;5966:527;;;;;:::o;6499:77::-;6536:7;6565:5;6554:16;;6499:77;;;:::o;6582:118::-;6669:24;6687:5;6669:24;:::i;:::-;6664:3;6657:37;6582:118;;:::o;6706:222::-;6799:4;6837:2;6826:9;6822:18;6814:26;;6850:71;6918:1;6907:9;6903:17;6894:6;6850:71;:::i;:::-;6706:222;;;;:::o;6934:60::-;6962:3;6983:5;6976:12;;6934:60;;;:::o;7000:142::-;7050:9;7083:53;7101:34;7110:24;7128:5;7110:24;:::i;:::-;7101:34;:::i;:::-;7083:53;:::i;:::-;7070:66;;7000:142;;;:::o;7148:126::-;7198:9;7231:37;7262:5;7231:37;:::i;:::-;7218:50;;7148:126;;;:::o;7280:146::-;7350:9;7383:37;7414:5;7383:37;:::i;:::-;7370:50;;7280:146;;;:::o;7432:171::-;7539:57;7590:5;7539:57;:::i;:::-;7534:3;7527:70;7432:171;;:::o;7609:262::-;7722:4;7760:2;7749:9;7745:18;7737:26;;7773:91;7861:1;7850:9;7846:17;7837:6;7773:91;:::i;:::-;7609:262;;;;:::o;7877:138::-;7939:9;7972:37;8003:5;7972:37;:::i;:::-;7959:50;;7877:138;;;:::o;8021:155::-;8120:49;8163:5;8120:49;:::i;:::-;8115:3;8108:62;8021:155;;:::o;8182:246::-;8287:4;8325:2;8314:9;8310:18;8302:26;;8338:83;8418:1;8407:9;8403:17;8394:6;8338:83;:::i;:::-;8182:246;;;;:::o;8434:870::-;8524:6;8532;8540;8548;8597:2;8585:9;8576:7;8572:23;8568:32;8565:119;;;8603:79;;:::i;:::-;8565:119;8751:1;8740:9;8736:17;8723:31;8781:18;8773:6;8770:30;8767:117;;;8803:79;;:::i;:::-;8767:117;8916:64;8972:7;8963:6;8952:9;8948:22;8916:64;:::i;:::-;8898:82;;;;8694:296;9057:2;9046:9;9042:18;9029:32;9088:18;9080:6;9077:30;9074:117;;;9110:79;;:::i;:::-;9074:117;9223:64;9279:7;9270:6;9259:9;9255:22;9223:64;:::i;:::-;9205:82;;;;9000:297;8434:870;;;;;;;:::o;9310:98::-;9361:6;9395:5;9389:12;9379:22;;9310:98;;;:::o;9414:168::-;9497:11;9531:6;9526:3;9519:19;9571:4;9566:3;9562:14;9547:29;;9414:168;;;;:::o;9588:248::-;9670:1;9680:113;9694:6;9691:1;9688:13;9680:113;;;9779:1;9774:3;9770:11;9764:18;9760:1;9755:3;9751:11;9744:39;9716:2;9713:1;9709:10;9704:15;;9680:113;;;9827:1;9818:6;9813:3;9809:16;9802:27;9650:186;9588:248;;;:::o;9842:373::-;9928:3;9956:38;9988:5;9956:38;:::i;:::-;10010:70;10073:6;10068:3;10010:70;:::i;:::-;10003:77;;10089:65;10147:6;10142:3;10135:4;10128:5;10124:16;10089:65;:::i;:::-;10179:29;10201:6;10179:29;:::i;:::-;10174:3;10170:39;10163:46;;9932:283;9842:373;;;;:::o;10221:309::-;10332:4;10370:2;10359:9;10355:18;10347:26;;10419:9;10413:4;10409:20;10405:1;10394:9;10390:17;10383:47;10447:76;10518:4;10509:6;10447:76;:::i;:::-;10439:84;;10221:309;;;;:::o;10536:148::-;10608:9;10641:37;10672:5;10641:37;:::i;:::-;10628:50;;10536:148;;;:::o;10690:175::-;10799:59;10852:5;10799:59;:::i;:::-;10794:3;10787:72;10690:175;;:::o;10871:266::-;10986:4;11024:2;11013:9;11009:18;11001:26;;11037:93;11127:1;11116:9;11112:17;11103:6;11037:93;:::i;:::-;10871:266;;;;:::o;11143:122::-;11216:24;11234:5;11216:24;:::i;:::-;11209:5;11206:35;11196:63;;11255:1;11252;11245:12;11196:63;11143:122;:::o;11271:139::-;11317:5;11355:6;11342:20;11333:29;;11371:33;11398:5;11371:33;:::i;:::-;11271:139;;;;:::o;11416:672::-;11495:6;11503;11511;11560:2;11548:9;11539:7;11535:23;11531:32;11528:119;;;11566:79;;:::i;:::-;11528:119;11714:1;11703:9;11699:17;11686:31;11744:18;11736:6;11733:30;11730:117;;;11766:79;;:::i;:::-;11730:117;11879:64;11935:7;11926:6;11915:9;11911:22;11879:64;:::i;:::-;11861:82;;;;11657:296;11992:2;12018:53;12063:7;12054:6;12043:9;12039:22;12018:53;:::i;:::-;12008:63;;11963:118;11416:672;;;;;:::o;12094:320::-;12180:4;12270:18;12262:6;12259:30;12256:56;;;12292:18;;:::i;:::-;12256:56;12342:4;12334:6;12330:17;12322:25;;12402:4;12396;12392:15;12384:23;;12094:320;;;:::o;12435:942::-;12540:5;12565:90;12581:73;12647:6;12581:73;:::i;:::-;12565:90;:::i;:::-;12556:99;;12675:5;12704:6;12697:5;12690:21;12738:4;12731:5;12727:16;12720:23;;12791:4;12783:6;12779:17;12771:6;12767:30;12820:3;12812:6;12809:15;12806:122;;;12839:79;;:::i;:::-;12806:122;12954:6;12937:434;12971:6;12966:3;12963:15;12937:434;;;13060:3;13047:17;13096:18;13083:11;13080:35;13077:122;;;13118:79;;:::i;:::-;13077:122;13242:11;13234:6;13230:24;13280:46;13322:3;13310:10;13280:46;:::i;:::-;13275:3;13268:59;13356:4;13351:3;13347:14;13340:21;;13013:358;;12997:4;12992:3;12988:14;12981:21;;12937:434;;;12941:21;12546:831;;12435:942;;;;;:::o;13398:388::-;13478:5;13527:3;13520:4;13512:6;13508:17;13504:27;13494:122;;13535:79;;:::i;:::-;13494:122;13652:6;13639:20;13677:103;13776:3;13768:6;13761:4;13753:6;13749:17;13677:103;:::i;:::-;13668:112;;13484:302;13398:388;;;;:::o;13792:880::-;13903:6;13911;13960:2;13948:9;13939:7;13935:23;13931:32;13928:119;;;13966:79;;:::i;:::-;13928:119;14114:1;14103:9;14099:17;14086:31;14144:18;14136:6;14133:30;14130:117;;;14166:79;;:::i;:::-;14130:117;14271:87;14350:7;14341:6;14330:9;14326:22;14271:87;:::i;:::-;14261:97;;14057:311;14435:2;14424:9;14420:18;14407:32;14466:18;14458:6;14455:30;14452:117;;;14488:79;;:::i;:::-;14452:117;14593:62;14647:7;14638:6;14627:9;14623:22;14593:62;:::i;:::-;14583:72;;14378:287;13792:880;;;;;:::o;14678:222::-;14771:4;14809:2;14798:9;14794:18;14786:26;;14822:71;14890:1;14879:9;14875:17;14866:6;14822:71;:::i;:::-;14678:222;;;;:::o;14906:176::-;14997:11;15031:6;15026:3;15019:19;15071:4;15066:3;15062:14;15047:29;;14906:176;;;;:::o;15110:330::-;15214:3;15235:78;15306:6;15301:3;15235:78;:::i;:::-;15228:85;;15323:56;15372:6;15367:3;15360:5;15323:56;:::i;:::-;15404:29;15426:6;15404:29;:::i;:::-;15399:3;15395:39;15388:46;;15110:330;;;;;:::o;15446:345::-;15575:4;15613:2;15602:9;15598:18;15590:26;;15662:9;15656:4;15652:20;15648:1;15637:9;15633:17;15626:47;15690:94;15779:4;15770:6;15762;15690:94;:::i;:::-;15682:102;;15446:345;;;;;:::o;15797:432::-;15885:5;15910:65;15926:48;15967:6;15926:48;:::i;:::-;15910:65;:::i;:::-;15901:74;;15998:6;15991:5;15984:21;16036:4;16029:5;16025:16;16074:3;16065:6;16060:3;16056:16;16053:25;16050:112;;;16081:79;;:::i;:::-;16050:112;16171:52;16216:6;16211:3;16206;16171:52;:::i;:::-;15891:338;15797:432;;;;;:::o;16248:353::-;16314:5;16363:3;16356:4;16348:6;16344:17;16340:27;16330:122;;16371:79;;:::i;:::-;16330:122;16481:6;16475:13;16506:89;16591:3;16583:6;16576:4;16568:6;16564:17;16506:89;:::i;:::-;16497:98;;16320:281;16248:353;;;;:::o;16607:522::-;16686:6;16735:2;16723:9;16714:7;16710:23;16706:32;16703:119;;;16741:79;;:::i;:::-;16703:119;16882:1;16871:9;16867:17;16861:24;16912:18;16904:6;16901:30;16898:117;;;16934:79;;:::i;:::-;16898:117;17039:73;17104:7;17095:6;17084:9;17080:22;17039:73;:::i;:::-;17029:83;;16832:290;16607:522;;;;:::o;17135:389::-;17229:3;17257:38;17289:5;17257:38;:::i;:::-;17311:78;17382:6;17377:3;17311:78;:::i;:::-;17304:85;;17398:65;17456:6;17451:3;17444:4;17437:5;17433:16;17398:65;:::i;:::-;17488:29;17510:6;17488:29;:::i;:::-;17483:3;17479:39;17472:46;;17233:291;17135:389;;;;:::o;17530:325::-;17649:4;17687:2;17676:9;17672:18;17664:26;;17736:9;17730:4;17726:20;17722:1;17711:9;17707:17;17700:47;17764:84;17843:4;17834:6;17764:84;:::i;:::-;17756:92;;17530:325;;;;:::o;17861:122::-;17934:24;17952:5;17934:24;:::i;:::-;17927:5;17924:35;17914:63;;17973:1;17970;17963:12;17914:63;17861:122;:::o;17989:143::-;18046:5;18077:6;18071:13;18062:22;;18093:33;18120:5;18093:33;:::i;:::-;17989:143;;;;:::o;18138:351::-;18208:6;18257:2;18245:9;18236:7;18232:23;18228:32;18225:119;;;18263:79;;:::i;:::-;18225:119;18383:1;18408:64;18464:7;18455:6;18444:9;18440:22;18408:64;:::i;:::-;18398:74;;18354:128;18138:351;;;;:::o;18495:116::-;18552:7;18581:24;18599:5;18581:24;:::i;:::-;18570:35;;18495:116;;;:::o;18617:162::-;18710:44;18748:5;18710:44;:::i;:::-;18703:5;18700:55;18690:83;;18769:1;18766;18759:12;18690:83;18617:162;:::o;18785:179::-;18851:5;18889:6;18876:20;18867:29;;18905:53;18952:5;18905:53;:::i;:::-;18785:179;;;;:::o;18970:104::-;19015:7;19044:24;19062:5;19044:24;:::i;:::-;19033:35;;18970:104;;;:::o;19080:138::-;19161:32;19187:5;19161:32;:::i;:::-;19154:5;19151:43;19141:71;;19208:1;19205;19198:12;19141:71;19080:138;:::o;19224:155::-;19278:5;19316:6;19303:20;19294:29;;19332:41;19367:5;19332:41;:::i;:::-;19224:155;;;;:::o;19385:311::-;19462:4;19552:18;19544:6;19541:30;19538:56;;;19574:18;;:::i;:::-;19538:56;19624:4;19616:6;19612:17;19604:25;;19684:4;19678;19674:15;19666:23;;19385:311;;;:::o;19702:122::-;19775:24;19793:5;19775:24;:::i;:::-;19768:5;19765:35;19755:63;;19814:1;19811;19804:12;19755:63;19702:122;:::o;19830:139::-;19876:5;19914:6;19901:20;19892:29;;19930:33;19957:5;19930:33;:::i;:::-;19830:139;;;;:::o;19992:710::-;20088:5;20113:81;20129:64;20186:6;20129:64;:::i;:::-;20113:81;:::i;:::-;20104:90;;20214:5;20243:6;20236:5;20229:21;20277:4;20270:5;20266:16;20259:23;;20330:4;20322:6;20318:17;20310:6;20306:30;20359:3;20351:6;20348:15;20345:122;;;20378:79;;:::i;:::-;20345:122;20493:6;20476:220;20510:6;20505:3;20502:15;20476:220;;;20585:3;20614:37;20647:3;20635:10;20614:37;:::i;:::-;20609:3;20602:50;20681:4;20676:3;20672:14;20665:21;;20552:144;20536:4;20531:3;20527:14;20520:21;;20476:220;;;20480:21;20094:608;;19992:710;;;;;:::o;20725:370::-;20796:5;20845:3;20838:4;20830:6;20826:17;20822:27;20812:122;;20853:79;;:::i;:::-;20812:122;20970:6;20957:20;20995:94;21085:3;21077:6;21070:4;21062:6;21058:17;20995:94;:::i;:::-;20986:103;;20802:293;20725:370;;;;:::o;21101:1727::-;21300:6;21308;21316;21324;21332;21340;21389:3;21377:9;21368:7;21364:23;21360:33;21357:120;;;21396:79;;:::i;:::-;21357:120;21516:1;21541:73;21606:7;21597:6;21586:9;21582:22;21541:73;:::i;:::-;21531:83;;21487:137;21663:2;21689:61;21742:7;21733:6;21722:9;21718:22;21689:61;:::i;:::-;21679:71;;21634:126;21827:2;21816:9;21812:18;21799:32;21858:18;21850:6;21847:30;21844:117;;;21880:79;;:::i;:::-;21844:117;21985:78;22055:7;22046:6;22035:9;22031:22;21985:78;:::i;:::-;21975:88;;21770:303;22140:2;22129:9;22125:18;22112:32;22171:18;22163:6;22160:30;22157:117;;;22193:79;;:::i;:::-;22157:117;22298:87;22377:7;22368:6;22357:9;22353:22;22298:87;:::i;:::-;22288:97;;22083:312;22434:3;22461:52;22505:7;22496:6;22485:9;22481:22;22461:52;:::i;:::-;22451:62;;22405:118;22590:3;22579:9;22575:19;22562:33;22622:18;22614:6;22611:30;22608:117;;;22644:79;;:::i;:::-;22608:117;22749:62;22803:7;22794:6;22783:9;22779:22;22749:62;:::i;:::-;22739:72;;22533:288;21101:1727;;;;;;;;:::o;22834:114::-;22901:6;22935:5;22929:12;22919:22;;22834:114;;;:::o;22954:184::-;23053:11;23087:6;23082:3;23075:19;23127:4;23122:3;23118:14;23103:29;;22954:184;;;;:::o;23144:132::-;23211:4;23234:3;23226:11;;23264:4;23259:3;23255:14;23247:22;;23144:132;;;:::o;23282:108::-;23359:24;23377:5;23359:24;:::i;:::-;23354:3;23347:37;23282:108;;:::o;23396:179::-;23465:10;23486:46;23528:3;23520:6;23486:46;:::i;:::-;23564:4;23559:3;23555:14;23541:28;;23396:179;;;;:::o;23581:113::-;23651:4;23683;23678:3;23674:14;23666:22;;23581:113;;;:::o;23730:732::-;23849:3;23878:54;23926:5;23878:54;:::i;:::-;23948:86;24027:6;24022:3;23948:86;:::i;:::-;23941:93;;24058:56;24108:5;24058:56;:::i;:::-;24137:7;24168:1;24153:284;24178:6;24175:1;24172:13;24153:284;;;24254:6;24248:13;24281:63;24340:3;24325:13;24281:63;:::i;:::-;24274:70;;24367:60;24420:6;24367:60;:::i;:::-;24357:70;;24213:224;24200:1;24197;24193:9;24188:14;;24153:284;;;24157:14;24453:3;24446:10;;23854:608;;;23730:732;;;;:::o;24468:123::-;24544:6;24578:5;24572:12;24562:22;;24468:123;;;:::o;24597:193::-;24705:11;24739:6;24734:3;24727:19;24779:4;24774:3;24770:14;24755:29;;24597:193;;;;:::o;24796:141::-;24872:4;24895:3;24887:11;;24925:4;24920:3;24916:14;24908:22;;24796:141;;;:::o;24943:158::-;25016:11;25050:6;25045:3;25038:19;25090:4;25085:3;25081:14;25066:29;;24943:158;;;;:::o;25107:353::-;25183:3;25211:38;25243:5;25211:38;:::i;:::-;25265:60;25318:6;25313:3;25265:60;:::i;:::-;25258:67;;25334:65;25392:6;25387:3;25380:4;25373:5;25369:16;25334:65;:::i;:::-;25424:29;25446:6;25424:29;:::i;:::-;25419:3;25415:39;25408:46;;25187:273;25107:353;;;;:::o;25466:192::-;25553:10;25588:64;25648:3;25640:6;25588:64;:::i;:::-;25574:78;;25466:192;;;;:::o;25664:122::-;25743:4;25775;25770:3;25766:14;25758:22;;25664:122;;;:::o;25818:983::-;25955:3;25984:63;26041:5;25984:63;:::i;:::-;26063:95;26151:6;26146:3;26063:95;:::i;:::-;26056:102;;26184:3;26229:4;26221:6;26217:17;26212:3;26208:27;26259:65;26318:5;26259:65;:::i;:::-;26347:7;26378:1;26363:393;26388:6;26385:1;26382:13;26363:393;;;26459:9;26453:4;26449:20;26444:3;26437:33;26510:6;26504:13;26538:82;26615:4;26600:13;26538:82;:::i;:::-;26530:90;;26643:69;26705:6;26643:69;:::i;:::-;26633:79;;26741:4;26736:3;26732:14;26725:21;;26423:333;26410:1;26407;26403:9;26398:14;;26363:393;;;26367:14;26772:4;26765:11;;26792:3;26785:10;;25960:841;;;;;25818:983;;;;:::o;26807:1089::-;27148:4;27186:3;27175:9;27171:19;27163:27;;27200:71;27268:1;27257:9;27253:17;27244:6;27200:71;:::i;:::-;27318:9;27312:4;27308:20;27303:2;27292:9;27288:18;27281:48;27346:108;27449:4;27440:6;27346:108;:::i;:::-;27338:116;;27501:9;27495:4;27491:20;27486:2;27475:9;27471:18;27464:48;27529:126;27650:4;27641:6;27529:126;:::i;:::-;27521:134;;27702:9;27696:4;27692:20;27687:2;27676:9;27672:18;27665:48;27730:76;27801:4;27792:6;27730:76;:::i;:::-;27722:84;;27816:73;27884:3;27873:9;27869:19;27860:6;27816:73;:::i;:::-;26807:1089;;;;;;;;:::o;27917:957::-;28033:5;28058:90;28074:73;28140:6;28074:73;:::i;:::-;28058:90;:::i;:::-;28049:99;;28168:5;28197:6;28190:5;28183:21;28231:4;28224:5;28220:16;28213:23;;28284:4;28276:6;28272:17;28264:6;28260:30;28313:3;28305:6;28302:15;28299:122;;;28332:79;;:::i;:::-;28299:122;28447:6;28430:438;28464:6;28459:3;28456:15;28430:438;;;28546:3;28540:10;28582:18;28569:11;28566:35;28563:122;;;28604:79;;:::i;:::-;28563:122;28728:11;28720:6;28716:24;28766:57;28819:3;28807:10;28766:57;:::i;:::-;28761:3;28754:70;28853:4;28848:3;28844:14;28837:21;;28506:362;;28490:4;28485:3;28481:14;28474:21;;28430:438;;;28434:21;28039:835;;27917:957;;;;;:::o;28895:403::-;28986:5;29035:3;29028:4;29020:6;29016:17;29012:27;29002:122;;29043:79;;:::i;:::-;29002:122;29153:6;29147:13;29178:114;29288:3;29280:6;29273:4;29265:6;29261:17;29178:114;:::i;:::-;29169:123;;28992:306;28895:403;;;;:::o;29304:572::-;29408:6;29457:2;29445:9;29436:7;29432:23;29428:32;29425:119;;;29463:79;;:::i;:::-;29425:119;29604:1;29593:9;29589:17;29583:24;29634:18;29626:6;29623:30;29620:117;;;29656:79;;:::i;:::-;29620:117;29761:98;29851:7;29842:6;29831:9;29827:22;29761:98;:::i;:::-;29751:108;;29554:315;29304:572;;;;:::o;29882:332::-;30003:4;30041:2;30030:9;30026:18;30018:26;;30054:71;30122:1;30111:9;30107:17;30098:6;30054:71;:::i;:::-;30135:72;30203:2;30192:9;30188:18;30179:6;30135:72;:::i;:::-;29882:332;;;;;:::o;30220:606::-;30427:4;30465:2;30454:9;30450:18;30442:26;;30514:9;30508:4;30504:20;30500:1;30489:9;30485:17;30478:47;30542:126;30663:4;30654:6;30542:126;:::i;:::-;30534:134;;30715:9;30709:4;30705:20;30700:2;30689:9;30685:18;30678:48;30743:76;30814:4;30805:6;30743:76;:::i;:::-;30735:84;;30220:606;;;;;:::o;30832:169::-;30916:11;30950:6;30945:3;30938:19;30990:4;30985:3;30981:14;30966:29;;30832:169;;;;:::o;31007:170::-;31147:22;31143:1;31135:6;31131:14;31124:46;31007:170;:::o;31183:366::-;31325:3;31346:67;31410:2;31405:3;31346:67;:::i;:::-;31339:74;;31422:93;31511:3;31422:93;:::i;:::-;31540:2;31535:3;31531:12;31524:19;;31183:366;;;:::o;31555:419::-;31721:4;31759:2;31748:9;31744:18;31736:26;;31808:9;31802:4;31798:20;31794:1;31783:9;31779:17;31772:47;31836:131;31962:4;31836:131;:::i;:::-;31828:139;;31555:419;;;:::o;31980:117::-;32089:1;32086;32079:12;32103:117;32212:1;32209;32202:12;32226:469;32331:9;32342;32380:8;32368:10;32365:24;32362:111;;;32392:79;;:::i;:::-;32362:111;32498:6;32488:8;32485:20;32482:107;;;32508:79;;:::i;:::-;32482:107;32639:1;32627:10;32623:18;32615:6;32611:31;32598:44;;32678:10;32668:8;32664:25;32651:38;;32226:469;;;;;;;:::o;32701:329::-;32760:6;32809:2;32797:9;32788:7;32784:23;32780:32;32777:119;;;32815:79;;:::i;:::-;32777:119;32935:1;32960:53;33005:7;32996:6;32985:9;32981:22;32960:53;:::i;:::-;32950:63;;32906:117;32701:329;;;;:::o;33036:96::-;33094:6;33122:3;33112:13;;33036:96;;;;:::o;33230:107::-;33274:8;33324:5;33318:4;33314:16;33293:37;;33230:107;;;;:::o;33343:548::-;33433:5;33464:45;33505:3;33498:5;33464:45;:::i;:::-;33534:5;33558:40;33588:8;33575:22;33558:40;:::i;:::-;33549:49;;33622:1;33614:6;33611:13;33608:276;;;33692:168;33776:66;33746:6;33743:1;33739:14;33736:1;33732:22;33692:168;:::i;:::-;33669:5;33648:226;33639:235;;33608:276;33439:452;;33343:548;;;;:::o;33897:166::-;34037:18;34033:1;34025:6;34021:14;34014:42;33897:166;:::o;34069:366::-;34211:3;34232:67;34296:2;34291:3;34232:67;:::i;:::-;34225:74;;34308:93;34397:3;34308:93;:::i;:::-;34426:2;34421:3;34417:12;34410:19;;34069:366;;;:::o;34441:419::-;34607:4;34645:2;34634:9;34630:18;34622:26;;34694:9;34688:4;34684:20;34680:1;34669:9;34665:17;34658:47;34722:131;34848:4;34722:131;:::i;:::-;34714:139;;34441:419;;;:::o;34866:229::-;35006:34;35002:1;34994:6;34990:14;34983:58;35075:12;35070:2;35062:6;35058:15;35051:37;34866:229;:::o;35101:366::-;35243:3;35264:67;35328:2;35323:3;35264:67;:::i;:::-;35257:74;;35340:93;35429:3;35340:93;:::i;:::-;35458:2;35453:3;35449:12;35442:19;;35101:366;;;:::o;35473:419::-;35639:4;35677:2;35666:9;35662:18;35654:26;;35726:9;35720:4;35716:20;35712:1;35701:9;35697:17;35690:47;35754:131;35880:4;35754:131;:::i;:::-;35746:139;;35473:419;;;:::o;35920:314::-;36016:3;36037:70;36100:6;36095:3;36037:70;:::i;:::-;36030:77;;36117:56;36166:6;36161:3;36154:5;36117:56;:::i;:::-;36198:29;36220:6;36198:29;:::i;:::-;36193:3;36189:39;36182:46;;35920:314;;;;;:::o;36240:439::-;36389:4;36427:2;36416:9;36412:18;36404:26;;36476:9;36470:4;36466:20;36462:1;36451:9;36447:17;36440:47;36504:86;36585:4;36576:6;36568;36504:86;:::i;:::-;36496:94;;36600:72;36668:2;36657:9;36653:18;36644:6;36600:72;:::i;:::-;36240:439;;;;;;:::o;36685:180::-;36733:77;36730:1;36723:88;36830:4;36827:1;36820:15;36854:4;36851:1;36844:15;36871:159;36936:5;36967:6;36961:13;36952:22;;36983:41;37018:5;36983:41;:::i;:::-;36871:159;;;;:::o;37036:367::-;37114:6;37163:2;37151:9;37142:7;37138:23;37134:32;37131:119;;;37169:79;;:::i;:::-;37131:119;37289:1;37314:72;37378:7;37369:6;37358:9;37354:22;37314:72;:::i;:::-;37304:82;;37260:136;37036:367;;;;:::o;37409:180::-;37457:77;37454:1;37447:88;37554:4;37551:1;37544:15;37578:4;37575:1;37568:15;37595:191;37635:3;37654:20;37672:1;37654:20;:::i;:::-;37649:25;;37688:20;37706:1;37688:20;:::i;:::-;37683:25;;37731:1;37728;37724:9;37717:16;;37752:3;37749:1;37746:10;37743:36;;;37759:18;;:::i;:::-;37743:36;37595:191;;;;:::o;37792:79::-;37831:7;37860:5;37849:16;;37792:79;;;:::o;37877:157::-;37982:45;38002:24;38020:5;38002:24;:::i;:::-;37982:45;:::i;:::-;37977:3;37970:58;37877:157;;:::o;38040:397::-;38180:3;38195:75;38266:3;38257:6;38195:75;:::i;:::-;38295:2;38290:3;38286:12;38279:19;;38308:75;38379:3;38370:6;38308:75;:::i;:::-;38408:2;38403:3;38399:12;38392:19;;38428:3;38421:10;;38040:397;;;;;:::o;38443:147::-;38544:11;38581:3;38566:18;;38443:147;;;;:::o;38596:386::-;38700:3;38728:38;38760:5;38728:38;:::i;:::-;38782:88;38863:6;38858:3;38782:88;:::i;:::-;38775:95;;38879:65;38937:6;38932:3;38925:4;38918:5;38914:16;38879:65;:::i;:::-;38969:6;38964:3;38960:16;38953:23;;38704:278;38596:386;;;;:::o;38988:271::-;39118:3;39140:93;39229:3;39220:6;39140:93;:::i;:::-;39133:100;;39250:3;39243:10;;38988:271;;;;:::o;39265:222::-;39358:4;39396:2;39385:9;39381:18;39373:26;;39409:71;39477:1;39466:9;39462:17;39453:6;39409:71;:::i;:::-;39265:222;;;;:::o;39493:143::-;39550:5;39581:6;39575:13;39566:22;;39597:33;39624:5;39597:33;:::i;:::-;39493:143;;;;:::o;39642:351::-;39712:6;39761:2;39749:9;39740:7;39736:23;39732:32;39729:119;;;39767:79;;:::i;:::-;39729:119;39887:1;39912:64;39968:7;39959:6;39948:9;39944:22;39912:64;:::i;:::-;39902:74;;39858:128;39642:351;;;;:::o;39999:332::-;40120:4;40158:2;40147:9;40143:18;40135:26;;40171:71;40239:1;40228:9;40224:17;40215:6;40171:71;:::i;:::-;40252:72;40320:2;40309:9;40305:18;40296:6;40252:72;:::i;:::-;39999:332;;;;;:::o;40337:225::-;40477:34;40473:1;40465:6;40461:14;40454:58;40546:8;40541:2;40533:6;40529:15;40522:33;40337:225;:::o;40568:366::-;40710:3;40731:67;40795:2;40790:3;40731:67;:::i;:::-;40724:74;;40807:93;40896:3;40807:93;:::i;:::-;40925:2;40920:3;40916:12;40909:19;;40568:366;;;:::o;40940:419::-;41106:4;41144:2;41133:9;41129:18;41121:26;;41193:9;41187:4;41183:20;41179:1;41168:9;41164:17;41157:47;41221:131;41347:4;41221:131;:::i;:::-;41213:139;;40940:419;;;:::o;41365:321::-;41452:4;41542:18;41534:6;41531:30;41528:56;;;41564:18;;:::i;:::-;41528:56;41614:4;41606:6;41602:17;41594:25;;41674:4;41668;41664:15;41656:23;;41365:321;;;:::o;41692:308::-;41754:4;41844:18;41836:6;41833:30;41830:56;;;41866:18;;:::i;:::-;41830:56;41904:29;41926:6;41904:29;:::i;:::-;41896:37;;41988:4;41982;41978:15;41970:23;;41692:308;;;:::o;42006:434::-;42095:5;42120:66;42136:49;42178:6;42136:49;:::i;:::-;42120:66;:::i;:::-;42111:75;;42209:6;42202:5;42195:21;42247:4;42240:5;42236:16;42285:3;42276:6;42271:3;42267:16;42264:25;42261:112;;;42292:79;;:::i;:::-;42261:112;42382:52;42427:6;42422:3;42417;42382:52;:::i;:::-;42101:339;42006:434;;;;;:::o;42460:355::-;42527:5;42576:3;42569:4;42561:6;42557:17;42553:27;42543:122;;42584:79;;:::i;:::-;42543:122;42694:6;42688:13;42719:90;42805:3;42797:6;42790:4;42782:6;42778:17;42719:90;:::i;:::-;42710:99;;42533:282;42460:355;;;;:::o;42837:960::-;42954:5;42979:91;42995:74;43062:6;42995:74;:::i;:::-;42979:91;:::i;:::-;42970:100;;43090:5;43119:6;43112:5;43105:21;43153:4;43146:5;43142:16;43135:23;;43206:4;43198:6;43194:17;43186:6;43182:30;43235:3;43227:6;43224:15;43221:122;;;43254:79;;:::i;:::-;43221:122;43369:6;43352:439;43386:6;43381:3;43378:15;43352:439;;;43468:3;43462:10;43504:18;43491:11;43488:35;43485:122;;;43526:79;;:::i;:::-;43485:122;43650:11;43642:6;43638:24;43688:58;43742:3;43730:10;43688:58;:::i;:::-;43683:3;43676:71;43776:4;43771:3;43767:14;43760:21;;43428:363;;43412:4;43407:3;43403:14;43396:21;;43352:439;;;43356:21;42960:837;;42837:960;;;;;:::o;43819:405::-;43911:5;43960:3;43953:4;43945:6;43941:17;43937:27;43927:122;;43968:79;;:::i;:::-;43927:122;44078:6;44072:13;44103:115;44214:3;44206:6;44199:4;44191:6;44187:17;44103:115;:::i;:::-;44094:124;;43917:307;43819:405;;;;:::o;44230:574::-;44335:6;44384:2;44372:9;44363:7;44359:23;44355:32;44352:119;;;44390:79;;:::i;:::-;44352:119;44531:1;44520:9;44516:17;44510:24;44561:18;44553:6;44550:30;44547:117;;;44583:79;;:::i;:::-;44547:117;44688:99;44779:7;44770:6;44759:9;44755:22;44688:99;:::i;:::-;44678:109;;44481:316;44230:574;;;;:::o;44810:780::-;45077:4;45115:2;45104:9;45100:18;45092:26;;45128:71;45196:1;45185:9;45181:17;45172:6;45128:71;:::i;:::-;45246:9;45240:4;45236:20;45231:2;45220:9;45216:18;45209:48;45274:108;45377:4;45368:6;45274:108;:::i;:::-;45266:116;;45429:9;45423:4;45419:20;45414:2;45403:9;45399:18;45392:48;45457:126;45578:4;45569:6;45457:126;:::i;:::-;45449:134;;44810:780;;;;;;:::o;45596:115::-;45681:23;45698:5;45681:23;:::i;:::-;45676:3;45669:36;45596:115;;:::o;45717:1236::-;46104:4;46142:3;46131:9;46127:19;46119:27;;46156:91;46244:1;46233:9;46229:17;46220:6;46156:91;:::i;:::-;46257:72;46325:2;46314:9;46310:18;46301:6;46257:72;:::i;:::-;46376:9;46370:4;46366:20;46361:2;46350:9;46346:18;46339:48;46404:108;46507:4;46498:6;46404:108;:::i;:::-;46396:116;;46559:9;46553:4;46549:20;46544:2;46533:9;46529:18;46522:48;46587:126;46708:4;46699:6;46587:126;:::i;:::-;46579:134;;46723:71;46789:3;46778:9;46774:19;46765:6;46723:71;:::i;:::-;46842:9;46836:4;46832:20;46826:3;46815:9;46811:19;46804:49;46870:76;46941:4;46932:6;46870:76;:::i;:::-;46862:84;;45717:1236;;;;;;;;;:::o;46959:124::-;47036:6;47070:5;47064:12;47054:22;;46959:124;;;:::o;47089:194::-;47198:11;47232:6;47227:3;47220:19;47272:4;47267:3;47263:14;47248:29;;47089:194;;;;:::o;47289:142::-;47366:4;47389:3;47381:11;;47419:4;47414:3;47410:14;47402:22;;47289:142;;;:::o;47437:99::-;47489:6;47523:5;47517:12;47507:22;;47437:99;;;:::o;47542:159::-;47616:11;47650:6;47645:3;47638:19;47690:4;47685:3;47681:14;47666:29;;47542:159;;;;:::o;47707:357::-;47785:3;47813:39;47846:5;47813:39;:::i;:::-;47868:61;47922:6;47917:3;47868:61;:::i;:::-;47861:68;;47938:65;47996:6;47991:3;47984:4;47977:5;47973:16;47938:65;:::i;:::-;48028:29;48050:6;48028:29;:::i;:::-;48023:3;48019:39;48012:46;;47789:275;47707:357;;;;:::o;48070:196::-;48159:10;48194:66;48256:3;48248:6;48194:66;:::i;:::-;48180:80;;48070:196;;;;:::o;48272:123::-;48352:4;48384;48379:3;48375:14;48367:22;;48272:123;;;:::o;48429:991::-;48568:3;48597:64;48655:5;48597:64;:::i;:::-;48677:96;48766:6;48761:3;48677:96;:::i;:::-;48670:103;;48799:3;48844:4;48836:6;48832:17;48827:3;48823:27;48874:66;48934:5;48874:66;:::i;:::-;48963:7;48994:1;48979:396;49004:6;49001:1;48998:13;48979:396;;;49075:9;49069:4;49065:20;49060:3;49053:33;49126:6;49120:13;49154:84;49233:4;49218:13;49154:84;:::i;:::-;49146:92;;49261:70;49324:6;49261:70;:::i;:::-;49251:80;;49360:4;49355:3;49351:14;49344:21;;49039:336;49026:1;49023;49019:9;49014:14;;48979:396;;;48983:14;49391:4;49384:11;;49411:3;49404:10;;48573:847;;;;;48429:991;;;;:::o;49426:1025::-;49735:4;49773:3;49762:9;49758:19;49750:27;;49787:71;49855:1;49844:9;49840:17;49831:6;49787:71;:::i;:::-;49905:9;49899:4;49895:20;49890:2;49879:9;49875:18;49868:48;49933:128;50056:4;50047:6;49933:128;:::i;:::-;49925:136;;50108:9;50102:4;50098:20;50093:2;50082:9;50078:18;50071:48;50136:76;50207:4;50198:6;50136:76;:::i;:::-;50128:84;;50222:70;50288:2;50277:9;50273:18;50264:6;50222:70;:::i;:::-;50340:9;50334:4;50330:20;50324:3;50313:9;50309:19;50302:49;50368:76;50439:4;50430:6;50368:76;:::i;:::-;50360:84;;49426:1025;;;;;;;;:::o;50457:179::-;50597:31;50593:1;50585:6;50581:14;50574:55;50457:179;:::o;50642:366::-;50784:3;50805:67;50869:2;50864:3;50805:67;:::i;:::-;50798:74;;50881:93;50970:3;50881:93;:::i;:::-;50999:2;50994:3;50990:12;50983:19;;50642:366;;;:::o;51014:419::-;51180:4;51218:2;51207:9;51203:18;51195:26;;51267:9;51261:4;51257:20;51253:1;51242:9;51238:17;51231:47;51295:131;51421:4;51295:131;:::i;:::-;51287:139;;51014:419;;;:::o;51439:194::-;51479:4;51499:20;51517:1;51499:20;:::i;:::-;51494:25;;51533:20;51551:1;51533:20;:::i;:::-;51528:25;;51577:1;51574;51570:9;51562:17;;51601:1;51595:4;51592:11;51589:37;;;51606:18;;:::i;:::-;51589:37;51439:194;;;;:::o;51639:233::-;51678:3;51701:24;51719:5;51701:24;:::i;:::-;51692:33;;51747:66;51740:5;51737:77;51734:103;;51817:18;;:::i;:::-;51734:103;51864:1;51857:5;51853:13;51846:20;;51639:233;;;:::o;51878:410::-;51918:7;51941:20;51959:1;51941:20;:::i;:::-;51936:25;;51975:20;51993:1;51975:20;:::i;:::-;51970:25;;52030:1;52027;52023:9;52052:30;52070:11;52052:30;:::i;:::-;52041:41;;52231:1;52222:7;52218:15;52215:1;52212:22;52192:1;52185:9;52165:83;52142:139;;52261:18;;:::i;:::-;52142:139;51926:362;51878:410;;;;:::o;52294:377::-;52382:3;52410:39;52443:5;52410:39;:::i;:::-;52465:71;52529:6;52524:3;52465:71;:::i;:::-;52458:78;;52545:65;52603:6;52598:3;52591:4;52584:5;52580:16;52545:65;:::i;:::-;52635:29;52657:6;52635:29;:::i;:::-;52630:3;52626:39;52619:46;;52386:285;52294:377;;;;:::o;52677:313::-;52790:4;52828:2;52817:9;52813:18;52805:26;;52877:9;52871:4;52867:20;52863:1;52852:9;52848:17;52841:47;52905:78;52978:4;52969:6;52905:78;:::i;:::-;52897:86;;52677:313;;;;:::o" + }, + "methodIdentifiers": { + "addrCallback(bytes[],bytes)": "f470901a", + "ens()": "3f15457f", + "extractNFTId(bytes)": "1a33ddae", + "getAcceptedL2BlockRangeLength()": "6d74e86e", + "getStorageSlotsCallback(bytes,bytes)": "5bdaa916", + "getTarget(bytes)": "15f64386", + "l2ChainId()": "d6ae3cd5", + "nameWrapper()": "a8e5fbc0", + "publicResolver()": "f8256121", + "resolve(bytes,bytes)": "9061b923", + "setAddr(bytes,address)": "f00eebf4", + "setTarget(bytes,address)": "d358df77", + "supportsInterface(bytes4)": "01ffc9a7", + "verifier()": "2b7ac3f3" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IEVMVerifier\",\"name\":\"_verifier\",\"type\":\"address\"},{\"internalType\":\"contract ENS\",\"name\":\"_ens\",\"type\":\"address\"},{\"internalType\":\"contract INameWrapper\",\"name\":\"_nameWrapper\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_l2ChainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_publicResolver\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"CommandTooLong\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes4\",\"name\":\"callbackFunction\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"OffchainLookup\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"actual\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"}],\"name\":\"ResponseLengthMismatch\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"StorageHandledByL2\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"TooManyCommands\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"TargetSet\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addrCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ens\",\"outputs\":[{\"internalType\":\"contract ENS\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"}],\"name\":\"extractNFTId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAcceptedL2BlockRangeLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"response\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"extradata\",\"type\":\"bytes\"}],\"name\":\"getStorageSlotsCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"}],\"name\":\"getTarget\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l2ChainId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nameWrapper\",\"outputs\":[{\"internalType\":\"contract INameWrapper\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"publicResolver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"resolve\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"name\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"setTarget\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"contract IEVMVerifier\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"StorageHandledByL2(uint256,address)\":[{\"details\":\"EIP-5559 - Error to raise when mutations are being deferred to an L2.\",\"params\":{\"chainId\":\"Chain ID to perform the deferred mutation to.\",\"contractAddress\":\"Contract Address at which the deferred mutation should transact with.\"}}]},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"_ens\":\"The ENS registry address\",\"_l2ChainId\":\"The chainId at which the resolver resolves data from\",\"_nameWrapper\":\"The ENS name wrapper address\",\"_publicResolver\":\"The PublicResolver address to use to resolve base domains\",\"_verifier\":\"The chain verifier address\"}},\"extractNFTId(bytes)\":{\"params\":{\"name\":\"DNS encoded ENS name\"},\"returns\":{\"_0\":\"id the NFT id\"}},\"getAcceptedL2BlockRangeLength()\":{\"details\":\"inherits from EVMFetchTarget\"},\"getStorageSlotsCallback(bytes,bytes)\":{\"details\":\"Internal callback function invoked by CCIP-Read in response to a `getStorageSlots` request.\"},\"getTarget(bytes)\":{\"details\":\"Returns the L2 target address that can answer queries for `name`.\",\"params\":{\"name\":\"DNS encoded ENS name to query\"},\"returns\":{\"node\":\"The node of the name\",\"target\":\"The L2 resolver address to verify against.\"}},\"resolve(bytes,bytes)\":{\"details\":\"Resolve and verify a record stored in l2 target address. It supports subname by fetching target recursively to the nearest parent.\",\"params\":{\"data\":\"The actual calldata\",\"name\":\"DNS encoded ENS name to query\"},\"returns\":{\"result\":\"result of the call\"}},\"setAddr(bytes,address)\":{\"details\":\"Resolve and throws an EIP 3559 compliant error\",\"params\":{\"_addr\":\"The actual calldata\",\"name\":\"DNS encoded ENS name to query\"},\"returns\":{\"result\":\"result of the call\"}},\"setTarget(bytes,address)\":{\"params\":{\"name\":\"The encoded name to query.\",\"target\":\"The L2 resolver address to verify against.\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"extractNFTId(bytes)\":{\"notice\":\"Get the NFT Id from the ENS name's label\"},\"setTarget(bytes,address)\":{\"notice\":\"Set target address to verify against\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/NFTResolver.sol\":\"NFTResolver\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@consensys/linea-state-verifier/contracts/EVMFetchTarget.sol\":{\"keccak256\":\"0x16343bb690c36a6c1d41922b114319505dc2c6b86348b9abc06c10be79bfea9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2a2e001f6fec0aa4927b636aace4998b961c9a9eec8840f3eddcdeb9b9d72632\",\"dweb:/ipfs/QmeYRrJrBY1rpHQzbdLfG45wFeeLgFUpTAcPAf3PkVVEAB\"]},\"@consensys/linea-state-verifier/contracts/EVMFetcher.sol\":{\"keccak256\":\"0x96ccc4f320287222e427a2c4620d8e27cfc0a64820dc9b214ba396344eeb6a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75d4c2093fc22db01c4552aae2706d9e77c08b1c0b390cee8d80802a73238dcf\",\"dweb:/ipfs/QmPrFfoC6K4Jimky4VSfiZnErCL1X4yQhMFNVNKLtLWBxz\"]},\"@consensys/linea-state-verifier/contracts/IEVMVerifier.sol\":{\"keccak256\":\"0x3e111236291da207c09145b288d0c98a20fb0845b5c5c4cadd4a465b269787cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ebeaa43d30afe6c261c85dc511ae26c8d5b3c2633e44493add150a87a7c5f9b\",\"dweb:/ipfs/QmStaQTHQCcUDubpBpqUofy1jVeuxo9kk3B9M1NyNMkXvh\"]},\"@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.sol\":{\"keccak256\":\"0x15f7b1dfa7cd34444daf79ec9b4d40437caa9257893ce0639d706fcc2ba69e52\",\"urls\":[\"bzz-raw://ef8b878d8de60c595017944a41a6feb272a8e0b67c497677dbc005581a7d9e8c\",\"dweb:/ipfs/QmQfDDfqiJiUMWdDtdcqaHX5oGjPKFKY3L26aZV3JqdZC8\"]},\"@ensdomains/ens-contracts/contracts/registry/ENS.sol\":{\"keccak256\":\"0x8e208b44d5dbf22552fe72d79b45c640855b84fbc9ee21f4c3bb4bfe81cbe8db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcf03e1a9386d80ff6b8e31870063424454f69d2626c0efb2c8cf55e69151489\",\"dweb:/ipfs/QmVYgfMSc1ve5JWePqiAGSXEfD76emw3oLsCM1krstmJq5\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.sol\":{\"keccak256\":\"0x2ad7f2fc60ebe0f93745fe70247f6a854f66af732483fda2a3c5e055614445e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43922ba183ff20d87dce7fc5d715e626b26594151e36dcc8d7c6329b9a822963\",\"dweb:/ipfs/QmTg9uHTugTxzqddN68gnhNbGt4bGJBS9mQcss6GYggR4X\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.sol\":{\"keccak256\":\"0x411447c1e90c51e09702815a85ec725ffbbe37cf96e8cc4d2a8bd4ad8a59d73e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543aa2756447a428711b69aea79e9f4641c22f8330ba920b2a49fde8d9207f82\",\"dweb:/ipfs/QmTdpcYRWLH3BL7iytnqcSzRojTPe3YettKaTqeCvKPk54\"]},\"@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.sol\":{\"keccak256\":\"0x5d81521cfae7d9a4475d27533cd8ed0d3475d369eb0674fd90ffbdbdf292faa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d244d15588785044b54c453ab6dc51c616ab70cb8b9e687d3e54565bcae97760\",\"dweb:/ipfs/QmXz4ZZBTFogdkdTV1mcE3ywvL2agKVZHLNNeRHCKVruYM\"]},\"@ensdomains/ens-contracts/contracts/utils/BytesUtils.sol\":{\"keccak256\":\"0xc566a3569af880a096a9bfb2fbb77060ef7aecde1a205dc26446a58877412060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad627557ee4573cfd13238041acb2bda2d277dc78836e7611d184616df7f2a47\",\"dweb:/ipfs/QmSbCRpJaEqa5XiHwzQvawcyXVLVkFghY1KZob3XNGRveR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.sol\":{\"keccak256\":\"0xb3f1cf6df01ed7b15e5f2318f6823afbdb586ca38c2124c67955c645647ae9a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71aa1053dd87829c5eb25d32840d7b0d33cd9d54d22e905a01436bf97cc32b8c\",\"dweb:/ipfs/QmeMNnGKqf3oZyYwDQzEuQhti58UCCMRCMAD2EBx5T8dSH\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.sol\":{\"keccak256\":\"0x70310eb67146d7290731c31841399640ac3b6a949eadc6598bc150123d185c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a85d9e2d6b235900131129386047fae5fb77438806b681ac566119868be5a502\",\"dweb:/ipfs/Qmd9ys5jeRx77TDVeRqWUme7a5LUDT4k7wQ91wVSayDpTR\"]},\"@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.sol\":{\"keccak256\":\"0x42e0cec6cd9d1a62d51d45b678f69d3e4ad5555e659b197e41257b308346bb8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5afeadfdf2232a2333afb5345b65a25f7199b62ed6fde403273b762c91f5e9af\",\"dweb:/ipfs/QmWKhi3FuqX2KgRrBdh65gB3pmiwA2QMYPeiDbsMKv6a88\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0xcab667ddad478ff0d39c2053ca77fac778af8483c18ab07d810277b4216fd582\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://919c7ea27c77275c3c341da0c4a26a66a20ed27605fbe8becf11f58ec3bc65bf\",\"dweb:/ipfs/QmRLKyVE2n7e2Jo4bLNn8eLgqqhNGYnVQyjJPWdr8poskf\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"contracts/IAddrSetter.sol\":{\"keccak256\":\"0xf7493c0fc452bd785cdf3d563f45eefb64c1498711dbe024126d247be56fe808\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4a92c0ddfee4e552979e5215448d6a5a6d3f90e7706aaab203d44466d1d05263\",\"dweb:/ipfs/QmNiSn57hsD7fmPTZsPqzY7D8BuQGuPyujjHsHewjNgrhm\"]},\"contracts/ITargetResolver.sol\":{\"keccak256\":\"0xbe5a66f254ce775902d6d20db27a50bfe28b70747cc33f28188beff59185b71a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7c6d753a198934d7d911818c553532f8a5f97f96c86c60c5b709da345ab8de9\",\"dweb:/ipfs/QmYegW3aiohrSn34H5yHmxpUxm72iJXa4auCcX1mJNVkz3\"]},\"contracts/LabelUtils.sol\":{\"keccak256\":\"0xc39e8f7e7185766e3c44db43af0103564c8980670268c3b09588195d199d8b87\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1b82487b40e734269f267c6b44d0a09ec98c84fd054cddebd7f72e546ce7d88d\",\"dweb:/ipfs/QmUrTcp7BMRWE2M72duR2anYgBFySEgRAyR3bGamPX2kkK\"]},\"contracts/NFTResolver.sol\":{\"keccak256\":\"0x1ca5968a0032db35d4a0829db67766cd77026fe20714030d4a69d38fbc41387c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://08cb1536e6df9260653a9d5e4048781a17846c7da90fa10e0cc8223b9467a12e\",\"dweb:/ipfs/QmNZ1rDFESUantd6Vx2k4CPHQa3Ar36bHSKSHW3mzyEsgt\"]}},\"version\":1}" + } + }, + "contracts/RollupMock.sol": { + "RollupMock": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "_currentL2BlockNumber", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_currentStateRootHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "lastBlockFinalized", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "startingRootHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "finalRootHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "withProof", + "type": "bool" + } + ], + "name": "DataFinalized", + "type": "event" + }, + { + "inputs": [], + "name": "currentL2BlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_currentL2BlockNumber", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_currentStateRootHash", + "type": "bytes32" + } + ], + "name": "setCurrentStateRoot", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + } + ], + "name": "stateRootHashes", + "outputs": [ + { + "internalType": "bytes32", + "name": "stateRootHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_16948": { + "entryPoint": null, + "id": 16948, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_decode_t_bytes32_fromMemory": { + "entryPoint": 240, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256_fromMemory": { + "entryPoint": 186, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256t_bytes32_fromMemory": { + "entryPoint": 261, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 337, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 352, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 325, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 207, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 153, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 148, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 217, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 163, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:1991:74", + "nodeType": "YulBlock", + "src": "0:1991:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:32:74", + "nodeType": "YulBlock", + "src": "379:32:74", + "statements": [ + { + "nativeSrc": "389:16:74", + "nodeType": "YulAssignment", + "src": "389:16:74", + "value": { + "name": "value", + "nativeSrc": "400:5:74", + "nodeType": "YulIdentifier", + "src": "400:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "334:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:77:74" + }, + { + "body": { + "nativeSrc": "460:79:74", + "nodeType": "YulBlock", + "src": "460:79:74", + "statements": [ + { + "body": { + "nativeSrc": "517:16:74", + "nodeType": "YulBlock", + "src": "517:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "526:1:74", + "nodeType": "YulLiteral", + "src": "526:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "529:1:74", + "nodeType": "YulLiteral", + "src": "529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "519:6:74", + "nodeType": "YulIdentifier", + "src": "519:6:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulFunctionCall", + "src": "519:12:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulExpressionStatement", + "src": "519:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "483:5:74", + "nodeType": "YulIdentifier", + "src": "483:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "508:5:74", + "nodeType": "YulIdentifier", + "src": "508:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "490:17:74", + "nodeType": "YulIdentifier", + "src": "490:17:74" + }, + "nativeSrc": "490:24:74", + "nodeType": "YulFunctionCall", + "src": "490:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "480:2:74", + "nodeType": "YulIdentifier", + "src": "480:2:74" + }, + "nativeSrc": "480:35:74", + "nodeType": "YulFunctionCall", + "src": "480:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "473:6:74", + "nodeType": "YulIdentifier", + "src": "473:6:74" + }, + "nativeSrc": "473:43:74", + "nodeType": "YulFunctionCall", + "src": "473:43:74" + }, + "nativeSrc": "470:63:74", + "nodeType": "YulIf", + "src": "470:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "417:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "453:5:74", + "nodeType": "YulTypedName", + "src": "453:5:74", + "type": "" + } + ], + "src": "417:122:74" + }, + { + "body": { + "nativeSrc": "608:80:74", + "nodeType": "YulBlock", + "src": "608:80:74", + "statements": [ + { + "nativeSrc": "618:22:74", + "nodeType": "YulAssignment", + "src": "618:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "633:6:74", + "nodeType": "YulIdentifier", + "src": "633:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "627:5:74", + "nodeType": "YulIdentifier", + "src": "627:5:74" + }, + "nativeSrc": "627:13:74", + "nodeType": "YulFunctionCall", + "src": "627:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "618:5:74", + "nodeType": "YulIdentifier", + "src": "618:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "676:5:74", + "nodeType": "YulIdentifier", + "src": "676:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "649:26:74", + "nodeType": "YulIdentifier", + "src": "649:26:74" + }, + "nativeSrc": "649:33:74", + "nodeType": "YulFunctionCall", + "src": "649:33:74" + }, + "nativeSrc": "649:33:74", + "nodeType": "YulExpressionStatement", + "src": "649:33:74" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "545:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "586:6:74", + "nodeType": "YulTypedName", + "src": "586:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "594:3:74", + "nodeType": "YulTypedName", + "src": "594:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "602:5:74", + "nodeType": "YulTypedName", + "src": "602:5:74", + "type": "" + } + ], + "src": "545:143:74" + }, + { + "body": { + "nativeSrc": "739:32:74", + "nodeType": "YulBlock", + "src": "739:32:74", + "statements": [ + { + "nativeSrc": "749:16:74", + "nodeType": "YulAssignment", + "src": "749:16:74", + "value": { + "name": "value", + "nativeSrc": "760:5:74", + "nodeType": "YulIdentifier", + "src": "760:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "749:7:74", + "nodeType": "YulIdentifier", + "src": "749:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "694:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "721:5:74", + "nodeType": "YulTypedName", + "src": "721:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "731:7:74", + "nodeType": "YulTypedName", + "src": "731:7:74", + "type": "" + } + ], + "src": "694:77:74" + }, + { + "body": { + "nativeSrc": "820:79:74", + "nodeType": "YulBlock", + "src": "820:79:74", + "statements": [ + { + "body": { + "nativeSrc": "877:16:74", + "nodeType": "YulBlock", + "src": "877:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "886:1:74", + "nodeType": "YulLiteral", + "src": "886:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "889:1:74", + "nodeType": "YulLiteral", + "src": "889:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "879:6:74", + "nodeType": "YulIdentifier", + "src": "879:6:74" + }, + "nativeSrc": "879:12:74", + "nodeType": "YulFunctionCall", + "src": "879:12:74" + }, + "nativeSrc": "879:12:74", + "nodeType": "YulExpressionStatement", + "src": "879:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "843:5:74", + "nodeType": "YulIdentifier", + "src": "843:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "868:5:74", + "nodeType": "YulIdentifier", + "src": "868:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "850:17:74", + "nodeType": "YulIdentifier", + "src": "850:17:74" + }, + "nativeSrc": "850:24:74", + "nodeType": "YulFunctionCall", + "src": "850:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "840:2:74", + "nodeType": "YulIdentifier", + "src": "840:2:74" + }, + "nativeSrc": "840:35:74", + "nodeType": "YulFunctionCall", + "src": "840:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "833:6:74", + "nodeType": "YulIdentifier", + "src": "833:6:74" + }, + "nativeSrc": "833:43:74", + "nodeType": "YulFunctionCall", + "src": "833:43:74" + }, + "nativeSrc": "830:63:74", + "nodeType": "YulIf", + "src": "830:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "777:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "813:5:74", + "nodeType": "YulTypedName", + "src": "813:5:74", + "type": "" + } + ], + "src": "777:122:74" + }, + { + "body": { + "nativeSrc": "968:80:74", + "nodeType": "YulBlock", + "src": "968:80:74", + "statements": [ + { + "nativeSrc": "978:22:74", + "nodeType": "YulAssignment", + "src": "978:22:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "993:6:74", + "nodeType": "YulIdentifier", + "src": "993:6:74" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "987:5:74", + "nodeType": "YulIdentifier", + "src": "987:5:74" + }, + "nativeSrc": "987:13:74", + "nodeType": "YulFunctionCall", + "src": "987:13:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "978:5:74", + "nodeType": "YulIdentifier", + "src": "978:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1036:5:74", + "nodeType": "YulIdentifier", + "src": "1036:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "1009:26:74", + "nodeType": "YulIdentifier", + "src": "1009:26:74" + }, + "nativeSrc": "1009:33:74", + "nodeType": "YulFunctionCall", + "src": "1009:33:74" + }, + "nativeSrc": "1009:33:74", + "nodeType": "YulExpressionStatement", + "src": "1009:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "905:143:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "946:6:74", + "nodeType": "YulTypedName", + "src": "946:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "954:3:74", + "nodeType": "YulTypedName", + "src": "954:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "962:5:74", + "nodeType": "YulTypedName", + "src": "962:5:74", + "type": "" + } + ], + "src": "905:143:74" + }, + { + "body": { + "nativeSrc": "1148:413:74", + "nodeType": "YulBlock", + "src": "1148:413:74", + "statements": [ + { + "body": { + "nativeSrc": "1194:83:74", + "nodeType": "YulBlock", + "src": "1194:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1196:77:74", + "nodeType": "YulIdentifier", + "src": "1196:77:74" + }, + "nativeSrc": "1196:79:74", + "nodeType": "YulFunctionCall", + "src": "1196:79:74" + }, + "nativeSrc": "1196:79:74", + "nodeType": "YulExpressionStatement", + "src": "1196:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1169:7:74", + "nodeType": "YulIdentifier", + "src": "1169:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1178:9:74", + "nodeType": "YulIdentifier", + "src": "1178:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1165:3:74", + "nodeType": "YulIdentifier", + "src": "1165:3:74" + }, + "nativeSrc": "1165:23:74", + "nodeType": "YulFunctionCall", + "src": "1165:23:74" + }, + { + "kind": "number", + "nativeSrc": "1190:2:74", + "nodeType": "YulLiteral", + "src": "1190:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1161:3:74", + "nodeType": "YulIdentifier", + "src": "1161:3:74" + }, + "nativeSrc": "1161:32:74", + "nodeType": "YulFunctionCall", + "src": "1161:32:74" + }, + "nativeSrc": "1158:119:74", + "nodeType": "YulIf", + "src": "1158:119:74" + }, + { + "nativeSrc": "1287:128:74", + "nodeType": "YulBlock", + "src": "1287:128:74", + "statements": [ + { + "nativeSrc": "1302:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1302:15:74", + "value": { + "kind": "number", + "nativeSrc": "1316:1:74", + "nodeType": "YulLiteral", + "src": "1316:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1306:6:74", + "nodeType": "YulTypedName", + "src": "1306:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1331:74:74", + "nodeType": "YulAssignment", + "src": "1331:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1377:9:74", + "nodeType": "YulIdentifier", + "src": "1377:9:74" + }, + { + "name": "offset", + "nativeSrc": "1388:6:74", + "nodeType": "YulIdentifier", + "src": "1388:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1373:3:74", + "nodeType": "YulIdentifier", + "src": "1373:3:74" + }, + "nativeSrc": "1373:22:74", + "nodeType": "YulFunctionCall", + "src": "1373:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1397:7:74", + "nodeType": "YulIdentifier", + "src": "1397:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nativeSrc": "1341:31:74", + "nodeType": "YulIdentifier", + "src": "1341:31:74" + }, + "nativeSrc": "1341:64:74", + "nodeType": "YulFunctionCall", + "src": "1341:64:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1331:6:74", + "nodeType": "YulIdentifier", + "src": "1331:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1425:129:74", + "nodeType": "YulBlock", + "src": "1425:129:74", + "statements": [ + { + "nativeSrc": "1440:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1440:16:74", + "value": { + "kind": "number", + "nativeSrc": "1454:2:74", + "nodeType": "YulLiteral", + "src": "1454:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1444:6:74", + "nodeType": "YulTypedName", + "src": "1444:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1470:74:74", + "nodeType": "YulAssignment", + "src": "1470:74:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1516:9:74", + "nodeType": "YulIdentifier", + "src": "1516:9:74" + }, + { + "name": "offset", + "nativeSrc": "1527:6:74", + "nodeType": "YulIdentifier", + "src": "1527:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1512:3:74", + "nodeType": "YulIdentifier", + "src": "1512:3:74" + }, + "nativeSrc": "1512:22:74", + "nodeType": "YulFunctionCall", + "src": "1512:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1536:7:74", + "nodeType": "YulIdentifier", + "src": "1536:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32_fromMemory", + "nativeSrc": "1480:31:74", + "nodeType": "YulIdentifier", + "src": "1480:31:74" + }, + "nativeSrc": "1480:64:74", + "nodeType": "YulFunctionCall", + "src": "1480:64:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1470:6:74", + "nodeType": "YulIdentifier", + "src": "1470:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_bytes32_fromMemory", + "nativeSrc": "1054:507:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1110:9:74", + "nodeType": "YulTypedName", + "src": "1110:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1121:7:74", + "nodeType": "YulTypedName", + "src": "1121:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1133:6:74", + "nodeType": "YulTypedName", + "src": "1133:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1141:6:74", + "nodeType": "YulTypedName", + "src": "1141:6:74", + "type": "" + } + ], + "src": "1054:507:74" + }, + { + "body": { + "nativeSrc": "1609:48:74", + "nodeType": "YulBlock", + "src": "1609:48:74", + "statements": [ + { + "nativeSrc": "1619:32:74", + "nodeType": "YulAssignment", + "src": "1619:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1644:5:74", + "nodeType": "YulIdentifier", + "src": "1644:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1637:6:74", + "nodeType": "YulIdentifier", + "src": "1637:6:74" + }, + "nativeSrc": "1637:13:74", + "nodeType": "YulFunctionCall", + "src": "1637:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1630:6:74", + "nodeType": "YulIdentifier", + "src": "1630:6:74" + }, + "nativeSrc": "1630:21:74", + "nodeType": "YulFunctionCall", + "src": "1630:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1619:7:74", + "nodeType": "YulIdentifier", + "src": "1619:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1567:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1591:5:74", + "nodeType": "YulTypedName", + "src": "1591:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1601:7:74", + "nodeType": "YulTypedName", + "src": "1601:7:74", + "type": "" + } + ], + "src": "1567:90:74" + }, + { + "body": { + "nativeSrc": "1722:50:74", + "nodeType": "YulBlock", + "src": "1722:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1739:3:74", + "nodeType": "YulIdentifier", + "src": "1739:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1759:5:74", + "nodeType": "YulIdentifier", + "src": "1759:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1744:14:74", + "nodeType": "YulIdentifier", + "src": "1744:14:74" + }, + "nativeSrc": "1744:21:74", + "nodeType": "YulFunctionCall", + "src": "1744:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1732:6:74", + "nodeType": "YulIdentifier", + "src": "1732:6:74" + }, + "nativeSrc": "1732:34:74", + "nodeType": "YulFunctionCall", + "src": "1732:34:74" + }, + "nativeSrc": "1732:34:74", + "nodeType": "YulExpressionStatement", + "src": "1732:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1663:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1710:5:74", + "nodeType": "YulTypedName", + "src": "1710:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1717:3:74", + "nodeType": "YulTypedName", + "src": "1717:3:74", + "type": "" + } + ], + "src": "1663:109:74" + }, + { + "body": { + "nativeSrc": "1870:118:74", + "nodeType": "YulBlock", + "src": "1870:118:74", + "statements": [ + { + "nativeSrc": "1880:26:74", + "nodeType": "YulAssignment", + "src": "1880:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1892:9:74", + "nodeType": "YulIdentifier", + "src": "1892:9:74" + }, + { + "kind": "number", + "nativeSrc": "1903:2:74", + "nodeType": "YulLiteral", + "src": "1903:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1888:3:74", + "nodeType": "YulIdentifier", + "src": "1888:3:74" + }, + "nativeSrc": "1888:18:74", + "nodeType": "YulFunctionCall", + "src": "1888:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1880:4:74", + "nodeType": "YulIdentifier", + "src": "1880:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1954:6:74", + "nodeType": "YulIdentifier", + "src": "1954:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1967:9:74", + "nodeType": "YulIdentifier", + "src": "1967:9:74" + }, + { + "kind": "number", + "nativeSrc": "1978:1:74", + "nodeType": "YulLiteral", + "src": "1978:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1963:3:74", + "nodeType": "YulIdentifier", + "src": "1963:3:74" + }, + "nativeSrc": "1963:17:74", + "nodeType": "YulFunctionCall", + "src": "1963:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1916:37:74", + "nodeType": "YulIdentifier", + "src": "1916:37:74" + }, + "nativeSrc": "1916:65:74", + "nodeType": "YulFunctionCall", + "src": "1916:65:74" + }, + "nativeSrc": "1916:65:74", + "nodeType": "YulExpressionStatement", + "src": "1916:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1778:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1842:9:74", + "nodeType": "YulTypedName", + "src": "1842:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1854:6:74", + "nodeType": "YulTypedName", + "src": "1854:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1865:4:74", + "nodeType": "YulTypedName", + "src": "1865:4:74", + "type": "" + } + ], + "src": "1778:210:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_uint256t_bytes32_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b5060405161045538038061045583398181016040528101906100329190610105565b81600081905550806001600080548152602001908152602001600020819055508081837f1335f1a2b3ff25f07f5fef07dd35d8fb4312c3c73b138e2fad9347b3319ab53c60006040516100859190610160565b60405180910390a4505061017b565b600080fd5b6000819050919050565b6100ac81610099565b81146100b757600080fd5b50565b6000815190506100c9816100a3565b92915050565b6000819050919050565b6100e2816100cf565b81146100ed57600080fd5b50565b6000815190506100ff816100d9565b92915050565b6000806040838503121561011c5761011b610094565b5b600061012a858286016100ba565b925050602061013b858286016100f0565b9150509250929050565b60008115159050919050565b61015a81610145565b82525050565b60006020820190506101756000830184610151565b92915050565b6102cb8061018a6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806356bc257d14610046578063695378f5146100625780638be745d114610080575b600080fd5b610060600480360381019061005b919061019e565b6100b0565b005b61006a61010f565b60405161007791906101ed565b60405180910390f35b61009a60048036038101906100959190610208565b610115565b6040516100a79190610244565b60405180910390f35b81600081905550806001600080548152602001908152602001600020819055508081837f1335f1a2b3ff25f07f5fef07dd35d8fb4312c3c73b138e2fad9347b3319ab53c6000604051610103919061027a565b60405180910390a45050565b60005481565b60016020528060005260406000206000915090505481565b600080fd5b6000819050919050565b61014581610132565b811461015057600080fd5b50565b6000813590506101628161013c565b92915050565b6000819050919050565b61017b81610168565b811461018657600080fd5b50565b60008135905061019881610172565b92915050565b600080604083850312156101b5576101b461012d565b5b60006101c385828601610153565b92505060206101d485828601610189565b9150509250929050565b6101e781610132565b82525050565b600060208201905061020260008301846101de565b92915050565b60006020828403121561021e5761021d61012d565b5b600061022c84828501610153565b91505092915050565b61023e81610168565b82525050565b60006020820190506102596000830184610235565b92915050565b60008115159050919050565b6102748161025f565b82525050565b600060208201905061028f600083018461026b565b9291505056fea2646970667358221220fe94fff5dea732497a170d1240ed7f25b8a6267aadd4bd5e6ad4d19b29c8e17064736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x455 CODESIZE SUB DUP1 PUSH2 0x455 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x105 JUMP JUMPDEST DUP2 PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 PUSH1 0x0 DUP1 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP1 DUP2 DUP4 PUSH32 0x1335F1A2B3FF25F07F5FEF07DD35D8FB4312C3C73B138E2FAD9347B3319AB53C PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x85 SWAP2 SWAP1 PUSH2 0x160 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP PUSH2 0x17B JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xAC DUP2 PUSH2 0x99 JUMP JUMPDEST DUP2 EQ PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xC9 DUP2 PUSH2 0xA3 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE2 DUP2 PUSH2 0xCF JUMP JUMPDEST DUP2 EQ PUSH2 0xED JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xFF DUP2 PUSH2 0xD9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x11C JUMPI PUSH2 0x11B PUSH2 0x94 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x12A DUP6 DUP3 DUP7 ADD PUSH2 0xBA JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x13B DUP6 DUP3 DUP7 ADD PUSH2 0xF0 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x15A DUP2 PUSH2 0x145 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x175 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x151 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2CB DUP1 PUSH2 0x18A PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x56BC257D EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x695378F5 EQ PUSH2 0x62 JUMPI DUP1 PUSH4 0x8BE745D1 EQ PUSH2 0x80 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x60 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B SWAP2 SWAP1 PUSH2 0x19E JUMP JUMPDEST PUSH2 0xB0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6A PUSH2 0x10F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x77 SWAP2 SWAP1 PUSH2 0x1ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x95 SWAP2 SWAP1 PUSH2 0x208 JUMP JUMPDEST PUSH2 0x115 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA7 SWAP2 SWAP1 PUSH2 0x244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST DUP2 PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 PUSH1 0x0 DUP1 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP1 DUP2 DUP4 PUSH32 0x1335F1A2B3FF25F07F5FEF07DD35D8FB4312C3C73B138E2FAD9347B3319AB53C PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x27A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x145 DUP2 PUSH2 0x132 JUMP JUMPDEST DUP2 EQ PUSH2 0x150 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x162 DUP2 PUSH2 0x13C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x17B DUP2 PUSH2 0x168 JUMP JUMPDEST DUP2 EQ PUSH2 0x186 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x198 DUP2 PUSH2 0x172 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1B5 JUMPI PUSH2 0x1B4 PUSH2 0x12D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C3 DUP6 DUP3 DUP7 ADD PUSH2 0x153 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1D4 DUP6 DUP3 DUP7 ADD PUSH2 0x189 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1E7 DUP2 PUSH2 0x132 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x202 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1DE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21E JUMPI PUSH2 0x21D PUSH2 0x12D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22C DUP5 DUP3 DUP6 ADD PUSH2 0x153 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23E DUP2 PUSH2 0x168 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x259 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x274 DUP2 PUSH2 0x25F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x28F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x26B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 INVALID SWAP5 SELFDESTRUCT CREATE2 0xDE 0xA7 ORIGIN BLOBHASH PUSH27 0x170D1240ED7F25B8A6267AADD4BD5E6AD4D19B29C8E17064736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "57:1133:71:-:0;;;396:369;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;503:21;480:20;:44;;;;574:21;534:15;:37;550:20;;534:37;;;;;;;;;;;:61;;;;708:21;673;638;611:147;743:5;611:147;;;;;;:::i;:::-;;;;;;;;396:369;;57:1133;;88:117:74;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:143::-;602:5;633:6;627:13;618:22;;649:33;676:5;649:33;:::i;:::-;545:143;;;;:::o;694:77::-;731:7;760:5;749:16;;694:77;;;:::o;777:122::-;850:24;868:5;850:24;:::i;:::-;843:5;840:35;830:63;;889:1;886;879:12;830:63;777:122;:::o;905:143::-;962:5;993:6;987:13;978:22;;1009:33;1036:5;1009:33;:::i;:::-;905:143;;;;:::o;1054:507::-;1133:6;1141;1190:2;1178:9;1169:7;1165:23;1161:32;1158:119;;;1196:79;;:::i;:::-;1158:119;1316:1;1341:64;1397:7;1388:6;1377:9;1373:22;1341:64;:::i;:::-;1331:74;;1287:128;1454:2;1480:64;1536:7;1527:6;1516:9;1512:22;1480:64;:::i;:::-;1470:74;;1425:129;1054:507;;;;;:::o;1567:90::-;1601:7;1644:5;1637:13;1630:21;1619:32;;1567:90;;;:::o;1663:109::-;1744:21;1759:5;1744:21;:::i;:::-;1739:3;1732:34;1663:109;;:::o;1778:210::-;1865:4;1903:2;1892:9;1888:18;1880:26;;1916:65;1978:1;1967:9;1963:17;1954:6;1916:65;:::i;:::-;1778:210;;;;:::o;57:1133:71:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@currentL2BlockNumber_16919": { + "entryPoint": 271, + "id": 16919, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setCurrentStateRoot_16973": { + "entryPoint": 176, + "id": 16973, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@stateRootHashes_16923": { + "entryPoint": 277, + "id": 16923, + "parameterSlots": 0, + "returnSlots": 0 + }, + "abi_decode_t_bytes32": { + "entryPoint": 393, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 339, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 520, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_uint256t_bytes32": { + "entryPoint": 414, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 619, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bytes32_to_t_bytes32_fromStack": { + "entryPoint": 565, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 478, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 634, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { + "entryPoint": 580, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 493, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 607, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 360, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 306, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 301, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 370, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 316, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:2989:74", + "nodeType": "YulBlock", + "src": "0:2989:74", + "statements": [ + { + "body": { + "nativeSrc": "47:35:74", + "nodeType": "YulBlock", + "src": "47:35:74", + "statements": [ + { + "nativeSrc": "57:19:74", + "nodeType": "YulAssignment", + "src": "57:19:74", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:74", + "nodeType": "YulLiteral", + "src": "73:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:74", + "nodeType": "YulIdentifier", + "src": "67:5:74" + }, + "nativeSrc": "67:9:74", + "nodeType": "YulFunctionCall", + "src": "67:9:74" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:74", + "nodeType": "YulIdentifier", + "src": "57:6:74" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:74", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:74", + "nodeType": "YulTypedName", + "src": "40:6:74", + "type": "" + } + ], + "src": "7:75:74" + }, + { + "body": { + "nativeSrc": "177:28:74", + "nodeType": "YulBlock", + "src": "177:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:74", + "nodeType": "YulLiteral", + "src": "194:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:74", + "nodeType": "YulLiteral", + "src": "197:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:74", + "nodeType": "YulIdentifier", + "src": "187:6:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulFunctionCall", + "src": "187:12:74" + }, + "nativeSrc": "187:12:74", + "nodeType": "YulExpressionStatement", + "src": "187:12:74" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:74", + "nodeType": "YulFunctionDefinition", + "src": "88:117:74" + }, + { + "body": { + "nativeSrc": "300:28:74", + "nodeType": "YulBlock", + "src": "300:28:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:74", + "nodeType": "YulLiteral", + "src": "317:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:74", + "nodeType": "YulLiteral", + "src": "320:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:74", + "nodeType": "YulIdentifier", + "src": "310:6:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulFunctionCall", + "src": "310:12:74" + }, + "nativeSrc": "310:12:74", + "nodeType": "YulExpressionStatement", + "src": "310:12:74" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:74", + "nodeType": "YulFunctionDefinition", + "src": "211:117:74" + }, + { + "body": { + "nativeSrc": "379:32:74", + "nodeType": "YulBlock", + "src": "379:32:74", + "statements": [ + { + "nativeSrc": "389:16:74", + "nodeType": "YulAssignment", + "src": "389:16:74", + "value": { + "name": "value", + "nativeSrc": "400:5:74", + "nodeType": "YulIdentifier", + "src": "400:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:74", + "nodeType": "YulIdentifier", + "src": "389:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nativeSrc": "334:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:74", + "nodeType": "YulTypedName", + "src": "361:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:74", + "nodeType": "YulTypedName", + "src": "371:7:74", + "type": "" + } + ], + "src": "334:77:74" + }, + { + "body": { + "nativeSrc": "460:79:74", + "nodeType": "YulBlock", + "src": "460:79:74", + "statements": [ + { + "body": { + "nativeSrc": "517:16:74", + "nodeType": "YulBlock", + "src": "517:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "526:1:74", + "nodeType": "YulLiteral", + "src": "526:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "529:1:74", + "nodeType": "YulLiteral", + "src": "529:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "519:6:74", + "nodeType": "YulIdentifier", + "src": "519:6:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulFunctionCall", + "src": "519:12:74" + }, + "nativeSrc": "519:12:74", + "nodeType": "YulExpressionStatement", + "src": "519:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "483:5:74", + "nodeType": "YulIdentifier", + "src": "483:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "508:5:74", + "nodeType": "YulIdentifier", + "src": "508:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "490:17:74", + "nodeType": "YulIdentifier", + "src": "490:17:74" + }, + "nativeSrc": "490:24:74", + "nodeType": "YulFunctionCall", + "src": "490:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "480:2:74", + "nodeType": "YulIdentifier", + "src": "480:2:74" + }, + "nativeSrc": "480:35:74", + "nodeType": "YulFunctionCall", + "src": "480:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "473:6:74", + "nodeType": "YulIdentifier", + "src": "473:6:74" + }, + "nativeSrc": "473:43:74", + "nodeType": "YulFunctionCall", + "src": "473:43:74" + }, + "nativeSrc": "470:63:74", + "nodeType": "YulIf", + "src": "470:63:74" + } + ] + }, + "name": "validator_revert_t_uint256", + "nativeSrc": "417:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "453:5:74", + "nodeType": "YulTypedName", + "src": "453:5:74", + "type": "" + } + ], + "src": "417:122:74" + }, + { + "body": { + "nativeSrc": "597:87:74", + "nodeType": "YulBlock", + "src": "597:87:74", + "statements": [ + { + "nativeSrc": "607:29:74", + "nodeType": "YulAssignment", + "src": "607:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "629:6:74", + "nodeType": "YulIdentifier", + "src": "629:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "616:12:74", + "nodeType": "YulIdentifier", + "src": "616:12:74" + }, + "nativeSrc": "616:20:74", + "nodeType": "YulFunctionCall", + "src": "616:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "607:5:74", + "nodeType": "YulIdentifier", + "src": "607:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "672:5:74", + "nodeType": "YulIdentifier", + "src": "672:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nativeSrc": "645:26:74", + "nodeType": "YulIdentifier", + "src": "645:26:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulFunctionCall", + "src": "645:33:74" + }, + "nativeSrc": "645:33:74", + "nodeType": "YulExpressionStatement", + "src": "645:33:74" + } + ] + }, + "name": "abi_decode_t_uint256", + "nativeSrc": "545:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "575:6:74", + "nodeType": "YulTypedName", + "src": "575:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "583:3:74", + "nodeType": "YulTypedName", + "src": "583:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "591:5:74", + "nodeType": "YulTypedName", + "src": "591:5:74", + "type": "" + } + ], + "src": "545:139:74" + }, + { + "body": { + "nativeSrc": "735:32:74", + "nodeType": "YulBlock", + "src": "735:32:74", + "statements": [ + { + "nativeSrc": "745:16:74", + "nodeType": "YulAssignment", + "src": "745:16:74", + "value": { + "name": "value", + "nativeSrc": "756:5:74", + "nodeType": "YulIdentifier", + "src": "756:5:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "745:7:74", + "nodeType": "YulIdentifier", + "src": "745:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "690:77:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "717:5:74", + "nodeType": "YulTypedName", + "src": "717:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "727:7:74", + "nodeType": "YulTypedName", + "src": "727:7:74", + "type": "" + } + ], + "src": "690:77:74" + }, + { + "body": { + "nativeSrc": "816:79:74", + "nodeType": "YulBlock", + "src": "816:79:74", + "statements": [ + { + "body": { + "nativeSrc": "873:16:74", + "nodeType": "YulBlock", + "src": "873:16:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "882:1:74", + "nodeType": "YulLiteral", + "src": "882:1:74", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "885:1:74", + "nodeType": "YulLiteral", + "src": "885:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "875:6:74", + "nodeType": "YulIdentifier", + "src": "875:6:74" + }, + "nativeSrc": "875:12:74", + "nodeType": "YulFunctionCall", + "src": "875:12:74" + }, + "nativeSrc": "875:12:74", + "nodeType": "YulExpressionStatement", + "src": "875:12:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "839:5:74", + "nodeType": "YulIdentifier", + "src": "839:5:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "864:5:74", + "nodeType": "YulIdentifier", + "src": "864:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "846:17:74", + "nodeType": "YulIdentifier", + "src": "846:17:74" + }, + "nativeSrc": "846:24:74", + "nodeType": "YulFunctionCall", + "src": "846:24:74" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "836:2:74", + "nodeType": "YulIdentifier", + "src": "836:2:74" + }, + "nativeSrc": "836:35:74", + "nodeType": "YulFunctionCall", + "src": "836:35:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "829:6:74", + "nodeType": "YulIdentifier", + "src": "829:6:74" + }, + "nativeSrc": "829:43:74", + "nodeType": "YulFunctionCall", + "src": "829:43:74" + }, + "nativeSrc": "826:63:74", + "nodeType": "YulIf", + "src": "826:63:74" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "773:122:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "809:5:74", + "nodeType": "YulTypedName", + "src": "809:5:74", + "type": "" + } + ], + "src": "773:122:74" + }, + { + "body": { + "nativeSrc": "953:87:74", + "nodeType": "YulBlock", + "src": "953:87:74", + "statements": [ + { + "nativeSrc": "963:29:74", + "nodeType": "YulAssignment", + "src": "963:29:74", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "985:6:74", + "nodeType": "YulIdentifier", + "src": "985:6:74" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "972:12:74", + "nodeType": "YulIdentifier", + "src": "972:12:74" + }, + "nativeSrc": "972:20:74", + "nodeType": "YulFunctionCall", + "src": "972:20:74" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "963:5:74", + "nodeType": "YulIdentifier", + "src": "963:5:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "1028:5:74", + "nodeType": "YulIdentifier", + "src": "1028:5:74" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "1001:26:74", + "nodeType": "YulIdentifier", + "src": "1001:26:74" + }, + "nativeSrc": "1001:33:74", + "nodeType": "YulFunctionCall", + "src": "1001:33:74" + }, + "nativeSrc": "1001:33:74", + "nodeType": "YulExpressionStatement", + "src": "1001:33:74" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "901:139:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "931:6:74", + "nodeType": "YulTypedName", + "src": "931:6:74", + "type": "" + }, + { + "name": "end", + "nativeSrc": "939:3:74", + "nodeType": "YulTypedName", + "src": "939:3:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "947:5:74", + "nodeType": "YulTypedName", + "src": "947:5:74", + "type": "" + } + ], + "src": "901:139:74" + }, + { + "body": { + "nativeSrc": "1129:391:74", + "nodeType": "YulBlock", + "src": "1129:391:74", + "statements": [ + { + "body": { + "nativeSrc": "1175:83:74", + "nodeType": "YulBlock", + "src": "1175:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1177:77:74", + "nodeType": "YulIdentifier", + "src": "1177:77:74" + }, + "nativeSrc": "1177:79:74", + "nodeType": "YulFunctionCall", + "src": "1177:79:74" + }, + "nativeSrc": "1177:79:74", + "nodeType": "YulExpressionStatement", + "src": "1177:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1150:7:74", + "nodeType": "YulIdentifier", + "src": "1150:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1159:9:74", + "nodeType": "YulIdentifier", + "src": "1159:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1146:3:74", + "nodeType": "YulIdentifier", + "src": "1146:3:74" + }, + "nativeSrc": "1146:23:74", + "nodeType": "YulFunctionCall", + "src": "1146:23:74" + }, + { + "kind": "number", + "nativeSrc": "1171:2:74", + "nodeType": "YulLiteral", + "src": "1171:2:74", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1142:3:74", + "nodeType": "YulIdentifier", + "src": "1142:3:74" + }, + "nativeSrc": "1142:32:74", + "nodeType": "YulFunctionCall", + "src": "1142:32:74" + }, + "nativeSrc": "1139:119:74", + "nodeType": "YulIf", + "src": "1139:119:74" + }, + { + "nativeSrc": "1268:117:74", + "nodeType": "YulBlock", + "src": "1268:117:74", + "statements": [ + { + "nativeSrc": "1283:15:74", + "nodeType": "YulVariableDeclaration", + "src": "1283:15:74", + "value": { + "kind": "number", + "nativeSrc": "1297:1:74", + "nodeType": "YulLiteral", + "src": "1297:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1287:6:74", + "nodeType": "YulTypedName", + "src": "1287:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1312:63:74", + "nodeType": "YulAssignment", + "src": "1312:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1347:9:74", + "nodeType": "YulIdentifier", + "src": "1347:9:74" + }, + { + "name": "offset", + "nativeSrc": "1358:6:74", + "nodeType": "YulIdentifier", + "src": "1358:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1343:3:74", + "nodeType": "YulIdentifier", + "src": "1343:3:74" + }, + "nativeSrc": "1343:22:74", + "nodeType": "YulFunctionCall", + "src": "1343:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1367:7:74", + "nodeType": "YulIdentifier", + "src": "1367:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "1322:20:74", + "nodeType": "YulIdentifier", + "src": "1322:20:74" + }, + "nativeSrc": "1322:53:74", + "nodeType": "YulFunctionCall", + "src": "1322:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "1312:6:74", + "nodeType": "YulIdentifier", + "src": "1312:6:74" + } + ] + } + ] + }, + { + "nativeSrc": "1395:118:74", + "nodeType": "YulBlock", + "src": "1395:118:74", + "statements": [ + { + "nativeSrc": "1410:16:74", + "nodeType": "YulVariableDeclaration", + "src": "1410:16:74", + "value": { + "kind": "number", + "nativeSrc": "1424:2:74", + "nodeType": "YulLiteral", + "src": "1424:2:74", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "1414:6:74", + "nodeType": "YulTypedName", + "src": "1414:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "1440:63:74", + "nodeType": "YulAssignment", + "src": "1440:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1475:9:74", + "nodeType": "YulIdentifier", + "src": "1475:9:74" + }, + { + "name": "offset", + "nativeSrc": "1486:6:74", + "nodeType": "YulIdentifier", + "src": "1486:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1471:3:74", + "nodeType": "YulIdentifier", + "src": "1471:3:74" + }, + "nativeSrc": "1471:22:74", + "nodeType": "YulFunctionCall", + "src": "1471:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "1495:7:74", + "nodeType": "YulIdentifier", + "src": "1495:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "1450:20:74", + "nodeType": "YulIdentifier", + "src": "1450:20:74" + }, + "nativeSrc": "1450:53:74", + "nodeType": "YulFunctionCall", + "src": "1450:53:74" + }, + "variableNames": [ + { + "name": "value1", + "nativeSrc": "1440:6:74", + "nodeType": "YulIdentifier", + "src": "1440:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256t_bytes32", + "nativeSrc": "1046:474:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1091:9:74", + "nodeType": "YulTypedName", + "src": "1091:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1102:7:74", + "nodeType": "YulTypedName", + "src": "1102:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1114:6:74", + "nodeType": "YulTypedName", + "src": "1114:6:74", + "type": "" + }, + { + "name": "value1", + "nativeSrc": "1122:6:74", + "nodeType": "YulTypedName", + "src": "1122:6:74", + "type": "" + } + ], + "src": "1046:474:74" + }, + { + "body": { + "nativeSrc": "1591:53:74", + "nodeType": "YulBlock", + "src": "1591:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1608:3:74", + "nodeType": "YulIdentifier", + "src": "1608:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1631:5:74", + "nodeType": "YulIdentifier", + "src": "1631:5:74" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nativeSrc": "1613:17:74", + "nodeType": "YulIdentifier", + "src": "1613:17:74" + }, + "nativeSrc": "1613:24:74", + "nodeType": "YulFunctionCall", + "src": "1613:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1601:6:74", + "nodeType": "YulIdentifier", + "src": "1601:6:74" + }, + "nativeSrc": "1601:37:74", + "nodeType": "YulFunctionCall", + "src": "1601:37:74" + }, + "nativeSrc": "1601:37:74", + "nodeType": "YulExpressionStatement", + "src": "1601:37:74" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "1526:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1579:5:74", + "nodeType": "YulTypedName", + "src": "1579:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1586:3:74", + "nodeType": "YulTypedName", + "src": "1586:3:74", + "type": "" + } + ], + "src": "1526:118:74" + }, + { + "body": { + "nativeSrc": "1748:124:74", + "nodeType": "YulBlock", + "src": "1748:124:74", + "statements": [ + { + "nativeSrc": "1758:26:74", + "nodeType": "YulAssignment", + "src": "1758:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1770:9:74", + "nodeType": "YulIdentifier", + "src": "1770:9:74" + }, + { + "kind": "number", + "nativeSrc": "1781:2:74", + "nodeType": "YulLiteral", + "src": "1781:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1766:3:74", + "nodeType": "YulIdentifier", + "src": "1766:3:74" + }, + "nativeSrc": "1766:18:74", + "nodeType": "YulFunctionCall", + "src": "1766:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1758:4:74", + "nodeType": "YulIdentifier", + "src": "1758:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1838:6:74", + "nodeType": "YulIdentifier", + "src": "1838:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1851:9:74", + "nodeType": "YulIdentifier", + "src": "1851:9:74" + }, + { + "kind": "number", + "nativeSrc": "1862:1:74", + "nodeType": "YulLiteral", + "src": "1862:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1847:3:74", + "nodeType": "YulIdentifier", + "src": "1847:3:74" + }, + "nativeSrc": "1847:17:74", + "nodeType": "YulFunctionCall", + "src": "1847:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nativeSrc": "1794:43:74", + "nodeType": "YulIdentifier", + "src": "1794:43:74" + }, + "nativeSrc": "1794:71:74", + "nodeType": "YulFunctionCall", + "src": "1794:71:74" + }, + "nativeSrc": "1794:71:74", + "nodeType": "YulExpressionStatement", + "src": "1794:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nativeSrc": "1650:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1720:9:74", + "nodeType": "YulTypedName", + "src": "1720:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1732:6:74", + "nodeType": "YulTypedName", + "src": "1732:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1743:4:74", + "nodeType": "YulTypedName", + "src": "1743:4:74", + "type": "" + } + ], + "src": "1650:222:74" + }, + { + "body": { + "nativeSrc": "1944:263:74", + "nodeType": "YulBlock", + "src": "1944:263:74", + "statements": [ + { + "body": { + "nativeSrc": "1990:83:74", + "nodeType": "YulBlock", + "src": "1990:83:74", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "1992:77:74", + "nodeType": "YulIdentifier", + "src": "1992:77:74" + }, + "nativeSrc": "1992:79:74", + "nodeType": "YulFunctionCall", + "src": "1992:79:74" + }, + "nativeSrc": "1992:79:74", + "nodeType": "YulExpressionStatement", + "src": "1992:79:74" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "1965:7:74", + "nodeType": "YulIdentifier", + "src": "1965:7:74" + }, + { + "name": "headStart", + "nativeSrc": "1974:9:74", + "nodeType": "YulIdentifier", + "src": "1974:9:74" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "1961:3:74", + "nodeType": "YulIdentifier", + "src": "1961:3:74" + }, + "nativeSrc": "1961:23:74", + "nodeType": "YulFunctionCall", + "src": "1961:23:74" + }, + { + "kind": "number", + "nativeSrc": "1986:2:74", + "nodeType": "YulLiteral", + "src": "1986:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "1957:3:74", + "nodeType": "YulIdentifier", + "src": "1957:3:74" + }, + "nativeSrc": "1957:32:74", + "nodeType": "YulFunctionCall", + "src": "1957:32:74" + }, + "nativeSrc": "1954:119:74", + "nodeType": "YulIf", + "src": "1954:119:74" + }, + { + "nativeSrc": "2083:117:74", + "nodeType": "YulBlock", + "src": "2083:117:74", + "statements": [ + { + "nativeSrc": "2098:15:74", + "nodeType": "YulVariableDeclaration", + "src": "2098:15:74", + "value": { + "kind": "number", + "nativeSrc": "2112:1:74", + "nodeType": "YulLiteral", + "src": "2112:1:74", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "2102:6:74", + "nodeType": "YulTypedName", + "src": "2102:6:74", + "type": "" + } + ] + }, + { + "nativeSrc": "2127:63:74", + "nodeType": "YulAssignment", + "src": "2127:63:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2162:9:74", + "nodeType": "YulIdentifier", + "src": "2162:9:74" + }, + { + "name": "offset", + "nativeSrc": "2173:6:74", + "nodeType": "YulIdentifier", + "src": "2173:6:74" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2158:3:74", + "nodeType": "YulIdentifier", + "src": "2158:3:74" + }, + "nativeSrc": "2158:22:74", + "nodeType": "YulFunctionCall", + "src": "2158:22:74" + }, + { + "name": "dataEnd", + "nativeSrc": "2182:7:74", + "nodeType": "YulIdentifier", + "src": "2182:7:74" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nativeSrc": "2137:20:74", + "nodeType": "YulIdentifier", + "src": "2137:20:74" + }, + "nativeSrc": "2137:53:74", + "nodeType": "YulFunctionCall", + "src": "2137:53:74" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "2127:6:74", + "nodeType": "YulIdentifier", + "src": "2127:6:74" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nativeSrc": "1878:329:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1914:9:74", + "nodeType": "YulTypedName", + "src": "1914:9:74", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "1925:7:74", + "nodeType": "YulTypedName", + "src": "1925:7:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "1937:6:74", + "nodeType": "YulTypedName", + "src": "1937:6:74", + "type": "" + } + ], + "src": "1878:329:74" + }, + { + "body": { + "nativeSrc": "2278:53:74", + "nodeType": "YulBlock", + "src": "2278:53:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2295:3:74", + "nodeType": "YulIdentifier", + "src": "2295:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2318:5:74", + "nodeType": "YulIdentifier", + "src": "2318:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "2300:17:74", + "nodeType": "YulIdentifier", + "src": "2300:17:74" + }, + "nativeSrc": "2300:24:74", + "nodeType": "YulFunctionCall", + "src": "2300:24:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2288:6:74", + "nodeType": "YulIdentifier", + "src": "2288:6:74" + }, + "nativeSrc": "2288:37:74", + "nodeType": "YulFunctionCall", + "src": "2288:37:74" + }, + "nativeSrc": "2288:37:74", + "nodeType": "YulExpressionStatement", + "src": "2288:37:74" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2213:118:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2266:5:74", + "nodeType": "YulTypedName", + "src": "2266:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2273:3:74", + "nodeType": "YulTypedName", + "src": "2273:3:74", + "type": "" + } + ], + "src": "2213:118:74" + }, + { + "body": { + "nativeSrc": "2435:124:74", + "nodeType": "YulBlock", + "src": "2435:124:74", + "statements": [ + { + "nativeSrc": "2445:26:74", + "nodeType": "YulAssignment", + "src": "2445:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2457:9:74", + "nodeType": "YulIdentifier", + "src": "2457:9:74" + }, + { + "kind": "number", + "nativeSrc": "2468:2:74", + "nodeType": "YulLiteral", + "src": "2468:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2453:3:74", + "nodeType": "YulIdentifier", + "src": "2453:3:74" + }, + "nativeSrc": "2453:18:74", + "nodeType": "YulFunctionCall", + "src": "2453:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2445:4:74", + "nodeType": "YulIdentifier", + "src": "2445:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2525:6:74", + "nodeType": "YulIdentifier", + "src": "2525:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2538:9:74", + "nodeType": "YulIdentifier", + "src": "2538:9:74" + }, + { + "kind": "number", + "nativeSrc": "2549:1:74", + "nodeType": "YulLiteral", + "src": "2549:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2534:3:74", + "nodeType": "YulIdentifier", + "src": "2534:3:74" + }, + "nativeSrc": "2534:17:74", + "nodeType": "YulFunctionCall", + "src": "2534:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nativeSrc": "2481:43:74", + "nodeType": "YulIdentifier", + "src": "2481:43:74" + }, + "nativeSrc": "2481:71:74", + "nodeType": "YulFunctionCall", + "src": "2481:71:74" + }, + "nativeSrc": "2481:71:74", + "nodeType": "YulExpressionStatement", + "src": "2481:71:74" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nativeSrc": "2337:222:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2407:9:74", + "nodeType": "YulTypedName", + "src": "2407:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2419:6:74", + "nodeType": "YulTypedName", + "src": "2419:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2430:4:74", + "nodeType": "YulTypedName", + "src": "2430:4:74", + "type": "" + } + ], + "src": "2337:222:74" + }, + { + "body": { + "nativeSrc": "2607:48:74", + "nodeType": "YulBlock", + "src": "2607:48:74", + "statements": [ + { + "nativeSrc": "2617:32:74", + "nodeType": "YulAssignment", + "src": "2617:32:74", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2642:5:74", + "nodeType": "YulIdentifier", + "src": "2642:5:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2635:6:74", + "nodeType": "YulIdentifier", + "src": "2635:6:74" + }, + "nativeSrc": "2635:13:74", + "nodeType": "YulFunctionCall", + "src": "2635:13:74" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "2628:6:74", + "nodeType": "YulIdentifier", + "src": "2628:6:74" + }, + "nativeSrc": "2628:21:74", + "nodeType": "YulFunctionCall", + "src": "2628:21:74" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "2617:7:74", + "nodeType": "YulIdentifier", + "src": "2617:7:74" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "2565:90:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2589:5:74", + "nodeType": "YulTypedName", + "src": "2589:5:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "2599:7:74", + "nodeType": "YulTypedName", + "src": "2599:7:74", + "type": "" + } + ], + "src": "2565:90:74" + }, + { + "body": { + "nativeSrc": "2720:50:74", + "nodeType": "YulBlock", + "src": "2720:50:74", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "2737:3:74", + "nodeType": "YulIdentifier", + "src": "2737:3:74" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "2757:5:74", + "nodeType": "YulIdentifier", + "src": "2757:5:74" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "2742:14:74", + "nodeType": "YulIdentifier", + "src": "2742:14:74" + }, + "nativeSrc": "2742:21:74", + "nodeType": "YulFunctionCall", + "src": "2742:21:74" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "2730:6:74", + "nodeType": "YulIdentifier", + "src": "2730:6:74" + }, + "nativeSrc": "2730:34:74", + "nodeType": "YulFunctionCall", + "src": "2730:34:74" + }, + "nativeSrc": "2730:34:74", + "nodeType": "YulExpressionStatement", + "src": "2730:34:74" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "2661:109:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "2708:5:74", + "nodeType": "YulTypedName", + "src": "2708:5:74", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "2715:3:74", + "nodeType": "YulTypedName", + "src": "2715:3:74", + "type": "" + } + ], + "src": "2661:109:74" + }, + { + "body": { + "nativeSrc": "2868:118:74", + "nodeType": "YulBlock", + "src": "2868:118:74", + "statements": [ + { + "nativeSrc": "2878:26:74", + "nodeType": "YulAssignment", + "src": "2878:26:74", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2890:9:74", + "nodeType": "YulIdentifier", + "src": "2890:9:74" + }, + { + "kind": "number", + "nativeSrc": "2901:2:74", + "nodeType": "YulLiteral", + "src": "2901:2:74", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2886:3:74", + "nodeType": "YulIdentifier", + "src": "2886:3:74" + }, + "nativeSrc": "2886:18:74", + "nodeType": "YulFunctionCall", + "src": "2886:18:74" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "2878:4:74", + "nodeType": "YulIdentifier", + "src": "2878:4:74" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "2952:6:74", + "nodeType": "YulIdentifier", + "src": "2952:6:74" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "2965:9:74", + "nodeType": "YulIdentifier", + "src": "2965:9:74" + }, + { + "kind": "number", + "nativeSrc": "2976:1:74", + "nodeType": "YulLiteral", + "src": "2976:1:74", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "2961:3:74", + "nodeType": "YulIdentifier", + "src": "2961:3:74" + }, + "nativeSrc": "2961:17:74", + "nodeType": "YulFunctionCall", + "src": "2961:17:74" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "2914:37:74", + "nodeType": "YulIdentifier", + "src": "2914:37:74" + }, + "nativeSrc": "2914:65:74", + "nodeType": "YulFunctionCall", + "src": "2914:65:74" + }, + "nativeSrc": "2914:65:74", + "nodeType": "YulExpressionStatement", + "src": "2914:65:74" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "2776:210:74", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "2840:9:74", + "nodeType": "YulTypedName", + "src": "2840:9:74", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "2852:6:74", + "nodeType": "YulTypedName", + "src": "2852:6:74", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "2863:4:74", + "nodeType": "YulTypedName", + "src": "2863:4:74", + "type": "" + } + ], + "src": "2776:210:74" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_uint256t_bytes32(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n}\n", + "id": 74, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c806356bc257d14610046578063695378f5146100625780638be745d114610080575b600080fd5b610060600480360381019061005b919061019e565b6100b0565b005b61006a61010f565b60405161007791906101ed565b60405180910390f35b61009a60048036038101906100959190610208565b610115565b6040516100a79190610244565b60405180910390f35b81600081905550806001600080548152602001908152602001600020819055508081837f1335f1a2b3ff25f07f5fef07dd35d8fb4312c3c73b138e2fad9347b3319ab53c6000604051610103919061027a565b60405180910390a45050565b60005481565b60016020528060005260406000206000915090505481565b600080fd5b6000819050919050565b61014581610132565b811461015057600080fd5b50565b6000813590506101628161013c565b92915050565b6000819050919050565b61017b81610168565b811461018657600080fd5b50565b60008135905061019881610172565b92915050565b600080604083850312156101b5576101b461012d565b5b60006101c385828601610153565b92505060206101d485828601610189565b9150509250929050565b6101e781610132565b82525050565b600060208201905061020260008301846101de565b92915050565b60006020828403121561021e5761021d61012d565b5b600061022c84828501610153565b91505092915050565b61023e81610168565b82525050565b60006020820190506102596000830184610235565b92915050565b60008115159050919050565b6102748161025f565b82525050565b600060208201905061028f600083018461026b565b9291505056fea2646970667358221220fe94fff5dea732497a170d1240ed7f25b8a6267aadd4bd5e6ad4d19b29c8e17064736f6c63430008190033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x56BC257D EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x695378F5 EQ PUSH2 0x62 JUMPI DUP1 PUSH4 0x8BE745D1 EQ PUSH2 0x80 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x60 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B SWAP2 SWAP1 PUSH2 0x19E JUMP JUMPDEST PUSH2 0xB0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6A PUSH2 0x10F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x77 SWAP2 SWAP1 PUSH2 0x1ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x9A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x95 SWAP2 SWAP1 PUSH2 0x208 JUMP JUMPDEST PUSH2 0x115 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA7 SWAP2 SWAP1 PUSH2 0x244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST DUP2 PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 PUSH1 0x0 DUP1 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP1 DUP2 DUP4 PUSH32 0x1335F1A2B3FF25F07F5FEF07DD35D8FB4312C3C73B138E2FAD9347B3319AB53C PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x27A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x145 DUP2 PUSH2 0x132 JUMP JUMPDEST DUP2 EQ PUSH2 0x150 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x162 DUP2 PUSH2 0x13C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x17B DUP2 PUSH2 0x168 JUMP JUMPDEST DUP2 EQ PUSH2 0x186 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x198 DUP2 PUSH2 0x172 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1B5 JUMPI PUSH2 0x1B4 PUSH2 0x12D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C3 DUP6 DUP3 DUP7 ADD PUSH2 0x153 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1D4 DUP6 DUP3 DUP7 ADD PUSH2 0x189 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1E7 DUP2 PUSH2 0x132 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x202 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1DE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21E JUMPI PUSH2 0x21D PUSH2 0x12D JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x22C DUP5 DUP3 DUP6 ADD PUSH2 0x153 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23E DUP2 PUSH2 0x168 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x259 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x274 DUP2 PUSH2 0x25F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x28F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x26B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 INVALID SWAP5 SELFDESTRUCT CREATE2 0xDE 0xA7 ORIGIN BLOBHASH PUSH27 0x170D1240ED7F25B8A6267AADD4BD5E6AD4D19B29C8E17064736F6C PUSH4 0x43000819 STOP CALLER ", + "sourceMap": "57:1133:71:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;771:417;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;264:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;305:84;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;771:417;926:21;903:20;:44;;;;997:21;957:15;:37;973:20;;957:37;;;;;;;;;;;:61;;;;1131:21;1096;1061;1034:147;1166:5;1034:147;;;;;;:::i;:::-;;;;;;;;771:417;;:::o;264:35::-;;;;:::o;305:84::-;;;;;;;;;;;;;;;;;:::o;88:117:74:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:77::-;727:7;756:5;745:16;;690:77;;;:::o;773:122::-;846:24;864:5;846:24;:::i;:::-;839:5;836:35;826:63;;885:1;882;875:12;826:63;773:122;:::o;901:139::-;947:5;985:6;972:20;963:29;;1001:33;1028:5;1001:33;:::i;:::-;901:139;;;;:::o;1046:474::-;1114:6;1122;1171:2;1159:9;1150:7;1146:23;1142:32;1139:119;;;1177:79;;:::i;:::-;1139:119;1297:1;1322:53;1367:7;1358:6;1347:9;1343:22;1322:53;:::i;:::-;1312:63;;1268:117;1424:2;1450:53;1495:7;1486:6;1475:9;1471:22;1450:53;:::i;:::-;1440:63;;1395:118;1046:474;;;;;:::o;1526:118::-;1613:24;1631:5;1613:24;:::i;:::-;1608:3;1601:37;1526:118;;:::o;1650:222::-;1743:4;1781:2;1770:9;1766:18;1758:26;;1794:71;1862:1;1851:9;1847:17;1838:6;1794:71;:::i;:::-;1650:222;;;;:::o;1878:329::-;1937:6;1986:2;1974:9;1965:7;1961:23;1957:32;1954:119;;;1992:79;;:::i;:::-;1954:119;2112:1;2137:53;2182:7;2173:6;2162:9;2158:22;2137:53;:::i;:::-;2127:63;;2083:117;1878:329;;;;:::o;2213:118::-;2300:24;2318:5;2300:24;:::i;:::-;2295:3;2288:37;2213:118;;:::o;2337:222::-;2430:4;2468:2;2457:9;2453:18;2445:26;;2481:71;2549:1;2538:9;2534:17;2525:6;2481:71;:::i;:::-;2337:222;;;;:::o;2565:90::-;2599:7;2642:5;2635:13;2628:21;2617:32;;2565:90;;;:::o;2661:109::-;2742:21;2757:5;2742:21;:::i;:::-;2737:3;2730:34;2661:109;;:::o;2776:210::-;2863:4;2901:2;2890:9;2886:18;2878:26;;2914:65;2976:1;2965:9;2961:17;2952:6;2914:65;:::i;:::-;2776:210;;;;:::o" + }, + "methodIdentifiers": { + "currentL2BlockNumber()": "695378f5", + "setCurrentStateRoot(uint256,bytes32)": "56bc257d", + "stateRootHashes(uint256)": "8be745d1" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_currentL2BlockNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_currentStateRootHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"lastBlockFinalized\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"startingRootHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"finalRootHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"withProof\",\"type\":\"bool\"}],\"name\":\"DataFinalized\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"currentL2BlockNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_currentL2BlockNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_currentStateRootHash\",\"type\":\"bytes32\"}],\"name\":\"setCurrentStateRoot\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"stateRootHashes\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"stateRootHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/RollupMock.sol\":\"RollupMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/RollupMock.sol\":{\"keccak256\":\"0x27725ca26ebc250bde7a461949fc0ddcd2203622935ea9281b2ea9b19b135b30\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da0a50883bb361cd7f0a27550dddc25c7cd21381afed82ff2dcc6aca322613a6\",\"dweb:/ipfs/QmUohh8c4jSpEot3aEWMU5C1wq6mUQLAugpKzPwmd93t49\"]}},\"version\":1}" + } + }, + "hardhat/console.sol": { + "console": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220896a92619a9f290b0109b67f23563adff79947c9e27c8daf8669292ea6a1d23964736f6c63430008190033", + "opcodes": "PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP10 PUSH11 0x92619A9F290B0109B67F23 JUMP GASPRICE 0xDF 0xF7 SWAP10 SELFBALANCE 0xC9 0xE2 PUSH29 0x8DAF8669292EA6A1D23964736F6C634300081900330000000000000000 ", + "sourceMap": "66:68934:73:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220896a92619a9f290b0109b67f23563adff79947c9e27c8daf8669292ea6a1d23964736f6c63430008190033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP10 PUSH11 0x92619A9F290B0109B67F23 JUMP GASPRICE 0xDF 0xF7 SWAP10 SELFBALANCE 0xC9 0xE2 PUSH29 0x8DAF8669292EA6A1D23964736F6C634300081900330000000000000000 ", + "sourceMap": "66:68934:73:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"hardhat/console.sol\":\"console\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"hardhat/console.sol\":{\"keccak256\":\"0x7434453e6d3b7d0e5d0eb7846ffdbc27f0ccf3b163591263739b628074dc103a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://49355f780520494d1d5a0f01858385e51bb5280ce0ecfb960f16995065dca395\",\"dweb:/ipfs/QmSwJ6C5QLz6xKeQZS8wbwjU1KxRFTYfwbGmtzisd5sRW4\"]}},\"version\":1}" + } + } + } + } +} \ No newline at end of file diff --git a/ignition/deployments/chain-11155111/deployed_addresses.json b/ignition/deployments/chain-11155111/deployed_addresses.json new file mode 100644 index 0000000..26fcb9d --- /dev/null +++ b/ignition/deployments/chain-11155111/deployed_addresses.json @@ -0,0 +1,4 @@ +{ + "NFTResolverModule#LabelUtils": "0x3504e0147B59cEac29099965d76637A38E23e28B", + "NFTResolverModule#NFTResolver": "0x52992f84Af8204A84cB7F1f7106a59B14882A6E2" +} diff --git a/ignition/deployments/chain-11155111/journal.jsonl b/ignition/deployments/chain-11155111/journal.jsonl new file mode 100644 index 0000000..cb967e2 --- /dev/null +++ b/ignition/deployments/chain-11155111/journal.jsonl @@ -0,0 +1,12 @@ + +{"chainId":11155111,"type":"DEPLOYMENT_INITIALIZE"} +{"artifactId":"NFTResolverModule#LabelUtils","constructorArgs":[],"contractName":"LabelUtils","dependencies":[],"from":"0x4a8e79e5258592f208ddba8a8a0d3ffeb051b10a","futureId":"NFTResolverModule#LabelUtils","futureType":"NAMED_ARTIFACT_LIBRARY_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"NFTResolverModule#LabelUtils","networkInteraction":{"data":"0x610738610052600b82828239805160001a6073146045577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806308dea91d1461004557806394bc2db614610075575b600080fd5b61005f600480360381019061005a9190610409565b6100a5565b60405161006c919061046b565b60405180910390f35b61008f600480360381019061008a9190610409565b610193565b60405161009c9190610505565b60405180910390f35b600080600090506000805b84518110156101485760008582815181106100ce576100cd610527565b5b602001015160f81c60f81b60f81c905060308160ff16101580156100f6575060398160ff1611155b1561012d576030816101089190610592565b60ff16600a8561011891906105c7565b6101229190610609565b93506001925061013a565b82156101395750610148565b5b5080806001019150506100b0565b5080610189576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101809061069a565b60405180910390fd5b8192505050919050565b60606000808382815181106101ab576101aa610527565b5b602001015160f81c60f81b60f81c905081806101c6906106ba565b92505060008160ff1667ffffffffffffffff8111156101e8576101e76102de565b5b6040519080825280601f01601f19166020018201604052801561021a5781602001600182028036833780820191505090505b50905060005b8260ff168110156102a3578581856102389190610609565b8151811061024957610248610527565b5b602001015160f81c60f81b82828151811061026757610266610527565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610220565b50809350505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610316826102cd565b810181811067ffffffffffffffff82111715610335576103346102de565b5b80604052505050565b60006103486102af565b9050610354828261030d565b919050565b600067ffffffffffffffff821115610374576103736102de565b5b61037d826102cd565b9050602081019050919050565b82818337600083830152505050565b60006103ac6103a784610359565b61033e565b9050828152602081018484840111156103c8576103c76102c8565b5b6103d384828561038a565b509392505050565b600082601f8301126103f0576103ef6102c3565b5b8135610400848260208601610399565b91505092915050565b60006020828403121561041f5761041e6102b9565b5b600082013567ffffffffffffffff81111561043d5761043c6102be565b5b610449848285016103db565b91505092915050565b6000819050919050565b61046581610452565b82525050565b6000602082019050610480600083018461045c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104c05780820151818401526020810190506104a5565b60008484015250505050565b60006104d782610486565b6104e18185610491565b93506104f18185602086016104a2565b6104fa816102cd565b840191505092915050565b6000602082019050818103600083015261051f81846104cc565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061059d82610556565b91506105a883610556565b9250828203905060ff8111156105c1576105c0610563565b5b92915050565b60006105d282610452565b91506105dd83610452565b92508282026105eb81610452565b9150828204841483151761060257610601610563565b5b5092915050565b600061061482610452565b915061061f83610452565b925082820190508082111561063757610636610563565b5b92915050565b600082825260208201905092915050565b7f4e6f206e756d657269632073756666697820666f756e64000000000000000000600082015250565b600061068460178361063d565b915061068f8261064e565b602082019050919050565b600060208201905081810360008301526106b381610677565b9050919050565b60006106c582610452565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106f7576106f6610563565b5b60018201905091905056fea2646970667358221220fd64dc77b8c67827745419800c3980f933551e388779f20784cc6bf95b81b97c64736f6c63430008190033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"NFTResolverModule#LabelUtils","networkInteractionId":1,"nonce":309,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"58699875296"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"1000000000"}},"hash":"0x31e97e6f3f59a67ddf7923b20f224cba9f35b2c9d02a1e8eaae635042f673db4"},"type":"TRANSACTION_SEND"} +{"futureId":"NFTResolverModule#LabelUtils","hash":"0x31e97e6f3f59a67ddf7923b20f224cba9f35b2c9d02a1e8eaae635042f673db4","networkInteractionId":1,"receipt":{"blockHash":"0xc6c21ad671056f41d1d426033c0c2ce78d374b4484b21c6926f08250e5da2319","blockNumber":6587305,"contractAddress":"0x3504e0147B59cEac29099965d76637A38E23e28B","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"NFTResolverModule#LabelUtils","result":{"address":"0x3504e0147B59cEac29099965d76637A38E23e28B","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"NFTResolverModule#NFTResolver","constructorArgs":["0x17289b2e80DcaB38249adb5a2Bd1a0cAF12361A0","0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e","0x0635513f179D50A207757E05759CbD106d7dFcE8",11155111,"0x8FADE66B79cC9f707aB26799354482EB93a5B7dD"],"contractName":"NFTResolver","dependencies":["NFTResolverModule#LabelUtils"],"from":"0x4a8e79e5258592f208ddba8a8a0d3ffeb051b10a","futureId":"NFTResolverModule#NFTResolver","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{"LabelUtils":"0x3504e0147B59cEac29099965d76637A38E23e28B"},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"NFTResolverModule#NFTResolver","networkInteraction":{"data":"0x61012060405234801561001157600080fd5b506040516139bb3803806139bb833981810160405281019061003391906103b6565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036100a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100999061048e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610111576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610108906104fa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610180576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017790610566565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508160e081815250508073ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff16815250505050505050610586565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061029382610268565b9050919050565b60006102a582610288565b9050919050565b6102b58161029a565b81146102c057600080fd5b50565b6000815190506102d2816102ac565b92915050565b60006102e382610288565b9050919050565b6102f3816102d8565b81146102fe57600080fd5b50565b600081519050610310816102ea565b92915050565b600061032182610288565b9050919050565b61033181610316565b811461033c57600080fd5b50565b60008151905061034e81610328565b92915050565b6000819050919050565b61036781610354565b811461037257600080fd5b50565b6000815190506103848161035e565b92915050565b61039381610288565b811461039e57600080fd5b50565b6000815190506103b08161038a565b92915050565b600080600080600060a086880312156103d2576103d1610263565b5b60006103e0888289016102c3565b95505060206103f188828901610301565b94505060406104028882890161033f565b935050606061041388828901610375565b9250506080610424888289016103a1565b9150509295509295909350565b600082825260208201905092915050565b7f4e616d6520577261707065722061646472657373206d75737420626520736574600082015250565b6000610478602083610431565b915061048382610442565b602082019050919050565b600060208201905081810360008301526104a78161046b565b9050919050565b7f56657269666965722061646472657373206d7573742062652073657400000000600082015250565b60006104e4601c83610431565b91506104ef826104ae565b602082019050919050565b60006020820190508181036000830152610513816104d7565b9050919050565b7f52656769737472792061646472657373206d7573742062652073657400000000600082015250565b6000610550601c83610431565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b60805160a05160c05160e051610100516133c76105f460003960008181610c4a0152610e92015260008181610b610152611184015260008181610a110152818161105a01526110ad01526000818161059c0152610fbe0152600081816105780152610f6301526133c76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639061b9231161008c578063d6ae3cd511610066578063d6ae3cd514610274578063f00eebf414610292578063f470901a146102c2578063f8256121146102f2576100ea565b80639061b9231461020a578063a8e5fbc01461023a578063d358df7714610258576100ea565b80632b7ac3f3116100c85780632b7ac3f3146101805780633f15457f1461019e5780635bdaa916146101bc5780636d74e86e146101ec576100ea565b806301ffc9a7146100ef57806315f643861461011f5780631a33ddae14610150575b600080fd5b61010960048036038101906101049190611994565b610310565b60405161011691906119dc565b60405180910390f35b61013960048036038101906101349190611b3d565b61045a565b604051610147929190611be0565b60405180910390f35b61016a60048036038101906101659190611c69565b610471565b6040516101779190611ccf565b60405180910390f35b610188610576565b6040516101959190611d49565b60405180910390f35b6101a661059a565b6040516101b39190611d85565b60405180910390f35b6101d660048036038101906101d19190611da0565b6105be565b6040516101e39190611ea0565b60405180910390f35b6101f4610778565b6040516102019190611ccf565b60405180910390f35b610224600480360381019061021f9190611da0565b610783565b6040516102319190611ea0565b60405180910390f35b610242610a0f565b60405161024f9190611ee3565b60405180910390f35b610272600480360381019061026d9190611f2a565b610a33565b005b61027c610b5f565b6040516102899190611ccf565b60405180910390f35b6102ac60048036038101906102a79190611f2a565b610b83565b6040516102b99190611ea0565b60405180910390f35b6102dc60048036038101906102d7919061206b565b610bea565b6040516102e99190611ea0565b60405180910390f35b6102fa610c48565b60405161030791906120e3565b60405180910390f35b60007f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103db57507f15f64386000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061044357507ff00eebf4000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610453575061045282610c6c565b5b9050919050565b600080610468836000610cd6565b91509150915091565b600080733504e0147B59cEac29099965d76637A38E23e28B6394bc2db685856040518363ffffffff1660e01b81526004016104ad92919061213c565b600060405180830381865af41580156104ca573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104f391906121d0565b9050733504e0147B59cEac29099965d76637A38E23e28B6308dea91d826040518263ffffffff1660e01b815260040161052c9190612252565b602060405180830381865af4158015610549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056d91906122a0565b91505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600085858101906105d19190611b3d565b905060008060008060008089898101906105eb9190612438565b95509550955095509550955060008673ffffffffffffffffffffffffffffffffffffffff1663c51ca02a8787878c610621610778565b6040518663ffffffff1660e01b81526004016106419594939291906126e3565b600060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106879190612800565b905084518151146106d357805185516040517f291894250000000000000000000000000000000000000000000000000000000081526004016106ca929190612849565b60405180910390fd5b600061076e8483856040516024016106ec929190612872565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16610e3f90919063ffffffff16565b9050805160208201f35b600062015180905090565b606060048383905010156107cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c390612906565b60405180910390fd5b6000838360049080926107e193929190612930565b8101906107ee919061296b565b905060008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905080156108f7576108ee87878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610e8b565b92505050610a07565b600061094888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050600086869061095a91906129b0565b9050633b3b57de60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036109cc5760006109b48a8a610471565b90506109c08184610f38565b95505050505050610a07565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fe90612a5b565b60405180910390fd5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610a8284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061045a565b509050610a8e81610fb9565b610acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac490612aed565b60405180910390fd5b8160008083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f88781081cc340609705af0f96bf3ba64ea267873444e91725bd072f2af0f44d8848484604051610b5193929190612b3a565b60405180910390a150505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000610bd685858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506000610cd6565b915050610be281611182565b509392505050565b6060600083600081518110610c0257610c01612b6c565b5b6020026020010151806020019051810190610c1d9190612bb0565b905080604051602001610c3091906120e3565b60405160208183030381529060405291505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000806000610cee84866111e190919063ffffffff16565b60ff1690506000801b92506000811115610e26576000610d25600186610d149190612c0c565b838861120c9092919063ffffffff16565b9050610d488660018488610d399190612c0c565b610d439190612c0c565b610cd6565b80945081955050508381604051602001610d63929190612c61565b604051602081830303815290604052805190602001209350600073ffffffffffffffffffffffffffffffffffffffff1660008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e20578360008086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050610e38565b50610e36565b6000801b60009250925050610e38565b505b9250929050565b6060610e83838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250611238565b905092915050565b60606000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1684604051610ed59190612cc9565b600060405180830381855afa9150503d8060008114610f10576040519150601f19603f3d011682016040523d82523d6000602084013e610f15565b606091505b50915091508115610f2a578092505050610f32565b805160208201fd5b92915050565b6060610fb363f470901a60e01b60405180602001604052806000815250610fa486610f966002610f887f00000000000000000000000000000000000000000000000000000000000000008a611305565b61141490919063ffffffff16565b6114f590919063ffffffff16565b6115769092919063ffffffff16565b92915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302571be3846040518263ffffffff1660e01b81526004016110159190612ce0565b602060405180830381865afa158015611032573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110569190612d10565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361114b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636352211e8460001c6040518263ffffffff1660e01b81526004016111079190611ccf565b602060405180830381865afa158015611124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111489190612d10565b90505b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614915050919050565b7f0000000000000000000000000000000000000000000000000000000000000000816040517fe0a050710000000000000000000000000000000000000000000000000000000081526004016111d8929190612d3d565b60405180910390fd5b60008282815181106111f6576111f5612b6c565b5b602001015160f81c60f81b60f81c905092915050565b60008351828461121c9190612c0c565b111561122757600080fd5b818360208601012090509392505050565b60608247101561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612dd8565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516112a69190612cc9565b60006040518083038185875af1925050503d80600081146112e3576040519150601f19603f3d011682016040523d82523d6000602084013e6112e8565b606091505b50915091506112f987838387611701565b92505050949350505050565b61130d6118cd565b6000602067ffffffffffffffff81111561132a57611329611a12565b5b6040519080825280602002602001820160405280156113585781602001602082028036833780820191505090505b5090506000602067ffffffffffffffff81111561137857611377611a12565b5b6040519080825280602002602001820160405280156113ab57816020015b60608152602001906001900390816113965790505b50905060008252600081526040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200160008152602001828152509250505092915050565b61141c6118cd565b60008360400151905060008151905060008111801561143f575060208560600151105b156114505761144f8560ff611776565b5b600181018252602085604001515111156114a25760206040517f128e70080000000000000000000000000000000000000000000000000000000081526004016114999190611ccf565b60405180910390fd5b60008560600181815250506114b8856000611776565b6114ea856114e587876040516020016114d19190611ccf565b60405160208183030381529060405261181d565b611776565b849250505092915050565b6114fd6118cd565b602083606001511061153b576040517fb00fd63800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61156d8361156885856040516020016115549190611ccf565b60405160208183030381529060405261181d565b611776565b82905092915050565b600083604001515111801561158f575060208360600151105b156115a05761159f8360ff611776565b5b30836000015173ffffffffffffffffffffffffffffffffffffffff1663b50f2fbc6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156115f0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116199190612f7a565b84602001518560400151866080015160405160240161163a93929190612fc3565b60405160208183030381529060405263ea9cd3bf60e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050635bdaa91660e01b866000015187602001518860400151896080015189896040516020016116b296959493929190613017565b6040516020818303038152906040526040517f556f18300000000000000000000000000000000000000000000000000000000081526004016116f89594939291906131a4565b60405180910390fd5b6060831561176357600083510361175b5761171b8561185a565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190613258565b60405180910390fd5b5b82905061176e565b61176d838361187d565b5b949350505050565b6000600183604001515161178a9190613278565b905082606001805180919061179e906132ac565b81525060086117ad91906132f4565b8260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c836040015182815181106117ec576117eb612b6c565b5b6020026020010151178360400151828151811061180c5761180b612b6c565b5b602002602001018181525050505050565b600080836080015190508051915060018201815282818360ff168151811061184857611847612b6c565b5b60200260200101819052505092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156118905781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c4919061336f565b60405180910390fd5b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6119718161193c565b811461197c57600080fd5b50565b60008135905061198e81611968565b92915050565b6000602082840312156119aa576119a9611932565b5b60006119b88482850161197f565b91505092915050565b60008115159050919050565b6119d6816119c1565b82525050565b60006020820190506119f160008301846119cd565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a4a82611a01565b810181811067ffffffffffffffff82111715611a6957611a68611a12565b5b80604052505050565b6000611a7c611928565b9050611a888282611a41565b919050565b600067ffffffffffffffff821115611aa857611aa7611a12565b5b611ab182611a01565b9050602081019050919050565b82818337600083830152505050565b6000611ae0611adb84611a8d565b611a72565b905082815260208101848484011115611afc57611afb6119fc565b5b611b07848285611abe565b509392505050565b600082601f830112611b2457611b236119f7565b5b8135611b34848260208601611acd565b91505092915050565b600060208284031215611b5357611b52611932565b5b600082013567ffffffffffffffff811115611b7157611b70611937565b5b611b7d84828501611b0f565b91505092915050565b6000819050919050565b611b9981611b86565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bca82611b9f565b9050919050565b611bda81611bbf565b82525050565b6000604082019050611bf56000830185611b90565b611c026020830184611bd1565b9392505050565b600080fd5b600080fd5b60008083601f840112611c2957611c286119f7565b5b8235905067ffffffffffffffff811115611c4657611c45611c09565b5b602083019150836001820283011115611c6257611c61611c0e565b5b9250929050565b60008060208385031215611c8057611c7f611932565b5b600083013567ffffffffffffffff811115611c9e57611c9d611937565b5b611caa85828601611c13565b92509250509250929050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b6000819050919050565b6000611d0f611d0a611d0584611b9f565b611cea565b611b9f565b9050919050565b6000611d2182611cf4565b9050919050565b6000611d3382611d16565b9050919050565b611d4381611d28565b82525050565b6000602082019050611d5e6000830184611d3a565b92915050565b6000611d6f82611d16565b9050919050565b611d7f81611d64565b82525050565b6000602082019050611d9a6000830184611d76565b92915050565b60008060008060408587031215611dba57611db9611932565b5b600085013567ffffffffffffffff811115611dd857611dd7611937565b5b611de487828801611c13565b9450945050602085013567ffffffffffffffff811115611e0757611e06611937565b5b611e1387828801611c13565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e5b578082015181840152602081019050611e40565b60008484015250505050565b6000611e7282611e21565b611e7c8185611e2c565b9350611e8c818560208601611e3d565b611e9581611a01565b840191505092915050565b60006020820190508181036000830152611eba8184611e67565b905092915050565b6000611ecd82611d16565b9050919050565b611edd81611ec2565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b611f0781611bbf565b8114611f1257600080fd5b50565b600081359050611f2481611efe565b92915050565b600080600060408486031215611f4357611f42611932565b5b600084013567ffffffffffffffff811115611f6157611f60611937565b5b611f6d86828701611c13565b93509350506020611f8086828701611f15565b9150509250925092565b600067ffffffffffffffff821115611fa557611fa4611a12565b5b602082029050602081019050919050565b6000611fc9611fc484611f8a565b611a72565b90508083825260208201905060208402830185811115611fec57611feb611c0e565b5b835b8181101561203357803567ffffffffffffffff811115612011576120106119f7565b5b80860161201e8982611b0f565b85526020850194505050602081019050611fee565b5050509392505050565b600082601f830112612052576120516119f7565b5b8135612062848260208601611fb6565b91505092915050565b6000806040838503121561208257612081611932565b5b600083013567ffffffffffffffff8111156120a05761209f611937565b5b6120ac8582860161203d565b925050602083013567ffffffffffffffff8111156120cd576120cc611937565b5b6120d985828601611b0f565b9150509250929050565b60006020820190506120f86000830184611bd1565b92915050565b600082825260208201905092915050565b600061211b83856120fe565b9350612128838584611abe565b61213183611a01565b840190509392505050565b6000602082019050818103600083015261215781848661210f565b90509392505050565b600061217361216e84611a8d565b611a72565b90508281526020810184848401111561218f5761218e6119fc565b5b61219a848285611e3d565b509392505050565b600082601f8301126121b7576121b66119f7565b5b81516121c7848260208601612160565b91505092915050565b6000602082840312156121e6576121e5611932565b5b600082015167ffffffffffffffff81111561220457612203611937565b5b612210848285016121a2565b91505092915050565b600061222482611e21565b61222e81856120fe565b935061223e818560208601611e3d565b61224781611a01565b840191505092915050565b6000602082019050818103600083015261226c8184612219565b905092915050565b61227d81611cb6565b811461228857600080fd5b50565b60008151905061229a81612274565b92915050565b6000602082840312156122b6576122b5611932565b5b60006122c48482850161228b565b91505092915050565b60006122d882611bbf565b9050919050565b6122e8816122cd565b81146122f357600080fd5b50565b600081359050612305816122df565b92915050565b600061231682611b9f565b9050919050565b6123268161230b565b811461233157600080fd5b50565b6000813590506123438161231d565b92915050565b600067ffffffffffffffff82111561236457612363611a12565b5b602082029050602081019050919050565b61237e81611b86565b811461238957600080fd5b50565b60008135905061239b81612375565b92915050565b60006123b46123af84612349565b611a72565b905080838252602082019050602084028301858111156123d7576123d6611c0e565b5b835b8181101561240057806123ec888261238c565b8452602084019350506020810190506123d9565b5050509392505050565b600082601f83011261241f5761241e6119f7565b5b813561242f8482602086016123a1565b91505092915050565b60008060008060008060c0878903121561245557612454611932565b5b600061246389828a016122f6565b965050602061247489828a01612334565b955050604087013567ffffffffffffffff81111561249557612494611937565b5b6124a189828a0161240a565b945050606087013567ffffffffffffffff8111156124c2576124c1611937565b5b6124ce89828a0161203d565b93505060806124df89828a0161197f565b92505060a087013567ffffffffffffffff811115612500576124ff611937565b5b61250c89828a01611b0f565b9150509295509295509295565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61254e81611b86565b82525050565b60006125608383612545565b60208301905092915050565b6000602082019050919050565b600061258482612519565b61258e8185612524565b935061259983612535565b8060005b838110156125ca5781516125b18882612554565b97506125bc8361256c565b92505060018101905061259d565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061261f82611e21565b6126298185612603565b9350612639818560208601611e3d565b61264281611a01565b840191505092915050565b60006126598383612614565b905092915050565b6000602082019050919050565b6000612679826125d7565b61268381856125e2565b935083602082028501612695856125f3565b8060005b858110156126d157848403895281516126b2858261264d565b94506126bd83612661565b925060208a01995050600181019050612699565b50829750879550505050505092915050565b600060a0820190506126f86000830188611bd1565b818103602083015261270a8187612579565b9050818103604083015261271e818661266e565b905081810360608301526127328185611e67565b90506127416080830184611cc0565b9695505050505050565b600061275e61275984611f8a565b611a72565b9050808382526020820190506020840283018581111561278157612780611c0e565b5b835b818110156127c857805167ffffffffffffffff8111156127a6576127a56119f7565b5b8086016127b389826121a2565b85526020850194505050602081019050612783565b5050509392505050565b600082601f8301126127e7576127e66119f7565b5b81516127f784826020860161274b565b91505092915050565b60006020828403121561281657612815611932565b5b600082015167ffffffffffffffff81111561283457612833611937565b5b612840848285016127d2565b91505092915050565b600060408201905061285e6000830185611cc0565b61286b6020830184611cc0565b9392505050565b6000604082019050818103600083015261288c818561266e565b905081810360208301526128a08184611e67565b90509392505050565b600082825260208201905092915050565b7f706172616d206461746120746f6f2073686f7274000000000000000000000000600082015250565b60006128f06014836128a9565b91506128fb826128ba565b602082019050919050565b6000602082019050818103600083015261291f816128e3565b9050919050565b600080fd5b600080fd5b6000808585111561294457612943612926565b5b838611156129555761295461292b565b5b6001850283019150848603905094509492505050565b60006020828403121561298157612980611932565b5b600061298f8482850161238c565b91505092915050565b600082905092915050565b600082821b905092915050565b60006129bc8383612998565b826129c7813561193c565b92506004821015612a0757612a027fffffffff00000000000000000000000000000000000000000000000000000000836004036008026129a3565b831692505b505092915050565b7f696e76616c69642073656c6563746f7200000000000000000000000000000000600082015250565b6000612a456010836128a9565b9150612a5082612a0f565b602082019050919050565b60006020820190508181036000830152612a7481612a38565b9050919050565b7f4e6f7420617574686f72697a656420746f207365742074617267657420666f7260008201527f2074686973206e6f646500000000000000000000000000000000000000000000602082015250565b6000612ad7602a836128a9565b9150612ae282612a7b565b604082019050919050565b60006020820190508181036000830152612b0681612aca565b9050919050565b6000612b198385611e2c565b9350612b26838584611abe565b612b2f83611a01565b840190509392505050565b60006040820190508181036000830152612b55818587612b0d565b9050612b646020830184611bd1565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612baa8161231d565b92915050565b600060208284031215612bc657612bc5611932565b5b6000612bd484828501612b9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c1782611cb6565b9150612c2283611cb6565b9250828201905080821115612c3a57612c39612bdd565b5b92915050565b6000819050919050565b612c5b612c5682611b86565b612c40565b82525050565b6000612c6d8285612c4a565b602082019150612c7d8284612c4a565b6020820191508190509392505050565b600081905092915050565b6000612ca382611e21565b612cad8185612c8d565b9350612cbd818560208601611e3d565b80840191505092915050565b6000612cd58284612c98565b915081905092915050565b6000602082019050612cf56000830184611b90565b92915050565b600081519050612d0a81611efe565b92915050565b600060208284031215612d2657612d25611932565b5b6000612d3484828501612cfb565b91505092915050565b6000604082019050612d526000830185611cc0565b612d5f6020830184611bd1565b9392505050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612dc26026836128a9565b9150612dcd82612d66565b604082019050919050565b60006020820190508181036000830152612df181612db5565b9050919050565b600067ffffffffffffffff821115612e1357612e12611a12565b5b602082029050602081019050919050565b600067ffffffffffffffff821115612e3f57612e3e611a12565b5b612e4882611a01565b9050602081019050919050565b6000612e68612e6384612e24565b611a72565b905082815260208101848484011115612e8457612e836119fc565b5b612e8f848285611e3d565b509392505050565b600082601f830112612eac57612eab6119f7565b5b8151612ebc848260208601612e55565b91505092915050565b6000612ed8612ed384612df8565b611a72565b90508083825260208201905060208402830185811115612efb57612efa611c0e565b5b835b81811015612f4257805167ffffffffffffffff811115612f2057612f1f6119f7565b5b808601612f2d8982612e97565b85526020850194505050602081019050612efd565b5050509392505050565b600082601f830112612f6157612f606119f7565b5b8151612f71848260208601612ec5565b91505092915050565b600060208284031215612f9057612f8f611932565b5b600082015167ffffffffffffffff811115612fae57612fad611937565b5b612fba84828501612f4c565b91505092915050565b6000606082019050612fd86000830186611bd1565b8181036020830152612fea8185612579565b90508181036040830152612ffe818461266e565b9050949350505050565b6130118161193c565b82525050565b600060c08201905061302c6000830189611d3a565b6130396020830188611bd1565b818103604083015261304b8187612579565b9050818103606083015261305f818661266e565b905061306e6080830185613008565b81810360a08301526130808184611e67565b9050979650505050505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60006130e0826130b9565b6130ea81856130c4565b93506130fa818560208601611e3d565b61310381611a01565b840191505092915050565b600061311a83836130d5565b905092915050565b6000602082019050919050565b600061313a8261308d565b6131448185613098565b935083602082028501613156856130a9565b8060005b858110156131925784840389528151613173858261310e565b945061317e83613122565b925060208a0199505060018101905061315a565b50829750879550505050505092915050565b600060a0820190506131b96000830188611bd1565b81810360208301526131cb818761312f565b905081810360408301526131df8186611e67565b90506131ee6060830185613008565b81810360808301526132008184611e67565b90509695505050505050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613242601d836128a9565b915061324d8261320c565b602082019050919050565b6000602082019050818103600083015261327181613235565b9050919050565b600061328382611cb6565b915061328e83611cb6565b92508282039050818111156132a6576132a5612bdd565b5b92915050565b60006132b782611cb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132e9576132e8612bdd565b5b600182019050919050565b60006132ff82611cb6565b915061330a83611cb6565b925082820261331881611cb6565b9150828204841483151761332f5761332e612bdd565b5b5092915050565b6000613341826130b9565b61334b81856128a9565b935061335b818560208601611e3d565b61336481611a01565b840191505092915050565b600060208201905081810360008301526133898184613336565b90509291505056fea26469706673582212205bb3f0bfa04cb3562838e41dbf668e48d8b109ef17a588380510fd0153dba59364736f6c6343000819003300000000000000000000000017289b2e80dcab38249adb5a2bd1a0caf12361a000000000000000000000000000000000000c2e074ec69a0dfb2997ba6c7d2e1e0000000000000000000000000635513f179d50a207757e05759cbd106d7dfce80000000000000000000000000000000000000000000000000000000000aa36a70000000000000000000000008fade66b79cc9f707ab26799354482eb93a5b7dd","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"NFTResolverModule#NFTResolver","networkInteractionId":1,"nonce":310,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"53030291374"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"1000000000"}},"hash":"0x0a0b80a511ac4c49e5ad4dae5698003e09b0dc0c590a262f79fa9d186b65e659"},"type":"TRANSACTION_SEND"} +{"futureId":"NFTResolverModule#NFTResolver","hash":"0x0a0b80a511ac4c49e5ad4dae5698003e09b0dc0c590a262f79fa9d186b65e659","networkInteractionId":1,"receipt":{"blockHash":"0x3effbef1ecda20d1f4499ef87e07ab0b98d7b1b69cb6e08e6f2f58dbd71ae09b","blockNumber":6587310,"contractAddress":"0x52992f84Af8204A84cB7F1f7106a59B14882A6E2","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"NFTResolverModule#NFTResolver","result":{"address":"0x52992f84Af8204A84cB7F1f7106a59B14882A6E2","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} \ No newline at end of file diff --git a/ignition/modules/NFTResolver.ts b/ignition/modules/NFTResolver.ts index 08a484f..9461404 100644 --- a/ignition/modules/NFTResolver.ts +++ b/ignition/modules/NFTResolver.ts @@ -3,8 +3,50 @@ import hre from "hardhat"; const NFTResolverModule = buildModule("NFTResolverModule", (m) => { const networkName = hre.network.name; - console.log(networkName); - // TODO: FIll in module info + let chainId = hre.network.config.chainId; + + let verifierAddress: string; + let ensAddress; + let wrapperAddress: string; + let publicResolverAddress: string; + + switch (networkName) { + case "sepolia": + case "localhost": + // WARNING if deploying on localhost you'll need to do your tests on a sepolia forked chain + verifierAddress = "0x17289b2e80DcaB38249adb5a2Bd1a0cAF12361A0"; + ensAddress = "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"; + wrapperAddress = "0x0635513f179D50A207757E05759CbD106d7dFcE8"; + publicResolverAddress = "0x8FADE66B79cC9f707aB26799354482EB93a5B7dD"; + break; + case "mainnet": + verifierAddress = "0x2aD1A39a3b616FB11ac5DB290061A0A5C09771f3"; + ensAddress = "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"; + wrapperAddress = "0xD4416b13d2b3a9aBae7AcD5D6C2BbDBE25686401"; + publicResolverAddress = "0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63"; + break; + default: + throw "Network not supported"; + } + + if (!chainId) { + chainId = 31337; + } + + const labelUtils = m.library("LabelUtils"); + const nftResolver = m.contract( + "NFTResolver", + [ + verifierAddress, + ensAddress, + wrapperAddress, + chainId, + publicResolverAddress, + ], + { libraries: { LabelUtils: labelUtils } } + ); + + return { nftResolver }; }); export default NFTResolverModule;